Arduino Keşif Robotu

Arduino Keşif Robotu

 

 

Robotlarımı geliştirerek her robotu bir tık ileri taşımak için çalışmalara devam ediyorum.Keşif robotumdan bahsetmek istiyorum. Arduino  Ses ile kontrol edilen robotumu biliyorsunuz.İşte o robotumuzun geliştirilmiş halidir.Robotumuzun ön kısmında kafa olarak adlandırdığım servo motor ve engel algılama sensörü bulunan kısımda robotumuz etrafına hakimiyet sağlamaktadır. Bir çok ses li komutu ekledim.

20160605_201932

Yapay zeka değil belki ama onu aratmayacak engelden kurtulma komutu vardır.Şöyleki;

Robotumuzun kafasında bulunan sensör sayesinde engelin yanına gelince robotumuza “otomatik kurtul” komutu verilince Robotumuz etrafına bakarak hangi tarafın daha boş olduğunu tespit ediyor ve boş olan yöne doğru dönerek duvarı takip ediyor,takip ederken sonradan güncellediğim program sayesinde,ve duvarla arasındaki mesafeyi koruyarak duvar bitimine kadar bu şekilde devam eder ve duvar ne zaman biterse robot duvarın yanından geçer biraz daha gider ve durur.

Diğer özelliği ise robota sor sorarak cevap almamız.İlk olarak robota

“evet de ” komutu ile verdiği tepkiyi

“hayır de ” komutu ile verdiği tepkiyi görerek sorduğumuz  soruların cevabını bize vermektedir.Şimdilik yakında engel varmı,uzakta engel varmı sorularını yükledim. İstersek daha başka sorularda program değiştirerek yapabiliriz.

Başka diğer özelliği, “etrafı kontrol et ” komutu dur. Bu komutla robot olduğu yerde durarak kafası sayesinde etrafı 180 derece 2 kez tarar ve eğer engel kişi cisim algılarsa ışık ve ses ile alarm vermektedir.

Daha bir çok özellik yükledim arkadaşlar umarım hoşunuza gider.

 

 

 

String voice;
#include<Servo.h>
Servo sg90;
const byte echo = 13;
const byte trig = 12;

int sure = 0;
int mesafe = 0;
int soldeger = 0;
int sagdeger = 0;
int pos = 0;

#define SolMotorileri 4
#define SolMotorGeri 2
#define SagMotorileri 10
#define SagMotorGeri 11

#define sol_hiz 9
#define sag_hiz 6

#define yesil 8
#define kirmizi 7

#define motor_vcc 5

//sensör pinleri
#define USTrigger 0
#define USEcho 1
#define Maksimum_uzaklik 100

