Robotik ve KodlamaÖrnek uygulama projesi

Çizgi İzleyen Robot

İki IR sensöründen alınan siyah/beyaz zemin bilgisini motor hareketlerine dönüştüren orta seviye robotik uygulama.

Hedef Kitle
Temel Arduino deneyimi olan orta seviye lise öğrencileri
Tahmini Süre
4–6 ders saati
Seviye
Orta
Uygulama
2–4 kişilik grup

Proje Özeti

Ne geliştirilecek?

İki IR sensöründen alınan siyah/beyaz zemin bilgisini motor hareketlerine dönüştüren orta seviye robotik uygulama.

Amaç

Neden uygulanmalı?

Sensör verisi, karar algoritması ve motor kontrolünün bir test döngüsünde birlikte çalışmasını gözlemlemek.

Problem / İhtiyaç

Çözüm hangi ihtiyaçtan doğuyor?

Sensör verisi, karar algoritması ve motor kontrolünün bir test döngüsünde birlikte çalışmasını gözlemlemek.

Öğrenme Kazanımları

  • Yansıma farkını açıklar.
  • İki sensörlü karar tablosu kurar.
  • Motor hızlarını kontrol eder.
  • Sensör yüksekliği ve eşik kalibrasyonu yapar.
  • Test verisiyle davranışı iyileştirir.

Sınıfta Uygulama

Hedef Kitle
Temel Arduino deneyimi olan orta seviye lise öğrencileri
Önerilen Süre
4–6 ders saati
Çalışma Biçimi
2–4 kişilik grup
Öğretmen Hazırlığı
Motor yönlerini kontrol etmek, güvenli batarya kullanımını açıklamak ve kalibrasyon parkuru hazırlamak.

Derse Giriş Etkinliği

Öğrencilerden “Çizgi İzleyen Robot hangi gerçek ihtiyaca cevap verebilir?” sorusuna kodu görmeden çözüm adımları önermeleri istenir.

  1. 30 dk: Sistem/güvenlik
  2. 45 dk: Kurulum
  3. 40 dk: Motor
  4. 35 dk: Kalibrasyon
  5. 45 dk: Algoritma
  6. 30 dk: Test

Ön Koşullar

  • Arduino dijital giriş/çıkış
  • Temel devre
  • Basit if/else

Kullanılacak Araçlar ve Teknolojiler

  • Arduino
  • IR Sensör
  • Motor Sürücü
  • DC Motor
  • C/C++

Gerekli Malzemeler

  • Arduino kart
  • 2 IR sensörü
  • Çift motor sürücü
  • 2 DC motor
  • Şase
  • Uygun batarya
  • Jumper kablolar

Uygulama Aşamaları

  1. Şase ve sensörleri sabitle.
  2. Motor sürücüyü bağla.
  3. Siyah/beyaz okumalarını test et.
  4. İleri, sol, sağ ve dur hareketlerini dene.
  5. Algoritmayı yükle.
  6. Yükseklik, hız ve çizgiyi kalibre et.

Örnek Kod veya Teknik İçerik

İki sensörlü kontrol

İki sensör zemini görüyorsa ileri gidilir. Biri çizgiyi algıladığında motor hızlarıyla yön düzeltilir. İkisi de çizgiyi kaybederse robot durur.

Basit Arduino kodu

Motor sürücü pinleri modele göre değişir; yön pinleri kullanılan sürücüye göre eklenmelidir.

cpp
// L298N örneği: başka motor sürücülerde pin ve lojik değişebilir.
const int solSensor = 2, sagSensor = 3;
const int ena = 5, in1 = 7, in2 = 8;
const int enb = 6, in3 = 9, in4 = 10;
void setup() {
  pinMode(solSensor, INPUT); pinMode(sagSensor, INPUT);
  pinMode(ena, OUTPUT); pinMode(in1, OUTPUT); pinMode(in2, OUTPUT);
  pinMode(enb, OUTPUT); pinMode(in3, OUTPUT); pinMode(in4, OUTPUT);
}
void motorlar(int solHiz, int sagHiz) {
  digitalWrite(in1, solHiz > 0); digitalWrite(in2, LOW);
  digitalWrite(in3, sagHiz > 0); digitalWrite(in4, LOW);
  analogWrite(ena, constrain(solHiz, 0, 255));
  analogWrite(enb, constrain(sagHiz, 0, 255));
}
void loop() {
  bool sol = digitalRead(solSensor), sag = digitalRead(sagSensor);
  if (!sol && !sag) motorlar(150, 150);
  else if (sol && !sag) motorlar(70, 160);
  else if (!sol && sag) motorlar(160, 70);
  else motorlar(0, 0);
}

Kalibrasyon

Sensörleri eşit yükseklikte tutun. Siyah/beyaz okumalarını karşılaştırıp modül eşiğini küçük adımlarla ayarlayın.

Öğrenci Görevi

Uygula ve geliştir

Farklı çizgi kalınlıklarında sensör yüksekliği, motor hızı ve eşik ayarlarını bir test tablosuyla karşılaştır.

Beklenen Sonuç

Başarı nasıl görünecek?

Öğrenci, “Farklı çizgi kalınlıklarında sensör yüksekliği, motor hızı ve eşik ayarlarını bir test tablosuyla karşılaştır.” görevini tamamlayan çalışan bir ürün sunar; sonucunu test senaryoları, gözlemler ve teknik kararlarını açıklayan kısa bir değerlendirmeyle kanıtlar.

Değerlendirme Ölçütleri

Toplam: 100 puan
ÖlçütPuan
Mekanik/elektriksel kurulum20
Kontrol algoritması20
Kalibrasyon ve test25
Kod kalitesi15
Problem çözme ve sunum20

Geliştirme Fikirleri

  • PWM hız kontrolü
  • Daha fazla sensör
  • PID araştırması
  • Pil izleme
  • Parkur optimizasyonu

Test Senaryoları

  1. İleri, sol, sağ ve dur hareketlerini dene. adımını beklenen ve sınır bir değerle doğrula.
  2. Algoritmayı yükle. adımını beklenen ve sınır bir değerle doğrula.
  3. Yükseklik, hız ve çizgiyi kalibre et. adımını beklenen ve sınır bir değerle doğrula.

Sık Karşılaşılan Hatalar

  • Sensör yüksekliği
  • Ters motor yönü
  • Yetersiz batarya
  • Yanlış eşik
  • Uygunsuz çizgi kalınlığı

Hata Ayıklama Önerileri

  • Sensör yüksekliği: İlgili bağlantı veya girdiyi tek başına test et, sonucu kaydet ve yalnız bir değişkeni değiştir.
  • Ters motor yönü: İlgili bağlantı veya girdiyi tek başına test et, sonucu kaydet ve yalnız bir değişkeni değiştir.
  • Yetersiz batarya: İlgili bağlantı veya girdiyi tek başına test et, sonucu kaydet ve yalnız bir değişkeni değiştir.
  • Yanlış eşik: İlgili bağlantı veya girdiyi tek başına test et, sonucu kaydet ve yalnız bir değişkeni değiştir.
  • Uygunsuz çizgi kalınlığı: İlgili bağlantı veya girdiyi tek başına test et, sonucu kaydet ve yalnız bir değişkeni değiştir.

Güvenlik Notları

  • Motorları önce tekerlekler havadayken test edin.
  • Beslemeyi sürücü özelliklerine göre planlayın.
  • PID'yi temel algoritmadan sonra ele alın.

Öğretmen Notları

  • Motorları önce tekerlekler havadayken test edin.
  • Beslemeyi sürücü özelliklerine göre planlayın.
  • PID'yi temel algoritmadan sonra ele alın.

Öğrenci Öz Değerlendirme Soruları

  • Çözümümün doğru çalıştığını hangi testlerle gösterdim?
  • Karşılaştığım en önemli hata neydi ve nasıl çözdüm?
  • Projeyi yeniden yapsam hangi kararı değiştirirdim?

Sonraki Öğrenme Önerisi

Buradan sonra ne öğrenilebilir?

Çizgi İzleyen Robot çalışmasını fonksiyonlar, daha kapsamlı test senaryoları ve kullanıcı geri bildirimiyle geliştirmeyi dene.

Ders Paketi

Materyaller

Henüz üretilmemiş dosyalar için indirme bağlantısı sunulmuyor. Güncel durum:

  • Öğretmen Kılavuzu — Hazırlanıyor
  • Öğrenci Çalışma Kâğıdı — Hazırlanıyor
  • Kaynak Kod — Sayfa içinde mevcut
  • Değerlendirme Rubriği — Sayfa içinde mevcut

Öğrenmeye Devam Et

Benzer Projeler