Firebase是谷歌的數(shù)據(jù)庫平臺,用于創(chuàng)建、管理和修改從任何android應(yīng)用程序、web服務(wù)、傳感器等生成的數(shù)據(jù)。它基本上是一個移動和web應(yīng)用程序開發(fā)平臺,它有許多服務(wù),如Firebase云消息、Firebase認(rèn)證、實(shí)時數(shù)據(jù)庫等。在實(shí)時數(shù)據(jù)庫中,我們可以在firebase云上看到實(shí)時數(shù)據(jù),并且可以使用Internet從任何地方控制任何外圍設(shè)備。
ESP系列WiFi模塊在基于物聯(lián)網(wǎng)項目的愛好者和行業(yè)中非常受歡迎。ESP8266無線收發(fā)器是基于物聯(lián)網(wǎng)的應(yīng)用中最常用的模塊之一。在這里,我們使用ESP8266 NodeMCU與ThingSpeak物聯(lián)網(wǎng)云平臺連接。NodeMCU有內(nèi)置的Wi-Fi屏蔽,所以我們不需要像使用Arduino那樣連接外部Wi-Fi屏蔽。以前,我們使用ESP32 web服務(wù)器來使用網(wǎng)頁控制LED。
ESP32是流行的ESP8266 Wi-Fi模塊的繼承者,具有許多先進(jìn)的功能,例如內(nèi)置Wi-Fi的雙核32位CPU和具有足夠數(shù)量的30個I/O引腳的雙模藍(lán)牙。它能夠在工業(yè)環(huán)境中可靠地工作,工作溫度范圍為-40°C至+125°C。它有各種各樣的外設(shè),如電容觸摸,adc, dac, UART, SPI, I2C等。除此之外,它還有一個內(nèi)置霍爾效應(yīng)傳感器和一個內(nèi)置溫度傳感器。
在本教程中,我們將在樹莓派中安裝Apache web服務(wù)器,以從可以通過互聯(lián)網(wǎng)從任何地方訪問的網(wǎng)頁控制LED。這是一個具有最低功能的基本教程,可以進(jìn)一步修改以在基于物聯(lián)網(wǎng)的家庭自動化,遠(yuǎn)程控制自動化,機(jī)器人等中使用此方法。
樹莓派是一種小型口袋大小的計算機(jī),具有板載GPIO引腳,用于連接其他外圍設(shè)備和傳感器。它內(nèi)置Wi-Fi連接網(wǎng)絡(luò),無需使用任何外部組件即可將傳感器數(shù)據(jù)直接上傳到任何物聯(lián)網(wǎng)云平臺。我們之前使用樹莓派連接各種云平臺:
粒子云是最受歡迎和制造商友好的物聯(lián)網(wǎng)平臺。它處理創(chuàng)建物聯(lián)網(wǎng)產(chǎn)品的許多復(fù)雜選項。在粒子云,你可以控制你的設(shè)備使用Android或IOS應(yīng)用程序和使用粒子云控制臺。
If This Then That,也被稱為IFTTT,是一個免費(fèi)的基于網(wǎng)絡(luò)的服務(wù),用于創(chuàng)建簡單條件語句鏈,稱為applet。IFTTT提供了一個平臺,可以連接來自不同開發(fā)者的應(yīng)用、設(shè)備和服務(wù),從而觸發(fā)涉及這些應(yīng)用、設(shè)備和服務(wù)的一些操作。所以在這個項目中,我們將把Particle Cloud與IFTTT集成在一起,這樣IFTTT就可以從Particle中讀取溫度數(shù)據(jù),并觸發(fā)警告消息給用戶。為了觸發(fā)消息,我們將為一個特定變量創(chuàng)建一個IFTTT applet。以前,我們使用粒子應(yīng)用程序,粒子云控制臺和粒子使用樹莓派控制LED。
Telegram是一款基于云的即時通訊應(yīng)用。Telegram幾乎與Whatsapp類似,可以在安卓、IOS、Windows、Mac和linux等所有設(shè)備上使用。用戶可以發(fā)送貼紙、消息、圖片、音頻文件和視頻。因此,Telegram有一個API機(jī)器人,允許人類與機(jī)器交談。電報機(jī)器人就像一個機(jī)器人,它被編程成一套指令和答案,與用戶互動。
之前我們用不同的語言如Python和Embedded c來控制樹莓派。在本教程中,我們使用Node.js來控制樹莓派的LED。Node.js是一個非常流行的基于javascript的環(huán)境,最初是為谷歌Chrome瀏覽器開發(fā)的,但現(xiàn)在它是開源的。這種語言可以運(yùn)行在各種平臺上,如Windows、Linux、Unix、Mac OS X等。
物聯(lián)網(wǎng)平臺正在填補(bǔ)傳感器和數(shù)據(jù)網(wǎng)絡(luò)之間的空白。有許多物聯(lián)網(wǎng)平臺可供選擇,如IFTTT, ThingSpeak, Particle, Firebase和ThingsBoard,提供安裝物聯(lián)網(wǎng)應(yīng)用程序的選項。在這里,我們使用ThingsBoard來控制使用樹莓派的LED。
Blynk是一個物聯(lián)網(wǎng)平臺,具有可定制的移動應(yīng)用程序、私有云、規(guī)則引擎和設(shè)備管理分析儀表板,專為易于定制的物聯(lián)網(wǎng)應(yīng)用而設(shè)計。在Blynk App上為物聯(lián)網(wǎng)項目設(shè)計儀表板非常簡單,你只需要在屏幕上組織按鈕、滑塊、圖表和其他小部件。我們還可以根據(jù)需求編輯小部件。
物聯(lián)網(wǎng)現(xiàn)在已經(jīng)成為快速發(fā)展的趨勢,通過提供對各種電子設(shè)備的遠(yuǎn)程訪問,使我們的生活更輕松。在本系列的動手物聯(lián)網(wǎng)教程中,我們將介紹可用于創(chuàng)建物聯(lián)網(wǎng)應(yīng)用程序的最流行的硬件和軟件平臺。在我們之前的教程中,我們學(xué)會了使用Blynk應(yīng)用程序控制LED,現(xiàn)在我們將學(xué)習(xí)如何使用Cayenne應(yīng)用程序或控制臺控制LED。Cayenne是一個流行的物聯(lián)網(wǎng)平臺,可以輕松構(gòu)建自己的物聯(lián)網(wǎng)設(shè)置。作為拖放式物聯(lián)網(wǎng)項目構(gòu)建器,Cayenne允許開發(fā)人員在互聯(lián)網(wǎng)上快速創(chuàng)建和托管他們的連接設(shè)備,而無需在編程方面花費(fèi)大量時間。最初它只適用于樹莓派,但現(xiàn)在它支持Arduino和其他控制器。
因為發(fā)光二極管(LED)放置在要顯示的數(shù)字形狀部位,所以具有良好的可視性。也被稱為“LED數(shù)字顯示器”。
led幾乎用于所有的裝飾照明,但它們大多數(shù)只產(chǎn)生一種顏色。因此,為了創(chuàng)造一個美麗的光模式,使用多色LED條,這不僅消耗更多的電力,而且難以管理。今天我們使用的是新一代LED- NeoPixel,它可以產(chǎn)生1680萬種顏色。NeoPixels是可編程的,通過正確的編程,它可以創(chuàng)建許多美麗的照明模式。這里將使用NodeMCU和Blynk應(yīng)用程序通過互聯(lián)網(wǎng)控制NeoPixel LED條的顏色和亮度。Blynk是一個智能手機(jī)應(yīng)用程序,使用它我們可以通過智能手機(jī)控制任何基于物聯(lián)網(wǎng)的應(yīng)用程序。
您可能見過許多傳統(tǒng)的數(shù)字公告板,其中必須通過使用鍵盤或其他工具手動更改消息來更新顯示的信息。但是這些布告欄可以很容易地轉(zhuǎn)換成無線布告欄,其中一種方法就是使用藍(lán)牙。通過集成藍(lán)牙,LED面板上的信息可以通過我們的智能手機(jī)無線更新。這里HC05藍(lán)牙模塊連接到Arduino Uno,它接收來自智能手機(jī)應(yīng)用程序的數(shù)據(jù)。然后Arduino對數(shù)據(jù)進(jìn)行處理,并將信息顯示在LED板上。
NeoPixel LED燈條是可編程的RGB LED燈條,可以編程生成任何所需的照明模式。NeoPixel可以在任何組合和亮度下產(chǎn)生多種顏色。它消耗更少的電力,可以通過編程單獨(dú)解決。在本項目中,我們將學(xué)習(xí)使用ESP32和Blynk應(yīng)用程序控制WS2812 NeoPixel LED條。
LED驅(qū)動IC是一種集成電路,它通過控制電流來驅(qū)動LED燈,這種IC具有許多優(yōu)點(diǎn),包括低功耗、高亮度、長壽命、環(huán)保等,隨著LED驅(qū)動IC技術(shù)的進(jìn)步,LED照明設(shè)備的成本也在不斷降低,使得更多的應(yīng)用場景得以實(shí)現(xiàn)。
隨著谷歌助理、亞馬遜Alexa和蘋果Siri等虛擬助手的發(fā)展,家庭自動化和語音控制應(yīng)用變得相當(dāng)流行。我們以前建立了許多家庭自動化項目,從簡單的Alexa控制的家庭自動化到語音控制的家庭自動化使用樹莓派。在這個項目中,我們將使用谷歌助手和Blynk應(yīng)用程序來控制Neopixel LED條。Blynk應(yīng)用程序是一個免費(fèi)的物聯(lián)網(wǎng)平臺,鏈接到IFTTT(如果這樣,那么那個)網(wǎng)站,該網(wǎng)站用于創(chuàng)建if-else條件語句,或者換句話說,applet。谷歌助手的語音命令已經(jīng)通過IFTTT小程序添加。通過谷歌助手給出的命令被解碼,然后使用IFTTT Webhooks發(fā)送到Blynk。然后微控制器訪問Blynk應(yīng)用程序中的數(shù)據(jù)。這里使用的微控制器是ESP-01,因為它體積小,具有Wi-Fi功能。
在本教程中,我們將構(gòu)建一個Android應(yīng)用程序,我們將能夠使用藍(lán)牙用我們自己的Android應(yīng)用程序控制Arduino的板上LED。但本教程是我們的Android Studio for Internet of Things系列的延續(xù),在那里我們制作了我們的第一個Android應(yīng)用程序,有一個燈泡和一個按鈕的圖像。在這個教程中,你需要有一些耐心,請按照這個教程一步一步,因為我有很多錯誤,而第一次實(shí)現(xiàn)它。
大家好,在本教程中,我們將在樹莓派Pico上執(zhí)行一個簡單的LED閃爍程序。樹莓派Pico基于RP4060微控制器芯片,這是樹莓派基金會有史以來第一個微控制器家族類。如果您正在尋找具有高性能功能的低成本開發(fā)板,那么Pico板是最佳選擇。由于它支持C/ c++開發(fā)和Micropython環(huán)境的基本調(diào)試工具和庫,因此我們可以用各種方法對該P(yáng)ico板進(jìn)行編程。在這里,我將討論如何使用Micropython框架對Pico板進(jìn)行編程。由于這將是編程樹莓派Pico的第一步,讓我討論一下Pico板的基本功能。