一种基于回声状态网络的冗余机械臂追踪控制方法

文档序号:27429145发布日期:2021-11-17 21:26阅读:80来源:国知局
一种基于回声状态网络的冗余机械臂追踪控制方法

1.本发明涉及机械臂追踪控制领域,尤其涉及一种基于回声状态网络的冗余机械臂追踪控制方法。


背景技术:

2.当机械臂的驱动自由度(如机械臂的关节角个数)多于完成任务所需要的自由度时,机械臂可以被称为冗余机械臂。由于其额外的自由度,冗余机械臂具备更高的灵活性和安全性,因此他们在各个领域中有着广阔的潜在应用前景。然而该类机械臂的额外自由度和结构特点也给机械臂的控制带来了挑战,已有的冗余机械臂控制方法,基于雅可比矩阵伪逆的方法存在的缺点是,该方法需要知道准确的机械臂模型信息(如连杆长度),从而计算雅可比矩阵的值,而各种不确定性因素的存在会影响模型信息的准确性,从而影响控制方案的准确性。


技术实现要素:

3.为了解决上述问题,本发明的目的是提供一种基于回声状态网络的冗余机械臂追踪控制方法,不需要知道冗余机械臂的模型信息,仅需将末端执行器位置信息作为反馈,不需要末端执行器的速度和加速度信息,并且具备较高的追踪控制精确度。
4.本发明所采用的第一技术方案是:一种基于回声状态网络的冗余机械臂追踪控制方法,包括以下步骤:
5.s1、初始化机械臂关节角度θ(0)和基于回声状态网络的类小脑模型的参数,并输入目标轨迹信息p
d

6.s2、采集机械臂数据并训练前馈神经网络控制器,得到训练完成的前馈神经网络;
7.s3、基于回声状态网络的类小脑模型根据输入的当前时刻关节角变化量δθ和机械臂末端执行器下一时刻目标位置p
d
(n+1)计算目标轨迹补偿信息y(n+1);
8.s4、根据目标轨迹补偿信息y(n+1)计算下一时刻的期望轨迹并输入至训练完成的前馈神经网络;
9.s5、测量机械臂末端执行器位置p
a
(n)和机械臂关节角度θ(n),并输入至训练完成的前馈神经网络,输出下一时刻关节角度θ(n+1);
10.s6、根据下一时刻关节角度θ(n+1)控制机械臂运动并追踪目标轨迹;
11.s7、测量机械臂末端执行器当前位置p
a
(n+1)并更新声状态网络的类小脑模型的输出权重w
out

12.s8、循环步骤s2~s7直至完成目标轨迹的追踪控制。
13.进一步,所述采集机械臂数据并训练前馈神经网络控制器,得到训练完成的前馈神经网络这一步骤,其具体还包括,其具体还包括:
14.s21、记录第k个时刻的关节角度θ(k)和机械臂末端执行器位置p
a
(k);
15.s22、控制机械臂随机运动并得到关节角度变化量δθ;
16.s23、更新第k+1个时刻的关节角度θ(k+1)=θ(k)+δθ,并使用第k+1个时刻关节角θ(k+1)控制机械臂运动,测量末端执行器位置p
a
(k+1);
17.s24、存储一组训练数据,其中输入为[p
a
(k);θ(k);p
a
(k+1)],训练的输出为θ(k+1),修改计时变量k=k+1;
[0018]
s25、循环步骤s21~s24直至k大于预设阈值,得到训练集;
[0019]
s26、以第k个时刻的关节角度θ(k)、第k个时刻的末端执行器实际位置p
a
(k)以及第k+1个时刻的末端执行器位置p
a
(k+1)为输入,以第k+1个时刻的机械臂关节角度θ(k+1)为输出,基于训练集训练前馈神经网络控制器,得到训练完成的前馈神经网络。
[0020]
进一步,所述基于回声状态网络的类小脑模型包括传入单元、粒状细胞、浦肯野细胞和传出单元。
[0021]
进一步,所述基于回声状态网络的类小脑模型根据输入的当前时刻关节角变化量δθ和机械臂末端执行器下一时刻目标位置p
d
(n+1)计算目标轨迹补偿信息y(n+1)这一步骤,其具体包括:
[0022]
s31、将第n个时刻的机械臂关节角变化量δθ(n)和机械臂末端执行器第n+1个时刻目标位置p
d
(n+1)拼接,作为类小脑模型的传入单元;
[0023]
s32、更新粒状细胞在第n+1个时刻的状态x(n+1);
[0024]
s33、通过平行纤维将粒状细胞在第n+1个时刻的状态传递给浦肯野细胞;
[0025]
s34、计算传出单元在第n+1个时刻的状态y(n+1),得到第n+1个时刻的目标轨迹补偿量。
[0026]
进一步,所述更新粒状细胞在第n+1个时刻的状态的更新x(n+1)公式如下:
[0027]
x(n+1)=f(w
in
u(n+1)+wx(n)),
[0028]
上式中,f(
·
)=[f1,f2,

,f
n
]
t
表示粒状细胞的输出激活函数,w
in
表示传入单元和粒状细胞之间输入连接权重,w表示粒状细胞内部节点之间连接权重。
[0029]
进一步,所述计算传出单元在第n+1个时刻的状态y(n+1)的计算公式如下:
[0030]
y(n+1)=tanh(w
out
p(n+1)).
[0031]
上式中,tanh表示双曲正切激活函数,w
out
表示浦肯野细胞和传出单元之间的输出连接权重,p(n+1)表示浦肯野细胞在第n+1个时刻的状态。
[0032]
进一步,所述测量机械臂末端执行器当前位置p
a
(n+1)并更新声状态网络的类小脑模型的输出权重w
out
这一步骤,其具体包括:
[0033]
测量机械臂末端执行器当前位置p
a
(n+1)并根据目标位置p
d
(n+1)和末端执行器当前位置p
a
(n+1)计算末端执行器的位置误差e;
[0034]
根据位置误差e计算类小脑模型输出权重的变化量δw
out

