查看: 2346|回复: 21
收起左侧

[综合教程经验] H5U也说状态机Lamp

luohao 2023-1-16 14:59:45 | 显示全部楼层 |阅读模式
邀请回答

马上注册,享受更多特权

您需要 登录 才可以下载或查看,没有帐号?立即注册   

x
本帖最后由 luohao 于 2023-2-1 12:33 编辑

工业自动化和网络框架类的状态机存在一定的差异性,本节结合着设备模式、设备状态、翻页等来讲一下网络段的写法。

每个网络段只做一件事的原则,把功能拆分清晰,每个网络段只做一件事,当发现这个网络段比较大时,要考虑如何拆分了,从而保证一个网络段只做一件事的最简原则。

1.提出控制要求,面板按钮、指示灯和塔灯定义

image.png
Picture1:面板按钮布局
1.上电按钮,安全继电器的复位按钮,短按后安全继电器上电成功,继电器吸合输出指示灯绿色亮,和程序无关
2.手动/自动三位制旋钮开关,有两个InPut点,左侧ManMode,右侧AutoMode中间位可以作为Master功能预留

3.面板故障红灯,当有故障和警告时红灯亮,当短按故障复位按钮时消除故障和静音,手动模式下长按故障复位时回原点功能

4.切换到自动模式时,未按下自动启动按钮,绿灯2s闪烁,按下自动启动按钮后,自动运行模式,绿灯常亮,自动运行循环中

5.急停按下,所有模式丢失,上电绿灯切断回路未有24V输出不再亮,出现故障,故障红灯亮,只有松开急停,再按下上电按钮才恢复正常

6.蜂鸣器在有故障时2s闪鸣,短按复位按钮,人为确认后,停止鸣叫

7.塔灯红色,当有故障和警告时亮

8.塔灯黄色,只有在手动模式时黄灯亮

9.塔灯绿色,切换到自动模式,未有故障和警告

2.提出显示要求,HMI界面布局

image.png
Picture2:HMI布局

Header的定义
1.Mode
0.--,1.手动模式,2.自动模式,3.自动运行,4.自动单步,5.自动暂停,6.气压故障,7.急停模式,8...
2.State
0.OK,1.警告,2.故障
3.Home
0.--,1.原点位
4.TypeName
当前产品型号
5.ScreenMenu
翻页用变量
6.Heart
2s闪烁,主要显示PLC和HMI之间是否通讯异常
7.Message
Prompt提示信息,可以循环显示报警800个,刷新频率可修改

3.开始写PLC程序

PLC程序命名为Lamp(FC)
image.png
Picture3:Lamp调用接口

image.png

Picture4:结构体构建

image.png
Picture5:User Define Type Header

image.png
Picture6:User Define Type Mode

image.png
Picture7:User Define Type CMD

image.png
Picture8:User Define Type Status

image.png
Picture9:全局变量IO内部定义

image.png
Picture10:全局变量Unit内部定义



以下为程序详解

image.png
Picture11:网络段1、2、3

急停OK和急停模式的定义
气压OK和气压模式的定义
手动模式利用100ms延时去除按键抖动,同时生成一个上升沿信号

image.png
Picture12:网络段4和5

自动模式利用100ms延时去除按键抖动,同时生成一个上升沿信号
校验模式利用100ms延时去除按键抖动,放在中间档时生效


image.png
Picture12:网络段6

所有模式用途很大,AllMode取反的使用也比较重要,当操作者模式切换时,可以利用非AllMode复位很多变量,当程序并不是那么完美时,可以利用此法快速恢复到可执行的状态。程序飞了,不知道运行状态了,都可以切换一下模式,继续运行。防抖延时在这里帮了很大的忙。


image.png
Picture13:网络段7

故障复位按钮按下500ms生效,按下2s后,回原点ToHome生效,故障复位失效

image.png
Picture14:网络段8和9

允许自动运行的条件,设备在原点,无故障,无警告,如果设备不在原点,按下启动时显示警告:设备不在原点位
设备允许启动后,按下启动按钮,设备进入自动运行模式,指示灯从闪烁到常亮

image.png
Picture14:网络段10和11

单步模式和自动暂停模式

image.png
Picture15:网络段12

触摸屏HMI显示的Mode状态,颜色分类,手动模式黄色,自动类绿色,自动暂停黄色,急停和气压模式红色

image.png
Picture16:网络段13和14

设备状态来自于Prompt(FB)块
设备原点位可在Home块中定义

image.png
Picture17:设备状态Error和Alarm

image.png
Picture18:HMI页面分布

image.png
Picture19:网络段15

切换到手动模式的时候,页面转跳到第10页的手动界面,切换到自动模式,页面转跳到第100页的Process过程监控界面,急停时锁定在首页

image.png
Picture20:网络段16

故障备份,此处使用的比较巧妙,按下复位按钮,蜂鸣器停止鸣叫用的就是此处

image.png
Picture21:网络段17

当有故障时,开始鸣叫,但操作者确认完故障,意味着他已经知道故障产生了,可以把这个吵闹的鸣叫关闭掉了

image.png
Picture22:网络段18、19和20

塔灯指示灯输出

Lamp内的变量是全局变量,这些变量组成了设备必备的模式、状态,结合HMI显示,组成了设备的基本框架。

从程序编写的角度,每个网络段都尽量的简洁,像写文章,每段都有自己存在价值,客户有新的要求,简短的语句更容易修改一些。

希望能给您带来一些思考,写程序要找到对象,服务的对象定义为电工、钳工、机械工程师、工艺工程师,那你考虑的方向就会不一样,侧重点就会不一样,但无论服务于谁,都要把程序写的尽量简短有力,每个网络段只做一件事。


image.png











image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png

点评

大佬***  发表于 2023-2-10 14:55
真的是很好的东西  发表于 2023-1-31 09:22
给力  发表于 2023-1-20 12:44
感谢分享  发表于 2023-1-18 15:32

评分

参与人数 2贡献 +10 收起 理由
MarcusNoob + 2 大佬就是大佬,细致入微
91521 + 8 赞一个!

查看全部评分





上一篇:请问MC_ReadAxisError
下一篇:欧姆龙NJ PLC面向对象编程,大公司模板,值得学习。

已有 0 人打赏作者

回复 邀请回答送花

使用道具 举报

qiangyue1990 2023-1-29 08:29:00 | 显示全部楼层
干货值得学习理解。
回复 送花

使用道具 举报

吴斌 2023-1-30 16:22:21 | 显示全部楼层
候总,新年好呀!:lol
回复 送花

使用道具 举报

学ing 2023-1-30 16:40:59 | 显示全部楼层
高质量贴文,感谢分享
回复 送花

使用道具 举报

Study 2023-1-31 08:05:59 | 显示全部楼层
内容很赞,值得学习
回复 送花

使用道具 举报

finiiy 2023-1-31 08:11:41 | 显示全部楼层
大佬就是大佬,细致入微
回复 送花

使用道具 举报

zhudaxian 2023-1-31 14:34:08 | 显示全部楼层
干货值得学习理解。
回复 送花

使用道具 举报

方方圆圆 2023-1-31 16:45:52 | 显示全部楼层
发源程序看看,图片字太小看不清
回复 送花

使用道具 举报

duquanplc 2023-2-1 08:22:59 | 显示全部楼层
有源程序就更好了。
回复 送花

使用道具 举报

w1518092258 2023-2-1 11:29:12 | 显示全部楼层

干货值得学习理解。
回复 送花

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册   

本版积分规则

有技术问题,就上汇川技术社区

INOVANCE汇川技术 公众号

扫码下载掌上汇川APP

全国服务热线:8:30-17:30

4000-300124

苏州地址:江苏省苏州市吴中区越溪友翔路16号

深圳地址:深圳市龙华新区观澜街道高新技术产业园汇川技术总部大厦

Copyright © 2003-2100 汇川技术 Powered by Discuz! X3.4 ( 苏ICP备12002088号 )
快速回复 返回列表 返回顶部