void setup()
{
 sg90.attach(3);
 sg90.write(90);

 pinMode(echo , INPUT);
 pinMode(trig , OUTPUT);
 Serial.begin(9600); //iletişim ayarı
 //motor çıkışları
 pinMode(SolMotorileri, OUTPUT);
 pinMode(SolMotorGeri, OUTPUT);
 pinMode(SagMotorileri, OUTPUT);
 pinMode(SagMotorGeri, OUTPUT);

 pinMode(sol_hiz, OUTPUT);
 pinMode(sag_hiz, OUTPUT);
 pinMode(motor_vcc, OUTPUT);
 pinMode(yesil, OUTPUT);
 pinMode(kirmizi, OUTPUT);

 digitalWrite(motor_vcc, HIGH);
 digitalWrite(sol_hiz, HIGH);
 digitalWrite(sag_hiz, HIGH);
}
// sonsuz döngü
void loop() {
 digitalWrite(trig , HIGH);
 delayMicroseconds(1000);
 digitalWrite(trig , LOW);
 sure = pulseIn(echo , HIGH);
 mesafe = (sure / 2) / 28.5 ;
 Serial.println (mesafe);
 delay(100);
 while (Serial.available()) { //Okumak için kullanılabilir bayt olup olmadığını kontrol et
   delay(10); //10 milisaniye bekle
   char c = Serial.read(); //Seri okuma
   if (c == '#') {
     break; // # tespit edildiğinde döngüden çık
   }
   voice += c; //Ses = ses + c Steno
 }
 if (voice.length() > 0) {
   Serial.println(voice);
   digitalWrite(SolMotorileri, LOW);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, LOW);
   digitalWrite(SagMotorGeri, LOW);
   Serial.print(mesafe);
   Serial.println("---------------");
   delay (500);
   if (voice == "*yakında engel var mı" || voice == "* yakında engel var mı") {
     engel();
   }

   else if (voice == "*dön" || voice == "* dön") {
     don();
   }
   else if (voice == "*uzakta engel var mı" || voice == "* uzakta engel var mı") {
     uengel();
   }
   else if (voice == "*evet de" || voice == "*evet de") {
     evet();
   }
   else if (voice == "*hayır de" || voice == "*hayır de") {
     hayir();
   }
   else if (voice == "*sola bak" || voice == "*sola bak") {
     sola();
   }
   else if (voice == "*önüne bak" || voice == "*önüne bak") {
     ileriye();
   }
   else if (voice == "*sağa bak" || voice == "*sabah") {
     saga();
   }
   else if (voice == "*sağ bak" || voice == "*saha bak") {
     saga();
   }
   else if (voice == "*git gel" || voice == "*git gel") {
     gitgel();
   }
   else if (voice == "*Go here" || voice == "*Go here") {
     gitgel();
   }
   else if (voice == "*ileri git" || voice == "*ileri git") {
     ileri();
   }
   else if (voice == "*Go forward" || voice == "*Go forward") {
     ileri();
   }
   else if (voice == "*geri gel" || voice == "*geri gel") {
     geri();
   }
   else if (voice == "*come back" || voice == "*come back") {
     geri();
   }
   else if (voice == "*sağa dön" || voice == "*sağ") {
     sag();
   }
   else if (voice == "*right" || voice == "*right") {
     sag();
   }
   else if (voice == "*sağa dön" || voice == "*sağa dön") {
     sag();
   }

   else if (voice == "*sola dön" || voice == "*sor") {
     sol();
   }

   else if (voice == "*sola dön" || voice == "*son") {
     sol();
   }
   else if (voice == "*sola dön" || voice == "*sol") {
     sol();
   }
   else if (voice == "*left" || voice == "*left") {
     sol();
   }
   else if (voice == "*sola dön" || voice == "*sağol") {
     sol();
   }
   else if (voice == "*dur" || voice == "*dur") {
     dur();
   }
   else if (voice == "*stop" || voice == "*stop") {
     dur();
   }
   else if (voice == "*tur" || voice == "*tur") {
     dur();
   }
   else if (voice == "*az ileri" || voice == "*az git") {
     azileri();
   }
   else if (voice == "*Go small" || voice == "*Go small") {
     azileri();
   }
   else if (voice == "*az geri" || voice == "*az gel") {
     azgeri();
   }
   else if (voice == "*few come" || voice == "*few come") {
     azgeri();
   }
   else if (voice == "*az ileri" || voice == "*al git") {
     azileri();
   }
   else if (voice == "*az geri" || voice == "*al gel") {
     azgeri();
   }
   else if (voice == "*sol ileri" || voice == "*sola dön ileri git") {
     solileri();
   }
   else if (voice == "*Go forward turn left" || voice == "*Go forward turn left") {
     solileri();
   }
   else if (voice == "*sağ ileri" || voice == "*sağa dön ileri git") {
     sagileri();
   }
   else if (voice == "*Go forward turn right" || voice == "*Go forward turn right") {
     sagileri();
   }

   else if (voice == "*lamba kapat" || voice == "*lamba sön") {
     klamba();
   }
   else if (voice == "*lamba" || voice == "*lamba") {
     lamba();
   }
   else if (voice == "* engelin yanına git" || voice == "*engelin yanına git") {
     engell();
   }

   else if (voice == "*lamp" || voice == "*lamp") {
     lamba();
   }

   else if (voice == "*lamba yak ileri git" || voice == "*lamba yak ileri git") {
     lileri();
   }
   else if (voice == "*Go forward lamp oil" || voice == "*Go forward lamp oil") {
     lileri();
   }
   else if (voice == "*sola park et" || voice == "*sol park et") {
     solpark();
   }
   else if (voice == "*left parked" || voice == "*left parked") {
     solpark();
   }
   else if (voice == "*saha park et" || voice == "*sağ park et") {
     spark();
   }
   else if (voice == "*Right parked" || voice == "*Right parked") {
     spark();
   }
   else if (voice == "*sağ park çık" || voice == "*sağ çık") {
     solcpark();
   }
   else if (voice == "*saha park çık" || voice == "*saha çık") {
     solcpark();
   }
   else if (voice == "*right out" || voice == "*right out") {
     solcpark();
   }
   else if (voice == "*sol park çık" || voice == "*sol çık") {
     scpark();
   }
   else if (voice == "*left wing" || voice == "*left wing") {
     scpark();
   }
   else if (voice == "*sol park çık" || voice == "*sağ açık") {
     solcpark();
   }
   else if (voice == "*sol park çık" || voice == "*sol açık") {
     scpark();
   }

   else if (voice == "*soldan geç" || voice == "*soldan geç") {
     solgec();
   }

   else if (voice == "*sagdan geç" || voice == "*sahadan geç") {
     sagec();
   }

   else if (voice == "*otomatik geç" || voice == "*otomatik geç") {
     otogec();
   }

   else if (voice == "*etrafı kontrol et" || voice == "*etrafı kontrol et") {
     radar();
   }
   voice = "";
 }
}

// robotun yön komutları

