紫金桥组态软件增强型报警组件与趋势分析组件的综合应用

   日期:2024-01-23     浏览:33    评论:0    
核心提示:一、引言 在项目中,经常会用到增强报警组件来显示报警信息,但是往往发生报警后或者在查看历时报警时,还想关注一下报警点的在报警时一段时间内的数据变化走势,通常的做法为人为的记录该报警点的位号,并到趋势画面中进行查询,这样操作起来比较麻烦,现在可以通过较为简单的方法来达到该目的。二、功能实现 首先,创建两个窗口,一个命名为“报警显示”,在窗口属性中将“打开其他窗口时自动关闭”的勾去掉,在窗口中添加“增强型报警组件”,命名为_Alarm;另一个串口命名为“趋势分析”,在窗口属性中将窗口类型设

一、引言

       在项目中,经常会用到增强报警组件来显示报警信息,但是往往发生报警后或者在查看历时报警时,还想关注一下报警点的在报警时一段时间内的数据变化走势,通常的做法为人为的记录该报警点的位号,并到趋势画面中进行查询,这样操作起来比较麻烦,现在可以通过较为简单的方法来达到该目的。

二、功能实现

       首先,创建两个窗口,一个命名为“报警显示”,在窗口属性中将“打开其他窗口时自动关闭”的勾去掉,在窗口中添加“增强型报警组件”,命名为_Alarm;另一个串口命名为“趋势分析”,在窗口属性中将窗口类型设置为“弹出式窗口”,在窗口中添加“趋势分析”组件,命名为_Curview,定义一个整形的窗口变量nFlag。其次,创建一个间接变量“SendMessage”做数组用,用来在两个窗口之间传递报警点的信息。

1.报警显示窗口设置

      在“报警显示”窗口中,双击“增强型报警组件”,在弹出的“报警属性”对话框中的“报警设置”标题页点击“设置报表”按钮,弹出“自由报表设置”对话框。



       

   在“单元格触发动作设置”中选择“左键双击”动作,输入如下脚本:

SendMessage.Clear();

SendMessage.Add(#_Alarm.GetAlrmTxt(2,$R));

SendMessage.Add(#_Alarm.GetAlrmTxt(7,$R)+" "+StrLeft(#_Alarm.GetAlrmTxt(7,$R),8));

Display("趋势分析");

    该段脚本的含义为将报警点的点名与报警时间加入到数组SendMessage中。

2.趋势分析窗口设置

    在“趋势分析”窗口中,在窗口动作“进入窗口”中编写如下脚本:

     string _PenName;

string _PenEUHi;

string _PenEULo;

string _PenHi;

string _PenLo;

_PenName = SendMessage[0]+".PV";

_PenHi = SendMessage[0]+".HI";

_PenHi = SendMessage[0]+".LO";

#本地.RegTag(_PenName);

#本地.RegTag(_PenHi);

#本地.RegTag(_PenLo);

#_Curview.SetPen(0,_PenName);

#_Curview.SetPen(1,_PenHi);

#_Curview.SetPen(2,_PenLo);

nFlag = 1;

该短脚本中要注意数据库函数RegTag()的使用,由于数组SendMessage传递来的是不带参数的点位号,所以要通过_PenName_PenHi_PenHi拼接成点名,但拼接成的点名数据库并不承认,所以要用该函数注册之后才可以使用。之后要向“趋势分析”组件中添加三支画笔,分别为实时值、报警上限、报警下线。其中,nFlag为标志位,用于判断曲线显示的起始时间,在周期脚本中调用。

在“窗口运行时中期执行”中编写如下脚本:

if#_Curview.GetTimeBegin(0) <> LongTime(SendMessage[1]) &&#_Curview.GetPenDesc(0) <> "" && nFlag == 1 then

     #_Curview.SetTimeBegin(0,LongTime(SendMessage[1]));

     nFlag = 0;

endif

该短脚本的含义为将曲线的起始时间设置成报警点的报警时间。

这样,在系统运行时,在“报警显示”窗口双击某一条报警信息,则会弹出该报警点在触发报警之后的一段时间内的趋势图,方便用户对该报警点的走势进行分析。



三、结束语

       通过该方式可以实现报警信息与趋势分析的快速切换,提供了工作效率同时,也给广大用户带来了方便。

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服