Search Code

ESP32 ትምህርት 19/55 - ኢንፍራሬድ ዳሳሽ በመጠቀም እንቅፋትን መለየት | SunFounder የESP32 IoT መማሪያ ኪት

ESP32 ትምህርት 19/55 - ኢንፍራሬድ ዳሳሽ በመጠቀም እንቅፋትን መለየት | SunFounder የESP32 IoT መማሪያ ኪት

በዚህ መማሪያ ውስጥ፣ እንቅፋቶችን ለመለየት ከESP32 ሞጁል ጋር የኢንፍራሬድ እንቅፋት መከላከያ ዳሳሽ እንዴት መጠቀም እንደምንችል እንማራለን። ይህ ፕሮጀክት እንቅፋት ሲገኝ ዳሳሹ እንዴት ባዘርን ማንቃት እንደሚችል ያሳያል። ዝግጅቱ የመለየት ሁኔታን በተከታታይ መቆጣጠሪያ ላይ ያሳያል፣ ይህም የዳሳሹን ተግባር ለመመልከት ግልጽ እና መስተጋብራዊ መንገድ ይሰጣል።

ከSunFounder ESP32 IoT መማሪያ ኪት ጋር እንሰራለን፣ ይህም Wi-Fi እና ብሉቱዝ አቅም ያለው ESP32 ማይክሮ መቆጣጠሪያን ያካትታል። የኢንፍራሬድ ዳሳሽ የሚሰራው የኢንፍራሬድ ብርሃን በመላክ ነው፣ ይህም በአቅራቢያ ካሉ እንቅፋቶች ይንጸባረቃል። ብርሃኑ ወደ ኋላ ሲንጸባረቅ፣ ዳሳሹ በኮድ ውስጥ የምናነበውን የውጤት ምልክት ያስነሳል። እንቅፋት ሲገኝ የሚሰማ ማንቂያ የሚሰጥ ባዘርም እናካትታለን።

ሃርድዌር ተብራርቷል

የዚህ ፕሮጀክት ዋና ክፍሎች ESP32 ሞጁል፣ የኢንፍራሬድ እንቅፋት መከላከያ ዳሳሽ እና ባዘር ያካትታሉ። ESP32 ሞጁል እንደ ማዕከላዊ ማቀነባበሪያ ክፍል ሆኖ ያገለግላል፣ የዳሳሽ ግብዓቶችን በመያዝ እና ውጤቶችን ይቆጣጠራል። በሊቲየም ባትሪ መሙላት ይችላል፣ ይህም ለተለያዩ አፕሊኬሽኖች ተንቀሳቃሽ እና ተለዋዋጭ ያደርገዋል።

የኢንፍራሬድ እንቅፋት መከላከያ ዳሳሽ አስተላላፊ እና ተቀባይ ያካትታል። አስተላላፊው የኢንፍራሬድ ብርሃን ያመነጫል፣ ተቀባዩ ደግሞ ከአቅራቢያ ካሉ ነገሮች የሚንጸባረቀውን ብርሃን ይለያል። እንቅፋት በሚኖርበት ጊዜ፣ የዳሳሹ የውጤት ፒን ዝቅተኛ ይሆናል፣ ይህም ESP32 እንደ ባዘር ማብራት ያሉ እርምጃዎችን እንዲወስድ ያመላክታል።

የዳታሼት ዝርዝሮች

አምራችSunFounder
ክፍል ቁጥርየኢንፍራሬድ እንቅፋት መከላከያ ዳሳሽ
የአሰራር ቮልቴጅ3.3 ቪ - 5 ቪ
የውጤት አይነትዲጂታል (እንቅፋት ሲገኝ ዝቅተኛ)
የመለየት ክልልእስከ 20 ሳ.ሜ
የምላሽ ጊዜከ10 ሚሴ ባነሰ
ጥቅልሞጁል

  • የኃይል አቅርቦት፡ ለአሰራር 3.3 ቪ እስከ 5 ቪ።
  • እንቅፋት ሲገኝ የውጤት ምልክት ዝቅተኛ ይሆናል።
  • በፖቴንሺዮሜትር የሚስተካከል ስሜታዊነት።
  • የተለመደ የመለየት ክልል እስከ 20 ሳ.ሜ ነው።
  • ከ10 ሚሴ በታች ፈጣን የምላሽ ጊዜ።

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

ESP32-19-obstacle_voide-wiring

የኢንፍራሬድ እንቅፋት መከላከያ ዳሳሽን ከESP32 ጋር ለማገናኘት፣ የዳሳሹን VCC ፒን በESP32 ላይ ካለው 5V ፒን ጋር በማገናኘት ይጀምሩ። በመቀጠል፣ የዳሳሹን GND ፒን በESP32 ላይ ካሉት GND ፒኖች አንዱ ጋር ያገናኙ። በመጨረሻም፣ የዳሳሹን OUT ፒን በESP32 ላይ ካለው GPIO ፒን 14 ጋር ያገናኙ።

