1. 项目背景与行业需求
在城镇供水系统中,恒压供水是保障用户用水质量和管网安全运行的关键技术。传统的水塔供水或人工调节方式存在压力波动大、能耗高、响应速度慢等问题。某水务公司在对辖区老旧供水系统改造时,提出了"恒压、节能、自动化"三大核心需求。
我去年参与的这个项目,正是针对这些痛点设计的PLC+组态控制系统。系统投入使用后,不仅将管网压力波动控制在±0.02MPa以内,还通过智能调度水泵组合实现了27%的节能效果。下面就来拆解这个系统的设计要点和实现细节。
2. 系统整体架构设计
2.1 控制方案选型
在比较了变频器直接控制、PID控制器+接触器、PLC控制三种方案后,我们最终选择了"PLC+变频器+压力传感器"的闭环控制架构。这个选择基于三点考量:
- 扩展性需求:水务公司未来计划接入远程监控平台,PLC的通信扩展能力(支持Modbus TCP、PROFIBUS等协议)比其他方案更具优势
- 可靠性要求:供水系统需要24小时连续运行,PLC的MTBF(平均无故障时间)可达10万小时以上
- 维护便利性:组态软件提供的可视化界面比传统仪表盘更便于故障诊断
2.2 硬件配置清单
| 设备类型 | 型号规格 | 数量 | 备注 |
|---|---|---|---|
| PLC主控单元 | Siemens S7-1200 1214C | 1台 | 带模拟量输入/输出模块 |
| 变频器 | ABB ACS550-01-072A-4 | 3台 | 匹配22kW水泵电机 |
| 压力变送器 | E+H PMC71-AA1A1A1A | 2套 | 4-20mA输出,量程0-1.6MPa |
| 液位传感器 | 超声波式LM-100 | 1套 | 监测清水池水位 |
| HMI人机界面 | 昆仑通态TPC7062KX | 1台 | 7寸触摸屏 |
关键提示:压力传感器必须安装在管网最不利点(通常是距离泵站最远的末端用户处),这个安装位置直接决定控制效果
3. 控制系统核心逻辑实现
3.1 恒压控制PID算法
系统采用增量式PID算法,其离散化公式为:
code复制Δu(k) = Kp[e(k)-e(k-1)] + Ki*e(k) + Kd[e(k)-2e(k-1)+e(k-2)]
在实际编程中(使用SCL语言),核心代码如下:
scl复制// PID计算函数
FUNCTION "PID_Calc" : VOID
{ S7_Optimized_Access := 'TRUE' }
VERSION : 0.1
VAR_INPUT
SetPoint : REAL ; // 压力设定值
ActualValue : REAL ; // 实际压力值
Kp : REAL ; // 比例系数
Ti : REAL ; // 积分时间
Td : REAL ; // 微分时间
Ts : REAL ; // 采样周期
END_VAR
VAR_OUTPUT
Output : REAL ; // 输出频率(Hz)
END_VAR
VAR_TEMP
error, lastError, prevError : REAL;
Pout, Iout, Dout : REAL;
END_VAR
BEGIN
error := SetPoint - ActualValue;
Pout := Kp * (error - lastError);
Iout := Kp * (Ts/Ti) * error;
Dout := Kp * (Td/Ts) * (error - 2*lastError + prevError);
Output := Output + Pout + Iout + Dout;
// 输出限幅(0-50Hz)
IF Output > 50.0 THEN
Output := 50.0;
ELSIF Output < 0.0 THEN
Output := 0.0;
END_IF;
prevError := lastError;
lastError := error;
END_FUNCTION
3.2 水泵调度策略
系统配置了三台水泵(两用一备),采用"先启先停+轮换使用"的调度策略:
- 单泵变频模式:当流量需求<60%时,仅运行1#泵变频调节
- 双泵并联模式:当1#泵达到48Hz仍无法满足压力时,启动2#泵(固定50Hz运行),1#泵转为变频调节
- 休眠模式:夜间低流量时段,当压力持续5分钟高于设定值0.05MPa时,自动停泵
实际调试中发现:水泵切换时容易产生压力震荡,后来增加了2秒的延时渐变过渡,将频率变化率限制在5Hz/s以内
4. 组态监控系统开发
4.1 WinCC画面设计要点
主要开发了以下关键界面:
- 工艺流程总览:动态显示管网压力、水泵运行状态、水池液位等
- 参数设置界面:允许调整压力设定值、PID参数、调度策略等
- 报警历史查询:记录压力超限、设备故障等事件
- 能耗统计报表:按日/月统计各水泵耗电量

(注:此处应为实际界面截图,展示压力曲线、设备状态等关键信息的布局方式)
4.2 数据通信配置
PLC与组态软件通过OPC UA协议通信,关键配置步骤:
- 在TIA Portal中启用PLC的OPC UA服务器功能
- 添加需要监控的变量到OPC UA地址空间
- 在WinCC中创建OPC UA连接,导入变量标签
- 设置通信心跳检测(超时3秒触发报警)
5. 现场调试与优化
5.1 PID参数整定方法
采用工程整定法中的临界比例度法:
- 先将Ti设为∞,Td设为0,逐渐增大Kp直至系统出现等幅振荡
- 记录此时的临界增益Ku和振荡周期Tu
- 按Ziegler-Nichols公式设置:
- Kp = 0.6*Ku
- Ti = 0.5*Tu
- Td = 0.125*Tu
实际项目中测得Ku=2.4,Tu=8s,最终采用:
- Kp=1.5
- Ti=6s
- Td=1s
5.2 常见故障处理
| 故障现象 | 可能原因 | 解决方案 |
|---|---|---|
| 压力持续低于设定值 | 1. 传感器零点漂移 2. 管网泄漏 |
1. 重新校准传感器 2. 排查管道 |
| 水泵频繁启停 | PID参数过于激进 | 适当增大积分时间Ti |
| 变频器报过流故障 | 电机绝缘老化 | 检测电机绕组绝缘电阻 |
| HMI数据显示异常 | OPC通信中断 | 检查网线连接,重启通信服务 |
6. 系统特色与创新点
- 压力模糊补偿算法:根据历史用水数据,在早晚高峰前30分钟自动提高设定压力0.01MPa,解决传统PID响应滞后问题
- 能效优化策略:实时计算管网特性曲线,自动选择最优水泵组合
- 手机端监控:通过Web发布平台,管理人员可随时查看关键参数
项目实施后关键指标对比:
| 指标项 | 改造前 | 改造后 | 提升幅度 |
|---|---|---|---|
| 压力波动范围 | ±0.1MPa | ±0.02MPa | 80% |
| 吨水电耗 | 0.45kWh/m³ | 0.33kWh/m³ | 27% |
| 故障响应时间 | 2小时 | 15分钟 | 87.5% |
这个项目给我的深刻体会是:自动化系统不仅要解决"能不能控制"的问题,更要关注"如何控制得更好"。比如我们发现,在PID控制基础上增加前馈补偿,对改善瞬态响应效果显著。另外,组态画面的设计要符合操作人员的思维习惯,把最常用的功能放在最显眼位置,这些细节往往决定系统的实用性和用户体验。