BERadio是一种针对受限无线电链路环境的高效通信编码规范和实现。它是在Hiveeyes项目中构思并用于空中通信的。
项目描述
关于
BERadio 是一种针对受限无线电链路环境的高效通信编码规范和实现。它是在 Hiveeyes项目 中构思并用于空中通信的。
与Kotori一起,这是一个多通道、多协议的数据采集和绘图工具包,用于构建灵活的遥测解决方案,它为网关侧的Hiveeyes系统提供动力,您可以通过访问Hiveeyes平台来享受它。
用法
手册
Python发行版的beradio提供方便的基于命令行的解码工具,用于处理Bencode和BERadio格式的消息,称为beradio、bdecode、bencode和bemqtt。
有关更多信息,请参阅BERadio手册。
概述
在命令行中解码示例消息。
$ bdecode d1:#i999e1:_2:h11:hli488ei572ee1:tli2163ei1925ei1092ei1354ee1:wi10677ee OrderedDict([('#', 999), ('_', 'h1'), ('h', [488, 572]), ('t', [2163, 1925, 1092, 1354]), ('w', 10677)])
$ beradio decode d1:#i999e1:_2:h11:hli488ei572ee1:tli2163ei1925ei1092ei1354ee1:wi10677ee --protocol=2 { "meta": { "protocol": "beradio2", "network": "b6a6b04c-a929-4a6c-9238-185e9af79eed", "gateway": "deh22", "node": "999", "time": 1659487642526373120, "profile": "h1" }, "data": { "hum1": 4.88, "hum2": 5.72, "temp1": 21.63, "temp2": 19.25, "temp3": 10.92, "temp4": 13.54, "wght1": 106.77 } }
环境
在野外有许多Arduino传感器节点,通过无线电链路单向通信到作为网关的中央Arduino。网关Arduino接收消息有效负载并将它们原封不动地写入连接到Raspberry Pi的串行端口,Raspberry Pi将消息转换并转发到MQTT总线。
数据现在在总线上,任意系统可以通过订阅特定MQTT主题来消费信息,测量事件将交付到这些主题。
Kotori多通道DAQ订阅MQTT总线上的主题,接收遥测数据有效负载并将测量结果存储到现代时间序列数据库中。之后,使用Grafana来显示测量信息。
细节
功能
BERadio是一个规范,同时也为Arduino和Python提供了参考实现。
一些详细信息已记录在BERadio规范文档中。
它使用Bencode格式在网络上提供空间高效的数据编码。
beradio forward处理通过空中接收到的数据消息,并将它们转发到MQTT。
libberadio将是Arduino的适当C++库。
主要工作马
beradio forward从串行接口摄取消息有效负载,将它们从Bencode格式净化和解码,并将数据重新发布到MQTT主题。
用于发布的MQTT主题名称是从消息数据中包含的一些参数派生的,用于此的主题模板目前被编程为{realm}/{network}/{gateway}/{node}/{field}。实际值将在重新发布到MQTT之前被分离、映射和格式化成不同的变体。
项目信息
贡献
我们始终欢迎来自社区的代码贡献、想法、建议和问题报告。花些时间四处看看,找到错误、设计问题或拼写错误,然后向我们发送pull request或创建问题票据。
提前感谢您的努力,我们真的非常感激任何帮助或反馈。
许可证
本软件版权所有©2015-2024 Hiveeyes开发者。版权所有。
源代码的使用受GNU Affero通用公共许可证和欧洲联盟公共许可证的约束。该软件是,并将始终是免费和开源软件。
项目详细信息
下载文件
下载您平台上的文件。如果您不确定选择哪一个,请了解更多关于安装包的信息。
源代码发行版
构建发行版
beradio-0.14.0.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | a2837ef8bd6209ea531795f0eac22a400e091e382ef2ee1961ea89aae91dfb0d |
|
MD5 | a0e90857ae502a646704c1480e83740e |
|
BLAKE2b-256 | e5df71c489b4e75b460da32e005afcbf7bc1eba4c783d07a12c791b8d6840d7a |
beradio-0.14.0-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | f517e9182230c58832d451c627d9f40b6bc709c133607561b60977497673a290 |
|
MD5 | d13998998f41f8b60d514d5aec1a3df6 |
|
BLAKE2b-256 | 6ec81fbc600eea084db3966f6f19454f7e3f40395aa969c1e669e23c00a83d68 |