Çizgi İzleyen Robot Projem

ba2791

Yeni Üye
Katılım
3 Ocak 2021
Mesajlar
6
Selamlar herkese proje ödevimi yaparken bir yerde takıldım yapamıyorum rica etsem bana yardımcı olabilir misiniz? Projem çizgi izleyen robot fakat robotum çizgi izlemiyor , yerinde 0 çiziyor .Çizgi izleyen sensörlerinde bir sorun var sanırım.4'lü Çizgi İzleyen Sensör Seti kullanıyorum. Boşluğa bakınca tüm ışıklar sönüyor , cisim yaklaştırınca sensörler teker teker yanmaya başlıyor. Ama masaya koyunca hepsi birden yanıyor.(altına beyaz kağıt koyduğumda da bir değişiklik olmuyor malesef). Belirli bir yüksekliğe kaldırdığımda sönüyor. Uzun bir süredir bu sorunla uğraşıyorum. Yardımcı olabilirseniz çok mutlu olurum.
Sağlıklı günler.
 
Foruma hoşgeldin!

Kullandığın sensörün modelini ve projenin genel resimlerini atarsan daha iyi yardım alabilirsin. Bir de herhalde sensör kendi başına her şeyi halletmiyor, bir yazılım ile sensör bilgilerini işliyorsundur. Nasıl bir algoritma kullanıyorsun onu da anlat belki sorun algoritma ile ilgilidir.
 
Merhaba , hoşbuldum .
Kullandığım malzemelerin linklerini ekliyorum.

Arduino Bey Youtube kanalından aldığım şema ve kodları da ekliyorum.

C:
int ENA = 3; // motor hız kontrolleri için
int IN1 = 1;
int IN2 = 2;

int ENB = 6;
int IN3 = 4;
int IN4 = 5;


#define ENASpeed 100 // motorların hızını 100 olarak ayarlıyoruz.
#define ENBSpeed 100

int Sensor1 = 0; //sensörlerin ilk değerleri 0 olarak giriliyor.
int Sensor2 = 0;
int Sensor3 = 0;
int Sensor4 = 0;

void setup() {

  pinMode(ENA, OUTPUT);
  pinMode(IN1, OUTPUT); //motorlar çıkış pinidir. output olarak atanır.
  pinMode(IN2, OUTPUT);

  pinMode(ENB, OUTPUT);
  pinMode(IN3, OUTPUT);
  pinMode(IN4, OUTPUT);

  pinMode(Sensor1, INPUT); // sensörler in (giriş) pinidir.
  pinMode(Sensor2, INPUT);
  pinMode(Sensor3, INPUT);
  pinMode(Sensor4, INPUT);
 
}

void loop(){

 
  analogWrite(ENA, ENASpeed); // belirlediğimiz hızları aktif ediyoruz.
  analogWrite(ENB, ENBSpeed);

 
  Sensor1 = digitalRead(8); // sensörlerin bağlantı pinlerini giriyoruz.
  Sensor2 = digitalRead(9);
  Sensor3 = digitalRead(10);
  Sensor4 = digitalRead(11);



  if(Sensor4 == HIGH && Sensor3 == HIGH && Sensor2 == LOW && Sensor1 == LOW){

  
    digitalWrite(IN1, LOW);
    digitalWrite(IN2, HIGH); // sensör değerlerine göre motorların yönlerini belirliyoruz

    digitalWrite(IN3, HIGH);
    digitalWrite(IN4, LOW);
  }

  else if (Sensor4 == LOW && Sensor3 == LOW && Sensor2 == HIGH && Sensor1 == HIGH){

 
    digitalWrite(IN1, HIGH);
    digitalWrite(IN2, LOW); // aynı durumu öteki sensörler için de yapıyoruz

    digitalWrite(IN3, LOW);
    digitalWrite(IN4, HIGH);
  }

  else{

    //if(Sensor4 == LOW && Sensor3 == HIGH && Sensor2 == HIGH && Sensor1 == LOW


    digitalWrite(IN1, LOW);
    digitalWrite(IN2, HIGH);
    digitalWrite(IN3, LOW);
    digitalWrite(IN4, HIGH); 
  }
}
 

Ekler

  • g.png
    g.png
    81.1 KB · Görüntüleme: 128
  • Untitled Sketch_bb.png
    Untitled Sketch_bb.png
    156.1 KB · Görüntüleme: 381
Last edited by a moderator:
Güç kaynağı olarak 6lı kalem pil kullanıyorum.
İyi geceler.
 
Sensörler zeminden 1-2 parmak yukarıda olmalı. Sonra sensör kartındaki trimpotlar ile ayar yapmalısın. Beyaz ve siyah arasında yanıp sönme yakalayıncaya kadar trimpotları ayarla.
 
Sensörler zeminden 1-2 parmak yukarıda olmalı. Sonra sensör kartındaki trimpotlar ile ayar yapmalısın. Beyaz ve siyah arasında yanıp sönme yakalayıncaya kadar trimpotları ayarla.
Hocam size çok teşekkür ederim . Allah razı olsun yol gösterdiniz. Aşağıya aynı sorundan mustarip arkadaşlar için bir açıklama ekleyeceğim.
 
