【技术实现步骤摘要】
多自由度机械手臂控制系统、方法、存储介质、计算机
本专利技术属于工业机器人
,尤其涉及一种多自由度机械手臂控制系统、方法、存储介质、计算机。
技术介绍
目前在工业机器人领域中,广泛应用的机械手臂多是四自由度的。多自由度机械手臂在实际运用中普及度不高,存在求解复杂、联动运动抖动等问题。综上所述,现有技术存在的问题是:目前多自由度机械手臂存在求解复杂、联动运动抖动。
技术实现思路
针对现有技术存在的问题,本专利技术提供了一种多自由度机械手臂控制系统、方法、存储介质、计算机。本专利技术是这样实现的,一种多自由度机械手臂控制方法,所述多自由度机械手臂控制方法包括以下步骤:第一步,统一3轴设置、统一坐标系建立坐标系;进行坐标系之间的变换,将坐标点的参考系由上一个转换为下一个,通过坐标系的叠加推导出末端点坐标方程组,确认末端点的位置坐标。推导过程详见表1,最终末端点位置方程组:在X轴上的等式:X=(-((L8+L7)*sin(f)*cos(e)*sin(d)+((L8+L7)*cos(f)+L6+L5)*cos(d)+L4+L3))*cos(a)-(-((-(((L8+L7)*sin(f)*cos(e)*cos(d)-((L8+L7)*cos(f)+L6+L5)*sin(d))*cos(c)-((L8+L7)*sin(f)*sin(e))*sin(c)))*cos(b)-((L8+L7)*sin(f)*cos(e)*sin(d)+((L8+L7)*cos(f)+L6+L5 ...
【技术保护点】
1.一种多自由度机械手臂控制方法,其特征在于,所述多自由度机械手臂控制方法包括以下步骤:/n第一步,统一3轴设置、统一坐标系建立坐标系;进行坐标系之间的变换,将坐标点的参考系由上一个转换为下一个,通过坐标系的叠加推导出末端点坐标方程组,确认末端点的位置坐标;/n第二步,确定ID6190旋转模块的旋转角度,使得机械手臂正向面对目标点,求解个各选转模块的旋转角度;/n第三步,通过对轨迹进行微分,逐段求解,然后通过调用机械手臂底层的控制接口MoveWithVel()和MoveToPos()实现整个联动控制过程,最后借助3D仿真系统验证正确性;/n第四步,使用自带的EV-MRobot三维仿真系统和Matlab的机器人工具箱,显示七自由度机械手臂的位姿。/n
【技术特征摘要】
1.一种多自由度机械手臂控制方法,其特征在于,所述多自由度机械手臂控制方法包括以下步骤:
第一步,统一3轴设置、统一坐标系建立坐标系;进行坐标系之间的变换,将坐标点的参考系由上一个转换为下一个,通过坐标系的叠加推导出末端点坐标方程组,确认末端点的位置坐标;
第二步,确定ID6190旋转模块的旋转角度,使得机械手臂正向面对目标点,求解个各选转模块的旋转角度;
第三步,通过对轨迹进行微分,逐段求解,然后通过调用机械手臂底层的控制接口MoveWithVel()和MoveToPos()实现整个联动控制过程,最后借助3D仿真系统验证正确性;
第四步,使用自带的EV-MRobot三维仿真系统和Matlab的机器人工具箱,显示七自由度机械手臂的位姿。
2.如权利要求1所述的多自由度机械手臂控制方法,其特征在于,所述第一步末端点位置方程组包括:
在X轴上的等式:
X=(-((L8+L7)*sin(f)*cos(e)*sin(d)+((L8+L7)*cos(f)+L6+L5)*cos(d)+L4+L3))*cos(a)-(-((-(((L8+L7)*sin(f)*cos(e)*cos(d)-((L8+L7)*cos(f)+L6+L5)*sin(d))*cos(c)-((L8+L7)*sin(f)*sin(e))*sin(c)))*cos(b)-((L8+L7)*sin(f)*cos(e)*sin(d)+((L8+L7)*cos(f)+L6+L5)*cos(d)+L4+L3)*sin(b)))*sin(a);
在Y轴上的等式:
Y=(-((L8+L7)*sin(f)*cos(e)*sin(d)+((L8+L7)*cos(f)+L6+L5)*cos(d)+L4+L3))*sin(a)+(-((-(((L8+L7)*sin(f)*cos(e)*cos(d)-((L8+L7)*cos(f)+L6+L5)*sin(d))*cos(c)-((L8+L7)*sin(f)*sin(e))*sin(c)))*cos(b)-((L8+L7)*sin(f)*cos(e)*sin(d)+((L8+L7)*cos(f)+L6+L5)*cos(d)+L4+L3)*sin(b)))*cos(a);
在z轴上的等式:
z=(-(((L8+L7)*sin(f)*cos(e)*cos(d)-((L8+L7)*cos(f)+L6+L5)*sin(d))*cos(c)-((L8+L7)*sin(f)*sin(e))*sin(c)))*sin(b)+((L8+L7)*sin(f)*cos(e)*sin(d)+((L8+L7)*cos(f)+L6+L5)*cos(d)+L4+L3)*cos(b)+L2+L1。
3.如权利要求1所述的多自由度机械手臂控制方法,其特征在于,所述第二步求解个各选转模块的旋转角度中,采用空间定位逆推策略,包括:
分步法,将整个空间定位逆推过程分为初步定位和精确定位,初步定位过程完成机械手臂逼近目标点的过程,通过ID6190、ID6191旋转模块实现面对和相切像个环节,之后精确定位过程是实现剩余一个半径长度的空间距离的定位过程,通过ID6193、ID6194旋转模块调整长度,达到目标点;
分段法,首先是控制七自由度机械手臂,使正向面对目标点位置,之后根据末端手爪的位置点与ID6191模块旋转中心的距离进行分区间分析,在各个区间内,控制某个旋转模块的旋转相应的角度,从而依次计算出剩余旋转模块的旋转角度;最后实现整个空间定位逆推算法。
4.如权利要求3所述的多自由度机械手臂控制方法,其特征在于,所述分步法具体包括:1)初步定位1:根据末端手爪的位置点在XoY平面上的投影点P(X,Y),通过三角关系,确定ID6190旋转模块的旋转角度:
使得机械手臂正向面对目标点;
初步定位2:获取末端手爪的位置点与基坐标原点距离,设置以末端手爪的位置点为球心,固定长度为半径的球面,然后通过空间位置关系确定ID6191旋转模块的旋转角度:
e=d-c
即:
使得整个机械手臂与该球面相切,切点为ID6193的旋转中心;
1)精确定位:根据末端点位置方程组,带入已知旋转角度,得到三元二次方程组,用于控制机械手臂完成剩下一个半径长度的空间距离的定位,然后调用Matlab的solve()接口求解来获取ID6193、ID6194、ID6196旋转模块的旋转角度,最终实现逆推策略;
ID6193、ID6194、ID6196旋转模块的角度分别为d、f、e,列出方程组:
X=(-(L7+L8)*sin(f)*sin(e))*cos(a)-(-((-((L7+L8)*sin(f)*cos(e)*cos(d)-((L7+L8)*cos(f)+L6+L5)*sin(d)))*cos(b)-((L7+L8)*sin(f)*cos(e)*sin(d)+((L7+L8)*cos(f)+L6+L5)*cos(d)+L4+L3)*sin(b)))*sin(a);
Y=(-(L7+L8)*sin(f)*sin(e))*sin(a)+(-((-((L7+L8)*sin(f)*cos(e)*cos(d)-((L7+L8)*cos(f)+L6+L5)*sin...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。