Sommario:

Robot inseguitore di linea con PICO: 5 passaggi (con immagini)
Robot inseguitore di linea con PICO: 5 passaggi (con immagini)

Video: Robot inseguitore di linea con PICO: 5 passaggi (con immagini)

Video: Robot inseguitore di linea con PICO: 5 passaggi (con immagini)
Video: Webinar | Realizziamo un inseguitore solare con Arduino (Elisa Bellistri) 2024, Luglio
Anonim
Robot inseguitore di linea con PICO
Robot inseguitore di linea con PICO
Robot inseguitore di linea con PICO
Robot inseguitore di linea con PICO
Robot inseguitore di linea con PICO
Robot inseguitore di linea con PICO
Robot inseguitore di linea con PICO
Robot inseguitore di linea con PICO

Prima che tu sia in grado di creare un robot che possa porre fine alla civiltà come la conosciamo, ed è in grado di porre fine alla razza umana. Prima devi essere in grado di creare i robot semplici, quelli che possono seguire una linea tracciata a terra, ed è qui che farai il tuo primo passo verso la fine di tutti noi >.<

Innanzitutto, un robot che segue una linea è un robot in grado di seguire una linea sul terreno, e questa linea solitamente è una linea nera disegnata su uno sfondo bianco o viceversa; e questo perché è più facile per il robot distinguere tra colori molto contrastanti, come il bianco e il nero. Dove il robot cambia la sua angolazione a seconda del colore che legge.

Forniture

  1. PICO
  2. Chassis del robot a due ruote motrici, che ha quanto segue:

    • Telaio in acrilico
    • 2 motori DC con ruote ed encoder
    • Ruota sterzante con distanziali in metallo
    • Portabatterie a 4 canali
    • Alcune viti e dadi
    • Interruttore di accensione/spegnimento
  3. Modulo driver motore L298N
  4. 2 sensori di tracciamento di linea
  5. Batteria da 7,4 V

Passaggio 1: preparazione dei motori CC

Preparazione dei motori CC
Preparazione dei motori CC
Preparazione dei motori CC
Preparazione dei motori CC
Preparazione dei motori CC
Preparazione dei motori CC

È possibile utilizzare il telaio "2WD" a due ruote motrici per semplificare questo progetto, poiché consente di risparmiare tempo e fatica quando si tratta di costruire il proprio telaio. Dandoti più tempo per concentrarti sull'elettronica del progetto.

Iniziamo con i motori CC, poiché utilizzerai i motori per controllare la velocità di movimento e la direzione del tuo robot, a seconda delle letture dei sensori. La prima cosa da fare è iniziare a controllare la velocità dei motori, che è direttamente proporzionale alla tensione di ingresso, il che significa che devi aumentare la tensione per aumentare la velocità e viceversa.

La tecnica PWM "Pulse Width Modulation" è l'ideale per il lavoro, in quanto consente di regolare e personalizzare il valore medio che sta andando al tuo dispositivo elettronico (motore). E funziona utilizzando i segnali digitali "HIGH" e "LOW" per creare valori analogici, alternando i 2 segnali a una velocità molto elevata. Dove la tensione "analogica" dipende dalla percentuale tra i segnali digitali HIGH e digitali LOW presenti durante un periodo PWM.

Si prega di notare che non possiamo collegare PICO direttamente al motore, poiché il motore richiede un minimo di 90 mA che non può essere gestito dai pin di PICO, ed è per questo che utilizziamo il modulo driver del motore L298N, che ci dà la possibilità di inviare entrambi sufficiente corrente ai motori e cambiarne la polarità.

Ora, saldiamo un filo a ciascuno dei terminali del motore, seguendo questi passaggi:

  1. Fondere una piccola quantità di saldatura sul terminale del motore
  2. Metti la punta del filo sopra il terminale del motore e riscaldala con il saldatore finché la saldatura sul terminale non si scioglie e si collega al filo, quindi rimuovi il saldatore e lascia raffreddare la connessione.
  3. Ripetere i passaggi precedenti con i restanti terminali di entrambi i motori.

Passaggio 2: utilizzo del modulo driver motore L298N

Utilizzo del modulo driver motore L298N
Utilizzo del modulo driver motore L298N
Utilizzo del modulo driver motore L298N
Utilizzo del modulo driver motore L298N
Utilizzo del modulo driver motore L298N
Utilizzo del modulo driver motore L298N

