謝飛亞+傘紅軍+王晟
摘要:以三自由度RPR型“柱坐標”機器人為研究對象,用D-H參數來描述該機器人的運動學問題,利用MATLAB的機器人學工具箱Robotics toolbox對機器人進行轉換矩陣求解。采用隨機抽樣生成關節參數的蒙特卡洛法對機器人的工作空間進行求解。結果證明,機器人工作空間合理,生成的數據為后面控制系統設計,軌跡規劃,動力學分析,誤差標定等的研究提供了重要的分析依據。
Abstract: A three-degree-of-freedom RPR type "cylindrical coordinate" robot is used as the research object. The kinematics problem of the robot is described by D-H parameter. The robot matrix is solved by using Robotics toolbox of MATLAB. The Monte-Carlo method is used to solve the working space of the robot by randomly sampling the joint parameters. The results show that the working space of the robot is reasonable, and the generated data provide important analytical basis for the research of the following control system design, trajectory planning, dynamic analysis and error calibration.
關鍵詞:柱坐標機器人;運動學正解;工作空間
Key words: cylindrical coordinate robot;kinematic positive solution;workspace
中圖分類號:TP242.6 文獻標識碼:A 文章編號:1006-4311(2017)32-0116-02
0 引言
現有機器人分為串聯機器人,并聯機器人。機器人的研究常涉及運動學、精度、控制、軌跡規劃、機構設計、系統集成等方面的研究工作。由于機器人的分析涉及一系列矩陣求解,而MATLAB作為一種求解軟件為機器人的數學模型求解提供了強大的運算功能。而澳大利亞科學家Peter Corke等人開發MATLAB Robotics Toolbox工具箱為機器人的運動學、動力學、軌跡規劃等提供了簡化計算的功能函數,該工具箱還能對機器人進行圖形仿真,并能分析實驗結果。
本研究以三自由度RPR型“柱坐標機器人為研究對象”,分析機構的各關節,用四個運動學參數描述。確定一個變量和三個固定參數,并建立了標準的D-H[1]坐標系得到連桿變換矩陣,求解出運動學正解,并用MATLAB對正解數學模型進行計算。以建立的運動學正解為基礎,采取離散關節變量的蒙特卡洛法對機器人的工作空間進行求解。以上的分析為后面的控制系統及其誤差分析提供了理論依據。
1 三自由度機器人的機構分析以及連桿參數
三自由度RPR機器人的主要用途是快速拆卸螺絲,其中包括兩個轉動關節和一個移動關節。其關節1繞其底座做旋轉運動,關節2在水平方面移動,關節3繞自身的軸做旋轉運動。通過關節1的轉動,關節2的移動以及關節3的轉動可以確定該機構位姿,其關節1的旋轉角度為360°,圖1為該機構的結構簡圖。
按照標準的Denavit-Hartenberg建立連桿坐標系。其坐標系的建立規則按以下步驟進行:
①找出各關節軸或者移動軸,并畫出這些軸的延長線。下面步驟僅講述相鄰軸i和i+1的建立。
②找到關節軸i和i+1的公垂線交點,此交點即為坐標連桿坐標系的{i}的原點。
③i即為Zi的指向。
④規定Xi沿公垂線的指向,如果i和i+1軸相交,那么Xi軸方向垂直于i和i+1軸所確定的平面。
⑤按照右手螺旋定則確定Yi軸。
⑥第一個關節變量為0時,規定坐標系{0}和{1}重合。
按照以上原則建立好機器人坐標系,如圖2所示。
2 三自由度機器人的運動學分析
研究機器人的坐標系的建立是為后面運動學分析做好準備,運動學分析是后面工作空間和軌跡規劃的基礎,研究內容是末端執行裝置的工作空間和關節空間下速度加速度分析。運動學分為正運動學和逆運動學求解,由以上建立好的D-H坐標系可求得RPR型操作臂的連桿參數表1,其中L2=200。
公示(2)右端元素對應于:
nx=cosθ1cosθ3;ox=-cosθ1sinθ3;ax=sinθ1;Px=L2sinθ1+d2sinθ1;
ny=sinθ1cosθ3;oy=-sinθ1sinθ3;ay=-cosθ1;Py=-cosθ1L2-d2cosθ1
nz=sinθ3;oz=cosθ3;az=0;Pz=0。
3 三自由度機器人的工作空間分析
目前,機器人的工作空間常采用解析法,圖解法,數值法[2,3]求解。解析法是通過多次包絡來確定工作空間的邊界,但由于不直觀,運算非常繁瑣,所以通常只應用在關節數目少于3 個的機器人[4,5]。圖解法求解的工作空間的范圍,得到的是工作空間的各部一處的剖截面或者剖截線,這種方法雖然直觀性強,但是也受到自由度數的限制,當存在很多的關節數時必須進行分組處理[6,7]。數值法是以極值理論和優化方法為基礎的,計算機器人工作空間邊界曲面上的特征點,構成邊界曲線,再構成邊界曲面。具有代表性的成果有搜索法、迭代法和蒙特卡洛法[8-10]。本文采用蒙特卡洛法,利用隨機抽樣來求解末端點的工作空間的數值方法。根據上面求解的正解部分,可得到末端位置為:endprint
蒙特卡洛法的求解步驟如下:
①計算機器人的正運動學,求解得到機器人手腕末端點(TCP)在參考坐標系中的位置向量。
②各個關節隨機變量:θi=θi+×RAND()。
③將關節變量值帶入正解方程可求得末端位置。
④將末端位置向量在MATLAB中繪畫出。
運用MATLAB軟件編寫程序,取20000個離散隨機點,得到六自由度機器人的工作空間如圖3。
4 結束語
①在當前研究的機器人工作空間的多種方法上,選擇數值解為最合適的解,選用蒙特卡洛法對RPR型機器人進行工作空間分析,發現計算過程簡潔、求解速度快、一目了然等特點,有利于對機器人工作空間進行分析。②通過正向運動學的建模,求解出RPR機器人末端處對X,Y,Z三軸的位置矩陣,對工作空間起到描述的作用。,為后面的蒙特卡洛法的分析奠定基礎。③采用MATLAB Robotics toolbox工具箱對機器人的末端位置進行數學編程,并通過編寫程序模擬工作空間,生成了工作空間的實狀,為以后控制系統設計,軌跡規劃,動力學分析,誤差標定等的研究提供了重要的分析依據。
參考文獻:
[1]蔡自興,謝斌.機器人學[M].二版.北京:清華大學出版社, 2015.
[2]曹毅,李秀娟,寧祎,等.三維機器人工作空間及幾何誤差分析[J].機械科學與技術,2006,25(12):1458-1502.
[3]崔玉潔,張祖立,范磊.基于蒙特卡洛方法的采摘機械手工作空間分析[J].農機化研究,2007,12:62-64.
[4]趙獻丹,何慶中,劉明等.基于MATLAB的微電驅串聯機械手工作空間域解算與仿真[J].四川理工學院學報,2006,19(5):5-8.
[5]Xu W F,Li L T,Liang B,et al. Workspace analysis of space 3R robot [J]. Journal of Astronautics,2007,28(5):1389-1394.
[6]譚朝陽.機械手工作空間分析[J].機械,2003,30(3):15-17.
[7]郭立,高文杰.衛生陶瓷施釉機器人工作空間的研究[J].機床與液壓,2007,35(6):29-32.
[8]Diao X M, Ou M. Workspace analysis of a 6-DOF cable robot for hardware-in-the-loop dynamic simulation [A]. Proceedings of the 2006 IEEE/RSJ International Conference on Intelligent Robots and Systems[C], IROS,2006: 4103-4108.
[9]Piao M B, et al. Research on workspace of a two-arm surgical robot[A]. Proceedings of the 2007 IEEE International Conference on Mechatronics and Automation[C], 2007.
[10]傅紹文,姚郁.六自由度Stewart平臺四維工作空間搜索方法[J].哈爾濱工業大學學報,2007,39(1):11-13.endprint