[0035]
根据输出权重的变化量δw
out
对类小脑模型的输出权重w
out
进行更新。
[0036]
进一步,所述计算类小脑模型输出权重的变化量δw
out
的计算公式:
[0037]
δw
out
=ep
t
(n+1)
[0038]
上式中,t表示向量转置。
[0039]
本发明方法的有益效果是:本发明通过本发明将类小脑控制器与数据驱动的学习方法进行融合,使得本方案能够不需要知道机械臂的模型参数信息,在一定程度上应对各种不确定性因素的影响,从而有效地完成冗余机械臂的追踪控制任务。
附图说明
[0040]
图1是本发明一种基于回声状态网络的冗余机械臂追踪控制方法的步骤流程图;
[0041]
图2是本发明具体实施例的控制示意图;
[0042]
图3是本发明具体实施例前馈神经网络训练流程示意图;
[0043]
图4是本发明具体实施例任务空间中的目标轨迹和机械臂末端执行器的实际轨迹(第一个任务周期)示意图;
[0044]
图5是本发明具体实施例任务空间中的目标轨迹和机械臂末端执行器的实际轨迹(第十个任务周期)示意图;
[0045]
图6是本发明具体实施例控制冗余机械臂完成十个周期的轨迹追踪任务的误差变化。
具体实施方式
[0046]
下面结合附图和具体实施例对本发明做进一步的详细说明。对于以下实施例中的步骤编号,其仅为了便于阐述说明而设置,对步骤之间的顺序不做任何限定,实施例中的各步骤的执行顺序均可根据本领域技术人员的理解来进行适应性调整。
[0047]
参照图1和图2,本发明提供了一种基于回声状态网络的冗余机械臂追踪控制方法,包括以下步骤:
[0048]
s1、初始化机械臂关节角度θ(0)和基于回声状态网络的类小脑模型的参数,并输入目标轨迹信息p
d

