尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

西门子200smart PLC的3托3全变频恒压供水系统设计与调试

西门子200smart PLC的3托3全变频恒压供水系统设计与调试 前阵子刚把一个恒压供水项目收尾现场是3台水泵全部配置独立变频器也就是圈子里常说的“3托3”结构控制核心用的是西门子200smart PLC。整体调试差不多花了一周时间主要耗在PID参数整定和加减泵逻辑上。今天把方案架构、选型配置、程序思路和调试中的坑一次性整理出来给正在做供水、泵站控制的朋友一个可以直接参考的样板。这个项目本身不算复杂但要把它做稳定却有不少细节。尤其3托3全变频结构和常见的一拖二、一拖三逻辑不完全一样启动、轮换、减泵的判断都得重新考虑。如果你接触过供水项目就知道恒压供水最怕的不是硬件不行而是逻辑不严密、参数没整定好导致压力来回震荡、泵频繁切换现场根本没法交工。下面我把项目从需求到调试完整过一遍重点讲为什么这样做、怎么做的、以及实测中会遇到哪些问题。1. 项目需求与“3托3”方案解读1.1 为什么选3托3全变频架构接到这个项目时业主给的需求很明确现场有3台水泵要求管网压力恒定设定压力在0.4到0.8MPa之间可调流量变化范围比较大白天用水高峰和夜间低谷差别悬殊要求水泵能自动加减泵、自动轮换尽量减少人工干预。一开始也考虑过传统的一拖三方案也就是1台变频器轮流带3台泵其他泵工频运行。这种方案成本最低但有个硬伤工频泵投入时是直接启动会对管网造成冲击轻则压力波动重则水锤。而且一拖三意味着任何时候只有一台泵在变频调节加减泵瞬间要靠切换接触器实现切换过程存在短暂断流风险这在供水要求高的场合是不太能接受的。所以最后定下来的是3台水泵各自配1台变频器也就是3托3全变频方案。三台泵可以同时运行、同时变频频率给定统一来自PID输出加减泵时不需要切换接触器泵是软启动投入、软停机退出对管网和电网都友好得多。代价是设备投资高一些但换来的是控制质量和水泵寿命长远看这笔投入值得。1.2 3托3的控制要求与运行模式3托3结构下控制逻辑要和运行模式严格对应。这个项目定义了三种模式手动模式、自动单泵模式、自动全变频模式。手动模式用于调试和检修操作员可以在触摸屏上直接启停任意一台泵频率也可以在触摸屏上手动给定不经过PID。自动单泵模式适合夜间小流量工况系统只启动一台泵由PID直接调节这一台泵的频率。自动全变频模式是主力运行模式系统根据PID输出自动判断需要投入几台泵所有运行泵接收同一个PID频率给定同时升速或降速。之所以保留自动单泵模式是因为全变频模式下三台泵同时启动的话夜间小流量时频率会跌到很低的区间不仅效率差还可能触发变频器的低频保护。我见过不少项目把加减泵逻辑写得太激进结果夜间水泵频繁启停变频器报警一大堆。所以在逻辑设计上先把工况分清楚再写加减泵判断这是后面所有程序的基础。2. 硬件选型与系统构成2.1 PLC与扩展模块的配置思路控制核心用的是西门子200smart具体型号选了CPU SR40因为统计完输入输出点之后需要24点数字量输入、16点继电器输出SR40本体刚好匹配不需要再挂数字量扩展模块省了一个模块的柜内空间和成本。但要提醒一句选型时一定要把备用点算进去。这个项目DI用了18个点DO用了14个点如果把泵的故障、手自动状态、变频器准备就绪、远程模式、还有触摸屏的预留按钮全算上余量就非常紧张。如果当初只数实际点位就下单后期肯定要返工。我习惯在统计结果上至少预留20%的点位余量。模拟量方面压力变送器输出的是4到20mA两线制信号需要1路模拟量输入。变频器频率反馈本来打算也用模拟量读但后来决定全部走Modbus通讯所以模拟量输入模块只需要1路。这里用了200smart的模拟量扩展模块EM AM06带4路模拟量输入和2路模拟量输出输入输出都有富余。如果只是接一路压力信号也可以选更小的EM AE01但AM06多出来的模拟量输出点以后可以扩展用途比如接记录仪或者做备用输出一步到位更省事。2.2 变频器与传感器选型考虑3台变频器选的是市场上非常常见的通用型变频器这里要根据水泵电机功率选型。现场单台泵电机是11kW所以变频器选15kW规格留了一些余量。选变频器时有一个很容易忽略的点供水泵通常是大惯量负载变频器默认的转矩提升和加速时间设置不一定合适出厂后需要手动调整。压力变送器的选择也有一点讲究。供水管网压力测量一般用扩散硅压力变送器量程选择要按实际工况来。现场要求的压力设定范围是0.4到0.8MPa为避免传感器输出接近量程上限导致信号饱和选了0到1.6MPa量程的变送器4到20mA输出实际压力0.8MPa时对应12mA正好在信号范围的中间位置线性度最好也为上限留足余量。变频器和PLC之间的通讯采用的是Modbus RTU协议这个后面专门讲因为涉及到200smart的通讯端口配置和程序编写是很多新手容易卡住的地方。2.3 电气原理与接线实操注意点接线上面有几个细节值得单独说。第一是压力变送器的供电项目里用的是24V直流电源注意变送器是两线制还是四线制如果是两线制正极接24V负极同时接到PLC模拟量模块的AI通道和模块的COM端电流信号才能形成回路。接反了或者COM端没接好读出来的数值就是乱跳的。第二是模拟量信号的屏蔽线。虽然压力变送器到PLC的距离不长也就十几米但柜内有变频器这个强干扰源所以模拟量电缆必须用屏蔽双绞线屏蔽层在PLC端单端接地不能两端都接更不能让屏蔽层悬空。现场调试时就发现屏蔽层没接的时候AIW读出来的压力值波动能达到0.05MPa以上接好屏蔽层后波动立即降到0.005MPa以内前后的差别非常明显。第三是变频器到电机的输出线务必和模拟量信号线分槽走线不要绑在一起。变频器输出侧是高频PWM波对模拟量信号的干扰是灾难性的。有些项目为了走线美观把动力线和信号线放在同一个线槽里结果压力信号跳动PID根本稳不住最后只能重新布线。第四是Modbus通讯线的连接。200smart的RS485接口是九针D型口3号脚是B负8号脚是A正这个和很多变频器端子标注可能不同接线前一定要核对变频器的A/B定义接反了通讯直接不通。通讯线要用屏蔽双绞线屏蔽层单端接地通讯波特率根据距离选定45米以内的距离用9600或者19200都可以这个项目用的是9600。3. 程序设计PID与轮换控制逻辑3.1 200smart中PID向导的配置方法200smart编程软件STEH 7-Micro/WIN SMART里有PID向导这是做恒压供水必须用好用的工具。打开向导后选择PID回路编号设置回路参数、给定值和过程值的范围、输出类型然后向导会自动生成一个PID子程序在梯形图中直接调用它每N个扫描周期调用一次即可。这个过程参数设置上项目里是这样配的给定值是压力设定值以0到100的标定值形式存储0对应0MPa100对应1.6MPa所以0.6MPa的设定值就是37.5。过程值是压力变送器的实时压力同样标定到0到100范围。PID输出则对应变频器频率给定0表示0Hz100表示50Hz。这里要特别说明的是PID向导的输出范围默认0到100但在实际工程中PID输出上限不能直接给100因为变频器最高运行频率一般只有50Hz如果PID输出到了上限意味着变频器已经满频输出但压力仍不足这时系统应该进入加泵判断而不是继续憋着输出。所以在PID输出后面做了一个限幅把输出上限限制在90也就是45Hz超过这个值持续一段时间就触发加泵逻辑。这样做的好处是给加减泵判断留了一个清晰的、可判断的阈值区间。还有一个容易忽略的向导配置项是微分项。供水系统是大惯性环节压力变化相对较慢微分作用对快速变化的干扰很敏感容易把系统整得来回振荡。项目的做法是直接把微分时间设为零只用比例积分做PI控制。实际调下来效果很理想压力稳定后波动不超过正负0.01MPa。如果你做的是小型供水系统也建议优先使用PI控制不要一上来就把三个参数都打开。3.2 加减泵与轮换逻辑的编程实现3托3全变频的核心逻辑在于判断什么时候加泵、什么时候减泵以及加减的是哪一台泵。这个项目里采用了一种比较保守但可靠的策略。加泵判断当前运行泵数少于3台且PID输出连续30秒大于加泵阈值90%就判定为当前运行泵已经满足不了用水需求需要投入下一台泵。这里一定要加延时不能PID输出一高就立刻加泵因为用水波动是正常现象偶尔几秒钟的输出偏高不代表真的需要加泵。30秒的延时是基于现场用水规律实测后定下来的太短容易频繁加泵太长则高峰时压力先掉下来再补上去体验不好。减泵判断当前运行泵数大于1台且PID输出连续60秒小于减泵阈值35%说明水用少了需要退出一台泵。减泵阈值设置成35%而不是更低是因为如果让PID输出在20%甚至10%还保持多泵运行变频器输出频率太接近下限不仅电机效率低还可能因为长期低频运行导致电机散热不足。这个35%对应17.5Hz已经在允许的低频范围内了。轮换逻辑方面用的是先启先停加运行时间累计的方式。每台泵在PLC里都有一个运行时间累计值每次加泵时优先启动累计运行时间最少的泵每次减泵时优先停止累计运行时间最多的泵。这样能保证三台泵的运行时间趋于平衡。有人问过为什么不用简单的先启先停其实在只有两台泵时先启先停完全够用但三台泵时如果不加时间均衡逻辑中间那台泵很容易长期处于怠工状态轴承都锈住了到要启动的时候反而故障。加减泵的切换在3托3全变频结构下很简洁。加泵时先把新泵的频率给定设为当前PID输出值然后下发启动命令变频器会在设定频率下直接软启动不会对管网产生冲击减泵时先把要停的泵频率降到零再发停止命令或者直接下发停止命令同时让变频器按减速时间停机。现场配置的变频器减速时间设为10秒避免停机瞬间压力突变。3.3 安全保护与故障切换逻辑供水系统的保护逻辑不能只依赖变频器自身的保护功能PLC侧要多加几道保险。这个项目里做了泵故障切换、压力超限保护和水位联锁。泵故障切换的逻辑是运行过程中如果某台泵的变频器报故障或者水泵过载PLC会立即停掉故障泵并在2秒延时后自动把备用电泵启动起来确保供水不中断。这个2秒延时的设定初衷是给变频器一点复位时间同时不至于让压力掉得太多。压力超限保护分两个级别。压力达到设定值加上0.1MPa时报警提示但不动作让运行人员知道压力偏高压力达到设定值加上0.2MPa时立即停止所有泵防止管网爆管。这个阈值可以根据项目实际情况调整但原则是一级报警只提示、不动作二级报警直接停机。水位联锁是配合补水池使用的。如果蓄水池液位低于下限说明水源不足这时不管压力如何都要停泵防止水泵空转损坏。液位信号用的是现场的液位开关接到PLC的数字量输入点液位过低时通过程序封锁所有泵的启动命令。4. 参数整定与调试纪实4.1 变频器关键参数设置明细变频器参数设置看上去简单但很多初次做的朋友会忽略几个关键项。这个项目里变频器主要设置了以下参数可以给同样用通用变频器做供水控制的朋友参考。第一是运行指令通道设置为端子控制由PLC的DO点控制变频器启动停止。虽然Modbus也可以控制启停但端子控制的响应更直接不受通讯状态的制约万一通讯卡顿不至于影响启停。第二是频率给定通道设置为Modbus通讯给定由PLC通过RS485下发频率数值。这里有一个常见坑通讯给定的数据格式要和变频器内部频率精度对应项目里频率写入值是0到5000对应0.00到50.00HzPID输出的0到100要换算成0到5000之后再写进去。第三是加减速时间。供水泵启动时水压建立需要时间加速时间太短容易造成水锤太长则压力迟迟上不去。项目里加速时间设为8秒减速时间设为10秒这是通过几次现场试验得到的比较合适的值。第四是下限频率设置成10Hz防止PID输出异常偏低时电机的转速过低、泵出口压力接近于零导致倒流。如果变频器还有PID功能这个项目里刻意没有使用。有些变频器内置PID可以直接在变频器上设定给定压力不需要PLC做PID。但在这个3托3全变频架构中三台泵需要统一的频率给定和加减泵协调用PLC的PID统一处理要比变频器各自处理灵活得多。所以变频器只作为执行机构所有控制策略都在PLC里实现。4.2 PID参数整定的实际过程与经验PID参数整定是恒压供水调试中最耗时、也最考验经验的部分。这个项目的整定过程我按以下步骤做的分享出来供你参考。第一步先利用阶跃响应法粗调比例。把积分时间设到最大、微分关掉比例增益先给一个保守值比如1.0左右。给定一个压力设定值让系统只开一台泵观察压力响应曲线。这时你会发现压力会有静差达不到设定值这是纯比例控制不可避免的。逐渐加大比例增益每次增加0.5左右直到压力出现轻微等幅振荡然后退回到不振荡区间这个增益值就是临界增益。第二步加入积分消除静差。在合适的比例增益基础上逐渐减小积分时间让系统尽快把静差消除掉。积分时间不能太小否则压力会出现低频振荡。实测下来这个系统积分时间设在20到30秒之间比较稳定。这和大家经验里的说法是一致的供水系统惯性大积分时间以10秒以上为常态具体值要靠现场调。第三步精调。在比例和积分基本确定后先把三个运行泵的模式打开让系统自动加泵减泵跑一晚上看一整天的压力趋势曲线。这一步特别重要因为单泵时的PID参数在双泵、三泵同时运行时未必合适。三泵并联运行时因为总出水量变大同样PID输出下管网压力上升更快所以综合参数需要比单泵略微保守一些。最终整定下来的参数是比例增益1.8积分时间22秒微分时间0。这个参数在用水高峰期压力能快速跟上低谷期也没有振荡稳定精度在正负0.01MPa以内业主验收时还是比较满意的。4.3 调试中遇到的典型问题记录调试过程不是一帆风顺的这里把几个最典型的现场问题记录一下每一个都很有代表性。第一个问题是压力信号波动。接好线后在触摸屏上观察压力显示值发现数值在小数点后第二位不断跳动最大波动幅度达到0.03MPa左右。排查时先确认变送器本身没问题用万用表测电流输出发现信号本身是稳定的问题出在传输和采集环节。后来把模拟量线换成屏蔽双绞线屏蔽层在PLC端接地同时调整了PLC模拟量滤波参数波动问题解决。第二个问题是PID输出和变频器频率不一致。程序里PID输出是0到100变频器频率对应0到50Hz但在实际运行时发现PID输出即使到了60变频器显示频率只有20Hz左右远低于预期的30Hz。排查后发现问题出在数据格式转换上。200smart的Modbus通讯写入时如果把浮点数直接转换成整数写入必须注意变频器支持的数据格式这个项目里频率设定值需要的是四位十六进制数也就是0到5000对应50.00Hz。程序中梯形图做好转换后频率输出就准确了。第三个问题是泵切换瞬间的压力波动。一开始加泵时压力会有一次明显下冲然后才恢复。原因是新泵启动时频率给定还是零变频器从零加速到PID输出值需要时间这段时间内出水量没有立刻增加。后来优化了启动流程加泵前先把新泵的启动频率预置为当前PID输出值再发送启动命令并把这个逻辑在程序里实现后切换波动明显变小从正负0.04MPa缩小到正负0.015MPa左右。5. 常见问题排查与运维建议5.1 压力持续振荡的排查思路恒压供水最让人头疼的故障就是压力振荡压力曲线像锯齿一样来回抖动PID参数怎么调都压不住。遇到这种问题不要一直纠结PID参数先按照从外到内的顺序排查。先看压力采集环节用万用表在PLC模拟量通道处测变送器的电流看电流本身稳不稳。如果电流就在跳动说明变送器问题或者现场干扰严重先把信号源搞定再谈PID。如果电流稳定问题大概率在PLC或者变频器。再看变频器的实际输出频率是不是在跟着PID输出一起抖动如果频率波动剧烈说明PID响应太快或者反馈通道存在噪声这时候可以在程序里对PID输出加一个速率限制让频率变化速率不超过每秒钟多少赫兹通常能有效缓解振荡。我见过一个项目压力振荡的原因是模拟量滤波时间设得太短压力变送器本身有轻微的固有噪声经过PID放大后变成了明显的频率抖动。把模拟量滤波时间从默认值加大后振荡立刻消失了。所以遇见振荡问题先别急着改PID采集侧先排查干净。5.2 水泵频繁启停的根源与对策水泵频繁启停是供水项目的典型故障尤其是在夜间小流量时。表象是泵一下启动一下停止短则几分钟一个循环长则十几个小时不停歇。这种问题多数不是硬件故障而是加减泵判断逻辑和PID参数不匹配。最常见的原因是加泵阈值设置得太低而PID输出又经常在阈值附近徘徊。如果加泵阈值设成80%PID输出在78%到83%之间来回波动那么加泵条件和减泵条件就可能在短时间内交替满足系统就会一会加泵一会减泵。解决方法是把加泵和减泵阈值拉开距离形成滞回区间比如加泵阈值90%、减泵阈值35%同时加长确认延时这样系统就不会在边界反复横跳。另一个原因是PID积分作用太强导致输出在小范围内来回穿越阈值。处理方法是适当增大积分时间让PID输出变化更平缓。另外还有一种情况是减泵后的压力回升太慢减泵后PID输出又很快达到加泵阈值形成震荡循环这种情况可以把减泵后的锁定时间做长一些比如减泵后5分钟内不允许再加泵给系统一个稳定期。5.3 通讯抗干扰与数据校验经验200smart和变频器之间的Modbus通讯在正常工况下非常稳定但一旦现场有较大的电磁干扰源比如大功率电机启动或者切削设备运行时通讯就可能偶发超时或错误帧。这个项目里做了几层防护实际效果不错。第一通讯波特率不要盲目追求高速。虽然19200甚至38400也能稳定通讯但现场干扰较强的情况下9600是一个更稳妥的选择。供水系统的数据量很小一个轮询周期无非是读写频率、电流、状态、故障码这些数据9600波特率足够用了。第二PLC的通讯超时重试逻辑要写。用Modbus通讯指令时如果某次读写超时不要无限重试重试两三次后如果还不行就报通讯故障同时保持当前的运行状态不因为通讯异常停机。这个策略很重要通讯出错不代表变频器故障有时候就是偶发干扰重试一下就好了。第三程序中要定期读取变频器的运行电流和故障状态而不是只下发频率。我见过一些项目只往变频器写频率从不读状态结果变频器早就过热报警停机了PLC还傻乎乎地输出频率现场还不知道泵已经停了。加一个心跳检测每5秒读一次变频器状态字连续三次读不到有效数据就判定通讯中断触发声光报警。5.4 后期运维与扩展建议这个项目交付后我还给业主留了几条后期运维的建议。第一是定期检查压力变送器的导压管看有没有堵塞或泄漏这个小问题不处理会引起压力读数失真导致PID误判断。第二是变频器的散热风道要定期清理泵站环境一般灰尘比较大散热不良是变频器损坏的主要原因之一。第三是水泵的机械密封要按周期检查如果发现泵体漏水要尽早处理否则电机进水就麻烦大了。关于扩展这套200smart的控制系统以后想接入上位机、MES或者云平台也很方便。200smart本身支持以太网通讯可以和组态软件做Modbus TCP通讯也可以利用它的开放式用户通讯功能自己写协议上传数据。如果现场后续要增加第四台泵硬件上加一路变频器、扩展一个数字量模块就能实现程序逻辑已经把加泵判断做成通用的不需要大改。最后分享一个我个人习惯的做法项目交付时把每台泵的运行时间累计值保存到PLC的断电保持区同时把PID参数的整定记录写在程序注释里。这样下次维护人员接手时一看程序就知道当前参数是怎么来的不需要从头摸索。做工程不是一锤子买卖给自己的调试过程留好记录后面会省很多事。
返回列表