资料介绍
描述
大概的概念
该项目与 CleverWeather相关,因此强烈建议先检查。实现部分理所当然地认为您已经拥有一个 Azure IoT 中心,至少有一个设备和一个用于可视化数据的 Web 应用程序。
该物联网系统是罗马第一大学物联网课程作业的一部分。两个 RIOT 应用程序将使用 LoRaWAN 协议向 TheThingsNetwork (TTN) 发布具有随机值的消息。连接到 TTN 的网关将接收这些消息并将它们发送到 Azure IoT 中心。最后,nodejs 应用程序允许您在本地可视化数据。
成分
RIOT-OS 应用程序
一个简单的 RIOT-OS 应用程序将用于随机创建值并使用 LoRaWAN(一种用于远程传输的协议)发布它们。
物联网应用
TTN 提供了一套开放工具和全球开放网络来构建物联网应用程序。它将托管应用程序及其设备。
物联网实验室
IoT-LAB 提供了一个非常大规模的基础设施,适用于测试小型无线传感器设备和异构通信对象。我将使用位于 Saclay(法国)并部署在两个预留节点上的无线传感器。
网关
网关使用 MQTT 协议连接到 TTN 应用程序,当收到消息时,它将使用 MQTT 直接实现将其发送到 Azure IoT Hub。我用过python,但你可以选择你喜欢的编程语言。
Azure 物联网中心
IoT 中心将用作 MQTT 代理,但它并不完整,也不支持所有标准行为。
节点
Nodejs 用于运行一个应用程序,让您在本地可视化数据。您还必须安装包@azure/event-hubs。
执行
- TheThingsNetwork 应用程序
首先要做的是登录站点,然后您可以转到控制台并单击“添加应用程序”。选择一个明确的名称,最佳做法是使用最近的服务器,因此如果您在欧洲,请使用 ttn-handler-eu。单击添加应用程序以完成。
打开您的应用程序,转到设备部分,然后单击“注册设备”添加一个。选择一个名称并随机创建一个设备EUI,然后点击“注册”完成操作。
对于这个任务,我创建了 2 个与我的 IoT 中心设备同名的设备。现在选择您的设备并获取设备 EUI、应用程序 EUI 和应用程序密钥值,稍后您将使用它们。
- 物联网实验室
登录并配置您对 IoT-LAB 服务器的 SSH 访问权限。打开终端并键入以下命令:
my_computer$ ssh-keygen -t rsa
my_computer$ cat ~/.ssh/id_rsa.pub
它将生成一个公钥和一个私钥。最后一行用于查看您将在门户网站上复制的公钥。
复制此处的值并单击绿色按钮以更新 SSH 密钥。
现在您可以开始部署了。在本教程中,请指明您在 IoT-LAB 中的用户名。打开终端并连接到 Saclay 站点主机:
my_computer$ ssh @saclay.iot-lab.info
使用位于 Saclay 的 2 个节点开始一个名为的实验。riot_ttn
它将持续 60 分钟,并将使用 St-Lrwan1 (Sx1276) 架构:
@saclay:~$ iotlab-auth -u
@saclay:~$ iotlab-experiment submit -n riot_ttn -d 60 -l 2,archi=st-lrwan1:sx1276+site=saclay
最后一个命令将返回实验 ID ,用于检查实验状态是否为“正在运行”并获取节点列表。
@saclay:~$ iotlab-experiment get -i -s
@saclay:~$ iotlab-experiment get -i -r
现在从 GitHub 获取 RIOT 2019.01 版本的代码和我的项目的代码。
@saclay:~$ git clone https://github.com/RIOT-OS/RIOT.git -b 2019.01-branch
@saclay:~$ git clone https://github.com/domitix/CleverWeather
将项目的原始 main.c 替换为我写的开始发布随机值的消息并转到 RIOT 文件夹:
@saclay:~$ cp -a CleverWeather/LoRa/. RIOT/tests/pkg_semtech-loramac
@saclay:~$ cd RIOT
由于此实验在 2 个不同的节点上运行,您可以启动另一个终端并使用 SSH 连接到 IoT-LAB。然后在使用不同 ST LoRa 节点的两个终端中执行相同的程序。
将 arm gcc 版本更改为 IoT-LAB 提供的版本:
@saclay:~/RIOT/$ export PATH=/opt/gcc-arm-none-eabi-7-2018-q2-update/bin:$PATH
构建 LoraWAN 应用程序:
@saclay:~/RIOT/$ make -C tests/pkg_semtech-loramac clean all
使用 CLI-Tools 使用您刚刚构建的 LoRaWAN 固件刷新 ST LoRa 节点。就我而言,我使用了 st-lrwan1-14,但它可能会改变:
@saclay:~/RIOT/$ iotlab-node --update tests/pkg_semtech-loramac/bin/b-l072z-lrwan1/tests_pkg_semtech-loramac.elf -l saclay,st-lrwan1,14
使用 netcat 访问节点上运行的 RIOT shell:
@saclay:~/RIOT/$ nc st-lrwan1-14 20000
现在您可以通过命令与节点上运行的 LoRawAN 堆栈进行交互loramac.
首先您需要设置 TTN 应用程序的设备参数和快速数据速率(5):
> loramac set deveui 00000000000000
> loramac set appeui 00000000000000
> loramac set appkey 0000000000000000000000000000
> loramac set dr 5
现在您可以使用 OTAA 加入网络并开始发布消息:
> loramac join otaa
Join procedure succeeded!
> loramac publisher
如果一切正常,它应该看起来像这样,每 15 秒发送一次消息。
- 网关
网关是一个 python 程序,它使用 MQTT 协议连接到 TTN 应用程序。当消息到达时,payload 使用 base64 解码,然后由与 TTN 设备同名的 IoT 设备发送到集线器。为此,对于 TTN 部分,您将需要服务器位置、TTN 应用程序名称作为用户名和应用程序访问密钥作为密码。对于 IoT 中心,每个 IoT 设备都需要一个连接字符串。
- 节点
您只需进入文件夹并在命令行中键入即可运行 Web 应用程序:
npm start
如果网关已连接,您将在命令行中看到传入消息:
在浏览器中打开http://localhost:3000/并可视化这些值。
这些是从第一个设备 (foggia_2) 发送的值的图表:
这些是从第二个设备(rome_2)发送的值的图表:
资源
- LoRa128X-C1 lora模块规格书免费下载
- LoRa611PRO 100mw 串口Lora无线组网模块V4规格书
- LoRa128XF27 500mw 2.4GHz LoRa无线收发模块规格书
- 蓝牙转LoRa定位胸卡手册
- LoRa芯片规格书V1.pdf 2次下载
- 基于STM32+LoRa的点对点通信源代码 60次下载
- LoRa Kit系列之STM32L151+LoRa开发板 19次下载
- LORA智能巡检手持终端使用手册 13次下载
- 433MHz LoRa扩频模块在PDA中的应用综述 12次下载
- 详谈NB-IoT和LoRa的区别及应用 107次下载
- NB-IoT和LoRa二者的区别资料下载
- 一文读懂:LoRa模块使用原理资料下载
- LoRa技术网络架构及与NB-IoT的对比资料下载
- 基于LoRa智能路灯解决方案的相关案例
- LoRa技术评估套件的详细中文资料概述
- LoRa模组FSK模式下WOR功耗估算实例 4088次阅读
- 智能LoRa水表ESD静电浪涌保护方案说明 690次阅读
- 如何克服LoRa®终端节点设计中的挑战 491次阅读
- 使用CubeMX创建基于STM32WL的LoRa应用 5444次阅读
- LoRa节点、LoRa服务器和终端应用之间的数据传输 4059次阅读
- LoRa通信模块的特点及缺点 2w次阅读
- LoRa组网结构和典型应用 7382次阅读
- 星翼电子:LORA模块ATK-LORA-01相关信息描述 6479次阅读
- 物联网中的LoRa究竟是什么 7659次阅读
- 无线远传水表LoRa存在哪些技术问题 2607次阅读
- LoRa无线模块怎么用 通信距离可传输多远 2.5w次阅读
- LoRa的带宽、频率测试 1.2w次阅读
- LoRa设计的常见10大问 6119次阅读
- 深度解析LoRa和LoRaWAN的区别 8.9w次阅读
- 如何降低LoRa终端功耗 1w次阅读
下载排行
本周
- 1山景DSP芯片AP8248A2数据手册
- 1.06 MB | 532次下载 | 免费
- 2RK3399完整板原理图(支持平板,盒子VR)
- 3.28 MB | 339次下载 | 免费
- 3TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 4DFM软件使用教程
- 0.84 MB | 295次下载 | 免费
- 5元宇宙深度解析—未来的未来-风口还是泡沫
- 6.40 MB | 227次下载 | 免费
- 6迪文DGUS开发指南
- 31.67 MB | 194次下载 | 免费
- 7元宇宙底层硬件系列报告
- 13.42 MB | 182次下载 | 免费
- 8FP5207XR-G1中文应用手册
- 1.09 MB | 178次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33566次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21549次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6656次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537798次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420027次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191187次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183279次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多