Çizgi izleyen robotlar hala popülerliğini koruyor nihayet birileri çizgi izleyen robot üzerinde değişik farklı bir şeyler yapmış ve kaynak kodları ile projeyi paylaşmış.
Robotun kamera (webcam) bölümü için CPP ile yazılmış programı bulunuyor kontrol devresinde kullanılan mikro denetleyici pic16f877 yazılım ise PIC-C ile hazırlanmış tüm kaynak kodlar protel PCB dosyaları bulunuyor PC ile haberleşme MAX232 ile sağlanmış devrede kullanılan motor sürücü ise L298
Temel olarak analiz görüntü üzerinde satır satır yapılır. Her çizgi için siyah ve beyaz renklerde minimum ve maksimum değerleri bulur. Daha sonra bir geçişi tekrarlar ve küçük bir histerezis ile belirli bir siyah yüzdesinde olan bölgeler olan “karanlık bölgeler” bulur (burada gösterilmemiştir).
Bu karanlık alanlardan, her satıra bir “ana” sürekli karanlık alan çizer. Onu nasıl buluyor? Pekala, önce daha ortada olduğunu varsayar (1. görüntüde), sonra son konumu kullanır (önceki satır veya 1. satır için önceki görüntü). Aşağıdaki ana karanlık bölge, bölgenin kalınlığının da biraz oynadığını bilerek (katsayıları ayarladım) bir öncekine en yakın olanıdır.
Bu ana karanlık alanın ortası, resimde görülebilen kırmızı noktalarla işaretlenmiştir. Böylece köleleştirmeyi yaptığı çizgidir! Görüntünün her satırında bir kırmızı nokta vardır.
Aksi takdirde, yatay çizgi, sonrasını artık takip edilecek bir çizgi olarak kabul etmediği yeri gösteren bir çizgidir. Nasıl çalışır ? Aslında çok basit, ardışık çizgilerdeki 2 kırmızı nokta arasında “X” pikselden fazla bir sıçrama olup olmadığına bakıyorum. Bir hatta yerleştirilirlerse, birbirlerinden çok uzak olmayacaklardır. Öte yandan, artık bir çizgi değilse, noktalar bir şekilde herhangi bir yere yerleştirilir ve atlamalar olur bu sıçramaları tespit ederek, artık takip edilecek bir çizgi olmadığını biliyoruz (tabii ki bu işe yaramıyor 100 %, ancak bizim amaçlarımız için yeterince doğru).
Robot, görüntünün birkaç satırına göz kulak olacaktır (bunu söylemek doğrudur). Özellikle yatay çizgi çok fazla alçalmaya başlarsa robot otomatik olarak yavaşlar (virajı daha iyi geçmek için). Ve çizgi gerçekten çok alçaksa, rakip robota çarpmamak için (elbette ona yetişirse) keskin bir şekilde yavaşlar.
Proje detayları ve dosyalar: fribotte.free.fr/bdtech/haku/robot_haku8.html (diğer projelerede göz atmanızda fayda var)
Şifre-Pass: 320volt.com
Yayım tarihi: 2009/10/21 Etiketler: çizgi izleyen robot, cpp, microchip pic projeleri, PIC16F877 örnekleri, PICC, robot devresi, webcam robot
Emeğinize sağlık. Teşekkürler.. inceleyelim bakalım
kameralı projede robot bilgisayar bir kablo ile takılı olmak zorunda mı? bilgisayar haberleşmesiz olur mu bu iş?