Il motore del driver del motore L298N ha la capacità di amplificare il segnale proveniente da PICO e di cambiare la polarità della corrente che lo attraversa. Permettendoti di controllare sia la velocità che la direzione di rotazione dei tuoi motori.

Uscite pin L298N

  1. Primo terminale del motore CC A
  2. Secondo terminale del motore CC A
  3. Ponticello regolatore 5v a bordo. Rimuovere questo ponticello se si collega una tensione di alimentazione del motore superiore a 12 V, per non forzare il regolatore di tensione.
  4. Tensione di alimentazione del motore in. Il massimo è 35 V e non dimenticare di rimuovere il regolatore di tensione se stai usando più di 12 V.
  5. GND
  6. Uscita 5v. Questa uscita proviene dal regolatore di tensione se è ancora collegato e ti dà la possibilità di alimentare il tuo PICO dalla stessa fonte del motore.
  7. Ponticello di abilitazione motore DC A. Se questo ponticello è collegato, il motore funzionerà alla massima velocità in avanti o all'indietro. Ma, se vuoi controllare la velocità, rimuovi semplicemente il ponticello e collega invece un pin PWM.
  8. In1, aiuta a controllare la polarità della corrente e, quindi, il senso di rotazione del motore A.
  9. In2, aiuta a controllare la polarità della corrente e, quindi, il senso di rotazione del motore A.
  10. In3, aiuta a controllare la polarità della corrente e, quindi, il senso di rotazione del motore B.

  11. In4, aiuta a controllare la polarità della corrente e, quindi, il senso di rotazione del motore B.
  12. Ponticello di abilitazione motore DC B. Se questo ponticello è collegato, il motore funzionerà alla massima velocità in avanti o indietro. Ma, se vuoi controllare la velocità, rimuovi semplicemente il ponticello e collega invece un pin PWM.
  13. Primo terminale del motore CC B

    Secondo terminale del motore CC B

Il numero di pin del motore del driver L298N lo fa sembrare difficile da usare. Ma in realtà è abbastanza semplice, e dimostriamolo con un esempio funzionante, in cui lo usiamo per controllare la direzione di rotazione di entrambi i nostri motori.

Collegare PICO al driver del motore come segue "troverete lo schema sopra":

  • In1 → D0
  • In2 → RE1
  • In3 → RE2
  • In4 → RE3

La direzione del motore è controllata inviando un valore logico ALTO e BASSO tra ciascuna coppia di pin del driver In1/2 e In3/4. Ad esempio, se si invia ALTO a In1 e BASSO a In2 fa sì che il motore ruoti in una direzione e l'invio di BASSO a In1 e ALTO a In2 fa ruotare il motore nella direzione opposta. Ma, se si inviano gli stessi segnali ALTO o BASSO contemporaneamente sia a In1 che a In2, i motori si fermeranno.

Non dimenticare di collegare il GND di PICO con il GND della batteria e non rimuovere i ponticelli Enable A e Enable B.

Troverai anche il codice di questo esempio sopra.

Passaggio 3: aggiunta di PWM al modulo driver L298N

Aggiunta di PWM al modulo driver L298N
Aggiunta di PWM al modulo driver L298N
Aggiunta di PWM al modulo driver L298N
Aggiunta di PWM al modulo driver L298N

Ora possiamo controllare la direzione di rotazione dei nostri motori. Ma non possiamo ancora controllare le loro velocità, poiché abbiamo una fonte di tensione costante che fornisce loro la massima potenza che possono assorbire. E per farlo, hai bisogno di due pin PWM per controllare entrambi i tuoi motori. Sfortunatamente, PICO ha solo 1 uscita PWM, che dobbiamo espandere utilizzando il modulo PCA9685 OWM, e questo fantastico modulo può espandere il tuo PWM da 1 a 16!

Pinout PCA9685:

  1. VCC → Questa è la tua potenza logica, con 3-5v max.
  2. GND → Il pin negativo deve essere collegato a GND per completare il circuito.
  3. V+ → Questo pin distribuisce la potenza proveniente da una fonte di alimentazione esterna, viene utilizzato principalmente con motori che necessitano di grandi quantità di corrente e necessitano di una fonte di alimentazione esterna.
  4. SCL → Pin di clock seriale, che colleghi all'SCL di PICO.
  5. SDA → Pin dati seriale, che si collega alla SDA di PICO.
  6. OE → Pin di abilitazione uscita, questo pin attivo è BASSO, il che significa che quando il pin è BASSO, tutte le uscite sono abilitate e quando è ALTO tutte le uscite sono disabilitate. Questo è un pin opzionale, con il valore predefinito tirato su LOW.

