Search Code

ኢኤስፒ32 ትምህርት 16/55 - ትንሽ የውሃ ፓምፕ በኢኤስፒ32 እና L293D በመጠቀም | SunFounder የኢኤስፒ32 IoT መማሪያ ኪት

ኢኤስፒ32 ትምህርት 16/55 - ትንሽ የውሃ ፓምፕ በኢኤስፒ32 እና L293D በመጠቀም | SunFounder የኢኤስፒ32 IoT መማሪያ ኪት

በዚህ ትምህርት ውስጥ፣ ESP32 ማይክሮ መቆጣጠሪያን እና L293D ሞተር ሾፌርን በመጠቀም ባለ 5V የውሃ ፓምፕ እንዴት መቆጣጠር እንደምንችል እንማራለን። ይህ ፕሮጀክት ሞተር ሾፌሮችን ከማይክሮ መቆጣጠሪያዎች ጋር ለመጠቀም ጥሩ መግቢያ ነው፣ ይህም ማይክሮ መቆጣጠሪያ በቀጥታ ሊሰጠው ከሚችለው የበለጠ ጅረት የሚፈልጉ መሳሪያዎችን እንድንቆጣጠር ያስችለናል። በዚህ ትምህርት መጨረሻ፣ በፕሮግራም ሊበራ እና ሊጠፋ የሚችል የሚሰራ የውሃ ፓምፕ ይኖርዎታል።

ESP32 አብሮ የተሰራ ዋይ-ፋይ እና ብሉቱዝ አቅሞች ያለው ኃይለኛ ማይክሮ መቆጣጠሪያ ነው፣ ይህም ለIoT አፕሊኬሽኖች ተስማሚ ያደርገዋል። L293D ሞተር ሾፌር ሞተሩን ለማስኬድ የሚያስፈልገውን ከፍተኛ ጅረት በማስተዳደር የውሃ ፓምፑን ለመቆጣጠር ይጠቅማል። ይህ ዝግጅት ፓምፑን እንድንጀምር እና እንድናቆም ያስችለናል፣ ESP32 ከመጠን በላይ ከሆነ የጅረት ፍሰት ደህንነቱ እንደተጠበቀ እንዲቆይ ያደርጋል።

ሃርድዌር ተብራርቷል

በዚህ ፕሮጀክት ውስጥ፣ በሁለገብነቱ እና በግንኙነት አማራጮቹ የሚታወቀውን ESP32 ማይክሮ መቆጣጠሪያን እንጠቀማለን። እንደ አርዱኖ መስራት ይችላል፣ እንደ ዋይ-ፋይ እና ብሉቱዝ ያሉ ተጨማሪ ባህሪያትን ይሰጣል። L293D ሞተር ሾፌር በESP32 እና በውሃ ፓምፑ መካከል እንደ በይነገጽ ይሰራል፣ ይህም ማይክሮ መቆጣጠሪያውን ሳይጭነው የፓምፑን አሰራር ለመቆጣጠር ያስችላል።

L293D ሁለት H-ድልድዮች አሉት፣ ይህም የሞተሩን አቅጣጫ እና ፍጥነት ለመቆጣጠር ያስችላል። እያንዳንዱ H-ድልድይ ሞተርን በሁለቱም አቅጣጫ ማንቀሳቀስ ይችላል፣ ይህም የሞተር ቁጥጥር ለሚያስፈልጋቸው አፕሊኬሽኖች ተስማሚ ያደርገዋል። በዚህ ሁኔታ፣ ፓምፑን በአንድ አቅጣጫ እንዲሰራ ማስቻል ብቻ እንፈልጋለን።

የዳታሼት ዝርዝሮች

አምራችቴክሳስ ኢንስትሩመንትስ
የክፍል ቁጥርL293D
የሎጂክ/IO ቮልቴጅ4.5 - 36 ቮ
የአቅርቦት ቮልቴጅ4.5 - 36 ቮ
የውጤት ጅረት (በአንድ ቻናል)600 ሚሊአምፐር
ከፍተኛ ጅረት (በአንድ ቻናል)1.2 አምፐር
የPWM ድግግሞሽ መመሪያ1 ኪሎሄርትዝ - 10 ኪሎሄርትዝ
የግቤት ሎጂክ ገደቦች2 ቮ (ከፍተኛ)፣ 0.8 ቮ (ዝቅተኛ)
የቮልቴጅ ጠብታ / RDS(on) / ሳቹሬሽን1.5 ቮ (ከፍተኛ)
የሙቀት ገደቦች+150 °ሴ (ከፍተኛ)
ፓኬጅDIP-16
ማስታወሻዎች / ልዩነቶችለኢንዳክቲቭ ጭነት ጥበቃ አብሮ የተሰሩ ዳዮዶችን ያካትታል

  • ለቀጣይ አሰራር ትክክለኛ የሙቀት መበታተንን ያረጋግጡ።
  • ለተረጋጋ የኃይል አቅርቦት ዲኮፕሊንግ ካፓሲተሮችን ይጠቀሙ።
  • ጉዳትን ለመከላከል ለግቤት ቮልቴጅ ይጠንቀቁ።
  • አስፈላጊ ከሆነ ለፍጥነት ቁጥጥር PWM ይተግብሩ።
  • በተለይ በኢንዳክቲቭ ጭነቶች ላይ አጭር ዑደትን ለማስቀረት ሽቦውን ያረጋግጡ።

የሽቦ መገጣጠም መመሪያዎች

ESP32-16-motor-pump_wiring