[0049]
具体地,以一个6自由度冗余机械臂为例,任务空间的维度为3,给定机械臂的初始关节角度θ(0)=[1.675;2.843;

3.216;4.187;

1.71;0.77]弧度。然后对类小脑模型进行初始化,其中粒状细胞的单元数n=400,传入单元和传出单元的数量随具体的输入输出维度而确定,粒状细胞的初始状态向量x(0)均设为0。输入权重矩阵w
in
和内部连接权重矩阵w都是随机初始化为[

1,1]之间的数值,并且在模型工作过程中保持不变。假设内部连接权重被随机初始化为则缩放后的内部连接权重矩阵为其中缩放因子α需稍小于即可,表示矩阵的谱半径。输出权重矩阵w
out
的值全部被初始化为0,输出权重矩阵更新的学习率设为η=0.001。最后,在任务空间中定义目标轨迹的数学表达式
[0050][0051]
其中ι=0.1米表示目标轨迹的半径,t
d
=20秒表示追踪任务的周期,其中时间采样间隔设为τ=0.05秒。
[0052]
s2、采集机械臂数据并训练前馈神经网络控制器,得到训练完成的前馈神经网络;
[0053]
具体地,控制机械臂随机地运动,采集机械臂数据,训练一个三层的前馈神经网络控制器,该机械臂控制器为近似的逆运动学求解器,使用该控制器控制冗余机械臂时会存在较大的误差,因此需要使用一个类小脑模型来改善控制器的精确度。
[0054]
s3、基于回声状态网络的类小脑模型根据输入的当前时刻关节角度变化量δθ和机械臂末端执行器下一时刻目标位置p
d
(n+1)计算目标轨迹补偿信息y(n+1);
[0055]
具体地,当前时刻即第n个时刻,当n为0的时候,关节角变化量δθ被初始化为零向量,当n大于0的时候,关节角变化量的计算方式为δθ=θ(n)

θ(n

1),其中θ(n)和θ(n

1)分别表示第n个时刻和第n

1个时刻的前馈神经网络的输出。
[0056]
s4、根据目标轨迹补偿信息y(n+1)计算下一时刻的期望轨迹并输入至训练完成的前馈神经网络;
[0057]
s5、测量机械臂末端执行器位置p
a
(n)和机械臂关节角度θ(n),并输入至训练完成的前馈神经网络,输出下一时刻关节角度θ(n+1);
[0058]
具体地,测量位置和关节角度采用传感器设备测量。
[0059]
s6、根据下一时刻关节角度θ(n+1)控制机械臂运动并追踪目标轨迹;
[0060]
s7、测量机械臂末端执行器当前位置p
a
(n+1)并更新声状态网络的类小脑模型的输出权重w
out

[0061]
s8、循环步骤s2~s7直至完成目标轨迹的追踪控制。
[0062]
进一步作为本方法的优选实施例,所参照图3,述采集机械臂数据并训练前馈神经网络控制器,得到训练完成的前馈神经网络这一步骤,其具体还包括:
[0063]
s21、记录第k个时刻的关节角度θ(k)和机械臂末端执行器位置p
a
(k);
[0064]
s22、控制机械臂随机运动并得到关节角度变化量δθ;
[0065]
s23、更新第k+1个时刻的关节角度θ(k+1)=θ(k)+δθ,并使用第k+1个时刻关节角θ(k+1)控制机械臂运动,测量末端执行器位置p
a
(k+1);
[0066]
s24、存储一组训练数据,其中输入为[p
a
(k);θ(k);p
a
(k+1)],训练的输出为θ(k+1),修改计时变量k=k+1;
[0067]
s25、循环步骤s21~s24直至k大于预设阈值,得到训练集;
[0068]
s26、以第k个时刻的关节角度θ(k)、第k个时刻的末端执行器实际位置p
a
(k)以及第k+1个时刻的末端执行器位置p
a
(k+1)为输入,以第k+1个时刻的机械臂关节角度θ(k+1)为输出,基于训练集训练前馈神经网络控制器,得到训练完成的前馈神经网络。
[0069]
进一步作为本方法的优选实施例,所述基于回声状态网络的类小脑模型包括传入单元粒状细胞浦肯野细胞和传出单元其中传入层包括k个单元,粒状细胞包括n个单元,浦肯野细胞包括n个单元,传出层包括l个单元,t表示时刻。在传入单元和粒状细胞之间存在输入连接权重在粒状细胞内部节点之间存在连接权重在粒状细胞和浦肯野细胞之间存在平行纤维,而在浦肯野细胞和传出单元间则存在输出连接权重
[0070]
首先,所有粒状细胞的状态被初始化为类小脑模型工作过程中,粒状细胞的各个单元在第n+1个时刻的状态更新公式如下:
[0071]
x(n+1)=f(w
in
u(n+1)+wx(n)),
[0072]
上式中,w
in
表示传入单元和粒状细胞之间输入连接权重,w表示粒状细胞内部节点之间连接权重,f(
·
)=[f1,f2,

,f
n
]
t
表示粒状细胞的输出激活函数,通常采用sigmoid激活函数:
[0073][0074]
浦肯野细胞则通过平行纤维与粒状细胞相连,所以浦肯野细胞在第n+1个时刻的状态为p(n+1)=x(n+1)。而传出单元的状态的计算方式为y(n+1)=tanh(w
out
p(n+1)),其中tanh(
·
)为双曲正切激活函数,其定义为:
[0075][0076]
输入权重w
in
和内部连接权重w都是随机初始化为[

1,1]之间的数值,并且在模型工作过程中保持不变。值得注意的是,根据已有的理论,为了保证模型能正常工作,通常需要对内部连接权重w进行缩放。假设内部连接权重被随机初始化为则缩放后的内部连接权重矩阵为其中缩放因子α需稍小于即可,表示矩阵的谱半径。在类小脑模型工作过程中,需要训练的是输出层权重w
out
,首先需要将w
out
初始化为值全部为零的矩阵,然后对输出权重进行训练。w
out
的训练方式可分为离线训练和在线训练两种方式,其中离线训练是指在n个连续的时刻给定输入信号u=[u(1),u(2),

,u(n)],然后收集每个时刻对应的粒状细胞状态x=[x(1),x(2),

,x(n)]和期望的输出y
d
=[y
d
(1),y
d
(2),

,y
d
(n)],最后使用最小二乘法计算出满足一下要求的w
out

