去年在给本地一家机械加工厂做设备改造时,遇到了一个典型的空压机控制难题。车间里那台老旧的螺杆式空压机一直工频运行,能耗高得让老板直摇头。原计划是用变频器改造,结果发现这台老爷机根本不吃这套——电机绕组、轴承密封这些硬件都不支持变频运行。最后用西门子S7-224XP PLC加显控触摸屏做了套智能控制系统,光是程序注释就写了三百多行。今天就把这个实战案例拆开讲讲,特别是那些调试时踩过的坑。
螺杆式空压机的工频/变频之争在工业圈里早就不是新鲜事。老式机组设计时就没考虑变频工况,强行改造会导致电机绝缘老化、轴承电流腐蚀这些问题。有次我去维修一台改造失败的机器,拆开电机看到绕组绝缘都碳化了,就是PWM波形惹的祸。所以遇到这种"变频机上用不了"的情况,千万别硬来。
这套系统的硬件配置很经典:
重要提示:PLC的模拟量输入模块记得加信号隔离器,我吃过亏——空压机启停时电磁干扰导致压力值跳变,系统误动作了好几次。
控制柜安装时有几个细节要注意:
有次调试时发现压力值老是漂移,查了半天发现是传感器电源和PLC共用了同一个电源,电机启动时电压波动导致的。后来加了台DC24V隔离电源就稳了。
程序结构采用典型的顺序控制+PID调节:
STL复制// 主程序片段示例
LD SM0.0
MOVW VW100, VW200 // 压力设定值传送
CALL SBR0 // 调用压力采集子程序
CALL SBR1 // 调用PID运算子程序
CALL SBR2 // 调用电机控制子程序
压力控制策略是这样的:
压力采集子程序(SBR0)的处理技巧:
PID参数整定经验:
调试时发现个有意思的现象:PID输出在48%左右时系统最稳定。后来发现是这个型号空压机卸载阀的机械特性决定的——阀门开度在这个位置时气压变化率刚好平衡用气量。
显控屏的组态工程做了7个页面:
实用技巧:在压力曲线显示页面,我设置了两个Y轴量程——0-0.8MPa和0-1.6MPa可切换。调试阶段用大量程观察系统响应,正常运行时切换小量程更易观察压力波动。
通讯参数设置要注意:
现象:系统频繁在加载/卸载状态间切换
排查过程:
现象:触摸屏偶尔显示"通讯超时"
排查过程:
这个项目的程序注释特别详细,主要采用三种注释方式:
STL复制//===============================================
// 子程序名:SBR1_PID_Calc
// 功能:压力PID控制算法
// 输入:VD100-设定值 VD104-过程值
// 输出:VD108-PID输出
// 修改记录:2023.5.12 优化积分项处理
//===============================================
STL复制MOVR VD112, VD120 // 将积分项累加到输出值
STL复制//!!!注意!!! 以下为紧急停机逻辑
LD SM0.5
EU
O V10.3
= M0.1
建议在定时器、计数器等元件使用时也加上注释说明用途,比如:
STL复制TON T37, 50 // 电机星三角转换延时定时器
这套系统已经稳定运行了8个多月,相比原来工频运行时节电率达到35%。最关键的是通过完善的程序注释,后来厂里的电工都能自己维护修改了。最近准备给他们加个物联网模块,实现手机远程监控,不过那就是另一个故事了。