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

Điều khiển trượt backstepping thích nghi cho xe tự hành omni trên cơ sở hệ logic mờ

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 (438.89 KB, 6 trang )

Tuyể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. 121-126, DOI 10.15625/vap.2019000267

Điều khiển trượt backstepping thích nghi cho xe tự hành omni
trên cơ sở hệ logic mờ
Đặng Quang Tuyên(1), Đỗ Hoàng Uy(1), Hà Thị Kim Duyên(2), Phan Xuân Minh(1).
1)
2)

Đại học Bách khoa Hà Nội

Đại học Công nghiệp Hà Nội

Tóm tắt
Bài báo trình bày về một bộ điều khiển thích nghi sử dụng
điều khiển trượt, kỹ thuật backstepping kết hợp hệ logic mờ.
Việc chỉnh định tham số của bộ điều khiển nhằm nâng cao chất
lượng bám quỹ đạo cho Omni-directional mobile robot. Bộ điều
khiển đề xuất được kiểm chứng bằng mô phỏng số và được so
sánh với bộ điều khiển trượt backstepping. Các kết quả mô
phỏng cho thấy bộ điều khiển được đề xuất đạt được chất lượng
tốt hơn bộ điều khiển trượt backsteppng trong trường hợp tham
số mơ hình là bất định và khi có nhiễu tác động.
Từ khóa: Backstepping, điều khiển trượt, thích nghi, hệ logic
mờ, Omni-directional mobile robot.

2. Mơ hình của Omni Robot
Xét mơ hình xe Omni Robot trong toạ độ cực Oxy
gồm 4 bánh đặt lệch nhau 90 độ, khoảng cách từ bánh
đến tâm robot là d. Vận tốc các bánh xe là vi
( vi  i r ). Vận tốc của xe là của xe là v x , v y và vận


tốc góc ω.

1. Mở đầu
Omni-directional mobile robot là một loại robot có
liên kết dạng holonomic được ứng dụng rộng rãi và phổ
biến trong nhiều 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
linh hoạt, chính xác.
Hiện nay đã có rất nhiều các cơng trình nghiên cứu
về việc điều khiển bám quỹ đạo cho Omni Robot từ đơn
giản đến phức tạp như PID, mờ, kỹ thuật backstepping,
điều khiển thích nghi, điều khiển trượt và mới nhất là
phương pháp điều khiển “Kỹ thuật backsteppng kết hợp
với điều khiển trượt” để xây dựng bộ điều khiển trượt
backstepping [1]. Ư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ế. Tuy nhiên, việc lựa chọn các thông số phù
hợp cho bộ điều khiển là một khó khăn khơng nhỏ, nó địi
hỏi người sử dụng phải có hiểu biết về đối tượng. Chính
vì vậy, một phương pháp chỉnh định thông số của bộ điều
khiển trên cơ sở hệ logic mờ được đề xuất trong bài báo
này. Đề xuất mới này giúp cho người sử dụng khơng phải
tự dị ra tham số thích hợp cho bộ điều khiển, mặt khác,
chất lượng điều khiển được cải thiện đáng kể trong
trường hợp tham số của robot omni thay đổi cũng như khi
có nhiễu ngồi tác động vào hệ thống.
Phần còn lại của bài báo được tổ chức như sau. Phần
2 biểu diễn mơ hình tốn học của robot Omni. Phần 3
trình bày đề xuất mới của bài báo nay. Đó là bộ điều

khiển trượt backstepping thích nghi trên cơ sở hệ logic
mờ. Cuối cùng, ở phần 4 là các kết quả mô phỏng và so
sánh với phương pháp điều khiển khác từ đó rút ra kết
luận.

Hình 1. Mơ hình hố Omni Robot

Bảng 1: Các tham số của xe:
Ký hiệu

Tham số

m

Khối lượng Omni
Robot
Mơmen qn tính
Omni Robot
Khoảng cách tâm
Robot đến bánh xe
Điện trở của motor

J

d

R
r
B x , By
B

C
C x , Cy

kv

Bán kính bánh xe
Hệ số ma sát nhớt
theo phương vx , v y
Hệ số ma sát nhớt
theo 
Hệ số ma sát
Coulomb theo 
Hệ số ma sát
Coulomb theo
vx , v y
Hằng số sức điện
động cảm ứng của
động cơ

Giá trị
20 kg
5 kg.m2
0.2 m
50 
0.06 m
0.5 N / (m / s )
0.06 N / (rad / s )
0.15 Nm
0.3 N
0.35

V / (rad / s )


Đặng Quang Tuyên, Đỗ Hoàng Uy, Hà Thị Kim Duyên, Phan Xn Minh

