云计算百科
云计算领域专业知识百科平台

如何使用免费的LoRaWAN NS 服务器

门思科技 是一家 在LoRaWAN领域深耕超过10年的公司,目前推出的thinklink产品,面向个人用户,设备数量不超过1000个的项目,可以免费使用LoRaWAN 的NS 服务器。以下是注册使用方法:

注: 以下 组织, 租户, 公司 为统一概念

1. 开始

门思支持邮箱: info@manthink.cn

门思官网: https://manthink.cn

1.1. 用户注册

注册分为 邮箱注册微信注册谷歌注册

1.1.1. 邮箱注册

1.1.1.1. 注册信息填写

按下列表单填写注册信息, 点击 注册按钮

1.1.1.2. 信息填写完成

当注册完成后, 页面将展示以下信息. 而后按一下步骤操作:

  • 此时检查邮箱, 如果邮箱中未收到邮件,请查看是否在垃圾邮箱中.
  • 在5分钟内点击邮箱中的邮件链接进行账号激活
  • 1.1.2. 微信或谷歌一键登录或注册

    点击微信或谷歌登录, 授权完成后展示以下信息

    左侧为用户基本信息, 右侧为可操作方式. 根据实际情况选择一下操作方式:

    • 选择租户

    选择一个当前账号所属租户, 进入到ThinkLink操作页面

    • 待加入租户

    注: 如果需要租户邀请你加入, 请给管理员提供你的ID

    当存在租户邀请当前账号加入组织时, 可以在此处接受邀请

    • 创建租户

    当账号不存在于任何租户, 该账号可以新建一个组织, 新建组织时须填写组织信息.

    1.2. 邀请信息查看

    在顶部

    中查看邀请信息, 用以查看是否有组织邀请你加入.

    1.3. 个人中心

    点击右上角 用户 => 个人中心 进入到页面中

    可在当前页面修改密码 以及 账号绑定等基本信息填写

    1.3.1. 退出当前组织/租户

    当你不是唯一管理员权限的账号时, 可点击退出租户: 即, 该账号退出当前组织. 如果需要再次加入, 需要等待租户内的成员进行邀请.

    1.4. 邀请其他用户加入组织

    点击邀请进行租户信息邀请, 含有两种邀请方式:

  • 通过ID邀请
  • 通过租户邀请成员
  • 1.4.1. 拒绝邀请

    邀请完成后点击搜索查询最新用户信息. 可对还未加入的用户撤销邀请

    2. 设备数据

    2.1. 大屏展示

    大屏主要是对租户下所有节点网关的在离线、定位、告警、实时数据的统计功能,使之以曲线图和定位图的形式展示出来,使数据更加直观。

    2.2. 数据订阅

    菜单名: 设备数据=>数据订阅

    2.2.1. 作用

    用于实时订阅指定网关或节点的上行消息。

    • 节点的payload
    • 网关的基本数据

    2.2.2. 操作方式

    按以下步骤操作:

  • 选中操作1的下拉框(首次加载为空), 输入节点EUI信息进行筛选。EUI信息请查看节点档案的devEui列。
  • 操作2中输入需要开启订阅的时长。时间到期后,订阅会自动取消。如果需要立即取消订阅, 请点击移除按钮。
  • 操作3点击订阅
  • 2.3. 数据日志

    菜单名: 设备数据 => 数据日志

    2.3.1. 说明

    查看thinkOne(LoRaWAN 核心网)中所有的上下行数据。包含以下信息(即:下拉框中的类型):

    • up: 数据上行
    • dn: 控制指令
    • ackSeq: 该类型表示 控制指令已经被thinkOne接收到

    如果下行消息为confirm包:

    例如: 以下数据中的userdata.confirmed : true

    {"version":"3.0","type":"data","if":"loraWAN","moteeui":"912d3a769316dca6","token":1853691364685647874,"userdata":{"confirmed":true,"fpend":false,"port":12,"TxUTCtime":"","payload":"AQYAAgAAKAo=","dnWaitms":3000,"specify":{"gweui":"qwfqwtqt"}}}

    • ackSuc: 该类型表示 控制指令下发成功,thinkOne已经获取到设备的反馈信息
    • ackFail: 该类型表示 控制指令下发失败, thinkOne未获取到设备侧回复, 超时

    如果下行消息为unconfirmed包:

    例如: 以下数据中的userdata.confirmed : false

    {"version":"3.0","type":"data","if":"loraWAN","moteeui":"912d3a769316dca6","token":1853691364685647874,"userdata":{"confirmed":true,"fpend":false,"port":12,"TxUTCtime":"","payload":"AQYAAgAAKAo=","dnWaitms":3000,"specify":{"gweui":"qwfqwtqt"}}}

    • ackSuc: 该类型表示 控制指令下发成功,thinkOne向设备发送了控制指令
    • ackFail: 该类型表示 控制指令下发失败, thinkOne格式或其他错误导致消息未发送

    2.3.2. 操作说明

  • 在顶部搜索栏中 按指定条件进行数据搜索查询
  • 导出: 按搜索条件进行批量数据导出
  • GwEui场强信噪比 鼠标移入会进行全部数据展示。 该数据为数组形式, 含义为: 该DevEui的数据被多少个网关接收到,并且不同的网关的场强和信噪比
  • 点击显示内容进行详情数据展示
  • 点击复制内容对消息进行复制
  • 2.4. 控制日志

    该日志中仅展示用户在综合网络管理系统中下发的控制指令

    2.4.1. 操作说明

    指令分类如下:

    • 手动原始: 在该页面使用如下报文形式发送

    • 其他类型: 未使用到
    2.4.1.1. 左侧边栏单播消息发送配置

    用于下行指令发送: 类型为手动原始类型

  • 重试次数 如果发送失败的话会进行多少次重发
  • 超时时间每包消息等到设备回复的时长, 如果在时间内未回复则认为发送失败, 将进行重发
  • 端口号: 指定节点接收的端口号
  • 消息类型
  • 下行: 往下行队列中新增一条下行消息
  • 下行&&清缓存: 将下行队列中的队列清空, 并插入当前消息
  • 是否确认: 是否为confirm包
  • 注: 单击表格中的行, 将信息导入到左侧的指令中.

    3. 业务数据

    3.1. 实时数据

    介绍:实时数据只显示上传过数据的节点,根据物模型的配置来确定需要展示的表格列信息

    使用:通过筛选条件可以快速寻取所需要的节点信息。

    3.1.1. 控制指令配置

    可以在管理&维护=>物模型中配置 commands信息, 进行操作栏中的指令下发按钮配置

    {
    "port" : 85,
    "cnd" : "(($p[0]&0xFF)== 0x08&&($p[1]&0xFF)== 0x29)",
    "data" : [ 0, 3 ],
    "fields" : [ {
    "name" : "kgzt",
    "alias" : "开关状态",
    "unit" : "",
    "type" : "int",
    "data" : [ 2, 1 ],
    "value" : "($v)",
    "order" : 0
    }, {
    "name" : "kg1",
    "alias" : "开关1",
    "unit" : "",
    "type" : "expr",
    "data" : [ 0, 0 ],
    "value" : "long(kgzt)&0x1",
    "order" : 0
    }, {
    "name" : "kg2",
    "alias" : "开关2",
    "unit" : "",
    "type" : "expr",
    "data" : [ 0, 0 ],
    "value" : "(long(kgzt)&0x2) >>> 1",
    "order" : 0
    }, {
    "name" : "kg3",
    "alias" : "开关3",
    "unit" : "",
    "type" : "expr",
    "data" : [ 0, 0 ],
    "value" : "(long(kgzt)&0x4) >>> 2",
    "order" : 0
    }, {
    "name" : "seqno",
    "alias" : "帧号",
    "unit" : "",
    "type" : "expr",
    "data" : [ 0, 0 ],
    "value" : "$raw.userdata.seqno",
    "order" : 0
    } ],
    "commands" : [ {
    "name" : "close",
    "alias" : "全关",
    "port" : 85,
    "cmd" : "^08 70 ff$",
    "confirmed" : false
    }, {
    "name" : "open",
    "alias" : "全开",
    "port" : 85,
    "cmd" : "^08 77 ff$",
    "confirmed" : false
    }, {
    "name" : "open1",
    "alias" : "开1",
    "port" : 85,
    "cmd" : "^08 13 ff$",
    "confirmed" : true
    }, {
    "name" : "close1",
    "alias" : "关1",
    "port" : 85,
    "cmd" : "^08 10 ff$",
    "confirmed" : true
    }, {
    "name" : "open2",
    "alias" : "开2",
    "port" : 85,
    "cmd" : "^08 23 ff$",
    "confirmed" : true
    }, {
    "name" : "close2",
    "alias" : "关2",
    "port" : 85,
    "cmd" : "^08 20 ff$",
    "confirmed" : true
    }, {
    "name" : "open3",
    "alias" : "开3",
    "port" : 85,
    "cmd" : "^08 43 ff$",
    "confirmed" : true
    }, {
    "name" : "close3",
    "alias" : "关3",
    "port" : 85,
    "cmd" : "^08 40 ff$",
    "confirmed" : true
    }, {
    "name" : "set_c_open",
    "alias" : "指定开关",
    "port" : 85,
    "cmd" : "^08 {c_open} ff$",
    "confirmed" : true,
    "params" : [ {
    "name" : "c_open",
    "alias" : "开关状态(0x77)",
    "unit" : "",
    "type" : "int:BE",
    "replace" : "(v)",
    "size" : 1,
    "modifiable" : true
    } ]
    }, {
    "name" : "set_d2d_status",
    "alias" : "dtod(开:0, 关:1)",
    "port" : 85,
    "cmd" : "^7e 05 09 00 50 f5 01 {d2d_status} 7e$",
    "confirmed" : true,
    "params" : [ {
    "name" : "d2d_status",
    "alias" : "开关状态(0|1)",
    "unit" : "",
    "type" : "int:BE",
    "replace" : "(v)",
    "size" : 1,
    "modifiable" : true
    } ]
    }, {
    "name" : "set_close_d2d",
    "alias" : "关dtod",
    "port" : 85,
    "cmd" : "^7e 05 09 00 50 f5 01 01 7e$",
    "confirmed" : false
    }, {
    "name" : "set_d2d_change",
    "alias" : "d2d_change",
    "port" : 85,
    "cmd" : "^7e 10 05 00 7e$",
    "confirmed" : false
    }, {
    "name" : "set_open_d2d",
    "alias" : "开dtod",
    "port" : 85,
    "cmd" : "^7e 05 09 00 50 f5 01 00 7e $",
    "confirmed" : true
    } ],
    "preDataCache" : { }
    }

    3.1.2. 历史数据查看

    3.1.2.1. 表格查看

    点击DevEUI列中的信息

    表格方式展示历史数据

    3.1.2.2. 数据趋势-折线图展示

    可以查看单列的数据趋势, 也能查看所有列的数据趋势. 点击 ①中的内容进行单项数据查看, 点击②中内容则进行所有数据项的趋势查看

    数据趋势-折线图

    数据呈现如下图所示.

    3.1.2.2.1. 扩展功能
  • 数据间的关系查看(数据趋势对比)
  • 如果需要同时呈现两个数据差值比较大的数据在一个折现图中, 则需要配置右侧Y轴字段将不同范围的数据进行区分, 以便于对比两个折现的趋势.

    如下图所示: 如果需要对比温度的变化趋势对BGA的影响, 则需要配置右侧Y轴字段

  • 数据平均值查看
  • 如果进需要查看大概的趋势, 而不是设备上报的实时数据, 则可以通过筛选条件中的数据聚合模式-平均值进行配置. 以每小时平均值的方式查看 RGA 的变化趋势

    3.2. 地图展示

    地图展示主要是对网关和节点的定位以地图的形式显示,使定位更加直观。 图标中的数字表示该位置下存在多少台设备

    3.3. 时段差值

    通过①位置进行切换查看指定物模型下的某个上报字段的时段差值

    4. 管理&&维护

    4.1. 节点配置

    管理&&维护=>节点配置

    用于查看节点在平台的配置信息 && 节点在离线, 可通过顶部搜索框进行数据筛选.

    可通过导入功能对节点信息进行批量修改(名称等信息).

    注: 仅在此处导入,LoRaWAN 核心网无法获取实际节点的数据, 需要在设备档案=>节点档案中导入节点数据.(具体请看 设备档案=> 节点档案的相关说明)

    注:导入、拉取功能本版本无需使用

    4.1.1. 操作说明

    4.1.1.1. 查看节点历史心跳

    点击更多=>状态曲线跳转可查看节点的心跳信息.

    可根据以下红框内容进行时间范围选择

    4.1.1.2. 数据日志
  • 点击更多=>数据日志进行页面跳转
  • 跳转后: 将在设备数据=> 数据日志中默认填入当前节点信息, 具体操作请参考该界面操作说明.
  • 4.1.1.3. 控制日志

    点击更多=>控制日志 查看该节点在该平台中的历史控制日志 (设备数据=> 控制日志)

    4.2. 网关配置

    管理&&维护=>网关配置

    用于网关在离线以及基本信息查看

    注:拉取功能本版本无需使用

    4.2.1. 操作说明

    4.2.1.1. 新增网关
  • 打开平台配置管理中的网关配置,点击新增。
  • 认领网关
    • 在新增网关的界面里输入网关的名称和deveui(必须小写,可以从网关标签上获得)
    • 协议版本3.0(GDO31x系列和GDI51x系列)其它老系列如GDO802等为2.0版本
    • 填写pincode
    • 点击认领基站

  • 网关pincode获取方式
  • 网关pincode请联系门思科技技术支持获取

    4.2.1.2. 查看网关历史心跳

    4.2.1.3. 数据日志
  • 点击更多=>数据日志进行页面跳转
  • 跳转后: 将在设备数据=> 数据日志中默认填入当前网关信息, 具体操作请参考该界面操作说明.
  • 4.2.1.4. 查看网关当前是否在线

    点击更多=>Ping

    4.2.1.5. 运维指令透传

    根据实际运维场景进行指令下发.

    4.2.1.6. 网关升级

    选择网关升级所需的固件版本号, 如果需要升级请及时联系门思工作人员

    4.3. 物模型

    节点数据Payload解析引擎,负责将设备上传的原始二进制或结构化Payload(如JSON、Hex等)实时解析为标准化、可处理的物联网数据模型. 解析后的数据可以在实时数据中查看.

    物模型中含有3解析方式固定序列单设备动态序列单种类单设备

    如有疑问请联系门思工作人员 info@manthink.cn

    4.3.1. 固定序列单设备

    4.3.1.1. 解析规则

    {
    "port" : 6,
    "cnd" : "true",
    "data" : [ 0, 8 ],
    "transferTopic" : "metertype",
    "fields" : [ {
    "name" : "identifier",
    "alias" : "【特殊字段】子表ID",
    "unit" : " ",
    "type" : "int",
    "data" : [ 0, 1 ],
    "value" : "($v)"
    }, {
    "name" : "time",
    "alias" : "【特殊字段】标记抄表时间作为记表时间",
    "unit" : "毫秒",
    "type" : "int",
    "data" : [ 1, 1 ],
    "value" : "($v)"
    }, {
    "name" : "lat",
    "alias" : "【特殊字段,地图展示】纬度",
    "unit" : "",
    "type" : "int",
    "data" : [ 2, 1 ],
    "value" : "($v)"
    }, {
    "name" : "lng",
    "alias" : "【特殊字段,地图展示】经度",
    "unit" : "",
    "type" : "int",
    "data" : [ 3, 1 ],
    "value" : "($v)"
    }, {
    "name" : "e",
    "alias" : "表底数",
    "unit" : "千瓦时",
    "type" : "int",
    "data" : [ 4, 4 ],
    "value" : "($v)"
    }, {
    "name" : "d_e",
    "alias" : "【特殊类型】计算和上次的差",
    "unit" : "",
    "type" : "delta",
    "data" : [ 0, 0 ],
    "value" : "e"
    }, {
    "name" : "dt",
    "alias" : "【特殊内置变量$dt】只有使用delta类型才有",
    "unit" : "秒",
    "type" : "expr",
    "data" : [ 0, 0 ],
    "value" : "$dt"
    }, {
    "name" : "e_x_2",
    "alias" : "表达式,不可使用表达式值",
    "unit" : "",
    "type" : "expr",
    "data" : [ 0, 0 ],
    "value" : "e*2"
    }, {
    "name" : "gwrx",
    "alias" : "仅转发使用,不会入库",
    "unit" : "",
    "type" : "raw:transfer",
    "data" : [ 0, 0 ],
    "value" : "$raw.gwrx[0]"
    }, {
    "name" : "rssi",
    "alias" : ",注意数组不支持直接链式引用",
    "unit" : "",
    "type" : "expr",
    "data" : [ 0, 0 ],
    "value" : "let gw=$raw.gwrx[0];gw.rssi"
    }, {
    "name" : "signed_8bits",
    "alias" : "64bit转8bit",
    "unit" : "",
    "type" : "int",
    "data" : [ 0, 1 ],
    "value" : "($v>0x7f?$v-0x100:$v)"
    }, {
    "name" : "signed_16bits",
    "alias" : "64bit转16bit",
    "unit" : "",
    "type" : "int",
    "data" : [ 0, 2 ],
    "value" : "($v>0x7fff?$v-0x10000:$v)"
    }, {
    "name" : "signed_32bits",
    "alias" : "64bit转32bit",
    "unit" : "",
    "type" : "int",
    "data" : [ 0, 4 ],
    "value" : "($v>0x7fffffff?$v-0x100000000:$v)"
    } ]
    }

    4.3.1.2. 测试数据

    {
    "if":"485",
    "gwrx":[
    {
    "eui":"f1f2f3f4f5f6f7f8",
    "chan":0,
    "lsnr":0,
    "rfch":0,
    "rssi":0,
    "time":"",
    "tmms":0,
    "tmst":0,
    "ftime":0
    }
    ],
    "type":"dataIP",
    "token":1,
    "moteTx":{
    "codr":"4/5",
    "datr":"SF5BW125",
    "freq":2000,
    "modu":"LORA"
    },
    "moteeui":"f000000000100098",
    "version":"3.2.1",
    "userdata":{
    "port":6,
    "class":"ClassA",
    "seqno":83261,
    "payload":"AQECAgADAAAABA==",
    "confirmed":false
    }
    }

    4.3.2. 动态序列单种类单设备

    4.3.2.1. 解析规则

    {
    "port":6,
    "cnd":"true",
    "data":[0,10],
    "fields":[
    {
    "name":"v1",
    "alias":"首部1字节是类型是1, data跳过类型标注位读取1字节",
    "cnd":"($d[0] & 0xff)== 1",
    "unit":" ",
    "type":"int",
    "data":[1,1],
    "value":"($v)"
    },
    {
    "name":"v2",
    "alias":"首部1字节是类型是2, data跳过类型标注位读取2字节",
    "cnd":"($d[0] & 0xff)== 2",
    "unit":" ",
    "type":"int",
    "data":[1,2],
    "value":"($v)"
    },
    {
    "name":"v3",
    "alias":"首部1字节是类型是3, data跳过类型标注位大端读取4字节",
    "cnd":"($d[0] & 0xff)== 3",
    "unit":" ",
    "type":"int:BE",
    "data":[1,4],
    "value":"($v)"
    }
    ]
    }

    4.3.2.2. 测试数据

    {
    "if":"485",
    "gwrx":[
    {
    "eui":"f1f2f3f4f5f6f7f8",
    "chan":0,
    "lsnr":0,
    "rfch":0,
    "rssi":0,
    "time":"",
    "tmms":0,
    "tmst":0,
    "ftime":0
    }
    ],
    "type":"dataIP",
    "token":1,
    "moteTx":{
    "codr":"4/5",
    "datr":"SF5BW125",
    "freq":2000,
    "modu":"LORA"
    },
    "moteeui":"f000000000100098",
    "version":"3.2.1",
    "userdata":{
    "port":6,
    "class":"ClassA",
    "seqno":83261,
    "payload":"AQECAgADAAAABA==",
    "confirmed":false
    }
    }

    4.4. 固件&升级

    用于维护网关固件 节点固件以及节点的升级任务

    4.4.1. 网关固件

  • 点击新增上传由门思提供的网关固件版本包.
  • 点击上传的固件版本包的验证, 添加验证的网关GwEui, 验证成功的同时将对该网关进行升级.
  • 4.4.2. 节点固件

    节点固件包管理, 仅支持对门思的节点进行升级操作.

    4.4.3. 节点升级任务

    功能名称:节点固件批量升级管理

    鼠标移动到子状态中查看每个字段的含义, 数字表示有多少节点设备处于该状态中.

    例如: 0-0-0-0-0-0-5: 表示有5个设备升级失败

    如果任务升级失败 需要重新升级, 则点击重试按钮

    4.4.3.1. 新建升级任务

    点击新建升级任务按以下信息填入升级任务,

    如果仅需要对一个节点设备进行升级则 填入: a000000000000001-a000000000000001

    4.4.3.2. 子任务详情查看

    点击子任务按钮查看每个节点任务的详细信息

    5. 系统设置

    5.1. 用户管理

    该租户下所有账号的统一管理页面, 可用于新建账号邀请其他用户删除用户密码重置权限修改等操作.

    操作方式: 操作前选择表格中的多选框进行用户的批量操作.

    注: 重置密码将密码重置为123456

    5.2. 角色管理

    系统通过角色-菜单映射关系,确保用户仅能访问授权范围内的菜单

    赞(0)
    未经允许不得转载:网硕互联帮助中心 » 如何使用免费的LoRaWAN NS 服务器
    分享到: 更多 (0)

    评论 抢沙发

    评论前必须登录!