void radar ()
{

 for (pos = 0; pos <= 180; pos++)
 {
   sg90.write(pos);
   delay(15);
   digitalWrite(trig , HIGH);
   delay(1);
   digitalWrite(trig , LOW);
   sure = pulseIn(echo , HIGH);
   mesafe = (sure / 2) / 28.5;
   if ( mesafe <= 10)
   {
     for (int a = 0; a < 5; a++)
     {
       digitalWrite(yesil, HIGH);
       digitalWrite(kirmizi, HIGH);
       delay(100);
       digitalWrite(yesil, LOW);
       digitalWrite(kirmizi, LOW);
       delay(100);
     }
   }
 }
 for (pos = 180; pos >= 0; pos--)
 {
   sg90.write(pos);
   delay(15);
   digitalWrite(trig , HIGH);
   delay(1);
   digitalWrite(trig , LOW);
   sure = pulseIn(echo , HIGH);
   mesafe = (sure / 2) / 28.5;
   if (mesafe <= 10)
   {
     for (int a = 0; a < 5; a++)
     {
       digitalWrite(yesil, HIGH);
       digitalWrite(kirmizi, HIGH);
       delay(100);
       digitalWrite(yesil, LOW);
       digitalWrite(kirmizi, LOW);
       delay(100);
     }

   }
 }

 sg90.attach(3);
 sg90.write(90);
}

//................................................
void otogec()
{
 digitalWrite(trig , HIGH);
 delayMicroseconds(1000);
 digitalWrite(trig , LOW);
 sure = pulseIn(echo , HIGH);
 mesafe = (sure / 2) / 28.5 ;
 sg90.attach(3);
 sg90.write(180);
 delay (500);
 digitalWrite(trig , HIGH);
 delayMicroseconds(1000);
 digitalWrite(trig , LOW);
 sure = pulseIn(echo , HIGH);
 soldeger = (sure / 2) / 28.5;

 Serial.print("soldeger = "); Serial.println(soldeger);
 delay (500);
 sg90.write(90);
 delay (1000);
 sg90.write(0);
 delay (1000);
 digitalWrite(trig , HIGH);
 delayMicroseconds(1000);
 digitalWrite(trig , LOW);
 sure = pulseIn(echo , HIGH);
 sagdeger = (sure / 2) / 28.5;
 Serial.print("sagdeger = "); Serial.println(sagdeger);
 delay (1000);
 sg90.write(90);
 delay (1000);
 if (soldeger > sagdeger)
 {

   Serial.print("soldeger buyuk , sola donecek");
   digitalWrite(SolMotorileri, LOW);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, LOW);
   digitalWrite(SagMotorGeri, LOW);
   sg90.write(90);
   delay(2000);
   //_________________________________________________
   digitalWrite(trig , HIGH);
   delayMicroseconds(1000);
   digitalWrite(trig , LOW);
   sure = pulseIn(echo , HIGH);
   mesafe = (sure / 2) / 28.5 ;

   digitalWrite(SolMotorileri, HIGH);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, LOW);
   digitalWrite(SagMotorGeri, HIGH);
   delay(500);

   digitalWrite(SolMotorileri, LOW);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, LOW);
   digitalWrite(SagMotorGeri, LOW);
   delay(2000);
   sg90.write(0);
   delay(1000);
   digitalWrite(trig , HIGH);
   delayMicroseconds(1000);
   digitalWrite(trig , LOW);
   sure = pulseIn(echo , HIGH);
   mesafe = (sure / 2) / 28.5 ;
   sg90.attach(3);
   delay (500);
   //-----------------------------------------------------------------------------------------------
   while (mesafe < 50)
   {

     digitalWrite(trig , HIGH);
     delayMicroseconds(1000);
     digitalWrite(trig , LOW);
     sure = pulseIn(echo , HIGH);
     mesafe = (sure / 2) / 28.5 ;

     if (mesafe > 20 )
     {
       Serial.println("yaklasiyor -------------------------------");
       digitalWrite(SolMotorileri, LOW);
       digitalWrite(SolMotorGeri, HIGH);
       digitalWrite(SagMotorileri, HIGH);
       digitalWrite(SagMotorGeri, LOW);
       delay(100);

       digitalWrite(SolMotorileri, HIGH);
       digitalWrite(SolMotorGeri, LOW);
       digitalWrite(SagMotorileri, HIGH);
       digitalWrite(SagMotorGeri, LOW);
       delay(100);

       digitalWrite(SolMotorileri, LOW);
       digitalWrite(SolMotorGeri, LOW);
       digitalWrite(SagMotorileri, LOW);
       digitalWrite(SagMotorGeri, LOW);
       delay(100);

     }
    else if (mesafe < 10 )
     {

       Serial.println("uzaklasiyor +++++++++++++++++++++++++++++++++++");
       digitalWrite(SolMotorileri, HIGH);
       digitalWrite(SolMotorGeri, LOW);
       digitalWrite(SagMotorileri, LOW);
       digitalWrite(SagMotorGeri, HIGH);
      delay(100);
       digitalWrite(SolMotorileri, HIGH);
       digitalWrite(SolMotorGeri, LOW);
       digitalWrite(SagMotorileri, HIGH);
       digitalWrite(SagMotorGeri, LOW);
       delay(100);

     }
     else
     {
       
       Serial.println("duz ******************************************* ");
       digitalWrite(SolMotorileri, HIGH);
       digitalWrite(SolMotorGeri, LOW);
       digitalWrite(SagMotorileri, HIGH);
       digitalWrite(SagMotorGeri, LOW);
      delay(100);
     }

     digitalWrite(SolMotorileri, LOW);
     digitalWrite(SolMotorGeri, LOW);
     digitalWrite(SagMotorileri, LOW);
     digitalWrite(SagMotorGeri, LOW);

     digitalWrite(trig , HIGH);
     delayMicroseconds(1000);
     digitalWrite(trig , LOW);
     sure = pulseIn(echo , HIGH);
     mesafe = (sure / 2) / 28.5 ;
   delay(100);
   }
   sg90.write(90);
   delay(1000);
   digitalWrite(SolMotorileri, HIGH);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, HIGH);
   digitalWrite(SagMotorGeri, LOW);
   delay(600);
   digitalWrite(SolMotorileri, LOW);
   digitalWrite(SolMotorGeri, HIGH);
   digitalWrite(SagMotorileri, HIGH);
   digitalWrite(SagMotorGeri, LOW);
    delay(500);

   digitalWrite(SolMotorileri, HIGH);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, HIGH);
   digitalWrite(SagMotorGeri, LOW);
   delay(1000);
   digitalWrite(SolMotorileri, LOW);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, LOW);
   digitalWrite(SagMotorGeri, LOW);

 }
 if (soldeger <= sagdeger)
 {

   Serial.print("sagdeger buyuk , saga donecek");
   digitalWrite(SolMotorileri, LOW);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, LOW);
   digitalWrite(SagMotorGeri, LOW);
   sg90.write(90);

   delay(2000);
   digitalWrite(trig , HIGH);
   delayMicroseconds(1000);
   digitalWrite(trig , LOW);
   sure = pulseIn(echo , HIGH);
   mesafe = (sure / 2) / 28.5 ;

   digitalWrite(SolMotorileri, LOW);
   digitalWrite(SolMotorGeri, HIGH);
   digitalWrite(SagMotorileri, HIGH);
   digitalWrite(SagMotorGeri, LOW);
   delay(500);

   digitalWrite(SolMotorileri, LOW);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, LOW);
   digitalWrite(SagMotorGeri, LOW);
   delay(2000);
   sg90.write(180);
   delay(1000);
   digitalWrite(trig , HIGH);
   delayMicroseconds(1000);
   digitalWrite(trig , LOW);
   sure = pulseIn(echo , HIGH);
   mesafe = (sure / 2) / 28.5 ;
   sg90.attach(3);
   delay (500);
   //----------------------------------------------------------------------------
   while (mesafe < 50)
   {
     digitalWrite(trig , HIGH);
     delayMicroseconds(1000);
     digitalWrite(trig , LOW);
     sure = pulseIn(echo , HIGH);
     mesafe = (sure / 2) / 28.5 ;

     if (mesafe > 20 )
     {
       Serial.println("yaklasiyor -------------------------------");
       digitalWrite(SolMotorileri, HIGH);
       digitalWrite(SolMotorGeri, LOW);
       digitalWrite(SagMotorileri, LOW);
       digitalWrite(SagMotorGeri, HIGH);
      delay(100);

       digitalWrite(SolMotorileri, HIGH);
       digitalWrite(SolMotorGeri, LOW);
       digitalWrite(SagMotorileri, HIGH);
       digitalWrite(SagMotorGeri, LOW);
delay(100);
       digitalWrite(SolMotorileri, LOW);
       digitalWrite(SolMotorGeri, LOW);
       digitalWrite(SagMotorileri, LOW);
       digitalWrite(SagMotorGeri, LOW);
     delay(100);
     }

     else if (mesafe < 10 )
     {
       
       Serial.println("uzaklasiyor ++++++++++++++++++++++++++++++++++++");
       digitalWrite(SolMotorileri, LOW);
       digitalWrite(SolMotorGeri, HIGH);
       digitalWrite(SagMotorileri, HIGH);
       digitalWrite(SagMotorGeri, LOW);
       delay(100);
       digitalWrite(SolMotorileri, HIGH);
       digitalWrite(SolMotorGeri, LOW);
       digitalWrite(SagMotorileri, HIGH);
       digitalWrite(SagMotorGeri, LOW);
     delay(100);

     }
     else
     {
       Serial.println("duz****************************************************");
       digitalWrite(SolMotorileri, HIGH);
       digitalWrite(SolMotorGeri, LOW);
       digitalWrite(SagMotorileri, HIGH);
       digitalWrite(SagMotorGeri, LOW);
     delay(100);
     }
     digitalWrite(SolMotorileri, LOW);
     digitalWrite(SolMotorGeri, LOW);
     digitalWrite(SagMotorileri, LOW);
     digitalWrite(SagMotorGeri, LOW);

     digitalWrite(trig , HIGH);
     delayMicroseconds(1000);
     digitalWrite(trig , LOW);
     sure = pulseIn(echo , HIGH);
     mesafe = (sure / 2) / 28.5 ;
     delay(100);
   }
   sg90.write(90);
   delay(1000);
   digitalWrite(SolMotorileri, HIGH);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, HIGH);
   digitalWrite(SagMotorGeri, LOW);
   delay(600);
   digitalWrite(SolMotorileri, HIGH);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, LOW);
   digitalWrite(SagMotorGeri, HIGH);
   delay(500);

   digitalWrite(SolMotorileri, HIGH);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, HIGH);
   digitalWrite(SagMotorGeri, LOW);
   delay(1000);
   digitalWrite(SolMotorileri, LOW);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, LOW);
   digitalWrite(SagMotorGeri, LOW);

 }
}

