第十一章EpSynall遥设与定值管理.doc
第十一章 EpSynall遥设与定值管理本章要点:Ø 介绍EpSynall定值模型Ø 介绍EpSynall定值模型Ø 介绍定值的召唤与设置Ø 定值库管理Ø 定值管理界面及其调用方法11.1 定值模型控制单元(控制单元地址)保护单元(保护单元地址)定值组或分区(定值组号/区号)定值(地址)EpSynall提供结构化定值管理功能,在EpSynall中,定值管理的模型可以用以下的树结构来描述:在该模型中,用户可以定义单独的管理单元和通道来描述要管理的定值,也可以将定值分散定义到具体管理单元的各个回路中,不管是何种方式,用户必须正确定义每个定值的采集信息(包括通道号、仪表地址(源站址)等等),为了方便EpSynall的管理,用户必须按照一定的规则,为每个定值编号(即设置变量的序号,每个仪表的定值变量(遥设变量)序号必须唯一,不同的仪表序号可以相同)。根据这些信息,在 EpSynall在数据库中,系统根据定义的“遥设”类型变量,自动生成了一张名为“RelaySet”的表,为每个定值,建立了一个包含“十组”定值的记录。系统提供统一的管理界面来完成定值库的管理、定值的召唤和下装服务。本章讲解EpSynall定值管理的相关内容。11.2 遥设变量与“RelaySet”表在EpSynall中,将电力仪表如各种保护单元、FTU/RTU以及各种测控仪表的参数统称为定值,系统提供“遥设”类型变量来描述,并通过规约驱动程序提供的定值(参数)召唤、下装(设置)命令完成有关参数的读取和设置。由于在实际应用中,根据自动化系统运行方式的不同,同一个定值(参数)在不同的运行方式下,取值不一样,因此常常分成若干个组,在EpSynall中,提供一张名为“RelaySet”的表来管理这些组。 不同于遥测、遥脉类型变量,遥设类型变量具有以下几个独特的属性:1、值类型,规定定值的取值类型,包括“浮点类型”、“离散类型”、“整数类型”、“无符号整型”以及“字符串”类型,用于描述各种参数或定值的取值,用户在定义定值类型变量时指定,在运行时刻不能更改。 2、“设定值”属性,用于保存当前准备下装到仪表的值,由系统在调用规约驱动程序的下装命令时,根据调用的后台语言命令(RMSet)函数)的参数,或定值管理界面中“设定值”一栏定义的值自动设置,或从数据库中取得。3、“值”属性,用于保存开机后最近一次从设备召唤到的相关定值的当前值,调用定值管理界面的“召唤功能”将取得设备运行的当前参数设置。 由于不同的仪表采用的通讯规约可能不同,对定值地址的描述也可能不同,为了统一管理,在EpSynall中约定采用变量的“序号”属性来建立与定值地址的一一对应关系,在召唤和设置定值时,EpSynall传递定值变量的设备地址(源站址)、定值序号以及其他操作参数到规约驱动程序中,由驱动程序将这些参数自动转换为设备定值的具体地址。为此,用户在定义一个仪表的定值变量时,必须正确为每个定值编号,在同一个仪表中,不同的定值变量其变量序号必须不同,否则可能引起系统处理的错误。11.3 定值库管理界面及调用方法以上面的模型为基础,系统提供以“通道”为管理单位的内置的定置管理流程和界面,通过函数RMSetManager来激活,该函数的语法如下:RMSetManager (nChannelNo, nDeviceNo, nTimeout,bSelsectFlag,bFreezeFlag,bSwitchFlag)参数:int nChannelNo 要管理定值的通道号,可设置为0,int nDeviceNo 要管理定值的设备地址,可设置为0int nTimeOut 该命令超时discrete bSelsectFlag 是否在定值管理对话框上出现选择按钮 0-不出现 1出现discrete bFreezeFlag 是否在定值管理对话框上出现凝固按钮 0-不出现 1出现discrete bSwitchFlag 是否切换定值区 0-不选择 1选择E 注:该函数将启动系统的定值管理界面,提示用户完成有关定值的交互管理调用此函数后,系统会出现如下的“定值管理”界面:通道名:显示当前显示的定值的变量所属采集通道名称。回路名:显示当前显示的定值的采集设备名称。定值组:EpSynall在数据库中 “RelaySet”表,为每个定值,建立了一个包含“十组”定值的记录,用户在此选择显示的定值组别。起始序号:显示当前显示的遥设变量的起始序号。结束序号:显示当前显示的遥设变量的结束序号。规约附加参数:使用当前规约设置定值,设置此规约是否需要其他辅助参数。召唤:从设备中取得这些遥设变量的定值。点击出现“召唤定值-采集通道(当前设定值采集通道名称)”的界面,如下图所示:Ø 界面下部显示的系统信息,提示用户要进行的操作以及用户进行此操作后的结果。Ø 登录操作员:进行定值召唤前,用户需要进行操作员登录,登录后,界面变成下图所示。Ø 召唤:召唤设备中的此回路遥设变量的定值。Ø 结束:关闭“召唤定值-管理单位名,回路名”的对话框。设置:设置定值。点击出现设置定值对话框“设置定值-采集通道(当前设定值采集通道名称)”的界面。Ø 界面下部显示的系统信息,提示用户要进行的操作以及用户进行此操作后的结果。Ø 登录操作员:进行定值设置前,用户需要进行操作员登录,登录后,界面变成下图所示。Ø 执行:执行设置定值操作,设置的定值为“设定值”中设定的值。Ø 结束:关闭“设置定值-管理单位名,回路名”的对话框。由于不同的通讯规约对设置定值操作的方式可能不同,概括地讲,包括以下几个模式:n 采用无返校的方式设置n 采用“选择/执行”的方式设置n 采用“预设/选择/执行”的方式设置,即常规的下装/凝固模式。为了在操作中体现这种模式,EpSynall提供后台函数“SetRelaySetValueMode(BOOL bPreSetFlag, BOOL bSelectFlag)”函数来改变在定值管理界面中的定值下装模式,在该函数中如果bPreSetFlag=0,bSelectFlag=0则在定值设置界面中将按“采用无返校的方式”下装定值,如果bPreSetFlag=0,bSelectFlag=1,将采用“选择/执行”的方式完成定值的设置,如果“bPreSetFlag=1,bSelectFlag=1”,将按“预设/选择/执行”的模式完成定值的设置,有关的操作过程如下:“选择/执行/撤消”和“执行”的定值下装模式的函数为:int SetRelaySetValueMode(BOOL bAllowPreSet, BOOL bAllowSelect);“预设/选择/执行/撤消” 定值下装模式的函数为:SetRelaySetValueMode(1,1);“选择/执行/撤消” 定值下装模式的函数为:SetRelaySetValueMode(0,1);“执行”定值下装模式的函数为: SetRelaySetValueMode(0,0),系统缺省模式为该模式。值得注意的是,具体采用何种方式,由仪表通讯规约方式确定,请参考有关规约驱动程序的使用说明。系统确省的模式为“无返校设置”11.4 定值库管理函数除了通过系统提供的“定值管理界面”完成定值库的浏览、修改外,系统还提供了函数来辅助定值库的浏览查询、定值库的修改,方便用户建立个性化的定值库管理界面。1 定值库的浏览查询,使用“ChangeRelaySetQuery(char *szComName, int nChannelNo, int nDeviceNo)”函数查询浏览有关通道和设备的定值库内容,具体的使用方法如下:ChangeRelaySetQuery作用:查询定值库内容语法:ChangeRelaySetQuery(char *szComName, int nChannelNo, int nDeviceNo)参数描述: szComName -控件名称; nChannelNo通道号; nDeviceNo 设备号2 装入定值,使用“LoadRelaySet(char *szStationName, char *szSwitchName, char * szTagName, int nGroupNo)”从定值库中装入变量的具体定值,并将其设定为当前显示值;LoadRelaySet作用:将定值库中第nGroupNo组定值设置为相关设备和回路的定值的当前值,系统自动同步网上各在线计算机节点语法:LoadRelaySet (char * szStationName, char *szSwitchName, char *szTagName, int nGroupNo);参数描述: szStationName -要装入变量所在的厂站的名称; szSwitchName遥装入变量所在的回路的名称; szTagName-要装入的变量名称 nGroupNo定值组号(1-10)3 保存定值,使用“SaveRelaySet(char *szStationName, char *szSwitchName, char *szSwitchName, int nGroupNo)”,将定值变量的当前值保存到定值库中的某组中。SaveRelaySet作用:将属于szEqpName和szSwitchName的变量名为szTagName的当前定值保存到定值库中的第nGroupNo组中语法:SaveRelaySet (char * szStationName, char *szSwitchName, char *szTagName, int nGroupNo);参数描述: szStationName -变量所在的厂站的名称; szSwitchName变量所在的回路的名称; szTagName-变量名称,“所有变量”表示转入属于szStationNameszSwitchName的所有越限处理的遥测量 nGroupNo限值编号(1-10)11.5 定值库的召唤与设置函数除了使用标准定值下装和召唤界面外,EpSynall还为无“返校定值”管理模式提供了后台语言函数,用于完成定值的召唤和下装,有关函数的使用说明如下:1 单个定值的设置方法,使用RMSet(char *szStationName, char *szTagName, char *szValue)函数,设置单个定值,具体使用方法如下:RMSet语法:int RMSet(char *szStationName, char *szTagName, char *szValue);参数说明:szStationName 当前厂站或者管理单位名称szTagName为定值的名称,格式为“回路名:变量名”, szValue为设定值的字符串表示。2 成组定值的设置方法,使用RMSetBatch(nChannelNo, nDeviceNo, nStartTagNo, nEndTagNo, szParameter, nTimeout),将连接在通道号为nChannelNo的设备地址为nDeviceNo的设备的变量序号范围为(nStartTagNo, nEndTagNo)(注:包含nStartTagNo和nEndTagNo)的定值点下装到仪表中,下装值为有关遥设变量“设定值”属性的当前取值。具体使用方法如下:RMSetBatch语法:int RMSetBatch(nChannelNo, nDeviceNo, nStartTagNo, nEndTagNo, szParameter, nTimeout);功能:设置特定范围的定值;参数说明:nChannelNo 通道号nDeviceNo设备地址nStartTagNo变量起始序号nEndTagNo变量终止序号nTimeOut超时备注:1. 当nStartTagNo与nEndTagNo取值相同时,则设置单个定值,如果都为-1则设置所有定值。2. 在调用改函数前,需要对相关定值的“设定值”属性赋上要下装的定值。3. 具体参数的使用方法,请参考相关规约的使用说明3、 成组定值的召唤方法,使用RMCallBatch(nChannelNo, nDeviceNo, nStartTagNo, nEndTagNo, szParameter, nTimeout),召唤连接在通道号为nChannelNo的设备地址为nDeviceNo的变量序号范围为(nStartTagNo, nEndTagNo)(注:包含nStartTagNo和nEndTagNo)的定值点的当前设置。具体使用方法如下: RMCallBatch语法:int RMCallBatch(nChannelNo, nDeviceNo, nStartTagNo, nEndTagNo, szParameter, nTimeout);功能:召唤特定范围的定值。参数说明:nChannelNo 通道号nDeviceNo设备地址nStartTagNo变量起始序号nEndTagNo变量终止序号nTimeOut超时返回值:整型备注:1. 当nStartTagNo与nEndTagNo取值相同时,则召唤单个定值,如果都为-1则召唤所有定值。2. 具体参数的使用方法,请参考相关规约的使用说明。4、 单个定值的召唤方法,使用RMCallSetValue(szEqpName,szPointName),具体使用方法如下:RMCallSetValue此函数用于召唤单个定值语法:RMCallSetValue(szEqpName,szPointName)参数:char * szEqpName遥设要执行的厂站名char * szPointName 遥设点名(含开关名,如461:遥设);返回值:返回被召唤的定值11.6 定值管理中常见问题在使用EpSynall定值管理中常见的问题有:1 在定值管理界面中,“设备选项”中未见期望的设备:出现这种现象的原因可能为:1). 没有定义通道2). 在通道中没有定义设备3). 选用的通讯规约类型不支持设备定义,如CDT规约2 在定值管理界面中,“定值浏览表格”中未见出现期望的定值项:出现这种现象的原因可能为:1). 没有正确定义相关设备的遥设类型变量,如没有指定遥设变量的通道号、设备地址(源站址),没有正确为遥设变量编号等等2). 在EpSynall的定值表“RelaySet”表中没有该定值项的记录,造成这种现象的原因可能为:(a)没有正确定义相关设备的遥设类型变量,(b)遥设变量的“通道号、设备地址(源站址)和序号”与其它遥设变量相同3 召唤和设置定值不成功出现这种现象的原因可能为:1). 没有正确定义相关设备的遥设类型变量的EpSynall地址(通道号、设备地址(源站址),变量序号)与规约通讯地址的对应关系;2). 采用的通讯规约不支持相关功能3). 其它原因,如通讯失败,通道误码率高等等4 设置定值的操作模式不是期望的方式,或期望的模式不能正确运行出现这种现象的原因可能为:1). 没有正确调用SetRelaySetValueMode;2). 采用的通讯规约不支持相关功能