1. 项目背景与需求分析
在工业自动化领域,恒压供水系统是典型的闭环控制系统应用场景。传统供水系统常面临水压波动大、能耗高、设备寿命短等问题。我最近完成的这个"一拖三"恒压供水项目,通过PLC+变频器+触摸屏的经典架构,实现了对三台水泵的智能调度和压力精确控制。
这个系统的核心需求可以归纳为三点:
- 保持管网压力恒定(误差±0.1MPa)
- 根据用水量自动调节水泵运行数量
- 实现三台水泵的均衡磨损(定时轮换)
2. 硬件系统架构设计
2.1 控制器选型与配置
选择三菱FX3U-48MT/ES-A作为主控制器,主要基于以下考量:
- 48点I/O满足3台水泵控制需求(每台需启停信号、故障信号、运行反馈)
- 内置高速计数器可处理变频器脉冲反馈
- 扩展能力支持后续增加压力传感器
模拟量模块配置:
- FX2N-2AD:2通道12位模拟量输入(0-10V/4-20mA)
- 通道1接压力变送器(4-20mA对应0-1.6MPa)
- 通道2备用(可扩展温度监测)
- FX2N-4DA:4通道12位模拟量输出
- 通道1输出0-10V给变频器(频率指令)
- 通道2-4备用(可扩展其他调节阀)
2.2 人机界面设计
选用昆仑通态TPC7062KX触摸屏,主要特性:
- 7寸800×480分辨率
- 支持三菱FX系列串口通信(RS422)
- 内置实时曲线控件方便压力监控
界面规划三个主要画面:
- 主监控画面:压力实时曲线、水泵运行状态
- 参数设置画面:PID参数、压力设定值
- 报警记录画面:历史故障查询
2.3 变频器配置要点
采用台达VFD-M系列变频器,关键参数设置:
plaintext复制P00=01 (主频率由模拟量输入)
P01=01 (运转指令由端子控制)
P03=50.00 (最大频率50Hz)
P04=50.00 (上限频率)
P05=30.00 (下限频率)
P36=08 (故障自动复位次数)
P190=01 (启用PID功能)
3. 控制程序设计详解
3.1 主程序流程架构
程序采用模块化设计,主要功能块:
structured复制MAIN:
|--[CALL] 压力采集处理
|--[CALL] PID运算
|--[CALL] 水泵逻辑控制
|--[CALL] 变频器控制
|--[CALL] 报警处理
END_MAIN
3.2 模拟量处理关键代码
压力值采集与滤波处理:
structured复制LD M8000 // 运行常ON
TO K0 K17 H0 K1 // 2AD模块初始化
FROM K0 K0 D100 K1 // 读取通道1原始值
MOV K4000 D110 // 量程下限对应值
MOV K20000 D111 // 量程上限对应值
MOV K160 D112 // 工程量程(1.6MPa)
CALL P_Scale // 调用量程转换子程序
注意:模拟量采样需做滑动平均滤波,建议采样周期100ms,8次平均
3.3 PID控制实现
使用三菱内置PID指令:
structured复制LD M8000
PID D200 D210 D220 D230 D240 D250
// D200: 设定值(SV)
// D210: 当前值(PV)
// D220: 参数起始地址
// D230: 输出值(MV)
// D240: 正/反作用
// D250: 运算周期(ms)
PID参数整定经验:
- 先设Ki=0,Kd=0,逐步增大Kp至系统开始振荡
- 取振荡时Kp值的60%作为最终Kp
- 设定Ti=0.5*振荡周期,Td=Ti/8
- 微调时每次调整幅度不超过20%
3.4 水泵轮换逻辑设计
采用"先启先停+定时切换"策略:
structured复制// 水泵运行时间累计
LD X001 // 1#泵运行信号
OUT T1 K36000 // 1小时计时(单位0.1s)
// 轮换条件判断
LD T1
AND M100 // 允许轮换标志
OUT M11 // 触发1#泵切换
// 优先启动逻辑
LD M8000
CMP D300 K50 // 压力低于设定值50%
AND X004 // 1#泵待机
OUT Y001 // 启动1#泵
4. 通信协议实现
4.1 PLC与触摸屏通信
采用三菱专用协议(格式4):
- 波特率:9600bps
- 数据位:7位
- 停止位:1位
- 校验:偶校验
触摸屏关键元件地址映射:
- D100:压力实际值
- D200:压力设定值
- M0-M15:水泵状态位
- Y0-Y7:控制命令位
4.2 变频器Modbus RTU配置
通信参数:
plaintext复制P88=03 (Modbus RTU模式)
P89=01 (站号1)
P92=03 (波特率9600)
P93=02 (偶校验)
关键寄存器地址:
- 0x2000:运行频率(RW)
- 0x2103:输出电流(RO)
- 0x2105:输出电压(RO)
5. 系统调试与优化
5.1 现场调试步骤
-
静态测试:
- 检查所有接线(特别注意模拟量信号屏蔽)
- 验证I/O点强制功能
- 测试急停回路
-
动态测试:
- 空载运行验证水泵转向
- 逐步增加负载观察PID响应
- 模拟断水测试保护逻辑
-
带载优化:
- 记录压力阶跃响应曲线
- 微调PID参数
- 测试水泵切换瞬态
5.2 常见问题处理
问题1:压力波动大
- 检查传感器安装位置(应距泵出口5D以上)
- 确认PID采样周期(建议200-500ms)
- 检查管路是否有气囊
问题2:水泵频繁启停
- 调整死区范围(建议±0.05MPa)
- 检查止回阀是否泄漏
- 延长切换延时时间
问题3:通信中断
- 检查终端电阻(120Ω)
- 确认所有设备接地良好
- 使用示波器检查信号质量
6. 系统扩展建议
-
能耗优化:
- 增加流量计实现PQ复合控制
- 采用睡眠模式在低用水时段
-
远程监控:
- 加装4G DTU模块
- 对接云平台实现手机监控
-
维护功能:
- 累计运行时间记录
- 振动监测预警
- 自动润滑提醒
这个项目从设计到实施历时两个月,期间经历了三次大的方案调整。最大的收获是认识到自动化系统必须紧密结合工艺需求,单纯追求技术先进性往往适得其反。比如最初设计的全变频方案虽然控制精度高,但考虑到成本和维护性,最终改为"一变频+二工频"的混合模式。
