
SCIENCE - TECHNOLOGY Số 12.2022 ● Tập san SINH VIÊN NGHIÊN CỨU KHOA HỌC
31
THIẾT KẾ MỘT SỐ THUẬT TOÁN ĐIỀU KHIỂN PHI TUYẾN CHO XE TỰ HÀNH
DESIGNING SOME NONLINEAR CONTROL ALGRAMS FOR AUTOMATIC VEHICLES Lê Lương Sơn1, Nguyễn Đình Phong1, Phạm Văn Quyết1, Nguyễn Viết Đăng2, Đặng Quang Tùng2, Phí Hoàng Nhã3,* TÓM TẮT Bài báo tìm hiểu và nghiên cứu phương pháp điều khiển trư
ợt tầng kết hợp
kỹ thuật backstepping để điều khiển hướng và vị trí cho xe tự hành bám qu
ỹ đạo
đặt trước. Kỹ thuật trư
ợt tầng nhằm xác định tín hiệu điều khiển vị trí xe, kỹ thuật
backstepping nhằm để điều khiển góc hướng của xe dựa trên hàm Lyapunov đ
ể
ổn định và điều khiển. Kết quả kiểm chứng cho thấy tính đúng đắn và kh
ả năng
ứng dụng trong thực tế của phương pháp điều khiển trên. Từ khóa: Xe tự hành, phi tuyến, điều khiển. ABSTRACT The article explores and s
tudies the method of floor sliding control
combined with backstepping technique to control the direction and position for
the self-
propelled vehicle to follow the preset trajectory. Floor sliding technique
to determine the vehicle position control signal,
backstepping technique to
control the vehicle's direction angle based on the Lyapunov function for stability
and control. The verification results show the correctness and applicability in
practice of the above control method. Keywords: Autonomous vehicle, nonlinear, control. 1Lớp Điều khiển tự động 01- K13, Khoa Điện, Trường Đại học Công nghiệp Hà Nội
2Lớp Điều khiển tự động 02- K14, Khoa Điện, Trường Đại học Công nghiệp Hà Nội
3Khoa Điện, Trường Đại học Công nghiệp Hà Nội *Email:dangquangtung214@gmail.com 1. GIỚI THIỆU Xe tự hành ba bánh với hai bánh chủ động chuyển động phía sau, một bánh bị động phía trước có thể quay với tốc độ khác nhau. Là một loại robot có ràng buộc non-holonomic và thuộc lớp đối tượng thiếu cơ cấu chấp hành được sử dụng rộng rãi và phổ biến trong nhiều lĩnh vực, đặc biệt là trong công nghiệp bởi khả năng di chuyển, thay đổi vị trí một cách chính xác và linh hoạt. Điều khiển xe di chuyển bám theo quỹ đạo cho trước trong khi hệ có những tham số bất định như có sự thay đổi khối lượng, mômen quán tính, bánh xe di chuyển có khả năng bị trượt,… khi đó, đòi hỏi việc thiết kế bộ điều khiển phải khắc phục được trơn tru, đặc biệt là khi các cơ cấu đo bị hạn chế và có giá thành cao. Hiện nay có rất nhiều công trình nghiên cứu về việc điều khiển bám quỹ đạo cho xe tự hành ba bánh từ đơn giản đến phức tạp như PID, mờ, kỹ thuật backstepping, điều khiển trượt tầng, điều khiển thích nghi. Một trong những hướng đi mới đó là sử dụng kỹ thuật backstepping kết hợp với điều khiển trượt tầng để thiết kế bộ điều khiển cho xe tự hành ba bánh bám quỹ đạo đặt trước. Ưu điểm của bộ điêu khiển này là khả năng kháng nhiễu cao, thời gian xác lập ngắn dẫn đến việc có thể mở rộng phạm vi ứng dụng bộ điều khiển này trong thực tế. Bài báo được chia thành năm phần: phần một là giới thiệu, phần hai giới thiệu về mô hình động học của xe, phần ba thiết kế bộ điều khiển, phần bốn đánh giá kết quả và phần năm kết luận. 2. MÔ HÌNH ĐỘNG HỌC Mô hình xe tự hành ba bánh có một bánh tự lựa hướng phía trước, trong khi hai bánh đẩy phía sau. Xe chuyển động trên mặt phẳng ngang được biểu diễn như hình 1 [3]. Hình 1. Mô hình xe tự hành ba bánh Trong đó: r là bán kính của bánh xe, b là một nửa của khoảng cách giữa 2 bánh đằng sau của xe, a là khoảng cách từ tâm khối xe đến điểm giữa trục nối hai bánh sau, υ là vận tốc tịnh tiến, ω là vận tốc quay tại điểm M, R là momen của động cơ bánh phải, L là momen của động cơ bánh trái. OXY là hệ tọa độ cố định và MX’Y’ là hệ tọa độ cục bộ gắn trực tiếp trên xe. Khi đó (x, y) là tọa độ điểm M của xe trong hệ tọa độ cố định. Góc θ là góc quay của trục X’ so với trục X, gọi là góc hướng của xe. Như vậy, vị trí và hướng của xe được xác định bởi vector: q = [x, y, θ] T. Vận tốc mỗi bánh xe được điều khiển bởi một động cơ độc lập. Khi xe di chuyển sẽ thực hiện chuyển động tịnh tiến và chuyển động quay, phụ thuộc vào tốc độ góc của hai động