2.1. Mơ hình động học
Phương trình động học của Omni Robot được tham
khảo từ các tài liệu [1], [2]:
cos   sin  0 
q   sin  cos  0  v  H v
(1)
 0
0
1 
Trong đó:
q   x

v  [ vx

y   véctơ đạo hàm toạ độ xe Omni
vy  ]T véctơ vận tốc xe Omni được tính

theo vận tốc các bánh như sau:
 2
2
2


8
8

v x   8
   2
2
2


v y   
8
8
   8
   1
1
1

4d
4d
 4d

2

8   v1 
 
2  v 2 
 
8  v3
 
1  v 
  4
4d 



(2)

lkt k v
lk k
lk k d 2
, B y  4 t2 v , B  4 t 2 v )
2
r R
r R
r R

G  diag(Cx ,C y ,C )

2 lkt

 2 rR
 2 lkt
B
 2 rR
 lkt d

rR


(4)

(11)
(12)


2 lkt
2 rR
2 lkt

2 rR
lkt d
rR


2 lkt
2 rR
2 lkt

2 rR
lkt d
rR

2 lkt 

2 rR 
2 lkt 

2 rR 
lkt d 

rR 


T


Trong đó:
Lực ma sát nhớt theo phương vx , v y , 

 FCx  Cx .sign  vx 

 FCy  C y .sign(v y )

TC  C .sign  
Lực kéo và mômen quay từ các bánh xe

2
  f1  f 2  f3  f 4 
 Fx 
2


2
 f1  f 2  f3  f 4 
 Fy 
2

 T  d  f1  f 2  f 3  f 4 


Lực kéo từ mỗi bánh:
T lk i
fi  i  t i
r
r
Với l là hệ số giảm tốc của động cơ

kt là hằng số mơmen của động cơ
ii là dịng điện chạy qua động cơ

