Sommario:

Serbatoio Lego Raspberry Pi 3 FPV: 5 passaggi (con immagini)
Serbatoio Lego Raspberry Pi 3 FPV: 5 passaggi (con immagini)

Video: Serbatoio Lego Raspberry Pi 3 FPV: 5 passaggi (con immagini)

Video: Serbatoio Lego Raspberry Pi 3 FPV: 5 passaggi (con immagini)
Video: Корпус лего для Raspberry Pi 3 2024, Novembre
Anonim
Serbatoio Lego Raspberry Pi 3 FPV
Serbatoio Lego Raspberry Pi 3 FPV

Lego è ottimo per insegnare ai bambini come funzionano le cose e allo stesso tempo farli divertire. So che mi è sempre piaciuto "giocare" con i lego quando ero bambino. Questa istruzione descrive come ho costruito un carro armato FPV (First Person View) con lego e un Raspberry Pi 3 (Raspi 3). ho cercato di mantenerlo il più semplice possibile, solo il passaggio in cui si adattano i motori per lavorare con i lego richiede strumenti e un po' di abilità.

Il serbatoio utilizza fondamentalmente due motori, quindi se non vuoi un serbatoio puoi creare un robot di tipo Romba, la costruzione sarà diversa ma il cablaggio e i programmi saranno esattamente gli stessi.

### Questo progetto è fondamentalmente una versione 1, quindi se vuoi migliorarlo (di cui c'è molto spazio da fare) lascia un commento. Inoltre tutto il codice sarà disponibile, sulla mia pagina Github, i collegamenti sono nei passaggi

Cose di cui avrai bisogno:

  • Alcuni Lego, ho usato un camion artico Lego Technic che avevo in giro. Usa la tua immaginazione però, questo set aveva tracce e tutto per farle funzionare, quindi è stato un bene per questo progetto.
  • Un Raspberry Pi, ho usato un Raspberry Pi 3 perché è quello che avevo, se hai un modello diverso potresti essere in grado di farlo funzionare ma i pin GPIO saranno diversi.
  • Una scheda micro SD con Raspian installato, per Raspi 3.
  • Una fotocamera Pi, Adafruit vende alcuni cavi a nastro e diversi di varie lunghezze. Una miniera acquistata da Aliexpress, ha un obiettivo fisheye ed è economica. Potresti essere in grado di utilizzare una webcam, ma una fotocamera Pi funziona immediatamente.
  • Un Power Bank USB per alimentare il Raspi 3, penso che il mio costi $ 8, i suoi 2000 mAh quindi fanno funzionare il Raspi 3 per un po'.
  • Una batteria per alimentare i motori, ho usato una batteria che ho preso da un'auto RC economica, è 7,2 volt, 500 mAh e ricaricabile, quindi funziona abbastanza bene. Una batteria da 9V andrebbe bene, ma ti servirà anche un connettore.
  • Cavi jumper, per collegare i pin GPIO insieme, almeno 5 femmina a femmina.
  • L298N Motor Driver Board, sono piuttosto economici e ti consentono di controllare i motori separatamente. Questi sono anche abbastanza standard per questo tipo di applicazione.
  • 2 x motore del cambio DC, questi di Adafruit sono buoni, lo stesso identico può essere acquistato anche da Aliexpress

Varie

  • Nastro biadesivo in schiuma
  • filo
  • termoretraibile
  • nastro
  • elastici
  • cavo micro USB

Se hai intenzione di adattare i motori del cambio DC come ho fatto io, allora avrai bisogno di:

  • taglierino
  • dremel con lama per sega circolare
  • mini file
  • Resina epossidica 5 minuti

Avrai anche bisogno del tuo PC/laptop per controllare e programmare il Raspi 3.

Passaggio 1: costruisci il serbatoio

Costruisci il serbatoio
Costruisci il serbatoio
Costruisci il serbatoio
Costruisci il serbatoio
Costruisci il serbatoio
Costruisci il serbatoio

