www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當(dāng)前位置:首頁(yè) > 物聯(lián)網(wǎng) > IoT設(shè)計(jì)分享
[導(dǎo)讀]車庫(kù)門太重,打開和關(guān)閉要費(fèi)很大的力氣。在這個(gè)萬物互聯(lián)的物聯(lián)網(wǎng)時(shí)代,我們也應(yīng)該改進(jìn)它。想象一下,只需點(diǎn)擊智能手機(jī)就可以輕松打開車庫(kù)門,這正是我們要在這個(gè)智能車庫(kù)門物聯(lián)網(wǎng)項(xiàng)目中構(gòu)建的,我們將使用ESP32開發(fā)板和Arduino IDE來構(gòu)建這個(gè)項(xiàng)目。以前我們也建立了一個(gè)類似的Wi-Fi車庫(kù)門開啟器項(xiàng)目,使用直流電機(jī),你也可以檢查一下,如果你感興趣。

車庫(kù)門太重,打開和關(guān)閉要費(fèi)很大的力氣。在這個(gè)萬物互聯(lián)的物聯(lián)網(wǎng)時(shí)代,我們也應(yīng)該改進(jìn)它。想象一下,只需點(diǎn)擊智能手機(jī)就可以輕松打開車庫(kù)門,這正是我們要在這個(gè)智能車庫(kù)門物聯(lián)網(wǎng)項(xiàng)目中構(gòu)建的,我們將使用ESP32開發(fā)板和Arduino IDE來構(gòu)建這個(gè)項(xiàng)目。以前我們也建立了一個(gè)類似的Wi-Fi車庫(kù)門開啟器項(xiàng)目,使用直流電機(jī),你也可以檢查一下,如果你感興趣。

構(gòu)建物聯(lián)網(wǎng)車庫(kù)開門器所需的組件

?NodeMCU ESP32

?2個(gè)伺服電機(jī)(SG90)

?電力供應(yīng)

?電路試驗(yàn)板

?跳線

我們使用NodeMCU ESP32板作為這個(gè)項(xiàng)目的微控制器。它是一個(gè)非常強(qiáng)大的、支持wifi的、非常低成本的微控制器。它是物聯(lián)網(wǎng)項(xiàng)目的完美板。我們有2臺(tái)伺服電機(jī)(SG90)用于物聯(lián)網(wǎng)車庫(kù)門的升降機(jī)構(gòu)。它是一種小型的低成本伺服電機(jī),可以在4.8到6V的工作電壓下從0到180度旋轉(zhuǎn)。這9克電機(jī)提供高達(dá)1.8公斤-厘米的扭矩在6V。我們需要一個(gè)5V電源為整個(gè)裝置供電。你可以使用5V適配器或充電寶。對(duì)于所有的連接,我們需要一個(gè)面包板和一些跳線。最后,我們還需要做一個(gè)車庫(kù),為此我們使用了紙板和海圖紙。

物聯(lián)網(wǎng)車庫(kù)門電路圖

由于我們沒有使用任何物聯(lián)網(wǎng)車庫(kù)門傳感器,所以這個(gè)項(xiàng)目的電路非常簡(jiǎn)單。我們只需要兩個(gè)伺服電機(jī)連接到ESP32開發(fā)板,如下面的連接圖所示。此外,如果您是第一次使用ESP32板,您應(yīng)該查看我們的ESP32物聯(lián)網(wǎng)項(xiàng)目以探索更多內(nèi)容,并了解可以使用該板構(gòu)建的其他有趣項(xiàng)目。

這是一個(gè)非常簡(jiǎn)單的小電路,只有很少的元件。我們需要將兩個(gè)伺服電機(jī)的VCC引腳連接到VIN引腳,將兩個(gè)伺服電機(jī)的GND引腳連接到NodeMCU ESP32的GND引腳,然后將兩個(gè)伺服電機(jī)的PWM引腳分別連接到D13和D12。下面的表格將幫助你輕松地建立聯(lián)系。

注意:本系統(tǒng)的供電電壓不要超過6V,否則會(huì)損壞伺服電機(jī)。

我們只用了一個(gè)面包板和一些連接線來構(gòu)建電路,車庫(kù)門模型的構(gòu)建是用簡(jiǎn)單的紙箱和海圖紙來完成的。在下圖中,您可以看到ESP32開發(fā)板連接到車庫(kù)內(nèi)的伺服電機(jī)。

如果您想使連接更安全,您還可以將ESP32板焊接在零PCB上,并使用男性bergstick引腳連接兩個(gè)伺服電機(jī)。此外,我們已經(jīng)使用ESP32板上的USB端口為整個(gè)項(xiàng)目供電,如果你想讓你的項(xiàng)目遠(yuǎn)程,你也可以考慮使用9V電池或鋰電池。一旦連接準(zhǔn)備好,我們就可以開始編程ESP32板,以使用物聯(lián)網(wǎng)構(gòu)建我們的智能門車庫(kù)。

如何為基于物聯(lián)網(wǎng)的智能車庫(kù)門編程

為我們的基于物聯(lián)網(wǎng)的智能車庫(kù)門編程,我們必須專注于兩件事,一是控制ESP32的伺服器,另一個(gè)是建立一個(gè)智能車庫(kù)門網(wǎng)絡(luò)服務(wù)器,可用于使用手機(jī)打開或關(guān)閉我們的智能門。完整的代碼可以在頁(yè)面底部找到,相同的解釋如下。

這些行包括Arduino草圖所需的庫(kù)。ESP32Servo.h用于使用NodeMCU ESP32微控制器控制伺服電機(jī),wifi .h是啟用設(shè)備中wifi功能的庫(kù)。

這里我們?yōu)樗欧刂谱隽艘恍┳兞?,為wifi憑證做了一些常量。確保將WiFi名稱和密碼更改為您的。聲明用于存儲(chǔ)HTTP請(qǐng)求的服務(wù)器端口和變量。

在設(shè)置部分,我們已經(jīng)為伺服電機(jī)分配了引腳,并開始建立WiFi連接。它將在串行監(jiān)視器上打印Wi-Fi連接狀態(tài)和本地IP地址。注意某個(gè)地方的IP地址,它是網(wǎng)頁(yè)的地址。

在開始循環(huán)時(shí),我們的設(shè)備始終處于來自物聯(lián)網(wǎng)web服務(wù)器的命令接收模式,并檢查是否有任何傳入數(shù)據(jù),如果是,則開始從本地IP地址獲取數(shù)據(jù)并將其存儲(chǔ)在變量中。此外,它還用于控制伺服運(yùn)動(dòng)。

在接收到命令之后,我們必須處理一件事,我們有兩個(gè)伺服電機(jī),它們必須以不同的角度同時(shí)旋轉(zhuǎn),因?yàn)樗鼈兌荚谙喾吹姆较蛏稀7駝t,整個(gè)系統(tǒng)就會(huì)崩潰。為了解決這個(gè)問題,我們必須做一個(gè)while循環(huán),這樣兩個(gè)電機(jī)每次都移動(dòng)1度,一個(gè)接一個(gè)地移動(dòng)到期望的位置。

這個(gè)循環(huán)的下一部分完全致力于基于HTML的web界面。我們已經(jīng)設(shè)計(jì)了按鈕和名稱,您可以根據(jù)您的選擇更改它們。它將在網(wǎng)頁(yè)上創(chuàng)建一個(gè)交互界面,這樣我們就不需要每次輸入和關(guān)閉,我們將有一個(gè)按鈕。

智能車庫(kù)門物聯(lián)網(wǎng)項(xiàng)目使用ESP32 -工作

建好電子部件后,我們必須為它造一個(gè)車庫(kù)。我用了硬紙板和一些不同顏色的海圖。然后我用熱熔膠槍把伺服電機(jī)安裝在車庫(kù)門上。

