首页 理论教育BACnet数据包接收、发送与设备访问速度提升

BACnet数据包接收、发送与设备访问速度提升

【摘要】:2.BACnet数据包的发送部分对于BACnet数据包的发送,在BACnet数据包字节数不是很多的情况下,最好一次性地输出,防止BACnet接收设备在BACnet数据帧接收时序比较严格的情况下,认为该数据包无效而丢弃不处理。

1.BACnet数据包接收

在BACnet数据包接收部分,要在串口配置参数时优化读写串口的Timeout参数。对于串口的异常,应用串口清理API PurgeComm及时进行串口清理动作。在数据处理过程中,无效的信息和运行时间都要监控,依据当前的系统波特率去动态调整各个参数使之优化配置。

2.BACnet数据包的发送部分

对于BACnet数据包的发送,在BACnet数据包字节数不是很多的情况下,最好一次性地输出,防止BACnet接收设备在BACnet数据帧接收时序比较严格的情况下,认为该数据包无效而丢弃不处理。

在BACnet MS/TP的串口数据传输过程中,数据处理要进行预期的处理和判断,防止无效的数据过多影响后面的BACnet状态机的工作,造成BACnet设备CPU的Loading过高影响其他事务的处理过程。

3.提高BACnet MS/TP设备的数据访问速度

BACnet MS/TP采用的是令牌环网的媒质访问控制机制,这就造成BACnet设备访问上在特定时间内有RS-485总线被占用的情况。为了实现设备之间的快速访问,尽量使令牌环网能够高效率运行,有一种提高BACnet MS/TP环网高效运行的机制是:尽量把设备的Station ID设定为连续的,而且主要的令牌使用设备,如所有BACnet设备的参数配置,数据采集设备的Station ID设定为0,这样就会得到一个高效的令牌环网。还有一个参数就是Nmax-master参数,如果BACnet MS/TP令牌环网的设备个数比较固定,设备网络规划已经稳定,将Nmax-master参数设定为BACnet令牌环网的最大设备Station ID值,也就是该令牌环网的设备个数。