简介
wM-Bus读取器LoRaWAN”Smartico WM-LR”用于工业、公用事业和自动化领域的远程数据采集,通过wM-Bus协议采集燃气、水、电、热表数据并经LoRaWAN网络传输。此外,设备具备Kamstrup表数字接口的标准有线连接输入,该输入也可用于脉冲计数。传感器的防水外壳设计适用于户外使用。紧凑尺寸便于在狭小空间安装,专用适配器可在不开盖情况下可靠固定在管道或平面上。本示例中连接了四个水表。
前置条件
使用LoRaWAN技术将wM-Bus Reader WM-LR的数据传输至ThingsBoard平台。LoRaWAN为可在远距离交换少量数据的无线通信技术。首先需要配置LoRaWAN服务器并确保设备数据可到达服务器。本指南使用ChirpStack开源LoRaWAN网络服务器。完成服务器配置后,Applications页面的表中应出现设备类型的条目。
例如,我们连接了序列号为0000020的设备。在LoRaWAN服务器配置正确的情况下,应能看到来自设备的数据流。设备的数据传输频率取决于wM-Bus Reader设置。
要能通过MQTT协议接收数据,需要集成LoRaWAN服务器与Mosquitto MQTT代理。## 步骤1:配置上行数据转换器
首先,应根据设备协议创建上行数据转换器。该转换器将把wM-Bus读取器LoRaWAN”Smartico WM-LR”的Base64编码遥测payload解码为可读的ThingsBoard简化数据格式。导入带上行数据转换器的uplink_wmbus_reader.json文件。
步骤2:集成配置
要将wM-Bus读取器LoRaWAN”Smartico WM-LR”集成到ThingsBoard平台,需创建新集成。
此外,应根据LoRaWAN服务器配置添加主题过滤器(本示例为application/3/设备/+/rx)。在Host和Port字段中输入MQTT代理的IP地址及其端口。## 步骤3:验证设备数据接收
连接wM-Bus Reader WM-LR以传输信息。若集成无误,在首次遥测传输后,设备GROUPS → All中会出现名为”0000020”的新设备。您还可在数据转换器中验证转换前后的输入和输出数据。
需注意的是,每个表的读数在单独的数据包中到达。此时仪表板上显示的时间对应最后一个数据包的时间。变量”existSerial”必须包含连接至wM-Bus Reader的所有表的序列号。
来自wM-Bus Reader的输入数据示例如下:
1
{"applicationID":"3","applicationName":"Smartico_wmbus_readers","deviceName":"0000020","devEUI":"02aaaa0100000014","rxInfo": [{"gatewayID":"647fdafffe00d228","uplinkID":"14b77859-1e6c-4668-8eb3-73900e49a33c","名称":"tectelic_micro_lite_TECH","rssi": -89,"loRaSNR": 7.5,"location": {"latitude": 48.44229794818326,"longitude": 35.014479160308845,"altitude": 144}}],"txInfo": {"frequency": 868500000,"dr": 0},"adr": true,"fCnt": 28,"fPort": 33,"数据":"IAP1YwIAAAAATFo="}
payload位于”数据”字段中,以Base64编码。解码后输出数据如下:
1
{"deviceName":"0000020","deviceType":"wM-Bus Reader","属性": {"integrationName":"wM-Bus Reader Integration"},"遥测": {"REAL_TIME":"26.08.2020 16:38:14","SERIAL1":"66413314","SERIAL2": null,"SERIAL3": null,"SERIAL4": null,"WATER_WMBUS_VALUE1": 19.546,"WATER_WMBUS_VALUE2": null,"WATER_WMBUS_VALUE3": null,"WATER_WMBUS_VALUE4": null,"FLG_LOW_BAT": 0,"FLG_MOTION_DETECT": 0,"FLG_MAGNET_DETECT": 0,"FLG_TAMPER_DETECT": 0,"FLG_POWER_ON": 0,"FLG_POWER_BAT": 1,"FLG_ERR_TIME": 0,"FLG_CFG_DONE": 0}}
以上输入和输出数据仅为示例。在配置设备前,可通过uplink_wmbus_reader.json验证编程代码。为此,在数据转换器中打开上行wM-Bus Reader转换器的Test解码器function,将输入数据复制到载荷content字段,点击TEST按钮,Output字段将显示解码后的输出数据。
步骤4:创建wM-Bus Reader资产
要在仪表板中显示数据,需先创建资产并在关系中添加设备0000020。
步骤5:规则链导入与配置
除设备数据外,还可监控设备状态(如低电量、设备外壳打开、磁场干扰等)。这些信息在告警部件中显示。因此,需先配置规则链。导入带告警的alarms_wmbus_reader.json文件并在ThingsBoard中保存规则链配置。
然后配置Root Rule chain。应在Root Rule chain中添加Alarms wMBus Reader。
步骤6:仪表板导入与配置
要为用户显示数据,需创建仪表板,可从dashboard_wmbus_reader.json文件导入。
导入仪表板时,需创建别名。
若一切配置正确,在仪表板GROUPS → All中可看到新仪表板”水表wM-Bus Reader LoRaWAN Smartico WM-LR”。
另见
浏览其他示例或探索ThingsBoard主要功能相关指南:
您的反馈
欢迎在 GitHub 上为 ThingsBoard 加星,帮助我们推广。 若对此示例有任何疑问,请在 Issues 中提出。