資料介紹
描述
概述
該項目是羅馬第一大學物聯網課程作業的第一部分。目的是建立一個基于亞馬遜網絡服務(AWS)的虛擬環境站,模擬一些傳感器(溫度、濕度、雨高、風向和風強度),從 Python 腳本生成來自兩個不同站的隨機值并將它們發送到具有 MQTT 代理的數據庫 (DynamoDB)。然后這些數據將顯示在一個簡單的 Web 應用程序上(本項目在 localhost 中運行)。在有用的鏈接部分,您可以找到指向第二部分、我的 GitHub 存儲庫和 YouTube 演示文稿的鏈接。
AWS 物聯網核心
Amazon Web Services是一個提供大量服務的云計算平臺。首先,您必須創建一個帳戶,請記住,如果您是學生,您將擁有一些優勢。然后,您可以訪問AWS 管理控制臺,它可以讓您找到所需的每項服務,并搜索IoT Core 。
創建事物
按照以下步驟創建新事物:
- 當您在 IoT Core 服務中時,單擊管理
- 在Things子選項卡中查找Create按鈕,然后選擇Create a single thing
- 為您的事物命名,忽略其他字段并單擊下一步
- 選擇一鍵式證書創建,然后單擊創建證書
現在您必須注意這一步,因為您需要將系統提供給您的證書保存在一個文件夾中,它們對于設置與您的 Thing 的連接非常重要。你必須為這個東西下載一個證書和一個私鑰。
然后在AWS 的根 CA附近單擊下載:您將被重定向到用于服務器身份驗證的 CA 證書頁面。您必須選擇Amazon Root CA 1并保存將顯示在擴展名為.pem的文件中的證書。最后,單擊激活并完成。
現在您可以返回 AWS IoT Core 主頁并選擇Secure選項卡,然后選擇Policies:現在您必須創建一個策略以附加到您的證書。
- 在策略子選項卡中,單擊創建
- 為您的策略命名,使用“ * ”填寫操作和資源 Arn字段,然后選中允許框
- 點擊創建
成功創建策略后,返回證書子選項卡,找到您的證書并單擊三個點;選擇附加策略并選擇您剛剛創建的策略。做得好!該事物已在 IoT Core 上正確創建。您可以在此處找到完整的 AWS IoT Core 文檔。
動態數據庫
現在您需要一個數據庫來存儲您的數據,因此請返回 AWS 管理控制臺并搜索DynamoDB 。現在點擊創建表:
- 為您的桌子選擇一個名稱
- 選擇一個主鍵(在這種情況下是ID )
- 選擇一個排序鍵(在這種情況下建議是datetime )
DynamoDB 用途廣泛,您可以通過多種方式創建和獲取項目,例如使用規則或使用AWS Lambda。在我們的例子中,一切都是使用 Python 腳本完成的。您可以在此處找到完整的 DynamoDB 文檔。
編碼
首先,您需要下載適用于 Python 的 AWS 開發工具包(終端:pip install boto3
. 在腳本中:import boto3 )。然后你就可以建立與你事物的連接:
您可以在之前創建的事物的信息選項卡中找到您的端點 (ARN)。在同一函數中初始化 MQTT 通信(記得導入 AWSIoTMQTTClient ):
開始連接并訂閱您的主題:
也可以檢查連接是否正常工作。為此,您必須返回 IoT Core 服務,選擇“測試”選項卡并訂閱一個主題:顯然該主題必須與您在代碼中聲明的相同;之后,如果您運行模擬,您應該在終端和 IoT Core 中獲得相同的結果:
然后,您可以選擇一種方法來模擬虛擬傳感器的數據檢測。就我而言,這些數據只是在某些范圍內隨機生成的:
- 溫度(-50 | 50 攝氏度)
- 濕度 (0 | 100%)
- 風向(0 | 360 度)
- 風強 (0 | 100 m/s)
- 雨高(0 | 50 mm / h)
數據將在同一腳本中發送到 DynamoDB:
網絡儀表板
最后,Web 應用程序將顯示存儲在數據庫中的數據。在我的例子中,它是一個在 localhost 中運行的簡單應用程序,使用Django 創建。Web 應用程序提供:
- 每個虛擬站的最后一次檢測
- 各站最近一小時的所有數據
- 對于每個傳感器,過去一小時內所有站點的數據
系統如何運作
該代碼在我的 Github 存儲庫中可用,顯然,如果您想使用它,您必須更改一些參數,例如端點和證書的路徑。
有用的鏈接
- 使用AWS的IoT環境站第2部分
- UM-WI-016DA16200 AWS 物聯網門鎖應用
- UM-WI-017 DA16200 AWS 物聯網服務器設置
- 使用谷歌云物聯網和MQTT的環境站
- 使用RIOT-OS的基于AWS的IoT虛擬環境站
- UM-WI-016 DA16200 AWS 物聯網門鎖應用
- UM-WI-017 DA16200 AWS 物聯網服務器設置
- 基于AWS的工業物聯網應用案例
- 虛擬現實技術在機器人臂靈巧手遙操作中的應用 22次下載
- 如何在虛擬環境下進行病毒的查殺詳細資料概述 13次下載
- 基于Android與物聯網的教學環境感知模型 16次下載
- 機器視覺智能車虛擬環境的搭建_鄒斌 1次下載
- 機器人操作虛擬環境的研究 38次下載
- 基于VRML構建室內虛擬環境的設計與實現
- 協同虛擬環境中的并發控制機制
- Matter IDT工具使用步驟(一) 461次閱讀
- 虛擬現實技術應用在哪些方面 1822次閱讀
- 物聯網中常用協議及應用場景 2282次閱讀
- 創建Root權限虛擬環境 1051次閱讀
- 使用vRealize Automation REST API置備虛擬機以進行軟件開發 1019次閱讀
- Visual Studio Code Python使用新的創建環境命令簡化項目設置 1217次閱讀
- 如何利用ESP8266實現防雨物聯網氣象站的設計 4963次閱讀
- python如何配置虛擬環境? 893次閱讀
- 3D磁傳感器,可以增強虛擬環境中的真實感 1872次閱讀
- 基于ML-Agents v0.4,在Unity 2018搭建的虛擬城市環境中訓練了一輛自動駕駛車輛 8650次閱讀
- 什么是物聯網技術?淺談NB-IoT技術 2.2w次閱讀
- 物聯網保護環境的三種應用解析 5023次閱讀
- Xilinx 軟件定義開發環境 SDAccel上線 AWS 5483次閱讀
- 面向物聯網和虛擬儀器實驗的便攜式數字信號處理平臺 1525次閱讀
- 工業機器人虛擬樣機系統的研究 1385次閱讀
下載排行
本周
- 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次下載 | 免費
評論
查看更多