Thiết kế bộ Điều khiển trượt cho tay máy Robot 2 bậc tự do và mô phỏng trên Matlab – Simulink

Tóm tắt Thiết kế bộ Điều khiển trượt cho tay máy Robot 2 bậc tự do và mô phỏng trên Matlab – Simulink: ...tại tâm trục khớp động cuối khâu 2. Bảng thông số DH của tay máy này như sau : Khâu θi αi ai di 1 * 1θ 0 a1 0 2 *2θ 0 a2 0 II.1.3.4. Mô hình biến đổi : Trên cơ sở đã xây dựng các hệ toạ độ với 2 khâu động liên tiếp như trên đã trình bày. Có thể thiết lập mối quan hệ giữa 2 hệ toạ độ..., ) 1/ 2m S l ⎡ ⎤θ − θ θ⎢ ⎥θ θ = ⎢ ⎥⎢ ⎥θ⎣ ⎦ & & && & . Trên cơ sở (2.52), ta có : 1 21 21 1 11 2 21c m gU r m gU r ⎛ ⎞= − + =⎜ ⎟⎝ ⎠ Đồ án tốt nghiệp Thiết kế bộ Điều khiển trượt cho Robot 2 bậc tự do 38 = ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡− ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ +− +−−− −− ⎥⎥ ⎥...ay rằng với f(x)= Ax , H(x)= b , g(x)=cTx , hai công thức (3.14) và (3.16) sẽ đồng nhất, vì : Lhf g(x)= cTATx⇒Lh Lkf g(x)=cTAkb Ví dụ : Xét hệ Val der Pol có mô hình trạng thái như sau : khi đó thì do : Lhg(x)= g h(x) x ∂ =∂ [ 01 ] ⎥⎦ ⎤⎢⎣ ⎡ 1 0 = 0 LhLfg(x) = f (L g) gh(x) f h(x...

pdf82 trang | Chia sẻ: havih72 | Lượt xem: 325 | Lượt tải: 0download
Nội dung tài liệu Thiết kế bộ Điều khiển trượt cho tay máy Robot 2 bậc tự do và mô phỏng trên Matlab – Simulink, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
) 
với H(q) là ma trận quán tính xác định dương, đối xứng. 
Chúng ta giả sử rằng các giá trị ước lượng )(ˆ qH và ),(ˆ qqh & quan hệ 
với giá trị thực )(qH và ),( qqh & bởi bất đẳng thức sau: 
)()()(ˆ 1 qqHqH β≤− (3.41) 
và ),(),(ˆ),( max qqhqqhqqh &&& Δ≤− (3.42) 
với )(qβ và ),(max qqh &Δ là những hàm đã biết. 
Viết lại biểu thức động lực học dưới dạng: 
τ)(),( qBqqfq += &&& (3.43) 
Đồ án tốt nghiệp Thiết kế bộ Điều khiển trượt cho Robot 2 bậc tự do 
 61
Với ),()(),( 1 qqhqHqqf && −−= (3.44) 
)()( 1 qHqB −= (3.45) 
Nhiệm vụ của điều khiển là tìm mô men thích hợp τ sao cho vector 
vị trí q của tay máy bám theo quỹ đạo mong muốn qd. 
Chúng ta định nghĩa sai lệch trạng thái e và mặt trượt như sau: 
qqe d −= (3.46) 
0; >=+= TCCeCeS & (3.47) 
Rõ ràng rằng S=0 thì )()( tqtq q→ . Quả thực với S=0 ta có thể viết lại 
như sau: 
CeeeCeS −=⇒=+⇒= && 00 
Như vậy hệ thống ổn định tiệm cận nếu có e = 0 và theo đó điều kiện 
bám )()( tqtq q→ sẽ được đảm bảo. 
Do vậy vấn đề điều khiển là phải tìm mô men τ thích hợp sao cho 
vector trạng thái của hệ thống có thể bám được trên mặt trượt. Hay phải tìm 
τ thỏa mãn điều kiện trượt. Điều kiện trượt có thể xác định theo tiêu chuẩn 
Lyapunov. 
Chúng ta định nghĩa hàm Lyapunov như sau: 
0
2
1 >= SSV T (3.48) 
Đạo hàm của (3.48) có dạng: 
SSV T && = (3.49) 
Như vậy, nếu 0<V& thì với 0→V dẫn tới 0→S và 0→e 
Do vậy, điều kiện đủ của điều kiện trượt là: 
0<SS T & (3.50) 
Đồ án tốt nghiệp Thiết kế bộ Điều khiển trượt cho Robot 2 bậc tự do 
 62
Khi đó điều kiện trượt đảm bảo cho hệ kín ổn định toàn cục, tiệm cận 
và điều kiện bám được thực hiện mặc dù mô hình không chính xác, 
nhiễu, 
Nếu điều kiện trượt có thể thỏa mãn theo đó: 
∑
=
=>≤−≤
n
i
i
T SSSSS
1
2;0;0 αα& (3.51) 
Tiếp đó, mặt phẳng trượt S=0 sẽ đạt được với thời gian giới hạn nhỏ 
hơn T0 ở đó: 
))0((
2
1
0 qST α= (3.52) 
Biểu thức trên được chứng minh như sau: 
Từ (29) ta có: 
α−≤
S
SS T & (3.53) 
Thay SSV T && = và 21)2( VS = vào (3.53) sau đó tích phân hai vế với 
t=0→treach , S(q(treach))=0 ta có: 
[ ] 0
0 0 2
))0((
2
))0((
2
1
)2(
2
1
2
1 T
qS
tt
qS
Vdt
V
V
reachreach
t treach reach
=≤→−≤==∫ αα
&
 (3.54) 
Bây giờ chúng ta tìm đầu vào bộ điều khiển τ thỏa mãn điều kiện 
trượt. 
Lấy đạo hàm biểu thức (3.47) ta có: 
dqqeCS &&&&&& −+= (3.55) 
 Thay biểu thức (3.39) vào ta có: 
dqqBqqfeCS &&&&& −++= τ)(),( (3.56) 
Do đó tín hiệu điều khiển có dạng 
[ ])(ˆ 1 sKSgnB eq −= − ττ (3.57) 
Đồ án tốt nghiệp Thiết kế bộ Điều khiển trượt cho Robot 2 bậc tự do 
 63
với: 
[ ]Tn
eq
sSgnsSgnsSgnsSgn
qqfeCq
)(),...,(),()(
),(ˆ
21=
−−= &&&&τ
 (3.58) 
K>0, K là ma trận khuyếch đại nxn. 
Ma trận khuyếch đại K phải chọn đủ lớn để điều kiện trượt được thỏa 
mãn mặc dù có tham số không rõ, nhiễu, 
Trong trường hợp ước lượng chính xác ffBB == ˆ,ˆ thì điều kiện 
trượt được viết lại như sau: 
SsKSgnSSS TT α−≤−= )(& (3.59) 
Nếu chọn αββ >≥ ;IK (3.60) 
và SSSSSSS
m
i
i
m
i
i
T αββββ −≤−=−≤−=−= ∑∑
== 1
2
1
& (3.61) 
thì chế độ trượt xảy ra. 
Ta nhận thấy rằng, đầu vào điều khiển được gián đoạn qua s(t) như 
cho ở biểu thức (3.57). Hiện tượng chattering xảy ra. Bởi vì trong thực tế, 
sự chuyển đổi là không lý tưởng. Trong trường hợp sai số ước lượng là 
không đủ nhỏ thì việc chọn K là không đơn giản như biểu thức trên. 
Trong trường hợp đó S& cho dưới dạng: 
)(ˆ)(ˆ)(),( 11 sKSgnBqBBqBqqfeCqS eqd
−− −+++−= τ&&&&& (3.62) 
đặt 1ˆ)();ˆ(ˆ −=−+= BqBRffff dẫn tới: 
 )()ˆ()( sRKSgnffIRS eq −−+−= τ& (3.63) 
Từ đây, điều kiện trượt là: 
{ } )()()()( sSgnSsRKSgnffIRSSS TeqTT ατ −≤−−+−= && (3.64) 
Do vậy, nếu chọn K để: 
{ } )()ˆ()()( sSgnSffIRSsRKSgnS TeqTT ατ +−+−≥ (3.65) 
Đồ án tốt nghiệp Thiết kế bộ Điều khiển trượt cho Robot 2 bậc tự do 
 64
thì điều kiện trượt như ở trên 0<SS & được thỏa mãn và điều kiện 
trượt đạt được. 
 )(ˆ 11 qBBR β≤= −− (3.66) 
Từ biểu thức (3.41) và (3.42) ta có bất đẳng thức: 
 )(ˆ 11 qBBR β≤= −− (3.67) 
 max1 ˆ)ˆ(ˆ)ˆ( hBhhBffR Δ≤−=−− (3.68) 
Từ đây, ta có thể chọn ma trận K thoả mãn điều kiện trượt như sau: 
 IhBIK eq βατβ +Δ+−≥ maxˆ)1( (3.69) 
III.4.3. Ứng dụng Điều khiển trượt cho tay máy Robot 2 bậc tự 
do: 
III.4.3.1. Phương trình động lực học tay máy hai bậc tự do toàn 
khớp quay: 
Bộ thông số tay máy: m1 = m2 = 1 kg 
 l1 = l2 = 1 m 
Phương trình động lực học: 
⎥⎦
⎤⎢⎣
⎡+⎥⎦
⎤⎢⎣
⎡
⎥⎦
⎤⎢⎣
⎡+⎥⎦
⎤⎢⎣
⎡
⎥⎦
⎤⎢⎣
⎡=⎥⎦
⎤⎢⎣
⎡
2
1
2
1
2221
1211
2
1
2221
1211
2
1
g
g
cc
cc
hh
hh
F
F
θ
θ
θ
θ
&
&
&&
&&
 (3.70) 
Trong đó F1, F2 là lực được tạo ra ở các khớp động, ma trận H là ma 
trận xác định dương và đối xứng, ma trận C là ma trận lực ly tâm, G là ma 
trận lực trọng trường. 
 Giá trị của các ma trận khi thay giá trị được xác định như sau: 
- Ma trận H: 
1
cos2/31
cos35
22
22112
211
=
+==
+=
h
hh
h
θ
θ
 (3.71) 
Đồ án tốt nghiệp Thiết kế bộ Điều khiển trượt cho Robot 2 bậc tự do 
 65
- Ma trận C: 
0
sin3
sin2/3
sin3
22
2121
2212
2211
=
−=
−=
−=
c
c
c
c
θθ
θθ
θθ
&
&
&
 (3.72) 
- Ma trận G: 
)cos(15
)cos(15cos15
212
2111
θθ
θθθ
+=
+−=
g
g (3.73) 
III.4.3.2. Mô hình động lực học tay máy hai bậc tự do: 
Chúng ta đặt các biến trạng thái là tín hiệu góc quay và vận tốc của 
các khớp tay máy: 
Khớp 1: 
⎪⎩
⎪⎨
⎧
=
==
=
112
11112
111
θ
θ
θ
&&&
&&
x
xx
x
 (3.74) 
Khớp 2: 
⎪⎩
⎪⎨
⎧
=
==
=
222
22122
221
θ
θ
θ
&&&
&&
x
xx
x
 (3.75) 
Tín hiệu vào u: 
⎩⎨
⎧
=
=
22
11
Fu
Fu (3.76) 
Từ biểu thức (3.70) ta có: 
⎥⎦
⎤⎢⎣
⎡−⎥⎦
⎤⎢⎣
⎡
⎥⎦
⎤⎢⎣
⎡−⎥⎦
⎤⎢⎣
⎡=⎥⎥⎦
⎤
⎢⎢⎣
⎡ −−−
2
11
2
1
2221
12111
2
11
1
1
g
g
H
cc
cc
H
F
F
H θ
θ
θ
θ
&
&
&&
&&
 (3.77) 
trong đó H-1 là ma trận nghịch đảo của ma trận H. 
Tính H-1 và kết hợp tất cả các phương trình trên và thay vào (3.77) để 
tính được: 
Đồ án tốt nghiệp Thiết kế bộ Điều khiển trượt cho Robot 2 bậc tự do 
 66
Khớp 1 
11 12
12 1 22 12 22 21 11 212
21
2
21 2 12 21 11 21
1 3
( (2 )sin 15(cos cos ))
4 9 4 cos 2
3 3
(1 cos )( sin 15 cos( ))
2 2
x x
x u x x x x x x
x
x u x x x x
⎧⎪ =⎪⎪ = + + − − −⎨ −⎪⎪− + − − +⎪⎩
&
&
 (3.78) 
Khớp 2: 
21 22
22 21 1 22 12 22 21 11 212
21
2
21 2 12 21 11 21
1 3 3
( (1 cos )( (2 )sin 15(cos cos )))
4 9 4cos 2 2
3
(5 3cos )( sin 15cos( )))
2
x x
x x u x x x x x x
x
x u x x x x
⎧⎪ =⎪⎪ = − + + + − − +⎨ −⎪⎪+ + − − +⎪⎩
&
&
(3.79) 
III.4.3.3. Thiết kế bộ điều khiển trượt cho tay máy 2 bậc tự do: 
Xác định bậc tương đối cho khớp 1 và khớp 2: 
Từ phương trình trạng thái của các khớp (3.78), (3.79) và biểu thức 
(3.24) ta có được ngay là trong trường hợp này là p=n hay bậc tương đối 
của từng khớp p=2. 
Xây dựng mặt trượt cho từng khớp: 
2222
1111
eeS
eeS
&
&
λ
λ
+=
+= (3.80) 
ở đây: 
222
111
rd
rd
xxe
xxe
−=
−= (3.81) 
λ1, λ2 là những số thực dương. 
Điều kiện để xảy ra chế độ trượt cho hệ trên: 
0<= SSV && (3.82) 
Xây dựng bộ điều khiển: 
Từ (3.78) và (3.79) nếu đặt: 
Đồ án tốt nghiệp Thiết kế bộ Điều khiển trượt cho Robot 2 bậc tự do 
 67
⎩⎨
⎧
+=
=
),()( 1112
1211
uxgxfx
xx
&
&
 (3.83) 
và: 
⎩⎨
⎧
+=
=
),()( 2222
2221
uxgxfx
xx
&
&
 (3.84) 
Ta có: 
)(),())((
)),()((
111111111
1111111111111111
ShKuxgxfxe
uxgxfxexxeeeS
d
dd
−=−−+=
+−+=−+=+=
λλλ
λλλλλ
&&&
&&&&&&&&&&&& (3.85) 
1
1111111
1
))(()(
),( λ
λλ xfxeShKuxg d −++=⇒ &&& 
 Tương tự ta cũng có: 
2
2222222
2
))(()(
),( λ
λλ xfxeShKuxg d −++=⇒ &&& (3.86) 
 Theo (3.77) ta có: 
 uH
uxg
uxg 1
2
1
),(
),( −=⎥⎦
⎤⎢⎣
⎡ (3.87) 
⎥⎦
⎤⎢⎣
⎡−⎥⎦
⎤⎢⎣
⎡⎥⎦
⎤⎢⎣
⎡−=⎥⎦
⎤⎢⎣
⎡ −−
2
11
22
12
2221
12111
2
1
)(
)(
g
g
H
x
x
cc
cc
H
xf
xf (3.88) 
 Chú ý: ),(11 uxgg ≠ 
 Từ (3.58) ta có được: 
⎥⎥
⎥⎥
⎦
⎤
⎢⎢
⎢⎢
⎣
⎡
−++
−++
=⎥⎦
⎤⎢⎣
⎡
)(
)(
)(
)(
2
2
22222
1
1
11111
2
1
xf
xeShK
xf
xeShK
H
u
u
d
d
λ
λ
λ
λ
&&&
&&&
 (3.89) 
Thay (3.88) vào (3.89) ta có được bộ điều khiển: 
Đồ án tốt nghiệp Thiết kế bộ Điều khiển trượt cho Robot 2 bậc tự do 
 68
⎥⎦
⎤⎢⎣
⎡+⎥⎦
⎤⎢⎣
⎡⎥⎦
⎤⎢⎣
⎡+
⎥⎥
⎥⎥
⎦
⎤
⎢⎢
⎢⎢
⎣
⎡
++
++
=⎥⎦
⎤⎢⎣
⎡
2
1
22
12
2221
1211
2
22222
1
11111
2
1
)(
)(
g
g
x
x
cc
cc
xeShK
xeShK
H
u
u
d
d
λ
λ
λ
λ
&&&
&&&
 (3.90) 
III.4.3.4. Tính toán giá trị đặt θi cho tay máy hai bậc tự do: 
Để tính toán giá trị đặt cho tay máy hai bậc tự do chúng ta cần giải 
bài toán động học ngược, từ đó tính toán giá trị đặt cho các khớp: 
⎥⎥
⎥⎥
⎦
⎤
⎢⎢
⎢⎢
⎣
⎡
+
+−
==
1000
0100
)(0
)(0
1121212
1121212
2
1
1
0
2
0 SSlCS
CClSC
AAA (3.91) 
theo cách biến đổi toạ độ ta có được: 
⎥⎥
⎥⎥
⎦
⎤
⎢⎢
⎢⎢
⎣
⎡
=
⎥⎥
⎥⎥
⎦
⎤
⎢⎢
⎢⎢
⎣
⎡
11
2
2
2
2
0
0
0
0
z
y
x
A
z
y
x
 (3.92) 
Tuy nhiên, trong bài toán này có x2, y2, z2=0 vì ta chỉ quan tâm tới 
chuyển động của tâm bàn kẹp do vậy từ (3.91) và (3.92) ta có: 
⎩⎨
⎧
+=
+=
)(
)(
1120
1120
SSly
CClx
 (3.93) 
⎟⎟⎠
⎞
⎜⎜⎝
⎛ −+=⇒
=−+⇒
+=+⇒
2
22
0
2
0
2
22
22
0
2
0
22
2
0
2
0
2
2
arccos
)cos(
2
2
)cos(22
l
lyx
l
lyx
l
yx
θ
θ
θ
 (3.94) 
 Từ (3.93) ta có: 
⎪⎩
⎪⎨⎧ =−
=−⇒
⎩⎨
⎧
=−
=−
2
12
2
10
2
12
2
10
1210
1210
)()(
)()(
lSlSy
lClCx
lSlSy
lClCx (3.95) 
Đồ án tốt nghiệp Thiết kế bộ Điều khiển trượt cho Robot 2 bậc tự do 
 69
12
0
2
0
0
12
0
2
0
0
2
0
2
0
1010
2
0
2
0
2
0)(2
S
yx
y
C
yx
x
l
yx
SyCxlyx
+
+
+
=+⇒
=+−+⇒
 (3.96) 
Đặt 
⎪⎪⎩
⎪⎪⎨
⎧
+
=
+
=
2
0
2
0
0
2
0
2
0
0
)sin(
)cos(
yx
y
yx
x
α
α
 (3.97) 
Chọn αθ >1 ta có: 
αθ +⎟⎟⎠
⎞
⎜⎜⎝
⎛ +=
l
yx
2
arccos(
2
0
2
0
1 (3.98) 
 Như vậy, nếu yêu cầu của bài toán là điều khiển tâm bàn kẹp đi 
theo một quỹ đạo đã được định trước và được xác định bởi: 
⎪⎩
⎪⎨
⎧
==
=
=
0)(
)(
)(
tzz
tyy
txx
thì giá trị đặt cho các khớp phải là: 
⎪⎪
⎪
⎩
⎪⎪
⎪
⎨
⎧
⎟⎟⎠
⎞
⎜⎜⎝
⎛ −+=
+⎟⎟⎠
⎞
⎜⎜⎝
⎛ +=
2
22
0
2
0
2
2
0
2
0
1
2
2
arccos
2
arccos
l
lyx
l
yx
θ
αθ
 (3.99) 
Đồ án tốt nghiệp Thiết kế bộ Điều khiển trượt cho Robot 2 bậc tự do 
 70
CHƯƠNG IV: MÔ PHỎNG QUÁ TRÌNH CHUYỂN ĐỘNG CỦA ROBOT 
DÙNG BỘ ĐIỀU KHIỂN TRƯỢT TRÊN NỀN MATLAB AND SIMULINK: 
IV.1. Tổng quan về Matlab-Simulink: 
Matlab là một bộ chương trình phần mềm lớn của lĩnh vực toán số. 
Tên của bộ chương trình chính là từ viết tắt của từ Matrix Laboratory, thể 
hiện định hướng chính của chương trình là các phép tính vectơr và ma trận. 
Phần cốt lõi của chương trình bao gồm một số hàm toán, các chức năng 
xuất nhập cũng như các khả năng điều khiển chu trình mà nhờ đó ta có thể 
dựng nên các Scripts. 
Thêm vào phần cốt lõi, có thể dùng các bộ công cụ Toolbox với 
phạm vi chức năng chuyên dụng mà người sử dụng cần. Simulink là một 
Toolbox có vai trò đặc biệt quan trọng: vai trò của một bộ công cụ mạnh 
phục vụ mô hình hoá và mô phỏng các hệ thống kĩ thuật - Vật lý, trên cơ sở 
sơ đồ cấu trúc dạng khối. 
Giao diện đồ họa trên màn hình của Simulink cho phép thể hiện hệ 
thống dưới dạng sơ đồ tín hiệu với các khối chức năng quen thuộc. 
Simulink cung cấp cho người dùng một thư viện rất phong phú, có sẵn với 
số lượng lớn các khối chức năng cho các hệ tuyến tính, phi tuyến và gián 
đoạn. Hơn thế người sử dụng có thể tạo nên các khối riêng cho mình. 
 Sau khi đã xây dựng mô hình của hệ thống cần nghiên cứu, bằng 
cách ghép các khối cần thiết, thành sơ đồ cấu trúc của hệ, ta có thể khởi 
động quá trình mô phỏng. Trong các quá trình mô phỏng ta có thể trích tín 
hiệu hiện tại vị trí bất kì của sơ đồ cấu trúc và hiển thị đặc tính của tín hiệu 
đó trên màn hình. Hơn thế nữa, nếu có nhu cầu ta còn có thể cất giữ các 
đặc tính đó vào môi trường nhớ. Việc nhập hoặc thay đổi tham số của tất cả 
các khối cũng có thể thực hiện được rất đơn giản bằng cách nhập trực tiếp 
hay thông qua matlab. Để khảo sát hệ thống, ta có thể sử dụng thêm các 
Toolbox như Signal Processing (xử lý tín hiệu), Optimization (tối ưu) hay 
Control System (hệ thống điều khiển). 
Đồ án tốt nghiệp Thiết kế bộ Điều khiển trượt cho Robot 2 bậc tự do 
 71
IV.2. Các thao tác thực hiện mô phỏng: 
Khớp 1: 
11 12
12 1 22 12 22 21 11 212
21
2
21 2 12 21 11 21
1 3
( (2 )sin 15(cos cos ))
4 9 4cos 2
3 3
(1 cos )( sin 15cos( ))
2 2
x x
x u x x x x x x
x
x u x x x x
⎧⎪ =⎪⎪ = + + − − −⎨ −⎪⎪− + − − +⎪⎩
&
&
Khớp 2: 
21 22
22 21 1 22 12 22 21 11 212
21
2
21 2 12 21 11 21
1 3 3
( (1 cos )( (2 )sin 15(cos cos )))
4 9 4cos 2 2
3
(5 3cos )( sin 15cos( )))
2
x x
x x u x x x x x x
x
x u x x x x
⎧⎪ =⎪⎪ = − + + + − − +⎨ −⎪⎪+ + − − +⎪⎩
&
&
Ta có mô hình Simulink của Robot 2 bậc tự do: 
Đồ án tốt nghiệp Thiết kế bộ Điều khiển trượt cho Robot 2 bậc tự do 
 72
Khối Subsytem: 
 Ở đây ta sử dụng các khối: 
+ intergrator: khối tích phân với các tham số của khối mặc định cho 
trước 
+ khối mux: chập tín hiệu đơn thành tín hiệu tổng hợp của nhiều tín 
hiệu 
+ khối input, ouput: đầu vào và đầu ra của tín hiệu. 
+ khối hàm: biểu diễn 1 hàm toán học khi có tín hiệu đi vào là các 
biến, tín hiệu ra thu được là hàm cần biểu diễn: 
.
12x =(u[5]+1.5*u[4]*sin(u[3])*(2*u[2]+u[4])-15*(cos(u[1])-cos(u[3]))-
(1+1.5*cos(u[3]))*(u[6]-1.5*u[2]*u[2]*sin(u[3])-15*cos(u[1]+u[3])))/(4-
2.25*cos(u[3])*cos(u[3])) 
Và:
.
22x =(-(1+1.5*cos(u[3]))*(u[5]+1.5*u[4]*sin(u[3])*(2*u[2]+u[4])-
15*(cos(u[1])-cos(u[3])))+(5+3*cos(u[3]))*(u[6]-1.5*u[2]*u[2]*sin(u[3])-
15*cos(u[1]+u[3])))/(4-2.25*cos(u[3])*cos(u[3])) 
Đồ án tốt nghiệp Thiết kế bộ Điều khiển trượt cho Robot 2 bậc tự do 
 73
+ Các khối scope (thuộc thư viện con sinks): Hiển thị các tín hiệu 
của quá trình mô phỏng theo thời gian. Nếu mở cửa sổ Scope sẵn từ trước 
khi bắt đầu mô phỏng ta có thể theo dõi trực tiếp diễn biến của tín hiệu. 
Ta sử dụng nguồn tín hiệu u1, u2 là 1(t) 
Các hàm x’12, và x’22 là : 
X’12 = (u[5]+1.5*u[4]*sin(u[3])*(2*u[2]+u[4])-15*(cos(u[1])-
cos(u[3]))-(1+1.5*cos(u[3]))*(u[6]-1.5*u[2]*u[2]*sin(u[3])-
15*cos(u[1]+u[3])))/(4-2.25*cos(u[3])*cos(u[3])). 
X’22 = (-(1+1.5*cos(u[3]))*(u[5]+1.5*u[4]*sin(u[3])*(2*u[2]+u[4])-
15*(cos(u[1])-cos(u[3])))+(5+3*cos(u[3]))*(u[6]-1.5*u[2]*u[2]*sin(u[3])-
15*cos(u[1]+u[3])))/(4-2.25*cos(u[3])*cos(u[3])) 
với u[1], u[2], u[3], u[4], u[5], u[6] tương ứng là các vị trí thứ tự trên 
khối Mux. u[1] = x11, u[2] = x12, u[3] = x21, u[4] = x22, u[5] = u1, u[6] = u2. 
Sau khi mô phỏng ta có đồ thị các đường đặc tính của các biến trạng 
thái x11, x12, x21,x22 là : 
Đồ án tốt nghiệp Thiết kế bộ Điều khiển trượt cho Robot 2 bậc tự do 
 74
Mô phỏng dạng hàm điều khiển: 
Từ các công thức: 
⎥⎦
⎤⎢⎣
⎡+⎥⎦
⎤⎢⎣
⎡⎥⎦
⎤⎢⎣
⎡+
⎥⎥
⎥⎥
⎦
⎤
⎢⎢
⎢⎢
⎣
⎡
++
++
=⎥⎦
⎤⎢⎣
⎡
2
1
22
12
2221
1211
2
22222
1
11111
2
1
)(
)(
g
g
x
x
cc
cc
xeShK
xeShK
H
u
u
d
d
λ
λ
λ
λ
&&&
&&&
- Ma trận H: 
1
cos2/31
cos35
22
22112
211
=
+==
+=
h
hh
h
θ
θ
- Ma trận C: 
0
sin3
sin2/3
sin3
22
2121
2212
2211
=
−=
−=
−=
c
c
c
c
θθ
θθ
θθ
&
&
&
Đồ án tốt nghiệp Thiết kế bộ Điều khiển trượt cho Robot 2 bậc tự do 
 75
- Ma trận G: 
)cos(15
)cos(15cos15
212
2111
θθ
θθθ
+=
+−=
g
g 
Ta có: 
U1=h11 1 1 1 1 1
1
( ) dK h S e xλ
λ
+ +& && +h12 2 2 2 2 2
2
( ) dK h S e xλ
λ
+ +& &&
+c11x12+c12x22+15cos(x11) 
-15sos(x11+x21) 
U2=h21 1 1 1 1 1
1
( ) dK h S e xλ
λ
+ +& && +h22 2 2 2 2 2
2
( ) dK h S e xλ
λ
+ +& && +c21x12+c22x22 
+15cos(x11+x21) 
Chuyển về dạng hàm của sơ đồ Simulink: 
U1=u[5]*(5+cos(u[3]))+(1+1.5*cos(u[3]))*u[6]-3*u[2]*u[3]*sin(u[3]) 
-1.5*u[3]*u[4]*sin(u[3])+15*cos(u[1])-15*cos(u[1]+u[3]) 
U2=(1+1.5*cos(u[3]))*u[5]+u[6]-3*u[1]*u[2]*sin(u[3])+15*cos(u[1]+u[3]) 
với u[1]=x11, u[2]=x12, u[3]=x21, u[4]=x22. 
U[5]= 1 1 1 1 1
1
( ) dK h S e xλ
λ
+ +& && 
U[6]= 2 2 2 2 2
2
( ) dK h S e xλ
λ
+ +& && 
Theo công thức kinh nghiệm ta chọn: K1=K2=500, 1λ = 2λ =0,156. 
Trường hợp này ta dùng hàm H(S1),H(S2) là các hàm giới hạn đầu 
vào trong khoảng giá trị upper và giá trị lower. 
từ đó ta có: 
u[5]= 1
1
K
λ H(S1)+ 
.
1
1
1
eλ + 1dx&& ( Khối subsytem) 
Đồ án tốt nghiệp Thiết kế bộ Điều khiển trượt cho Robot 2 bậc tự do 
 76
u[6]= 2
2
K
λ H(S2)+ 
.
2
2
1
eλ + 2dx&& ( Khối subsytem2) 
Đồ án tốt nghiệp Thiết kế bộ Điều khiển trượt cho Robot 2 bậc tự do 
 77
Đồ án tốt nghiệp Thiết kế bộ Điều khiển trượt cho Robot 2 bậc tự do 
 78
Ta chọn khoảng thời gian mô phỏng là từ 0 ->30 s , tức giá trị stop 
time = 30 ở trong Congiguration Parameters. 
Khi chay sơ đồ Simulink ta được các kết quả đường đặc tuyến của 2 
hàm điều khiển U1, U2, và sai số 1e& , 2e& là: 
Ta có các giá trị đặt xd1 và xd2 là: 
Từ các công thức: 
⎩⎨
⎧
+=
+=
)(
)(
1120
1120
SSly
CClx
⎪⎪⎩
⎪⎪⎨
⎧
+
=
+
=
2
0
2
0
0
2
0
2
0
0
)sin(
)cos(
yx
y
yx
x
α
α
Đồ án tốt nghiệp Thiết kế bộ Điều khiển trượt cho Robot 2 bậc tự do 
 79
⎪⎪
⎪
⎩
⎪⎪
⎪
⎨
⎧
⎟⎟⎠
⎞
⎜⎜⎝
⎛ −+=
+⎟⎟⎠
⎞
⎜⎜⎝
⎛ +=
2
22
0
2
0
2
2
0
2
0
1
2
2
arccos
2
arccos
l
lyx
l
yx
θ
αθ
=>xd1= 
acos(sqrt((cos(u[1]+u[3])+cos(u[1]))^2+(sin(u[1]+u[3])+sin(u[1]))^2)/2)+ 
acos((cos(u[1]+u[3])+cos(u[1]))/sqrt((cos(u[1]+u[3])+cos(u[1]))^2+(sin(u[1])+sin(u[1]
+u[3]))^2)) 
xd2 = acos(((cos(u[1]+u[3])+cos(u[1]))^2+(sin(u[1]+u[3])+sin(u[1]))^2-2)/2) 
Đồ án tốt nghiệp Thiết kế bộ Điều khiển trượt cho Robot 2 bậc tự do 
 80
Kết luận 
Các vấn đề đã được giải quyết : 
Các vấn đề còn tồn tại : 
Tài liệu tham khảo : 
Đồ án tốt nghiệp Thiết kế bộ Điều khiển trượt cho Robot 2 bậc tự do 
 81
1. Nguyễn Thiện Phúc: Robot công nghiệp. NXB KHKT 2004. 
2. Nguyễn Thiện Phúc: Người máy công nghiệp và sản xuất tự 
động linh hoạt. NXB KHKT 1991. 
3. Nguyễn Phùng Quang: Điều khiển Robot công nghiệp - 
Những vấn đề cần biết. Tạp chí Tự động hoá ngày nay - số tháng 4, 5, 6 / 
2006. 
4. Nguyễn Thiện Phúc: Robot - Thế giới công nghệ cao của 
bạn. NXB KHKT 2005. 
5. Đào Văn Hiệp: Kỹ thuật Robot. NXB KHKT 2002. 
6. Đinh Gia Tường, Tạ Khánh Lâm: Nguyên lý máy. NXB GD 
2003. 
7. Nguyễn Hồng Thái: Xây dựng thuật toán điều khiển và mô 
phỏng động Robot nhiều bậc tự do. Thư viện ĐHBK HN 2002. 
8. Lê Huy Tùng: Điều khiển trượt thích nghi động cho đối 
tượng phi tuyến có mô hình không tường minh. Thư viện ĐHBK HN 
2003. 
9. Nguyễn Doãn Phước, Phan Xuân Minh, Hán Thành Trung: Lý 
thuyết điều khiển phi tuyến. NXB KHKT 2003. 
10. Nguyễn Doãn Phước, Phan Xuân Minh: Hệ phi tuyến. NXB 
KHKT 2000. 
11. Nguyễn Thương Ngô: Lý thuyết điều khiển tự động hiện 
đại. NXB KHKT 2003. 
12. Nguyễn Thương Ngô: Lý thuyết điều khiển thông thường 
và hiện đại. NXB KHKT 2002. 
13. Nguyễn Doãn Phước: Lý thuyết điều khiển tuyến tính. 
NXB KHKT 2002. 
Đồ án tốt nghiệp Thiết kế bộ Điều khiển trượt cho Robot 2 bậc tự do 
 82
14. Nguyễn Phùng Quang: Matlab & Simulink dành cho kỹ sư 
điều khiển tự động. NXB KHKT 2004. 
15. Nguyễn Hoàng Hải: Lập trình Matlab. NXB KHKT 2003. 
16. Solomon: Stability of nonlinear control systems. 1965. 
17. Applied Asymptotic Methods in Nonlinear Oscillitions. 
Thư viện ĐHBK HN 1994. 
18. Harry: Nonlinear Modulation Theory. 1971. 
19. Jakub Mozaryn, Jerzt E.Kurek: Design of the Sliding Mode 
Control for the Puma 560 Robot. Institute of Automatic Control and 
Robotics Warsaw university of Technology. 
20. Martin Ansbjerg Kjaer: Sliding Mode Control. Sweden 
February 6th 2004. 
21. C.Abdallah, D.Dawson, P.Dorato, and M.Jamshidi: Survey of 
Robust Control for Rigid Robots . 
22. Mark W.Spong: Motion control of Robot Manipulators. The 
coordinated Science Laboratory, University of Illinois at Urbana-
Champaign, 1308 W. Main St, Urbana, III. 61801 USA. 
23. . Andre` Jaritz and Mark W. Spong: An Experimental 
Comparison of Robust control Algorithms on a Direct Drive 
Manipulator .IEEE Transaction on Control Systems Technology, Vol. 4, 
No. 6, November 1996. 
24. Austin Blaquie`re: Nonlinear system analysis. Academic 
Press New York and London 1966. 

File đính kèm:

  • pdfthiet_ke_bo_dieu_khien_truot_cho_tay_may_robot_2_bac_tu_do_v.pdf
Ebook liên quan