Çizgi izleme sensörleri, robotların ve diğer otonom araçların belirli bir çizgiyi veya yolu takip etmelerine yardımcı olan önemli sensörlerdir.
Çizgi İzleme Sensörü Nedir?
Çizgi izleme sensörleri, üzerine yerleştirildikleri yüzeydeki çizgileri algılayabilen sensörlerdir. Genellikle yüzey üzerine bir çizgi çizilir veya bant yapıştırılır ve çizgi izleme sensörü, bu çizgiyi takip eder. Sensörün üzerinde bulunan fotoğraf veya IR (kızılötesi) sensörler, yüzeydeki kontrast farklılıklarını algılar. Sensörler, beyaz ve siyah çizgiler arasındaki kontrast farklarını kullanarak çizgiyi izler.
Çalışma Prensibi
Çizgi izleme sensörlerinin çalışma prensibi, yüzey üzerindeki çizgiyi takip ederken sensörler tarafından algılanan kontrast farklarını kullanmaktır. Sensörler, yüzeydeki renk değişikliklerini veya yansıma farklarını algılar. Beyaz bir zemin üzerine çizilen siyah bir çizgi, sensörler tarafından algılandığında, bu kontrast farkı çizgiyi takip etmek için kullanılır.
Çizgi izleme sensörleri, bir çizgiyi takip ederken genellikle iki veya daha fazla sensör kullanılır. Sensörlerin altında bir işlemci veya mikrodenetleyici bulunur ve bu mikrodenetleyici, sensörlerden gelen bilgileri işler ve robotun yolu üzerindeki çizgiyi takip etmesini sağlar.
Kullanım Alanları
Çizgi izleme sensörleri, otonom robotlar ve araçlar için birçok farklı uygulama alanında kullanılır. İşte bazı örnekler:
Örnek Proje: Çizgi İzleyen Robot
Aşağıda, bir Arduino tabanlı çizgi izleyen robot projesi adım adım:
Malzemeler:
Devre Bağlantısı:
Arduino Programı:
Aşağıda, Arduino ile çizgi izleyen robotunuzu programlamak için kullanabileceğiniz basit bir örnek program bulunmaktadır:
int leftMotorPin1 = 2;
int leftMotorPin2 = 3;
int rightMotorPin1 = 4;
int rightMotorPin2 = 5;
int leftSensor = 6;
int rightSensor = 7;
void setup() {
pinMode(leftMotorPin1, OUTPUT);
pinMode(leftMotorPin2, OUTPUT);
pinMode(rightMotorPin1, OUTPUT);
pinMode(rightMotorPin2, OUTPUT);
}
void loop() {
int leftValue = digitalRead(leftSensor);
int rightValue = digitalRead(rightSensor);
if (leftValue == LOW && rightValue == LOW) {
// İleri git
digitalWrite(leftMotorPin1, HIGH);
digitalWrite(leftMotorPin2, LOW);
digitalWrite(rightMotorPin1, HIGH);
digitalWrite(rightMotorPin2, LOW);
} else if (leftValue == HIGH && rightValue == LOW) {
// Sağa dön
digitalWrite(leftMotorPin1, LOW);
digitalWrite(leftMotorPin2, LOW);
digitalWrite(rightMotorPin1, HIGH);
digitalWrite(rightMotorPin2, LOW);
} else if (leftValue == LOW && rightValue == HIGH) {
// Sola dön
digitalWrite(leftMotorPin1, HIGH);
digitalWrite(leftMotorPin2, LOW);
digitalWrite(rightMotorPin1, LOW);
digitalWrite(rightMotorPin2, LOW);
} else {
// Geri git
digitalWrite(leftMotorPin1, LOW);
digitalWrite(leftMotorPin2, HIGH);
digitalWrite(rightMotorPin1, LOW);
digitalWrite(rightMotorPin2, HIGH);
}
}
Bu program, çizgi izleme sensörlerinden gelen verilere göre robotunuzu ileri, geri, sağa veya sola yönlendirir. Sensörler çizgiyi algıladığında robot yönünü ayarlar.
Bu örnek proje, çizgi izleme sensörlerini kullanarak basit bir çizgi izleyen robot yapmanın temelini atmaktadır. Projeyi daha da geliştirerek robotunuzun daha karmaşık yolları takip etmesini sağlayabilir ve çeşitli engelleri aşabilmesini sağlayabilirsiniz.
KİŞİSEL VERİLERİN İŞLENMESİ HAKKINDA AYDINLATMA METNİMİZİ OKUYABİLİRSİNİZ.