當(dāng)前位置:首頁(yè) > 物聯(lián)網(wǎng) > IoT設(shè)計(jì)分享
[導(dǎo)讀]Blynk是一個(gè)物聯(lián)網(wǎng)平臺(tái),允許我們快速構(gòu)建項(xiàng)目來(lái)控制和監(jiān)控使用Android和iOS設(shè)備的數(shù)據(jù)。我們可以創(chuàng)建一個(gè)項(xiàng)目?jī)x表板,并添加控件,如按鈕、顯示器、滑塊等,用于控制微控制器和其他外圍設(shè)備。使用這些小部件,我們可以控制設(shè)備,可以監(jiān)控手機(jī)屏幕上的傳感器數(shù)據(jù)。

你有沒(méi)有想過(guò)遠(yuǎn)程控制你的Arduino板,而不使用任何屏蔽或模塊,如ESP8266和藍(lán)牙?是的,在Blynk應(yīng)用程序及其服務(wù)器的幫助下,這是可能的。

Blynk是一個(gè)非常受歡迎的物聯(lián)網(wǎng)平臺(tái),用于構(gòu)建物聯(lián)網(wǎng)項(xiàng)目,如:

?使用Blynk和ESP8266 (Node MCU)的物聯(lián)網(wǎng)控制LED

?基于物聯(lián)網(wǎng)的溫濕度監(jiān)測(cè),使用BLYNK, ESP8266和DHT11傳感器

?物聯(lián)網(wǎng)家庭自動(dòng)化使用Blynk應(yīng)用程序使用ESP32

?基于物聯(lián)網(wǎng)的家庭自動(dòng)化使用Blynk應(yīng)用程序和樹(shù)莓派

?物聯(lián)網(wǎng)控制LED使用ESP32與Blynk應(yīng)用程序

在這個(gè)項(xiàng)目中,我們將使用Blynk應(yīng)用程序遠(yuǎn)程控制兩個(gè)LED。兩個(gè)LED都將與Arduino連接,一個(gè)LED將被打開(kāi)和關(guān)閉,另一個(gè)LED將使用Blynk應(yīng)用程序控制亮度。

布林克是什么?

Blynk是一個(gè)物聯(lián)網(wǎng)平臺(tái),允許我們快速構(gòu)建項(xiàng)目來(lái)控制和監(jiān)控使用Android和iOS設(shè)備的數(shù)據(jù)。我們可以創(chuàng)建一個(gè)項(xiàng)目?jī)x表板,并添加控件,如按鈕、顯示器、滑塊等,用于控制微控制器和其他外圍設(shè)備。使用這些小部件,我們可以控制設(shè)備,可以監(jiān)控手機(jī)屏幕上的傳感器數(shù)據(jù)。

我們之前已經(jīng)介紹了Blynk應(yīng)用程序與其他基于物聯(lián)網(wǎng)的微控制器,請(qǐng)點(diǎn)擊鏈接找到它們。

Blynk的特點(diǎn):

1. 您可以使用Blynk應(yīng)用程序添加通知服務(wù),而無(wú)需使用任何第三方平臺(tái),如IFTTT。例如,您可以在Twitter上發(fā)布數(shù)據(jù),并在達(dá)到閾值時(shí)收到電子郵件。這可以通過(guò)配置Blynk應(yīng)用程序來(lái)實(shí)現(xiàn)。

2. 在物聯(lián)網(wǎng)項(xiàng)目中,與軟件部分相比,硬件部分更容易。但是使用Blynk,軟件部分也變得比硬件更容易。所需的編碼非常少,所有代碼都包含在其庫(kù)中。Blynk是構(gòu)建簡(jiǎn)單項(xiàng)目的完美工具。

3. 市場(chǎng)上大多數(shù)可用的微控制器都由Blynk支持,這些微控制器可以使用Blynk應(yīng)用程序通過(guò)Wi-fi, BLE, USB, GSM和以太網(wǎng)進(jìn)行控制。

4. 您可以創(chuàng)建自己的本地Blynk服務(wù)器,只需使用幾個(gè)步驟即可在本地控制設(shè)備,并且可以使用Blynk應(yīng)用程序輕松控制。

5. Blynk最有趣的特性之一是虛擬引腳的使用。虛擬引腳是Blynk發(fā)明的一個(gè)概念,用于在硬件和Blynk移動(dòng)應(yīng)用程序之間提供任何數(shù)據(jù)交換。這些引腳不同于數(shù)字和模擬引腳,它們沒(méi)有任何物理屬性。

