Kurs på MIT App Inventor och Arduino (3 / 5 steg)
Steg 3:4. Gör en Android Arduino Robot
I den här guiden kommer du att lära om hur man gör en app för att styra en robot av android app, du kommer att använda android-telefon som fjärrkontrollen för att styra roboten. Du behöver 2 redskap motor med hjul A motor drivrutin, kan du använda någon av motor drivrutinen du vill, jag använde L293D motor drivrutin för detta projekt. Du behöver också ett batteri och anslutande ledningar, bortsett från det som vanligt en Bluetooth och Arduino styrelsen behövs för att slutföra denna tutorial.
#include
SoftwareSerial BT(10, 11); TX, RX respetively
Sträng readdata;
void setup() {
BT.begin(9600);
Serial.BEGIN(9600);
pinMode (3, OUTPUT); ansluta till ingång 1 av l293d
pinMode (4, OUTPUT); ansluta till ingång 4 i l293d
pinMode (5, OUTPUT); ansluta till ingång 3 i l293d
pinMode (6, OUTPUT); ansluta till ingång 2 av l293d
}
//-----------------------------------------------------------------------//
void loop() {
samtidigt (BT.available()) {//Check om det finns en tillgänglig byte att läsa
Delay(10); Dröjsmål till göra sak stabil
char c = BT.read(); Genomföra en seriell läsa
readdata += c; bygga den sträng-"framåt", "omvänd", "vänster" och "rätt"
}
om (readdata.length() > 0) {
Serial.println(readdata); skriva ut data till seriell monitor
om uppgifterna som framåt framåt robot
om (readdata == "vidarebefordra")
{
digitalWrite (3, hög).
digitalWrite (4, hög).
digitalWrite(5,LOW);
digitalWrite(6,LOW);
Delay(100);
}
om uppgifterna som omvänd flyttar robot bakåt
annars om (readdata == "reverse")
{
digitalWrite (3, låg).
digitalWrite (4, låg).
digitalWrite 5, hög,
digitalWrite(6,HIGH);
Delay(100);
}
om uppgifterna som höger sväng roboten att rätt riktning.
annars om (readdata == "rätt")
{
digitalWrite (3, hög).
digitalWrite (4, låg);
digitalWrite (5, låg);
digitalWrite (6, låg);
fördröjning (100);
}
om de uppgifter som lämnas vända robot till vänster
annars om (readdata == "vänster")
{
digitalWrite (3, låg);
digitalWrite (4, hög).
digitalWrite (5, låg);
digitalWrite (6, låg);
fördröjning (100);
}
om data emot som stopp, stoppa roboten
annars om (readdata == "stop")
{
digitalWrite (3, låg);
digitalWrite (4, låg);
digitalWrite (5, låg);
digitalWrite (6, låg);
fördröjning (100);
}
readdata = "" ;}} Återställa variabeln