//.........................................
void sagec()
{

 Serial.print("sagdeger buyuk , saga donecek");
   digitalWrite(SolMotorileri, LOW);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, LOW);
   digitalWrite(SagMotorGeri, LOW);
   sg90.write(90);

   delay(2000);
   digitalWrite(trig , HIGH);
   delayMicroseconds(1000);
   digitalWrite(trig , LOW);
   sure = pulseIn(echo , HIGH);
   mesafe = (sure / 2) / 28.5 ;

   digitalWrite(SolMotorileri, LOW);
   digitalWrite(SolMotorGeri, HIGH);
   digitalWrite(SagMotorileri, HIGH);
   digitalWrite(SagMotorGeri, LOW);
   delay(500);

   digitalWrite(SolMotorileri, LOW);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, LOW);
   digitalWrite(SagMotorGeri, LOW);
   delay(2000);
   sg90.write(180);
   delay(1000);
   digitalWrite(trig , HIGH);
   delayMicroseconds(1000);
   digitalWrite(trig , LOW);
   sure = pulseIn(echo , HIGH);
   mesafe = (sure / 2) / 28.5 ;
   sg90.attach(3);
   delay (500);
   //----------------------------------------------------------------------------
   while (mesafe < 50)
   {
     digitalWrite(trig , HIGH);
     delayMicroseconds(1000);
     digitalWrite(trig , LOW);
     sure = pulseIn(echo , HIGH);
     mesafe = (sure / 2) / 28.5 ;

     if (mesafe > 20 )
     {
       Serial.println("yaklasiyor -------------------------------");
       digitalWrite(SolMotorileri, HIGH);
       digitalWrite(SolMotorGeri, LOW);
       digitalWrite(SagMotorileri, LOW);
       digitalWrite(SagMotorGeri, HIGH);
      delay(100);

       digitalWrite(SolMotorileri, HIGH);
       digitalWrite(SolMotorGeri, LOW);
       digitalWrite(SagMotorileri, HIGH);
       digitalWrite(SagMotorGeri, LOW);
delay(100);
       digitalWrite(SolMotorileri, LOW);
       digitalWrite(SolMotorGeri, LOW);
       digitalWrite(SagMotorileri, LOW);
       digitalWrite(SagMotorGeri, LOW);
     delay(100);
     }

     else if (mesafe < 10 )
     {
       
       Serial.println("uzaklasiyor ++++++++++++++++++++++++++++++++++++");
       digitalWrite(SolMotorileri, LOW);
       digitalWrite(SolMotorGeri, HIGH);
       digitalWrite(SagMotorileri, HIGH);
       digitalWrite(SagMotorGeri, LOW);
       delay(100);
       digitalWrite(SolMotorileri, HIGH);
       digitalWrite(SolMotorGeri, LOW);
       digitalWrite(SagMotorileri, HIGH);
       digitalWrite(SagMotorGeri, LOW);
     delay(100);

     }
     else
     {
       Serial.println("duz****************************************************");
       digitalWrite(SolMotorileri, HIGH);
       digitalWrite(SolMotorGeri, LOW);
       digitalWrite(SagMotorileri, HIGH);
       digitalWrite(SagMotorGeri, LOW);
     delay(100);
     }
     digitalWrite(SolMotorileri, LOW);
     digitalWrite(SolMotorGeri, LOW);
     digitalWrite(SagMotorileri, LOW);
     digitalWrite(SagMotorGeri, LOW);

     digitalWrite(trig , HIGH);
     delayMicroseconds(1000);
     digitalWrite(trig , LOW);
     sure = pulseIn(echo , HIGH);
     mesafe = (sure / 2) / 28.5 ;
     delay(100);
   }
   sg90.write(90);
   delay(1000);
   digitalWrite(SolMotorileri, HIGH);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, HIGH);
   digitalWrite(SagMotorGeri, LOW);
   delay(500);
   digitalWrite(SolMotorileri, HIGH);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, LOW);
   digitalWrite(SagMotorGeri, HIGH);
   delay(500);

   digitalWrite(SolMotorileri, HIGH);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, HIGH);
   digitalWrite(SagMotorGeri, LOW);
   delay(1000);
   digitalWrite(SolMotorileri, LOW);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, LOW);
   digitalWrite(SagMotorGeri, LOW);

}

