找回密码
 请使用中文注册
查看: 22|回复: 1

输入_输出区域的滤波程序

[复制链接]
阅读字号:

88

主题

247

回帖

804

积分

入门维修师

积分
804
发表于 1 小时前 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?请使用中文注册

×
输入_输出区域的滤波程序
  在特殊应用场景中,对每一个输入和输出I/O区域均需要进行滤波调整,而这里的滤波调整实际上就是给这些输入和输出添加一些定时器,如果每一个输入或输出都写一段程序,虽然没有难度,但是总会感觉程序太繁琐了点。
我在2年多前,在给一条流水线做项目时,因为对每一个输入(对射光电)和输出(接触器)均需要根据实际流水线线段的长度,定义一些定时器数据,或接通延时,或断开延时的延时程序,用SCL语言,调用FOR循环语句,能够很方便的写这些功能,实用性好适合推广。
程序:
1)  创建FB1,并定义接口变量,图示1:
2)  根据输入、输出需要的延时思路,编辑接通延时和断开延时SCL程序,图示2:
  程序非常简单,按输入、输出的字节数需要定义一个循环,此处按一个字节为基本单位的每一个位循环,当FB1运行循环开始,输入管脚的#索引0(对应一个输入位变量)判断是否为1,如果为1,则启动接通延时定时器,并将接通延时定时器的Q值传输给Q变量地址的对应位。断开延时与接通延时原理是同样的,不再复述。
3)  将FB1编译保存后,由OB1程序中调用,图示3:
因为使用了输入、输出映射,管脚由DB数据块赋值实参。
4)  在FB1对应的背景数据块中直接赋值具体每一个定时器的参数,图示4:
集中赋值调试,需要调整的时间数据相对集中在一起,容易调试保存。
  该SCL编程方法,适用于需要批量对输入、输出域进行延时处理场所的应用。

88

主题

247

回帖

804

积分

入门维修师

积分
804
 楼主| 发表于 1 小时前 | 显示全部楼层
自从有了scl编程法,对一些数据的运算真的是如虎添翼一般。
对于需要输入和输出滤波处理的程序非常高效。
您需要登录后才可以回帖 登录 | 请使用中文注册

本版积分规则

QQ|手机版|家电维修论坛 ( 蜀ICP备19011473号 川公网安备51102502000164号 )|网站地图|网站地图

GMT+8, 2026-8-31 13:29 , Processed in 0.124986 second(s), 24 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表