電子發(fā)燒友App

硬聲App

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

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

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>通過Telstra窄帶網(wǎng)絡(luò)的Arduino MKR NB 1500

通過Telstra窄帶網(wǎng)絡(luò)的Arduino MKR NB 1500

2023-02-03 | zip | 0.16 MB | 次下載 | 免費(fèi)

資料介紹

描述

最初發(fā)表于DIYODE 雜志第 40 期,2020 年 11 月。

介紹

有時(shí)您可能需要一個(gè)項(xiàng)目來監(jiān)控遠(yuǎn)程位置的真實(shí)情況并將該數(shù)據(jù)無線傳輸給最終用戶。例如,它可能是一系列遠(yuǎn)程泵站,它們是您的財(cái)產(chǎn)或運(yùn)營(yíng)的關(guān)鍵基礎(chǔ)設(shè)施。您可能需要監(jiān)測(cè)空氣質(zhì)量以了解坑內(nèi)氣體的積聚,監(jiān)測(cè)流速以衡量泵的性能,也許還需要監(jiān)測(cè)備用電池的電壓。它也可以是您財(cái)產(chǎn)周圍大門的遠(yuǎn)程氣象站或門禁系統(tǒng)。

對(duì)于您自己或員工來說,經(jīng)常出差到每個(gè)站點(diǎn)來監(jiān)控系統(tǒng)是不切實(shí)際的。因此,自動(dòng)化是您最好的解決方案。

好消息是您可以通過多種方式做到這一點(diǎn)。例如,回到第 21 期,我們創(chuàng)建了一個(gè)基于 LoRa/Arduino物聯(lián)網(wǎng)設(shè)備,在我們的測(cè)試中,它能夠在近 7.5 公里的距離內(nèi)將數(shù)據(jù)從發(fā)送器單元傳輸?shù)?a target='_blank' class='arckwlink_none'>接收器。當(dāng)時(shí)我們對(duì)這個(gè)項(xiàng)目的影響力印象深刻,但事后看來,考慮到澳大利亞的國(guó)土面積為 769.2 萬平方公里,7 公里是微不足道的。除了距離問題,還有其他問題會(huì)使 LoRa 在這種情況下不受歡迎。

LoRa 是一個(gè)共享網(wǎng)絡(luò),在 915MHz - 928MHz 之間的共享工業(yè)、科學(xué)和醫(yī)學(xué) (ISM) UHF 無線電頻段上運(yùn)行。這個(gè)波段不需要澳大利亞政府的許可就可以繼續(xù)傳輸,這意味著任何人都可以自由使用這個(gè)波段,因此,這個(gè)小波段可能會(huì)變得擁擠。

解釋這種擁堵的最好方法是將 ISM 頻段想象成酒館或酒吧內(nèi)的空間,而您和您的朋友是這個(gè)酒吧的客戶,所有人都以與 IoT 節(jié)點(diǎn)幾乎相同的方式進(jìn)行通信。隨著越來越多的人(客戶)進(jìn)入場(chǎng)地,背景噪音越來越大,因?yàn)槠渌蛻粼噲D在場(chǎng)地有限的空間內(nèi)進(jìn)行交流。這使您別無選擇,只能重復(fù)相同的消息。

如果你不這樣做,你的交流就會(huì)被其他交流的積累淹沒。如果您的項(xiàng)目是一個(gè)簡(jiǎn)單的氣象站,LoRa 可以作為一些丟失的通信在這里和那里的影響最小。但是,如果像我們假設(shè)的情況那樣,使用關(guān)鍵任務(wù)設(shè)備(例如我們的遠(yuǎn)程泵站),失去通信可能是災(zāi)難性的。

另一方面,基于蜂窩的物聯(lián)網(wǎng)使用網(wǎng)絡(luò)提供商嚴(yán)格控制的專用頻譜。只有經(jīng)過批準(zhǔn)的客戶才能在該空間進(jìn)行交流,實(shí)質(zhì)上是為您和您的朋友預(yù)留 VIP 休息室。

