Engelden Kaçan Robot

Arduino ile yapılmış önüne engel çıkınca yön değiştiren robot

Engelden Kaçan Robot
Engelden Kaçan Robot
Engelden Kaçan Robot
Engelden Kaçan Robot
Engelden Kaçan Robot
Engelden Kaçan Robot

Şema 1

Şema 2

Motor sürücüye bağlı motorlara verilen güç yetersiz kalırsa motorlara ekstra güç verilebilir. Şemada motor sürücüye (motorlara) 4 adet pil ile güç verilmektedir.


 

#define echoPin 3
#define trigPin 2
#define SolMotor1 8
#define SolMotor2 9
#define SagMotor1 10
#define SagMotor2 11

long sure, uzaklik; 
void setup() {

  pinMode(echoPin, INPUT);
  pinMode(trigPin, OUTPUT);

  pinMode(SagMotor1, OUTPUT);
  pinMode(SagMotor2, OUTPUT);
  pinMode(SolMotor1, OUTPUT);
  pinMode(SolMotor2, OUTPUT);

  Serial.begin(9600);
}

void loop() 
{
  digitalWrite(trigPin, LOW); 
  delayMicroseconds(5);
  digitalWrite(trigPin, HIGH); 
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW); 

  sure = pulseIn(echoPin, HIGH); 
  uzaklik = sure / 29.1 / 2; 

  Serial.println(uzaklik);

  if (uzaklik < 15) 
  {
    geri();  
    delay(250);
    sag();  
    delay(250);
  }
  else {  
    ileri(); 
  }
}
void ileri(){  

  digitalWrite(SolMotor1, HIGH); 
  digitalWrite(SolMotor2, LOW); 
  digitalWrite(SagMotor1, HIGH); 
  digitalWrite(SagMotor2, LOW);  
}
void sag()
{
  digitalWrite(SolMotor1, LOW);
  digitalWrite(SolMotor2, LOW);


  digitalWrite(SagMotor1, LOW); 
  digitalWrite(SagMotor2, HIGH); 
}
void geri()

  digitalWrite(SolMotor1, LOW); 
  digitalWrite(SolMotor2, HIGH);

  digitalWrite(SagMotor1, LOW); 
  digitalWrite(SagMotor2, HIGH); 
  
}