最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

intouch alarm docment

来源:动视网 责编:小OO 时间:2025-09-30 00:59:43
文档

intouch alarm docment

Intouch使用PlaySound函数触发报警声音系统发生报警时工控机发出报警声,点击操作画面上的报警灯进入报警画面可看到具体报警内容,且所有发生的报警均有48h历史记录。InTouch可为每个数据定义报警信息,模拟量还可定义高、低、高高、低低报警值,且可通过条件脚本或数据值改变脚本和用户编制的快速脚本处理各种报警信息,如弹出报警窗口或声音提示。例如,定义一个条件脚本,并在OnTrue脚本框中写上:Show"motor1_high_alarm";(弹出报警窗口)或PlaySound("d:\
推荐度:
导读Intouch使用PlaySound函数触发报警声音系统发生报警时工控机发出报警声,点击操作画面上的报警灯进入报警画面可看到具体报警内容,且所有发生的报警均有48h历史记录。InTouch可为每个数据定义报警信息,模拟量还可定义高、低、高高、低低报警值,且可通过条件脚本或数据值改变脚本和用户编制的快速脚本处理各种报警信息,如弹出报警窗口或声音提示。例如,定义一个条件脚本,并在OnTrue脚本框中写上:Show"motor1_high_alarm";(弹出报警窗口)或PlaySound("d:\
Intouch使用PlaySound函数触发报警声音

系统发生报警时工控机发出报警声,点击操作画面上的报警灯进入报警画面可看到具体报警内容,且所有发生的报警均有48h历史记录。InTouch可为每个数据定义报警信息,模拟量还可定义高、低、高高、低低报警值,且可通过条件脚本或数据值改变脚本和用户编制的快速脚本处理各种报警信息,如弹出报警窗口或声音提示。例如,定义一个条件脚本,并在On True脚本框中写上: Show "motor1_high_alarm";(弹出报警窗口) 或 PlaySound("d:\\sound\阴床硅量过高报警.wav", 1);(声音报警) 

具体实践应用:

设置条件为:$System.UnAck {此条件的意义在于报警为确认} 

执行语句为:PlaySound("d:\\ALARM.wav", 1); 

图一 

图2

在此说明下,$System.Unack为未确认的报警,在未确认的情况下执行下面的脚本,在此条件类型设置为真期间,每隔6000ms,也是每隔这段时间判断调试是否符合,符合了就发出声响,直到你将报警确认或警报消失。

在此注意的是双引号里面为.wav格式的声音文件,在实际操作过程中注意详细的路径。

PlaySound() 函数

播放波形文件的声音或 Windows 缺省声音。 

语法

Playsound (soundname, flag) 

参数

soundname 

声音或波形文件的名称。字符串值、消息标记名或字符串表达式。如果给声音定义名称,它必须在 Win.ini 文件中的 [Sounds] 部分进行定义,例如 MC=”c:\est.wav” 

flag 

指定如何播放声音。文字整数值、整型标记名或整型表达式,含义如下: 

0 - 同步播放声音一次(脚本等到声音播放完毕才继续执行)。 

1 - 异步播放声音一次(脚本不必等待声音播放完毕再继续执行)。 

9 - 连续播放声音(直到再次调用 PlaySound() 函数为止)。 

示例

此脚本播放 c:\\welcome.wav 文件的声音一次,并暂停脚本执行,直到声音播放完毕。 

PlaySound("c:\\welcome.wav",0); 

此脚本连续播放声音警告。在 win.ini 文件 [Sounds] 部分,需要将声音名称 Alert 与声音文件关联起来,例如: 

Alert=c:\\alert.wav. 

PlaySound("Alert",9); 

Intouch使用技巧

一、 关闭右键菜单 在intouch.ini文件中加入 oldrightmousebehavior = 1 

二、 SmartSymbol 不能包含位图,按钮,单元,报警和趋势 

三、初始化标记名与创建 ActiveX 控件之间会出现定时问题。由于此定时问题,很难保证标记名的初始值等于 ActiveX 控件中相关属性的值。 

      为解决此问题,必须在“启动”事件与InTouch QuickScript 之间建立一种联系。在 QuickScript 中,可采用适当的逻辑将标记名值设置为控件的属性。这可以通过使用赋值语句来实现。例如: 

#ThisControl.Property = MyTag; 

事件发生之后, QuickScript 即开始执行,控件的属性与标记名的值将保持同步。因此,属性与标记名之间会出现正常的通知。 

四、 将“ActiveX 事件”脚本从一个InTouch应用程序移到另一个应用程序时,必须使用 WindowMaker 文件菜单上的导入命令。 

五、 用于启用 / 禁用键过滤器的脚本函数是EnableDisableKeys。 

六、 UNC路径中 使用 Wonderware 的 SuiteLink 协议时, NodeName 长度为 15 个字符。 

七、 要在节点上配置多监视器设置 

       1. 使用合适的文本编辑器,例“记事本”Windows目录中的 WIN.INI 文件。 

       2. 找到 [InTouch] 部分并添加下列参数: 

       [InTouch] 参数 描述 

       MultiScreen=1 打开多屏幕模式 

       MultiScreenWidth=0 单个屏幕的像素宽度 

       MultiScreenHeight=480 单个屏幕的像素高度 

       例如,如果您计算机的分辨率是 2560x1024,分开显示在两个并排的屏幕上,则可输入下列内容: 

       [InTouch] 

       MultiScreen=1 

       MultiScreenWidth=1280 

       MultiScreenHeight=1024 

八、 SuperTag 模板最多可容纳  个成员标记名和 2 个嵌套级别。这表示,SuperTag 父项可包含多达  个内嵌的子成员,并且这每个子成员又可以包含多达 个子成员标记名,因此总共可以有 4095 个成员标记名。 

九、 SuperTag每层最多10个字符长度。 

十、 记录远程引用标记名:缺省条件下,远程引用的标记名会记入 “历史记录”文件。要记录远程引用标记名,您必须启用 “历史记录”功能,然后在应用程序目录中的INTOUCH.INI 文件中添加下面一行代码: RemoteTagsLogEvents=1 

如果不想记录 I/O 型标记名,请在应用程序目录下的 INTOUCH.INI 文件中添加下面一行代码: RemoteTagsNoIOEvents=1 

十一、 如果在 alarmbuf.ini 中添加一行 "SuppressionLog=1",则 "SuppressionLog=0" 会关闭抑制标准改变时写入 Logger 的功能。缺省条件下,此值设置为关闭。 

十二、 热备份对配置文件provacc.ini 

十三、 备注 结合 “网络应用程序开发”(Network Application Development,简称 NAD)功能使用 “语言切换”功能时,建议在 NAD 客户端节点属性面板上,将 “改变模式”设置为 “重新 WindowViewer”或 “提示用户重新启动 WindowViewer”,而不是设置为 “将更改加载 WindowViewer”或 “提示用户将更改加 WindowViewer”。 

十四、 RealTrend主时间刻度之间的最大时间是 65536 秒或 18 小时 12 分钟 16 秒。主时间刻度数必须是副 / 主刻度数的偶数倍。 

十五、 通过在 INTOUCH.INI 文件 (位于应用程序目录中)的 [INTOUCH] 部分添加参数 

ForceLogging=# 

可以改写该缺省值。此参数的值表示分钟,可以设置为 5 和 120 之间的某个值。要记录标记名的当前值 (即使更改小于或等于记录死区值),请添加参数 

ForceLogCurrentValue=1。 

例如:通过添加参数 ForceLogging=15 和 ForceLogCurrentValue=1,当前标记名值将至少每个 15 分钟或是在标记名值发生变化时写入 “历史日志文件。 

十六、 示例: 

         SQLSetStatement n 此语句必须用于复合查询及超过 131 个字符的字符串表达式。字符串表达式超过 131 个字符时,请使用SQLAppendSQLSetStatement(ConnectionID, "Select Speed, Ser_No from tablename where Ser_No ='" + Serial_input + "'"); 

SQLExecute(ConnectionID, "BindList", 0); 

在上例中, StatementId 设置为零,这样在执行语句之前就不必调用 

SQLPepare(Connection_Id, StatementId)。因为 StatementId 并非由 SQLPepare 建立,若要正确结束此 select 语句,请使用 SQLEnd 函数,而不是 SQLClearStatement() 函数。 

SQLSetStatement(Connection_Id, "Select Speed, Ser_No from 

tablename where Ser_No ='" + Serial_input + "'"); 

SQLPrepareStatement(Connection_Id, StatementId); 

SQLExecute(Connection_Id, StatementId); 

在上例中, StatementId 是由 SqlPrepareStatement 创建的,并在 SQLExecute 函数中使用。要结束此 select 语句,请使用 SQLClearStatement 释放资源并释放 StatementId。 

十七、 请勿通过“远程桌面”会话运行Intouch。 

十八、 应用程序的整个路径(包括网络驱动器字母、冒号及所有的反斜杠)不得超过114个字符,否则WindowMaker无法打开该应用程序。 

十九、 不要将WindowViewer添加到“应用程序浏览器”中,否则WindowMaker中创建的新窗口则无法在WindowViewer中保持同步。 

二十、 “平移与缩放”不适用于以下控件: 

ActiveX控件、分布式报警对象、16笔趋势、SPC Pro对象、所有的Windows控件 

二十一、 调色板信息保存在*.pal文件中 

二十二、 窗口类型: 

            替换:打开该窗口,该窗口会自动关闭所有与他相交的任意窗口; 

            覆盖:出现在所有显示窗口的上方; 

            弹出:类似于覆盖窗口,但区别在于弹出式窗口总是位于所有打开窗口的上方,通常需要用户做出响应才能移除。 

二十三、 Intouch最多允许4096个占位符。 

二十四、 导入应用程序包含选项:窗口,数据改变脚本,键脚本,条件脚本,QuickFunctions,ActiveX事件脚本,应用程序脚本。 

二十五、 Intouch最多同时安装43个向导(Wizard) 

二十六、 Intouch中接受键盘输入的Windows控件不能用在SuiteVoyager下 

二十七、 为了让ActiveX事件脚本正常运行,为之创建的脚本的ActiveX控件必须载入内存,包含该控件的窗口必须打开。 

二十八、 Intouch不支持下列类型的ActiveX控件:无窗口控件,单框架布置,容器、数据控件,发送对象,Array、Blob、Object、Variant型控件

InTouch10.0应用程序不能升级到10.1版本原因排查

最近,在将一个原来在InTouch10.0(IDE3.0)环境下备份的应用复制到InTouch10.1(IDE3.1)环境下时,不能正常升级。折腾了好几天也没有解决问题,今天在技术支持等几个人的共同会诊下终于解决了该问题。 

一、最初,怀疑是InTouch10.0是安装的英文版本软件,而10.1是中文版的软件。(因为10.0授权同时支持英文版和中文版,而InTouch10.1的授权是分中文授权和英文授权的,相互不支持。我们10.1版本购买的是中文授权。)于是将原来程序在中文版InTouch10.0环境下再备份,再在InTouch10.1中文版环境下使用,问题依旧??? 

二、原来在使用InTouch过程中,遇到过其实用的个别端口与一些杀毒软件端口冲突,于是怀疑是不是杀毒软件有问题,检查该机器发现,还没有安装任何杀毒软件??? 

三、如果InTouch应用没有关闭,此时进行程序备份,再将该备份文件拷贝到另外一台机器时,可能会出现意外。这一点在以前使用InTouch时也遇到过,要想正常使用必须删掉文件夹中的进程文件,哪会不会是这个问题呢?关闭InTouch10.0中文版中所有应用,然后备份,再将该文件复制到安装有InTouch10.1的计算机上,一切正常,可以顺利升级到10.1环境下。 

Intouch10.0历史报警如何分组查询?

经测试: 

    本人想做个最简单的历史报警查询功能.而不采用连接历史数据库的方法. 

    

    采用不连接历史数据库的方法,利用向导中的AlarmViewerCtrl和"分布式报警显示"两个控件可以显示所有的报警摘要或历史报警, AlmDbViewCtrl控件则要连接历史数据库才能查询. 

    

    我发现AlarmViewerCtrl和"分布式报警显示"两个控件的表面区别在于日期时间格式的差异.其它差别还请高手赐教. 

  

    经测试: 建立组变量"ALMGRP";报警组"A" "B" "C父组都是"$System".在以上两个控件的报警查询中填写"\\Intouch\\!ALMGRP画面中加3个分组查询按钮,动作属性中鼠标左键按下分别赋值"ALMGRP=A;"  "ALMGRP=B;"  "ALMGRP=C;" 通过指示检测按下后ALMGRP赋值是正确的,可是报警却显示所有历史报警记录,无法实现分组查询. 请高手赐教! <报警查询中直接填写"\\Intouch\\!A"或"\\Intouch\\!B"或"\\Intouch\\!C是可以单独显示本报警组历史报警记录的>

    

    本人想到一种方法:利用按钮动作隐藏或显示不同报警组控件来实现分组,除了新建3个窗口方法外,有什么便捷的脚本语句实现么? 

  

    另外,如何通过按钮实现以上两个控件中历史报警记录的打印功能? 

 

本文转自亿万论坛:http://bbs.e10000.cn/a/a.asp?B=308&id=1050431

文档

intouch alarm docment

Intouch使用PlaySound函数触发报警声音系统发生报警时工控机发出报警声,点击操作画面上的报警灯进入报警画面可看到具体报警内容,且所有发生的报警均有48h历史记录。InTouch可为每个数据定义报警信息,模拟量还可定义高、低、高高、低低报警值,且可通过条件脚本或数据值改变脚本和用户编制的快速脚本处理各种报警信息,如弹出报警窗口或声音提示。例如,定义一个条件脚本,并在OnTrue脚本框中写上:Show"motor1_high_alarm";(弹出报警窗口)或PlaySound("d:\
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top