那么,如果您需要與距離比 LoRa 節(jié)點(diǎn)允許的距離更遠(yuǎn)的設(shè)備進(jìn)行通信,或者如果您有關(guān)鍵任務(wù)需求,您有什么選擇?好吧,感謝Arduino 和 Telstra 之間的合作,我們得到了答案。

diyode_mkrnb1500_npPM5HGBB8.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

Arduino MKR NB 1500 板的頂視圖和底視圖

Arduino 開發(fā)了 Arduino MKR NB 1500,這是一款基于物聯(lián)網(wǎng)的 32 位 Arm Cortex M0+ 微控制器開發(fā)板,帶有 u-blox SARA-R4 多頻段長(zhǎng)期演進(jìn) 4G (LTE-M) / NB-IoT 窄帶模塊。開發(fā)板擁有 256KB 的閃存和 32KB 的靜態(tài) RAM,這應(yīng)該給你相當(dāng)多的編程空間。

diyode_mkrnb1500_specs_4CiHeB5FGG.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

Arduino MKR NB 1500 板令人印象深刻的規(guī)格

總共有 15 個(gè)數(shù)字 I/O 引腳 D0 – D14,其中 11 個(gè)具有 PWM 功能。在模擬端,我們有 7 個(gè)模擬 I/O 引腳,它們都可以用作數(shù)字引腳,2 個(gè)可以用作 PWM。結(jié)合起來,這使得 MKR 1500 成為功能豐富的開發(fā)板,具有足夠的內(nèi)存和 I/O,甚至可以用于一些具有挑戰(zhàn)性的項(xiàng)目。

當(dāng)然,在這種情況下,一切都與從項(xiàng)目傳輸和接收信號(hào)的能力有關(guān),為此,我們擁有 Telstra 機(jī)器對(duì)機(jī)器 (M2M) LTE-M 網(wǎng)絡(luò)。

從覆蓋圖中可以看出,該網(wǎng)絡(luò)覆蓋了澳大利亞300萬平方公里的區(qū)域,為人口最稠密的地區(qū)提供服務(wù)。因此,只要您的設(shè)備在覆蓋地圖的范圍內(nèi),您就可以開始了。

Telstra 在澳大利亞的交互式窄帶覆蓋地圖

但是擁塞怎么辦?好吧,這也包括在內(nèi)。與具有共享頻譜的 LoRa 不同,Telstra 網(wǎng)絡(luò)是一個(gè)專用頻譜網(wǎng)絡(luò),同時(shí)只有有限的用戶在該頻譜上。同樣,基地塔使用稱為調(diào)度程序的軟件作為中介工作,確保設(shè)備不會(huì)試圖在彼此之上交談/通信。

這可以防止通信丟失,也意味著您可以使用較低的傳輸功率。這非常適用于可能需要電池供電的遠(yuǎn)程設(shè)備,因?yàn)殡姵睾拖嚓P(guān)支持硬件(如太陽能電池板)的尺寸減小了。

除了這些好處之外,您還可以在 Telstra LTE-M 網(wǎng)絡(luò)上獲得多方面的身份驗(yàn)證安全性。直到最近,安全性在物聯(lián)網(wǎng)世界中通常都是事后才想到的??偟膩碚f,這可能是簡(jiǎn)單化思維的結(jié)果。

我們大多數(shù)人會(huì)認(rèn)為我們支持物聯(lián)網(wǎng)的咖啡機(jī)相當(dāng)安全。畢竟,從表面上看,如果有人要控制,最糟糕的事情就是毀了你早上的咖啡。但是,請(qǐng)務(wù)必記住,您的網(wǎng)絡(luò)安全取決于最薄弱的環(huán)節(jié)。

如果您的咖啡機(jī)連接到您的無線局域網(wǎng) (WLAN),技術(shù)嫻熟的壞人可能會(huì)通過您的咖啡機(jī)訪問您網(wǎng)絡(luò)上的其他設(shè)備。以 2017 年遭到黑客攻擊的北美賭場(chǎng)為例。黑客通過物聯(lián)網(wǎng)魚缸監(jiān)視器獲得了對(duì)系統(tǒng)的訪問權(quán)限。雖然這顯然是一個(gè)極端案例,但它證明了不良行為者是如何進(jìn)行越來越多的創(chuàng)造性攻擊的。

