博图 FB块中InOut接口的介绍

本文详细介绍了PLC编程中InOut接口的应用,针对电机控制案例,探讨了为何在梯形图中Pause接口无法直接外部赋值的问题,以及如何通过从SCL模式改进实现外部控制。通过实例和原理解析,帮助读者理解InOut接口的工作机制及在实际项目中的优化策略。
摘要由CSDN通过智能技术生成

FB块中主要有Input、Output、Static、InOut、Temp、Contant这几个接口,今天主要介绍InOut接口。

InOut接口为输入输出型,代表此接口的参数既可以用过外部接口输入实参,也可作为输出类型,通过外部接口赋值给其他变量

下面通过一个例子实际演示。

功能需求:

按下启动按钮,在没有报警、互锁、暂停情况下,电机运行。

当有报警或者互锁时,触发暂停,电机立即停止,

当人工暂停时,电机也立即停止

程序逻辑截图:

在这里插入图片描述

变量名称数据类型接口类型描述
StartBoolInput电机启动
InterlockBoolInput电机互锁
AlarmBoolInput电机报警
RunBoolOutput电机运行
PauseBoolInOut电机暂停运行

但根据截图中程序运行时,却无法通过外部接口给Pause写值。

原因为:虽然Pause为InOut型,但由于使用梯形图编写,导致Pause线圈在没有互锁或报警时,线圈无法得电,即此时Pause线圈是一直写 0的,导致无法通过外部给Pause写值

不过如果捕捉pause信号,会发现你可以对Pause写值,因为在PLC的一个扫描周期内,在完成外部的Pause写值后,程序会在下一个扫描周期重新写0,从而将原来的值覆盖掉,由于PLC的扫描周期很快,一般为150ms,所以肉眼一般很难看到此变化。

如何改进呢?很简单,将关于Pause程序修改为SCL就可以了。截图如下:
在这里插入图片描述

源程序

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

yue008

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值