为了解决三自由度Delta机器人工作空间的仿真问题,在总结已有的Delta机器人工作空间仿真方法的基础上,基于Matlab和Catia提出了三种具有代表性的Delta机器人工作空间仿真方法,以实验室已有的三自由度Delta机器人为研究对象,按照其结构参数使用三种方法进行工作空间的仿真,对仿真结果进行对比分析,用实验室实物测量的数据进行验证。结果表明:三种仿真方法得到的工作空间相同,说明三种仿真方法都是可行的,其中基于Matlab位置正解法的仿真方法具有主动杆输入角度范围可调的优点,仿真结果与实验室测量数据吻合度最高,将主动杆输入角度逐步增大并使用该方法进行仿真发现:工作空间由下至上,由中心至边缘,沿三根主动杆方向,逐渐增加,直至完整。 For solving the problem of workspace simulation of 3-DOF Delta Robot, we propose three represen-tational workspace simulation methods by matlab and catia after summarizing the existing methods. Taking the Delta Robot in laboratory as the research object, three methods are used to simulate workspace by its structure parameters. And the results are compared and verified through the actual measured data. The results show that the workspace models of three simulation methods are same, so all the three methods are feasible. Because the simulation method based on forward position kinematic (FPK) solution in Matlab can change the range of input angle of active rod, its result has the highest data coincidence. Gradually increase the input angle and simulate on the method based on (FPK) solution, the results show that the working space is from the bottom up, from the center to the edge, along the three active bar, gradually increase, until the whole.
姜轶辉1,焦生杰2,常丽园1
1长安大学工程机械学院,陕西 西安
2长安大学公路养护设备国家工程实验室,陕西 西安
收稿日期:2017年10月13日;录用日期:2017年10月23日;发布日期:2017年11月1日
为了解决三自由度Delta机器人工作空间的仿真问题,在总结已有的Delta机器人工作空间仿真方法的基础上,基于Matlab和Catia提出了三种具有代表性的Delta机器人工作空间仿真方法,以实验室已有的三自由度Delta机器人为研究对象,按照其结构参数使用三种方法进行工作空间的仿真,对仿真结果进行对比分析,用实验室实物测量的数据进行验证。结果表明:三种仿真方法得到的工作空间相同,说明三种仿真方法都是可行的,其中基于Matlab位置正解法的仿真方法具有主动杆输入角度范围可调的优点,仿真结果与实验室测量数据吻合度最高,将主动杆输入角度逐步增大并使用该方法进行仿真发现:工作空间由下至上,由中心至边缘,沿三根主动杆方向,逐渐增加,直至完整。
关键词 :三自由度,Delta机器人,仿真,工作空间,结构参数
Copyright © 2017 by authors and Hans Publishers Inc.
This work is licensed under the Creative Commons Attribution International License (CC BY).
http://creativecommons.org/licenses/by/4.0/
并联机构是指动平台和定平台通过两个或两个以上独立的闭环运动链相连接,机构具有两个或两个以上的自由度,以并联方式驱动的一种闭环机构 [
Delta机器人由固定不动的基座,三根相同的主动杆,三个相同的平行四边形从动支链,动平台组成。主动杆与从动支链以及从动支链与动平台之间都由虎克铰连接(结构如图1所示)。每一个主动杆都由固定在基座上的电机驱动,它们控制的输入角 θ 1 , θ 2 , θ 3 ,如图2所示。
图1. Delta机器人实物图
图2. Delta 机器人运动学简图
位置反解问题是已知动平台在基座坐标系中的位置,求解三根主动杆输入角度 θ 1 , θ 2 , θ 3 的问题。如图2所示,坐标系 { O } 固定在基座上,原点是基座的中心,坐标系 { O ′ } 固定在动平台上,原点是动平台的中心 [
定义 α i ( i = 1 , 2 , 3 ) 如图3所示。
通过几何关系可得:
[ ( R + L sin θ i − r ) cos α i − x ] 2 + [ ( R + L sin θ i − r ) sin α i − y ] 2 + ( − L cos θ i − z ) 2 = l 2 ( i = 1 , 2 , 3 ) (1)
式中: R 为基座外接圆半径, r 为动平台外接圆半径, L 为主动杆长度, l 为从动支链长度。
方程(1)可简化为:
M i cos θ i + N i sin θ i + U i = 0 ( i = 1 , 2 , 3 ) (2)
图3. Delta 机器人基座运动学简图
其中:
M i = 2 L z (3)
N i = 2 L ( R − r ) − 2 L x cos α i − 2 L y sin α i (4)
U i = x 2 + y 2 + z 2 + L 2 − l 2 + ( R − r ) 2 − 2 ( R − r ) ( x cos α i + y sin α i ) ( i = 1 , 2 , 3 ) (5)
如果定义:
t i = tan θ i 2 ( i = 1 , 2 , 3 ) (6)
sin θ 2 = t t 2 + 1 , cos θ 2 = 1 t 2 + 1 , sin θ = 2 sin θ 2 cos θ 2 = 2 t t 2 + 1 , cos θ = cos 2 θ 2 − sin 2 θ 2 = 1 − t 2 t 2 + 1 M 1 − t 2 t 2 + 1 + N 2 t t 2 + 1 + U = 0 , M ( 1 − t 2 ) + 2 t N + ( t 2 + 1 ) U = 0
可得:
( U i − M i ) t i 2 + ( 2 N i ) t i + ( M i + U i ) = 0 ( i = 1 , 2 , 3 ) (7)
故:
t i 1 , 2 = − N i ± N i 2 + M i 2 − U i 2 U i − M i ( i = 1 , 2 , 3 ) (8)
由此可解出:
θ i = 2 tan − 1 ( t i ) ( i = 1 , 2 , 3 ) (9)
Matlab编程的主要思路为:在基座坐标系下,以绝对大于机器人工作空间的立方体为搜索范围,将该立方体中的坐标使用rand函数随机取出,若该坐标经过计算后得到的判别式
Δ = N i 2 + M i 2 − U i 2 ( i = 1 , 2 , 3 ) (10)
大于等于0,则认为该点属于工作空间内,当取的点足够多时即可得到该方法下的Delta机器人的工作空间(如图4所示)。本例中取点数为2,500,000个,立方体的范围是:
− 27 0 /mm ≤ x ≤ 27 0 /mm , − 27 0 /mm ≤ y ≤ 27 0 /mm , − 36 0 /mm ≤ z ≤ 0 /mm
基于Matlab位置反解法的仿真方法特点是:
1) 在Matlab中可以直接读取工作空间模型任意点的坐标。
2) 只需改变程序中设定的结构参数 R , r , L , l ,即可对不同结构参数的Delta机器人进行工作空间仿真。
3) 位置反解法的仿真结果为机器人的路径规划和轨迹控制提供了参考。
位置正解问题是已知三个主动杆的输入角 θ 1 , θ 2 , θ 3 求解动平台中心在基座坐标系中坐标的问题。
由几何关系可知,动平台中心点坐标是以向量 O F i ( i = 1 , 2 , 3 ) (如图5所示)坐标为球心, l 为半径的三个球体的交点 [
[ P i ] O ′ = [ r cos α i r sin α i 0 ] , [ E i ] O = [ ( R + L sin θ i ) cos α i ( R + L sin θ i ) sin α i − L cos θ i ]
P E i = O F i = [ ( R − r + L sin θ i ) cos α i ( R − r + L sin θ i ) sin α i − L cos θ i ] ( i = 1 , 2 , 3 )
图4. 基于Matlab位置反解法的Delta机器人工作空间。(a) XY轴;(b) XZ轴;(c) YZ轴;(d) XYZ轴
图5. 基于Matlab位置正解法的Delta机器人工作空间。(a) XY轴;(b) XZ轴;(c) YZ轴;(d) XYZ轴
球心坐标和半径已知,故可在Matlab中编程求解。Matlab蒙特卡洛法的编程思路为:使用rand函数从 ( 0 , 2π ) (该输入角度范围可根据实际情况调整)中随机挑选输入角 θ 1 , θ 2 , θ 3 ,然后根据挑选出的数值计算三个球心的坐标,球心坐标和球的半径已知,故可计算出三个球体的交点坐标,再根据坐标中 z < 0 的范围进行筛选,当得到的点足够多时即可得到该方法下的Delta机器人的工作空间(如图6所示)。本例中得到的点数为2,000,000个。
基于Matlab位置正解法的仿真方法也具有位置反解法仿真方法的(1) (2)特点,但该方法可以根据Delta机器人主动杆实际输入角度范围进行调整,仿真结果更贴近实际工作空间。
将位置反解法中判别式(10)展开可得:
h ( x , y , z ) = [ x 2 + y 2 + z 2 + L 2 − l 2 + Δ r 2 − 2 Δ r ( x cos α i + y sin α i ) ] 2 − [ ( 2 L Δ r − 2 L x cos α i − 2 L y sin α i ) 2 + ( 2 z L ) 2 ] = [ ( x cos α i + y sin α i − Δ r ) 2 + ( x sin α i − y cos α i ) 2 + z 2 + L 2 − l 2 ] 2 − 4 L 2 [ ( x cos α i + y sin α i − Δ r ) 2 + z 2 ] (11)
图6. 基于Catia的Delta机器人工作空间。(a) 一个圆环;(b) 三个圆环;(c) 三个圆环相交;(d) 取 z < 0 的部分
其中:
Δ r = R − r (12)
由于只有判别式(10)大于等于0时,方程(7)有解,故不等式
h ( x , y , z ) ≤ 0 (13)
表示的空间范围就是该方法下的Delta机器人的工作空间。建立一个新的旋转坐标系 T ( x t , y t , z t )
{ x t = x cos α i + y sin α i y t = − x sin α i + y cos α i z t = z (14)
将工作空间边界方程
h ( x , y , z ) = 0 (15)
在旋转坐标系中简化可得:
[ ( x t − Δ r ) 2 + y t 2 + z t 2 + L 2 − l 2 ] 2 = 4 L 2 [ ( x t − Δ r ) 2 + z t 2 ] (16)
方程(16)是空间圆环的标准方程。故Delta机器人的工作空间转化为三个空间圆环的相交区域 [
基于Catia的仿真方法特点是:
1) 可以直接读取工作空间模型的体积。
2) 改变 R , r , L , l ,重新绘图即可对不同结构参数的Delta机器人进行工作空间仿真。
为了更直观的比较三个所得工作空间之间的异同,将Catia中模型导入Matlab (如图7所示),再将三个所得工作空间互相比较(如图8所示)。
如图8(a)和图8(b)所示,代表Catia模型的蓝色小圈均匀分布在位置正解法和位置反解法模型表面,图8(c)中紫色为位置正解法模型,蓝黄渐变色为位置反解法模型,在Matlab中将两模型放大观察发现两模型完全重合。以上工作空间模型的对比表明三种仿真方法的结果是相同的。
图7. Catia模型导入Matlab
图8. 三种仿真方法仿真结果对比。(a) Catia模型与位置反解法模型对比;(b) Catia模型与位置正解法模型对比;(c) 位置反解法与位置正解法模型对比
前文三种仿真方法所得工作空间输入角范围都为 ( 0 , 2π ) /rad ,实际由于Delta机器人机构之间的干涉,主动杆输入角度无法达到 ( 0 , 2π ) /rad 。本文研究的对象实际输入角度范围为 ( − π 3 , 2π 3 ) /rad ,因此基于
Matlab位置反解法和基于Catia的工作空间仿真模型由于只能进行输入角为 ( 0 , 2π ) /rad 范围的仿真,故其仿真结果必然与实际工作空间存在较大差异。故只将基于Matlab位置正解法的工作空间仿真方法在实际输入角度范围下得到的模型与实验测量数据进行对比。
参考图3,因为基座坐标系的Y轴和与A3点连接的主动杆在同一个竖直平面内,由对称性可知,在一定Z坐标值的XY平面,沿任意主动杆的方向将动平台拉到最边缘处,即可测得实际工作空间在Y轴方向上的边界点坐标数值(如图9所示)。
将不同的z坐标值可达到的y轴负方向工作空间边界值相关数据作如表1。
如表1所示,实验测量数据与基于Matlab正解法仿真结果基本一致。
设定 0 ≤ θ ≤ 2π/rad ,以 π 4 /rad 为间隔,建立8个工作空间模型。图10为 θ 值分别为 π 2 , π , 3π 2 ,2π/rad 时得到的工作空间模型。
有规律的改变 Δ r , L , l ,在Catia中对Delta机器人进行工作空间仿真并记录其体积(如图12所示)。
基于Matlab位置正解法仿真结果表明:随着输入角度增大,工作空间由下至上,由中心至边缘,沿三根主动杆方向,逐渐增加,直至完整。基于Catia的仿真结果表明:在工作空间体积较大时,工作空间模型上部大部分都存在空腔,形状和图11中模型相似。
1) 基于Matlab位置正反解法和Catia的三种工作空间仿真方法仿真结果相同,说明三种仿真方法都是可行的,但由于Delta机器人机构之间的干涉,其输入角度范围一般无法达到 ( 0 , 2π ) 且不同结构参数的Delta机器人具有不同的输入角度范围,因此只有输入角度可调的基于Matlab位置正解法的工作空间仿真方法能更好的根据实际情况进行仿真,其仿真结果与实际工作空间吻合度最高。从与实际工作空间吻合程度评价,该方法是三种方法中最好的。
图9. 实际工作空间测量示意图
图10. 不同Z值下Y轴负方向边界值对比
图11. θ 值分别为 π 2 , π , 3π 2 , 2π/rad 时得到的工作空间模型
参数 | 含义 | 数值 |
---|---|---|
L /m | 主动杆长度 | 0.1 |
l /m | 从动支链长度 | 0.27 |
R /m | 基座外接圆半径 | 0.132 |
r /m | 动平台外接圆半径 | 0.015 |
θ i ( i = 1 , 2 , 3 ) /rad | 主动杆输入角度 | / |
表1. 研究对象Delta机器人实物参数
图12. 三种参数变化对工作空间体积造成的改变
2) 由结构参数对工作空间的影响分析可得:为了保证工作空间下部可供抓取操作的任务工作空间的大小,根据工作空间随主动杆输入角度变化的规律,应尽量保证主动杆 ( 0 , π ) /rad 之间的输入角度范围不受机构间干涉的影响。
姜轶辉,焦生杰,常丽园. 三自由度Delta机器人工作空间仿真方法研究 The Study on Simulation Method of 3-DOF Delta Robot Workspace[J]. 人工智能与机器人研究, 2017, 06(04): 115-124. http://dx.doi.org/10.12677/AIRR.2017.64013