因此,安全現(xiàn)在越來越成為物聯(lián)網(wǎng)的焦點(diǎn),尤其是在物聯(lián)網(wǎng)設(shè)備可用于企業(yè)間諜活動(dòng)的企業(yè)界。這使得未直接連接到您的 WiFi 網(wǎng)絡(luò)的基于單元的物聯(lián)網(wǎng)設(shè)備更具吸引力。在 LTE-M 網(wǎng)絡(luò)中,使用通用集成電路卡 (UICC) 驗(yàn)證通信,我們通常將其稱為用戶識(shí)別模塊或 SIM 卡。

此卡是驗(yàn)證網(wǎng)絡(luò)訪問權(quán)限的第一步。這種相互身份驗(yàn)證不僅確保設(shè)備是它聲稱的身份,而且網(wǎng)絡(luò)/服務(wù)器也是它聲稱的身份。

為了將這兩種技術(shù)結(jié)合在一起,Arduino 開發(fā)了物聯(lián)網(wǎng)云。這使您不僅可以使用 1500 NB 和 Telstra 網(wǎng)絡(luò)非常輕松地創(chuàng)建物聯(lián)網(wǎng)應(yīng)用程序,還可以在世界任何地方的任何計(jì)算機(jī)或移動(dòng)設(shè)備上訪問和顯示數(shù)據(jù)。這使您不僅可以隨時(shí)檢查項(xiàng)目的傳感器數(shù)據(jù),還可以對(duì)其做出響應(yīng)。

diyode_mkrnb1500_io_hnunsHR35Y.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

例如,讓我們繼續(xù)假設(shè)的泵站。該泵站存在一個(gè)問題,即需要遠(yuǎn)程控制泵的流量。有了這個(gè)系統(tǒng),您不僅可以實(shí)時(shí)可靠地監(jiān)控真實(shí)世界的傳感器數(shù)據(jù),還可以根據(jù)需求實(shí)時(shí)做出反應(yīng),甚至可以根據(jù)不可預(yù)見的情況做出反應(yīng)。

流量套餐

感謝 Arduino 和 Telstra 之間的合作,您可以從 Telstra 以 119 美元的價(jià)格購(gòu)買帶有 SIM 卡的 Arduino MKR NB 1500 板,其中包括前 6 個(gè)月每月 10MB 的免費(fèi)數(shù)據(jù)!我們進(jìn)行了計(jì)算,對(duì)于許多物聯(lián)網(wǎng)項(xiàng)目來說,這是大量數(shù)據(jù)。

您需要的數(shù)據(jù)量將完全取決于您正在創(chuàng)建的項(xiàng)目類型。如果您需要實(shí)時(shí)到第二個(gè)傳感器數(shù)據(jù),那么與只需要每 10 秒左右更新一次相比,您將需要更多數(shù)據(jù)。

例如,Arduino MKR NB 1500 上的整數(shù)是 32 位值。因此,如果您要在一個(gè)月內(nèi)每秒發(fā)送一個(gè) 32 位整數(shù),您將使用每月 10MB 計(jì)劃中的大部分。這是計(jì)算出來的,因?yàn)橐粋€(gè)月有 2、592、000 秒,因此僅此值就需要 8.3 MB 的數(shù)據(jù)。

注意:這不考慮發(fā)送的實(shí)際數(shù)據(jù)包幀之上的任何開銷。

但是,如果您每 10 秒發(fā)送一次相同的整數(shù),您將使用 1MB 多一點(diǎn)的數(shù)據(jù),如果將其減少到 30 秒,數(shù)據(jù)使用將減少到 0.0108MB。好消息是這一切都可以在 Arduino IoT Cloud 軟件中輕松控制。

