绝对值编码器回零被称为Absolute encoder homing或absolute encoder adjustment,用于绝对值编码器的零点校正,当调试控制器时,此功能必须被执行一次。
使用_homing命令,回零模式设置为“ENABLE_OFFSET_OF_ABSOLUTE_ENCODER”时,当前轴位置被设置=编码器值+绝对值编码器的偏移量,如图5-18所示。
绝对值编码器的偏移量可以设置作为一个附加值或绝对值,被保存在NVRAM中,在下次绝对值编码器调整之前一直有效。
图5-17 相对直接回零命令
图5-18 轴的零位置为编码器零位置+绝对值编码器偏移量
总的偏移量可通过absHomingEncoder.setOffsetOfAbsoluteEncoder及absshift配置数据来实现。
1.设置一个附加的偏移量
若设置absHomingEncoder.setOffsetOfAbsoluteEncoder=RELATIVE(默认设置),执行homing命令后,有
1)轴的实际值=编码器实际值+(以前设置的有效偏移量+absshift);
2)新的偏移量=以前设置的有效偏移量+absshift。
当调用_homing命令时,absHomingEncoder.absshift被叠加到当前绝对值编码器的偏移量中,设置画面如图5-19和图5-20所示。
2.设置一个绝对偏移量
若设置absHomingEncoder.setOffsetOfAbsoluteEncoder=ABSOLUTE,当调用_homing命令时,absHomingEncoder.absshift被设置为绝对值编码器的偏移量如图5-21所示。执行homing命令后,轴的实际值=编码器实际值+absshift。
比如当前实际编码器位置值=100.000,绝对偏移absshift=5.000,执行homing命令的结果如下:
1)第一次执行_homing命令,实际位置=105.000;(www.xing528.com)
2)第二次执行_homing命令,实际位置=105.000;
3)设置绝对偏移absshift=7.000后,第三次执行_homing命令,实际位置=107.000。
3.设置轴至预定义的位置
图5-19 绝对值编码器回零设置
图5-20 绝对值编码器回零编程
图5-21 绝对值编码器回零设置
当在_homing命令中设置功能参数homingMode:=SET_OFFSET_OF_ABSOLUTE_EN-CODER_BY_POSITION时,执行homing命令后则将当前位置值设置为homePosition参数中的值。绝对值编码器的偏移量通过此值由系统来计算,并在系统变量absoluteEncoder[n].totalOffsetValue中显示,此值在系统中作为掉电保存变量进行保存。在absHomingEncod-er.absshift中的配置数据不会被改变。
执行下述步骤可进行绝对值编码器的调整:
1)不激活限位开关,因为当限位开关激活时不能进行绝对值编码器的调整。
2)执行绝对值编码器的调整有以下方法:
方法1:一旦执行homing命令,homingMode:=ENABLE_OFFSET_OF_ABSOLUTE_ENCODER,则回零使用配置数据absHomingEncoder.absshift对编码器实际位置进行偏移(配置数据absHomingEncoder.absshift可在线进行修改,任何修改可立即生效)。
方法2:将轴移动到设定的零点位置,执行_homing命令,homingMode:=SET_OFF-SET_OF_ABSOLUTE_ENCODER_BY_POSITION,则将当前位置设置为homePosition中的值。绝对值编码器的偏移量会被系统自动计算,并显示在系统变量absoluteEncoder[n].totalOff-setValue中,此值在系统中作为掉电保存变量进行保存。配置数据“absHoming Encoder.absshift”中的值不被改变。
3)使能软件限位开关。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。