Ana Sayfa Arduino Çizgi İzleyen Robot Yapımı

Çizgi İzleyen Robot Yapımı

7 min read
1
3
1,793

Merhaba arkadaşlar,

Bu yazımda sizlere basit bir çizgi izleyen robot yapımını anlatacağım. Öncelikle çizgi izleyen robotun ne olduğundan ve çalışma mantığından bahsedelim.

Çizgi izleyen beyaz zemin üzerindeki siyah çizgiyi ya da siyah zemin üzerindeki beyaz çizgiyi takip eden bir robottur. Robot yarışmalarının vazgeçilmezi, belki de artık klişeleşmiş bir robottur.

Altında bulunan sensörler sayesinde siyah ve beyazı ayırt ederek yolunu bulur. Peki nasıl bulur?  A,B,C durumlarını inceleyerek anlamaya çalışalım…

A durumunda şekilde görüldüğü gibi üç sensörden,soldaki sensör bize bilgi (kırmızı olan) veriyor. Yani robotumuz çizgiden sağa sapmış. Robotu tekrar çizgiye getirmek için sola dönüş yapmamız gerek. Bunu da sol motoru durdurup sağ motora güç vererek yapabiliriz.

B durumunda ise sağdaki sensör bize bilgi veriyor. Yani robot sola sapmış. Bizim robotumuzu sağa döndürmemiz gerek. Bunu da sağ motoru durdurup sol motora güç verdiğimizde başarabiliriz.

C durumunda ise bize ortadaki sensörden bilgi geliyor. Yani robotumuz zaten çizgi üzerinde. Bu durumda her iki motora da güç vererek robotumuzun düz gitmesini sağlayabiliriz.

Kullanılan Malzemeler

QTR

QTR çizgiyi algılamakta kullanacağımız sensördür. Dijital ve analog olanları vardır. Dijital olanlar programlanması kolay olduğundan

daha çok tercih edilir. Üç bacaklı olup ikisi besleme uçlarımız(+5V ve GND) bir tanesi ise bilgi ucumuzdur.

L293D Motor Sürücü

Motorlar led direnç gibi elektronik aletlerden daha fazla akım çektiklerinden tek başlarına kullanılmaz, bir motor sürücü ile kullanılırlar.L293D yaklaşık 1.2 A ‘e kadar dayanabilen, işimizi görecek bir entegredir. Entegrenin bacak bağlantıları da yandaki şekilde görülmektedir.

DC Motor

Başlangıç için 6-9 V ‘luk DC motor işimizi görecektir.

Arduino

Arduino bildiğimiz gibi robotumuzun beynidir. Robotumuzu onun sayesinde kontrol edeceğiz.

Robot İçin Uygun Bir Kasa

Kasa olarak üç boyutlu yazıcıdan uygun bir kasa çıkartarak kendi özel kasanızı kullanabilirsiniz. Eğer imkanınız yoksa bir delikli plaket işinizi görecektir.

Sarhoş Teker

Robotumuzun hareketini kolaylaştırmak için sarhoş teker kullanabiliriz.

Devre Şeması

Arduino Kodları

int sol_s = 2, ort_s = 3, sag_s = 4; //sensör pinleri

int sol_g = 9; //motor pinleri
int sol_i = 8;
int sag_g = 11; //eğer motor dönüş yönünde problem
int sag_i = 12; //yaşıyorsanız bunu pinlerin yerini
//değiştirerek çözebilirsiniz

int dur2, dur3, dur4; //sensörden okunacak değerlerin
//atanacağı değişkenler
void setup()
{
pinMode(2, OUTPUT);
pinMode(3, OUTPUT);
pinMode(4, OUTPUT); //motor pimleri çıkış olarak ayrkanır
pinMode(5, OUTPUT);

pinMode(2, INPUT);
pinMode(3, INPUT); //sensör pinleri giriş olarak ayarlanır
pinMode(4, INPUT);
}

void loop()
{
dur2 = digitalRead(sol_s);
dur3 = digitalRead(sag_s); //sensörlerden gelen bilgiler
dur4 = digitalRead(ort_s); //okundu ve değişkenlere atandı
if (dur3 == HIGH)
{

digitalWrite(sol_i, HIGH);
digitalWrite(sol_g, LOW); //eğer ortadaki sensörden bilgi
digitalWrite(sag_i, HIGH); //geliyorsa robot düz gidecek
digitalWrite(sag_g, LOW);

}

else if (dur2 == HIGH)
{
digitalWrite(sol_i, LOW);
digitalWrite(sol_g, LOW); //eğer sol sensörden bilgi
digitalWrite(sag_i, HIGH); //geliyorsa robot sağa dönecek
digitalWrite(sag_g, LOW);

}

else if (dur4 == HIGH)
{
digitalWrite(sol_i, HIGH);
digitalWrite(sol_g, LOW); //eğer sağ sensörden bilgi
digitalWrite(sag_i, LOW); //geliyorsa robot sola dönecek
digitalWrite(sag_g, LOW);

}
}

 

NOT: Robot üç tane sensör ile ve en basit şekilde yapılmıştır. Sizler sensör sayısını arttırıp daha fonksiyonel bir kod yazarak çok daha verimli robotlar yapabilirsiniz… Şimdiden kolay gelsin… 

Buna Benzer Yazılar Göster !
Daha Fazlasını Yükle - Yunus Arat
Daha Fazla Göster -  Arduino

1 Yorum

  1. […] gibi malzemelerimizi “çizgi izleyen robot” yazımızda kısaca bahsetmiştik. O yazıma buradan ulaşabilirsiniz.O yüzden şimdi sadece HC-SR04 ultrasonik mesafe sensörünü […]

    Reply

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Bak Bakalım ?

Arduino ile Röle Kullanarak Harakete Duyarlı Lamba Yapımı

Merhaba arkadaşlar, bugün sizlerle koridorlarda merdivenlerde çokça gördüğünüz harekete du…