在 6 個(gè)月的免費(fèi)數(shù)據(jù)之后,您將需要注冊(cè) M2M 數(shù)據(jù)計(jì)劃。根據(jù)您將使用的數(shù)據(jù),有許多計(jì)劃可供選擇。每月 100KB 數(shù)據(jù)的起價(jià)為 2.40 美元。您可以在這里查看不同的計(jì)劃:https ://diyode.io/040dataplans

動(dòng)手原型:

diyode_mkrnb1500_prototype_ve6oBa3Vjm.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

使用三個(gè)氣體傳感器動(dòng)手構(gòu)建原型

所需零件:

1 x Arduino MKR NB 1500 帶 Telstra M2M LTE-M Sim 和帳戶

1 x MQ4 甲烷傳感器(核心電子:SEN0129 )

1 x MQ6 LPG 傳感器(核心電子:SEN0131 )

1 x MQ7 一氧化碳傳感器(核心電子:SEN0132 )

* 還需要面包板和原型制作硬件。

原型:

與我們的許多其他評(píng)論一樣,我們喜歡親身體驗(yàn)我們?cè)u(píng)論的內(nèi)容,所以讓我們使用 Telstra 窄帶網(wǎng)絡(luò)對(duì) MKR NB 1500 板進(jìn)行測(cè)試。

我們檢查這個(gè)硬件的主要目標(biāo)是讓它在一個(gè)實(shí)際的,盡管是假設(shè)的,真實(shí)世界的應(yīng)用程序中工作。因此,我們對(duì)硬件的第一個(gè)修補(bǔ)將是創(chuàng)建一個(gè)簡(jiǎn)單的遠(yuǎn)程空氣質(zhì)量項(xiàng)目,該項(xiàng)目可用于密閉空間,以確保在派遣人員進(jìn)入該空間之前該空間可以安全進(jìn)入。

注意:我們使用的傳感器不是為在一個(gè)人的生命依賴于它們的情況下使用而設(shè)計(jì)的,它們也不夠準(zhǔn)確。這只是一個(gè)示例情況,人們可以針對(duì)該示例情況實(shí)施該技術(shù)。我們不建議您將此項(xiàng)目用于現(xiàn)實(shí)世界的密閉空間監(jiān)控。

我們首先看一下該技術(shù)將是一個(gè)簡(jiǎn)單的單邊通信示例,其中單元只是發(fā)送傳感器數(shù)據(jù)。在不久的將來,我們打算創(chuàng)建一個(gè)更大的雙向通信項(xiàng)目,我們不僅可以接收傳感器數(shù)據(jù),還可以遠(yuǎn)程控制設(shè)備。

如果您想自己復(fù)制此項(xiàng)目,我們提供了零件清單、Fritzing 圖、代碼和構(gòu)建說明。

diyode_mkrnb1500_fritzing_7dOVo7Ef00.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

Fritzing 使用 Arduino MKR NB 1500 板和三個(gè)氣體傳感器

傳感器

在這個(gè)項(xiàng)目中,我們使用了零件倉(cāng)庫(kù)中已有的傳感器??赡軣o法從您當(dāng)?shù)氐?a target='_blank' class='arckwlink_none'>電子產(chǎn)品零售商處獲得相同的部件,但是,我們列出了DFRobot制造的類似傳感器。這些可在Core Electronics獲得,并使用與我們使用的傳感器相同的傳感器技術(shù),但是,占地面積不同。

3 針傳感器引出線

diyode_mkrnb1500_3-pin_sensor_l2l0s0mhKX.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

4 針傳感器引出線

diyode_mkrnb1500_4-pin_sensor_lnLDSlXZRs.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

Arduino MKR NB 1500 上的 GPIO 引腳不支持 5V。因此,我們需要確保來自傳感器的輸入不超過 3.3V。在最大濃度下,傳感器能夠在模擬輸出上輸出 4V,這可能會(huì)損壞 Arduino MKR NB 1500。因此,我們將實(shí)施分壓器以將電壓降至 3.3V 最大值以下。對(duì)于我們的演示,我們將簡(jiǎn)單地使用 R1 和 R2 均設(shè)置為 10KΩ 的分壓器,這將使輸出降低一半。這意味著 Arduino 是安全的,但會(huì)降低傳感器讀數(shù)的準(zhǔn)確性。

