记录|如何获取PLC的输入端I0.0的值

17 篇文章 0 订阅
11 篇文章 2 订阅


前言

灵感来源:如何检测PLC中数值有无发生变化,原来如何简单


一、思路

困惑点

首先,I0.0这些是不存在于DB块中的,而我们C#中的Read()和Write()方法都是处理DB块中的数据。
后来受到启发,我们可以将I0.0这些输入端的数值传递给一个变量,而这个变量是DB块中创建的。
但是实际中发现,MOVE是不接受Bool的I0.0的数值传入。。。
最后,我的解决方案变成了:在DB块中创建个Int型数组arrInput,用arrInput[0]中的数据去表示I0.0的变化。

  • arrInput[0]=0,代表I0.0=0
  • arrInput[0]=1,代表I0.0=1
    而arrInput中值的变化,只要结合I0.0的开关状态即可表示,如下:
  • 程序段2中 -| \ |-常闭状态下,arrInput[0]=0;
  • 程序段1中 -| |-在闭合后,arrInput[0]=1

解决方法看下面步骤

Move && CMP==

PLC中的MOVE就能实现赋值操作。【但是Bool类型的值不能参与】
CMP==用于判断值是否相等。
在这里插入图片描述


更新时间

  • 2024-07-18:创建
  • 2024-07-22:解释了具体的思路和实际的线路。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值