资料介绍
描述
你好,为了更好地理解这篇文章,我建议你阅读上一篇关于第一部分的链接:使用谷歌云物联网和MQTT的环境站
这一次,在上一篇文章中开发的基于云的组件之上构建,我不得不将虚拟环境站替换为使用RIOT-OS和MQTT-SN协议构建的新环境站。
结构概述
这里的组件:
- 2(或更多)由RIOT-OS实现的设备,它们能够使用本机模拟器生成随机值或真实硬件;
- 一个MQTT-SN代理(本例中为mosquitto.rsmb ),用于将所有消息从设备转发到网关;
- 一个简单的网关(或透明桥),由Python 实现,用于从RIOT-OS设备收集数据并将其发送到谷歌云平台;
- 谷歌云平台,提供Cloud IoT 核心和Pub/Sub API,用于管理连接、设备以及与 Web 应用程序交换的消息;
- 使用nodejs + express和一些其他相关框架构建的 web 应用程序;
- 用于存储的Mongodb NoSQL 数据库程序;
注意:我的github上提供的代码适用于我的个人 google 帐户上的凭据。我没有上传密钥,如果你想运行它,你需要自己设置。
RIOT-OS 简介
RIOT 是一种小型实时多线程操作系统,适用于网络化、内存受限的系统,专注于低功耗无线物联网 (IoT) 设备。它是开源软件,根据 GNU 宽通用公共许可证 ( LGPL ) 发布。
它基于以下设计原则:能效、实时能力、内存占用小、模块化和统一的 API 访问,独立于底层硬件。
它支持多个驱动程序,允许用户开箱即用。此外,依赖于硬件的代码被减少到最低限度,并从内核本身中抽象出来。
这些特性,以及在多个平台上运行的可能性,包括嵌入式设备以及普通 PC(带有“本机板”),使 RIOT-OS 成为构建物联网系统的绝佳选择。
为什么选择 MQTT-SN?
MQTT-SN 被设计为尽可能接近 MQTT,但它适应无线通信环境的特殊性,如低带宽、高链路故障、短消息长度等。它还针对低带宽的实现进行了优化。 - 成本低、处理和存储资源有限的电池供电设备。
但是,MQTT-SN 不是 MQTT,因此它需要一个透明网关,它是一个守护进程或小型服务器,它通过多个传输接收传入的 MQTT-SN 数据并将它们转换为适合连接到 MQTT 服务器的 MQTT。
网关设置
假设您已经完成了上一篇文章“云平台设置”部分的说明,还需要以下步骤才能使这部分工作:
- 网关被谷歌云平台识别为简单设备,那么您需要将其添加到之前创建的设备集中。这里刷新一下如何做到这一点:https ://cloud.google.com/iot/docs/how-tos/devices?authuser=1 ;
- 将 root.pem 证书的副本(之前生成的)放在devices_RIOT/gateway文件夹中;
- 打开gateway.py文件并更改顶部的设置部分,以将其与您的配置文件连接:
# SETUP
project_id = 'your_project_ID'
registry_id = 'your_register_ID'
cloud_region = 'your_region'
device_id = 'your_device_ID'
sub_topic = 'your_topic'
- 然后运行:
$ python gateway_RIOT.py
原生板
在本节中,我将展示如何设置项目以使其在本机板模拟器上运行,这样您就可以在笔记本电脑上简单地试用它而无需外部板。
- 由于代码基于emcute_mqttsn示例,因此部分设置也非常相似。因此,要运行 mosquitto RSMB (真正的小型消息代理),只需按照以下链接中“设置代理”部分的说明进行操作:https ://github.com/RIOT-OS/RIOT/tree/master/示例/emcute_mqttsn
- 由于我们使用的是原生板,我们还需要在devices_RIOT文件夹中设置运行这两个命令的虚拟网络接口:
$ sudo ./RIOT/dist/tools/tapsetup/tapsetup
$ sudo ip a a fec0:affe::1/64 dev tapbr0
- 选择一个设备文件夹并通过以下方式运行它:
$ BOARD=native make all term PORT=tap0
- 此时,我们应该有这种情况,左边是设备,右上角是蚊子代理,右下角是网关
- 要完成设置,请在设备终端上(已经工作!),运行以下两个命令:
> ifconfig 5 add fec0:affe::99
> con fec0:affe::1 1885
-
现在,设备已连接到代理并准备好使用 pub/sub 范例的所有功能。要查看所有功能运行命令
help
,否则,直接开始自主发送,只需运行:
> start ...
- 这是最后的情况
正如我们所见,RIOT 设备通过 MQTT-SN 代理将遥测数据发送到网关,网关最终将它们发送到谷歌云平台。
结论
总之,该应用程序现在能够从之前实现的虚拟设备和新的 RIOT-OS 实现中检索数据。
其他一些有用的设置链接是:
对于下一个任务:
- 如何使用Google Firebase制作IoT设备
- 使用AWS的IoT环境站第2部分
- 使用LoRaWAN和TTN在IoT实验室测试RIOT-OS设备
- 使用谷歌云物联网和MQTT的环境站
- 连接到AWS IoT的RIOT-OS应用程序
- 使用RIOT-OS的基于AWS的IoT虚拟环境站
- 如何轻松实现MQTT接入阿里云IoT平台
- MQTT接入阿里云IoT平台使用说明
- 全志T3开发板 ARM CortexA7——MQTT通信协议
- RIOT-OS实时多线程IoT操作系统
- RIOT-OS入门 Windows系统下在STM32上运行RIOT OS
- 如何使用MQTT客户端连接阿里云MQTT服务器详细教程说明
- MQTT是什么?物联网开发入门之物联网标准通信协议-MQTT详细资料概述 33次下载
- 物联网流行协议MQTT的中文版详细资料免费下载 27次下载
- MQTT物联网网关的常见类型 31次下载
- 项目分享|基于ELF 1开发板的MQTT远程温湿度监测系统 339次阅读
- MQTT和Modbus协议的区别 1903次阅读
- paho-mqtt模块实战 1113次阅读
- MQTT协议的概念和主要特性 MQTT协议于物联网有何好处 2232次阅读
- 巨控MQTT功能推送说明 477次阅读
- 盘点2023年值得尝试的MQTT客户端工具 4540次阅读
- MQTT协议简介及协议原理 6724次阅读
- 怎么实现IoT网关开源 1186次阅读
- MQTT是什么? 1.2w次阅读
- 用小凌派RK2206开发板实现基于OpenHarmony阿里云IoT服务的教程 2625次阅读
- 小凌派RK2206开发板:实现基于OpenHarmony的本地MQTT协议 4567次阅读
- 如何移植MQTT物联网通信协议 4274次阅读
- MQTT工业级无线路由器的特点 1654次阅读
- 了解物联网云服务之概貌,以进一步学习了解IoT 6051次阅读
- google glass为何停产_google眼镜为什么失败 2.2w次阅读
下载排行
本周
- 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次下载 | 免费
评论
查看更多