当前位置:首页 > 工业控制 > 电路设计项目集锦
[导读]BACnet 是一种国际标准的楼宇自动化通信协议,可使来自不同制造商的设备(如供暖、通风、空调、照明和安防系统)能够相互通信。尽管当前的 BACnetnet 系统主要使用以太网作为传输介质(BACnet/IP),但在早期阶段,RS485(BACnet MSTP)通常被用作第0层。

BACnet 是一种国际标准的楼宇自动化通信协议,可使来自不同制造商的设备(如供暖、通风、空调、照明和安防系统)能够相互通信。尽管当前的 BACnetnet 系统主要使用以太网作为传输介质(BACnet/IP),但在早期阶段,RS485(BACnet MSTP)通常被用作第0层。

BACnet 的栈接口在 C++ 和 Python 中均可用于 Raspberry Pi。然而,大多数教程几乎完全专注于 BACnet/IP。

在本教程中,我将向您展示如何在树莓派上使用 BACnet MSTP。

硬件

建议使用较新的树莓派4或Pi 5来实现BACnet。原因有两点:第一,BACnet堆栈相对较大且资源消耗较高;第二,这些型号配备了多个硬件UART接口,专用于此功能,不会同时用于蓝牙等其他用途。

此外,我们需要一个RS485接口来通过BACnet MSTP进行通信。为此,我使用了一个带电隔离功能的Zihatec RS485 HAT。

布线

至于BACnet MS/TP,最常见的连接方式是菊花链总线配置,即使用单根RS485电缆将网络中的所有设备按线性链式连接。

为此,请将每个设备的“+”和“-”端子相互连接。HAT配备有5针接口,其中两个引脚标有“A”和“B”。A引脚必须连接到其他设备的“+”端子,B引脚则连接到“-”端子。

对于较远距离,建议使用双绞线电缆。通过RS485可实现最长一英里的传输距离。

HAT上的设置

HAT上的DIP开关必须设置为RS485模式(半双工)。为此,请按以下方式设置开关:

•S1:关 - 开 - 开 - 关

•S2:关闭 - 关闭 - 开启 - 开启

•S3:关闭 - 关闭 - 开启 - 开启

现在我们需要使用两个跳线来选择K3上要使用的UART。跳线必须设置为U3(UART3)、U4(UART4)或U5(UART5)位置之一。

注意:在 Raspberry Pi 5 上,UART 的编号方式不同。此处,U3 是 UART2,U4 是 UART3,依此类推。

准备操作系统

首先,将当前版本的 Raspbianbian 操作系统(在本例中为 Debian Trixie 64 位)安装到 SD SD 卡上。然后,像往常一样,将操作系统更新到最新版本:

现在我们需要启用要使用的UART。为此,请打开Config.txt文件:

现在,让我们在文件末尾启用相应的UART。以UART3为例,应设置为:

保存 Config.txt 文件并重启树莓派后,我们现在可以检查 UART 是否已启用:

此外,对于相应的UART,现在应可在路径 /dev/ttyAMAxAx 处提供接口。

安装并编译 C/C++ BACnetnet 栈

现在我们可以开始安装BACnet软件栈了。

这些编译好的文件现在应该位于 bacnet-stack/bin/bin 目录中,具体是 BACnet MSTP 的三个示例程序:

测试BACnet协议栈

该堆栈包含多种用于MSTP的示例程序,其中包括一个用于从BACnet MSTP总线捕获数据的工具。

我们只需将RS485接口连接到现有系统,即可记录通信协议。(如果不存在BACnet MSTP系统,您也可以直接在电脑上安装YABE并记录此通信。)

为此,请在 /bacnet-stack/bin/bin 目录中输入以下命令:

当然,可能需要调整波特率和接口路径。

mstpcap 会将所有接收到的数据包记录到文件中,直到程序通过 Ctrl+C+C 终止为止。

YABE 在树莓派上

在树莓派上使用BACnet IP和MSTP的另一种方法是使用YABE(Yet Another BACnet Explorer)。由于YABE实际上是一个基于微软.NET Framework编写的Windows程序,因此我们需要先安装mono-complete,以便YABE能在Linux系统上运行。

现在我们可以下载最新版本的 YABE 作为 ZIP 文件(不是 EXEE 安装程序!!!),然后解压它。

现在可以使用 mono mono 启动 Yabe。要访问接口,应通过 sudo sudo 运行启动命令

通道的配置窗口将自动打开。在“端口”下,选择串行接口的路径,例如 /dev/ttyAMA3。

按下开始按钮后,YABE 会自动发送一个 Whois 查询,并显示总线上可用的设备:

本文编译自hackster.io

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除( 邮箱:macysun@21ic.com )。
关闭