电力用户用电信息采集系统通信协议报文解析示例

您所在的位置:网站首页 电表编码查询网站 电力用户用电信息采集系统通信协议报文解析示例

电力用户用电信息采集系统通信协议报文解析示例

2023-07-04 04:13| 来源: 网络整理| 查看: 265

电力用户用电信息采集系统通信协议报文解析示例

本文解析实例和见附录参考 均来自 《国家电网公司企业标准 Q / GDW 1376.1 — 2012 电力用户用电信息采集系统通信协议 第1部分:主站与采集终端通信协议》 参考文献链接 (Q / GDW 376.1—2009电力用户用电信息采集系统通信协议报文解析示例)[https://blog.csdn.net/wuyu92877/article/details/78715876]

字节格式

帧的基本单元为 8 位字节。链路层 传输顺序为 低位在前,高位在后;低字节在前,高字节在后

英文名词含义:

BIN 码 : BIN 就是二进制编码。比如 十进制 数的 11, 用 BIN码 表示就是 1011; 二进制 1011 转十进制后 数值就是 11 BCD 码(别称 8421码):BCD 码就是用 四位二进制数 表示 一位十进制数 的编码,比如 **十进制数 11 **用 BCD码 表示就是 00010001; 二进制 00010001 转十六进制后 数值就是 11 帧格式 帧格式定义结构 起始字符(68H) ↑ 固定长度的报文头 ↓ 长度 L 长度 L 起始字符(68H) 控制域 C 控制域 用户数据区 地址域 A 地址域 链路用户数据 链路用户数据 (应用层) 校验和 CS 帧校验和 结束字符(16H)   传输规则 线路空闲状态为二进制 1帧的字符之间无线路空闲间隔;两帧之间的线路空闲间隔最少需 33 位如按 e) 检出了差错,两帧之间的线路空闲间隔最少需 33 位帧校验和(CS)是用户数据区的八位位组的算术和,不考虑进位位接收方校验 对于每个字符:校验起动位、停止位、偶校验位​ 对于每帧 检验帧的固定报文头中的开头和结束所规定的字符以及协议.标识位识别 2 个长度 L每帧接收的字符数为用户数据长度 L1+8帧校验和结束字符校验出一个差错时,校验按 c)的线路空闲间隔 若这些校验有一个失败,舍弃此帧;若无差错,则此帧数据有效 链路层 长度L

长度 L 包括 协议.标识 和 用户数据长度 ,由2字节组成,如下表格所示:

D7 D6 D5 D4 D3 D2 D1 D0 D15 D14 D13 D12 D11 D10 D9 D8

协议标识由图2中D0~D1两位编码表示,定义如下:

D0=0、D1=0:为禁用;D0=1、D1=0:为《Q/GDW 130—2005电力负荷管理系统数据传输规约》使用;D0=0、D1=1:为本协议使用;D0=1、D1=1,为保留。用户数据长度L1:由D2~D15组成,采用BIN编码,是控制域、地址域、链路用户数据(应用层)的字节总数采用专用无线数传信道,长度L1不大于255;采用网络传输,长度L1不大于16383。 控制域C

控制域C表示报文传输方向和所提供的传输服务类型的信息,定义如下表格所示:

  D7 D6 D5 D4 D3~D0 上行方向 传输方向位 DIR 启动标志位 PRM 帧计数位 FCB 帧计数有效位 FCV 功能码 下行方向 要求访问位 ACD 保留 应用层 应用层格式

应用层(链路用户数据)格式定义 如下表所示

应用层功能码AFN帧序列域SEQ数据单元标识1数据单元1……数据单元标识n数据单元n附加信息域AUX 应用层功能码

应用层功能码AFN由 一字节 组成,采用二进制编码表示,具体定义如下表所示

应用功能码 AFN应用功能定义00H确认∕否认01H复位02H链路接口检测03H中继站命令04H设置参数05H控制命令06H身份认证及密钥协商07H备用08H请求被级联终端主动上报09H请求终端配置0AH查询参数0BH请求任务数据0CH请求 1 类数据(实时数据)0DH请求 2 类数据(历史数据)0EH请求 3 类数据(事件数据)0FH文件传输10H数据转发11H~FFH备用 报文解析示例 登录帧(终端 -> 主站)

