Tải bản đầy đủ (.pdf) (9 trang)

Tài liệu Công nghệ tin học và một số bài toán cơ kỹ thuật pptx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (242.67 KB, 9 trang )

Công nghệ tin học và một số bài toán cơ kĩ thuật
Đỗ Sanh
1
, Đinh Văn Phong
1
, Nguyễn Thanh Thuỷ
2
, Nguyễn Nhật Quang
3
, Phan Mạnh
Dần
1
, Đỗ Đăng Khoa
1
.
1) Bộ môn Cơ học ứng dụng
2) Trung tâm tính toán hiệu nâng cao
3) Công ty tin học Hài Hoà


1. Mở đầu
Việc sử dụng công nghệ thông tin để giải quyết các bài toán khoa học kỹ thuật là
xu huớng tất yếu của thời đại. Tuy nhiên khác với nhiều năm trớc đây xu thế này đang
có nhiều đòi hỏi cấp thiết hơn, cả từ phía công nghệ thông tin cũng nh từ phiá các lĩnh
vực kỹ thuật sử dụng công nghệ này . Những đòi hỏi này yêu cầu có sự họp tác chặt chẽ
hơn nữa giữa các cán bộ nghiên cứu và phát triển ứng dụng, ngay từ khi bài toán đợc
hình thành cho đến công đoạn cuối cùng của việc giải quyết các bài toán.
Từ phía công nghệ thông tin, sự phát triển mạnh mẽ của các kỹ thuật mới đặc
biệt là của các thiết bị phần cứng... đã tạo ra rất nhiều triển vọng về tốc độ tính toán, khả
năng thể hiện và lu trữ thông tin... Tuy nhiên ở Việt nam điều này có vẻ nh mới chỉ
dừng ở việc tạo ra các công cụ và cha tìm ra đợc các bài toán cụ thể để sử dụng các


khả năng mới này.
Trong tham luận dới đây chúng tôi xin đề cập và phân tích một số ví dụ về khả
năng sử dụng máy tính tốc độ cao trong việc giải quyết các bài toán cơ học. Thông qua
việc mô tả các yêu cầu của bài toán cơ trong việc xây dựng phơng trình chuyển động,
giải các phơng trình này để dẫn đến việc mô phỏng và điều khiển các hệ cơ học, các
ứng dụng của công nghệ cao trong lĩnh vực công tin học nh: xử lý song song, xử lý thời
gian thực, mô phỏng, xử lý đồ hoạ động... sẽ đợc đề cập
2. Bài toán thứ nhất: bài toán ngợc động học của robot
Ta xét bài toán ngợc điều khiển tối u động học của rôbốt. Nội dung của bài
toán nhằm giải quyết bài toán ngợc một cách tổng quát dựa trên phơng pháp tối u số
và mô phỏng hoạt động của rô bốt trong không gian đồ hoạ ba chiều.
2.1. Đặt bài toán
Bài toán này khảo sát bài toán ngợc điều khiển động học rô bốt. Bài toán xác
định qui luật thay đổi theo thời gian của các thông số định vị, thông số vận tốc của tay
máy để nó nắm bắt đợc đối tợng di động.
Để tăng độ êm cho tay kẹp khi nắm bắt đối tợng (tránh va chạm) cần phải
điều khiển để vị trí của tay kẹp không chỉ bắt đợc đối tợng mà vận tốc và hớng của
tay kẹp cũng cần trùng với vận tốc và hóng của đối tợng. Khi thực hiện yêu cầu này
luôn có sự sai lệch về vị trí và vận tốc của tay kẹp so với vị trí và vận tốc của đối tợng.
Bài toán điều khiển tối u đặt ra là tìm các thông số điều khiển để tổng bình phơng các
sai lệch vị trí và vận tốc bé nhất.
2.2 Cơ sở lý thuyết.
2.2.1 Các công thức động học rôbốt xác định vị trí và vận tốc
Khi khảo sát robot ta thờng ta sử dụng phơng pháp ma trận Denavit-
Hartenberg, trong đó sự liên kết giữa các khâu của robot đợc thề hiện qua ma trận
truyền có dạng sau:
cos( ) cos( ).sin( ) sin( ).sin( ) .cos( )
sin( ) cos( ).cos( ) -sin( ).cos( ) .sin( )
0sin() cos()
00 0 1

jjjjjkj
jjj jjkj
jjj
a
a
d







=



j
j-1
H (2.1)
trong đó các tham số có ý nghĩa nh sau:

j
là góc quay trục x
j-1
đến trục x
j
quanh trục z
j-1
,

d
j
là đoạn dịch trục x
j-1
đến trục x
j
dọc trục z
j-1
,
a
j
là đoạn dịch trục z
j-1
đến trục z
j
dọc trục x
j-1
,

j
là góc quay trục z
j-1
đến trục z
j
quanh trục x
j-1
.
Ma trận truyền toàn thể có dạng:
() () () ()
12 n

qq q
tay kep 1 2 n n
de 0 1 n-1 0
H = H .H ....H = H q

()
n
0
Hq
có dạng:
() ()
1



R qpq
0
(2.2)
trong đó hệ toạ độ đế rô bốt kí hiệu là 0, hệ toạ độ tay kẹp rô bốt kí hiệu là n, q là ma
trận nx1 của các toạ độ suy rộng, chúng là các thông số định vị của rôbốt. R(q) là ma
trận 3x3 xác định hớng của tay kẹp, p(q) là vectơ 3x1 xác định vị trí đầu bàn kẹp so với
hệ đế. Ba cột của ma trận R tơng ứng với hớng của ba vectơ đơn vị trên hệ gắn với tay
kẹp so với hệ đế rôbốt (hệ toạ độ nền).
Vị trí của một điểm P thuộc tay kẹp đợc xác định theo công thức :
()
0
n

pp
r=H qr

(2.3)
trong đó
p
r
là vectơ định vị điểm P thuộc tay kẹp so với hệ toạ độ nền,

p
r
là vectơ định
vị điểm P trong hệ toạ độ gắn vào tay kẹp rôbốt.
Từ công thức (2.3) ta dễ dàng xác định đợc vận tốc điểm P gắn vào tay kẹp
rôbốt so với hệ toạ độ nền :

pp np
0
v=r=H.r
&
&
(2.4)
Để tiến hành điều khiển hoạt động của từng khâu rôbốt, ta tiến hành biểu diễn
ma trận
n
0
H
&
dới dạng sau :

n
n(i)
0i

i=1
H= Hq
&
&
(2.5)
trong đó H
(i)
là ma trận ứng với khớp i và chỉ phụ thuộc vào biến khớp,
p
r
&
là véc tơ vận
tốc của điểm cuối tay kẹp so với hệ toạ độ nền,
n
0
H
&
là ma trận đạo hàm của ma trận
Denavit-Hartenberg giữa hệ toạ độ nền với hệ toạ độ gắn vào tay kẹp,
i
q
&
là vận tốc của
chuyển động tại khớp thứ i.
Đối với bài toán thuận động học, tức là biết các toạ độ suy rộng và các vận tốc
suy rộng, ta có thể tính ra đợc vị trí và vận tốc của bàn kẹp. Tuy nhiên bài toán ngợc
thì phức tạp hơn nhiều nếu ta xét đến các vị trị suy biến, các vị trí nằm ngoài khu vực
hoạt động của robot..., lúc đó thông thuờng ta sẽ gặp rất nhiều khó khăn để tìm ra lời
giải, tức là các toạ độ suy rộng và các vận tốc suy rộng của các khớp
2.2.2 Bài toán điều khiển tối u với bài toán ngợc.

Mục đích của bài toán tối u là tìm ra các thông số định vị và vận tốc của rôbốt
khi cho rôbốt nắm bắt một đối tợng đang chuyển động. Với dữ liệu đầu vào là vị trí,
vận tốc và hớng nắm bắt đối tợng, ta giải quyết bài toán bằng phơng pháp tối u với
hàm mục tiêu có dạng:
()()()()()
()
()()()
22222
*****
12 345
222
2
***
*
67 8 9
PPPPP
PPP
P
xx yy zz
Frx x ry y rz z rx x ry y
rz z rR R rR R rR R
=++++
++ + +
&& & &
&&
(2.6)
Trong đó:


***

,,xyz
là toạ độ hiện thời của đối tợng di chuyển.


***
,,xyz
&&&
là vận tốc hiện thời của đối tợng di chuyển.


***
,,
xyz
RRR
là hớng cần nắm bắt đối tợng.


,,
PPP
xyz
là toạ độ hiện thời của đầu tay kẹp rôbôt.


,,
PPP
xyz
&&&
là vận tốc hiện thời của đầu tay kẹp rôbôt.



,,
PPP
xyz
RRR
là hớng tay kẹp rôbôt.

r1->r9 là các trọng số
Từ các thông số cha biết là hàm của các thông số định vị và thông số vận tốc của rôbốt.
() ( ) ()
() ( ) ()
() ( ) ()
(1) (2) (3)
(1) (2) (3)
(1) (2) (3)
,,,
,,,
,,,
pP P
xxxx
pP P
yyyy
pP P
zzzz
xf xf Rf
yf yf Rf
zf zf Rf
== =
== =
== =
qqqq

