Hızlı Çizgi İzleyen Robot

LF2 Line Follower Kit

LF2 Line Follower Kit
Yazımızda “Hızlı Çizgi İzleyen Robot “yazılım mantığı anlatılmaktadır.

Kullanılan malzemeler :

LF-2 Taşıyıcı Kart,
Arduino Nano,
TB6612FNG Motor Sürücüsü
(5 kanal / 7 kanal), Analog Sensör Dizisi,
2 adet N20 Dişli Motor (6V 600rpm),
Akrilik Şasi,
Silikon lastikli 2 adet 3D baskılı tekerlek,
Motor Braketleri
Parça montajı için M2 ve M3 vidalar ve altıgen ara parçalar,
Jumper Kabloları,
Tekerlek
2S 360 mAh Li-Po pil veya eşdeğer bir pil kullanmanızı öneririz.

LF2_Manual

Paylaşılan kod, LF2 Line Follower Kit (genelde TB6612 motor sürücü ve QRE1113 tabanlı sensör barındıran kitler) ile yapısal olarak tam uyumludur ve mantıksal bir hata içermemektedir.

Paylaşılan kod, LF2 Line Follower Kit (genelde TB6612 motor sürücü ve QRE1113 tabanlı sensör barındıran kitler) ile yapısal olarak tam uyumludur ve mantıksal bir hata içermemektedir. Ancak, koddaki bazı noktalar donanımınıza göre “ince ayar” gerektirebilir.
İşte dikkat etmeniz gereken kritik noktalar:
1. Sensör İndis Hatası (Dizilim)
linefollow() fonksiyonu içinde 5 sensörlü kullanım için şu satır var:

Kontrol et: Eğer 5 sensörlü bir kit kullanıyorsanız, sensörleriniz genellikle sensorValue[0] ile sensorValue[4] arasındadır. Kodda ise sensorValue[5] kullanılmış. Eğer sensörleriniz 0, 1, 2, 3, 4 şeklinde bağlıysa, bu matematiksel hesaplama bir kaymaya neden olur.
Çözüm: Sensörlerinizin hangi analog pinlere (A0-A6) bağlı olduğunu ve readLine içindeki döngüyle eşleşip eşleşmediğini kontrol edin.
2. Kalibrasyon Dönüş Hızı

Risk: 50 hızı, bazı yüksek dişli oranlı motorlar için çok yavaş kalabilir ve robot sürtünmeden dolayı dönmeyebilir. Kalibrasyon sırasında robot kendi etrafında dönmüyorsa bu değeri 80-100 civarına çekin.
3. “onLine” Eşiği (Threshold)

Öneri: 700 değeri oldukça yüksek bir eşiktir. Eğer pistteki siyah çizgi tam siyah değilse veya sensörler zemine biraz uzaksa robot çizgiyi “kaybetmiş” sayabilir. Kalibrasyon sonrası seri porttan değerleri izleyip gerekirse bu eşiği 500-600 bandına çekebilirsiniz.
4. Kütüphane Bağımlılığı
Kodun çalışması için SparkFun TB6612 Library kütüphanesinin Arduino IDE’nizde yüklü olması gerekir.
5. PID Katsayıları (Kp, Kd)
Bu kod bir “temel şablon”dur.
Kp (0.06): Çok düşük görünüyor. Robot çizgiden çok geç tepki veriyorsa bu değeri yavaşça artırın.
Kd (1.5): Robot çok titriyorsa bu değeri azaltın.
Genel Karar
Sadece sensörlerin fiziksel bağlantı sırası (0-1-2-3-4 mü yoksa 1-2-3-4-5 mi?) ile koddaki sensorValue indislerinin tutarlı olduğundan emin olmalısınız.

Kalibrasyon: Robot pistte kendi etrafında fırıl fırıl dönerken, “gördüğüm en beyaz yer şu değer, en siyah yer bu değer” diye not alıyor.
Okuma: Yarış sırasında sensörlerden gelen karmaşık sayıları (örneğin 342, 890 gibi), kalibrasyonda öğrendiği verilere bakarak 0 ile 1000 arasında bir puana dönüştürüyor. Eğer puan 700’den yüksekse, “Tamam, şu an çizginin üzerindeyim” diyor.
İpucu: Eğer robotunuz çizgiyi görmekte zorlanıyorsa, 700 olan eşik değerini 500 veya 600 yaparak daha hassas hale getirebilirsiniz.

Bu bilgiler sizin için yeterli mi?

Scroll to Top