Çizgi kaybolunca duran robot denetçisi
Çizgi izleyen robot iki sensörü de beyaz gördüğünde hızla aramaya çıkmak yerine dursun. Üç ardışık kayıp örnekle güvenli duruma geç.
9+ yaş · 45 dakika · Python 3 · deney modeli
İnteraktif atölyede aç →Neler öğreneceğiz?
Çizgi izleyen robot iki sensörü de beyaz gördüğünde hızla aramaya çıkmak yerine dursun. Üç ardışık kayıp örnekle güvenli duruma geç.
Bu atölyede yalnız sonuca değil, tahmininin neden doğru veya yanlış çıktığına da bak. Bir deney günlüğünde giriş, beklenen sonuç, gözlenen sonuç ve düzeltme olmak üzere dört sütun aç.
Python kodu ölçüm/algoritma modelidir; GPIO pinlerine veya motora komut göndermez. Animasyon ise konuyu gösteren ayrı ve ideal bir modeldir.
Öğrenme hedefleri
- Siyah için 1, beyaz için 0 kabulünü açıkça yaz; gerçek sensörün ters çıkabileceğini not et.
- DUR durumundan otomatik çıkmak yerine operatör onayı gerektiren kilit ekle.
Malzeme listesi
- Python 3 çalıştırabilen bilgisayar
- Kareli kâğıt, kalem ve deney günlüğü
Adım adım yapalım
- Siyah için 1, beyaz için 0 kabulünü açıkça yaz; gerçek sensörün ters çıkabileceğini not et.
- Yedi giriş çiftini kartlara yazıp sıraya koy.
- Her kartta kayıp sayacının sıfırlanıp sıfırlanmadığını hesapla.
- Programı çalıştır ve altıncı kartta DUR mesajını ara.
- Son kartta çizgi yeniden bulununca sayacın sıfırlandığını doğrula.
- Sensör arızasını çizgi kaybından ayırmak için hangi ek bilgiyi isteyeceğini tartış.
Kod · Python 3 · deney modeli
readings=[(1,1),(1,0),(0,1),(0,0),(0,0),(0,0),(1,1)]
lost=0
for left,right in readings:
lost=lost+1 if (left,right)==(0,0) else 0
if lost>=3:action="DUR: çizgi kayıp"
elif (left,right)==(1,1):action="İLERİ"
elif left:action="SOLA düzelt"
elif right:action="SAĞA düzelt"
else:action="YAVAŞLA"
print(left,right,action)Kod nasıl çalışır?
Bu kod bir karar modeli; motora bağlanmaz. Ardışık kayıp sayımı geçici parazitle sürekli kaybı ayırır. Animasyondaki kapılar iki sensör girdisinin birleşimini öğretir.
Beklenen sonuç
Python modelinin çalıştırılan çıktısı (fiziksel ölçüm değildir):
1 1 İLERİ
1 0 SOLA düzelt
0 1 SAĞA düzelt
0 0 YAVAŞLA
0 0 YAVAŞLA
0 0 DUR: çizgi kayıp
1 1 İLERİ
Sıra sende
DUR durumundan otomatik çıkmak yerine operatör onayı gerektiren kilit ekle.
Güvenli atölye
Bu çalışma düşük gerilimli eğitim içindir. Donanımı enerji kapalıyken, bir yetişkinle kur. Şebeke elektriği kullanma. Kodun derlenmesi fiziksel devrenin test edildiği anlamına gelmez.
Çalışmıyorsa kontrol et
- Sonucu alamıyorsan programın ilk satırından başlayıp girdileri tek tek kontrol et.
- Donanım varsa enerjiyi ayır; GND, sinyal uçları ve parça yönlerini bağlantı tablosundan doğrula.
- Aynı anda yalnız bir şeyi değiştir; değişiklik öncesi ve sonrası sonucu günlüğe yaz.
Kontrol noktaları
- Başlamadan önce: gerekli malzemeleri say ve giriş değerlerini deney günlüğüne yaz.
- Kurulumdan sonra: her bağlantıyı aşağıdaki tabloyla karşılaştır; yazılım projesinde giriş listesini kontrol et.
- Testten sonra: beklenen sonucu kendi çıktınla karşılaştır. Fark varsa ilk farklı adımı bul.
Kaynakların kullanımı
Kaynak, ilgili kavramı öğrenmek ve karşılaştırmak içindir. Türkçe görev, örnek kod ve görseller bu atölye için özgün hazırlanmıştır; kaynak makalenin çevirisi veya kopyası değildir.
https://docs.arduino.cc/built-in-examples/digital/StateChangeDetection/