Getsure Control Robot bil (4 / 5 steg)
Steg 4: Arduino källkod gest baserad robotbil
#define BAUDVÄRDE 9600
CONST int MotR_A = 3; DC Motor1 Pole_A
CONST int MotR_B = 5; DC Motor1 Pole_B
CONST int MotL_A = 6; DC Motor2 Pole_A
CONST int MotL_B = 9; DC Motor2 Pole_B
byte GetValue;
void setup()
{
Serial.BEGIN(BAUDRATE);
pinMode (MotR_A, OUTPUT);
pinMode (MotR_B, OUTPUT);
pinMode (MotL_A, OUTPUT);
pinMode (MotL_B, OUTPUT);
}
byte ReadOneByte() / / en Byte Läs funktion
{
int ByteRead;
tag (!. Serial.available());
ByteRead = Serial.read();
återvända ByteRead;
}
void loop()
{
GetValue = ReadOneByte();
Switch(getValue)
{
fallet "C":
Robot_Left();
bryta;
fallet "A":
Robot_Right();
bryta;
fallet 'N':
Robot_Forword();
bryta;
fallet ":
Robot_Reverse();
bryta;
fallet "E":
Robot_Left();
Delay(1000);
Robot_Forword();
bryta;
fallet "W":
Robot_Right();
Delay(1000);
Robot_Forword();
bryta;
}
}
void Robot_Reverse()
{
digitalWrite (MotR_B, hög);
digitalWrite (MotR_A, låg);
digitalWrite (MotL_A, hög);
digitalWrite (MotL_B, låg);
}
void Robot_Forword()
{
digitalWrite (MotR_A, hög);
digitalWrite (MotR_B, låg);
digitalWrite (MotL_B, hög);
digitalWrite (MotL_A, låg);
}
void Robot_Left()
{
digitalWrite (MotR_B, hög);
digitalWrite (MotR_A, låg);
digitalWrite (MotL_A, låg);
digitalWrite (MotL_B, hög);
}
void Robot_Right()
{
digitalWrite (MotR_B, låg);
digitalWrite (MotR_A, hög);
digitalWrite (MotL_A, hög);
digitalWrite (MotL_B, låg);
}
void Robot_Stop()
{
digitalWrite (MotR_B, låg);
digitalWrite (MotR_A, låg);
digitalWrite (MotL_A, låg);
digitalWrite (MotL_B, låg);
}