Sommario:

Controlla un Arduino con Android e USB: 5 passaggi
Controlla un Arduino con Android e USB: 5 passaggi

Video: Controlla un Arduino con Android e USB: 5 passaggi

Video: Controlla un Arduino con Android e USB: 5 passaggi
Video: How to control an Arduino from mobile phone using your own android app 2024, Novembre
Anonim
Image
Image
Quello di cui hai bisogno
Quello di cui hai bisogno

Questa istruzione è solo una dimostrazione molto rapida dell'"estensione seriale USB Arduino" creata dallo sviluppatore Thunkable, Pavitra. È ancora in fase di sviluppo, quindi pensa a questa come una sorta di versione beta.

In poche parole, ora puoi creare un'app Android personalizzata e usarla per comunicare tramite USB con molte diverse schede Arduino.

Ho preparato una semplice demo in cui l'app può commutare un LED RGB tra 5 diversi stati (rosso, verde, blu, bianco e spento) ma sono davvero interessato a vedere quali idee viene in mente la comunità di Instructables.

Passaggio 1: cosa ti serve

Quello di cui hai bisogno
Quello di cui hai bisogno
Quello di cui hai bisogno
Quello di cui hai bisogno

Prerequisiti

  1. Alcune conoscenze di base della programmazione basata su blocchi, come Scratch o App Inventor
  2. Una conoscenza di base di Arduino, ovvero hai eseguito con successo lo sketch "Blink"

Hardware

  1. Un Arduino + Cavo USB. L'ho testato con Uno, Leonardo e Micro.
  2. Un telefono Android
  3. Un connettore USB OTG
  4. Alcune parti elettroniche per il test

Software

  1. L'IDE Arduino
  2. Qualsiasi software compatibile con "App Inventor 2", ho optato per Thunkable
  3. Una copia dell'estensione seriale USB Arduino di Pavitra

Passaggio 2: costruisci il tuo circuito

Costruisci il tuo circuito
Costruisci il tuo circuito
Costruisci il tuo circuito
Costruisci il tuo circuito

Potresti facilmente cavartela con solo l'Arduino stesso qui e utilizzare il LED di bordo, ma per renderlo un po' più interessante ho usato un LED RGB.

Il circuito è molto semplice:

Il pin di terra del LED è collegato a uno qualsiasi dei pin di terra di Arduino [Black Wire], I pin rosso, verde e blu sono collegati ai pin PWM tramite resistori. È possibile riconoscere i pin PWM dal simbolo ~ accanto ai numeri dei pin.

I fili rosso, verde e blu nel diagramma sono semplici per illustrare quale gamba del LED corrisponde a quale colore. In alcuni LED i pin blu e verde potrebbero essere invertiti.

Passaggio 3: scrivi il tuo codice

Tutto il codice qui sotto può essere trovato su Github

Inizia impostando alcuni nomi di variabili per i tuoi Pin Arduino

//variabile per ingresso seriale

int ingresso = 0; //Pin per LED const int LED = 13; const int redPin = 11; const int greenPin = 9; const int bluePin = 10;

Quindi, aggiungi questo alla funzione setup():

void setup() {

//Avvia il monitor seriale a 9600 baud Serial.begin(9600); //Dichiara i LED come output pinMode(LED, OUTPUT); pinMode(redPin, OUTPUT); pinMode(GreenPin, OUTPUT); pinMode(bluePin, OUTPUT); }

Quindi controlla l'input seriale:

ciclo vuoto() {

//controlla se ci sono dati in arrivo, if(Serial.available() > 0){ //se è così, allora leggi i dati in arrivo. input = Serial.read(); //crea colori diversi a seconda del valore di input if(input == '1'){ make_colour(255, 0, 0); } else if(input == '2'){ make_colour(0, 255, 0); } else if(input == '3'){ make_colour(0, 0, 255); } else if(input == '4'){ make_colour(0, 0, 0); } else if(input == '5'){ make_colour(255, 255, 255); } } }

Infine, crea il colore appropriato:

void make_colour(int r, int g, int b){

//solo per testare Serial.println("Making Colour"); //imposta il duty cycle per ogni pin analogWrite(redPin, r); analogWrite(greenPin, g); analogWrite(bluePin, b); }

Passaggio 4: crea la tua app

Crea la tua app
Crea la tua app
Crea la tua app
Crea la tua app
Crea la tua app
Crea la tua app

Per iniziare con l'app il più rapidamente possibile, puoi clonarla direttamente su Thunkable facendo clic qui.

Design

Il design di questa app è volutamente di base. Sono solo pochi pulsanti e, naturalmente, il file di estensione Arduino.

Se non hai familiarità con l'installazione di file.aix, puoi leggere la guida rapida di Conor qui.

Codice

Nei blocchi, ho creato una procedura chiamata lighsOn che viene chiamata ogni volta che viene premuto un pulsante.

I pulsanti rosso, verde e blu inviano rispettivamente i caratteri '1', '2' e '3' ad Arduino.

I caratteri '4' e '5' vengono utilizzati per spegnere e spegnere il LED.

È anche una buona idea includere un pulsante di ripristino che chiude e poi riapre la connessione ad Arduino

Passaggio 5: provalo

Provalo
Provalo
Provalo
Provalo

Ora sei pronto per provarlo.

1. Carica lo schizzo sul tuo Arduino

2. Installa il file.apk sul tuo telefono

3. Collega il tuo telefono al tuo Arduino con il cavo OTG e sei a posto.

Risoluzione dei problemi

Quando esegui per la prima volta l'app con Arduino connesso, devi darle il permesso di accedere al dispositivo USB (l'Arduino)

Se vedi l'errore di runtime, prova a chiudere la connessione e poi ad riaprirla. Questo dovrebbe risolvere il tuo problema, ma tieni presente che è ancora in fase di test, quindi lascia un commento se non funziona per te.

Consigliato: