S7-200 MCGS 基于S7-200PLC的豆浆机流量控制 带解释的梯形图程序,接线图原理图图纸,io分配,组态画面
先说IO分配这个基础活。豆浆机需要接水位传感器(AIW0)、流量计脉冲信号(I0.0)、温度传感器(AIW2)。输出端Q0.0控制进水电磁阀,Q0.1负责搅拌电机,Q0.2是超温报警灯。这里要注意AI模块得单独供电,24V电源别接反了(别问我是怎么知道的)。
梯形图最核心的是流量闭环控制。举个栗子,用TON定时器做脉冲间隔检测:
| 流量脉冲 | TON T37 |----| |------+--------(TON) | | PT: 100ms这货通过检测脉冲间隔时间换算实时流量。当实测流量小于设定值时,直接给PID指令上强度:
| SM0.5 | MOVW VW100, VD200 |----| |----+--------(MOV)VW100存的是触摸屏设定的目标流量值,VD200是PID的设定值寄存器。这里用SM0.5秒脉冲做数据刷新,防止操作屏通讯卡顿。
S7-200 MCGS 基于S7-200PLC的豆浆机流量控制 带解释的梯形图程序,接线图原理图图纸,io分配,组态画面
组态画面用MCGS搞个骚气的操作界面。重点说流量设定控件怎么做:
- 拖个数值输入框,变量地址绑VW100
- 属性里设上下限(0-5000mL)
- 叠加个流量计动画,绑VD210实时值
- 报警弹窗用脚本控制:if VD210 > VD200*1.2 then 弹警告
调试时发现个坑——流量计脉冲信号得加硬件滤波,不然梯形图的计数器会抽风。后来在输入端并了个104电容,软件里加了个20ms的延时判断才稳如老狗。
最后来个骚操作彩蛋:用S7-200的自由口协议,把流量数据发到手机APP。关键代码是XMT指令配合VB200发送缓冲区,ASCII码直接怼串口。虽然传输速率只有9600bps,但够咱们在厕所摸鱼时偷看豆浆机状态了(手动狗头)。