Mô hình hóa và điều khiển robot di động Non-Holonomic có trượt ngang

Robot di động bánh xe đã được nghiên cứu và ứng dụng trong

nhiều ngành công nghiệp và là một lĩnh vực thu hút sự quan tâm

của nhiều nhà khoa học trên thế giới. Lý do robot di động được

ứng dụng rộng rãi trên thế giới là do nó có thể chuyển động thông

minh mà không có tác động của con người, phạm vi hoạt động

không bị giới hạn. Đặc biệt, nó có thể thay thế con người trong các

nhiệm vụ nguy hiểm như: tìm kiếm vật liệu nổ, vận chuyển hàng

hóa trong môi trường độc hại, giám sát an ninh Nhiều công trình

nghiên cứu về robot di động tập trung vào việc giải quyết bài toán

điều khiển chuyển động. Nhiều công trình nghiên cứu đã thiết kế

các bộ điều khiển tương ứng mà chúng đã tích hợp mô hình động

học có ràng buộc non-holonomic với mô hình động lực học của

robot di động [1-4]. Ở đó, các tác giả đã giả sử điều kiện ràng buộc

non-holonomic luôn được đảm bảo (các bánh xe chỉ có chuyển

động lăn mà không trượt). Tuy nhiên, trong thực tế, không phải lúc

nào điều kiện ràng buộc non-holonomic cũng luôn được thỏa mãn.

Ràng buộc non-holonomic phục thuộc vào rất nhiều yếu tố như độ

căng của lốp, độ trơn của mặt sàn, độ phẳng của địa hình

pdf 6 trang kimcuc 15440
Bạn đang xem tài liệu "Mô hình hóa và điều khiển robot di động Non-Holonomic có trượt ngang", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Mô hình hóa và điều khiển robot di động Non-Holonomic có trượt ngang

