现代设备广泛采用了绝对值编码器的电机,其主要优势之一是免除了开机回零的繁琐步骤。因为绝对值编码器能够记忆断电前的位置信息,从而在重新上电后无需重新校准零点即可直接工作。
绝对值编码器又可分为单圈绝对值编码器与多圈绝对值编码器。单圈并非指编码器机械转动的实际圈数限制,而是指其断电后能记忆的最大位置范围限制在一圈之内。相比之下,多圈绝对值编码器的“多圈”同样不是指机械转动的实际圈数,而是指编码器能够记忆并恢复多个完整旋转周期(即多圈)的位置信息。
在现实工作中,即使选用了具备大范围多圈值的编码器,仍然有可能遇到超出其记忆范围的情况。一旦忽视这一点而直接开机工作,极可能导致严重的后果!为了有效避免此类风险,可以使用SMC3_PersistPosition功能块来记忆位置。
Axis:轴名称,映射到要操作的轴。
PersistentData:储位置信息的断电保持型数据结构。
输入端:
bEnable:高电平激活功能块。
(若要在初始化期间还原上次存储的位置, 则必须从应用程序启动时将该值置为 TRUE)
输出端:
bPositionRestored:轴重启后位置恢复完成标志。
bPositionStored:调用功能块后保存位置完成标志。
bBusy:功能块正在执行中。
Error:标记功能块是否产生错误。
ErrorID:当功能块产生错误时,用ErrorID表示错误号。
eRestoringDiag:位置恢复中的诊断信息。
此功能块专为保持并记录实轴绝对值编码器的位置设计,确保在控制器断电重启后,能够恢复断电前的位置记录值。
当PLC重启且接收到bEnable信号为TRUE的指令时,bPositionRestored输出将自动激活为TRUE状态,从而触发系统恢复断电前的实际位置。需要注意的是,确保将SMC3_PersistPosition_Data配置为持续型变量类型,以持久化存储断电前轴的位置。
此功能块一般配合多圈绝对值编码器使用,如果使用的是单圈绝对值编码器编码器,可以使用SMC3_PersistPositionSingleturn功能块,如果是记录逻辑轴位置,可使用SMC3_PersistPositionLogica,使用方法相同。