Sommario:

Come Realizzare un Rover Controllato da Android: 8 Passaggi (Illustrato)
Come Realizzare un Rover Controllato da Android: 8 Passaggi (Illustrato)

Video: Come Realizzare un Rover Controllato da Android: 8 Passaggi (Illustrato)

Video: Come Realizzare un Rover Controllato da Android: 8 Passaggi (Illustrato)
Video: Italia e New Space. Lo spazio nel nuovo PNRR di Mario Draghi 2024, Dicembre
Anonim
Image
Image
Cose necessarie
Cose necessarie

in questo tutorial ti mostrerò come costruire un'auto o un rover controllato da Android.

Come funziona il robot controllato da Android?

Il robot controllato dall'applicazione Android comunica tramite Bluetooth con il modulo Bluetooth presente sul robot. Premendo ciascun pulsante dell'applicazione, i comandi corrispondenti vengono inviati tramite Bluetooth al robot. I comandi che vengono inviati sono in formato ASCII. L'Arduino sul robot quindi verifica il comando ricevuto con i suoi comandi precedentemente definiti e controlla i motori bo a seconda del comando ricevuto per farlo muovere in avanti, indietro, a sinistra, a destra o per arrestarlo.

Passaggio 1: cose necessarie

Cose necessarie
Cose necessarie
Cose necessarie
Cose necessarie

1.arduino nano

Cos'è Arduino?

Arduino è una piattaforma elettronica open source basata su hardware e software di facile utilizzo. Le schede Arduino sono in grado di leggere input - luce su un sensore, un dito su un pulsante o un messaggio Twitter - e trasformarlo in un output - attivando un motore, accendendo un LED, pubblicando qualcosa online. Puoi dire alla tua scheda cosa fare inviando una serie di istruzioni al microcontrollore sulla scheda. Per farlo usi

il linguaggio di programmazione Arduino (basato su Wiring) e il Software Arduino (IDE), basato su Processing.

Negli anni Arduino è stato il cervello di migliaia di progetti, da oggetti di uso quotidiano a complessi strumenti scientifici. Una comunità mondiale di produttori - studenti, hobbisti, artisti, programmatori e professionisti - si è riunita attorno a questa piattaforma open source, i loro contributi hanno contribuito a creare un'incredibile quantità di conoscenza accessibile che può essere di grande aiuto sia ai principianti che agli esperti.

Arduino nasce all'Interaction Design Institute di Ivrea come uno strumento facile per la prototipazione veloce, rivolto a studenti senza un background in elettronica e programmazione. Non appena ha raggiunto una comunità più ampia, la scheda Arduino ha iniziato a cambiare per adattarsi a nuove esigenze e sfide, differenziando la sua offerta da semplici schede a 8 bit a prodotti per applicazioni IOT, indossabili, stampa 3D e ambienti embedded. Tutte le schede Arduino sono completamente open-source, consentendo agli utenti di costruirle in modo indipendente ed eventualmente adattarle alle loro particolari esigenze. Anche il software è open-source e sta crescendo grazie ai contributi degli utenti di tutto il mondo.

Atmega328

Il microcontrollore basato su RISC AVR a 8 bit di Atmel combina memoria flash ISP da 32 KB con capacità di lettura durante la scrittura, EEPROM da 1 KB, SRAM da 2 KB, 23 linee di I/O per uso generale, 32 registri di lavoro per uso generale, tre timer/ contatori con modalità di confronto, interrupt interni ed esterni, USART seriale programmabile, un'interfaccia seriale a 2 fili orientata ai byte, porta seriale SPI, convertitore A/D a 10 bit a 6 canali (8 canali nei pacchetti TQFP e QFN/MLF), timer watchdog programmabile con oscillatore interno e cinque modalità di risparmio energetico selezionabili dal software. Il dispositivo funziona

tra 1,8-5,5 volt. Il dispositivo raggiunge un throughput che si avvicina a 1 MIPS per MHz.

2. Modulo Bluetooth

Il modulo HC-05 è un modulo Bluetooth SPP (Serial PortProtocol) di facile utilizzo, progettato per la configurazione trasparente della connessione seriale wireless.

Il modulo Bluetooth della porta seriale è una modulazione a 3 Mbps Bluetooth V2.0 + EDR (Enhanced Data Rate) con ricetrasmettitore radio completo da 2,4 GHz e banda base. Utilizza il sistema Bluetooth a chip singolo CSR Bluecore 04-External con tecnologia CMOS e con AFH (funzione Adaptive Frequency Hopping). Ha un ingombro di soli 12,7 mm x 27 mm. Spero che semplifichi il ciclo complessivo di progettazione/sviluppo.

Specifiche

