Inhoudsopgave:

Bedien een Arduino met Android en USB: 5 stappen
Bedien een Arduino met Android en USB: 5 stappen

Video: Bedien een Arduino met Android en USB: 5 stappen

Video: Bedien een Arduino met Android en USB: 5 stappen
Video: ESP8266 ESP01 WIFI-UART | LDmicro-Roboremo-programmering 2024, November
Anonim
Image
Image
Wat je nodig hebt
Wat je nodig hebt

Deze instructable is slechts een zeer snelle demonstratie van de "Arduino USB Serial Extension" die is gemaakt door de ontwikkelaar van Thunkable, Pavitra. Het wordt nog steeds ontwikkeld, dus beschouw dit als een soort bètaversie.

In een notendop, u kunt nu een aangepaste Android-app maken en deze gebruiken om via USB te communiceren met veel verschillende Arduino-kaarten.

Ik heb een eenvoudige demo voorbereid waarbij de app een RGB-LED kan schakelen tussen 5 verschillende toestanden (rood, groen, blauw, wit en uit), maar ik ben erg benieuwd met welke ideeën de Instructables-gemeenschap op de proppen komt.

Stap 1: Wat je nodig hebt

Wat je nodig hebt
Wat je nodig hebt
Wat je nodig hebt
Wat je nodig hebt

Vereisten

  1. Enige basiskennis van programmeren op basis van blokken, zoals Scratch of App Inventor
  2. Een basiskennis van Arduino - d.w.z. dat u de "Blink"-schets met succes hebt uitgevoerd

Hardware

  1. Een Arduino + USB-kabel. Ik heb dit getest met een Uno, Leonardo en Micro.
  2. Een Android-telefoon
  3. Een USB OTG-connector
  4. Enkele elektronische onderdelen om te testen

Software

  1. De Arduino IDE
  2. Elke "App Inventor 2"-compatibele software, ik heb gekozen voor Thunkable
  3. Een kopie van Pavitra's Arduino USB Serial Extension

Stap 2: Bouw uw circuit

Bouw je circuit
Bouw je circuit
Bouw je circuit
Bouw je circuit

Je zou hier gemakkelijk weg kunnen komen met alleen de Arduino zelf en de ingebouwde LED gebruiken, maar om het een beetje interessanter te maken, heb ik een RGB-LED gebruikt.

De schakeling is heel eenvoudig:

De aardingspen van de LED is verbonden met een van de aardingspennen van de Arduino [Black Wire], De rode, groene en blauwe pinnen zijn verbonden met PWM-pinnen via Ω-weerstanden. U herkent PWM-pinnen aan het ~-symbool naast de pinnummers.

Aan de rode, groene en blauwe draden in het schema is eenvoudig te zien welke poot van de led bij welke kleur hoort. In sommige LED's kunnen de blauwe en groene pinnen verwisseld zijn.

Stap 3: Schrijf uw code

Alle onderstaande code is te vinden op Github

Begin met het instellen van enkele variabelenamen voor uw Arduino-pinnen

//variabele voor seriële invoer

int-invoer = 0; //Pinnen voor LED's const int LED = 13; const int redPin = 11; const int greenPin = 9; const int bluePin = 10;

Voeg dit vervolgens toe aan de functie setup():

ongeldige setup() {

//Start de seriële monitor op 9600 baud Serial.begin (9600); // Verklaar de LED's als uitgangen pinMode (LED, OUTPUT); pinMode (redPin, UITGANG); pinMode(greenPin, OUTPUT); pinMode (bluePin, UITGANG); }

Controleer vervolgens op seriële invoer:

lege lus() {

// controleer of er inkomende gegevens zijn, if (Serial.available () > 0) {// zo ja, lees dan de inkomende gegevens. invoer = Serieel.lezen(); // maak verschillende kleuren afhankelijk van de invoerwaarde if (input == '1') {make_colour (255, 0, 0); } else if(invoer == '2'){ make_colour (0, 255, 0); } else if(invoer == '3'){ make_colour (0, 0, 255); } else if(invoer == '4'){ make_colour (0, 0, 0); } else if(invoer == '5'){ make_colour(255, 255, 255); } } }

Maak tot slot de juiste kleur:

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

//alleen voor het testen van Serial.println ("Kleur maken"); // stelt de duty cycle in voor elke pin analogWrite (redPin, r); analogWrite(greenPin, g); analoogWrite(bluePin, b); }

Stap 4: Maak uw app

Maak je app
Maak je app
Maak je app
Maak je app
Maak je app
Maak je app

Om zo snel mogelijk met de app aan de slag te gaan, kun je deze rechtstreeks naar Thunkable klonen door hier te klikken.

Ontwerp

Het ontwerp van deze app is opzettelijk eenvoudig. Het zijn slechts een paar knoppen en natuurlijk het Arduino-extensiebestand.

Als u niet bekend bent met het installeren van.aix-bestanden, kunt u hier de snelstartgids van Conor lezen.

Code

In de blokken heb ik een procedure gemaakt met de naam lighsOn die elke keer dat er op een knop wordt gedrukt, wordt aangeroepen.

De rode, groene en blauwe knoppen sturen respectievelijk de karakters '1', '2' en '3' naar de Arduino.

De karakters '4' en '5' worden gebruikt om de LED wit en uit te schakelen.

Het is ook een goed idee om een resetknop op te nemen die de verbinding met de Arduino sluit en vervolgens weer opent

Stap 5: Probeer het uit

Probeer het
Probeer het
Probeer het
Probeer het

Nu ben je klaar om het uit te testen.

1. Upload de schets naar je Arduino

2. Installeer de.apk op je telefoon

3. Verbind je telefoon met je Arduino met de OTG-kabel en je bent klaar om te gaan.

Probleemoplossen

Wanneer u de app voor het eerst uitvoert terwijl de Arduino is aangesloten, moet u deze toestemming geven om toegang te krijgen tot het USB-apparaat (de Arduino)

Als u de runtime-fout ziet, probeert u de verbinding te sluiten en vervolgens opnieuw te openen. Dit zou je probleem moeten oplossen, maar houd er rekening mee dat dit nog steeds wordt getest, dus laat alsjeblieft een reactie achter als het niet voor je werkt.

Aanbevolen: