什么是柔性驱动器(Compliant Actuators)?

柔性驱动器就是区别于刚性驱动器的一种驱动器,通过机械结构使驱动器表现出一定的柔性,如更顺滑的运动,更高的误差宽容性等。柔性驱动器通常配备特定的柔顺控制算法以达到“柔性”的目标。


为什么要研究柔性驱动器

因为传统的刚性驱动器已经不能满足机器人的需求。

如足式机器人,在步行运动中总会受到地面的冲击,如何更好地吸收冲击能量并良好地控制腿部在冲击后的运动,需要做机械与控制方面的改进。而研究柔性驱动器就是其改进方向之一。

如工业机器人,拖动试教是一种简单快捷的机器人配置功能。在人拖动机器人的过程中,希望人受到的阻力小,机器人运动平顺不抖动。除了在柔顺控制的算法上做文章,研究机械方面的柔性驱动器也是一大方向。

除此以外,刚性机器人常常因装配误差等问题造成“卡死”,刚性的位置控制算法会对机器人关节施加很大的堵转扭矩,这容易对机械系统造成损伤。而在关节中加入一些吸能与缓冲结构,能在机械上保护机器人。

再者,外部环境的冲击对机器人控制系统来说,通常是极其短暂的阶跃信号,如果控制系统的带宽不高,是难以响应这些信号的。即,即便是柔顺控制算法,通常也无法很好响应冲击信号,进而无法对环境的冲击做出控制,因此机器人在面对冲击时就会以刚性的状态去应对。硬碰硬,结果通常是损害机械本体。

因此,无论从柔顺控制、机械柔性还是面对环境的冲击方面,都有发展柔顺驱动器的意义。


柔性驱动器的特征

通常带有储能元件,如弹簧、弹性元件等。在驱动器里装这类储能元件通常是为了可变刚度的特性。

也可能带有耗能元件,如阻尼器,磁流变流体等。耗能元件的作用通常是代替动力源消耗掉冲击、避免只有弹性原件带来的持续震荡等。


柔性驱动器的种类

1.串联弹性驱动器(Serial Elastic Actuator,SEA)

顾名思义,在动力的输出端串联一个弹性体,这个组合体的整体就叫做串联弹性驱动器。驱动器的真正输出端在弹性体的另一端。[1]

一种SEA控制模型,驱动器末端连弹簧,弹簧末端连负载,增加传感器测量弹簧的变形量,以此计算驱动力或驱动力矩

SEA的特点是,通过弹性体的变形,为驱动器带来了柔性,利用这个柔性可以增加很多能力。

例如,如果弹性体的受力变形特性是线性的话,测量驱动器在负载下弹性体的形变,即可获得驱动器的受力情况,这就能实现力控制。

因此,问题主要集中在如何设计弹性体的问题上。弹性体当然不局限于弹簧。通常在机器人旋转关节上,我们看到的大都是“扭簧”。

2016年哈工大HIT-LEX关节上使用的串联弹性驱动体

上图这种串联弹性体就是一种经典的“扭簧”[2]。其外圈与内圈通过4个中间弯弯曲曲的金属桥连接,这一个个金属桥就像弹簧一样,两端分别顶在外圈和内圈。当内外圈分别连在关节的两部分,并有相对转动时,金属桥就为两者相互转动提供了弹性。

通常,测量这种内外圈转动角度差 [公式] ,通过实验标定,就能确定这种弹性体的刚度 [公式] 特性曲线,后面就可以利用这个“扭簧”来间接获得关节扭矩 [公式] 了。

[公式]

当然,在直线驱动器上,串联弹性体就简单的多,通常在输出末端加一些弹簧就能搞定。

2.变刚度驱动器(Variable Stiffness Actuator)

变刚度驱动器通常是在驱动器中加入了弹性元件(如非线性弹簧),然后通过机械结构手段改变整个驱动器的等效刚度,进而获得刚度可控的输出行为。

需要明确注意的是,变刚度驱动器中的弹性元件必须具有非线性刚度特性。


举个例子,如下图变刚度驱动模型[1]

中间的物块看作模型输出端,被两根弹簧连接,初始时物块处于两根弹簧的零力点位置。调节连接于弹簧另一端的 [公式] 或 [公式] 长度,以期望达到控制整个模型的等效刚度。

当两根弹簧都为线性弹簧,即刚度为定值 [公式] 时。

