電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>使用RIOT/Google IoT/MQTT的環(huán)境站

使用RIOT/Google IoT/MQTT的環(huán)境站

2023-06-30 | zip | 0.00 MB | 次下載 | 免費(fèi)

資料介紹

描述

你好,為了更好地理解這篇文章,我建議你閱讀上一篇關(guān)于第一部分的鏈接:使用谷歌云物聯(lián)網(wǎng)和MQTT的環(huán)境站

這一次,在上一篇文章中開發(fā)的基于云的組件之上構(gòu)建,我不得不將虛擬環(huán)境站替換為使用RIOT-OSMQTT-SN協(xié)議構(gòu)建的新環(huán)境站。

結(jié)構(gòu)概述

這里的組件:

poYBAGOADMOAJpQ9AAIX5qzP9ck785.png
?
  • 2(或更多)由RIOT-OS實(shí)現(xiàn)的設(shè)備,它們能夠使用本機(jī)模擬器生成隨機(jī)值或真實(shí)硬件
  • 一個(gè)MQTT-SN代理(本例中為mosquitto.rsmb ),用于將所有消息從設(shè)備轉(zhuǎn)發(fā)到網(wǎng)關(guān);
  • 一個(gè)簡單的網(wǎng)關(guān)(或透明橋),由Python 實(shí)現(xiàn),用于從RIOT-OS設(shè)備收集數(shù)據(jù)并將其發(fā)送到谷歌云平臺(tái);
  • 歌云平臺(tái),提供Cloud IoT 核心Pub/Sub API,用于管理連接、設(shè)備以及與 Web 應(yīng)用程序交換的消息;
  • 使用nodejs + express和一些其他相關(guān)框架構(gòu)建的 web 應(yīng)用程序;
  • 用于存儲(chǔ)的Mongodb NoSQL 數(shù)據(jù)庫程序;
注意:我的github上提供的代碼適用于我的個(gè)人 google 帳戶上的憑據(jù)。我沒有上傳密鑰,如果你想運(yùn)行它,你需要自己設(shè)置。

RIOT-OS 簡介

RIOT 是一種小型實(shí)時(shí)多線程操作系統(tǒng),適用于網(wǎng)絡(luò)化、內(nèi)存受限的系統(tǒng),專注于低功耗無線物聯(lián)網(wǎng) (IoT) 設(shè)備。它是開源軟件,根據(jù) GNU 寬通用公共許可證 ( LGPL ) 發(fā)布。

它基于以下設(shè)計(jì)原則:能效、實(shí)時(shí)能力、內(nèi)存占用小、模塊化和統(tǒng)一的 API 訪問,獨(dú)立于底層硬件。

它支持多個(gè)驅(qū)動(dòng)程序,允許用戶開箱即用。此外,依賴于硬件的代碼被減少到最低限度,并從內(nèi)核本身中抽象出來。

poYBAGOYB2OAGxlkAAEOPzOt5IE123.png
?

這些特性,以及在多個(gè)平臺(tái)上運(yùn)行的可能性,包括嵌入式設(shè)備以及普通 PC(帶有“本機(jī)板”),使 RIOT-OS 成為構(gòu)建物聯(lián)網(wǎng)系統(tǒng)的絕佳選擇。

為什么選擇 MQTT-SN?

MQTT-SN 被設(shè)計(jì)為盡可能接近 MQTT,但它適應(yīng)無線通信環(huán)境的特殊性,如低帶寬、高鏈路故障、短消息長度等。它還針對(duì)低帶寬的實(shí)現(xiàn)進(jìn)行了優(yōu)化。 - 成本低、處理和存儲(chǔ)資源有限的電池供電設(shè)備。

pYYBAGOYB2iAVoeuAADEnhmmYHY572.png
?

但是,MQTT-SN 不是 MQTT,因此它需要一個(gè)透明網(wǎng)關(guān),它是一個(gè)守護(hù)進(jìn)程或小型服務(wù)器,它通過多個(gè)傳輸接收傳入的 MQTT-SN 數(shù)據(jù)并將它們轉(zhuǎn)換為適合連接到 MQTT 服務(wù)器的 MQTT。

網(wǎng)關(guān)設(shè)置

假設(shè)您已經(jīng)完成了上一篇文章“云平臺(tái)設(shè)置”部分的說明,還需要以下步驟才能使這部分工作:

  • 網(wǎng)關(guān)被谷歌云平臺(tái)識(shí)別為簡單設(shè)備,那么您需要將其添加到之前創(chuàng)建的設(shè)備集中。這里刷新一下如何做到這一點(diǎn):https ://cloud.google.com/iot/docs/how-tos/devices?authuser=1 ;
  • 將 root.pem 證書的副本(之前生成的)放在devices_RIOT/gateway文件夾中;
poYBAGOYB3eAHa1hAAGlcQuZoQ0972.png
?
  • 打開gateway.py文件并更改頂部的設(shè)置部分,以將其與您的配置文件連接:
# SETUP
project_id = 'your_project_ID'
registry_id = 'your_register_ID'
cloud_region = 'your_region'
device_id = 'your_device_ID'
sub_topic = 'your_topic'
  • 然后運(yùn)行:

$ python gateway_RIOT.py

原生板

在本節(jié)中,我將展示如何設(shè)置項(xiàng)目以使其在本機(jī)板模擬器上運(yùn)行,這樣您就可以在筆記本電腦上簡單地試用它而無需外部板。

  • 由于代碼基于emcute_mqttsn示例,因此部分設(shè)置也非常相似。因此,要運(yùn)行 mosquitto RSMB (真正的小型消息代理),只需按照以下鏈接中“設(shè)置代理”部分的說明進(jìn)行操作:https ://github.com/RIOT-OS/RIOT/tree/master/示例/emcute_mqttsn
  • 由于我們使用的是原生板,我們還需要在devices_RIOT文件夾中設(shè)置運(yùn)行這兩個(gè)命令的虛擬網(wǎng)絡(luò)接口

$ sudo ./RIOT/dist/tools/tapsetup/tapsetup

$ sudo ip a a fec0:affe::1/64 dev tapbr0

  • 選擇一個(gè)設(shè)備文件夾并通過以下方式運(yùn)行它:

$ BOARD=native make all term PORT=tap0

  • 此時(shí),我們應(yīng)該有這種情況,左邊是設(shè)備,右上角是蚊子代理,右下角是網(wǎng)關(guān)
pYYBAGOYB5mAEoJ-AAimxOlMjU4837.png
?
  • 要完成設(shè)置,請(qǐng)?jiān)谠O(shè)備終端上(已經(jīng)工作!),運(yùn)行以下兩個(gè)命令:

> ifconfig 5 add fec0:affe::99

> con fec0:affe::1 1885

  • 現(xiàn)在,設(shè)備已連接到代理并準(zhǔn)備好使用 pub/sub 范例的所有功能。要查看所有功能運(yùn)行命令help,否則,直接開始自主發(fā)送,只需運(yùn)行:

> start ...

  • 這是最后的情況
poYBAGOYB9SAMSxeAA2gBvEhwPg728.png
?

正如我們所見,RIOT 設(shè)備通過 MQTT-SN 代理將遙測數(shù)據(jù)發(fā)送到網(wǎng)關(guān),網(wǎng)關(guān)最終將它們發(fā)送到谷歌云平臺(tái)。

結(jié)論

總之,該應(yīng)用程序現(xiàn)在能夠從之前實(shí)現(xiàn)的虛擬設(shè)備和新的 RIOT-OS 實(shí)現(xiàn)中檢索數(shù)據(jù)。

其他一些有用的設(shè)置鏈接是:

對(duì)于下一個(gè)任務(wù):


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評(píng)估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報(bào)告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊
  16. 1.09 MB  |  178次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191187次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)