You are on page 1of 8

ĐIỀU KHIỂN ROBOT OMNI DÙNG THUẬT TOÁN PID

Trần Văn Thiện1,*, Nguyễn Hữu Châu Minh1,**, Cao Thị Xuân Thùy1,***
Khoa Điện - Điện Tử, Học viện Hàng không Việt Nam
1

*
Email: thientv@vaa.edu.vn, Số điện thoại: (+84)348.368.009
**
Email: minhnhc@vaa.edu.vn
***
Email: thuy@vaa.edu.vn

TÓM TẮT
Robot tự hành là vấn đề được quan tâm nhiều trong đời sống xã hội hiện nay, trong đó Omni robot 3
bánh là loại robot di động có kết cấu đặc biệt giúp robot có thể vừa di chuyển vừa xoay nhưng vẫn
không làm thay đổi quỹ đạo định trước nên được rất nhiều nhà nghiên cứu quan tâm và ứng dụng.
Trong bài báo này, trình bày cách thiết kế bộ điều khiển PID để kiểm soát quỹ đạo định trước của
robot. Kết quả của bộ điều khiển bài báo đề xuất sẽ được kiểm chứng qua mô phỏng trên
Matlab/Simulink và thực nghiệm.
Từ khóa: Omni robot 3 bánh, Omni robot PID, Robot Omni.

ABSTRACT
Self-propelled robots are a matter of great interest in today's social life, in which the 3-wheeled Omni
robot is a mobile robot with a special structure that helps the robot to move and rotate but still not
change the fund. Predetermined leadership should be interested and applied by many researchers. In
this paper, the design of a PID controller is presented to control the predetermined trajectory of the
robot. The results of the proposed article controller will be verified through simulation on
Matlab/Simulink and experiment.
trình bày cách robot hoạt động dựa trên bộ điều
1. GIỚI THIỆU khiển PID.
Robot Omni 3 bánh là một loại robot tự hành,
có cấu tạo đơn giản, di chuyển bằng những bánh 2.CƠ SỞ LÝ THUYẾT
xe đa hướng. Điểm nổi bậc robot này là có khả 2.1. Động lực học cho robot Omni 3 bánh
năng vừa di chuyển vừa xoay nhưng không làm
Cấu trúc hình học của Omni robot 3 bánh[21]
thay đổi hướng bám quỹ đạo, cho nên nó được
được trình bày:
sử dụng trong các môi trường có lối đi nhỏ hẹp,
chẳng hạn như nhà ở, nhà kho, bệnh viện, các
xưởng sản xuất.
Bởi vì sự linh hoạt này nên nó được nhiều nhà
nghiên cứu quan tâm, và vấn đề được chú ý là
phương thức điều khiển. Có thể chia thành
phương pháp điều khiển tuyến tính và phi
tuyến.
Một số phương pháp được các nhà nghiên cứu
áp dụng để điều khiển robot là phương pháp
điều khiển cuốn chiếu [5],[7], điều khiển mờ Hình 2.1 Cấu trúc hình học của Omni robot 3
[10], điều khiển trượt [11],[18],[6], điều khiển bánh
PID [8], PD[9], PI-mờ[12]. Sau đây, tôi xin
Hình 2.1 mô tả cấu trúc hình học của Omni Các vector vị trí và vận tốc của các bánh xe
robot gồm có 3 bánh xe đa hướng, cách đều trong hệ tọa độ toàn cục được thể hiện bằng các
nhau 1 góc 1200; r là bán kính của bánh xe; C là phương trình:
tâm dịch chuyển của Omni robot; L là khoảng
Pi  PC  R (C )  PWi
cách từ tâm bánh xe đến điểm C; (OXY) là hệ (7)
tọa độ tham chiếu toàn cục; (CX0Y0) là hệ tọa Vi  PC  R (C )  PWi
độ tham chiếu cục bộ gắn liền với Omni robot.
Omni robot trong hệ tọa độ tham chiếu toàn cục Vận tốc góc của các bánh xe được tính như sau:
được xác định bởi vector q  [x,y, ]T 3x1 ;
1
Vector PC  [x y]T 2x1 được xác định là i  ViT  R(C )  DWi (8)
r
vector vị trí của tâm C robot với gốc tọa độ O; 1
  PCT  R(C )  DWi  PWiT  RT (C )  RT (C )  DWi  (9)
PWi  (i  1, 2,3) là véc tơ vị trí tương đối
2x1
r
của mỗi bánh xe đối với hệ tọa độ tham chiếu Phương trình động học [8], [22] của robot di
cục bộ; DWi 2 x1 là vector hướng của mỗi động đa hướng có bánh xe được viết chi tiết như
bánh xe có hệ tọa độ tham chiếu (OXY). sau:
2.1.1. Phương trình động học Omni robot 3 1    sin(C ) cos(C ) L  X C 
     sin( / 3   )  cos( / 3   ) L   Y 
bánh  2  C C  C  (10)
3   sin( / 3  C )  cos( / 3  C ) L   C 
Ma trận quay R(C ) chuyển từ hệ tọa độ dịch
chuyển gắn với robot sang hệ tọa độ toàn cục Phương trình được viết lại dạng vector:
được hiển thị như sau :
1 1
z H  qC (11)
cos(C )  sin(C )  r
R (C )    
2x2
(1)
 sin( ) cos( C 
)
Theo đó z  1 2 3  là vector vận tốc
C T

Các vector vị trí PW1, PW2, PW3 22 của các góc của bánh xe, và ma trận H 1  33 biểu thị
bánh xe trong hệ tọa độ dịch chuyển gắn với tâm như sau:
robot được biểu thị như sau:
  sin(C ) cos(C ) L
1 
PW 1  L   (2)
1
H   sin( / 3  C )  cos( / 3  C ) L  (12)
0  sin( / 3  C )  cos( / 3  C ) L 
 2  L  1 
PW 2  R    PW 1    (3) 2.1.2.Phương trình động lực học Omni robot
 3  2  3
3 bánh
 4  L 1 
PW 3  R    PW 1     (4) Mô hình động lực học của Omni robot sử dụng
 3  2  3
phương pháp Euler Lagrange cho hệ thống
Các vector chỉ hướng chuyển động thiếu bậc. Phương trình động lực học [23], [24]
DWi 21 (i  1, 2,3) của bánh xe thứ i th được có dạng sau:
tính như sau: MqC  CqC  ud  u (13)
1
DWi  R C   PWi (5) Trong đó:
L
 m1 0 0 0 C 0
 
0  1  3 1  3 M   0 m2 
0  , C(qC )  a C 0 0
DW 1    , DW 2     , DW 3    (6) 0
2  1   0 0 m3  0 0 
1  2 1  
  sin(C )  sin( / 3  C ) sin( / 3  C )  Thành phần của mỗi bánh xe được trích ra như
B   cos(C )  cos( / 3  C )  cos( / 3  C ) 
1
sau:
r
 L L L  𝑉𝑖 = 𝑉 𝑇 × 𝐷𝑖 (i = 1, 2, 3 ) (17)
3I 3I L2 3I
m1  m2  M p  r2 , m3  Ip  r2 , a  r2 , u  B. Trong phương trình này, vector Di là vector chỉ
2r r 2r
Mp là khối lượng của robot; Ir là mô men quán hướng của motor thứ i. Ngõ ra của bộ điều khiển
tính của bánh xe; Ip là momen quán tính của vị trí trên mỗi motor là Vi .
robot; ud là momen nhiễu, u  [u1 u2 u3 ]T là Ngõ ra của bộ điều khiển góc lệch:
momen tác động vào từng động cơ. d (err _ theta)
W  Kp.err _theta  Kd (18)
Lưu ý: Phương trình động lực học Omni robot dt
3 bánh ở (2-25) có các đặc điểm[23] sau:
Điện áp cấp ra mỗi động cơ như sau:
Đặc điểm 1: Ma trận M có tính khả nghịch và
xác định dương. Ui = Vi + W (19)

Đặc điểm 2: Ma trận  M  2C  qC , qC   có tính 3.2. Mô phỏng


Để kiểm nghiệm lý thuyết ở trên, ta tiến hành
đối xứng lệch.
mô phỏng, sơ đồ mô phỏng toàn bộ hệ thống
3.Thiết kế bộ điều khiển và mô phỏng Omni robot được thể hiện như Hình 3.2.

3.1. Thiết kế bộ điều khiển PID


Ta đề xuất thiết kế bộ điều khiển PID như trong
Hình 2.4

Hình 3.2 Sơ đồ mô phỏng toàn bộ hệ thống


Omni robot 3 bánh trên Matlab
Hình 3.1 Sơ đồ khối được đề xuất cho hệ thống Qua Hình 3.2 ta có thể phân hệ thống mô phỏng
Robot gồm 3 phần:
Trong đó: Phần thứ 1: Tọa độ đặt hoặc quỹ đạo đặt.
x_d, y_d, theta_d: giá trị đặt mong muốn, có Phần thứ 2: Bộ điều khiển PID, giúp robot đưa
thể là 1 điểm hoặc là 1 quỹ đạo định trước. ra tín hiệu điều khiển cho robot hoạt động, đầu
ra của bộ điều khiển có 3 tín hiệu, cấp vào 3
x_t, y_t, theta_t: giá trị thực tế robot trả về.
động cơ của Omni robot 3 bánh.
Sai số vị trí được định nghĩa như sau:
Phần thứ 3: Mô hình Omni robot 3 bánh.
 x _ d   x _t 
err _ xy     (14)
 y _ d   y _t 
Sai số góc được định nghĩa như sau:
err _theta  theta _d  theta_t (15)
Ngõ ra của bộ điều khiển vị trí:
d (err _ xy ) d (err _ xy )
V  Kp.err _ xy  Ki   Kd (16)
dt dt
 1 
 xd  0.5sin  5  t  ;
  
 (21)
 yd  0.5cos  1  t  ;
  
5 

Hình 3.3. Mô hình Omni robot 3 bánh


Thông số mô hình robot:
Bảng 3.1 Thông số mô hình robot Omni 3
bánh
Thông số Trị số Đơn vị
Hình 3.4 Quỹ đạo robot khi di chuyển theo
Mp 2 kg đường tròn
r 0.029 m
L 0.1 m
Ip 0.12 kgm2
Ir 0.001 kgm2
Bảng 3.2 Thông số mô hình Robot Omni 3
bánh ban đầu
Thông số Trị số Đơn vị
XC 0 m
Hình 3.5 Bám trục X khi robot di chuyển
YC 0 m
θC pi/2 rad
3.3. Kết quả mô phỏng
Để ghi lại hiệu suất điều khiển tương ứng, sai
số toàn phương trung bình (MSE) của vị trí bám
tương ứng được xác định như sau:
2
1 T
MSE    qd  i   qc  i   (20)
T i 1
Trong đó: T là tổng thời gian lấy mẫu,
qd (i ), qc (i ) là vị trí đặt và vị trí hiện tại. Hình 3.6 Bám trục Y khi robot di chuyển
Cho robot di chuyển theo quỹ đạo đường tròn
tâm O(0,0), bán kính R=0.5m, ta có hệ phương
trình:
Hình 4.1 Sơ đồ khối phần cứng của hệ thống
robot
Chức năng của từng thiết bị trong sơ đồ khối:
Hình 3.7 Bám góc theta khi robot di chuyển - Camera: thu ảnh màu.
- Máy tính: lấy hình ảnh từ camera thu về, xử
lý hình ảnh.
- Module RF: truyền dữ liệu không dây
- Vi điều khiển: Xử lý dữ liệu và xuất tín hiệu
điều khiên động cơ.
- Mạch khuếch đại: điều khiển động cơ.
- Nguồn 12v, 5v: cung cấp điện cho các thiết
bị.
- Mạch chuyển DC: giúp chuyển điện áp 12v
Hình 3.8 Momen điều khiển của robot khi di sang 5v.
chuyển  Quy trình hoạt động của các thành phần
Bảng 3.3 MSE của quá trình robot di chuyển được thực hiện như sau:
theo trường hợp 1  Máy tính:
Bộ điều khiển - Mở cổng COM.
PID
Sai số - Thu hình ảnh từ camera với kích thước
x 3.2402e-05 680x480, đơn vị: pixel.
- Xử lý ảnh: nhận dạng màu, lọc nhiễu, tìm tọa
y 0.0040
độ tâm của màu, chuyển đổi tọa độ pixel ra
theta 5.9749e-09 tọa độ thực tế (centimet). Lưu ý: tâm của
màu cũng chính là tâm của robot.
Nhận xét:
- Gửi tọa độ này cho robot thông qua module
Bộ điều khiển PID đã bám quỹ đạo tốt khi di
RF (giao tiếp UART).
chuyển.
 Robot:
4.MÔ HÌNH THỰC NGHIỆM - Nhận tọa độ từ máy tính gửi xuống vi điều
4.1. Sơ đồ khối toàn bộ hệ thống robot khiển.
Các thiết bị được dùng để xây dụng hệ thống - Tính ra sai số giữa tọa độ đặt và tọa độ thực.
Omni robot 3 bánh được trình bày ở Hình 4.1 - Đưa sai số này vào bộ điều khiển.
- Bộ điều khiển xuất tín hiệu điều khiển đến
mạch khuếch đại để điều khiển động cơ.
4.2. Mô hình thực tế trong phòng thí trước mà robot phải bám theo. Nhờ giao diện
nghiệm này mà ta có thể quan sát quỹ đạo robot hoạt
động một cách dễ dàng hơn.
Cho robot di chuyển theo đường tròn tâm O
(100,75) với bán kính là 45cm. Kết quả thực
nghiệm như sau:

Hình 4.2 Khu vực chạy thử robot


Ở Hình 4.2 mô tả khu vực robot chạy thử
nghiệm được lắp đặt trong phòng thí nghiệm, ta
có thể nhìn thấy robot đang được đặt trong một
sân có nền đen. Phía trên có một camera
Logitech c270, robot sẽ di chuyển trong sân Hình 4.5 Quỹ đạo bám của robot chạy thực
này, và camera phía trên sẽ định vị tọa độ robot nghiệm
trong sân.

Hình 4.3 Robot Omni 3 bánh thực tế Hình 4.6 Đáp ứng của robot theo trục x
Trong hình 4.3 ta thấy đây là một Omni robot 3
bánh, phía trên robot được dán màu đỏ và màu
xanh lá. Mục định của việc này là để định vị
robot trong không gian.
4.3. Kết quả thực nghiệm:

Hình 4.7. Đáp ứng của robot theo trục y


Bảng 4.1 MSE của quá trình robot di chuyển
Bộ điều khiển
PID
Sai số
Hình 4.4 Giao diện trên Matlab.
X (cm) 8.9230
Hình 4.4 là giao diện trên Matlab, cho ta thấy
được tọa độ robot trong không gian, ở đây có Y (cm) 9.8874
hình tròn màu xanh dương, là quỹ đạo định
5. KẾT LUẬN [8] M. DaneshPanah et al. “Comprehensive
Qua thực nghiệm trên robot di chuyển theo Omni-Directional Soccer Player Robots,” in
đường tròn, Robotic Soccer, P. Lima, Ed. I-Tech Education
and Publishing, 2007.
Nếu chỉ sử dụng bộ điều khiển PID thì robot
chưa đáp ứng được tốt, dẫn đến sai số bám lớn. [9] J. A. Vazquez and M. Velasco-Villa.
“Computed-Torque Control of an
Tương lai, robot sẽ được áp dụng các bộ điều
Omnidirectional Mobile Robot,” in 2007 4th
khiển thông minh hơn để chất lượng điều khiển
International Conference on Electrical and
được cải thiện.
Electronics Engineering, Mexico City, Mexico,
2007, pp. 274–277.
TÀI LIỆU THAM KHẢO [10] C.-H. Liu et al. “Design of Integral Fuzzy
[1] S. G. Tzafestas. Introduction to mobile robot Terminal Sliding-Mode Controller for Omni-
control. First edition. Amsterdam: Elsevier, directional Mobile Robots,” in 2013 Second
2014. International Conference on Robot, Vision and
[2] Yong Liu et al. “Omni-directional mobile Signal Processing, Kitakyushu, Japan, 2013,
robot controller design by trajectory pp. 190–195.
linearization,” in Proceedings of the 2003 [11] Đỗ Bùi Đình Thiên. “Điều khiển bám quỹ
American Control Conference. 2003, pp. 3423– đạo mong muốn của Robot di động đa hướng sử
3428. dụng bộ điều khiển Trượt,” Luận văn thạc sĩ,
[3] Y. Liu et al. “Omni-directional mobile robot Đại học Kỹ thuật Công Nghệ, Hồ Chí Minh,
controller based on trajectory linearization,” 2012.
Robot. Auton. Syst. Vol. 56, no. 5, pp. 461– [12] A. Sheikhlar et al. “Fuzzy adaptive PI
479, May 2008. control of omni-directional mobile robot,” in
[4] M. A. Sharbafi et al. “Motion Control of 2013 13th Iranian Conference on Fuzzy
Omni-Directional Three-Wheel Robots by Systems (IFSC), Qazvin, Iran, 2013, pp. 1–4.
Brain-Emotional-Learning-Based Intelligent [13] V. Rostami et al. “Fuzzy Error Recovery in
Controller,” IEEE Trans. Syst. Man Cybern. Feedback Control for Three Wheel
Part C Appl. Rev. Vol. 40, no. 6, pp. 630–638, Omnidirectional Soccer Robot.” International
Nov. 2010. Journal of Electrical, Computer, Electronics
[5] H.-C. Huang and C.-C. Tsai. “Adaptive and Communication Engineering. Vol. 1, No. 9,
Trajectory Tracking and Stabilization for 2007.
Omnidirectional Mobile Robot with Dynamic [14] Q. Xu et al. “Fuzzy PID Based Trajectory
Effect and Uncertainties,” IFAC Proc. Vol. 41, Tracking Control of Mobile Robot and its
no. 2, pp. 5383–5388, 2008. Simulation in Simulink,” Int. J. Control Autom.
[6] V. H. Duy et al. “Online Training the Radial Vol. 7, no. 8, pp. 233–244, Aug. 2014.
Basis Function Neural Network Based on [15] Tung Thanh Pham et al. “Optimizing the
Quasi-Newton Algorithm for Omni-directional structure of RBF neural network-based
Mobile Robot Control,” in AETA 2017 - controller for Omnidirectional Mobile Robot
Recent Advances in Electrical Engineering and control,” in 2017 International Conference on
Related Sciences: Theory and Application. Vol. System Science and Engineering (ICSSE), Ho
465, pp. 557-998, 2018. Chi Minh City, Vietnam, 2017, pp. 313–318.
[7] S.-H. Chen et al. “Backstepping Control [16] V. H. Dong et al.(11/2018). “Radial basis
with Sum of Squares Design for Omni- function newral network and genetic algorithm
directional Mobile Robots,” presented at in trajectory tracking control of the omni-
ICROS-SICE International Joint Conference, directional mobile robot,” International Journal
Japan, 2009 of Mechanical Engineering andTechnology
(IJMET). [Online]. (9), pp. 670–683. [25] Nguyễn Thị Phương Hà. Lý thuyết điều
Available: khiển hiện đại. Nhà xuất bản Đại Học Quốc Gia
http://www.iaeme.com/ijmet/issues.asp?JType Tp.Hồ Chí Minh, 2008.
=IJMET&VType=9&IType=11 [26] J.-J. E. Slotine and W. Li. Applied
[17] G. I. R. K. Galgamuwa et al. “Simplified nonlinear control. Englewood Cliffs, N.J:
controller for three wheeled omni directional Prentice Hall, 1991.
mobile robot,” in 2015 IEEE 10th International
Conference on Industrial and Information
Systems (ICIIS), Peradeniya, Sri Lanka, 2015,
pp. 314–319.
[18] V. Alakshendra et al. “Trajectory Tracking
Control of Three-Wheeled Omnidirectional
Mobile Robot: Adaptive Sliding Mode
Approach,” in CAD/CAM, Robotics and
Factories of the Future, D. K. Mandal and C. S.
Syan, Eds. New Delhi: Springer India, 2016,
pp. 275–286.
[19] K.-Y. Cai et al. Asian studies in computer
and information science. Kluwer Academic
Publishers, 2002.
[20] T. Mai and Y. Wang. “Adaptive position
tracking control system based on recurrent
fuzzy wavelet neural networks for robot
manipulators,” Proc. Inst. Mech. Eng. Part J.
Syst. Control Eng. Vol. 228, no. 7, pp. 500–520,
Aug. 2014.
[21] V.-T. Dinh et al. “Tracking control of
omnidirectional mobile platform with
disturbance using differential sliding mode
controller,” Int. J. Precis. Eng. Manuf. Vol. 13,
no. 1, pp. 39–48, Jan. 2012.
[22] K.-Y. Tu. “A linear optimal tracker
designed for omnidirectional vehicle dynamics
linearized based on kinematic equations,”
Robotica. Vol. 28, no. 07, pp. 1033–1043, Dec.
2010.
[23] J. A. Vázquez and M. Velasco-Villa.
“Path-Tracking Dynamic Model Based Control
of an Omnidirectional Mobile Robot,” IFAC
Proc. Vol. 41, no. 2, pp. 5365–5370, 2008.
[24] H. Sira-Ramírez et al. “Linear Observer-
Based Active Disturbance Rejection Control of
the Omnidirectional Mobile Robot: Linear
Robust Control of the Omnidirectional Mobile
Robot,” Asian J. Control. Vol. 15, no. 1, pp. 51–
63, Jan. 2013.

You might also like