西门子PLC与组态王联手打造水泥混凝土自动配料系统:动态视频组态界面+脚本应用
西门子PLC和组态王组态自动配料系统的设计水泥混凝土以实际视频组态界面为准带脚本车间里的搅拌机轰隆隆转着水泥灰在传送带上扬起细密的粉尘。老王叼着烟头蹲在控制柜旁边突然扭头冲我喊这破系统又卡在骨料称重了你那个组态王脚本到底靠不靠谱我抹了把脸上的灰盯着屏幕上跳动的数字——这已经是本周第三次调试了。PLC程序里的重量博弈西门子S7-1200的DB块里藏着整个配方的秘密。在TIA Portal里我们给每种原料都安排了专属的存储区// 骨料配比计算 #Cement_Set : (#Total_Weight * 0.45) * (#Humidity_Comp 1.0); IF #Cement_Actual #Cement_Set THEN #Feeder_Speed : 0; Vibrator_Stop : TRUE; ELSE #PID_Output : PID_Cement.OUTV; END_IF;这段代码的玄机藏在湿度补偿系数里。现场环境湿度每变化5%补偿系数就要重新校准不然称重误差能差出两袋水泥。有次夜班工人误触了湿度传感器第二天混凝土凝固时间直接缩短三分之一工地差点闹出质量事故。组态王里的视觉魔法西门子PLC和组态王组态自动配料系统的设计水泥混凝土以实际视频组态界面为准带脚本监控界面左上角的动态称重显示其实是靠VBS脚本撑起来的Sub OnAnalogChange(tagName) If Right(tagName,5) _Weight Then Dim matType Left(tagName, Len(tagName)-6) UpdateMaterialFlow(matType, GetTagValue(tagName)) End If End Sub Function UpdateMaterialFlow(material, value) SetShapeProperty(Pipe_ material _Flow, FillColor, RGB(255 * value/200, 0, 0)) If value 190 Then PlaySoundAlarm OverweightAlarm.wav BlinkText AlarmText, 500 End If End Function这个脚本最妙的地方在于用管道颜色渐变来表现实时流量——当骨料输送量接近阈值时管道会从暗红变成刺眼的鲜红色。上周新来的操作工就是看到颜色突变及时拍下急停按钮避免了一场堵料事故。藏在配方里的时间陷阱配料时序控制有个魔鬼细节不同物料的落料延迟。我们在OB35中断组织块里埋了个时间校准功能// 中断处理程序 IF System_Time.Q1 THEN FOR #i : 0 TO 7 DO Material_Delay[#i] : Material_Delay[#i] (TON_Delay[#i].PT - TON_Delay[#i].ET); END_FOR; System_Time.Q1 : FALSE; END_IF;这个补偿算法让骨料和水泥的落料时间差控制在0.3秒以内。调试时发现如果补偿值超过0.5秒搅拌机就会周期性震动连带整个HMI界面都会出现数据抖动。凌晨三点的最后一次空载试车监控画面上的配料曲线终于呈现出完美的阶梯状。老王掐灭烟头说了句有点东西这大概是他能给出的最高评价了。操作台上组态王界面里的虚拟搅拌机还在不知疲倦地转动而真实的设备已经吐出第一批合格混凝土——在工业自动化的世界里代码和现实就这样在粉尘与数据中达成微妙平衡。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2431892.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!