如果我們將其開發(fā)為一個(gè)合適的項(xiàng)目,我們將實(shí)施一種更精確的方法來限制電壓,而不會(huì)影響傳感器的精度。但是,作為演示,它工作正常。

無論您使用哪種傳感器,都需要連接傳感器,使傳感器的模擬輸出引腳連接到 10KΩ - 10KΩ 分壓器,分壓器的連接點(diǎn)連接到 Arduino MKR NB 1500 的模擬引腳。同樣,每個(gè)傳感器需要 5V 和接地。這三個(gè)都必須與 Arduino MKR NB 1500 共享共同點(diǎn)。

對(duì)于我們的項(xiàng)目,我們通過 USB 端口為 Arduino MKR NB 1500 供電,并通過單獨(dú)的 5V 電源為傳感器供電。我們這樣做是因?yàn)槿齻€(gè)傳感器加在一起可能需要高達(dá) 350mA 的電流,而我們不希望我們的 PC 在編程期間提供那么大的電流。完成 Arduino 編程后,您可以使用 Vin 引腳從同一 5V 電源直接為 Arduino 和傳感器供電。

Arduino 創(chuàng)建物聯(lián)網(wǎng)

創(chuàng)建電路后,我們將注意力轉(zhuǎn)向?qū)υO(shè)備進(jìn)行編程。這完全是通過 Arduino Create IoT 云完成的,您可以在這里找到它:https ://create.arduino.cc/iot/

使用 Arduino Create IoT Cloud 構(gòu)建項(xiàng)目非常簡(jiǎn)單。本質(zhì)上,這是一個(gè) 4 步過程:

創(chuàng)建設(shè)備

創(chuàng)建一個(gè)東西

創(chuàng)建草圖

創(chuàng)建儀表板

完成這些簡(jiǎn)單的步驟后,您將在 Telstra M2M 蜂窩網(wǎng)絡(luò)上擁有一個(gè)正常運(yùn)行的物聯(lián)網(wǎng)設(shè)備,只要設(shè)備位于覆蓋區(qū)域內(nèi),它就可以將傳感器數(shù)據(jù)發(fā)送到地球上的任何位置??紤]到讓程序運(yùn)行所需的時(shí)間非常少,這是一個(gè)令人印象深刻的壯舉。

我們將更詳細(xì)地描述這些步驟。

創(chuàng)建設(shè)備

對(duì)于大多數(shù)制造商而言,創(chuàng)建/設(shè)置設(shè)備將很簡(jiǎn)單。然而,在我們的案例中,我們遇到了與 Portenta H7 開發(fā)板審查相同的問題。該系列微控制器沒有專用的 USB 轉(zhuǎn)串口轉(zhuǎn)換器芯片。相反,他們使用微控制器本身來處理 USB 通信,這對(duì)絕大多數(shù)制造商來說非常好,但在我們的 Windows 臺(tái)式電腦上,我們必須手動(dòng)強(qiáng)制微控制器進(jìn)入引導(dǎo)加載程序模式。我們通過在一秒鐘內(nèi)按兩次重置按鈕來完成此操作,然后選擇出現(xiàn)的新 com 端口。不過,我們必須多次重復(fù)此過程才能獲得成功的時(shí)機(jī)。最后,我們發(fā)現(xiàn)更換到?jīng)]有同樣問題的 Windows 筆記本電腦更容易。因此,

首先,將您的網(wǎng)絡(luò)瀏覽器指向 Arduino Create IoT 網(wǎng)站:https ://create.arduino.cc/iot/

如果尚未這樣做,您將需要?jiǎng)?chuàng)建一個(gè)帳戶或登錄。

從頂部菜單中選擇設(shè)備。

