Đặt vấn đề Trong những thập niên gần đây, khái niệm robot để phục vụ nhu cầu sản xuất trong môi trường công nghiệp. Gần đây hàng loạt robot đã được sản xuất với những mục đích và những yêu cầu khác nhau. Robotics được hiểu là một ngành khoa học có nhiệm vụ nghiên cứu thiết kế chế tạo robot và ứng dụng chúng trong các hoạt động khác nhau của xã hội loài người, như nghiên cứu khoa học – kỹ thuật, kinh tế, quốc phòng và dân sinh. Cùng với sự phát triển của xã hội, khoa học kĩ thuật, các phương pháp điều khiển hiện đại, điều khiển thông minh, ra đời.
Các phương pháp này ngày càng được nghiên cứu, phát triển, ứng dụng rộng rãi. Hệ thống Pendubot được thực hiện trong để tài là một hệ SIMO (Single- Input and Multiple-Output) với nhiều ngõ vào điều khiển và nhiều ngõ ra. Nhằm nâng cao khả năng áp dụng các giải thuật điều khiển tôi ưu cho hệ cánh tay robot trước tiên chúng ta cần nắm rõ về phương trình động học hệ thống. Thực hiện đề tài “Nghiên cứu điều khiển cánh tay robot thiếu dẫn động hai bậc tự do - Pendubot” là rất cần thiết cho vấn đề giảng dạy và nghiên cứu tại trường Đại học Sư phạm Kỹ thuật thời điểm hiện tại.
Vì đây là một mô hình rất điển hình cần phải có ở bất kỳ một trường Đại học, Cao đẳng nào theo hướng chuyên ngành kỹ thuật tại Việt Nam, nhất là ngành điều khiển tự động hóa, điện công nghiệp, cơ điện tử… Việc xây dựng mô hình sẽ giúp ích cho công tác giảng dạy trực quan hơn, dễ dàng kiểm chứng với các giải thuật điều khiển trên lý thuyết, là cơ sở nghiên cứu khoa học cho cả giảng viên và sinh viên tại trường. Lý do chọn đề tài Hệ thống Pendubot rất thường được sử dụng trong các phòng thí nghiệm điều khiển tự động. Thiết kế cơ khí đơn giản và có tính phi tuyến làm mô hình này phù hợp trong việc thử nghiệm các giải thuật điều khiển cũng như việc giảng dạy điều khiển tự động trong các chương trình đại học hay cao học. Hai bài toán cơ bản nghiên cứu về hệ thống Pendubot là Swing up, Balancing: Swingup: đây là bộ điều khiển đưa 2 thanh của hệ thống Pendubot từ vị trí hướng xuống đến lân cận vị trí thẳng đứng hướng lên.
4 Balancing: đây là bộ điều khiển giúp 2 thanh trên hệ thống đứng ở vị trí MID và TOP không bị ngã và đồng thời cũng giữ xe ở vị trí cố định cho trước. Các giải pháp điều khiển thông minh, điều khiển hiện đại ngày càng được quan tâm nghiên cứu để thực hiện các ứng dụng mà các giải pháp điều khiển thông thường không thực hiện được. Đề tài “Nghiên cứu điều khiển cánh tay robot thiếu dẫn động hai bậc tự do - Pendubot” mang lại kết quả nghiên cứu cho một bộ điều khiển phi tuyến trên hệ under-actuated. Đồng thời, mô hình phần cứng hệ Pendubot cũng là một mô hình thí nghiệm để tiếp tục công việc nghiên cứu, đưa ra các giải thuật điều khiển khác.
Đối tượng nghiên cứu - Nghiên cứu phương trình toán học của hệ Pendubot. - Nghiên cứu bất đẳng thức Lyapunov tìm kiếm thông số điều khiển của bộ điều khiển trượt thứ bậc. - Nghiên cứu giải thuật di truyền tìm kiếm thông số điều khiển tối ưu cho bộ điều khiển trượt thứ bậc. - Nghiên cứu lập trình mô phỏng Matlab cho hệ thống để ổn định cân bằng hệ Pendubot.
- Nghiên cứu lập trình trên Matlab/Simulink để điều khiển mô hình thực nghiệm Pendubot. - Nghiên cứu nhận dạng hệ Pendubot bằng phương pháp không tham số và có tham số. Phương pháp nghiên cứu Dựa vào cấu tạo phần cứng và các đặc tính vật lý của hệ thống, sinh viên xây dựng phương trình toán học của hệ thống (dùng phương pháp động học thuận – nghịch). Hệ thống không chỉ có cấu trúc cơ khí mà còn bị ảnh hưởng bởi loại động cơ DC được sử dụng.
Tuy động cơ DC là một mô hình đơn giản nhưng phương trình toán học cũng như thông số của nó cũng cần đề cập tới. Sau đó, phương pháp điều khiển (ở đây là trượt thức bậc cho hệ SIMO) cũng sẽ được trình bày và phân tích để có thể điều khiển được cả vị trí cân bằng cố định cho hệ Pendubot. Do sự sai lệch của việc đo đạc thông số mô hình cũng như sai số trong 5 việc nhận dạng động cơ, giải thuật GA cần được áp dụng để tìm thông số tối ưu nhất trên mô phỏng để thông số điều khiển tìm được trên mô phỏng sát nhất với thông số điều khiển được trên mô hình thực nghiệm. Bộ điều khiển trượt được xây dựng và tối ưu hóa thông qua việc lập trình trên công cụ Matlab/Simulink.
Các phương pháp nghiên cứu được sử dụng trong luận văn bao gồm: - Khảo sát, phân tích tổng hợp: Khảo sát một số mô hình, mô phỏng thực tế đang có từ các luận văn trước và các bài báo trên mạng internet, từ đó mô phỏng lại bằng phần mềm Matlab/simulink để so sánh với kết quả đã có nhằm rút ra những kinh nghiệm trong việc mô phỏng. - Mô phỏng trên máy tính: Phần nghiên cứu được kiểm chứng bằng việc mô phỏng và đánh giá trên phần mềm Matlab/Simulink. - Thiết kế mô hình thực nghiệm: Mô hình thực nghiệm được xây dựng để kiểm chứng lại và đánh giá lại các kết quả mô phỏng. Phạm vi nghiên cứu - Giới thiệu vi điều khiển LAUNCHXL-F28379D và bộ thư viện Embedded Coder Support Package for Texas Instrument C2000 Processors trên phần mềm Matlab/Simulink.
- Lắp ráp mô hình phần cứng và điện tử cho mô hình thực hệ cánh tay robot 2 bậc tự do. - Lập trình chương trình điều khiển trên Simulink của Matlab. - Điều khiển Swing-up và ổn định hệ pendubot. - Tìm hiểu lý thuyết về động lực robot, các lý thuyết của kỹ thuật robot để xây dựng hệ thống.
- Tìm hiểu lý thuyết swing-up bằng phương pháp năng lượng. - Tìm hiểu lý thuyết giải thuật di truyền. - Mô hình hóa và nhận dạng hệ thống Pendubot. Ý nghĩa khoa học Nghiên cứu hệ Pendubot và giải thuật trượt (cân bằng) giúp kiểm chứng lại giải thuật phi tuyến trên đối tượng thực.
Qua đó, hỗ trợ kiến thức nền tảng cho việc nghiên cứu giải thuật trượt, phương pháp điều khiển cân bằng cho hệ Pendubot. Ngoài ra, việc nghiên cứu có thể mở rộng cho các hệ SIMO khác như 6 con lắc ngược quay, bóng thanh, con lắc ngược hai bậc trên xe ., tạo nền tảng nghiên cứu sau này. 7 PHẦN NỘI DUNG CHƯƠNG 1: TỔNG QUAN VỀ HỆ PENDUBOT 1.1 Giới thiệu về hệ pendubot Pendubot là từ ghép bởi Pendu (Pendulum) và bot (robot) - một hệ underactuated có ngõ vào điều khiển ít hơn số bậc tự do, và rất khó để điều khiển. Hệ pendubot được nghiên cứu trong đề tài bao gồm 2 thanh đồng chất, đầu đầu thanh 1 được gắn chặt vào một động cơ DC.
Đầu cuối thanh 1 được gắn vào đầu đầu thanh 2 (thông qua 1 trục encoder nhằm tính toán góc lệch giữ thanh 2 và thanh 1) sao cho thanh 2 quay tự do xung quanh khớp nối với thanh 1. Mô hình Pendubot được ứng dụng trong rất nhiều phòng Thí nghiệm nhằm nghiên cứu các giải thuật điều khiển thông minh, điều khiển hiện đại.2 Mô tả toán học hệ Pendubot 1.1 Cơ sở khoa học Tất cả hệ thống điều khiển tự động đều được mô tả bằng một phương trình toán học với dạng vi phân. Hệ pendubot cũng vậy, để điều khiển được hệ Pendubot, việc đầu tiên là phải nắm rõ được đối tượng, từ đó mới đưa ra phương pháp điều khiển. Đối với hệ pendubot, để mô tả được hệ dưới dạng một phương trình toán học thì đó là sự kết hợp giữa vật lý và toán học với định luật cổ điển Lagrange [1] (dựa trên tổng năng lượng của hệ và lực tổng quát trong một hệ trục tọa độ Descarts [2]).
Phương trình Lagrange loại 1 [3]: L d L C f i i 0 (1) rk dt rk i 1 rk Trong đó: rk là vị trí của chất điểm thứ k C là số lượng liên kết trong hệ i là nhân tử Lagrange thứ i f i là phương trình liên kết thứ i L là hàm Lagrange của một hệ các hạt (chất điểm): L K V (2) 8 Với: K là tổng động năng của các chất điểm trong hệ V là tổng thế năng của các chất điểm trong hệ 1.2 Thành lập phương trình động học cho hệ Pendubot Hình 1.1 Cấu trục hệ Pendubot trên trục tọa độ Oxyz Bảng 1.1 Thông số các đại lượng của hệ thống hệ Pendubot Thông số Ý nghĩa 𝑚1 𝑡𝑟ọ𝑛𝑔 𝑙ượ𝑛𝑔 𝑙𝑖𝑛𝑘 1 𝑚2 𝑡𝑟ọ𝑛𝑔 𝑙ượ𝑛𝑔 𝑙𝑖𝑛𝑘 2 𝐼𝑐1 𝑚ô 𝑚𝑒𝑛 𝑞𝑢á𝑛 𝑡í𝑛ℎ 𝑙𝑖𝑛𝑘 1 𝐼𝑐2 𝑚ô 𝑚𝑒𝑛 𝑞𝑢á𝑛 𝑡í𝑛ℎ 𝑙𝑖𝑛𝑘 2 𝑙1 𝑐ℎ𝑖ề𝑢 𝑑à𝑖 𝑙𝑖𝑛𝑘 1 𝑙2 𝑐ℎ𝑖ề𝑢 𝑑à𝑖 𝑙𝑖𝑛𝑘 2 𝑙𝑐1 𝑐ℎ𝑖ề𝑢 𝑑à𝑖 𝑡ừ 𝑡𝑟ụ𝑐 𝑥𝑜𝑎𝑦 đế𝑛 𝑡𝑟ọ𝑛𝑔 𝑡â𝑚 𝑐ủ𝑎 𝑙𝑖𝑛𝑘 1 𝑙𝑐2 𝑐ℎ𝑖ề𝑢 𝑑à𝑖 𝑡ừ 𝑡𝑟ụ𝑐 𝑥𝑜𝑎𝑦 đế𝑛 𝑡𝑟ọ𝑛𝑔 𝑡â𝑚 𝑐ủ𝑎 𝑙𝑖𝑛𝑘 2 𝑞1 𝑔ó𝑐 𝑙𝑖𝑛𝑘 1 𝑠𝑜 𝑣ớ𝑖 𝑡𝑟ụ𝑐 𝑥 𝑞2 𝑔ó𝑐 𝑙𝑖𝑛𝑘 2 𝑠𝑜 𝑣ớ𝑖 𝑡𝑟ụ𝑐 𝑥1 𝑔 𝑔𝑖𝑎 𝑡ố𝑐 𝑡𝑟ọ𝑛𝑔 𝑡𝑟ườ𝑛𝑔 b1 Hệ số ma sát link 1 b2 Hệ số ma sát link 2 Một số kí hiệu khác trong đề tài mà sinh viên đặt : 𝑐1 = cos(𝑞1 ); 𝑠1 = sin(𝑞1 ); 𝑐2 = cos(𝑞2 ); 𝑠2 = sin(𝑞2 ); 𝑐12 = cos(𝑞1 + 𝑞2 ) ; 𝑠12 = sin(𝑞1 + 𝑞2 ) 9 Bảng 1.2 Bảng DH hệ Pendubot 𝑎𝑖−1 𝛼𝑖−1 𝑑𝑖 𝑞𝑖 𝑍0 𝑍1 𝑥0 0 0 0 𝑞1 𝑥0 𝑥1 𝑍1 𝑍1 𝑍2 𝑥1 𝑙1 0 0 𝑞2 𝑥1 𝑥2 𝑍2 Ta có : 𝑐1 −𝑠1 0 0 0 𝑠1 𝑐1 0 0 1𝑇 = [ ] 0 0 1 0 0 0 0 0 𝑐2 −𝑠2 0 𝑙1 1 𝑠2 𝑐2 0 0] 2𝑇 = [ 0 0 1 0 0 0 0 0 𝑐1 −𝑠1 0 0 𝑐2 −𝑠2 0 𝑙1 𝑐12 −𝑠12 0 𝑙1 𝑐1 0 0 1 𝑠1 𝑐1 0 0 𝑠2 𝑐2 0 0 ] = [𝑠12 𝑐12 0 𝑙1 𝑠1 2𝑇 = 1𝑇 .29) (𝜃2 + 𝜃3 𝑐2 )𝑞̈ 1 + (𝜃2 )𝑞̈ 2 + 𝑞̇ 12 𝜃3 𝑠2 + 𝜃5 𝑔𝑐12 = −𝑏2 𝑞̇ 2 (30) Tín hiệu đầu vào của hệ Pendubot là momen tác động vào link 1. Tuy nhiên, trong thực tế, tín hiệu đầu vào của hệ thống là điện áp cung cấp cho động cơ DC để tạo ra momen. Do đó, sinh viên tìm mối quan hệ giữa điện áp 𝑢 và momen 𝜏1 : Rm Lm i + u Eb - phần điện phần cơ Hình 1.