在阻抗控制下,当机器人接触刚性环境时,可能会出现振荡不稳定的情况。这可以通过调整机器人的阻抗参数来进行调节。
阻抗接触
阻抗参数中的质量、阻尼和刚度都会对机器人控制系统的性能和稳定性产生重要影响。质量主要影响系统的惯性,从而影响响应速度和稳定性;阻尼则可以抑制系统的振荡,提高系统的稳定性;而刚度则表示系统抵抗变形的能力,过大的刚度可能导致系统不稳定。在设计和调整控制系统时,需要考虑这些参数的影响,并根据实际需求进行合理的选择和调整。
在阻抗控制模式下,机器人接触刚性环境时会引起接触振荡,主要原因可以从阻抗参数的角度进行分析。首先,阻抗控制是一种基于系统动态特性的控制方法,通过调整系统的阻抗参数,实现对机器人与环境之间交互的精确控制。在接触刚性环境时,机器人会受到来自环境的反作用力,这种反作用力可能会引起机器人的振动。
- 当阻尼参数较小时:机器人对外界力的响应比较缓慢,系统呈现出欠阻尼状态。此时,如果机器人受到来自环境的反作用力,由于阻尼较小,机器人无法迅速消耗这种能量,导致振荡的出现。
- 当阻尼参数较大时:机器人对外界力的响应比较迅速,系统呈现出过阻尼状态。此时,虽然机器人能够迅速响应外界力,但由于阻尼较大,机器人对外界力的响应比较敏感,容易受到微小扰动的影响,也可能会出现振荡。
- 当刚度参数较小时:机器人的刚度较低,对外界力的抵抗能力较弱。在接触刚性环境时,机器人可能会发生较大的变形,这种变形可能引起机器人的振动。
- 当刚度参数较大时:机器人的刚度较高,对外界力的抵抗能力较强。在接触刚性环境时,机器人虽然不会发生较大的变形,但由于刚度较大,机器人对外界力的响应可能过于敏感,也可能会出现振荡。
虽然这种振荡可能会对机器人的性能产生不利影响,但并不一定意味着机器人是不稳定的。在阻抗控制中,通常会使用一些稳定性判据来评估机器人的稳定性,如李雅普诺夫稳定性判据等。如果机器人在受到扰动后能够恢复稳定状态,那么这种振荡就不算是真正的不稳定性行为。
刚性环境为ke=10000
虚拟阻抗为:kd=100,bd=10,md=1


虚拟阻抗为:kd=100,bd=10,md=5


虚拟阻抗为:kd=100,bd=10,md=10


性能滤波函数的Bode图:
bode(1e5/(0.0005*s^2+5*s+1))

bode(5e4/(0.1*s^2+3*s+1))

性能低通滤波调参
1e5/(1*s^2+3*s+1)

1e5/(1*s^2+5*s+1)

1e5/(1*s^2+10*s+1)

1e5/(2*s^2+3*s+1)

1e5/(2*s^2+1*s+1)

1e5/(3*s^2+1*s+1)

1e5/(4*s^2+1*s+1)

1e5/(1.5*s^2+0.9*s+1)

1e4/(1.2*s^2+0.8*s+1)

1e4/(0.1*s^2+0.8*s+1)

1e4/(0.1*s^2+0.1*s+1)

kd=10,bd=100

1e4/(0.01*s^2+0.1*s+1)


Wp = 1e3/(0.01*s^2+0.01*s+1)


Wp = 1e3/(0.001*s^2+0.01*s+1);


精度与鲁棒性的抉择!!!
1.5e4/(0.08*s^2+0.1*s+1)



8e3/(0.08*s^2+0.1*s+1)


5e3/(0.08*s^2+0.08*s+1)


5e3/(0.1*s^2+0.01*s+1)

————————————————————————————————————————
低阻抗模式下的刚性接触
1e5/(0.0005*s^2+5*s+1)

纯弹簧接触
kd=10


直接发散了!!!

kd=100


没有发散,但是刚性冲击过程振荡现象较为明显,这不是所期望的!!!
kd=1000


kd=10000


物极必反,刚度过大会引起较大振荡,意思是类似于两个纯刚体进行碰撞,势必会引起较大的振荡!!!
kd=100000


但阻抗实现性能就会很弱!!!
kd=1000000


粘弹性接触
kd=10,bd=1


kd=10,bd=10


说明增大阻尼起到了减小震荡的作用。
kd=10,bd=15


kd=10,bd=20


kd=10,bd=100


Kd = 100; Bd = 10

Kd = 100; Bd = 100

Kd = 100; Bd = 1000

呈现质量-阻尼-弹簧动态
Kd = 10; Bd = 10 ; Md = 0.01;

Kd = 10; Bd = 10 ; Md = 0.1;

Kd = 10; Bd = 10 ; Md = 1;
Kd = 10; Bd = 10 ; Md = 2;

————————————————————————————————————
Kd = 100; Bd = 50 ; Md = 2;
1e4/(0.5*s^2+0.3*s+1);9e3/(0.5*s^2+0.3*s+1)


Kd = 10; Bd = 50 ; Md = 2;
1e4/(0.1*s^2+1*s+1)








![Mybatis-Plus 3.3.2 发布,新增优雅的数据安全保护姿势[MyBatis-Plus系列]](https://img-blog.csdnimg.cn/img_convert/2f2356937db21222bc8858daf57b2793.png)













