技术服务中心

概述

为简化对网关的数据调用及开发,星纵物联LoRaWAN®网关在60.0.0.35版本开始引入Node-RED功能,并基于网关开发了对应的功能模块,可通过这些模块直接调用并进行功能开发。本文主要介绍针对网关开发的Node-RED功能模块以及部分应用实例供参考。

准备

  • 星纵物联LoRaWAN®网关

步骤

1.测试示例

1.1 配置路径

  1. 进入网关“App>Node-RED”页面启用Node-RED后点击保存。由于Node-RED需要调用到网络上面的组件,所以需要网关能正常连网才能使用些功能。

  1. 点击操作界面即可进入Node-RED操作界面。

1.2 操作说明

Node-RED里主要由以下几个区域组成,使用时将控件区的组件拖入到工作区,并通过组件间连线,完成组件相互的的触发或数据的处理转发。

注意:每次进行控件间的调整之后,一定需要点击右上角的“部署”完成配置的部署。否则该次调整并不会实际生效。

Node-RED里面具有众多的功能模块,以下将介绍网关上几个比较典型的组件。了解模块具体功能只需将鼠标移到对应的模块,就会弹出对应模块的功能简介,或者点击右侧的图标了解。

1.3 网关组件介绍

1.3.1 LoRa Input

LoRa Input主要是输出网关内置Network Server添加的节点上报所有数据。可以将该模块连接至“debug”模块,通过右侧的调试窗口查看该组件的输出情况。

1.3.2 LoRa Output

LoRa Output组件在触发之后会下发指定数据给某一台或多台节点设备。如图若组件配置后,当触发时会往设备发送数据eeee。

网关内置Network Server数据流可以看到数据正常下发,实际下发数据以具体节点接收指令为准。

1.3.3 Device Filter

Device Filter设备过滤器,通过设备的deveui进行过滤,只输出所选deveui的节点设备的数据。

1.3.4 Decoder

Decoder模块主内置星纵物联节点设备的数据解析器,可以将原始数据进行解析。

注意:该模块只适用于星纵物联节点设备,其他第三方节点设备可用function模块代替。

1.3.5 GW Info

勾选的网关事件类型,当网关发生对应事件时,该模块会输出对应的事件数据。

1.3.6 Email Output

当该组件触发时,会向所设定的邮箱发送指定内容邮件。使用该组件前,需要在网关配置界面中的‘系统-常规-SMTP’中设置对应的SMTP客户端才能够正常发送。

1.3.7 SMS Input

当外部设备发送短信至该网关上时,该组件会输出如示例中的内容,其中payload为短信内容。

1.3.8 SMS Output

当该组件触发时会向指定的手机号发送所设定的短信内容。

2.配置实例

2.1 MQTT转发

通过mqtt out模块可以将数据推送到对应的MQTT Broker。以下是MQTT转发示例。部署之后会将网关内部解析好的数据转发至MQTT服务器上。

如图配置mqtt out模块中的MQTT服务器信息

通过MQTT.fx软件模拟客户端接入至同一服务器中可观察MQTT数据的接收数据情况。

2.2 TCP转发

通过tcp out模块可以实现将网关数据转发至TCP服务器中,可参考以下截图搭建TCP转发模型。在tcp out模块中配置tcp server信息,当成功连接上TCP服务器时会如图显示已连接。

在function模块中输入如下语句,即可转发payload内所有内容。

return {payload:JSON.stringify(msg.payload) } ;

2.3 本地存储

通过node-red的file模块可实现数据的本地存储,创建如图一条流程进行数据存储。

function模块中输入以下函数

var msg1 = {payload:{temperature:msg.payload.temperature,time:msg.time}};

return msg1;

对file模块进行对应配置,配置成功后该文件会如图生成在根目录中

3.debug使用实例

1. 创建一个如下图所示的 Node-RED 流:

  • LoRa 输入:接收 LoRa数据,请确保在使用此节点之前启用网络服务器模式。
  • Device Filter (Optional):过滤掉一个或多个特定 LoRaWAN®节点的数据
  • debug:在 debug 侧边栏选项卡和运行时日志(可选)中显示选定的消息属性。可以将其添加到 LoRa Input (LoRa 输入)节点或 Device Filter (设备过滤器)节点以便于通过日志排查错误。

2.选择任何调试节点,输出更改为完整的 msg 对象,然后单击Done保存设置。

3.单击Deploy以保存流程。然后进入debug页面,可以查看 object 部分内部的解码数据。

4.通过函数节点解码实例(以AM107为例)

1.创建一个如下图所示的 Node-RED 流:

2.在function控件中,添加AM107设备的载荷编解码,并将 AM100_TTN.js 解码器复制到function中。

可通过以下方式获取传感器载荷编解码器:

3.如果 decoder 是通过 Java Script 开发的,则函数标头将遵循此格式。

4.在函数末尾添加以下代码行。

5.单击Deploy以保存配置,可以在 debug 页面中检查解码后的数据。

6.如果需要在解码后的数据中添加特定的属性变量,如 RSSI、SNR 等。请在 “return decoded” 句子前添加以下语句:

7.单击Deploy保存流程,在 debug 页面查看带有特定属性变量的解码结果。

样机试用

微信客服wechat code

在线客服

工业路由器 Lorawan®网关 LoRaWAN®传感器 数传终端DTU 智能安防产品 更多产品咨询
Baidu
map