如tu1所示问题如下1、编码器读出来的数,为什么要移位,有什么用?
2、4096这个数怎么来的,怎么计算?
3、这是绝对值编码器,还是增量型的,编码器的数是32位双整数不断累积循环吗,会变为0吗?
备注:这个编码器是带DP接口的那种,硬件组态里直接连的。
问题补充:
我只想搞明白如图1所示:编码器读出的的数PID668是格雷码吗?然后SLD8和SSD8两条指令后就可以变成2进制码吗??和DB169.DBD0做减法,再转换成实数吗??
所有的格雷码SLD8SSD8就能变成2进制码吗??是不是我理解错了?求高手们指教谢谢
图片说明:
最佳答案
编码器为绝对值型的,4096为一圈的分辨率,一般此类编码器为多圈,多数为4096圈。
存在为0的位置,但一般用的是编码器的中部,运行时编码器为往返运行,不会是一个方向,如果一个方向,肯定会无规律出现0.
编码器的输出数据格式可能是格雷码等,需要换算。
提问者对于答案的评价:
自己理解这个是ELCO多圈绝对值编码器pid668是编码器的值(应该是32位二进制值)不是格雷码,高位是状态位,移位是为了移除状态位为了下边程序计算。应该是这样吧???求指正!!
最后谢谢您的回答对我很有用