AI变量是模拟输入变量,提供对模拟量数据的读写访问,并允许你设置报警。适用于温度量、电流量、水井水位、水塔水位、泵出口压力和出口流量等。内容如下:
添加AI变量的具体步骤请参见《变量管理》中的新增变量
当用户设置完基本属性页后,如下图所示:
注意:如果用户没有配置“所属驱动”、“设备名称”和“设备地址”,则添加的变量默认为全局变量,全局变量可以在所有客户端中通用。
数据类型 |
取值范围 |
其他 |
---|---|---|
16位无符号整型 |
0—65535 |
|
16位有符号整型 |
-32768—32767 |
|
32位无符号整型 |
0—4294967295 |
|
32位有符号整型 |
-2147483648—2147483647 |
|
8位无符号整型 |
0-255 |
|
8位有符号整型 |
-128-127 |
|
单精度浮点型 |
-3.4E38~3.4E38 |
32位的4个字节,这里驱动数据块的寄存器也需要配置为4个字节,长度不得超过63 小数点后不能超过6位有效数字 |
双精度浮点型 |
-1.79769E308~1.79769E308 |
64位的8个字节 小数点后不能超过6位有效数字 |
❖字节顺序:通常规情况中,用户不用修改选项。该功能用以实现某些设备寄存器高低位翻转的特殊情况的读写,例如16位无符号整形258,在x86结构机器上其16进制表示为0x0102,但是从设备读取该数据时其顺序可能为0x0201,此时需要作“21”转换,即将第一个字节与第二个字节进行交换,从而使得从设备读取的数据可以在终端上正确显示,
❖扫描设置:
⟡通知机制:指变量值有变化的时候进行通知读取。
⟡扫描机制:通过轮循扫描的方式对变量进行读取,可对“扫描周期”和“扫描相位”进行设置。这里的扫描周期是过程数据库读取驱动的时间。
⟡扫描周期:两次扫描周期所间隔的时间
⟡扫描相位:用于设置起始扫描时间。避免多组同时扫描造成的资源不足风险。
注意:为了避免丢点现象,如果用户知道设备的数据变化周期,建议将驱动的刷新周期配置为设备的数据变化周期的一半,点的扫描周期配置为数据变化周期的4分之一,如设备的数据变化周期为4000毫秒,那么驱动刷新周期为2000毫秒,点的扫描周期为1000毫秒。
❖启动选项:
⟡允许控制:用户如果要对变量进行写控制,需要勾选“允许控制”,iCentroView提供了“允许扫描”和“禁止扫描”的选项,方便用户设置是否启用扫描机制。
⟡记录控制事件:当我们对过程量进行写值控制的时候,用于记录控制的事件,此功能在“允许控制”被勾选的情况下可用,并且可以设定事件级别,方便查找时筛选。
❖启用量程转换:
⟡单位:变量值的单位可通过“单位”下拉框进行设定,软件提供了米、分、秒、千克、克、米/秒、公里/小时、摄氏度、华氏度等常见单位选项,也可自行输入单位。“原始量”根据实际需求配置。选择“启用量程转换”复选框,可对“工程量”中的“零量程”与“满量程”进行设置。
⟡原始量:从驱动获取到的原始值。
⟡工程量:转换工程单位后的值。
⟡零量程:测量范围的下限值。
⟡满量程:测量范围的上限值。
⟡量程转换:量程是测量范围上限值与下限值之差,而从一个量程变换成另一个量程就叫量程转换。
如上图所示,原始量的测量范围是12分到10000分之间,所有<12分值转换为12,所有>10000分的值转换为500,在工程应用时,转换为12到500之间。
注意:原始量的零量程和满量程值,应在所选的数据类型的范围内(16位无符号整型:0—65535;16位有符号整型:-32768—32767;32位无符号整型:0—4294967295;32位有符号整型:-2147483648—2147483647;8位无符号整型:0—255;8位有符号整型:-128—127;单精度浮点型:-3.4E38~3.4E38,但小数点后不能超过6位有效数字;双精度浮点型:-1.79769E308~1.79769E308 ,但小数点后不能超过6位有效数字)。
❖零点嵌位:当数据值在“零点”附近“浮动值”范围内,那么这个数值就当成为“零点”值,如“零点”基准值设置为100,浮动值设置为1,那么>99或<101的值都会转换成100。选择“允许零点嵌位”复选框,可对“零点”和“浮动值”进行设置。
❖扩展参数:存储类的属性的扩展信息,该扩展信息可完全由用户自定义。典型场景如要配置某个类的属性(亦即tag点)产生报警时自动打开报警链接画面,通过该画面查看报警设备的具体信息,我们可将报警链接的画面(如alarm.bsp)输入到类的属性的扩展参数1中,通过报警列表接口得到报警记录后再通过脚本获取该记录对应的类的属性的扩展参数1(即为alarm.bsp),使用OpenPage "alarm.bsp"即可打开该画面。扩展参数脚本的使用参见报警控件函数帮助手册。
变量的“报警”属性页是用于设置变量的报警状态。如下图:
❖启用报警处理:用户如果需要对变量进行报警处理,需要勾选“启用报警处理”选项,报警区域默认显示为ALL。
❖报警区域配置:为了便于用户监控报警时筛选,我们提供了报警区域配置。在报警区域列表上,用户单击一行后,此行变为可编辑状态,此时用户可在此行自行输入此变量的报警值,其中第一行为报警值一,第二行为报警值二,以此类推,最多可输入六个报警值,若用户输入ALL,则默认为所有报警值。用户也可以通过双击报警区域列表弹出的报警区域选择框进行报警值选择,用户可以通过双击报警区域列表框添加报警区域,此时弹出报警区域选择框,如下图:
注意:
⟡低低报警,低报警:低于该值则报警。
⟡高报警,高高报警:高于该值则报警。
各级报警级别:低低报警值 < 低报警值 < 高报警值 < 高高报警值。报警值级别可选择0-255级别。数字越小,级别越高,级别为0的报警级别是最高的。
⟡变化率报警:当过程量的当前值与前一次的值的差除以时间间隔(以秒为单位)再取绝对值大于等于变化率限值时,触发报警。
⟡偏差报警:当过程量的当前值与基准值的差取绝对值大于等于偏差限值时,触发报警 。
⟡报警值死区:配置报警值死区后,报警的触发和恢复都要在触发限值和恢复限制上加上或者减去报警值死区的大小才判断触发或者恢复,避免报警在限值附近波动时频繁发生的报警和恢复消息 。
例如:当高报警值为24,且设置报警值死区为1时,超过25报警,低于23恢复。
⟡时间死区:配置报警时间区后,需要报警在一段时间死区内维持报警状态,才触发报警,否则不触发报警,其中变化率报警不受时间死区限制。
添加AI变量的具体步骤请参见变量安全区配置
配置AI变量转储请参见如何配置iHD转储 、如何配置iMV转储
属性名称 |
类型(长度) |
输入规则 |
描述 |
是否支持在线修改 |
||
A_NAME |
DT_ASCII |
Readonly。127字节,由中文字符、字母、数字、‘_’字符,‘#’字符、‘$’字符组成,且命名中必须包含中文字符或字母。变量名在整个节点内唯一,大小写无关。 |
名称 |
|
||
|
DT_ASCII |
127字节 |
描述 |
|
||
F_BLK_TYPE |
DT_UCHAR |
DisplayOnly PB_AI=1 |
变量类型 |
|
||
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_IODRV |
DT_ASCII |
63字节 |
所属驱动 |
|
||
A_IOADDR |
DT_ASCII |
63字节 |
设备地址 |
|
||
A_EGU_LBL |
DT_ASCII |
15字节 |
工程单位 |
|
||
F_EGU_LOW |
DT_DBL |
浮点数 |
工程量零量程 |
|
||
F_EGU_SPAN |
DT_DBL |
浮点数 |
工程量满量程 |
|
||
F_RAW_LOW |
DT_DBL |
浮点数 |
原始值零量程 |
|
||
F_RAW_SPAN |
DT_DBL |
浮点数 |
原始值满量程 |
|
||
F_EGU_ENABLE |
DT_BIT |
1=允许 0=禁止 |
是否允许工程量转换 |
|
||
A_DATA_TYPE |
DT_ASCII |
|
数据类型 |
|
||
F_DATA_TYPE |
DT_UCHAR |
|||||
F_SCAN_ENABLE |
DT_BIT |
1/0 |
是否允许扫描 |
√ |
||
F_OVERRIDE_ENABLE |
DT_BIT |
1/0 |
是否允许超驰 |
√ |
||
F_OVERRIDE_VALUE |
DT_DBL |
|
超驰值 |
|
||
F_ZP_ENABLE |
DT_BIT |
1/0 |
是否允许零点钳位 |
|
||
F_ZP_CENT |
DT_DBL |
|
零点钳位的零点 |
|
||
A_ZP_THRES |
DT_DBL |
|
零点钳位的漂移区间 |
|
||
|
DT_BIT |
1/0 |
是否启用报警 |
√ |
||
F_ALM_V_DEADBAND |
DT_DBL |
|
报警值死区 |
√ |
||
F_ALM_TM_DEADBAND |
DT_ULONG |
毫秒数 |
报警时间死区 |
√ |
||
|
DT_BIT |
|
是否允许下下限报警 |
√ |
||
F_ALM_LL_THRESH |
DT_DBL |
浮点数,位于工程下限和工程上限之间,下同。LL, L, H, HH报警限必须从小到大 |
下下限报警阈值 |
√ |
||
F_ALM_L_ENABLE |
DT_BIT |
|
是否允许下限报警 |
√ |
||
F_ALM_L_THRESH |
DT_DBL |
|
下限报警阈值 |
√ |
||
F_ALM_H_ENABLE |
DT_BIT |
|
是否允许上限报警 |
√ |
||
F_ALM_H_THRESH |
DT_DBL |
|
上限报警阈值 |
√ |
||
F_ALM_HH_ENABLE |
DT_BIT |
|
是否允许上上限报警 |
√ |
||
F_ALM_HH_THRESH |
DT_DBL |
|
上上限报警阈值 |
√ |
||
F_ALM_DEV_ENABLE |
DT_BIT |
|
是否允许偏差限报警 |
√ |
||
F_ALM_ROC_ENABLE |
DT_BIT |
|
是否允许变化率报警 |
√ |
||
F_ALM_DEV_THRESH |
DT_DBL |
|
偏差报警阈值 |
√ |
||
F_ALM_DEV_CENT |
DT_DBL |
|
偏差报警中心 |
√ |
||
F_ALM_ROC_THRESH |
DT_DBL |
|
变化率报警阈值 |
√ |
||
F_ALM _HH_PRIOR |
DT_UCHAR |
0~255 |
高高限报警级别 |
|
||
F_ALM _H_PRIOR |
DT_UCHAR |
0~255 |
高限报警级别 |
|
||
F_ALM _L_PRIOR |
DT_UCHAR |
0~255 |
低限报警级别 |
|
||
F_ALM _LL_PRIOR |
DT_UCHAR |
0~255 |
低低限报警级别 |
|
||
F_ALM _ DEV_PRIOR |
DT_UCHAR |
0~255 |
偏差限报警级别 |
|
||
F_ALM _ ROC_PRIOR |
DT_UCHAR |
0~255 |
变化率限报警级别 |
|
||
F_ALM _HH_STATE |
DT_UCHAR |
0=无报警/报警已恢复已确认 1=报警未恢复已确认 2=报警已恢复未确认 3=报警未恢复未确认 |
高高限报警状态 |
|
||
F_ALM _H_STATE |
DT_UCHAR |
高限报警状态 |
|
|||
F_ALM _L_STATE |
DT_UCHAR |
低限报警状态 |
|
|||
F_ALM _LL_STATE |
DT_UCHAR |
低低限报警状态 |
|
|||
F_ALM _ DEV_STATE |
DT_UCHAR |
偏差限报警状态 |
|
|||
F_ALM _ ROC_STATE |
DT_UCHAR |
变化率限报警状态 |
|
|||
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 |
活动报警计数 |
|