当在中间物块上作用于水平向右方向的负载力 [公式] ,物块显然会水平向右移动,然后左边弹簧拉物块,右边弹簧推物块。受力分析,可得到负载力与弹簧长度的关系式:

[公式]

式中, [公式] 为两个弹簧的刚度,为定值。

因此,系统的等效刚度(施加在其上的力与其位移的比值)就等于:

[公式]

即,系统的等效刚度与[公式] 和 [公式]没有关系,达不到我们想要的调节等效刚度的需求。

如果这两根弹簧都是非线性弹簧,即弹簧力与形变不满足线性关系,比如满足二次关系:

[公式]

这个时候的模型负载力与弹簧长度的关系式就为:

[公式]

此时的系统等效刚度就为:

[公式]

等效刚度式子里包含了[公式] 和 [公式]两个我们可以控制的变量,因此我们才能控制系统的等效刚度。


因此,对于变刚度驱动器的相关研究,就相当于在花式加弹簧,花式改变弹簧,花式等效弹簧。

在一自由度关节中,模仿人体肱二头肌的布置方式加入线性弹簧,并增加一个额外的自由度去改变弹簧的预拉伸长度,进而获得关节的可控的变刚度,是一个很自然的变刚度想法[3]

a通过改变弹簧连接处与输出臂的夹角来改变弹簧零力点时的长度,进而改变关节刚度。b通过旋转凸轮来改变弹簧零力点时的长度来改变关节刚度。b结构的好处是刚度变化曲线由凸轮定义,只需要控制凸轮旋转的角度,即可控制关节的刚度。而a结构想要实现关节刚度按预期曲线变化,需要对M1电机施加复杂的控制律

也有通过线性弹簧结合其他结构,从而实现非线性弹簧的效果的[1]

佐治亚理工学院2005年经典的变刚度结构及控制。在两个滑轮驱动绳中串联了线性弹簧,并通过一个双凸轮结构改变弹簧的长度。通过凸轮曲线将线性弹簧转换为了等效的非线性弹簧
德国宇航局的VS-Joint,也是利用了凸轮机构来改变线性弹簧的长度,进而转换为等效非线性弹簧。改变凸轮的位置通过额外的竖直轴转动实现

除了加弹簧,加其他可变刚度特性的东西,只要能实现等效刚度的调节,也算变刚度驱动器[1]

比萨大学2005年的变刚度驱动器。通过2、3号电机的拮抗控制,控制同步带张紧量,从而使线8、9号的非线性弹簧的压缩量变化。此模型的等效刚度中包含了8、9弹簧的长度量,因此获得可控刚度

还有根据仿生学原理,在驱动器中加入气动肌肉,由于气动肌肉的特性,可以调节气压来获得不同的刚度,采用和人体相似的拮抗肌肉布置,也能达到变刚度的目的[3]

引入气动肌肉后的变刚度驱动器结构

利用杠杆完成刚度变化,在杠杆中引入弹簧,改变弹簧位置、作用点位置、支点位置,都可以通过杠杆原理放大或缩小刚度[3]

改变弹簧本身作用长度,也是一个变刚度思路[1]

使用非线性顶杆弹簧(Jack Spring),增加顶杆在弹簧中间,旋转顶杆可使顶住弹簧的部位移动,因此可以调节弹簧实际作用部分的长度,从而完成刚度调节。

可以看到,变刚度驱动器通常需要额外的自由度去控制刚度,通常需要额外增加电机等部件来变动刚度,不像SEA那样加个弹性体就完事,因此结构紧凑、刚度变化范围广、等效刚度性能好是变刚度驱动器需要着重研究的地方。

3.变阻尼驱动器(Variable Damping Actuator)

4.变惯量驱动器(Variable Inertial Actuator)

参考

  1. ^abcdeHAM R, SUGAR T, VANDERBORGHT B等. Compliant actuator designs[J]. IEEE Robotics & Automation Magazine, 2009, 16(3): 81–94. DOI:10.1109/mra.2009.933629.
  2. ^杨继兴. 外骨骼机器人弹性驱动控制方法及实验研究[D]. 哈尔滨工业大学, 2014.
  3. ^abcVANDERBORGHT B, ALBU-SCHAEFFER A, BICCHI A等. Variable impedance actuators: A review[J/OL]. Robotics and Autonomous Systems, 2013, 61(12): 1601–1614. http://dx.doi.org/10.1016/j.robot.2013.06.009. DOI:10.1016/j.robot.2013.06.009.

https://zhuanlan.zhihu.com/p/146769240

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注