Cuprins:

Robot de urmărire a focului: 6 pași (cu imagini)
Robot de urmărire a focului: 6 pași (cu imagini)

Video: Robot de urmărire a focului: 6 pași (cu imagini)

Video: Robot de urmărire a focului: 6 pași (cu imagini)
Video: Ce înseamna semnul tau din nastere 2024, Iulie
Anonim
Image
Image
Conectarea senzorului de flacără la PICO
Conectarea senzorului de flacără la PICO

În acest proiect, vom crea un robot de stingere a incendiilor care urmărește o flacără și o stinge suflând aer de la un ventilator.

După ce ați terminat acest proiect, veți ști cum să utilizați senzori de flacără cu PICO, cum să citiți valoarea de ieșire a acestora și cum să acționați asupra acestuia și cum să utilizați senzori Darlington cu motoare de curent continuu și cum să le controlați. Asta, desigur, împreună cu un robot foarte interesant de stingere a incendiilor.

Provizii

  • PICO
  • Senzor de flacără
  • Mic motor DC
  • Elice mici
  • Driver motor L298N H-bridge
  • PCA9685 Driver pe 12 biți PWM pe 16 canale
  • Kit șasiu robot 2WD
  • Mini panou de prindere
  • Sârme de jumper
  • Șuruburi și piulițe

Pasul 1: Conectarea senzorului de flacără la PICO

Conectarea senzorului de flacără la PICO
Conectarea senzorului de flacără la PICO

Să începem cu cea mai importantă parte a robotului nostru de stingere a incendiilor, care este capacitatea de a detecta incendiile atunci când acestea se întâmplă. De aceea, vom începe cu componentele care sunt responsabile pentru detectarea incendiului, dar înainte să o facem, să asamblăm kitul nostru de șasiu pentru robot 2WD, deoarece ne vom construi robotul pe baza acestuia.

Vom folosi 3 senzori de flacără în acest proiect și vom face robotul să se deplaseze independent folosind citirile lor, vom așeza acești senzori pe partea centrală, stângă și dreaptă a șasiului robotului. Și vor fi așezați în așa fel încât să aibă capacitatea de a fixa cu precizie sursa de flacără și de a o stinge.

Înainte de a începe să folosim senzorii de flacără, să vorbim despre modul în care funcționează: modulele senzorului de flacără sunt realizate în principal din LED-uri cu receptor infraroșu care pot detecta lumina infraroșie care este emisă de flăcări și pot trimite datele fie ca intrare digitală, fie analogică, în în cazul în care vom folosi un senzor de flacără care trimite ieșire digitală.

Ieșirea pinului modulului senzorului de flacără:

  • VCC: pozitiv 5 volți, conectat cu pinul VCC al lui PICO.
  • GND: pin negativ, conectat cu pinul GND al lui PICO.
  • D0: pinul de ieșire digitală, conectat cu digitalul dorit pe PICO.

Să-l conectăm acum la PICO pentru a testa cablarea și logica codului, pentru a ne asigura că totul funcționează corect. Conectarea senzorilor de flacără este foarte ușoară, conectați doar VCC și GND ale senzorilor la VCC și respectiv GND de PICO, apoi conectați pinii de ieșire după cum urmează:

  • D0 (senzor de flacără dreapta) → A0 (PICO)
  • D0 (senzor de flacără mijlocie) → A1 (PICO)
  • D0 (senzor de flacără stânga) → A2 (PICO)

Pasul 2: Codificarea PICO cu senzorii de flacără

Codificarea PICO cu senzorii de flacără
Codificarea PICO cu senzorii de flacără
Codificarea PICO cu senzorii de flacără
Codificarea PICO cu senzorii de flacără

Acum că avem senzorii de flacără conectați la PICO, să începem codarea, astfel încât să știm care senzor de flacără are o flacără în față și care nu.

Logica codului:

  • Setați pinii PICO A0, A2 și A3 ca pini INPUT
  • Citiți valoarea de ieșire a fiecărui senzor
  • Imprimați valoarea de ieșire a fiecărui senzor pe monitorul serial, astfel încât să putem diagnostica dacă totul funcționează corect sau nu.

Vă rugăm să rețineți că senzorii noștri au o citire scăzută „0” atunci când simt focul și o citire mare „1” atunci când nu simt focul.

Pentru a vă testa codul, deschideți monitorul serial și analizați cum se schimbă atunci când aveți foc în față, în comparație cu când se întâmplă. Imaginile atașate au citirile pentru că nu au deloc flacără și citirile unei singure flăcări în fața senzorului din mijloc.

Pasul 3: Conectarea ventilatorului

Conectarea ventilatorului
Conectarea ventilatorului

Pentru ca un robot de stingere a incendiilor să fie eficient, acesta trebuie să aibă capacitatea de a lupta împotriva focului și, pentru asta, vom crea un ventilator care să țintească focul și să-l stingem. Și vom crea acest ventilator folosind un mic motor DC cu o elice instalată pe el.

Deci, să începem prin conectarea motoarelor noastre DC. Motoarele de curent continuu au un consum mare de curent, astfel că nu le putem conecta direct la PICO, deoarece poate oferi doar 40 mA pe pin GPIO, în timp ce motorul are nevoie de 100 mA. Acesta este motivul pentru care trebuie să folosim un tranzistor pentru a-l conecta și vom folosi tranzistorul TIP122, deoarece îl putem folosi pentru a ridica curentul furnizat de PICO la suma necesară motorului.