//.......................................
void solgec()
{

  Serial.print("soldeger buyuk , sola donecek");
   digitalWrite(SolMotorileri, LOW);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, LOW);
   digitalWrite(SagMotorGeri, LOW);
   sg90.write(90);
   delay(2000);
   //_________________________________________________
   digitalWrite(trig , HIGH);
   delayMicroseconds(1000);
   digitalWrite(trig , LOW);
   sure = pulseIn(echo , HIGH);
   mesafe = (sure / 2) / 28.5 ;

   digitalWrite(SolMotorileri, HIGH);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, LOW);
   digitalWrite(SagMotorGeri, HIGH);
   delay(500);

   digitalWrite(SolMotorileri, LOW);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, LOW);
   digitalWrite(SagMotorGeri, LOW);
   delay(2000);
   sg90.write(0);
   delay(1000);
   digitalWrite(trig , HIGH);
   delayMicroseconds(1000);
   digitalWrite(trig , LOW);
   sure = pulseIn(echo , HIGH);
   mesafe = (sure / 2) / 28.5 ;
   sg90.attach(3);
   delay (500);
   //-----------------------------------------------------------------------------------------------
   while (mesafe < 50)
   {

     digitalWrite(trig , HIGH);
     delayMicroseconds(1000);
     digitalWrite(trig , LOW);
     sure = pulseIn(echo , HIGH);
     mesafe = (sure / 2) / 28.5 ;

     if (mesafe > 20 )
     {
       Serial.println("yaklasiyor -------------------------------");
       digitalWrite(SolMotorileri, LOW);
       digitalWrite(SolMotorGeri, HIGH);
       digitalWrite(SagMotorileri, HIGH);
       digitalWrite(SagMotorGeri, LOW);
       delay(100);

       digitalWrite(SolMotorileri, HIGH);
       digitalWrite(SolMotorGeri, LOW);
       digitalWrite(SagMotorileri, HIGH);
       digitalWrite(SagMotorGeri, LOW);
       delay(100);

       digitalWrite(SolMotorileri, LOW);
       digitalWrite(SolMotorGeri, LOW);
       digitalWrite(SagMotorileri, LOW);
       digitalWrite(SagMotorGeri, LOW);
       delay(100);

     }
    else if (mesafe < 10 )
     {

       Serial.println("uzaklasiyor +++++++++++++++++++++++++++++++++++");
       digitalWrite(SolMotorileri, HIGH);
       digitalWrite(SolMotorGeri, LOW);
       digitalWrite(SagMotorileri, LOW);
       digitalWrite(SagMotorGeri, HIGH);
      delay(100);
       digitalWrite(SolMotorileri, HIGH);
       digitalWrite(SolMotorGeri, LOW);
       digitalWrite(SagMotorileri, HIGH);
       digitalWrite(SagMotorGeri, LOW);
       delay(100);

     }
     else
     {
       
       Serial.println("duz ******************************************* ");
       digitalWrite(SolMotorileri, HIGH);
       digitalWrite(SolMotorGeri, LOW);
       digitalWrite(SagMotorileri, HIGH);
       digitalWrite(SagMotorGeri, LOW);
      delay(100);
     }

     digitalWrite(SolMotorileri, LOW);
     digitalWrite(SolMotorGeri, LOW);
     digitalWrite(SagMotorileri, LOW);
     digitalWrite(SagMotorGeri, LOW);

     digitalWrite(trig , HIGH);
     delayMicroseconds(1000);
     digitalWrite(trig , LOW);
     sure = pulseIn(echo , HIGH);
     mesafe = (sure / 2) / 28.5 ;
   delay(100);
   }
   sg90.write(90);
   delay(1000);
   digitalWrite(SolMotorileri, HIGH);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, HIGH);
   digitalWrite(SagMotorGeri, LOW);
   delay(600);
   digitalWrite(SolMotorileri, LOW);
   digitalWrite(SolMotorGeri, HIGH);
   digitalWrite(SagMotorileri, HIGH);
   digitalWrite(SagMotorGeri, LOW);
   delay(500);

   digitalWrite(SolMotorileri, HIGH);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, HIGH);
   digitalWrite(SagMotorGeri, LOW);
   delay(1000);
   digitalWrite(SolMotorileri, LOW);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, LOW);
   digitalWrite(SagMotorGeri, LOW);

}

void engell ()
{

 digitalWrite(trig , HIGH);
 delayMicroseconds(1000);
 digitalWrite(trig , LOW);
 sure = pulseIn(echo , HIGH);
 mesafe = (sure / 2) / 28.5 ;
 while (mesafe > 10)
 {
   Serial.print(mesafe);
   Serial.println("---------------");
   digitalWrite(SolMotorileri, HIGH);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorileri, HIGH);
   digitalWrite(SagMotorGeri, LOW);
   delay (20);
   digitalWrite(SolMotorileri, LOW);
   digitalWrite(SolMotorGeri, LOW);
   digitalWrite(SagMotorGeri, LOW);
   digitalWrite(SagMotorileri, LOW);

   digitalWrite(trig , HIGH);
   delayMicroseconds(1000);
   digitalWrite(trig , LOW);
   sure = pulseIn(echo , HIGH);
   mesafe = (sure / 2) / 28.5 ;
   delay (3);

 }

}

void engel ()
{ if ( mesafe < 19 )
 {
   Serial.print(mesafe);
   Serial.println("---------------");
   for (int a = 0; a < 5; a++)
   {
     digitalWrite(yesil, HIGH);
     delay(100);
     digitalWrite(yesil, LOW);
     delay(100);
   }
 }
 else
 {
   for (int a = 0; a < 5; a++)
   {
     digitalWrite(kirmizi, HIGH);
     delay(100);
     digitalWrite(kirmizi, LOW);
     delay(100);
   }
 }

}
void uengel ()
{ if ( mesafe < 50 )
 {
   Serial.print(mesafe);
   Serial.println("---------------");
   for (int a = 0; a < 5; a++)
   {
     digitalWrite(yesil, HIGH);
     delay(100);
     digitalWrite(yesil, LOW);
     delay(100);
   }
 }
 else
 {
   for (int a = 0; a < 5; a++)
   {
     digitalWrite(kirmizi, HIGH);
     delay(100);
     digitalWrite(kirmizi, LOW);
     delay(100);
   }
 }

}
void hayir()
{

 for (int a = 0; a < 5; a++)
 {
   digitalWrite(kirmizi, HIGH);
   delay(100);
   digitalWrite(kirmizi, LOW);
   delay(100);
 }
}
void evet()
{

 for (int a = 0; a < 5; a++)
 {
   digitalWrite(yesil, HIGH);
   delay(100);
   digitalWrite(yesil, LOW);
   delay(100);
 }
}
void sola()
{

 sg90.attach(3);
 sg90.write(180);
 delay (15);
}
void ileriye()
{

 sg90.attach(3);
 sg90.write(90);
 delay (15);
}
void saga()
{

 sg90.attach(3);
 sg90.write(0);
 delay (15);
}

void scpark()
{
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, HIGH);
 digitalWrite(SagMotorGeri, LOW);
 digitalWrite(SagMotorileri, HIGH);
 delay(450);
 digitalWrite(SolMotorileri, HIGH);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorileri, HIGH);
 digitalWrite(SagMotorGeri, LOW);
 delay(450);
 digitalWrite(SolMotorileri, HIGH);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorGeri, HIGH);
 digitalWrite(SagMotorileri, LOW);
 delay(450);
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorileri, LOW);
 digitalWrite(SagMotorGeri, LOW);
}
void solcpark()
{
 digitalWrite(SolMotorileri, HIGH);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorGeri, HIGH);
 digitalWrite(SagMotorileri, LOW);
 delay(450);
 digitalWrite(SolMotorileri, HIGH);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorileri, HIGH);
 digitalWrite(SagMotorGeri, LOW);
 delay(450);
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, HIGH);
 digitalWrite(SagMotorGeri, LOW);
 digitalWrite(SagMotorileri, HIGH);
 delay(450);
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorileri, LOW);
 digitalWrite(SagMotorGeri, LOW);
}
void solpark()
{
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, HIGH);
 digitalWrite(SagMotorGeri, LOW);
 digitalWrite(SagMotorileri, HIGH);
 delay(450);
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, HIGH);
 digitalWrite(SagMotorileri, LOW);
 digitalWrite(SagMotorGeri, HIGH);
 delay(450);
 digitalWrite(SolMotorileri, HIGH);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorGeri, HIGH);
 digitalWrite(SagMotorileri, LOW);
 delay(450);
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, HIGH);
 digitalWrite(SagMotorileri, LOW);
 digitalWrite(SagMotorGeri, HIGH);
 delay(100);
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorileri, LOW);
 digitalWrite(SagMotorGeri, LOW);
}
void spark()
{
 digitalWrite(SolMotorileri, HIGH);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorGeri, HIGH);
 digitalWrite(SagMotorileri, LOW);
 delay(450);
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, HIGH);
 digitalWrite(SagMotorileri, LOW);
 digitalWrite(SagMotorGeri, HIGH);
 delay(450);
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, HIGH);
 digitalWrite(SagMotorGeri, LOW);
 digitalWrite(SagMotorileri, HIGH);
 delay(450);
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, HIGH);
 digitalWrite(SagMotorileri, LOW);
 digitalWrite(SagMotorGeri, HIGH);
 delay(100);
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorileri, LOW);
 digitalWrite(SagMotorGeri, LOW);
}
void lileri()
{
 digitalWrite(SolMotorileri, HIGH);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorileri, HIGH);
 digitalWrite(SagMotorGeri, LOW);

 digitalWrite(yesil, HIGH);
 digitalWrite(kirmizi, HIGH);

}

void lamba()
{
 digitalWrite(yesil, HIGH);
 digitalWrite(kirmizi, HIGH);

}
void klamba()
{

 digitalWrite(yesil, LOW);
 digitalWrite(kirmizi, LOW);
}
void gitgel()
{
 sg90.attach(3);
 sg90.write(90);
 delay (15);
 digitalWrite(SolMotorileri, HIGH);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorileri, HIGH);
 digitalWrite(SagMotorGeri, LOW);
 delay(500);
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorileri, LOW);
 digitalWrite(SagMotorGeri, LOW);
 delay(100);
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, HIGH);
 digitalWrite(SagMotorileri, LOW);
 digitalWrite(SagMotorGeri, HIGH);
 delay(500);
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorileri, LOW);
 digitalWrite(SagMotorGeri, LOW);
 delay(100);
}
void ileri()
{
 sg90.attach(3);
 sg90.write(90);
 delay (15);
 digitalWrite(SolMotorileri, HIGH);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorileri, HIGH);
 digitalWrite(SagMotorGeri, LOW);
}
void azileri()
{
 sg90.attach(3);
 sg90.write(90);
 delay (15);
 digitalWrite(SolMotorileri, HIGH);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorileri, HIGH);
 digitalWrite(SagMotorGeri, LOW);
 delay(500);
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorileri, LOW);
 digitalWrite(SagMotorGeri, LOW);
}

void geri()
{
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, HIGH);
 digitalWrite(SagMotorileri, LOW);
 digitalWrite(SagMotorGeri, HIGH);
}
void azgeri()
{
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, HIGH);
 digitalWrite(SagMotorileri, LOW);
 digitalWrite(SagMotorGeri, HIGH);
 delay(500);
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorileri, LOW);
 digitalWrite(SagMotorGeri, LOW);
}
void don()
{
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, HIGH);
 digitalWrite(SagMotorGeri, LOW);
 digitalWrite(SagMotorileri, HIGH);
}
void sag()
{
 sg90.attach(3);
 sg90.write(90);
 delay (15);
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, HIGH);
 digitalWrite(SagMotorGeri, LOW);
 digitalWrite(SagMotorileri, HIGH);
 delay(500);
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorileri, LOW);
 digitalWrite(SagMotorGeri, LOW);
}
void solileri()
{
 sg90.attach(3);
 sg90.write(90);
 delay (15);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SolMotorileri, HIGH);
 digitalWrite(SagMotorileri, LOW);
 digitalWrite(SagMotorGeri, HIGH);
 delay(500);
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorileri, LOW);
 digitalWrite(SagMotorGeri, LOW);
 delay(100);
 digitalWrite(SolMotorileri, HIGH);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorileri, HIGH);
 digitalWrite(SagMotorGeri, LOW);
 delay(500);
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorileri, LOW);
 digitalWrite(SagMotorGeri, LOW);
}
void sagileri()
{
 sg90.attach(3);
 sg90.write(90);
 delay (15);
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, HIGH);
 digitalWrite(SagMotorGeri, LOW);
 digitalWrite(SagMotorileri, HIGH);
 delay(500);
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorileri, LOW);
 digitalWrite(SagMotorGeri, LOW);
 delay(100);
 digitalWrite(SolMotorileri, HIGH);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorileri, HIGH);
 digitalWrite(SagMotorGeri, LOW);
 delay(500);
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorileri, LOW);
 digitalWrite(SagMotorGeri, LOW);
}

void sol()
{
 sg90.attach(3);
 sg90.write(90);
 delay (15);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SolMotorileri, HIGH);
 digitalWrite(SagMotorileri, LOW);
 digitalWrite(SagMotorGeri, HIGH);
 delay(500);
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SagMotorileri, LOW);
 digitalWrite(SagMotorGeri, LOW);
}

void dur()
{
 digitalWrite(SolMotorGeri, LOW);
 digitalWrite(SolMotorileri, LOW);
 digitalWrite(SagMotorileri, LOW);
 digitalWrite(SagMotorGeri, LOW);
 digitalWrite(3, LOW);
 digitalWrite(4, LOW);
}

 

 

 

 

yüklenecek program

20160605_201733 20160605_201744 20160605_201823 20160605_201854 20160605_201907 20160605_201914 20160605_201920 20160605_201932

Sosyal Medyada Paylaş Facebook Twitter Google+

Etiketler: , , , , ,
Eklenme Tarihi: 1 Nisan 2018

Konu hakkında yorumunuzu yazın