产品定价 立即试用
社区版
在ThingsBoard中注册Mokosmart LoRaWAN设备和网关
入门 文档 指南 安装 架构 API 常见问题
目录

在ThingsBoard中注册Mokosmart LoRaWAN设备和网关

本指南说明如何在ThingsBoard中注册Mokosmart LoRaWAN终端设备和网关。本文档适用于所有Mokosmart LoRaWAN终端产品。

添加网关

在TTN上添加网关

步骤1:给网关上电,连接网关Wi-Fi,打开Web管理界面,在Web界面的”功能-服务器访问”页面获取网关ID。

image

步骤2:登录TTN账户,选择对应集群(此处以US915频段为例,即北美1区)。

image

步骤3:在首页进入网关控制台。

image

步骤4:注册新网关:

  • 填入步骤1中获取的网关ID
  • 在TTN中自定义网关ID
  • 选择频段计划United States 902-928 MHz
  • 点击”注册网关”完成网关注册

image

步骤5:在Web管理界面的”功能-服务器访问”页面配置网关参数。

  • 在网关通用设置页面获取网关服务器地址
  • 在MKGW2 Web管理界面填入服务器地址,端口为1700
  • 选择与计划一致的频段(此处选915),信道须与TTN中的配置一致;步骤4中若选择了FSB2,此处选择信道US915_CH08-15

步骤6:检查网关状态:

  • 在网关Web管理界面查看状态:绿色表示网关已成功连接服务器;红色表示未连接服务器
  • 在TTN平台查看状态

在TTN上创建应用

步骤1:打开控制台,点击”创建应用”。

image


步骤2:填写应用必填项,然后点击「创建应用」按钮。

image


步骤3:进入「Integrations」-> 在左侧菜单打开「MQTT」页面,然后点击「Generate new API Key」按钮。

image


步骤4:复制并保存密码(API Key)(离开页面后将无法再次查看)。

image


在ThingsBoard中创建集成

  • 进入「集成中心」的「Integrations」页面。点击右上角「+」图标添加新集成。选择「The Things Stack Community」作为集成类型。然后点击「下一步」。image

  • 将以下脚本粘贴到解码器函数区域,点击「下一步」。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
var数据 = decodeToJson(载荷);

var deviceName = 数据.end_device_ids.device_id;
var deviceType = 数据.end_device_ids.application_ids.application_id;

// 若需对上行数据做解析,可在此函数中添加代码。
// input: bytes
// expected output:
// {
//"属性": {"attributeKey":"attributeValue"},
//"遥测": {"telemetryKey":"telemetryValue"}
// }
// 默认功能:将字节转为十六进制字符串,遥测键为 "HEX_bytes"
function decodeFrmPayload(input) {
 var output = { 属性:{}, 遥测: {} };
 // --- Decoding code --- //

 output.遥测.HEX_bytes = bytesToHex(input);

 // --- Decoding code --- //
 return output;
}

// --- 属性与遥测对象 ---
var遥测 = {};
var属性 = {};
// --- 属性与遥测对象 ---

// --- Timestamp parsing
var incomingDateString = 数据.uplink_message.received_at;
var dateString = incomingDateString.substring(0, incomingDateString.lastIndexOf(".")+3) +"Z";
var timestamp = new Date(dateString).getTime();
// --- Timestamp parsing

// 可手动向属性或遥测添加部分键
属性.f_port = 数据.uplink_message.f_port;
属性.设置 = 数据.uplink_message.设置;
// 将 correlation ids 保存为单一对象,故从属性解析中排除并在此手动添加
属性.correlation_ids = 数据.correlation_ids;

// 可从结果中排除部分键
var excludeFromAttributesList = ["device_id","application_id","uplink_message","correlation_ids"];
var excludeFromTelemetryList = ["uplink_token","gateway_id","设置"];

// 消息解析
// 为避免解码对象中出现路径,将 pathInKey 参数传为 false。
// 注意:pathInKey 可能导致已存在字段被最后一次找到的值覆盖,例如 uplink_message 的 receive_at 会写入根节点的 receive_at。
var telemetryData = toFlatMap(数据.uplink_message, excludeFromTelemetryList, false);
var attributesData = toFlatMap(数据, excludeFromAttributesList, false);

// 将上行字节传入 decodeFrmPayload 函数以得到自定义解码结果
var customDecoding = {};
if (数据.uplink_message.get("frm_payload") != null) {
 customDecoding = decodeFrmPayload(base64ToBytes(数据.uplink_message.frm_payload));
}

// 将数据汇总到结果
if (customDecoding.?遥测.size() > 0) {
 遥测.putAll(customDecoding.遥测);
}

if (customDecoding.?属性.size() > 0) {
 属性.putAll(customDecoding.属性);
}

遥测.putAll(telemetryData);
属性.putAll(attributesData);

var result = {
 deviceName: deviceName,
 deviceType: deviceType,
 遥测: {
 ts: timestamp,
 values: 遥测
 },
 属性: 属性
};

return result;

image

  • 下行数据转换器」留空,点击「Skip」按钮。

image

  • 下一步,填写各字段参数,然后点击「添加」按钮。

image

添加设备

步骤1

  • 进入应用控制台的「终端设备」页面;
  • 点击「注册终端设备」。

image


步骤2

  • 选择手动录入终端设备;
  • 选择频段计划(须与网关频段计划完全一致);
  • 选择 LoRaWAN 版本 v1.0.3。

image


步骤3:填写 JoinEUI,MOKO 设备默认 JoinEUI 为 70 B3 D5 7E D0 02 6B 87。

步骤4:确认 JoinEUI 后,填写 DevEUI 和 AppKEY。MOKO 设备的 DevEUI 见包装标签,AppKEY 默认为 2B 7E 15 16 28 AE D2 A6 AB F7 15 88 09 CF 4F 3C。也可通过「“MKLora”」APP 连接设备,在 APP 中查看 DevEUI 和 AppKEY。

image


步骤5:点击「注册终端设备」完成注册。

步骤6:在 TTN 上检查设备状态。

image


也可查看实时数据:若有载荷上传,即表示设备已连接服务器。

image


步骤7:进入载荷格式化器,从 MOKO GitHub 链接 获取对应解码器,复制并粘贴后保存。

image


步骤8:在「Entities」中进入「设备」页面,此时可见:

  • 在 TTN 注册的设备会同步到 ThingsBoard,在「最新遥测」中可看到设备上报的数据更新。

image

添加仪表板

ThingsBoard中的仪表板允许用户可视化并监控从物联网设备收集的数据。让我们创建一个仪表板并添加两个部件:

  • 第一个部件显示设备电量。
  • 第二个部件在地图上显示设备位置。

添加仪表板

添加电量部件

添加地图部件

  • 点击屏幕顶部的「+ 添加部件」按钮以添加另一个部件;

  • 找到「地图」部件包并点击;

  • 选择「Google 地图」部件;

  • 将出现「添加部件」窗口。数据源类型选「设备」,数据源指定为设备「lw006test」,添加时序数据键「latitude」和「longitude」,点击「添加」;

  • 保存仪表板请点击右上角「保存」按钮;

  • 已添加用于在地图上显示设备位置的部件。

下一步