Điều khiển robot ba bánh sử dụng bộ điều PID

Bài báo nghiên cứu Robot ba bánh (Omnidirectional Mobile Robot-OMR) sử dụng thuật toán PID để

điều khiển. OMR sẽ chạy theo một quỹ đạo cho trước sao cho sai số về không. Thuật toán PID sử dụng PWM

trong điều khiển tốc độ động cơ và điều khiển quỹ đạo của OMR để không những sai số nhỏ mà dao động của

hệ thống cũng được giới hạn. Thuật toán đã được kiểm chứng qua một số thực nghiệm để đánh giá về tính hiệu

quả, ổn định của thuật toán cũng như sự kết hợp trong điều khiển cả hai đối tượng cùng lúc.

 

pdf 6 trang phuongnguyen 6160
Bạn đang xem tài liệu "Điều khiển robot ba bánh sử dụng bộ điều PID", để 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: Điều khiển robot ba bánh sử dụng bộ điều PID

Điều khiển robot ba bánh sử dụng bộ điều PID
36 • TRƯỜNG ĐẠI HỌC NHA TRANG
Tạp chí Khoa học - Công nghệ Thủy sản Số 3/2017
ĐIỀU KHIỂN ROBOT BA BÁNH SỬ DỤNG BỘ ĐIỀU PID
CONTROL OF OMNIDIRECTIONAL MOBILE ROBOT 
BASED ON PID CONTROLLER
Trần Văn Hùng1, Nguyễn Văn Hân1
Ngày nhận bài: 15/10/2016; Ngày phản biện thông qua: 28/3/2017; Ngày duyệt đăng: 25/9/2017
TÓM TẮT
Bài báo nghiên cứu Robot ba bánh (Omnidirectional Mobile Robot-OMR) sử dụng thuật toán PID để 
điều khiển. OMR sẽ chạy theo một quỹ đạo cho trước sao cho sai số về không. Thuật toán PID sử dụng PWM 
trong điều khiển tốc độ động cơ và điều khiển quỹ đạo của OMR để không những sai số nhỏ mà dao động của 
hệ thống cũng được giới hạn. Thuật toán đã được kiểm chứng qua một số thực nghiệm để đánh giá về tính hiệu 
quả, ổn định của thuật toán cũng như sự kết hợp trong điều khiển cả hai đối tượng cùng lúc.
Từ khóa: Robot 3 bánh (OMR), PID
ABSTRACT
The paper demonstrates an Omnidirectional Mobile Robot (OMR), which is based on PID controller. 
The purpose is to control the OMR such that the tracking errors converge to zero. PID controller is applied to 
tune the PMW signal of the motor revolution, and correct path deviation issues encountered when the robot is 
moving. The effectiveness of the proposed approach was verifi ed through several tracking experiments, which 
demonstrate the feasibility of a PID controller path tracker as well as the control of motor DC speed
Keywords: Omnidirectional Mobile Robot (OMR), PID 
1 Khoa Cơ khí, Trường Đại học Nha Trang
THOÂNG BAÙO KHOA HOÏC
I. ĐẶT VẤN ĐỀ
OMR có thể di chuyển theo bất kỳ phương 
nào mà không cần quay đầu. Các mô hình và 
điều khiển OMR đã được một số nhà nghiên 
cứu đưa ra trong thời gian gần đây. Mô hình 
động lực học và điều khiển theo quỹ đạo đã 
được đưa ra, coi OMR giống như tập hợp của 
ba động cơ [4]. Huang và Tsai sử dụng Field 
Programmable Gate Array (FPGA) làm bộ điều 
khiển. Họ đã sử dụng FPGA để thực nghiệm, 
bộ điều khiển thích nghi bền vững để giải 
quyết động lực học cho OMR [5]. Sai số khi di 
chuyển của OMR phụ thuộc vào nhiều yếu tố 
như: rung động cơ, nguồn, trọng lượng OMR, 
bánh xe, và ngay cả mặt phẳng di chuyển; đó 
là điều không thể bỏ qua. Meng và Chiu sử 
dụng thuật toán mờ cho encoder để giải quyết 
vấn đề dao động khi đi theo quỹ đạo thẳng [3]. 
Bộ điều khiển Proportional-Integral-Derivative 
(PID) cho động cơ thường được sử dụng 
trong công nghiệp bởi vì chúng đơn giản, dễ 
sử dụng và đủ chức năng [1]. Tốc độ điều 
chỉnh bằng cách thay đổi độ rộng xung (PWM) 
dựa vào xung được phản hồi về khi động cơ 
quay.Trong bài báo này, vị trí của OMR sẽ 
được điều khiển bởi thuật toán PID dựa vào 
Tạp chí Khoa học - Công nghệ Thủy sản Số 3/2017
TRƯỜNG ĐẠI HỌC NHA TRANG • 37
phản hồi từ động cơ. Bên cạnh đó, tốc độ ba 
bánh của OMR cũng được điều khiển chính 
xác dựa vào thuật toán PID.
II. ĐỐI TƯỢNG VÀ PHƯƠNG PHÁP NGHIÊN CỨU
1. Đối tượng nghiên cứu
Robot ba bánh
2. Phương pháp nghiên cứu
Phương pháp nghiên cứu được sử dụng 
dựa trên tính toán lý thuyết kết hợp với thực 
nghiệm, trong đó chủ yếu vào phép “Trial and 
error” có định hướng. Trong nghiên cứu này 
cần chạy thử và kiểm tra OMR để tìm ra được 
bộ tham số của thuật toán PID tối ưu. Bước 
một tìm bộ tham số PID cho điều khiển tốc độ, 
bước hai là tìm bộ tham số cho điều khiển vị trí 
và cuối cùng kết hợp để được bộ tham số tối 
ưu cho cả OMR.
Qui trình nghiên cứu, chế tạo OMR theo 
các bước sau:
- Xác định yêu cầu kỹ thuật OMR.
- Tính toán các giá trị đầu vào ra, từ đó thiết 
kế sơ bộ OMR.
- Xây dựng phương án chế tạo OMR.
- Thử nghiệm, kiểm tra và hoàn chỉnh.
III. KẾT QUẢ NGHIÊN CỨU VÀ THẢO LUẬN
1. Thiết kế phần cứng
Hệ thống được xây dựng dựa vào bộ vi 
điều khiển Atmega không những cung cấp hiệu 
năng cao và giá thành thấp mà còn có các tính 
năng tích hợp như ADC, PWM, UART, EI, để 
giảm tối đa các thiết bị phụ trợ đi kèm. Thêm 
vào đó, thuật toán trên Atmega có thể dễ dàng 
cài đặt hơn nhờ vào các ngôn ngữ lập trình C 
hoặc C++ và có thể nhúng assembly.
OMR được mô tả trên hình 1. Tổng khối 
lượng khoảng 5kg. Khung của OMR là được 
làm từ mica và thanh tấm nối, đặt ba động cơ 
tạo thành góc 1200.
Hình 1. Mô hình thực nghiệm
Sơ đồ hệ thống được chỉ ra trong Hình 1. 
Các thiết bị ngoại vi bao gồm: ba bộ điều khiển 
động cơ (LMD18200), động cơ DC (GA37 V1) 
và enconder (11PPR). Giao tiếp giữa bộ điều 
khiển với máy tính thông qua cổng UART 
wireless để việc điều khiển và lấy dữ liệu được 
dễ dàng. Thời gian cho một chu kỳ thuật toán 
đúng 10ms, sử dụng timer để định thời gian 
cho hệ thống. Thêm vào đó, bộ điều khiển 
PWM đạt hiệu quả cao mà đơn giản trong điều 
khiển tốc độ động cơ. Bằng việc sử dụng bộ 
cầu H, bộ điều khiển có thể điều khiển vị trí, 
tốc độ dựa vào phản hồi tốc độ từ encoder gắn 
trên ba động cơ.
38 • TRƯỜNG ĐẠI HỌC NHA TRANG
Tạp chí Khoa học - Công nghệ Thủy sản Số 3/2017
Cầu LMD18200 kết nối vào bộ điều khiển 
qua hai chân Dir (chiều quay) và PWM (tốc 
độ). Bộ điều chế tín hiệu PWM được cài 
đặt trong vi điều khiển Atmega8. Bằng cách 
sử dụng bộ tích hợp sẵn PWM, bộ PWM 
tự động xuất ra PWM mà không tốn thời gian 
xử lý. Atmega8 có thể tạo ra 3 tín hiệu PWM. 
Trong OMR này, mỗi bộ điều khiển động 
cơ bao gồm: Atmega8, cầu H (LMD18200) 
và encoder.
Hình 2. Kiến trúc hệ thống điều khiển
Để tối ưu tốc độ đường truyền giữa OMR và 
máy tính, hai loại khung truyền được sử dụng: 
khung truyền từ máy tính (Bảng 1) và khung 
truyền từ OMR (Bảng 2). Máy tính truyền xuống 
OMR là 4 byte. 15 byte là khung truyền từ OMR 
lên máy tính. Byte lệnh đóng vai trò như là câu 
lệnh, đôi khi là tên của loại dữ liệu và byte dữ 
liệu là thông tin cho câu lệnh đó.
Bảng 1. Khung dữ liệu từ máy tính xuống OMR
Lệnh 
(CMD)
Dữ liệu
(Data (0÷1))
Kiểm lỗi
(Checksum)
No.B 1 2 1 byte
Giá trị 240÷255 
0÷52899
byte0 = value/230;
byte1 = value%230;
0÷15
cs = cmd ^ data0 ^ data1 ^ cs;
cs = (cs & 0x0F) ^ (cs>>4);
Bảng 2. Khung dữ liệu từ OMR lên máy tính
Lệnh (CMD)
Dữ liệu
(Data (0÷1))
Kiểm lỗi
(Checksum)
Kết thúc
No.B 1 6 x 2 1 1
Giá trị 240÷255
0÷52899
byte0(Di)=value/230;
byte1(Di)=value%230;
0÷15
cs = cmd^data0^data1^cs;
cs = (cs&0x0F)^(cs>>4);
255
Giao thức kết nối theo kiến trúc chủ/tớ, chủ 
sẽ yêu cầu dữ liệu từ tớ thông qua câu lệnh. 
Máy tính là chủ, OMR là tớ. Máy tính đôi khi 
cũng đưa lệnh thực hiện trực tiếp cho OMR. 
Máy tính khởi tạo chu trình hoạt động thông qua 
loại câu lệnh gửi xuống OMR. Khi nhận được 
câu lệnh, OMR sẽ phân tích xử lý để đưa ra 
hành động đúng với kịch bản.
Có ba encoder tương đối được lắp trên 
OMR ở ba động cơ và ba động cơ lắp vào khung 
OMR tạo với nhau một góc 1200. Phương pháp 
đơn giản đo tốc độ động cơ là đo tần số của 
Tạp chí Khoa học - Công nghệ Thủy sản Số 3/2017
TRƯỜNG ĐẠI HỌC NHA TRANG • 39
encoder gắn trên đuôi động cơ. Tuy nhiên sai 
số lượng tử của phép đo rất cao khi tốc độ thấp 
bởi phụ thuộc vào số xung encoder trả về trong 
một vòng quay và thời gian lấy mẫu. Thời gian 
lấy mẫu tăng thì tốc độ đáp ứng hệ thống càng 
thấp. Một phương pháp khác là đo độ rộng 
xung trả về từ encoder, nhưng khi tốc độ động 
cơ càng cao, sai số lượng tử khi đo càng lớn.
Bằng việc kết hợp hai phương pháp tần 
số và độ rộng xung, lỗi được giảm rất lớn [7], 
[9]. Ý tưởng của phương pháp này được trình 
bày trên hình 4. Tốc độ động cơ được tính dựa 
vào khoảng thời gian (CountT) và số xung trong 
một đơn vị thời gian (∆N).
(1)
Hình 3. Đo tốc độ động cơ
Lỗi của phương pháp này được tính theo 
công thức sau:
(2)
Hệ số lỗi của phép đo rất nhỏ so với hai 
phương pháp đo tần số và độ rộng xung cho 
toàn giải vận tốc. Nói một cách khác lỗi của 
phương pháp kết hợp này không phụ thuộc 
vào vận tốc, mà chỉ phụ thuộc vào độ chính 
xác của encoder và bộ tính toán vận tốc 
từ encoder.
2. Điều khiển tốc độ động cơ
Bộ điều khiển PID (Proportional-Integral-
Derivative) được sử dụng nhiều trong các hệ 
thống công nghiệp bởi tính đơn giản, sử dụng 
ít tham số cài đặt. Bộ điều khiển PID có khả 
năng loại bỏ các trạng thái ổn định lỗi dựa vào 
tích phân và dự đoán giá trị đầu ra dựa vào 
sự thay đổi của đầu vào khi hệ thống có sự 
thay đổi đột ngột. Hầu hết thuật bộ điều khiển 
PID hiện nay đều điều chỉnh các tham số theo 
phương pháp Ziegler-Nichols, mà dựa các 
thông số thu được từ đáp ứng của hệ thống. 
Phương trình tổng quát của thuật toán [8] là:
 (3)
