資料介紹
描述
概述
監(jiān)測家中的溫度和濕度是有幫助的,它使居民能夠調(diào)節(jié)供暖,以創(chuàng)造一個完美的加熱氣氛。很高興看到一個屏幕通知您當(dāng)前的溫度和濕度,但是如果您可以在 Google 電子表格上實(shí)時可視化它會怎樣,這樣您就可以通過在任何設(shè)備上單擊一兩次來隨時檢查您家的狀態(tài)。
該項(xiàng)目旨在讓任何人和每個人都可以輕松訪問所有這些內(nèi)容。利用 Temboo 的 Google 表格編排,您可以輕松地對您的 Arduino Yun 進(jìn)行編程,以將包含您家的溫度和濕度的值附加到 Google 表格中。
功能性
TemperatureVisualiser 將從 DHT11 溫度和濕度傳感器讀取讀數(shù)并將數(shù)據(jù)發(fā)送到 Temboo。然后 Temboo 會將數(shù)據(jù)重定向到 Google API,然后是 Google Sheets,在電子表格上顯示信息。這是說明該過程的圖像。
這是項(xiàng)目代碼概述的圖解圖像。
- 讀取溫度和濕度將從傳感器讀取溫度和濕度,然后存儲數(shù)據(jù)。
- 過程數(shù)據(jù)將處理溫度和濕度值,并將它們與發(fā)送所需的子格式一起輸入緩沖區(qū)。
- Parse Data to Temboo 會將緩沖區(qū)作為 choreo 發(fā)送到 Temboo。
- 微控制器將在重復(fù)操作之前等待一段時間
Temboo 和 Google 要求以 json 格式與值一起發(fā)送數(shù)組數(shù)組。格式化的緩沖區(qū)將如下所示。
[ [ temp, hum, ] ]
Temp 是從 DHT11 傳感器接收到的溫度讀數(shù)。Hum 是從 DHT11 傳感器接收到的濕度讀數(shù)。
好處
運(yùn)營該項(xiàng)目的用戶將受益于:
- 隨時隨地輕松訪問數(shù)據(jù)
- 易于使用 - 只為 Arduino Yun 供電
- 使用 Google 表格輕松實(shí)現(xiàn)可視化
建設(shè)項(xiàng)目
第 1 步:所需設(shè)備
該項(xiàng)目包含的硬件很少,因此很容易構(gòu)建。對于這個項(xiàng)目,您將需要:
- 跳線
- 1阿杜諾云
第 2 步:連接電路
只有 3 個組件 = 易于組裝。以下是該項(xiàng)目的示意圖:我要用 5v 為我的 DHT11 傳感器供電,因此請確保您的傳感器支持 5v,如果不支持,請使用 3.3v。
第 3 步:確認(rèn)代碼
代碼分為三個部分:
- 讀取傳感器
- 創(chuàng)建緩沖區(qū)
- 解析緩沖區(qū)
這些項(xiàng)目由兩個草圖組成,主代碼和一個包含所有用戶在 Google 和 Temboo 上的帳戶數(shù)據(jù)的頭文件。這里仔細(xì)看一下代碼的各個部分,頭文件將在下面的“設(shè)置變量”中設(shè)置。
- 讀取傳感器值
overview = DHT.read11(11); // Read the sensor output
temp = DHT.temperature,1; // store temperature
hum = DHT.humidity,1; // store humidity
這部分代碼使用庫從 DHT11 傳感器讀取數(shù)據(jù)。當(dāng)讀取結(jié)果時,它們存儲在溫度和濕度的單獨(dú)變量中(temp
和hum
)。
- 追加到緩沖區(qū)
sprintf(values,"[[%02d,%02d,]]",temp,hum); // insert temp and hum in the json packet required
這是將傳感器值附加到緩沖區(qū)的代碼行,sprintf 會將字符添加到緩沖區(qū)。[[%02d,%02d,]]
是 Google 要求能夠讀取值的布局。
- 將緩沖區(qū)解析為 Temboo
TembooChoreo AppendValuesChoreo; // initialise which choreo to begin
AppendValuesChoreo.begin(); // begin the choreo
// Set Temboo account credentials - Set in Acounts.h
AppendValuesChoreo.setAccountName(TEMBOO_ACCOUNT);
AppendValuesChoreo.setAppKeyName(TEMBOO_APP_KEY_NAME);
AppendValuesChoreo.setAppKey(TEMBOO_APP_KEY);
// Set Choreo inputs - Set in Accounts.h
AppendValuesChoreo.addInput("RefreshToken", GOOGLE_CLIENT_REFRESH_TOKEN);
AppendValuesChoreo.addInput("ClientSecret", GOOGLE_CLIENT_SECRET);
AppendValuesChoreo.addInput("Values", values);
AppendValuesChoreo.addInput("ClientID", GOOGLE_CLIENT_ID);
AppendValuesChoreo.addInput("SpreadsheetID", GOOGLE_SPREADSHEET_ID);
AppendValuesChoreo.setChoreo("/Library/Google/Sheets/AppendValues");
// identify choreo to run
AppendValuesChoreo.run(); // run the choreo
這部分代碼初始化 Temboo,開始編排,設(shè)置 Temboo 帳戶憑據(jù)和 Google 帳戶憑據(jù)并運(yùn)行編排。所有帳戶的憑據(jù)都可以在 Accounts.h 文件中設(shè)置。
設(shè)置變量
所有變量都在項(xiàng)目主草圖附帶的 Accounts.h 頭文件中設(shè)置,您所要做的就是在頭文件中定義變量以使 choreo 運(yùn)行。輸入將在下面的“后端程序”中解釋,我們將為項(xiàng)目設(shè)置 Temboo 和 Google API。
圖書館
Temboo - 版權(quán)所有 (c) 2017 Temboo Inc. 在 Apache 2.0 許可證下。查看此許可證
DHT - 作者 Rob Tillaart 這個庫在公共領(lǐng)域
Bridge - Arduino LLC 這個庫在公共領(lǐng)域
設(shè)置
對于這個項(xiàng)目,您需要一個已經(jīng)設(shè)置和初始化的 Arduino Yun。查看有關(guān)開始使用 Yun 的指南。這是一個鏈接,其中包含有關(guān)您的 Arduino Yun 上的Temboo和Running Choreos 的信息。準(zhǔn)備好后,將您的 Yun 連接到 PC/Mac 并運(yùn)行下面的草圖。
后端程序
要運(yùn)行這個項(xiàng)目,我們需要配置兩個平臺:Temboo 和 Google API。我們將一步一步地做到這一點(diǎn)。如果設(shè)置不適合您,請?jiān)僭囈淮危ㄎ一艘欢螘r間才成功)。
- 第 1 步:創(chuàng)建您的 Temboo 帳戶
第一步是創(chuàng)建一個 Temboo 帳戶,為此請?jiān)L問此頁面。在頁面中間的框中,寫下用戶名。單擊“試用”并按照休閑頁面上的說明設(shè)置您的帳戶。Temboo 在基本計(jì)劃中可免費(fèi)使用,每月可為您提供 250 次舞蹈。
- 第 2 步:創(chuàng)建和設(shè)置您的 Google 帳戶
要創(chuàng)建 Google 帳戶,請?jiān)L問此頁面。設(shè)置帳戶后。轉(zhuǎn)到Google 帳戶。如果需要,請登錄,現(xiàn)在您的窗口應(yīng)如下所示。
現(xiàn)在,導(dǎo)航到登錄和安全標(biāo)題并選擇登錄您的 Google 帳戶。現(xiàn)在確保在您的帳戶中啟用“兩步驗(yàn)證”。完成后,您的頁面應(yīng)如下所示。
- 第 3 步:設(shè)置 Google API
這是最重要和最令人困惑的一步,慢慢來!訪問谷歌控制臺。該頁面可能會要求您登錄,請這樣做。您將看到一個空白頁面,如果您沒有創(chuàng)建項(xiàng)目,請單擊“創(chuàng)建項(xiàng)目”按鈕。現(xiàn)在放松為創(chuàng)建項(xiàng)目而實(shí)施的步驟。等待項(xiàng)目加載后,您應(yīng)該會看到這樣的窗口。
現(xiàn)在我們要做的第一件事是單擊左側(cè)滑動條上的“憑據(jù)”。這應(yīng)該將您帶到這樣的窗口。
現(xiàn)在單擊“創(chuàng)建憑據(jù)”并從下拉菜單中選擇 OAuth 客戶端 ID。現(xiàn)在將詢問您要創(chuàng)建哪種類型的應(yīng)用程序。選擇“網(wǎng)絡(luò)應(yīng)用程序”。現(xiàn)在給你的應(yīng)用起個名字,我叫它 Temboo。在下面,您應(yīng)該會看到一個標(biāo)語“授權(quán)重定向 URI”,其中寫道:
https://ACCOUNT_NAME.temboolive.com/callback/google
輸入您的 Temboo 帳戶名稱而不是 ACCOUNT_NAME,完成后,您的 URL 應(yīng)包含您的用戶名,例如https://myaccount.temboolive.com/callback/google
現(xiàn)在你的窗口應(yīng)該是這樣的,不要填寫“Authorized JavaScript origins”。
現(xiàn)在單擊“創(chuàng)建”。當(dāng)您這樣做時,您將被重定向到您的儀表板,并會出現(xiàn)一個窗口,為您提供您的客戶端 ID 和客戶端密碼。確保保留這些代碼,因?yàn)樗鼈冊诮酉聛淼牟襟E中是必要的。現(xiàn)在再次單擊“儀表板”,然后單擊頁面頂部的啟用 API。現(xiàn)在你的窗口應(yīng)該是這樣的。
在搜索字段中搜索“Google 表格”。現(xiàn)在點(diǎn)擊 Google Sheets API。單擊它后,您的窗口應(yīng)如下所示。
單擊“啟用”按鈕。現(xiàn)在您將被重定向到您的儀表板。
- 第 4 步:初始化 OAuth
現(xiàn)在轉(zhuǎn)到 Temboo 并登錄,您的頁面應(yīng)如下所示。
現(xiàn)在在左側(cè)的菜單上,向下滾動直到看到“Google”,然后單擊它旁邊的箭頭。完成后,您將打開一個下拉菜單,打開 OAuth,然后單擊 InitialiseAuth。你的窗口應(yīng)該是這樣的。
現(xiàn)在將您的 Google ClientID 放在“ClientID”字段中,然后向下滾動,直到看到標(biāo)有“notes”的部分,您可以在那里找到項(xiàng)目所需的范圍。我們將使用谷歌電子表格,所以復(fù)制盒子的所有內(nèi)容,應(yīng)該是:
https://spreadsheets.google.com/feeds/
https://docs.google.com/feeds/
https://docs.googleusercontent.com/
現(xiàn)在將它們粘貼到頂部的范圍框中。你的窗口應(yīng)該是這樣的。
現(xiàn)在單擊“立即運(yùn)行”以運(yùn)行您的代碼。代碼運(yùn)行完畢后,您將收到兩個字段,一個 URL 和一個 callbackID,請確保您還保存了您的 callbackID 以供進(jìn)一步使用。現(xiàn)在訪問上面框中顯示的 URL。您應(yīng)該收到來自 Google 的請求,要求您登錄,這樣做。現(xiàn)在谷歌可能會通知您該網(wǎng)站不安全,如果是,請點(diǎn)擊頁面底部的“高級”,然后點(diǎn)擊下方的“打開 temboolive.com”。現(xiàn)在您將收到另一個通知,告訴您該應(yīng)用程序想要訪問文檔和文件,單擊“允許”。現(xiàn)在您應(yīng)該會看到一個空白頁,如果看到,請繼續(xù)進(jìn)行下一部分設(shè)置,如果您沒有看到空白頁,請從頭開始此步驟。
- 第 5 步:完成 OAuth
要完成您的 OAuth,請?jiān)L問 Temboo。在左側(cè)菜單中選擇 Google - OAuth - Finalize OAuth。你的窗口應(yīng)該是這樣的。
使用之前收集的數(shù)據(jù)填寫字段,然后單擊“立即運(yùn)行”,如果代碼有效,您應(yīng)該會收到一個訪問令牌和一個 RefreshToken,確保將它們都保存起來,因?yàn)橄乱徊綄⑿枰鼈儭?/font>干得好,困難的部分結(jié)束了。如果成功,您可以繼續(xù)下一步,如果不成功,請從頭再試此步驟,確保 Google 上“授權(quán)重定向 URL”字段中的 URL 輸入正確,并且您的 clientID 和客戶端秘密是正確的。
- 第 6 步:運(yùn)行探針
為了檢查您的配置是否正確,我們將嘗試測試草圖。訪問 Temboo 并轉(zhuǎn)到 Google - Sheets - AppendValues,您的頁面應(yīng)該如下所示。
現(xiàn)在填寫之前設(shè)置中收到的 ClientID、Client Secret 和 Refresh Token。接下來,轉(zhuǎn)到Google 文檔。創(chuàng)建一個新文檔,在你這樣做之后,給它一個名字。電子表格 ID 位于電子表格的 URL 中。例如。如果電子表格的 URL 是
https://docs.google.com/spreadsheets/d/1wn9R5vPJLIulgxKjDflqnN6X84Xe7zu6925mRQO-tVo/edit#gid=0
然后 ID 是 1wn9R5vPJLIulgxKjDflqnN6X84Xe7zu6925mRQO-tVo,現(xiàn)在復(fù)制您的電子表格 ID 并將其粘貼到 Temboo 的電子表格 ID 框中。最后,復(fù)制此數(shù)組并將其放在“值”字段中。
[ [ "100", "200", "300" ] ]
有關(guān)如何格式化值的更多數(shù)據(jù),請向下滾動到頁面上的注釋。你的窗口應(yīng)該是這樣的。
現(xiàn)在向下滾動,直到您看到一個標(biāo)有“代碼”的框,復(fù)制該框的所有內(nèi)容并將其粘貼到 Arduino IDE 中。在該框下方是另一個標(biāo)有“頭文件”的框,復(fù)制該框的內(nèi)容,然后在 Arduino IDE 中,創(chuàng)建一個新選項(xiàng)卡并將其命名為“TembooAccount.h”并將內(nèi)容粘貼到新選項(xiàng)卡中,編譯代碼。
通過 USB 類型 A 到 C 電纜將您的 Arduino Yun 連接到您的 PC/Mac,并等待您的 Yun 連接到 wifi,這由標(biāo)有 WLAN 的藍(lán)色 LED 快速閃爍指示。當(dāng)您的 Yun 連接到 wifi 時,上傳代碼并打開串行監(jiān)視器。如果該項(xiàng)目成功,您應(yīng)該在 Temboo 的監(jiān)視器中得到響應(yīng)。現(xiàn)在返回 Google 文檔,然后單擊您之前創(chuàng)建的電子表格。 您應(yīng)該在單獨(dú)的單元格中看到打印的三個值。100 200 300
如果這行得通,那么您離成功僅一步之遙。
- 第 7 步:最后一步
現(xiàn)在打開下面的代碼,確保根據(jù)您的喜好編輯 Header 文件,包括之前收到的值。編排運(yùn)行之間的默認(rèn)延遲是一分鐘,您可以根據(jù)需要更改它。我建議在第一次嘗試時打開 proDebug(將其設(shè)置為 1)并打開串行監(jiān)視器以接收進(jìn)度數(shù)據(jù)和調(diào)試信息。在不連接計(jì)算機(jī)的情況下使用此項(xiàng)目需要將 proDebug 設(shè)置為 0(其初始值)。就是這樣,只需將草圖上傳到 Yun 就可以了。任何地方的溫度和濕度。
最后
由于該項(xiàng)目幾乎沒有硬件,我決定不建造一個外殼,但如果你愿意,可以隨意制作一個。這是成品。
背景
我創(chuàng)建了這個項(xiàng)目作為一個教程,以使 IOT 更容易理解,就個人而言,我花了一些時間來解決它,所以我想為你節(jié)省一些時間。我認(rèn)為在電子表格上檢查溫度和濕度非常好,也很容易,所有數(shù)據(jù)都在一起并且易于訪問。
- Pimoroni Enviro pHAT到Google表格記錄器
- 將傳感器數(shù)據(jù)從Helium設(shè)備路由到Google表格
- 使用Google Assistant監(jiān)控室溫
- 使用Google Assistant的燈光監(jiān)控系統(tǒng)
- 直接在Google表格中的血壓監(jiān)測儀
- 電源測試溫度記錄表下載 10次下載
- 使用DS18B20溫度傳感器設(shè)計(jì)的實(shí)時溫度監(jiān)控系統(tǒng)軟件免費(fèi)下載 17次下載
- 如何設(shè)計(jì)研究無線溫度傳感器的網(wǎng)絡(luò)監(jiān)控系統(tǒng) 19次下載
- python教程之如何使用XlsxWriter模塊創(chuàng)建aexcel表格 10次下載
- 基于usb的溫度監(jiān)控的測試 6次下載
- 溫度監(jiān)控系統(tǒng)的設(shè)計(jì)資料 10次下載
- LabVIEW中表格控件使用 0次下載
- 基于ARM的大棚溫度監(jiān)控系統(tǒng)設(shè)計(jì) 466次下載
- 溫度濕度監(jiān)控系統(tǒng)的設(shè)計(jì)
- 分布式電纜溫度監(jiān)控系統(tǒng) 74次下載
- 如何在鴻蒙系統(tǒng)上安裝Google Play 1.2w次閱讀
- 如何在word表格前添加空行 1480次閱讀
- 驅(qū)動電機(jī)溫度傳感器的原理與檢測 5602次閱讀
- 如何提取Word文檔表格保存到Excel 2477次閱讀
- Python的PDF表格提取器-Camelot 1961次閱讀
- 如何利用溫度傳感器實(shí)現(xiàn)植物監(jiān)控系統(tǒng)的設(shè)計(jì) 1663次閱讀
- 圖像傳感器為視頻監(jiān)控帶來了新趨勢 8.3w次閱讀
- 溫度傳感器TMP275的原理、工作方式及在環(huán)境監(jiān)控中的應(yīng)用分析 6077次閱讀
- 經(jīng)常使用的中小功率三極管的參數(shù)詳細(xì)表格說明 5282次閱讀
- TableBank:高質(zhì)量的標(biāo)注表格數(shù)據(jù)集 5560次閱讀
- 基于表格的自然語言理解與生成方向的一系列工作 3143次閱讀
- google glass為何停產(chǎn)_google眼鏡為什么失敗 2.2w次閱讀
- 基于TMP275的電機(jī)溫度監(jiān)控系統(tǒng)研究 1627次閱讀
- 變壓器溫度智能監(jiān)控儀電路模塊設(shè)計(jì) 5325次閱讀
- ADuC7061和外部RTD構(gòu)建的基于USB的溫度監(jiān)控器 2922次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
- 1.06 MB | 532次下載 | 免費(fèi)
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費(fèi)
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費(fèi)
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費(fèi)
- 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費(fèi)
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費(fèi)
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費(fèi)
- 8FP5207XR-G1中文應(yīng)用手冊
- 1.09 MB | 178次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21549次下載 | 免費(fèi)
- 5電氣工程師手冊免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動電路設(shè)計(jì)》 溫德爾著
- 0.00 MB | 6656次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191187次下載 | 免費(fèi)
- 7十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183279次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評論
查看更多