Quindi queste non sono davvero istruzioni perché questo passaggio dovrebbe essere davvero il tuo design. Parlerò di alcune delle cose che ho dovuto considerare durante la costruzione di questo, ma il vero divertimento sta nello scoprirlo da soli (proprio come il vero Lego). Usa le foto se sono utili, mi ci sono voluti anni per sviluppare questo design, alla fine, la strada semplice è stata la migliore.

  1. Costruisci prima gli assi posteriori

    1. e assicurati di lasciare abbastanza spazio per i motori e rendili abbastanza larghi da consentire ai tuoi componenti di adattarsi all'interno. Volevo che il mio fosse abbastanza largo perché volevo che tutto si trovasse all'interno degli assi, questo ha permesso al serbatoio di essere abbastanza basso per adattarsi alle cose e inseguire il gatto.
    2. Le ruote sui binari qui hanno un foro che si adatta a un asse trasversale Lego, quindi tieni presente che è qui che verranno montati i tuoi motori.
    3. Hai bisogno di spazio sufficiente per la pista nella parte posteriore e anteriore. Si può notare nella foto 2 che i pezzi ad "L" non sono semetrici, questo per lasciare spazio alla pista. Inizialmente li avevo semetrici, ma la pista continuava a sfregare e a un certo punto si è inceppata e ha rotto l'adattatore del motore.
  2. Una volta costruiti gli assi, puoi collegarli

    1. utilizzando punte lunghe con supporti incrociati a intervalli regolari. Assicurati di distanziare i supporti trasversali in modo che i componenti si adattino tra loro, questo aiuta a mantenere un profilo basso.
    2. la lunghezza sarà determinata da quanta traccia hai. Questa pista non ha tratto quindi è necessario un po' di lasco. Se hai un cingolo in gomma puoi renderlo più stretto. Anche una ruota da corsa è una bella idea, ma nel complesso non è necessaria.
    3. Questo passaggio è stato meschino e richiede solo un po' di tentativi ed errori.
  3. I motori sono essenzialmente attaccati con nastro biadesivo in schiuma in modo da fornire un'ampia superficie su cui incollarli.
  4. Il supporto per fotocamera che ho realizzato è piuttosto scadente, dovresti assolutamente provare a crearne uno tuo. Mi piace basso perché sembra che tu stia viaggiando velocemente sulla fotocamera. Questo sarebbe un bel posto per aggiornare con un servo o due per rendere mobile la fotocamera.

Speriamo che queste note siano utili. Ho costruito questa cosa prima di scrivere l'istruibile e sono un po' riluttante a smontarla ora che sta andando. Credo davvero che si possa realizzare un design migliore, quindi penso che il tuo sviluppo sarebbe il migliore. Lascia un commento se vuoi che lo trasformi in una guida completa, se c'è abbastanza richiesta lo farò.

Passaggio 2: adattatore dal motore del cambio CC all'adattatore Lego

Adattatore da motore a cambio CC a Lego
Adattatore da motore a cambio CC a Lego
Adattatore da motore a cambio CC a Lego
Adattatore da motore a cambio CC a Lego
Adattatore da motore a cambio CC a Lego
Adattatore da motore a cambio CC a Lego

Ancora una volta, l'ho fatto prima di scrivere e non ho scattato foto. Penso che ci siano un sacco di tutorial diversi là fuori che lo fanno. Adafruit vende effettivamente un adattatore, questo è il modo migliore, inoltre non è necessario distruggere i supporti del motore. Sono in Nuova Zelanda, quindi Adafruit non è disponibile, ma il fai-da-te lo è:-). Questo è quello che ho fatto (mi scuso per i cattivi diagrammi):

  1. Prepara tutti i tuoi strumenti, taglieremo la plastica, quindi non sarà molto difficile. Ho usato un paio di occhiali da officina perché personalmente odio i piccoli pezzi di plastica su tutti i miei bulbi oculari. Ho anche usato uno di quei taglieri verdi per non rovinare il mio tavolo.
  2. Quindi il diagramma mostra una vista dall'alto e laterale. Fondamentalmente, il grigio è la piccola parte bianca sul motore del cambio DC e il rosso è dove abbiamo tagliato. Il rosso nella vista dall'alto dovrebbe essere in realtà una sezione trasversale per un asse trasversale Lego. Rimuoveremo quel materiale in modo che l'asse si adatti perfettamente all'interno. Prova a tagliarlo il più vicino possibile al centro e quasi fino in fondo. Ho iniziato tagliando grossolanamente con la punta della sega circolare sul mio dremel, poi ho iniziato a tagliare le punte con un taglierino fino a quando non ho ottenuto una perfetta aderenza.
  3. Una volta che hai tagliato quel pezzo e l'asse si adatta più o meno dritto (dovrebbe sembrare una strana forcella piegata a metà) puoi applicare la resina epossidica sull'asse trasversale del Lego. Prima di applicare qualsiasi resina epossidica assicurati di applicare del nastro adesivo sulla custodia gialla del motore in modo da non far aderire accidentalmente l'albero al carter. Mescolare bene la resina epossidica da 5 minuti e applicare uno strato spesso sulla punta bianca e sull'asse trasversale, stiamo cercando uno strato spesso di 1-2 mm. La resina epossidica di 5 minuti diventa appiccicosa e inutilizzabile abbastanza rapidamente, quindi lavora velocemente qui.
  4. Una volta che hai applicato una mano di vernice e la resina epossidica non funziona, dovresti aver finito. Funziona un po 'quindi fai attenzione. Una volta che è impostato su una consistenza simile alla gomma, puoi facilmente eliminare l'eccesso di resina epossidica, è così che ho ottenuto una bella estremità piatta sul mio.
  5. Lascialo asciugare tutta la notte e dovresti avere un motore del cambio DC Lego entro la mattina

Passaggio 3: cablarlo

Cablaggio
Cablaggio
Cablaggio
Cablaggio
Cablaggio
Cablaggio

Il cablaggio per questo progetto è piuttosto semplice. Useremo i 4 cavi jumper femmina-femmina per collegare i nostri pin GPIO al controller del motore L298N e un cavo jumper maschio-femmina per collegare la terra del Raspi 3 alla terra del controller del motore L298N. Utilizzeremo anche del filo per collegare i motori al controller del motore L298N.

Scelgo di usare questa combinazione di pin sul Raspi perché sono raggruppati insieme. Tuttavia, sentiti libero di utilizzare qualsiasi set di pin GPIO e GND. Ricorda solo di cambiarlo nel codice.

È possibile utilizzare lo schema elettrico o seguire i passaggi seguenti:

Raspi 3 L298N

GND (pin 14) GND

GPIO27 (pin 13) IN1

GPIO22 (pin 15) IN2

GPIO23 (pin 16) IN3

GPIO24 (pin 18) IN4

Per i motori e il modo in cui sono montati li ho cablati in questo modo.

Out2, Out3 negativo

Out1, Out4 positivo

Essenzialmente negativo era verso la parte posteriore e positivo era in avanti. Se li ottieni al contrario, il serbatoio guida solo nella direzione opposta che è facile da risolvere nel software.

Passaggio 4: la programmazione

Quindi per questo passaggio avremo bisogno di impostare alcune cose se non l'hai già fatto.

  • Raspian
  • Python 2 o 3
  • Idiota
  • MJPG-Streamer

Installazione di Raspian

Per prima cosa dobbiamo avere Raspian su una scheda micro SD, quindi prepara una SD formattata di almeno 8 GB (puoi anche installare NOOBS lite se hai solo una scheda da 4 GB).

Per installare Raspian consiglierei di usare NOOBS. Il link ufficiale è qui. Scarica il file zip sul tuo PC ed estrai i file nella scheda SD. Assicurati che i file e le cartelle siano presenti e non all'interno di una cartella niubbo.

Una volta fatto ciò, collega la scheda SD al Raspi 3, collega uno schermo (una TV con HDMI funziona bene se non hai un monitor) e una tastiera e un mouse.

Dovresti vedere la schermata di installazione caricare, connetterti al wifi (il wifi è necessario per far funzionare questo progetto) e installare, io uso solo le impostazioni predefinite perché funzionano bene.

Configurazione per la modalità headless

Quindi, una volta installato Raspian e aver effettuato l'accesso a Raspi 3, è possibile iniziare a configurare Raspi 3 per l'esecuzione in modalità headless (ovvero utilizzare SSH invece di schermo e tastiera). Solo una nota che dovrai usare sudo, quindi assicurati di conoscere la password di root.

Apri un terminale e digita "sudo raspi-config", dovresti avere una schermata blu e grigia come nelle immagini. Passare a "Opzioni interfaccia", premere invio, quindi passare a "P2 SSH", premere invio e immettere di nuovo per "sì", di nuovo per "ok".

Ora torna alle "opzioni di interfaccia" e abilita la fotocamera.

Tornando al menu, premi il tasto destro e invio per selezionare 'Fine'.

