Luận án Nghiên cứu điều khiển rô bốt tay máy di động bám mục tiêu trên cơ sở sử dụng thông tin hình ảnh
Rô bốt được ứng dụng trong công nghiệp từ những năm 60 để thay thế con
người làm các công việc nặng nhọc, nguy hiểm trong môi trường độc hại. Ngày nay rô
bốt được ứng dụng rộng rãi trong mọi lĩnh vực sản xuất và dịch vụ như trong chế tạo
máy, y tế, chăm sóc sức khỏe, nông nghiệp, đóng tàu, xây dựng, an ninh quốc phòng
và gia đình Nhu cầu s dụng rô bốt trong các ngành công nghiệp, dân dụng, dịch vụ
và an ninh quốc phòng gia tăng là động lực cho sự phát triển của các rô bốt di động
thông minh.
Cùng với sự phát triển mạnh mẽ của các hệ thống tự động hóa, rô bốt di động
ngày một được hoàn thiện và càng cho thấy lợi ích của nó trong công nghiệp và sinh
hoạt. Một vấn đề rất được quan tâm khi nghiên cứu về rô bốt là khả năng nhìn và x lý
thông tin hình ảnh để rô bốt có thể theo dõi được các đối tượng mục tiêu đứng yên
cũng như di chuyển trong không gian, biết được vị trí nó đang đứng trong môi trường
phi cấu trúc và có thể di chuyển tới một vị trí khác, đồng thời có thể tự động tránh
được các chướng ngại vật trên đường đi.
Trong những năm gần đây, rất nhiều công trình nghiên cứu về điều khiển rô bốt
s dụng thông tin hình ảnh, nhưng các kết quả đạt được vẫn còn bộc lộ một số hạn chế.
Chẳng hạn như việc s dụng 1 camera trên rô bốt di động chỉ cho phép theo dõi đầy đủ
thông tin của mục tiêu khi biết trước mặt phẳng di chuyển của mục tiêu hay việc s
dụng 2 camera cho phép đáp ứng nhiều yêu cầu nhưng chưa xét tới các sự suy biến của
ma trận Jacobian ảnh tác động tới khả năng bám của hệ thống. Bên cạnh đó mô hình
toán học của rô bốt thường khó đạt độ chính xác tuyệt đối vì trong hệ thống chứa nhiều
tham số bất định như việc đo đạc các tham số ban đầu hay các hệ số ma sát, mô
men quán tính , lại thường thay đổi trong quá trình hoạt động
Tóm tắt nội dung tài liệu: Luận án Nghiên cứu điều khiển rô bốt tay máy di động bám mục tiêu trên cơ sở sử dụng thông tin hình ảnh
BỘ GIÁO DỤC VÀ ĐÀO TẠO VIỆN HÀN LÂM KHOA HỌC VÀ CÔNG NGHỆ VIỆT NAM HỌC VIỆN KHOA HỌC VÀ CÔNG NGHỆ ----------------------------- Lê Văn Chung NGHIÊN CỨU ĐIỀU KHIỂN RÔ BỐT TAY MÁY DI ĐỘNG BÁM MỤC TIÊU TRÊN CƠ SỞ SỬ DỤNG THÔNG TIN HÌNH ẢNH LUẬN ÁN TIẾN SĨ KỸ THUẬT Hà Nội – 2019 BỘ GIÁO DỤC VÀ ĐÀO TẠO VIỆN HÀN LÂM KHOA HỌC VÀ CÔNG NGHỆ VIỆT NAM HỌC VIỆN KHOA HỌC VÀ CÔNG NGHỆ ----------------------------- Lê Văn Chung NGHIÊN CỨU ĐIỀU KHIỂN RÔ BỐT TAY MÁY DI ĐỘNG BÁM MỤC TIÊU TRÊN CƠ SỞ SỬ DỤNG THÔNG TIN HÌNH ẢNH Chuyên ngành: Kỹ thuật điều khiển và tự động hóa Mã số: 9.52.02.16 LUẬN ÁN TIẾN SĨ KỸ THUẬT NGƯỜI HƯỚNG DẪN KHOA HỌC: 1. PGS.TSKH Phạm Thượng Cát 2. TS. Phạm Minh Tuấn Hà Nội – 2019 i LỜI CAM ĐOAN Tôi xin cam đoan đây là công trình nghiên cứu của riêng tôi. Các kết quả được viết chung với các tác giả khác đều được sự đồng ý của đồng tác giả trước khi đưa vào luận án. Các kết quả trong luận án là trung thực và chưa từng được công bố trong bất kỳ công trình nào khác. Tác giả luận án Lê Văn Chung ii LỜI CẢM ƠN Lời đầu tiên, Tôi xin chân thành cảm ơn Ban Lãnh đạo Học viện Khoa học và Công nghệ, Viện Công nghệ thông tin - Viện Hàn lâm Khoa học và Công nghệ Việt Nam, Phòng Công nghệ tự động hóa đã tạo điều kiện thuận lợi trong quá trình học tập, nghiên cứu. Tôi xin bày tỏ lòng kính trọng và biết ơn sâu sắc tới PGS.TSKH. Phạm Thượng Cát và TS. Phạm Minh Tuấn, hai thầy đã định hướng và tận tình hướng dẫn để tôi có thể hoàn thành luận án. Tôi xin cảm ơn Ban Giám hiệu Trường Đại học Công nghệ Thông tin và Truyền thông - Đại học Thái Nguyên, Khoa Công nghệ tự động hóa và các đơn vị trong Nhà trường đã quan tâm giúp đỡ, tạo điều kiện để tôi có thể thực hiện nghiên cứu. Tôi xin cảm ơn các cán bộ Phòng Công nghệ tự động hóa – Viện Công nghệ thông tin, các đồng nghiệp thuộc Khoa Công nghệ Tự động hóa - Trường Đại học Công nghệ thông tin và truyền thông - Đại học Thái Nguyên đã động viên và trao đổi kinh nghiệm trong quá trình hoàn thành luận án. Cuối cùng, tôi xin chân thành cảm ơn đến gia đình, người thân, các bạn đồng nghiệp - những người luôn dành cho tôi những tình cảm nồng ấm, luôn động viên và sẻ chia những lúc khó khăn trong cuộc sống và tạo điều kiện tốt nhất để tôi có thể hoàn thành quá trình nghiên cứu. Hà Nội, ngày 28 tháng 8 năm 2019 Tác giả luận án Lê Văn Chung iii MỤC LỤC LỜI CAM ĐOAN ....................................................................................................... i LỜI CẢM ƠN ............................................................................................................ ii MỤC LỤC ................................................................................................................ iii DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT ........................................... vii DANH MỤC HÌNH VẼ ............................................................................................ x DANH MỤC BẢNG .............................................................................................. xiii MỞ ĐẦU .................................................................................................................... 1 CHƢƠNG 1................................................................................................................ 7 TỔNG QUAN ............................................................................................................ 7 1.1 Đặt vấn đề ........................................................................................................ 7 1.2. Tổng quan về điều khiển rô bốt sử dụng thông tin hình ảnh ..................... 8 1.2.1 Tình hình nghiên cứu ngoài nước ........................................................... 11 1.2.2 Tình hình nghiên cứu trong nước .............................................................. 8 1.3 Các vấn đề nghiên cứu của luận án ............................................................. 19 1.3.1. Phát triển phương pháp điều khiển rô bốt s dụng thông tin hình ảnh ... 19 1.3.2. Một số cải tiến trong điều khiển hệ servo thị giác bám mục tiêu di động ........................................................................................................................... 20 1.3.3. Phát triển thuật toán điều khiển rô bốt di động s dụng thông tin hình ảnh. .................................................................................................................... 21 1.4. Kết luận chƣơng 1 ........................................................................................ 22 CHƢƠNG 2.............................................................................................................. 23 PHÁT TRIỂN THUẬT TOÁN ĐIỀU KHIỂN HỆ PAN-TILT SỬ DỤNG THÔNG TIN HÌNH ẢNH TỪ HAI CAMERA .................................................... 23 2.1. Xây dựng mô hình động học hệ pan-tilt-stereo camera bám mục tiêu di động với nhiều tham số bất định ................................................................... 24 iv 2.1.1 Xác định ma trận Jacobi ảnh qua tọa độ điểm ảnh thu được từ 2 camera quy vào hệ tọa độ OcXcYcZc ........................................................................... 24 2.1.2 Xác định hệ phương trình động học tốc độ hệ pan-tilt. ........................... 28 2.1.3 Xây dựng bài toán điều khiển động học (kinematic control) hệ rô bốt- stereo camera bám mục tiêu. ............................................................................. 29 2.2.Thiết kế thuật toán điều khiển ..................................................................... 30 2.2.1 Xây dựng mô hình bộ điều khiển ............................................................. 30 2.2.2 Xây dựng thuật toán điều khiển hệ Pan-tilt –2 camera bám mục tiêu di động ................................................................................................................... 31 2.3 Một số kết quả mô phỏng kiểm chứng ........................................................ 35 2.4. Kết luận chƣơng 2 ........................................................................................ 43 CHƢƠNG 3.............................................................................................................. 45 MỘT SỐ CẢI TIẾN TRONG ĐIỀU KHIỂN ....................................................... 45 HỆ SERVO TH GIÁC BÁM MỤC TIÊU DI ĐỘNG ........................................ 45 3.1 dựng mô hình 3D cho hệ 2 camera trên hệ pan-tilt ........................... 47 3.1.1 Mô hình 3D cho hệ stereo camera ........................................................... 47 3.1.2 Mô hình hệ camera ảo. ............................................................................. 47 3.1.3 Kiểm soát sự suy biến của ma trận Jacobian ......................................... 53 3.1.4 Bài toán điều khiển rô bốt bám mục tiêu với nhiều tham số bất định ..... 53 3.2. dựng hệ động lực học hệ pan-tilt – stereo camera với các tham số bất định ............................................................................................................ 53 3.3. dựng bộ điều khiển nơ ron cho hệ động lực học hệ pan-tilt stereo camera bám mục tiêu di động. ...................................................................... 55 3.3.1 Xây dựng bộ điều khiển .......................................................................... 55 3.3.2 Xây dựng cấu trúc các lớp bộ điều khiển nơ ron truyền th ng RBF cho hệ thống .................................................................................................................. 56 3.3.3 Tối ưu tham số ......................................................................................... 57 3.4. Mô phỏng hệ thống ....................................................................................... 61 v 3.5. Kết luận ......................................................................................................... 72 CHƢƠNG 4.............................................................................................................. 74 PHÁT TRIỂN THUẬT TOÁN ĐIỀU KHIỂN RÔ BỐT DI ĐỘNG .................. 74 SỬ DỤNG THÔNG TIN HÌNH ẢNH. .................................................................. 74 4.1. Xây dựng mô hình động học và bài toán hệ điều khiển Rô bốt-Pan-tilt– Stereo Camera bám mục tiêu di động .......................................................... 75 4.1.1 Xác định ma trận Jacobi ảnh .................................................................... 75 4.1.2 Xác định ma trận Jacobi của hệ và tốc độ bám mục tiêu cho rô bốt di động. .................................................................................................................. 77 4.1.3 Xác định tốc độ của các bánh xe cho rô bốt di động để rô bốt tiếp cận mục tiêu. ............................................................................................................ 81 4.2. Thiết kế thuật toán điều khiển .................................................................... 82 4.2.1 Động lực học hệ rô bốt di động-bệ pan-tilt .............................................. 82 4.2.2 Thiết kế bộ điều khiển tối ưu ................................................................... 83 4.3. Mô phỏng hệ thống ....................................................................................... 89 4.3.1 Mô phỏng hệ thống với bộ điều khiển tối ưu ........................................... 89 4.3.2 Mô phỏng hệ thống với bộ điều khiển trượt CTC.................................... 94 4.4. Kết luận chƣơng 4 ........................................................................................ 96 5. KẾT LUẬN .......................................................................................................... 97 5.1. Những nội dung nghiên cứu chính của luận án ......................................... 97 5.2.Những đóng góp khoa học mới của luận án ............................................... 97 5.3.Định hƣớng nghiên cứu phát triển .............................................................. 98 DANH MỤC CÁC CÔNG TRÌNH ĐÃ CÔNG BỐ ........................................... 100 TÀI LIỆU THAM KHẢO .................................................................................... 101 PHỤ LỤC ............................................................................................................... 111 1. Mô hình mô phỏng về hệ pan-tilt stereo camera bám mục tiêu di động có sử dụng mô hình camera 3D ảo ................................................................... 111 vi 2. Mô hình mô phỏng về hệ pan-tilt stereo camera bám mục tiêu di động có sử dụng mô hình camera 3D ảo ................................................................... 118 vii DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT Ký hiệu Đơn vị tính Mô tả CTC Computed Torque Controller – bộ điều khiển dựa trên phương pháp tính mô men. d m Khoảng cách giữa 2 bánh xe rô bốt di động. d(t) Vecto ảnh hư ng của nhi u, các tham số bất định. f pixel Tiêu cự camera (1 pixel = 35μm) fv pixel Tiêu cự thấu kính của camera ảo. f Các thành phần bất định trong mô hình động học hệ pan-tilt. fu Các thành phần bất định trong mô hình động lực học hệ pan-tilt. H Hàm Hamilton. Jimag Ma trận Jacobi ảnh. Jrobot Ma trận Jacobi rô bốt. J Ma trận Jacobi tổng hợp. ˆ ˆ( ), ( )imag robotJ m J q Các giá trị biết được của các ma trận tương ứng. ( ), ( )imag robotΔJ m ΔJ q Các đại lượng không biết của các ma trận tương ứng. Ma trận giả nghịch đảo của ma trận J; K m Khoảng cách 2 camera. k m khoảng cách giữa hai bánh xe rô bốt di động. k1 m Khoảng cách giữa rô bốt di động và mục tiêu. l1 m Chiều dài khớp pan củahệ pan-tilt. l2 m Chiều dài khớp tilt củahệ pan-tilt. LQR Linear–Quadratic Regulator. T 1 Tˆ ˆ ˆ ˆ( )J J J J T 1 Tˆ ˆ ˆ ˆ( )J J J J viii LQG Linear–Quadratic–Gaussian. m Pixel Véc tơ đặc trưng ảnh. md Pixel Véc tơ đặc trưng ảnh mong muốn. Q Tọa độ mục tiêu. q Véc tơ vị trí góc của khớp pan, tilt r q Véc tơ vị trí góc của khớp pan, tilt RBF Radial basis function neural network s Véc tơ sai số giữa giá trị mong muốn và đo được. Tx Ty Tz m/s Vận tốc dài của tay nắm camera x y z m/s Vận tốc góc của tay nắm camera U, V Pixel Tọa độ ảnh của đối tượng , 1u Thành phần điều khiển nơ ron u* Thành phần điều khiển tối ưu v véc tơ biến ngoài của đầu tay nắm của bệ pan-tilt (trùng với gốc tọa độ camera OC) C v Véc tơ vận tốc dài của đầu tay nắm của bệ pan-tilt CΩ Véc tơ vận tốc góc của đầu tay nắm của bệ pan-tilt vs Véc tơ vận tốc đo được tại 2 bánh rô bốt di động và 2 khớp của bệ pan-tilt. vd Véc tơ vận tốc mong muốn đặt lên 2 bánh rô bốt di động và 2 khớp của bệ pan-tilt. x Véc tơ mô tả vị trí và hướng của camera. xs Véc tơ tọa độ mục tiêu nhìn trong hệ tọa độ camera ảo. W Ma trận trọng số của mạng nơ ron ε Sai số giữa tham số mong muốn và đo được θ1 rad Góc quay của khớp pan θ2 rad Góc quay của khớp tilt m rad Góc hướng của rô bốt di động θ1d rad Góc quay mong muốn của khớp pan θ2d rad Góc quay mong muốn của khớp tilt ix md rad Góc hướng mong muốn của rô bốt di động m Khoảng cách từ gốc tới vị trí đặt camera ảo jjc , Trọng tâm và độ rộng khoảng cách tính từ tâm của lớp n thứ j radial basis function của mạng nơ ron. φl , φr rad Góc quay của bánh xe trái, phải trên rô bốt di động Stereo camera Hệ 2 camera được gắn trên khung cố định củahệ pan-tilt và có các quan hệ hình học được xác định trước. x DANH MỤC HÌNH VẼ Hình 1.1 Các ứng dụng điều khiển rô bốt s dụng thông tin hình ảnh. .................... 11 Hình 1.2 Một số phương pháp điều khiển rô bốt s dụng thông tin hình ảnh .......... 14 Hình 2.1 Bệ pan-tilt PTU-D48E-Series và biểu di n hệ tọa độ ................................ 24 Hình 2.2 Mô hình hệ thống camera ........................................................................... 25 Hình 2.3 Ảnh theo 2 trục Z, Y .................................................................................. 26 Hình 2.4 Ảnh theo 2 trục X, Y .................................................................................. 26 Hình 2.5 Mạng RBF xấp xỉ hàm ........................................................................... 32 Hình 2.6 Cấu trúc của hệ visual servoing điều khiển camera bám mục tiêu di động có nhiều tham số bất định .......................................................................................... 34 Hình 2.7 Sai lệch tọa độ ảnh mục tiêu (pixel). .......................................................... 37 Hình 2.8 Sai lệch tọa độ ảnh mục tiêu (pixel) khi bộ điều khiển không có mạng nơ ron bù ( , 1u = 0 ). ........................................................................................................ 37 Hình 2.9 Sai lệch bám tọa độ khi mục tiêu di chuyển theo đường ... ae-I Kim, Wook Bahn, Changhun Lee, Tae-jae Lee, Muhammad Muneeb Shaikh, and Kwang-soo Kim, Vision System for Mobile Robots for Tracking Moving Targets, Based on Robot Motion and Stereo Vision Information, IEEE International 2011, pp. 634 – 639. 108 [68] Thuan Hoang Tran, Van Tinh Nguyen, Minh Tuan Pham, Thuong Cat Pham, Trajectory Tracking Control of a Mobile Robot by computed torque method with on-line learning neural network, IEEE 2013 on Control and Automation, pp 1184-1189. [69] T. Hu and S. Yang, A novel tracking control method for a wheeled mobile robot, in: Proc. of 2nd Workshop on Conference Kinematics. Seoul, Korea, May 20-22, 2001, pp. 104-116. [70] T. Hu and S. Yang, A novel tracking control method for a wheeled mobile robot, Proc. of 2nd Workshop on Computational Kinematics, Seoul, Korea, May 20-22, 2001, pp. 104-116. [71] T. Hu, S. Yang, F. Wang, G. Mittal, A neural network for a nonholonomic mobile robot with unknown robot parameters. Proc. of the 2002 IEEE Int. Conf. on Robotics & Automation, Washington DC., May 2002. [72] T. Fukao, H. Nakagawa, and N. Adachi, “Adaptive tracking control of a nonholonomic mobile robot”, IEEE Trans. Robot. Autom, vol. 16, no. 1, pp. 609- 615, 2000. [73] Tinh Nguyen, Linh Le, “Neural network-based adaptive tracking control for a nonholonomic wheeled mobile robot with unknown wheel slips, model uncertainties, and unknown bounded disturbances”, Turkish Journal of Electrical Engineering & Computer Sciences, (2018) Vol 26: 378 – 392. [74] Tinh Nguyen, Thuong Hoang, Minhtuan Pham & Namphuong Dao, “A Gaussian wavelet network-based robust adaptive tracking controller for a wheeled mobile robot with unknown wheel slips”, International Journal of Control, online version https://doi.org/10.1080/00207179.2018.1458156. [75] Tinh Nguyen, Kiem Nguyentien, Tuan Do, Tuan Pham, “Neural Network-based Adaptive Sliding Model Control Method for Tracking of a Nonholonomic Wheeled Mobile Robot with Unknown Wheel Slips, Model Uncertainties, and Unknown Bounded External Disturbances”, Acta Polytechnica Hungarica Vol. 15, No. 2, 2018, pp. 103-123. 109 [76] Wang C L, Mei Y C, Liang Z Y, Jia Q W. “Dynamic feedback tracking control of non-holonomic mobile robots with unknown camera parameters”. Transactions of the Institute of Measurement and Control, 2010, 32(2): 155-169. [77] Wang Y, Lang H X, Silva C W. “A hybrid visual servo controller for robust grasping by wheeled mobile robots”. IEEE/ASME Transactions on Mechatronics, 2010, 15(5): 757-769 [78] Wang H S, Liu Y H, Zhou D X. “Adaptive visual servoing using point and line features with an uncalibrated eye-inhand camera”. IEEE Transactions on robotics, 2008, 24(4): 843-857. [79] WenYua, Marco A Moreno-Armendariz, Robust Visual Servoing of Robot Manipulators with Neuro Compensation, Published by Elsevier Ltd 2005, pp. 824-838. [80] WenYu and XiaoouLi, System Identification Using Adjustable R F Neural Network with Stable Learning Algorithms, International Symposium on Neural Networks, 2004, pp. 212-217. [81] Widodo Budiharto, Ari Santoso, Djoko Purwanto, Achmad Jazidie, A Navigation System for Service Robot using Stereo Vision and Kalman Filtering, International Conference on Control, Automation and Systems, 26-29, 2011 in KINTEX, Gyeonggi-do, Korea, pp. 1771 – 1776. [82] Wook Bahn, Jaehong Park, Chang-hun Lee, Tae-il Kim, Teajae Lee, Muhammad Muneeb Shaikh, Kwang-soo Kim, and Dong-il “Dan” Cho, A Motion- Information-Based Vision-Tracking System with a Stereo Camera on Mobile Robots, 2011 IEEE, pp. 252-257. [83] Yang, Z., Che, Y., EricCheng, K. W., 2007, Genetic Algorithm-Based RBF Neural Network Load Forecasting Model, IEEE Power Engineering Society General Meeting, 1298-1303. [84] Yang Fang, WANG Chao-Li, Adaptive Stabilization for Uncertain Nonholonomic Dynamic Mobile Robots Based on Visual Servoing Feedback, ACTA Automatic sinica, Vol. 37, No. 7, pp 857-864. 110 [85] Yong Huan. Yang, Yu Lin. Xu, Xin. Li, Wan Mi. Chen,Yan Kai. Chao, Stereo vision-based arm control for service robot, Control and Decision Conference (CCDC), 2011 Chinese, pp. 4048 – 4053. [86] Y. M. Zhao; W. F. Xie; X. W. Tu, Multiple cameras-multiple target points visual servoing in large scale 3D manufacturing systems, 2011 6th IEEE Conference on Industrial Electronics and Applications, pp. 2107 – 2113. 111 PHỤ LỤC 1. Mô hình mô phỏng về hệ pan-tilt stereo camera bám mục tiêu di động có sử dụng mô hình camera 3D ảo Bộ điều khiển động lực học 112 #code bộ điều khiển động lực học function {{tor, AA] = fcn(epsilon_dot,J,e,M2,KD, KP,theta1d,theta2d,I1,I2,Lc2,theta1,theta2,J_dot) %#codegen a1 = J(1,1); b1 = J(1,2); a2 = J(2,1); b2 = J(2,2); a3 = J(3,1); b3 = J(3,2); A = a1^2+a2^2+a3^2; B = a1*b1+a2*b2+a3*b3; C = b1^2+b2^2+b3^2; M = (a1*b2-a2*b1)^2+(a1*b3-a3*b1)^2+(a2*b3-a3*b2)^2; j11 = 0.8*(a1*C-b1*B)/M; j12 = 0.8*(a2*C-b2*B)/M; j13 = 0.8*(a3*C-b3*B)/M; j21 = 0.8*(b1*A-a1*B)/M; j22 = 0.8*(b2*A-a2*B)/M; j23 = 0.8*(b3*A-a3*B)/M; Jinv = {{j11, j12, j13;... j21, j22, j23] s1 = sin(theta1); c2 = cos(theta2); s2 = sin(theta2); m11 = I1+I2*s2^2+I1*c2^2; m22 = I2; m13 = (I1-I2)*s2*c2; 113 matrixM = {{m11, 0;... 0, m22]; c11 = -m13*theta2d; c12 = -m13*theta1d; c21 = m13*theta1d; matrixC = {{c11, c12;... c21, 0]; g21= -9.8*M2*Lc2*cos(theta2); velG = {{0;g21]; qd = {{theta1d;theta2d]; AA = matrixM*Jinv; b = -matrixM*Jinv*J_dot*qd + matrixC*qd + velG; tor = matrixM*Jinv*(-KD*epsilon_dot-KP*e)+ b + 0.01*s1; *********************************************************** #code bộ điều khiển nơ ron function TORnn = fcn(e,SIGMA,delta,eta,w1,w2,w3,A) %#codegen W = {{w1,w2,w3]; TORnn = A*((eta+1)*W*SIGMA - delta*e/sqrt(e(1)^2 + e(2)^2 + e(3)^2)); 114 Động học hệ pan-tilt function Out = fcn(theta1,theta2,q_d,I1,I2,M2,Lc2) %#codegen m13 = (I1-I2)*sin(theta2)*cos(theta2); theta1d=q_d(1); theta2d=q_d(2); c11 = -m13*theta2d; c12 = -m13*theta1d; c21 = m13*theta1d; matrixC = {{c11, c12;... c21, 0]; g21= -9.8*M2*Lc2*cos(theta2); velG = {{0;g21]; Out = matrixC*q_d + velG + 0.01*sin(theta1); 115 ********************************************************** ********** function q_dot = fcn(input,I1,I2,theta2) %#codegen c2 = cos(theta2); s2 = sin(theta2); m11 = I1+I2*s2^2+I1*c2^2; m22 = I2; %m13 = (I1-I2)*s2*c2; matrixM = {{m11, 0;... 0, m22]; q_dot = matrixM\input; %v_dot = tor; Mô hình camera 3D ảo 116 function {{X_S_dot,J] = fcn(lamda,fv, xyz_vd, xyz_vdot, theta1, theta2,l1,l2, theta1d, theta2d) %#codegen Rcv=[1, 0, 0;... 0, 0, 1;... 0, -1, 0]; xv = xyz_vd(1); yv = xyz_vd(2); zv = xyz_vd(3); j11 = 1/(lamda-xv); j12 = zv/(lamda-xv)^2; j21 = -(xv-lamda)/(zv+lamda)^2; j22 = 1/(zv+lamda); j31 = -(yv)/(zv+lamda)^2; j33 = 1/(zv+lamda); Jvimg=[j11, j12, 0;... j21, j22, 0;... j31, 0 , j33]; c1 = cos(theta1); c2 = cos(theta2); s1 = sin(theta1); s2 = sin(theta2); Rco = {{c1*c2, -c1*s2, s1;... s1*c2, - s1*s2, -c1;... s2, c2, 0]; 117 Jrobot=[l2*c1*c2, 0;... l2*s1*c2, 0;... l2*s2, l1]; J=Jvimg*Rcv*Rco*Jrobot; thetad = {{theta1d;theta2d]; X_S_dot=fv*Jvimg*Rcv*Rco*xyz_vdot; Mô hình stereo camera function {{X_S, X_C]= fcn(J, q_dot, fv, t,lamda) %#codegen Rcv=[1, 0, 0;... 0, 0, 1;... 0, -1, 0]; 118 X_S = J*q_dot; Xs = X_S(1); Ys = X_S(2); Zs = X_S(3); Xv =lamda*(Ys*fv+Xs+fv)/(Xs+fv^2); Zv = Xs*(lamda-Xv)/fv; Yv = Zs*(lamda+Zv)/fv; X_V = {{Xv;Yv;Zv]; X_C = Rcv\X_V; 2. Mô hình mô phỏng về hệ phức hợp rô bốt di động mang pan-tilt stereo camera bám mục tiêu di động 119 Bộ điều khiển tối ƣu Hàm tính u* function usao = fcn(e,e_dot) %#codegen R=[ 0.25 , 0, 0, 0;... 0, 0.25, 0, 0;... 0, 0, 0.25, 0;... 0, 0, 0, 0.25]; alpha1=[15.5,0,0,0;... 0,15.6,0,0;... 0,0,15.6,0;... 0,0,0,15.4]; e2=e_dot+alpha1*e; usao=-R\e2; 120 Bộ điều khiển động lực học hệ rô bốt di động – pan-tilt – stereo camera Vector a dot function a_vector_es_dot = fcn(v,vd,vd_dot,r,b,theta3,Learn) %#codegen c2 = cos(theta2); s2 = sin(theta2) c3 = cos(theta3); s3 = sin(theta3); v1d_dot = vd_dot(1); v2d_dot = vd_dot(2); v3d_dot = vd_dot(3); v4d_dot = vd_dot(4); 121 v1d = vd(1); v2d = vd(2); v3d = vd(3); v4d = vd(4); e = v - vd; theta3_dot = v(4); theta2_dot = v(3); theta1_dot = (r/b)*(v(1) - v(2)); y11 = (v1d_dot - v2d_dot)*(r/b)^2; y12 = (v1d_dot - v2d_dot)*(r/b)^2 + v3d_dot*(r/b); y13 = 0.5*(1 - cos(2*theta3))*(r/b)*((v1d_dot - v2d_dot)*(r/b) + v3d_dot) + ... 0.5*(r/b)*sin(2*theta3)*theta3_dot*((v1d - v2d)*(r/b) + v3d) + 0.5*(r/b)*sin(2*theta3)*(theta1_dot + theta2_dot)*v4d; y14 = 0.5*(1 + cos(2*theta3))*(r/b)*((v1d_dot - v2d_dot)*(r/b) + v3d_dot) - ... 0.5*(r/b)*sin(2*theta3)*theta3_dot*((v1d - v2d)*(r/b) + v3d) - 0.5*(r/b)*sin(2*theta3)*(theta1_dot + theta2_dot)*v4d; y15 = 0; y21 = -y11; y22 = -y12; y23 = -y13; y24 = -y14; y25 = 0; 122 y31 = 0; y32 = (v1d_dot - v2d_dot)*(r/b) + v3d_dot; y33 = 0.5*(1-cos(2*theta3))*((r/b)*(v1d_dot - v2d_dot) + v3d_dot) + ... 0.5*sin(2*theta3)*(theta3_dot*((r/b)*(v1d - v2d) + v3d) + (theta1_dot + theta2_dot)*v4d); y34 = 0.5*(1+cos(2*theta3))*((r/b)*(v1d_dot - v2d_dot) + v3d_dot) - ... 0.5*sin(2*theta3)*(theta3_dot*((r/b)*(v1d - v2d) + v3d) + (theta1_dot + theta2_dot)*v4d); y35 = 0; y41 = 0; y42 = 0; y43 = -0.5*sin(2*theta3)*(theta1_dot + theta2_dot)*((r/b)*(v1d - v2d) + v3d); y44 = 0.5*sin(2*theta3)*(theta1_dot + theta2_dot)*((r/b)*(v1d - v2d) + v3d); y45 = v4d_dot; Y = {{y11, y12, y13, y14, y15;... y21, y22, y23, y24, y25;... y31, y32, y33, y34, y35;... y41, y42, y43, y44, y45]; a_vector_es_dot = -Learn*(Y')*e; Tor 1 ************************************************************************ function Tor = fcn(vd_dot,vd,v,M1,M2,M3,r,b,Mw,Iw,Lf,L3,theta2,theta3,a_v 123 ector_es,Kp) %#codegen c2 = cos(theta2); s2 = sin(theta2); c3 = cos(theta3); s3 = sin(theta3); v1d_dot = vd_dot(1); v2d_dot = vd_dot(2); v3d_dot = vd_dot(3); v4d_dot = vd_dot(4); v1d = vd(1); v2d = vd(2); v3d = vd(3); v4d = vd(4); e = v - vd; theta3_dot = v(4); theta2_dot = v(3); theta1_dot = (r/b)*(v(1) - v(2)); y11 = (v1d_dot - v2d_dot)*(r/b)^2; y12 = (v1d_dot - v2d_dot)*(r/b)^2 + v3d_dot*(r/b); y13 = 0.5*(1 - cos(2*theta3))*(r/b)*((v1d_dot - v2d_dot)*(r/b) + v3d_dot) + ... 0.5*(r/b)*sin(2*theta3)*theta3_dot*((v1d - v2d)*(r/b) + v3d) + 0.5*(r/b)*sin(2*theta3)*(theta1_dot + 124 theta2_dot)*v4d; y14 = 0.5*(1 + cos(2*theta3))*(r/b)*((v1d_dot - v2d_dot)*(r/b) + v3d_dot) - ... 0.5*(r/b)*sin(2*theta3)*theta3_dot*((v1d - v2d)*(r/b) + v3d) - 0.5*(r/b)*sin(2*theta3)*(theta1_dot + theta2_dot)*v4d; y15 = 0; y21 = -y11; y22 = -y12; y23 = -y13; y24 = -y14; y25 = 0; y31 = 0; y32 = (v1d_dot - v2d_dot)*(r/b) + v3d_dot; y33 = 0.5*(1-cos(2*theta3))*((r/b)*(v1d_dot - v2d_dot) + v3d_dot) + ... 0.5*sin(2*theta3)*(theta3_dot*((r/b)*(v1d - v2d) + v3d) + (theta1_dot + theta2_dot)*v4d); y34 = 0.5*(1+cos(2*theta3))*((r/b)*(v1d_dot - v2d_dot) + v3d_dot) - ... 0.5*sin(2*theta3)*(theta3_dot*((r/b)*(v1d - v2d) + v3d) + (theta1_dot + theta2_dot)*v4d); y35 = 0; y41 = 0; y42 = 0; y43 = -0.5*sin(2*theta3)*(theta1_dot + theta2_dot)*((r/b)*(v1d - v2d) + v3d); y44 = 0.5*sin(2*theta3)*(theta1_dot + 125 theta2_dot)*((r/b)*(v1d - v2d) + v3d); y45 = v4d_dot; Y = {{y11, y12, y13, y14, y15;... y21, y22, y23, y24, y25;... y31, y32, y33, y34, y35;... y41, y42, y43, y44, y45]; Z1 = 0.25*(M1 + M2 + M3)*(v1d_dot + v2d_dot)*r^2 + (Mw*r^2 + Iw)*v1d_dot ... + ((M2 + M3)*Lf^2 - 2*M3*Lf*L3*c2*s3)*(r/b)^2*(v1d_dot - v2d_dot) ... - M3*Lf*L3*c2*s3*(r/b)*v3d_dot + M3*Lf*L3*(s2*s3*theta2_dot - c2*c3*theta3_dot)*(r/b)^2*(v1d - v2d)... +M3*Lf*L3*(r/b)*((s2*s3*theta2_dot - c2*c3*theta3_dot)*v3d + theta1_dot*(s2*s3*v3d - c2*c3*v4d)); Z2 = 0.25*(M1 + M2 + M3)*(v1d_dot + v2d_dot)*r^2 + (Mw*r^2 + Iw)*v2d_dot ... - ((M2 + M3)*Lf^2 - 2*M3*Lf*L3*c2*s3)*(r/b)^2*(v1d_dot - v2d_dot) ... + M3*Lf*L3*c2*s3*(r/b)*v3d_dot - M3*Lf*L3*(s2*s3*theta2_dot - c2*c3*theta3_dot)*(r/b)^2*(v1d - v2d)... - M3*Lf*L3*(r/b)*((s2*s3*theta2_dot - c2*c3*theta3_dot)*v3d + theta1_dot*(s2*s3*v3d - c2*c3*v4d)); Z3 = -M3*Lf*L3*c2*s3*(r/b)*(v1d_dot - v2d_dot) - M3*Lf*L3*s2*s3*theta1_dot*(r/b)*(v1d - v2d) - 126 M3*Lf*L3*c2*c3*theta1_dot*v4d; %G = {{0; 0; 0; -9.8*M3*L3*sin(theta3)]; Z4 = M3*L3^2*v4d_dot* + M3*Lf*L3*c2*c3*theta1_dot*(r/b)*(v1d - v2d) + M3*Lf*L3*c2*c3*theta1_dot*v3d -9.8*M3*L3*sin(theta3); Z = {{Z1; Z2; Z3; Z4]; Tor = Y*a_vector_es + Z - Kp*e; Động học hệ rô bốt di động – hệ pan-tilt – stereo camera function {{Zb_in_c, ImaF3, ImaF,X_0_es,Y_0_es,Z_0_es]= fcn(theta1,X,Y,theta2,theta3,muctieu,Lf,focus,px,py,pz,LZ, M) %#codegen c1 = cos(theta1); 127 s1 = sin(theta1); c12 = cos(theta1 + theta2); s12 = sin(theta1 + theta2); c3 = cos(theta3); s3 = sin(theta3); t11 = -s12; t12 = -c12*s3; t13 = c12*c3; t14 = c12*(px*c3 - py*s3) + s12*pz + X + Lf*c1; t21 = cos(theta1 + theta2); t22 = -sin(theta1 + theta2)*sin(theta3); t23 = sin(theta1 + theta2)*cos(theta3); t24 = s12*(px*c3-py*s3)- c12*pz + Y + Lf*s1; t31 =0; t32 = cos(theta3); t33 = sin(theta3); t34 = px*s3 + py*c3 + LZ; T = {{t11, t12, t13, t14;... t21, t22, t23, t24;... t31, t32, t33, t34;... 0, 0, 0, 1]; Oc = T\muctieu; ImaF = -(focus/Oc(3))*[Oc(1); Oc(2)]; 128 ImaF3 = -(focus/Oc(3))*[0.1+Oc(1); Oc(2);Oc(1)-0.1]; ul =ImaF3(1); vl =ImaF3(2); ur =ImaF3(3); //------------------------------------// B =0.2; j11 = (ur-ul)/B; j13 = ul*(ul-ur)/(focus*B); j14 = ul*vl/focus; j15 = -(2*focus^2+ul^2+ul*ur)/(2*focus); j16 = vl; j22 = j11; j23 = vl*(ul-ur)/(focus*B); j24 = (focus^2+vl^2)/focus; j25 = -vl*(ur+ul)/(2*focus); j26 = -(ul+ur)/(2*focus); j31 = j11; j33 = ur*(ul-ur)/(focus*B); j34 = ur*vl/focus; j35 = -(2*focus^2+ur^2+ul*ur)/(2*focus); j36 = vl; Jimg = [j11, 0, j13, j14, j15, j16;... 0, j22, j23, j24, j25, j26;... j31, 0, j33, j34, j35, j36]; Jhe = [-s12, -c12, 0, 0, 0;... -c12*s3,-s12*s3, 0, 0, 0;... c12*c3, s12*c3, 0, 0, 0;... 0 , 0 , 0, 0, -1;... 0 , 0 , c3,s3,0;... 129 0 , 0 , c3,s3,0]; J = Jimg*Jhe; q_dot = [xd; yd; t1d; t2d; t3d]; M_dot = J*q_dot; B =0.2; ul_es = M(1); vl_es = M(2); ur_es = M(3); Zb_in_c = focus*B/(ur_es - ul_es); X_C = B*(ur_es + ul_es)/(2*(ur_es - ul_es)); Y_C = B*vl_es/(ur_es - ul_es); Ball_C_estimate = {{X_C; Y_C; Zb_in_c; 1]; Ball_0_estimate = T*Ball_C_estimate ; X_0_es = Ball_0_estimate(1); Y_0_es = Ball_0_estimate(2); Z_0_es = Ball_0_estimate(3);
File đính kèm:
- luan_an_nghien_cuu_dieu_khien_ro_bot_tay_may_di_dong_bam_muc.pdf
- 1-DongGopMoi_TiengAnh_LVChung_0001.pdf
- 02-TOM TAT Luan An Du Bia.pdf
- 02-TOM TAT Luan An Tieng Anh Du Bia.pdf
- 2-DongGopMoi_TiengViet_LVChung_0001.pdf