當(dāng)前位置:首頁(yè) > 通信技術(shù) > 充電吧

在物聯(lián)網(wǎng)世界中,各種電子設(shè)備通過(guò)無(wú)線電通信。比如基于802.11 b/g/n的WiFi協(xié)議和BLE(低功耗藍(lán)牙)允許這些電子設(shè)備使用其通信方案共享數(shù)據(jù)。像ESP8266和ESP32這樣的無(wú)線芯片使得廠商和工程師能夠輕松進(jìn)行物聯(lián)網(wǎng)產(chǎn)品開(kāi)發(fā)和試驗(yàn)。在本項(xiàng)目系列中,你將使用無(wú)線平臺(tái)監(jiān)控和控制各種電子電路以及配件,借此你將加深對(duì) IoT 概念的理解。

作為該系列的啟動(dòng)項(xiàng)目,首先你將構(gòu)建一個(gè) IoT 通知設(shè)備,當(dāng)被外部設(shè)備觸發(fā)時(shí),它會(huì)發(fā)送郵件到你的桌面電腦、筆記本電腦或者移動(dòng)設(shè)備(手機(jī)或者平板)。為了構(gòu)建這套系統(tǒng),你需要一個(gè)Arduino Uno開(kāi)發(fā)板、 littleBits cloudBit、物聯(lián)網(wǎng)移動(dòng)設(shè)備應(yīng)用程序以及一些常用的電子元器件。

零件清單

觸覺(jué)按鈕開(kāi)關(guān)

Arduino UNO 開(kāi)發(fā)板

LED 燈

330歐、1/4瓦電阻

1千歐、1/4瓦電阻,

littleBits cloudBit

littleBits proto-modules,2個(gè)

littleBits USB電源(參見(jiàn) littleBits cloudBit 鏈接)

littleBits 安裝板(參見(jiàn) littleBits proto-modules 鏈接)

無(wú)焊面包板

littleBits電源適配器(參見(jiàn) littleBits cloudBit 鏈接)

跳線帽

IFTTT (IF This Then That) Applet


圖1物聯(lián)網(wǎng)通知設(shè)備系統(tǒng)框圖 littleBits cloudBit 模塊介紹

在正式構(gòu)建項(xiàng)目之前,你需要先了解一下 littleBits 這個(gè)很有意思的 WiFi 模塊。cloudBit模塊使得各種電子設(shè)備和器件能夠輕松連接到家庭WiFi網(wǎng)絡(luò)。這個(gè)模塊非常小巧,依靠它 PCB 板上的 IC 技術(shù)可輕松實(shí)現(xiàn)聯(lián)網(wǎng),從而監(jiān)控和控制其他的 littleBits 模塊。

此外,硬件開(kāi)發(fā)套件(HDK)也為 littleBits 以外的模塊提供電路接口。cloudBit模塊的系統(tǒng)架構(gòu)由9個(gè)子電路組成。


圖2 littleBits cloudBit:用于IoT原型開(kāi)發(fā)的WiFi模塊

littleBits 系統(tǒng)架構(gòu)包含如下內(nèi)容:

電源

Setup 按鍵

WiFi無(wú)線網(wǎng)卡(USB HOST)

模擬輸入

模擬輸出

micro SD 卡(用于安裝Linux軟件)

RGB LED

512M DDR

i.MX23 處理器


圖3 9個(gè)子電路構(gòu)成了 cloudBit 系統(tǒng)架構(gòu)


cloudBit 模塊的 WiFi 無(wú)線收發(fā)器封裝在一個(gè) USB 適配器中,生產(chǎn)廠商是 Dynamode,其部件號(hào)為 WL-700N-XS, 它是符合802.11n / g標(biāo)準(zhǔn)的 WiFi 設(shè)備。其工作頻率范圍從2.4到2.4835GHz, 該范圍使得這款模塊能夠運(yùn)用于ISM(工業(yè)、科技和醫(yī)療)領(lǐng)域。此外,這款由 Dynamode 打造的 USB 接口的WiFi適配器僅需5V DC電源即可供電,非常方便,同時(shí)它的功耗極低,只有0.6W。


圖4 cloudBit WiFi 芯片組高度封裝在一個(gè) USB 適配器中

