机械臂轨迹规划方法——动态运动基元法
一、轨迹示教学习方法
1. 基于样条
基于样条的轨迹学习方法是通过样条函数拟合采集到的人体运动数据实现的,规划生成的轨迹平滑性好,但泛化能力不足
参考文献
1、 Ude A, Atkeson C G, Riley M. Planning of joint trajectories for humanoid robots
using B-spline wavelets[C]. Proceedings 2000 ICRA. Millennium Conference.
IEEE International Conference on Robotics and Automation. Symposia
Proceedings (Cat. No. 00CH37065). IEEE, 2000, 3: 2223-2228
2、Wan N, Xu D, Ye H. Improved cubic B-spline curve method for path optimization of manipulator obstacle avoidance[C]//2018 Chinese Automation Congress (CAC). IEEE, 2018: 1471-1476.
2. 基于统计模型
基于统计模型的轨迹学习方法主要是利用高斯混合模型或隐马尔可夫模型拟合运动的各个特征进行学习的轨迹规划方法,计算效率相对较低,且生成的轨迹不连续
参考文献
1、Tso S K, Liu K P. Hidden Markov model for intelligent extraction of robot trajectory command from demonstrated trajectories[C]//Proceedings of the IEEE International Conference on Industrial Technology (ICIT’96). IEEE, 1996: 294-298.
2、Pignat E, Calinon S. Learning adaptive dressing assistance from human demonstration[J]. Robotics and Autonomous Systems, 2017, 93: 61-75.
3、Calinon S, Guenter F, Billard A. On learning, representing, and generalizing a task in a humanoid robot[J]. IEEE Transactions on Systems, Man, and Cybernetics, Part B (Cybernetics), 2007, 37(2): 286-298.
4、Zeestraten M J A, Havoutis I, Silvério J, et al. An approach for imitation learning on Riemannian manifolds[J]. IEEE Robotics and Automation Letters, 2017, 2(3): 1240-1247.
3. 基于仿射变换
依据人体运动的仿射不变性开发的轨迹规划方法,其不依赖于具体模型, 可以直接变换关节角时间序列;但是由于人体与机器人在结构和运动能力上的差异性, 该方法无法快速的将人体运动映射成机器人运动
参开文献
1、Pham Q C, Nakamura Y. Affine trajectory deformation for redundant manipulators[J]. Robotics: Science and Systems VIII, 2013: 329.
2、Pham Q C, Nakamura Y. A new trajectory deformation algorithm based on affine transformations[J]. IEEE Transactions on Robotics, 2015, 31(4): 1054-1063.
4. 基于动态运动基元的轨迹学习方法
DMPs 是一种以非线性微分方程形式的动态系统来编码运动的策略,其计算效率高,生成的轨迹连续,泛化简单,被广泛用于机械臂的移动与操作上
参考文献
1、Ijspeert A J, Nakanishi J, Schaal S. Movement imitation with nonlinear dynamical systems in humanoid robots[C]//Proceedings 2002 IEEE International Conference on Robotics and Automation (Cat. No. 02CH37292). IEEE, 2002, 2: 1398-1403.
2、Ijspeert A J, Nakanishi J, Hoffmann H, et al. Dynamical movement primitives: learning attractor models for motor behaviors[J]. Neural computation, 2013, 25(2): 328-373.
二、动态运动基元法基本原理
1.动态运动基元(Dynamic Movement Primitives)是一种运动学习方法,可以通过学习目标轨迹的运动信息使新生成的轨迹具有圆轨迹的运动趋势。该方法认为复杂运动可以视作一系列基元运动的碟机,动态运动基元基本思想史向简单且稳定的动态系统引入非线性函数,由非线性函数控制系统的运动过程,最终使系统达到目标吸引子状态。该方法以弹簧-质量-阻尼模型为基础,将其抽象为点吸引子系统:
y
¨
=
α
y
(
β
y
(
g
−
y
)
−
y
˙
)
(1)
\ddot{y}=\alpha_y(\beta_y(g-y)-\dot{y}) \tag{1}
y¨=αy(βy(g−y)−y˙)(1)
其中
y
y
y是单自由度系统运动状态,即位移,
y
˙
\dot{y}
y˙、
y
¨
\ddot{y}
y¨为对应的速度、加速度。
g
g
g为目标值也成为了吸引子,即期望的运动状态。如机械臂的关节位置或是笛卡尔坐标系下点的位置。
α
\alpha
α、
β
\beta
β为系统参数,通过设置的参数值,如
β
y
=
α
y
/
4
\beta_y=\alpha_y/4
βy=αy/4可以使系统达到临界阻尼,能够保证系统稳定,系统状态
y
y
y随时间逐渐变化,最终系统收敛于目标值
g
g
g。
对(1)式进行拉氏变换得到:
s
2
Y
(
s
)
=
α
y
β
y
G
(
s
)
−
α
y
β
y
Y
(
s
)
−
α
y
s
Y
(
s
)
(2)
s^2Y(s)=\alpha_y\beta_yG(s)-\alpha_y\beta_yY(s)-\alpha_ysY(s) \tag{2}
s2Y(s)=αyβyG(s)−αyβyY(s)−αysY(s)(2)
则系统的传递函数:
Y
(
s
)
/
G
(
s
)
=
α
y
β
y
s
2
+
α
y
s
+
α
y
β
y
=
α
y
β
y
s
2
+
2
ξ
w
n
+
w
n
2
(3)
Y(s)/G(s)=\frac{\alpha_y\beta_y}{s^2+\alpha_ys+\alpha_y\beta_y} =\frac{\alpha_y\beta_y}{s^2+2\xi w_n+{w_n}^2} \tag{3}
Y(s)/G(s)=s2+αys+αyβyαyβy=s2+2ξwn+wn2αyβy(3)
系统的极点为
s
1
,
s
2
=
−
ξ
w
n
±
j
w
n
1
−
ξ
2
s_1,s_2=-\xi w_n\pm jw_n\sqrt{1-\xi^2}
s1,s2=−ξwn±jwn1−ξ2, 临界阻尼的条件为
ξ
=
1
\xi=1
ξ=1,顾
β
y
=
α
y
/
4
\beta_y=\alpha_y/4
βy=αy/4。上述系统的收敛过程可以视为系统由起始点
y
(
t
=
0
)
y(t=0)
y(t=0)运动到点
g
g
g的过程,上述数学模型是一个以
(
y
˙
,
y
)
=
(
0
,
g
)
(\dot{y},y)=(0,g)
(y˙,y)=(0,g)为唯一点吸引子的稳定的二阶系统。然而该系统只能以特定 的运动形式收敛到目标点 g,为控制系统的运动过程,为了系统可以按指定运动状态收敛到目标点,从而得到更具有广泛性的运动系统,
(
1
)
(1)
(1)式右侧引入强迫项
f
f
f,得到表达式如下
τ
y
¨
=
α
y
(
β
y
(
g
−
y
)
−
y
˙
)
+
f
\tau\ddot{y}=\alpha_y(\beta_y(g-y)-\dot{y})+f
τy¨=αy(βy(g−y)−y˙)+f
f
(
x
,
g
)
=
Σ
ψ
i
w
i
Σ
ψ
i
x
(
g
−
y
0
)
f(x,g)=\frac{\Sigma \psi_iw_i}{\Sigma\psi_i}x(g-y_0)
f(x,g)=ΣψiΣψiwix(g−y0)
ψ
i
=
e
x
p
(
−
h
i
(
x
−
c
i
)
2
)
\psi_i=exp(-h_i(x-c_i)^2)
ψi=exp(−hi(x−ci)2)
τ
x
˙
=
−
α
x
x
\tau \dot{x}=-\alpha_x x
τx˙=−αxx