***编码器重新上电后位置没有保持是什么原因?

分享到:
665
下一篇 >

菜鸟童鞋提问:

用的是SIMOTION D435,Scout软件版本是V4.3.1,电机自带***编码器,我的配置过程是这样的:

1、在轴配置里homing设置:Absolute encoder is used选择absolute,absolute encoder offest设为0

2、在MCC程序中homing type**个选项。calibration  with specification of the position values ,然后home position coordination 也设为0.

3、执行回零程序后,显示回零状态为Yes,轴的实际位置为0,然后运动100mm,轴的度数为100,一切正常,执行Copy ram to rom。

4、Simotion D 断电,重新上电后,电机没有运动,但轴的位置却变成0了,而不是掉电前的100,此时的回零状态还是为Yes

为什么轴的位置没有保持呢?同样的位置经过回零后应该显示同样的读数才是正确的吧??好着急,求解答,谢谢!!!

沙发君:

不能用MCC里的  用ST或LAD里的 编码器置0 很长的一个指令 这个电脑没装软件没法看 只有那一个指令有用 不然都是断电后无效的

酱油君:

记得以前做过测试,用MCC是可以保持零点的。步骤如下:

1.在Axis--Homing中配置,跟你的一样

2.写好程序并下载,然后Copy RAM to ROM

3.在MCC中执行一次Home Axis,HomingType:Absolute encoder adjustment

此时轴处于“已回零Homed”的状态


此时,断电再上电,位置值是保持的。


Copy RAM to ROM保存的程序,与回零无关。

菜鸟童鞋:

 谢谢!现在西门子工程师认为可能是编码器计数值溢出的关系,因为实际使用的编码器好像是单圈20位的,说溢出以后就没法保持!现在想采取的办法是用一个可保持变量来记录并实时更新轴的实际位置,再在上电的时候用_redefinPosition函数来赋值给轴,实际效果并不理想,可能是程序运行时序的影响!

沙发君:

楼上说的话到是让我想起了一点 在回零处 有个***的OFFSET 把值写进行 然后执行Copy RAM to ROM也是可以进行保持的 

刚也看错了看成了编码器是外置的(没细看 粗看了下  搞过一次外置编码器的搞了两天 才找出那个指令 所以印象深啊 下面的没看 就以为也是外置编码器)  电机带***编码器MCC是可以保持的  我刚说的是外置编码器的回零 无法MCC进行 只能用ST和LAD的那个指令来进行

高手:

上面说的都对,首先确认如果编码器是单圈的,如果再有减速机的话,可能运行很短的距离就会溢出。其次在simotion中用程序进行***编码器较正后,是会自动copy ram to rom的,不管一代CPU还是二代CPU,都是自动保存的,只不过保存时间不同,二代是可以**保存,一代则是靠超级电容来保存的,保存时间不定!

你可能感兴趣: 工控菜鸟园 驱动技术 SIMOTION 编码器 电机
无觅相关文章插件,快速提升流量