Line Follower (1 / 2 steg)
Steg 1: Diagram, system och schetch
Jag har använt dia för att rita diagram och fritzing för system för
Och detta är den Arduino schetch:
#define dxg 11 < br > #define dxb 10
#define dxv 9
#define dxr 8
#define sxg 5
#define sxv 4
#define sxb 3
#define sxr 2
void setup() {
pinMode(dxg,OUTPUT);
pinMode(dxb,OUTPUT);
pinMode(dxv,OUTPUT);
pinMode(dxr,OUTPUT);
pinMode(sxg,OUTPUT);
pinMode(sxv,OUTPUT);
pinMode(sxb,OUTPUT);
pinMode(sxr,OUTPUT);
pinMode(6,INPUT);
pinMode(7,INPUT);
}
void loop() {
dynamisk rad efterföljare kod
int lsensor=digitalRead(6);
int rsensor=digitalRead(7);
IF((lsensor==low) & &(rsensor==LOW))
{
båda sensorerna på vit
gå framåt
digitalWrite(dxg,HIGH);
digitalWrite(dxb,HIGH);
digitalWrite(dxv,LOW);
digitalWrite(dxr,LOW);
digitalWrite(sxg,HIGH);
digitalWrite(sxv,HIGH);
digitalWrite(sxb,LOW);
digitalWrite(sxr,LOW);
}
annat if((lsensor==HIGH) & & (rsensor == låg))
{
rätt sensor på svart linje
Sväng höger
digitalWrite(dxg,LOW);
digitalWrite(dxb,LOW);
digitalWrite(dxv,HIGH);
digitalWrite(dxr,HIGH);
digitalWrite(sxg,HIGH);
digitalWrite(sxv,HIGH);
digitalWrite(sxb,LOW);
digitalWrite(sxr,LOW);
}
annat if((lsensor==LOW) & &(rsensor==HIGH))
{
vänstra sensorn på svart linje
Sväng vänster
digitalWrite(dxg,HIGH);
digitalWrite(dxb,HIGH);
digitalWrite(dxv,LOW);
digitalWrite(dxr,LOW);
digitalWrite(sxg,LOW);
digitalWrite(sxv,LOW);
digitalWrite(sxb,HIGH);
digitalWrite(sxr,HIGH);
}
annat
{
digitalWrite(dxg,LOW);
digitalWrite(dxb,LOW);
digitalWrite(dxv,LOW);
digitalWrite(dxr,LOW);
digitalWrite(sxg,LOW);
digitalWrite(sxv,LOW);
digitalWrite(sxb,LOW);
digitalWrite(sxr,LOW);
}
}