qqqq
qqqq
&
&
&
&
&
&
(2.7)
Ta thu đợc hàm mục tiêu F có dạng:
()
,
FF
= qq
&
(2.8)
Hàm mục tiêu F là hàm chỉ phụ thuộc vào các thông số định vị và thông số vận tốc. Khi
cho F -> min ta sẽ thu đợc các thông số định vị và thông số vận tốc:
,q q
&
. Ưu điểm của
phơng pháp này là có thể dùng để giải quyết bài toán ngợc của rôbốt một cách tổng
quát và mềm dẻo mà không bị giới hạn bởi số bậc tự do của rôbốt.
Với mức độ phức tạp của bài toán, nhất là đối với các bài toán tổng quát cần thiết
phải sử dụng các phơng pháp số để giải quyết bài toán tối u. Việc này đòi hỏi phải co
các thuật giải tối u tốt. Các hàm mục tiêu đòi hỏi việc tính toán xác định vị các thông
số của đối tợng động lúc đang di chuyển. Các thông số này có thể đợc đa vào dới
dạng hàm giải tích, tuy nhiên hoàn toàn có thể sử dụng các dữ liệu đợc đa vào theo
tùng thời điểm (ví dụ sử dụng camera...). Điều này rõ ràng đa ra những yêu cầu về các
khả năng tính toán và xử lý thông tin của các máy tính. Tơng tự nh vậy có thể thấy

rằng mỗi bớc tối u đòi hỏi phải giải quyết bài toán thuận nhiều lần, điều này đòi hỏi
khá cao về tốc độ, thời gian tính toán.... để có thể bắt kịp đối tợng đang di chuyển.

2.2.3 Mô phỏng đồ hoạ động của robot
Để minh hoạ và theo dõi quá trình làm việc của robot ta có thể mô phỏng quá
trình hoạt động của robot thông qua việc xây dựng đồ hoạ động cho mô hình. Có nhiều
kỹ thuật để xây dựng thực trạng ảo hỗ trợ cho muc đich này. Nhóm nghiên cứu đã xây
dng chơng trình máy tính viết bằng ngôn ngữ C++ sử dụng công cụ lập trình Visual
C++ 6.0 có sự hỗ trợ của th viện đồ hoạ OpenGL. Lý do để chọn các công cụ này là ta
có thể sử dụng chúng trên các máy tính cá nhân thông thờng

2.3 Đánh giá qua ví dụ cụ thể
Nhóm nghiên cứu đã xây dựng chơng trình mô phỏng quá trình nắm bắt đối
tuợng của robot Gryphon. Toàn bộ qua trình mô phỏng đợc thực hiện trên các máy tính
cá nhân thông thờng với bộ vi xử lý Pentium III.
Robot Gryphond do hãng Feedback của Anh sản xuất phục vụ cho mục đích
nghiên cứu. Đây là một rôbốt năm trục: trục hông, trục vai, trục khuỷu tay, trục cổ tay
(pitch), trục cổ tay (roll) va bàn kẹp, xem hình vẽ 1.


Hình 1
Những u điểm nổi bật của rôbốt là chuyển động nhanh, chính xác và mềm mại.
Rôbốt đợc điều khiển bởi bốn vi xử lý cho phép điều khiển đặt vật chính xác. Mỗi trục
của rôbốt đợc điều khiển bởi một động cơ bớc với bộ mã hoá phản hồi. Trong bộ điều
khiển, một vi xử lý sẽ giám sát vị trí của các trục. Hai cái khác sẽ quản lý các động cơ
và cái còn lại sẽ giám sát cả ba cái trên đồng thời làm nhiệm vụ giao tiếp với máy chủ.
Việc tính toán mô phỏng trên máy tính cá nhân đợc thực hiện thông qua các
công thức đã đợc trình bày sơ lợc trong phần 2.2. Trong bài toán tối phơng pháp
tối u số đợc sử dụng là phơng pháp Rosenbrock. Đây là phơng pháp không cần tính
đến các giá trị đạo hàm của hàm mục tiêu và sẽ tìm các giá trị tối u của hàm số theo

các hớng xác định trong mỗi giai đoạn của quá trình tìm kiếm.
Kết quả tính toán cho thấy các thuật giải hoạt động tốt. Các kết quả mô phỏng và
giá trị của các toạ độ suy rộng là liên tục ở mọi vị trí của quĩ đạo. Điều đó cho phép
robot hoạt động mềm mại và nắm bắt đối tợng tơng đối êm.
Tuy nhiên tốc độ thể hiện đồ hoạ động thì còn xa mới có thể đạt đợc khả năng
mô phỏng thời gian thực. Điều này là hoàn toàn dễ hiểu vì toàn bộ chong trình chỉ chạy
trên 1 máy tinh cá nhân theo thuật giải "thẳng". Đây chính là điểm có thể ứng dụng công
nghệ thông tin ngõ hầu tăng tốc độ tính toán và mô phỏng.
Có nhiều cách để có thể đạt đợc mục đích này. Điều đó phụ thuộc vào các công
cụ phần cứng và mềm mà chúng ta có trong tay. Liên quan đến việc sử dụng các thuật
giải song song để giải quyết bài toán trên, ta có thể "song song hoá" quá trình tính toán,
đợc mô tả trong phần 2.2 ở các phần sau:

Trong việc giải quyết bài toán tối u, các giá trị của các ma trận thành phần,
các phần tử trong công thức (2.1), (2.2),... đợc xử lý đồng thời.

Việc thể hiện (vẽ) các khâu khác nhau của robot trong quả trình mô phỏng
đợc xử lý đồng thời.
Các vấn đề này cần đợc nghiên cứu, thử nghiệm và đánh giá chính xác, so sanh
giữa các trờng hợp có 1 máy tính (1 vi xử lý) và các hệ máy tính chứa nhiều vi xử lý
hon.

3. Vi dụ thứ 2: động lực hoc hệ nhiều vật

Trong phần này ta xét đến một số vấn đề xuất hiện trong quá trình tính toán mô
phỏng động lực học hệ nhiều vật. Quá trình mô phỏng băt đầu từ việc xây dụng phơng
trình chuyển động, giải và mô phỏng động hệ cơ nhiều vật.
3.1 Cơ sở lý thuyết

Việc mô phỏng số các hệ cơ nhiều vật là vấn đề thời sự, càng ngày càng đuợc

quan tâm nhiều hơn trong 2 thập kỷ vừa qua. Trên thế giới hiện đã tồn tại một số phần
mềm trong lĩnh vực này nh: ADAMS, SIMPACK, NEWEUL, ALASKA,.... Chúng có
thể đợc sử dụng trong cả các lĩnh vực nghiên cứu và ứng dụng công nghiệp. Tuy nhiên
các phần mềm này đều có những nhợc điểm riêng, nh xử lý đồ hoạ và giao diện cha
tốt, khả năng xử lý thời gian thực cha có... và hơn thế nữa giá thành cao. Việc nghiên
cứu xây dng một chơng trình phù họp với điều kiện Viêt nam đã đuợc tiến hành từng
buớc và đã đạt đợc một số kết quả, thông qua việc xây dựng gói chơng trình bao gồm
nhiều module phục vụ mô phỏng.
Để viết phơng trinh chuyển động của hệ cơ nhiều vật ta có thể dùng nhiều
phơng pháp khác nhau. Để minh hoạ ta có thể sử dụng phuơng trinh hay đợc nhắc đến
nhiều nhất: phơng trình Lagrange loại II. Nếu sử dụng các toạ độ suy rộng đủ q
i
,
i=1,2,...n với n là số bậc tự do của cơ hệ, thì phơng trinh Lagrange loại II đợc viết nh
sau:
dT T
dt


=



Q
qq
&
TT
(3.1)
trong đó T là tổng động năng của cả cơ hệ, Q là vector các lực suy rộng, q và
q

&
là các
vector toạ độ suy rộng và vận tốc suy rộng, t là biến thời gian. Ta có hệ phơng trình vi
phân thờng cấp 2 (ODE).
Đối với hệ cơ nhiều vật thông thờng ngòi ta hay sử dụng các tạo độ suy rộng
d, nh thế phơng trinh Lagrange loại II sẽ đợc thay bằng phơng trình Lagrange
dạng nhân tử. Trong phơng trình (3.1) sẽ xuất hiện thêm các nhân tử Lagrange và các
đạo hàm riêng của các phơng trinh liên kết theo các toạ độ suy rộng q
i
. Cùng với các
phong trình liên kết ta sẽ thu đợc hệ phơng trình vi phân đại số (DAE).
Để có thể xây dựng đợc phong trình chuyển động cần thiết phải tính đợc biêủ
thức động năng của cả cơ hệ và các đạo hàm riêng của nó theo các toạ độ suy rộng và
các vận tốc suy rộng. Động năng T của cả cơ hệ đợc tính nh tổng động năng của tất cả
các vật thuộc cơ hệ:
1
N
k
k
TT
=
=

(3.2)
với T
k
là động năng của vật thứ k và N là số vật rắn thuộc cơ hệ. Động năng T
k
của từng
vật đợc tính theo các yếu tố động học của vật rắn đó. Đây là công đoạn khá phức tạp và

đòi hỏi những thuật toán tốt để xử lý, đồng thời cũng tốn nhiều thời gian tính toán. Dới

×