基于 Linux 的 WiFi 軟件存儲(chǔ)在 microSD 卡中,其接口在 cloudBit PCB 板的右下角。RGB LED 燈用來(lái)指示 cloudBit 處于運(yùn)行還是設(shè)置狀態(tài)。cloudBit 的 Setup 按鍵是一個(gè)非常小巧的瞬時(shí)開(kāi)關(guān),cloudBit 通過(guò)它開(kāi)啟對(duì)家庭網(wǎng)絡(luò)的檢測(cè)和連接。cloudBit 模塊中最核心的部件是 NXP 的 i.MX23 處理器。

除了處理外部 IO 信號(hào)以外,i.MX23 處理器的內(nèi)部電路提供無(wú)線(WiFi)控制功能。cloudBit 模塊通過(guò)外擴(kuò)一個(gè)512M DDR SDRAM 芯片,來(lái)幫助 i.MX23處理器更好地處理大量的 WiFi 數(shù)據(jù)。DDR SDRAM 的 WiFi 數(shù)據(jù)傳輸速率需要 16條地址線、15條數(shù)據(jù)線和13條控制線的支持。 cloudBit模塊通過(guò)模擬 IO 口和其他 littleBit 模塊以及開(kāi)發(fā)者自研的電路建立連接,從而實(shí)現(xiàn)信號(hào)傳輸和調(diào)制。


圖5 cloudBit WiFi 模塊的組件


如你所見(jiàn),cloudBit 模塊尺寸小巧,提供的無(wú)線功能卻不失強(qiáng)大。通過(guò)上文你應(yīng)當(dāng)已經(jīng)大致了解了 cloudBit 的架構(gòu),那么接下來(lái)就可以開(kāi)始動(dòng)手構(gòu)建 IoT 硬件了。

構(gòu)建 IoT 通知設(shè)備

我們將使用 Arduino 搭配簡(jiǎn)單的外圍電路來(lái)實(shí)現(xiàn)一個(gè)激活 cloudBit 的觸發(fā)器。對(duì)觸覺(jué)開(kāi)關(guān)進(jìn)行編程,可以使其觸發(fā) cloudBit 發(fā)送郵件、短信或者執(zhí)行其他更加豐富的動(dòng)作。當(dāng) cloudBit 接收到觸發(fā)信號(hào)時(shí),它將通過(guò)你的家庭網(wǎng)絡(luò)執(zhí)行發(fā)送郵件的動(dòng)作。

因此,該項(xiàng)目的第一步就是搭建觸發(fā)電路(很簡(jiǎn)單,你可以使用面包板,如下圖所示)。


圖6 Arduino觸發(fā)電路連線圖。需要注意加入 切換開(kāi)關(guān)

這是 Arduino 觸發(fā)電路的原理圖:


圖7 Arduino 觸發(fā)電路原理圖

Arduino 觸發(fā)電路搭建完畢,就可以添加 cloudBit 模塊了。使用 littleBits 組件提供連接 Arduino 觸發(fā)電路和 cloudBit 模塊的電氣接口。proto-module 是主要使用的組件,它有三個(gè)引腳:接地(gnd)、信號(hào)(sig)和Vcc。


圖8 proto-module 的信號(hào)引腳圖

下圖展示了構(gòu)建 IoT 通知設(shè)備所需的所有連線情況。


圖9 IoT 通知設(shè)備的完整電氣連線圖

基于這個(gè)原型可以搭建出多種連接方式的系統(tǒng)。我通過(guò)給這個(gè)原型附加一個(gè)智能邏輯探針,搭建了下圖所示的系統(tǒng),用于測(cè)試整套 IoT 通知設(shè)備的運(yùn)轉(zhuǎn),其中 cloudBit 由littleBits 電源適配器供電。


圖10 作者搭建的 IoT 通知設(shè)備原型。安裝板用于支持 littleBits 模塊,智能邏輯探針用于原型測(cè)試。

至此,你已經(jīng)完成了 IoT 通知設(shè)備的電路搭建,下一步需要通過(guò)添加 Arduino 代碼以實(shí)現(xiàn)觸發(fā)功能。

添加 Arduino 代碼

在本小節(jié)中,你需要將代碼上傳到 Arudino 以使 IoT 通知設(shè)備能夠運(yùn)轉(zhuǎn)。代碼主要修改了 Arduino IDE 中的“Button” 部分,添加了一個(gè)數(shù)字電平輸出用于觸發(fā) cloudBit。按下按鈕將打開(kāi) LED 并將 D6 引腳設(shè)置為高電平。

