資料介紹
結構概述
- 2 個(或更多)B-L072Z-LRWAN1 LoRa 套件在 IoT-LAB 測試臺上運行
- 物聯網基礎設施
- 一個簡單的網關(或透明橋),由Python 實現,用于從 TTN 基礎設施收集數據并將其發送到谷歌云平臺;
- 谷歌云平臺,提供Cloud IoT 核心和Pub/Sub API,用于管理連接、設備以及與 Web 應用程序交換的消息;
- 使用nodejs + express和一些其他相關框架構建的 web 應用程序;
- 用于存儲的Mongodb NoSQL 數據庫程序;
注意:我的github上提供的代碼適用于我的個人 google 帳戶上的憑據。我沒有上傳密鑰,如果你想運行它,你需要自己設置。
IoT-LAB簡介
IoT-LAB 是一個開放的測試平臺,它提供了一個非常大規模的基礎設施,適用于測試小型無線傳感器設備和異構通信對象。
它具有分布在法國六個不同地點的 1500 多個無線傳感器節點。節點既可以是固定的,也可以是移動的,并且可以在所有站點中以各種拓撲進行分配。有多種無線傳感器可用,具有不同的處理器架構和不同的無線芯片。
由于我們沒有兼容 LoRa 的硬件,因此使用測試平臺是在真實硬件上進行測試的最佳選擇。
LoRaWAN 技術
LoRaWAN? 規范是一種低功耗、廣域 (LPWA) 網絡協議,旨在將電池供電的“事物”無線連接到區域、國家或全球網絡中的互聯網,并針對關鍵的物聯網 (IoT) 要求,例如雙向定向通信、端到端安全、移動性和本地化服務。它定義了網絡的通信協議和系統架構,而 LoRa 物理層則支持遠程通信鏈路。
LoRaWAN? 網絡中的節點是異步的,當它們準備好發送數據時進行通信,無論是事件驅動的還是調度的,避免了同步網絡典型的電池消耗。此外,為了優化各種終端應用配置文件,LoRaWAN? 使用不同的設備類別。設備類別權衡網絡下行鏈路通信延遲與電池壽命。
LoRaWAN? 利用兩層安全性:一層用于網絡,一層用于應用程序。網絡安全確保網絡中節點的真實性,而應用安全層確保網絡運營商無權訪問最終用戶的應用數據。AES-128 加密與使用 IEEE EUI64 標識符的密鑰交換一起使用。
TheThingsNetwork 概述和設置
The Things Network 是 LoRa Alliance? 的貢獻者成員,LoRa Alliance? 是一個由 500 多家成員公司組成的非營利性協會,致力于通過開發和推廣低功耗廣域網 (LPWAN) 物聯網來實現大規模部署。 LoRaWAN? 開放標準。
網關構成了設備和物聯網之間的橋梁,而物聯網的后端系統負責在設備和應用程序之間路由物聯網數據。事實上,諸如 LoRaWAN? 之類的非 IP 協議需要某種形式的路由和處理,然后才能將消息傳遞到應用程序。
TTN 和網橋設置
Things Network Web 界面使這些步驟變得非常簡單:
- 首先,訪問https://www.thethingsnetwork.org/并創建一個帳戶;
- 轉到控制臺并向您的 TTN 帳戶添加一個新應用程序,如果您需要更多信息,請使用此鏈接https://www.thethingsnetwork.org/docs/applications/add.html
- 現在,在您的 TTN 應用程序中為您要使用的每個板注冊一個新設備。保留默認的其他空中激活 (OTAA) 程序。您唯一必須設置的是設備 EUI,讓應用程序為您生成其他參數。如果您需要幫助,請看這里:https ://www.thethingsnetwork.org/docs/devices/registration.html
第一步完成了!是時候設置網關了。我假設您已經閱讀了第一篇文章“云平臺設置”部分的說明,那么:
- 同樣這一次,網關被谷歌云平臺識別為簡單設備,因此您需要將其添加到之前創建的設備集中。這里刷新如何做到這一點:https://cloud.google.com/iot/docs/how-tos/devices?authuser=1;
- 將 root.pem 證書的副本(之前生成的)放在devices_RIOT/gateway文件夾中(或簡單地更改所有路徑);
- TTN 使用 AES-128 對稱加密,這意味著這一次您需要為對稱密鑰存儲一個簡單的字符串。您可以簡單地將其作為純文本保存在變量中,以便查看您的代碼的任何人都可以閱讀它!讓我們做一些更安全的事情。在devices_LoRa/gateway文件夾中創建一個ttn_password.txt文件,然后從 TTN 控制臺復制并粘貼密碼,如上圖所示。
- 恭喜,你找到了關鍵,現在,就像我們已經做了很多次一樣,讓我們??在 gateway_LoRa.py 文件的頂部更改 Google 的設置:
# 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_LoRa.py
物聯網實驗室設置
首先,您必須設置對 IoT-LAB 服務器的ssh訪問權限。這些步驟都很簡單,IoT-LAB 教程做的很好,所以我直接給你留了文檔鏈接。https://www.iot-lab.info/tutorials/ssh-access/。
現在,我們已準備好進行設置:
- 首先,建立到 Saclay 站點主機的 ssh 連接:
my_computer$ ssh @saclay.iot-lab.info
是您的帳戶 ID,可以在個人資料頁面上找到
- 連接后,在主文件夾中克隆 RIOT Github 存儲庫:
@saclay:~$ git clone https://github.com/RIOT-OS/RIOT.git
- 創建并切換到一個新目錄(例如“mycode”):
@saclay:~$ mkdir
@saclay:~$ cd
- 是時候上傳代碼了。打開一個新終端,然后轉到devices_LoRa/device并“安全復制”所有文件:
my_computer$ scp main.c
@saclay.iot-lab.info:
my_computer$ scp Makefile @saclay.iot-lab.info:
my_computer$ scp Makefile.ci @saclay.iot-lab.info:
- 由于 RIOT 不支持 SSH 前端默認安裝的 arm GCC 版本,我們需要提供一個新版本:
@saclay:~/mycode$ export PATH=/opt/gcc-arm-none-eabi-7-2018-q2-update/bin:$PATH
- 然后驗證您是否擁有正確的 GCC 版本:
@saclay:~/mycode$ arm-none-eabi-gcc --version
- 讓我們編譯,運行:
@saclay:~/mycode$ make clean all
- 現在我們有了程序的可執行和可鏈接格式(.elf),是時候在 IoT-LAB 測試平臺上開始新的實驗了。登錄并提交實驗:
@saclay:~/mycode$ iotlab-auth -u
@saclay:~/mycode$ iotlab-experiment submit -n -d
-l , archi=st-lrwan1:sx1276+site=saclay
我知道,我們都希望復制和粘貼所有這些命令,避免鍵入它們。但是,在這種情況下,請記住設置實驗名稱、時間和節點數。
- 上一步會返回一個id,注意,一定要保存好,不然丟了就需要重啟一切??!或許不是,你很幸運,你可以隨時在網站上的“我的實驗”下查看它。但是,這不是您需要的唯一 ID,而是一個新的 ID,即與您的實驗相關聯的節點的數量/數量。要找到它,只需運行:
@saclay:~/mycode$ iotlab-experiment get -i -r
- 完美,此時,我們已經編譯了代碼并運行了一個實驗。讓我們在 B-L072Z-LRWAN1 LoRa 套件上刷寫可執行文件:
@saclay:~/mycode$ iotlab-node --update bin/b-l072z-lrwan1/device_LORA.elf -l saclay,st-lrwan1,
記得輸入正確的節點號!
在 IoT-lab 上運行設備
節點正在運行,現在您可以使用 Netcat 訪問每個節點,每個終端窗口一個:
@saclay:~/mycode$ nc st-lrwan1- 20000
如果由于任何原因,設備出現任何類型的問題,請轉到您的 IoT-lab 頁面,找到實驗和節點,然后重新啟動它,如下圖所示。
現在,轉到 TTN Web 控制臺上的“應用程序 > appID > 設備 > 設備 ID”并獲取設備 EUI、應用程序 EUI 和應用程序密鑰信息。因此,在運行的設備上,將它們設置為 RIOT 固件:
> loramac set deveui your_EUI
> loramac set appeui your_EUI
> loramac set appkey your_key
為避免問題也設置數據速率,IoT-LAB 在其網站上建議值為 5:
> loramac set dr 5
最后,加入網絡:
> loramac join otaa
現在,您可以使用我們在之前分配中使用的相同命令來開始自主發送消息:
> start ...
新儀表板
舊儀表板非常簡單,因此我決定進行一些更改并添加新功能。
首先,我決定重組數據庫,它現在為每種遙測類型提供一個不同的架構,并為設備提供一個新架構。因此,每個設備都有一組對遙測的引用,它使用 deviceId 作為外鍵。大大減少了檢索時間并增加了系統的一般可擴展性。
它現在可以識別需要連接的新設備并直接添加它們。此外,每當有新消息時,主頁上不僅會顯示遙測值,還會顯示設備的身份。
總之,為了提供令人愉悅的視覺界面,我添加了一些彩色圖表來顯示最后一小時的值,而舊值和以前一樣顯示在列表中。
結論
該應用程序現在能夠從虛擬設備、使用 MQTT-SN 協議的 RIOT-OS 設備以及使用 LoRaWAN? 的新實現中檢索數據。此外,借助新的儀表板和新的彩色圖表,任何人都可以體會到使用物聯網“事物”收集數據的美麗程度。
?
- 使用RIOT/Google IoT/MQTT的環境站 0次下載
- 連接到AWS IoT的RIOT-OS應用程序 0次下載
- 使用RIOT-OS的基于AWS的IoT虛擬環境站 0次下載
- 使用RIOT OS控制外部LED 0次下載
- 基于RIOT OS的LoRa信號的被動數據包嗅探應用程序 0次下載
- 使用PCB方式的Arduino TTN LoRa節點設備 0次下載
- RIOT-OS實時多線程IoT操作系統 0次下載
- RIOT-OS入門 Windows系統下在STM32上運行RIOT OS 0次下載
- 基于Proteus的單片機虛擬仿真網絡實驗室 45次下載
- 基于二維碼及小程序的實驗室設備管理系統 8次下載
- 物聯網實驗室管理系統的設計方案 17次下載
- EMC實驗室的建設設計方案 1次下載
- 高壓實驗室報警控制回路圖解 16次下載
- 實驗室LCR-819測試儀說明 11次下載
- 高溫電子實驗室--實驗設備簡介 26次下載
- 超聲波清洗設備的實驗室應用 625次閱讀
- 實驗室電源電路原理圖 1144次閱讀
- 高校實驗室控制算法快速驗證測試筆記 229次閱讀
- 航空電子設備中敏感電子設備的RTCA/DO 160測試指南 461次閱讀
- 如何建立移動校準實驗室 1210次閱讀
- 速通IoT設備電源測量難點 353次閱讀
- Python版實驗室設備管理系統源代碼 1399次閱讀
- 高性能電驅動系統NVH實驗室工藝設計 1666次閱讀
- 如何建立一個電磁兼容實驗室 2919次閱讀
- digilent適便攜式電路實驗室介紹 2012次閱讀
- 海天雄電子:Android移動互聯網實驗室開發架構 2975次閱讀
- 光學圖像測試之景深效果測試 8471次閱讀
- 開放實驗室:測量LCR及阻抗特性 5648次閱讀
- 實驗設備的正確端接方法以及重要性 1375次閱讀
- 是德開放實驗室:免費為企業進行低功耗測試 5490次閱讀
下載排行
本周
- 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次下載 | 免費
評論
查看更多