Search Code

Návod na ESP32 20/55 – Modul sledovania čiary | SunFounderova ESP32 IoT výučbová súprava

Návod na ESP32 20/55 – Modul sledovania čiary | SunFounderova ESP32 IoT výučbová súprava

V tomto návode sa naučíme, ako používať modul ESP32 spolu s modulom na sledovanie čiary na detekciu čiernych čiar na bielom povrchu. Táto schopnosť je nevyhnutná pre aplikácie, ako sú robotické autíčka, ktoré potrebujú sledovať určenú trasu. Okrem toho integrujeme bzučiak, ktorý sa aktivuje, keď modul na sledovanie čiary deteguje čiernu čiaru, čím sa zlepšuje spätná väzba nášho projektu. Pre ďalšie objasnenie si pozrite video (vo videu na 0:00).

line_track

Vysvetlenie hardvéru

Medzi hlavné komponenty tohto projektu patria modul ESP32, modul na sledovanie čiary a bzučiak. Modul ESP32 je výkonný mikrokontrolér so vstavanými funkciami Wi-Fi a Bluetooth, ktorý umožňuje širokú škálu IoT aplikácií. Modul na sledovanie čiary využíva infračervený žiarič a fotorezistor na detekciu rozdielov vo farbe povrchu na základe intenzity odrazeného infračerveného svetla.

Modul na sledovanie čiary funguje tak, že vyžaruje infračervené svetlo, ktoré sa odráža od povrchu pod ním. Tmavší povrch, ako je čierny, absorbuje viac svetla, čo má za následok nižšiu intenzitu odrazu, zatiaľ čo svetlejší povrch, ako je biely, odráža viac svetla, čo vytvára vyššiu intenzitu. Tento rozdiel je spracovaný operačným zosilňovačom na určenie stavu povrchu (čierny alebo biely) a výstup zodpovedajúceho signálu.

Podrobnosti z datasheetu

Výrobca SunFounder
Označenie dielu TCRT5000
Logické/IO napätie 3,3 V až 5 V
Výstupný prúd (na kanál) 20 mA
Špičkový prúd (na kanál) 50 mA
Čas odozvy < 10 ms
Rozsah detekcie 1 cm až 5 cm
Balenie Modul s hlavičkovými kolíkmi
Poznámky / varianty Bežne používané v robotoch sledujúcich čiaru

 

  • Zabezpečte správne napájanie (3,3 V alebo 5 V).
  • Udržiavajte snímač čistý pre presné údaje.
  • Upravte citlivosť pomocou vstavaného potenciometra.
  • Skontrolujte pripojenia, aby ste sa vyhli plávajúcim vstupom.
  • V prípade potreby použite pull-up rezistory pre stabilné údaje.
  • Minimalizujte rušenie z okolitých infračervených zdrojov.

Pokyny na zapojenie

ESP32-20_line-tracking-wiring

Na zapojenie modulu na sledovanie čiary k ESP32 začnite pripojením uzemňovacieho kolíka modulu k uzemňovaciemu kolíku na ESP32. Potom pripojte kolík V+ modulu na sledovanie čiary k vhodnému zdroju napájania, buď 3,3 V alebo 5 V na ESP32. Signálny kolík (označený ako S) by mal byť pripojený na GPIO 14 na ESP32. Pred pokračovaním sa uistite, že sú tieto pripojenia bezpečné.

Ak používate bzučiak, pripojte jeho záporný pól k uzemneniu a kladný pól na GPIO 27 na ESP32. Toto nastavenie umožňuje, aby sa bzučiak aktivoval, keď modul na sledovanie čiary deteguje čiernu čiaru. Nezabudnite skontrolovať všetky pripojenia, aby sa zhodovali so špecifikovanými pinmi v kóde.

ESP32-20_line-tracking-schemtaic

Príklady kódu a vysvetlenie

Nižšie je uvedený kľúčový výňatok z kódu, ktorý nastavuje modul na sledovanie čiary. Premenná linePin je definovaná na reprezentáciu pinu pripojeného k modulu na sledovanie čiary.

const int linePin = 14;  // Číslo pinu modulu na sledovanie čiary

Tento riadok inicializuje linePin ako pin 14, ktorý sa použije na čítanie stavu čiary. Premenná lineState bude uchovávať výsledok zo snímača.

Vo funkcii setup() nakonfigurujeme režim pinu pre linePin ako vstup.

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

To zaisťuje, že ESP32 môže čítať stav modulu na sledovanie čiary. Sériová komunikácia sa spustí s prenosovou rýchlosťou 115200 na monitorovanie výstupu.

Nakoniec vo funkcii loop() nepretržite čítame stav modulu na sledovanie čiary a tlačíme detegovanú farbu.

void loop() {
  lineState = digitalRead(linePin);
  if (lineState == HIGH) {
    Serial.println("Black");
    delay(100);
  } else {
    Serial.println("White");
    delay(100);
  }
}

Táto slučka kontroluje, či je lineState HIGH (označuje čiernu) alebo LOW (označuje bielu), a vytlačí výsledok do sériového monitora. Úplný kód sa načíta pod článkom pre vašu referenciu.

Demonštrácia / Čo očakávať

Po dokončení zapojenia a nahraní kódu by ste mali pozorovať, ako ESP32 tlačí „Black", keď je modul na sledovanie čiary nad čiernym povrchom, a „White", keď je nad bielym povrchom. Okrem toho bzučiak zaznie, keď modul deteguje čiernu čiaru, čo poskytuje zvukovú výstrahu. Buďte opatrní s nastaveniami potenciometra, pretože príliš citlivé nastavenia môžu viesť k nepravidelnému správaniu (vo videu na 10:00).

Časové značky videa

  • 00:00 Začiatok
  • 2:22 Úvod do modulu sledovania čiary
  • 5:10 Stránka dokumentácie
  • 9:20 Vysvetlenie zapojenia
  • 10:49 Vysvetlenie kódu pre Arduino
  • 13:36 Výber dosky ESP32 a portu COM v Arduino IDE
  • 15:18 Ukážka
  • 18:15 Projekt: Sledovanie čiary s bzučiakom
  • 19:52 Kód pre Arduino pre sledovanie čiary a bzučiak
  • 20:52 Ukážka

Images

ESP32-20_line-tracking-schemtaic
ESP32-20_line-tracking-schemtaic
ESP32-20_line-tracking-wiring
ESP32-20_line-tracking-wiring
line_track
line_track
819-ESP32 Tutorial 20/55- Arduino code line tracking
Language: C++
// Set pin number
const int linePin = 14;  // The number of the line track module pin

// Variable for storing the line status 
int lineState = 0;

void setup() {
  Serial.begin(115200);  
  // Initialize the line track module pin as an input
  pinMode(linePin, INPUT);
}

void loop() {
  // Read the state of the line track module
  lineState = digitalRead(linePin);

  if (lineState == HIGH) {
    Serial.println("Black");
    delay(100);
  }
  else {
    Serial.println("White");
    delay(100);
  }
}

Resources & references

Files📁

No files available.