So sánh bộ điều khiển PID với bộ điều khiển LQG cho robot cân bằng trên quả cầu
Với diện tích tiếp xúc giữa robot và mặt đất nhỏ, khả năng
chuyển động đa hướng và đổi hướng nhanh mà không cần xoay
thân, robot cân bằng trên quả cầu phù hợp với các không gian làm
việc chật hẹp. Robot này vốn dĩ không ổn định nên phải luôn được
giữ cân bằng một cách chủ động. Trong bài báo này, hai bộ điều
khiển (bộ điều khiển PID và bộ điều khiển LQG) được so sánh, đánh
giá để lựa chọn áp dụng cho nguyên mẫu robot cân bằng trên quả
cầu được thiết kế và chế tạo tại Khoa Cơ khí, Trường Đại học Bách
khoa, Đại học Đà Nẵng. Chất lượng của các bộ điều khiển được
đánh giá thông qua mô phỏng với các điều kiện hoạt động khác
nhau. Các kết quả cho thấy bộ điều khiển LQG có chất lượng tốt hơn
(thời gian đáp ứng, thời gian xác lập nhanh hơn) bộ điều khiển PID.
Tóm tắt nội dung tài liệu: So sánh bộ điều khiển PID với bộ điều khiển LQG cho robot cân bằng trên quả cầu
10 Cao Thanh Bộ, Phạm Trường Hưng, Lê Hoài Nam, Nguyễn Danh Ngọc SO SÁNH BỘ ĐIỀU KHIỂN PID VỚI BỘ ĐIỀU KHIỂN LQG CHO ROBOT CÂN BẰNG TRÊN QUẢ CẦU COMPARISON OF A PID CONTROLLER VERSUS LQG CONTROLLER FOR A BALL BALANCING ROBOT Cao Thanh Bộ1, Phạm Trường Hưng1, Lê Hoài Nam2, Nguyễn Danh Ngọc2 1Sinh viên ngành Kỹ thuật Cơ điện tử, Trường Đại học Bách khoa – Đại học Đà Nẵng; 2Trường Đại học Bách khoa – Đại học Đà Nẵng; lehoainam@dut.udn.vn; ndngoc@dut.udn.vn Tóm tắt - Với diện tích tiếp xúc giữa robot và mặt đất nhỏ, khả năng chuyển động đa hướng và đổi hướng nhanh mà không cần xoay thân, robot cân bằng trên quả cầu phù hợp với các không gian làm việc chật hẹp. Robot này vốn dĩ không ổn định nên phải luôn được giữ cân bằng một cách chủ động. Trong bài báo này, hai bộ điều khiển (bộ điều khiển PID và bộ điều khiển LQG) được so sánh, đánh giá để lựa chọn áp dụng cho nguyên mẫu robot cân bằng trên quả cầu được thiết kế và chế tạo tại Khoa Cơ khí, Trường Đại học Bách khoa, Đại học Đà Nẵng. Chất lượng của các bộ điều khiển được đánh giá thông qua mô phỏng với các điều kiện hoạt động khác nhau. Các kết quả cho thấy bộ điều khiển LQG có chất lượng tốt hơn (thời gian đáp ứng, thời gian xác lập nhanh hơn) bộ điều khiển PID. Abstract - With small footprints, omnidirectional motion, and ability to swiftly reverse without rotating the body, ball balancing robots are suitable for operation in narrow areas. This robot is inherently unstable , so it must always be actively balanced. In this paper, two controllers (a PID controller and a LQG controller) are compared to apply to the prototype designed and built at the Faculty of Mechanical Engineering, University of Science and Technology, the University of Danang. The performance of the controllers is assessed through simulation under different operating conditions. The results show that LQG controllers are of better performance (small rise time, settling time) than PID controllers. Từ khóa - robot cân bằng trên quả cầu; thiết kế điều khiển; PID; LQG; bộ lọc Kalman. Key words - ball balancing robot; control design; PID; LQG; Kalman filter. 1. Đặt vấn đề Robot cân bằng trên quả cầu (Ball Balancing Robot – BBR), còn gọi là Ballbot theo tên nguyên mẫu đầu tiên được nghiên cứu chế tạo [1]. Đây là loại robot di động gồm một quả cầu (bóng) và một robot cân bằng trên đầu quả cầu đó bằng cách lái các bánh của nó theo hướng thích hợp để tránh ngã đổ. Trái ngược với các robot di động truyền thống vốn dựa vào trọng tâm thấp và chiều dài cơ sở (wheel-base) lớn để giữ robot đứng thẳng, robot cân bằng trên quả cầu vốn dĩ không ổn định nên phải luôn được giữ cân bằng một cách chủ động [2] (tức phải luôn điều khiển các bánh). Ngoài ra, các robot di động bằng bánh truyền thống thường có hai bánh lái độc lập (ví dụ Segway) có thể xoay quanh điểm bất kỳ, nhưng không thể đổi hướng di chuyển ngay lập tức. Hạn chế này được khắc phục bởi robot cân bằng trên quả cầu, chúng có thể thực hiện chuyển động đa hướng nhanh mà không cần thay đổi hướng của các bánh xe (không cần xoay thân) [3]. Ưu điểm này giúp robot tránh va chạm khi làm việc trong các không gian chật hẹp. Nhiều nguyên mẫu BBR đã được thiết kế và chế tạo. Nguyên mẫu đầu tiên được phát triển vào năm 2006 tại Đại học (ĐH) Carnegie Mellon (CMU) có kích thước tương đương người thật với mục đích tương tác với con người. Robot này có một cơ chế lái khá phức tạp gồm 4 con lăn (roller) chủ động và một hệ thống lái nhằm thực hiện chuyển động xoay theo trục dọc. Năm 2008, ĐH Tohoku Gakuin (TGU) đã phát triển một nguyên mẫu BBR khác nhỏ hơn so với nguyên mẫu của CMU, có thể thực hiện các chuyển động tương tự (bao gồm chuyển động xoay quanh trục dọc) chỉ với 3 động cơ nối với 3 bánh xe đa hướng (omni-wheel) để lái quả bóng [4]. ĐH Adelaide xây dựng một BBR có hai bánh xe để lái bóng sử dụng bộ kit LEGO Mindstorms NXT và các khối LEGO vào năm 2009 [2]. ETH Zurich vào năm 2010 cũng phát triển nguyên mẫu BBR tương tự của TGU. Nguyên mẫu Rezero của ETH Zurich có độ bền vững động (dynamic robustness) cao, có thể đạt được tốc độ đến 2 m/s và góc nghiêng 20 [5]. Gần đây, có thêm nhiều nguyên mẫu BBR được thiết kế và chế tạo [6, 7, 8, 3]. Để BBR có thể thực hiện các chuyển động phức tạp ở tốc độ cao, nhiều chiến lược điều khiển khác nhau được đề xuất: điều khiển PD [4], PID tự chỉnh mờ [9], PID tầng [5], PID tầng tích hợp cơ cấu bù feedforward [10], cũng như điều khiển mờ [11], điều khiển toàn phương tuyến tính (Linear Quadratic Regulator - LQR) kết hợp với một khâu tích phân [2] được đề xuất để điều khiển BBR. Tuy nhiên, theo hiểu biết của nhóm tác giả thì chưa nhiều nghiên cứu đề cập đến việc ứng dụng bộ điều khiển Gaussian toàn phương tuyến tính (Linear Quadratic Gaussian - LQG) vào điều khiển BBR. Bộ điều khiển LQG là một trường hợp cụ thể của LQR, trong đó bộ lọc Kalman được sử dụng để ước lượng trạng thái của hệ thống. Trong bài báo, bộ điều khiển LQG được thiết kế và đánh giá hiệu năng, thông qua mô phỏng, với một bộ điều khiển cổ điển là PID. 2. Mô hình hoá hệ thống 2.1. Nguyên mẫu robot Lấy cảm hứng từ Rezero của ETH Zurich, nguyên mẫu BBR được thiết kế và chế tạo tại Khoa Cơ khí, Trường Đại học Bách khoa – Đại học Đà Nẵng gồm ba bánh xe đa hướng được truyền động bởi ba động cơ DC được bố trí lệch nhau 120. Điểm đặc biệt là phần thân nguyên mẫu có hình lăng trụ lục giác đều, phù hợp cho việc chế tạo lớp vỏ bảo vệ. Như thể hiện trên Hình 1, ISSN 1859-1531 - TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ ĐẠI HỌC ĐÀ NẴNG, SỐ 7(128).2018 11 nguyên mẫu BBR bao gồm 3 phần chính: phần thân, hệ thống động lực và quả cầu. (a) (b) Hình 1. Nguyên mẫu robot: (a) Mô hình 3D và (b) Mô hình thật Thân robot bao gồm 4 tấm ngang hình lục giác và 6 tấm phẳng thẳng đứng được làm bằng vật liệu ABS và plexiglass để giảm khối lượng của BBR. Các tấm này được lắp ráp với nhau bởi các chi tiết nối được chế tạo bằng công nghệ in 3D. Hệ thống động lực được gắn chặt vào tấm đáy. Tấm thứ hai đặt nguồn cung cấp cho robot. Khối đo lường quán tính (IMU - Inertia Measurement Unit) và mạch điều khiển trung tâm được đặt trên tấm thứ ba. Hình 2 minh họa cấu trúc hệ thống điều khiển của robot. Dữ liệu trạng thái của robot được thu thập bởi khối IMU bao gồm một cảm biến MPU6050 xác định vận tốc góc bằng gia tốc kế và con quay hồi chuyển (gyroscope) và một cảm biến HMC5883L đo lường góc thông qua hướng và độ lớn của từ trường Trái đất. Dữ liệu từ hai cảm biến được tổng hợp bởi mạch Arduino Nano trước khi gửi đến khối điều khiển trung tâm. Hình 2. Cấu trúc hệ thống điều khiển Khối điều khiển trung tâm là một mạch Arduino Mega2560, nhận dữ liệu trạng thái từ IMU và tính toán, truyền đến khối điều khiển động cơ, các giá trị đặt cho mỗi động cơ. Mạch này cũng đảm bảo các kết nối không dây để điều khiển và thu thập dữ liệu BBR từ xa. Hệ thống động lực robot bao gồm ba động cơ DC dẫn động ba bánh xe đa hướng và các mạch driver tương ứng. Vị trí trục và dòng điện của các động cơ được đo bằng encoder và cảm biến dòng. Các thông tin này được khối điều khiển động cơ sử dụng để điều chỉnh tốc độ và mô-men xoắn của mỗi động cơ theo phương pháp điều chế độ rộng xung (PWM - Pulse Width Modulation). Các thông số cơ bản của nguyên mẫu robot được tóm tắt bởi Bảng 1. Bảng 1. Các thông số cơ bản của nguyên mẫu Thông số Ký hiệu Thứ nguyên Giá trị Chiều cao phần thân h m 0,67 Chiều dài cạnh lục giác đều a m 0,115 Khối lượng phần thân mB kg 8,6 Khối lượng động cơ mM kg 1,3 Khối lượng bánh xe đa hướng mOW kg 0,12 Khối lượng bóng mS kg 0,8 Bán kính bóng rS m 0,125 Bán kính bánh xe đa hướng rOW m 0,05 Tỉ số truyền hộp số k - 99,5 2.2. Mô hình toán học Mục này giới thiệu mô hình tuyến tính của BBR sẽ được sử dụng để thiết kế các bộ điều khiển ở mục tiếp theo. Trong bài báo này, phương pháp Lagrangian được sử dụng để xác định các phương trình chuyển động. Bằng cách giải phương trình Euler-Lagrange: d dt ( 𝜕𝐿 𝜕𝑞�̇� ) − 𝜕𝐿 𝜕𝑞�̇� = 𝜏𝑒𝑥𝑡,𝑖 (1) Trong đó: • i = 1...5 ứng với các thành phần của véc-tơ toạ độ tối thiểu q được xác định bởi: 𝑞 = [𝑥𝑆 𝑦𝑆 𝜓𝑥 𝜓𝑦 𝜓𝑧]𝑇 với 𝑥𝑆 và 𝑦𝑆 tương ứng thể hiện dịch chuyển của quả bóng dọc theo trục x và trục y, và 𝜓𝑥, 𝜓𝑦 và 𝜓𝑧 xác định hướng của thân robot và các bánh xe đa hướng. • Lagrangian 𝐿(𝑞, �̇�) = 𝑇 − 𝑉 thể hiện động năng T và thế năng V của tất cả các khối cứng của robot (bóng, thân robot và các bánh đa hướng). • 𝜏𝑒𝑥𝑡 thể hiển các mô-men xoắn bên ngoài. BBR được kích hoạt bởi ba bánh xe đa hướng và động cơ. Do đó, mô- men xoắn bên ngoài là mô-men xoắn của các bánh xe đa hướng, được truyền bởi mô-men xoắn của các động cơ. Ta nhận được các phương trình mô tả chuyển động của BBR có dạng như sau: 𝑀(𝑞)�̈� + 𝐶(𝑞, �̇�)�̇� + 𝐺(𝑞) = 𝜏𝑒𝑥𝑡 (2) Trong đó: thành phần 𝑀(𝑞) đại diện cho các lực quán tính do gia tốc, 𝐶(𝑞, �̇�) đại diện cho lực Coriolis và lực ly tâm, 𝐺(𝑞) đại diện cho lực hấp dẫn và vế bên phải 𝜏𝑒𝑥𝑡 đại diện cho các mô-men xoắn bên ngoài [10]. Trình tự tính toán chi tiết có thể tham khảo trong [2] và [6]. Để cân bằng BBR, cần xem xét đến đặc tính động học của robot xung quanh vị trí thẳng đứng của nó (điểm cân bằng không ổn định). Định nghĩa véc-tơ trạng thái: 𝑥 = [𝑞 �̇�]𝑇 = [𝑥𝑆 𝑦𝑆 𝜓𝑥 𝜓𝑦 𝜓𝑧 𝑥�̇� 𝑦�̇� 𝜓�̇� 𝜓�̇� 𝜓�̇�] 𝑇 (3) và các đầu vào u: 12 Cao Thanh Bộ, Phạm Trường Hưng, Lê Hoài Nam, Nguyễn Danh Ngọc 𝑢 = [ 𝑢1 𝑢2 𝑢3 ] = [ 𝜏1 𝜏2 𝜏3 ] (4) Trong đó, τi là mô-men xoắn của bánh xe đa hướng i. Tại điểm cân bằng, tất cả các biến trạng thái và các đầu vào bằng 0. Mô hình tuyến tính hóa có thể được biểu diễn bằng một dạng không gian trạng thái tuyến tính: �̇� = 𝐴𝑥 + 𝐵𝑢 𝑦 = 𝐶𝑥 (5) Trong đó, các ma trận A, B được định nghĩa như sau: 𝐴 = [ 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 𝜕�̈�𝑆 𝜕𝑥𝑆 | (𝑥,𝑢)=(�̅�,�̅�) 𝜕�̈�𝑆 𝜕𝑦𝑆 | (𝑥,𝑢)=(�̅�,�̅�) . . . . . . . 𝜕�̈�𝑆 𝜕𝜓�̇� | (𝑥,𝑢)=(�̅�,�̅�) 𝜕�̈�𝑆 𝜕𝑥𝑆 | (𝑥,𝑢)=(�̅�,�̅�) 𝜕�̈�𝑆 𝜕𝑦𝑆 | (𝑥,𝑢)=(�̅�,�̅�) . . . . . . . 𝜕�̈�𝑆 𝜕𝜓�̇� | (𝑥,𝑢)=(�̅�,�̅�) 𝜕𝜓�̈� 𝜕𝑥𝑆 | (𝑥,𝑢)=(�̅�,�̅�) 𝜕𝜓�̈� 𝜕𝑦𝑆 | (𝑥,𝑢)=(�̅�,�̅�) . . . . . . . 𝜕𝜓�̈� 𝜕𝜓�̇� | (𝑥,𝑢)=(�̅�,�̅�) 𝜕𝜓�̈� 𝜕𝑥𝑆 | (𝑥,𝑢)=(�̅�,�̅�) 𝜕𝜓�̈� 𝜕𝑦𝑆 | (𝑥,𝑢)=(�̅�,�̅�) . . . . . . . 𝜕𝜓�̈� 𝜕𝜓�̇� | (𝑥,𝑢)=(�̅�,�̅�) 𝜕𝜓�̈� 𝜕𝑥𝑆 | (𝑥,𝑢)=(�̅�,�̅�) 𝜕𝜓�̈� 𝜕𝑦𝑆 | (𝑥,𝑢)=(�̅�,�̅�) . . . . . . . 𝜕𝜓�̈� 𝜕𝜓�̇� | (𝑥,𝑢)=(�̅�,�̅�)] 𝐵 = [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 𝜕�̈�𝑆 𝜕𝑢1 | (𝑥,𝑢)=(�̅�,𝑢) 𝜕�̈�𝑆 𝜕𝑢2 | (𝑥,𝑢)=(�̅�,𝑢) 𝜕�̈�𝑆 𝜕𝑢3 | (𝑥,𝑢)=(�̅�,𝑢) 𝜕�̈�𝑆 𝜕𝑢1 | (𝑥,𝑢)=(�̅�,𝑢) 𝜕�̈�𝑆 𝜕𝑢2 | (𝑥,𝑢)=(�̅�,𝑢) 𝜕�̈�𝑆 𝜕𝑢3 | (𝑥,𝑢)=(�̅�,𝑢) 𝜕𝜓�̈� 𝜕𝑢1 | (𝑥,𝑢)=(�̅�,𝑢) 𝜕𝜓�̈� 𝜕𝑢2 | (𝑥,𝑢)=(�̅�,𝑢) 𝜕𝜓�̈� 𝜕𝑢3 | (𝑥,𝑢)=(�̅�,𝑢) 𝜕𝜓�̈� 𝜕𝑢1 | (𝑥,𝑢)=(�̅�,𝑢) 𝜕𝜓�̈� 𝜕𝑢2 | (𝑥,𝑢)=(�̅�,𝑢) 𝜕𝜓�̈� 𝜕𝑢3 | (𝑥,𝑢)=(�̅�,𝑢) 𝜕𝜓𝑧̈ 𝜕𝑢1 | (𝑥,𝑢)=(�̅�,𝑢) 𝜕𝜓𝑧̈ 𝜕𝑢2 | (𝑥,𝑢)=(�̅�,𝑢) 𝜕𝜓𝑧̈ 𝜕𝑢3 | (𝑥,𝑢)=(�̅�,𝑢)] (6) Các thành phần 𝜕�̈� 𝜕𝑥𝑖 và 𝜕�̈� 𝜕𝑢𝑖 có thể được xác định bằng cách giải các phương trình nhận được bằng đạo hàm các phương trình chuyển động (2) theo các biến trạng thái và biến đầu vào: 𝑀(�̅�) 𝜕�̈� 𝜕𝑥𝑖 + 𝜕𝐺(𝑞) 𝜕𝑥𝑖 | (𝑥,𝑢)=(�̅�,𝑢) = 𝜕𝜏𝑒𝑥𝑡 𝜕𝑥𝑖 | (𝑥,𝑢)=(�̅�,𝑢) 𝑀(�̅�) 𝜕�̈� 𝜕𝑢𝑖 = 𝜕𝜏𝑒𝑥𝑡 𝜕𝑢𝑖 | (𝑥,𝑢)=(�̅�,𝑢) (7) với �̅� = 0 và (�̅�, �̅�) = (0,0) (tại vị trí cân bằng). Ma trận quan sát C thể hiện mối quan hệ giữa các giá trị đo lường và các biến trạng thái của hệ thống. Khối IMU đo trực tiếp các biến trạng thái 𝜓𝑥 , 𝜓𝑦 , 𝜓𝑧. Các biến trạng thái 𝑥𝑆, 𝑦𝑆 có thể được xác định bằng các giá trị góc của bánh xe đa hướng (đo bằng encoder). Sau khi hoàn thành các tính toán động lực học và thay thế các giá trị thông số mô hình của nguyên mẫu BBR (Bảng 1), ta nhận được các ma trận sau: 𝐴 = [ 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 −2.51 0 0 0 0 0 0 0 0 2.51 0 0 0 0 0 0 0 0 0 10.3 0 0 0 0 0 0 0 0 0 0 10.3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0] 𝐵 = [ 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 −1,1741 1,1741 1,3556 −0,6778 −0,6778 2,1616 −1,0808 −1,0808 0 1,872 −1,872 −6,4787 −6,4787 −6,4787] 𝐶 = [ 1 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0] (8) Trong thực tế, nhiễu xuất hiện trong các cảm biến trong quá trình đo. Do đó, để tính đến ảnh hưởng của nhiễu đo lường và nhiễu quá trình, một mô hình không gian trạng thái với nhiễu loạn được sử dụng: �̇� = 𝐴𝑥 + 𝐵𝑢 + 𝑤 𝑦 = 𝐶𝑥 + 𝑣 (9) Trong đó, w và v lần lượt là nhiễu quá trình và nhiễu đo lường. Cả hai được giả định là nhiễu trắng và không tương quan với nhau: 𝑤~𝒩(0, 𝑄), 𝑣~𝒩(0, 𝑅) (10) Trong đó, Q và R là ma trận hiệp phương sai của nhiễu quá trình và nhiễu đo lường. 3. Thiết kế bộ điều khiển Trong mục này, hai bộ điều khiển PID và LQG được đề xuất để cân bằng và điều khiển vị trí BBR. 3.1. Bộ điều khiển PID Hình 3. Hệ thống điều khiển BBR với bộ điều khiển PID Bộ điều khiển PID (Proportional – Integral – Derivative) là bộ điều khiển phản hồi dựa trên sai lệch giữa điểm đặt mong muốn và giá trị đo lường của quá trình. Sai lệch này được sử dụng để điều chỉnh đầu vào quá trình để giá trị đầu ra gần với giá trị đặt. Hàm truyền của bộ điều khiển PID như sau: 𝐻𝑃𝐼𝐷(𝑠) = 𝐾𝑝 [1 + 1 𝑠𝑇𝑖 + 𝑇𝑑𝑠] (11) ISSN 1859-1531 - TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ ĐẠI HỌC ĐÀ NẴNG, SỐ 7(128).2018 13 với 𝐾𝑝 là hệ số tỉ lệ, 𝑇𝑖 là hằng số thời gian tích phân và 𝑇𝑑 là hằng số thời gian vi phân. Các thông số này phải được lựa chọn thích hợp để đảm bảo sự ổn định và hiệu suất của hệ thống [12]. Hệ thống điều khiển PID cho BBR bao gồm 5 bộ điều khiển tương ứng với 5 thành phần của véc-tơ tọa độ tối thiểu (Hình 3). Đầu vào của hệ thống là 3 giá trị mô-men 𝜏𝑥, 𝜏𝑦, 𝜏𝑧 tương ứng là mô-men giả lập của bánh xe đa hướng lần lượt theo mặt phẳng yz, xz, xy [2]. Các hàm truyền hệ thống được xác định bằng cách chuyển đổi từ mô hình không gian trạng thái (5) theo [2]: 𝑃 = 𝐶. (𝑠. 𝐼 − 𝐴)−1. 𝐵.𝑀 (12) Trong đó, 𝐼 là ma trận đơn vị 10 × 10 và M là ma trận chuyển đổi giữa mô-men giả lập τx, τy, τz và mô-men xoắn của ba bánh xe đa hướng τ1, τ2, τ3. 𝑀 = [ 2√2 3 0 −√2 3 −√2 3 √6 3 −√2 3 −√2 3 −√6 3 −√2 3 ] (13) Như vậy, đặc tính động lực học của BBR có thể được mô tả thông qua các hàm truyền sau: 𝐻 𝜏𝑦→𝜓𝑦(𝑠) = 3,0570 𝑠2 − 10,3 𝐻 𝜏𝑥→𝜓𝑥(𝑠) = 3,0570 𝑠2 − 10,3 𝐻 𝜏𝑧→𝜓𝑧(𝑠) = 9,1623 𝑠2 𝐻𝜓𝑦→𝑥𝑠(𝑠) = −0,6272𝑠2 + 3,95 𝑠2 𝐻𝜓𝑥→𝑦𝑠(𝑠) = 0,6272𝑠2 − 3,95 𝑠2 (14) Với các hàm truyền hệ thống được xác định ở trên các bộ điều khiển PID tương ứng được thiết kế với sự hỗ trợ của công cụ Tuner của MATLAB. 3.2. Bộ điều khiển LQG Bộ điều khiển toàn phương Gauss (Linear Quadratic Gaussian - LQG) xem xét các hệ thống tuyến tính với các yếu tố ngẫu nhiên tuân theo phân bố Gaussian. Một cách cơ bản, LQG là sự kết hợp giữa bộ lọc Kalman và bộ điều khiển toàn phương tuyến tính (Linear Quadratic Regulator - LQR). Trong trường hợp này, bộ điều khiển được thiết kế với véc-tơ không gian trạng thái được ước lượng bởi bộ lọc Kalman. Từ phương trình (9), bộ điều khiển LQG được xác định bởi các phương trình sau: �̇̂� = 𝐴�̂� + 𝐵𝑢 + 𝐾(𝑦 − 𝐶�̂�) 𝑢 = −𝐿�̂� (15) Trong đó, K là ma trận độ lợi của bộ lọc Kalman, L là ma trận phản hồi của bộ điều khiển LQR. Tại mỗi thời điểm, bộ lọc sẽ ước lượng �̂� của trạng thái x sử dụng các giá trị đo lường và đầu vào trước đó. Ma trận độ lợi Kalman được tính bởi [13]: 𝐾 = 𝑃𝐶𝑇𝑅−1 (16) Trong đó, P đạt được bằng cách giải phương trình Riccati: 𝐴𝑃 + 𝑃𝐴𝑇 − 𝑃𝐶𝑇𝑅−1𝐶𝑃 + 𝑄 = 0 (17) Ma trận phản hồi L của bộ điều khiển LQR với luật điều khiển 𝑢 = −𝐿�̂� được xác định bằng phương pháp tối thiểu hóa phương trình chỉ tiêu chất lượng toàn phương: 𝐽 = ∫ (�̂�𝑇𝑄𝐿�̂� + 𝑢 𝑇𝑅𝐿𝑢)d𝑡 ∞ 0 (18) với 𝑄𝐿 và 𝑅𝐿 lần lượt mà ma trận trọng số trạng thái và điều khiển. Ma trận phản hồi L được tính như sau [13]: 𝐿 = 𝑅𝐿 −1𝐵𝑇𝑆 (19) Trong đó, S có được bằng phương pháp giải phương trình Riccati: 𝐴𝑇𝑆 + 𝑆𝐴 − 𝑆𝐵𝑅𝐿 −1𝐵𝑇𝑆 + 𝑄𝐿 = 0 (20) Hình 4 mô phỏng hệ thống điều khiển LQG của BBR trên Matlab/Simulink. Hình 4. Hệ thống điều khiển BBR với bộ điều khiển LQG 4. Đánh giá chất lượng điều khiển Hình 5 và 6 thể hiện các đáp ứng của BBR theo 2 bộ điều khiển PID và LQG trong trường hợp robot cân bằng và trường hợp tín hiệu đặt thay đổi. Như thể hiện trên Hình 5, cả hai loại bộ điều khiển PID và LQG đều hoạt động tốt trong trường hợp muốn cân bằng robot (giá trị đặt của góc nghiêng thân 𝜓𝑥, 𝜓𝑦 bằng 0). Hình 5. Đáp ứng của hệ thống khi cân bằng Trong trường hợp cần điều khiển vị trí của robot, tức có sự thay đổi của tín hiệu đặt, bộ điều khiển LQG được so 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 -0.05 0 0.05 x [ ra d ] Response of the system while balancing x LQG x PID1 x PID2 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 Time [s] -0.05 0 0.05 y [ ra d ] y LQG y PID1 y PID2 14 Cao Thanh Bộ, Phạm Trường Hưng, Lê Hoài Nam, Nguyễn Danh Ngọc sánh với 2 bộ điều khiển PID với các hệ số được điều chỉnh theo các yêu cầu chất lượng khác nhau. Cụ thể, một bộ điều khiển PID được điều chỉnh theo tiêu chí vọt lố nhỏ (Hình 6) và một bộ điều khiển PID theo tiêu chí điều chỉnh theo tiêu chí đáp ứng nhanh (Hình 7). Hình 6. Đáp ứng của hệ thống với bộ điều khiển LQG và PID vọt lố nhỏ khi tín hiệu đặt thay đổi: (a) thay đổi xs; (b) thay đổi ys và (c) thay đổi 𝜓𝑧 Hình 7. Đáp ứng của hệ thống với bộ điều khiển LQG và PID đáp ứng nhanh khi tín hiệu đặt thay đổi: (a) thay đổi xs; (b) thay đổi ys và (c) thay đổi 𝜓𝑧 Bảng 2. So sánh chỉ tiêu chất lượng PID và LQG Chỉ tiêu chất lượng LQG PID ít vọt lố PID đáp ứng nhanh Thời gian quá độ (s) 3,025 16,384 2,105 Thời gian xác lập (s) 4,49 18,77 4,97 𝐼𝑆𝐸 = ∫ 𝑒2(𝑡)d𝑡 ∞ 0 2,0336 2,4749 1,7961 𝐼𝐴𝐸 = ∫ |𝑒(𝑡)|d𝑡 ∞ 0 3,4238 5,0018 2,5495 𝐼𝐴𝑇𝐸 = ∫ 𝑡𝑒(𝑡)d𝑡 ∞ 0 10,0141 52,3034 12,7006 Bảng 2 so sánh các chỉ tiêu chất lượng của hai bộ điều khiển trong trường hợp giá trị đặt xs = 1m tại thời điểm 5 s. Có thể thấy bộ điều khiển LQG có các chỉ tiêu về chất lượng tốt hơn so với hai bộ điều khiển PID. 5. Kết luận Trong bài báo, hai kỹ thuật điều khiển tuyến tính (PID và LQG) được so sánh và đánh giá thông qua mô phỏng cho vấn đề điều khiển robot cân bằng trên quả cầu. Đầu tiên, hệ thống robot được điều khiển bởi năm bộ điều khiển PID, trong đó mỗi bộ PID điều khiển một thành phần của véc-tơ tọa độ tối thiểu q của robot. Sau đó, một bộ điều khiển LQG tích hợp một bộ lọc Kalman được xây dựng cho robot này. Kết quả mô phỏng cho thấy bộ điều khiển LQG cho đáp ứng nhanh và chất lượng tốt hơn so với PID. Do đó, bộ điều khiển LQG sẽ được xem xét áp dụng trên nguyên mẫu thực tế. Lời cảm ơn: Bài báo này được tài trợ bởi Trường Đại học Bách khoa – Đại học Đà Nẵng với đề tài có mã số T2018-02-09. TÀI LIỆU THAM KHẢO [1] Nagarajan Umashankar, Dynamic Constraint-Based Optimal Shape Trajectory Planner for Shape Accelerated Underactuated Balancing Systems, Proceedings of 2010 Robotics: Science and Systems, 2010, pp. 27-31. [2] Blonk, J. W., Modeling and Control of a Ball-Balancing Robot, Master’s Thesis, University of Twente, 2014. [3] Nagarajan, U., Mampetta, A., Kantor, G. A., & Hollis, R. L., State Transition, Balancing, Station Keeping, and Yaw Control for A Dynamically Stable Single Spherical Wheel Mobile Robot, IEEE International Conference on Robotics and Automation, May 2009, pp. 998-1003. [4] Kumagai, M., & Ochiai, T., Development of A Robot Balancing on A Ball, International Conference on Control, Automation and Systems, Oct. 2008, pp. 433-438. [5] Fong, J., Uppill, S., & Cazzolato, B., Design and Build A Ballbot, In Report. Adelaide, Australia: The University of Adelaide, 2009. [6] Fankhauser, P., & Gwerder, C., Modeling and Control of A Ballbot, Bachelor’s Thesis, Eidgenössische Technische Hochschule Zürich, 2010. [7] Su, X., Wang, C., Su, W., & Ding, Y., Control of Balancing Mobile Robot on A Ball with Fuzzy Self-Adjusting PID, Chinese Control and Decision Conference (CCDC), May 2016, pp. 5258-5262. [8] Vaidya, B., Shomin, M., Hollis, R., & Kantor, G., Operation of the Ballbot on Slopes and with Center-of-Mass Offsets, IEEE International Conference on Robotics and Automation (ICRA), May 2015, pp. 2383-2388. [9] Yunong, Y., Ha, H. M., Kim, Y. K., & Lee, J. M., Balancing and Driving Control of A Ball Robot Using Fuzzy Control, International Conference on Ubiquitous Robots and Ambient Intelligence (URAI), Oct. 2015, pp. 492-494. [10] André Alstrin, Emil Sundell, Development of A Mechatronical Platform for AUTOSAR - The Ball-Balancing Robot, Master's Thesis, Chalmers University of Technology. [11] Carlucho, Ignacio, et al., Comparison of A PID Controller versus A LQG Controller for An Autonomous Underwater Vehicle, IEEE/OES South American International Symposium on Oceanic Engineering (SAISOE), 2016. [12] Karl J Astrom, PID Controllers: Theory, Design and Tuning, Instrument Society of America, 1995. [13] Lavretsky, E., & Wise, K. A., Robust and Adaptive Control, Springer, London, 2013. (BBT nhận bài: 23/5/2018, hoàn tất thủ tục phản biện: 15/6/2018)
File đính kèm:
- so_sanh_bo_dieu_khien_pid_voi_bo_dieu_khien_lqg_cho_robot_ca.pdf