回复:季老师,绝对值编码器实现累积功能有什么好的建议?

夕阳

  • 帖子

    99
  • 精华

    3
  • 被关注

    12

论坛等级:游士

注册时间:2007-09-24

普通 普通 如何晋级?

发布于 2011-04-02 22:34:00

11楼

这个问题很多年前做过,其实很简单。编码器对应的是物理端子0-7位。
把编码器的最高位连接到中断IO端子上(如果这个高位PLC不支持IO中断,可以调换一个端子,记得在做格雷码转换时把这个位调换回来,否则数据出错),建立两个中断。另外建立一个双字的临时数据A.
1,在上升沿中断里,如果第6位OFF则把原来的数据A加255=A(如果第6位ON不做任何处理)。
2,在下降沿中断里,如果第6位OFF则把原来的数据A-减255=A(如果第6位ON不做任何处理)。
3,读取当前IO,做格雷码转换(如果因为PLC的IO端口不支持编码器的最高位的IO中断而打乱了IO位的顺序,必须调整回来),假设转换的数据为B,那么当前的编码器的数据=A+B
具体的程序我就不再编写了。希望你能看明白。实在不行改天写给你。今天累了
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33257条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

快扫描右侧二维码晒一晒吧!

再发帖或跟帖交流2条,就能晋升VIP啦!开启更多专属权限!

  • 分享

  • 只看
    楼主

top
您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。