Il modulo PWM PCA9685 dispone di 16 uscite PWM, ognuna con il proprio segnale V+, GND e PWM che è possibile controllare indipendentemente dagli altri. Ogni PWM può gestire 25 mA di corrente, quindi fai attenzione.

Ora arriva la parte in cui utilizziamo il modulo PCA9685 per controllare la velocità e la direzione dei nostri motori, ed è così che colleghiamo PICO ai moduli PCA9685 e L298N:

PICO a PCA9685:

  1. D2 (PICO) SDA (PCA9685)
  2. D3 (PICO) SCL (PCA9685)

PCA9685 a L298N:

  1. PWM 0 (PCA9685) → In1 (L298N), per controllare la direzione del motore A
  2. PWM 1 (PCA9685) → In2 (L298N), per controllare la direzione del motore A
  3. PWM 2 (PCA9685) → In3 (L298N), per controllare la direzione del motore B
  4. PWM 3 (PCA9685) → In4 (L298N), per controllare la direzione del motore B
  5. PWM 4 (PCA9685) → enableA (L298N), per inviare il segnale PWM che controlla la velocità del motore A.
  6. PWM 5 (PCA9685) → enableB (L298N), per inviare il segnale PWM che controlla la velocità del motore B.

Troverai il codice per tutte queste parti allegato sopra.

Passaggio 4: utilizzo del sensore di rilevamento della linea

Utilizzo del sensore di rilevamento della linea
Utilizzo del sensore di rilevamento della linea
Utilizzo del sensore di rilevamento della linea
Utilizzo del sensore di rilevamento della linea

Il tracker di linea è piuttosto semplice. Questo sensore ha la capacità di distinguere tra due superfici, a seconda del contrasto tra di esse, come in bianco e nero.

Il sensore tracker di linea ha due parti principali, il LED IR e il fotodiodo. Può riconoscere i colori emettendo luce IR dal LED e leggendo i riflessi che ritornano al fotodiodo, quindi il fotodiodo emette un valore di tensione dipendente dalla luce riflessa (valore ALTO per una superficie chiara "brillante", e un valore BASSO per una superficie scura).

I pinout del tracker di linea:

  1. A0: questo è il pin dell'uscita analogica e lo usiamo se vogliamo una lettura dell'ingresso analogico (0-1023)
  2. D0: questo è il pin dell'uscita digitale e lo usiamo se vogliamo una lettura dell'ingresso digitale (0-1)
  3. GND: questo è il pin di terra e lo colleghiamo al pin GND di PICO
  4. VCC: questo è il pin di alimentazione e lo colleghiamo al pin VCC di PICO (5v)
  5. Potenziometro: viene utilizzato per controllare la sensibilità del sensore.

Testiamo il sensore del tracker di linea con un semplice programma che accende un LED se rileva una linea nera e spegne il LED se rileva una superficie bianca durante la stampa della lettura del sensore sul monitor seriale.

Troverai il codice di questo test allegato sopra.

Passaggio 5: mettere tutto insieme

Image
Image
Mettere tutto insieme
Mettere tutto insieme

L'ultima cosa che dobbiamo fare è mettere tutto insieme. Poiché li abbiamo testati tutti individualmente e tutti funzionano come previsto.

Manterremo PICO, i moduli PCA9685 e L298N collegati così come sono. Quindi, aggiungiamo i sensori di follower di linea alla nostra configurazione esistente, ed è come segue:

  1. VCC (tutti i sensori di tracciamento della linea) → VCC (PICO)
  2. GND (tutti i sensori di tracciamento della linea) → GND (PICO)
  3. D0 (Sensore tracker linea destra) → A0 (PICO)
  4. D0 (Sensore inseguitore linea centrale) → A1 (PICO)
  5. D0 (Sensore tracker linea sinistra) → A2 (PICO)

Questo è il codice finale che controllerà la tua auto e le dirà di seguire una linea, una linea nera su uno sfondo bianco nel nostro caso.

Consigliato: