查看: 1024|回复: 0

[技术交流] LoRaWAN模组LSD4WN-2L717M90小白使用手册

[复制链接]

67

主题

100

帖子

570

积分

利尔达员工

Rank: 9Rank: 9Rank: 9

积分
570
发表于 2022-8-15 15:21:23 | 显示全部楼层 |阅读模式
  背景

  本文主要描述如何通过LoRaWAN开发板配置LoRaWAN模组:LSD4WN-2L717M90入网

  本文先进行概述得介绍后,对该模组如何轻松上手到调试完成进行说明。

  该模组如果想无障碍的使用起来需要经过如下步骤:
  过程

  1. 概述

  LSD4WN-2L717M90 是利尔达物联网技术有限公司研制的一款 LoRaWAN End Node 模块。该模块集成了LoRaWANTM协议栈,符合 LoRa Alliance 发布的 LoRaWANTM Specification 1.0.2 Class A/C 标准。模块采用串行接口与用户设备进行数据、指令交互,可以方便地为用户提供快速 LoRaWAN 网络接入和无线数据传输等功能。

  1.1 LoRaWAN简介

  LoRaWAN 属于一种低功耗广域网网络(LPWAN)规范,适用于多种物联网低功耗(IoT)应用场合,如自动抄表、智慧城市、智能家居、工业自动化等。LoRaWAN 由 LoRa 联盟推动。
  1.1.1 LoRaWAN设备类型

  LoRaWAN 协议针对低功耗、电池供电的传感器等应用进行了不同等级的优化,分成不同级别的终端类型,以优化网络延迟和电池寿命间的平衡关系,具体如表 1-1 所示;同时为最大限度地提升终端设备的电池寿命和整体网络容量,LoRaWAN 网络服务器通过一种自适应数据速率(ADR)的方法管理每个终端速率和功率等。其中A代表All,B代表Beacon,C代表Continuous
  1.1.2 LoRaWAN设备网络激活(入网)模式

  注:
  (1)出厂固件已烧好 DevEui,AppEui 和 AppKey 供用户自行烧写。
  (2)若设置为 ABP 激活,则必须开启热启动。
激活方式
描述
所需参数
Over the Air Activation (OTAA)
模块通过加入网络(JOIN)操作,来获得网络安全密钥
DevEui、AppEui、AppKey,同时设置为OTAA激活方式
Activation by Personalization (ABP)
模块本地已经保存网络会话密钥、应用加密密钥等,可以加入指定的LoRaWAN服务器
DevAddr、NwkSkey、AppSkey,同时设置为ABP激活
  2. 工作机制

  2.1 系统状态

  模块定义了两种系统状态,分别是睡眠状态与激活状态。
  (1)WAKE 引脚被拉低,模块进入睡眠状态。此状态下用户无法执行任何指令、数据通信等操作,但模块会保存系统当前的运行状态、配置参数等。
  (2)WAKE 引脚被拉高,模块进入激活状态。此状态下用户可进行 LoRaWAN 数据收发、参数配置等操作。

  用户通过 WAKE 引脚来选择模块的系统状态,如表 2-1 所示。

  2.2 工作模式  激活状态包含了两种工作模式,分别是透传模式与指令模式:
  (1)指令模式主要用于参数配置、状态读取等。在指令模式下,用户发送完一条参数配置或状态读取的指令时,都需等待模块返回”OK”后,再进行下一条指令操作,否则可能会导致本条指令无效。
  (2)透传模式主要用于发送与接收应用数据。在透传模式下,若模块被选定为 OTAA 激活,在未加入网络的情况下,默认会自动执行加入网络(JOIN)操作。模块正常加入网络,才可以提供有效的 LoRaWAN
数据服务。在与服务器通信过程中,根据模块与服务器两者之间的通信状态,可分为连接状态与连接丢失状态。

  用户通过 MODE 引脚注 2-1 来选择模块的工作模式,如表 2-2 所示。

  2.3 指令模式

  指令模式主要用于模块参数配置、状态读取等。用户通过串口发送 AT 指令来访问模块,从而进行寄存器的读写配置、状态寄存器的查询等操作。

  2.3.1 AT指令

  指令模式采用 AT 协议解析,传输 ASCII 格式数据。其中做如下约定,如表 3-1 所示。

  注:在指令模式下,输入AT指令,必须以回车作为结束符,即\r或者0x0D。

  AT 指令返回值根据指令结果的不同,具有不同返回值,如表 3-2 所示

  2.4 透传模式

  透传模式主要用于发送与接收应用数据。在透传模式下,模块若未加入 LoRaWAN 网络,首先执行注册入网,直至成功加入网络;在成功加入网络后,模块可正确处理用户数据,进行有效的空口数据交互与串口
数据交互。

  2.5 开发板程序下载

  2.5.1 连接开发板至PC


  使用带有数据传输功能的Micro USB线连接开发板到PC,将电源选择拨码开关切换到 USB 端,使用 USB 对开发板进行供电;将串口选择拨码开关 S1 拨至 MCU 端,使得 MCU 串口与电脑正确连接。

  注:首次连接需至PC的设备管理器检查是否连接正常,若连接正常,会在端口中显示当前串口名称及串口号,否则需下载cp210x_usb驱动

  2.5.2 程序下载

  开发板程序通过JIink或STlink下载,下载接口在开发板左下角,如下图所示。可以通过“J-FLASH”下载 bin 文件,也可以在直接通过 IAR 或者 Keil5 等编译,这里使用keil5进行编译下载

  注:首次下载需在设备管理器检查是否存在J-Link驱动,否则需下载J-Link driver


  2.6 硬件连接

  LoRaWAN模组LSD4WN-2L717M90连接至LoRaWAN开发板,并连接天线;同时通过USB口将模组连接到电脑。

  2.7 AT指令配置

  程序下载完成后,可使用串口工具(如sscom)配置AT指令,选择对应的串口,波特率为115200,打开串口

  2.8 模组工作模式切换

  模组工作模式分为命令模式与透传模式。命令模式下通过AT指令读取状态或配置参数,透传模式下发送与接收用户数据。设备开机后默认为命令模式,可发送AT指令测试命令模式是否工作正常。可通过开发板上的K1按键切换模组工作模式。


  2.9 配置模组入网-OTAA

  2.9.1 入网参数配置


  在命令模式下,通过AT指令配置模组使用OTAA入网所需参数
  DevEUI:以16进制表示,共8个字节,为全网唯一的设备标识符,类似MAC地址的含义。
  AppEUI:以16进制表示,共8个字节,通常标识唯一的应用提供者。
  AppKey:以16进制表示,共16个字节,应用程序密钥,通常由应用提供者分配给模组,用于无线激活过程中的数据加密。

  注:若需掉电存储,配置完成后需执行AT+SAVE命令并执行AT+RESET复位模块。配置完成后通过开发板的K1按键切换到透传模式,只有透传模式下,模组发起入网请求。

  2.9.2 添加节点到lierda LoRaWAN NS平台

  2.9.2.1 登录lierda LoRaWAN NS平台
  2.9.2.2 添加节点



  确保一台LoRaWAN网关已添加到NS并成功上线,在首页->项目管理->网关->设备管理界面添加节点。

  2.9.2.3 选择设备入网模式

  选择添加OTAA设备

  2.9.2.4 OTAA入网参数填写

  其中devEUI,appEUI,appKey,cls类型,lwan版本需与节点保持一致。

  2.9.2.5 入网交互查询

  节点添加完成后,在首页->项目管理->网关->设备管理->节点->查看数据界面可查询节点入网信息,对于OTAA入网模式的节点,需同NS进行Join Request及Join Accept的交互才可成功入网

  2.9.2.6 上行数据发送

  由模组发起,可通过串口发送任意数据,这里以发送lierda为例,可在上行数据中找到UpCnt查看此条数据的帧计数。

  2.9.2.7 上行数据接收

  在首页->项目管理->网关->设备管理->节点->查看数据界面中找到具有相同帧计数的数据,点击详情查看payload,数据格式为16进制

  此段数据的payload为6C69657264610D0A,

  可通过在线数据转换工具将16进制数据转换为字符串校验payload是否正常。

  2.9.2.8 下行数据发送

  由NS发起,在首页->项目管理->网关->设备管理->节点->节点调试界面输入调试内容后提交,节点调试模式可选择字符串或16进制,这里以发送lierda_test为例。

  2.9.2.9 下行数据接收

  由于模组工作在Class A模式,数据上行后才后打开接收窗口,因此先发送一条上行数据,若接收到下行数据,数据前会标识[DN],可看到模组接收到lierda_test。

  2.10. 配置模组入网-ABP

  2.10.1 入网参数配置


  在命令模式下,通过AT指令配置模组使用ABP入网所需参数
  DevEUI:以16进制表示,共8个字节,为全网唯一的设备标识符,类似MAC地址的含义。
  DevAddr:以16进制表示,共4个字节,设备地址,用来标识终端在一个LoRaWAN网络中的唯一地址。
  NwkSkey:以16进制表示,共16个字节,网络会话密钥,用于保障终端节点传输到网络服务器之间的数据的完整性
  AppSkey:以16进制表示,共16个字节,应用会话密钥,用于加密传输的数据,保障终端节点到应用服务器之间的数据的机密性。

  注:
  (1)配置模组入网模式为ABP,同时需开启热启动。
  (2)若需掉电存储,配置完成后需执行AT+SAVE命令并执行AT+RESET复位模块。配置完成后通过开发板的K1按键切换到透传模式。

  2.10.2 添加节点到lierda LoRaWAN NS平台

  2.10.2.1 登录lierda LoRaWAN NS平台

  2.10.2.2 添加节点

  确保一台LoRaWAN网关已添加到NS并成功上线,在首页->项目管理->网关->设备管理界面添加节点。

  2.10.2.3 选择设备入网模式

  选择添加ABP设备

  2.10.2.4 ABP入网参数填写

  其中devAddr,devEUI,appsKey,nwksKey, cls类型,lwan版本需与节点保持一致。

  2.10.2.5 对于使用ABP入网模式的终端设备,在第一个上行数据成功后默认入网成功

  2.10.2.6 上行数据发送


  由模组发起,可通过串口发送任意数据,这里以发送LIERDA为例,可在上行数据中找到UpCnt查看此条数据的帧计数。

  2.10.2.7 上行数据接收

  在首页->项目管理->网关->设备管理->节点->查看数据界面中找到具有相同帧计数的数据,点击详情查看payload,数据格式为16进制

  此段数据的payload为4C49455244410D0A

  可通过在线数据转换工具将16进制数据转换为字符串校验payload是否正常。

  2.10.2.8 下行数据发送

  由NS发起,在首页->项目管理->网关->设备管理->节点->节点调试界面输入调试内容后提交,节点调试模式可选择字符串或16进制,这里以发送lierda111_test为例。

  2.10.2.9 下行数据接收

  由于模组工作在Class A模式,数据上行后才后打开接收窗口,因此先发送一条上行数据,若接收到下行数据,数据前会标识[DN],可看到模组接收到lierda111_test。

  3. AT指令读取状态-示例

  3.1 系统指令


  3.1.1 空指令NOP


  用于测试模块与用户MCU的串口通信是否正常

  3.1.2 读取版本VER

  用于查询产品版本号信息(LoRaWAN协议版本+硬件版本+固件版本+时间版本)

  当前版本的LoRaWAN协议版本为LoRaWAN1.0.3,硬件版本为CN470P.01,固件版本为02.36.01,时间版本为Jan 25 2022 17:17:23

  3.1.3 读取串口波特率

  用于读取透传模式下的串口波特率

  3.1.4 读取实时时间RTC

  当前RTC时间为2018年1月1日0时10分26秒

  3.1.5 读取系统参数SYSTEM

  模块未开启回显功能

  3.2 MAC指令

  3.2.1 读取上行传输类型CONFIRM


  当前上行传输类型为UnConfirmed message,服务器不会应答上行数据包;重发次数为3次

  3.2.2 读取激活模式OTAA

  模块当前为OTAA激活方式,关闭热启动,X3、X4参数保留。

  3.2.3 读取DEVEUI

  该模块的DevEUI为00956900000018B7,为全网唯一的设备标识符,类似MAC地址的意义

  3.2.4 读取APPEUI

  该模块的AppEUI(JoinEUI)为00956900000018B7

  3.2.5 读取DEVADDR

  3.2.6 读取端口号

  模块当前端口好为0x0A

  3.2.7 读取CSQ

  对指定信道进行一次信号质量强度检测,返回当前环境的RSSI

  模块当前RSSI为-106dBm

  3.2.8 读取设备类型CLASS

  读取设备工作模式CLASS,0-Class A,2-Class C。

  当前设备类型为Class A,

  3.2.9 读取ADR

  读取ADR使能控制,0-ADR不使能,1-ADR使能

  模块当前开启ADR功能

  3.2.10 读取发送功率POWER

  当前模块功率为20dBm。


  3.2.11 读取通信速率DATARATE

  模块当前通信速率为DR3(SF9,BW125),缺省速率为DR3(SF9,BW125),速率范围DR0~DR5。

  3.2.12读取BAND

  读取模块当前的扫描模式,分为6-同频,7-异频

  当前入网扫描模式为同频

  3.2.13 读取FREQ

  读取模块当前可用的频率,查询得到当前频率表,

  3.2.14 读取注册入网信息JOIN

  可用于读取注册入网信息

  当前模块已入网,单词入网扫描在周期为13s,JOIN最大尝试次数为176次,模块已发送1次JOIN请求。

  3.2.15 读取Link Check

  当前模块未执行Link Check

  3.2.16 读取当前RX2参数

  模块当然RX2速率为DR0,频率为505.3MHz

  3.2.17 读取CSMA

  模块当前未开启CSMA功能

  3.2.18 时间同步TIMESYNC

  需模块入网成功后执行有效,获取服务器实时时间,并更新本地RTC时间

  模块当前获取的服务器实时时间为:2022.06.13.10.02.07

  结论

  配置LSD4WN-WL717M90模组入网,需事先在Lierda LoRaWAN NS平台中对接一台LoRaWAN 网关,同时模组频点需与网关一致

  模组入网前应在命令模式下配置好入网模式(OTAA/ABP)及工作模式(Class A/C),模组默认使用OTAA及Class A。

  如需更改模组入网参数,更改完成后需执行SAVE操作(AT+SAVE)并复位(AT+RESET)模组。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表