Bài viết này trình bày việc điều khiển dựa trên mô hình cho robot song song 5 bậc tự do sử dụng trong mô phỏng tập lái xe ô tô. Ba bộ điều khiển được áp dụng cho hệ gồm: PID + động lực học ngược, điều khiển trượt với mặt trượt PID và mặt trượt PD. Các kết quả mô phỏng số trên Matlab được đưa ra cho thấy hiệu quả của bộ điều khiển trượt.
Trang 1Tuyển tập Hội nghị khoa học toàn quốc lần thứ nhất về Động lực học và Điều khiển
Đà Nẵng, ngày 19-20/7/2019, tr 104-110, DOI 10.15625/vap.2019000264
Điều khiển trượt với mặt trượt PID cho robot song song 5 bậc
tự do sử dụng trong mô phỏng tập lái xe ô tô
Nguyễn Quang Hoàng, Nguyễn Đức Thịnh
Bộ môn Cơ ứng dụng – Viện Cơ khí, Đại học Bách khoa Hà Nội
E-mail: hoang.nguyenquang@hust.edu.vn
Tóm tắt
Nhờ những ưu điểm về độ cứng vững, độ chính xác cao và
khả năng mang tải lớn robot song song ngày càng được
ứng dụng nhiều Bài báo này trình bày việc điều khiển dựa
trên mô hình cho robot song song 5 bậc tự do sử dụng
trong mô phỏng tập lái xe ô tô Ba bộ điều khiển được áp
dụng cho hệ gồm: PID + động lực học ngược, điều khiển
trượt với mặt trượt PID và mặt trượt PD Các kết quả mô
phỏng số trên Matlab được đưa ra cho thấy hiệu quả của
bộ điều khiển trượt
Từ khóa: robot song song, mô hình tập lái 5DOF, động lực
học, điều khiển dựa trên mô hình, điều khiển trượt
1 Giới thiệu
Mô phỏng tập lái xe đòi hỏi cần có một robot tạo ra
cảm giác chuyển động cho người tập và một màn hình tạo
môi trường xa hình Hiện nay trên thị trường có nhiều
mẫu thiết bị hỗ trợ việc tập lái ô tô, tuy nhiên nổi bật hơn
cả là mẫu Stewart Platform với sáu bậc tự do
[10,11,15,19] Tuy nhiên, bậc tự do tịnh tiến theo chiều
chạy của xe lại không thực sự cần thiết vì có phần giao
diện màn hình đảm nhiệm Hiện đã có những hệ thống
mô phỏng lái xe với 2, 3, 4 và 5 bậc tự do sử dụng kết
hợp cấu trúc song song và chuỗi [17-19] Một hệ thống
mô phỏng lái 5 bậc tự do được lựa chọn để phân tích
động lực học và điều khiển trong bài báo này
Khi hệ thống hoạt động, để đảm bảo ghế gắn vào bệ
động thực hiện những chuyển động mong muốn, hệ thống
cần được điều khiển Nhiều luật điều khiển cho robot hay
tay máy song đã được nghiên cứu và áp dụng Có thể kể
ra như điều khiển PD, PID kết hợp động lực học ngược,
điều khiển trượt, điều khiển thích nghi, hay các điều
khiển thông minh dựa trên logic mờ, mạng nơron, … [3,4,
5,9,16]
Bài báo này trình bày việc thiết kế ba bộ điều khiển
dựa trên mô hình động lực học cho robot song song 5
DOF sử dụng trong mô phỏng học lái xe Đó là bộ điều
khiển PID + động lực học ngược; điều khiển trượt với
mặt trượt PID và với mặt trượt PD Phần còn lại của bài
báo bao gồm: Mô hình động lực học robot song song
5DOF; Thiết lập các bộ điều khiển dựa trên mô hình động
lực học; Các kết quả mô phỏng và Kết luận
2 Mô hình động lực học
2.1 Mô tả mô hình robot và các ký hiệu
Phần này trình bày về việc mô hình hóa robot song song, mô hình động lực học cho robot Robot có 5 DOF, các chuyên động đó là tịnh tiến theo Ox, Oz và xoay quanh các trục Ox, Oy, Oz Với 5 DOF mô hình có khả năng mô tả các chuyển động thực tế của ô tô: rẽ hướng, giảm sóc, địa hình gồ ghề và các khả năng va chạm bên hông xe
- Hệ có 5 động cơ dẫn động - 4 động cơ điều chỉnh chiều dài các chân và động cơ thứ 5 điều chỉnh góc nghiêng chân AB
- Chân 1- AB và chân 2 – CD, ABCD tạo thành cơ cấu
4 khâu bản lề
- Chân 3- KH và chân 4 - MN 2 chân KH, MN liên kết với mặt đáy bởi 2 khớp cardan
- Bàn máy động EFKN liên kết với 2 chân trước (1,2) với 2 khớp xoay quanh trục BC và PQ, liên kết với 2 chân sau (3,4) bằng 2 khớp cầu
- Điểm khảo sát G – là khối tâm bàn máy động
Robot mô phỏng lái xe 5DOF được xây dựng với mô hình đơn giản như trên Hình 1
Hình 1 Mô hình robot song song 5DOF mô phỏng lái xe
Để thuận tiện cho việc xây dựng mô hình toán học của hệ, các đại lượng được sử dụng trong mô hình được liệt kê trong Bảng 1 sau đây
Chân 1
Chân 2 Chân 3
Chân 4
Trang 2Nguyễn Quang Hoàng, Nguyễn Đức Thịnh
Bảng 1: Các thông số, ký hiệu cơ bản của robot
1 Chiều dài 4 chân: l = [l 1 , l 2 , l 3 , l 4]T
2 Góc nghiêng 4 chân lần lượt theo chiều dương
trục Ox trên mặt phẳng Oxz: α = [ α 1 , α 2 , α 3 , α 4]T
3 Góc nghiêng 2 chân 3,4 theo chiều dương trục
Oz trên mặt phẳng Oyz: β = [β 3 , β 4]T
4 Tọa độ điểm P, rP = [X P , 0, Z P]T
5 Tọa độ điểm G, rG = [X G , Y G , Z G]T, (YG là biến
phụ thuộc vào XG)
6 Hướng của bàn động: [ψ, θ, φ]T (với ψ, θ, φ lần
lượt là góc quay quanh Gx 2, Gy 2, Gz 2)
7 Tọa độ suy rộng độc lập: qa = [l 1 , l 2 , l 3 , l 4 , α 1]T
8 Tọa độ suy rộng phụ thuộc: qz = [α 2 , α 3 , α 4 , β 3 ,
β 4 , XP, ZP, ψ, θ, φ]T
9 Tọa độ suy rộng dư: q = [l 1 , l 2 , l 3 , l 4 , α 1 , α 2 , α 3 ,
α 4 , β 3 , β 4 , XP, ZP, ψ, θ, φ] T
10 Nhân tử Largrange λ = [λ 1 , λ 2 , λ 3 , λ 4 , λ 5 , λ 6 , λ 7 , λ 8 ,
λ 9 , λ 10]T
11
Mômen/Lực của động cơ lên khâu chủ động τa =
[τ1, τ2, τ3, τ4, τ5]T
(ứng với chân 1, 2, 3, 4 và góc nghiêng chân 1)
12 Khối lượng xi lanh: mxl12, mxl34
13 Khối lượng piston: mpt12, mpt34
14 Khối lượng bàn động: mmv
2.2 Phương trình vi phân chuyển động
Ta xem robot song song như cơ hệ hôlônôm giữ và
dừng n bậc tự do Sử dụng các tọa độ suy rộng dư: q =
[q 1 , q 2 ,…,q m]T (m>n) và áp dụng phương trình Lagrange
dạng nhân tử, ta nhận được phương trình vi phân chuyển
động ở dạng vi phân đại số như sau [1,2,7,14]:
M q q C q q q Dq g q q Bu (1)
( )
trong đó M q( ) là ma trận khối lượng cỡ mxm;
( , )
C q q là ma trận coriolis và ly tâm được xác định từ ma
trận khối lượng theo công thức Christoffel; lực do trọng
trường g q( ); vector Bu là lực suy rộng của các
lực không thế (lực điều khiển); vector λ = [λ 1 , λ 2 ,…, λ r]T
cỡ r x 1, r = m – n, chứa các nhân tử Lagrange Vector
( )
f q 0 , với [ ,1 2, ]T
r
trình liên kết, Fq f/q với cỡ r x m là ma trận
Jacobi
Phương trình (1) được viết lại ở dạng tọa độ tối thiểu
thường được chọn là các tọa độ khớp chủ động như sau
M q q C q q q D q g q R Bu (3)
z a
E R
M q R M q R, ( ) T ( )
g q R g q ,
a
Trong phương trình (3) các tính chất sau đây vẫn còn được đảm bảo M q là ma trận đối xứng và xác định a( ) dương, ma trận Na [M qa( ) 2 ( , )] C q qa là ma trận đối xứng lệch [7,8]
Đối với mô hình học láy xe 5 bậc tự do khảo sát ở đây: n 5, m 15, và r 10 Các tọa độ suy rộng chủ động bao gồm chiều dài bốn chân và góc nghiêng của một chân so với phương ngang
3 Một số luật điều khiển dựa trên mô hình động lực
Mục tiêu của bài toán điều khiển là tìm luật mômen các động cơ để bàn máy động chuyển động theo quy luật cho trước Luật điều khiển có thể được thiết kế trong không gian khớp chủ động hoặc cũng có thể được thiết kế trong không gian thao tác Trong phần này phương pháp thiết kế điều khiển trong không gian khớp được trình bày
Cơ sở cho việc thiết kế điều khiển trong không gian khớp
là phương trình (3)
3.1 Điều khiển PID tăng cường động lực học ngược
Theo phương pháp điều khiển mô men tính toán (còn gọi là tuyến tính hóa chính xác hay PID tăng cường động lực học ngược), luật điều khiển như sau [16]:
1
0t ( )
a a
e q q Tác động điều khiển (5) lên hệ (3) ta nhận được
) ( )(
a q qv 0
Vì ma trận Ma( )q là xác định dương, nên từ (7) ta có
a
Kết hợp với phương trình (6), ta nhận được
a a d D a P a I a d
hay ea K eD a K eP a KI0tea( )d 0 (10) Đạo hàm phương trình (10) theo thời gian ta nhận được
a D a P a I a
e K e K e K e 0
Trang 3Điều khiển trượt với mặt trượt PID cho robot song song 5 bậc tự do sử dụng trong mô phỏng tập lái xe ô tô
Nếu các ma trận xác định dương K K KD, P, I được chọn
là dạng đường chéo, từ (11) ta có được hệ các phương
trình vi phân tuyến tính bậc 3 như sau
0
ai Di ai Pi ai Ii ai
e k e k e k e
Phương trình đặc trưng của (12) có dạng
0
i k Di i k Pi i k Ii
Các điều kiện để nghiệm của phương trình đặc trưng (13)
có phần thực âm được đưa ra theo tiêu chuẩn Hurwitz
như sau:
0,
1, , 5
i
(14)
3.2 Điều khiển trượt với mặt trượt PID
Để thiết kế bộ điều khiển trượt, ta chọn mặt trượt
dạng PID như sau:
n n
diag
diag
a a a
e q q vào biểu thức (15), ta được:
d
a a a a d
q q e e , ta có:
,
Rõ ràng bằng cách đưa mặt trượt s0 thì nghiệm e a
của phương trình (15) sẽ có dạng hàm mũ với số mũ âm
Vì vậy, theo thời gian e a 0 và như vậy d
a a
robot chuyển động bám theo quỹ đạo mong muốn
Để xét tính ổn định của hệ, ta xét hàm Lyapunov có
dạng như sau:
1
2
T
a
Đạo hàm hàm Lyapunov theo thời gian, ta thu được:
1 2
V s M s s M s (19)
Từ (3), (16), (17) và tính chất phản đối xứng của ma trận
( ) 2 ( , )
N M q C q q ta suy ra:
V s t C q q q D q g q M q (20)
Dựa vào biểu thức (20), ta chọn luật điều khiển được xác
định bằng công thức sau đây:
i
q eq smc
với:
eq M qaa C q q qa a D qaa g qa
sgn( )
trong đó các đại lượng M C D gˆa,ˆ ˆ ˆa, a, a là giá trị gần đúng của M C D ga, a, a, a, các ma trận K pd,K là các ma trận s
pd pd
0
T
s s
K K Để cho đơn giản, ta chọn hai ma trận này dạng đường chéo như sau:
pd k k pd pd k pd s k k s s k s
Áp dụng luật điều khiển (21) vào mô hình động lực robot,
ta thu được:
sgn( )
(24)
hay
sgn( )
r r
d q q q q
với các ký hiệu:
Từ phương trình (25) suy ra:
sgn( )
Thay (26) vào (19), ta thu được:
1 2
T
T
s M s s M s
(27)
Giả sử thành phần nhiễu d a bị chặn, tức là |d a i, |d0
hoặc d i d0, rõ ràng s d i i |s d i| 0 Biểu thức (27) có thể viết lại dưới dạng như sau:
(ii) ,0 1
T
n T
i
V
(28)
Để V0, ta chọn các hệ số của ma trận Ks thỏa mãn điều kiện (ii)
,0 0
K d hay (ii)
,0 0
K d Tuy nhiên, trong bộ điều khiển trượt (21) có thành phần không liên tục Kssgn( )s nên khi hệ thống làm việc sẽ xuất hiện những dao động không mong muốn có tần số cao xung quanh mặt trượt và có biên độ phụ thuộc vào độ lớn của các phần tử trong ma trận Ks Hiện tượng này gọi là hiện tượng “chattering” làm ảnh hưởng đến chất
Trang 4Nguyễn Quang Hoàng, Nguyễn Đức Thịnh
lượng điều khiển Để khắc phục hiện tượng này, hàm
sgn( )s sẽ được thay thế bằng hàm liên tục tanh( )ks
hoặc (2 / )atan( ) k s với k 1
3.3 Điều khiển trượt với mặt trượt PD
Nếu chọn 1 và 2 0 ta sẽ có mặt trượt
dạng PD:
Thực hiện tương tự phần trên, ta cũng nhận được luật
điều khiển (21), (22) và (23)
4 Mô phỏng số
Trong phần này một số kết quả mô phỏng được đưa
ra, trong đó các thông số robot sử dụng trong mô phỏng
như chỉ ra trong Bảng 2
Bảng 2: Các thông số động lực học
Kích thước đế cố định
(2d1 x d2)
Kích thước bàn động (2d5
x d2)
Khối lượng xi lanh chân
trước (AB, CD) (mxl12)
Khối lượng xi lanh chân
sau (MN, KH) (mxl34)
Khối lượng piston chân
trước (AB, CD) (mpt12)
Khối lượng piston chân
sau (MN, KH) (mpt34)
Khối lượng bàn động
(mmv)
Trọng tâm xi lanh và
piston e = [e1i, e2i]
[0.12,0.11] m
Mômen quán tính xi lanh
1, 2
[0,0,0; 0,0.1,0;
0,0,0]
Kg.m2
Mômen quán tính xi lanh
3, 4
[0.2,0,0; 0,0.1,0;
0,0,0.1]
Kg.m2
Mômen quán tính piston
1, 2
[0,0,0;
0,0.1,0;0,0,0]
Kg.m2
Mômen quán tính piston
3, 4
[0.2,0,0; 0,0.1,0;
0,0,0.1]
Kg.m2
Mômen quán tính bàn
động
[0.1,0,0;
0,0.15,0; 0,0,0.2]
Kg.m2
Quỹ đạo đặt ra với điểm G, dịch chuyển từ vị trí G1 đến vị
trí G2 theo quy luật chuyển động dạng đa thức bậc 3
1 [ 0.1, 0.25, 0.5] ,T 2 [ 0.1, 0.25, 0.6]T
-Với hướng của bàn động được giữ không đổi Dễ dàng từ
bài toán động học ta tính được vị trí điểm P sẽ dịch chuyển từ P1 đến P2 tương ứng,
1= -0.1 0 0.5 ,T 2= 0.1 0 0.6T
4.1 Xét trường hợp biết chính xác thông số hệ
Các mô phỏng trong phần này được thực hiện trong điều kiện ta biết chính xác các thông số cả hệ
Điều khiển PID tăng cường động lực học ngược Với bộ thông số: K P 100;K D 30;K I 120, các kết quả mô phỏng được đưa ra trên các hình 2 và 3
-Kết quả sai số giữa quỹ đạo đặt và quỹ đạo khi sử dụng điều khiển PID
-0.040 5 10 15 20 -0.02
0
error XP[m]
Hình 2: So sánh kết quả của
quỹ đạo đặt và khi sử dụng điều khiển PID
Hình 3: Sai số khi sử dụng
điều khiển PID
Trang 5Điều khiển trượt với mặt trượt PID cho robot song song 5 bậc tự do sử dụng trong mô phỏng tập lái xe ô tô
Điều khiển trượt sử dụng mặt trượt PID
Với bộ thông số:
và sử dụng thay thế hàm sgn(s) bởi (2 / )atan( ) k s , với
k = 300, ta nhận được các kết quả như trên hình 4, 5 và 6
Kết quả sai số giữa quỹ đạo đặt và quỹ đạo khi sử dụng
điều khiển trượt với mặt trượt PID
Kết quả mặt trượt khi sử dụng điều khiển trượt với mặt
trượt PID
-0.05 0
0.05
s4
Time [s]
-0.5 0 0.5
s5
Bộ điều khiển trượt sử dụng mặt trượt PD Với thông số 80 và sử dụng thay thế hàm sgn(s) bởi (2 / )atan( ) k s , với k = 300, ta nhận được các kết
quả như trên hình 7, 8 và 9
Kết quả sai số khi sử dụng bộ điều khiển trượt với mặt trượt PD
-1 0 1 2
3 10-3
error ZP[m]
Hình 4: So sánh kết quả của
quỹ đạo đặt và khi sử dụng điều khiển trượt mặt trượt PID
Hình 5: Sai số khi sử dụng
điều khiển trượt với mặt
trượt PID
Hình 6: Mặt trượt khi sử
dụng điều khiển trượt với mặt trượt PID
Hình 7: So sánh kết quả của quỹ
đạo đặt và khi sử dụng điều khiển trượt với mặt trượt PD
Hình 8: Sai số khi sử dụng
bộ điều khiển trượt mặt trượt PD
Trang 6Nguyễn Quang Hoàng, Nguyễn Đức Thịnh
Kết quả mặt trượt khi sử dụng bộ điều khiển trượt với
mặt trượt PD
Time [s]
-0.05
0
0.05
s5
4.2 Xét trường hợp không biết chính xác thông số hệ
Các mô phỏng trong phần này được thực hiện trong
điều kiện ta không biết chính xác các thông số cả hệ Ở
đây ta sử dụng các thông số hệ trong M C D gˆa,ˆ ˆ ˆa, a, a
bằng 50% các thông số của hệ thống M C D ga, a, a, a,
trong khi các thông số PID và của mặt trượt vẫn giữa
nguyên Các kết quả mô phỏng được đưa ra trên các hình
10, 11 và 12
Kết quả sai số của bộ điều khiển PID
-0.05 0 0.05 0.1
error ZP[m]
Kết quả sai số của bộ điều khiển trượt khi sử dụng
mặt trượt PID
-4 -2 0 2
4 10-4
error ZP[m]
Kết quả sai số của bộ điều khiển trượt khi sử dụng
mặt trượt PD
Nhận xét: Nếu thông số hệ được biết chính xác, cả ba bộ
điều khiển đều cho kết quả tốt - chuyển động nhanh chóng bám theo quỹ đạo mong muốn, sau khoảng thời gian ngắn Với điều khiển trượt thời gian chuyển tiếp ngắn hơn Trong trường hợp không thông số hệ không biết chính xác các bộ điều khiển trượt đã tỏ ra có ưu điểm vượt trội so với bộ điều khiển PID tăng cường động lực học ngược
5 Kết luận
Bài báo áp dụng thành công một số luật điều khiển dựa trên mô hình động lực học cho robot song song 5 bậc
tự do Các kết quả mô phỏng số đối với bộ điều khiển PID, điều khiển trượt với mặt trượt PID và PD đã cho thấy khả năng đạt đến vị trí mong muốn và khả năng bám quỹ đạo của robot Ưu điểm của bộ điều khiển trượt là khả năng kháng nhiễu và sự bất định của thông số hệ Kết quả bài toán này là cơ sở để xây dựng mô hình thực tế và thực nghiệm trên mô hình thật Bộ điều khiển trượt mờ
Hình 9: Mặt trượt khi sử dụng
bộ điều khiển trượt mặt trượt PD
Hình 10: Sai số khi sử dụng
bộ điều khiển PID
Hình 12: Sai số khi sử dụng
bộ điều khiển trượt mặt trượt
PD
Hình 11: Sai số khi sử dụng
bộ điều khiển trượt mặt trượt
PID
Trang 7Điều khiển trượt với mặt trượt PID cho robot song song 5 bậc tự do sử dụng trong mô phỏng tập lái xe ô tô
thích nghi, nơron thích nghi là hướng phát triển trong thời
gian tới
Tài liệu tham khảo
1 J.G Jalon, E.Bayo, Kinematic and Dynamic Simulation of
Multibody Systems The Real-Time Challenge, Springer
Verlag, New York, 1994
2 L.-W.Tsai, Robot Analysis - The Mechanics of Serial and
Parallel Manipulators, John Wiley & Sons, New York,
1999
3 Ahmed F Amer, Elsayed A Sallam, Wael M Elawady,
Adaptive fuzzy sliding mode control using supervisory
fuzzy control for 3 DOF planar robot manipulators,
Applied Soft Computing 11 (2011) 4943–4953
4 Mauricio Becerra-Vargas, Eduardo M Belo, Fuzzy
sliding mode control of a flight simulator motion base,
27 th International Congress of The Aeronautical Sciences
5 Niu Xuemei, Guoqin Gao, Xinjun Liu and Zhiming Fang,
Decoupled Sliding Mode Control for a Novel 3-DOF
Parallel Manipulator with Actuation Redundancy,
International Journal of Advanced Robotic Systems
6 Quan Liu, Dong Liu, Wei Meng, Zude Zhou, Qingsong Ai:
Fuzzy Sliding mode Control for a Multi-DOF Parallel
Robot in Rehabilitation Environment International Journal
of Humanoid Robotics, V.11, N.1 (2014) 1450004, DOI
10.1142/S0219843614500042
7 Nguyễn Văn Khang: Động lực học hệ nhiều vật Nhà xuất
bản Khoa học và Kỹ thuật, Hà Nội, 2007
8 Nguyễn Văn Khang, Chu Anh Mỳ: Cơ sở robot công
nghiệp Nhà xuất bản Giáo dục, Hà Nội, 2011
9 Nguyen Van Khang, Nguyen Quang Hoang, Nguyen Duc
Sang, Nguyen Dinh Dung: A comparison study of some
control methods for delta spatial parallel robot Journal of Computer Science and Cybernetics Vol 31, No 1 (2015)
10 H B Guo and H R Li: Dynamic analysis and simulation of
a six degree of freedom Stewart platform manipulator,
Journal of Mechanical Engineering Science, 2006.
11 Zafer Bingul and Oguzhan Karahan: Dynamic Modeling and Simulation of Stewart Platform, March 30 th , 2012
12 M.Gabardi, M Solazzi, A Frisoli: An optimization procedure based on kinematics analysis for the design parameters of a 4-UPU parallel manipulator, Mechanism and Machine Theory, 28 November 2018
13 Yi Lu, Ming Zang and Jianping Yu: Kinematics and statics analysis of a novel 4-DOF 2SPS+2SPR parallel manipulator and soving its workspace in robotica, 2009
14 L.-W Tsai: Robot Analysis / The Mechanics of Serial and Parallel Manipulators John Wiley & Sons, New York (1999)
15 J.-P Merlet: Parallel Robots (2nd Ed.) Springer, Berlin (2006)
16 Pham Thuong Cat: Some Modern Control Methods for Industrial Robots (in Vietnamese) Thai Nguyen University Publishing, 2009
17 H B Guo and H R Li: Dynamic analysis and simulation of
a six degree of freedom Stewart platform manipulator, Journal of Mechanical Engineering Science, 2006
18 M.Gabardi, M Solazzi, A Frisoli: An optimization procedure based on kinematics analysis for the design parameters of a 4-UPU parallel manipulator, Mechanism and Machine Theory, 28 November 2018
19 Yi Lu, Ming Zang and Jianping Yu: Kinematics and statics analysis of a novel 4-DOF 2SPS+2SPR parallel manipulator and soving its workspace in robotica 2009