Đ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.
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
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:
- dieu_khien_robot_ba_banh_su_dung_bo_dieu_pid.pdf