Back|Member|Save|Mobile
General member

西门子服务商

西门子plc|西门子变频器|低压电器|伺服电机|HMI触摸屏等

News type
  • N/A
站内搜索
 
友情链接
  • N/A
Home > 新闻中心 > 西门子:HMI柔性报警
新闻中心
西门子:HMI柔性报警
Date:2022-01-17        Hits:25        Back
 用过西门子PLC和HMI的工程师都知道,组态HMI离散量报警,以word型触发变量举例,大概是以下过程,

        1.  PLC程序中一条报警触发word中的某一位(一个word 16个位,可以做16条报警)

        2.  在HMI变量中添加该word变量,为每个触发位组态报警文本。

        如果是标准设备或功能,我们可以在标准块中专门写好相应的报警程序,使用时PLC侧批量调用功能块,HMI侧批量添加触发变量,相同设备的报警文本都一样。

        但实际编程过程我们经常遇到需要临时添加一些报警或提示的情况,这也是标准块无法涵盖的。这时候我们就需要通过以上两步新增报警,看似简单,但报警多了,就需要我们频繁修改和下载HMI组态,很费时间。 

        笔者摸索出一套方法,可以灵活组态报警,算是编程的一个小技巧,具体如下:

 

1.首先我们新建一个FB,并声明接口变量,

在Input接口声明16个bool型变量

 

    在静态变量区声明以下内容

 2.编写FB程序,过程如下

    1. 将Input管脚bool变量汇总成word,作为HMI离散报警触发变量。

    2. 读取Input管脚变量名称作为HMI离散量报警文本。(这一段在FirstScan或程序更新时才执行,以节省扫描时间)

 

***后出来FB长这样,

 

 

 3.HMI侧组态如下

 

 

   

 4.测试效果如下

 

        原理很简单,主要利用了HMI离散量报警文本中可以添加文本变量的特点,PLC中报警触发的同时,将该报警变量的变量名读出来作为报警文本。这样一来,哪边需要做报警或提示,直接将触发变量写好,拖到我们报警FB管脚即可,HMI侧不再需要任何组态和下载。

        本例是以word类型作为触发变量,一个FB***多带16个报警。超出16个的话有两个方法,***重复调用FB。第二,以word数组作为触发变量,这样可以在HMI性能允许内任意扩展报警条目。