十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

基于S7-200 SMART与威纶通触摸屏的污水处理自控系统改造

基于S7-200 SMART与威纶通触摸屏的污水处理自控系统改造 最近刚做完一套小型污水处理站的自控系统改造核心就是围绕西门子S7-200 SMART PLC和威纶通触摸屏搭的一套就地控制系统。这套配置在中小型污水处理项目里太常见了格栅井、调节池、一体化生化设备、加药装置配上提升泵、鼓风机、回流泵这些设备用200 SMART做逻辑控制威纶通触摸屏做本地监控基本就是这类项目的主流组合。这套系统解决的实际问题很直接没人愿意24小时守在污水站现场设备启停靠人工跑现场容易误操作出现液位溢流或者泵空转烧电机往往是事后才发现。上了PLC加触摸屏之后中控室或者值班室就能看到液位、pH、溶解氧、流量这些核心参数设备也能按液位联锁和定时逻辑自动启停故障直接弹报警大大减少日常值守压力。对于做水处理自控的工程师、刚入门想找完整案例练手的PLC学习者、以及运维单位的技术人员来说这套方案都很有参考价值。我下面把这个项目从方案设计、硬件选型、程序编写到触摸屏组态的过程完整拆一遍重点说清楚每个环节背后的考虑以及实际调试中踩过的坑。1. 项目方案设计先搞清楚工艺再选型1.1 这套系统到底要控什么很多时候一上来就聊PLC型号、触摸屏尺寸其实顺序反了。做水处理自控第一步永远是吃透工艺和控制需求。这套系统对应的是一个日处理量几百吨的小型污水处理站采用A2O工艺厌氧-缺氧-好氧工艺流程大概是这样污水进入格栅井粗格栅拦截大块杂物然后进调节池均化水质水量调节池里的提升泵把污水提升到后续生化池。生化池是核心分厌氧区、缺氧区、好氧区好氧区底部布置曝气盘鼓风机通过管道往池里供氧维持微生物活性。生化池出水进沉淀池泥水分离后清水排放或回用剩余污泥排到污泥池再通过加药泵加絮凝剂进行污泥脱水。从这个工艺流程来看自控系统需要监控的工艺参数就很清楚了调节池液位这是提升泵启停的核心依据液位高就启动水泵往外送水液位低就停泵防止空转。好氧池溶解氧DO决定鼓风机的运行状态DO过低了微生物会缺氧过高了浪费电能需要按设定区间控制曝气量。pH、温度、进水流量这些主要是监测和记录用于判断进水水质是否正常为运行人员调整工艺提供数据。需要控制的设备包括格栅机、提升泵、鼓风机、回流泵、加药泵、电动阀门等。控制方式上现场要做到手动/自动可切换自动模式下按液位、时间、DO值等条件自动运行手动模式供检修和应急使用。项目还有个隐性需求就是故障必须能远程报警。污水站有故障的时候比如泵过载跳闸、液位超高现场操作工不一定立刻知道所以要让报警信号通过触摸屏弹窗、声音提示甚至短信通知的方式传达出去。这套系统至少先把触摸屏报警和声音提示做好后续要接中控室或云平台也有预留接口。1.2 为什么是S7-200 SMART和威纶通确定工艺需求之后控制方案其实很清楚了点数不多、逻辑属于典型的顺序控制和联锁控制、没有太复杂的运动控制选用小型PLC加触摸屏的组合完全够用。选S7-200 SMART不是因为参数多先进而是这个场景下它最合适。第一是性价比。整套PLC加扩展模块的成本比中大型PLC低一个量级而且一个污水站几十个I/O点用大型PLC纯属浪费。第二是普及率高。这行做维护的电工、调试工程师基本都接触过200 SMART后续改程序、排查问题不至于没人会。第三是以太网口是标配。200 SMART本体自带以太网口程序下载、连接触摸屏、接上位机都很方便不用额外买通讯模块。第四是Modbus TCP支持。后面要跟KepServer、和利时DCS这些上位系统对接靠自带的Modbus TCP从站功能就能实现省掉不少麻烦。西家往上走还有S7-1200、S7-1500但那是另一档产品。一个几十点的小水站用1200有点浪费用200 SMART刚好卡在性价比最合理的位置。当然如果是新建大型污水厂全厂做DCS系统那200 SMART只能做底层子站上位用DCS系统统一管那是另一种架构了。威纶通触摸屏这边选它主要是组态软件EB Pro上手门槛低画面对齐、地址设置、功能元件都很直观做报警和历史曲线也方便。再就是价格优势跟进口品牌比便宜不少中小项目业主普遍能接受。当然还有一层考虑是用的人多技术问题网上能找到大量资料遇到问题不至于卡住。1.3 整体网络结构这套系统的网络结构不复杂但要在设计阶段就定清楚。基本架构是现场仪表和设备的信号先进PLCPLC通过以太网口连接到一台工业交换机交换机的另外两个口分别接威纶通触摸屏和中控室电脑。中控室电脑安装组态软件或OPC客户端通过Modbus TCP协议读取PLC数据。触摸屏用网线直接连交换机也可以PLC和触摸屏直连看现场布线条件。这个项目里我建议加交换机因为留了中控室上位机的接口以后还要接云平台或者DCS系统交换机是必要节点。IP地址规划上PLC设为固定IP触摸屏和上位机设同一网段不同IP避免冲突。2. 硬件选型与I/O分配清单和点表是后面所有工作的地基2.1 硬件清单怎么定I/O点数确认之后硬件清单基本就出来了。这套系统的核心硬件配置大概是这样设备选型数量备注PLC CPUS7-200 SMART SR401继电器输出型24点输入/16点输出模拟量扩展模块EM AE0414通道模拟量输入4-20mA触摸屏威纶通MT8071iP17寸带以太网口交换机工业交换机5口1百兆够用液位计超声波液位计1调节池4-20mA输出DO仪在线溶解氧仪1好氧池4-20mA输出pH计在线pH计1进水端4-20mA输出流量计电磁流量计1处理出水4-20mA输出接触器施耐德或正泰若干控制泵和风机主回路热继电器/马达保护器EOCR或国产若干电机过载保护带故障输出CPU选SR40而不是ST40主要考虑是负载性质。SR40是继电器输出触点容量大直接驱动接触器线圈很稳当ST40是晶体管输出适合高频脉冲输出场景控制接触器反而要加中间继电器转换。水泵和风机这种对响应速度要求不高的设备继电器输出完全够用而且现场维护方便烧了一个点也好换。EM AE04是4路模拟量输入这个项目正好用满。如果后面要加变频器频率给定就需要模拟量输出模块或者换个带模拟量输出的型号这个在选型时就要预留好。我建议留一点余量模拟量输入模块可以选8通道的或者再加一块EM AE04防止工艺调整时新增仪表没地方接。2.2 I/O点表写程序前必须先干的活写PLC程序之前必须先做I/O点表。很多人上来就写梯形图写到一半发现输入输出点不够用或者地址乱了返工成本很高。点表是PLC地址和现场信号的一一对应表是所有程序编写、触摸屏组态、现场接线、后期维护的依据。这套系统的I/O点表大概长这样数字量输入DI地址注释信号来源I0.01号提升泵故障马达保护器故障输出I0.12号提升泵故障马达保护器故障输出I0.21号鼓风机故障热继电器辅助触点I0.32号鼓风机故障热继电器辅助触点I0.4格栅机故障热继电器辅助触点I0.5手动/自动切换选择开关I0.6远程/就地切换选择开关I0.7液位超高报警浮球开关I1.0进水流量开关报警流量开关数字量输出DO地址注释负载Q0.01号提升泵启动接触器线圈Q0.12号提升泵启动接触器线圈Q0.21号鼓风机启动接触器线圈Q0.32号鼓风机启动接触器线圈Q0.4格栅机启动接触器线圈Q0.5加药泵启动接触器线圈Q0.6报警电铃声光报警器模拟量输入AI地址注释量程AIW0调节池液位4-20mA0-5mAIW2好氧池DO4-20mA0-10mg/LAIW4进水pH4-20mA0-14AIW6出水流量4-20mA0-200m³/h点表列出来之后有几个细节要提前确认一是负载功率和接触器线圈电压如果接触器是220V AC的PLC输出端公共端要接对应电源选型时要确认清楚二是传感器供电大部分四线制仪表需要外部供DC24V要配一个可靠的开关电源别和PLC输出模块共用一路电源别省这个钱否则会有信号干扰三是备用点数字量输入输出至少空出10%-20%的余量后面加设备的时候不至于改柜子。2.3 故障信号接常开还是常闭这里单独拿出来说是因为它在实际工程里特别容易踩坑。设备故障信号从热继电器、马达保护器出来到底接PLC的常开还是常闭触点很多新手搞不清。我的结论是故障信号优先接常闭也就是说在PLC程序里看到的逻辑是“正常时该点为1故障时该点为0”。原因很简单常闭触点有一个天然优势断线检测。如果信号线断了PLC读到的状态和故障状态一样系统会报故障至少不会让设备在失去保护的情况下继续运行。如果接常开信号线断了PLC会误认为设备正常故障发生时保护动作完全失效这才是最危险的。所以在这个项目里所有电机故障信号都按常闭接入程序里用常开指令读取就可以了梯形图里写“I0.0为ON表示故障”实际上外部接的是故障信号常闭触点。这一点要在图纸上标注清楚不然电工接线时会按常开接程序逻辑就全反了。关于执行机构补充一句如果现场用双控电磁阀比如同时有开阀和关阀两个线圈PLC控制时要加互锁逻辑确保开阀输出和关阀输出不能同时为ON否则电磁阀会烧毁或者损坏阀门机构。200 SMART编程时用两条互锁的常闭触点就能实现。3. 控制逻辑与程序实现从梯形图到整站联锁3.1 程序整体结构S7-200 SMART的程序结构比较灵活主程序OB1是必须的子程序可以根据功能拆分成几个模块方便调试和维护。我这套系统的程序结构分成这样几块主程序OB1负责整体调度调用各功能子程序。模拟量处理子程序把AIW原始值换算成工程量供其他逻辑使用。自动控制子程序液位联锁、泵组轮换、曝气控制的核心逻辑。手动控制子程序触摸屏手动模式下直接启停设备。报警处理子程序故障信号采集、锁存、复位输出到触摸屏。模块化有个很明显的好处现场调试点位的时候可以单独禁用某个子程序不影响全局。比如调试曝气逻辑时先把泵组控制子程序屏蔽掉避免误动作损坏设备。3.2 液位联锁与水泵轮换提升泵控制是整个系统里最核心的逻辑。调节池液位通过超声波液位计实时监测PLC根据液位变化控制两台提升泵的启停。控制策略是区间控制简单说就是设定几个液位阈值液位值动作低于0.5m停泵防止空转0.5m~2.0m保持当前状态延滞区高于2.0m启动一台泵高于3.0m两台泵同时启动高于3.5m超高液位报警提示人工干预这个逻辑看着简单实际编程时有两个坑要注意。第一个是延滞区。如果只有启泵液位和停泵液位比如2.0m启动、0.5m停止那么进水流量较小的时候液位在2.0m附近波动会导致水泵频繁启动停止对电机和接触器伤害很大。所以要在启泵液位和停泵液位之间留足够的死区也就是延滞区让液位升到2.0m才启动、降到0.5m才停止中间的1.5m区间是缓冲带。这个策略在工程上叫“滞回控制”和继电器控制里的“回差”是一个道理。第二个是泵轮换。两台泵如果长期只运行一台另一台长期闲置容易出现问题。所以程序里要记录每台泵的累计运行时间每次需要启动单泵的时候比较两台泵的累计运行时间优先启动累计时间短的那台。如果当前运行泵故障或者手动切到备用泵备用泵自动顶上。轮换逻辑不复杂但要用好保持功能断电要能保持累计时间数据。梯形图实现时用两段并联的自保持回路就能完成单泵启停加上轮换条件后嵌套几个比较指令和中间继电器M继电器做逻辑组合。200 SMART还支持用SCL语言写复杂逻辑但梯形图在维护时更直观这个项目用梯形图就够了。3.3 曝气控制与DO闭环好氧池曝气控制是节能的关键环节。鼓风机长时间满负荷运行非常费电必须根据好氧池溶解氧浓度自动调节曝气量。这个项目我用了两种方案一种简单一种复杂根据业主预算来选择。简单方案是间歇曝气。鼓风机的启停由DO值决定DO低于设定下限比如2.0mg/L时启动鼓风机DO高于设定上限比如4.0mg/L时停止鼓风机。这本质上也是滞回控制逻辑简单成本低适合单台风机的小型站点。缺点是风机启停频繁对风机本身有冲击所以我要在程序里加一个最短运行时间和最短停止时间限制比如启动后至少运行15分钟停止后至少停止15分钟防止DO探头信号波动导致风机来回折腾。复杂方案是变频恒DO控制。DO变送器信号进PLC与设定值比较经过PID运算输出频率给定信号到变频器调节鼓风机转速让DO稳定在设定值附近。S7-200 SMART自带PID功能可以用PID向导生成PID子程序里面配置PID增益、积分时间、微分时间即可。PID参数快速整定可以先设一个保守值增益较小、积分时间较长然后现场根据响应曲线微调。需要注意一个很关键的细节PID输出必须做限幅默认是0-100实际变频器频率范围要映射到0-50Hz同时在DO信号掉线或者超量程时要立刻停PID或者让PID输出归零否则PID会一直累加输出把风机顶到最高速现场很容易出事故。小站点如果在预算允许的情况下建议上变频器方案长期电费节省明显。不过变频器和PLC之间如果用Modbus RS485通讯要记得把变频器的通讯协议和站号设置好线要用屏蔽双绞线两端接好终端电阻和屏蔽层接地不然通讯会时通时断。ABB、汇川、英威腾的变频器我都用过Modbus RTU格式基本一致就是寄存器地址和功能码可能要查手册写程序前先把地址表核对清楚。3.4 报警、复位与断电保持报警处理是所有控制系统都必须认真对待的部分。这套系统的报警分几类设备故障报警电机过载、保护器动作、工艺报警液位超高、压力异常、通讯报警仪表信号断线。报警要分轻重缓急触摸屏上要有不同的显示颜色和声音提示重大故障要优先显示。程序里报警信号要锁存不然故障瞬间恢复但操作工没看到故障记录就丢了。逻辑是故障信号来了之后即使外部原因消失报警状态也一直保持操作工在触摸屏上确认并复位报警状态才清除。这个“故障确认”机制非常重要是工艺安全的基本要求。断电保持也要提前考虑。水泵累计运行时间、报警记录、液位设定值这些数据断电之后不能清零。S7-200 SMART的系统块里可以设置V区的保持范围把存放关键数据的V区地址段设置为保持。这里要提醒一句保持范围要在下载系统块时一并配置好否则程序里写了保持逻辑也不生效。4. 威纶通触摸屏组态画面、地址与通讯一次讲清4.1 画面结构怎么规划触摸屏组态的第一步是画面结构规划。污水处理站的触摸屏画面我习惯分成这几页主监控画面全站工艺流程图用图形摆出格栅井、调节池、生化池、沉淀池等设备配上设备运行状态指示灯和关键实时数据比如液位、DO、pH、流量。这一页是所有画面的核心操作工日常盯的就是它。设备操作画面手动模式下的设备启停按钮和状态显示供调试和应急使用。参数设置画面液位阈值、运行时间、DO上下限等控制参数的设定入口一般需要管理员权限才能修改。报警画面当前报警和报警历史记录按时间排序方便查找。趋势画面液位、DO、流量等关键参数的趋势曲线用于分析工艺运行情况。画面规划的原则是第一屏就是总览一屏能看到所有关键信息操作工不需要翻来翻去。按钮和数据显示要分开设备操作按钮放在独立的操作画面里避免在主监控画面上误触。颜色统一约定绿色运行、红色停止/故障、黄色手动、灰色未使用这个习惯坚持下来后期维护时看图很舒服。4.2 通讯设置与地址映射3x、4x、5x到底什么区别威纶通触摸屏和S7-200 SMART通讯这是整个项目中问题最多的地方。威纶通EB Pro组态软件里新建工程时设备类型要选“Siemens S7-200 (Smart)”通讯接口选以太网填好PLC的IP地址和端口号默认102。这里有个常见错误好多人选成普通的S7-200驱动就不能正常通讯。选对型号是第一步。通讯方式定了之后就是地址映射。威纶通触摸屏的地址类型分为好几种3x、4x、5x、LW、LB等很多新手容易搞混。3x输入寄存器只读地址对应PLC里的模拟量输入AIW、输入状态等用于显示数据。4x保持寄存器可读可写地址对应PLC里的V区保持寄存器用于读写控制参数和数据。在Modbus通讯模式下4x地址和S7-200 SMART的V区有对应关系VW0对应40001VW2对应40002以此类推地址值加1是因为Modbus协议从1开始编号而V区字节偏移从0开始且40001对应的是字地址VW0而不是字节VB0。5x协处理器寄存器这个用得比较少一般对应某些设备的特殊寄存器。威纶通里5x地址用于访问一些协处理器或者扩展设备日常做水处理项目几乎不会用到。LW本地字寄存器和LB本地位寄存器这是触摸屏内部的存储区不直接对应PLC常用于触摸屏的本地逻辑、页面切换、数据暂存。比如画面上的按钮想要跳转页面可以操作LW地址想要做一些本地计算也用LW。举个例子如果要在触摸屏上显示调节池液位PLC里液位工程量存在VW100那么在触摸屏上放置一个数值显示元件读地址设为4x-51因为W100对应的Modbus地址是40001100/240051或者直接用驱动提供的V区寻址方式选VW100取决于EB Pro版本。威纶通的EB Pro从某个版本开始对S7-200 Smart驱动做了优化可以直接在地址栏里填VW100不用再换算成4x地址但如果在老版本工程或者Modbus TCP方式下配置就还是要按40001对应VW0的规律来换算。这里我建议一个稳妥做法如果你不熟悉4x换算规则就在EB Pro里选原生的S7-200 (Smart)驱动直接使用VW地址由软件处理底层映射。如果你为了兼容后续上位机或者喜欢用Modbus方式通讯那么把PLC侧配置为Modbus TCP从站触摸屏设备类型选MODBUS TCP Client然后按4x地址规则访问V区。不管用哪种方式先在触摸屏上做一个简单的“数值输入”控件绑定一个已知PLC地址通电测试能不能读回数据再铺开做画面这是最稳的工作流程。4.3 趋势图、报警记录与权限管理威纶通做趋势曲线很方便。在EB Pro里放置“趋势图”元件数据源选择PLC地址液位、DO等采样周期一般设置1-5秒保存间隔视存储能力而定。触摸屏可以插U盘或者SD卡把历史数据存到外部存储介质定期导出来做数据分析。这个功能很实用运维单位想了解污水站一个月的运行情况直接把U盘拔下来插电脑上用Excel打开就能看。报警记录这块要在EB Pro里定义报警文本和数据源地址。比如定义“1号提升泵故障”对应的PLC位地址是M10.0那么当M10.0为ON时报警画面自动弹出该条报警同时触发声音报警。报警记录会自动保存断电不丢失。威纶通触摸屏还支持报警时间戳方便事后追溯。用户权限管理也要做好。触摸屏上可以设置多个用户级别操作员级别只能查看数据和进行常规启停操作管理员级别才能修改参数和配方。EB Pro里在系统参数中启用用户权限给每个画面元素分配权限等级。千万不要把所有功能都放开给操作工运行参数一旦被乱改可能直接搞坏工艺。另外要提醒的是威纶通触摸屏本身有工程密码和底层系统密码。工程密码在EB Pro里设置忘记密码可以尝试用官方软件移除或联系技术支持。至于那些网传的root密码或者系统维护密码不建议折腾因为底层密码是用于系统调试的乱改可能导致触摸屏启动异常正规做法是保留出厂状态不要试图去破解。4.4 触摸屏上的控制操作细节触摸屏不只是显示还要承担一部分控制权限。在这个项目里手动/自动模式切换放在触摸屏上同时保留柜面上的硬开关两者之间是“或”关系。触摸屏上还做了泵启停按钮、参数设定窗口。触摸屏上控制设备逻辑上必须和PLC程序协同。设备启停按钮通常使用“置位/复位”型宏或者多状态按钮按下后PLC程序收到信号再经过设备保护条件判断后输出。这里我强调一个原则触摸屏上的按钮永远只是“请求”真正的输出条件判断必须在PLC里完成。比如触摸屏上点“启动1号泵”PLC程序里还要检查泵是否故障、液位是否过低、手动/自动模式是否允许启动所有条件都满足才输出。这样即使操作工误操作PLC逻辑也能兜底。5. 联调实战与常见问题排查5.1 通讯不通先查这些联调阶段第一件事就是通讯。触摸屏和PLC通讯不上是最常见的问题排查顺序我总结如下先把IP地址查清楚。S7-200 SMART的IP地址在系统块里设置下载到PLC时生效。触摸屏的IP地址在EB Pro的工程参数或者触摸屏系统设置里配置。常见错误是PLC设了192.168.0.1触摸屏设了192.168.1.10不在同一网段。最简单的验证方法用电脑网线分别连PLC和触摸屏把电脑IP设到同一个网段用ping命令测试。如果电脑ping不通PLC检查PLC的IP是不是设对了网线是不是好的。如果IP没问题再用电脑上的西门子软件或者直接访问PLC的Web页面确认PLC是否在线。S7-200 SMART本身支持Web访问浏览器打开PLC的IP地址能看到PLC状态和诊断信息。之后在EB Pro里检查设备类型、PLC站地址、端口号。S7-200 SMART的Modbus TCP端口默认是502但S7协议的TCP端口是102如果驱动选错端口监听会不一致连不上。还有一个容易被忽视的问题PLC侧程序被占用了太多通讯资源。S7-200 SMART同时支持多个通讯连接但每个连接占用的资源有限。如果触摸屏、编程电脑、上位机同时连接连接数可能超限。遇到连上又掉线的情况重启一下PLC让通讯资源释放或者减少同时连接的设备数量能解决。5.2 模拟量数值不对怎么办模拟量显示与实际值偏差大也是现场高频问题。排查思路先确认信号源用万用表在PLC端子处测量4-20mA电流和仪表显示值核对。如果电流值正确就是PLC侧量化或换算的问题如果电流值不对问题在仪表或者信号线上。S7-200 SMART的模拟量模块EM AE04在4-20mA量程下原始量化值范围是0到276484mA对应020mA对应27648。程序里用“浮点运算指令”把原始值换算成工程量工程量 (模拟量原始值 / 27648) * (量程上限 - 量程下限) 量程下限。换算公式不难关键是要在程序里把工程量数值格式处理好用实数运算别用整数运算否则会丢失精度。更稳妥的做法是现场两点校准把液位计实际测量一个已知液位记录PLC读到的工程量再测另一个已知液位记录第二组数据然后用线性插值校准。因为超声波液位计安装位置不同零点和满度的实际值可能有偏差通过两点校准可以消除系统误差。这个工作虽然费几分钟但能避免后续因为液位不准造成水泵误动作。信号线干扰也要重视。模拟量信号线要用屏蔽双绞线屏蔽层单端接地一般在PLC柜侧接地信号线要远离动力电缆尤其不要和接触器、变频器输出线走同一个线槽。我遇到过一起液位信号跳动的问题最后发现是液位计信号线和变频器输出线在同一个桥架里走了十几米把线分开之后问题彻底消失。变频器和PLC柜要可靠接地接地电阻不要超过4欧姆。5.3 泵频繁启停和进水波动问题联调时还遇到一个情况污水站进水流量波动大调节池液位在启泵液位附近来回浮动导致提升泵频繁启停。虽然程序里已经设置了滞回区间但进水瞬时波动太大时还是会出现短时间内重复启停。解决办法是在PLC程序里加入泵的最小运行时间限制和最小停止时间限制。比如水泵启动后至少运行10分钟即使液位降到停泵液位也不要立刻停继续运行到满10分钟再停。水泵停止后至少停5分钟即使液位再次到达启泵液位也不要立刻启动。这个机制有点像冰箱压缩机的保护逻辑目的是保护电机和接触器代价是调节池液位会有一些波动但完全在可控范围内。另外一个做法是模拟量滤波。S7-200 SMART的模拟量模块在系统块里可以设置滤波强度滤波时间越强信号越平滑但响应就越慢。液位信号一般不用太强的滤波因为液位本身变化相对缓慢而且后续逻辑已经有滞回和延时保护过度滤波反而会造成液位数据滞后。5.4 上位机对接的问题KepServer与和利时DCS这套系统除了触摸屏还需要把数据上送给中控室或上位机。常见的做法有两种一种是用KepServerEX作为OPC服务器通过Modbus TCP连S7-200 SMART再给上层SCADA、组态王、WinCC等提供数据另一种是直接和和利时DCS对接DCS侧通过Modbus通讯模块读取200 SMART的数据。KepServer连接S7-200 SMART的配置要点是通道类型选Modbus TCP/IP设备驱动选Modbus TCP/IP然后在设备属性里把IP地址填好单位IDModbus从站地址设置为PLC的站地址一般用默认的1或者255。需要注意KepServer的地址表示和PLC地址的映射关系例如要读VW100KepServer里地址写法可能是40051保持寄存器方式。这个和前面说的4x换算规则是一致的可以共用一套映射表。写一个简单的Excel映射表把PLC里的V区变量、Modbus地址、KepServer地址、触摸屏地址全部列出来这个表是项目交付文件里最重要的资料之一后期的维护、排查都靠它。和利时DCS对接也是走Modbus TCPDCS侧作为Modbus主站200 SMART作为从站。需要在PLC程序里调用MB_SERVER指令或者配置向导启用Modbus TCP从站功能。这里的基本思路是把需要上传的变量集中到连续的V区地址块比如VW1000-VW1100这样DCS侧只需要配置一段连续的寄存器地址就能读到所有数据不用一个个去映射。上传的数据包括液位、DO、pH、流量、设备状态、故障状态等下发的数据主要是远程启停命令和参数设定值。和上位机通讯时建议在PLC侧做好通讯数据区的规划把要共享的数据集中放在固定的V区地址段用注释标清楚这样不论是接KepServer、DCS还是以后接云平台都只需要改很少的程序。5.5 变频器Modbus RTU通讯的几个注意点如果提升泵用了变频器PLC和变频器之间的通讯也是一个容易出问题的环节。S7-200 SMART本身的串口可以配置成Modbus RTU主站通过RS485接口控制变频器启停、给定频率、读取运行电流和频率反馈。接线方面RS485总线要用屏蔽双绞线A接A、B接B千万不能接反。同一个总线上只能有一个主站多个从站的站号必须唯一。终端电阻如果只有PLC和一台变频器距离短的情况下可以不接终端电阻距离长或者多台变频器挂总线时在总线两端接120欧姆终端电阻。程序方面S7-200 SMART用Modbus主站指令库先调用MBUS_CTRL初始化串口然后循环调用MBUS_MSG读写变频器寄存器。需要注意的是MBUS_MSG在某一时刻只能有一个读写请求在跑需要用一个完成标志位串起来等上一次读写完成后再发起下一次请求否则会导致通讯卡死。另外变频器的波特率、数据位、校验位要和PLC串口设置一致否则通讯根本建立不起来。常见设置是9600bps、8数据位、无校验、1停止位部分变频器出厂默认是偶校验要改一致。我在调试过程中还发现一个细节ABB和汇川的变频器写运行命令时写的是控制字寄存器控制字的位含义每个品牌都不一样必须查对应的通讯手册。比如ABB ACS510用40101作为控制字上电必须先写一个“解锁”命令再写“正转运行”命令。汇川的MD系列控制字在某个固定寄存器但位定义和ABB不一样。写程序前把变频器的通讯手册翻明白能省下大量的现场调试时间。项目做完之后的几点体会这套污水处理控制系统做完下来我个人最深的感触是控制逻辑本身不复杂真正的功夫都在前期规划和对细节的处理上。I/O点表做扎实了程序写起来就顺地址映射表维护好了和触摸屏、上位机对接就少踩坑故障信号按常闭接报警逻辑就可靠设备保护逻辑做全了运行中才能省心。还有几个小建议给准备做类似项目的同行第一PLC的V区要预留足够的空闲地址段尤其是和上位机通讯的数据区不要和程序内部用的地址混在一起避免以后扩展时地址冲突。第二模拟量信号一定要用屏蔽线接地要规范很多莫名其妙的数据跳动都是干扰造成的。第三触摸屏里的参数设置页面一定要设密码不要让操作工随便改控制参数否则运行一两个月后你会发现程序设定值全被改乱了。第四项目交付的时候除了程序备份一定要把这些资料留全I/O点表、地址映射表、接线图、程序注释版本的PLC程序、触摸屏工程文件这些东西在系统出问题的时候能救命的。这套方案后面如果要往上升级还可以把数据接到云平台通过手机远程查看报警和运行数据基本原理是一样的就是在PLC侧加一个网关或者用边缘网关采集Modbus TCP数据上云。不过那是另一个话题了先把本地这套扎实做好后面扩什么都有底子。
返回列表