欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 健康 > 美食 > BACnet-NPDU(4)

BACnet-NPDU(4)

2024/10/25 14:23:59 来源:https://blog.csdn.net/fuluoce/article/details/142514248  浏览:    关键词:BACnet-NPDU(4)

前面抓取了BACnet 的UDP和RS485数据进行分析,现在做一下总结。
BACnet不管是走UDP还是RS485,里面的NPDU和APDU数据结构是一样的,只是BACnet的头不一样,这里做一下总结。


1、UDP的BACnet 头

 BACnet/IP 使用 UDP 协议进行数据传输,采用客户端-服务器通信方式,设备通常充当服务器,默认端口为 47808(0xBAC0)。BACnet/IP 数据包主要由不可变部分和可变部分组成。不可变部分由 BVLC 类型、BVLC 功能和长度组成,而可变部分则根据 BVLC 功能而变化。BACnet/IP 数据包的结构如下图所示:

基本报文类型包括Original-Unicast-NPDU(单播)、Original-Broadcast-NPDU(广播)、Forwarded-NPDU(转发),具体格式如下图所示:

Original-Unicast-NPDU(单播)

Original-Broadcast-NPDU(广播)

Forwarded-NPDU(转发)

2、RS485的BACnet 头

帧格式

例如数据(hex):55 FF 01 03 02 00 00 D7 

0x550xff0x010x030x020x000x000xD7BACnet数据BACnet数据CRC
帧头帧类型目的地址源地址BACnet数据长度,大端CRC

帧类型目前定义为 0-7,8-127 为 ASHRAE 保留。帧类型 128-255 可供供应商用于非 BACnet 帧,数据的前两个字节表示供应商标识符。

当前定义的帧为

令牌 (0)、

主站轮询 (1)、

主站轮询回复 (2)、

测试请求 (3)、

测试响应 (4)、

BACnet 数据等待回复 (5)、

BACnet 数据不等待回复 (6)

回复推迟 (7)。


目标站地址可以是 0-127(用于发送到主节点)、0-254(用于发送到从属节点)和 255(用于向所有节点广播)

3、NDPU

npdu数据结构如下:

Control 字节解释

BitDescriptionIf 1If 0
7APDUNPDU  传递网络层消息NPDU 包含 BACnet APDU
6ReservedReservedReserved
5Destination Specifier包含DNET DLEN DADR 不包含DNET DLEN DADR 
4ReservedReservedReserved
3Source Specifier包含SNET SLEN SADR 不包含SNET SLEN SADR 
2Expecting reply等待回复不用回复
1,0Priority11=生命安全,10=关键设备,01=紧急 00=正常

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com