BACnet脚本框架,用于测试DDC控制器
项目描述
BAC0

BAC0是一个异步的Python 3(3.10及以上)脚本应用程序,使用BACpypes3来处理IP网络上的BACnet™消息。这个库提供了简单的命令来浏览BACnet网络,从BACnet设备读取属性或将属性写入设备。
Python是一种易于学习的语言,是数据处理的一个非常强大的工具。与BACnet结合使用,它成为测试设备和与控制器交互的强大工具。
BAC0的名字来源于BACnet/IP通信使用的默认IP端口,即端口47808。十六进制表示为0xBAC0。
DDC控制器的测试驱动开发(TDD)
BAC0是为建筑自动化系统(BAS)程序员设计的。在这个领域中使用的控制器通常被称为DDC控制器(直接数字控制)。
典型的控制器可以根据制造商的不同以不同的方式编程(例如,块编程、基本“类似”脚本、C代码等)。BAC0 是一种统一的方法,使用 Python 语言和 BACnet/IP 通信,一旦构建了它们的序列,就可以与这些控制器交互。
BAC0 允许用户在没有连接到控制器的传感器的情况下简单测试应用程序。使用 out_of_service 属性,可以轻松地将值写入输入,使控制器认为输入已连接。
还可以在输出上执行“手动命令”(通常称为覆盖)。实际上,每个变量都由 BAC0 暴露并可见,可以使用简单的脚本语言或完整的单元测试套件(如 Pytest)与之交互。
如果没有像 BAC0 这样的程序,您可以依靠您的 DDC 编程工具...但它通常很慢,每个测试都必须手动执行。这也意味着,如果您想重复测试,测试越复杂,您能够做到这一点的机会就越小。
现在您可以编写测试并按需运行。我们将向您展示它是如何工作的。
更好的数据采集启动
正如您将发现的,当您在 BAC0 中定义控制器时,您将能够访问控制器中每个变量的历史数据。默认情况下,每个点每10秒趋势一次。这意味着您可以在启动过程中对一切进行分析。这允许您快速查看性能和问题。
这使得 BAC0 不仅是一个在办公室测试您的序列的好工具,而且还是一个真正好的启动、测试和平衡辅助工具。使用 Jupyter Notebook,您甚至可以直接从代码中创建美观的报告。
InfluxDB 原生支持
直接将 BAC0 历史数据连接到 InfluxDB v2.0 实例。然后可以使用 Grafana 来探索您的数据。
注意: BACnet™ 是 ASHRAE 的商标。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。
源分布
构建分布
bac0-2024.9.20.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 21a27280f0d4903125320d0297bb83e0c24ac2b1da84dc94f8ff1bc5c157e210 |
|
MD5 | ee25e87fb4c1f576d5ae7726ac8e0983 |
|
BLAKE2b-256 | 7693d741aacbf241e1a221737555b9276bebf06b73bc7a9e9049d6da37f1fa85 |
BAC0-2024.9.20-py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 74e030db63249a8e84f50f62e69f5037234e025889b0695e634422f58117516b |
|
MD5 | 4450c616316b03551c15da6f6c586c71 |
|
BLAKE2b-256 | a31e737e8251e086f79fd89192fd26de2b725c4d53b56c04546f4eff33155e17 |