Quindi dobbiamo trovare il nostro indirizzo IP, puoi farlo digitando "ifconfig" nel terminale. Trova il blocco che inizia con wlan0 (di solito l'ultimo) e annota il tuo indirizzo IP. Dovrebbe essere sulla seconda riga e assomigliare a questo 192.168.1. XX se stai usando il wifi di casa.

Fantastico, questa è la fine della configurazione

Installazione di software aggiuntivo

Quindi, per eseguire gli script che ho, dovrai avere python 2 o 3 installato. Se vuoi imparare Python, consiglierei di imparare Python 3, le differenze sono minori ma Python 3 è ora più ampiamente utilizzato. Dovrebbe essere preinstallato con Raspian, ma dovremmo solo ricontrollare.

Digita "python --version", dovresti ottenere un output come "Python 2.7.13", il che significa che hai installato Python 2. Per verificare se hai python 3 digita semplicemente 'python3 --version' e dovresti ottenere un output simile. Se non hai python 2 o 3, puoi digitare rispettivamente "sudo apt-get install python" o "sudo apt-get install python3".

Avrai anche bisogno di Git per ottenere il codice, di nuovo, dovrebbe essere preinstallato. Digita "git --version" per controllare e usa "sudo apt-get install git" se non ce l'hai.

Installazione di MJPG-Streamer

MJPG-Streamer è uno dei modi in cui ho avuto accesso a Picamera. Ti consente di accedere alla telecamera tramite un browser e manipolare l'immagine. È probabilmente il modo più semplice e piacevole di utilizzare la fotocamera se non ti senti a tuo agio con il codice.

  1. Ancora una volta useremo Git. Digita "git clone https://github.com/jacksonliam/mjpg-streamer.git" nel terminale Raspi 3. Il software verrà scaricato, non ci vorrà troppo tempo.
  2. Probabilmente la cosa migliore da fare a questo punto è guardare il file 'README.md' e seguire le istruzioni di installazione. Hanno funzionato perfettamente per me. Se hai domande, lasciale nei commenti e cercherò di aiutarti

Una volta installato puoi eseguirlo. Esaminerò come lo faccio di seguito.

Mettere tutto insieme

Ottimo, ora dovremmo essere pronti per partire. Assicurati che il tuo Raspi 3 sia acceso. Sul tuo PC/laptop, apri un terminale (suppongo che tu stia usando Linux o Mac, se usi Windows dovrai scaricare putty. Ci sono molti tutorial online su come usarlo, non preoccuparti, è facile) e digita 'ssh [email protected]. XX (supponendo che tu non abbia cambiato il nome utente predefinito) o qualunque sia il tuo indirizzo IP che abbiamo trovato in precedenza. Digita la tua password (questa non dovrebbe assolutamente essere l'impostazione predefinita). Ottimo, ora sei in una sessione terminale sul Raspi 3 tramite il tuo PC/laptop.

Quindi, nel terminale digita 'git clone https://github.com/astrobenhart/Raspi-3-FPV-Lego-T… Questo dovrebbe richiedere solo pochi secondi poiché i file sono davvero piccoli. Puoi quindi navigare nella directory usando 'cd Raspi-3-FPV-Lego-Tank', ora digita 'ls' e assicurati di vedere questi 5 file: 'demo.py', 'drive.py', 'Picamera_tank. py, "finito.jpg" e "README.md". Assicurati di guardare il readme per eventuali aggiornamenti.

demo.py

Questo script py è ottimo per testare che il cablaggio funzioni. Passa semplicemente attraverso diverse combinazioni di guida dei motori avanti e indietro.

usa 'python demo.py' per eseguire. Ci vuole mezzo minuto o giù di lì per completare.

drive.py

Questo è lo script py che eseguirai per controllare il serbatoio. Imposta la mappatura dei pin GPIO e crea defs per lo spostamento. Cattura anche le pressioni dei tasti per controllare il serbatoio.

Usa 'python drive.py' per eseguire. Dagli un secondo, il tuo terminale dovrebbe diventare vuoto.

usa 'w, a, s, d' per spostarti e la barra spaziatrice per fermarti. Quando sei pronto per chiudere il programma, premi 'n'.

Picamera_tank.py

Questa è la mia versione di uno streamer per la fotocamera. Funziona solo con python 3 (ovvero usa 'python3 Picamera_tank.py' per l'esecuzione). Questo può essere eseguito in una seconda finestra del terminale oppure puoi premere ctrl-z e digitare bg per eseguirlo in background sullo stesso terminale. Personalmente mi piace usare un terminale separato.

Non dovresti installare nulla in più, ma se usi pip. Se riscontri problemi, lascia un commento.

Una volta che questo è in esecuzione sul Raspi 3, accedi al browser del tuo PC/laptop e vai a 192.168.1. XX:8000 (l'IP che abbiamo trovato in precedenza). Dovresti vedere l'output della fotocamera. Se l'immagine deve essere ruotata, dovrai modificare lo script py. In fondo c'è un commento, sotto inserisci i gradi di rotazione di cui hai bisogno. Per me era 180 perché la mia fotocamera è capovolta.

Per eseguire MJPG-Streamer

Per eseguire MJPG-Streamer, vado su 'mjpg-streamer/mjpg-streamer-experimental' ed eseguo './mjpg_streamer -o "output_http.so -w./www" -i "input_raspicam.so -hf"'.

Una volta che è in esecuzione, vai a 192.168.1. XX:8080 (l'IP che abbiamo trovato in precedenza) e fai clic su streaming. Gioca con le altre opzioni, potrebbero esserti utili.

E questo è tutto. Ora dovresti essere in grado di guidare il tuo serbatoio FPV ovunque tu possa ottenere il tuo wifi. Divertiti.

Passaggio 5: prodotto finito

Ed ecco un video di tutto ciò che funziona.

Solo una nota che ho il Raspi 3 collegato al mio laptop per alimentarlo nel video mentre il power bank si è esaurito durante alcuni test. È durato quasi un'ora di cui ero abbastanza contento.

Per favore lascia commenti se ne hai e spero che ti diverta a realizzare questo serbatoio Lego FPV Raspberry Pi 3 se ci provi.

Grazie, Ben

Consigliato: