我们使用树莓派和免费软件构建了一个物联网系统的测试平台。
本文引用地址:
AT指令为用户提供了一个友好的界面,用于设置和管理通信模块。LoRaWAN是一种低功耗、远距离的通信协议,常用于物联网应用。在这个项目中,我们将构建一个设备,帮助用户更深入地理解这些通信技术如何协同工作。
这个设备,我称之为LoRaWAN训练器,将帮助用户深入了解网络设置、数据传输和设备管理。一旦组装和编程完成,它将为配置和测试远距离无线系统提供一个实用的平台。
在本文中,我们将涵盖项目的硬件和软件部分。不过,首先让我们回顾一下AT指令和LoRaWAN的一些基础知识。
什么是AT指令?
AT指令是基于文本的指令,用于控制和配置通信设备。它们简化了与设备硬件的交互,使开发人员能够专注于系统应用,而不是底层的编程任务。这些指令在设备和平台之间是通用的。
表1列出了一些基本的AT指令示例。
表1 基本AT指令
AT指令 描述
AT 测试与设备的连接。
AT+GMR 获取固件版本信息。
AT+RST 重置设备。
AT+CSQ 检查信号质量。
AT+SEND 向指定接收者发送数据。
在物联网应用中,AT指令减少了调制解调器管理任务,如网络配置、数据传输和系统诊断。它们还适用于物联网系统的原型设计和调试。
在LoRaWAN中使用AT指令
LoRaWAN(长距离广域网)是物联网应用中常用的通信协议。它功耗低,工作在未授权的频段,并支持上行和下行通信。图1展示了一些常见的LoRaWAN应用。
图1 LoRaWAN应用(图片由Microchip提供)AT指令通过基于文本的界面简化了LoRaWAN设备的设置和管理,使用户能够有效地配置、监控和操作这些设备。表2列出了一些用于LoRaWAN的AT指令示例。
表2 用于LoRaWAN的AT指令
AT指令 描述
AT+JOIN 启动网络加入过程。
AT+SEND 发送上行数据。
AT+NJS 检查网络加入状态。
AT+RSSI 获取信号强度。
AT+BAND 配置区域频率波段。
AT指令允许快速开发和部署物联网系统,而无需深入了解底层通信协议(在本例中为LoRaWAN)。用户和开发人员可以使用AT指令设置设备凭证、加入网络并管理数据传输。
想了解更多关于LoRaWAN的内容?或者只是想复习一下?请查看All about Circuits网站上的文章《解密LoRa和LoRaWAN无线网络协议》。
LoRaWAN训练器的设计
正如文章开头所述,LoRaWAN训练器是一个动手实践工具,旨在帮助开发人员和用户探索AT指令与LoRaWAN的结合使用。图2展示了LoRaWAN训练器项目的概念框图。
图2 LoRaWAN训练器框图(图片由Don Wilcher提供)训练器有三个主要的硬件组件:
主机计算机。
集中器(LR1302网关模块)。
节点(LR1262节点模块)。
它还包括其他提供支持功能的组件,我们将在本节末尾讨论这些内容。在此之前,让我们先了解上述三个硬件部分。
主机计算机
树莓派作为训练器的中央处理单元(CPU)和主机计算机,运行软件以与网关和节点模块进行交互。
集中器
Elecrow LR1302网关模块(图3)充当LoRaWAN节点与互联网之间的通信桥梁。该模块最重要的部分是集中器,它管理着LoRaWAN网络的消息传输。“网关”是一个物理设备,包含一个集中器和至少一个无线电。
图3 Elecrow LR1302网关模块(图片由Elecrow提供)节点
节点是用于发送和接收数据包的LoRaWAN设备。在本例中,它采用Elecrow LR1262节点模块的形式(图4)。该模块支持AT指令,用于配置网络参数并向集中器发送消息。
图4 Elecrow LR1262节点模块(图片由Elecrow提供)节点对于建立LoRaWAN系统的上行和下行通信至关重要。
其他组件
我的训练器版本还包括一个GPS天线模块,尽管这是可选的。天线模块的目的是通过提供网关位置的全球定位数据,允许训练器发送和接收数据包。如果你不想使用天线模块,可以在训练器中集成一个无线信标来实现相同的功能。
训练器中的GPS天线提供一个每秒一次脉冲(PPS)输出信号。通过串行链路连接到主机计算机,它可以发送包含时间和地理坐标数据的NMEA帧。
LoRaWAN训练器的其他组件包括:
树莓派扩展板:这块PCB连接网关模块和树莓派。
键盘和显示器:像电源一样,这些可能是必备的,但请确保你手头有这些设备。
各种电缆:你需要跳线和USB-C电缆。
构建LoRaWAN训练器
现在我们已经回顾了训练器的组件,是时候组装它们了。步骤如下:
将LR1302网关模块连接到树莓派扩展板。
将网关/扩展板组件与树莓派连接。
将两个天线连接到树莓派扩展板。
将键盘、显示器和电源连接到树莓派。
让我们逐步进行。
将LR1302网关模块连接到树莓派扩展板
构建LoRaWAN训练器的第一步是将LR1302网关模块连接到树莓派扩展板(图5)。扩展板将充当网关模块与主机计算机之间的桥梁。
图5 步骤1:将网关模块和扩展板组装成一个设备(图片由Don Wilcher提供)扩展板包括一个mini-PCIe(mPCIe)连接器。要将网关模块与树莓派扩展板连接,请将模块插入mPCIe连接器,并将跳线连接到PCB。插入LR1302模块时,请确保网关边缘连接器与PCB的mPCIe连接器正确对齐。
将网关/扩展板组件与树莓派连接
接下来,我们需要将树莓派的40针公连接器与扩展板的40针母连接器对齐。此步骤如图6所示。
图6 步骤2:将树莓派扩展板连接到树莓派(图片由Don Wilcher提供)然后,使用USB-C电缆将扩展板连接到树莓派的USB端口。
将天线连接到树莓派扩展板
将大天线和GPS天线连接到扩展板,如图7所示。
图7 步骤3:将大天线和GPS天线连接到树莓派扩展板(图片由Don Wilcher提供)最终硬件组装
到步骤3为止,LoRaWAN训练器的主要组件已经组装完毕。剩下的就是将键盘和显示器连接到树莓派的可用USB端口,插入电源并启动树莓派。如果一切正常,以下LED灯应该亮起:
绿色电源灯。
红色配置灯。
蓝色接收(RX)灯。
绿色发送(TX)灯。
扩展板PCB底部的冷却风扇也应该运行。这完成了LoRaWAN训练器的硬件构建。
软件安装与用例
在项目的软件部分,我们将参考Elecrow的Wiki。安装数据包软件和配置树莓派的说明可以在LR1302网关模块的Wiki页面上找到。节点模块与网关模块通信所需的AT指令也有自己的Wiki页面。
软件安装完成后,你还可以考虑探索Elecrow为节点模块提供的用例。使用Tera-Term软件终端包,可以轻松地在你的LoRaWAN训练器上执行和演示Wiki页面上的示例。图8展示了一个使用Tera-Term的发送/接收会话示例。
图8 LoRaWAN训练器的Tera-Term会话(图片由Don Wilcher提供)总结
恭喜你——你现在拥有了一个完整的LoRaWAN训练器!随着物联网的不断发展,此类训练工具将帮助探索创新的远距离通信设备和系统。