Sevgili forum kulanıcıları, benimle aynı malzemeleri kullanıyorsanız öncelikle motor sürücüden arduinoya olan bağlantıyı unutmayın . Ayrıca robotunuz çizgi izleyemiyor ise sensor kartında bulunan mavi tripotlardan küçük bir tornavida ile kalibrasyon yapmanız gerekiyor. Benim gibi acemi arkadaşlarım için anlatayım . Beyaz kağıt üstüne bir parça siyah bantımızı yapıştırıyoruz. Sensör siyahı görürken yanmayana kadar tripotumuzu çeviriyoruz. Küçük bir dönme açısında sensörler yanmayacaktır. Burada ise ince işçilik geliyor :D. Küçük küçük çevirip siyahta yanmayıp, beyazda yanana kadar ayarlamaya çalışıyoruz. Biraz ince iş o yüzden kolayca olmayabilir. Endorfin35+'e teşekkürler.
Sağlıklı günler dilerim herkese.
 
Videoyu izledim. Her ne kadar çalışan bir düzenek yapmış olsada çalışma şeklini pek beğenmedim. Ana taşıyıcıyı havya ile eriterek mahfetmiş. Üstelik eritmeden kaynaklı kenarlara taşan plastikleride kesme zahmetinde bile bulunmamış. Trimpot ayarlarını göstermesi gerekirdi. Bana kalırsa youtube dan para kazanmak amaçlı, gelişi güzel yapılmış, detaylara yer verilmemiş alelade bir video.
 
Videoyu izledim. Her ne kadar çalışan bir düzenek yapmış olsada çalışma şeklini pek beğenmedim. Ana taşıyıcıyı havya ile eriterek mahfetmiş. Üstelik eritmeden kaynaklı kenarlara taşan plastikleride kesme zahmetinde bile bulunmamış. Trimpot ayarlarını göstermesi gerekirdi. Bana kalırsa youtube dan para kazanmak amaçlı, gelişi güzel yapılmış, detaylara yer verilmemiş alelade bir video.
Benim robotum o şekilde değil. Pertinaks , mukavva ile şasi kurdum.

Robot kurulumununda Robotistan kanalından referans aldım.

ArduinoBey 4 lü sensör kullandığı için ordan da kod ve şemaları aldım.
 
Benim robotum o şekilde değil. Pertinaks , mukavva ile şasi kurdum.

Robot kurulumununda Robotistan kanalından referans aldım.

ArduinoBey 4 lü sensör kullandığı için ordan da kod ve şemaları aldım.
Sen acemisin gödüğünü yapacaksın elbette. Sana lafım yok. Bende acemiyim ama havyayı plastiğe saplamayacak kadar da düzenliyim. Bir tane şarjlı ile 4 tane delik delecek alt tarafı.
Neyse senin robotun çalışan halini görmek isteriz. En azından resmini :)
 
Bende geçen engelden kaçanını yaptıydım ama sadece bilgisayarda bağlantılıyken çalışıyor. 9V pil takınca çıkışındaki pinlere 5v veya 4,5v vermesi gerekirken sürekli değişen bir voltaj veriyor. sebebi pilden mi kaynaklı yoksa yazılımsal mı?
Pil bu
2199UmbItNL._AC_SY400_.jpg
 
Bende geçen engelden kaçanını yaptıydım ama sadece bilgisayarda bağlantılıyken çalışıyor. 9V pil takınca çıkışındaki pinlere 5v veya 4,5v vermesi gerekirken sürekli değişen bir voltaj veriyor. sebebi pilden mi kaynaklı yoksa yazılımsal mı?
Pil bu
7010 eklentisine bak
Pilin akım gücü yetmiyorsa ondandır. Voltajı aşağı çekmiş olabilir.
 
Kesinlikle pil ile alakalıymış güç kaynağından 9v verdim, çıkışa doğru V değerlerini verdi. 18650 varda 2 gün sonra sökeceğim bir şey için kullanmak cazip gelmedi ya :D Kaç tane kullanmak gerekir 18650 1 tane yeter mi?
 

Forum istatistikleri

Konular
5,789
Mesajlar
99,014
Üyeler
2,464
Son üye
s4met

Son kaynaklar

Son profil mesajları

cemalettin keçeci wrote on HaydarBaris's profile.
barış kardeşim bende bu sene akıllı denizaltı projesine girdim ve sensörleri arastırıyorum tam olarak hangi sensör ve markaları kullandınız yardımcı olabilir misin?
m.white wrote on Altair's profile.
İyi akşamlar.Arabanız ne marka ve sorunu nedir.Ben araba tamircisi değilim ama tamirden anlarım.
* En mühim ve feyizli vazifelerimiz millî eğitim işleridir. Millî eğitim işlerinde mutlaka muzaffer olmak lâzımdır. Bir milletin hakikî kurtuluşu ancak bu suretle olur. (1922)
Kesici/Spindle hızı hesaplamak için SpreadSheet UDF'leri kullanın, hesap makinesi çok eski kalan bir yöntem :)
Dr. Bülent Başaran,
Elektrik ve Elektronik Mühendisi
Yonga Tasarım Özdevinimcisi
Üç güzel "çocuk" babası
Ortahisar/Ürgüp/Konya/Ankara/Pittsburgh/San Francisco/Atlanta/Alaçatı/Taşucu...

Back
Top