news 2026/6/10 0:45:42

西门子PLC一拖二恒压供水实战手记

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
西门子PLC一拖二恒压供水实战手记

西门子基于RS485通讯恒压供水一拖二S7-200SMART_PLC 程序样例为一拖二恒压供水,采样S7-200SMART_PLC+smart700触摸屏与ABB变频器MdbusRTU_rs485通讯执行变频器PID实现恒压供水 程序为实际项目案例,程序带有注释说明,恒压供水动作说明,ABB变频器参数设置说明,施工用电路图纸。 工艺说明: 1、自动启动----1号变频启动 2、当压力低时(反馈压力低于“设定压力-压力下偏差”)并延时5秒后倒泵 3、倒泵过程是1号变频停止,同时1号工频启动,延时3秒后2号变频启动 4、当反馈压力大于“设定压力-压力下偏差”时,并保持10秒后关掉1号工频 5、2号变频运行时当压力低于“设定压力-压力下偏差”并延时5秒后倒泵 6、倒泵过程是2号变频停止,同时2号工频启动,延时3秒后1号变频启动,,如此循环 7、当1号变频正常运行时,设定的倒泵时间达到,并选择为YES,同时反馈压力大于“设定压力-压力下偏差”时启动倒泵 8、倒泵是停止1号变频并延时3秒启动2号变频 9、反之当2号变频正常运行时,设定的倒泵时间达到,并选择为YES,同时反馈压力大于“设定压力-压力下偏差”时启动倒泵 10、倒泵是停止2号变频并延时3秒启动1号变频

最近刚做完一个恒压供水项目,用S7-200 SMART PLC带着两台ABB变频器玩出了点新花样。现场调试时被压力波动折腾得够呛,不过最终搞定了这个自动倒泵的逻辑,这里分享几个关键点。

通讯配置是命门

ABB变频器的ModbusRTU参数得先伺候好:

// 变频器参数设置 0103 = 3 (RTU模式) 0102 = 19200 (波特率) 0101 = 1 (站地址) 2201 = PID1 (启用内置PID)

PLC这边用MBUS_MSG指令轮询压力值,这里有个坑——两次请求之间必须间隔2个扫描周期以上,不然通讯会抽搐。实测用定时器做轮询最稳:

Network1 TON T37, 50 // 500ms轮询周期 MOVB 3, MBUS_CTRL:VB100 // 保持通讯使能

压力控制逻辑

核心算法在压力比较这块,注意要带滞回比较。比如设定压力是0.5MPa时:

Network2 LDW>= VW200, 500 // 当前压力值 AW< VW200, 450 // 低于设定-偏差 TON T38, 50 // 5秒延时

这里用了两个比较指令串联,比直接用范围比较指令更直观,调试时在线监控也方便。

西门子基于RS485通讯恒压供水一拖二S7-200SMART_PLC 程序样例为一拖二恒压供水,采样S7-200SMART_PLC+smart700触摸屏与ABB变频器MdbusRTU_rs485通讯执行变频器PID实现恒压供水 程序为实际项目案例,程序带有注释说明,恒压供水动作说明,ABB变频器参数设置说明,施工用电路图纸。 工艺说明: 1、自动启动----1号变频启动 2、当压力低时(反馈压力低于“设定压力-压力下偏差”)并延时5秒后倒泵 3、倒泵过程是1号变频停止,同时1号工频启动,延时3秒后2号变频启动 4、当反馈压力大于“设定压力-压力下偏差”时,并保持10秒后关掉1号工频 5、2号变频运行时当压力低于“设定压力-压力下偏差”并延时5秒后倒泵 6、倒泵过程是2号变频停止,同时2号工频启动,延时3秒后1号变频启动,,如此循环 7、当1号变频正常运行时,设定的倒泵时间达到,并选择为YES,同时反馈压力大于“设定压力-压力下偏差”时启动倒泵 8、倒泵是停止1号变频并延时3秒启动2号变频 9、反之当2号变频正常运行时,设定的倒泵时间达到,并选择为YES,同时反馈压力大于“设定压力-压力下偏差”时启动倒泵 10、倒泵是停止2号变频并延时3秒启动1号变频

倒泵动作序列

1号泵切工频时的动作最刺激,三个定时器接力跑:

Network3 LD T38.Q // 低压延时到 AN M0.0 // 互锁判断 = Q0.0 // 停1#变频 TON T39, 30 // 3秒缓冲 LD T39.Q = Q0.1 // 启1#工频 = Q0.2 // 启2#变频

实测发现工频启动必须等变频完全停下,之前试过同时动作直接跳闸三次...

定时倒泵彩蛋

很多同行不知道还能定时强制倒泵,这个功能在凌晨用水低峰期特别实用:

Network4 LD T40.Q // 8小时倒泵定时 A M1.0 // 功能使能 LDW>= VW200, 450 // 压力安全区 ALD AN M0.1 = M2.0 // 触发倒泵信号

注意要在PID稳定时才能切换,有次在压力波动时切泵,水锤效应差点把压力表震下来。

调试血泪经验

  1. 工频接触器必须加机械互锁,PLC程序互锁是最后防线
  2. 压力传感器要加阻尼阀,采样值跳变会让你怀疑人生
  3. 变频器加速时间别小于15秒,急加速管道像在打嗝
  4. 备用方案永远重要,手动工频回路必须独立于PLC

这个项目最爽的时刻是看到两台泵自动切换时压力曲线稳如直线。后来客户说每月省了30%电费,果然自动控制才是节能王道。完整电路图和注释程序在GitHub(搜"PLCWaterPressure"),需要自取。下次准备试试用PID向导整活,据说能省一半编程时间。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/9 23:32:03

直接上干货!今天咱们聊聊怎么用MATLAB把机械臂玩出花。这玩意儿可不是只能画个三维模型装逼,从底层运动学计算到实时控制都能给你整明白了

Matlab机械臂综合仿真平台&#xff0c;包含运动学、动力学和控制。 MATLAB机器人仿真正逆运动学simulink轨迹规划 机械臂动力学控制等 gui控制仿真平台PUMA机器人 robotics toolbox 先甩个正运动学的代码镇楼&#xff1a; robot seriallink([...Revolute(d, 0.67, a, 0, alp…

作者头像 李华
网站建设 2026/6/8 3:26:43

基于集成模型的Bagging数据回归预测

基于集成模型的Bagging的数据回归预测 matlab代码 大家好&#xff01;今天我想和大家分享一下关于基于集成模型的Bagging方法在回归预测中的应用。虽然这个主题可能听起来有点专业&#xff0c;但我会尽量用通俗易懂的方式和大家交流&#xff0c;同时穿插一些代码和实际案例&…

作者头像 李华
网站建设 2026/6/5 16:10:14

直接看代码最实在。先来搞个简单的BP神经网络结构

PSO粒子群优化算法优化BP神经网络做MIMO多输入多输出系统的预测&#xff0c;预测精度非常高class BPNN:def __init__(self, input_size, hidden_size, output_size):self.w1 np.random.randn(input_size, hidden_size)self.b1 np.zeros((1, hidden_size))self.w2 np.random.…

作者头像 李华
网站建设 2026/6/8 20:03:30

PLC电路在备用自动投入中 的研究

第2章 可编程控制器控制系统 PLC是由继电器逻辑控制系统发展而来&#xff0c;它在数字处理、程序控制方面具有优势&#xff0c;PLC是为间歇生产和机械加工而一种专用计算机。PLC可采用BSDLC语言、C语言、符合逻辑流程和梯形图编程&#xff0c;具有复杂的数学运算、数据处理、统…

作者头像 李华
网站建设 2026/6/5 15:04:07

【课程设计/毕业设计】基于Spring Boot的体育购物商城系统基于springboot的运动用品商城系统【附源码、数据库、万字文档】

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/6/5 3:26:05

python146- 建筑工程项目任务分配管理系统vue3

目录 建筑工程项目任务分配管理系统&#xff08;Vue3&#xff09;摘要核心功能技术栈扩展性 开发技术路线相关技术介绍核心代码参考示例结论源码lw获取/同行可拿货,招校园代理 &#xff1a;文章底部获取博主联系方式&#xff01; 建筑工程项目任务分配管理系统&#xff08;Vue3…

作者头像 李华