安裝伺服電機(jī)后,我們必須照顧整個(gè)面包板電路設(shè)置。我用雙面膠帶把它固定在側(cè)壁上,用透明膠帶固定電線。

完成所有設(shè)置和連接后,它就可以工作了。我用的是充電寶。

在構(gòu)建項(xiàng)目之后,有一個(gè)小的過程可以用智能手機(jī)控制它。首先,如果您想將此設(shè)備連接到路由器,請(qǐng)確保將您的智能手機(jī)連接到相同的網(wǎng)絡(luò)。你也可以使用你的智能手機(jī)熱點(diǎn)連接你的設(shè)備。當(dāng)設(shè)備連接到互聯(lián)網(wǎng)時(shí),你可以在串行監(jiān)視器上找到它的IP地址。然后在智能手機(jī)上的任何瀏覽器的搜索欄中輸入此IP地址,然后您將看到該網(wǎng)頁(yè)。您可以將該頁(yè)面添加到“主界面”中,這樣就不需要每次都重新搜索IP地址了。最后,您的設(shè)備連接到智能手機(jī),我們的智能車庫(kù)門物聯(lián)網(wǎng)項(xiàng)目已準(zhǔn)備好進(jìn)行演示。這個(gè)項(xiàng)目的完整工作可以在下面的視頻中找到,希望你學(xué)到了一些有用的東西,并喜歡這個(gè)項(xiàng)目。

//Code for IoT Smart Garage Door Opener

//by iotdesignpro.com

#include

#include

Servo servo1;

Servo servo2;

const char* ssid = "0000";

const char* password = "12345678";

int pos = 0;

WiFiServer server(80); // Set port to 80

String header; // Stores the HTTP request

String doorstate = "off"; // state of door

void setup() {

servo1.attach(15);

servo2.attach(13);

Serial.begin(115200);

// Set the pinmode of the pins to which the LEDs are connected and turn them low to prevent flunctuations

//connect to access point

WiFi.begin(ssid, password);

Serial.print("Connecting to ");

Serial.println(ssid);

while (WiFi.status() != WL_CONNECTED) {

delay(500);

Serial.print(".");

}

// Print local IP address and start web server

Serial.println("");

Serial.println("WiFi connected.");

server.begin();

Serial.println("IP address: ");

Serial.println(WiFi.localIP()); // this will display the Ip address of the Pi which should be entered into your browser

}

