我的目标是允许用户使用 Android 应用程序读取水表数据(提供了水表 ID)。为此,我需要一个第三方设备通过
m-bus protocol
从水表收集数据,然后我的应用程序将通过蓝牙或其他方式接收数据,以便我可以呈现它们。
我发现了很多设备,例如 B 米 RFM-RBT,它们可以完全满足我的需要,但似乎没有它们的文档或库。
是否有任何开放库可以通过
m-bus protocol
扫描设备?欢迎任何关于如何读表的建议。
您的问题涉及多个方面:
M-Bus 和无线 M-Bus 文档
从维基百科开始。
从您的链接中,我假设您正在寻找无线 m-bus 实现(不是 m-bus)。 Wireless M-Bus 基于 M-Bus,是欧洲标准,您可以在通常的地方购买。 (在这里查看答案)
无需投资即可开始使用的一个好点是OMS 规范,它是免费的并且基于无线 m-bus 协议。
接收者文档
大多数接收器都会自动接收电报,并根据请求或在您打开蓝牙连接后自动将其发送给您。通常,它们传输原始无线 m-bus 电报以及一些附加接收器信息(接收时间、无线电信号强度、CRC 等)。请联系相应的供应商以获取如何编码的说明。
M-Bus 库
我知道一个开源 mbus 库,但我不确定它是否也可以处理无线 m-bus 电报,这略有不同,以及是否可以让它在 Android 上运行。也许维基百科链接的基于java的jMBus lib可以在android下工作。根据其网站上的文字,它还支持 wireless-mbus。
我实际上并不完全知道你想做什么,但我认为你的意思是如何处理传入的数据,或者更确切地说,如何回答这些数据。所以,你可以看看java中的这个lib:https://github.com/mjung85/iotsys/tree/master/iotsys-wmbus