1. 项目概述:污水处理厂COD在线监测系统开发
在工业废水处理领域,COD(化学需氧量)是衡量水质污染程度的关键指标。我最近为某污水处理厂开发了一套基于西门子S7-200 PLC的COD在线监测系统,这套系统实现了从自动采样、数据采集到超标报警的全流程自动化控制。相比传统人工取样检测方式,这套系统将检测频率从每天2次提升到每2小时1次,同时避免了人为操作误差。
系统核心由三部分组成:西门子S7-200 SMART PLC作为控制中枢,国产COD在线分析仪作为检测单元,MCGS触摸屏作为人机交互界面。这种组合既保证了系统稳定性(PLC平均无故障时间>5万小时),又降低了整体成本(比进口系统节省40%预算)。特别适合中小型污水处理厂进行水质在线监测。
2. 硬件配置与接线规范
2.1 I/O分配方案设计
根据COD监测的工艺流程,我将PLC的I/O资源分配如下:
数字量输入(DI)
- I0.0:手动采样按钮(常开触点)
- I0.1:急停信号(常闭触点)
模拟量输入(AI)
- AIW0:COD传感器4-20mA信号(量程0-500mg/L)
数字量输出(DO)
- Q0.0:采样电磁阀(DC24V/1A)
- Q0.1:一级报警指示灯(黄色)
- Q0.2:二级报警指示灯(红色)+蜂鸣器
关键提示:实际项目中务必保留至少20%的I/O余量,为后期功能扩展预留空间。我曾遇到因未预留备用点导致系统无法升级的尴尬情况。
2.2 抗干扰接线实战技巧
COD传感器的信号传输最怕电磁干扰,在接线时需要特别注意:
-
屏蔽层处理:传感器电缆的屏蔽层必须在PLC端单点接地,接地电阻应<4Ω。我曾测试过,不接屏蔽时信号波动幅度可达±15%,正确接地后<±1%。
-
信号隔离:模拟量输入通道建议配信号隔离器(如魏德米勒的UR20-FBC-PN),能有效抑制共模干扰。某项目实测数据显示,加装隔离器后信号稳定性提升60%。
-
电源处理:PLC电源前端必须加装1:1隔离变压器(推荐功率≥100VA),可避免电网波动导致PLC死机。有次现场故障排查发现,未隔离的电源导致PLC每月平均重启3次。

3. PLC程序设计详解
3.1 自动采样控制逻辑
采样控制采用TON定时器方案,比循环指令更可靠:
ladder复制Network 1 // 2小时定时采样
LDN T37
TON T37, 7200 // 定时器预设值=7200秒(2小时)
= M0.0 // 定时完成标志位
Network 2 // 采样触发逻辑
LD M0.0 // 自动触发
O I0.0 // 或手动触发
AN I0.1 // 且急停未动作
= Q0.0 // 启动采样电磁阀
保护机制设计:
- 电磁阀通电超5秒强制断开(防止粘连)
- 采样期间急停立即切断输出
- 两次采样最小间隔10分钟(避免频繁动作)
ladder复制Network 3 // 电磁阀保护
LD Q0.0
TON T38, 50 // 5秒保护定时
NOT // 定时到取反
= Q0.0 // 自动切断
3.2 模拟量数据处理
COD传感器的4-20mA信号需转换为工程值:
ladder复制Network 4 // 模拟量处理
MOVW AIW0, VW100 // 读取原始值(0-32000)
ITD VW100, VD102 // 转双整数
DTR VD102, VD106 // 转浮点数
/R 32000.0, VD106 // 归一化(0-1)
*R 500.0, VD106 // 量程转换(0-500mg/L)
MOVR VD106, VD110 // 存储COD值
信号滤波算法:
采用移动平均滤波,在数据块中定义:
code复制// 在DB1中定义
VW200 // 滤波缓冲区[10]
VD210 // 累加和
VD214 // 平均值
通过循环指令实现10次采样取平均,可有效抑制突发干扰。
4. 报警策略与安全机制
4.1 两级报警系统设计
ladder复制Network 5 // 一级报警(300mg/L)
LDR>= VD110, 300.0
S Q0.1, 1 // 置位黄灯
Network 6 // 二级报警(450mg/L)
LDR>= VD110, 450.0
R Q0.1, 1 // 复位黄灯
S Q0.2, 1 // 启动红灯+蜂鸣器
报警延时确认:
- 黄灯报警:延时10分钟未处理则短信通知值班人员
- 红灯报警:立即触发声光报警并短信通知主管
4.2 校准保护机制
每月校准期间需锁定控制输出:
ladder复制Network 7 // 校准模式
LD SM0.5 // 秒脉冲
EU // 上升沿
TON T39, 2592000 // 30天定时
= M10.0 // 校准提醒标志
Network 8 // 输出锁定
LD M10.0
MOVB 16#FF, MB20 // 置位所有输出屏蔽位
5. MCGS组态画面开发
5.1 动态数据显示设计
-
实时数据显示:
- 游标控件绑定PLC的VD110寄存器
- 数值显示控件设置上下限颜色变化(绿→黄→红)
-
历史曲线:
- 数据存储间隔:30秒
- 采用循环存储策略(保存最近7天数据)
- 曲线可缩放、平移查看细节

5.2 报警记录功能
vbs复制' 报警触发脚本
Sub Alarm_Trigger()
If PLC.Q0.2 = 1 Then
SaveAlarmToDB "COD超标", 2 ' 级别2报警
PlaySound "alarm.wav", 1 ' 循环播放
End If
End Sub
报警信息管理:
- 按时间倒序显示
- 支持按级别筛选
- 可添加处理备注信息
6. 现场调试经验分享
6.1 常见故障排查表
| 故障现象 | 可能原因 | 排查方法 |
|---|---|---|
| COD值跳变 | 信号干扰 | 检查屏蔽层接地 |
| 采样不动作 | 电磁阀卡死 | 测量线圈电阻(正常30Ω) |
| 通讯中断 | 终端电阻未接 | 在总线末端加120Ω电阻 |
| 触摸屏花屏 | 电源共地干扰 | 加装DC-DC隔离模块 |
6.2 维护保养要点
-
传感器维护:
- 每月用5%稀盐酸清洗电极
- 每季度更换渗透膜
- 校准周期不超过30天
-
系统检查:
- 每日检查采样管路是否畅通
- 每周测试急停功能
- 每月备份PLC程序和组态画面
-
冬季防护:
- 采样管加伴热带(控制温度在5-30℃)
- 仪表箱内放置防潮剂
- 电磁阀选用低温型(-20℃可用)
这套系统在某污水处理厂连续运行12个月后统计数据显示:COD检测准确度达到±3%,系统可用率99.8%,相比原人工检测方式每年可节约运营成本约15万元。最关键的是实现了水质异常的实时预警,避免了多起超标排放事故。