修改的代碼片段如下:

// constants won't change. They're used here to // set pin numbers: const int buttonPin = 5; // the number of the pushbutton pin const int ledPin = 13; // the number of the LED pin const int trig_out = 6; // output pin to trigger cloudBit // variables will change: int buttonState = 0; // variable for reading the pushbutton status void setup() { // initialize the LED pin as an output: pinMode(ledPin, OUTPUT); // initialize the pushbutton pin as an input: pinMode(buttonPin, INPUT); // initialize the cloudBit trigger pin as an output: pinMode(trig_out, OUTPUT); } void loop() { // read the state of the pushbutton value: buttonState = digitalRead(buttonPin); // check if the pushbutton is pressed. // if it is, the buttonState is HIGH: if (buttonState == HIGH) { // turn LED on and trigger outpin: digitalWrite(ledPin, HIGH); digitalWrite(trig_out, HIGH); } else { // turn LED off and trigger outpin: digitalWrite(ledPin, LOW); digitalWrite(trig_out,LOW); } }

把代碼上傳到 Arduino 后,你需要把 IFTTT applet 添加到你的 IoT 通知設(shè)備原型中來(lái)。

添加 IFTTT Applet

借助Facebook、Gmail、Instagram和Twitter網(wǎng)絡(luò)服務(wù),搭配必要的物理設(shè)備(如微控制器),可以預(yù)先為 cloudBit 構(gòu)建 IFTTT applets 的觸發(fā)器。IFTTT applets 是免費(fèi)的,它使用條件語(yǔ)句作為目標(biāo)服務(wù)的操作基礎(chǔ)。比如在項(xiàng)目中,當(dāng) Arduino 觸發(fā) cloudBit 時(shí),littleBit applet 得到觸發(fā)的條件語(yǔ)句將執(zhí)行發(fā)送郵件的操作。


圖11 Arduino 觸發(fā) cloudBit 發(fā)送郵件

只有正確地設(shè)置 cloudBit ,它才能被你的家庭無(wú)線網(wǎng)絡(luò)檢測(cè)到。關(guān)于 cloudBit 的設(shè)置方法, littleBits website 提供了詳細(xì)說(shuō)明。此外,你需要在 IFTTT applet service website 創(chuàng)建一個(gè)免費(fèi)的賬戶,以便使用 littleBits 觸發(fā)你的 cloud 模塊發(fā)送電子郵件。在注冊(cè)帳戶時(shí),務(wù)必提供你要用于該項(xiàng)目的郵件地址。注冊(cè)之后,你可以使用設(shè)置功能修改 applet。在本例中,我修改了 applet 中 cloudBit 無(wú)線傳輸事件,我把我的別名 MrD 添加在了郵件正文中。


圖12 通過(guò) cloudBit applet 提供的設(shè)置方法,很方便就把郵件正文中設(shè)備名稱改為”MrD”

applet 配置正確之后,就可以測(cè)試你的 IoT 通知設(shè)備了。

最終測(cè)試

按下面包板上的按鈕將促使你的 IoT 通知設(shè)備向你發(fā)送電子郵件,郵件內(nèi)容將由主題和你在 applet 中設(shè)置的正文組成。


圖13 IoT 通知設(shè)備原型測(cè)試

以下是 cloudBit 發(fā)送到我郵箱的消息內(nèi)容:


圖14 cloudBit 發(fā)送的郵件

至此,你擁有了一個(gè)帶有通知功能的 IoT 設(shè)備?;叵胍幌?,這個(gè)項(xiàng)目通過(guò)使用一個(gè)Arduino、littleBits cloudBit 、其他的littleBits 模塊以及一些現(xiàn)成的電子元器件,實(shí)現(xiàn)了一個(gè) IoT 應(yīng)用。你還可以嘗試設(shè)置 applet 來(lái)顯示新的郵件信息,同時(shí)把新的觀察結(jié)果記錄下來(lái)。在下一個(gè)項(xiàng)目中,你將構(gòu)建一個(gè)能夠控制各種電路和外設(shè)的 WiFi 設(shè)備。同時(shí)介紹 littleBits 云平臺(tái)的使用,它可以幫助你監(jiān)控和控制你的 IoT 原型設(shè)備。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