Skip to main content

reComputer R1000 使用 bacnet MS/TP

note

本文档由 AI 翻译。如您发现内容有误或有改进建议,欢迎通过页面下方的评论区,或在以下 Issue 页面中告诉我们:https://github.com/Seeed-Studio/wiki-documents/issues

简介

BACnet MS/TP(主从/令牌传递)是一种用于楼宇自动化和控制网络的通信协议。它是 BACnet(楼宇自动化和控制网络)协议套件的一部分。MS/TP 通常使用 RS-485 物理层和总线拓扑。所有设备都连接到同一条双绞线电缆上。在 MS/TP 网络中有主站和从站。主站负责生成和传递令牌,而从站仅在收到请求时响应。主设备通过传递令牌来决定哪个设备可以发送数据。令牌传递机制确保了总线上的通信是有序且无冲突的。

本文主要介绍如何在 reComputer R1000 上进行 bacnet MS/TP 协议的功能测试。我们在 reComputer R1000 上模拟了一个 bacnet MS/TP 服务器,然后在 W10 PC 上使用 YABE 检查设备是否存在。如果我们模拟的设备可以正常被找到,则说明 bacnet MS/TP 通信正常。

开始

在开始这个项目之前,您可能需要提前准备好硬件和软件,如下所述。

硬件准备

reComputer R1000

软件

  • 由于 bacnet MS/TP 使用 RS485 物理层,您可以参考此 wiki 了解如何在 reComputer R1000 V1.0 上正常使用 RS485 功能。
  • 我们借助 bacnet-stack 库应用程序模拟服务器,因此您需要输入以下命令来下载它:
    git clone https://github.com/bacnet-stack/bacnet-stack.git
    cd bacnet-stack
  • 请访问此 链接 下载 YABE(Yet Another BACnet Explorer)。
  • 请访问此 链接 下载 Wireshark。

硬件配置

本测试使用 RS485 转 USB 模块连接 reComputer R1000 和 W10 PC。

pir

测试 bacnet mstp 通信功能的步骤

步骤 1:下载 bacnet-stack

步骤 2bacnet-stack 的默认串口号是 /dev/ttyUSB0。如果您实际使用的端口号不是这个,则无法通信,因此需要修改端口号。需要修改的文件名是 ports/ linux/rs485.c。将其更改为您需要使用的端口号。我将其更改为 /dev/ttyAMA30

步骤 3:输入以下指令进行编译。编译结果可以在 bin 目录中看到。

make clean
make mstp
# 等待
cd bin/

步骤 4:运行 bacserv 并使用 YABE 搜索模拟设备。您可以看到我们模拟的设备已成功被搜索到。

步骤 5:使用 Wireshark 查看 bacnet MS/TP 消息。您可以看到我们模拟的设备正在传递令牌。由于我的总线上没有其他设备,它会持续传递令牌。

技术支持与产品讨论

感谢您选择我们的产品!我们提供多种支持渠道,以确保您使用我们的产品时体验顺畅。我们提供多个沟通渠道,以满足不同的偏好和需求。

Loading Comments...