ESP32 እና L293D ሞተር ሾፌርን ከውሃ ፓምፑ ጋር ለማገናኘት እነዚህን ደረጃዎች በጥንቃቄ ይከተሉ። በመጀመሪያ፣ የኃይል አቅርቦቱን ከL293D ጋር ያገናኙ። ፒን 1 (ለሞተር A ማንቃት ፒን) እና ፒን 8 (Vcc2) ከአዎንታዊ የቮልቴጅ ምንጭ (5ቮ) ጋር ያገናኙ። ፒን 4 (መሬት) ከወረዳዎ መሬት ጋር ያገናኙ።

በመቀጠል፣ ESP32 ን ከL293D ጋር ያገናኙ። ከESP32 የሚመጣውን GPIO ፒን 13 በL293D ላይ ካለው ፒን 2 (ግቤት 1) ጋር ያገናኙ፣ እና GPIO ፒን 14 ን ከፒን 7 (ግቤት 2) ጋር ያገናኙ። በመጨረሻም፣ የውሃ ፓምፑን ከL293D ፒን 3 (ውጤት 1) እና ፒን 6 (ውጤት 2) ጋር ያገናኙ። ለትክክለኛ አሰራር ሁሉም የመሬት ግንኙነቶች አንድ ላይ መታሰራቸውን ያረጋግጡ። እነዚህን መመሪያዎች ከተከተሉ፣ የሽቦ አገጣጠምዎ ቀላል እና ተግባራዊ መሆን አለበት።

የኮድ ምሳሌዎች እና ማብራሪያ

በኮዱ ውስጥ፣ ለሞተር ቁጥጥር የፒን ግንኙነቶችን እንገልፃለን። መለያዎቹ motor1A እና motor2A በቅደም ተከተል በESP32 ላይ ካሉት GPIO ፒን 13 እና 14 ጋር ይዛመዳሉ። እነዚህ ፒኖች የውሃ ፓምፑን በL293D ሾፌር በኩል ይቆጣጠራሉ።

#define motor1A 13
#define motor2A 14

void setup() {
  pinMode(motor1A, OUTPUT);
  pinMode(motor2A, OUTPUT);  
}

setup() ተግባር ውስጥ፣ የሞተር መቆጣጠሪያ ፒኖችን እንደ ውጤት እንጀምራለን። ይህ ፓምፑን ለመቆጣጠር ለL293D ሾፌር ምልክቶችን መላክ እንደምንችል ያረጋግጣል። ከዚያም የloop() ተግባር የፓምፑን አሰራር ይቆጣጠራል።

void loop() {
  digitalWrite(motor1A, HIGH);     
  digitalWrite(motor2A, LOW);   
  delay(5);
  
  digitalWrite(motor1A, LOW);     
  digitalWrite(motor2A, LOW);    
  delay(2000); // ለአንድ ሰከንድ ይጠብቁ
}

loop() ተግባር ውስጥ፣ ፓምፑን ለመጀመር motor1A ን ወደ HIGH እና motor2A ን ወደ LOW እናዘጋጃለን። ከአጭር መዘግየት በኋላ፣ ሁለቱንም ፒኖች ወደ LOW በማዘጋጀት ፓምፑን እናቆማለን። ይህ ዑደት ላልተወሰነ ጊዜ ይደጋገማል፣ ይህም ፓምፑ ለአጭር ጊዜ እንዲሰራ እና ከዚያ እንዲቆም ያስችላል።

ማሳያ / ምን እንደሚጠበቅ

ሽቦውን ከጨረሱ እና ኮዱን ከጫኑ በኋላ፣ የውሃ ፓምፑ በዑደት ሲበራ እና ሲጠፋ ማየት አለብዎት። ፓምፑ ለአጭር ጊዜ ይሰራል፣ ከዚያ ይቆማል፣ የመብራት-ማጥፋት ንድፍ ይፈጥራል። ችግሮችን ለማስቀረት የኃይል አቅርቦትዎ ለፓምፑ መስፈርቶች በቂ መሆኑን ያረጋግጡ (በቪዲዮው ላይ በ09:30)።

የቪዲዮ ጊዜ አመልካቾች

  • 00:00 መጀመሪያ
  • 1:50 የፕሮጀክት መግቢያ
  • 3:17 ለምን L293D ከአርዱኖ ጋር ያስፈልገናል?
  • 5:47 የውሃ ፓምፕ ሽቦ መገጣጠም ተብራርቷል
  • 10:01 የአርዱኖ ኮድ ተብራርቷል
  • 12:21 በአርዱኖ IDE ላይ ለESP32 COM ወደብ መምረጥ
  • 14:03 ፓምፑን የማስኬድ ማሳያ
  • 15:25 ከውሃ ጋር ማሳያ

ምስሎች

ESP32-15_L293D_motor_schematic
ESP32-15_L293D_motor_schematic
ESP32-16-motor-pump_wiring
ESP32-16-motor-pump_wiring
5V DC water pump
5V DC water pump
815-ESP32 Tutorial 16/55 - Arduino code to control DC water pump
ቋንቋ: C++
#define motor1A 13
#define motor2A 14

// the setup function runs once when you press reset or power the board
void setup() {
  // initialize digital pin as an output.
  pinMode(motor1A, OUTPUT);
  pinMode(motor2A, OUTPUT);  
}

// the loop function runs over and over again forever
void loop() {

  // Rotate
  digitalWrite(motor1A, HIGH);     
  digitalWrite(motor2A, LOW);   
  delay(5);

  // Stop
  digitalWrite(motor1A, LOW);     
  digitalWrite(motor2A, LOW);    
  delay(2000); // wait for a second
}

ምንጮች እና ምንጮች

ፋይሎች📁

የዳታ ማዕከል (pdf)