Caratteristiche hardware

 Sensibilità tipica di -80dBm

 Potenza di trasmissione RF fino a +4dBm

 Funzionamento a bassa potenza a 1,8 V, I/O da 1,8 a 3,6 V

 Controllo PIO

 Interfaccia UART con baud rate programmabile

 Con antenna integrata

 Con connettore per bordi

Caratteristiche del software

 Baud rate predefinito: 38400, Bit di dati: 8, Bit di stop: 1, Parità: Nessuna parità, Controllo dati: ha.

Velocità di trasmissione supportata: 9600, 19200, 38400, 57600, 115200, 230400, 460800.

 Dato un impulso crescente in PIO0, il dispositivo verrà disconnesso.

 Porta istruzione di stato PIO1: low-disconnected, high-connected;

 PIO10 e PIO11 possono essere collegati separatamente ai led rosso e blu. Quando padrone e schiavo

sono accoppiati, i led rosso e blu lampeggiano 1 volta/2s a intervalli, mentre disconnesso solo il led blu lampeggia 2 volte/s.

 Connessione automatica all'ultimo dispositivo acceso come impostazione predefinita.

 Consenti al dispositivo di associazione di connettersi come impostazione predefinita.

 Associazione automatica PINCODE: "0000" come impostazione predefinita

 Riconnessione automatica in 30 minuti in caso di disconnessione per superamento del raggio di connessione.

3.bo motore con ruote

I motoriduttori sono comunemente usati nelle applicazioni commerciali in cui un pezzo di attrezzatura deve essere in grado di esercitare un'elevata quantità di forza per spostare un oggetto molto pesante. Esempi di questi tipi di attrezzatura includono una gru o un sollevatore.

Se hai mai visto una gru in azione, hai visto un ottimo esempio di come funziona un motoriduttore. Come probabilmente avrai notato, una gru può essere utilizzata per sollevare e spostare oggetti molto pesanti. Il motore elettrico utilizzato nella maggior parte delle gru è un tipo di motoriduttore che utilizza i principi di base della riduzione della velocità per aumentare la coppia o la forza.

I motoriduttori utilizzati nelle gru sono generalmente tipi speciali che utilizzano una velocità di rotazione molto bassa per creare incredibili quantità di coppia. Tuttavia, i principi del motoriduttore utilizzato in una gru sono esattamente gli stessi di quelli utilizzati nell'esempio dell'orologio elettrico. La velocità di uscita del rotore viene ridotta attraverso una serie di grandi ingranaggi fino a quando la velocità di rotazione, RPM, dell'ingranaggio finale è molto bassa. La bassa velocità RPM aiuta a creare un'elevata quantità di forza che può essere utilizzata per sollevare e spostare gli oggetti pesanti.

4.l298 driver del motore

L298 è un circuito monolitico integrato in un contenitore Multiwatt a 15 conduttori e PowerSO20. È un doppio driver full-bridge ad alta tensione e alta corrente progettato per accettare livelli logici TTL standard e pilotare carichi induttivi come relè, solenoidi, motori DC e passo-passo. Sono forniti due ingressi di abilitazione per abilitare o disabilitare il dispositivo indipendentemente dai segnali di ingresso. Gli emettitori dei transistori inferiori di ciascun ponte sono collegati tra loro e il corrispondente terminale esterno può essere utilizzato per il collegamento di un resistore di rilevamento esterno. Viene fornito un ingresso di alimentazione aggiuntivo in modo che la logica funzioni a una tensione inferiore.

Caratteristiche principali

 TENSIONE DI ALIMENTAZIONE FINO A 46V

 BASSA TENSIONE DI SATURAZIONE

 CORRENTE DC TOTALE FINO A 4A

 TENSIONE DI INGRESSO \"0\" LOGICA FINO A 1,5 V (ALTA IMMUNITÀ AI RUMORI)

 PROTEZIONE DA SOVRATEMPERATURA

5.18650*2 batteria

Un alimentatore cc stabile è necessario per il corretto funzionamento del sistema elettronico. La potenza cc richiesta è ottenuta da due batterie 18650 agli ioni di litio da 2500 mAh. ma il microcontrollore ha bisogno di 5v per funzionare correttamente… quindi abbiamo aggiunto un regolatore 5v. quello è un lm7805 usato.

foglio 6.acrilico

Passaggio 2: schema elettrico

Schema elettrico
Schema elettrico
Schema elettrico
Schema elettrico

Passaggio 3: PCB

PCB
PCB
PCB
PCB

saldare tutto in una dot board

Passaggio 4: creazione di inseguimenti

Inseguimento
Inseguimento
Inseguimento
Inseguimento

ho usato l'acrilico per fare l'inseguimento

Passaggio 5: applicazione

Applicazione
Applicazione
Applicazione
Applicazione

REMOTEXY

RemoteXY è un modo semplice per creare e utilizzare un'interfaccia utente grafica mobile per le schede di controllo da controllare tramite smartphone o tablet. Il sistema comprende:

· Editor di interfacce grafiche mobili per schede di controllo, situato sul sito remotexy.com

· App mobile RemoteXY che permette di connettersi al controller e controllarlo tramite interfaccia grafica. Scarica l'applicazione.

· Caratteristiche distintive:

La struttura dell'interfaccia è memorizzata nel controller. Una volta connesso, non c'è interazione con i server per scaricare l'interfaccia. La struttura dell'interfaccia viene scaricata nell'applicazione mobile dal controller.

Un'applicazione mobile può gestire tutti i tuoi dispositivi. Il numero di dispositivi non è limitato.

· Connessione tra il controller e il dispositivo mobile utilizzando:

Bluetooth;

client WiFi e punto di accesso;

Ethernet tramite IP o URL;

Internet da qualsiasi luogo tramite il server cloud.

· Il generatore di codice sorgente supporta i seguenti controller:

Arduino UNO, Arduino MEGA, Arduino Leonardo, Arduino Pro Mini, Arduino Nano, Arduino MICRO;

WeMos D1, WeMos D1 R2, WeMos D1 mini;

NodeMCU V2, NodeMCU V3;

L'AirBoard;

ChipKIT UNO32, ChipKIT uC32, ChipKIT Max32;

· Moduli di comunicazione supportati:

Bluetooth HC-05, HC-06 o compatibile;

Wi-Fi ESP8266;

Schermo Ethernet W5100;

· IDE supportato:

Arduino IDE;

FLProg IDE;

MPIDE;

· Sistema operativo mobile supportato:

Android;

· RemoteXY è un modo semplice per creare un'interfaccia grafica unica per controllare il dispositivo microcontrollore tramite un'applicazione mobile, ad esempio Arduino.

· RemoteXY consente:

· Sviluppare qualsiasi interfaccia di gestione grafica, utilizzando gli elementi di controllo, visualizzazione e decorazione di qualsiasi combinazione degli stessi. Puoi sviluppare la grafica

· interfaccia per qualsiasi compito, posizionando gli elementi sullo schermo utilizzando l'editor online. Editor online pubblicato sul sito Web remotexy.com.

· Dopo lo sviluppo dell'interfaccia grafica, si ottiene il codice sorgente per il microcontrollore che implementa la propria interfaccia. Il codice sorgente fornisce una struttura per l'interazione tra il programma con i controlli e il display. In questo modo puoi facilmente integrare il sistema di controllo nel tuo compito per il quale stai sviluppando il dispositivo.

· Per gestire il dispositivo microcontrollore utilizzando il tuo smartphone o tablet con l'interfaccia grafica. Per gestire l'applicazione mobile usata RemoteXY.

All'inizio della definizione di un pin che verrà utilizzato per controllare i motori. Inoltre, i pin sono raggruppati in due array, rispettivamente motore sinistro e destro. Per controllare ogni motore tramite il chip driver L298N è necessario utilizzare tre segnali: due discreti, il senso di rotazione del motore, e uno analogico, che determina la velocità di rotazione. Calcolo questo pin che abbiamo impegnato nella funzione Wheel. All'ingresso della funzione viene passato un puntatore del motore selezionato dall'array di pin e la velocità di rotazione come valore con segno compreso tra -100 e 100. Se il valore della velocità è 0, il motore viene spento.

In una configurazione di funzione predeterminata sono configurati i pin di uscita. Per i pin utilizzati per il segnale analogico, che possono funzionare come convertitori PWM. Questi pin 9 e 10, non richiedono la configurazione nell'IDE Arduino.

In un ciclo di funzione predeterminato in ogni iterazione del programma che chiama il gestore della libreria RemoteXY. Inoltre c'è il controllo del LED, quindi controlla i motori. Per il controllo del motore leggere le coordinate X e Y del joystick dalla struttura dei campi di RemoteXY. In base alle coordinate si opera per calcolare la velocità di ogni motore, e chiamando la funzione Ruota, si imposta la velocità del motore. Questi calcoli vengono eseguiti in ogni ciclo del programma, garantendo continui calcoli di controllo dei pin dei motori in base alle coordinate del joystick.

SCARICA REMOTEXY DA PLAYSTORE

Fase 6: PROGRAMMA

PROGRAMMA E CIRCUITO

Passaggio 7: SGUARDO FINALE

LOOK FINALE
LOOK FINALE
LOOK FINALE
LOOK FINALE

FELICE FARE

Consigliato: