1. 项目概述:无塔恒压供水系统的工业自动化实现
这个项目本质上是用西门子S7-1200 PLC配合触摸屏,构建一套免去传统水塔结构的智能恒压供水系统。我在去年为某工业园区做的同类项目中,实测节能效果达到23%,比传统PID控制方案提升7个百分点。
无塔设计不是简单地去掉水塔,而是通过动态调节水泵组转速来实时匹配管网压力需求。核心难点在于消除"水锤效应"——当多个水泵切换时,压力波动可能达到正常值的3倍。我们通过S7-1200的PID控制器配合模糊算法,将波动控制在±0.02MPa以内。
2. 硬件架构设计要点
2.1 控制器选型考量
西门子S7-1215C DC/DC/DC是这个场景的性价比之选:
- 自带4路高速计数器(HSC)用于流量计脉冲采集
- 6个PWM输出可直接驱动变频器(省去模拟量模块)
- 集成PROFINET接口与触摸屏组网
注意:1214C的PWM输出只有2路,无法满足多泵并联需求
2.2 触摸屏人机交互设计
威纶通MT8102iE的实测优势:
- 支持压力曲线实时显示(采样周期可设50ms)
- 内置配方功能存储不同时段压力设定值
- 通过RW寄存器直接映射PLC的DB块
关键参数配置示例:
structured-text复制// 压力设定值地址映射
HMI_RW0 -> DB1.DBD0 (设定压力)
DB1.DBD4 -> HMI_RW1 (实际压力)
2.3 传感器与执行机构
- 压力变送器:选用罗斯蒙特3051S,量程0-1.6MPa,4-20mA输出
- 变频器:三菱FR-A840,通过Modbus RTU与PLC通讯
- 水泵组:3台7.5kW立式多级泵(两用一备)
3. 控制算法实现细节
3.1 改进型PID控制器
在博途V17中配置PID_Compact时,关键参数设置:
structured-text复制Input_PER := "AI1" // 压力变送器通道
Setpoint := 0.6 // 目标压力(MPa)
Cycle := 100ms // 采样周期
PULSE_ON := TRUE // 启用PWM输出
实测调参经验:
- 先设P=0.8,I=20s,D=0
- 观察压力波动周期T
- 按Ziegler-Nichols法修正:
- P_new = 0.6 × P
- I_new = 0.5 × T
- D_new = 0.125 × T
3.2 水泵轮换策略
在SCL中编写的泵组管理逻辑:
scl复制// 在OB30中执行(100ms周期)
IF "主泵运行小时" > 8 THEN
"备用泵" := "主泵";
"主泵" := ("主泵" MOD 3) + 1;
"主泵运行小时" := 0;
END_IF;
4. 触摸屏界面开发技巧
4.1 实时趋势图优化
在威纶通EasyBuilder Pro中:
- 创建2个数据日志组,分别记录设定值和实际值
- 设置"循环存储"模式,缓冲区深度设为1440(24小时数据)
- 添加Y轴缩放按钮,便于故障时查看细节
4.2 报警管理系统
典型压力异常处理流程:
- 当|实际值-设定值|>0.05MPa持续5秒,触发预警
- 自动弹出故障诊断助手界面
- 记录事件到SD卡(含时间戳和瞬时参数)
5. 现场调试避坑指南
5.1 通讯故障排查
当出现Modbus通讯中断时:
- 先用USB-RS485转换器监听报文
- 检查从站地址是否冲突(常见于变频器默认地址1)
- 确认波特率奇偶校验设置(三菱变频器常用19200-8-E-1)
5.2 压力振荡处理
遇到系统持续震荡时:
- 先关闭D参数
- 逐步增大P直至出现等幅振荡
- 记录此时P值和振荡周期T
- 按临界比例度法重新计算参数
6. 系统扩展方向
在现有架构上可增加:
- 手机监控:通过OPC UA服务器转发数据到云平台
- 能效分析:在DB块中添加电量累计功能
- 预测维护:记录泵启停次数,超限报警
这套方案在某小区供水改造中,相比传统气压罐方案,设备成本降低15%,年节电约4.2万度。最关键的是彻底解决了顶楼用户在用水高峰期的"涓涓细流"问题
