MMS.docx
- 文档编号:2362346
- 上传时间:2022-10-29
- 格式:DOCX
- 页数:18
- 大小:74.12KB
MMS.docx
《MMS.docx》由会员分享,可在线阅读,更多相关《MMS.docx(18页珍藏版)》请在冰豆网上搜索。
MMS协议
MMS基础知识
MMS(ManufactureMessageSpecification)通过对实际设备进行面向对象建模的方法,实现了网络环境下不同制造设备之间的互操作。
IEC61850标准把MMS引入电力自动化领域,将其核心ACSI服务直接映射到MMS标准。
MMS规范位于OSI七层参考模型的第七层——应用层。
MMS通信流程
MMS通信采用客户端/服务器模式(C/S架构);
MMS服务可以分为带确认(Confirmed)和不带确认(UnConfirmed)两类。
MMS的基本思想
MMS的基本思想就是定义一种大家都能理解的公共语言。
一些来自不同生产厂家的智能装置,这些装置可能运行着不同的操作系统和程序,硬件结构也可能存在千差万别,设置同一厂家不同时期生产的不同型号的装置在硬件和软件上也可能存在差异。
要达到互操作的目的,就必须先考虑“屏蔽”叼各装置的具体技术细节(如CPU型号、操作系统、程序编程语言、开关量子系统),使各装置在网络通信方式上遵守同一的规定,具有相同或相近的外部接口。
MMS采用构建虚拟设备(即VMD)的方法来达到隐藏各类装置技术细节的目的。
虚拟设备由实际设备映射得到,它和装置的具体细节无关,具体通信时信息交互在客户端和虚拟设备之间进行。
这样就“屏蔽”掉了装置的技术细节,客户端就可以和不同厂家、不同型号的多种装置进行通信。
MMS对象和服务
MMS定义了VMD(虚拟制造设备)、Domain(域)、NamedVariable(有名变量)、NamedVariableLists(有名变量列表)等对象模型,另外还定义了大概80多种服务
IEC61850与MMS的对象映射
编号
IEC61850对象
MMS对象
1
服务器(Server)
虚拟制造设备(VMD)
2
逻辑设备(LogicalDevices)
域(DomainObjects)
3
逻辑节点(LogicalNodes)
有名变量
(NamedVariableObjects)
4
数据(Data)
5
报告控制块(RCB)
6
定值组控制块(SGCB)
7
日志控制块(LCB)
8
控制(Control)
9
数据集(DataSet)
有名变量列表
(NamedVariableListObjects)
10
日志(Logs)
日志(journalObjects)
11
文件(Files)
文件(Files)
IEC61850与MMS的服务映射
编号
IEC61850对象
ACSI服务
MMS服务
1
服务器(Server)
GetServerDirectory
GetNamedList
2
逻辑设备(LDevice)
GetLogicalDeviceDirectory
GetNamedList
3
逻辑节点(LNode)
GetLogicalNodeDirectory
GetNamedList
4
GetAllDataValues
Read
5
数据(Data)
GetDataValues
Read
6
SetDataValues
Write
7
GetDataDirectory
GetVariableAccessAttribute
8
GetDataDefinition
GetVariableAccessAttribute
9
数据集(DataSet)
GetDataSetValues
Read
10
SetDataValues
Write
11
CreateDataSet
DefineNamedVariableList
12
DeleteDataSet
DeleteNamedVariableList
13
GetDataSetDirectory
GetNamedVariableListAttribute
14
报告控制块(RCB)
Report
InformationReport
15
GetBRCBValues
Read
16
SetBRCBValues
Write
17
GetURCBValues
Read
18
SetURCBValues
Write
19
控制(Control)
Select
Read
20
SelectWithValue
Write
21
Cancel
Write
22
Operate
Write
23
TimeActivatedOperate
Write
24
CommandTermination
InformationReport
25
文件(File)
GetFile
FileOpen,FileRead,FileClose
26
SetFile
ObtainFile
27
DeleteFile
FileDelete
28
GetFileAttributeValues
SequenceofFileDirectory
29
定值组控制块(SGCB)
SelectActiveSG
Write
30
SelectEditSG
Write
31
SetSGValues
Write
32
ConfirmEditSGValues
Write
33
GetSGValues
Read
34
GetSGCBValues
Read
35
日志控制块(LCB)
GetLCBValues
Read
36
SetLCBValues
Write
37
GetLogStatusValues
Read
38
QueryLogByTime
ReadJournal
39
QueryLogAfter
ReadJournal
40
取代(Substitution)
GetDataValues
Read
41
SetDataValues
Write
42
GSE/GOOSE
GetGoCBValues
Read
43
SetGoCBValues
Write
44
GSE/GSSE
GetGsCBValues
Read
45
SetGsCBValues
Write
46
关联(Associate)
Associate
Initiate
47
Abort
Abort
48
Release
Conclude
MMS与ASN.1编解码
MMS的编解码采用ASN.1规范。
ASN.1是抽象语法标记(abstractsyntaxnotationone)的英文缩写,它位于ISO/OSI七层开放互联模型的第六层——表示层。
它分为语法规则和编码规则两部分:
语法规则用于描述信息对象的具体构成(格式),如数据类型、内容顺序或结构。
编码规则定义了信息的具体编/解码语法。
ASN.1基础
ASN.1数据类型
ASN.1中定义的数据类型既有简单的基本数据类型,也有复杂的结构类型。
基本类型是不可再分的,具体包括布尔型(BOOLEAN)、整型(INTEGER)、枚举类型(ENUMERATED)、空类型(NULL),对象标识符(OBJECTIDENTIFIER)等。
除了基本类型,ASN.1还定义了多种复杂的结构类型,例如:
(1)SEQUENCE:
有序的数据结合,由不同的数据类型构成,强调内部成员的排序。
(2)SEQUENCEOF:
有序的数据集合,成员由为同一类型的数据,类似C语言的数组。
(3)SET:
由不同类型的数据组成的集合,对成员的顺序不做要求。
类似于c语言中的结构体类型。
(4)CHOICE:
选择结构,在列出的内部成员中,只能选择其中之一。
类似于c语言中的共用体类型。
基本编码规则BER
ASN.1提供了多种编码规则,如BER、DER、CER、PER等,IEC61850在MMS编/解码中使用的是BER基本编解码规则。
1.BER编码结构
ASN.1基本编码规则BER采用的编码结构由标记(Tag)、长度(length)以及内容(Value)三个部分构成,一般称为TLV结构,如表一所示:
表一:
BER编码结构
标记(Tag)
长度(Length)
内容(Value)
各部分含义如下:
(1)标记:
描述数据的类型。
(2)长度:
用于说明Value部分的长度。
(3)内容:
数据的实际值。
基本编码规则采用8位位组(即一个字节)作为基本传送单位,因此TLV结构的三个部分都由一个或多个8位位组组成。
2.标记
标记Tag一共有四种类型,即通用类(Universal)、应用类(Application)、上下文相关类(Context)、和专用类(private)(IEC6185中用到的只有前三个)。
表二是常用的标记分类,标记Tag通常由一个或者两个8位位组构成,bit7、bit6用用于说明标记的类型,“00”代表通用类,“01”代表应用类,“10”代表上下文相关类,“11”代表专用类;bit5说明数据是简单类型还是结构类型;bit4~0是标记编号(Tag值),不同的Tag值代表不同的数据类型,当标记编号大于30时,这4个bit都为1,用下一个字节表示标记编号。
表二常用的标记分类
Bit7~6
Bit5
Bit0~4
说明
举例
00
0
Tag值
简单类型,通用类
BOOLEAN、INTEGER
00
1
结构类型,通用类
SEQUENCESEQUENCEOF
01
1
结构类型,应用类
-----
10
0
简单类型,上下文相关类
IMPLICIT
10
1
结构类型,上下文相关类
IMPLICITSEQUENCE
表三给出了ASN.1规范定义的一批简单通用类数据的Tag值,例如“01h”代表BOOLEAN类型,“02h”代表INTEGER类型。
表三ASN.1中简单通用类数据的Tag值
Tag值(16进制)
类型
Tag值(16进制)
类型
01
BOOLEN
10
SEQUENCE,SEQUENCEOF
02
INTEGER
11
SET,SETOF
03
BIT-STRING
12
NumericString
04
OCTETSTRING(8)
13
PrintableString
05
NULL
14
TeletexString,
T61String
06
OBJECTIDENTIFER
15
VideotexString
07
ObjectDescripion
16
IA5STRING
08
EXTERNAL,INSTANCEOF
17
UTCTIME
09
REAL
18
GENERALIZERIME
0A
ENUMERATED
19
GraphicString
0B
EMBEDDEDPDV
1A
VISIBLESTRING
0C
UFT8String
1B
GeneralString
0D
RELATIVE-OID
1C
UniversalString
0E
保留
1D
CHARACTERSTRING
0F
保留
1E
BMPString
ASN.1定义的这些Tag值无法完全满足MMS应用的需要,如无法区分整形(INTEGER)和无符号整型(unsigned)两类数据。
因此MMS扩展定义了一组专用的Tag值(主要针对简单类型和上下文相关类),如表四所示:
表四MMS定义的上下文相关类Tag值(对简单通用类数据的扩展)
Tag值(16进制)
类型
Tag值(16进制)
类型
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- MMS
![提示](https://static.bdocx.com/images/bang_tan.gif)