diyode_mkrnb1500_iot_cloud_step1_hTXdPs3h25.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

選擇添加設(shè)備按鈕。

diyode_mkrnb1500_iot_cloud_step2_pAFooBU0M7.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

選擇“設(shè)置 Arduino 設(shè)備”按鈕。

diyode_mkrnb1500_iot_cloud_step3_G2veHFkJcB.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

幾秒鐘后,系統(tǒng)可能會(huì)要求您安裝 Arduino Create Agent 插件。安裝這個(gè),最終,您會(huì)看到一個(gè)屏幕,表明該軟件已找到兼容的 Arduino 設(shè)備已連接。

如果這是您的設(shè)備,請(qǐng)選擇配置按鈕。

diyode_mkrnb1500_iot_cloud_step4_bzwFtQJ7RC.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

這樣做之后,您將獲得一個(gè)隨機(jī)生成的名稱。我們建議您將此名稱更改為可以識(shí)別其用途的名稱。對(duì)于我們的示例,我們將其稱為 DIYODE_MKR_1500。

diyode_mkrnb1500_iot_cloud_step5_v6lvqx3k7e.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

輸入適當(dāng)?shù)拿Q后,選擇下一步按鈕。Create 軟件現(xiàn)在將創(chuàng)建您設(shè)備的一個(gè)實(shí)例。在此過程中,軟件似乎將草圖上傳到開發(fā)板并進(jìn)行了一系列檢查和測(cè)試。

注意:在我們的測(cè)試中,這是我們發(fā)現(xiàn)一些問題的地方,似乎源于前面提到的 USB / Bootloader 問題。如果您在此處收到錯(cuò)誤消息,請(qǐng)嘗試使用不同的計(jì)算機(jī)或?qū)⒃O(shè)備置于引導(dǎo)加載程序模式,然后再添加上面的名稱。

diyode_mkrnb1500_iot_cloud_step6_Luurlp7TLV.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

如果一切順利,您應(yīng)該會(huì)看到這里顯示的窗口。

diyode_mkrnb1500_iot_cloud_step7_y64f90RZFL.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

如果它不起作用,您可能會(huì)看到一條令人擔(dān)憂的消息,如此處所示。如果是這樣,請(qǐng)不要絕望。我們有同樣的錯(cuò)誤,我們的硬件沒有任何問題。我們只是簡(jiǎn)單地重復(fù)了這個(gè)過程,它運(yùn)行良好。

diyode_mkrnb1500_iot_cloud_step8_DE9wf5KYRB.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

創(chuàng)建一個(gè)東西

正確設(shè)置設(shè)備后,您現(xiàn)在可以設(shè)置整個(gè)項(xiàng)目,Arduino Create 稱之為“事物”。在我們的例子中,我們的“東西”將是一個(gè)氣體傳感器,因此,我們的東西將被命名為 DYODE_Gas_Sensor。

只需為您的東西命名,然后將其鏈接到在上一步中創(chuàng)建和命名的設(shè)備。

diyode_mkrnb1500_iot_cloud_step9_4NyvJBeMw1.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

從這里,選擇添加屬性按??鈕,這將允許您添加屬性實(shí)例,例如您的傳感器。這樣做會(huì)自動(dòng)生成代碼來處理來自該屬性的預(yù)期數(shù)據(jù)的傳輸。

diyode_mkrnb1500_iot_cloud_step10_jFtjl5TV9D.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

這將帶您進(jìn)入以下屏幕,您可以在其中為要添加的屬性從所有功能中進(jìn)行選擇。

對(duì)我們來說,該屬性將是一個(gè)傳感器,因此我們將以傳感器命名它,以明確我們指的是什么傳感器。

變量名稱是我們需要在代碼中引用的名稱。此名稱應(yīng)與所使用的傳感器相關(guān),這將使編碼過程更容易。

我們的傳感器是模擬傳感器,因此,假設(shè)是 10 位 ADC,我們預(yù)計(jì)它會(huì)返回一個(gè)介于最小值 0 和最大值 1024 之間的正數(shù)。因此,我們可以將類型定義為 int,表示整數(shù),并相應(yīng)地設(shè)置最小值和最大值。

