电力102规约报文解析

来源:互联网 发布:淘宝详情页制作教程 编辑:程序博客网 时间:2024/04/29 15:55

       IEC102 应用报文分6大类:通讯连接,读时钟,读历史数据,读实时数据,读事件信息,对时。

      传输过程的启动仅限于某一固定点,在规约中主站端为启动站,而电能计量数据终端设备位于计数站,始终为从动站。本系统中的1 级用户数据包括较早时段存储起来的电量和读—应用服务数据单元请求的全部信息。本系统中的数据采用低字节在前,高字节在后的传输方式。

102报文的基本格式:

帧长可以变化102报文的基本格式:

 

102报文的基本说明:

a) 单字符用于子站向主站传输的确认(肯定或否定);

b) 控制域是用来区别不同的帧和数据传输方向的单字节,详见第二节;

c) 地址域是链路地址(一般是RTU编号),2字节,低字节在前,高字节在后;

d) 帧校验是用户数据区的各字节的算术和对256的模;

e) 变长帧中的L为用户数据区的长度,2L相等;

f) 变长帧中的ASDU为应用服务数据单元,详见第三节;

g) 数据传输方式:是异步传输方式,11位,其中启动位为二进制0,数据位8位,一个偶校验位,一个停止位。

 

1. 链路层解析—控制域

控制域包含了传输方向、传输状态以及链路功能类型等信息,1字节,各个位定义如下:

1) 主站侧

 

Bit7

Bit6

Bit5

Bit4

Bit3

Bit2

Bit1

Bit0

0

1

FCB

FCV

功能码

 

FCB位:

主站确认子站已收到命令帧并发送下一帧命令帧的时候,要将FCB位取反,表示是一帧新的命令帧;否则,保持FCB位不变,表示要求子站重发上一帧数据。

FCV位:

FCV位取0,表示不需要考虑FCB为是否取反,此时FCB位应该取0;反之,FCV位取1,表示FCB位取反有效,子站通过FCB位的状态判断下一步做什么,重发或者是继续。

功能码:

表示链路功能命令,即子站从链路层判断需要执行什么操作。

 

code

FT

FUCTION

FCV

0x00

发送/确认帧

复位通信单元CU

0

0x03

发送/确认帧

下发数据命令

1

0x09

请求/响应

召唤链路状态

0

0x0A

请求/响应

召唤I级用户数据

1

0x0B

请求/响应

召唤II级用户数据

1

 

I级用户数据:

历史数据;

II级用户数据;

最近一次采集的电能数据;如果在下一次采集电能数据之前再次召唤II级用户数据,子站应该返回“没有所召唤的数据”,即,II级用户数据上传之后就不再是II级用户数据了。

功能码0x000x090x0A0x0B用于定长帧;功能码0x03用于变长帧,下发召唤数据命令。

2) 子站侧

 

Bit7

Bit6

Bit5

Bit4

Bit3

Bit2

Bit1

Bit0

0

0

ACD

DFC

功能码

 

ACD位:

ACD位取1表示子站有I级用户数据等待上传,主站接收数据完成之后应该发送召唤I级用户数据命令;反之,ACD位取0表示子站待传数据已全部上传完成。

DFC位:

DFC位是数据流控制位,取0表示子站可接收数据,取1表示子站缓冲区已满,无法接收数据。

功能码:

 

code

FT

FUCTION

0x00

确认帧

响应链路复位

0x01

确认帧

链路忙,没收到报文

0x08

响应帧

以数据响应请求帧

0x09

响应帧

没有所召唤的数据

0x0B

响应帧

响应请求链路状态

 

功能码0x000x010x090x0B用于定长帧;功能码0x08用于变长帧,上传数据。

2. 应用层解析—ASDU

1) ASDU结构

 

数据单元标识符(6 Bytes)

类型标识

可变结构限定词(VSQ)

传输原因(COT)

ADDRL

虚拟设备地址

ADDRH

记录地址(RAD)

数据区

信息体地址(IOA)

信息体1

信息元素集

时间

信息体地址(IOA)

信息体n

信息体n

时间

 

2) ASDU类型标识

1字节,在主站侧表示的是主站召唤的数据类型,例如子站系统时间、子站单点信息、子站电能数据,等等;在子站测表示的是子站上传的信息元素的类型。ASDU类型标识的详细清单如下。

ASDU类型标识详细定义

主站侧:

 

标识

功能

注释

100

读制造厂和产品规范

101

读带时标的单点信息的记录

102

读一个选定时间范围的带时标的单点信息的记录

常用

103

读采集器的当前系统时间

常用

104

读最早累计时段的积分电能量—表底值

常用

120

读选定时间范围、选定地址范围的积分电能量—表底值

常用

121

读选定时间范围、选定地址范围的积分电能量—增量值

128

时钟同步

常用

170

读指定地址范围和时间范围的复费率积分电能量—表底值

常用

171

读指定地址范围的遥测量当前值

常用

172

读指定累计时段、选定地址范围的遥测量

 

子站侧:

 

标识

功能

注释

1

带时标的单点信息

常用

2

积分电能量—表底值,4字节

常用

5

积分电能量—增量值,4字节

70

初始化结束

常用

71

采集器的制造厂和产品规范

72

采集器的当前系统时间

常用

128

时钟同步

常用

160

复费率积分电能量—表底值,4字节

常用

161

遥测量当前值

常用

162

遥测量历史值

 

3) 可变结构限定词(VSQ)

1字节,低7位表示信息体数目,最高位是寻址方法位SQ位。SQ0,表示后面的每个信息体都有信息体地址,VSQ取值0-127SQ1,表示只有第一个信息体有信息体地址,后续的信息体是连续的,VSQ取值128-255

4) 传输原因(COT)

1字节,已使用的COT类型如下:

 

COT

解释

方向(下面为发出方)

4

初始化

子站侧

5

请求/被请求

主站侧/子站侧

6

激活

主站侧

7

激活确认

子站侧

8

停止激活

主站侧

9

停止激活确认

子站侧

10

激活终止

子站侧

13

无所请求数据

子站侧

14

无所请求的ASDU类型

子站侧

15

记录地址错误

子站侧

16

虚拟设备地址错误

子站侧

17

无所请求的信息体

子站侧

18

无所请求的累计时段

子站侧

48

时钟同步

主站侧/子站侧

 

在主站侧,COT表示命令的请求方式,例如,是请求应答(COT=5)还是激活上传数据(COT=6);在子站测,COT表示应答方式,以及是否有数据待传。

5) 虚拟设备地址

2字节,指虚拟RTU设备地址,一般在终端的采集量超过255个才使用。可以将采集量分组,每组即是一个虚拟RTU设备。采用虚拟RTU设备,可以针对不同需求的主站上传不同的数据,做到数据隔离,节省信道资源,并且起到数据保密功能。

在没有设置虚拟RTU设备的情况下,虚拟设备地址一般取0

6) 记录地址(RAD)

1字节,用来表示同类数据的不同缓冲区类型,已使用的RAD类型如下:

 

RAD

解释

0

缺省

11

电能累计量累计时段1

12

电能累计量累计时段2

13

电能累计量累计时段3

51

全部单点信息

52

单点信息记录区段1(一般指终端设备的单点信息)

53

单点信息记录区段2(一般指电能表的单点信息)

 

7) 信息体

在不同的主站命令帧和子站上传数据帧中,信息体有不同的结构,具体解释在第45两节。

8) 时间表示

a) 时间信息a

5字节,表示年、月、日、时、分,以及周,具体定义如下:

 

Bit7

Bit6

Bit5

Bit4

Bit3

Bit2

Bit1

Bit0

0

0

(0-59)

0

备用(0)

(0-23)

/

(1-7)

(1-31)

(未使用)

(未使用)

(1-12)

(0)

(0-99)

 

用于电能数据、分时电量和遥测量历史数据的时标。

b) 时间信息b

7字节,表示年、月、日、时、分、秒、毫秒,以及周,具体定义如下:

 

Bit7

Bit6

Bit5

Bit4

Bit3

Bit2

Bit1

Bit0

毫秒

毫秒(包括秒字节低两位,共10位)(0-999)

(0-59)

毫秒

0

0

(0-59)

0

备用(0)

(0-23)

/

(1-7)

(1-31)

(未使用)

(未使用)

(1-12)

(0)

(0-99)

 

用于单点信息的时标,以及子站系统时间。

3. 主站命令结构

只选取包含信息体元素或者常用的ASDU类型。

 

ASDU类型

VSQ

COT

RAD

信息体

102-单点信息

1

6

0/51/52/53

起始和结束时间,时间信息a

103-子站时钟

0

5

0

120-电能量

1

6

0/11/12/13

起始和结束地址(取值1-255);

起始和结束时间,时间信息a

128-时钟同步

1

48

0

主站系统时间,时间信息b

 

4. 子站数据结构

1) 单点信息

每条单点信息的信息体包含9字节,定义如下:

 

信息体地址(SPA)1字节

详见单点信息地址表

单点信息限定词(SPQ),高7

单点信息状态(SPI),低1

详见单点信息地址表

时间信息b

 

单点信息地址表

终端事件:

 

事件

SPA

SPQ

SPI

退出系统

180

3

0

启动系统

1

3

0

时钟同步

7

5

0

修改参数

15

1

0

电源故障

3

1

0

电池故障

4

1

0

硬件故障

8

1

0

打印机故障

8

33

0

通讯模块故障

8

49

0

 

电能表事件:

 

事件

SPA

SPQ

SPI

通讯失败

128

电能表序号

1

通讯恢复

128

电能表序号

0

PT失压(发生)

A: 135

电能表序号

未使用

B: 136

C: 137

断相(发生)

A: 129

电能表序号

未使用

B: 130

C: 131

过压(发生)

A: 132

电能表序号

未使用

B: 133

C: 134

 

2) 电能数据

 

信息体1

……

信息体n

公共时标

 

每个累计时段的电能数据分别组帧,公共时标用时间信息a表示,位于全部信息体的后面;每个电能数据信息体包含7字节,定义如下:

 

信息体地址

1字节

电能数据

4字节

帧计数

1字节

电能数据校验

1字节

 

信息体地址对应在子站注册的采集量的编号,取值1-255

帧计数字节定义如下:

 

Bit7

Bit6

Bit5

Bit4

Bit3

Bit2

Bit1

Bit0

数据状态

0

0

帧计数

 

数据状态位表示信息体中的电能数据是否为有效数据,0为有效,1为无效。

帧计数在上传电能数据、分时电量、遥测量时使用,每上传完成一个累计时段的数据,帧计数加1;如果同一累计时段的数据需要分帧上传,帧计数不变。

电能数据校验是保护电能数据有效的另一个标志,是计算ASDU类型标识、虚拟设备地址、记录地址、信息体地址、电能累计量、帧计数、以及公共时标个字节的算术和取256的模。

3) 分时电量

帧结构与电能数据基本相同,差别在于信息体的结构不同;信息体共包含27字节,具体定义如下:

 

信息体地址

1字节

分时电量数据

24字节

帧计数

1字节

电能数据校验

1字节

 

除了分时电量数据之外,定义与电能数据信息体中一致;分时电量数据定义如下:

 

总电量(4字节)

费率1 (4字节— 尖

费率2 (4字节— 峰

费率3 (4字节— 平

费率4 (4字节— 谷

费率5 (4字节— 暂未使用

 

4) 遥测量

 

信息体1

……

信息体n

公共时标

 

历史数据帧包含公共时标,瞬时数据帧中没有。

每个遥测量信息体包含6字节,定义如下:

 

信息体地址

1字节

遥测量数据

4字节

数据状态

1字节

 

信息体地址的定义请参考附录C,取值1-255

数据状态字节定义如下:

 

Bit7

Bit6

Bit5

Bit4

Bit3

Bit2

Bit1

Bit0

数据状态

保留(0)

 

数据状态位表示信息体中的遥测量数据是否为有效数据,0为有效,1为无效。

 

报文示例:

 

68 15 15 68 53 01 00 78 01 06 01 00 0B 01 0A 0F 00 12 03 0F 15 00 12 03 0F 56 16

15H:指的是从控制域开始到校验码之前的字节个数,共计15H=21个字节

报文分析

 

68 15 15 68      //帧头

53             //控制域

01 00          //RTU地址

78 

01 

06             //激活

01 00          //RTU地址

0B 

01             //起始点01,第1个点

0A             //结束点0A,第10个点

0F 00 12 03 0F   //起始时间0F15分) 000时) 1218日) 033月) 0F15年)

15 00 12 03 0F   //结束时间1521分) 000时) 1218日) 033月) 0F15年)

56             //校验和

16             //帧尾

 

10 5A 01 00 5B 16 

10 

5A       //召唤I级数据

01 00     //RTU地址

5B       //校验和

16       //帧尾

 

68 15 15 68 28 01 00 78 01 07 01 00 0B 01 08 0F 00 92 03 0F 14 00 92 03 0F 29 16

68 15 15 68          //帧头

28                 //控制域

01 00              //RTU地址

78 

01 

07                //激活确认

01 00             //RTU地址

0B 

01                //起始点01,第1个点

08                //结束点08,第8个点(此时采集器实际就只有前8个点)

0F 00 92 03 0F  

//起始时间0F15分)000时)921001  00103位星期4,低518日) 033月) 0F15年)

14 00 92 03 0F 

//结束时间1420分)000时)921001  00103位星期4,低518日) 033月) 0F15年)

 

 

 

 

0 0
原创粉丝点击