今年真减肥 2023-03-24 09:34 采纳率: 35.7%
浏览 23
已结题

Bacnet MSTP帧头CRC校验失败

使用BacnetStack 1.0.0源码生成Bacnet客户端用于对Bacnet设备进行数据采集
发现客户端长时间运行后,会出现采集超时的情况,通过日志发现报错大量的HeaderCRC字段校验失败?

MSTP: Rx Header: BadCRC [00]
MSTP: Rx Header: BadCRC [FF]
MSTP: Rx Header: BadCRC [FF]
MSTP: Rx Header: BadCRC [FF]

  • 写回答

2条回答 默认 最新

  • IT_service_mesh 2023-03-24 09:57
    关注

    参考GPT和自己的思路:您的问题涉及到Bacnet MSTP帧头CRC校验失败,这是因为在Bacnet数据采集过程中,客户端发现了许多帧头CRC校验错误的信息。MSTP协议中,帧头CRC是对于整个Bacnet帧的一种校验方式,它的作用是检查信息发送端和接收端之间传输过程中是否发生了数据错误,以此保证数据的可靠性。如果帧头CRC校验失败,说明数据在传输过程中出现了错误,导致接收端无法正常解析Bacnet帧数据。

    对于您的问题,可能原因如下:

    1. 校验算法:在MSTP协议中,帧头CRC校验算法是非常重要的,如果算法有错误或者缺陷,就会导致校验失败的情况。针对这一问题,您需要重新检查BacnetStack 1.0.0源码中的帧头CRC校验算法,确保其正确性。

    2. 软件问题:如果客户端长时间运行后,出现了采集超时的情况,那么可能是由软件问题引起的。您需要对BacnetStack 1.0.0源码进行审查,查找可能存在的软件bug,并进行修复。

    3. 硬件问题:除了软件问题,您还需要检查硬件设备,例如串口通讯接口是否正常工作,是否存在通讯干扰等。

    针对以上问题,建议您更换一个稳定的BacnetStack版本,或者检查BacnetStack 1.0.0源码中的帧头CRC校验算法,并进行修改。同时,您还需要检查硬件设备,加强通讯电磁干扰的防护。希望我的回答能够帮助到您。

    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 3月30日
  • 创建了问题 3月24日

悬赏问题

  • ¥200 csgo2的viewmatrix值是否还有别的获取方式
  • ¥15 Stable Diffusion,用Ebsynth utility在视频选帧图重绘,第一步报错,蒙版和帧图没法生成,怎么处理啊
  • ¥15 请把下列每一行代码完整地读懂并注释出来
  • ¥15 pycharm运行main文件,显示没有conda环境
  • ¥15 易优eyoucms关于二级栏目调用的问题
  • ¥15 寻找公式识别开发,自动识别整页文档、图像公式的软件
  • ¥15 为什么eclipse不能再下载了?
  • ¥15 编辑cmake lists 明明写了project项目名,但是还是报错怎么回事
  • ¥15 关于#计算机视觉#的问题:求一份高质量桥梁多病害数据集
  • ¥15 特定网页无法访问,已排除网页问题