ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

西门子S7-200 SMART一拖二恒压供水PLC程序与电气图纸全解析

西门子S7-200 SMART一拖二恒压供水PLC程序与电气图纸全解析 小区二次供水改造、小型工厂生活用水增压、高层楼宇供水这类项目近几年找上门的最多就是一拖二恒压供水。两台泵、一台变频器、一套PLC根据用水量自动切换工频和变频运行保持管网压力恒定这套逻辑看着不复杂但真正落地时涉及电气图纸、PLC程序、PID调节、触摸屏界面、故障切换策略任何一个环节考虑不周调试现场都会让人抓狂。最近我把手上这套基于西门子S7-200 SMART PLC的一拖二恒压供水全套项目整理出来了包括电气原理图、控制程序、触摸屏画面和完整的调试笔记。这篇博文就把这套系统的设计思路和核心细节掰开来讲给正在做同类项目、或者想参考完整图纸程序的朋友一份能真正用上的技术参考。1. 一拖二恒压供水到底在解决什么问题先把方案层面的事情聊透否则后面看图、看程序都会知其然不知其所以然。1.1 为什么需要变频恒压而不是简单的启停控制传统供水方式是水泵直接工频启动水压要么高得管路砰砰响要么用水量大时压力哗啦掉下来。更麻烦的是电机频繁直接启停冲击电流大设备寿命短对电网也不友好。恒压供水的核心逻辑是用水量变化时通过变频器调节水泵电机转速让管网出口压力稳定在设定值附近。水泵转速降低时流量变小、功率下降相比工频运行能省下不少电费同时避免了直接启停带来的水锤效应和机械冲击。1.2 一拖二的含义与工作模式所谓一拖二是指一台变频器拖动两台水泵电机但同一时刻只有一台泵处于变频运行状态。系统根据用水量大小自动切换单台泵变频运行已能满足流量需求时只让1号泵变频工作。用水量增大变频泵频率已接近上限比如50Hz但压力仍不足时把1号泵切到工频运行同时2号泵投入变频运行。用水量下降后先停掉工频运行的泵变频泵继续调节。这种配置比一拖一变频器方案省了一台变频器成本低很多。比两台泵都配变频器的方案可靠性低一点但绝大多数小区、厂区场景足够了。1.3 系统的主要组成部分从整体上看这套系统由几个核心部分构成组成部分主要器件作用控制核心西门子S7-200 SMART PLCCPU SR40配模拟量模块或集成模拟量采集压力信号、运行逻辑判断、PID运算、输出控制指令执行机构变频器、两台水泵电机、工频接触器、变频接触器实现电机调速和工频/变频切换检测元件压力变送器远传压力表或4-20mA压力变送器、液位开关检测管网压力和进水液位人机交互触摸屏如威纶通、西门子Smart Line参数设定、状态监视、故障报警、手自动切换保护器件断路器、热继电器、中间继电器、相序保护器电气保护和逻辑转接这套系统设计时我选的是CPU SR40因为项目中数字量输入输出点比较多——两台泵的工频/变频切换、故障信号采集、手自动切换开关等加上模拟量压力采集点数和干扰隔离都比较从容。2. 电气图纸设计中必须想清楚的关键回路很多朋友拿到类似项目的电气图纸第一反应是看主回路怎么画。实际上主回路往往不复杂控制回路才是这类型项目的灵魂。图纸设计阶段如果某些逻辑没想明白后面的PLC程序和现场接线都会跟着返工。2.1 主回路的核心切换逻辑主回路的拓扑结构是理解整套系统的钥匙。先看每一台泵的供电回路L1 L2 L3 | [QF总断路器] | --[KM1 1号泵变频接触器]----[FR1 热继电器]---- M1(1号泵) | | --[KM2 1号泵工频接触器]----[FR1 热继电器]- | --[KM3 2号泵变频接触器]----[FR2 热继电器]---- M2(2号泵) | | --[KM4 2号泵工频接触器]----[FR2 热继电器]-变频器输出侧直接接两个变频接触器KM1和KM3电网侧直接接两个工频接触器KM2和KM4。这里必须特别注意电气互锁和程序互锁双重保障。每一台泵的工频接触器和变频接触器在硬接线上必须互锁KM1的常闭触点串入KM2线圈回路KM2的常闭触点串入KM1线圈回路不能只依赖PLC程序里那种软性互锁。原因很简单如果程序跑飞或者PLC输出点粘连工频和变频同时吸合等于变频器输出端直接并上工频电源瞬间炸机都是轻的。这个逻辑看起来基础但我在不少中小型项目里见过只做程序互锁的图纸说白了是在赌PLC永远不出错。做工程永远要记住一条原则硬保护不依赖软件。2.2 控制回路的辅助电源与供电可靠性设计控制回路供电我习惯单独设置一个控制变压器或者开关电源。S7-200 SMART CPU供电可以用开关电源但接触器线圈、中间继电器线圈最好用AC220V控制回路这样抗干扰和带载能力都更强。强烈不推荐用开关电源直接带接触器线圈启动瞬间的冲击可能会让开关电源保护重启PLC跟着断电就全乱了。设计中我在控制回路里加入了手动/自动切换旋钮打到手动状态时可以直接通过按钮控制1号泵工频、2号泵工频、1号泵变频、2号泵变频的启停方便维修调试。打到自动状态时才允许PLC输出的中间继电器参与控制。这个环节能让后期调试效率高出一大截。2.3 模拟量采集回路与干扰抑制压力信号用的是4-20mA两线制压力变送器接到S7-200 SMART的模拟量输入通道EM AE04或CPU SR40集成的AI。模拟量信号看起来就是两根线实际工程布线时雷区不少信号线必须使用屏蔽双绞线屏蔽层单端接地PLC侧接地。信号线不能和动力线走在同一根线槽内尤其不能和变频器输出侧电缆平行走线否则变频器的高频谐波串进去PID调节时压力读数会像心电图一样跳。模拟量输入模块的通道选择4-20mA时要保证信号回路有公共参考点不能形成悬浮地。这个项目的现场是泵房里信号线和动力电缆有一段不得不并排走做了金属线槽隔离后现场压力读数波动控制在0.01MPa以内效果就完全可以接受了。2.4 水泵电机保护与接地每台泵都配置了热继电器FR1和FR2热继电器常闭触点接入PLC数字量输入作为过载报警信号。这里有一个容易翻车的细节热继电器的整定电流一定要按电机额定电流调整不要凭感觉设。比如电机额定电流是7.6A你把热继电器整定电流调到10A电机过载了热继电器根本不会跳。另外电机到变频器的电缆长度如果超过50米需要根据变频器手册考虑输出电抗器否则电缆分布电容可能导致变频器过流报警甚至损坏IGBT。这套系统泵房离变频柜约10米距离不算长不需要额外加电抗器。3. PID恒压控制程序S7-200 SMART的实现细节硬件图纸通了接下来是软件的核心——PID恒压控制算法。如果把整个系统比作一辆车那PID就是驾驶员负责根据车速压力自动踩油门调节频率。3.1 PID控制的通俗理解与参数选定PID三个字母人人都会说但调节的时候很多人靠瞎试。我换个方式讲一下压力变送器当前值PV设定值SP偏差E SP - PV。P比例偏差越大变频器输出频率调整幅度就越大。相当于油门踩多深。比例过大会引起震荡压力忽高忽低比例太小反应迟钝用水量突变时压力半天回不来。I积分只要存在稳态偏差积分项会持续累积作用力直到把压力推到设定值。相当于把细微的偏差慢慢磨平。D微分根据偏差变化趋势提前调整输出。相当于看到前面是下坡提前松油门。在恒压供水这种大惯性、纯滞后的过程控制中微分作用很容易引起系统震荡加上压力变送器信号本身存在噪声所以在S7-200 SMART里做PID时我更倾向于P加上较温和的ID就不用或者设极小值。事实上大多数恒压供水项目纯PI控制的效果已经足够好现场调起来也省心。3.2 S7-200 SMART PID指令的使用要点S7-200 SMART的PID功能可以通过两种方式实现一是调用PID指令块配合PID向导生成的子程序二是自己写位置式PID程序需要处理上下限和积分饱和。我在这套系统中使用PID向导方式生成PID_0子程序组态如下过程变量PV压力变送器4-20mA信号对应的模拟量地址比如AIW0量程0-1.6MPa。设定值SP触摸屏写入的PID设定值以0.0-100.0的百分比表示对应0-1.6MPa。这里要和大家说明一个关键点。S7-200 SMART的PID指令运行时PV和SP都是以百分比形式参与运算的。也就是说模拟量通道AIW0读出来的原始值为0-27648你需要先在程序中把它转换为0.0-100.0的工程百分比再赋值给PID的PV。同样PID输出的0-100.0百分比要再映射成变频器的频率给定值。具体来说程序中我这样处理// 压力工程值换算 // AIW0: 4-20mA 对应 0-27648压力变送器量程0-1.6MPa // VD100: 实际压力值(MPa) // VD104: PID设定压力(MPa) // VD108: 压力百分比(0.0-100.0) // 程序每0.5秒执行一次 LD SM0.0 MOVW AIW0, VW120 // 读取模拟量原始值 // 转换成MPa便于触摸屏显示和监视 LD SM0.0 ITD AIW0, VD124 // 整数转双整数 DTR VD124, VD128 // 双整数转实数 MOVR VD128, VD108 /R 27648.0, VD108 // 得到0.0-1.0 *R 1.6, VD108 // 工程量MPa用于监控显示真正给PID用的PID百分比值其实可以直接用VD108也就是当前压力占量程的百分比再除以1.6乘以100但我在工程里更常用另一种方式直接把PID向导的设定值高低限设置为0.0-100.0程序中压力百分比用(实际压力MPa / 量程MPa) * 100来计算。3.3 高低限幅与积分饱和处理PID输出值经过运算后是0.0-100.0的百分比但变频器频率给定不可能真的从0Hz到50Hz全覆盖。太低频率时水泵扬程不够、电机散热差太高频率超过50Hz对电机是过压风险。所以实际程序中我把PID输出上限限制在50Hz对应百分比下限根据最低运行频率设定为25Hz对应的百分比这个下限是可配置的现场根据用水需求调整。这就引出一个很重要的问题PID输出被限幅后如果偏差一直存在积分项会不断累积等到偏差反向时输出需要很长时间才能走回来这就是积分饱和现象。现象表现为压力过冲严重或者用水量突然减少时变频器频率不能快速降下来。S7-200 SMART的PID向导没有直接提供抗积分饱和选项所以我在程序里做了一道保险手动检测PID输出值如果输出到达上限或者下限就对PID指令的积分项进行冻结退出PID自整定模式或对输出做处理。实际工程施工中我一贯的做法是PID输出限幅到合适范围再用程序实时钳位手动频率给定值并根据压力偏差切换PID自动/手动模式达到变相抗积分饱和的效果。3.4 定时器与采样周期的选择PID运算的采样周期在PID向导里可以设定。恒压供水系统的压力反馈滞后比较大尤其是水泵到压力变送器之间的管路较长时。采样周期太短比如0.1秒压力信号轻微扰动会让PID输出频繁波动采样周期太长系统又显得迟钝。这套系统里我设置的是0.5秒采样一次。经验值是出水管路长、管径粗、用水波动大的场景采样周期放到0.5-1秒比较合适管路短的楼宇供水可以试0.2-0.3秒。这个没有绝对标准现场观察压力曲线再微调即可。4. 工况切换与泵轮换策略程序里真正的状态机部分前面讲的PID只是让变频器根据压力变化调速而一拖二系统的难点在于什么时候切换泵的运行状态。这套状态切换逻辑处理不好系统就可能在两泵之间反复切换砰哒砰哒像打摆子。4.1 状态定义与主备关系我把每台泵的运行状态定义为停止状态变频运行状态工频运行状态故障状态程序启动后先判断哪台泵作为主泵。引入泵轮换原则是为了让两台泵的运行时间大致均衡避免1号泵常年工作、2号泵常年闲置导致机械密封锈死。每次停机超过一定时间再次启动时主泵在1号、2号之间切换。如果一台泵故障系统自动用另一台泵继续供水。4.2 泵切换的判定条件与滞回设计这里用到了切换判定条件的一个关键设计——滞回比较。如果没有滞回压力在设定值附近微小波动就可能触发切换动作。比如变频泵频率已到50Hz输出压力仍不足系统判定需要增泵。但如果压力只是瞬间波动一下紧接着又回来了如果立刻切泵就会导致振荡。我的处理逻辑是增泵条件变频泵频率大于48Hz且实际压力低于设定压力0.03MPa且持续时间超过15秒。减泵条件两台泵运行时一台工频一台变频变频泵频率已经降到30Hz以下且实际压力高于设定压力0.05MPa且持续时间超过20秒。加入延时跟滞回区域等于给系统加了缓冲带避免了泵在临界状态反复切换。这套参数在现场实际运行效果很稳定。具体阈值需要按不同系统的水泵特性和用水模式调整但思路是一样的。4.3 增泵动作时的时间顺序控制增泵动作不是简单的把变频泵切到工频再把2号泵投入变频就能完事电气切换时需要严格防止两个接触器同时带电。整个增泵过程如下延时判断成立后先封锁PID输出变频器频率给定降到0Hz实际上是降到一个极低的待机频率。变频器停止输出后断开KM11号泵变频接触器延时0.5秒。确认KM1断开后吸合KM21号泵工频接触器1号泵直接工频启动满速运行。延时1-2秒待工频接触器稳定吸合后吸合KM32号泵变频接触器。解锁PID输出把2号泵投入变频控制系统继续PID调节。这里最容易被忽视的是步骤1和2——必须先让变频器停止输出再切换接触器。如果变频器还在运行中直接断开接触器接触器触点在感性负载下拉弧几下就把触点烧黑了变频器也可能报故障。我见过一个现场就是因为程序里少了这个停机延时每月都要换一次接触器触头后来改对了程序再也没出过问题。步骤4和5之间同样要有时间间隔因为KM3吸合瞬间是空载接通变频器输出侧这时不能让PID输出立刻跳到高频所以程序里要先把给定频率钳位在低速状态。4.4 休眠与唤醒逻辑夜间用水量很小如果水泵一直变频运行频率会很低甚至进入下限效率差且浪费电。为此我设置了休眠功能当实际压力大于设定压力0.08MPa且变频频率低于设定的下限频率比如25Hz并持续5分钟系统判定为小流量状态可以把变频泵停止进入休眠待机模式。压力跌落到低于设定压力0.08MPa时系统被唤醒自动启动泵投入变频运行。休眠功能实际相当于把系统从连续运行改成了间歇运行夜间节能效果很明显。但这里要特别提醒如果项目中使用的是带气压罐的成套供水设备气压罐可以在休眠期间小幅度补充管网压力波动系统不必频繁启停效果更好。如果没有气压罐纯靠压力变送器来判断小流量状态波动可能比较大休眠频率和判定阈值就需要重新整定。4.5 故障报警与自动切换每台泵的故障信号热继电器常闭点、变频器故障干接点都接入PLC数字量输入。当一台泵故障时系统应立即停止对故障泵的所有输出断开对应接触器和变频器给定。如果故障泵正处于变频运行状态系统应马上把另一台泵投入变频运行保证供水不中断。故障泵在触摸屏上报出具体故障信息并驱动声光报警器。这类切换要求PLC扫描周期足够快、逻辑足够短。编写程序时最好把故障处理和切换逻辑独立成单独的网络块不要和PID调节、触摸屏通信类逻辑混在一起否则程序扫描周期被其他功能拖慢时紧急切换可能会延迟几个扫描周期。5. 高端触摸屏界面不是把按钮堆上去那么简单项目标题里特意强调了“高端界面”确实很多设备功能到位了但界面粗糙得让人不想碰。触摸屏作为操作者唯一能直接接触的窗口其界面设计直接影响设备日常维护体验和甲方对项目的印象。5.1 界面层级规划我建议触摸屏界面至少规划四个页面主监控画面参数设置画面历史曲线与报警画面手动调试画面主监控画面放最关键的内容当前压力值、设定压力值、1号泵/2号泵运行状态指示灯停止/变频/工频/故障、变频器当前频率、运行电流、手自动状态、休眠唤醒状态。操作者站在这块屏前不用点任何按钮就能了解整套系统的实时工况。顶部留报警信息显示条有报警时红色闪烁同时配合文字描述。5.2 高端界面布局经验很多人对“高端”理解成花哨的配色和3D效果其实工业界面的高端感来自信息密度和操作效率。我的布局原则是主区域用大号数字显示压力与频率保证操作人员在几米外也能看清。压力和设定值同屏对比画面下方做两个泵的直观状态棒图或色块变频状态显示绿色、工频显示蓝色、故障显示红色一眼就能识别。参数设置画面里设定压力、PID参数Kp、Ti、休眠判定压力、切换延时、手动/自动切换等做成可输入框配合安全等级和数值范围限定。这里要特别提醒操作权限不能省。触摸屏上的参数修改权限要分级普通操作员只能改设定压力等基础参数PID参数、切换阈值这类影响系统的参数必须密码保护。否则现场工人随便调整后系统出问题最后背锅的还是调试人员。5.3 数据记录与报警归档威纶通触摸屏支持历史数据采样和数据记录导出我在项目里把关键数据压力、频率、电流、运行状态做了1秒周期的数据采样。这些数据不仅用于实时曲线显示更重要的是可以在系统出问题时导出分析判断出水高峰时段的压力波动情况对PID参数整定优化非常有帮助。报警功能上除了当前报警显示我还做了报警历史归档。每条报警记录包括触发时间、恢复时间、报警内容方便后续追溯。这类功能对运维来说非常实用往往比多一个花哨的3D画面更有价值。5.4 与PLC的通信配置触摸屏与S7-200 SMART通信常规使用以太网或RS485。现在的主流配置是西门子Smart Line触摸屏通过以太网和S7-200 SMART进行TCP/IP通信组态非常方便。如果用威纶通触摸屏需要选择S7-200 SMART驱动设置好PLC的IP地址即可。通信配置的一个坑是S7-200 SMART的以太网端口对连接数有限制。如果同一个PLC既要连触摸屏又要连上位机监控软件还要连编程软件在线监控同时连接数量过多会导致通信不稳定。现场调试时最好只保留必要的连接程序下载完成后及时断开编程软件的在线监视。另外触摸屏和PLC的IP地址必须规划在同一网段且不能和其他设备冲突。6. 系统调试流程与现场踩坑记录程序写完图纸归档真正的大考在调试阶段。这里把调试流程和几次踩坑的经验完整写出来给后来者一个参考。6.1 上电前检查清单这部分看起来是基础但恰恰是很多人图省事跳过、然后在现场付出惨痛代价的地方。上电前我会逐一检查主断路器断开状态用万用表通断挡确认主回路没有短路。逐个检查控制回路线号与图纸是否一致尤其注意接触器线圈电压等级AC220V和DC24V不能接错。确认PLC的I/O接线和程序变量表一致模拟量模块的供电和通道跳线设置正确。变频器一次侧和电机侧接线确认输出U/V/W不能和三相电源进线接反。检查压力变送器接线是否正负极反接4-20mA回路是否形成闭环。空载测试时先在手动状态下手动启停每台泵。注意第一次给水泵电机送电时先不要带载如果现场条件允许先把变频器出线端脱开空测变频器输出是否正常。确认变频器可以空载输出正确电压后再接电机带载测试。6.2 PID参数整定的实际过程PID参数整定是恒压供水调试中最花时间的部分。我采用的方法是先纯P后加I的整定法I先设一个相对大的数比如相当于积分作用非常缓慢只保留比例P把P从一个较小值比如0.3开始测试。观察压力响应曲线。如果压力围绕设定值来回震荡说明P太大减半再试。如果压力偏离后恢复非常缓慢说明P太小往大了加。找到临界状态后把P设为临界值的一半左右然后逐步减小I的值增强积分作用观察压力是否能稳定无静差地回到设定值。最终再微调让用水量突变时压力恢复时间在10-20秒范围内且超调量不要过大。现场调PID时最好用触摸屏实时压力曲线看效果。我在一次项目中PID整体参数看似正常但压力曲线在设定值附近频繁小幅波动开始以为是管道中有气排了半天气没用。后来把触摸屏画面切到PID输出曲线才意识到是模拟量信号被干扰压力值有几微小的抖动在系统运行中这部分抖动被积分部分不断累积造成循环波动。后来把信号线屏蔽层接地并重新走了线槽才解决。6.3 增泵减泵切换验证参数调好后重点验证增泵、减泵逻辑。我习惯通过打开现场放水阀制造大流量需求来模拟用水高峰初始1号泵变频运行现场放水使压力下降频率慢慢上升。继续放水直到频率达到50Hz附近观察是否在设定延时后触发增泵。增泵过程中观察接触器切换时序1号泵变频接触器是否先断开然后工频接触器吸合2号泵变频接触器再吸合。中间是否有拉弧声音有拉弧说明时序不对可能是变频器未完全停机。两台泵运行时关掉大部分放水阀模拟夜间小流量工况观察变频泵频率下降、休眠触发、工频泵停机、休眠后水泵停止直至压力下降后被唤醒再次启动的全过程。这种模拟如果连续做5-10次切换没有异常系统的基本逻辑就算验证通过了。6.4 故障模拟测试的重要性正常逻辑跑通了还要刻意制造故障来验证系统响应。用热继电器测试按钮模拟过载检查PLC是否能收到故障信号触摸屏是否弹出正确报警。断开一台泵的电源模拟泵故障故障泵在运行状态下能否快速切换到另一台泵。有一次现场调试发现一个热继电器的常闭触点接入了PLC的常闭输入点但触摸屏上显示的却是常开状态逻辑反了结果是正常运行不报警热继电器真有故障时也不报警。后来排查是信号采集转换处变量关联反了改过来后一切正常。这种逻辑反向问题最坑人功能看起来正常但故障时才暴雷测试时一定要每个保护信号都实际触发一次确认。6.5 接线干扰与地电位问题再分享一个电气干扰相关的教训。早期的版本中有一路中间继电器线圈是DC24V由PLC的传感器电源直接供电。继电器吸合瞬间在PLC输出端口产生不稳定的小脉冲偶尔造成相邻输出点误动作有一次半夜系统莫名其妙多切了一次泵。后来查下来问题就出在多路输出共用一个电源且没有装续流二极管继电器线圈断电瞬间会产生反向电动势。处理办法是在每个DC24V继电器线圈两端并联续流二极管例如1N4007或者直接选择带续流电路的继电器模块。AC220V接触器线圈两端则建议加装阻容吸收器RC吸收抑制断电时的反向脉冲。这些细节在图纸上不显眼但能避免很多莫名其妙的偶发故障。7. 从图纸到交付工程文件规范化的一些经验最后这部分聊一些项目收尾的事。很多电气工程师自己写程序时逻辑清晰但到了交付阶段文件整理得乱七八糟。图纸、程序、说明书各管各的现场一旦出了问题前后翻找可能要花上半天。我会在交付资料中统一规划文档结构。电气图纸用EPLAN或CAD绘制主回路、控制回路、PLC I/O分配表、端子排图分开表达清楚每一页图都写好图号和修订版本。PLC程序文件的变量表加注释这种习惯非常重要因为六个月后你自己回去看这些程序如果没有注释等于看天书。设备铭牌和线号管虽然很小却往往最能体现职业素养。线号管标注要跟图纸对应不要用临时胶带代替变频器出线端上U/V/W相序的标识要肉眼可见触摸屏画面版本号要内置并在引导页显示。最后给甲方一份完整的操作说明和电气原理图同时提供关键参数的出厂设定记录表方便他们日后保养维护。这套一拖二恒压供水系统从图纸到调试完毕前后花了不到两周目前已经稳定运行了很长一段时间。过程里最大的感触是恒压供水技术难度不算顶尖考验的恰恰是对细节的把握——接触器互锁是否可靠、PID采样周期是否匹配管路特性、切换时序是否留有足够的安全余量、干扰抑制有没有做彻底。这些细节每一个单独拿出来都不难但它们叠加起来才真正决定了一套系统在现场是让人省心还是让人疲于奔命。
返回列表