CÔNG NGHỆ Tập san SINH VIÊN NGHIÊN CỨU KHOA HỌC ● Số 12.2022
32
KHOA H
ỌC
cơ bánh sau. Gọi υ là vận tốc tịnh tiến và ω là vận tốc quay tại điểm M. Chuyển động của xe được mô tả bằng phương trình động học:
xvcos
θωasinθ
yvsin
θωacosθ
θω
(1) Giả thiết:
maxmax
vv,,
với vmax và ωmax là giá trị tốc độ lớn nhất. Khi xe không bị trượt thì sẽ chuyển động với điều kiện ràng buộc non-holonomic: xsin
θycosθaθ0
(2) Viết dưới dạng vector: ( )
1
Aqq0
trong đó
[ ]
1A(q)sin
θ,cosθ,a
là ma trận hệ số ràng buộc. Theo công thức Lagrange [4], mô hình động lực học: TTTm
djj
jdLLP
gFa
dtqqq
τλ
1 (3) Xe tự hành di chuyển trên mặt phẳng ngang nên thành phần g bằng 0. Không xét nhiễu, ta có: TTm
jj
j1dLLF
λa
dtqq
(4) Trong đó, L = WK - WP là hàm Lagrange, bằng hiệu giữa động năng và thế năng của hệ thống, λ là vector lực ràng buộc Lagrange, q = [x, y, θ ]T là vector tọa độ biến đầu ra, F là lực tác động vào hệ thống, biến đầu vào. Hàm Lagrange: ( )
222
kP
mI
LWWxy
θ
22
(5) ; ;
TTTdLdLdLmxmyI
θ
dtxdtydtθ
(6) TTTLLL
0
xyθ
(7) Thay (5), (6), (7) vào (4):
x
y
θmx
λsinθF
my
λcosθF
IθaλF
(8) Mặt khác:
xRLyRLθRL1Fcos
θ;
r1Fsin
θ;
rbF
r
(9) Thay (9) vào (8):
RLRLRLmxλsinθcosθrmyλcosθsinθrbIθaλr
1
0
1
0
0 (10) Biểu diễn dưới dạng vector:
( ) ( )
T111
MqEq
τAqλ
(11) Trong đó:
[ , ]
T
RL
vector momen, là tín hiệu vào của xe tự hành.
,
RL
là momen của động cơ bánh phải, động cơ bánh trái, các tham số: m, I: khối lượng và momen quán tính của xe tự hành. M1 là ma trận khối lượng và quán tính, đối xứng, xác định dương. E1(q) là ma trận hệ số đầu vào:
R
11
L
m00cosθcosθ1M0m0;E(q)sinθsinθ;τr00Ibb
=
Lực ràng buộc Lagrange:
λmθ(xcosθysinθ)
(12) Ta đặt vector sai số bám quỹ đạo [3]:
xr
ryr
θr
exx
eqqeyy
e
θθ
(13) Với qr là quỹ đạo mong muốn Phương trình sai số quỹ đạo: rqrr
cosθsinθ0xxesin
θcosθ0yyTe
001θθ
(14) Mạch vòng động học: bộ điều khiển phi tuyến cho mô hình động học: rθ1xccr2ry3r
θ
cυcosekeυv
ωkυekυsine
ω
(15) Với υr, ωr là tốc độ mong muốn tương ứng với quỹ đạo đặt. Với giả thiết trọng tâm khối lượng xe nằm ngay trên trục nối 2 bánh sau (a = 0), mô hình mạch vòng động lực học được lấy theo (10) ta có: 111122λxsin
θbucosθ
mλycos
θbusinθ
mθbu
(16) Trong đó

SCIENCE - TECHNOLOGY Số 12.2022 ● Tập san SINH VIÊN NGHIÊN CỨU KHOA HỌC
33
/ , / ;
,
12
1RL2RL
b1rmbbrIuu
Với luật thích nghi được chọn theo [8]: 111υxc222
ωθc
2
ˆ
uβ(ceeυ)1ˆu
β(cesineω)
k
Với 111υ1υxc222
ω2ωθc
2ˆβγsign(b)e(ceeυ)1ˆ
βγsign(b)e(cesineω)
k
Trong đó:
, , ,
1212
cc
γγ
là các hằng số dương, β1 = 1/ b1, β2 = 1/ b2,
ˆ ˆ
,
12
là các giá trị xấp xỉ của β1, β2 3. THIẾT KẾ BỘ ĐIỀU KHIỂN Bộ điều khiển sử một mạch vòng với hai hệ con, hệ con thứ nhất là bộ điều khiển trượt tầng để xác định vị trí của xe với tín hiệu điều khiển u1, hệ con thứ hai là bộ điều khiển backstepping xác định hướng cho xe với tín hiệu điều khiển u2. 3.1. Xây dựng bộ điều khiển trượt tầng cho xe bám vị trí Từ phương trình (16) ta có mô hình của hệ con thứ nhất [3]: 1111λx
θbuθ
mλy
θbuθ
m
sin cos
cos sin
(17) Bằng cách đặt thêm biến: , , ,
[ ]
1234T1234
xxxxxyxy
xxxx
x Mô hình không gian trạng thái của (17) được đưa về dạng:
( ) ( )
( ) ( )
12
2111
34
4221
xx
xfxgxu
xx
xfxgxu
(18) Trong đó: 121121
λλf(x)sin
θ;f(x)cosθ
mmg(x)bcos
θ;g(x)bsinθ
Với các biến sai lệch vị trí như trong phương trình (13), phương trình (18) được chuyển về phương trình trạng thái sai lệch tương ứng như sau: ( ) ( )
( ) ( )
1x
x111r
3y
y221r
ee
efxgxux
ee
efxgxuy
(19) Xét hệ con thứ nhất: ( ) ( )
1x
x111r
ee
efxgxux
(20) Ta định nghĩa mặt trượt thứ nhất:
111x
Scee
(21) Với hằng số c1 > 0. Đạo hàm hai vế công thức (21) theo thời gian:
111x1x111r
1111
Sceecef(x)g(x)ux
kSηsgnS
(22)
eg11sw11
1111111r
111uu
cef(x)kSsgnSx
ug(x)g(x)
η
Lựa chọn các hằng số: ,
11k
η0
Ta định nghĩa mặt trượt cho hệ (18):
21112
S
λSβs
Với
223y
scee
và c1 > 0 (23) Đạo hàm hai vế phương trình (23) theo thời gian: 21112
211x111r12y221r
222211121
11x1r12y2r2222
SλSβsS
λcef(x)g(x)uxβcef(x)g(x)uy
kSηsgnS(λg(x)βg(x))u
λ(cef(x)x)β(cef(x)y)kSηsgnS
11eq112eq211112
22221r1r
1112
λg(x)uβg(x)uuλg(x)βg(x)
ηsgn(S)kSλxβy
λg(x)βg(x)
(24)
22222
SkS
ηsgnS
Để giảm hiện tượng chattering ở tần số cao, hàm dấu sgn S2 trong (24) được thay thế bằng hàm satS2: 2222,2
sgn(S),S1
sat(S)
SS1
(25) Khi đó tín hiệu điều khiển trong công thức (24) được viết lại như sau:
111211x12y
1rr222211112
λf(x)βf(x)λceβce
λxβyηsat(S)kSuλg(x)βg(x)
(26) 3.2. Xây dựng bộ điều khiển backstepping cho góc hướng Xét hệ con thứ 2 từ mô hình (16) [3]:
22
θbu
(27) Nhiệm vụ đặt ra là thiết kế tín hiệu điều khiển u2 để tín hiệu đầu ra góc hướng θ bám theo góc hướng đặt θr. Sử dụng kỹ thuật backstepping, biến sai lệch:
θr
e
θθ
(28) Đặt biến trạng thái mới thứ nhất: 1
θ
ze
(29) Đạo hàm z1 theo thời gian ta có:
1r
z
θθ
(30) Đặt biến trạng thái mới thứ hai:
21
z
θα
(31) Trong đó α1 là tín hiệu điều khiển ảo của hệ (31). Chọn hàm Lyapunov cho hệ (31)

CÔNG NGHỆ Tập san SINH VIÊN NGHIÊN CỨU KHOA HỌC ● Số 12.2022
34
KHOA H
ỌC
21111Vz2 Đạo hàm V11 theo thời gian ta có: ( )
1111121rVzzzzαθ
(32) Chọn tín hiệu điều khiển ảo: 111rαazθ (33) 2111112Vazzz
(34) Đạo hàm z2 theo thời gian ta có: 2221zbuα
(35) Chọn hàm Lyapunov cho hệ (35) như sau: 211121VVz2 (36) Đạo hàm V1 theo thời gian: 211122111222VVzzazzzzz
(37) Thay (35) vào (37) ta được: ( )
211121221Vazzzbuα
(38) Chọn tín hiệu điều khiển: ( )
2122121uzazαb (39) Trong đó các hằng số: a1 > 0, a2 > 0 thì ta có: 2211122Vazaz0
(40) Sẽ đảm bảo cho hệ (27) ổn định tiệm cận, góc θ bám theo góc hướng đặt θr. 3.3. Chứng minh tính ổn định của hệ kín Cấu trúc hệ thống điều khiển trượt tầng backstepping được biểu diễn trong hình 2. Hình 2. Sơ đồ cấu trúc hệ thống điều khiển trượt tầng backstepping Tín hiệu điều khiển cho xe tự hành là:
[ ]
TT1221RL
uuuuτ22
(41) Chọn hàm Lyapunov cho hệ kín: 22212122111VVVzzS222 (42) Trong đó: 2211211Vzz22 và 2221VS2 Đạo hàm hàm V theo thời gian: 12VVV
(43) Đạo hàm V2 theo thời gian: 222VSS
thay 22222SkSηsgnS
vào V
ta được: 2222222VkSηSsgnS0
(44) Từ (40) và (44) 12VVV0
(45) Điều đó chứng tỏ hệ kín ổn định Lyapunov. Kết luận: Hệ thống có mô hình (16), với bộ điều khiển trượt tầng backstepping (41), với [u1 u2] như trong phương trình (26) và (39) thì hệ kín sẽ ổn định tiệm cận. 4. KẾT QUẢ Với các tham số của mô hình xe tự hành được chọn trước, cũng như các tham số của bộ điều khiển được chỉnh định bằng phương pháp thử sai như bảng 1, 2. Bảng 1. Tham số của mô hình xe tự hành Tham số mG
IG mW
IW ID r b Giá trị 10kg 4kgm2 2kg 0,1kgm2 0,05kgm2 0,15m 0,3m Bảng 2. Tham số của bộ điều khiển a
1
a
2
c
1
c
2
k
2
η
2
λ
1
β
1
m I 2 4 75 75 5 5 120 200 14 4,2 Hình 3. Xe bám quỹ đạo hình sin Nhận xét: Như vậy với quỹ đạo đặt là hình sin, đường quỹ đạo thực tế của xe (Tracking) gần như hoàn toàn là khớp so với quỹ đạo đặt (Dersired). Hình 4. Sai số với quỹ đạo sin Nhận xét: Tuy vẫn còn sai số tại điều khiển trượt tầng dành cho bám quỹ đạo khiến cho sai số ex, ey chưa hoàn toàn phẳng nhưng cũng đã cho thấy sự hoạt động hiệu quả tốt cách đáng ngạc nhiên của phương pháp điều khiển này. Nhìn chung đây là một phương pháp hiệu quả và chứng minh tính đúng đắn.

