为修修为
级别: 略有小成
精华主题: 0
发帖数量: 132 个
工控威望: 274 点
下载积分: 1090 分
在线时间: 40(小时)
注册时间: 2009-12-11
最后登录: 2024-05-04
查看为修修为的 主题 / 回贴
楼主  发表于: 2022-11-22 20:43
我这里有一个应用,设备允许运行条件,有需要满足多条件完成,才可以发出允许运行信号。因为工艺要求条件会有所变化,所以建了一个FB,16路输入,能够实现任意引脚输入条件,完成。但是有一个问题,输入的条件需要是需要取反,请教一下,怎么才能实现不需要取反,而实现这个功能。
[ 此帖被为修修为在2022-11-23 20:21重新编辑 ]
为修修为
级别: 略有小成
精华主题: 0
发帖数量: 132 个
工控威望: 274 点
下载积分: 1090 分
在线时间: 40(小时)
注册时间: 2009-12-11
最后登录: 2024-05-04
查看为修修为的 主题 / 回贴
1楼  发表于: 2022-11-23 20:15
主要是想实现,先预设16个引脚,引脚的实参不固定,引脚数量也不固定,随意填写,实现允许条件达到后OUT输出。主要是这个逻辑怎么实现。现在是实参输入的bool量必须得是取反才可以实现。怎么样才能不取反也能实现呢。
引用
引用第1楼blueflow于2022-11-23 09:36发表的  :
可以试一下将16个Bool条件组装为一个字比如MWxxx,Mxxx.0 :=#IN_1 , Mxxx.1:=#IN_2,......再去判断字的值。
为修修为
级别: 略有小成
精华主题: 0
发帖数量: 132 个
工控威望: 274 点
下载积分: 1090 分
在线时间: 40(小时)
注册时间: 2009-12-11
最后登录: 2024-05-04
查看为修修为的 主题 / 回贴
2楼  发表于: 2022-11-23 20:18
主要是想实现,先预设16个引脚,引脚的实参不固定,不用的引脚可以空着,不影响功能实现,引脚实参随意填写,随意引脚填写。实现允许条件达到后OUT输出。主要是这个逻辑怎么实现。现在是实参输入的bool量必须得是取反才可以实现。怎么样才能不取反也能实现呢。
引用
引用第1楼blueflow于2022-11-23 09:36发表的  :
可以试一下将16个Bool条件组装为一个字比如MWxxx,Mxxx.0 :=#IN_1 , Mxxx.1:=#IN_2,......再去判断字的值。
为修修为
级别: 略有小成
精华主题: 0
发帖数量: 132 个
工控威望: 274 点
下载积分: 1090 分
在线时间: 40(小时)
注册时间: 2009-12-11
最后登录: 2024-05-04
查看为修修为的 主题 / 回贴
3楼  发表于: 2022-11-24 11:59
感谢指点。我试一下。
引用
引用第4楼zh_s_c于2022-11-24 09:21发表的  :
在输入变量里增加一个int类型变量Number,用于定义运行条件的数量。
在临时变量里增加一个int类型变量Temp,用于累计满足运行条件的数量。

temp := 0;

.......