news 2026/5/10 20:33:30

西门子PLC模拟量滤波程序,西门子1200和1500通用,有电压或者电流或者热电偶选择,高低位...

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
西门子PLC模拟量滤波程序,西门子1200和1500通用,有电压或者电流或者热电偶选择,高低位...

西门子PLC模拟量滤波程序,西门子1200和1500通用,有电压或者电流或者热电偶选择,高低位和高高低低位报警,有滤波功能,非常实用的功能块,配有详细的注释。

车间里新来的电气工程师小李盯着示波器直挠头——温度信号跳得跟心电图似的,十几个压力变送器的数值集体蹦迪。老师傅路过瞟了一眼:"模拟量不滤波,等着半夜被报警吵醒吧!"

西门子PLC模拟量滤波程序,西门子1200和1500通用,有电压或者电流或者热电偶选择,高低位和高高低低位报警,有滤波功能,非常实用的功能块,配有详细的注释。

今天就给大家分享个实战中摸爬滚打出来的模拟量处理功能块,在1200/1500上都验证过。先看功能全景:

  • 支持4-20mA/0-10V/热电偶自由切换
  • 可调滞后滤波算法
  • 带高低限/高高-低低双阈值报警
  • 自动量程转换
  • 状态指示灯全开
FUNCTION_BLOCK AnalogFilter VAR_INPUT RawValue : INT; // 原始AD值 SignalType : BYTE; // 信号类型 0:4-20mA 1:0-10V 2:TC FilterFactor : REAL := 0.2; // 滤波系数(0.1~0.9) ScaleMin : REAL; // 量程下限 ScaleMax : REAL; // 量程上限 HH_Limit : REAL; // 高高报警 H_Limit : REAL; // 高报警 L_Limit : REAL; // 低报警 LL_Limit : REAL; // 低低报警 END_VAR VAR_OUTPUT EngValue : REAL; // 工程值 HH_Alarm : BOOL; H_Alarm : BOOL; L_Alarm : BOOL; LL_Alarm : BOOL; SignalFault : BOOL; // 信号断线 END_VAR

核心滤波算法用了一阶滞后滤波,比移动平均省资源。注意REAL类型转换要放在滤波前:

// 量程转换 CASE SignalType OF 0: // 4-20mA转实际值 EngValueRaw := (INT_TO_REAL(RawValue)/27648.0)*(ScaleMax - ScaleMin) + ScaleMin; 1: // 0-10V处理 EngValueRaw := (INT_TO_REAL(RawValue)/27648.0)*10.0; 2: // 热电偶需补偿冷端温度 EngValueRaw := TC_Compensation(RawValue); END_CASE; // 滞后滤波实现 EngValue := EngValue * (1 - FilterFactor) + EngValueRaw * FilterFactor;

报警逻辑处理有个坑——当启用双阈值时,需要避免高低报警同时触发。这里用状态优先级解决:

// 报警优先级:HH > H > L > LL IF EngValue >= HH_Limit THEN HH_Alarm := TRUE; H_Alarm := FALSE; ELSIF EngValue >= H_Limit THEN H_Alarm := TRUE; L_Alarm := FALSE; ELSIF EngValue <= LL_Limit THEN LL_Alarm := TRUE; L_Alarm := FALSE; ELSIF EngValue <= L_Limit THEN L_Alarm := TRUE; ELSE HH_Alarm := FALSE; H_Alarm := FALSE; L_Alarm := FALSE; LL_Alarm := FALSE; END_IF;

实际使用时,给压力变送器配置参数这样写:

PressureFilter( RawValue := "AI1".CHANNEL_VALUE, SignalType := 0, ScaleMin := 0.0, ScaleMax := 10.0, // 量程0-10MPa FilterFactor := 0.3, HH_Limit := 9.5, H_Limit := 8.8, L_Limit := 1.2, LL_Limit := 0.8 );

记得在OB30循环中断里调用,滤波效果更稳定。遇到信号跳变大的情况,先检查接地和屏蔽——再好的软件滤波也救不了硬件干扰。

调试时可在线修改FilterFactor观察曲线,0.1是强滤波(响应慢),0.9基本不滤波。有个偷懒技巧:把滤波后的值送到HMI的趋势图,拖动系数看实时变化最直观。

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

AI生成的测试用例,如何保证“不重复”?

AI测试用例重复问题的挑战与重要性 随着AI技术在软件测试领域的广泛应用&#xff0c;测试用例的自动生成显著提升了效率&#xff0c;但同时也带来了重复用例的隐患。重复用例不仅浪费测试资源&#xff0c;还会降低覆盖率并增加维护成本。据统计&#xff0c;未处理的重复用例可…

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

央企应用里,asp.net如何支持文件夹的上传和下载?

.NET程序员外包项目大文件上传解决方案&#xff08;原生JSASP.NET WebForm&#xff09; 兄弟&#xff0c;我懂你的苦&#xff01;甲方爸爸要兼容IE8&#xff0c;要文件夹层级&#xff0c;要20G大文件&#xff0c;还要加密传输存储&#xff0c;预算还卡得死死的。但咱是搞技术的…

作者头像 李华
网站建设 2026/5/10 13:20:23

python基于协同过滤算法个性化动漫推荐系统hx3637

前言随着动漫产业的蓬勃发展&#xff0c;网络上涌现出海量的动漫资源。对于动漫爱好者来说&#xff0c;在众多选择中找到符合自己口味的动漫作品变得愈发困难。因此&#xff0c;开发一个基于协同过滤算法的个性化动漫推荐系统显得尤为重要。该系统旨在通过分析用户的历史行为数…

作者头像 李华
网站建设 2026/5/9 23:25:21

计算机毕业设计springboot大学生毕业设计管理系统 基于SpringBoot的高校毕业设计全流程数字化管理平台设计与实现 Java Web技术驱动的高校毕业生课题与答辩综合监管系统开发

计算机毕业设计springboot大学生毕业设计管理系统09cf6v1r &#xff08;配套有源码 程序 mysql数据库 论文&#xff09; 本套源码可以在文本联xi,先看具体系统功能演示视频领取&#xff0c;可分享源码参考。 在高等教育体系不断深化改革的背景下&#xff0c;毕业设计作为本科生…

作者头像 李华
网站建设 2026/5/5 12:18:53

创业公司必看:5招搞定批量软著申请,成本降低90%

去年公司申请高企认定&#xff0c;需要6个软著。找了家代办公司报价4800&#xff0c;说是包过。结果材料被退了两次&#xff0c;来回折腾一个多月&#xff0c;差点耽误申报窗口。 后来换了个思路&#xff0c;用AI工具自己生成材料&#xff0c;6个软著花了不到500块&#xff0c…

作者头像 李华
网站建设 2026/5/8 7:14:28

开发电影/电视剧推荐工具,输入喜好类型,(悬疑/喜剧/言情)推荐适配作品,标注评分及看点,过滤烂片,帮用户节省选片的时间。

1. 实际应用场景与痛点分析 场景描述 - 周末想看电影或追剧&#xff0c;但面对海量片库&#xff0c;用户常遇到&#xff1a; 1. 不知道选什么类型&#xff0c;刷半天找不到合适的。 2. 选到烂片&#xff0c;浪费时间。 3. 想看高分作品&#xff0c;但不知道哪些符合自己口味。 …

作者头像 李华