Menu
Gratis
Registrazione
Casa  /  Da dove iniziare a pianificare/ Realizzare un carro armato radiocomandato utilizzando Arduino Nano. Serbatoio autonomo su Arduino Serbatoio Arduino con controllo bluetooth - montaggio

Realizzare un carro armato radiocomandato utilizzando Arduino Nano. Serbatoio autonomo su Arduino Serbatoio Arduino con controllo bluetooth - montaggio


Nei materiali precedenti, abbiamo esaminato i video sulla realizzazione di vari giocattoli radiocomandati. Continuiamo questo argomento. Questa volta ti invitiamo a familiarizzare con il processo di produzione di un carro armato radiocomandato.

Avremo bisogno di:
- telaio finito;
-Arduino Nano;
- 3 servi;
- sistema rotativo;
- pistola giocattolo;
-Joystick PS2;
- ricevitore al joystick;
- scatola batteria;
- batterie ricaricabili;
- fili;
- laser.

Il telaio finito, il cui link per l'acquisto è fornito alla fine del materiale, ha due motori, due cambi, un interruttore e un vano per le batterie. Secondo l'autore dell'idea, acquistare un telaio già pronto costerà meno che realizzarlo da soli. Se le batterie che intendi utilizzare non entrano nel vano del telaio, come nel caso dell'autore, puoi nascondere lì il driver del motore.

Il primo passo è collegare il ricevitore del joystick al telaio. Per fare ciò, rimuovere il coperchio da esso.

Rimuoviamo anche il coperchio dal cambio.

Realizziamo due fori sul coperchio che serviranno a fissare il coperchio con le viti.

Riempi i dadi che fissano le viti con la colla in modo che non si svitino durante la guida e cadano nel cambio.

Ora è necessario collegare il driver del motore. Secondo l'autore, quando si utilizzano cavi con connettori speciali, il vano non si chiuderà completamente, quindi è necessario mordere i connettori, spellare i fili e saldarli direttamente alle uscite del driver.

Prima di installare il driver, è necessario occuparsi del sistema di rotazione della volata del serbatoio. Per fare ciò, smontiamo il sistema rotante in plastica e vi installiamo due servi. Il primo sarà responsabile dei movimenti orizzontali e il secondo di quelli verticali.

Rimettere insieme il sistema rotativo.

Installiamo il sistema sullo scafo del serbatoio.

È necessario realizzare 3 fori aggiuntivi nell'alloggiamento. Due di essi sono necessari per i cavi del motore e il foro largo è necessario per il bus nel controllo del driver del motore.

La pistola deve essere collegata a un servoazionamento. Per fare questo basta fare un foro nel servoazionamento e nel corpo della pistola e collegarlo con una vite.

La prossima cosa che devi fare è collegare il grilletto della pistola al servo. Per fare ciò, praticare dei fori sul grilletto e sull'attacco del servoazionamento. Colleghiamo gli elementi con un pezzo di filo.

Nella parte superiore del sistema rotante devono essere praticati due fori passanti che devono passare anche attraverso la canna della pistola. Questi fori verranno utilizzati per installare la testata sul sistema rotante.

Passiamo alla programmazione della scheda Arduino Nano.

Assembliamo i componenti rimanenti secondo lo schema seguente.

Sulla parte superiore del telaio installiamo pezzi di righelli che fungeranno da ali. Installiamo i vani batteria sulle ali.

Incolliamo il laser alla canna con colla a caldo.

Il nostro carro armato radiocomandato è pronto.

Il robot è costituito dal telaio di un carro armato RC e da numerosi altri componenti, il cui elenco è riportato di seguito. Questo è il mio primo progetto su e mi è piaciuta la piattaforma Arduino. Durante la creazione di questo robot, ho utilizzato materiali presi da libri e da Internet.

Materiali richiesti
1. Telaio di un carro armato radiocomandato.
2.ArduinoUno.
3. Breadboard e ponticelli.
4. Driver motore integrato SN754410NE.
5. Servoazionamento standard.
6. Telemetro ad ultrasuoni.
7. Batteria da 9 V e relativo connettore.
8. 4 batterie D e un connettore per loro.
9. Cavo USB A-B.
10. Base 6" x 6".

Utensili
1. Set di cacciaviti.
2. Pistola per colla a caldo.
3. Saldatore e saldatore.

Telaio

Ho preso il telaio da un serbatoio che ho comprato per $ 10. La base può essere attaccata ovunque, ma io l'ho attaccata al centro.

Driver del motore SN754410NE

Per controllare i motori ho utilizzato il driver SN754410NE. L'ho usato perché ce l'avevo, ma puoi usarne un altro, come L293.

