Ứng dụng mạng neural nhân tạo bù sai số phi hình học cho tay máy robot

Bài báo này trình bày phƣơng pháp bù sai số phi hình học (hay còn gọi phi tuyến) sử dụng mạng neural nhân tạo (ANN). Trƣớc tiên tham số hình học đƣợc mô hình và nhận diện bằng phƣơng pháp nhận diện tham số có sử dụng mô hình toán của tay máy robot, sau đó sai số phi hình học đƣợc bù bằng mạng ANN. Mạng ANN đƣợc dùng cho bù sai số vị trí còn lại đƣợc cho là gây ra bởi các nguồn sai số phi hình học.

pdf6 trang | Chia sẻ: thuyduongbt11 | Ngày: 11/06/2022 | Lượt xem: 226 | Lượt tải: 0download
Bạn đang xem nội dung tài liệu Ứng dụng mạng neural nhân tạo bù sai số phi hình học cho tay máy robot, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
1376 ỨNG DỤNG MẠNG NEURAL NHÂN TẠO BÙ SAI SỐ PHI HÌNH HỌC CHO TAY MÁY ROBOT Nguyễn Hoài Nhân Viện Kỹ thuật HUTECH, trƣờng Đại học Công nghệ TP.HCM (HUTECH) Email: nh.nhan@hutech.edu.vn TÓM TẮT Bài báo này trình bày phƣơng pháp bù sai số phi hình học (hay còn gọi phi tuyến) sử dụng mạng neural nhân tạo (ANN). Trƣớc tiên tham số hình học đƣợc mô hình và nhận diện bằng phƣơng pháp nhận diện tham số có sử dụng mô hình toán của tay máy robot, sau đó sai số phi hình học đƣợc bù bằng mạng ANN. Mạng ANN đƣợc dùng cho bù sai số vị trí còn lại đƣợc cho là gây ra bởi các nguồn sai số phi hình học. 1. GIỚI THIỆU Tay máy đƣợc sử dụng rộng rãi trong một số ứng dụng cần độ chính xác cao nhƣ lập trình ngoại tuyến, gia công cơ khí, phẫu thuật xƣơng vv. Vì một số nguyên do ch ng hạn nhƣ dung sai chế tạo, dung sai lắp ghép tay máy, cho nên tay máy đƣợc chế tạo và mô hình động học tƣơng ứng của nó trong bộ điều khiển có sự khác biệt và nó làm giảm độ chính xác vị trí của tay máy. Do đó, các tay hiệu chỉnh để nâng cao độ chính xác vị trí. Một trong những phƣơng pháp hiệu chỉnh độ chính vị trí xác của robot là xây dựng mô hình động học của tay máy robot, đƣa vào mô hình các tham số động học nếu nó là nguồn gốc gây gây sai số vị trí của robot [1-3]. Tuy nhiên, không phải lúc nào cũng xác định đƣợc nguồn sai số này một cách rõ ràng, nhất là các yếu tố phi tuyến. Vì vậy sử dụng mạng ANN để học quy luật phi tuyến của mối quan hệ giữa đầu vào là giá trị góc khớp va đầu ra là vị trí của điểm thao tác trên khâu cuối tay máy sẽ khắc phục đƣợc khó khăn, hạn chế của phƣơng pháp hiệu chỉnh sử dụng mô hình toán. Phƣơng pháp nâng cao độ chính xác vị trí tay máy robot mà không cần sử dụng mô hình toán đƣợc phát triển bởi các nghiên cứu [4 - 11]. Phƣơng pháp này xấp xỉ mối quan hệ giữa vị trí góc khớp và sai số vị trí khâu tác động cuối tay máy hoặc giữa vị trí khâu cuối và sai số vị trí. Để xấp xỉ các mối quan hệ này, mô t số nghiên cứu đã sử dụng mạng mạng hƣớng tâm cơ sở (RBFN) [4], giải thuật logic hàm mờ [5] và mạng ANN [6, 7]. Trong nghiên cứu [10,11], mạng ANN mô tả quy luật giữa vị trí góc và sai số vị trí góc tƣơng ứng, sau đó mạng ANN này đƣợc huấn luyện bằng dữ liệu từ lời giải của mô hình động học đảo do nhà sản xuất cung cấp (danh nghĩa) nên không chính xác. Nghiên cứu [6, 7] sử dụng mạng ANN để mô tả mối quan hệ giữa vị trí tay máy tại các điểm trong không gian 3D và các sai số vị trí tƣơng ứng. Mối quan hệ đƣợc thiết lập trong [6, 7] là không phù hợp vì sai số không phụ thuộc vị trí điểm cuối mà phụ thuộc góc khớp tay máy. Trong bài báo này, một phƣơng pháp bù sai số phi hình học sử dụng mạng ANN để bù sai số không thể mô hình hoặc rất khó để mô. Trƣớc tiên tham số hình đƣợc diện bằng phƣơng pháp nhận diện tham số [3], sau đó sai số vị trí gây ra bởi các nguồn sai số không thể mô hình hoặc mô hình phức tạp đƣợc bù bằng mạng ANN. 1377 2. MÔ HÌNH ĐỘNG HỌC TAY MÁY ROBOT Xét tay máy nối tiếp PUMA nhƣ mô tả trong Hình 1, mô hình động học tƣơng ứng của nó đƣợc xây dựng nhƣ mô tả trong tài liệu [1]. z1 z2 z3 z6 y3 z0, z5 z4 x0 θ2 θ3 θ1 x2x1 Hình 1 Tay máy robot PUMA và các hệ toạ độ khâu Các thông số hình học trong mô hình động học tay máy đƣợc mô tả nhƣ trên sẽ đƣợc nhận diện dựa trên dữ liệu đo vị trí điểm cuối (đầu ra) và vị trí góc các khớp tay máy (đầu vào) theo phƣơng pháp tối ƣu bình phƣơng cực tiểu [3]. Đọc giả tham khảo phƣơng pháp này trong tài liệu đã công bố trƣớc đây [1]. Sau khi tìm đƣợc mô hình động học, các yếu tố phi hình học (thƣờng là phi tuyến, khó mô hình hoặc không thể mô hình) vẫn còn gây ra sai số vị trí điểm thao tác của tay máy khá đáng kể. Vì vậy mạng ANN đƣợc sử dụng để tìm mối liên hệ giữa đầu vào là vị trí góc khớp, đầu ta là sai số vị trí điểm thao tác của tay máy. 3. CẤU TRÚC MẠNG ANN Sau khi bù sai số hình học [3], sai số vị trí còn lại của khâu tác động cuối tay máy đƣợc cho là gây ra bởi các nguồn sai số phi hình học có đặc tính cực kỳ phi tuyến. Do đó, mạng ANN sẽ là thích hợp để bù sai số vị trí gây ra bởi các sai số phi hình học này. ∆x ∆y ∆z θ1 θ3 θ2 (output layer)(input layer) (hidden layer) Hình 2 Cấu trúc mạng ANN Vì sai số vị trí phần lớn là do các sai số phi hình học thuộc các khâu gần đế cố định gây ra (ở các khâu và khớp 1, 2, 3). Vì vậy, một ANN có 3 lớp sẽ đƣợc cấu trúc nhƣ Hình 2. Lớp đầu vào đƣợc hình thành từ 3 nút, mỗi nút biểu diễn một góc khớp i , i = 1÷3. Lớp n gồm có 40 neuron. Cấu trúc của một neuron lớp n tổng quát đƣợc biểu diễn trong Hình 3. Hàm kích hoạt của neuron này có dạng hàm số tan-sigmoid nhƣ Hình 5a, trong đó, là tham số độ dốc của hàm truyền tan-sigmoid. Lớp xuất đƣợc hình thành từ 3 neuron. Cấu trúc của một neuron lớp xuất tổng quát đƣợc biểu diễn trong Hình 4. Hàm kích hoạt của neuron lớp 1378 xuất này có dạng hàm tuyến tính đƣợc biểu diễn nhƣ Hình 5b, trong đó là hệ số góc của hàm. Những neuron này biểu diễn 3 thành phần của vector sai số vị trí tay máy [ ]Tx y z    X . ∑ f b n a p1 1 output n = ∑wipi + b a = f(n) f (n) = 2/(1+ e-n)-1 pn-1 pn w1 w2 wn-1 wn input Hình Cấu trúc của một neural lớp n ∑ f b n a p1 1 output n = ∑wipi + b a = f(n) f (n) = n p2 pn-1 pn w1 w2 wn-1 wn input Hình 4 Cấu trúc của một neural lớp xuất n f (n) = 2/(1+ e-n)-1 f (n) f (n) n f (n) = .n a) b) 1 -1 Hình Các hàm kích hoạt neural a) hàm tan-sigmoid, b) hàm bậc một 4. HUẤN LUYỆN MẠNG ANN VÀ PHƢƠNG PHÁP B SAI SỐ PHI TUYẾN TRONG TAY MÁY ROBOT Trong nghiên cứu này, phƣơng pháp học có giám sát đƣợc sử dụng để huấn luyện mạng. Một giải thuật lan truyền ngƣợc đƣợc sử dụng để huấn luyện mạng ANN [15, 16]. Giải thuật truyền ngƣợc cập nhật trọng số theo nguyên tắc ( 1) ( ) ( ) ij ij w k w k g k   (1) trong đó ( ) ij w k là trọng số kết nối từ neuron i đến neuron j tại thời điểm k,  là tốc độ học, ( )g k là độ dốc tại thời điểm k. Sơ đồ của quá trình huấn luyện mạng ANN đƣợc mô tả nhƣ trong Hình 6. Một tập các giá trị góc danh nghĩa tại mỗi vị trí góc của tay máy n 1 2 3[ ] T   đƣợc sử dụng làm dữ liệu đầu vào, dữ liệu đầu ra là sai số vị trí còn lại của tay máy sau khi bù tham số động học (tham số hình học g p và góc bù g  ). Cụ 1379 thể, các cặp giá trị dữ liệu huấn luyện sẽ là ( ) ( ) n non { , }j jX , j = 1’N với N là số điểm đo, trong đó vector non X đƣợc tính nhƣ sau: non m g  X X X . Xg = f(θn +∆θg, pg) {θn} Xm - + Xg Xm - Xg Real Robot PUMA 560 Hình Sơ đồ huấn luyện mạng ANN Xg= f(θn + ∆θg, pg) (trained ANN) Real Robot PUMA 560 θn +Xg ||Xr – Xd || ≤ θn = f -1(Xd, pn) θn Iterative Inverse θmod= θn+(Jθ) -1(Xd-Xp) ∆Xnon + Xp Xp θmod Xr Xd θmod Hình Bù sai số phi hình học cho tay máy bằng mạng ANN Sau khi mạng ANN đƣợc huấn luyện, nó có thể đƣợc sử dụng để ƣớc lƣợng giá trị sai số vị trị của khâu tác động cuối khi cho trƣớc một giá trị góc ở các khớp tay máy. Cách thức bù sai số phi tuyến đƣợc mô tả nhƣ trong Hình 7. Vị trí mong muốn d X của khâu cuối tay máy (tƣơng ứng với một bộ góc danh nghĩa tƣơng ứng n  ). Sử dụng mô hình động học thuận với các tham số động học thực (có đƣợc nhờ quá trình nhận diện bằng mô hình) lời giải của động học thuận tay máy tại vị trí góc danh nghĩa n  là g X . Sai số vị trí do các nguồn sai số phi hình học gây ra non X đƣợc dự đoán bằng mạng ANN. Vị trí điểm cuối đƣợc tính bằng bộ điều khiển tay máy là: p g non  X X X . Một giải thuât tính giá trị góc hiệu chỉnh mod [3] đƣợc sử dụng. Ma trận Jacobian của tay máy J theo các biến i (i = 1’6) đƣợc tính bằng cộng thức [3]. Nếu góc hiệu chỉnh này đƣợc áp dụng vào bộ điều khiển, khâu tác động cuối tay máy thực sẽ đi tới một vị trí rX rất gần vị trí mong muốn dX thoả mãn điều kiện: r d|| ||  X X , trong đó là giới hạn trên của độ chính xác tay máy sau hiệu chỉnh. 1380 5. KẾT LUẬN Nghiên cứu hiện tại đƣa ra một phƣơng pháp bù sai số phi hình học sử dụng mạng ANN đƣợc sử dụng để bù sai số không thể mô hình hoặc rất khó để mô hình. Sau khi tham số hình học đƣợc nhận diện và cập nhật trong mô hình động học của tay máy robot. Mạng ANN đƣợc dùng cho bù sai số vị trí còn lại đƣợc cho là gây ra bởi các nguồn sai số phi tuyến là phù hợp và hiệu quả. TÀI LIỆU THAM KHẢO [1] W. Veitschegger, C.-H. Wu, Robot Accuracy Analysis Based on Kinematics, IEEE Journal of Robotics and Automation, 2 (3), (1986), 171-179. [2] Z. S. Roth, B. Mooring, B. Ravani, An overview of robot calibration, IEEE Journal of Robotics and Automation 3 (5) (1987) 377-385. [3] S. Hayati, K. Tso, G. Roston, Robot Geometry Calibration, in: Proc. of IEEE Int. Conf. on Robotics and Automation, 2 (1988), 947-951. [4] J. H. Jang, S. H. Kim and Y. K. Kwak, Calibration of geometric and non-geometric errors of an industrial robot, Robotica, 19 (3) (2001) 311-321. [5] Y. Bai, On the comparison of model-based and modeless robotic calibration baesd on a fuzzy interpolation method, Int. J. Adv. Manuf Technol, 31 (2007) 1234-1250. [6] S. Aoyagi et al., Improvement of Robot Accuracy by Calibrating Kinematic Model Using a Laser Tracking System, Compensation of Non-Geometric Errors Using Neural Networks and Selection of Optimal Measuring Points Using Genetic Algorithm, in: Proc. of IEEE/ Int. Conf. on Intelligent Robots and Systems, (2010) 5660-5665. [7] D. Wang, Y. Bai, J. Zhao, Robot manipulator calibration using neural network and a camera-based measurement system, Trans. of the Institute of Meas. and Control, 34 (1) (2010) 105-121. [8] G. Alici, B. Shirinzadeh, A systematic technique to estimate positioning errors for robot accuracy improvement using laser interferometry based sensing, Mechanism and Machine Theory, 40 (8) (2005), 879-906. [9] G. Alıcı, R. Jagielski, Y. A. Şekercioğlu, B. Shirinzadeh, Prediction of geometric errors of robot manipulators with Particle Swarm Optimisation method, Robotics and Autonomous Systems, 54 (12) (2006) 956-966. [10] N. Takanashi, 6 DOF Manipulators Absolute Positioning Accuracy Improvement Using a Neural- Network, in: Proc. of IEEE Int. Workshop on Intelligent Robots and Systems, 2 (1990) 635-640. [11] X. Zhong, J. Lewis, F. L. N Nagy, Inverse robot calibration using artificial neural networks, Engineering Applications of Artificial Intelligence, 9 (1) (1996) 83-93. [12] M. Amitabha, D. Ballard, Self-Calibration in Robot Manipulators, in: Proc. of IEEE Int. Conf. on Robotics and Automation, 2, (1985) 1050- 1057. [13] X.-L. Zhong, J.M. Lewis, A New Method for Autonomous Robot Calibration, in: Proceedings of IEEE Int. Conf. on Robotics and Automation, 2 (1995) 1790-1795. 1381 [14] J. J. Craig, Introduction to Robotics: Mechanics and control, Addison Wiley, 2nd Edition, (1989) 87-93. [15] H. N. Robert, Theory of the Backpropagation Neural Network, in: Int. Joint Conf. on Neural Networks, 1 (1989) 593-605. [16] A.T.C. Goh, Back-propagation neural networks for modeling complex systems, Artificial Intelligence in Engineering, 9 (3) (1995) 143-151.