為了獲得許可,我們將它們?cè)O(shè)置為只讀,這是有道理的,因?yàn)槲覀冎恍枰獜乃鼈兘邮漳M信號(hào)。

更新設(shè)置為定期,周期為 30 秒。正如我們之前所說,您發(fā)送的數(shù)據(jù)量將決定您將在計(jì)劃中使用的數(shù)據(jù)量。如果您不需要最多第二個(gè)數(shù)據(jù),您可以通過增加周期來節(jié)省成本。

我們還選擇了 Show history visualization,它似乎將歷史數(shù)據(jù)存儲(chǔ)在 Arduino Cloud 中,允許我們?cè)趧?chuàng)建儀表板后稍后查看。

我們的財(cái)產(chǎn)屏幕看起來像這里顯示的那個(gè)。

diyode_mkrnb1500_iot_cloud_step11_5S9juLVrS8.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

重復(fù)該過程,直到添加完所有傳感器。

diyode_mkrnb1500_iot_cloud_step12_8tmxubeBcB.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

接下來,選擇右上角的編輯草圖按鈕開始編碼部分。

要向您的項(xiàng)目添加五個(gè)以上的屬性,您需要擁有一個(gè)帳戶和一個(gè)付費(fèi)的 Arduino 創(chuàng)客計(jì)劃,這將提供此處列出的好處。Maker 計(jì)劃可直接從 Arduino 數(shù)字商店購(gòu)買,每月費(fèi)用為 6.99 美元。https://store.arduino.cc/digital/create

diyode_mkrnb1500_iot_cloud_step13_N1qNSTwXGf.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

創(chuàng)建草圖

下一步對(duì)于之前使用過Arduino的人來說應(yīng)該是比較熟悉的一步,也就是編碼。這里令人印象深刻的是自動(dòng)化。Arduino 會(huì)根據(jù)您在添加屬性時(shí)的選擇來處理所有通信方面的事情。不需要“大腦”工作。

我們需要做的就是創(chuàng)建一個(gè)簡(jiǎn)單的草圖,將所需的傳感器值放入一個(gè)變量中,與我們之前創(chuàng)建的一個(gè)或多個(gè)變量名稱相匹配。Arduino 軟件負(fù)責(zé)傳輸和計(jì)時(shí),我們無需費(fèi)力。

這使我們的編碼任務(wù)非常簡(jiǎn)單。

對(duì)于我們來說,我們只需使用AnalogRead()函數(shù)來讀取傳感器所連接的模擬引腳,并將該值放入相應(yīng)的變量中。我們不需要轉(zhuǎn)換任何東西,因?yàn)槲覀兛梢韵襁@里顯示的那樣傳輸原始數(shù)據(jù)。

?

#include?"thingProperties.h"
int?readSensor;
void?setup()?{
??//?Initialize?serial?and?wait?for?port?to?open:
??Serial.begin(9600);
??//?This?delay?gives?the?chance?to?wait?for?a?Serial?Monitor?without?blocking?if?none?is?found
??delay(1500);?
??Serial.println("Hello?world");
??//?Defined?in?thingProperties.h
??initProperties();
??//?Connect?to?Arduino?IoT?Cloud
??ArduinoCloud.begin(ArduinoIoTPreferredConnection);
??setDebugMessageLevel(2);
??ArduinoCloud.printDebugInfo();
}
void?loop()?{
??ArduinoCloud.update();
??//?Your?code?here?
??sensor1?=?analogRead(1);
??carbonMonoxide?=?analogRead(2);
??methaneSensor?=?analogRead(3);
??Serial.println(sensor1);
??Serial.println(carbonMonoxide);
??Serial.println(methaneSensor);
??delay(1000);
?}

?

diyode_mkrnb1500_iot_cloud_step14_54nOJ3qvab.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

