本发明涉及模仿学习,尤其是涉及一种基于dmp与卷积神经网络的机械臂多模态抓取任务实现方法。
背景技术:
1、模仿学习是现在备受关注的一种技术,是机器学习中的一种技术,通过让学习者观察和模仿人类专家的行为和决策来实现自主学习的过程。它是一种监督式学习的变体,它利用人类专家提供的示范数据和反馈来训练模型,并且可以应用于各种各样的任务,而将模仿学习用与机器人控制领域,让机器人通过观察人类或其他机器人的行为来学习执行特定的任务,可以大大减少编程人员的工作量。
2、应用于机器人领域的模仿学习方法由很多种,其中较为著名的是在2002年由ijspeert等人提出的动态运动基元(dmp)模型。dmp利用了机器学习中的回归方法,通过学习一组基本的运动模式,即动态运动基元,来生成复杂的运动。动态运动基元是一组由非线性微分方程表示的基本的运动模式,能够模拟出各种连续的运动模式,例如握取、抓取、走路等。已经广泛应用于机器人学、控制工程和运动控制等领域,并已经在许多实际应用中得到了验证,例如机器人操作、航空航天、生物力学和康复医疗等。
3、在通过dmp方法完成机械臂抓取任务的过程中,并不能够将任务很好地泛化到不同抓取物体以及不同抓取位置的情况。
技术实现思路
1、本发明的目的是为了提供一种基于dmp与卷积神经网络的机械臂多模态抓取任务实现方法,将少量示教泛化到机械臂自主执行的特定抓取任务中,实现高精度、高效率、广适用性的抓取。
2、本发明的目的可以通过以下技术方案来实现:
3、一种基于dmp与卷积神经网络的机械臂多模态抓取任务实现方法,包括以下步骤:
4、步骤1)采集目标物体图像,构建训练数据集,构建卷积神经网络并利用训练数据集进行训练,输出目标物体的位置;
5、步骤2)选取部分目标物体的位置对机械臂进行抓取示教任务,收集机械臂末端轨迹以及人手部肌电信号;
6、步骤3)将肌电信号转化为手臂末端的刚度信息,同时将刚度信息与机械臂末端轨迹分别用dmp建模,确定阻抗dmp模型参数,构建全连接神经网络的训练数据集;
7、步骤4)构建全连接神经网络并进行训练,所述全连接神经网络的输入为目标物体的位置以及时钟信号,输出为末端轨迹和阻抗dmp模型参数;
8、步骤5)针对特定任务,利用全连接神经网络输出的阻抗dmp模型参数对轨迹与刚度进行建模,基于阻抗控制的方法控制机械臂依照轨迹和刚度进行任务的执行。
9、进一步的,所述采集目标物体图像,构建数据集具体为:在机械臂的工作空间内随机放置目标物品,利用摄像头捕获多组样本图片,并记录每张图片对应目标物品的基坐标系坐标,构建卷积神经网络的训练数据集。
10、进一步的,所述步骤2)包括以下步骤:
11、步骤2-1)将机械臂置于拖动示教模式,示教者佩戴肌电信号收集装置拖动机械臂末端完成对工作空间内目标物体的抓取任务,记录任务过程中机械臂末端位置轨迹以及人体肌电信号;
12、步骤2-2)将目标物品放置在工作空间内的不同位置,重复步骤2-1),获取多组数据。
13、进一步的,所述步骤3)中,将肌电信号转化为手臂末端的刚度信息具体为:
14、
15、其中,ken∈r6×6,kj∈r7×7分别表示人体上肢端点刚度和关节刚度;表示人体手臂雅可比矩阵的伪逆,表示手臂姿态;qh∈r7表示手臂关节角;fex∈r6表示施加在人体上肢端点的外力;kj基于肌电信号确定。
16、进一步的,用p表示刚度,所述人体上肢关节刚度kj表示为一个肌肉收缩指数α(p)和一个固有不变刚度的乘积:
17、
18、其中,肌肉收缩指数为:
19、
20、变量α(p)是基于肌电信号确定的肌肉激活指标,λ1、λ2为常数系数。
21、进一步的,所述步骤3)中,将刚度信息与机械臂末端轨迹分别用dmp建模的建模过程包括以下步骤:
22、步骤3-2-1)构建单模态dmp模型:
23、
24、
25、
26、其中,是轨迹的初始位置,是轨迹的终止位置,是一个对角矩阵,其中向量g-y0是对角线上的分量,是非线性强迫项,是按比例的运动速度,表示相位;
27、单模态dmp模型中的强迫项由径向基函数表示:
28、
29、ψk(s)=exp(-hk(s-ck)2)
30、其中,ck为沿轨迹相位分布的高斯函数的中心,hk为高斯函数的宽度,hk和ck的值是固定的,且ck沿相位均匀分布,wk是未知参数,通过回归方法习得;
31、步骤3-2-2)为了保证基于同一任务参数的末端轨迹和阻抗同步,将单模态dmp模型修改为轨迹与阻抗同步的多模态dmp模型:
32、
33、
34、
35、其中第一个式子为正则系统,后两个式子表示两个转换系统,一个用于编码位置轨迹,另一个用于刚度轮廓,p代表末端刚度;
36、步骤3-2-3)对于采集到的示教轨迹,用形式表示,其中θk,n、分别为k时刻关节n对应的位置,速度和加速度;参考运动轨迹的建模过程,将输入的n替换为p,得到刚度轨迹dmp模型:
37、
38、
39、其中,是刚度轨迹的初始位置,是刚度轨迹的终止位置,是一个对角矩阵,其中向量gp-y0p是对角线上的分量,是非线性强迫项;由于正则系统一致,参数τ,x,z一致;
40、步骤3-2-4)根据示教轨迹,获得期望的强迫项:
41、
42、ftar(s)为示教轨迹对应期望强迫项函数值;
43、步骤3-2-5)利用线性回归算法,定义损失函数,计算径向基函数的参数ωk,得到基于特定任务的期望dmp模型的参数。
44、进一步的,所述损失函数为:
45、
46、其中是示教轨迹对应期望强迫项函数值,是网络输出的强迫项函数值。
47、进一步的,所述全连接神经网络用于训练dmp模型的强迫项参数。
48、进一步的,所述全连接神经网络通过参数的偏差来判断网络是否学习到示教轨迹的特征,定义全连接神经网络的损失函数如下:
49、
50、通过梯度下降算法来更新网络参数。
51、进一步的,所述步骤5)包括以下步骤:
52、步骤5-1)将步骤4)训练得到的强迫项参数应用到dmp模型中,通过动态运动原语获得基于特定任务参数的刚度和轨迹信息;
53、步骤5-2)定义机械臂关节空间阻抗控制模型:
54、
55、其中,为机器人关节刚度矩阵,表示关节阻尼矩阵,θd和是用dmp算法生成的期望关节轨迹和角速度,θm和是被测关节轨迹和角速度,用于补偿重力、科氏力和其他动力,输出的u为个关节的转矩;
56、步骤5-3)利用刚度信息估计机械臂阻抗控制模型的参数:
57、kr=εken
58、
59、
60、其中,kr为笛卡尔刚度,与估计的人体上肢端点刚度ken成正比,ε是预先设定的比例系数,jr是机械臂的雅可比矩阵,η为选定的正常系数;
61、步骤5-4)根据运动轨迹和刚度轨迹,依照阻抗控制模型进行特定抓取任务的执行。
62、与现有技术相比,本发明具有以下有益效果:
63、(1)本发明基于卷积神经网络对任务参数进行提取,可以实现端到端的任务执行效果,省去了任务定义任务参数的步骤。
64、(2)本发明将估计的机器人末端刚度作为任务的控制器输出,在保持机器人的柔顺性和安全性的同时提高机器人的任务执行性能。
65、(3)本发明利用dmp模型同时对运动轨迹和刚度轮廓进行编码,实现了这两方面的技能特征从人到机器人的传递,实现机器人对人类示教的多模态学习。