Mô hình hóa và điều khiển robot di động Non-Holonomic có trượt ngang
14(1) 1.2016
Đặt vấn đề
Robot di động bánh xe đã được nghiên cứu và ứng dụng trong 
nhiều ngành công nghiệp và là một lĩnh vực thu hút sự quan tâm 
của nhiều nhà khoa học trên thế giới. Lý do robot di động được 
ứng dụng rộng rãi trên thế giới là do nó có thể chuyển động thông 
minh mà không có tác động của con người, phạm vi hoạt động 
không bị giới hạn. Đặc biệt, nó có thể thay thế con người trong các 
nhiệm vụ nguy hiểm như: tìm kiếm vật liệu nổ, vận chuyển hàng 
hóa trong môi trường độc hại, giám sát an ninh Nhiều công trình 
nghiên cứu về robot di động tập trung vào việc giải quyết bài toán 
điều khiển chuyển động. Nhiều công trình nghiên cứu đã thiết kế 
các bộ điều khiển tương ứng mà chúng đã tích hợp mô hình động 
học có ràng buộc non-holonomic với mô hình động lực học của 
robot di động [1-4]. Ở đó, các tác giả đã giả sử điều kiện ràng buộc 
non-holonomic luôn được đảm bảo (các bánh xe chỉ có chuyển 
động lăn mà không trượt). Tuy nhiên, trong thực tế, không phải lúc 
nào điều kiện ràng buộc non-holonomic cũng luôn được thỏa mãn. 
Ràng buộc non-holonomic phục thuộc vào rất nhiều yếu tố như độ 
căng của lốp, độ trơn của mặt sàn, độ phẳng của địa hình Khi đó, 
nếu muốn giải quyết bài toán điều khiển chuyển động thì động học, 
động lực học trượt phải được tính đến khi thiết kế bộ điều khiển 
cho robot di động. Trong [5], các tác giả đã phát triển một mô hình 
động học suy rộng mà ở đó đã chứa đựng các loại trượt khác nhau 
như trượt dọc, trượt ngang, trượt quay. Trong [6], điều khiển lực 
ngang đã được đề xuất bằng các bộ điều khiển lực và vị trí, trong 
đó các yếu tố trượt đã được tính đến. Trong [7], các tác giả giới 
thiệu một bộ điều khiển bền vững để bám theo quỹ đạo bằng cách 
tích hợp động học trượt vào động học robot di động bánh xe dưới 
dạng các hàm và tính ổn định được kiểm chứng bằng toán tử Lie. 
Trong [8], các tác giả đã xây dựng mô hình động lực học robot di 
động bánh xe mà ở đó đã chứa đựng động lực học trượt ngang. Sau 
Mô hình hóa và điều khiển robot di động non-holonomic có trượt ngang
Nguyễn Văn Tính1*, Phạm Thượng Cát1, Phạm Minh Tuấn2
1Viện Công nghệ Thông tin, Viện Hàn lâm KH&CN Việt Nam
2Viện Công nghệ Vũ trụ, Viện Hàn lâm KH&CN Việt Nam
Ngày nhận bài 5.10.2015, ngày chuyển phản biện 12.10.2015, ngày nhận phản biện 18.11.2015, ngày chấp nhận đăng 25.11.2015
Trong bài báo này, nhóm nghiên cứu đã xây dựng một cách có hệ thống phương pháp mô hình hóa hệ động 
lực học của một robot di động bánh xe non-holonomic có trượt ngang. Sau đó, nhóm tác giả thiết kế một 
luật điều khiển bằng phương pháp tuyến tính hóa phản hồi vào ra để điều khiển robot di động này bám 
theo một quỹ đạo cho trước mà có thể bù được trượt ngang. Các kết quả mô phỏng được thực hiện bằng 
Matlab-Simulink đã chứng minh tính đúng đắn của luật điều khiển.
Từ khóa: robot di động non-holonomic, trượt ngang, tuyến tính hóa phản hồi. 
Chỉ số phân loại 2.2
*Tác giả liên hệ: Email: nvtinh@ioit.ac.vn
Modelling and Controlling 
a non-holonoMiC Wheeled
Mobile robot With lateral Slip
Summary
This paper presents the systematic 
development to model the dynamics 
of a non-holonomic wheeled mobile 
robot with lateral slip, followed by 
the design of a control law using the 
input-output feedback linearization 
method to drive the mobile robot to 
track a given trajectory while lateral 
slipping exists. Matlab-Simulink 
simulation results showed the 
correctness and performances of the 
control law.
Keywords: input-output feedback 
linearization, lateral slip, non-
holonomic wheeled mobile robot.
Classification number 2.2
24(1) 1.2016
đó, mô hình động lực học này được sử dụng để thiết 
kế bộ lập quỹ đạo và bộ điều khiển để cho phép dẫn 
đường (navigation) có hiệu quả robot di động trong 
điều kiện có trượt ngang.
Trong trường hợp có trượt ngang hoặc trượt dọc thì 
yếu tố ma sát ở điểm tiếp xúc giữa bánh xe và mặt 
sàn được chú ý đến. Hệ số ma sát phụ thuộc mạnh mẽ 
vào dạng địa hình, độ căng của lốp và vận tốc robot 
di động. Đối với điều khiển trượt dọc, trong [9], hệ số 
ma sát được xem như một hàm của tỷ số trượt. Trong 
[10], các tác giả đã trình bày một xe tự hành cho nông 
nghiệp với giả sử vận tốc của xe này nhỏ, chỉ có trượt 
dọc được chú ý đến, còn trượt ngang bị bỏ qua. Trong 
[11], đã nghiên cứu bằng thực nghiệm các ảnh hưởng 
của các tham số như bán kính bánh xe, khoảng cách 
giữa hai bánh, tải trọng lên hiệu quả điều khiển khi 
tồn tại trượt dọc. Trong [12], các tác giả đã xây dựng 
một bài toán path-following khi tồn tại cả trượt ngang 
và trượt dọc. Dựa trên mô hình trượt, bộ điều khiển 
chuyển động được tổng hợp có tính đến trượt dọc. Đối 
với trượt ngang, bộ điều khiển được dựa trên mô hình 
ma sát ngang.
Nội dung nghiên cứu
Mô hình động học
Xét 1 robot di động bánh xe có trượt ngang như 
hình 1, với giả thiết độ trượt dọc của xe có thể bỏ qua, 
mô hình động học của xe được mô tả như sau: 
Trong đó, η là độ trượt ngang của robot di động.
Mô hình động lực học của robot di động
Động năng của thân robot di động là:
( )2 2 21 1
2 2M M M M M
K m x y I θ= + +  
(4)
Trong đó, mM là khối lượng của thân robot di động, 
IM là mô men quán tính của thân này xung quanh trục 
thẳng đứng đi qua điểm M.
Động năng của bánh trái và bánh phải lần lượt là:
( )2 2 2 2 21 1 1
2 2 2L W L W L D
K m r I Iφ η φ θ= + + +  
(5)
( )2 2 2 2 21 1 1
2 2 2R W R W R D
K m r I Iφ η φ θ= + + +  
(6)
Tổng động năng của hệ là: 
( ) ( )
( )
2 2 2 2 2
2 2 2 2
1 1
2 2
1 1
2 2
M L R
M M M W L R
W W L R D M
K K K K
m x y m r
m I I I
φ φ
η φ φ θ
= + +
= + + +
 + + + + + 
 
 
 
  

 (7) 
Trong đó, IW và ID lần lượt là mô men quán tính của 
bánh xe xung quanh trục quay và trục thẳng đứng.
Vì thế năng của robot di động bằng 0, nên hàm 
Lagrange của nó là: L=K. 
Gọi véc tơ tọa độ Lagrange của robot di động là: 
[ ]T, , , , ,M M R Lq x y θ η φ φ= , phương trình ràng buộc được 
biểu diễn theo dạng sau: 
( ) 0A q q =
 (8) 
Kết hợp các phương trình (1), (2) , (3) và (8), ta xác 
định được ma trận ( )A q như sau:
( )
cos sin 0 0
cos sin 0 0
sin cos 0 1 0 0
b r
A q b r
θ θ
θ θ
θ θ
− − 
 = − 
 −  
(9) 
Phương trình Lagrange của chuyển động của robot 
di động là: 
Td L L u A
dt q q
λ
 ∂ ∂
− = + ∂ ∂  
 (10) 
Trong đó, λ [ ]T1 2 3, ,λ λ λ=ë là một véc tơ nhân tử 
Lagrange biểu diễn các lực ràng buộc của robot di 
động, u là véc tơ lực suy rộng tương ứng với các tọa độ 
suy rộng q. Bằng cách giải phương trình Lagrange, 
phương trình động lực học của robot di động có dạng 
như sau:
holonomic cũng luôn được thỏa mãn. Ràng buộc non-holonomic phục thuộc vào rất 
nhiều yếu tố như độ căng của lốp, độ trơn của mặt sàn, độ phẳng của địa hình Khi 
đó, nếu muốn giải quyết bài toán điều khiển chuyển động thì động học, động lực học 
trượt phải được tính đến khi thiết kế bộ điều khiển cho robot di động. Trong [5], các 
tác giả đã phát triển một mô hình động học suy rộng mà ở đó đã chứa đựng các loại 
trượt khác nhau như trượt dọc, trượt ngang, trượt quay. Trong [6], điều khiển lực 
ngang đã được đề xuất bằng các bộ điều khiển lực và vị trí, trong đó các yếu tố trượt 
đã được tính đến. Trong [7], các tác giả giới thiệu một bộ điều khiể bền vững để bám 
theo quỹ đạo bằng cách tích hợp động học trượt vào động học robot di động bánh xe 
dưới dạng các hàm và tính ổn định được kiểm chứng bằng toán tử Lie. Trong [8], các 
tác giả đã xây dựng mô hình động lực học robot di động bánh xe mà ở đó đã chứa 
đựng động lực học trượt ngang. Sau đó, mô hình động lực học này được sử dụng để 
thiết kế bộ lập quỹ đạo và bộ điều khiển để cho phép dẫn đường (navigation) có hiệu 
quả robot di động trong điều kiện có trượt ngang.
Trong trường hợp có trượt ngang hoặc trượt dọc thì yếu tố ma sát ở điểm tiếp xúc 
giữa bánh xe và mặt sàn được chú ý đến. Hệ số ma sát phục thuộc mạnh mẽ vào dạng 
địa hình, độ căng của lốp và vận tốc robot di động. Đối với điều khiển trượt dọc, trong 
[9], hệ số ma sát được xem như một hàm của tỷ số trượt. Trong [10], các tác giả đã 
trình bày một xe tự hành cho nông nghiệp với giả sử vận tốc của xe này nhỏ, chỉ có 
trượt dọc được chú ý đến, còn trượt ngang bị bỏ qua. Trong [11], đã nghiên cứu bằng 
thực nghiệm các ảnh hưởng của các tham số như bán kính bánh xe, khoảng cách giữa 
hai bánh, tải trọng lên hiệu quả điều khiển khi tồn tại trượt dọc. Trong [12], các tác giả 
đã xây dựng một bài toán path-following khi tồn tại cả trượt ngang và trượt dọc. Dựa 
trên mô hình trượt, bộ điều khiển chuyển động được tổng hợp có tính đến trượt dọc. 
Đối với trượt ngang, bộ điều khiển được dựa trên mô hình ma sát ngang.
Nội dung nghiên cứu
Mô hình động học
Xét 1 robot di động bánh xe có trượt ngang như hình 1, với giả thiết độ trượt dọc 
của xe có thể bỏ qua, mô hình động học của xe được mô tả như sau:
cos sinR M Mr x y bφ θ θ θ= + +    (1)
cos sinL M Mr x y bφ θ θ θ= + −    (2)
Hình 1: robot di động bánh xe có trượt ngang
 sin cosM Mx yη θ θ= − +   (3)
Trong đó, η là độ trượt ngang của robot di động.
Mô hình động lực học của robot di động
Động năng của thân robot di động là:
robot
holonomic cũng luôn được thỏa mã . Ràng buộc non-holonomic phục thuộc vào rất 
nhiều yếu tố như độ căng của lốp, độ trơn của mặt sàn, độ phẳng của địa hình Khi 
đó, nếu muốn giải quyết bài toán điều khiển chuyển động thì động học, động lực học 
trượt phải được tính đến khi thiết kế bộ điều khiển cho robot di động. Trong [5], các 
tác giả đã phát triển một mô hình động học suy rộng mà ở đó đã chứa đựng các loại 
trượt khác nhau như trượt dọc, trượt ngang, trượt quay. Trong [6], điều khiển lực 
ngang đã được đề xuất bằng các bộ điều khiển lực và vị trí, trong đó các yếu tố trượt 
đã được tính đến. Trong [7], các tác giả giới thiệu một bộ điều khiển bền vững để bám 
theo quỹ đạo bằng cách tích hợp động học trượt vào động học robot di động bánh xe 
dưới dạng các hàm và tính ổn định được kiểm chứng bằng toán tử Lie. Trong [8], các 
tác giả đã xây dựng mô hình động lực học robot di động bánh xe mà ở đó đã chứa 
đựng động lực học trượt ngang. Sau đó, mô hình động lực học này được sử dụng để 
thiết kế bộ lập quỹ đạo và bộ điều khiển để cho phép dẫn đường (navigation) có hiệu 
quả robot di động trong điều kiện có trượt ngang.
Trong trường hợp có rượt ngang h ặc trượt dọc thì yếu tố ma sát ở điểm tiếp xúc 
giữa bánh xe và mặt sàn được chú ý đến. Hệ số ma sát phục thuộc mạnh mẽ vào dạng 
địa hình, độ căng của lốp và vận tốc robot di độ g. Đối với iều khiển trượt dọc, trong 
[9], hệ số ma sát được xem như một hàm của tỷ số trượt. Trong [10], các tác giả đã 
trình bày một xe tự hành cho nông nghiệp với giả sử vận tốc của xe này nhỏ, chỉ có 
trượt dọc được chú ý đến, còn trượt ngang bị bỏ qua. Trong [11], đã nghiên cứu bằng 
thực nghiệm các ảnh hưởng của các tham số như bán kính bánh xe, khoảng cách giữa 
hai bánh, tải trọng lên hiệu quả điều khiển khi tồn tại trượt dọc. Trong [12], các tác giả 
đã xây dựng một bài toán path-following khi tồn tại cả trượt ngang và trượt dọc. Dựa 
trên mô hình trượt, bộ điều khiển chuyển động được tổng hợp có tính đến trượt dọc. 
Đối với trượt ngang, bộ điều khiển được dựa trên mô hình ma sát ngang.
Nội dung nghiên cứu
Mô hình động học
Xét 1 robot di động bánh xe có trượt gang như hình 1, với giả thiết độ trượt dọc 
của xe có thể bỏ qua, mô hình động học của xe được mô tả như sau:
cos sinR M Mr x y bφ θ θ θ= + +    (1)
cos sinL M Mr x y bφ θ θ θ= + −    (2)
Hình 1: robot di động bánh xe có trượt ngang
 sin cosM Mx yη θ θ= − +   (3)
Trong đó, η là độ trượt ngang của robot di động.
Mô hình động lực học của robot di động
Động năng của thân robot di động là:
robot
holonomic cũng luôn được thỏa mãn. Ràng buộc non-holonomic phục thuộc vào rất 
nhiều yếu tố như độ căng của lốp, độ trơn của mặt sàn, độ phẳng của địa hình Khi 
đó, nếu muốn giải quyết bài toán điều khiển chuyển động thì động học, động lực học 
trượt phải được tính đến khi thiết kế bộ điều khiển cho robot di động. Trong [5], các 
tác giả đã phát triển một mô hình động học suy rộng mà ở đó đã chứa đựng các loại 
trượt khác nhau như trượt dọc, trượt ngang, trượt quay. Trong [6], điều khiển lực 
ngang đã được đề xuất bằng các bộ điều khiển lực và vị trí, trong đó các yếu tố trượt 
đã được tính đến. Trong [7], các tác giả giới thiệu một bộ điều khiển bền vững để bám 
theo quỹ đạo bằng cách tích hợp động học trượt vào động học robot di động bánh xe 
dưới dạng các hàm và tính ổn định được kiểm chứng bằng toán tử Lie. Trong [8], các 
tác giả đã xây dựng mô hình động lực học robot di động bánh xe mà ở đó đã chứa 
đựng động lực học trượt ngang. Sau đó, mô hình động lực học này được sử dụng để 
thiết kế bộ lập quỹ đạo và bộ điều khiển để cho phép dẫn đường (navigation) có hiệu 
quả robot di động trong điều kiện có trượt ngang.
Trong trường hợp có trượt ngang hoặc trượt dọc thì yếu tố ma sát ở điểm tiếp xúc 
giữa bánh xe và mặt sàn được chú ý đến. Hệ số ma sát phục thuộc mạnh mẽ vào dạng 
địa hình, độ căng của lốp và vận tốc robot di động. Đối với điều khiển trượt dọc, trong 
[9], hệ số ma sát được xem như một hàm của tỷ số trượt. Trong [10], các tác giả đã 
trình bày một xe tự hành cho nông nghiệp với giả sử vận tốc của xe này nhỏ, chỉ có 
trượt dọc được chú ý đến, còn trượt ngang bị bỏ qua. Trong [11], đã nghiên cứu bằng 
thực nghiệm các ảnh hưởng của các tham số như bán kính bánh xe, khoảng cách giữa 
hai bánh, tải trọng lên hiệu quả điều khiển khi tồn tại trượt dọc. Trong [12], các tác giả 
đã xây dựng một bài toán path-following khi tồn tại cả trượt ngang và trượt dọc. Dựa 
trên mô hình trượt, bộ điều khiển chuyển động được tổng hợp có tính đến trượt dọc. 
Đối với trượt ngang, bộ điều khiển được dựa trên mô hình ma sát ngang.
Nội d ng nghiên cứu
Mô hình động học
Xét 1 robo di động bánh xe có trượt ngang như hình 1, vớ giả thiết độ trượt dọc 
của xe có thể bỏ qua, mô hình độ học của xe được mô tả như sau:
cos sinR M Mr x y bφ θ θ θ= + +    (1)
cos sinL M Mr x y bφ θ θ θ= + −    (2)
Hình 1: robot di động bánh xe có trượt ngang
 sin cosM Mx yη θ θ= − +   (3)
Trong đó, η là độ trượt ngang của robot di động.
Mô hình động lực học của robot di động
Động năng của thân robot di động là:
robot
Hình 1: robot di động bánh e có trượt ngang
34(1) 1.2016
1 2
T
latMq N N F Aτ λ= + + (11) 
với 1
0 0 0 0 1 0
,
0 0 0 0 0 1
T
N
 
=  
  
[ ]2 0 0 0 1 0 0
T
N =
 là 
các ma trận đầu vào,
2
2
0 0 0 0 0
0 0 0 0 0
0 0 2 0 0 0
,
0 0 0 2 0 0
0 0 0 0 0
0 0 0 0 0
M
M
M D
W
W W
W W
m
m
I I
M
m
m r I
m r I
 
 
 
 +
 =
 
 + 
 + 
τ [ ]T,R Lτ τ=ô là véc tơ đầu vào gồm mô men quay bánh 
phải, bánh trái; F
lat
 là lực đẩy tác động vào thân robot 
theo hướng ngang như hình 2.
Gọi 
T
,R Lφ φ =  v
  , S
1
(q) , và S
2
(q) là ma trận thỏa 
mãn phương trình sau: 
( ) ( )1 2q S q v S q η= +  (12) 
Dễ dàng tìm được ma trận
( ) ( )1 2
cos cos
2 2 sin
cossin sin
2 2
0
;
12 2
00 0
01 0
0 1
r r
r r
r rS q S q
b b
θ θ
θ
θθ θ
 
 
−  
  
  
  
= =   −
  
  
  
   
 
  ... 
T
M M
R L
m m
r rm I I m r I
b
m m
r rm I I
b
b S q MS q
r rb m m
r
b
ω
ω φ φ
=
   = + + + +   
   
=
   = − +   
   
=
 = − −  
= −

 
Thiết kế luật điều khiển
Gọi D(xD,yD) là điểm mục tiêu di chuyển với vận tốc dài VD không đổi theo hướng 
θD. Ta có:
cos
sin
D D D
D D D
x V
y V
θ
θ
=
=


 (20)
Gọi trạng thái của robot di động là:
T
, , , , , , ,M M R L R Lx y θ η φ φ φ φ = x
  (21)
Mô hình trạng thái của robot di động được biểu diễn dưới dạng sau:
( )
( ) ( )
1 2
1 1
1 2
0
, ,T
S v S
x
m b m
y y x y x
η
τ
ηω− −
 +   
= +     −    

=    


 (22)
trong đó,
( )
( )
1
2
cos sin
sin cos
D M
D M
y x x x
y
y yy x
θ θ
θ θ
  −  
= =     −−     
 (23)
Tính đạo hàm bậc nhất của (23):
( )
( )
2
1
. cos
,
sin
D D
D D
y V V
y V
ω θ θ
ω η θ θ
 − + − 
= − − − − 
y

 (24)
trong đó ( ) ,2 R L
r
b
ω θ φ φ= = −   ( )2 R L
rV φ φ= + 
Tiếp tục đạo hàm 2 vế (24), ta được:
1
,
V
y f
y
 
= − + 
 


 (25)
Trong đó, f là một véc tơ phụ thuộc vào quỹ đạo của mục tiêu D. Nếu D chuyển 
động theo đường thẳng thì f được thay bởi fL như sau:
( )
( )
2 2
1
. . sin
cos
D D
L
D D
y y V
f
y V
ω ω ω θ θ
ω η ω θ θ
 + − − 
=  − − − − 


 (26)
Nếu điểm D(xD,yD) chuyển động với vận tốc dài VD không đổi theo đường tròn có 
dạng:
( ) ( )2 2 2D O D Ox x y y R− + − = (27)
thì f được thay bởi fC như sau:
( ) ( )
( )
( ) ( )
( )
11 22
22
2
12 21
22
1 2
2
2 2
2
2 2
2 2
2
M M D W W
M M D
T
T
M M
R L
m m
r rm I I m r I
b
m m
r rm I I
b
b S q MS q
r rb m m
r
b
ω
ω φ φ
=
   = + + + +   
   
=
   = − +   
   
=
 = − −  
= −

 
Thiết kế luật điều khiển
Gọi D(xD,yD) là điểm mục tiêu di chuyển với vận tốc dài VD không đổi theo hướng 
θD. Ta có:
cos
sin
D D D
D D D
x V
y V
θ
θ
=
=


 (20)
Gọi trạng thái của robot di động là:
T
, , , , , , ,M M R L R Lx y θ η φ φ φ φ = x
  (21)
Mô hình trạng thái của robot di động được biểu diễn dưới dạng sau:
( )
( ) ( )
1 2
1 1
1 2
0
, ,T
S v S
x
m b m
y y x y x
η
τ
ηω− −
 +   
= +     −    

=    


 (22)
trong đó, 
( )
( )
1
2
cos sin
sin cos
D M
D M
y x x x
y
y yy x
θ θ
θ θ
  −  
= =     −−     
 (23)
Tính đạo hàm bậc nhất của (23):
( )
( )
2
1
. cos
,
sin
D D
D D
y V V
y V
ω θ θ
ω η θ θ
 − + − 
= − − − − 
y

 (24)
trong đó ( ) ,2 R L
r
b
ω θ φ φ= = −   ( )2 R L
rV φ φ= + 
Tiếp tục đạo hà 2 vế (24), ta được:
1
,
V
y f
y
 
= − + 
 


 (25)
Trong đó, f là một véc tơ phụ thuộc vào quỹ đạo của mục tiêu D. Nếu D chuyển 
động theo đường thẳng thì f được thay bởi fL như sau:
( )
( )
2 2
1
. . sin
cos
D D
L
D D
y y V
f
y V
ω ω ω θ θ
ω η ω θ θ
 + − − 
=  − − − − 


 (26)
Nếu điểm D(xD,yD) chuyển động với vận tốc dài VD không đổi theo đường tròn có 
dạng:
( ) ( )2 2 2D O D Ox x y y R− + − = (27)
thì f được thay bởi fC như sau:
Hình 2: các biến đầu ra y(x)
44(1) 1.2016
trong đó, f là một véc tơ phụ thuộc vào quỹ đạo của 
mục tiêu D. Nếu D chuyển động theo đường thẳng thì 
f được thay bởi fL như sau:
( )
( )
2 2
1
. . sin
cos
D D
L
D D
y y V
f
y V
w w w θ θ
w η w θ θ
 + − − 
=  − − − − 


Nếu điểm D(xD,yD) chuyển động với vận tốc dài VD 
không đổi theo đường tròn có dạng:
( ) ( )2 2 2D O D Ox x y y R− + − = 
thì f được thay bởi f
C
 như sau:
( ) ( )
( ) ( )
2 2
1
. . sin
cos
D D D
C
D D D
y y V
f
y V
w w w θ θ θ
w η w θ θ θ
 + − − −
 =
 − − − − − 




Ta có thể viết lại (25) dưới dạng: 
y hv f= − + 
trong đó 
1 1
2 2
2 2
r r
h
r r
y y
b b
 
 
 =
  −    
Nếu y
1
>0, thì h luôn khả nghịch.
Kết hợp (22) và (29), ta có:
( )1y hm b fτ ηw−= − − +
 Ta chọn luật điều khiển:
( )1 desired D Pb mh f y K e K eτ ηw −= + − + +   
trong đó, desirede y y= − , KP, KD là các ma trận hằng xác 
định dương. Sơ đồ khối của hệ thống điều khiển được 
mô tả như hình 3.
Yêu cầu của bài toán điều khiển là điểm P (hình 2) 
phải bám tiệm cận theo điểm D với sai lệch bám tiến 
về không. Do vậy, ta chọn [ ]T,0desired C=y .
Thay (31) vào (30), ta được:
0D Pe K e K e+ + =  
Từ phương trình động lực học sai lệch này, sai lệch 
e sẽ tiến tiệm cận về 0. Tức 1 2; 0y C y→ → .
Tiến hành mô phỏng bằng Matlab-Simulink. Các 
tham số của robot di động được tiến hành mô phỏng 
được chọn như sau: mM = 17 kg; r = 0,095 m; 
b = 0,24 m; ID = 0,023 kgm
2; I
W 
= 0,011 kgm2; 
I
M 
= 0,537 kgm2; mW = 0,5 kg. Khoảng cách mong 
muốn: C = 0,3 m. Các tham số điều khiển 
4 0
0 4P D
K K
 
= =  
 
.
Không mất tính tổng quát, tỷ số trượt được giả sử 
là: 0, 2;sa
V
η
= =

.
Kết quả mô phỏng
Ta sẽ tiến hành mô phỏng theo 2 trường hợp: 
Trường hợp 1: mục tiêu D(x
D
, y
D
) di chuyển theo 
đường thẳng có hệ số góc θ
D
 = π/6 với vận tốc 0,2 m/s.
( ) ( )
( )
( ) ( )
( )
11 22
22
2
12 21
22
1 2
2
2 2
2
2 2
2 2
2
M M D W W
M M D
T
T
M M
R L
m m
r rm I I m r I
b
m m
r rm I I
b
b S q MS q
r rb m m
r
b
ω
ω φ φ
=
   = + + + +   
   
=
   = − +   
   
=
 = − −  
= −

 
Thiết kế luật điều khiển
Gọi D(xD,yD) là điểm mục tiêu di chuyển với vận tốc dài VD không đổi theo hướng 
θD. Ta có:
cos
sin
D D D
D D D
x V
y V
θ
θ
=
=


 (20)
Gọi trạng thái của robot di động là:
T
, , , , , , ,M M R L R Lx y θ η φ φ φ φ = x
  (21)
Mô hình trạng thái của robot di động được biểu diễn dưới dạng sau:
( )
( ) ( )
1 2
1 1
1 2
0
, ,T
S v S
x
m b m
y y x y x
η
τ
ηω− −
 +   
= +     −    

=    


 (22)
trong đó, 
( )
( )
1
2
cos sin
sin cos
D M
D M
y x x x
y
y yy x
θ θ
θ θ
  −  
= =     −−     
 (23)
Tính đạo hàm bậc nhất của (23):
( )
( )
2
1
. cos
,
sin
D D
D D
y V V
y V
ω θ θ
ω η θ θ
 − + − 
= − − − − 
y

 (24)
trong đó ( ) ,2 R L
r
b
ω θ φ φ= = −   ( )2 R L
rV φ φ= + 
Tiếp tục đạo hàm 2 vế (24), ta được:
1
,
V
y f
y
 
= − + 
 


 (25)
Trong đó, f là một véc tơ phụ thuộc vào quỹ đạo của mục tiêu D. Nếu D chuyển 
động theo đường thẳng thì f được thay bởi fL như sau:
( )
( )
2 2
1
. . sin
cos
D D
L
D D
y y V
f
y V
ω ω ω θ θ
ω η ω θ θ
 + − − 
=  − − − − 


 (26)
Nếu điểm D(xD,yD) chuyển động với vận tốc dài VD không đổi theo đường tròn có 
dạng:
( ) ( )2 2 2D O D Ox x y y R− + − = (27)
thì f được thay bởi fC hư sau:
( ) ( )
( )
( ) ( )
( )
11 22
22
2
12 21
22
1 2
2
2 2
2
2 2
2 2
2
M M D W W
M M D
T
T
M M
R L
m m
r rm I I m r I
b
m m
r rm I I
b
b S q MS q
r rb m m
r
b
ω
ω φ φ
=
   = + + + +   
   
=
   = − +   
   
=
 = − −  
= −

 
Thiết kế luật điều khiển
Gọi (xD,yD) là điểm mục tiêu di chuyển với vận tốc dài VD không đổi theo hướng 
θD. Ta có:
cos
sin
D D D
D D D
x V
y V
θ
θ
=
=


 (20)
Gọi trạng thái của robot di động là:
T
, , , , , , ,M M R L R Lx y θ η φ φ φ φ = x
  (21)
Mô ình trạng thái của robot di động được biểu diễn dưới dạng sau:
( )
( ) ( )
1 2
1 1
1 2
0
, ,T
S v S
x
m b m
y y x y x
η
τ
ηω− −
 +   
= +     −    

=    


 (22)
trong đó, 
( )
( )
1
2
cos sin
sin cos
D M
D M
y x x x
y
y yy x
θ θ
θ θ
  −  
= =     −−     
 (23)
Tính đạo hàm bậc nhất của (23):
( )
( )
2
1
. cos
,
sin
D D
D D
y V V
y V
ω θ θ
ω η θ θ
 − + − 
= − − − − 
y

 (24)
trong đó ( ) ,2 R L
r
b
ω θ φ φ= = −   ( )2 R L
rV φ φ= + 
Tiếp tục đạo hàm 2 vế (24), ta được:
1
,
V
y f
y
 
= − + 
 


 (25)
Trong đó, f là một véc tơ phụ thuộc vào quỹ đạo của mục tiêu D. Nếu D chuyển 
động theo đường thẳng thì f được thay bởi fL như sau:
( )
( )
2 2
1
. . sin
cos
D D
L
D D
y y V
f
y V
ω ω ω θ θ
ω η ω θ θ
 + − − 
=  − − − − 


 (26)
Nếu điểm (xD,yD) chuyển động với vận tốc dài VD không đổi theo đường tròn có 
dạng:
( ) ( )2 2 2D O D Ox x y y R− + − = (27)
t ì f được thay bởi fC như sau:
( ) ( )
( ) ( )
2 2
1
. . sin
cos
D D D
C
D D D
y y V
f
y V
ω ω ω θ θ θ
ω η ω θ θ θ
 + − − −
 =
 − − − − − 




 (28)
Ta có thể viết lại (25) dưới dạng:
y hv f= − +  (29)
trong đó 
1 1
2 2
2 2
r r
h
r r
y y
b b
 
 
 =
  −    
Nếu y1>0, thì h luôn khả nghịch.
Kết hợp (22) và (29), ta có:
( )1y hm b fτ ηω−= − − + (30)
Ta chọn luật điều khiển:
( )1 desired D Pb mh f y K e K eτ ηω −= + − + +   (31)
trong đó, desirede y y= − , KP, KD là các ma trận hằng xác định dương. Sơ đồ khối của 
hệ thống điều khiển được mô tả như hình 3.
Yêu cầu của bài toán điều khiển là điểm P (hình 2) phải bám tiệm cận theo điểm D
với sai lệch bám tiến về không. Do vậ , ta chọn [ ]T,0desired C=y .
Thay vào (25), ta được:
0D Pe K e K e+ + =  (32)
Từ phương trình động lực học sai lệch này, sai lệch e sẽ tiến tiệm cận về 0. Tức 
1 2; 0y C y→ → .
Tiến hành mô phỏng bằng Matlab-Simulink. Các tham số của robot di động được 
tiến hành mô phỏng được chọn như sau: mM = 17 kg; r = 0,095 m; 
b = 0,24 m; ID = 0,023 kgm2; IW = 0,011 kgm2;
IM = 0,537 kgm2; mW = 0,5 kg. Khoảng cách mong muốn: C = 0,3 m. Các tham số 
điều khiển 
4 0
0 4P D
K K
 
= =  
 
.
Không mất tính tổng quát, tỷ số trượt được giả sử là: 0,2;sa
V
η
= =

Kết quả mô phỏng
Ta sẽ tiến hành mô phỏng theo 2 trường hợp: 
Trường hợp 1: mục tiêu D(xD, yD) di chuyển theo đường thẳng có hệ số góc 
θD = π/6 với vận tốc 0,2 m/s.
Robot 
di động
Bộ điều 
khiển
Tính véc tơ 
đầu ra y(x)
Quỹ đạo 
mục tiêu
Trượt ngang
Hình 3: sơ đồ khối để điều khiển robot di động non-holonomic có trượt ngang
,y y
0 1 2 3 4 5 6 7 8 9 10-0.2
0
0.2
0.4
0.6
0.8
1
thoi gian (s)
sa
i l
ec
h 
(m
)
e1
e2
0 1 2 3 4 5 6 7 8 9 100
0.05
0.1
0.15
0.2
0.25
thoi gian (s)
to
c 
do
 tr
uo
t n
ga
ng
 (
m
/s
)
eta-dot
Hình 4: đồ thị sai lệch e = y – y
desired
Hình 5: đồ thị tốc độ trượt ngang η khi robot bám theo đường thẳng
54(1) 1.2016
0 0.5 1 1.5 2 2.5 30
0.5
1
1.5
2
2.5
truc X (m)
tru
c 
Y 
(m
)
quy dao diem P
quy dao diem D
0 1 2 3 4 5 6 7 8 9 10-2
0
2
4
6
8
thoi gian (s)
to
rq
ue
 (N
.m
)
torqueR
torqueL
Trường hợp 2: mục tiêu di chuyển theo đường tròn 
có phương trình (27) với vận tốc dài V
D
 = 0,4 m/s.
0 0.5 1 1.5 2 2.50
0.5
1
1.5
2
2.5
3
truc X (m)
tru
c 
Y
 (m
)
quy dao diem P
quy dao diem D
Hình 11: quỹ đạo điểm P và điểm D
0 1 2 3 4 5 6-2
0
2
4
6
8
thoi gian (s)
to
rq
ue
 (N
.m
)
torqueR
torqueL
Hình 12: mô men quay ở hai bánh xe robot di động
0 1 2 3 4 5 60
0.2
0.4
0.6
0.8
1
1.2
1.4
thoi gian (s)
da
u 
ra
 y
(x
) (
m
)
y1
y2
Hình 13: véc tơ đầu ra y(x)
Tốc độ trượt ngang tương ứng với các trường hợp 1 
và 2 được mô tả qua các hình vẽ 5 và 10.
Các hình 4, 6, 9, 11 đã minh họa tính ổn định tiệm 
cận của luật điều khiển. Trong các hình 8 và 13, giá trị 
y
1
(x) > 0 với ∀t > 0 nên ma trận h trong phương trình 
(31) luôn khả nghịch. Hình 7 và 12 minh họa đồ thị mô 
men quay luôn liên tục và hữu hạn. Do vậy, luật điều 
khiển là khả thi. 
Kết luận
Trong nghiên cứu này, chúng tôi đã xây dựng thành 
công mô hình động học, động lực học của robot di 
động khi có trượt ngang. Trong các mô hình động học, 
động lực học đều chứa đựng động học, động lực học 
của trượt ngang. Sau đó, chúng tôi đã đề xuất một luật 
điều khiển theo phương pháp tuyến tính hóa phản hồi 
vào ra. Tính ổn định của luật điều khiển đã được kiểm 
chứng bằng Matlab-Simulink khi tiến hành mô phỏng 
cho robot bám theo quỹ đạo thẳng và quỹ đạo tròn. 
Trong tương lai, chúng tôi sẽ khảo sát và thiết kế bộ 
điều khiển cho robot di động khi vừa có trượt dọc, vừa 
có trượt ngang.
0 1 2 3 4 5 60
0.05
0.1
0.15
0.2
0.25
0.3
0.35
thoi gian (s)
to
c 
do
 tr
uo
c 
ng
an
g 
(m
/s
)
eta-dot
0 1 2 3 4 5 6-0.2
0
0.2
0.4
0.6
0.8
1
thoi gian (s)
sa
i l
ec
h 
(m
)
e1
e2
0 1 2 3 4 5 6 7 8 9 100
0.2
0.4
0.6
0.8
1
1.2
1.4
thoi gian (s)
da
u 
ra
 y
(x
) (
m
)
y1
y2
Hình 3: sơ đồ khối để điều khiển robot di động non-holonomic có trượt ngang
,y y
Hình 10: đồ thị tốc độ trượt ngang η khi rô bốt bám theo đường tròn
Hình 9: đồ thị sai lệch e = y – y
desired
Hình 8: véc tơ đầu ra y(x)
Hình 7: mô men quay ở hai bánh xe robot di động
64(1) 1.2016
Tài liệu tham khảo
[1] T Hu, S Yang, F Wang, G Mittal (2002), A neural network 
for a non-holonomic mobile robot with unknown robot parameters, 
Proc. of the 2002 IEEE Int. Conf. on Robotics & Automation.
[2] T Hu and S Yang (2001), “A novel tracking control method 
for a wheeled mobile robot”, Proc. of 2nd Workshop on Computation-
al Kinematics, pp.104-116.
[3] R. Fierro and F.L Lewis (1998), “Control of a nonholonom-
ic mobile robot using neural networks”, IEEE Trans. on Neural Net-
works, 9(4), pp.389-400.
[4] E Zalama, P Gaudiano and J Lopez Coronado (1995), “A 
real-time, unsupervised neural network for the low-level control of 
a mobile robot in a nonstationary environment”, Neural Networks, 8, 
pp.103-123.
[5] M Tarokh, G.J McDermott (2005), “Kinematics modeling 
and analyses of articulated rover”, IEEE Trans. on Robotics, 21(4), 
pp.539-553.
[6] S Jung, T.C Hsia (2005), Explicit lateral force control of an 
autonomous mobile robot with slip, IEEE/RSJ Int. Conf. on Intelli-
gent Robots and Systems, pp. 388-393.
[7] X Zhu, G Dong, D Hu, Z Cai (2006), Robust tracking 
control of wheeled mobile robots not satisfying nonholonomic 
constraints, Proc. of the 6th Int. Conf. on Intelligent Systems Design 
and Applications ISDA’06.
[8] N Sidek, N Sarkar, SARKAR (2008), Dynamic modeling 
and control of nonholonomic mobile robot with lateral slip, Proc. of 
the 7th WSEAS Int. Conf. on Signal Processing, Robotics and Auto-
mation (ISPRA ‘08), University of Cambridge, UK.
[9] Zielinska T, Chmielniak A (2010), Controlling the slip in 
mobile robots, Proc. 13th Int. Conf. on Climbing and Walking Robots 
and the Support Technologies for Mobile Machines, pp.13-20.
[10] J Sánchez-Hermosilla, F Rodríguez, R González, et al 
(2010), A mechatronic description of an autonomous mobile robot for 
agricultural tasks in greenhouses, Mobile Robots Navigation, Barre-
ra, A. (Ed.), InTech, Croatia, pp.583-607.
[11] L Ding, H Gao, Z Deng, et al (2011), “Experimental study 
and analysis on driving wheels’ performance for planetary exploration 
rovers moving in deformable soil”, J. Terramech, 48(1), pp.27-45. 
[12] H Khan, J Iqbal, K Baizid, T Zielinska, Longitudinal and 
lateral slip control of autonomous wheeled mobile robot for trajecto-
ry tracking, Frontiers of Information Technology & Electronic Engi-
neering , ISSN 2095-9184 (print); ISSN 2095-9230 (online).

File đính kèm:

  • pdfmo_hinh_hoa_va_dieu_khien_robot_di_dong_non_holonomic_co_tru.pdf