Với , và là các tham số tỉ lệ, tích 
phân và vi phân tương ứng.
Trong nghiên cứu này, thuật toán PID đơn 
giản [2] mà dựa trên đáo ứng hệ thống được 
sử dụng để xác định hệ số của bộ điều khiển. 
Phương pháp này cung cấp cách thức điều 
chỉnh dựa trên tỉ lệ để giảm tối thiểu lỗi và vọt 
lố. Giá trị đầu ra của động cơ được định nghĩa 
như sau:
 (4)
3. Điều khiển vị trí OMR
3.1. Phương trình động học
Phương trình động học có thể được viết 
như sau (Huang and Hung June 2013)
(5)
Với:
θ
θ θ
θ
π
θ
π
θ
π
θ
π
(6)
 : Vận tốc góc bánh thứ i
 : Góc quay của OMR
 : Bán kính bánh xe
 : Vị trí hiện tại của OMR
40 • TRƯỜNG ĐẠI HỌC NHA TRANG
Tạp chí Khoa học - Công nghệ Thủy sản Số 3/2017
 : Bán kính thân OMR
: 
Ma trận trên không suy biến với mọi θ ε R. 
Vì thế ma trận M (θ) có thể nghịch đảo
θ
θ
θ
π
θ
π
θ
π
θ
π
 (7)
