Çizgi İzleyen Robot: Yazılım
Robotik Kodlama 2 · 8. hafta ders notu · RK.2.2.1
- İki sensörden gelen dört olası durumu karar tablosunda gösterir ve her durumda robotun ne yapacağını belirler.
- Karar tablosunu akış şemasına dönüştürür.
- Akış şemasını iç içe "eğer–değilse" bloklarıyla programlar ve Tinkercad'deki Arduino C karşılığını açıklar.
- Programı "kâğıt üzerinde çalıştırma" yöntemiyle test eder; akranının programını karar tablosuna göre kontrol eder.
Bant pist ve durum kartları
Yere bantla kıvrımlı bir pist yapılır. Üç öğrenciden oluşan "robot ekipleri" sırayla pisti dolaşır: ortadaki öğrenci tekerlek, iki yandaki öğrenci sensördür. Sensörler 0/1 kartlarını kaldırır; tekerlek öğrenci tahtadaki karar tablosuna bakarak hareket eder. Sınıfın geri kalanı ekibin karar tablosuna uyup uymadığını izler ve her hatada tabloyu gösterir. Ardından gruplar akış şemasını kâğıda çizer, her baklavayı bir renk kalemle "eğer" bloğu olarak yeniden yazar.
Konu anlatımı
Önce konuyu aç, sonra sorulara dokun: cevap altında açılır. Soru işaretli kutulara dokununca cevap görünür.
01Dört durum, dört karar
?Robot hangi durumda ne yapar?
?Robot motorları kullanarak nasıl döner?
?Dönerken motoru tamamen durdurmak yerine yavaşlatmak olur mu?
02Karar tablosu
Soru işaretli kutulara dokun.
?Karar tablosu neden programdan önce yazılır?
| Sol (pin 2) | Sağ (pin 3) | Karar | Sol motor (pin 5) | Sağ motor (pin 6) |
|---|---|---|---|---|
| 0 | ||||
| 1 | ||||
| 0 | ||||
| 1 |
03Akış şeması
?Akış şeması neden döngüyle başa döner?
?"Dur" kutusundan sonra robot neden yine başa dönüyor?
04Bloklarla program
?Dıştaki "eğer" neyi, içteki "eğer" neyi kontrol eder?
?Bu program daha kısa yazılabilir mi?
?Motorların yönü bu programda nerede ayarlanır?
05Arduino C karşılığı
?&& işareti ne anlama gelir?
?Bu kod neden bloklardan farklı görünüyor ama aynı işi yapıyor?
void setup() {
pinMode(2, INPUT); pinMode(3, INPUT);
pinMode(7, OUTPUT); pinMode(8, OUTPUT);
pinMode(9, OUTPUT); pinMode(10, OUTPUT);
digitalWrite(7, HIGH); digitalWrite(8, LOW); // sol ileri
digitalWrite(9, HIGH); digitalWrite(10, LOW); // sağ ileri
}
void loop() {
int sol = digitalRead(2);
int sag = digitalRead(3);
if (sol == 0 && sag == 0) { analogWrite(5, 150); analogWrite(6, 150); }
else if (sol == 1 && sag == 0) { analogWrite(5, 0); analogWrite(6, 150); }
else if (sol == 0 && sag == 1) { analogWrite(5, 150); analogWrite(6, 0); }
else { analogWrite(5, 0); analogWrite(6, 0); }
}
Biliyor muydun?
Kâğıt üzerinde çalıştırma: Durum kartını çek (ör. Sol 1 · Sağ 0), programda yukarıdan aşağı ilerle, çalışan satırları işaretle, motorlara giden değerleri yaz ve karar tablosuyla karşılaştır.
Ders akışı
40 dakikalık bir ders saati için planlandı. Adımın başlığına dokun, ayrıntılar açılsın.
6dkIsınma: İnsan robot
Yere bantla kısa, kıvrımlı bir çizgi yap. Bir öğrenci gözlerini kapatıp "robot" olur; iki öğrenci "sol sensör" ve "sağ sensör" olarak yanında yürür ve çizgiye basınca "1" der. Robot yalnızca bu sayılara göre "ileri, sola, sağa, dur" komutlarını uygular. Sınıf, her durumda hangi komutun doğru olduğunu tartışır.
10dkKeşif: Karar tablosu
Çizimdeki dört durumu tek tek göster: iki sensör de beyaz → ileri; sol siyah → sola dön; sağ siyah → sağa dön; ikisi de siyah → dur (bitiş şeridi). Neden "sola dön" için sol motorun durdurulup sağ motorun döndürüldüğünü el hareketleriyle açıkla. Tabloyu tahtaya yaz; öğrenciler boş bırakılan hız sütunlarını doldursun.
16dkEtkinlik: Akış şeması → bloklar → C
Akış şemasını göster ve her baklavanın bir "eğer" bloğuna dönüştüğünü vurgula. Tinkercad kod panelinde blokları birlikte kurun; iki sensör olduğu için iç içe iki "eğer–değilse" kullanılır. "Bloklar + Metin" görünümünde if–else satırlarını bloklarla eşleştirin. Gruplar kâğıt üzerinde dört durumu programın içinden geçirerek (izleme tablosu) her birinde hangi satırların çalıştığını işaretler.
8dkDeğerlendirme: Akran kod incelemesi
Gruplar programlarını (blok çıktısı ya da kâğıt) yan grupla değiştirir. Akran grup dört durum kartını sırayla çeker ve programın o durumda doğru motorları çalıştırıp çalıştırmadığını kontrol eder. Kontrol listesi: dört durum da var mı, pin numaraları plana uygun mu, hız değerleri doğru tarafa mı yazılmış? Her grup kendi programına 1–3 arası puan verir.
Doğru mu, yanlış mı?
Dersin sonunda tahtada ya da öğrencinin kendi cihazında çözülür.
1. İki sensörlü çizgi izleyen robotta dört farklı sensör durumu vardır.
Cevabı göster
Doğru · Her sensör 0 ya da 1 olabilir: 2 × 2 = 4 durum.2. Sol sensör siyahı görürse robot sağa dönmelidir.
Cevabı göster
Yanlış · Sol sensör siyahı görüyorsa çizgi sola kaymıştır; robotun çizgiyi yeniden ortalaması için sola dönmesi gerekir.3. Robotu sola döndürmek için sol motor durdurulur ya da yavaşlatılır, sağ motor döndürülür.
Cevabı göster
Doğru4. İki sensör de siyahı görüyorsa robot bir kesişme ya da bitiş şeridine gelmiştir.
Cevabı göster
Doğru5. Akış şemasındaki her baklava (karar) programda bir "eğer" bloğuna karşılık gelir.
Cevabı göster
Doğru6. İki sensörü kontrol etmek için iç içe "eğer" yerine tek bir "eğer" yeterlidir.
Cevabı göster
Yanlış · Tek bir "eğer" yalnızca iki sonucu ayırır. Dört durumu ayırmak için ya iç içe iki "eğer–değilse" ya da "ve" ile birleştirilmiş koşullar gerekir.7. analogWrite(5, 0) komutu sol motoru durdurur.
Cevabı göster
Doğru · ENA (pin 5) sol motorun hızını belirler; 0 değeri motora enerji vermez.8. C kodunda koşulun içinde tek eşittir (=) kullanılarak iki değer karşılaştırılır.
Cevabı göster
Yanlış · Karşılaştırma için çift eşittir (==) kullanılır. Tek eşittir değişkene değer atar ve koşulu yanlış çalıştırır.9. Programı karta yüklemeden önce kâğıt üzerinde her durumu izlemek hataları erken bulmayı sağlar.
Cevabı göster
Doğru10. Hız değeri 255 yapılırsa robot çizgiyi daha iyi izler.
Cevabı göster
Yanlış · Çok hızlı robot sensör çizgiyi gördüğünde dönmeye vakit bulamadan çizgiden çıkar. Başlangıç için 120–160 arası hızlar uygundur; ayar 10. haftada yapılır.8. hafta günlük planı
2026–2027 2. düzey Seçmeli Robotik Kodlama 2 dersi 8. hafta günlük planı. Okul ve öğretmen bilgileriyle doldurulmuş Word dosyası için etkileşimli sürümde Evraklar › Günlük planlar bölümünü kullanın.
2026–2027 EĞİTİM ÖĞRETİM YILI …………………………
SEÇMELİ ROBOTİK KODLAMA 2. SEVİYE DERSİ GÜNLÜK PLANI · 8. HAFTA
| BÖLÜM I · DERSE İLİŞKİN BİLGİLER | |||
|---|---|---|---|
| Ders | Seçmeli Robotik Kodlama 2. Seviye | Sınıf / Düzey | 2. düzey (seçmeli) |
| Hafta / Tarih | 8. Hafta · 2–6 Kasım (KASIM) | Süre | 2 ders saati (40' + 40') |
| Tema | ÇİZGİ TAKİP UYGULAMASI | ||
| Konu | Çizgi İzleyen Robot: Yazılım | ||
| BÖLÜM II · ÖĞRENME ÇIKTILARI VE KAYNAKLAR | |||
| Öğrenme çıktısı | RK.2.2.1 Proje tasarımı, bileşenlerin belirlenmesi ve yazılımın yapılandırılması | ||
| Süreç bileşenleri |
| ||
| Araç, gereç ve kaynaklar | Akıllı tahta ve Tinkercad Devreler (kod paneli) · Karar tablosu ve akış şeması çalışma kâğıdı · Yere yapıştırılacak siyah bant (2–3 m) ve "0 / 1" kartları · Durum kartları: "Sol 0 · Sağ 1" gibi dört kart · Bilişim Ders Notları ders sayfası, sunum ve etkinlikler (bilisimdersnotlari.com) | ||
| BÖLÜM III · ÖĞRENME-ÖĞRETME UYGULAMALARI | |
|---|---|
| Süre | Etkinlik akışı |
| 1. ders 6 dk | Isınma: İnsan robot Yere bantla kısa, kıvrımlı bir çizgi yap. Bir öğrenci gözlerini kapatıp "robot" olur; iki öğrenci "sol sensör" ve "sağ sensör" olarak yanında yürür ve çizgiye basınca "1" der. Robot yalnızca bu sayılara göre "ileri, sola, sağa, dur" komutlarını uygular. Sınıf, her durumda hangi komutun doğru olduğunu tartışır. |
| 1. ders 10 dk | Keşif: Karar tablosu Çizimdeki dört durumu tek tek göster: iki sensör de beyaz → ileri; sol siyah → sola dön; sağ siyah → sağa dön; ikisi de siyah → dur (bitiş şeridi). Neden "sola dön" için sol motorun durdurulup sağ motorun döndürüldüğünü el hareketleriyle açıkla. Tabloyu tahtaya yaz; öğrenciler boş bırakılan hız sütunlarını doldursun. |
| 1. ders 16 dk | Etkinlik: Akış şeması → bloklar → C Akış şemasını göster ve her baklavanın bir "eğer" bloğuna dönüştüğünü vurgula. Tinkercad kod panelinde blokları birlikte kurun; iki sensör olduğu için iç içe iki "eğer–değilse" kullanılır. "Bloklar + Metin" görünümünde if–else satırlarını bloklarla eşleştirin. Gruplar kâğıt üzerinde dört durumu programın içinden geçirerek (izleme tablosu) her birinde hangi satırların çalıştığını işaretler. |
| 1. ders 8 dk | Değerlendirme: Akran kod incelemesi Gruplar programlarını (blok çıktısı ya da kâğıt) yan grupla değiştirir. Akran grup dört durum kartını sırayla çeker ve programın o durumda doğru motorları çalıştırıp çalıştırmadığını kontrol eder. Kontrol listesi: dört durum da var mı, pin numaraları plana uygun mu, hız değerleri doğru tarafa mı yazılmış? Her grup kendi programına 1–3 arası puan verir. |
| 2. ders 10 dk | Tekrar: Sunum 9 slaytlık ders sunumu akıllı tahtada açılır; önceki saatte öğrenilen kavramlar öğrencilerle birlikte tekrar edilir. |
| 2. ders 20 dk | Uygulama: Etkinlikler Akıllı tahtada etkileşimli etkinlikler oynanır: Sensör durumu → karar; Karar → motor hızları; Yazılım geliştirme sırası; Doğru mu, yanlış mı?; Kutuyu aç: konu soruları; Test yarışması: Çizgi İzleyen Robot: Yazılım. |
| 2. ders 10 dk | Değerlendirme 10 soruluk doğru-yanlış testi tahtada birlikte çözülür; yanlış cevaplar gerekçeleriyle tartışılır. |
| Farklılaştırma | Bilgisayarsız sınıf alternatifi: Bant pist ve durum kartları. Yere bantla kıvrımlı bir pist yapılır. Üç öğrenciden oluşan "robot ekipleri" sırayla pisti dolaşır: ortadaki öğrenci tekerlek, iki yandaki öğrenci sensördür. Sensörler 0/1 kartlarını kaldırır; tekerlek öğrenci tahtadaki karar tablosuna bakarak hareket eder. Sınıfın geri kalanı ekibin karar tablosuna uyup uymadığını izler ve her hatada tabloyu gösterir. Ardından gruplar akış şemasını kâğıda çizer, her baklavayı bir renk kalemle "eğer" bloğu olarak yeniden yazar. |
| BÖLÜM IV · ÖLÇME VE DEĞERLENDİRME | |
|---|---|
| Ölçme araçları | Kontrol listesi, dereceli puanlama anahtarı, öz ve akran değerlendirme |
| Doğru-yanlış soruları |
|
| Dersin uygulanmasına ilişkin açıklamalar | İç içe "eğer" blokları öğrencilere ilk bakışta karışık gelir. Önce tek sensörle (yalnızca sol) iki durumlu bir program yazdırıp sonra ikinci sensörü eklemek kavramayı kolaylaştırır. Blok koddaki girintiyi tahtada renkli dikdörtgenlerle göstermek de işe yarar. |