阻抗控制的效果:在没有外力作用的时候,机器人会运动到设定的参考轨迹;当有外部作用力时,那么机器人由于阻碍机器人的运动,逐渐产生运动偏差。
若参考信号类似于正弦的周期信号,那么在执行参考的过程中阻碍其运动,那么就会在此时此地当前位置产生接触力,但参考持续增大变化,使其偏差越来越大,直到反向开始减小偏差。同时由于运动偏差使其刚性接触产生较大的接触力Fe=Ke*(xd-x),
若xd为10sin(t),若x=5时存在接触力。接触瞬间xd=5.(若控制精度极高时,偏差几乎为0)
但是由于周期性参考是时变的,那么xd不可能一直是5,需要执行5→10.那么此时若虚拟阻抗越大,说明控制增益要求大,那么就会尽可能的去逼近时变的参考。但若虚拟阻抗小,那么说明控制增益要求小。也就是说要求较小的接触力,以较大运动偏差为代价!根据任务需求,接触时如果硬要努力去逼近目标,那么很有可能会损坏硬件。因此,接触时往往以设计低阻抗的控制呈现为目标。控制增益小,那么虽然跟踪误差变大了,但是明显降低了接触力。
一旦接触力消失了,那么控制目标就是完全e=xd-x去减小跟踪误差。
存在接触时(若只呈现虚拟刚度),e=xd-x-fe/kd
其中,fe/kd就是虚拟平衡轨迹/点!!
理解:若xd为固定目标xd=10,在实际位置xc=8处接触,那么若虚拟刚度为kd=5N/m。环境刚度为ke=1000.
那么接触时产生的接触力fe=ke*(x-xc)=5*(8-10)=-10
xc为接触位置,也就是机器人与环境接触的位置。
那么虚拟平衡点就是Xv=fe/kd=-10/5=-2
——————————————————————
平衡方程:
kd(xd-x)=ke(x-xc)
上式达到下面的式子时可达到虚拟平衡点,即x→xv(虚拟平衡点)
kd(xd-xv)=ke(xv-xc)
那么,就可以求解得到:xv=(kd*xd+ke*xc)/(kd+ke);