Intouch 程序范例 IOSetItem

合集下载

(2024年)InTouch教程

(2024年)InTouch教程
InTouch教程
2024/3/26
1
目录
2024/3/26
• InTouch基础介绍 • InTouch界面与操作 • 图形与动画设计 • 数据连接与通信配置 • 报警与事件处理机制 • 报表生成与打印功能实现 • 高级功能应用与拓展
2
01
InTouch基础介绍
Chapter
2024/3/26
使用InTouch提供的绘图 工具创建直线、圆、矩形 等基本图形。
2024/3/26
自定义图形
通过组合基本图形元素或 使用路径工具创建复杂的 自定义图形。
图形属性编辑
调整图形的颜色、线型、 填充等属性,以满足设计 需求。
12
动画效果实现方法
2024/3/26
关键帧动画
通过设置关键帧和中间帧,实现图形的移动、旋转、缩放等动画 效果。
探讨如何优化网络通信性能,提高远程监控的实时性和稳定性
03
30
THANKS
感谢观看
2024/3/26
31
20
事件处理程序编写技巧
事件类型判断
在事件处理程序中,首先需要 判断事件的类型,以便执行相
应的处理逻辑。
2024/3/26
数据获取与处理
根据事件类型,获取相关的数 据并进行处理,如读取模拟量 数值、开关量状态等。
报警信息生成
根据处理结果生成报警信息, 包括报警类型、报警点名称、 报警值、报警时间等。
报警信息发送
将生成的报警信息发送给相应 的接收端,如声光报警器、手
机APP等。
21
报警记录查询与导出功能
报警记录查询
提供报警记录查询功能,可以按照报 警类型、报警点名称、报警时间等条 件进行查询。

Intouch 程序范例 IoSetAccessName GetNodeName

Intouch 程序范例 IoSetAccessName GetNodeName

一套View程序在不同计算机中实现不同功能实现功能:将一套VIEW程序,在不同监控电脑中实现不同的功能或访问名的变更。

关键字:访问名、IoSetAccessName、GetNodeName绪 论在分布式监控系统中,以GMS系统为例,通常情况下一套SCADA程序要分别运行在不同地点的不同计算机中,在IOServer 通迅中,有时只有一套或两套IO通迅软件,为了使每台SCADA程序访问不同的IOServer服务器,就要分别配置程序的访问名,这样的话会产生同样功能的多套View程序,从而增加开发人员的工作量。

其次,一套程序在不同地点不同计算机中所要实现功能不同或监控及报警范围设置不同时,开发人员有时也会在一套程序的基础上开发多套View程序,给开发及后期维护带来不便,增加工作量。

现将用 IoSetAccessName 及GetNodeName实现上述问题。

所需使用函数:IoSetAccessName 、GetNodeName语法 (IOSetAccessName)IOSetAccessName("AccessName", "NodeName", "AppName", "TopicName");参数AccessName要将新的“应用程序名”与“主题名”值指定给它的现有“访问名”。

实际的字符串或消息标记。

NodeName要指定的新“节点名”。

实际的字符串或消息标记。

AppName要指定的新“应用程序名”。

实际的字符串或消息标记。

TopicName要指定的新“主题名”。

实际的字符串或消息标记。

语法 (GetNodeName)GetNodeName (messagetag, nodenum);参数messagetag将包含节点名的消息标记名。

nodenum要从节点名检索的字符数。

0 到 131 范围内的整数值、整型标记名或整型表达式。

INTOUCH教程第三部分

INTOUCH教程第三部分
3. 选择“窗口”以打印在应用程序窗口中使用的数据库输入项列表。 如果您选择“窗口”,下面三个选项将被激活:
选择“全部”以打印应用程序中所有窗口的数据库输入项。
选择“所选的”以只打印指定窗口的数据库输入项。“打印窗口”对 话框将出现:
打印标记名的详细内容
4. 选择您要打印的窗口,然后单击“确定”(缺省条件下,当对话框 出现时,所有的窗口名均被选定)。
在定义标记名并选 择 SuperTag 模板作为其标记名类型时,缺省情况下, 所有在 SuperTag 模板中定义的成员标记名将设为“内存”数据访问类 型。如果“内存”型是您需要的类型,则不需进行特殊的配置。但是, 如果您需要将SuperTag 模板中的任何成员标记名定义 为 I/O 类型,则 必须进行一些额外的配置。
11 . 在“项目”框中,为标记名将从中读/ 写其值的服务程序中的数据 点输入有效的项目名。例如,如果您要从一个PLC 寄存器中读值,则 可以输入该寄存器的有效标识作为项目名。
提示:项目名会被自动编号。例如,如果您输入并存储项目名 R4001 , 然后单击“新建”(定义一个新标记名),项目名将自动编号为R4002。如果项目名包含一个字符分隔的数字,它将自动编号为 InTouch 找到的第一个整数。例如,N7-0 将编号为 N7-1 。注意只允许 正方向的变化。例如,R4002 到 R4003 ,R4003 到 R4004 等等。
定义标记名的详细内容
提示:项目名会被自动编号。例如,如果您输入并存储项目名 R4001 , 然后单击“新建”(定义一个新标记名),项目名将自动编号为 R4002 。如果项目名包含一个字符分隔的数字,它将自动编号为 InTouch 找到的第一个整数。例如,N7-0 将编号为 N7-1 。注意只允许 正方向的变化。例如,R4002 到 R4003 ,R4003 到 R4004 等等。

InTouch 函数及语句简介

InTouch 函数及语句简介
第页 2 共 53
Intouch 语句简介
Number 如果一个函数需要字符参数,该域设置返回到参数的最大字符串长度。在 InTouch 中,字符串消息标记名的最大长度是 131 个字符。除非你减小了 InTouch 标记名的最 大字符串长度,此参数一般设为 131。数字或整型标记名。 实例 下面的语句使系统读出 RecipeName 标记名的当前值且返回文件中的前一个配方。此返 回的字符串将被储存在 RecipeName 中并覆盖当前值。若 RecipeName 的值为空白或不 能找到,将返回文件第一个配方, 则返回此配方。(配方按创建时的顺序保存。) RecipeSelectPreviousRecipe("c:\recipe\recfile.csv", RecipeName,131); 7: RecipeSelectRecipe() 选择当前在配方模板文件中定义的一个配方。 句法 RecipeSelectRecipe(“Filename”,“RecipeName”,“Number”); 参数 描述 FileName 此函数所作用的配方模板文件的名称。实际消息标记名。 RecipeName 此函数使用的指定配方模板文件中指定的配方。RecipeLoad()、RecipeSave() 和 RecipeDelete() 函数需用户提供 RecipeName。RecipeSelectRecipe() 函数返回此参数 的值。没有引号或字符文字的实际消息标记名。 Number 如果一个函数必须填充字符参数,该域设置返回到参数的最大字符串长度。在 InTouch 中,字符串消息标记名的最大长度是 131 个字符除非你减小了 InTouch 标记 名的最大字符串长度,此参数一般设为 131。数字或整型标记名。 实例 下面的语句打开“选择一个配方”对话框。

InTouch教程

InTouch教程

显示链接:向操作员提供输出。 八种显示链接
线条颜色、填充颜色、文本颜色: 离散:
用于控制与离散表达式的值链接的对象或符号上 For ex……
模拟:
模拟标记名(整型或实型)或模拟表达式的值
离散报警:
可与标记名、报警组或组变量的报警状态链接
模拟报警:
模拟型标记名、报警组或组变量的报警状态。
对象大小 、位置、 填充百分比、值显示
系统配置要求
1、硬件:最低:P3-400MHZ , 256MB RAM , 2G可用硬盘空间 推荐:1.2GP3或更高主频 ; 512MB RAM 2、操作系统: win2000 sp3 / win XP sp1
InTouch 界面环境
1、 应用程序管理器:用于组织管理创建的程序
2、 Windowmaker : 开发界面
报警级别 1-999
报警严重程度 优先级范围 关键
“1”是最高级别
主要 250-499 次要 500-749 提示性 750-999
1-249
注:四种优先级:1 表示关键、2 主要、3 次要、4 提示性(即 1、2、3、4) 工程师在做InTouch 时为每一个报警指定一个严重程度,配置好范围后, 现场操作员就可以轻松打印与显示某种特定严重程度的报警。
Show
其它 闪烁: 用于根据离散型标记名或表达式的值来使对象闪烁。 可见性:用于根据离散型标记名或表达式的值来控制对象的可见性。 失效: 用于根据标记名或表达式的值来禁用对象的触动功能。 方向: 用于根据标记名或表达式的值来旋转对象。
Show win1
导出窗口:将窗口从一个InTouch应用程序移到另一个应用程序中以
Show
“标记名字典”实用程序: DBDump 和 DBLoad

InTouch中实现间歇式读取数据的一种方法

InTouch中实现间歇式读取数据的一种方法

InTouch中实现间歇式读取数据的一种方法困惑:曾经有个客户,通过GPRS读取远程的数据,如需要间隔时间较长(远远超出I/O 的扫描时间,如2小时才读一次),根据I/O Server 的工作特性,它是周期性的读取数据,这样就有可困难。

有人说,可以在InTouch中选择只激活当前项目,但这样方法有缺陷,就是不能将该数据设置成数据纪录。

另外还有,就是在不打开数据所在的页面。

今天看到一个函数,可以实现这个功能IOSetItem() 函数通过在脚本中使用 IOSetItem() 函数,可以实现“动态引用寻址”。

IOSetItem() 包含一些参数,可以在运行时更改指定给 I/O 标记的 .Reference 点域的值。

类别其它语法IoSetItem ("Tag", "AccessName", "Item");参数Tag使用英文双引号括起来的任何 InTouch I/O 标记。

AccessName指定给 I/O 标记的“访问名”。

Item指定给 I/O 标记的“项目”。

Tag、AccessName 以及 Item 参数可以指定为字符串,它们也可以是其它InTouch 标记或函数提供的字符串值。

示例在下例中,PumpInP1 标记的 .Reference 点域更改为指向Excel“访问名”与R1C1 项目。

IOSetItem("PumpInP1", "excel", "R1C1");或者Number = 1;TagNameString = "PumpInP" + Text(Number,"#");IOSetItem(TagNameString, "excel", "R1C1");如果将“访问名”与“项目”的值都指定为空字符串(“”),则可以使标记不再活动。

Intouch函数脚本与逻辑使用指南

商标
本文所提及且已知为商标或服务标志的所有专用名词均已采用适当的首字母大写形式。 Invensys Systems, Inc. 无法证实此类信息的准确性。在本文档中使用某个专用名词不 应视为会影响任何商标或服务标志的有效性。 Alarm Logger、 ActiveFactory、 ArchestrA、 Avantis、 DBDump、 DBLoad、 DT Analyst、 FactoryFocus、 FactoryOffice、 FactorySuite、 FactorySuite A2、 InBrialRAD、 IndustrialSQL Server、 InTouch、 MaintenanceSuite、 MuniSuite、 QI Analyst、 SCADAlarm、 SCADASuite、 SuiteLink、 SuiteVoyager、 WindowMaker、 WindowViewer、 Wonderware 以及 Wonderware Logger 均为 Invensys plc 及其子公司与附属公司的商标。所有其它品牌 可能是其相应所有者的商标。
$LogicRunning 系统标记 ................................................37
第 4 章 脚本语言 ................................................39
基本语法规则 ......................................................................40 子程序 ..............................................................................40 语句.................................................................................. 40 缩进.................................................................................. 40 注释.................................................................................. 40 标记引用 ..........................................................................41 数据值 ..............................................................................41 值表达式 ..........................................................................41 语法验证 ..........................................................................41

INTOUCH教程第二部分


对象镜像
您可以水平或垂直地翻转大部分的 WindowMaker 对象, 包括位图、JPEG、PCX 和 TGA 图像(文本只能旋转而不 能翻转)。在翻转对象时,您可以将其变换成水平或垂直 的镜像。对象附带的任何链接将随之一起翻转。 要翻转选定的对象: 1. 选择对象。 2.在“排列”菜单上,单击“水平翻转”(或“垂直翻 转”),或者选择“排列工具栏”上的相应工具。选定对 象将翻转。
对象分层 您可以通过将对象置前或置后来对窗口中的对象分层。
要将一个对象置于另一对象之后: 1. 选择对象。 2. 在“排列”菜单上,单击“置后”,或单击“排列工具 栏”上的置后工具。选定对象即被设置在窗口中未选定对 象之后:
提示:要快速将对象置后,右击对象指向“前/后”。然后 单击“置后”。
对象分层 要将一个对象置于另一对象之前:
控制水平和垂直间距
例如:
旋转对象
旋转对象 在 WindowMaker 中,您可以旋转大部分对象,包括位 图、JPEG、 PCX、TGA 图像和文本对象。对象能以 90 度的增量顺时针或逆时针旋转 360 度(即90 度、180 度、 270 度和 360 度)。对象附带的任何链接也将随之一起旋 转。您不能旋转单元,但是可以旋转符号。 注意: 注意:在 WindowMaker 中旋转对象与在运行时动态地 旋转对象无关。 对象通过链接“ 旋转对象无关。在WindowViewer 中,对象通过链接“方 动画链接来旋转。文本对象不能在WindowViewer 中 向”动画链接来旋转。文本对象不能在 旋转。但是,位图或图像可以通过指定“方向”动画链接 旋转。但是,位图或图像可以通过指定“方向” 来旋转。 来旋转。
旋转对象
要使选定对象旋转 90 度: 1 . 选择对象。 2.在“排列”菜单上,单击“顺时针旋转”(或“逆时针 旋”)。选定对象将按选定方向旋转 90 度。

InTouch培训教程讲义 第09讲 InTouch脚本

循环语句
For 。。。Next
局部变量定义 Dim – 类似于Intouch内存标签点,但是作用范围不同
极易组态软件专业培训网
主讲:钱立湘 出品:极易组态软件专业培训网
4.QuickScript系统函数
函数 function
2.QuickScript编辑窗口
QuickScript编辑界面比较简陋
极易组态软件专业培训网
主讲:钱立湘 出品:极易组态软件专业培训网
3.QuickScript语法
基本语法
脚本中的每个语句都必须以英文分号 (;) 结尾。
要将文本标记为注释,请使用大括号 { } 将它括 起来。注释可以跨越多行。
第9讲
InTouch脚本介绍
主讲:钱立湘 极易组态软件专业培训网

极易组态软件专业培训网
本讲内容
主讲:钱立湘 出品:极易组态软件专业培训网
1.面向对象的高级编程结构 2.QuickScript编辑窗口 3.QuickScript语法 4.QuickScript系统函数 5.QuickScript触发类型 6.脚本应用-报表
连接数据库 插入数据 断开连接
极易组态软件专业培训网
触发器都可以执行不同的脚本。 • 按键脚本有三个触发器:放开时、按下时,或是按下期间。每
个触发器都可以执行不同的脚本。 • 条件脚本有四个触发器:为真时、为真期间、为假时以及为
假期间。每个触发器都可以执行不同的脚本。 • 特定标签或表达式的值发生改变时,执行数据改变脚本。 • 操作员单击 InTouch HMI 图形对象时,动作脚本执行一次
1.面向对象的高级编程结构
脚本-Script 不能独立生成单独执行文件,只能依附于

Intouch非常实用的使用总结

Intouch非常实用的使用总结1、intouch授权:授权文件wwsuite.lic放在C:\Program Files\Common Files\ArchestrA\License。

2、intouch时间日期设置:intouch系统变量中时间日期是模拟量,不能很好的显示时间和日期,只有两种方式显示⑴、单独的时+分+秒显示。

⑵、调用向导,选择时钟中的组合控件。

3、DA/IO Server的区别?两个驱动都可以,详细的以后补充。

其实是IO SERVER好用,IOSERVER的效率比DASERVER好,DASERVER只是为了方便集成到IAS平台,新作的一种IO开发方式。

以太网通讯还是用DAServer,配置很简单,比ioserver好用。

4、wwclint的作用?用来测试SMC通讯配置是否正确。

需要连接实际的硬件才能进行测试。

5、用户的配置?特别-->安全性-->配置用户:依次输入要添加的用户名、口令、访问级别,再点击“添加”按钮就又“申请”了一个用户。

如果“配置用户”选项是灰色的不可用状态,那是因为你还没有以管理员身份登陆,登陆后就可以点击此选项了。

将安全类型切换到“Intouch”。

管理员的默认用户名:Administrator 密码:wonderware 。

该用户是无法删除的。

6、打开项目时出现:另一会话正在编辑此应用程序。

无法编辑此应用程序。

该怎样解决?文件夹下,删除appedit.lok。

7、在安装I/O Server的时候,弹出“install of common components could not be started! Pleasecontact wonderwave techsupport !'想问一下是什么原因,该怎么解决才能完成安装程序?先安装:F:\软件备份\ioservers\FS2K71\IOServer\Common\Win32\setup.exe7、如何使用Unity编程软件的仿真器来与Intouch通信?⑴首先保证Unity编程软件在仿真状态(PLC→仿真模式。

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

Wonderware Intouch 程序范例
上海吉威电子系统工程有限公司‐系统整合事业部 demonliu@
动态寻址,按条件改变一个点的访问名或项目名称
实现功能:可将一个点分不同时间段去访问不同设备或分不同条件访问同一设备的不同的项目名称,实现一点多用,从而满足系统的需求,并可确保趋势曲线的完整性。

关键字:访问名、IOSetItem
语法 (IOSetItem )
IoSetItem ("Tag", "AccessName", "Item");
参数
Tag
使用英文双引号括起来的任何 InTouch I/O 标记。

AccessName
指定给 I/O 标记的“访问名”。

Item
指定给 I/O 标记的“项目”。

Tag 、AccessName 以及 Item 参数可以指定为字符串,它们也可以是其它 InTouch 标记或函数提供的字符串值。

应用:
如果在一套系统中,假设有一组设备,共4台同样型号的分析仪,但同时只会有一台设备工作,每6小时便切换到下一台设备,在SCADA 显示中,为了保证趋势曲线的完整性,将4台设备的同一项目名称用同一个点显示,这样24小时的趋势曲线则是连贯的,如果分别显示的话,则需要同时显示4条曲线,给操作带来不便,如果数据存入InSQL 数据中的话也会造成数据的不够准确及后期应用的不便。

条件脚本:
条件 :TimeString==”00:00:00”
条件类型:为真时
IoSetItem ("Tag", "IOServer1", "Item") //根据不同需求改变访问名称或项目名称
或在应用程序脚本中‐‐‐运行时,通过IF 语句来判断完成其功能
设备1 00:00工作
设备2 06:00工作 设备3 12:00工作 设备4 18:00工作 IOServer1 IOServer2IOServer3IOServer4Intouch Tag。

相关文档
最新文档