有大佬了解 BACnet 协议吗?

2022-04-20 10:05:09 +08:00
 petrichor08

比如他的报文是什么样的,怎么解析什么?

1634 次点击
所在节点    程序员
6 条回复
smallfount
2022-04-20 10:06:51 +08:00
BACnet, 那个主要用来做智能建筑啥的东西?
我们这是用来读电表水表读数的。。。
thinkershare
2022-04-20 10:26:13 +08:00
@petrichor08 一部不需要管协议的事情, 找一个你使用的语言的库, 然后将你自己的客户端接入 BACnet 网络, 然后就可以读写其它设备的属性(value 是一个特殊属性), WhoIs 命令发出去喊一声就知道网络有那些设备了. 除非你需要编写解析协议的库, 否则并不需要知道具体报的格式, 如果想要知道报文格式, 直接去看 BACnet 官方协议, 这个协议存在历史非常悠久了. 商业大楼的楼宇控制一般会使用这个协议, 或者 OPC 协议.
petrichor08
2022-04-20 10:30:36 +08:00
@thinkershare 感谢,我确实需要解析协议
thinkershare
2022-04-20 10:38:53 +08:00
@petrichor08 自己编写协议库非常麻烦, 除非你需要长期维护一个底层库, 否则建议直接去看你对应语言的第三方开源库, 从哪里开始研究比较靠谱, 主要是要处理的通讯边界条件太多, 要编写的靠谱非常困难. 我之前也尝试过自己写, 然后发现个人精力有限, 最终还是选择了研究第三方库. C#有很多靠谱的 BACnet 库, 其它语言也应该有. 我主要是一直在尝试订阅模式, 在一些项目中发现 UDP 会击穿整个网络的交换机, 后来很多项目对延迟要求不太高(超过 5s),就直接使用了轮询!
lmshl
2022-04-20 11:42:39 +08:00
多年前刚入行智能家居的时候有所耳闻,用来做建筑自动化的协议,不过现在没人用了吧
elechi
2022-04-20 14:29:54 +08:00
想详细了解看协议文档,代码 github 找

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/848070

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX