Sommario:

Robot che insegue il fuoco: 6 passaggi (con immagini)
Robot che insegue il fuoco: 6 passaggi (con immagini)

Video: Robot che insegue il fuoco: 6 passaggi (con immagini)

Video: Robot che insegue il fuoco: 6 passaggi (con immagini)
Video: E SE UN ASTEROIDE COLPISSE ROMA? 2024, Dicembre
Anonim
Image
Image
Collegamento del sensore di fiamma a PICO
Collegamento del sensore di fiamma a PICO

In questo progetto, creeremo un robot antincendio che insegue una fiamma e la spegne soffiandovi aria da un ventilatore.

Dopo aver terminato questo progetto, saprai come utilizzare i sensori di fiamma con PICO, come leggere il loro valore di uscita e come agire su di esso, come utilizzare i sensori Darlington con motori CC e come controllarli. Quello, naturalmente, insieme a un robot antincendio molto cool.

Forniture

  • PICO
  • Sensore di fiamma
  • Piccolo motore DC
  • Elica piccola
  • L298N driver del motore a ponte H
  • Driver PWM a 12 bit e 16 canali PCA9685
  • Kit telaio robot 2WD
  • Mini tagliere
  • Ponticelli
  • Viti e dadi

Passaggio 1: collegamento del sensore di fiamma a PICO

Collegamento del sensore di fiamma a PICO
Collegamento del sensore di fiamma a PICO

Iniziamo con la parte più importante del nostro robot antincendio, ovvero la capacità di rilevare gli incendi quando si verificano. Questo è il motivo per cui inizieremo con i componenti responsabili della rilevazione del fuoco, ma prima di farlo, assembliamo il nostro kit telaio del robot 2WD, poiché costruiremo il nostro robot basato su di esso.

Useremo 3 sensori di fiamma in questo progetto e faremo muovere il robot in modo indipendente usando le loro letture, posizioneremo questi sensori sul lato centrale, sinistro e destro del telaio del robot. E saranno posizionati in modo tale da avere la capacità di individuare con precisione la fonte della fiamma e spegnerla.

Prima di iniziare a utilizzare i sensori di fiamma, parliamo di come funzionano: i moduli dei sensori di fiamma sono costituiti principalmente da LED ricevitori a infrarossi in grado di rilevare la luce infrarossa emessa dalle fiamme e inviare i dati come input digitale o analogico, nel nostro caso useremo un sensore di fiamma che invia un'uscita digitale.

Pin out del modulo sensore di fiamma:

  • VCC: positivo 5 volt, collegato al pin VCC di PICO.
  • GND: pin negativo, connesso al pin GND di PICO.
  • D0: il pin dell'uscita digitale, collegato con il digitale desiderato su PICO.

Ora colleghiamolo al nostro PICO per testare il nostro cablaggio e la logica del codice, per assicurarci che tutto funzioni correttamente. Il collegamento dei sensori di fiamma è molto semplice, basta collegare il VCC e GND dei sensori rispettivamente al VCC e GND di PICO, quindi collegare i pin di uscita come segue:

  • D0 (sensore di fiamma destro) → A0 (PICO)
  • D0 (sensore di fiamma centrale) → A1 (PICO)
  • D0 (sensore di fiamma sinistro) → A2 (PICO)

Passaggio 2: codifica PICO con i sensori di fiamma

Codifica PICO con i sensori di fiamma
Codifica PICO con i sensori di fiamma
Codifica PICO con i sensori di fiamma
Codifica PICO con i sensori di fiamma

Ora che abbiamo i nostri sensori di fiamma collegati a PICO, iniziamo a codificare in modo da sapere quale sensore di fiamma ha una fiamma davanti e quale no.

Logica del codice:

  • Imposta i pin A0, A2 e A3 di PICO come pin INPUT
  • Leggi ogni valore di uscita del sensore
  • Stampa ogni valore di uscita del sensore sul monitor seriale, in modo da poter diagnosticare se tutto funziona correttamente o meno.

Si prega di notare che i nostri sensori hanno una lettura bassa "0" quando rilevano il fuoco e una lettura alta "1" quando non rilevano il fuoco.

Per testare il tuo codice, apri il tuo monitor seriale e guarda come cambia quando hai il fuoco davanti, rispetto a quando lo fa. Le immagini allegate hanno le letture per non avere affatto una fiamma e le letture di una singola fiamma davanti al sensore centrale.

Passaggio 3: collegamento della ventola

Collegamento del ventilatore
Collegamento del ventilatore

Per rendere efficace un robot antincendio deve avere la capacità di combattere il fuoco, e per questo creeremo un ventilatore che puntiamo al fuoco e lo spegniamo. E creeremo questo ventilatore usando un piccolo motore a corrente continua con un'elica installata su di esso.

Quindi, iniziamo collegando i nostri motori DC. I motori DC hanno un elevato assorbimento di corrente, quindi non possiamo collegarli direttamente al nostro PICO, in quanto può offrire solo 40 mA per pin GPIO, mentre il motore necessita di 100 mA. Questo è il motivo per cui dobbiamo usare un transistor per collegarlo, e useremo il transistor TIP122, poiché possiamo usarlo per aumentare la corrente fornita dal nostro PICO alla quantità necessaria al motore.

Aggiungeremo il nostro motore DC e una batteria esterna "PLACE HOLDER", per fornire al motore la potenza necessaria senza danneggiare il nostro PICO.

Il motore DC deve essere collegato come segue:

  • Perno di base (TIP122) → D0 (PICO)
  • Pin collettore (TIP122) → Cavo motore CC "I motori CC non hanno polarità, quindi non importa quale cavo"
  • Pin emettitore (TIP122) → GND
  • Cavo vuoto del motore CC → Positivo (filo rosso) della batteria esterna

Non dimenticare di collegare il GND della batteria con il GND del PICO, come se non fosse collegato, il circuito non funzionerà affatto

La logica del codice della ventola: il codice è molto semplice, modificheremo solo il codice che abbiamo già per accendere la ventola quando la lettura del sensore centrale è alta e spegnere la ventola quando la lettura del sensore centrale è bassa.

Passaggio 4: collegamento dei motori dell'auto robot

Ora che il nostro robot può rilevare gli incendi e può spegnerli con un ventilatore quando il fuoco è direttamente di fronte ad esso. È tempo di dare al robot la possibilità di muoversi e posizionarsi direttamente di fronte al fuoco, in modo che possa spegnerlo. Stiamo già utilizzando il nostro kit telaio robot 2WD, che viene fornito con 2 DC orientati che utilizzeremo.

Per essere in grado di controllare la velocità e la direzione di marcia del motore CC è necessario utilizzare il driver del motore a ponte H L298N, che è un modulo driver del motore che ha la capacità di controllare la velocità e la direzione di marcia del motore, con la capacità di alimentare i motori da una fonte di alimentazione esterna.

Il driver del motore L298N necessita di 4 ingressi digitali per controllare la direzione di rotazione dei motori e 2 ingressi PWM per controllare la velocità di rotazione dei motori. Ma sfortunatamente, PICO ha solo un singolo pin di uscita PWM che non può controllare sia la direzione che la velocità di rotazione del motore. È qui che utilizziamo il modulo di espansione dei pin PWM PCA9685 per aumentare il PWM di PICO per soddisfare le nostre esigenze.

Il cablaggio ora è diventato un po' più complicato, poiché stiamo collegando 2 nuovi motori insieme a 2 moduli per controllarli. Ma non sarà un problema se segui gli schemi e i passaggi forniti:

Iniziamo con il modulo PWM PCA9685:

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

Ora colleghiamo il modulo driver motore L298N:

Iniziamo collegandolo alla nostra fonte di alimentazione:

  • +12 (modulo L298N) → Filo rosso positivo (batteria)
  • GND (modulo L298N) → GND

Per controllare il senso di rotazione dei motori:

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

Per controllare la velocità di rotazione del motore:

  • enableA (modulo L298N) → PWM 4 pin (PCA9685)
  • enableB (modulo L298N) → PWM 5 pin (PCA9685)

Il driver del motore L298N può emettere un +5 volt regolato, che utilizzeremo per alimentare il nostro PICO:

+5 (modulo L298N) → Vin (PICO)

Non collegare questo pin se PICO è acceso tramite USB

Ora che abbiamo tutto collegato, programmeremo il robot a muoversi per affrontare direttamente la fiamma e accendere il ventilatore.

Passaggio 5: completare il codice

Ora che abbiamo tutto collegato correttamente, è il momento di codificarlo in modo che funzioni altrettanto bene. E queste sono le cose che vogliamo che il nostro codice realizzi:

Se rileva il fuoco in linea retta (il sensore centrale rileva il fuoco), il robot si sposta verso di esso fino a raggiungere la distanza impostata e accende la ventola

Se rileva il fuoco sul lato destro del robot (il sensore destro rileva il fuoco), il robot ruota finché il fuoco non si trova proprio di fronte al robot (il sensore centrale), quindi si muove verso di esso fino a raggiungere la distanza impostata e accende il ventilatore

Se rileva il fuoco sul lato sinistro del robot, farà lo stesso come sopra. Ma girerà a sinistra invece che a destra.

E se non rileva alcun incendio, tutti i sensori emetteranno un valore ALTO, arrestando il robot.

Passaggio 6: hai finito

In questo progetto, abbiamo imparato come leggere l'uscita del sensore e agire in base ad essa, come utilizzare il transistor Darlington con i motori CC e come controllare i motori CC. E abbiamo usato tutta la nostra conoscenza per creare un robot antincendio come applicazione. Che è piuttosto bello x)

Non esitare a porre qualsiasi domanda tu possa avere nei commenti o sul nostro sito web mellbell.cc. E come sempre, continua a fare:)

Consigliato: