MDI变量为多态数字量输入,为来自一个I/O驱动的最多三个输入重组数字量数据,将输入组成一个原始数值,并允许你设置报警限。相对于DI变量只有0和1两个值,MDI的值可以为0到7,共8种值。内容如下:
添加MDI变量的具体步骤请参见《变量管理》中的新增变量
在基本属性页上,用户可配置变量名称、描述等基本属性页上所有显示信息。如下图所示:
❖用户可设置进行是否进行扫描,并配置扫描周期。
为了避免丢点现象,如果用户知道设备的数据变化周期,建议将驱动的刷新周期配置为设备的数据变化周期的一半,点的扫描周期配置为数据变化周期的4分之一,如设备的数据变化周期为4000毫秒,那么驱动刷新周期为2000毫秒,点的扫描周期为1000毫秒。
用户如果需要对变量进行报警处理,需要勾选“启用报警处理”选项。
❖重新报警:
如果配置了重新报警, 当过程变量当前值所在状态发生变化,且该状态设置了报警启用,则触发MDI报警;如果未配置重新报警,而之前报警状态如果为报警的话,则如果对应当前状态仍然为报警(状态可以发生了变化,由一个报警状态变为另一个报警状态)则不产生新报警。
❖报警时间死区:
配置报警时间区后,需要报警在一段时间死区内维持报警状态,才触发报警,否则不触发报警。
❖报警级别:
范围为0-255。其中报警区域中列表操作同AI变量报警属性页。报警级别的数字越小,级别越高,级别为0的报警,报警级别是最高的。
❖扩展参数:
存储类的属性的扩展信息,该扩展信息可完全由用户自定义。典型场景如要配置某个类的属性(亦即tag点)产生报警时自动打开报警链接画面,通过该画面查看报警设备的具体信息,我们可将报警链接的画面(如alarm.bsp)输入到类的属性的扩展参数1中,通过报警列表接口得到报警记录后再通过脚本获取该记录对应的类的属性的扩展参数1(即为alarm.bsp),使用OpenPage "alarm.bsp"即可打开该画面。扩展参数脚本的使用参见报警控件函数帮助手册。
❖设备状态:
MDI 变量可由1到3个数字量组成,可以配置8种报警状态。
在编址属性页上,用户可配置此属性页上所有配置项。配置完毕如下图所示:
MDI 变量可由1到3个数字量组成,每个编址对应到一个数字量。
变量的“安全”属性页是用于设置变量的权限。所有操作可参考变量安全区配置页帮助文档。
配置AI变量转储请参见如何配置iHD转储 、如何配置iMV转储
属性名称 |
类型(长度) |
输入规则 |
描述 |
是否支持在线修改 |
||
A_NAME |
DT_ASCII |
Readonly。127字节,由中文字符、字母、数字、‘_’字符,‘#’字符、‘$’字符组成,且命名中必须包含中文字符或字母。变量名在整个节点内唯一,大小写无关。 |
名称 |
|
||
|
DT_ASCII |
127字节 |
描述 |
√ |
||
F_BLK_TYPE |
DT_UCHAR |
DisplayOnly PB_MDI=8 |
变量类型 |
|
||
A_ALM_AREA0 |
DT_SINT16 |
-1=无报警区 -2=”ALL”报警区,只可能为报警区0的ID 1~32767=用户定义的报警区 |
报警区0-5的ID号
|
|
||
A_ALM_AREA1 |
DT_SINT16 |
|||||
A_ALM_AREA2 |
DT_SINT16 |
|||||
A_ALM_AREA3 |
DT_SINT16 |
|||||
A_ALM_AREA4 |
DT_SINT16 |
|||||
A_ALM_AREA5 |
DT_SINT16 |
|||||
A_SEC_AREA0 |
DT_ASCII |
每个安全区最长31字节
|
安全区0-5的名称
|
|
||
A_SEC_AREA1 |
DT_ASCII |
|||||
A_SEC_AREA2 |
DT_ASCII |
|||||
A_SEC_AREA3 |
DT_ASCII |
|||||
A_SEC_AREA4 |
DT_ASCII |
|||||
A_SEC_AREA5 |
DT_ASCII |
|||||
A_BLK_SN |
DT_SLONG |
|
|
|
||
A_EXT_PARAM0 |
DT_ASCII |
63字节 |
扩展配置0-3 |
|
||
A_EXT_PARAM1 |
DT_ASCII |
|||||
A_EXT_PARAM2 |
DT_ASCII |
|||||
A_EXT_PARAM3 |
DT_ASCII |
|||||
A_SCAN_MODE |
DT_ASCII |
1=扫描机制 0=通知机制 |
扫描模式 |
|
||
F_SCAN_MODE |
DT_BIT |
|
|
|
||
F_SCAN_INTV |
DT_ULONG |
毫秒数 |
扫描间隔 |
|
||
F_SCAN_PHS |
DT_ULONG |
毫秒数 |
扫描相位 |
|
||
A_IODRV0 |
DT_ASCII |
63字节 |
第0位所属驱动 |
|
||
A_IOADDR0 |
DT_ASCII |
63字节 |
第0位设备地址 |
|
||
A_IODRV1 |
DT_ASCII |
63字节 |
第1位所属驱动 |
|
||
A_IOADDR1 |
DT_ASCII |
63字节 |
第1位设备地址 |
|
||
F_IOENABLE_1 |
DT_BIT |
1/0 |
是否启用第一个设备 |
|
||
A_IODRV2 |
DT_ASCII |
63字节 |
第2位所属驱动 |
|
||
A_IOADDR2 |
DT_ASCII |
63字节 |
第2位设备地址 |
|
||
F_IOENABLE_2 |
DT_BIT |
|
是否启用第二个设备 |
|
||
A_EGU_0 |
DT_ASCII |
31字节 |
值为000的名称 |
|
||
A_EGU_1 |
DT_ASCII |
31字节 |
值为001的名称 |
|
||
A_EGU_2 |
DT_ASCII |
31字节 |
值为010的名称 |
|
||
A_EGU_3 |
DT_ASCII |
31字节 |
值为011的名称 |
|
||
A_EGU_4 |
DT_ASCII |
31字节 |
值为100的名称 |
|
||
A_EGU_5 |
DT_ASCII |
31字节 |
值为101的名称 |
|
||
A_EGU_6 |
DT_ASCII |
31字节 |
值为110的名称 |
|
||
A_EGU_7 |
DT_ASCII |
31字节 |
值为111的名称 |
|
||
F_SCAN_ENABLE |
DT_BIT |
1/0 |
是否允许扫描 |
√ |
||
F_SOE_ENABLE |
DT_BIT |
1/0 |
是否允许 |
|
||
|
DT_BIT |
1/0 |
是否启用报警 |
√ |
||
|
DT_BIT |
1/0 |
是否重新报警 |
|
||
F_OVERRIDE_ENABLE |
DT_BIT |
1/0 |
是否允许超驰 |
√ |
||
F_OVERRIDE_VALUE |
DT_DBL |
|
超驰值 |
|
||
F_ALM_0 |
DT_BIT |
|
是否允许取值为000时报警 |
|
||
F_ALM_1 |
DT_BIT |
|
|
|
||
F_ALM_2 |
DT_BIT |
|
|
|
||
F_ALM_3 |
DT_BIT |
|
|
|
||
F_ALM_4 |
DT_BIT |
|
|
|
||
F_ALM_5 |
DT_BIT |
|
|
|
||
F_ALM_6 |
DT_BIT |
|
|
|
||
F_ALM_7 |
DT_BIT |
|
|
|
||
F_ALM_0_STATE |
DT_ UCHAR |
|
值为000时报警状态 |
|
||
F_ALM_1_STATE |
DT_ UCHAR |
|
|
|
||
F_ALM_2_STATE |
DT_ UCHAR |
|
|
|
||
F_ALM_3_STATE |
DT_ UCHAR |
|
|
|
||
F_ALM_4_STATE |
DT_ UCHAR |
|
|
|
||
F_ALM_5_STATE |
DT_ UCHAR |
|
|
|
||
F_ALM_6_STATE |
DT_ UCHAR |
|
|
|
||
F_ALM_7_STATE |
DT_ UCHAR |
|
|
|
||
F_ ALM_ PRIORITY |
DT_ UCHAR |
|
报警级别 |
|
||
F_ALM_TDB |
DT_ ULONG |
ms |
报警时间死区 |
|
||
F_OUTPUT_ENABLE |
DT_BIT |
1/0 |
是否允许控制 |
√ |
||
F_VTQ |
DT_ASCII |
值、时间戳和数据质量 |
当前值结构体 |
|
||
A_CV |
DT_VTQ |
|
当前值 |
|
||
F_CV |
DT_VTQ |
|
|
|
||
A_TIMESTAMP |
DT_ASCII |
YYYY-MM-DD HH:mm:ss.xxx |
时间戳 |
|
||
F_TIMESTAMP |
DT_CV_TIME |
64BIT, TCV_TimeStamp,使用接口读取后,转化成当前时区时间 |
|
|
||
A_QUALITY |
DT_ASCII |
兼容OPC Quality |
数据质量 |
|
||
F_QUALITY |
DT_UINT16 |
|
|
|
||
A_QUALITY_SUB |
DT_ASCII |
|
数据质量子状态 |
|
||
F_QUALITY_SUB |
DT_UINT16 |
|
|
|
||
A_ALM_PIC |
DT_ASCII |
32字节,该点所有报警 |
报警状态页面 |
|
||
F_ACK_ALM_TYPE |
DT_UINT16 |
WriteOnly,写入待确认报警类型 |
确认报警 |
|
||
F_DEL_ALM_TYPE |
DT_UINT16 |
WriteOnly,写入待删除报警类型 |
删除报警 |
|
||
F_ALM_CNT |
DT_SLONG |
报警状态为2或3 |
未恢复报警计数 |
|
||
F_ALM_UNACK_CNT |
DT_SLONG |
报警状态为1或3 |
未确认报警计数 |
|
||
F_ALM_ALL_CNT |
DT_SLONG |
只要报警状态不为0 |
活动报警计数 |
|