精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

電子發(fā)燒友App

硬聲App

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

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

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>使用谷歌云物聯(lián)網(wǎng)和MQTT的環(huán)境站

使用谷歌云物聯(lián)網(wǎng)和MQTT的環(huán)境站

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

資料介紹

描述

這項(xiàng)作業(yè)是為“羅馬第一大學(xué)”的“物聯(lián)網(wǎng)”課程完成的。但是,當(dāng)然,經(jīng)過(guò)多次更新,代碼、使用的技術(shù)以及用戶體驗(yàn)都發(fā)生了很大的變化和增加。這只是您將在我的 Github 上找到的最終項(xiàng)目的第一次嘗試。

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

pYYBAGOYBz6AGxbZAAIfvGG5_aA633.png
?

這里的組件:

注意:我的 G ithub上提供的代碼用于我的個(gè)人 google 帳戶上的憑據(jù)。我沒(méi)有上傳密鑰,如果你想運(yùn)行它,你需要自己設(shè)置。

MQTT 簡(jiǎn)介

MQTT(消息隊(duì)列遙測(cè)傳輸)是一種開(kāi)放的OASISISO 標(biāo)準(zhǔn)(ISO/IEC 20922) 輕量級(jí)的發(fā)布-訂閱網(wǎng)絡(luò)協(xié)議,用于在設(shè)備之間傳輸消息。該協(xié)議通常運(yùn)行在 TCP/IP 之上;但是,任何提供有序、無(wú)損、雙向連接的網(wǎng)絡(luò)協(xié)議都可以支持 MQTT。它專為與需要“小代碼足跡”或網(wǎng)絡(luò)帶寬有限的遠(yuǎn)程位置的連接而設(shè)計(jì)。

pYYBAGOYB0GAdVpoAADVgQZUJhk426.png
?

代理充當(dāng)郵局,MQTT 不使用預(yù)期收件人的地址,而是使用名為“主題”的主題行,任何想要該消息副本的人都將訂閱該主題。多個(gè)客戶端可以從單個(gè)代理接收消息(一對(duì)多功能)。同樣,多個(gè)發(fā)布者可以將主題發(fā)布給單個(gè)訂閱者(多對(duì)一)。

請(qǐng)注意,在這種情況下,我們將使用多個(gè)發(fā)布設(shè)備,但只有一個(gè)訂閱者,或者至少只有一個(gè)保存消息的訂閱者,因?yàn)閿?shù)據(jù)庫(kù)通過(guò) Web 儀表板連接到代理。

云平臺(tái)設(shè)置

任何工程師都知道,谷歌提供的谷歌云平臺(tái)是市場(chǎng)上最強(qiáng)大的云計(jì)算服務(wù)套件之一。在這個(gè)項(xiàng)目中,它被用作基于云的后端來(lái)控制 MQTT,并實(shí)現(xiàn) Publish/Subscribe 消息傳遞模式。

設(shè)置非常簡(jiǎn)單,需要以下步驟:

  • 訪問(wèn)谷歌云平臺(tái),選擇物聯(lián)網(wǎng)核心API;
  • 創(chuàng)建一個(gè)寄存器和 5 個(gè)不同的設(shè)備(帶有相應(yīng)的鍵),每個(gè)傳感器一個(gè):溫度、濕度、風(fēng)向、風(fēng)強(qiáng)、雨高;
pYYBAGOYB1KAZpAfAAHCuuiZQhU072.png
?
  • 使用 Pub/Sub API 向注冊(cè)者添加主題和訂閱;

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

注意:拉取操作將需要身份驗(yàn)證,請(qǐng)確保創(chuàng)建服務(wù)帳戶密鑰,如以下鏈接中所述簡(jiǎn)單說(shuō)明https://cloud.google.com/docs/authentication/getting-started

傳感器

由于代碼主要基于谷歌文檔提供的代碼,我不會(huì)深入解釋,實(shí)際上它只需要快速設(shè)置和功能上的一些更改。publishAsync()

const direction = getRandomArbitrary(0, 360);
var date = parseInt(Date.now());
const payload = "virtual:"+" "+deviceId+" "+direction+" "+date;

console.log('Publishing message:', payload);
client.publish(mqttTopic, payload, {qos: 1});
publishAsync(mqttTopic, client, iatTime, 1, connectionArgs);

我們已將 Pub/Sub API 設(shè)置為每種遙測(cè)僅接受一個(gè)主題,因此我們需要指定從哪個(gè)設(shè)備發(fā)送消息,如代碼所示。因此,發(fā)布的每條消息都由以下部分組成:

  • “虛擬設(shè)備”指示器,為了與下一個(gè)任務(wù)兼容而引入
  • deviceId,它告訴設(shè)備發(fā)送的遙測(cè)類型
  • 遙測(cè)值
  • 日期

假設(shè)我們不想丟失發(fā)送的任何值,我設(shè)置qos: 1, 以允許重傳消息。

最后,要運(yùn)行其中一個(gè)傳感器,您只需更改以下設(shè)置

// SETUP         
const projectId = `your_project_ID`;
const deviceId = `your_device_ID`;
const registryId = `your_register_ID`;
const region = `your_region`;

然后運(yùn)行:

$ node device_name.js

執(zhí)行將導(dǎo)致:

poYBAGOYB1WAG1aAAAHfoSUAFDc813.png
?

這里是谷歌云平臺(tái)的鏈接,指的是如何通過(guò) MQTT 網(wǎng)橋發(fā)布:

網(wǎng)絡(luò)應(yīng)用程序

該代碼基于類似 MVC 的結(jié)構(gòu),并使用了不同的技術(shù)使其看起來(lái)更好,但這些與本項(xiàng)目的主要目標(biāo)無(wú)關(guān),因此我將在結(jié)論中提供一些參考。

poYBAGOYB1qADklNAALcwMniago928.png
?

但是,圖片顯示了管理 MQTT 交互的代碼部分。實(shí)際上,該listenForMessages()功能允許應(yīng)用程序從 Google 云中提取消息,然后在將socket.io發(fā)送到主視圖后保存遙測(cè)數(shù)據(jù)。

同樣在這種情況下,要使用該代碼,您只需要更改訂閱設(shè)置并生成一個(gè)config/keys.js文件來(lái)放置貓鼬的 URI。然后你可以運(yùn)行:

$ node app.js

至于其他部分,這里有一個(gè)指向 Google 文檔相應(yīng)部分的鏈接:

注意:要簡(jiǎn)單地將數(shù)據(jù)存儲(chǔ)在 MongoDB 中,您可以通過(guò)以下鏈接在 mLab 中創(chuàng)建一個(gè)帳戶:https ://mlab.com/

結(jié)論

在主頁(yè)上,應(yīng)用程序?qū)@示當(dāng)前值,并在出現(xiàn)新值時(shí)刷新它們。相反,在其他頁(yè)面上,您可以看到舊值。

?


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

評(píng)論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評(píng)估板參考手冊(cè)
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來(lái)的未來(lái)-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開(kāi)發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報(bào)告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊(cè)
  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開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書(shū))
  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ì)》 溫德?tīng)栔?/a>
  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語(yǔ)言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)