Ora parliamo di collegare il driver ad Arduino Uno. Collegare tutti i pin GND (4,5,12,13) ​​a GND della breadboard. Collega i pin 1 e 16 del driver ai pin 9 e 10 di Arduino. Collega i pin 2 e 7 del driver ai pin 3 e 4 dell'Arduino, questi sono i pin di controllo del motore sinistro. Collega i pin 10 e 15 del driver ai pin 5 e 6 dell'Arduino, questi sono i pin di controllo del motore destro. Collegare i contatti 3 e 6 al motore sinistro e i contatti 14 e 11 a destra. I pin 8 e 16 devono essere collegati all'alimentazione sulla breadboard. Alimentazione: batteria da 9 V.

Un telemetro a ultrasuoni aiuta il robot a evitare gli ostacoli durante lo spostamento. Si trova su un servo standard, situato nella parte anteriore del robot. Quando il robot individua un oggetto a 10 cm di distanza, il servo inizia a girare, cercando un passaggio, e poi Arduino decide da che parte è più piacevole muoversi.
Attacca un connettore ad esso. Limitare il servo in modo che non possa ruotare più di 90 gradi in ciascuna direzione.

Il sensore ha tre contatti GND, 5V e un segnale. Collega GND a GND, 5V a 5V Arduino e collega il segnale al pin 7 di Arduino.

Nutrizione

Arduino si alimenta con una batteria da 9V tramite l'apposito connettore. Per alimentare i motori ho utilizzato 4 batterie formato D e l'apposito connettore. Per alimentare i motori collegare i cavi dal supporto alla scheda con SN754410NE.

Assemblea

Una volta pronti tutti i pezzi, è il momento di assemblarli. Per prima cosa dobbiamo collegare l'Arduino alla base. Quindi, utilizzando la colla a caldo, fissiamo il telemetro con un servoazionamento alla parte anteriore del robot. Quindi è necessario collegare le batterie. Puoi posizionarli dove preferisci, ma io li ho posizionati accanto ad Arduino. Quando tutto è pronto, puoi accendere il robot per assicurarti che Arduino funzioni.

Programma

Quindi, dopo aver assemblato il robot, è il momento di scriverne il programma. Dopo aver trascorso diversi giorni, l'ho scritto.
Il robot si muoverà in linea retta finché l'oggetto sarà a più di 10 cm di distanza. Quando nota l'oggetto, inizia a ruotare il sensore, cercando un percorso. Una volta completata la scansione, il programma seleziona il lato ottimale per il movimento. Se il robot si trova in un vicolo cieco, gira di 180 gradi.
Il programma è scaricabile qui sotto. Puoi modificarlo e integrarlo.

Questo post sarà il primo test per vedere se questo è interessante per qualcun altro oltre a me. In esso descriverò la struttura generale, le tecnologie e i dispositivi utilizzati.

AGGIORNAMENTO: video aggiunto.


Tanto per cominciare piccolo video per attirare l'attenzione. Il suono proviene dall'altoparlante del carro armato.

Dove tutto ha avuto inizio

Molto tempo fa sognavo di realizzare un robot su un telaio cingolato che potesse essere sterzato a distanza. Il problema principale era la mancanza di un telaio con cingoli diretti. Alla fine avevo già deciso di acquistare un carro armato radiocomandato da smontare, ma ho avuto fortuna in negozio, tra la spazzatura, ho trovato un carro armato Snow Leopard (Pershing) - USA M26 con l'elettronica bruciata, ma un carro armato radiocomandato da smontare. parte meccanica completamente riparabile. Questo era esattamente ciò di cui avevamo bisogno.

Oltre al telaio sono stati acquistati due regolatori di tensione per motori a spazzole, un treppiede per fotocamera composto da due servi, una webcam con supporto hardware mjpeg e una scheda WiFi esterna TP-LINK TL-WN7200ND. Poco dopo, all'elenco dei dispositivi furono aggiunti un altoparlante portatile, un altoparlante audio USB Creative SoundBlaster Play e un semplice microfono, oltre a un paio di hub USB per collegare tutto questo al modulo di controllo, che divenne il Raspberry Pi. La torretta del serbatoio fu smontata; lo sterzo era molto scomodo, poiché tutta la meccanica standard era costruita su motori convenzionali senza feedback.

Vorrei subito prenotare che le foto siano state scattate quando il serbatoio era quasi pronto e non durante il processo di produzione.

Alimentazione e cablaggio


Ho inserito la batteria Li-Po più grande che potesse entrare nel vano batteria. Si è rivelata una batteria a due celle da 3300 mAh in una custodia rigida, che di solito viene utilizzata nei modellini di auto. Ero troppo pigro per saldare, quindi per tutte le commutazioni ho utilizzato una breadboard standard con un passo di 2,54. Successivamente ne è apparso un secondo sul coperchio superiore e un cavo che li collegava. Per ciascuno dei due motori avevo il mio regolatore di tensione che, come bonus, fornisce una potenza stabilizzata di circa 5,6 volt. Il Raspberry e la scheda WiFi erano alimentati da un regolatore, l'alimentazione dal secondo andava ai servi e ad un hub USB con le periferiche.

Devo farlo muovere

Doveva essere avviato in qualche modo. Il lampone non è stato scelto a caso. In primo luogo, ti consente di installare un normale Linux a tutti gli effetti e, in secondo luogo, ha un sacco di gambe GPIO che, tra le altre cose, possono generare un segnale di impulso per servi e regolatori di velocità. È possibile generare tale segnale utilizzando l'utilità ServoBlaster. Dopo il lancio, crea un file /dev/servoblaster, nel quale puoi scrivere qualcosa come 0=150, dove 0 è il numero del canale e 150 è la lunghezza dell'impulso in decine di microsecondi, cioè 150 è 1,5 millisecondi (la maggior parte i servi hanno un intervallo di valori 700-2300 ms).
Colleghiamo quindi i regolatori ai pin 7 e 11 del GPIO e lanciamo il servoblaster con il comando:

# servod --min=70 --max=230 --p1pins=7.11
Ora, se scrivi le righe 0=230 e 1=230 in /dev/servoblaster, il carro armato correrà in avanti.

Probabilmente abbastanza per la prima volta. Se l’articolo ti è piaciuto, scriverò pian piano i dettagli nei post successivi. E infine, qualche altra foto e un video appena girato. È vero, la qualità non era molto buona, quindi mi scuso in anticipo con gli esteti.

Un carro armato Arduino con controllo Bluetooth è un ottimo esempio di quanto facilmente e senza conoscenze particolari sia possibile trasformare un normale carro armato radiocomandato in un fantastico giocattolo controllato da un dispositivo Android. Inoltre, non dovrai nemmeno modificare il codice; un software specializzato farà tutto. Potresti aver letto il mio precedente articolo sulla conversione di un modello di auto radiocomandata in controllo. Con un carro armato, tutto è quasi uguale, solo che puoi anche ruotare la torretta e modificare l'angolo di elevazione della canna.

Per cominciare, presento breve panoramica possibilità del mio mestiere:

Ora prendiamo tutto in ordine.

Serbatoio Arduino con controllo bluetooth - hardware.

La cosa più importante nell'hardware è telaio, cioè carrozzeria. Senza il serbatoio stesso, non funzionerà nulla per noi. Quando si sceglie un caso, prestare attenzione a spazio libero dentro. Dovremo posizionare lì un numero impressionante di componenti. Mi sono imbattuto in questa opzione e lavoreremo con essa.

Donatore per il nostro progetto.

Inizialmente era difettoso. Volevo restaurarlo, ma inorridito dalla qualità costruttiva del piano di lavoro, ho deciso che un rifacimento sarebbe stato più affidabile. E delizierò i bambini con un vecchio gadget controllato in un modo nuovo.

Dimensioni: 330x145x105 millimetri esclusa la canna. Lo scafo è dotato di quattro motori: due per la propulsione, uno per la torretta e uno per la canna. Inizialmente, il carro armato era in grado di sparare proiettili di gomma, ma il meccanismo era rotto, quindi l'ho semplicemente tagliato dalla canna. Successivamente c'era abbastanza spazio per posizionare il ripieno.

Scarica e installa il programma dal sito Web ufficiale e installalo, puoi semplicemente decomprimere la versione portatile. Successivamente, apri il mio file di progetto al suo interno e fai clic sul pulsante del firmware nella parte superiore dell'interfaccia (settimo da sinistra).

Interfaccia FLProg

Si aprirà ArduinoIDE, ma sai come lavorarci 😀 .

Serbatoio Arduino con controllo bluetooth - schema di collegamento

Colleghiamo alla scheda elementi periferici, nel nostro caso bluetooth, bridge e led, secondo progetto.

Elenco dei pin utilizzati

L'elenco mostra i numeri pin di Arduino e il loro scopo. Tutto è commentato. I contatti di controllo del movimento e della torretta con la canna sono collegati direttamente dai ponti, non è richiesto alcun kit corpo aggiuntivo. Il collegamento dell'ingresso analogico per la misurazione della tensione deve essere effettuato tramite un partitore resistivo poiché la tensione di bordo dell'arduino è CINQUE VOLT!!!

