欢迎光临大柏电子科技(上海)有限公司
15721373211
当前位置
首页 > 新闻中心
西门子用200 SMART的输入点来检测接近开关的状态,如何统计所检测到数量?
2021/8/26 20:54:59
西门子用200 SMART的输入点来检测接近开关的状态,如何统计所检测到数量?

实现一个功能:PLC的输入点接了10个以上的接近开关,每个接近开关对应一个输入点。当中某个接近开关检测到物体后,对应的输入点就接收到信号,数量加一。那么有什么办法把每个输入点检测到的信号叠加以来呢?例如I0.0、I0.3、I0.6、I0.7都有信号,其他没有信号,如何把这4个信号相加成数字4,保存在寄存器里?
逻辑太复杂,望有高手指教一下,谢谢谢谢~~~
请见:
、跟我一起玩200 smart PLC 如何查找“字节”数据中的有效位:
http://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1405898&b_id=64
感谢回答!主要是还带有相关的操作过程,对于有相同疑问的新手或许能达到比较好理解的效果。
同样感谢其他大神的回答,我会自己尝试一遍的。
看看这个:
LDB<>  IB0, VB0     //检测到IB0有变化
EU
MOVB   IB0, VB1    //将输入状态传送到VB1
MOVB   IB0, VB0    //将输入状态值作为原值保存
创建一个表格指令的应用,把VB1的值作为表格指令的原值,存放到表格指令中。
用逻辑与或计算  and 和 OR
IB0包含i0.0到i0.7,也就是二进制的11001001。只要IB0等于8#311.
采用只要有位上升沿就+1的方式可以达到你的计数要求,各个位的上升沿都要独立输出一个中间位
LD sm0.0
mov vb0
LD I0.0
INC VB0
LD I0.1
INC VB0
LD I0.2
INC VB0
......
......
20个都是这么写
最后VB0就是结果。

联系方式
CONTACT US

电话:13818569113

邮箱:13818569113@139.com

网址:http://www.xmzgk.com

地址:中国上海市青浦区崧盈路398号6栋

用手机扫描二维码关闭