该帧为集中器发送给主站的登录注册帧

帧报文格式 68H L L 68H C A AFN=03H SEQ 数据单元标识(DA=0) 数据单元 CS 16H

链路接口检测报文格式

登录帧解析

登录帧:68 32 00 32 00 68 C9 03 44 04 00 00 02 71 00 00 01 00 88 16

68 起始字符(68H) 32 00 长度 L 数据长度 2 字节,数据类型排列顺序为 低位在前 高位在后,正序数值为 0x0032 ,转换为二进制为 0b0000000000110010 D1~D0 为协议类型。其 0b10 代表为 1376.1 协议使用标志 D15~D2 为长度,为报文的用户数据区长度,对应的二进制值为 0b1100,转换为十进制为12,即原始报文的红色部分 32 00 长度 L 内容解释同上,使用 2 个长度表示长度确认比对 68 起始字符(68H) C9 控制域 C 控制域C,二进制数值为 0b11001001 ,对应 D7~D0位

 

D7

D6

D5

D4

D3~D0

上行方向

传输方向位 DIR

启动标志位 PRM

要求访问位 ACD

保留

功能码

 

1

1

0

0

1001

D7:传输方向位DIR,D7 位的数值为1,代表此帧报文是由终端发出的 上行报文 D6:启动标志位PRM,D6 位的数值为1,代表此帧报文来自启动站 D5:要求访问位,D5 位的数值为0,ACD=1表示终端有重要事件等待访问,则附加信息域中带有事件计数器EC(EC见本部分4.3.4.6.3);ACD=0表示终端无事件数据等待访问 D4:保留 D3~D0:功能码,对应值为9,当 启动标志位PRM=1 时,代表该帧报文的帧类型为请求/响应帧,服务功能为链路测试,及使用于 AFN=02 的应用层功能码 功能码定义(PRM=1)

功能码

帧 类 型

服务功能

0

备用

1

发送∕确认

复位命令

2~3

备用

4

发送∕无回答

用户数据

5~8

备用

9

请求∕响应帧

链路测试

10

请求∕响应帧

请求1级数据

11

请求∕响应帧

请求2级数据

12~15

备用

03 44 04 00 00 地址域 地址域分为三部分,03 44 | 04 00 | 00 地址域由 行政区划码A1、终端地址A2、主站地址和组地址标志A3 组成,格式见如下表所示

地址域

数据格式

字节数

对应数值

行政区划码A1

BCD

2

03 44

终端地址A2

BIN

2

04 00

主站地址和组地址标志A3

BIN

1

00

第一部分为 行政区划码A1 ,行政区划码按GB 2260—91的规定执行,数据格式为 两字节BCD码 : 03 44,字节顺序为低位在前高位在后,实际数值应为 4403 第二部分为 终端地址A2 ,终端地址A2选址范围为1~65535。A2=0000H 为无效地址,A2=FFFFH 且A3 的 D0 位为“1”时表示系统广播地址,数据格式为 两字节BIN码 : 04 00,字节顺序为低位在前高位在后,实际数值应为 0004 第三部分为 主站地址和组地址标志A3,A3 的 D0 位为终端组地址标志,D0=0 表示终端地址 A2 为单地址;D0=1 表示终端地址 A2 为组地址;A3 的 D1~D7 组成 0~127 个主站地址 MSA。主站启动的发送帧的 MSA 应为非零值,其终端响应帧的 MSA 应与主站发送帧的 MSA 相同。终端启动发送帧的 MSA 应为零,其主站响应帧的 MSA 也应为零。数据格式为 一字节BIN码 : 00,A3 的 D0 位为终端组地址标志,D0=0 表示终端地址 A2 为单地址, D7~D1 为主站地址 MSA,另外该帧是由终端发起的上行报文,终端启动发送帧的 MSA 应为 0,其主站的响应帧也应为 0,这是硬性规定,如果不是 0,则一定是错误的 02 应用层功能码 AFN 应用层功能码由 一字节组成,采用二进制编码表示,对应数值为 02H ,代表应用功能为链路接口检测 71 帧序列域 SEQ 帧序列域长度为 1 字节,0x71 转换为二进制为 0b01110001,对应相关标志如下表所示

D7

D6

D5

D4

D3~D0

TpV

FIR

FIN

CON

PSEQ ∕ RSEQ

0

1

1

1

0001

TpV: 帧时间标签有效位,TpV=0,表示在附加信息域中无时间标签Tp;TpV=1,表示在附加信息域中带有时间标签 Tp 首帧标志 FIR: 值为 “1”,报文的第一帧 末帧标志 FIN: 值为 “1”,报文的最后一帧 FIR、FIN 组合状态所表示的含义见下表

FIR

FIN

应用说明

0

0

多帧:中间帧

0

1

多帧:结束帧

1

0

多帧:第1帧,有后续帧。

1

1

单帧

请求确认标志位 CON: 在所收到的报文中,CON 为值 “1”,表示需要对该帧报文进行确认;值为“0”,表示不需要对该帧报文进行确认 启动帧序号 PSEQ: 取自 1字节 的 启动帧计数器 PFC 的低 4 位计数值 0~15。 启动帧计数器 PFC:,每一对 启动站 和 从动站之间均有 1 个独立的、由 1 字节构成的计数范围为 0~255 的 启动帧帧序号计数器PFC,用于记录当前启动帧的序号。启动站每发送 1 帧报文,该计数器加1,从 0~255 循环加1递增;重发帧则不加 1。目前该值为 0b0001 响应帧序号 RSEQ:响应帧序号 RSEQ 以启动报文中的 PSEQ 作为第一个响应帧序号,后续响应帧序号在 RSEQ 的基础上循环加 1 递增,数值范围为 0~15 帧序号改变规则   1. 启动站发送报文后,当一个期待的响应在超时规定的时间内没有被收到,如果允许启动站 重发,则该重发的启动帧序号 PSEQ 不变。重发次数可设置,最多 3 次;重发次数为 0, 则不允许重发   2. 当 TpV=0 时,如果从动站连续收到两个具有相同启动帧序号 PSEQ 的启动报文,通常意味 着报文的响应未被对方站收到。在这种情况下,则重发响应(不必重新处理该报文)   3. 当 TpV=0 时,如果启动站连续收到两个具有相同响应帧序号 RSEQ 的响应帧,则不处理第 二个响应   4. 终端能同时处理多个请求 00 00 信息点DA 信息点DA 由 信息点单元DA1 和 信息点组DA2 两个字节构成。DA2 采用二进制编码方式表示信息点组,低位在前高位在后,DA1 对位表示某一信息点组的1~8个信息点,以此共同构成信息点标识pn(n=1~2040),当DA1和DA2全为“0”时,表示终端信息点,用 p0 表示;运算规则为 (DA2-1)*8+DA1 对应位的值就是信息点标识 pn ,格式如下表所示

信息点组DA2

信息点元DA1

D7~D0

D7

D6

D5

D4

D3

D2

D1

D0

1

p8

p7

p6

p5

p4

p3

p2

p1

2

p16

p15

p14

p13

p12

p11

p10

p9

3

p24

p23

p22

p21

p20

p19

p18

p17

255

P2040

P2039

P2038

P2037

P2036

P2035

P2034

P2033

01 00 信息类DT 信息类DT 由信息类元DT1 和 信息类组DT2 两个字节 构成。DT2 采用二进制编码方式表示信息类组,DT1对位表示某一信息类组的1~8种信息类型,以此共同构成信息类标识Fn(n=1~248),运算规则为 DT2*8+DT1 对应位的值(8421码) 就是信息类标识Fn,格式如下表所示

信息类组DT2

信息类元DT1

D7~D0

D7

D6

D5

D4

D3

D2

D1

D0

0

F8

F7

F6

F5

F4

F3

F2

F1

1

F16

F15

F14

F13

F12

F11

F10

F9

2

F24

F23

F22

F21

F20

F19

F18

F17

30

F248

F247

F246

F245

F244

F243

F242

F241

未定义

88 帧校验和(CS) 帧校验和(CS)是用户数据区的8位位组的算术和,不考虑进位位 16 结束字符(16H) 帧结束符 确认帧(主站 -> 终端) 帧报文格式 68H L L 68H C A AFN=00H SEQ 数据单元标识 数据单元 EC(见《Q/GDW 1376.1—2012 电力用户用电信息采集系统通信协议》 部分4.3.4.6.3) Tp(见《Q/GDW 1376.1—2012 电力用户用电信息采集系统通信协议》 部分4.3.4.6.4) CS 16H

