振动的来源:
在实际的机器人,进行搭建的设备并非纯刚性的,都是有一定柔性的,有一定的变性。主要有2个地方进行变形。1是连杆处,两连杆动力学,2是关节的柔性,关节处都有一些传递结构,这个结构会有柔性。70%-80%的柔性来自关节柔性。
如图是没有柔性的关节动力学和有柔性的关节动力学。柔性的关节动力学给分为了两部分,一部分是电机的那边,另一部分是连杆的那边。谐振频率:
谐振 = 共振,只是在不同领域和不同文献中的名称不一样,性质都是一样的。共振在物理中表现是在两个物体下的,举一个例子,就是一个军队过桥,当桥的上下摆动和军队的步伐频率差不多相同时,就会产生共振,很可能导致桥的断裂,而在机器人中的谐振也是如此,所表现的是会产生较大的振动。
注意下:产生振动有2个来源,一个是连杆的振动产生的谐振,一个是电机端的振动产生的谐振。这些振动可能导致系统在特定频率下发生谐振,影响机器人的性能和稳定性。
那么有些人会问了,系统在特定的频率下是指什么?指的是任何一个物体进行运动,都会产生一个振动频率,而这个振动频率就是固有频率。
注意:柔性杆的振动使用并不是很多。
通常下:整个柔性主要是关节柔性,所以后面的振动抑制也是处理关节柔性的。
抑制振动的方法
回顾一下:低通滤波器,过滤高频信号,保留低频信号,比如10Hz和50Hz信号来说,10Hz就是低频,50Hz就是高频信号。
陷波器通俗来说就是把某一个频率的波给消除掉,比如谐振频率在50Hz,那么就使用50Hz的陷波器,把50Hz信号给消除掉,就做到了抑制的作用。 陷波器在日常生活中应用也是非常多的,比如一个电器在接入50Hz的电路中,为了防止50Hz的工频干扰,此时就会选择使用陷波器把干扰滤掉。具体的使用方法是把50Hz的幅值给拉小,相当于把50Hz的频率给过滤掉了。
但是在实际机器人中,谐振动的频率是不断的变化的, 这个有很大因素进行影响,比如质量,惯性参数,阻尼,姿态位置等一些因素进行影响。
所以陷波器有一定的缺点:只能去除单一频率的信号。
陷波器不能够广泛普及的理由有:检测的频率不及时,不准确等因素进行控制着。
同时有时候会使用低通滤波器的方法作为陷波器进行使用,稳定系统,这是因为一般情况下来说,谐振的频率是比较高的,所以可以变相的利用低通滤波器来进行作为陷波器使用。
第二种方法:
本质:机器人运动具有一个固有频率,输入整形的原理是输入一个相反的和固有频率相同的频率,从而消除固有频率,防止谐振的发生。
但是实际的机器人中固有频率其实并不是知道的,时间上也不知道,准确的参数并不知道。
难点:参数设定的合理性是非常之困难的(因为系统是一个时变系统),算法的复杂度会变大,虽然输入整形的效果是比较好的。
陷波器和波形整定的适用范围是非常少的:不适用与非线性,时变性,各个关节的耦合性。所以在实际中并不使用。
第三种:优化轨迹,但是需要舍弃一些性能
本质就是让路径的实现尽可能的光滑,实现的方法相对来说跟简单一些,利用高阶多项式进行处理轨迹,使其更加的光滑,但是可以发现实现的速度可能相对来说更慢了。
克服振动的本质就是要解决关节的柔性,比如换用谐波电机或者跟高级的电机。
eg
注意:此处的动力学方程是在弹簧处给分离出,是由2个转动关节所组成,即左侧的转动惯量与角加速度相乘 = 输出力矩 - 输入力矩,右侧同理,那么Tw就是柔性关节产生的额外力矩,注意不光光有K,还可以由其他的加入进去,最后是为了求出角加速度,对线速度进行求一次导。
之后利用传统的控制理论,进行求出他的传函和流程图进行分析。
wa是一个系统无阻尼谐振频率,也就是平常说的谐振频率,根据通式可知,负载的转动惯量是随着末端机构在不同的位姿是不断变化的,所以在实际使用中使用陷波器和整形波形进行消除振动是非常困难的,所以一般使用高次多项式进行对位置,速度,加速度平滑处理,可以减少震动,但是机构的性能会大大降低,速度可能加不起来,齐次的话可以减少振动还可以使用更高级的电机进行让其稳定。
振动检测的方法:在机械末端增加一个imu传感器,最好是九轴以上的,读取更加精准,完后读取其角速度方向的数据,进行FFT变换,根据变换后的数据,进行绘制Bode图进行分析。