1. 项目概述:基于S7-200SMART的恒压供水系统设计
在工业自动化领域,恒压供水系统是典型的闭环控制应用场景。我最近完成的一个项目采用西门子S7-200SMART PLC作为主控制器,通过RS485通讯实现一拖二(一台PLC控制两台水泵)的恒压供水方案。这个方案在小区供水、厂房循环水系统中具有很高的实用价值,相比传统继电器控制方式,它能实现0.01MPa级别的压力控制精度,节能效果可达30%以上。
整套系统的核心在于PLC程序与变频器之间的Modbus RTU协议交互。S7-200SMART系列虽然属于西门子的经济型PLC,但其内置的RS485接口和标准库指令完全能满足中小型供水项目的需求。实际测试中,系统在0.5秒内就能响应压力波动并调整泵机转速,比老式PID控制器快3-5倍。
2. 硬件架构设计要点
2.1 设备选型清单
- 主控制器:西门子S7-200SMART SR20(14DI/10DO)
- 变频器:两台支持Modbus RTU的22kW变频器(推荐西门子G120C)
- 压力传感器:4-20mA输出的0-1.6MPa量程传感器
- 通讯线缆:双绞屏蔽电缆(型号Belden 9842)
- 终端电阻:120Ω/0.5W(接在末端变频器上)
2.2 电气接线规范
RS485网络采用手拉手拓扑结构,PLC的Port0端口(3脚为B/8脚为A)连接第一台变频器,再从第一台变频器的RS485 OUT端子引出到第二台。特别注意:
- 屏蔽层单端接地(通常在PLC侧)
- A/B线不能反接,否则会出现通讯时断时续
- 线长超过50米时需增加中继器
关键提示:变频器的通讯地址必须设置为不同值(如1#和2#),波特率统一设为9600bps,校验位为偶校验。这是很多现场调试失败的常见原因。
3. PLC程序核心逻辑解析
3.1 主程序结构
pascal复制// 主程序OB1
NETWORK 1: 初始化通讯参数
MOV_B 16#09, SMB30 // 设置Port0为9600bps,偶校验
MOV_B 16#02, VB100 // 1#变频器地址
MOV_B 16#03, VB101 // 2#变频器地址
NETWORK 2: 压力PID计算
CALL SBR0, VD200, VD204 // VD200=设定压力, VD204=反馈压力
NETWORK 3: 泵组控制逻辑
CALL SBR1, VW300, VW302 // VW300=1#泵频率,VW302=2#泵频率
3.2 关键子程序功能
SBR0(PID运算):
- 采用西门子自带的PID指令库
- 采样周期设置为100ms
- 死区范围设为0.02MPa(防止频繁启停)
SBR1(泵组调度):
- 单泵模式:压力偏差<5%时仅运行1#泵
- 双泵模式:压力偏差>5%时启动2#泵
- 轮换逻辑:累计运行8小时后自动切换主备泵
4. Modbus通讯实现细节
4.1 变频器控制报文
写入频率的Modbus功能码为06H,以1#变频器为例:
code复制请求帧:01 06 20 01 13 88 CRC
(地址01,写40001寄存器,频率50Hz=0x1388)
响应帧:01 06 20 01 13 88 CRC
4.2 PLC侧程序处理
使用西门子的Modbus RTU主站库(MBUS_CTRL+MBUS_MSG):
pascal复制// 初始化通讯
MBUS_CTRL EN:=TRUE,
Mode:=0, // 0=RTU模式
Baud:=9600,
Parity:=1, // 1=偶校验
Timeout:=1000
// 发送读命令
MBUS_MSG EN:=TRUE,
First:=1, // 首次扫描触发
Slave:=VB100, // 从站地址
RW:=0, // 0=读取
Addr:=40001, // 起始地址
Count:=1, // 读取1个字
DataPtr:=&VB200 // 存储地址
5. 现场调试经验总结
5.1 常见故障排查表
| 现象 | 可能原因 | 解决方案 |
|---|---|---|
| 通讯超时 | 终端电阻未接 | 末端变频器接入120Ω电阻 |
| 压力波动大 | PID参数不合适 | 先调P再调I,典型值P=2.0,I=0.05 |
| 泵切换异常 | 运行时间未清零 | 在轮换逻辑中复位计时器 |
5.2 参数优化建议
- 压力采样滤波:在AIW0读取后增加移动平均滤波(建议5次采样)
pascal复制MOVW AIW0, VW10 +I VW10, VW12 /I 5, VW12 // 结果存储在VW12 - 变频器加减速时间:设置为10-15秒(避免水锤效应)
- 睡眠唤醒阈值:当夜间用水量低时,可设置低于0.1MPa停泵
这套系统在某小区实际运行6个月后,水泵电耗从原来的日均85度降至58度,节能效果显著。最关键的体会是:RS485网络的稳定性直接决定系统可靠性,建议每月检查一次接线端子紧固情况,潮湿环境还需定期测量线间绝缘电阻。
