news 2026/4/16 13:41:58

最近在鼓捣西门子PLC的轮询控制,发现风机水泵这类设备组经常需要错开启动。随手用SCL撸了个定时轮询的FB块,实测在1200/1500系列PLC上跑得挺稳

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
最近在鼓捣西门子PLC的轮询控制,发现风机水泵这类设备组经常需要错开启动。随手用SCL撸了个定时轮询的FB块,实测在1200/1500系列PLC上跑得挺稳

定时轮询PLC程序,纯SCL编写。 已经封装成FB,方便多次调用。 适用于风机水泵阀门等轮询切换启动。 程序结构简单,可灵活调整成更多数量的轮询切换。

先甩个代码骨架:

FUNCTION_BLOCK FB_PollingControl VAR_INPUT Enable: Bool; // 总使能 PollingTime: TIME := T#5S; // 轮询间隔 DeviceCount: INT := 3; // 设备数量 END_VAR VAR_OUTPUT ActiveIndex: INT; // 当前激活设备索引 END_VAR VAR Timer: TON; CurrentDevice: INT := 0; CycleCounter: INT := 0; END_VAR

核心逻辑其实就个带刹车的老司机循环。定时器到点就切下个设备,注意这里用模运算实现环形计数:

IF Enable THEN Timer(IN:=NOT Timer.Q, PT:=PollingTime); IF Timer.Q THEN CurrentDevice := (CurrentDevice + 1) MOD DeviceCount; CycleCounter := CycleCounter + (CurrentDevice / DeviceCount); Timer(IN:=FALSE); END_IF; ActiveIndex := CurrentDevice; ELSE Timer(IN:=FALSE); CurrentDevice := 0; END_IF

重点说下这个MOD运算——当CurrentDevice自增到DeviceCount时,取模会自动归零,形成0→1→2→0的循环。实际项目中给水泵组用这个逻辑,八个泵轮流切愣是没出过岔子。

定时轮询PLC程序,纯SCL编写。 已经封装成FB,方便多次调用。 适用于风机水泵阀门等轮询切换启动。 程序结构简单,可灵活调整成更多数量的轮询切换。

调用示例更简单:

// OB1中调用 #Polling_Fans := (Enable:=true, PollingTime:=T#30S, DeviceCount:=5);

想改轮询策略?比如设备3需要双倍时长,直接改定时器参数就行:

IF ActiveIndex = 3 THEN Timer.PT := T#10S; // 特殊设备延长到10秒 ELSE Timer.PT := PollingTime; // 其他设备保持原时长 END_IF

实测中发现个坑:DeviceCount设为0会导致模运算异常,最好在初始化时加个保护:

IF DeviceCount <= 0 THEN DeviceCount := 1; END_IF;

这个FB最大的优势是内存占用固定,不像用数组实现的那样吃资源。最近做的空压机集群项目,20台设备轮询,扫描周期也就多了0.2ms。下次碰到需要错峰启动的场景,不妨把这货拖出来试试,改改参数直接能用。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/14 14:19:28

塘沽潮汐表查询2026-02-07

位置&#xff1a;塘沽&#xff0c;日期&#xff1a;2026-02-07&#xff0c;农历&#xff1a;乙巳[蛇]年十二(腊)月二十&#xff0c;星期&#xff1a;星期六&#xff0c;潮汐类型&#xff1a;大潮活汛 最高水位&#xff1a;345.00cm&#xff0c;最低水位&#xff1a;74.00cm&…

作者头像 李华
网站建设 2026/4/16 11:04:13

用过才敢说! 更适合继续教育的降AIGC平台,千笔AI VS 知文AI

在AI技术迅速发展的今天&#xff0c;越来越多的学生和研究人员开始借助AI工具提升论文写作效率。然而&#xff0c;随着学术审查标准的不断提高&#xff0c;AI生成内容的痕迹越来越容易被识别&#xff0c;论文中的“AI率”问题也逐渐成为困扰众多学子的难题。尤其是在继续教育领…

作者头像 李华
网站建设 2026/4/16 12:19:22

Banana Slides 深度解析:PPT 生成引擎与逆向工程机制

Banana Slides 深度解析&#xff1a;PPT 生成引擎与逆向工程机制 在生成式 AI 领域&#xff0c;文本生成图片的质量已达到极高水平&#xff0c;但生成的图片往往是扁平的位图 (Bitmap)&#xff0c;无法进行二次编辑。对于 PPT 这种对结构化和可编辑性要求极高的场景&#xff0…

作者头像 李华
网站建设 2026/4/16 8:53:29

“红包口令/邀请码” 格式,常见于一些 App 的营销推广链接

“红包口令/邀请码” 格式&#xff0c;常见于一些 App 的营销推广链接。这种字符串的生成算法通常是&#xff1a; 特征分析 UA5070 可能是用户ID或渠道标识V73:/ 可能是版本标识G2Z8H4XLTC 看起来像是Base36或Base62编码的随机字符串 可能的生成算法 用户ID 随机码 校验位时间…

作者头像 李华
网站建设 2026/4/16 12:28:48

写作压力小了,更贴合本科生的AI论文网站,千笔ai写作 VS 万方智搜AI

随着人工智能技术的迅猛迭代与普及&#xff0c;AI辅助写作工具已逐步渗透到高校学术写作场景中&#xff0c;成为本科生完成毕业论文不可或缺的辅助手段。越来越多的学生开始依赖各类AI工具简化写作流程、提升创作效率。但与此同时&#xff0c;市场上涌现的AI写作工具良莠不齐、…

作者头像 李华
网站建设 2026/4/15 15:19:16

环境数据多维关系探索利器:Pairs Plot 完全指南

环境数据多维关系探索利器&#xff1a;Pairs Plot 完全指南 引言 在环境监测与科研中&#xff0c;我们常常面对包含多个污染物参数、时空维度的复杂数据集。如何快速、直观地洞察这些变量间隐藏的关联、趋势与异常&#xff1f;散点图矩阵&#xff08;Pairs Plot&#xff09;作…

作者头像 李华