
最近在做某污水厂的自动化改造项目核心用的是西门子S7-1200 PLC和KTP1200触摸屏。项目本身不算特别复杂但这类市政项目有个特点——工艺环节多、设备类型杂、运行工况变化大自控系统不光是把设备“自动化”起来更要跟处理工艺深度咬合。今天这篇就把整个项目从方案设计到现场调试的过程捋一遍重点聊聊控制逻辑和工艺配合的细节给正在做或者准备做类似项目的朋友一些参考。1. 项目概述与改造思路1.1 核心需求解析这个污水厂的处理规模不算大日处理量在万吨级别主要工艺是典型的A²O厌氧-缺氧-好氧活性污泥法辅以深度处理和紫外消毒。改造前的状态是大部分设备靠人工巡检和就地手动启停只有少量单机自动整体缺乏联动。厂方希望这次改造实现两个目标一是集中监控所有设备的运行状态、液位、流量、水质参数在中控室就能看到二是联动控制让各个工艺段的设备根据水位、时间、水质情况自动启停和调节减少人工干预同时保证出水稳定达标。接到这个项目之后我第一件事不是急着选型或者画图而是把工艺流程图翻了个底朝天。做污水厂自控和做工厂自动化最大的不同在于你得先搞懂水是怎么走的、泥是怎么走的、气是怎么走的每种介质的路径对应着不同的控制策略。比如格栅前后的液位差控制、生化池溶解氧和曝气量的闭环调节、回流污泥量跟进水量的比值控制这些都是靠工艺逻辑来驱动的纯靠设备逻辑做不出来。1.2 工艺联动设计思路整个自控系统我拆成了五个控制层级来设计从下往上分别是现场设备层、PLC控制层、网络通讯层、HMI监控层、数据管理层。现场设备层是所有的泵、阀、格栅机、风机、搅拌器PLC控制层负责逻辑运算和顺序控制网络通讯层用Profinet把PLC、触摸屏和远程IO连起来HMI监控层是KTP1200触摸屏和中控室的上位机数据管理层主要是历史趋势和数据报表。这五个层级里PLC控制层的逻辑设计是核心也是这次改造里花时间最多的部分。我当时的思路是每个工艺段独立成一个功能块段与段之间通过状态信号衔接形成一条完整的控制链。这样做的好处是单个段的逻辑出错时不影响其他段运行而且调试的时候可以一段一段来不用一上来就全系统联动。2. 硬件选型与组网解析2.1 S7-1200选型与IO配置CPU选的是S7-1200系列的PLC具体型号是1214C DC/DC/DC。这颗CPU自带14路数字量输入、10路数字量输出板载2路模拟量输入对这个小项目来说IO点数不够所以我加了一块SM1231模拟量输入模块8路和一块SM1223数字量混合模块。选1214C而不是更低端的1212C看重的是它的程序和数据存储空间更大——污水厂的控制逻辑比较多FB块加上各种报警和趋势数据存储空间小了后期扩展会很难受。IO点位的统计是这一步的重头戏。我把整个厂区的设备清单拉出来逐个过了一遍设备类型DI点数DO点数AI点数说明粗格栅机2台422运行反馈故障远程状态启停控制前后液位差提升泵3台630每台运行故障手自动状态启停控制细格栅机2台422同上前后液位差曝气风机3台630运行故障手自动启停控制回流污泥泵2台420运行故障手自动启停控制剩余污泥泵2台420同上加药泵4台840聚合氯化铝碳源投加紫外消毒设备1套210运行故障启停水质仪表006pH、DO、MLSS、COD、氨氮、液位电动阀门8个1680开到位关到位开关控制合计542710统计完发现DI点数超了1214C自带加扩展的上限所以又在机架上叠了一块SM1221数字量输入模块。这里有个经验IO统计一定要预留15%~20%的余量别卡着理论值选型现场经常冒出来额外要监控的设备或者信号到时候再扩机架就很被动了。2.2 KTP1200触摸屏与上位机组网HMI选的是KTP1200这是一款12寸的触摸屏分辨率1280x800自带Profinet接口。选它主要看中三点一是尺寸够大能在一屏上展示完整的工艺流程图操作工不用来回翻页找设备二是支持WinCC Unified或者经典版WinCC项目画面开发速度快各种图形库直接拖拽用三是价格在西门子触摸屏序列里比较合理甲方对这个预算能接受。网络拓扑上我用了最稳妥的两层结构。底层是PLC和远程IO从站的Profinet总线通过交换机连到中控室的上位机触摸屏放在现场控制室通过Profinet直接连PLC。中控室的上位机跑WinCC组态软件和触摸屏做的是同一个项目文件这样两边看到的画面完全一致操作工在哪个终端都能监控。接线和组态这块有个细节容易踩坑Profinet的设备名称和IP地址必须规划好务必做一张地址分配表。比如PLC的IP是192.168.0.1触摸屏是192.168.0.2IO从站是192.168.0.10~192.168.0.13。现场调试的时候我发现很多人把设备名随便起结果组态软件找不到设备时间全部耗在排查通讯上纯粹是给自己挖坑。3. 自控程序设计细节3.1 程序块结构与主循环设计程序架构我采用的是OB1主循环加功能块调用的结构。OB1里按扫描周期调用各个工艺段的FB块包括进水段、生化段、排泥段、加药段、出水段。每个FB块内部先做信号采集和滤波再做逻辑判断最后输出控制指令。这种结构的好处是程序可读性强后期维护或者换人接手的时候顺着FB块就能把逻辑捋清楚。主循环的扫描周期我设置的是默认值污水厂这种工艺控制对实时性要求不算高模拟量信号本身也有惯性几十毫秒的扫描周期完全够用。但数字量信号的处理里我做了个防抖处理用定时器加延时确认的方式避免瞬间干扰信号导致误动作。比如水泵的运行反馈信号如果检测到断开状态持续3秒以上才判定为故障停机短于3秒的毛刺直接忽略。这个防抖时间是调试时候试出来的太短过滤不了干扰太长会延误故障报警3秒在泵类设备上比较合适。3.2 关键模拟量处理与PID控制污水厂最典型的闭环控制有两个一个是生化池溶解氧DO和曝气风机的联动控制另一个是加药泵根据进水流量或出水水质的前馈加反馈调节。DO控制是我这次调试中花时间最多的地方。A²O工艺的好氧段需要维持溶解氧在2mg/L左右太高会浪费能耗还可能影响污泥沉降性能太低会导致硝化反应不彻底。我设计了PID控制回路以DO分析仪的信号为过程值以风机频率为输出值调节曝气量。PID参数整定用的是工程上最常用的衰减曲线法。先手动调节风机频率让DO产生一个阶跃变化记录曲线的衰减比和周期然后按经验公式算出PID参数。我最终整定出来的参数大概是比例增益Kp1.8积分时间Ti120秒微分时间Td0。很多人喜欢加微分但在DO这种带滞后和噪声的信号上微分很容易放大干扰导致输出抖动我倾向于关掉微分或者给很小的时间常数。这里必须要提一个坑DO仪表的安装位置直接影响控制效果。探头离曝气盘太近信号波动剧烈PID输出也跟着来回窜太远又滞后严重。我这次让工艺方把探头装到了好氧段中后部离曝气器大概1.5米的位置信号稳定多了PID才能正常工作。3.3 顺序控制与设备联锁逻辑污水厂的设备联锁逻辑是整个程序里最容易出错的部分因为工艺要求设备之间必须按特定顺序启停条件不满足绝不能动作。提升泵的控制是最典型的。三台泵我设置了轮换逻辑每台泵的累计运行时间会被记录启动时优先选择运行时间最短的那台这样能避免某台泵长期超负荷运行而其他泵长期闲置。泵的启动条件包括进水井液位高于启泵液位、至少有一台泵处于自动模式、无故障信号。当液位超过高报警液位时启动两台超过高高报警时三台全启。停机逻辑相反液位降到低液位后按“先开后停”的原则逐台停止。格栅机的控制相对简单但有一个很关键的保护逻辑格栅前后液位差反映栅渣堵塞程度当液位差超过300mm时说明格栅已堵严重必须启动格栅机清渣当液位差超过500mm时必须同时报警并降低进水量防止污水从格栅井溢出。这个保护逻辑是和工艺方反复确认过才定下来的因为溢流事故在污水厂是重大环境事件宁可少处理水量也不允许溢流。曝气风机的联锁逻辑更复杂一些。三台风机我配置成了两用一备每台风机的启动需要确认对应的曝气总管电动阀已开启、轴承温度正常、无喘振报警。风机之间还有联合逻辑当运行中的两台风机频率都达到上限且DO仍低于设定值时自动启动备用风机当DO高于设定值且一台风机已降至最低频率时停掉一台风机。这套逻辑实际运行下来效果不错能耗比改造前下降了不少。加药泵的控制结合了前馈和时序逻辑。碳源投加泵根据进水流量按比例投加同时根据出水硝酸盐氮浓度做修正聚合氯化铝加药泵则是按出水总磷值做PID调节。加药泵还有防干转保护药剂液位低于低低限时必须停机并报警因为泵空转时间长了会损坏机械密封。4. 触摸屏画面与交互设计4.1 画面结构与主监控布局KTP1200的画面我设计了六个主页面通过画面切换按钮互相跳转。首页是工艺流程总览用图形化的方式把整个厂区的设备、管道、仪表展示在一张画面里泵和阀门用不同颜色区分运行/停止/故障状态管道用不同颜色区分水流、泥流和气流。操作工一抬眼就能看到全厂设备的运行概况有问题直接在总览页就能定位到具体设备的区域。考虑到操作工大多数没有太多IT背景我尽量把画面做到“傻瓜式”设备图标的旁边直接显示启停按钮能操作和仅监控的设备用颜色区分。修改参数统一在弹出对话框中完成避免操作人员误入系统设置页面。所有数字量状态用红绿颜色区分红色代表停机或故障绿色代表运行灰度代表未投运。涉及安全的关键操作如风机的紧急停止、电动阀门的开关增加了二次确认弹窗。画面布局遵循了从左到右的工艺流向设计进水在左出水在右。生化池段单独做了一页分画面把厌氧区、缺氧区、好氧区和对应的风机、回流泵都集中在同一屏上方便操作工观察和手动干预。实际的现场反馈中操作工最喜欢的是设备操作按钮的大尺寸设计以前在旧系统上要点半天现在用手套也能准确点中。4.2 数据记录与报警系统KTP1200的报警系统我做了分级处理。报警分成三类紧急报警工艺事故需要立即处理比如进水井溢流、出水水质超标、风机故障。这类报警用红色闪烁显示并触发蜂鸣器。一般报警设备故障或参数异常比如水泵故障、液位高高、压力异常。这类报警用黄色常亮显示操作工需要确认消除。提示信息正常状态变化但需要关注的比如泵切换、模式变化蓝色显示无需确认。报警记录存储在触摸屏的存储卡里可以按时间、设备、报警类型检索。我还在画面里加了报警确认按钮操作工查看报警后必须手动确认报警信息会记录确认人和确认时间方便事后追溯。数据记录这块KTP1200支持数据记录功能可以把关键参数定期存储到U盘或者存储卡里。我配置了每5分钟记录一次的模拟量数据包括进水量、出水COD、氨氮、总磷、溶解氧等这些数据后期做报表分析很有用。中控室上位机的WinCC里还配置了比较完整的历史趋势功能操作工可以直接查询一个月内的趋势曲线。5. 现场调试与常见问题排查5.1 调试初期遇到的信号干扰问题第一次上电后模拟量信号乱跳的现象非常严重影响使用。DO信号在0到8mg/L之间来回窜液位信号也有小幅波动但污水厂的变频器、电机启停产生的电磁干扰确实很猛。排查过程是这样的先用万用表测了模拟量模块的输入电流确认信号本身是稳定的问题出在传输过程或者模块侧。然后检查了屏蔽层的接地情况——发现现场接线时屏蔽层只在PLC端接地了仪表端的屏蔽层悬空按要求屏蔽层应在两端同时接地如果存在电位差就单端接地后来把仪表端的屏蔽层可靠接地后干扰明显减少。接着处理了通讯信号与模拟量信号的布线问题。现场的Profibus和模拟量线走了一个线槽间距不到20厘米平行敷设长度超过30米。我把模拟量信号线单独走了一个金属线槽与通讯线分开同时给模拟量模块加装了信号隔离器。折腾完这两步信号基本稳定了残余的小幅波动通过程序里的滤波功能处理掉。5.2 PID参数整定的反复调整DO控制回路的PID整定过程算是这个项目里最磨人的环节。第一次投入自动时DO曲线振荡幅度很大风机频率也是来回甩现场操作工直接说“这自动模式还不如手动”。分析下来有两个问题一是PID参数偏激进Kp给到了3.5温度稍有波动输出就大幅变化二是DO分析仪的响应速度比曝气系统滞后太多形成了典型的滞后系统振荡。我先用了加大积分时间的方法稳住系统Ti从原本的60秒加到150秒让积分动作慢下来。然后把Kp降到1.5重新做阶跃测试后逐步调到了1.8。经过两天的现场整定最终参数是比较满意的DO稳定在2±0.3mg/L区间内风机频率平缓变化。这里有个很重要的心得现场整定PID不能只盯着理论公式一定要结合被控对象的特性。DO系统是大滞后、大惯性的对象参数的稳定裕度要大于快速响应宁可慢一点也不能振荡。5.3 通讯中断与网络配置问题项目运行到第三天出现了一个奇怪现象触摸屏偶尔会弹出“设备无响应”的提示但PLC这边程序正常运行中控室上位机也正常。排查了一圈发现触摸屏和PLC之间的Profinet连接时不时断开。问题出在交换机配置上。现场用的是非网管型交换机按理说Profinet跑在自适应交换机上应该有兼容性但后来查看发现触摸屏的网口被设置成了自动协商模式在特定情况下与交换机的协商过程会导致短暂的端口隔离。我直接把触摸屏网口的速率和双工模式固定为100M全双工现象消失了。这个案例算是提醒大家现场碰到的现场总线通讯问题不一定是硬件坏了先检查网口的协商配置往往能解决问题。5.4 常见问题速查表问题现象可能原因排查与解决模拟量信号频繁跳变屏蔽层未可靠接地信号线与动力线并行走线两端接地屏蔽层、分开走线、加装隔离器PID控制振荡参数过激被控对象滞后过大降低Kp、增大Ti做阶跃测试重新整定Profinet偶发断连网口自动协商失败设备名/IP冲突固定网口速率复查设备名称和地址表水泵频繁启停液位报警阈值设置太紧防抖时间不足放宽回差、增加延时确认触摸屏显示数据不刷新画面变量连接错误PLC程序块未下载完整检查变量引用重新下载完整项目风机启动时报过载启动时序错误阀门未开到位就启动检查联锁条件是否满足调整启动顺序6. 经验总结与个人心得项目交付到现在运行了快三个月整体稳定出水各项指标一直达标甲方反馈也比较好。这次改造让我对污水厂自控有了几点比较深刻的体会。第一自控系统的设计必须以工艺为出发点。PLC只是执行工具真正决定系统好不好用的是控制策略。搞自控的人要能看懂工艺图清楚每个控制参数背后的物理意义这样才能让设备和工艺完美配合。这次项目里我养成了一个习惯每设计一个控制回路先在草稿纸上画出对应的工艺简图标注清楚每个输入输出信号的意义再动手写程序这样逻辑不会乱。第二现场调试的时间一定要预留充足。这类项目往往硬件安装时间比预期快但调试阶段才是真正耗时间的地方。特别是PID整定和联锁逻辑的完善需要跟现场操作人员反复沟通跑现场确认每个条件是否合理这是急不来的。我在这个项目里安排了两周的调试期实际用了十天完成了主要功能剩下时间用来处理各种细节和培训操作工。第三人机交互的设计直接影响系统的使用效果。再好的控制逻辑如果不能通过HMI清晰直观地呈现给操作人员很难落地。KTP1200的触摸屏在这个项目里发挥了很大作用操作工通过图形化的画面能快速判断设备状态和工艺走向遇到报警也能快速定位处理。设计触摸屏画面时一定要站在操作工的角度去想问题画面布局清晰、操作顺手比华丽的视觉效果更重要。最后再分享一个小技巧项目收尾时把所有设备的铭牌参数、仪表信号类型、PLC点位表、程序中用到的关键控制参数全部整理成一张参数汇总表交付给厂方一份自己留一份。后续设备更新或者故障排查时这张表的价值巨大能省掉大量查阅图纸和程序的时间。自动化改造这类项目的魅力在于它能把原本靠人为经验操作的工艺过程转化为一套有逻辑、能复制、可持续优化的系统。每个人做出来的方案都会有差异但核心思路是一致的——让工艺与自控深度结合。希望这篇分享能给大家带来一些启发也欢迎交流和探讨。