SCIENCE - TECHNOLOGY Số 12.2022 ● Tập san SINH VIÊN NGHIÊN CỨU KHOA HỌC
35
- Trường hợp 2: Với các thông số mô hình xe thay đổi Hình 5. Sai số về bám tọa độ khi thay đổi thông số xe Hình 6. Sai số tọa độ eθ Hình 7. Sai số tọa độ ey Hình 8. Sai số tọa độ ex Nhận xét: - Xe hoàn toàn đi lệch khỏi quỹ đạo đặt ra khi thay đổi thông số xe (tức các thành phần bất định). - Với thông số mô hình thay đổi, xe tự hành mặc dù giữ được mức sai lệch toạ độ ey, eθ ở mức chấp nhận được nhưng ex lại sai lệch về thông số nhiều. Tất nhiên ta có thể sử dụng phương pháp thử sai để tìm lại các tham số tốt nhất, khiến cho mức sai lệch về mức nhỏ hơn. 5. KẾT LUẬN Bài báo đã trình bày hệ thiếu cơ cấu chấp hành - xe tự hành ba bánh với các công thức toán học. Từ đó xây dựng phương pháp điều khiển trượt tầng kết hợp backstepping. Tính ổn định của hệ đã được kiểm chứng trên lý thuyết và mô phỏng. Trong tương lai hướng phát triển nghiên cứu là việc chỉnh định thông số bất định của mô hình xe là khối lượng. TÀI LIỆU THAM KHẢO [1]. Fantoni, Isabelle, Rogelio Lozano, S. C. Sinha, 2002. Non-linear control for underactuated mechanical systems, Appl. Mech. Rev. 55.4: B67-B68. [2]. Nguyễn Thị Việt Hương, 2016. Nghiên cứu xây dựng phương pháp điều khiển thích nghi, bền vững hệ Euler Lagrange thiếu cơ cấu chấp hành và ứng dụng cho cẩu treo. Đại học Thái Nguyên. [3]. Phạm Thị Hương Sen, 2021. Ứng dụng điều khiển thích nghi hệ thiếu cơ cấu chấp hành cho xe tự hành ba bánh. Luận văn tiến sĩ kỹ thuật điều khiển và tự động hoá, Đại học Bách khoa Hà Nội. [4]. Klancar, Gregor, et al 2017. Wheeled Mobile Robotic, from fundamentals towards autonomous systems. Butterworth-Heinemann. [5]. T. Nguyen, T. Hoang, M. Pham, N. Dao, 2019. A Gaussian wavelet network-based robust adaptive tracking controller for a wheeled mobile robot with unknown wheel slips. Int. J. Control, vol. 92, no. 11, pp. 2681-2692. [6]. D. Huang, J. Zhai, W. Ai, S. Fei., 2016. Disturbance observer-based robust control for trajectory tracking of wheeled mobile robots. Neurocomputing, vol. 198, pp. 74-79. [7]. Chen, Chih-Yang, Tzuu-Hseng S. Li, Ying-Chieh Yeh, 2009. EP-based kinematic control and adaptive fuzzy sliding-mode dynamic control for wheeled mobile robots. Information Sciences 179.1-2, pp. 180-195. [8]. F. Pourboghrat, M. P. Karlsson. 2002. Adaptive control of dynamic mobile robots with nonholonomic constraints. Comput. Electr. Eng., vol. 28, no. 4, pp. 241-253. [9]. Phạm Thị Hương Sen, Nguyễn Văn Nam, Dương Quang Hà, Nguyễn Minh Viển, Phan Xuân Minh, 2019. Thiết kế thuật toán điều khiển cho xe tự hành dựa trên kĩ thuật Backstepping và điều khiển trượt. 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, Trường Đại học Bách khoa - Đại học Đà Nẵng, p. 117- 120. [10]. Hoàng Thị Tú Uyên, 2018. Nghiên cứu ứng dụng lý thuyết điều khiển thích nghi để nâng cao chất lượng hệ thống lái tự động tàu nổi có choán nước. Đại học Bách khoa Hà Nội.

