一种基于六维力传感器信息学习的工业机器人示教方法

文档序号:31750430发布日期:2022-10-11 21:19阅读:53来源:国知局

1.本发明属于智能制造领域,更具体的,是一种基于六维力传感信息学习的工业机器人示教方法。


背景技术:

2.随着科学技术的发展,工业机器人在生产生活中扮演着越来越重要的角色,在制造业自动化、智能化的大趋势下,对工业机器人的人机交互的性能有了更高的要求。但工业机器人示教作为生产过程中不可缺少的环节,仍然存在示教过程繁琐,人机交互性差的问题。
3.工业机器人示教是指通过引导机器人的末端执行器,或操作机械模拟装置,使机器人完成预期的运动顺序、速度、位姿等动作并将示教的内容存储在控制器的过程。在实际生产中,工业机器人由于其电机和减速器方案的特殊性,往往采用遥控示教、离线示教和间接示教的方法;前两种方法分别需要借助示教器和上位机程序来实现,交互性比较差,示教过程繁琐,不利于提高生产效率;而间接示教往往是基于视觉或力觉传感器进行示教,考虑到工业机器人工作环境的复杂性,基于视觉传感器进行示教在部分复杂工况下不能达到良好的效果;提出了一种基于六维力传感信息学习的工业机器人示教方法,改善了工业机器人示教过程中人机交互性差和示教过程繁琐的问题。


技术实现要素:

4.为了简化工业机器人的示教流程,改善工业机器人示教过程中的交互体验差的问题,本发明旨在提供一种基于六维力传感信息学习的工业机器人示教方法。
5.为实现上述目的,本发明所采用的技术方案主要包括以下步骤:
6.步骤1、配备两台机器人设备,分别为六轴工业机器人和六轴协作机器人,六轴工业机器人末端和六轴协作机器人末端均连接六维力传感器;
7.步骤2、建立神经网络模型,并通过对六轴协作机器人的多次示教获得机器人末端运动特性库,并利用该运动特性库对所建立的神经网络模型进行训练,具体步骤如下:
8.步骤2a、设置六轴协作机器人示教采样周期t1,并由操作者拖动六轴协作机器人末端进行示教,示教过程中,每个采样周期,对六轴协作机器人关节角信号和末端的六维力信息采样一次,直至完成一次示教任务;
9.所述对六轴协作机器人关节角信号和末端的六维力信息进行采样,其中六轴协作机器人关节角信号为六轴协作机器人的六个关节角数据,六维力信息则是机器人末端沿x,y,z三个坐标轴方向的接触力信号和绕x,y,z三个坐标轴的力矩信号;
10.步骤2b、重复执行步骤2a,完成多次示教任务,获得六轴协作机器人的多次示教任务所对应的关节角数据和末端力传感器数据;
11.步骤2c、使用贝塞尔曲线对所获得的所有力传感器数据进行预处理,得到平滑力数据以及各个采样周期的力增量数据;并通过正运动学计算出六轴协作机器人的末端位姿
及其对应采样周期的末端速度;
12.作为优选,使用贝塞尔曲线对所获得的所有力传感器数据进行预处理,具体方法为,将力传感器数据代入n次贝塞尔曲线公式,n为示教过程总时长s与采样周期t1的商,得到贝塞尔曲线,则处理后的第i个样本点平滑力数据其中i是取值范围为[0,s/t1]的整数;
[0013]
作为优选,各个采样周期的力增量数据计算方法为,
[0014]
作为优选,正运动学计算出六轴协作机器人的末端位姿用x,y,z坐标和zyx欧拉角来描述;
[0015]
步骤2d、建立机器人末端运动特性库,该运动特性库由步骤2c中获得的平滑力数据、各个采样周期的力增量数据和末端速度构成;
[0016]
步骤2e、构建以力传感器数据、各个周期力增量数据为输入,以末端速度为输出的神经网络;并使用步骤2d建立的运动特性库中的数据对神经网络进行训练,得到最终回归模型;
[0017]
作为优选,所述神经网络为bp神经网络,由一个输入层、两个隐藏层和一个输出层组成:输入层的节点个数为12,所对应的输入是机器人末端沿x,y,z三个坐标轴方向的接触力信号、绕x,y,z三个坐标轴的力矩信号以及各个力信号与力矩信号相对于上一采样周期的增量;两个中间层的节点个数都为10;输出层的节点数为6,分别对应机器人末端沿x,y,z三个坐标轴方向的速度和绕x,y,z三个坐标轴的角速度;选择relu函数为激活函数,均方误差函数为损失函数;
[0018]
步骤3、将训练得到的最终回归模型应用到六轴工业机器人示教过程中,具体步骤如下:
[0019]
步骤3a、设置六轴工业机器人示教采样周期t2,并由操作者拖动六轴工业机器人末端,同时由末端连接的六维力传感器实时采集末端六维力信息;
[0020]
步骤3b、在每个采样周期t2内,对采集到的末端六维力信息fe进行处理并生成末端驱动力f和各个采样周期的力增量,并将其实时输入到所述的最终回归模型中,输出为每个采样周期t2对应的六轴工业机器人末端期望速度;
[0021]
作为优选,对采集到的末端六维力信息fe进行处理并生成末端驱动力fd和各个采样周期的力增量,具体方法为,采用一个分段函数h(fe)对末端驱动力fd进行映射,即fd=h(fe),其中,h(fe)表达式如下:
[0022][0023]
其中,k
p
为增益系数,其取值范围为(0,+∞);k
t
为运动阈值,其取值与步骤2c中平滑力的最大值有关。
[0024]
对末端六维力信息fe进行处理的目的是,防止过大的外力输入让六轴工业机器人末端瞬时速度过大;
[0025]
步骤3c、利用所获得的六轴工业机器人末端期望速度,对六轴工业机器人末端的期望位姿进行求解,最后通过逆运动学求解,完成一次步进运动;
[0026]
作为优选,对六轴工业机器人末端的期望位姿进行求解,具体为,将k时刻的期望位姿表示为k-1时刻估计的末端位姿p
k-1
和k时刻六轴工业机器人末端位姿变化量δpk之和,如式(3);而k-1时刻的估计末端位姿p
k-1
,则用k-1时刻的期望位姿与k-1时刻的测量位姿z
k-1
进行表征,如式(1),其中,kw为置信度系数,取值范围为[0,1],置信度越接近0,表明期望位姿越可信,置信度越接近1,表明测量位姿越可信;k时刻六轴工业机器人末端位姿变化量δpk可由式(2)求解,其中vk与v
k-1
分别为k时刻与k-1时刻最终回归模型输出的六轴工业机器人末端速度,采样周期t2为已知量;以上过程的数学模型如下:
[0027][0028]
δpk=(vk+v
k-1
)
·
t2/2
ꢀꢀ
(2)
[0029][0030]
在实际示教过程中,首先获得k-1时刻的期望位姿与测量位姿z
k-1
,计算出k-1时刻的估计末端位姿p
k-1
;然后对k时刻采集的六轴工业机器人末端的六维力传感器信号进行处理,得到末端驱动力fd后将其输入最终回归模型得到六轴工业机器人末端速度vk,并计算出k时刻六轴工业机器人末端位姿变化量δpk;将k-1时刻的估计末端位姿p
k-1
与k时刻六轴工业机器人末端位姿变化量δpk相加,得到k时刻的期望位姿完成一次迭代;再重复以上步骤,直到示教结束,逐次计算pk,p
k+1

