回复:为迎接新学期献礼!共享一个绝对值计圈的库程序

yanxiao

版主

  • 帖子

    12143
  • 精华

    46
  • 被关注

    183

论坛等级:至圣

注册时间:2003-06-06

钻石 钻石 如何晋级?

发布于 2013-08-25 14:15:27

3楼

受芳季的启发,我想了一个绝对型转增量型计数的方法,诸位看看是否行得通:



前提条件也是两次处理之间编码器没有转过半圈以上。那么当前值在过去值的正负半圈范围内(B、C区)才是合理值,若超出此范围(A、D区),应加减一圈数值(周期)调整至合理范围。
示意程序如下:
network 1
ld sm0.0
movw 当前值,ac0
-I 过去值,ac0 //AC0=当前值-过去值
network 2
// 超出上界调整
ldw< 半圈数,ac0 // 10位编码器就是512
-I 整圈数,AC0 // 10位编码器就是1024
network 3
// 超出下界调整
ldw>= -半圈数,ac0 // 10位编码器就是-512
+I 整圈数,ac0 // 10位编码器就是1024
network 4
// AC0中存有本次计算的增量,加到总计数器中
ld sm0.0
ITD ac0,ac0 // 转成32位长整数,和高速计数一样
+D ac0,总量计数
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33257条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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