组态王软件自学系列之02实时报警界面制作

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

组态王软件自学系列之02实时报警界面制作

目录

一、项目背景描述或现场情况说明 (3)

二、问题的解决方法和思路 (3)

1.新建工程 (3)

2.新建界面 (4)

3.新建变量 (6)

4.新建动画连接 (7)

5.报警自定义函数 (8)

6.事件命令语言 (10)

7.说明 (11)

一、项目背景描述或现场情况说明

本文是组态王的自学系列的第二篇,上一篇给大家讲一下系统的登录和退出的实现方法。在这里跟大家分享一下组态王中实时报警界面制作过程。

二、问题的解决方法和思路

1.新建工程

1)如图1所示,启动组态王软件,新建一个工程文件夹,命名为test。

图1 新建工程

2)命名工程名称,见图2所示。

图2 工程名称

2.新建界面

1)在工程浏览器左侧的树型视图中选择"界面",在右侧视图中双击"新建",新建产生一幅名为"实时报警"的界面,见图3所示。

图3 工程开发环境

2)在工具箱中选择“报警窗口”,在右边空白区域拉出一个报警窗口,如图4所示。

图4 报警窗口

3)双击报警窗口第一行菜单,在通用属性中对报警窗口命名,在列属性中对列明细进行编辑,如图5所示。

图5 报警窗口属性配置

4)在报警窗口上方加上“实时报警”的文本,加粗显示,同时在报警窗口下方添加三个按钮,分别为“报警确认”、“声音开启”和“声音关闭”,如图5所示。

图6 功能按钮制作

3.新建变量

1)在工程浏览器左侧的树型视图中选择"数据词典",在右侧视图中双击"新建",弹出定义变量的对话框,见图7所示。

图7 建立新变量

2)建立两个变量类型为内存整数的变量,变量名分别为ALARM和Beep_close,见图8所示。

图8 两个新变量

4.新建动画连接

1)为报警确认按钮建立动画连接,选择“弹起时”动画连接,命令脚本为ALARM=0;

2)为声音开启按钮建立动画连接,选择“弹起时”动画连接,命令脚本为Beep_close=1;

为声音关闭按钮建立动画连接,选择“弹起时”动画连接,命令脚本为Beep_close=0;

5.报警自定义函数

在组态王自定义函数中,有三个系统预置的报警自定义函数。分别为实型变量报警事件($System_RealAlarm)、整型变量报警事件($System_LongAlarm)和离散型变量报警事件($System_DiscAlarm)预置自定义函数。

自定义函数的调用执行有两种方式:

1)系统产生报警事件后会自动调用相应数据类型的函数,如整型变量产生报警时,系统自动调用整型预置自定义函数;

2)如果在配置报警窗的“操作属性”时,选择了“允许双击报警条”,则系统运行时双击报警事件报警条,也会自动调用相应数据类型的函数。

三种预置自定义函数如下:

1.)实型:void $System_RealAlarm(RealTag rTag, long time, long nEvent, long nAction)

{

}

2.)整型:void $System_LongAlarm(LongTag lTag, long time, long nEvent, long nAction) {

}

3.)离散型:void $System_DiscAlarm(DiscTag dTag, long time, long nEvent, long nAction) {

}

各个预置自定义函数中的参数的含义为(以实型为例,其它都相同):

V oid $System_RealAlarm(RealTag rTag, long nTime, long nEvent, long nAction)

rTag:表示变量,即普通变量,和组态王系统变量一样具有值和变量所有的域,这些值都是只读的。

nTime:表示自从格林威治时间1970年1月1日0起到报警事件产生时的秒数,表征报警事件产生的时间;

nEvent:表示当前产生或双击报警窗时的报警类型。报警类型的返回值如下:

0——报警

1——恢复

2——确认

nAction:表示当nAction==1时表示是双击报警条,当nAction==0时表示产生报警事件。

预置自定义函数函数体初始内容为空,需要用户在里面添加命令语言。利用报警预置自定义函数,可以实现用户自己想在报警产生后做的一些处理。

我们在各个预置自定义函数中均写入如下脚本:

if(nEvent==0)

{ALARM=1;}

6.事件命令语言

在事件命令语言中新建一个事件命令,事件描述为ALARM==1,在事件存在时每隔3秒执行一次,事件脚本如下图所示。该脚本的意思为执行本项目工程文件夹内beep.exe的程序,beep.exe程序是用VB写的一个播放报警音的程序。运行程序测试前要把beep.exe程序拷到项目工程文件夹内。

第11 页共11 页7.说明

相关文档
最新文档