实战分享】剪板机自动化项目中的组态王与三菱PLC联机那些事儿
剪板机组态王6.55和三菱PLC联机程序3,COM3通讯 带IO表 CAD图纸 运行效果视频,30次停止 ,带报表报警曲线等界面
最近在金属加工厂折腾了一套剪板机控制系统,用组态王6.55和三菱FX5U PLC搭了个实时监控平台。这期咱们不整虚的,直接上干货说说实际开发中通讯配置、IO对接和那些让人头秃的坑点。
先说通讯这茬儿,COM3口配置最容易翻车。在组态王驱动里选三菱Melsec-FX以太网协议时,记得设备地址填的是PLC的实际IP(比如192.168.3.11)。关键代码配置长这样:
' 组态王设备配置脚本 Device.Add "FX5U_1", "MELSEC_FX", "COM3" Device.SetParameter "FX5U_1", "BaudRate", "9600" Device.SetParameter "FX5U_1", "DataBits", "7" Device.SetParameter "FX5U_1", "Parity", "1"这里有个反直觉的点——明明用网线连接却要走串口协议,其实是通过PLC的串口转以太网模块实现的。调试时拿串口助手先ping通,能收到ASCII格式的00FF返回才算握手成功。
剪板机组态王6.55和三菱PLC联机程序3,COM3通讯 带IO表 CAD图纸 运行效果视频,30次停止 ,带报表报警曲线等界面
IO表设计建议用Excel做好映射再导入,避免手动输入搞错点位。比如液压阀控制对应Y14,接近开关接X6,在CAD图纸(图号BJ-2024-06)里都用红色标出关键信号点。PLC程序里对应的锁机逻辑是:
// 三菱结构化文本 IF Di_SheetInPlace THEN Ton_FeedTimer(IN:=TRUE, PT:=T#5S); IF Ton_FeedTimer.Q THEN Y_FeedMotor := TRUE; END_IF; ELSE Y_FeedMotor := FALSE; END_IF;剪板计数功能最容易被现场师傅吐槽,要求每30次自动停机润滑。组态王里用隐藏的数值输入框绑定PLC的D200寄存器,脚本里加了这么个判断:
If ReadTag("CutCounter") >= 30 Then WriteTag "AutoStopFlag", 1 AlarmLog "达到保养次数", 2 End If重点说下报警曲线怎么玩出花——在组态王里拉个实时趋势图,把油压传感器(AI0)和剪切位置(AI1)绑定上去。突然发现曲线刷新卡顿?把采样周期从默认500ms改成200ms后流畅得像德芙。历史报表用SQLite存本地,配合按班次导出的CSV模板,厂长终于不用手抄生产记录了。
调试时遇到个邪门问题:每次第29次剪切就提前报警。最后发现是PLC的CTUD计数器在组态王里被重复复位,改成上升沿触发才解决。建议各位在变量绑定界面勾选"异步读取",避免通讯堵塞引发玄学故障。
项目交付时录了段运行视频(见附件),能看到从自动上料、定位剪切到成品分拣的全流程。现在师傅们坐在空调房里点点鼠标就能完成操作,再也不用守着设备蒸桑拿了。需要完整工程文件的铁子可以私信,记得备注"剪板机"三个字哈~