确认/否认报文格式

确认帧解析

确认帧:68 32 00 32 00 68 0B 03 44 04 00 00 00 61 00 00 01 00 B8 16

68 起始字符(68H) 32 00 长度 L 数据长度 2 字节,数据类型排列顺序为 低位在前 高位在后,正序数值为 0x0032 ,转换为二进制为 0b0000000000110010 D1~D0 为协议类型。其 0b10 代表为 1376.1 协议使用标志 D15~D2 为长度,为报文的用户数据区长度,对应的二进制值为 0b1100,转换为十进制为12,即原始报文的红色部分 32 00 长度 L 内容解释同上,使用 2 个长度表示长度确认比对 68 起始字符(68H) 0B 控制域 C 控制域C,二进制数值为0b00001011,对应d7~d0位

 

D7

D6

D5

D4

D3~D0

下行方向

传输方向位 DIR

启动标志位 PRM

帧计数位 FCB

帧计数有效位 FCV

功能码

 

0

0

0

0

1011

D7:传输方向位 DIR,D7 位的数值为 0,代表此帧报文是由主站发出的下行报文 D6:启动标志位 PRM,D6 位的数值为 0,代表此帧报文来自从动站 D5:帧计数位 FCB,D5 位的数值为 0,由于帧计数有效位的值为 0,帧计数位无效 D4:帧计数有效位 FCV,D4 位的数值为 0,代表帧计数位 FCB 位无效 D3~D0:功能码,对应值为 11,当启动标志位 PRM=0 时,代表该帧报文的帧类型为请求/响应帧 。服务功能为链路测试,及使用于 AFN=02 的应用层功能码 功能码定义(PRM=0)

功能码

帧类型

服务功能

0

确认

认可

1~7

备用

8

响应帧

用户数据

9

响应帧

否认:无所召唤的数据

10

备用

11

响应帧

链路状态

12~15

备用

03 44 04 00 00 地址域 地址域分为三部分,03 44 | 04 00 | 00 地址域由 行政区划码A1、终端地址A2、主站地址和组地址标志A3 组成,格式见如下表所示

地址域

数据格式

字节数

对应数值

行政区划码A1

BCD

2

03 44

终端地址A2

BIN

2

04 00

主站地址和组地址标志A3

BIN

1

00

第一部分为 行政区划码A1 ,行政区划码按GB 2260—91的规定执行,数据格式为 两字节BCD码 : 03 44,字节顺序为低位在前高位在后,实际数值应为 4403 第二部分为 终端地址A2 ,终端地址A2选址范围为1~65535。A2=0000H 为无效地址,A2=FFFFH 且A3 的 D0 位为“1”时表示系统广播地址,数据格式为 两字节BIN码 : 04 00,字节顺序为低位在前高位在后,实际数值应为 0004 第三部分为 主站地址和组地址标志A3,A3 的 D0 位为终端组地址标志,D0=0 表示终端地址 A2 为单地址;D0=1 表示终端地址 A2 为组地址;A3 的 D1~D7 组成 0~127 个主站地址 MSA。主站启动的发送帧的 MSA 应为非零值,其终端响应帧的 MSA 应与主站发送帧的 MSA 相同。终端启动发送帧的 MSA 应为零,其主站响应帧的 MSA 也应为零。数据格式为 一字节BIN码 : 00,A3 的 D0 位为终端组地址标志,D0=0 表示终端地址 A2 为单地址, D7~D1 为主站地址 MSA,另外该帧是由终端发起的上行报文,终端启动发送帧的 MSA 应为 0,其主站的响应帧也应为 0,这是硬性规定,如果不是 0,则一定是错误的 00 应用层功能码 AFN 应用层功能码由一字节组成,采用二进制编码表示,对应数值为 00H,确认∕否认报文 是对接收报文中需要被确认(CON=1)的回答,以及终端对所请求的数据不具备响应条件的否认回答。该报文为单帧报文,帧序列域的标志位 FIR=1,FIN=1,CON=0 61 帧序列域SEQ 帧序列域长度为 1字节,0x61转换为二进制为 0b01100001,相关标志对应如下表所示

D7

D6

D5

D4

D3~D0

TpV

FIR

FIN

CON

PSEQ/RSEQ

0

1

1

0

0001

TpV:帧时间标签有效位,TpV=0,表示在附加信息域中无时间标签Tp;TpV=1,表示在附加信息域中带有时间标签Tp 首帧标志 FIR: 值为 “1”,报文的第一帧 末帧标志 FIN: 值为 “1”,报文的最后一帧 FIR、FIN 组合状态所表示的含义见下表

FIR

FIN

应用说明

0

0

多帧:中间帧

0

1

多帧:结束帧

1

0

多帧:第1帧,有后续帧。

1

1

单帧

请求确认标志位 CON: 在所收到的报文中,CON 值为 “1”,表示需要对该帧报文进行确认;值为 “0”,表示不需要对该帧报文进行确认 启动帧序号 PSEQ: 取自 1字节 的 启动帧计数器 PFC 的低 4 位计数值 0~15。 启动帧计数器 PFC:,每一对 启动站 和 从动站之间均有 1 个独立的、由 1 字节构成的计数范围为 0~255 的 启动帧帧序号计数器PFC,用于记录当前启动帧的序号。启动站每发送 1 帧报文,该计数器加1,从 0~255 循环加1递增;重发帧则不加 1。目前该值为 0b0001 响应帧序号 RSEQ:响应帧序号 RSEQ 以启动报文中的 PSEQ 作为第一个响应帧序号,后续响应帧序号在 RSEQ 的基础上循环加 1 递增,数值范围为 0~15 帧序号改变规则   1. 启动站发送报文后,当一个期待的响应在超时规定的时间内没有被收到,如果允许启动站 重发,则该重发的启动帧序号 PSEQ 不变。重发次数可设置,最多 3 次;重发次数为 0, 则不允许重发   2. 当 TpV=0 时,如果从动站连续收到两个具有相同启动帧序号 PSEQ 的启动报文,通常意味 着报文的响应未被对方站收到。在这种情况下,则重发响应(不必重新处理该报文)   3. 当 TpV=0 时,如果启动站连续收到两个具有相同响应帧序号 RSEQ 的响应帧,则不处理第 二个响应   4. 终端能同时处理多个请求 00 00 数据单元标识中的 pn 信息点DA由信息点元DA1和信息点组DA2两个字节构成。当DA1和DA2全为“0”时,表示终端信息点,用p0表示; 01 00 数据单元标识中的 Fn 信息类DT 由信息类元 DT1 和信息类组 DT2 两个字节构成。转换成正序之后为 0x0001,表示 F1 — 全部确认,该确认没有数据体 B8 帧校验和 帧校验和,红色醒目确认帧 十六进制数值 相加 取后两位值 16 帧结束符 心跳帧(终端 -> 主站) 心跳数据格式 数据内容数据格式字 节 数终端时钟见附录A.16 帧报文格式 68H L L 68H C A AFN=03H SEQ 数据单元标识(DA=0) 数据单元 CS 16H

链路接口检测报文格式

心跳帧解析

心跳帧: 68 32 00 32 00 68 C9 03 44 04 00 00 02 72 00 00 04 00 8C 16

68 帧起始符 32 00 长度L 32 00 长度L 68 帧起始符 C9 控制域C 03 44 04 00 00 地址域A 02 应用层功能码 AFN=02 72 帧序列域SEQ 00 00 04 00 数据单元标识 pn=0,Fn=3 8C 帧校验和CS是用户数据区的8位位组的算术和,不考虑进位位 16 帧结束符

确认帧:68 32 00 32 00 68 0B 03 44 04 00 00 00 62 00 00 01 00 B9 16

68 帧起始符 32 00 长度L 32 00 长度L 68 帧起始符 0B 控制域C 03 44 04 00 00 地址域A 00 应用层功能码 AFN=00 62 帧序列域SEQ 00 00 01 00 数据单元标识 pn=0,Fn=1 B9 帧校验和CS是用户数据区的8位位组的算术和,不考虑进位位 16 帧结束符 知识点 Fn 和 pn定义 Fn名 称 及 说 明pnF1登  录p0F2退出登录p0F3心  跳p0F4~F248备  用


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3