Motion Planning and Tracking Control of Series Elastic Actuator for Vibration Suppression
-
摘要: 针对串联弹性驱动器(Series elastic actuator,SEA)的位置控制问题,本文提出了一种"规划+控制"的策略.首先根据连杆端运动学约束方程,基于数字滤波器对电机位置进行轨迹规划;为了使电机能够准确跟踪期望轨迹,根据电机端的动力学模型设计位置跟踪控制器.理论分析证明了规划的抖动抑制作用和跟踪控制系统的稳定性,随后的实验结果也表明了这种"规划+控制"方法在使连杆到达期望位置的前提下,能够有效地抑制残余抖动.Abstract: A "Plan + Control" strategy is proposed in this paper for position control of series elastic actuator (SEA). Based on the kinematic constraint of the link side in SEA, the trajectory of motor position is planed using digital filter; while in the motor side, a nonlinear state feedback controller is designed for trajectory tracking. Vibration suppression of the trajectory plan with digital filter is presented, and asymptotic convergence of the tracking controller is analytically proven. Experiment results illustrate the effectiveness of the proposed scheme.
-
串联弹性驱动器(Series elastic actuator, SEA)[1]是将弹性元件串联于传统驱动单元(伺服电机、液压等)与连杆间的驱动装置, 其示意图如图 1所示.引入弹性元件, 一方面降低了连杆与环境或人的接触刚度; 另一方面将驱动单元的惯量与连杆的惯量解耦, 进而使得在发生碰撞时, 参加碰撞的惯量显著减小, 降低了关节上承受的冲击力, 同时也减小了对环境或人的伤害. 图 2[2]展示了机器人头部发生碰撞时造成的伤害指标(Head injury criteria, HIC)与机器人接触刚度和有效惯量之间的关系, 结合此图和上述分析可知, 基于SEA的设计带来了本质安全.此外, SEA还具有储能、抗冲击、低输出阻抗, 力/力矩测量精度高等优点[3-4].因此, SEA被应用于人-机共融系统中, 提高了人-机共融的安全性和舒适性[5-8].
基于SEA的设计虽然能够带来上述优势, 但是其位置控制一直是个难点.这主要体现在两个方面: 1)相对于传统的刚性结构, SEA的动力学模型更为复杂, 其自由度和阶数都会显著增加, 而电机和连杆两个子系统都会受到不确定因素的作用, 一定程度上影响定位精度; 2)弹性元件容易导致振动, 使得连杆在到达目标位置时仍有残余抖动, 增加了位置控制的难度.
正是由于在安全等方面的重要性和在控制方面的复杂性, SEA的运动控制1被视为下一代工业应用的前沿问题[9], 吸引了众多学者的关注.上世纪80年代末至90年代初, 其建模和理论研究成为关注焦点.其中Spong的简化模型[10]影响最大.基于此简化模型的各种控制方法被提出[11-12].但是这一时期的控制方法不仅需要精确的系统模型, 还要求全状态, 甚至是加速度反馈, 因此并不实用. 1991年, Tomei[13]提出PD (Proportional and derivative)控制器并证明了闭环控制系统的稳定性.之后, 在此基础上, 各种各样的改进方法:诸如加入动态补偿、扰动观测器等相继被提出[14-17].虽然基于PD的控制方法不再要求精确的动力学模型, 但是增益很难调节, 大的增益容易引起连杆的抖动, 而小的增益则容易导致稳态误差; 另外, PD控制算法虽然能够证明收敛性, 但并没有证明算法能够有效抑制连杆的抖动.另一种用的比较广泛的是基于扰动观测器的控制方法[4, 17-20].在文献[4]中, 作者设计了一款新型的SEA, 并结合谐振比率控制(Resonance ratio control, RRC)方法和扰动观测器设计了位置控制算法, 取得了一定的效果.但是基于RRC的控制依赖于准确的振动频率.在文献[18]中, 作者提出了基于扩张状态观测器(Extended state observer, ESO)和反馈线性化的控制方法, 但是ESO只对串联积分链形式的系统有效.此外, 基于扰动观测器的设计方法大多对扰动做一些假设, 如假设扰动变化缓慢, 扰动有界, 扰动导数有界等.这些假设虽然合理, 但是相应的界限很难确定.此外, 引入扰动观测器后, 闭环系统的收敛速度依赖于扰动观测器的收敛速度.除上述两种常见的控制方法之外, 其他的控制方法, 如文献[21-25]等都被用来解决SEA的位置控制问题, 并取得了一定的效果.
1SEA与弹性关节机器人(Flexible joint robot, FJR)的动力学模型相同, 因此两者的位置控制问题可以归为同一类问题
值得指出的是, 包括上述列举的文献在内, 已有的绝大多数定位和抖动抑制方法都是从控制的角度出发的, 采用轨迹规划的方法来解决此问题的文章相对较少.其中输入整形[26]作为一种简单的轨迹规划方法, 能够在系统振动频率精确已知时有效抑制残余抖动.基于相平面的轨迹规划方法[27]在理论上也能够有效抑制线性二阶无阻尼系统的残余抖动.但是上述两种规划方法均要求系统的振动频率已知, 尤其是后者, 鲁棒性不是很强.因此, 参照文献[28-29], 本文首先根据连杆端运动学约束, 提出了一种基于数字滤波器的轨迹规划方法, 以得到电机位置的期望轨迹, 该轨迹能够在实现SEA定位的同时有效抑制连杆的残余抖动; 然后基于电机端的动力学模型设计控制器跟踪此期望轨迹; 最后进行实验验证, 并与传统的PD控制器[13, 15, 30]和基于输入整形的控制策略进行了对比.结果表明本文设计的"规划+控制"策略能够取得更好的定位和抖动抑制效果.
本文的其他部分组织如下:第1节对SEA的模型及其位置控制问题进行详尽描述; 第2节阐述基于数字滤波器的轨迹规划及相应的参数计算方法, 并从理论上证明了滤波后的轨迹能够实现定位和残余抖动抑制; 为了准确跟踪第2节中得到的电机位置轨迹, 第3节设计了反馈控制器并对其稳定性进行了理论证明; 对比实验结果在第4节中给出; 最后一节是对本文工作的总结和展望.
1. SEA模型
1.1 动力学模型
本文的研究对象是如图 3所示的旋转型SEA.该SEA主要由伺服电机(配有谐波减速器)、弹性元件和连杆三部分组成, 弹性来源于两根拉簧, 两根拉簧初始及整个运动过程中均处于拉伸状态.力矩传输过程如下:当电机转动时, 两根拉簧中的其中一根被进一步拉长而另一根拉伸长度相应减少, 两根拉簧的恢复力会产生转矩, 驱动连杆旋转.
本文设计的SEA满足Spong的4条假设[10], 因此其动力学方程由弹性元件解耦成两部分, 分别为连杆端动力学模型
$ \begin{align} M\ddot q + C\dot q + G\sin(q) = \tau_c(\varphi) \label{LinkDynamics} \end{align} $
(1) 和电机端动力学模型
$ \begin{align} J\ddot\theta + \tau_{fm}(\theta, \dot\theta) + \tau_c(\varphi) = \tau_m \label{MotorDynamics} \end{align} $
(2) 其中, $ q $和$ \theta $分别表示连杆和电机(减速后)的位置, 竖直位置时, $ \theta = q = 0 $. $ \tau_c(\varphi) $为弹性元件形变产生的力矩, 其表达式为
$ \begin{align} \tau_c(\varphi) = K\varphi = K(\theta - q) \label{tauc} \end{align} $
(3) $ M, C, G $分别表示连杆的转动惯量, 阻力系数和重力项; $ K $表示弹性元件的等效刚度, $ J $表示电机的转动惯量(减速后); $ \tau_{fm}(\theta, \dot\theta) $表示电机的阻力, $ \tau_m $为电机的输出力矩(减速后), 即整个系统的控制输入.
SEA的位置控制问题可描述为:针对动力学模型(1)和(2), 设计合适的控制输入$ \tau_m $使得连杆能够到达期望位置$ q_d $, 并且残余抖动尽可能小.
1.2 运动学约束(Kinematics constraint)
连杆端动力学模型(1)描述了电机位置与连杆位置之间的约束关系, 可写成如下形式
$ \begin{align} \ddot q + \frac{C}{M}\dot q + \frac{K}{M}q + \frac{G}{M}\sin (q) = \frac{K}{M}\theta \label{LinkVibration} \end{align} $
(4) 上式可视为二阶非线性阻尼振动系统, $\theta$为输入, $q$为输出.当电机位置固定且系统处于平衡状态, 即$ K(\theta-q)=G\sin(q) $时, 给连杆施加一冲击力矩, 则连杆获得一初速度, 之后连杆将在此初速度的激励下作衰减振动; 当电机位置固定但系统不处于平衡状态时, 连杆将衰减振动至平衡位置; 当电机位置发生变化时, 此变化也将作为激励使得连杆位置发生振动.上述三种情况可分别从图 4中的三幅图得到验证.三幅图中简谐振动的曲线代表连杆的位置$q$, 另一条曲线代表电机的位置$\theta$, 单位均为弧度(rad).从图 4中可以看出, 连杆很容易发生抖动.因此有必要设计合理的控制策略来抑制振动.
根据图 4中相邻两个波峰之间的时间间隔, 可以得到连杆的振动频率; 改变电机的位置, 即可获得不同平衡位置附近的振动频率, 进而得到整个SEA系统的振动频率范围.然后基于数字滤波器对电机的位置轨迹进行规划得到$ \theta_d(t) $, 使得在此轨迹下, 连杆在这些频率范围内的振动能够被有效抑制.最后将$ \theta_d(t) $作为电机的期望轨迹, 基于RISE方法[31]设计合适的控制输入$ \tau_m $使得$ \lim_{t\rightarrow\infty}\theta(t)=\theta_d(t) $.根据上述思路设计的定位与抖动抑制原理如图 5所示.
2. 基于数字滤波器的轨迹规划
能够抑制抖动的运动规划方法有很多, 如输入整形(Input shaping, IS)、基于相平面分析(Phase plane analysis, PPA)的规划、数字滤波器(Digital filter, DF)等.根据上一节中运动学约束分析可知, 本文研究对象的振动频率在一定范围内变化.而基于DF的轨迹规划能够抑制某些频率范围内的抖动.因此本节设计了有限冲击响应数字滤波器(Finite impulse response digital filter, FIR-DF)对原始信号进行滤波处理, 并证明了滤波后的轨迹能够有效抑制连杆的残余抖动; 然后求解了FIR-DF的参数.
2.1 FIR-DF的抖动抑制
线性二阶阻尼振动系统$ \dot x = Ax + Bg(t) $中, 状态向量$ x(t) $的解为
$ \begin{align} \begin{split} x(t) = &{\rm e}^{At}\left[x(0) + \sum\limits_{i=1}^{2}H_iB\int_0^t{\rm e}^{-s_i\xi}g(\xi)\text{d}\xi\right]= \\ &{\rm e}^{At}\left[x(0) + \sum\limits_{i=1}^{2}H_iBG(s;s=s_i)\right] \end{split} \label{SylvesterExpansion} \end{align} $
(5) 其中
$ \begin{align*} &A = \left[\begin{array}{cc}0 &1 \\ -\omega_s^2 &-2\zeta\omega_s\end{array}\right], \quad B=\left[\begin{array}{c}0 \\1\end{array}\right] \\ &s_{1, 2} = -\zeta\omega_s \pm {\rm j}\omega_s \sqrt{1 - \zeta^2} \\ &H_i = \frac{1}{s_i - s_j}\left[A - s_i I\right]\quad i, j=1, 2, i\neq j \end{align*} $
$ G(s) $表示控制输入$ g(t) $的拉氏变换.原始控制输入$ g(t) $经FIR-DF作用后的新输入记为$ u(t) $, 则有:
$ \begin{align} \begin{split} &u(t) = \sum\limits_{n=0}^Ng(t-nT)\Delta(nT) \\ &U(s) = G(s)\Delta(s) \end{split} \label{NewInput} \end{align} $
(6) 其中, $ N+1 $表示冲击脉冲总数, $ \Delta(t) $表示有限冲击, $ \Delta(s) $为其拉氏变换. $ U(s) $表示$ u(t) $的拉氏变换. $ \Delta(t) $的表达式为
$ \begin{align} \begin{split} &\Delta(t) = \sum\limits_{n=0}^Nc_n \delta(t-nT) \\ &\delta(t-nT) = \left\{\begin{array}{ll} 1, &t=nT \\ 0, &\mbox{否则}\end{array}\right. \end{split} \label{Deltat} \end{align} $
(7) $ c_n $表示各个脉冲的幅值, $ T $表示相邻两个脉冲之间的时间间隔.由式(7)可知
$ \begin{align} \Delta(s) = \sum\limits_{n=0}^N c_n {\rm e}^{-snT} \label{Ps} \end{align} $
(8) 线性二阶系统的响应由稳态和暂态两部分组成, 其中稳态部分的响应对应$ s=0 $, 暂态部分的响应对应$ s=s_i $.而本文要实现的目标就是让连杆能够准确达到目标位置并且残余抖动尽可能小.因此, 如果滤波后的输入能够同时满足$ U(s;s=0)=G(s;s=0) $和$ U(s;s=s_i) = 0 $, 则上述目标能够实现.这就要求$ \Delta(s) $满足如下两个条件:
$ \Delta(s;s=0) = 1 $
(9) $ \Delta(s;s=s_i) = 0 $
(10) 2.2 FIR-DF参数计算
所谓FIR-DF参数计算就是确定$N, c_n$和$T$.结合式(8)和式(10)可得:
$ \begin{align} \sum\limits_{n=0}^Nc_n{\rm e}^{-nT\left(-\zeta\omega_s \pm {\rm j}\omega_s\sqrt{1-\zeta^2}\right)} = 0 \label{PhaseConstraint1} \end{align} $
(11) 需要说明的是, 阻尼$ \zeta $的作用有两个:一是使振动衰减, 二是改变系统的自然频率.而基于FIR-DF的规划可以抑制某些频率范围内的抖动.因此, 在计算FIR-DF的参数时可以忽略阻尼的影响, 并且只要$ \omega_s $位于被抑制的振动频率范围内即可.故式(11)可改写为$ \sum\limits_{n=0}^Nc_n{\rm e}^{\pm {\rm j}n\phi} = 0\;(\phi = \omega T)$.此式与$ \sum_{n=0}^Nc_n{\rm e}^{ -{\rm j}n\phi} = 0 $等价, 因此, 参数约束方程(9)和(10)可重新整理成
$ \begin{align} \left\{\begin{array}{l} \sum\limits_{n=0}^N c_n = 1 \\ \sum\limits_{n=0}^Nc_n{\rm e}^{ -{\rm j}n\phi} = 0 \end{array}\right. \label{NewConstraint} \end{align} $
(12) FIR-DF通常有奇偶两种对称, 本文采用偶对称, 即$ c_n=c_{N-n} $, $ N $也取为偶数.令
$ \begin{align} H({\rm e}^{{\rm j}\phi}) = \sum\limits_{n=0}^Nc_n{\rm e}^{-{\rm j}n\phi} \end{align} $
(13) 则由$ c_n=c_{N-n} $可得$ H({\rm e}^{{\rm j}\phi}) = {\rm e}^{- {\rm j}N\phi}H({\rm e}^{-{\rm j}\phi}) $, 进而
$ \begin{align} H({\rm e}^{{\rm j}\phi})= &\frac{1}{2}\left[H({\rm e}^{{\rm j}\phi}) + {\rm e}^{- {\rm j} N\phi}H({\rm e}^{-j\phi})\right]= \nonumber\\ &{\rm e}^{- {\rm j}\frac{N}{2}\phi}\sum\limits_{n=0}^N c_n \cos \left[\left(n-\frac{N}{2}\right)\phi\right]= \nonumber\\ & {\rm e}^{- {\rm j}\frac{N}{2}\phi}W(\phi) \label{Amp} \end{align} $
(14) 其中, $ W(\phi)\hspace{-2pt}=\sum_{n=0}^N c_n \cos \left[\left(n-{N}/{2}\right)\phi\right] $, 表示$ H({\rm e}^{{\rm j}\phi}) $的幅频响应.则根据式(12)可知, $ W(\phi) $应满足:
$ \begin{align} W(\phi) = \left\{\begin{array}{ll}\dfrac{a_0}{2} + \sum\limits_{k=1}^{L}a_k \cos(k\phi)=0, &\phi \neq 0 \\ \dfrac{a_0}{2} + \sum\limits_{k=1}^{L}a_k = 1, &\phi =0\end{array}\right. \label{W} \end{align} $
(15) 其中
$ \begin{align} &L = \dfrac{N}{2}, &c_j=\dfrac{a_{L-j}}{2}, \quad j=0\sim L-1\nonumber\\[2mm] &c_L=\dfrac{a_0}{2}, &c_j = \dfrac{a_{j-L}}{2}, \quad j=L+1 \sim N \label{cj} \end{align} $
(16) 从式(15)可知, $ W(\phi) $有如下性质
$ \begin{align*} W(\phi + 2\pi) = W(\phi), &\quad W(2\pi - \phi ) = W(\phi) \end{align*} $
条件(15)通常很难满足, 常见的做法是在靠近$\phi = 0$ $(\omega = 0)$的某一区间内使$ W(\phi) = 1 $, 而在其他频段内$W(\phi) = 0$, 如图 6所示.根据图 6可知, 在$ \omega_C \sim (\omega_p-\omega_C)$频率范围内的振动都能被抑制.其中, $\omega_p=2\pi N /T_p$, $T_p = NT$表示延时时间.
由于$ W(\phi) $以$ 2\pi $为周期, 且表达式(15)可视为其傅里叶展式, 因此有:
$ \begin{align} a_k = \frac{2}{2\pi}\int_0^{2\pi}W(\phi)\cos(k\phi)\text{d}\phi, \quad k=0\sim L \label{ak1} \end{align} $
(17) 由式(17)可计算得到:
$ \begin{align} &a_0 = \frac{\phi_B + \phi_C}{\pi} \nonumber\\ &a_k =\frac{2}{\pi k^2(\phi_C - \phi_B)} \left[\cos (k\phi_B) - \cos (k\phi_C)\right] \label{ak2} \end{align} $
(18) 进而根据式(16)可以计算得到脉冲序列的幅值$c_j (j=0\sim N) $.
综上所述, 在给定连杆期望位置$ q_d $后, 先计算出电机的目标位置, 然后按照常见的轨迹规划方法规划电机的轨迹并进而按照式(6)对其进行滤波处理, 最终得到电机的期望轨迹$ \theta_d(t) $.
3. 跟踪控制
将上一节规划得到的$ \theta_d(t) $视为电机的期望轨迹, 本节将在此基础上基于RISE设计控制输入$ \tau_m $使得$ \lim_{t\rightarrow\infty}\theta(t)=\theta_d(t) $.
首先定义跟踪误差如下:
$ \begin{align} &e_1 = \theta_d - \theta \nonumber\\ &e_2 = \dot e_1 + l_1 e_1 \label{TrackingError} \end{align} $
(19) 其中, $ l_1 $为待设计的正常数.控制输入设计为
$ \begin{align} \tau_m =&\tau_1 + K(\theta - q) \nonumber\\ \tau_1 =&(l_2 + 1)e_2(t) - (l_2 + 1)e_2(0)+ \nonumber\\ &\int_{0}^{t}(l_2 + 1)\alpha e_2(\xi)+ \beta\text{sgn}[e_2(\xi)] \text{d}\xi \label{ControlInput} \end{align} $
(20) 其中, $ l_2, \alpha $和$ \beta $为待设计的正常数. $ \text{sgn}(\cdot) $为符号函数.可以证明, 通过选取合适的控制参数, 上述控制输入能够使得跟踪误差收敛至零, 即
$ \begin{align*} \lim\limits_{t\rightarrow\infty}e_1(t) = 0, \quad \lim\limits_{t\rightarrow\infty}e_2(t) = 0 \end{align*} $
证明.
定义线性滤波器
$ \begin{align} r(t) = \dot e_2(t) + \alpha e_2(t) \label{LinearFilter} \end{align} $
(21) 将其关于时间求导并结合式(19)可得:
$ \begin{align} J\dot r = J\theta_d^{(3)} + J\left(l_1 \ddot e_1 + \alpha \dot e_2\right) - J\theta^{(3)} \end{align} $
(22) 将控制输入(20)求导后代入上式并结合式(2)可得:
$ \begin{align} J\dot r = -e_2 - (l_2 + 1)r - \beta\text{sgn}(e_2) + \tilde Q + Q_d \end{align} $
(23) 其中
$ \begin{align*} &Q = J[\theta_d^{(3)} + l_1 \ddot e_1 + \alpha \dot e_2] + e_2 + \dot\tau_{fm}(\theta, \dot\theta) \\ &Q_d = J\theta_d^{(3)} + \dot\tau_{fm}(\theta_d, \dot\theta_d) \\ &\tilde Q = Q - Q_d \end{align*} $
由上述定义可知
$ \begin{align} ||\tilde Q|| \leq \rho(||{\pmb z}||)||{\pmb z}|| \end{align} $
(24) 其中, $||\cdot||$表示欧几里得范数, $ {\pmb z}=[e_1, e_2, r]^{\rm T} $, $ \rho:{\bf R}_{\geq 0} \rightarrow {\bf R}_{\geq 0} $表示某一全局可逆、非单调递减的函数.定义函数$\mu(t) \in {\bf R}$如下:
$ \begin{align} \mu = r\left[ Q_d - \beta \text{sgn}(e_2)\right] \end{align} $
(25) 如果$\beta$满足
$ \begin{align} \beta > |Q_d(t)| + \frac{1}{\alpha} |\dot Q_d(t)| \end{align} $
(26) 则可以证明
$ \begin{align} \int_{0}^{t} \mu(\xi) \text{d}\xi \leq \eta_b \label{IntegralInequality} \end{align} $
(27) 其中, $ \eta_b = \beta|e_2(0)| - e_2(0)Q_d(0) $.证明过程见附录.定义
$ \begin{align} P(t) = \eta_b - \int_{0}^{t}\mu(\xi)\text{d}\xi \end{align} $
(28) 显然$ P(t)\geq0 $.构造Lyapunov候选函数如下:
$ \begin{align} V({\pmb y}, t) = \frac{1}{2}e_1^2 + \frac{1}{2}e_2^2 + \frac{1}{2}Jr^2 + P \label{LyapunovCandidateFunction} \end{align} $
(29) 其中, $ {\pmb y} = [{\pmb z}^{\rm T}, \sqrt P]^{\rm T} $.
闭环系统的动态误差方程为
$ \begin{align} &\dot e_1 = -l_1 e_1 + e_2 \nonumber\\ &\dot e_2 = -\alpha e_2 +r \nonumber\\ &\dot r = J^{-1}\left[-e_2 - (l_2+1)r - \beta \text{sgn}(e_2) + Q \right] \nonumber\\ &\dot P = -r\left[Q_d - \beta \text{sgn}(e_2) \right] \label{ClosedLoopErrorDynamics} \end{align} $
(30) 将Lyapunov候选函数关于时间求导并结合式(30)得:
$ \begin{align} \dot V =&-l_1e_1^2 + e_1e_2- \alpha e_2^2 - (l_2+1)r^2 + r \tilde Q\leq \nonumber\\ & -\lambda_3 ||{\pmb z}||^2 - l_2r^2 + |r| \rho\left(||{\pmb z}||\right)||{\pmb z}|| \leq\nonumber\\ & -\left(\lambda_3 - \frac{\rho^2(||{\pmb z}||)}{4l_2} \right)||{\pmb z}||^2 \label{dotV} \end{align} $
(31) 其中, $ \lambda_3 = \text{min}\{l_1-{1}/{2}, \alpha - {1}/{2}, 1\} $.因此选取参数满足如下条件:
$ \begin{align} &\alpha > \frac{1}{2}, \;l_1> \frac{1}{2}, \;l_2>\frac{1}{4\lambda_3}\rho^2(||{\pmb z}||)\nonumber\\ &\beta > |Q_d(t)|+\frac{1}{\alpha}|\dot Q_d(t)| \label{ControlGainsCondition} \end{align} $
(32) 即可使得$ \dot V({\pmb y}, t) $负半定.接下来说明上述4个参数($l_1, l_2, \alpha, \beta$)可取.由于$\alpha$与$l_1$只需大于0.5即可, 显然可取.而$ \lambda_3 = \text{min}\{l_1-{1}/{2}, \alpha - {1}/{2}, 1\} $, 则$\lambda_3$可取.由于$\theta_d$及其各阶导数均有界, 因此$Q_d$有界, 进而$\beta$可取.根据$Q, Q_d, \tilde Q$的定义式可知
$ \begin{align*} \tilde Q = Jl_1\ddot e_1 + J\alpha\dot e_2 + e_2 + \tau_{fm}(\theta, \dot\theta) - \tau_{fm}(\theta_d, \dot\theta_d) \end{align*} $
电机端摩擦力项$\tau_{fm}$是关于电机位置和速度的表达式, 因此由上式可知$\rho(||{\pmb z}||)$存在, 当参数$l_2$满足$ l_2>\frac{1}{4\lambda_3}\rho^2(||{\pmb z}||) $时, 吸引域为$ ||{\pmb z}||<\rho^{-1}(2\sqrt{l_2\lambda_3}) $, 只要$||{\pmb z}||$的初值在此吸引域内即能保证$ \lim_{t\rightarrow\infty}{\pmb z}(t) = 0 $.因此, 可增大$ l_2 $来确保吸引域足够大, 进而$ l_2 $可取.
有界性分析如下:当选取的控制参数满足条件式(32)时, 由式(31)知$ \dot V({\pmb y}, t) $负半定, 进而$ V({\pmb y}, t) $有界, 即$ e_1(t), e_2(t), r(t)\in\mathcal{L}_{\infty} $.由式(30)可知$ \dot e_1, \dot e_2 \in\mathcal{L}_{\infty} $; 而期望轨迹有界, 因此$ \theta, \dot\theta\in\mathcal{L}_{\infty} $, 进而$ \tau_m, Q\in\mathcal{L}_{\infty} $, 由式(30)可知$ \dot r\in\mathcal{L}_{\infty} $.令$ \lambda_4 =\lambda_3 - \frac{\rho^2(||{\pmb z}||)}{4l_2} $并对式(31)两边同时对时间积分可得:
$ \begin{align} \lambda_4\int_{0}^{\infty}||{\pmb z}(\xi)||^2\text{d}\xi \leq V(0) - V(\infty) \leq V(0) \end{align} $
(33) 即$ {\pmb z}\in\mathcal{L}_{2} $.综上有${\pmb z}\in\mathcal{L}_2 \cap \mathcal{L}_{\infty}, \dot {{\pmb z}} \in \mathcal{L}_{\infty}$, 根据芭芭拉定理[32-33]可知
$ \begin{align} \lim\limits_{t\rightarrow\infty}{\pmb z}(t) = 0 \end{align} $
(34) 根据$ {\pmb z}(t) $的定义可知
$ \begin{align} e_1(t)\rightarrow 0, \;e_2(t)\rightarrow 0, \;r(t)\rightarrow 0 \;\; \text{as}\;\; t\rightarrow\infty \end{align} $
(35) 上述证明过程可总结为如下定理:
定理1. 当条件式(32)得到满足时, 控制输入式(20)能够使
$ \begin{align} \lim\limits_{t\rightarrow\infty}\theta(t) = \theta_d(t), \; \lim\limits_{t\rightarrow\infty}\dot\theta(t) = \dot\theta_d(t) \end{align} $
(36) 4. 实验验证
4.1 实验配置
本文的实验对象为图 3所示的旋转型SEA.该SEA由伺服电机驱动, 电机型号为Maxon EC 4Pole (200瓦)并配有100:1的谐波减速器(Harmonic Drive CSF-14-100-2XH-F)和Copley驱动器(Copley Accelnet ADP-090-36, 可返回力矩).电机位置$ \theta $由其上的相对码盘(型号: MR-1000-3)测得.连杆位置由图 3中标注的"编码器"测量, 编码器型号为倍加福ENA36IL-R06DA4-16SG1-RC1.速度均由位置信号差分得到.两根拉簧的标称线性刚度均为3.62 N/mm.
实验中, 连杆目标位置取为$ q_d=0.6 \text{rad} $.规定连杆垂直于地面(即图 3所示位置)时$ \theta=q=0 $.本文设计的SEA参数为$ G = 6.7 \text{Nm}, \; K = 21 \text{Nm/rad} $据此可计算得到平衡状态时电机位置为0.78 rad.因此电机位置的轨迹取为
$ \begin{align} \ddot\theta = \left\{ \begin{array}{ll} acc, &0\leq t \leq 0.3 \\ -acc , &0.3 < t \leq 0.6 \end{array} \right. \label{FIRTrajectory} \end{align} $
(37) 其中, $ acc $为电机的角加速度, 简单计算可得$ acc=8.667 \text{rad/s}^2 $.
结合理论分析和大量的实验, 最终得到本文设计的SEA振动频率范围大约为$ 10\sim 13 \text{rad/s} $, 因此, 将FIR-DF的参数取为
$ \begin{align*} N=8, \;T_p=1.0 {\rm s}, \;\omega_B=2 \text{rad/s}, \;\omega_C = 8.5 \text{rad/s} \end{align*} $
然后根据上述参数在轨迹(37)的基础上进行滤波处理, 滤波前后的轨迹以及$ W(\phi) $的幅频响应曲线如图 7所示, 上方子图的虚直线表示幅频响应为5 %, 从图 7中可以看出, 频率在9~42 rad/s之间的振动都能够被有效抑制.跟踪控制器的参数取为
$ \begin{align*} l_1 = 5, \; l_2 = 10, \; \alpha = 5, \; \beta = 10 \end{align*} $
为了验证本文方法的有效性, 下列几种控制算法将用于对比.
1) SGC:即PD控制器结合静态重力补偿(Static gravity compensation, SGC)[13].其控制输入表达式为
$ \begin{align} \tau_{m1} = K_{p1} (\theta_p - \theta) - K_{d1}\dot\theta + G\sin(q_d) \label{SGC} \end{align} $
(38) 其中
$ \begin{align*} \theta_p = q_d + K^{-1} G\sin(q_d) \end{align*} $
控制增益取为
$ \begin{align*} K_{p1} = 8, \; K_{d1} = 1.8 \end{align*} $
2) OGC:即PD控制器结合在线重力补偿(Online gravity compensation, OGC)[15].其控制输入表达式为
$ \begin{align} \tau_{m2} = K_{p2}(\theta_p - \theta) - K_{d2}\dot\theta + G\sin(\tilde\theta) \label{OGC} \end{align} $
(39) 其中
$ \begin{align*} \theta_p = q_d + K^{-1}G\sin(q_d), \; \tilde\theta = \theta - K^{-1}G\sin(q_d) \end{align*} $
控制增益取为
$ \begin{align*} K_{p2} = 12, \;K_{d2}=1.5 \end{align*} $
3) ESC:能量整形控制(Energy shaping control, ESC)[30].其控制输入为
$ \begin{align} \tau_{m3} = G\sin(\bar q) - \frac{K}{G\cos\bar q + K}K_{p3}(\bar q - q_d) - K_d\dot\theta \label{ESC} \end{align} $
(40) 其中, $ \bar q $由牛顿-拉夫森迭代计算得到, 迭代表达式为
$ \begin{align*} \bar q_j = \bar q_{j-1} - \frac{G\sin(\bar q_{j-1}) - K(\theta - \bar q_{j-1})}{G\cos(\bar q_{j-1}) + K} \end{align*} $
$\bar q_j $表示第$ j $次迭代结果, 迭代允许误差取为0.001 rad.控制增益取为
$ \begin{align*} K_{p3} = 20, \;K_{d3}=1.8 \end{align*} $
稳定性证明见相关参考文献.各个控制器的增益均是经过大量实验调整得到.调整目标是使稳态误差和残留抖动尽可能小.
4) IS:输入整形(Input shaping, IS)[26].将本文所提方法的规划部分替换成输入整形, 即电机端仍采用RISE作为跟踪控制器.为了提高输入整形的鲁棒性, 此处采用无阻尼ZVDD整形器, 且ZVDD的振动频率选为$ \omega=11.5 \text{rad/s} $, 各个脉冲幅值及相应时间的计算结果如表 1所示.
表 1 ZVDD整形器的脉冲幅值及其对应的时间Table 1 Amplitude and time of input shaper ZVDD脉冲幅值 时间(s) 0 0 0.3125 0.273 0.5 0.546 0.1875 0.819 4.2 实验结果(Experiment results)
上述4种控制方法与本文提出的控制方法(Proposed controller, PC)对应的实验结果如图 8~11所示.其中图 8表示5种控制方法下的连杆位置($ q $)响应.从图 8中可以看出, 三种闭环反馈控制方法的上升时间虽然更短, 但是由于只使用了电机端的位置和速度信息, 电机能够很快到达平衡位置$ \theta_p $, 连杆却只能作衰减振动, 直至趋于平衡位置$ q_d $, 基于输入整形的方法虽然能够减小振动, 但仍有少量残留.而本文所提方法能够有效抑制残余抖动, 连杆在1.6秒到达期望位置$ q_d $之后一直保持稳定. 图 9展示了转角差$ \varphi $的振动情况:其他4种方法大约在5秒后才使$ \varphi $趋于稳定, 而本文方法能够使得$ \varphi $在完成运动后(即1.6秒后)就几乎没有抖动.图中$ \varphi $没有稳定在同一位置是由闭环反馈控制的微小稳态误差和机械加工精度不够导致的.但从数据来看, 最大差值也仅为0.8 deg.
图 10和图 11展示了本文设计的跟踪控制器的性能.从图 10可以看出, 本文设计的跟踪控制器能够对电机期望位置和速度实现很好的跟踪; 图 11中的$ \tau_{m4} $表示基于输入整形的控制输入, 而$ \tau_{m5} $表示本文方法的控制输入.从图 11中可以看出控制输入均在合理范围内.另外, 从图 11中可以看出, OGC, SGC和ESC的控制输入很快稳定, 这是因为电机位置已经很快稳定.而从这三种方法的控制输入表达式来看, 其与连杆位置无关.因此即使连杆位置尚未稳定, 控制输入也不再发生变化.而本文设计的控制方法, 控制部分负责轨迹跟踪, 控制输入中包含补偿项$ K(\theta - q) $, 因此, 虽然电机期望和实际轨迹已保持不变, 但连杆位置仍在作微小振动, 进而导致控制输入的稳定时间比$ \theta_d(t) $稍长.
从上述实验结果可以看出, 相比于SGC, OGC和ESC, 本文方法在实现定位的前提下, 能够从理论上保证残余抖动被有效抑制; 相比于输入整形, 本文采用的FIR-DF能够抑制更大振动频率范围的残余抖动, 对系统振动频率发生变化的鲁棒性更强.并且从实验效果来看, 抖动抑制效果更好.
另外值得说明的是, 本文提出的"规划+控制"策略虽然引入了一定的时延(本文选为1秒), 但此时延可以有效降低连杆的残余抖动.一方面, 虽然引入了时延, 但是相比于其他4种方法, 本文方法依然能够最快到达平衡位置; 另一方面, 对于刚度较大的SEA平台, 时延可以被人为降低而不对控制性能产生大的影响.
5. 结论
为实现SEA的位置控制和残余抖动抑制, 本文提出了一种"规划+控制"的策略, 即基于连杆端运动学约束规划电机位置的轨迹和基于电机端动力学模型设计跟踪控制器, 理论和实验均证明了本文方法不仅能够实现SEA的位置控制, 还能够有效抑制残余抖动.在接下来的工作中, 将对由SEA构成的柔性关节机器人的位置控制和残余抖动抑制问题进行进一步研究.
附录
不等式(27)的证明过程如下:
证明.
$ \begin{align*} \int_{0}^{t}\mu(\xi)&\text{d}\xi =\int_{0}^{t}\alpha e_2(\xi)\Bigg\{Q_d(\xi) -\\ & \beta \text{sgn}[e_2(\xi)]\Bigg\}\text{d}\xi +\int_{0}^{t}\dot e_2(\xi) Q_d(\xi)\text{d}\xi - \\ & \int_{0}^{t}\beta\dot e_2(\xi) \text{sgn}[e_2(\xi)]\text{d}\xi= \\ &\int_{0}^{t}\alpha e_2(\xi)\left\{Q_d(\xi) - \beta \text{sgn}[e_2(\xi)]\right\}\text{d}\xi +\\ & e_2(\xi)Q_d(\xi)|_{0}^{t} -\int_{0}^{t} e_2(\xi) \dot Q_d(\xi)\text{d}\xi -\\ & \beta e_2(\xi) \text{sgn}[e_2(\xi)]|_0^{t} =\int_{0}^{t}\alpha e_2(\xi)\times\\ & \left\{Q_d(\xi) - \beta \text{sgn}[e_2(\xi)] - \frac{1}{\alpha}\dot Q_d(\xi)\right\}\text{d}\xi +\\ & e_2(t)Q_d(t) -e_2(0)Q_d(0)-\\ & \beta|e_2(t)| + \beta |e_2(0)| \leq\\ & \int_{0}^{t}\alpha |e_2(\xi)|\left[|Q_d(\xi)| - \beta + \frac{1}{\alpha}|\dot Q_d(\xi)|\right]\text{d}\xi +\\ & |e_2(t)|\left[|Q_d(t)| - \beta\right] + \eta_b \leq \eta_b \end{align*} $
-
表 1 ZVDD整形器的脉冲幅值及其对应的时间
Table 1 Amplitude and time of input shaper ZVDD
脉冲幅值 时间(s) 0 0 0.3125 0.273 0.5 0.546 0.1875 0.819 -
[1] Pratt G A, Williamson M M. Series elastic actuators. In: Proceedings of the 1995 IEEE International Conference on Intelligent Robots and Systems. Pittsburgh, USA: IEEE, 1995. 399-406 [2] Zinn M, Roth B, Khatib O, Kenneth S J. A new actuation approach for human friendly robot design. The International Journal of Robotics Research, 2004, 23(4-5):379-398 doi: 10.1177/0278364904042193 [3] Kong K, Bae J, Tomizuka M. Control of rotary series elastic actuator for ideal force-mode actuation in human-robot interaction applications. IEEE/ASME Transactions on Mechatronics, 2009, 14(1):105-118 http://cn.bing.com/academic/profile?id=3cb1683d70ec4880627e7277026bbc76&encoded=0&v=paper_preview&mkt=zh-cn [4] Sariyildiz E, Chen G, Yu H Y. Robust position control of a novel series elastic actuator via disturbance observer. In: Proceedings of the 2015 IEEE/RSJ International Conference on Intelligent Robots and Systems. Hamburg, Germany: IEEE, 2015. 5423-5428 http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=7354144 [5] Park C, Kyung J H, Park D I. Development of an industrial robot manipulator for the easy and safe human-robot cooperation. In: Proceedings of the 2010 International Conference on Control Automation and Systems (ICCAS). Gyeonggi-do, South Korea: IEEE, 2010. 678-681 http://ieeexplore.ieee.org/document/5670249/ [6] Tadele S T, de Vries T, Stramigioli S. The safety of domestic robotics:a survey of various safety-related publications. IEEE Robotics & Automation Magazine, 2014, 21(3):134-142 http://cn.bing.com/academic/profile?id=10ccdf6e4b3e8fafcd5723753fbb12ae&encoded=0&v=paper_preview&mkt=zh-cn [7] Sariyildiz E, Ohnishi K. On the explicit robust force control via disturbance observer. IEEE Transactions on Industrial Electronics, 2015, 62(3):1581-1589 doi: 10.1109/TIE.2014.2361611 [8] Vallery H, Veneman J, van Asseldonk E, Ekkelenkamp R, Buss M, van der Kooij H. Compliant actuation of rehabilitation robots. Robotics & Automation Magazine, 2008, 15(3):60-69 http://cn.bing.com/academic/profile?id=00d9e014e5c319bcc3b745be26cbaabe&encoded=0&v=paper_preview&mkt=zh-cn [9] Fujimoto Y, Murakami T, Oboe R. Advanced motion control for next-generation industrial applications. IEEE Transactions on Industrial Electronics, 2016, 63(3):1886-1888 doi: 10.1109/TIE.2016.2515992 [10] Spong M W. Modeling and control of elastic joint robots. Journal of Dynamic Systems, Measurement, and Control, 1987, 109(4):310-319 doi: 10.1115/1.3143860 [11] Ghorbel F, Hung J Y, Spong M W. Adaptive control of flexible-joint manipulators. IEEE Control Systems Magazine, 1989, 9(7):9-13 doi: 10.1109/37.41450 [12] Spong M W. Control of flexible joint robots: a survey. Technical Report UILU-ENG-90-2203, DC-116. University of Illinois Manufacturing Research Center, USA, 1990. [13] Oh J H, Lee J S. Control of flexible joint robot system by backstepping design approach. In: Proceedings of the 1997 International Conference on Robotics and Automation. Albuquerque, NM, USA: IEEE, 1997. 3435-3440 doi: 10.1080/10798587.1999.10750607 [14] Tomei P. A simple PD controller for robots with elastic joints. IEEE Transactions on Automatic Control, 1991, 36(10):1208-1213 doi: 10.1109/9.90238 [15] Zollo L, de Luca A, Siciliano B. Regulation with on-line gravity compensation for robots with elastic joints. In: Proceedings of the 2004 International Conference on Robotics and Automation. New Orleans, USA: IEEE, 2004. 2687-2692 http://ieeexplore.ieee.org/xpls/icp.jsp?arnumber=1307466 [16] de Luca A, Siciliano B, Zollo L. PD control with on-line gravity compensation for robots with elastic joints:theory and experiments. Automatica, 2005, 41(10):1809-1819 doi: 10.1016/j.automatica.2005.05.009 [17] Zollo L, Siciliano B, de Luca A, Guglielmelli E. PD control with on-line gravity compensation for robots with flexible links. In: Proceedings of the 2007 European Control Conference (ECC). Kos, Greece: IEEE, 2007. 4365-4370 http://ieeexplore.ieee.org/document/7068344/ [18] Kim J M, Chung K W. Disturbance-observer-based PD control of flexible joint robots for asymptotic convergence. IEEE Transactions on Robotics, 2015, 31(6):1508-1516 doi: 10.1109/TRO.2015.2477957 [19] Talole S E, Kolhe J P, Phadke S B. Extended-state-observer-based control of flexible-joint system with experimental validation. IEEE Transactions on Industrial Electronics, 2010, 57(4):1411-1419 doi: 10.1109/TIE.2009.2029528 [20] Ginoya D, Shendge P D, Phadke S B. Sliding mode control for mismatched uncertain systems using an extended disturbance observer. IEEE Transactions on Industrial Electronics, 2014, 61(4):1983-1992 doi: 10.1109/TIE.2013.2271597 [21] Ginoya D, Shendge P D, Phadke S B. Delta-operator-based extended disturbance observer and its applications. IEEE Transactions on Industrial Electronics, 2015, 62(9):5817-5828 doi: 10.1109/TIE.2015.2450715 [22] Petit F, Ott C, Albu-Schäffer A. A model-free approach to vibration suppression for intrinsically elastic robots. In: Proceedings of the 2014 International Conference on Robotics and Automation(ICRA). Hong Kong, China: IEEE, 2014. 2176-2182 http://ieeexplore.ieee.org/xpls/icp.jsp?arnumber=6907159 [23] Kostarigka A K, Doulgeri Z, Rovithakis G A. Prescribed performance tracking for flexible joint robots with unknown dynamics and variable elasticity. Automatica, 2013, 49(5):1137-1147 doi: 10.1016/j.automatica.2013.01.042 [24] Le-Tien L, Albu-Schäffer A. Improving tracking accuracy of a MIMO state feedback controller for elastic joint robots. In: Proceedings of the 53rd Annual Conference on Decision and Control. Los Angeles, CA, USA: IEEE, 2014. 4548-4553 http://ieeexplore.ieee.org/document/7040099/ [25] Lightcap C A, Banks S A. An extended Kalman filter for real-time estimation and control of a rigid-link flexible-joint manipulator. IEEE Transactions on Control Systems Technology, 2010, 18(1):91-103 doi: 10.1109/TCST.2009.2014959 [26] 彭济根, 倪元华, 乔红.柔性关节机操手的神经网络控制.自动化学报, 2007, 33(2):175-180 http://www.aas.net.cn/CN/abstract/abstract13826.shtmlPeng Ji-Gen, Ni Yuan-Hua, Qiao Hong. Neural network control of flexile-joint robot manipulators. Acta Automatica Sinica, 2007, 33(2):175-180 http://www.aas.net.cn/CN/abstract/abstract13826.shtml [27] Huey J R, Singhose W. Design of proportional-derivative feedback and input shaping for control of inertia plants. IET Control Theory & Applications, 2012, 6(3):357-364 http://www.wanfangdata.com.cn/details/detail.do?_type=perio&id=JJ0225634580 [28] Sun N, Fang Y C, Zhang X B, Yuan Y H. Phase plane analysis based motion planning for underactuated overhead cranes. In: Proceedings of the 2011 International Conference on Robotics and Automation (ICRA). Shanghai, China: IEEE, 2011. 3483-3488 http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=5979526 [29] Economou D, Lee C, Mavroidis C, Antoniadis I. Experimental demonstration of input preconditioning for residual vibration suppression using low-pass fir digital filters. In: Proceedings of the American Control Conference. Arlington, VA, USA: IEEE, 2011. 1581-1586 [30] Antoniadis I. Guidance preconditioning by an impulse sequence for robust residual vibration suppression. Shock and Vibration, 1999, 6(3):133-145 doi: 10.1155/1999/250173 [31] Albu-Schäffer A, Ott C, Petit F. Energy shaping control for a class of underactuated euler-lagrange systems. IFAC Proceedings Volumes, 2012, 45(22):567-575 doi: 10.3182/20120905-3-HR-2030.00132 [32] Xian B, Dawson M D, de Queiroz M S, Chen J. A continuous asymptotic tracking control strategy for uncertain nonlinear systems. IEEE Transactions on Automatic Control, 2004, 49(7):1206-1211 doi: 10.1109/TAC.2004.831148 [33] Khalil K H. Nonlinear Systems (Third Edition). New Jersey: Prentice-Hall, 1996. 期刊类型引用(2)
1. 孙宁,程龙. 串联弹性驱动器设计、建模及在机器人上的应用. 自动化学报. 2021(07): 1467-1483 . 本站查看
2. 华洪良,廖振强,陈勇将,徐诚. 面向夹持机构的紧凑型串联弹性力控驱动器设计与试验. 农业机械学报. 2021(12): 426-432+442 . 百度学术
其他类型引用(3)
-