如果你想處理你的數(shù)據(jù)而不是簡(jiǎn)單地發(fā)送原始數(shù)據(jù),那也很簡(jiǎn)單。您需要做的就是對(duì)傳感器值執(zhí)行數(shù)學(xué)運(yùn)算,完成后,將結(jié)果放入在添加屬性部分創(chuàng)建的相應(yīng)變量名中。為了幫助您,Arduino 在生成代碼的注釋中包含了這些變量名稱。

diyode_mkrnb1500_iot_cloud_step15_YqsdlINpNq.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

一旦您對(duì)代碼感到滿意,就可以將其上傳到開發(fā)板。將電路板插入計(jì)算機(jī)上的 USB 并直接從該 Web 界面上傳。

在此之后,您的最后一步是創(chuàng)建一個(gè)儀表板,以便您可以查看設(shè)備中的數(shù)據(jù)。

創(chuàng)建儀表板

從 Arduino Create IoT 主頁選擇儀表板按鈕。

diyode_mkrnb1500_iot_cloud_step16_htURqotGyx.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

選擇添加,您將看到一個(gè)圖形元素列表。這些可用于提供 I/O 或以其他方式顯示來自或去往 IoT 設(shè)備的數(shù)據(jù)。

對(duì)于我們的項(xiàng)目,我們滾動(dòng)到列表的最底部并選擇了圖表選項(xiàng)。這將使我們能夠以易于理解和即時(shí)衡量的方式輕松繪制和顯示原始傳感器數(shù)據(jù)。

diyode_mkrnb1500_iot_cloud_step17_snmxRgYrYG.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

當(dāng)然,如果您想在這里進(jìn)行試驗(yàn),您一定會(huì)發(fā)現(xiàn)許多有趣的方式來交互和顯示來自您設(shè)備的數(shù)據(jù)。快速瀏覽一下肯定給我們一些靈感,讓我們對(duì)這個(gè)令人興奮的硬件的未來用例有所了解。

diyode_mkrnb1500_iot_cloud_step18_zlR1Jyx2w9.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

選擇顯示數(shù)據(jù)的方式后(在我們的例子中使用圖形元素),您可以將元素放置在 GUI 儀表板工作平面上。然后您需要將元素鏈接到特定屬性。對(duì)我們來說,我們將這張圖與一氧化碳傳感器聯(lián)系起來。

diyode_mkrnb1500_iot_cloud_step19_VoyXq72lz5.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

重復(fù)相同的過程以添加其他元素并將它們鏈接到所需的屬性。

diyode_mkrnb1500_iot_cloud_step20_Nz4t2YlMxS.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

遠(yuǎn)程訪問項(xiàng)目

Arduino 創(chuàng)建了一個(gè)名為 Arduino IoT Cloud Remote 的移動(dòng)應(yīng)用程序,它允許您訪問完全相同的儀表板,盡管經(jīng)過修改以適合手機(jī)屏幕。

ANDRIOD:https ://play.google.com/store/apps/details?id=cc.arduino.cloudiot

蘋果:https ://apps.apple.com/us/app/id1514358431

diyode_mkrnb1500_iot_cloud_step21_yf0QAsGBt2.jpeg?auto=compress%2Cformat&w=740&h=555&fit=max

我們的最終想法

基于我們動(dòng)手測(cè)試的成功,我們對(duì) Arduino 硬件和 Telstra 網(wǎng)絡(luò)提供的性能和易用性印象深刻。

因此,我們很高興看到社區(qū)在何處以及如何使用該系統(tǒng)實(shí)施項(xiàng)目。

我們可以看到大量的利基應(yīng)用,從用于定位和禁用被盜車輛的汽車設(shè)備到偏遠(yuǎn)農(nóng)田、礦區(qū)等的水資源管理項(xiàng)目。

這種組合確實(shí)為愛好者們帶來了不可思議的力量,這在幾年前還顯得不可思議。

?

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

評(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元宇宙深度解析—未來的未來-風(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)用手冊(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開關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊(cè)免費(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ū)動(dòng)電路設(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é)會(huì)AVR單片機(jī)與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)