電子發(fā)燒友App

硬聲App

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

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

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>基于AWS的人群感知應(yīng)用程序

基于AWS的人群感知應(yīng)用程序

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

資料介紹

描述

概述

該項(xiàng)目是羅馬第一大學(xué)物聯(lián)網(wǎng)課程作業(yè)的一部分。目的是構(gòu)建一個基于亞馬遜網(wǎng)絡(luò)服務(wù) (AWS) 的人群感知應(yīng)用程序,該應(yīng)用程序通過智能手機(jī)的加速度計(jì)確定用戶活動。加速度計(jì)提供的數(shù)據(jù)分析將以兩種方式進(jìn)行:

在開始之前...

知道我基于 AWS 構(gòu)建了另一個項(xiàng)目很有用。在之前的項(xiàng)目中,由三個部分組成,我解釋了一些 AWS 基礎(chǔ)知識,例如如何在 IoT Core 中創(chuàng)建事物以及如何創(chuàng)建 DynamoDb 表,我假設(shè)您已經(jīng)了解了這個項(xiàng)目。你可以在這里找到第一部分。

此應(yīng)用程序設(shè)計(jì)用于使用 Google Chrome 在 Android 設(shè)備上工作。

另一件有用的事情是,如果您在虛擬機(jī)中運(yùn)行此項(xiàng)目所需的服務(wù)器,則必須檢查 VM 的網(wǎng)絡(luò)配置!必須將其設(shè)置在“橋接網(wǎng)絡(luò)”上,以便您可以輕松訪問本地托管服務(wù)器。

最后,請記住,我用于這個項(xiàng)目的所有代碼都可以在我的Github 存儲庫中找到。

服務(wù)器

服務(wù)器是通過Node.js構(gòu)建的,您可以在此處找到文檔。

poYBAGOYMY6Ad4MdAAB8277vvsQ471.png
部分服務(wù)器代碼
?

您需要創(chuàng)建一些 SSL 自簽名證書。在您選擇的文件夾中輸入終端:

openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -days 365

當(dāng)然,您可以更改代表證書持續(xù)時間的-days的值。系統(tǒng)可能會要求您提供其他信息:提供或發(fā)明它們,這對我們的目的并不重要。然后,您可以在您選擇的文件夾中找到您的證書和密鑰:在代碼中必要的地方復(fù)制它們的路徑。

關(guān)于 AWS IoT Core Thing 的 AWS 密鑰和證書的問題,如果您不知道如何獲取,建議查看我之前的項(xiàng)目。當(dāng)您配置了所有需要的參數(shù)后,只需使用您的終端運(yùn)行您的服務(wù)器,顯然進(jìn)入正確的文件夾:

node server.js
pYYBAGOYMZSAXF37AABDrJf7NPE726.png
服務(wù)器運(yùn)行
?

基于邊緣的部署

在基于邊緣的部署中,加速度計(jì)提供的數(shù)據(jù)將在智能手機(jī)本身上進(jìn)行分析(以非常簡單的方式),然后將它們發(fā)送到 AWS 并最終顯示在網(wǎng)頁上。

poYBAGOYMZeAEdEsAAB89aRklDc777.png
基于邊緣的部署
?

通過 HTML5 應(yīng)用程序,使用通用傳感器 API ,我們能夠獲取加速度計(jì)的 xyz 數(shù)據(jù)。

?
?
?
pYYBAGOYMZqAOf39AACdAloHbQ0636.jpg
?
1 / 2 ? HTML5 頁面視圖
?

然后,使用極其簡單的模型(您顯然可以改進(jìn)它)在設(shè)備上分析數(shù)據(jù),該模型確定用戶的活動,并將其傳遞到將它們轉(zhuǎn)發(fā)到 AWS IoT Core 的服務(wù)器。如果一切正常,您應(yīng)該在運(yùn)行服務(wù)器的終端和 AWS IoT Core 上看到數(shù)據(jù),并在“測試”選項(xiàng)卡中訂閱服務(wù)器正在發(fā)布的同一主題。

當(dāng)數(shù)據(jù)到達(dá) AWS IoT Core 時,它??們會觸發(fā)將它們存儲在 AWS DynamoDB 中的規(guī)則。

?
?
?
pYYBAGOYzOmARCjiAACDZhhITNI664.png
?
1 / 2 ?規(guī)則概述
?

創(chuàng)建規(guī)則非常簡單,您必須進(jìn)入 AWS IoT Core 的Act選項(xiàng)卡,然后選擇Rules子選項(xiàng)卡;然后點(diǎn)擊創(chuàng)建。本質(zhì)上,您必須填寫必填字段,選擇從中讀取數(shù)據(jù)的主題,并選擇在調(diào)用規(guī)則時要執(zhí)行的操作。在這種情況下,您必須選擇“在 DynamoDB 表中插入”。當(dāng)然,您必須首先創(chuàng)建一個結(jié)構(gòu)合理的 DynamoDB 表。

最后,這個項(xiàng)目在 localhost 中運(yùn)行的網(wǎng)頁(您可能還記得我以前的項(xiàng)目中的...)從數(shù)據(jù)庫中檢索數(shù)據(jù)。該網(wǎng)頁將顯示最后一小時的檢測和存儲的數(shù)據(jù)。

?
?
?
poYBAGOYzOuAGpynAABalomFzpA405.png
?
1 / 2 ?最后檢測
?

基于云的部署

在基于云的部署中,加速度計(jì)提供的數(shù)據(jù)將被發(fā)送到 AWS,通過AWS Lambda函數(shù)(以非常簡單的方式)進(jìn)行分析,最后顯示在網(wǎng)頁上。

pYYBAGOYzO6ASJZuAACuRx-d6_g407.png
基于云的部署
?

通過 HTML5 應(yīng)用程序,使用通用傳感器 API ,我們能夠獲取加速度計(jì)的 xyz 數(shù)據(jù)。

poYBAGOYzPCAeIFIAACYKO8I_TM995.jpg
HTML5 頁面視圖
?

界面非常相似,但是這次我們有一個Expected狀態(tài),只是作為一個測試,因?yàn)檎嬲臄?shù)據(jù)分析將發(fā)生在云服務(wù)上。然后,數(shù)據(jù)被傳遞到將它們轉(zhuǎn)發(fā)到 AWS IoT Core 的服務(wù)器。如果一切正常,您應(yīng)該在運(yùn)行服務(wù)器的終端和 AWS IoT Core 上看到數(shù)據(jù),并在“測試”選項(xiàng)卡中訂閱服務(wù)器正在發(fā)布的同一主題。

當(dāng)數(shù)據(jù)到達(dá) AWS IoT Core 時,它??們會觸發(fā)兩條規(guī)則。觸發(fā)的第一個規(guī)則將原始數(shù)據(jù)存儲在 AWS DynamoDB 中,與您看到的基于邊緣模式的表相同;觸發(fā)的第二個規(guī)則從 DynamoDB 表中檢索它們,分析它們以提供結(jié)果活動,并將它們存儲在第二個 DynamoDB 表中。也許使用兩個不同表的決定有點(diǎn)棘手,但我這樣做是為了有兩個單獨(dú)的表:一個用于基于邊緣模式和基于云模式的原始數(shù)據(jù),另一個用于基于云模式處理的數(shù)據(jù)。您可以根據(jù)需要修改 Lambda 函數(shù)。

pYYBAGOYzPKAW5gJAAClTGwrBsw377.png
我的 Lambda 函數(shù)
?

使用 AWS Lambda 非常簡單。當(dāng)您要創(chuàng)建新函數(shù)時,請轉(zhuǎn)到 AWS Lambda 控制臺,然后單擊創(chuàng)建函數(shù):

pYYBAGOYzPWAWFsnAAEW0Qh2nfE219.png
創(chuàng)建函數(shù)
?

為您的函數(shù)命名,然后選擇您喜歡的語言。Permission部分,您必須為您的函數(shù)選擇一個執(zhí)行角色,并為其提供必要的策略。請注意,您可以在AWS Identiy & Access Management (IAM)中創(chuàng)建個性化角色,為每個角色創(chuàng)建個性化策略。在這種情況下,我創(chuàng)建了一個具有完整 DynamoDB 權(quán)限的角色。

和以前一樣,同一個網(wǎng)頁從數(shù)據(jù)庫中檢索數(shù)據(jù)。該網(wǎng)頁將顯示最后一小時的檢測和存儲的數(shù)據(jù)。

當(dāng)然,如果您不想使用兩個不同的 DynamoDB 表但想直接獲取 Lambda 處理的數(shù)據(jù),還有其他可能的解決方案,例如AWS API Gateway 。

系統(tǒng)如何運(yùn)作

該代碼在我的 Github 存儲庫中可用,顯然如果您想使用它,您必須更改一些參數(shù),正如我在前面幾節(jié)中解釋的那樣。如果一切都已正確完成,您可以按以下方式運(yùn)行系統(tǒng)(我希望不必說您必須在每個步驟中都位于正確的文件夾中:-)):

  • (可選)在一個終端中運(yùn)行 localhost 頁面:該文件位于crowd_sensing/django_web文件夾中> python3 manage.py runserver
  • 在不同的終端中運(yùn)行您的服務(wù)器:該文件位于crowd_sensing文件夾中> node server.js
  • 使用您的智能手機(jī),使用 Google Chrome 和運(yùn)行服務(wù)器的機(jī)器上使用的相同 Wi-Fi,轉(zhuǎn)到您的 localhost:3000 Web 應(yīng)用程序。選擇您的模式:基于邊緣或基于云。
  • (可選)您可以看到您的數(shù)據(jù)通過服務(wù)器和您的 AWS IoT Core
  • (可選)您可以在 localhost:8000 網(wǎng)頁中查看最后一次檢測和最后一小時的數(shù)據(jù)

?


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

評論

查看更多

下載排行

本周

  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評估板參考手冊
  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ū)動電路設(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é)會AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)