因此,如果您想要來(lái)自虛擬引腳的任何數(shù)據(jù),Blynk應(yīng)用程序?qū)?shù)據(jù)發(fā)送到定義的虛擬引腳,然后可以在MCU引腳上訪問(wèn)此數(shù)據(jù)。此外,數(shù)據(jù)可以從Blynk應(yīng)用程序發(fā)送到任何虛擬引腳,然后可以很容易地在應(yīng)用程序上訪問(wèn)數(shù)據(jù)。

在這個(gè)項(xiàng)目中,我們還將使用虛擬引腳來(lái)控制Arduino。

所需的材料

?Arduino Uno

?Arduino Uno USB電纜

?兩個(gè)發(fā)光二極管

?跳線

?電路試驗(yàn)板

線路圖

電路圖非常簡(jiǎn)單,只需將一個(gè)LED連接到PWM引腳(5),另一個(gè)LED連接到Arduino Uno的數(shù)字引腳4。

現(xiàn)在,讓我們從安裝Blynk應(yīng)用程序和庫(kù)開(kāi)始。

安裝和配置Blynk應(yīng)用程序來(lái)控制LED

1. 從play store下載Blynk應(yīng)用。Android和iOS用戶(hù)都可以使用。打開(kāi)應(yīng)用程序,通過(guò)輸入你的電子郵件ID和密碼創(chuàng)建一個(gè)帳戶(hù)。

2. 現(xiàn)在,我們將創(chuàng)建一個(gè)新項(xiàng)目。點(diǎn)擊新建項(xiàng)目。

3. 給出一個(gè)項(xiàng)目名稱(chēng),并選擇設(shè)備為Arduino UNO,連接類(lèi)型為USB,因?yàn)槲覀兪褂么型ㄐ排cArduino和Blynk服務(wù)器進(jìn)行通信?,F(xiàn)在,單擊Create,如下所示。

4. 創(chuàng)建項(xiàng)目后,您將在注冊(cè)郵件id上收到一個(gè)認(rèn)證令牌。此令牌將在代碼中使用。在本教程的末尾給出了完整的代碼。

5. 現(xiàn)在將顯示一個(gè)空的儀表板,我們將放置所有所需的小部件,即按鈕,顯示器,滑塊等。點(diǎn)擊+號(hào)。這里顯示了所有可用的小部件。您可以瀏覽所有的小部件,并根據(jù)自己的需求使用它們。

在本教程中,我們將切換一個(gè)LED并控制其他LED的亮度。我們需要一個(gè)按鈕和一個(gè)滑塊來(lái)控制亮度。

選擇按鈕小部件和滑塊類(lèi)型(H或V)通過(guò)點(diǎn)擊它。

6. 現(xiàn)在,設(shè)置這兩個(gè)小部件的屬性。輕按儀表盤(pán)上的按鈕。在D4上選擇輸出和模式切換,然后回到儀表板并點(diǎn)擊滑塊。在虛擬引腳V1上選擇輸出引腳,所有屬性保持不變。

現(xiàn)在我們已經(jīng)準(zhǔn)備好了Blynk應(yīng)用程序。讓我們開(kāi)始編程Arduino板,以便與Blynk應(yīng)用程序一起工作,為此有一個(gè)可用于Arduino的庫(kù)。

在Arduino中安裝Blynk Library

在開(kāi)始為Arduino Uno編寫(xiě)代碼之前,我們將首先在Arduino IDE中安裝Blynk庫(kù):

1. 要安裝庫(kù),請(qǐng)轉(zhuǎn)到Sketch -> Include Libraries -> Manage Libraries。然后搜索Blynk并安裝最新版本,如下所示。

2. 現(xiàn)在,我們將修改一個(gè)示例代碼。因此,打開(kāi)示例->Blynk->Boards_USB_Serial->Arduino_Serial_USB。

讓我們看看給定的代碼并試著理解它。

基于Blynk App的Arduino編程

在本教程的最后給出了完整的代碼和演示視頻。在這里,我們一步一步地解釋了代碼。

1. 首先,在代碼中根據(jù)需要使用#define聲明宏。這里宏BLYNK_PRINT被定義為DebugSerial用于打印。

2. 現(xiàn)在,包括software serial和Blynk函數(shù)的頭文件,并為software serial創(chuàng)建一個(gè)實(shí)例DebugSerial。

3. 將該驗(yàn)證令牌存儲(chǔ)在字符數(shù)組中。

4. 在setup()函數(shù)中初始化波特率為9600的軟件串口、內(nèi)置串口和Blynk。函數(shù)blynk.begin()接受兩個(gè)參數(shù),即Serial和auth token。

5. 在void loop()函數(shù)中,應(yīng)該有非常少的代碼,以便Blynk可以在沒(méi)有任何中斷或數(shù)據(jù)丟失的情況下工作。這是因?yàn)楫?dāng)你把一些東西放入空循環(huán)函數(shù)中,比如從MCU或智能手機(jī)獲取傳感器讀數(shù),它執(zhí)行百萬(wàn)次,這些數(shù)據(jù)上傳到Blynk服務(wù)器上,這意味著B(niǎo)lynk云將被大量消息淹沒(méi),服務(wù)器將認(rèn)為這是垃圾郵件,所以Blynk云將自動(dòng)終止連接。此外,避免在環(huán)路中使用延遲功能,因?yàn)樗耆V沽薓CU的功能,在這種情況下連接也會(huì)關(guān)閉。

從Arduino獲取傳感器數(shù)據(jù)的最佳選擇是使用計(jì)時(shí)器。在setup函數(shù)中初始化計(jì)時(shí)器,并定義一個(gè)函數(shù)來(lái)執(zhí)行任務(wù)。

這將需要一個(gè)最小的函數(shù)——Blynk.run()和timer函數(shù)可以處理獲取數(shù)據(jù)并將其發(fā)送到服務(wù)器的所有任務(wù)。但在本教程中,我們不發(fā)送任何數(shù)據(jù),因此不需要計(jì)時(shí)器。

6. 用于切換LED的代碼內(nèi)置在Blynk.run()函數(shù)中,但我們必須創(chuàng)建一個(gè)用于從智能手機(jī)獲取滑動(dòng)條值的函數(shù)。有兩個(gè)函數(shù)用于發(fā)送和接收數(shù)據(jù),即BLYNK_READ()和BLYNK_WRITE()。這些函數(shù)將虛擬引腳作為讀取和寫(xiě)入數(shù)據(jù)的輸入?yún)?shù)。因此,我們必須使用BLYNK_WRITE函數(shù)從Blynk應(yīng)用程序?qū)懭胩摂M引腳V1上的數(shù)據(jù)。

現(xiàn)在,將從引腳V1傳入的值賦給一個(gè)變量,param.asInt()函數(shù)將接收到的值作為整數(shù)返回。如果接收到的值不是整數(shù),則可以使用float、double或string。

然后使用analogWrite()函數(shù)將此值放入Arduino的PWM引腳中。

就是這樣。我們已經(jīng)完成了編碼部分?,F(xiàn)在,使用USB電纜插入Arduino板,并在設(shè)備管理器中檢查板的COM端口。

互聯(lián)網(wǎng)連接腳本:

在這里,我們沒(méi)有使用Arduino板的任何模塊,但需要一個(gè)工作的互聯(lián)網(wǎng)連接來(lái)發(fā)送和接收云上的數(shù)據(jù),所以有一個(gè)腳本包含在Blynk庫(kù)中,可以訪問(wèn)我們的筆記本電腦/PC互聯(lián)網(wǎng)連接。因此,該腳本通過(guò)串行通信從Arduino板獲取數(shù)據(jù),并使用筆記本電腦的互聯(lián)網(wǎng)連接將數(shù)據(jù)上傳到Blynk云上。我們必須運(yùn)行這個(gè)腳本來(lái)啟動(dòng)操作。

這個(gè)腳本可以在Arduino目錄下的Documents文件夾中找到,轉(zhuǎn)到Libraries -> Blynk -> Scripts。有一個(gè)名為blynk-ser.bat的文件,它是所需的腳本。使用Arduino板的COM端口和Blynk云端口號(hào)編輯此腳本。

使用記事本打開(kāi)腳本并替換以下內(nèi)容。你只需要替換你的COM端口并保存文件,所有其他的東西保持不變。

測(cè)試-使用Blynk應(yīng)用程序遠(yuǎn)程控制Arduino

現(xiàn)在,我們都準(zhǔn)備好了用Blynk應(yīng)用程序控制Arduino GPIO引腳。確保你已經(jīng)連接了兩個(gè)led,并在筆記本電腦和智能手機(jī)上有一個(gè)工作的互聯(lián)網(wǎng)連接。

為了運(yùn)行項(xiàng)目,雙擊腳本,它將開(kāi)始執(zhí)行?,F(xiàn)在,打開(kāi)應(yīng)用程序,點(diǎn)擊右上角的播放按鈕。

然后輕按LED按鈕開(kāi)啟LED,再輕按關(guān)閉LED。

同樣,移動(dòng)滑塊來(lái)改變LED的亮度。

如果你在應(yīng)用程序的棋盤(pán)圖標(biāo)上看到一個(gè)紅點(diǎn),這意味著兩邊都沒(méi)有互聯(lián)網(wǎng)連接,所以檢查一下互聯(lián)網(wǎng)連接,然后再試一次。

這就是如何輕松地使用Blynk應(yīng)用程序遠(yuǎn)程控制Arduino板。

本文編譯自iotdesignpro

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

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

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

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

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

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶(hù)希望企業(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ā)表演講稱(chēng),數(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)稱(chēng)"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

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