Hình 4. Hệ tọa độ
3.2. Giải thuật điều khiển cho OMR
Mục đích của bộ điều khiển là điều khiển 
điện áp động cơ thông qua PWM sao cho lỗi có 
thể về không. Để đạt được cái đích đó bài báo 
sẽ đưa ra giải thuật như sau.
Vector lỗi được định nghĩa như sau:
 (8)
Và tổng vetor lỗi là:
 (9)
Với là hằng số
Bộ điều PID (Proportional Integral Derivative) 
được trình bày trên Hình 5.
trong hệ tọa độ của OMR ta sẽ tính toán được 
giá trị đầu ra tương ứng. 
 (10)
Để có thể điều khiển được OMR, giải thuật 
được viết lại như sau:
 (11)
Với u là vecter điện áp của các động cơ, 
là hăng số.
Thuật toán cập nhật cho được đưa ra 
như sau
 (12)
Với là hằng số.
3.3. Kết quả thực nghiệm
Thực nghiệm được đưa ra trong phần này 
nhằm kiểm tra lại phần thiết kế. Một số thông 
số của hệ thống trong thực nghiệm này: 
Tham số của giải thuật điều khiển:
Sử dụng phương pháp Ziegler-Nichols để 
xác định hệ số và ta được:
Quỹ đạo mong muốn là hình tròn được 
biểu diễn trên Hình 6 theo công thức:
 (13)
Với giá trị khởi tạo ban đầu: 
 (14)
Lỗi vị trí rất nhanh trở về không sau 1,5 
giây, có thể thấy rõ hơn trên Hình 6. Vector vị 
trí bám theo quỹ đạo tham chiếu với 
độ chính xác cao trong Hình 6. Nói cách khác, 
giá trị điều khiển PID lớn nhất đạt giá trị cực 
trị là ±12V. Kết quả thực nghiệm một lần nữa 
chứng minh tính đúng đắn của thuật toán để 
điều khiển OMR đi theo một quỹ đạo và giá trị 
điện áp điều khiển phù hợp.
Hình 5. Hệ thống điều khiển PID
Bộ điều khiển PID được tính toán cho mỗi 
giá trị của bộ điều khiển. Ứng với một giá trị 
Tạp chí Khoa học - Công nghệ Thủy sản Số 3/2017
TRƯỜNG ĐẠI HỌC NHA TRANG • 41
OMR di chuyển chính xác theo quỹ đạo 
đường tròn khi mà vận tốc và gia tốc của ba 
bánh luôn thay đổi. Bộ điều khiển PID đã điều 
khiển điện áp ba động cơ dựa vào phản hồi 
của encoder giúp động cơ có thể đạt được 
vận tốc như thiết lập với thời gian ngắn và độ 
vọt lố ít. Bên cạnh đó bộ điều khiển PID cũng 
giúp Robot có thể di chuyển đúng như quỹ đạo 
mong muốn với sai số nhỏ và họat động không 
bị rung lắc. Như vậy, tính khả thi và hiệu quả 
của thuật toán đều được kiểm chứng qua thực 
nghiệm trên thiết bị thực.
IV. KẾT LUẬN VÀ KIẾN NGHỊ
Trong nghiên cứu này, OMR đã được sử 
dụng để di chuyển theo quỹ đạo mà hướng 
di chuyển luôn thay đổi. OMR đã khẳng định 
khả năng linh hoạt di chuyển với quỹ đạo 
đường tròn khi mà luân thay đổi vận tốc và 
gia tốc của ba bánh. Giải thuật đã được kiểm 
chứng qua các chế độ di chuyển khác nhau 
và có khả năng điều khiển tốc độ các động cơ 
theo tốc độ thiết lập dựa vào bộ encoder kết 
hợp với thuật toán PID. Bên cạnh đó, OMR 
có thể tự động theo quỹ đạo di chuyển thông 
qua thuật toán được cài đặt. Thực nghiệm trên 
OMR đã kiểm chứng tính đúng đắn và hiệu 
quả của thiết kế và thuật toán. OMR có khả 
năng di chuyển linh động, đi đúng quỹ đạo. Để 
tăng tính khả thi vào thực tế của OMR, cánh 
tay Robot đặt trên OMR là hướng nghiên cứu 
tiếp theo của tác giả.
H ình 6. Lỗi theo thời gian (giây) và quỹ đạo di chuyển của OMR(m)
TÀI LIỆU THAM KHẢO
1. Ang, K.H., G. Chong, and Y. Li, PID control system analysis, design and technology. IEEE Transactions on Control 
Systems Technology, July 2005. 13(4): p. 559 - 576.
2. Basilio, J.C. and S.R. Matos, Design of PI and PID controllers with transient performance specification. IEEE 
Transactions on Education, Nov 2002. 45(4): p. 364 - 370.
3. Chiu, C.-S. and K.-Y. Lian, Hybrid Fuzzy Model-Based Control of Nonholonomic Systems: A Unified Viewpoint. 
IEEE TRANSACTIONS ON FUZZY SYSTEMS, Feb 2008. 16: p. 85 - 96.
4. Hung, N., et al., Tracking Controller Design of Omnidirectional Mobile Manipulator System. In Proceedings of the 
2009 ICROS-SICE International Joint Conference, 2009: p. 539 - 544.
5. Huang, H.-C. and C.-C. Tsai, FPGA Implementation of an Embedded Robust Adaptive Controller for Autonomous 
Omnidirectional Mobile Platform. IEEE Transactions on Industrial Electronics, May 2009. 56(5): p. 1604 - 1616.
6. Huang, J.-T. and T.V. Hung, Singularity-Free Adaptive Control for Uncertain Omnidirectional Mobile Robots. Control 
Conference (ASCC), 2013 9th Asian, June 2013: p. 1-5.
7. Kavanagh, R.C., Improved Digital Tachometer With Reduced Sensitivity to Sensor Nonideality. IEEE Transactions 
on Industrial Electronics, August 2000. 47.
8. Murphree, J., B. Brzezinski, and J.K. Parker, Using a fixed-point digital signal processor as a PID controller. 
Proceedings of the 2002 American Society for Engineering Education Annual Conference & Exposition 2002: p. 1–8.
9. Petrella, R. and M. Tursini, An Embedded System for Position and Speed Measurement Adopting Incremental 
Encoders. IEEE Transactions on Industry Applications, 2008. 44: p. 1436-1444.

File đính kèm:

  • pdfdieu_khien_robot_ba_banh_su_dung_bo_dieu_pid.pdf