matlac
级别: 探索解密
精华主题: 0
发帖数量: 47 个
工控威望: 176 点
下载积分: 972 分
在线时间: 10(小时)
注册时间: 2014-11-28
最后登录: 2021-12-31
查看matlac的 主题 / 回贴
楼主  发表于: 2021-01-23 11:30
一个长期以来很困惑的问题,问过很多次很多人,都说不清楚,问技术支持也无法解决。先前论坛里也问过,无满意的答复;
西门子200SMART+第3方日系伺服,走位置控制,上电回0. 寻找到参考点成功以后。运动到起始位置A点。 工作方式为从A点运动到B点,然后再返回A点。 重复运动无数次。
这个典型的例子是PLC发脉冲,伺服接收脉冲,驱动电机带动丝杆让工作台反复在A点和B点之间重复运动;
有几个疑问:
1. PLC如何判断电机当前的位置?
  这个系统里面编码器反馈是给伺服驱动器的,PLC是怎么准确的知道电机的位置呢?  咨询西门子,答复是根据发出去的脉冲数计算伺服电机的当前位置。 因为PLC并没有得到电机的反馈,所以PLC只能根据自身发出去的脉冲数,假定电机执行完了PLC的脉冲,实时计算电机位置。
    这样说白了,电机的当前位置PLC只是根据自己发送的脉冲数计算,没有反馈,没有接收电机反馈;所以如果电机没有准确的执行,那么麻烦就来了
2. 重复定位精度
  第一次从A点运动到B点,位置很准,那么第10000次呢? 第10000次的A点和第一次的A点会有偏差吗? 第10000次的B点和第一次的B点会有偏差吗?  能达到多大的偏差? 怎么控制这个偏差? 怎么监控这个偏差? 怎么避免这个偏差?怎么处理这个偏差?  或者说你以前这种情况从来没有碰到过这个问题?
  有的人说,你不能运行几次然后回0 吗?  实际这种做法最坑,有些场合根本不让你运行的过程中回0 .  我这台机器是台辅机,配合主机的,主机是连续的节拍,中间根本不允许回0,不存在某个节拍停下让你回0.   回0 当然可以解决重复定位精度的问题,但是有些场合就是 开机上电回一次0,然后就连续节拍,运行,中间不存在回0的机会。
    伺服自身也有位置偏差计算器,就是实际接收的脉冲数跟执行掉的脉冲数比较,如果这个数值过大,可以报警。  报警当然可以,但是要的不是报警,要的是没有偏差,报警只是说有偏差了,但是偏差怎么出现的,怎么避免偏差,怎么根治偏差呢?  机械传动?  干扰?  那么机械传动要多顺畅才能保证不出现偏差?  干扰有什么参数监控? 怎么样才能保证避免偏差呢?
   一个很常见,很简单的伺服运动定位的问题,不知道大家遇到过这方面的困惑没有? 还请结合你实际做过的脉冲驱动伺服为例谈谈
penginginten
级别: 工控侠客
精华主题: 0
发帖数量: 178 个
工控威望: 3237 点
下载积分: 1374 分
在线时间: 165(小时)
注册时间: 2019-04-08
最后登录: 2024-05-21
查看penginginten的 主题 / 回贴
1楼  发表于: 2021-01-23 15:37
1.PLC判断伺服的当前位置靠一个脉冲计数存储起来,当回原指令触发后会把这个脉冲存储器清零,然后用相对和绝对指令记录当前的位置脉冲数。

第一种的问题电机没又准确执行的情况,丢脉冲或其他原因干扰。
解决办法加编码器,这样能在PLC输出和执行机构中有反馈回来信号,或者用总线的控制方式。

PLC判断当前位置,总线的控制方式相对于加编码器的话,总线的控制方式更好一些,另外开关机在不回原点的情况下PLC知道当前位置只能用绝对编码器伺服。
绝对编码器总线的控制方式在断电时,把位置参数写芯片内,开机后PLC读取当前的位置参数。

2.重复定位精度
重复定位精度和第一个问题一样的。
伺服电机造成丢脉冲的情况会造成位置偏差,其他的位置偏差暂时没碰到过。
如果是电机加减速机做角度定位,这种是减速机的齿比没有除尽,所以在定位多少圈之后必须回圆一次。