void loop() {

WiFiClient client = server.available(); // Listen for incoming clients

if (client) { // If a new client connects,

String currentLine = ""; // make a String to hold incoming data from the client

while (client.connected()) { // loop while the client's connected

if (client.available()) { // if there's bytes to read from the client,

char c = client.read(); // read a byte, then

Serial.write(c); // print it out the serial monitor

header += c;

if (c == '\n') { // if the byte is a newline character

// if the current line is blank, you got two newline characters in a row.

// that's the end of the client HTTP request, so send a response:

if (currentLine.length() == 0) {

client.println("HTTP/1.1 200 OK");

client.println("Content-type:text/html");

client.println("Connection: close");

client.println();

if (header.indexOf("GET /door/on") >= 0) {

Serial.println("Door Open");

doorstate = "on";

while (pos < 100) {

Serial.println(pos);

servo1.write(pos);

servo2.write(180 - pos);

pos++;

delay(10);

}

} else if (header.indexOf("GET /door/off") >= 0) {

Serial.println("Door Close");

doorstate = "off";

while (pos > 0) {

servo1.write(pos);

servo2.write(180 - pos);

Serial.println(pos);

pos--;

delay(10);

}

}

// Display the HTML web page

client.println("");

client.println("");

client.println("");

// CSS to style the on/off buttons

client.println("");

client.println("

IoT Based Garage Door

");

if (doorstate == "off") {

client.println("

Open

");

} else {

client.println("

Close

");

}

client.println("


本文編譯自iotdesignpro



本站聲明: 本文章由作者或相關(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)系本站刪除。
換一批
延伸閱讀

2025年9月8日 – 提供超豐富半導(dǎo)體和電子元器件?的業(yè)界知名新品引入 (NPI) 代理商貿(mào)澤電子 (Mouser Electronics) 是電源系統(tǒng)與物聯(lián)網(wǎng) (IoT) 領(lǐng)域知名半導(dǎo)體供應(yīng)商英飛凌的全球授權(quán)代理商,...

關(guān)鍵字: 電源系統(tǒng) 物聯(lián)網(wǎng) 半導(dǎo)體

11萬+人次!5000+海外買家! 展會(huì)落幕,感恩同行!明年8月深圳再見! 深圳2025年9月1日 /美通社/ -- 據(jù)物聯(lián)網(wǎng)世界報(bào)道。 在AIoT(人工智能+物聯(lián)網(wǎng))技術(shù)加速滲透、全球數(shù)字化轉(zhuǎn)型深化,以...

關(guān)鍵字: IoT 物聯(lián)網(wǎng) TE IC

LoRa聯(lián)盟? 強(qiáng)化本地基礎(chǔ)建設(shè)和市場(chǎng)布局,以支持并擴(kuò)大會(huì)員規(guī)模;將在深圳物聯(lián)網(wǎng)博覽會(huì)(IOTE Expo Shenzhen)上舉辦LoRaWAN? 專題論壇

關(guān)鍵字: 物聯(lián)網(wǎng) 機(jī)器人 環(huán)境傳感器

深圳2025年8月27日 /美通社/ -- 2025 年 8 月 27 日至29日,IOTE 2025 第二十四屆國(guó)際物聯(lián)網(wǎng)展?深圳站于深圳國(guó)際會(huì)展中心隆重舉行。連接與傳感領(lǐng)域的全球性技術(shù)企業(yè) TE Conne...

關(guān)鍵字: TE CONNECTIVITY IoT 物聯(lián)網(wǎng)

在物聯(lián)網(wǎng)設(shè)備數(shù)量突破千億級(jí)的今天,開發(fā)者對(duì)核心芯片的訴求已從單一功能轉(zhuǎn)向“全棧集成+生態(tài)協(xié)同”。樂鑫科技推出的ESP32憑借其獨(dú)特的“雙核架構(gòu)+無線雙模+開源生態(tài)”組合,成為智能家居、工業(yè)監(jiān)控、可穿戴設(shè)備等領(lǐng)域的首選方案...

關(guān)鍵字: ESP32 物聯(lián)網(wǎng)

M5Stack為各種應(yīng)用提供廣泛的控制器-從超緊湊的Stamp和Atom到更強(qiáng)大的Core系列,具有可堆疊模塊。然而,直到最近,還沒有專門為工業(yè)環(huán)境等要求更高的環(huán)境設(shè)計(jì)的設(shè)備。這就是StamPLC的用之之道:一個(gè)配備繼電...

關(guān)鍵字: PLC Wi-Fi 繼電器

2025年8月21日 – 專注于引入新品的全球電子元器件和工業(yè)自動(dòng)化產(chǎn)品授權(quán)代理商貿(mào)澤電子 (Mouser Electronics) 即日起開售Silicon Labs全新xG26系列無線SoC和MCU。xG26片上系統(tǒng)...

關(guān)鍵字: SoC 微控制器 物聯(lián)網(wǎng)

在物聯(lián)網(wǎng)蓬勃發(fā)展的當(dāng)下,無線局域網(wǎng)絡(luò)廣泛應(yīng)用于各個(gè)領(lǐng)域。像 LoRaWAN、Wi - SUN 與 Zigbee 等協(xié)議,在自動(dòng)抄表、公用事業(yè)及智能家居等場(chǎng)景中被大量采用。然而,這些成熟協(xié)議存在自身的局限性。其復(fù)雜度較高,...

關(guān)鍵字: 物聯(lián)網(wǎng) 無線局域網(wǎng)絡(luò) 組網(wǎng)
關(guān)閉