Arduino

Engeli Gördüğünde Duran, Engel Olmadığında Çizgi İzleyen Robotun Kodlanması

Çizgi izleyen eğitsel robotun tasarımıyla ilgili tüm işlemleri daha önceki makalelerde anlatmıştık. Biz burada gerekli olan kodları yazmakla yetineceğiz.

int trig = 7; // Mesafe sensörü trig pini için D7 portunu belirle
int echo = 8; // Mesafe sensörü echo pini için D8 portunu belirle
int h=100; // Motor dönüş hızını belirle
void setup(){
 pinMode(5, OUTPUT);// sağ motor ileri pini
pinMode(6, OUTPUT);// sağ motor geri pini
pinMode(9, OUTPUT);// sol motor ileri pini
pinMode(10, OUTPUT);// sol motor geri pini
pinMode(2, INPUT); // Sağ Cizgi sensor
pinMode(3, INPUT); // Orta Cizgi sensor
pinMode(4, INPUT);// Sol Cizgi sensor
 
 pinMode(trig, OUTPUT);
 pinMode(echo , INPUT);
}
void loop(){
digitalWrite(trig , 1);
delay(1);
digitalWrite(trig , 0);
int sure = pulseIn(echo , 1);
int mesafe = (sure/2) / 28.97;
delay(1);
int sR = digitalRead(2);
int sC = digitalRead(3);
int sL = digitalRead(4);
if (mesafe < 30 ) // mesafe 30 cm’den küçük ise robotu durdur.
{
dur();
}
else // mesafe 30 cm’den büyük ise çizgiyi takip et.
{
if ((sL==1) && (sC==0) && (sR==1)) ileri();
if ((sL==0) && (sC==1) && (sR==1)) sol();
if ((sL==1) && (sC==1) && (sR==0)) sag();
}
}
void dur(){
analogWrite(5, 0);
analogWrite(6, 0);
analogWrite(9, 0);
analogWrite(10, 0);
}
void ileri() {
analogWrite(5, h);
analogWrite(6, 0);
analogWrite(9, h);
analogWrite(10, 0);
}
void sol() {
analogWrite(5, h);
analogWrite(6, 0);
analogWrite(9, 0);
analogWrite(10, 0);
}
void sag() {
analogWrite(5, 0);
analogWrite(6, 0);
analogWrite(9, h);
analogWrite(10, 0);
}

 


İlgili Makaleler
Eğitsel Robotun Devre Şeması
LDR İle Ölçülen Işık Şiddetinin LCD Ekranda Gösterilmesi
Robotik Kodlama Çalışma Soruları
Eğitsel Robotun Montajı
Mesafe Sensöründe Okunan Değerlerin LCD Ekranda Gösterilmesi
7 Segment Display’in Uzaktan Kumanda ile Kullanımı
LCD Ekranda Yazılan Yazının Sağa veya Sola Kaydırılması
Potansiyometre ile LED Lambalarının Yanıp Sönme Hızının Ayarlanması
Sıcaklık Sensörü ile Okunan Değerlerin LCD Ekranda Gösterilmesi
Seri Port Ekranında Merhaba Dünya Mesajını Yazdıran Arduino Uno Uygulaması
Eğitsel Robotun Programlanması
Mikrodenetleyici Kart İle Birlikte Kullanılan 7 Segment Display Elemanı ve Özellikleri
Robot Tabanlı Proje Geliştirmede Eğitsel Robot Bileşenleri
TinkerCAD Platformunu Kullanarak Merhaba Dünya Mesajını LCD Ekranda Görüntüleyen Arduino Uygulaması
Rakamları 7 Segment Display Elemanıyla Görüntüleyen Uygulama
Arduino Uno Kart Kullanarak Anahtar İle Kontrol Edilen Dijital Giriş Uygulamasını TinkerCAD Platformunda Yapma
Arduino Uno Kart ile Trafik Lambası Kontrolü
RGB LED ile Uzaktan Kumandanın Kullanımı
Arduino Kart İle Led Yakma Uygulamasını TinkerCAD Platformunda Yapma
Arduino Kart İle Rastgele Belirlenen Süre Kadar Led Yakma Uygulamasını TinkerCAD Platformunda Yapma

Yorum Ekle
   
Kötü
İyi