博图15.1 (全)瓶盖封装机设备西门子1200PLC+TP900触摸屏程序+视频+CAD图纸+PDF+io表
刚拆完一台全自动瓶盖封装机的PLC程序,这玩意儿用博图V15.1开发真是酸爽。整套资料里藏着西门子1200PLC的代码、TP900人机界面、IO表这些硬核货,咱们今天边撸代码边唠嗑。
先看硬件配置表里的骚操作——SM1223数字量模块接满了32个气缸传感器。程序里这段STL代码亮了:
A "急停按钮" // 硬线急停信号 AN "安全门状态" // 安全门磁开关 = "主电源接触器" // Q0.0输出控制 JNB _005 L 0 T "运行状态字" _005: NOP 0这急停逻辑玩得够狠,同时检测物理按钮和门禁状态。注意那个JNB跳转,遇到急停直接清零运行状态字,这玩意儿在产线上可是保命的功能。
HMI界面设计更带劲,TP900的报警弹窗脚本里藏着彩蛋:
if (GetTagBit("灌装位堵塞")) { SetProperty("报警灯","颜色",0xFF0000); PlaySound("Alarm3.wav", 1); LogEvent("堵料发生在:" + GetSystemTime()); }看见没?触发报警时不仅变红灯,还记录精确到秒的故障时间。那个PlaySound函数调的是触摸屏内置音效库,现场调试时差点被这警报声吓出心脏病。
图纸包里的气路图才是真宝藏,CAD文件里电磁阀符号标着Y10-Y25,刚好对应程序里的QB1输出字节。搞明白这个对应关系,现场查线效率直接翻倍。比如这段LAD逻辑:
| I0.5 I0.6 |--( )-- Q1.1 | 真空检测 超时 |真空生成工序的双条件控制,必须同时满足检测信号和定时器不超时。调试时在这儿卡过壳——真空泵启动延迟没算进定时器,结果老是误报警。
IO表里有个魔鬼细节:模拟量输入通道AI0接的是扭矩传感器,量程设置成4-20mA对应0-50Nm。程序里这段缩放处理代码值得细品:
#实际扭矩 := ((NORM_X(IN := "AI0_RAW", MIN := 27648, MAX := 5530) * 50.0) + 10.0);注意那个MIN值其实是20mA对应的5530,4mA对应27648?这反直觉的设定是因为模块配置成了两线制电流测量。第一次看到这参数时差点把万用表摔了。
项目包里那个.mp4演示视频千万别跳过,2分35秒处能看到伺服电机突然加速——那正是程序里的凸轮曲线生效时刻。对应功能块的参数表里填着S形速度曲线系数,现场调这个参数时工程师的头发肉眼可见地减少。
这套资料最牛的是IO表附带电缆编号,比如X2.3端子标注着"旋转编码器B相",配合图纸里的线号管标注,查线神器啊。程序注释里还埋着梗:"// 此处有妖气,勿删延时! - 王工 2020.3.8",这种祖传注释懂的都懂。
最后吐槽下博图V15.1的仿真功能,跑这个项目时虚拟PLC内存直接飙到85%。建议开仿真前先把电脑上的杀毒软件关了,别问我怎么知道的——那天下午的咖啡格外苦涩。