C  diag (B x  4

   u1 u2 u3 u4 

2.2. Mơ hình động lực học
Áp dụng Định luật II Newton theo các trục vận tốc
Omni Robot ta có hệ phương trình vi phân chuyển động:
 dvx
 m dt   Fx  FBx  FCx

 dv y
  Fy  FBy  FCy
(3)
m
 dt
 d
 J dt   T  TB  TC


 FBx  Bx .vx

 FBy  By .v y

TB  B .
Lực ma sát Coulomb theo phương vx , v y , 

ui  kvi

(8)
R
Từ (4), (5), (6), (7) thay vào (3) ta được phương trình
động lực học như sau:
Mv  Cv  Gsign( v )  B
(9)
Trong đó:
M  diag (m, m, J)
(10)
ii 

(13)

(14)

3. Tổng hợp bộ điều khiển trượt backstepping
thích nghi
Bộ điều khiển được tiến hành theo hai bước:
- Bước 1: Xây dựng bộ điều khiển trượt backstepping.
- Bước 2: Xây dựng hệ logic mờ chỉnh định tham số
của bộ điều khiển trượt backstepping.
3.1. Xây dựng bộ điều khiển trượt backstepping
Theo đề xuất của tài liệu [1] ta định nghĩa các biến
trạng thái như sau:
 x1  q
(15)

 x2  v
Kết hợp (15) và (9) ta được mơ hình trạng thái:
.


x
1  H x2

(16)
 .
 M x2  C x2  Gsign( x2 )  B


Bước 1: Định nghĩa z1  x1  x1d là sai số quỹ đạo xe,
(5)

trong đó x1d là quỹ đạo mẫu.
Đặt z2  x2  x2d với x2 d là tín hiệu điều khiển ảo.

 z2  x2  x2 d



 



 M 1 C x2  Gsign x2  B  x2 d
(6)

Hàm Lyapunov thứ nhất: V1 

1 T
z1 z1

2

(17)

(18)

Đạo hàm V1
.

V1  z1T z1  z1T ( Hx2  x1d )
 z1T [H ( z2  x2 d )  x1d ]

(7)

 z1T Hz2  z1T Hx2 d  z1T x1d

(19)

 z1T Hz2  z1T c1 z1
Theo cách đặt c1 ta có:

x2 d  H 1 (c1 z1  x1d )

(20)


Điều khiển trượt backstepping thích nghi cho xe tự hành omni trên cơ sở hệ mờ
Bước 2: Chọn mặt trượt
.


s   z1  H z2     c1  z1  z1

(21)

Với   diag  1 2

3  là ma trận xác định dương.
Ta cần xác định tín hiệu điều khiển    eq   sw bao gồm

 LO  trimf [0;0;0.5]
 ME  trimf [0; 0,5;1]
 HI  trimf [0,5;1;1]

2 thành phần sau:
-  eq là thành phần tín hiệu điều khiển giữ trên mặt trượt,
tức là khi s  0 thì  eq sẽ phải tạo ra được s  0 .
-  sw là thành phần tín hiệu điều khiển tiến về mặt trượt,
tức thoả mãn điều kiện: Với hàm Lyapunov xác định
1 T
dương V2  s s thì tín hiệu  sw phải thoả mãn
2
.

T

.

V2  s s  0 .
Từ hai điều kiện trên ta rút ra được:
.


  1  .
 . 
M  H   z1  H z2   x2 d  


1

T
T



 eq   B  BB   

 C x2  Gsign x2





1
T
T 1
  sw   B  BB  MH  c2 sign( s )  c3 s 
Tổng hợp tín hiệu điều khiển ra được:
  eq ew

Hình 2: Hàm liên thuộc đầu vào sai lệch e


 

 BT  BB



T 1

BT  BB



T 1

.
  1  .
 . 
 M  H   z1  Hz2   x2d  



 
 Cx2  Gsign x2




 

(22)


MH 1  c2 sign(s)  c3 s

Với c2 , c3 là các tham số bộ điều khiển.
Trong thực tế, không tồn tại thiết bị tạo ra được hàm
sign() và việc sử dụng hàm dấu sẽ gây ra hiện tượng rung
(chattering) trong hệ khi tín hiệu  phải chuyển đổi dấu
của giá trị với tần số vô cùng lớn để giữ được x1 trên mặt
trượt s  0 . Do đó chúng tơi thay thế hàm này bằng hàm
khuếch đại bão hoà sat () để giảm tần số thay đổi dấu của
tín hiệu điều khiển,
3.2. Xây dựng hệ logic mờ chỉnh định thông số của bộ
điều khiển trượt backstepping

Trong q trình mơ phỏng để tìm kiếm các tham số
thích hợp của bộ điều khiển trượt backstepping [1], chúng
tôi nhận thấy chất lượng bộ điều khiển (22) phụ thuộc rất
lớn vào việc lựa chọn giá trị của các thông số điều khiển
và đặc biệt là c3 . Từ đó, ý tưởng xây dựng hệ logic mờ
nhằm chỉnh định thơng số c3 được hình thành và thực hiện
trong bài báo này. Mơ hình mờ được lựa chọn là mơ hình
mờ Sugeno gồm hai đầu vào bao gồm sai lệch e và đạo
hàm e .
Biến ngôn ngữ của e : LO, ME, HI.
Biến ngôn ngữ của e : LO, ME, HI.
- Mờ hoá đầu vào e và e :
Khoảng giá trị tín hiệu đầu vào e và e :  0;1
Dạng hàm liên thuộc: trimf

Hình 3: Hàm liên thuộc đầu vào đạo hàm sai lệch e


- Chọn đầu ra c3
Các hằng số cho c3 : LO1 (80), LO2 (90), ME (100), HI1
(110), HI2 (120).
Các hằng số của c3 được chọn trong khoảng: 80; 120
- Luật mờ được biểu diễn ở bảng 2:
Bảng 2: Liên hệ giữa giá trị đầu ra c3
với hai đầu vào e và e
E

LO

ME

HI

LO

LO1

LO2

ME

ME

LO2

ME


HI1

HI

ME

HI1

HI2

E_dot

- Luật hợp thành SumPROD
- Giải mờ theo công thức của Sugeno (wtaver):
9

9

i 1

i 1

c3   w i Ai /  w i


Đặng Quang Tuyên, Đỗ Hoàng Uy, Hà Thị Kim Duyên, Phan Xuân Minh

Hình 3: Sơ đồ cấu trúc bộ điều khiển

4. Kết quả mô phỏng và so sánh

Các tham số của xe Omni được nêu trong bảng 1
cùng với giá trị các thông số của bộ điều khiển được lấy
từ tài liệu [1] như sau:
Bảng 3: Giá trị các tham sơ bộ điều khiển

Hình 5: Đồ thị sai số quỹ đạo theo thời gian

Khi thay đổi tham số khối lượng và mơmen qn tính của
Omni Robot m  50kg , J  20kg .m 2

c1  c2  30

  diag (10, 20,15)
- Với quỹ đạo đặt là dạng đường tròn:
2 t
2 t  

x1d  15cos(
);15sin(
);
10
10 2 


và điểm đặt ban đầu nằm ngồi vịng trịn x0   20; 20;  

Hình 6: Quỹ đạo của xe khi thay đổi tham số m  50 kg ,

J  20kg.m 2


Hình 4: Quỹ đạo chuyển động trịn của xe Omni

Hình 7: Đồ thị sai số quỹ đạo theo thời gian khi thay đổi
2
tham số m  50 kg , J  20kg.m


Điều khiển trượt backstepping thích nghi cho xe tự hành omni trên cơ sở hệ mờ
Trường hợp điểm đặt ban đầu nằm trong vòng tròn quỹ
đạo đặt: x0   0;0;  

Hình 11: Đồ thị sai số quỹ đạo theo thời gian
Hình 8: Quỹ đạo xe khi điểm đặt nằm trong vịng trịn

Các kết quả mơ phỏng trên cho thấy: khi sử dụng bộ
điều khiển trượt backstepping thích nghi trên cơ sở hệ
logic mờ thì hệ thống bám quỹ đạo rất nhanh, hệ thống
làm việc ổn định với các điều kiện đầu khác nhau như vị
trí ban đầu nằm bên ngoài quỹ đạo (H4) hay nằm trong
(H8), tham số xe thay đổi (H6), và với các quỹ đạo phức
tạp khác nhau như hình trịn và hình sao.
Bộ điều khiển đề xuất được so sánh với bộ điều khiển
trượt backstepping [1]:
Quỹ đạo đặt là dạng hình sao (Astroid):
2 t
2 t  

x1d  15cos3 (
);15sin 3 (
);

10
10 2 

Điểm đặt ban đầu tại gốc toạ độ x0   0;0;0
Tại thời điểm t  0.5s ta tác động một nhiễu xung đơn vị
vào đầu ra của hệ thống

Hình 9: Đồ thị sai số quỹ đạo khi điểm đặt nằm trong

- Với quỹ đạo đặt là dạng hình sao (Astroid):
2 t
2 t  

x1d  15cos3 (
);15sin 3 (
);
10
10 2 


Hình 12: So sánh quỹ đạo chuyển động của xe sử dụng hai bộ
điều khiển khi có nhiễu đầu ra

Hình 10: Quỹ đạo chuyển động dạng hình sao

Các kết quả mơ phỏng nhận được trong từ hình 12 – hình
16 cho thấy khi tham số c3 của bộ điều khiển được chỉnh
định thì thời gian bám quỹ đạo nhanh hơn so với bộ điều



Đặng Quang Tuyên, Đỗ Hoàng Uy, Hà Thị Kim Duyên, Phan Xuân Minh
khiển trượt backstepping được đề xuất ở tài liệu [1]. Khi
có nhiễu tác động ở đầu ra thì hệ cũng nhanh chóng trở
lại bám quỹ đạo đặt hơn bộ điều khiển được đề xuất ở [1].

Hình 16: Biên độ dao động trên biên

5. Kết luận

Hình 13: So sánh sai lệch x khi sử dụng hai bộ điều khiển

Bài báo đã đề xuất được bộ điều khiển trượt
backstepping thích nghi trên cơ sở hệ logic mờ được phát
triển từ tài liệu [1] đảm bảo hệ thống ổn định và bám quỹ
đạo Omni-directional mobile robot 4 bánh nhanh hơn,
chất lượng bám tốt hơn khi thay đổi vị trí ban đầu, thơng
số mơ hình bất định và khi có nhiễu tác động. Mặt khác
người sử dụng khơng cần phải dị tìm các thơng số thích
hợp cho bộ điều khiển. Các kết quả mô phỏng khẳng định
được những ưu điểm của bộ điều khiển được đề xuất
trong bài báo này.

Tài liệu tham khảo
[1]. Duyen, H.T.K; Cuong, N.M.; Thuat, V.H.; Manh, T.V.;
Dinh, N.D.; Dung, B.A.; “Trajectory tracking control for
four-wheeled

omnidirectional

mobile


robot

using

Backstepping technique aggregated with sliding mode
control”, in 2019 First International Symposium on
Instrumentation, Control, Artificial Intelligence, and

Hình 14: So sánh sai lệch y khi sử dụng hai bộ điều khiển

Robotics (ICA-SYMP), 2019,pp. 131-134: IEEE.
[2]. Hélder P.Oliveria, Amando J.Sousa, A. Paulo Moreira,
Paulo

J.

Costa,

“Modeling

and

Assessing

of

Omni-directional Robots with Three and Four Wheels”,
INESC-Porto Portugal, pp. 210-216, 2009.
[3]. Help-Matlab, “Tool Fuzzy logic ”

[4]. Tai-Yu Wang, Ching-Chih Tsai, Der-An Wang, “Dynamic
Control of An Omnidirectional Mobile Platform”, Journal
of Nan Kai, Vol.7, No. 1, pp. 14-17, 2010.
[5]. Nguyễn Dỗn Phước, Phân tích và điều khiển Hệ phi tuyến,
NXB Bách khoa Hà Nội, 2015.
[6]. 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 KH&KT, 2006.

Hình 15: So sánh sai lệch  khi sử dụng hai bộ điều khiển



×