ለባዘር፣ አሉታዊ ተርሚናሉን ከGND እና አወንታዊ ተርሚናሉን ከGPIO ፒን 27 ጋር ያገናኙ። ሁሉም ግንኙነቶች ደህንነታቸው የተጠበቀ እና ዳሳሹ በትክክል የተጎላበተ መሆኑን ያረጋግጡ። ሽቦው ቀላል መሆን አለበት፣ ምክንያቱም ዳሳሹ እና ባዘሩ ቀላል የኃይል እና የምልክት ግንኙነቶችን ብቻ ስለሚፈልጉ።

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

በኮዱ ውስጥ፣ በመጀመሪያ ከእንቅፋት መከላከያ ዳሳሽ ጋር የተገናኘውን ፒን እንገልጻለን። ይህ የሚደረገው avoidPin የሚለውን መለያ ወደ 14 በማዘጋጀት ነው። እንዲሁም የዳሳሹን የውጤት ሁኔታ ለመያዝ avoidState የሚል ተለዋዋጭ እናውጃለን።

const int avoidPin = 14;  // የእንቅፋት መከላከያ ሞጁል ፒን ቁጥር

int avoidState = 0;

በሴትአፕ ተግባር ውስጥ፣ የተከታታይ ግንኙነትን እንጀምራለን እና avoidPinን እንደ ግብዓት እናዘጋጃለን። ይህ ESP32 የዳሳሹን የውጤት ሁኔታ እንዲያነብ ያስችለዋል።

void setup() {
  Serial.begin(115200);  
  pinMode(avoidPin, INPUT);
}

በሉፕ ተግባር ውስጥ፣ የዳሳሹን ውጤት በተከታታይ digitalRead(avoidPin) በመጠቀም እናነባለን እና ውጤቱን በavoidState ውስጥ እናከማቻለን። ይህ እሴት በመቀጠል ወደ ተከታታይ መቆጣጠሪያ ይታተማል፣ ይህም እንቅፋት ሲገኝ (ውጤቱ 0 ይሆናል) ወይም በማይኖርበት ጊዜ (ውጤቱ 1 ይሆናል) እንድናይ ያስችለናል።

void loop() {
  avoidState = digitalRead(avoidPin);
  Serial.println(avoidState);
}

ለሙሉ ኮድ፣ እባክዎ ከጽሑፉ በታች ያለውን የመጫኛ ክፍል ይመልከቱ።

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

ዝግጅቱ ሲጠናቀቅ እና ኮዱ ሲሰቀል፣ እንቅፋት መገኘቱን ወይም አለመገኘቱን መሰረት በማድረግ ተከታታይ መቆጣጠሪያው 0 ወይም 1 ሲያሳይ ማየት አለብዎት። እንቅፋት በመለየት ክልል ውስጥ ሲኖር፣ ውጤቱ 0 ያነባል እና ባዘሩ ይሰማል። እንቅፋቱ ከተወገደ፣ ውጤቱ 1 ያነባል እና ባዘሩ ይቆማል። ይህ ተግባር በቪዲዮው ውስጥ ታይቷል (በቪዲዮው 12:30 ላይ)።

የተለመዱ ችግሮች የተሳሳተ ሽቦ ሊያካትቱ ይችላሉ፣ ይህም ዳሳሹ በትክክል እንዳይሰራ ሊያደርግ ይችላል፣ ወይም በተከታታይ መቆጣጠሪያው ውስጥ ያልተመሳሰሉ የባውድ መጠኖች፣ ውሂብ በትክክል እንዳይታይ ይከላከላሉ። ችግሮች ካጋጠሙዎት እነዚህን ገጽታዎች መፈተሽዎን ያረጋግጡ።

የቪዲዮ ጊዜ ምልክቶች

  • 00:00 መጀመሪያ
  • 1:57 የፕሮጀክት መግቢያ
  • 4:33 የእንቅፋት መከላከያ ሽቦ
  • 5:55 ለእንቅፋት መከላከያ የአርዱኖ ኮድ
  • 7:36 በአርዱኖ IDE ላይ ESP32 ቦርድ እና COM ወደብ መምረጥ
  • 9:18 የፕሮጀክት ማሳያ
  • 10:42 ስሜታዊነትን በመጨመር ክልልን ማስተካከል
  • 12:39 እንቅፋት ሲገኝ እርምጃ መውሰድ
  • 14:24 እንቅፋት ሲገኝ ባዘር መጠቀም

ምስሎች

ESP32-19-obstacle_voide-schematic
ESP32-19-obstacle_voide-schematic
ESP32-19-obstacle_voide-wiring
ESP32-19-obstacle_voide-wiring
818-ESP32 Tutorial 19/55- Arduino code for obstacle avoidance module
ቋንቋ: C++
// set pin
const int avoidPin = 14;  // the number of the avoid avoid module pin

// variable for storing the avoid status 
int avoidState = 0;

void setup() {
  Serial.begin(115200);  
  // initialize the avoid pin as an input
  pinMode(avoidPin, INPUT);
}

void loop() {
  // read the state of the avoid value
  avoidState = digitalRead(avoidPin);
  Serial.println(avoidState);
}

ምንጮች እና ምንጮች

ፋይሎች📁

አንድ ፋይል የለም።