Vom adăuga motorul nostru de curent continuu și o baterie externă „PLACE HOLDER”, pentru a furniza motorului puterea necesară fără a afecta PICO-ul nostru.

Motorul de curent continuu trebuie conectat după cum urmează:

  • Pin de bază (TIP122) → D0 (PICO)
  • Știft colector (TIP122) → Conductorul motorului continuu „Motoarele continuu nu au polarități, deci nu contează care este conductorul”
  • Pin emițător (TIP122) → GND
  • Conductorul gol al motorului continuu → Pozitiv (fir roșu) al bateriei externe

Nu uitați să conectați GND-ul bateriei cu GND-ul PICO, de parcă nu este conectat, circuitul nu va funcționa deloc

Logica codului ventilatorului: codul este foarte simplu, doar vom modifica codul pe care trebuie să îl pornim deja atunci când citirea senzorului central este mare și oprim ventilatorul când citirea senzorului mediu este scăzută.

Pasul 4: Conectarea motoarelor robotului auto

Acum că robotul nostru poate detecta focurile și le poate stinge cu un ventilator atunci când focul este direct în fața lui. Este timpul să oferiți robotului capacitatea de a se mișca și de a-l poziționa direct în fața focului, astfel încât să-l poată stinge. Folosim deja kitul nostru de șasiu robot 2WD, care vine cu 2 DC cu angrenaje pe care le vom folosi.

Pentru a putea controla viteza și direcția de funcționare a motorului de curent continuu, trebuie să utilizați driverul motorului L298N H-bridge, care este un modul de control al motorului care are capacitatea de a controla viteza și direcția de funcționare a motorului, cu capacitatea de a alimenta motoarele. de la o sursă de alimentare externă.

Driverul motorului L298N are nevoie de 4 intrări digitale pentru a controla direcția de rotație a motoarelor și de 2 intrări PWM pentru a controla viteza de rotație a motoarelor. Dar, din păcate, PICO are doar un singur pin de ieșire PWM care nu poate controla atât direcția, cât și viteza de rotație a motorului. Aici utilizăm modulul de expansiune a pinilor PCA9685 PWM pentru a crește PWM PICO pentru a se potrivi nevoilor noastre.

Cablarea a devenit acum puțin mai complicată, deoarece conectăm 2 motoare noi împreună cu 2 module pentru a le controla. Dar, aceasta nu va fi o problemă dacă urmați schemele și pașii furnizați:

Să începem cu modulul PCA9685 PWM:

  • Vcc (PCA9685) → Vcc (PICO)
  • GND (PCA9685) → GND
  • SDA ((PCA9685) → D2 (PICO)
  • SCL (PCA9685) → D3 (PICO)

Acum, să conectăm modulul driverului de motor L298N:

Să începem prin conectarea la sursa noastră de alimentare:

  • +12 (modul L298N) → Sârmă roșie pozitivă (baterie)
  • GND (modul L298N) → GND

Pentru a controla direcția de rotație a motoarelor:

  • In1 (modul L298N) → PWM 0 pin (PCA9685)
  • In2 (modul L298N) → PWM 1 pin (PCA9685)
  • In3 (modul L298N) → PWM 2 pini (PCA9685)
  • In4 (modul L298N) → PWM 3 pini (PCA9685)

Pentru a controla viteza de rotație a motorului:

  • enableA (modul L298N) → PWM 4 pini (PCA9685)
  • enableB (modul L298N) → PWM 5 pini (PCA9685)

Driverul motorului L298N poate emite un +5 volți reglementat, pe care îl vom folosi pentru a alimenta PICO-ul nostru:

+5 (modul L298N) → Vin (PICO)

Nu conectați acest pin dacă PICO este alimentat prin USB

Acum că avem totul conectat, vom programa robotul să se miște pentru a se confrunta direct cu flacăra și a porni ventilatorul.

Pasul 5: Finalizarea codului

Acum, că avem totul conectat corect, este timpul să îl codificăm, astfel încât să funcționeze și el. Și acestea sunt lucrurile pe care dorim să le realizeze codul nostru:

Dacă simte focul drept înainte (senzorul din mijloc detectează focul), atunci robotul se deplasează spre el până ajunge la distanța stabilită și pornește ventilatorul

Dacă simte focul în partea dreaptă a robotului (senzorul drept detectează focul), atunci robotul se rotește până când focul este chiar în fața robotului (senzorul din mijloc), apoi se deplasează spre acesta până când atinge distanța stabilită și pornește ventilatorul

Dacă simte focul în partea stângă a robotului, va proceda la fel ca mai sus. Dar, se va întoarce spre stânga în loc de dreapta.

Și dacă nu simte deloc niciun incendiu, toți senzorii vor produce valoare HIGH, oprind robotul.

Pasul 6: Ești gata

În acest proiect, am învățat cum să citim ieșirea senzorului și să acționăm în funcție de acesta, cum să folosim tranzistorul Darlington cu motoare de curent continuu și cum să controlăm motoarele de curent continuu. Și ne-am folosit toate cunoștințele pentru a crea un robot de stingere a incendiilor ca aplicație. Ceea ce este destul de cool x)

Vă rugăm să nu ezitați să puneți orice întrebări pe care le-ați putea avea în comentarii sau pe site-ul nostru mellbell.cc. Și ca întotdeauna, continuați să faceți:)

Recomandat: