第三章 传统电力规约向IEC 61850转化方法的研究
3.1方案的提出
在新的网络化国际规约IEC 61850出现的今天,如何将采用旧规约的通信系统纳入新型网络化远动系统体系结构中,并保持原有系统结构和设备不变的情况下使其与最新的国际标准接轨,值得我们进行深入研究。
当前的远动通信系统,调度中心都不直接和变电站设备进行通信。变电站设备往往先与RTU相连,RTU再采用远动通信规约与控制中心的前置机通信。然而将来的远动的无缝通信体系机构中,控制中心采用IEC 61850规约通过广域网和变电站中的IED直接相连。对现有变电站的所有通信设备进行改造,则牵涉到变电站内相应设备的硬件和软件的替换。这种方法相当于要把变电站内大部分能正常工作的设备都替换下来,代价高昂,对现有资源是一种极大的浪费。为此,我们认为在传统RTU外加一规约转换网关接入将来无缝远动体系是一种不错的选择。IEC 60870-5-101和CDT规约在我国已经获得较长时间的推广,他们具有简单可靠等优点,在我国已经获得广泛的应用,在今后的一段时间内将继续得到个制造厂商和电力企业的支持。我们选择这两种规约进行研究,分析其特点及如何向具有面向对象特性通信规约IEC 61850的转变。图3-1说明了采用IEC 60870-5-101和CDT远动通信规约变电站纳入无缝远动通信体系结构的连接方式。
OSI 1~3层网络(路由器,例如IP)IEC 6185061850规约IEC 61850网关101/CDT规约101/CDT规约RTU控制中心IEDIED图3-1 101和CDT远动规约的无缝远动通信体系接入图
16
101规约和CDT规约同IEC 61850的转换工作主要在协议转换网关中完成。网关一方面充当101规约和CDT规约主站的角色,它收集变电站上传的数据,并把数据存储在网关中。另一方面,对IEC 61850规约来说,网关是一个服务器,它把从变电站RTU上传的数据按IEC 61850的方式组织信息模型,并为调度中心——客户端提供标准的IEC 61850服务。
本课题的主要工作就是设计这个转换网关。这种转换工作主要在IED代理中完成。从控制中心看来,代理完全采用了IEC 61850的结构体系,等同于一个采用IEC 61850通信规约的IED。同时运用IEC 61850中定义的变电站配置语言对上述网关的配置性能进行描述[26]。
解析遥测遥信…映射配置说明报文数据串口转换网关IEC61850信息模型XML文档
图3-2 CDT规约向IEC61850转换流程
如图3-2所示,其转换过程可分为以下几步:
1)101/CDT报文数据通过串口通信解析成遥测遥信等变电站信息
2)根据IEC 61850标准中的定义以及变电站信息,建立101/CDT规约向IEC61850
转换网关信息模型实例
3)第一步解析的变电站信息向转换网关模型实例所对应得数据对象映射及服务映
射
4)用XML文档对转换网关的配置性能进行描述
3.2串口通信
串行通信[27]是指一条信息的各位数据被逐位按顺序传送的通信方式。串行通信的特点是:数据位传送,按位顺序进行,最少只需一根传输线即可完成,成本低但速度慢。串行通信的距离可以从几米到几千米。
串行通信接口的基本任务有:实现数据格式化;进行串并转化;控制数据传输速率;进行错误检测等等。
串口通信有多种实现方法,仅在WINDOWS操作系统中,就可以利用MSComm控
17
件、WINDOWS API、MFC的CFile类等来实现串口通讯。但是MSComm控件不适于多线程,CFile类并未完全封装对串口的操作。选用WINDOWS API实现串口程序,具有灵活、通用、而且使用方便等优点。
WIN32串口API有:CreateFile()创建串口,GetCommState()获得缺省串口设备状态,SetCommState()设置串口设备状态,WriteFile()发出数据,ReadFile()读入数据。
Microsoft Windows是目前PC机上最流行的操作系统,它支持基于线程的抢先式多任务处理,程序CPU的占用时间由系统来决定。多任务指的是系统可以同时运行多个进程,每个进程又可以同时执行多个线程。线程是操作系统分配CPU时间的基本实体,每个线程占用的CPU时间由系统分配,系统不停的在线程之间切换。进程中的线程共享进程的虚拟地址空间,可以访问进程的资源,处于并行执行状态。运用多线程技术实现串口通信,优点在于程序对接收数据具有自主觉察能力,一旦辅助的通信线程查询到数据已经发送到串行口上,辅助线程自动接收数据后,向主线程发送数据接收到的消息,应用程序可根据该消息来处理通信串口传送过来的数据,并且采用通信监视线程还不占用CPU时间。
3.3变电站和馈线设备的基本通信结构 3.3.1 信息建模原理
变电站自动化系统的信息交换机制主要依赖于良好的信息模型定义。这些信息模型和建模的方法是IEC61850的核心内容。图3-3展示了IEC61850的建模方法[28]。
图3-3 信息模型建立方法图
18
虚拟(Virtualization)是IEC 61850建模的主要方法。标准定义了信息模型和信息模型交换信息的方式。信息的交换是在抽象模型之间进行的,这些抽象模型都是现实设备通过虚拟化而生成的模型。在上图中,变电站中的断路器,通过虚拟建模,在抽象模型中对应一个逻辑节点XCBR1,若干逻辑节点可以组成一个逻辑设备,例如间隔。根据逻辑节点要实现的功能,在逻辑节点内部包含了系列的数据,如XCBR中表示断路器开关位置的POS,这些数据有自己的数据属性和数据服务。通常这些数据属性表达了系统的主要信息,信息通过标准定义的专有服务进行交换。这些服务被定义成抽象通信服务,具体传输信息时,需要将抽象服务映射到具体通信协议栈。
逻辑设备、逻辑节点以及它们包含的数据必须经过配置工具进行配置,配置的目的是使它们能够与实际的信息关联起来,使数据的值拥有实际的含义。由此得出结论:逻辑节点以及逻辑节点内部包含的数据是变电站自动化系统中信息描述和交换的关键[29]。
下面按照从下至上的顺序逐步介绍IEC6185O的建模过程。
3.3.2 逻辑节点和数据模型
IEC 61850根据电力系统应用的需要定义了92个逻辑节点,用于存储数据。按照逻辑节点所涉及的功能领域不同,规约将所有逻辑节点进行了分组,不同类型逻辑节点的开头字母有区别。如下表:
表3-1 逻辑节点组表
逻辑节点组
System logical nodes Protection functions
Protection related functions Supervisory control Generic references Interfacing and archiving Automatic control
Metering and measurement Sensors and monitoring Switchgear
Instrument transformer Power transformer
Further power system equipment
19
逻辑节点数目
3 28 10 5 3 4 4 8 4 2 2 4 15
逻辑节点开头字母
L P R C G I A M S X T Y Z
一个完整的断路器逻辑节点模型如表3-2所示。逻辑节点XCBR(断路器)包含若干数据,图中Pos是关于断路器位置的数据,而Mode表示断路器的运行方式,例如:投入运行、闭锁、测试、测试或闭锁、切除。这些数据的具体含义在标准中有详细的描述。XCBR逻辑节点是对断路器完整的建模,它包含了断路器所有的网络可视信息。最右边一列数据表明这些数据在逻辑节点是否是必需的,M(Mandatory)表示该数据在逻辑节点中必须出现,而O(Optional)表示该数据是可选的,即,可根据具体的需要来确定逻辑节点实例是否包含该数据。标准规定,逻辑节点实例必须包含所有该类型逻辑节点M型的数据。也就是说一个XCBR逻辑节点实例必须至少包含Mod、Beh、Health、NamPlt、Loc、OpCnt、Pos、BlkOpn、BlkCls和CBOpCap数据。
表3-2 XCBR逻辑节点模型定义
XCBR class
Attribute Name
Attr.Type Explanation T M/O
Shall be inherited from Logical-Node Class(see IEC
LNName 61850-7-2) Data
Common Logical Node Information
Mod INC Mode Beh INS Behavior Health INS Health NamPlt LPL Name plate
Local operation (local means without substation automation Loc SPS communication,hardwired direct control EEHealth EEName Controls
Pos DPC Switch position BlkOpn SPC Block opening BlkCls SPC Block closing ChaMotEna Metered Values SumSwARs Status Information CBOpCap POWCap MaxOpCap
INS INS INS
Circuit breaker operating capability Point On Wave Switching capacility
Circuit breaker operating capability when fully charged
M O O
BCR
Sum of Switched Amperes,resetable
O
SPC
Charge motor enabled
M M M O
INS DPL
External equipment health External equipment name plate
M M M M M O O
M OpCnt INS Operation counter
20
数据是服务访问的基本元素,代表位于变电站自动化设备中应用的有用信息,它是由一个或多个数据项构成的结构,用以描述设备信息,内含数据属性。IEC 61850总结电力系统中信息类型,如状态信息、测量信息、可控状态信息以及描述信息,定义了29个公共数据类。IEC 61850定义的几百种数据对象都是由公共数据类派生出来的对象实体。上图中Pos数据的数据类型是DPC类型(可控双点类型),其定义如表3-3所示。其中数据属性ctlVal表示对断路器的控制信息,由控制中心发送命令更改;stVal表示断路器的实际状态,它监视实际运行中断路器的位置,并随着断路器的位置改变而改变。图中最左侧一列是数据属性名,数据属性名定义了变电站设备的标准化语义,它们由缩写词构成,在规约中有详细的解释。Attribute Type是数据属性的类型,它们都是基本数据类型,例如,布尔型、整型、时标型和品质型等等。FC是功能限制,ST表示状态信息,只能读,CO表示控制信息,可以写;TrgOp是触发条件,说明报告产生的条件:dchg是数据改变的时候产生报告,而qchg是在数据品质变化的时候产生报告。Value/Value Range是对Type的进一步说明,表明属性值的范围。最右侧列数据表明该数据中是否必须包含该数据属性,O(Optional)是可选,M(Mandatory)表示必须包含,C类型是有条件选择,如AC _CO_M表示如果支持控制则必需有此属性。IEC 61850用相似的方法定义了其他28个公共数据类。
表3-3 DPC公共数据类模型定义
DPC class Attribute Name DataAttribute
control and status
cltVal BOOLEAN operTm TimeStamp origin Originator ctlNum INT8U CO off(FALSE)|on(TRUE) AC_CO_M CO CO,STCO,ST
AC_CO_O AC_CO_O AC_CO_O M
M M AC_CO_O PICS_SUBST PICS_SUBST PICS_SUBST PICS_SUBST 0..255
intermediate-state|off|on|
bad-state
Attribute Type
FC
TrgOp
Value/Value Range
M/O/C
DataName Inherited from Data Class(see IEC 61850-7-2)
stVal CODED ENUM ST dchgq Quality stSeld BOOLEAN subEna BOOLEAN subVal CODED ENUM subQ Quality ST qchg ST dchg
t TimeStamp ST
substitution SV
intermediate-state|off|on|
SV bad-state SV
21
subID VISIBLE STRING64 SV
configuration,description and extension
pulseConfig sboTimeout d dU cdcNs cdcName dataNs
PulseConfig CF
CF AC_CO_O M
AC_CO_O O O AC_DLNDA_
M AC_DLNDA_
M AC_DLN_M ctlModel CtlModels INT32 CF VISIBLE STRING255 UNICODE STRING255 VISIBLE STRING255 VISIBLE STRING255 VISIBLE STRING255
DC Text DC EX EX EX
3.3.3 逻辑设备模型
逻辑设备是为了通信的目的而引入的一个抽象概念,它是实际物理设备的抽象,主要由逻辑节点及相关服务构成。图3-4为逻辑设备构成的示例。
Logical Device nameplate,healthReporting and Logging GOOSE/GSSE Sampled measured values Setting GroupLogical Node Control Substitution Get/Set Dir/Definitio Data Data Set ReportGOOSEGSSESMVActivate 图3-4 逻辑设备构成示例
当用逻辑设备构建网关(或代理)时,从功能角度看它是透明的。逻辑设备可以存在于它所表征的物理设备上,也可以存在于其他代理设备上。逻辑设备还包含了有关物理设备的信息,这个物理设备可以是逻辑设备的宿主,也可以是逻辑设备所控制的外部设备。逻辑设备同物理设备的关系如图3-5所示。图中所示物理设备
22
A包含2个逻辑设备LD1和LD2,每个逻辑设备均包含两个系统逻辑节点LPHD和LLN0,LPHD用于描述物理设备本身信息,LLN0用于描述逻辑设备本身信息。
PHD “A” LD 1 LLN0 LD specific LPHD PHD specific LN LD 2 LNLLN0-逻辑节点0,表示逻辑设备特定信息 LPHD-物理设备逻辑节点,表示物理设备特定信息 LN … EE specific name plate, …LN specific name plate, … External Equipment (EE) LLN0 LPHD 箭头含义: 始点:信息所在实体PHD “B” LD5 LD6 始点:信息所属实体 图3-5逻辑设备与LLN0/LPHD
3.3.4抽象通信服务模型
IEC 61850标准采用面向对象技术,定义了基于客户/服务器结构数据模型。每个IED包含一个和多个服务器,每个服务器本身又包含一个多个逻辑设备。逻辑设备包含逻辑节点,逻辑节点包含数据。数据则是由数据属性构成的公用数据类的命名实例。从通信而言,IED同时也扮演客户的角色。任何一个客户可以通过抽象通信服务接口和服务器通信可访问数据,如图3-6所示[28][30][31]。
23
物理设备 物理设备 客户角色 (client role) 服务器 角色 数据 与 控制 服务器 角色 数据 与 控制 物理设备 服务器客户角色 (client role)角色 数据 与 控制 图3-6客户和服务器角色
客户可以通过服务器提供的GetServerDirectory收集服务器中的逻辑设备名字和文件名字,通过GetLogicalDeviceDirectory收集每个逻辑装置中逻辑节点名字,通过GetLogicalNodeDirectory收集每个逻辑节点中的数据名字,通过GetDataDirectory收集每个数据中的数据属性名字。通过服务器提供的这一系列服务,为客户提供了直接访问现场设备的方法,对于各个制造厂的设备客户都能用同一种方法进行访问,从而建立起自己完整的分层数据模型。
在电力生产中,控制中心除了要求能对IED静态数据模型进行查询,更多的时候,是一种实时数据的传输,如变化数据上传、控制命令下发等等,IEC 61850针对实时数据传输定义了报告(Report)、控制、记录(Logging)等相关服务。
报告采用的是主动上传方式,规约中定义了三种触发方式:数据改变、数据刷新、品质变化,以适应不同客户的要求。报告分为带缓冲的和不带缓冲的两种,带缓冲的报告由BRCB(Buffer-Report-Control-Block)控制,提供Report、GetBRCBValue、SetBRCBValue服务;不带缓冲的报告由URCB(Unbuffer-Report -Control-Block)控制,提供Report、GetURCBValue、SetURCBValue服务。
控制信息的发布,在电力系统中将触发变电站内设备动作,引起系统运行方式发生变化。控制命令的发送错误,其后果将非常严重,轻则破坏电力系统的稳定,重则导致系统解列,大范围停电。因此,控制命令的传输具有很高的可靠性要求。IEC61850针对控制定义了Select/SelectWithValue、Cancel、CommandTermination服务,通过这些服务定义了四种控制模型:常规安全控制、常规安全的操作前选择控制、增强安全的直接控制、增强安全的操作之前选择控制。其中常规安全控制由
24
Operate和TimeActivatedOperate服务组成;常规安全的操作前选择控制采用了Select、Cancel、Operate和TimeActivatedOperate服务;增强安全的直接控制采用Operate、TimeActivatedOperate和CommandTerminal服务;增强安全的操作之前选择控制采用SelectWithValue、Cancel、Operate、TimeActivatedOperate、CommandTermination服务。不同的控制模型适应不同的安全等级,控制的实现过程也不尽相同。
数据记录方式由LCB控制,提供的服务有:GetLCBValue、SetLCBValue,Log实体提供的服务有:QueryLogByTime、QueryLogByEntry、GetLogStatusValue。在将来的分布式电力通信系统中,这些服务为控制中心要求智能设备(IED)以不同方式记录数据和对智能设备历史数据的查询提供了访问方法。
3.3.5具体应用方法
上面介绍的主要内容实际上是对IEC61850中定义的信息模型或者称为类的描述,实际工程中使用的都是这些类对象,又称实例。对象与类的区别主要在于类只是定义了一种类型,一种结构。对象对类所定义的这些结构赋予了实际内容。
IEC6185O对象引用体现了数据自描述的特性。区别于对象名称,对象引用是对象用于通信的实际名称。如图3-7。
MyLD/ XCBR .MOOD .stVal
逻辑设备(LD)的名称一般是按照IEC6185O-6部分中SCL语言的层次关系确定的,逻辑设备和逻辑设备的父元素组成逻辑设备的名称,IEC61850对逻辑设备的名称定义没有明确的规定。逻辑节点与逻辑设备之间必须用“/”来连接,逻辑节点
25
逻辑 设备名
逻辑 节点名
数据 名称
数据 属性名
逻辑节点引用数据引用 数据属性引用 图3-7 对象命名实例
的名称必须包含IEC6185O-7中定义的兼容逻辑节点的名称,可以在该名称前后分别加前缀和后缀。逻辑节点的引用包括逻辑设备和逻辑节点两部分,指明了逻辑节点的路径。同理,数据和数据属性的引用包括其父元素的所有名称。
功能限制FC(Function Constraint)在访问信息模型内部数据时起到非常重要的作用。系统根据FC的属性决定数据的访问权限。
IEC61850的信息模型在网络传输中都是以引用的形式进行的,从上图2.27中可以看出,对象引用可以比较完整的表达出对象的信息。这也是标准数据自描述特性的体现。
3.4 传统电力规约向IEC61850的过渡
遵循IEC 61850标准的新型远动系统网络结构中,本文通过增加通信服务代理器(即协议转换网关)来实现传统远动规约向IEC 61850的转换。传统规约与IEC 61850的转换工作主要在通信代理中完成,它一方面充当传统规约中主站的角色,另一方面,它又是IEC 61850规约中的服务器,为作为客户端的调度中心提供服务。代理通过和变电站RTU通信,把传统规约数据和服务转换为IEC61850数据模型和服务,下面对映射转换方法进行研究。
3.4.1 信息模型映射
在通信服务代理器中,按照IEC 61850的定义,变电站端设备信息通过一个或多个逻辑设备、逻辑节点和数据类来进行定义,间隔可对应为一个逻辑节点,间隔之上的电压等级则对应为一个逻辑设备,例如可用逻辑设备SSFuYuan_110表示釜园变电站110kv电压等级。下一层的数据对象如位置信息,可采用SPC类型的公共数据类,SPC公共数据类不仅包含stVal数据性(表示开关的状态信息),还包含ctlVal数据属性(表示对开关状态的控制信息),体现了对开关状态的监视以及控制。代理对变电站设备控制功能的实现,通过将IEC 61850定义的信息模型映射到相应底层通信规约,如101或者CDT规约。
3.4.2 服务映射
(1)服务和基本的建模原理的映射
在IEC 60870-101/104(103)中定义的服务和IEC 61850的ACSI的对应关系如表3-4所示。
26
表3-4 服务和基本建模原理映射
101/104[103]中定义的服务 站起动(103中使用)
循环数据传送(在实际中不再使用) 读过程 自发传送
IEC 61850中相应服务
部分在关联控制中实现,用作远方复位的数据类应在LLN0中定义
报告;触发选项为“cyclic-integrity”(可以在任何数据类的数据集) Get服务
报告;触发选项为“data-change”、“filtered-changed” 或“quality-change”
如果控制中心对数据库更新和SOE存档记录需要不同的途径,那么可以通过两个报告实现 报告;触发选项为
“General-Interrogation” 在SCSM中指定时间同步方法 增强安全的控制模型
报告;触发选项为“filtered-change”以及相关的公共数据类“BCR”的配置属性
自发两次传送 站总查询
时间同步(103中使用) 命令传送(103中使用) 电能累计量传送
参数加载/激活(死区,平滑系数,包含在公共数据类“MV”的配置属性中(平滑系数上下限) 除外),激活需要验证 测试过程(在通信单元和应用程序独立时,用来验证应用程序是否还在运行)
文件传输(103中传输扰动记录时需增加语义) 后台扫面 传输延时的获取 103特定的服务
生成标志为“Test”的帧用来测试通用服务
控制服务和报告的数据的品质属性支持测试功能 取/设置目录服务、数据集和报告模型 可以由LN0的“Health”数据对象来实现 文件传输服务;语义正在讨论中。有关扰动记录的LN在IEC 61850-7-4中定义
报告;触发选项为“cyclic-integrity” 取决于SCSM中的时间同步
(2)IEC 60870-5应用服务数据单元ASDU的映射
有关IEC 60870-5-101/104(103)的ASDU到IEC 61850的映射如表3-5所示。
表 3-5 60870-5-101/104 ASDU映射
IEC 60870-5中定义的ASDU 类型标识符 可变结构限定词 传送原因 发信方地址
应用服务数据单元公共地址
IEC 61850-7-x/8-x
隐含定义
每个元素的信息类型作为MMS/ASN.1的标记传送 隐含定义
包含原因/服务参数 关联/服务参数(发信方) LD、LN
27
功能类型 信息序号
信息元素(集)(数据对象/品质描述比特位) 时标
数据、属性(命名原理)
数据属性(Val、q) 数据属性(t)
这样从控制中心看来,代理完全采用了IEC 61850的体系结构,它等同于一个遵循IEC 61850通信规约的IED,易于实现同调度中心以及其它变电站的互联。
3.5配置文档说明
在IEC 61850-6中定义了变电站配置描述语言SCL[32] (Substation ConLfigtiration description Language),它主要基于可扩展标记语言XML 1 .0(eXtensible Markup Language)。SCL用来描述通信相关的IED配置和参数、通信系统配置、开关站结构及它们之间的关系。主要目的是在不同厂家的IED配置工具和系统配置工具之间提供一种兼容的方式,实现可共同使用的通信系统配置数据的交换。
Substation11Voltage level1111Bay11Ptimary device1SubdevicePhaseTerminal1CBRDISVTR0..*ConNode11..*LNode111..*DateIED111AccessPoint1..*1..*10.10.10.1ServerRouterClock11..*LdeviceFunctional/substation structureProduct/IED structureCommunication structureSubnetwork 图3-8 SCL对象模型
SCL的UML对象模型如图3-8所示,该图从建模的角度看是不完整的,它仅限于在SCL中使用的那些具体的数据对象,而且也没有包括数据对象以下的数据属性。从图中可以看出,对象模型主要包含三个基本的对象层:
1) 变电站:描述了开关站设备(过程设备)及它们的连接,设备和功能的指定,是按照IEC 61346的功能结构进行构造的。
28
2) 产品(Product):代表所有SAS产品相关的对象,如IED、逻辑节点等; 3) 通信:包括通信相关的对象类型,如子网、访问点,并描述各IED之间的通信连接,间接的描述逻辑节点间客户/服务器的关系。
IEC 61850-6在定义SCL语法时也是按照以上三层来描述的,一个完整的SCL
文件可分为两个基本部分,首部(header)和内容(content),首部用来标识一个SCL配置文件和它的版本号;内容主要包括变电站描述部分、IED描述部分和通信系统描述部分:
l)变电站部分,主要来描述一个变电站的功能结构,标识主设备及它们之间的电气连接。如果需要描述整个电力系统网络,就可能需要这样几个变电站节。这部分主要描述了变电站内电压等级、间隔、主设备、子设备以及变电站功能逻辑节点,一个简单的例子如下:
该例子描述了一个变电站有一个间隔E1Q1,该间隔包括一个断路器QA1和一个隔离开关QB1,它们在电气上都连接在连接点Ll。一个类型为CSWI(开关控制逻辑节点)的逻辑节点分别控制每一个开关,没有定义与IED的链接。
2)IED部分,描述了一个IED的访问点、逻辑设备和实例化的逻辑节点。另外还定义了IED提供的通信服务、逻辑节点类型及数据对象实例。
一个IED的例子如下:
29
例子中的IED“E1Q1KA3”的网络访问点为“S1”,它有一个服务器和一个逻辑设备,该逻辑设备包含LNO和PDIS(距离保护)。另外还定义了预建立的与IED“AA1KA1”、逻辑设备“LD1”、逻辑节点“IHMIl”的关联。
3)通信系统部分,描述了在逻辑节点之间通过逻辑总线和IED访问点可能的通信连接路径,下面的SCL表示了包含一个子网“XW1”的通信网络,两个IED通过它们的访问点“S1”与该子网相连,其中的物理连接和地址类型仅作为一个例子:
1 0.0.0.12
为了区分在不同工具间交换的数据类型,定义了两种不同的配置描述文件,它们用不同的文件扩展名来区别:IED配置工具到系统配置工具的数据交换文件的扩展名为.ICD,用作IED配置的描述;系统配置工具到IED配置工具的数据交换文件的扩展名为.SCD,用作系统配置的描述。
3.6小结
本章对传统电力规约向IEC 61850转化的理论进行了研究分析。首先提出了规约转换的方案,然后根据转换方案所涉及的理论知识进行详细的分析。这些知识包括串口通信、信息建模、抽象通信服务、配置文档说明等,同时说明其实现方法。最后对传统电力规约向IEC61850的过渡理论进行了说明,主要是信息模型映射和服务映射。
30
第四章 基于IEC 61850的规约转换的设计
4.1概述
根据规约转换理论我们知道帧数据通过串口通信解析成相应的远动信息,这些远动信息概括起来,可以分为四类:遥测、遥信、遥控、遥调。
遥测即远程测量:应用远程通信技术,传输被测变量的值。遥测主要包括以下内容[33]:
1) 35kv及以上线路及旁路断路器的有功功率(或电流)及有功电能量。 2) 35kv及以上联络线的双向有功电能量,必要时测无功功率。
3) 三绕组变压器两侧有功功率、有功电能、电流及第三侧电流,二绕组变压
器一侧的有功功率、有功电能、电流。 4) 计量分界点的变压器应增测无功功率。
5) 各级母线电压(小电流接地系统应测3个相电压、而大电流接地系统只测
一个相电压)。
6) 所用变压器的低压侧电压。 7) 直流母线电压。 8) 10kv线路电流。
9) 母线分段、母线断路器电流。
10) 主变压器有载分接开关位置(当用遥测方式处理时)。 11) 主变压器温度。
遥信即远程指示,远程信号:对诸如告警情况、开关位置或阀门位置这样的状态信息的远程监视。主要包括以下这些内容:
1) 所有断路器位置信号。
2) 反映运行方式的隔离开关的位置信号。 3) 有载调节主变压器分接头的位置信号。 4) 变电所事故总信号。
5) 35kv及以上线路及旁路主保护信号和重合闸动作信号。 6) 母线保护动作信号。 7) 主变压器保护动作信号。 8) 低频减负动作信号。 9) 小电流接地系统接地信号。 10) 直流系统异常信号。
11) 断路器控制回路断线总信号。
31
12) 断路器操作机构故障总信号。
13) 继电保护及自动装置电源中断总信号。 14) 变压器冷却系统故障信号。 15) 变压器油温过高信号。 16) 轻瓦斯动作信号。
17) 继电保护、故障录波装置故障总信号。 18) 距离保护闭锁总信号。 19) 高频保护收信总信号。 20) 遥控操作电源消失信号。
21) 远动及自动装置用UPS交流电源消失信号。 22) 通信系统电源中断信号。 23) TV断线信号。 24) 消防及保卫信号。
遥控即远程命令:应用远程通信技术,使运行设备的状态发生变化。主要包括以下一些内容:
1) 变电所全部断路器及能遥控的隔离开关。 2) 可进行电控的主变压器中性点接地刀闸。 3) 高频自发信起动。 4) 距离保护闭锁复归。
遥调即远程调节:对具有两个以上状态的运行设备进行控制的远程命令,主要包括下面这些内容:
1) 有载调压主变压器分接头位置调节 2) 消弧线圈抽头位置调节
对于远动信息的分析,在规约转换的设计中是至关重要的。
根据现场传过来的远动信息,结合IEC 61850中定义的信息模型,建立符合IEC 61850标准的对象实例,同时建立映射关系。最后建立此变电站转换网关的配置文档,并交付下层通讯使用。
这就是规约转换设计的总过程。
下面以一简单变电站(命名为FY)为例,并以CDT规约作为传统规约的代表详细说明其规约转换的设计过程。其变电站配置图如下:
32
112.2KV00110km间隔11B有功P无功Q电流AIDO1过流保护变压器差动保护变压器油温变压器油温过高信号变压器分接头调节变压器重瓦斯有功P无功Q电流A距离保护间隔2UEO2002IEO210.0kV间隔3004有功P电流I距离保护差动保护005UEO3IEO3有功P电流I距离保护差动保护UEO1IEO1间隔4间隔5 图4-1 变电站配置图
由现场传过来的遥测,遥信表分别表4-1和表4-2所示。
表4-1 FY变电站遥测表
序号 0 1 2 3 4 5 6 7 8 9 10 11 12 13
标识 FREN-F1 FREN-F2 1B110-P 1B110-Q
遥测值 +50.82 +48.99 +27.12 +12.09
生数据上限 生数据下限 +2047.0 +2047.0 +2047.0 +2047.0 +2047.0 +2047.0 +2047.0 +2047.0 +2047.0 +2047.0 +2047.0 +2047.0 +2047.0 +2047.0
33
工程值上限 +52.0 +52.0 +114.0 +114.0 +600.0 +600.0 +51.9 +51.9 +3000.0 +12.0 +12.0 +12.0 +12.0 +125.0
-2047.0 -2047.0 -2047.0 -2047.0 -2047.0 -2047.0 -2047.0 -2047.0 -2047.0 -2047.0 -2047.0 -2047.0 -2047.0 -2047.0
1B110-Ia +155.351B110-Ic +151.591B10-P 1B10-Q 1B10-I M01-Ua M01-Ub M01-Uc M01-Uab
-26.90 -8.52 +1631.1+5.91 +5.74 +5.86 +10.05
WENDU-T1 +50.26
14 15 16 17 18
FT-FT1 004-P 004-I 005-P 005-I
+9.0 +1.85 +123.99+1.59 +98.19
+2047.0 +2047.0 +2047.0 +2047.0 +2047.0
-2047.0 -2047.0 -2047.0 -2047.0 -2047.0
+2047.0 +10.4 +600.0 +10.4 +600.0
表4-2 FY变电站遥信表
序号 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
标识 ZXHSGZX KG001 KG002 KG004 KG005 ZHBIZWS ZHBICD ZHBIFXGL ZHBYWBJ M01CHZ M01GL 002JULI 004JULI 004CD 005JULI 005CD
状态 - + + + + - - - - - - - - - - -
正极性
+ + + + + + + + + + + + + + + +
遥控 YES YES YES YES YES
主变重瓦斯 主变差动 主变负序过流 烟雾报警 10KV母线重合闸 10KV母线过流 距离保护
差动保护
说明
事故总信号
4.2信息模型建立 4.2.1逻辑设备建模
在标准中对于逻辑设备的模型没有做规范,因此在具体实现的时候可以有较大的灵活性。但是考虑到控制中心往往对变电站以间隔为单位进行监控,因此我们把一个间隔内的远动数据划分到同一个逻辑设备中是比较合理的。所以如图3所示整个配置图可看成一个服务器,根据间隔下面划分5个逻辑设备,分别对应间隔一至间隔五。逻辑设备下面有划分逻辑节点,其配置如表4-3所示。点表中的数据属于整个变电站的,而不属于各个间隔的,新建一个逻辑设备(如LDFY),把数据包括其中。这样就可以使建立的模型包含变电站所有信息,可方便的对变电站进行监视、控制和管理。
34
表4-3 逻辑节点配置
LD1(间隔1) MMXU(测量单元),TCTR(电流互感器),CALH(报警),GGIO(通
用I/O),XCBR(断路器),YPTR(变压器), YLTC(分接头),CSWI(开关控制),PIOC(瞬时过流),PDIF(差动保护),XSWILD2(间隔2) MMXU,TCTR,XCBR,PDIS(距离保护),CSWI, XSWI LD3(间隔3) TVTR(电压互感器),RREC(重合闸),PIOC,MMXU LD4(间隔4) MMXU,PDIS,PDIF,CSWI,XCBR, XSWI LD5(间隔5) MMXU,PDIS,PDIF,CSWI,XCBR ,XSWI LDFY MMXU,GGIO
4.2.2逻辑节点和数据建模
从配置图和点表可知变电站的遥测信息,这些遥测信息为对于电流电压大小这类反映电网潮流的测量值。IEC 61850定义的逻辑节点MMXU与其相对应。MMXU的定义如表4-4所示,它包含了有功功率和、无功功率和、总视在功率和、平均功率因数、频率、相间电压、相电压、相电流、单相有功功率、单相无功功率、单相视在功率、单相功率因数等数据,是电网运行信息测量值的集合。不同线路或者变压器处的电流电压测量值,对应着MMXU逻辑节点不同的实例。IEC 61850规约具有自描述性,服务器可以用MMXU的NamPlt(name plate名牌)数据及各个数据的d(description)属性描述逻辑节点和数据的相关信息,如:这个逻辑节点来自何处、数据对象对应哪条线路等。这种自描述性方便控制中心理解数据的含义以及进行一些配置管理。而对于遥测中的一些电能量计量值,IEC 61850中有专门定义的计量逻辑节点——MMTR。它类似于MMXU逻辑节点,各种累计值都可以映射到相应的数据上去。至于那些与设备相关的一些测量值,它们的映射必须先找到与设备相对应的逻辑节点,再映射到相应的数据。如变压器温度对应着逻辑节点YPTR的HPTmp(Winding hotspot temperature)数据。表中M表示必选项,O表示可选项。在建立实例过程中,根据变电站具体情况进行选择。
表4-4测量单元逻辑节点模型
MMXU class
Attribute
Name LNName Data
Attr.Type
Explanation
Shall be inherited from Logical-Node Class
T
M/O
Common Logical Node Information
EEHealth
INS
LN shall inherit all Mandatory Data from Common Logical Node Class External equipment health
M O
Measured Values 35
TotW TotVAr TotVA TotPF Hz PPV PhV A W Var VA PF Z
MV MV MV MV MV DEL WYE WYE WYE WYE WYE WYE WYE
Total Active Power(Total P) Total Reactive Power(Total Q) Total Apparent Power(Total S) Average Power factor(Total PF) Frequency
Phase to phase voltages(VL1VL2,…) Phase to ground voltages(VL1ER,…) Phase current
Phase active power(P) Phase reactive power(Q) Phase apparent power(S) Phase power factor Phase Impedance
O O O O O O O O O O O O O
图4-1所示变电站间隔1包括有功、无功、电流,可以建立逻辑节点MMXU实例如表4-5所示。
表4-5测量单元逻辑节点实例
MMXU1(测量单元逻辑节点实例) 属性名称
属性类型CDC
说明
数据对象(Data Object)
公共逻辑节点信息(Common Logical Information)
继承公共逻辑节点类中所有必须的数据对象Mode、Beh、Health、NamPlt,具体实例省略 有功功率之和 无功功率之和 相电流
测量值(Measured Values) TotW TotVar A
MV MV WYE
对于其他间隔的测量值,可以建立相似的MMXU实例。
反应于测量数据,同样有TCTR,TVTR,其实例如图4-6,图4-7所示
表4-6电流互感器实例
TCTR1(变压器逻辑节点实例) 属性名称
属性类型CDC
说明
数据对象(Data Object)
公共逻辑节点信息(Common Logical Information)
继承公共逻辑节点类中所有必须的数据对象Mode、Beh、Health、NamPlt,具体实例省略 Current(Sampled value)
36
测量值(Measured values) Amp
SAV
表4-7电压互感器实例
TVTR1(变压器逻辑节点实例) 属性名称
属性类型CDC
说明
数据对象(Data Object)
公共逻辑节点信息(Common Logical Information)
继承公共逻辑节点类中所有必须的数据对象Mode、Beh、Health、NamPlt,具体实例省略 Voltage(Sampled value)
测量值(Measured values) Vol
SAV
远动系统中遥测信息的逻辑节点建立比较简单。而遥信、遥控、遥调的信息模型建立则比较困难。遥信、遥控和遥调表示了保护、开关、断路器、变压器等装置的位置、控制和报警信息,这些信息的内容比较复杂。考虑到IEC 61850面向对象建模特性,这些信息需要综合与设备相关的测量值进行建模。首先把同属于一个功能的信息归结到一个逻辑节点中去,看能否构成IEC 61850-7-4中定义的逻辑节点模型。例如,把变压器油温过高报警信息加上变压器温度就可以构成一个YPTR逻辑节点实例(如表4-8所示),油温过高信息和变压器温度分别对应YPTR逻辑节点中HPTmpAlm(Winding hot point temperature alarm)和HPTmp(Winding hotspot temperature)数据。
表4-8变压器逻辑节点实例
YPTR1(变压器逻辑节点实例) 属性名称
属性类型CDC
说明
数据对象(Data Object)
公共逻辑节点信息(Common Logical Information)
继承公共逻辑节点类中所有必须的数据对象Mode、Beh、
Health、NamPlt,具体实例省略 绕组热点温度 绕组热点温度报警
测量值(Measured values) HPTmp 状态信息 HPTmpAlm
SPS MV
然而对于大部分的遥信、遥控和遥调信息要综合到一个具体的逻辑节点中还是有困难的。因为远动规约所定义四遥信息往往代表控制中心对变电站的视角,这种视角不要求对变电站内所有信息的了解,它只要求监视和控制变电站关键部分或关键设备的运行状态,这使得通过IEC 60870-5-101或CDT上传的信息显得少而精;而IEC 61850-7-4中的逻辑节点是从变电站的角度来建模的,它希望通过对一些具体的功能详细建模从而实现变电站内功能之间的配合,达到互操作的目的,所以IEC 61850-7-4中建模的信息模型要求包含的信息相对显的多而细。这种冲突,导致遥信、
37
遥控、遥调和一些与设备相关的遥测组合起来的与具体功能相关的逻辑节点实例往往数据不够完备。以保护功能来说,IEC 61850针对保护类型建立了不同的保护模型,如距离保护的有PDIS逻辑节点、时间过电流保护的有PTOC逻辑节点等等。这些保护功能逻辑节点包括两个基本部分:状态信息和整定信息。然而在传统远动通信中,出于安全性和可靠性的考虑,并不通过远动通信系统来对整定值进行操作,整定值这部分就不能包括在远动系统的信息模型当中。而状态信息这部分,大部分保护相关功能对象的逻辑节点都包含Str和Op两个数据,这两个数据都是M型的,即必须包括在相应的逻辑节点中。Str表示继电器检测到故障的发生,它的数据属性指示故障发生的相位和故障相对于继保装置的位置(前方还时后方);Op说明继电保护装置是否动作。而对于101和CDT规约来说,它上传的关于继电保护的相关信息只有保护的动作信息。仅是保护的动作信息是不能够建立IEC 61850-7-4中关于保护功能的逻辑节点。为此,只能根据IEC 61850规定的扩展规则,选取能用的为其他功能建模的逻辑节点类型,或者根据自己的需要对逻辑节点进行扩展甚至定义自己的逻辑节点。
图4-1所示变电站,过流保护PIOC逻辑节点实例如表4-9所示,对于距离保护PDIS和差动保护PDIF,其实例类似表4-9。
表4-9 过流保护逻辑节点实例
PIOC1(过流保护逻辑节点实例) 属性名称
属性类型CDC
说明
数据对象(Data Object)
公共逻辑节点信息(Common Logical Information)
继承公共逻辑节点类中所有必须的数据对象Mode、Beh、Health、NamPlt,具体实例省略 保护动作信息
状态信息(Status Information) Op
ACT
变压器重瓦斯报警信号,在IEC 61850中没有专门定义的逻辑节点,可采用表4-10所示的GGIO实例。GGIO逻辑节点是通用输入输出逻辑节点,可以用它来建模大部分单双点状态或者控制信息。对于烟雾报警,有逻辑节点CALH(表4-11)
表4-10通用输入输出逻辑节点实例
GGIO1(通用输入输出逻辑节点实例) 属性名称
属性类型CDC
说明
数据对象(Data Object)
公共逻辑节点信息(Common Logical Information)
继承公共逻辑节点类中所有必须的数据对象Mode、Beh、Health、NamPlt,具体实例省略 通用单点报警
38
状态信息(Status Information) Alm
SPS
表4-11 报警逻辑节点实例
CALH1(报警逻辑节点实例) 属性名称
属性类型CDC
说明
数据对象(Data Object)
公共逻辑节点信息(Common Logical Information)
继承公共逻辑节点类中所有必须的数据对象Mode、Beh、Health、NamPlt,具体实例省略 Group alarm
状态信息(Status Information) GrAlm
SPS
对于变压器分接头控制信息标准中有专门的逻辑节点YLTC,根据变电站信息其所建实例如表4-12所示。
表4-12 分接头转换逻辑节点实例
YLTC1(分接头转换逻辑节点实例) 属性名称
属性类型CDC
说明
数据对象(Data Object)
公共逻辑节点信息(Common Logical Information)
继承公共逻辑节点类中所有必须的数据对象Mode、Beh、Health、NamPlt,具体实例省略 改变分接头位置到特定位置 分接头到达最高位置 分接头到达最低位置
控制信息(Controls Information) TapPos 状态信息 EndPosR EndPosL
SPS SPS ISC
至于断路器和隔离开关,虽然在IEC 61850中有专门定义的XCBR(断路器)和XSWI(隔离开关)逻辑节点,但由于所给变电站信息量很少,所以我们可以选用CSWI(开关控制)逻辑节点来作代替,实例如表4-13所示。CSWI实例的Pos数据是DPC类型的,它不仅能反映隔离开关和断路器的位置信息,还能反映对隔离开关和断路器的控制信息。
表4-13 开关控制逻辑节点实例
CSWI1(开关控制逻辑节点实例) 属性名称
属性类型CDC
说明
数据对象(Data Object)
公共逻辑节点信息(Common Logical Information)
继承公共逻辑节点类中所有必须的数据对象Mode、Beh、Health、NamPlt,具体实例省略 隔离开关,断路器位置信息
控制信息(Control Information) Pos
DPC
39
对LPHD(逻辑节点物理设备)和LNN0(逻辑节点0)建模,在一个设备内它们都是唯一的。它们的实例如表4-14、表4-15所示。
表4-14物理设备逻辑节点实例
LPHD(开关控制逻辑节点实例) 属性名称 PhyName PhyHealth Proxy
属性类型CDC DPL INS SPS
物理设备间隔名称 物理设备运行状况 代理描述
说明
数据(Data)
表4-15逻辑节点0实例
LLNO(开关控制逻辑节点实例) 属性名称
属性类型CDC
说明
数据(Data)
公共逻辑节点信息(Common Logical Information)
DataSets Control Block services
继承公共逻辑节点类中所有必须的数据对象Mode、Beh、Health、NamPlt,具体实例省略 参见IEC61850-7-2
4.3通信服务模型构造
建立变电站自动化远动通信服务模型要充分考虑信息的类型和通信要求。IEC 61850-7部分定义了一套面向对象的,与实际通信协议无关的抽象通信服务接口ACSI(Abstract Communication Service Interface),该接口定义了用于变电站自动化系统通信过程的完整模型,如连接逻辑节点的应用关联模型以及读取和设置数据;定义数据集,形成报告和记录;召唤数据(状态和测量值);控制装置;交换文件;传输采样值与服务模型。根据图3所示的变电站我们就数据集以及服务模型方面进行讨论。
在IEC61850中,报告(Reporting)是由报告控制块控制的,报告上传的都是数据集(DataSet)所引用的数据。当报告控制块所监视数据集中的数据属性发生变化(数据值改变、品质属性改变或者数据更新等)时,就会触发一个报告的产生。
报告使用的数据集可以根据数据的优先级和数据的类别来建立。对图3变电站间隔一的继电保护动作信息,我们创建一个数据集FltRpt1,主要包括对线路一过流保护和距离保护的动作数据,如表4-16所示。 由于FltRpt1数据集所引用的数据来源于不同的逻辑节点,我们把它定义到LLN0中。当控制中心与服务器建立好关联,且缓存报告控制块BRCB(BUFFERED-REPORT-CONTROL_BLOCK)的“RptEna”
40
被设定为“TRUE”,服务器端程序不断监视数据集中所引用的所有数据,一旦有数据发生变化,服务器触发一个故障报告,报告中带有时标、产生报告的原因、触发事件的数据对象以及数据集名称等。由于不同的用户需要的报告格式不同,IEC 61850允许客户通过“SetBRCBValue”服务预先设置BRCB的属性选项,定义自己所需要的报告类型。
表4-16 数据集
DATA-SET实例
FltRpt1 LD1/LLN0.FltRpt1
PIOC1.Op PIOC2.Op
名称
数据集实例的引用路径 过流保护动作信息 差动保护动作信息
定义好定值数据集后,就可以定义相应的服务了。如果主站知道数据集所包含的定值内容,那么只要通过取定值数据集的值服务:GetDatasetValues(DatasetReference),括号内是要调用的数据集的引用,可以是多个参数,应该是完整的路径名称。如果主站事先不知道定值组的具体内容,那么先可以通过取数据集目录服务GetDatasetDirctory,然后再用取数据集值服务。其它相关的服务有设置定值数据集SetDataValueS、创建数据集CreateDataset和删除数据集DeleteDataset等,在系统中应用不多。
4.4配置文档说明
XML作为一种标记语言,具有简单、开放、高效且可扩展、国际化、可移植等特点。XML是基于INTERNET数据交换和大量业务集成的标准语言,因此在程序设计中,我们考虑采用XML来描述IEC 61850中定义的数据模型。XML-Schema是一种特殊的XML文档,它遵循XML的基本语法规则来定义XML文档的结构
基于SCL定义的信息模型,IEC 61850标准采用XML来建立变电站、IED、通信系统等模型的描述文档,并给出了建立各种模型描述文档时所需要的XML模式(Schema)。以达到在不同厂家提供的智能电子装置IED管理工具和系统管理工具之间,交换智能电子装置信息和变电站自动化系统信息的目的。
IEC 61850中给出的XML Schema描述了变电站配置语言文档的结构,定义了文档中标记的语法规则,并严格规定了以它为标准的所有自描述文档树状层次结构的全部细节,包括数据对象的嵌套关系、数据属性的类型、约束条件、取值范围等,为建立统一的系统或设备自描述文档打下基础,并能够检验自描述文档的正确性和有效性。因此对于文中设计的变电站信息模型和抽象通信模型,就可以根据标准中Schema对IED模型的描述和定义,用XML语言对网关的配置性能进行说明。
41
4.5小结
本章以CDT 规约作为传统规约的代表,结合某变电站实例,对CDT远动通信规约传输的数据进行了分析,说明了如何运用IEC 61850规约定义的信息模型把传统规约传输的孤立数据组织起来,为传统电力通信规约向面向对象远动通信规约的转化打下基础。此外,分析了IEC 61850提供的抽象通信服务,建模了合适的服务模型运用与控制中心和变电站之间进行通信,并对其配置文档进行了说明。
42
第五章 程序设计的实现
5.1串口通信的实现
软件设计中首先打开串口,设置串口。调用CreateFile()函数打开串口,注意设置FILE_FLAG_OVERLAPPED参数,这个参数的设置决定串口通信使用的是同步方式还是异步方式。同步方式执行时,读写串口函数直到执行完毕才返回,而异步方式在读写函数时会立即返回,I/O操作在后台进行,线程可以继续处理其他事物。异步方式相比同步方式,效率较高,在串口通信中,一般都采用异步通信方式。打开串口后调用SetCommMask()函数设置事件驱动的类型,调用SetCommState()进行端口配置,包括缓冲区设置,超时设置和数据格式等等。
接着,启动一个辅助线程,用于串口事件的处理。使用辅助线程的目的在于监视串口状态,查看有无数据到来,通信有无错误。而主线程则可以专心于数据处理,相应使用命令等操作。如果有事件发生,辅助线程再发送消息给主线程,主线程再进行相应的数据处理操作。线程的创建是通过API函数AfxBeginThread()来实现。辅助线程需要为其定义一个全局函数,来完成具体的操作。此函数的主要执行一个循环过程,不停的检测事件是否发生,一旦事件发生则调用PostThreadMessage()函数给主线程发送消息,通知主线程进行具体的读写操作。
由于采用异步方式,lpOverlapped参数不能设置为NULL。主线程进行ReadFile()操作时,函数立即返回,需调用GetLastError(),查看是否返回ERROR_IO_PEDDING。如果是,表明缓冲区中的数据未读取完,再调用GetOverlappedResult(),直到返回重叠操作(overlapped operation)的结果。WriteFile()的使用类似。
数据帧在程序中用BYTE类型数组来存储,数据帧的组织实际上就是一个不断匹配条件和不断往数组中赋值的过程。而对于数据的解析,则是一个对数据帧匹配和对有用信息的不断提取过程。
CRC检验的实现方法比较多,考虑到在CDT规约中采用的是(48,40)循环码,其中码长n为48,信息元k为40,码长和信息元相差不大(n-k=8),而且信息元k为(n-k)的整数倍,可以采用软件表算法来实现CRC校验。
串口调试注意事项:
a) 不同编码机制不能混接,如RS232C不能直接与RS422接口相连,市面上有
各种转换器卖,必须通过转换器才能连接; b) 线路焊接要牢固,以免接线问题误事;
43
c) 串口调试时,准备一个好用的调试工具,如串口调试助手等,有事半功倍之
效果;
d) 不要带电插拔串口,插拔时至少有一端是断电的,否则串口易损坏。
5.2建模与映射 5.2.1公共数据类模型
公共数据模型是IEC61850-7-3部分介绍的主要内容,是对IEC61850-7-2部分定义的抽象通信服务接口数据模型的进一步细化,因此有必要首先介绍IEC61850-7-2中定义的数据模型。图5-1表示了数据和数据属性模型之间类图关系。数据类模型表达了自动化设备内丰富多样的应用信息,是IEC61850中的重要元素。
1..nDATADateNamePresenceCompositeCDCWYESimpleCDC0..nCMVDataAttributeFCTrgOps1..nDATypeNamePresenceCompositeComponentVectorAualogueValPrimitiveComponent1FLOAT32BasicType 图5-1数据和数据属性类图
一组数据或者数据的一部分可以组成数据集。数据类可能是简单公共数据类型,也可能是复合公共数据类型。数据类由数据属性构成,数据属性可能是原始数据类型,也可能是复合数据类型。数据类的构成如图3.1,简单公共数据类SimpleCDC由数据名称DataName和是否出现Presence以及数据属性组成。Presence对应IEC61850-7-3数据类中的M/O列。数据属性包括功能约束FC(Function Constraint)和触发条件Trg0Ps(Trigger Options)以及数据属性类型DAType(Data Attribute Type)。复合数据类型由简单或复合数据类型组成。比如说:表示三相瞬时测量值的
44
WYE数据类型包括phsA表示A相瞬时测量值,而PhsA本身是复合测量值的数据类型CMV(Complex Measured Value)表示。类似于复合公共数据类型,复合数据属性可以由简单数据属性或复合数据属性构成。
如图5-1中DAType在VC程序中的实现为
class DAType {
public:
ObjectName DATName;//数据属性名;
ObjectName AttributeType;//数据属性类型名;计划扩充此项; ObjectReference DATRef;//路径名; BOOLEAN Presence;//指示; // INT8U DANumber;
vector DATRef=\"\"; } }; DataAttributeType类为: class DataAttributeType:public DAType { public: FCType FC; TrgOps TrgOps; }; 对于约束FC(Function Constraint)和触发条件Trg0ps(Trigger Options)可以用枚举类型进行定义。 对于数据类定义如下: class DATA { public: ObjectName DataName;//数据名; ObjectReference DataRef;//数据引用; ObjectName DataType;//数据类型; BOOLEAN Presence;//强制-任选; // INT8U DANumber;//数据属性个数; vector vector Data;//指向数据类实例数组的指针; //客户使用GetDataValues服务检索该DATA的数据属性值 void GetDataValues(ObjectReference x,FCType x2); 45 void SetDataValues(ObjectReference x,DataAttrValues DataAttributeValue); void GetDataDirectory(ObjectReference x); void GetDataDefinition(ObjectReference x); }; 数据类又分为简单公共数据类型(CMV)和复合公共数据类(WYE),下面以WYE为代表说明其程序实现。 class WYE:public DATA //复合公共数据类 { public: CMV phsA;//MOC=GC_1 CMV phsB;//MOC=GC_1 CMV phsC;//MOC=GC_1 CMV neut;//MOC=GC_1 CMV net;//MOC=GC_1 CMV res;//MOC=GC_1 //配置,描述和扩展 angRefWYEATTR angRef;//FC=CF;TrgOp=-;MOC=O; VISIBLE_STRING255ATTR d;//FC=DC;TrgOp=-;MOC=O; VISIBLE_STRING255ATTR cdcNs;//FC=EX;TrgOp=-;MOC=AC_DLNDA_M; VISIBLE_STRING255ATTR cdcName;//FC=EX;TrgOp=-;MOC=AC_DLNDA_M; VISIBLE_STRING255ATTR dataNs;//FC=EX;TrgOp=-;MOC=AC_DLN_M; WYE() { this->DataType=\"WYE\"; // DataNumber=6; Data=new DATA*[DataNumber]; // DANumber=5; DataAttribute=new DataAttributeType*[DANumber]; phsA.DataName=\"phsA\";phsA.Presence=GC_1;Data.push_back(&phsA); phsB.DataName=\"phsB\";phsB.Presence=GC_1;Data.push_back(&phsB); phsC.DataName=\"phsC\";phsC.Presence=GC_1;Data.push_back(&phsC); neut.DataName=\"neut\";neut.Presence=GC_1;Data.push_back(&neut); net.DataName=\"net\";net.Presence=GC_1;Data.push_back(&net); res.DataName=\"res\";res.Presence=GC_1;Data.push_back(&res); angRef.DATName=\"angRef\";angRef.FC=CF;angRef.TrgOps=none;angRef.Presence=O;DataAttribute.push_back(&angRef); d.DATName=\"d\";d.FC=DC;d.TrgOps=none;d.Presence=O;DataAttribute.push_back(&d); cdcNs.DATName=\"cdcNs\";cdcNs.FC=EX;cdcNs.TrgOps=none;cdcNs.Presence=AC_DLNDA_M;DataAttribute.push_back(&cdcNs); cdcName.DATName=\"cdcName\";cdcName.FC=EX;cdcName.TrgOps=none;cdcName.Presence=AC_DLNDA_M;DataAttribute.push_back(&cdcName); dataNs.DATName=\"dataNs\";dataNs.FC=EX;dataNs.TrgOps=none;dataNs.Presence=AC_DLN_M;DataAttribute.push_back(&dataNs); }; }; 46 5.2.2兼容逻辑节点类模型 IEC 61850-7-4部分定义了90多个逻辑节点。图5-2是一个简单的断路器逻辑节点的例子。每个逻辑节点由若干数据对象组成,数据对象代表了应用相关的特定含义。逻辑节点类如下所示: Logical Node (XCBR) Data(e.g. Mode) Data(e.g. Pos) 图5-2 逻辑节点和数据 class LOGICAL_NODE { public: // INT8U DataNumber; INT8U DataSetNumber; ObjectName LNName;//在逻辑设备作用域内唯一标识逻辑节点 ObjectReference LNRef;//在系统作用域内的引用 vector Data;//逻辑节点包含的数据 DATA_SET* DataSet; BRCB* BufferedReportControlBlock; URCB* UnbufferedReportControlBlock; LCB* LogControlBlock; //仅存在于LLN0中; SGCB* SettingGroupControlBlock; LOG* Log; GoCB* GOOSEControlBlock; GsCB* GSSEControlBlock; MSVCB* MulticastSampledValueControlBlock; USVCB* UnicastSampledValueControlBlock; Reference GetLogicalNodeDirectory(ObjectReference x,int x2); Reference GetAllDataValues(ObjectReference x,FCType x2); }; 以XCBR为例说明兼容逻辑节点类的实现: class XCBR:public LOGICAL_NODE { public: //基本逻辑节点信息 47 INC Mode;//M INS Beh;//M; INS Health;//M; LPL NamPlt;//M; SPS Loc;//M; INS EEHealth;//O; DPL EEName;//O; INS OpCnt;//M; //可控数据 DPC Pos;// M SPC BlkOpn;// M SPC BlkCls;// M SPC ChaMotEna;//O //测量量 BCR SumSwARs;//O; //状态信息 INS CBOpCap;// M INS POWCap;// O INS MaxOpCap;// O XCBR() { LNName=\"XCBR\"; Mode.DataName=\"Mode\";Mode.Presence=M;Data.push_back(&Mode); Beh.DataName=\"Beh\";Beh.Presence=M;Data.push_back(&Beh); Health.DataName=\"Health\";Health.Presence=M;Data.push_back(&Health); NamPlt.DataName=\"NamPlt\";NamPlt.Presence=M;Data.push_back(&NamPlt); Loc.DataName=\"Loc\";Loc.Presence=M;Data.push_back(&Loc); EEHealth.DataName=\"EEHealth\";EEHealth.Presence=O;Data.push_back(&EEHealth); EEName.DataName=\"EEName\";EEName.Presence=O;Data.push_back(&EEName); OpCnt.DataName=\"OpCnt\";OpCnt.Presence=M;Data.push_back(&OpCnt); Pos.DataName=\"Pos\";Pos.Presence=M;Data.push_back(&Pos); BlkOpn.DataName=\"BlkOpn\";BlkOpn.Presence=M;Data.push_back(&BlkOpn); BlkCls.DataName=\"BlkCls\";BlkCls.Presence=M;Data.push_back(&BlkCls); ChaMotEna.DataName=\"ChaMotEna\";ChaMotEna.Presence=O;Data.push_back(&ChaMotEna); SumSwARs.DataName=\"SumSwARs\";SumSwARs.Presence=O;Data.push_back(&SumSwARs); CBOpCap.DataName=\"CBOpCap\";CBOpCap.Presence=M;Data.push_back(&CBOpCap); POWCap.DataName=\"POWCap\";POWCap.Presence=O;Data.push_back(&POWCap); MaxOpCap.DataName=\"MaxOpCap\";MaxOpCap.Presence=O;Data.push_back(&MaxOpCap); DataSetNumber=1; DataSet=new DATA_SET[1]; // DataSet.push_back(new DATA_SET); DataSet[0].DSName=\"AlarmXCBR\"; DataSet[0].DSMNumber=2; // DataSet[0].DSMemberRef=new ObjectReference[DataSet[0].DSMNumber]; 48 Pos.DataRef=\"Pos\"; Pos.ctlVal.DATRef=\"Pos.ctlVal\"; DataSet[0].DSMemberRef.push_back(Pos.DataRef); DataSet[0].DSMemberRef.push_back(Pos.ctlVal.DATRef); }; }; 5.2.3逻辑设备和服务器类模型 根据图4-1,其逻辑设备类模型如下: class LOGICAL_DEVICE { public: ObjectName LDName;//逻辑设备名;唯一标识系统作用域中的逻辑设备; ObjectReference LDRef;//逻辑设备路经名;和逻辑设备名相同; vector //客户使用GetLogicalDeviceDirectory服务检索全部Logical_Node的ObjectReference //理解为客户端调用GetLogicalDeviceDirectory映射到MMS,通过MMS到达服务端 //服务端完成下面函数的功能;该功能应该考虑视窗的概念;暂未考虑。 //然后调用MMS服务,把结果返回客户端 Reference GetLogicalDeviceDirectory(ObjectReference x); }; 整个变电站可以看作一个服务器,名为FY,其服务器类模型的实现为: class SERVER { public: // INT8U LDNumber; ObjectName ServiceAccessPoint[2]; vector Reference GetServerDirectory(int i); }; 5.2.4映射实现 根据上面的分析,结合变电站配置给现场点表,我们可以得到此变电站CDT规约与IEC61850的连接映射表,如表5-1、表5-2所示: 49 表5-1 FY变电站遥测映射表 序号 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 标识 FREN-F1 FREN-F2 1B110-P 1B110-Q 映射关系 LDFY/F1_MMXU.Hz.mag.f.Value LDFY/F2_MMXU.Hz.mag.f.Value LD1/MMXU001.TotW.mag.f.Value LD1/MMXU001.TotVar.mag.f.Value 1B110-Ia LD1/MMXU001.A.phsA.cVal.mag.f.Value 1B110-Ic LD1/MMXU001.A.phsC.cVal.mag.f.Value 1B10-P 1B10-Q 1B10-I M01-Ua LD2/MMXU002.TotW.mag.f.Value LD2/MMXU002.TotVar.mag.f.Value LD2/MMXU002.A.net.cVal.mag.f.Value LD2/TCTR002.Amp.instMag.f.Value LD3/M01_MMXU.PhV.phsA.cVal.mag.f.Value M01-Ub LD3/M01_MMXU.PhV.phsB.cVal.mag.f.Value M01-Uc LD3/M01_MMXU.PhV.phsC.cVal.mag.f.Value M01-Uab LD3/M01_MMXU.PPV.phsAB.cVal.mag.f.Value WENDU-T1 LD1/YPTR1.HPTmp.mag.f.Value FT-FT1 LD1/YLTC1.TapPos.ctlVal.Value 004-P LD4/MMXU004.TotW.mag.f.Value 004-I LD4/MMXU004.A.net.cVal.mag.f.Value; LD4/TCTR004.Amp.instMag.f.Value 005-P LD5/MMXU005.TotW.mag.f.Value 005-I LD5/MMXU005.A.net.cVal.mag.f.Value; LD5/TCTR005.Amp.instMag.f.Value 表5-2 FY变电站遥信映射表 序号 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 标识 ZXHSGZX KG001 KG002 KG004 KG005 ZHBIZWS ZHBICD ZHBIFXGL ZHBYWBJ M01CHZ M01GL 002JULI 004JULI 004CD 005JULI 映射关系 LDFY/ZXHSGZX_GGIO.DPCSO.ctlVal.Value; LD1/CSWI001.Pos.ctlVal.Value LD2/CSWI002.Pos.ctlVal.Value LD4/CSWI004.Pos.ctlVal.Value LD5/CSWI005.Pos.ctlVal.Value LD1/ZHBIZWS_GGIO.Alm.stVal.Value LD1/ZHBICD_PDIF.Op.general.Value LD1/ZHBIFXGL_PIOC.Op.general.Value LD1/ZXHYWBJ_CALH.GrAlm.stVal.Value LD3/MO1_RREC.Op.general.Value; LD3/M01_PIOC.Op.general.Value LD2/PDIS002.Op.general.Value LD4/PDIS004.Op.general.Value LD4/PDIF004.Op.general.Value LD5/PDIS005.Op.general.Value 50 15 005CD LD5/PDIF005.Op.general.Value 5.3配置文档的实现 运用远动网关来实现传统远动信息的网络传输,此时网关在控制中心的视角中就是一个IED,它的配置管理要比变电站内IED的配置管理容易,因为此时控制中心只是对一个IED进行操作。 图4-1所示的变电站,根据Schema中对IED模型的描述和定义,本文运用IEC 61850中定义的变电站配置语言对上述网关的配置性能进行描述,如下所示: xsi:schemaLocation=\"http://www.iec.ch/61850/2003/SCL SCL_IED.xsd\" name=\"FY\"> 51 从该文档看出,网关描述文档主要包括服务、IED的信息模型等信息,包含了能代表该设备所有外部可视功能的描述。 5.4小结 本章针对前面章节的规约转换的设计,说明其具体的程序实现,并对其应用前景进行了展望。首先,文章叙述了串口通信的实现的要点以及注意事项,然后从数据类、公共数据类、兼容逻辑节点类、逻辑设备、服务器等方面分别进行程序设计。模型程序实现后,紧接着就是规约连接的实现的,本章根据现场提供的点表,设计出点表与IEC61850对象模型之间的映射关系,方便了两种规约的连接。最后给出了此变电站转换网关的配置文档。 52 第六章 结论 作为国际最新的变电站通信网络和系统标准,IEC 61850统一了变电站内通信网络平台、信息模型、信息交换模型。运用IEC 61850规约进行远动信息的网络传输,相比传统运用电路交换的远动规约信息传输具有快速、节省带宽、面向对象建模、信息自描述等特点。在目前光缆SDH电力数据通信专网在我国电力系统已初具规模,电力通信专网已经具备了足够的电力远动数据传输带宽,建立基于广域网的电力远动系统已具备物质基础的条件下,本文结合IEC 制定的变电站网络化最新通信标准IEC 61850,对传统电力规约向IEC61850转换的问题进行了深入的研究和探索工作, 现将研究工作总结如下: 1. 最新国际规约IEC 61850的研究。从系统和设备结构、信息建模方法、信 息交换模型、通信服务模型以及配置文档等方面对IEC 61850标准所具有的特点进行了深入分析。 2. 对传统电力远动通信规约,特别是对CDT、101规约进行了深入研究。 3. 对传统电力规约向IEC61850的转换的理论进行了详细的分析研究。对串口 通信技术、面向对象建模、配置文档说明等理论有更深入的了解。 4. 以CDT规约作为传统规约的代表,针对具体变电站,对转换网关进行设计。 对电力远动通信系统传输的数据进行了分析,运用IEC 61850的建模方法把通过CDT规约上传的数据用IEC 61850数据模型进行组织,为此规约向IEC 61850规约的转化打下基础。 5. 深入研究IEC 61850规约定义的抽象通信服务,建模了适于电力远动信息 传输的服务模型,并给出了网关的配置描述文档。 6. 针对设计方案,编写程序以实现。 本文在传统电力规约向IEC61850转换研究方面作了初步尝试,由于本人学术水平和时间所限,所提出的部分观点和实现的功能仍不完善,需要对以下方面进一步的研究: 1. 后续工程的研究 本文对于CDT规约,从解析、建模、映射、转换、说明等方面都完成了设计与实现。但对于另一个常用的传统电力规约101规约,仅限于理论的研究,没有程序实现,这是以后进一步研究的方向。当然,传统电力规约还包括其他的一些,对于它们的研究也是今后工作的课程之一。 2. 配置文档的自动生成与即插即用的实现 对于大型变电站用手工的方式写其配置文档,比较繁琐,工程量也大。此外随 53 因篇幅问题不能全部显示,请点此查看更多更全内容