[0077]
进一步作为本方法优选实施例,所述基于回声状态网络的类小脑模型根据输入的当前时刻关节角变化量δθ和机械臂末端执行器下一时刻目标位置p
d
(n+1)计算目标轨迹补偿信息y(n+1)这一步骤,其具体包括:
[0078]
s31、将第n个时刻的机械臂关节角变化量δθ(n)和机械臂末端执行器第n+1个时刻目标位置p
d
(n+1)拼接,作为类小脑模型的传入单元;
[0079]
具体地,拼接公式如下:
[0080]
u(n+1)=[δθ(n);p
d
(n+1)].
[0081]
s32、更新粒状细胞在第n+1个时刻的状态x(n+1);
[0082]
s33、通过平行纤维将粒状细胞在第n+1个时刻的状态传递给浦肯野细胞;
[0083]
s34、计算传出单元在第n+1个时刻的状态y(n+1),得到第n+1个时刻的目标轨迹补偿量。
[0084]
进一步作为本方法优选实施例,所述测量机械臂末端执行器当前位置p
a
(n+1)并更新声状态网络的类小脑模型的输出权重w
out
这一步骤,其具体包括:
[0085]
测量机械臂末端执行器当前位置p
a
(n+1)并根据目标位置p
d
(n+1)和末端执行器当前位置p
a
(n+1)计算末端执行器的位置误差e,如下式:
[0086]
e=p
d
(n+1)

p
a
(n+1).
[0087]
根据位置误差e计算类小脑模型输出权重的变化量δw
out
,如下式:
[0088]
δw
out
=ep
t
(n+1)
[0089]
上式中,t表示向量转置。
[0090]
根据输出权重的变化量δw
out
对类小脑模型的输出权重w
out
进行更新,如下式:
[0091]
w
out
=w
out
+ηδw
out
[0092]
基于以上技术方案,控制冗余机械臂连续完成十个周期的轨迹追踪任务,其中第
一个周期和第十个周期的追踪结果如图4和图5所示。在第一个周期中,机械臂末端执行器的初始位置与目标轨迹有一定的距离,可以看出末端执行器的实际移动轨迹很快收敛到目标轨迹上。在第十个周期中,可以看到末端执行器的实际移动轨迹与目标轨迹几乎一致。在这十个任务周期中,每一个任务周期的追踪误差的变化如图6所示,可以看出,在第十个任务周期的时候,追踪误差平均值的数量级为10
‑4米。以上结果体现了本发明所提出的方案的有效性。
[0093]
一种基于回声状态网络的冗余机械臂追踪控制装置:
[0094]
至少一个处理器;
[0095]
至少一个存储器,用于存储至少一个程序;
[0096]
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现如上所述一种基于回声状态网络的冗余机械臂追踪控制方法。
[0097]
上述方法实施例中的内容均适用于本装置实施例中,本装置实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法实施例所达到的有益效果也相同。
[0098]
以上是对本发明的较佳实施进行了具体说明,但本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本技术权利要求所限定的范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1