回复:求助S7-200的计数问题?

touch++

  • 帖子

    231
  • 精华

    2
  • 被关注

    4

论坛等级:游侠

注册时间:2009-01-04

普通 普通 如何晋级?

发布于 2011-12-15 16:10:05

3楼

提供一个稍微不同的思路,适合点数比较多的情况。只要你不是226的CPU后面的I1.6和I1.7应该恒为0,如果是226的,取信号时就要按位对应了。
//网络1:状态字节检测
LD sm0.0
MOVB IB1,VB0 //取得过程信号到内存
MOVW 0,VW2
FOR LW0,1,8
LPS
A V0.0
+I 1,VW2
LPP
SRB VB0
NEXT
//以上代码检测状态字节里面有多少个位为on
//网络2:输出对照表
LD M0.0
=Q0.0 //一号泵启动输出
LD M0.1
=Q0.1 //二号泵启动输出
//网络3:输出控制
LDW<= VW2,3
S M0.0 ,1 //当小于等于3个状态位信号为on时,一号泵启
R M0.1 ,1 //同时关闭二号泵
LDW> VW2,3
S M0.0,2 //当大于三个状态位信号为on时,双泵启

程序没有测,可能有错误,这里就是给楼主提供一个用移位指令来判断当前状态的思路。
有善有恶意之动
评论
编辑推荐: 关闭

请填写推广理由:

本版热门话题

SIMATIC S7-200

共有33257条技术帖

相关推荐

热门标签

相关帖子推荐

guzhang

恭喜,你发布的帖子

评为精华帖!

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

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

  • 分享

  • 只看
    楼主

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