Questo è molto importante; quando viene superata la tensione di soglia del microcircuito, il controller viene inviato in un altro mondo. Quindi fai attenzione. Nel mio caso sono state utilizzate due batterie agli ioni di litio del formato 18650, un divisore da 1 KOhm e resistenze da 680 Ohm. Se la tua tensione operativa è diversa dalla mia, vai su qualsiasi calcolatore online per calcolare il divisore resistivo e calcolalo tu stesso, in base al fatto che la sua tensione di uscita dovrebbe essere pari a cinque volt. Se dubiti delle tue capacità, non devi affatto utilizzare la misurazione della tensione sulla batteria, funzionerà lo stesso; Ho smesso di guidare così: è ora di caricare.

I LED, se presenti, devono essere collegati tramite resistori limitatori di corrente.

Serbatoio Arduino con controllo bluetooth - programma per tablet o smartphone. Come in modello precedente Utilizzeremo un programma per dispositivi Android chiamato HmiKaskada. Sto postando versione gratuita

questo programma, che può essere scaricato da YandexDisk. Il mio progetto è realizzato in una versione a pagamento e non è compatibile con la versione gratuita del programma. Quindi ulteriore materiale è dedicato alla creazione di un progetto nella versione gratuita.

Interfaccia di controllo IN progetto finito

Sul tablet è presente anche un indicatore del livello della batteria e questa è la base per il progetto. Allora cominciamo...

Passiamo ora al posizionamento dei controlli. Vai al menu "setter" e trascina il pulsante nell'area di lavoro. Nel menu dei pulsanti fare clic sull'indirizzo e inserire, ad esempio, 1#0.12. Dove 1 è l'indirizzo della scheda Arduino e 12 è l'indirizzo della variabile del progetto. Le variabili utilizzate nel progetto possono essere visualizzate nell'albero del progetto.

Elenco degli indirizzi di bandiera

L'impostazione dell'indicatore di carica della batteria è esattamente la stessa. Creiamo un registro di archiviazione in formato intero nel progetto Arduino e assegniamo il suo indirizzo all'indicatore. Ad esempio 1#10, personalizza l'indicatore secondo i tuoi gusti.

Quando tutti i controlli sono stati creati, configurati e posizionati al loro posto, fare clic su avvia il progetto. L'Android si collegherà al serbatoio e potrai goderti il ​​lavoro svolto.

Serbatoio Arduino con controllo bluetooth - montaggio.

L'assemblaggio dell'imbarcazione ha richiesto circa due ore del mio tempo, ma il risultato ha superato tutte le aspettative. Il carro armato si è rivelato abbastanza agile e risponde istantaneamente ai comandi. Ho dovuto armeggiare con il cambio che guida i cingoli dei carri armati. Si è rotto, ma per mia fortuna gli ingranaggi non si sono rovinati e un po' di colla, grasso e mani dritte lo hanno rimesso in funzione. La batteria standard ha dovuto essere sostituita con due batterie agli ioni di litio 18650 collegate in serie in un supporto. La tensione di alimentazione finale era di 6 - 8,4 volt, a seconda del livello di carica della batteria. Abbiamo dovuto sostituire anche il motore che aziona la torretta: era in cortocircuito.

Ho sostituito i diodi sui fari del mio giocattolo. Quelli gialli a bassa corrente non erano assolutamente gradevoli e venivano saldati su quelli bianchi brillanti da accendini con torce :) Ora questo miracolo cingolato è comodo da guidare anche nella completa oscurità. Foto prima e dopo:

Meraviglioso)

Il risultato dell'assemblaggio finale non sembra molto accurato, ho deciso di non spendere tempo supplementare per la progettazione di scudi e la posa di cavi. E quindi tutto funziona alla grande.

Ecco come è risultato il “riempimento”.

Serbatoio Arduino con controllo Bluetooth - conclusione.

Come si può vedere dal materiale di cui sopra, non c'è odore di scavare nel codice durante la creazione di un carro armato controllato tramite Bluetooth. Inoltre non abbiamo bisogno di alcuna conoscenza avanzata di elettronica. Tutte le operazioni sono intuitive e rivolte ai principianti. Inizialmente, il programma HMIKaskada è stato sviluppato come alternativa ai costosi pannelli HMI industriali, ma è stato utile anche per creare un giocattolo. Spero di averti aiutato a sfatare il mito sulla difficoltà di creare progetti multitasking su Arduino.

Sarò felice di ricevere qualsiasi tipo di commento sull'articolo, nonché commenti. Dopotutto, sto anche imparando con te...

La parte principale del robot è il telaio del serbatoio radiocomandato e altri componenti, il loro elenco verrà scritto di seguito. Questo carro armato è il primo progetto dell'autore sulla piattaforma Arduino ed è stato contento di averlo utilizzato. L'autore ha utilizzato materiali e libri da Internet.

Materiali e strumenti:
- Telaio del serbatoio
-Arduino Uno
- Ponticelli e breadboard
- Driver motore integrato SN754410NE
- Servoazionamento convenzionale
- Telemetro ad ultrasuoni
- Batteria da 9 V con connettore
-Batterie di tipo D
- Cavo USB per Arduino
- Base per telaio
- Cacciaviti
- Pistola termica e colla per essa
- Saldatore e saldatore

Primo passo. Telaio del serbatoio.
L'autore ha preso il telaio da un vecchio carro armato Abrams acquistato in un mercatino delle pulci. Il serbatoio risultante è stato smontato in modo da poter rimuovere il telaio. Non è affatto necessario utilizzare lo stesso carro armato; andrà bene uno qualsiasi radiocomandato. Inoltre il motore originale lasciava molto a desiderare, quindi ho dovuto assemblarne uno mio; il suo assemblaggio sarà nella fase successiva; Dopo aver preparato il telaio, l'autore ha attaccato loro la base con colla a caldo. Non importa dove verrà riparato, ma si è deciso di incollarlo al centro.

Passo due. Macchinista.
Per controllare il motore viene utilizzato il driver SN754410NE, l'autore lo ha utilizzato perché era disponibile, puoi prenderne uno simile.
Il collegamento del driver ad Arduino è il seguente:

Tutti i pin GND sono collegati ai pin GND della breadboard.
- Pin del driver da 1 e 16 a 9 e 10 di Arduino.
- I pin 2 e 7 del driver sono collegati ai pin 3 e 4 dell'Arduino (sono responsabili del controllo del motore sinistro).
- I pin 10 e 15 del driver sono collegati ai pin 5 e 6 di Arduino (sono responsabili del controllo del motore destro).
- I pin 3 e 6 sono collegati al motore sinistro e 14 e 11 al motore destro.
- I pin 8 e 16 devono essere collegati all'alimentazione del Bredboard, la fonte di alimentazione è una batteria da 9 V.

Passo tre. Installazione di un telemetro.
Il sensore a ultrasuoni consente al robot di evitare gli ostacoli sul suo percorso durante lo spostamento. Il sensore si trova su un servo standard e sarà montato sulla parte anteriore del robot. Nel momento in cui il robot nota un ostacolo nel raggio di 10 cm, il servo inizierà a girare in entrambe le direzioni, cercando così un passaggio. Arduino legge le informazioni dal sensore e decide quale lato è più favorevole per ulteriori movimenti.
Innanzitutto al sensore viene collegato un servoazionamento. L'autore fissa il servoazionamento in modo che possa ruotare solo di 90 gradi in ciascuna direzione, in altre parole, la rotazione completa del servoazionamento sarà di 180 gradi.

Il sensore ha tre contatti GND, segnale e 5V. L'alimentazione da 5 V è collegata all'alimentatore da 5 V di Arduino, da GND a GND e il segnale al pin 7 di Arduino.

Passo quattro. Nutrizione.
Arduino riceve alimentazione tramite una batteria da 9V, si collega all'apposito connettore. I motori sono alimentati da quattro batterie di tipo D, installate nel portabatterie. Per ricevere alimentazione ai motori, i fili del supporto sono collegati alla scheda su cui è già installato il driver del motore SN754410NE.

Passo cinque. Assemblaggio robot.
Dopo aver completato tutti i passaggi precedenti, è il momento di mettere insieme tutte le parti. Innanzitutto, l'Arduino è fissato alla base del serbatoio. Successivamente, un telemetro a ultrasuoni viene fissato sulla parte anteriore del robot utilizzando colla a caldo. Quindi, l'autore attacca le batterie accanto all'Arduino. Le batterie possono essere installate su qualsiasi parte del serbatoio. Dopo aver installato tutti i componenti, tutti i cavi sono stati tirati su e l'alimentazione è stata applicata alla scheda per garantire il corretto assemblaggio.

Passo sei. Codice del programma.
Dopo aver completato l'assemblaggio del serbatoio, è tempo di scriverne il programma. Il programma dovrebbe mostrare al robot quando muoversi e quando fermarsi per evitare una collisione con un ostacolo. Quando si scrive codice dall'autore