1. 通信报文格式及编码举例

3.1 本地直连查询2个监控数据

a)上位机发送如图1所示:

                                       图1

桩通讯报文解析 java_监控数据

      

图1中的标注解释如下:

  1. 起始标志,固定为0x7E
  2. AP层协议类型,0x01表示为AP:A
  3. 承载协议类型,0x01表示承载的上层协议类型为VP:A
  4. 地址单元组成部分1,站点编号,1字节
  5. 地址单元组成部分2,设备编号,6字节,为字符串:"A01001"
  6. 通信包标识号,发起端产生,2字节倒序,上图中的通信包标识号为0x33D3
  7. VP层交互标志,0x80表示正常的命令请求
  8. MCP层协议标识,目前只定义了一种0x01
  9. 命令标识,0x02表示是查询命令
  10. 应答标志,命令发起方该字段填充0xFF
  11. 第一个监控数据
  12. 第二个监控数据
  13. CRC校验单元,2字节倒序
  14. 结束标志,固定为0x7E

 

b)设备回复如图2所示:

                                        图2

  

桩通讯报文解析 java_设备与程序间通讯_02

    

     图2中的标注解释如下:

  1. 起始标志,固定为0x7E
  2. AP层协议类型,0x01表示为AP:A
  3. 承载协议类型,0x01表示承载的上层协议类型为VP:A
  4. 地址单元组成部分1,站点编号,1字节
  5. 地址单元组成部分2,设备编号,6字节,为字符串:"A01001"
  6. 通信包标识号,发起端产生,2字节倒序,上图中的通信包标识号为0x15F4
  7. VP层交互标志,命令回复方该字段填充0x00
  8. MCP层协议标识,目前只定义了一种0x01
  9. 命令标识,0x02表示是查询命令
  10. 应答标志,0x00表示命令成功执行
  11. 第一个监控数据
  12. 第二个监控数据
  13. CRC校验单元,2字节倒序
  14. 结束标志,固定为0x7E
  15.  

3.2 单个告警数据

a) 设备告警上报如图3所示:

                                       3


桩通讯报文解析 java_设备与程序间通讯_03

      图3中的标注解释如下:

  1. 起始标志,固定为0x7E
  2. AP层协议类型,0x03表示为AP:C
  3. 承载协议类型,0x01表示承载的上层协议类型为VP:A
  4. 地址单元组成部分1:站点编号
  5. 地址单元组成部分2:设备编号,6字节,为字符串:"A01001"
  6. 通信包标识号,发起端产生,2字节倒序,上图中的通信包标识号为0x8001
  7. VP层交互标志,0x80表示正常的命令请求
  8. MCP层协议标识,目前只定义了一种0x01
  9. 命令标识,0x01表示是上报命令
  10. 应答标志,命令发起方该字段填充0xFF
  11. 上报类型,0x01表示告警上报
  12. 监控告警数据
  13. CRC校验单元,2字节倒序
  14. 结束标志,固定为0x7E

b)中心应答: 

                           图4

 


图4 中的标注解释如下:

  1. 起始标志,固定为0x7E
  2. AP层协议类型,0x03表示为AP:C
  3. 承载协议类型,0x01表示承载的上层协议类型为VP:A
  4. 地址单元组成部分1:主单元编号,01
  5. 地址单元组成部分2:设备编号,6字节,为字符串:"A01001"
  6. 通信包标识号,发起端产生,2字节倒序,上图中的通信包标识号为0x8001
  7. VP层交互标志,命令回复方该字段填充0x00
  8. MCP层协议标识,目前只定义了一种0x01
  9. 命令标识,0x01表示是上报命令
  10. 应答标志,0x00表示命令成功执行
  11. 上报类型,0x01表示告警上报
  12. 监控告警数据
  13. CRC校验单元,2字节倒序
  14. 结束标志,固定为0x7E

3.3 开站上报

a)远端单元发送开站上报包

 

 

                                    5

桩通讯报文解析 java_桩通讯报文解析 java_04

图5 中的标注解释如下:

(1)起始标志,固定为0x7E

(2)AP层协议类型,0x03表示为AP:C

(3)承载协议类型,0x01表示承载的上层协议类型为VP:A

(4)地址单元组成部分1:站点编号

(5)地址单元组成部分2:设备编号,6字节,为字符串:"A01001"

(6)通信包标识号,发起端产生,2字节倒序,上图中的通信包标识号为0x8001

(7)VP层交互标志,0x80表示正常的命令请求

(8)MCP层协议标识,目前只定义了一种0x01

(9)命令标识,0x01表示是上报命令

(10)应答标志,命令发起方该字段填充0xFF

(11)上报类型,0x01表示开站上报

(12)上报远端单元的IP地址

(13)CRC校验单元,2字节倒序

(14)结束标志,固定为0x7E

 

b)主单元发送开站上报应答包:

                             6

桩通讯报文解析 java_告警数据_05

图6 中的标注解释如下:

     (1)起始标志,固定为0x7E

     (2)AP层协议类型,0x03表示为AP:C

     (3)承载协议类型,0x01表示承载的上层协议类型为VP:A

     (4)地址单元组成部分1:站点编号

     (5)地址单元组成部分2:设备编号,6字节,为字符串:"A01001"

     (6)通信包标识号,发起端产生,2字节倒序,上图中的通信包标识号为0x8001

     (7)VP层交互标志,命令回复方该字段填充0x00

     (8)MCP层协议标识,目前只定义了一种0x01

     (9)命令标识,0x01表示是上报命令

     (10)应答标志,0x00表示命令成功执行

     (11)上报类型,0x02表示开站上报

     (12)CRC校验单元,2字节倒序

      (13)结束标志,固定为0x7E

3.4 心跳上报

a)远端单元发送心跳上报包


 

                         7

桩通讯报文解析 java_设备与程序间通讯_06

图7 中的标注解释如下:

     (1)起始标志,固定为0x7E

     (2)AP层协议类型,0x03表示为AP:C

     (3)承载协议类型,0x01表示承载的上层协议类型为VP:A

     (4)地址单元组成部分1:主单元编号,0x01

     (5)地址单元组成部分2:远端单元编号,6字节,为字符串:"A01001"

     (6)通信包标识号,发起端产生,2字节倒序,上图中的通信包标识号为0x8001

     (7)VP层交互标志,0x80表示正常的命令请求

     (8)MCP层协议标识,目前只定义了一种0x01

     (9)命令标识,0x01表示是上报命令

     (10)应答标志,命令发起方该字段填充0xFF

     (11)上报类型,0x07表示心跳上报

     (12)CRC校验单元,2字节倒序

     (13)结束标志,固定为0x7E

b)主单元发送心跳上报应答包:

                                        8

桩通讯报文解析 java_告警数据_07

图8 中的标注解释如下:

     (1)起始标志,固定为0x7E

     (2)AP层协议类型,0x03表示为AP:C

     (3)承载协议类型,0x01表示承载的上层协议类型为VP:A

     (4)地址单元组成部分1:主单元编号,0x01

     (5)地址单元组成部分2:远端单元编号,6字节,为字符串:"A01001"

     (6)通信包标识号,发起端产生,2字节倒序,上图中的通信包标识号为0x8001

     (7)VP层交互标志,命令回复方该字段填充0x00

     (8)MCP层协议标识,目前只定义了一种0x01

     (9)命令标识,0x01表示是上报命令

     (10)应答标志,0x00表示命令成功执行

     (11)上报类型,0x07表示心跳上报

     (12)设置远端单元工作模式,

     (13)设置远端单元侦测器开关

     (14)设置远端单元屏蔽器开关

     (15)CRC校验单元,2字节倒序

     (16)结束标志,固定为0x7E

 

具体的C#开发代码地址如:C#基于Socket的UDP和TCP处理通信报文开发传输