pn,其中n为示教过程中采样周期的个数;
[0031]
通过逆运动学求解,完成一次步进运动,具体为,已知期望位姿,根据pieper准则推导出六轴工业机器人运动学逆解,然后通过ros中的moveit模块,完成一次步进运动;
[0032]
步骤3d、重复步骤3b和3c,直至操作者停止拖动六轴工业机器人末端,示教完成。
具体实施方式
[0033]
为了简化工业机器人的示教流程,改善工业机器人示教过程中的交互体验,本发明旨在提供一种基于六维力传感信息学习的工业机器人示教方法。
[0034]
为实现上述目的,本发明所采用的技术方案主要包括以下步骤:
[0035]
步骤1、配备两台机器人设备,分别为六轴工业机器人和六轴协作机器人,六轴工业机器人末端和六轴协作机器人末端均连接六维力传感器;
[0036]
步骤2、建立神经网络模型,并通过对六轴协作机器人的多次示教获得机器人末端运动特性库,并利用该运动特性库对所建立的神经网络模型进行训练,具体步骤如下:
[0037]
步骤2a、设置六轴协作机器人示教采样周期t1,并由操作者拖动六轴协作机器人末端进行示教,示教过程中,每个采样周期,对六轴协作机器人关节角信号和末端的六维力信息采样一次,直至完成一次示教任务;
[0038]
所述对六轴协作机器人关节角信号和末端的六维力信息进行采样,其中六轴协作机器人关节角信号为六轴协作机器人的六个关节角数据,六维力信息则是机器人末端沿x,y,z三个坐标轴方向的接触力信号和绕x,y,z三个坐标轴的力矩信号;
[0039]
所述对六轴协作机器人关节角信号和末端的六维力信息进行采样,采样具体方法为,通过ros中的rosbag模块录入六轴协作机器人关节角信号和末端的六维力信息,然后将rosbag文件转换为txt格式;
[0040]
步骤2b、重复执行步骤2a,完成多次示教任务,获得六轴协作机器人的多次示教任务所对应的关节角数据和末端力传感器数据;
[0041]
步骤2c、使用贝塞尔曲线对所获得的所有力传感器数据进行预处理,得到平滑力数据以及各个采样周期的力增量数据;并通过正运动学计算出六轴协作机器人的末端位姿及其对应采样周期的末端速度;
[0042]
作为优选,使用贝塞尔曲线对所获得的所有力传感器数据进行预处理,具体方法为,将力传感器数据代入n次贝塞尔曲线公式,n为示教过程总时长s与采样周期t1的商,得到贝塞尔曲线,则处理后的第i个样本点平滑力数据其中i是取值范围为[0,s/t1]的整数;
[0043]
作为优选,各个采样周期的力增量数据计算方法为,
[0044]
作为优选,正运动学计算出六轴协作机器人的末端位姿用x,y,z坐标和zyx欧拉角来描述;
[0045]
所述通过正运动学计算出六轴协作机器人的末端位姿:首先建立机器人各个连杆间坐标系关系,然后通过d-h参数表计算出各个坐标系间转换的齐次变换矩阵,最后推导出机器人运动学正解;
[0046]
步骤2d、建立机器人末端运动特性库,该运动特性库由步骤2c中获得的平滑力数据、各个采样周期的力增量数据和末端速度构成;
[0047]
步骤2e、构建以力传感器数据、各个周期力增量数据为输入,以末端速度为输出的神经网络;并使用步骤2d建立的运动特性库中的数据对神经网络进行训练,得到最终回归模型;
[0048]
作为优选,所述神经网络为bp神经网络,由一个输入层、两个隐藏层和一个输出层组成:输入层的节点个数为12,所对应的输入是机器人末端沿x,y,z三个坐标轴方向的接触力信号、绕x,y,z三个坐标轴的力矩信号以及各个力信号与力矩信号相对于上一采样周期的增量;两个中间层的节点个数都为10;输出层的节点数为6,分别对应机器人末端沿x,y,z三个坐标轴方向的速度和绕x,y,z三个坐标轴的角速度;选择relu函数为激活函数,均方误差函数为损失函数;
[0049]
步骤3、将训练得到的最终回归模型应用到六轴工业机器人示教过程中,具体步骤如下:
[0050]
步骤3a、设置六轴工业机器人示教采样周期t2,并由操作者拖动六轴工业机器人末端,同时由末端连接的六维力传感器实时采集末端六维力信息;
[0051]
步骤3b、在每个采样周期t2内,对采集到的末端六维力信息fe进行处理并生成末端驱动力f和各个采样周期的力增量,并将其实时输入到所述的最终回归模型中,输出为每个采样周期t2对应的六轴工业机器人末端期望速度;
[0052]
作为优选,对采集到的末端六维力信息fe进行处理并生成末端驱动力fd和各个采样周期的力增量,具体方法为,采用一个分段函数h(fe)对末端驱动力fd进行映射,即fd=h(fe),其中,h(fe)表达式如下:
[0053][0054]
其中,k
p
为增益系数,其取值范围为(0,+∞);k
t
为运动阈值,其取值与步骤2c中平滑力的最大值有关。
[0055]
对末端六维力信息fe进行处理的目的是,防止过大的外力输入让六轴工业机器人末端瞬时速度过大;
[0056]
步骤3c、利用所获得的六轴工业机器人末端期望速度,对六轴工业机器人末端的期望位姿进行求解,最后通过逆运动学求解,完成一次步进运动;
[0057]
作为优选,对六轴工业机器人末端的期望位姿进行求解,具体为,将k时刻的期望位姿表示为k-1时刻估计的末端位姿p
k-1
和k时刻六轴工业机器人末端位姿变化量δpk之和,如式(3);而k-1时刻的估计末端位姿p
k-1
,则用k-1时刻的期望位姿与k-1时刻的测量位姿z
k-1
进行表征,如式(1),其中,kw为置信度系数,取值范围为[0,1],置信度越接近0,表明期望位姿越可信,置信度越接近1,表明测量位姿越可信;k时刻六轴工业机器人末端位姿变化量δpk可由式(2)求解,其中vk与v
k-1
分别为k时刻与k-1时刻最终回归模型输出的六轴工业机器人末端速度,采样周期t2为已知量;以上过程的数学模型如下:
[0058][0059]
δpk=(vk+v
k-1
)
·
t2/2
ꢀꢀ
(2)
[0060][0061]
在实际示教过程中,首先获得k-1时刻的期望位姿与测量位姿z
k-1
,计算出k-1时刻的估计末端位姿p
k-1
;然后对k时刻采集的六轴工业机器人末端的六维力传感器信号进行处理,得到末端驱动力fd后将其输入最终回归模型得到六轴工业机器人末端速度vk,并计算出k时刻六轴工业机器人末端位姿变化量δpk;将k-1时刻的估计末端位姿p
k-1
与k时刻六轴工业机器人末端位姿变化量δpk相加,得到k时刻的期望位姿完成一次迭代;再重复以上步骤,直到示教结束,逐次计算pk,p
k+1

pn,其中n为示教过程中采样周期的个数;
[0062]
通过逆运动学求解,完成一次步进运动,具体为,已知期望位姿,根据pieper准则推导出六轴工业机器人运动学逆解,然后通过ros中的moveit模块,完成一次步进运动;
[0063]
步骤3d、重复步骤3b和3c,直至操作者停止拖动六轴工业机器人末端,示教完成。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1