首页 运动控制 正文

回复

伺服电机运动累计误差

运动控制 浏览:4035 回复:12 收藏

matlac  2020-11-08 10:45

伺服带动丝杆螺母平台左右移动,先寻0,然后正向移动到500mm处,再反向运动到-500MM处,如此反复,PLC发脉冲给伺服驱动器,驱动器驱动伺服电机旋转,带动丝杆螺母平台。 运行成千上万次以后,如何保证精度呢?(第N次停止的500MM位置处和第1次停止的500MM位置是同一个位置?)

1. 伺服使用增量式编码器

   PLC发脉冲,驱动器驱动电机执行,然后编码器反馈位置; 如果这个过程中,有一次信号干扰,比如驱动器少接受了一个脉冲,由于使用增量式编码器,是靠脉冲数来计算实时位置的,造成有位置偏差,比如第1次正向移动到500MM位置,第2次由于干扰,正向移动到了499.9mm位置处,如此反复偏差,最终执行第N次的500MM位置处可能和第1次执行的位置偏差就就比较大了。  

   大家说使用增量式编码器的伺服电机走位置控制会不会存在这个问题呢? 就是执行了N次以后的500MM位置和第1次的500mm位置处有偏差,不是同一个位置?

2.伺服使用绝对值编码器

   由于使用了绝对值的编码器,所以它不再使用脉冲累加,保证电机走到的每一个位置都有实际对应的刻度位置。看起来好像没有累计误差了对吗?

可是我认为使用绝对编码器只能保证反馈的位置是准确的,不能保证发送的脉冲是正确的。  举例来说,PLC第1次发10000个脉冲,驱动器驱动电机准确的走到了500MM位置处;第2次PLC再发10000个脉冲,可是因为干扰,驱动器只接收到了9999个脉冲,驱动器带动电机只走到了499.9.由于是绝对式编码器,不同于增量式编码器,我们可以通过编码器的数据知道当前的位置是499.9 ,并不是500MM处。  但实际上呢? 实际上PLC是不管的,它认为10000个脉冲都发完了,电机处于500MM处了。

   所以使用绝对编码器能准确的知道电机的位置,但若不把编码器的数据反馈到PLC,只是反馈到驱动器(实际上,一般应用都是反馈到驱动器),这个闭环并不能保证位置偏差。

    不知道我理解的对吗? 欢迎大家指正。


我知道了