当前位置: 首页 > 专利查询>集美大学专利>正文

多自由度机械手臂控制系统、方法、存储介质、计算机技术方案

技术编号:24338031 阅读:63 留言:0更新日期:2020-06-02 23:12
本发明专利技术属于工业机器人技术领域,公开了一种多自由度机械手臂控制系统、方法、存储介质、计算机,建立坐标系;进行建立的坐标系之间的变换,将坐标点的参考系由上一个转换为下一个,确认末端点的位置坐标;确定ID6190旋转模块的旋转角度,使得机械手臂正向面对目标点,求解个各选转模块的旋转角度;通过对轨迹进行微分,逐段求解,然后通过调用机械手臂底层的控制接口实现整个联动控制过程;使用自带的EV‑MRobot三维仿真系统和Matlab的机器人工具箱,显示七自由度机械手臂的位姿。本发明专利技术避免机械臂出现同一空间坐标对应多个位姿的解;在联动运动过程进行优化,提高机械手臂联动的稳定性,减少抖动。

Control system, method, storage medium and computer of multi DOF Manipulator

【技术实现步骤摘要】
多自由度机械手臂控制系统、方法、存储介质、计算机
本专利技术属于工业机器人
,尤其涉及一种多自由度机械手臂控制系统、方法、存储介质、计算机。
技术介绍
目前在工业机器人领域中,广泛应用的机械手臂多是四自由度的。多自由度机械手臂在实际运用中普及度不高,存在求解复杂、联动运动抖动等问题。综上所述,现有技术存在的问题是:目前多自由度机械手臂存在求解复杂、联动运动抖动。
技术实现思路
针对现有技术存在的问题,本专利技术提供了一种多自由度机械手臂控制系统、方法、存储介质、计算机。本专利技术是这样实现的,一种多自由度机械手臂控制方法,所述多自由度机械手臂控制方法包括以下步骤:第一步,统一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)*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。表1表1:坐标解析推导过程第二步,确定ID6190旋转模块的旋转角度,使得机械手臂正向面对目标点,求解个各选转模块的旋转角度;空间定位逆推策略,分为两种:“分步法”、“分段法”。分步法,将整个空间定位逆推过程分为“初步定位”和“精确定位”两步,初步定位过程完成机械手臂逼近目标点的过程,通过ID6190、ID6191旋转模块实现面对和相切像个环节,之后精确定位过程是实现剩余一个半径长度的空间距离的定位过程,通过ID6193、ID6194旋转模块调整长度,达到目标点。流程如图9分步法逆推策略流程图所示。具体实现过程2)初步定位1:根据末端手爪的位置点在XoY平面上的投影点P(X,Y),通过三角关系,确定ID6190旋转模块的旋转角度:使得机械手臂正向面对目标点,如图10初步定位1示意图。初步定位2:获取末端手爪的位置点与基坐标原点距离,设置以末端手爪的位置点为球心,固定长度为半径的球面,然后通过空间位置关系确定ID6191旋转模块的旋转角度:e=d-c即:使得整个机械手臂与该球面相切,切点为ID6193的旋转中心,如图11初步定位2示意图。3)精确定位:根据末端点位置方程组,带入已知旋转角度,得到三元二次方程组,用于控制机械手臂完成剩下一个半径长度的空间距离的定位,然后调用Matlab的solve()接口求解来获取ID6193、ID6194、ID6196旋转模块的旋转角度,最终实现逆推策略。如图12精确定位示意图。设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(d)))*cos(b)-((L7+L8)*sin(f)*cos(e)*sin(d)+((L7+L8)*cos(f)+L6+L5)*cos(d)+L4+L3)*sin(b)))*cos(a)z=(-((L7+L8)*sin(f)*cos(e)*cos(d)-((L7+L8)*cos(f)+L6+L5)*sin(d)))*sin(b)+((L7+L8)*sin(f)*cos(e)*sin(d)+((L7+L8)*cos(f)+L6+L5)*cos(d)+L4+L3)*cos(b)+L2+L1其中Li为各个旋转模块旋转中心之间的距离,a、b、c、g分别为ID6190、ID6191、ID6192、ID6195的旋转模块角度,都为常数。最后调用Matlab的solve()接口求解,从而得到全部模块的旋转角度,最终实现整个“分步法”逆推策略算法的实现。进一步,分段法,首先是控制七自由度机械手臂,使其正向面对目标点位置,之后根据末端手爪的位置点与ID6191模块旋转中心的距离进行分区间分析,在各个区间内,控制某个旋转模块的旋转相应的角度,从而依次计算出剩余旋转模块的旋转角度。最后实现整个空间定位逆推算法。流程如图13分段法逆推流程图所示。具体包括:1)对末端手爪的位置点坐标进行投影到XOY平面上,得到相应的X,Y坐标,确定ID6190的旋转角度,控制机械手臂运动,使得整个机械手臂转到正向面对目标点的位置。与分步法的第一步一致。2)根据末端手爪的位置点与ID6191模块旋转中心的距离进行分段分析,若在min到m1区间内,控制ID6194旋转模块为90°,然后根据空间位置关系,求解出ID6193和ID6191的旋转角度。若在m1到maX区间内,获取ID619本文档来自技高网...

【技术保护点】
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...

【专利技术属性】
技术研发人员:王罡郭芳泽吴定都
申请(专利权)人:集美大学
类型:发明
国别省市:福建;35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1