Bilişim Ders Notları
Robotik 2 · 13. hafta · Sensörlü Uygulamalar (Çizgi Takip, Aydınlatma, Havalandırma)

Akıllı Aydınlatma 3: Test ve Geliştirme

Robotik Kodlama 2 · 13. hafta ders notu · RK.2.2.2

Öğrenme çıktıları
RK.2.2.2
  • Karar tablosunu test planına çevirir; her durum için beklenen ve gözlenen sonucu karşılaştırır.
  • Benzetimde karşılaştığı hataları (yanlış pin, ters karşılaştırma, unutulan değilse kolu) bulur ve düzeltir.
  • Son hareketten sonra lambayı 10 saniye açık tutan bir sayaç değişkeni ekler.
  • LED parlaklığını ortam ışığına göre PWM ve eşle (map) ile ayarlar.
Bilgisayarsız sınıf alternatifi

Kronometreli insan lamba

"PIR" öğrencisi bir öğrenci önünden geçince el kaldırır. "Arduino" öğrencisi elindeki 10’luk sayı kartlarını her saniye bir azaltarak tahtaya yazar (10, 9, 8…); yeni bir geçişte sayıyı yeniden 10 yapar. "LED" öğrencisi sayı 0’dan büyük olduğu sürece sarı kartı havada tutar. Parlaklık için sarı kartın yanına "%30", "%60", "%100" kartları eklenir; öğretmen ortamın ne kadar karanlık olduğunu söyler.

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.

01Test planı: Dört durumu sına
Tinkercad · Devreler Akıllı Lamba Kod Simülasyonu Durdur Işıkkaranlık Seri MonitörIsik: 812 Hareket: 0Isik: 640 Hareket: 0Isik: 296 Hareket: 0Isik: 141 Hareket: 1Isik: 138 Hareket: 1Isik: 139 Hareket: 0
  1. 1Simülasyonu Başlat / DurdurDevreyi sanal olarak çalıştırır; çalışırken sensörlerle oynayabilirsin.Dokun, adını gör
  2. 2KodBlok ve metin (Arduino C) kodunu açar.Dokun, adını gör
  3. 3Işık kaydırıcısıBenzetimde LDR’ye tıklayınca açılır; ortamın ışığını değiştirir.Dokun, adını gör
  4. 4PIR algılama alanıBenzetimde PIR’a tıklayınca görünür; nesne bu alana girince sinyal 1 olur.Dokun, adını gör
  5. 5Hareket eden nesneFareyle sürükleyerek “birinin geçmesini” taklit ederiz.Dokun, adını gör
  6. 6Seri monitörIşık ve hareket değerlerini satır satır gösterir; eşik seçmek için kullanılır.Dokun, adını gör

Ekrandaki numaralara ve soru işaretli kutulara dokun.

?Test planı neden yazılı olmalı?
Rastgele denemede bazı durumları unuturuz. Yazılı plan, her durumun en az bir kez sınandığını ve sonucun kaydedildiğini gösterir.
?Bir test "kaldı" çıkarsa ilk ne yaparız?
Seri monitördeki değerlere bakarız: Işık değeri beklediğimiz gibi mi? Hareket 1 oluyor mu? Hangi değerin yanlış olduğu, hatanın devrede mi programda mı olduğunu gösterir.
Anahtar kavramlar: Test planıBeklenen sonuçHata ayıklama
TestBenzetimde ne yaparım?BeklenenSonuç
T1
T2
T3
T4
T5
02Sık görülen hatalar

Kartlara dokun.

03Geliştirme 1: Süre sayacı
?Sayaç değişkeni ne işe yarar?
Hareketten sonra ne kadar süre kaldığını tutar. Her döngüde 1 azalır; 0’a inince lamba söner. Yeni hareket gelirse yeniden 100 olur.
?Süreyi 30 saniye yapmak için ne değiştiririz?
Döngü 0,1 saniyede bir döndüğü için 30 ÷ 0,1 = 300 gerekir. Sayaç bloğundaki 100’ü 300 yaparız.
Arduino başladığında
sürekli tekrarla
ışık ▾ değişkenini analog pin A0 oku yap
eğer (ışık) < (300) ise
eğer dijital pin (2) okuma = (1) ise
sayaç ▾ değişkenini 100 yap
eğer (sayaç) > (0) ise
dijital pin 9 YÜKSEK ▾ yap
sayaç ▾ değişkenini -1 değiştir
değilse
dijital pin 9 DÜŞÜK ▾ yap
0.1 saniye bekle
Biliyor muydun?

HC-SR501 PIR kartında da süre ayarı (Tx) vardır; ama sayaç programı süreyi koddan değiştirmeyi ve benzetimde denemeyi kolaylaştırır.

PIRsayaçLED 100yeniden 1000 YANIKsöndü 0 s5 s10 s15 s20 s25 s30 s son hareketten sonra 10 s
04Geliştirme 2: Ortama göre parlaklık (PWM)
?PWM nedir?
Darbe genişlik modülasyonu: pin çok hızlı açılıp kapanır. Açık kalma oranı (%25, %50…) arttıkça LED daha parlak görünür. Arduino’da 0–255 arası değerle ayarlanır.
?map komutu ne yapar?
Bir aralıktaki sayıyı başka bir aralığa orantılı olarak çevirir. map(isik, 0, 300, 255, 80): ışık 0 iken 255, 300 iken 80 verir.
?constrain neden eklendi?
Sayaç sürerken ortam aydınlanırsa ışık 300’ü geçer ve map negatif bir sonuç verebilir. constrain sonucu 0–255 arasında tutar.
int sayac = 0;
void loop() {
  int isik = analogRead(A0);
  if (isik < 300 && digitalRead(2))
    sayac = 100;
  if (sayac > 0) {
    int p = map(isik, 0, 300, 255, 80);
    analogWrite(9, constrain(p, 0, 255));
    sayac = sayac - 1;
  } else {
    analogWrite(9, 0);
  }
  delay(100);
}
PWM: çok hızlı aç-kapa ile “yarı parlak” LED analog pin 9 → 64zamanın %25 açıkanalog pin 9 → 128zamanın %50 açıkanalog pin 9 → 255zamanın %100 açık
05Öz değerlendirme ölçeği

Soru işaretli kutulara dokun.

?"Kısmen" işaretlediğim madde için ne yapmalıyım?
O maddeye ait bölümü yeniden okuyup grubumdan birine anlatmaya çalışırım; anlatamadığım noktayı öğretmenime soru olarak yazarım.
Ben…Henüz değilKısmenEvet
Test planındaki beş testi yaptım
Bir hatanın nedenini seri monitörle buldum
Sayaç süresini hesaplayabiliyorum
PWM ile parlaklığı açıklayabiliyorum

Ders akışı

40 dakikalık bir ders saati için planlandı. Adımın başlığına dokun, ayrıntılar açılsın.

6dk

Isınma: Hata avı

Tahtaya içinde üç hata olan bir blok programı yansıtın: karşılaştırma yönü ters (ışık > 300), LED pini 8 yazılmış ve içteki "değilse" kolu eksik. Gruplar hataları bulmak için 3 dakika yarışır. Her hatanın lambada nasıl bir belirti yaratacağını tartışın ("gündüz yanıyor", "hiç yanmıyor", "bir kez yanınca sönmüyor").

10dk

Keşif: Test planı ile dört durum

Karar tablosunu test planına dönüştürün: her satırda durum, beklenen sonuç, gözlenen sonuç ve "geçti/kaldı" sütunu olsun. Benzetimde kaydırıcı ve PIR nesnesiyle dört durumu sırayla deneyin. Kalan bir test varsa sebebi seri monitördeki değerlere bakarak bulunur ve düzeltilir.

Tinkercad · Devreler Akıllı Lamba Kod Simülasyonu Durdur Işıkkaranlık Seri MonitörIsik: 812 Hareket: 0Isik: 640 Hareket: 0Isik: 296 Hareket: 0Isik: 141 Hareket: 1Isik: 138 Hareket: 1Isik: 139 Hareket: 0
12dk

Etkinlik: Süre sayacı

PIR hareketi bitince lambanın hemen söndüğünü gösterin; koridorda yürüyen biri için bu rahatsız edicidir. Hareket algılanınca "sayaç" değişkenini 100 yapan, her 0,1 saniyede 1 azaltan programı yazın: son hareketten sonra lamba yaklaşık 10 saniye yanar. Kronometreyle süreyi ölçün.

PIRsayaçLED 100yeniden 1000 YANIKsöndü 0 s5 s10 s15 s20 s25 s30 s son hareketten sonra 10 s
Arduino başladığında
sürekli tekrarla
ışık ▾ değişkenini analog pin A0 oku yap
eğer (ışık) < (300) ise
eğer dijital pin (2) okuma = (1) ise
sayaç ▾ değişkenini 100 yap
eğer (sayaç) > (0) ise
dijital pin 9 YÜKSEK ▾ yap
sayaç ▾ değişkenini -1 değiştir
değilse
dijital pin 9 DÜŞÜK ▾ yap
0.1 saniye bekle
7dk

Etkinlik: Ortama göre parlaklık

"Akşam alacakaranlığında lamba tam parlak yanmak zorunda mı?" diye sorun. YÜKSEK yerine "analog pin 9" bloğuyla parlaklık değeri verin; eşle bloğuyla ışık 300 iken 80, tam karanlıkta 255 olsun. PWM çiziminde LED’in hızlı aç-kapa ile nasıl yarı parlak göründüğünü gösterin.

PWM: çok hızlı aç-kapa ile “yarı parlak” LED analog pin 9 → 64zamanın %25 açıkanalog pin 9 → 128zamanın %50 açıkanalog pin 9 → 255zamanın %100 açık
5dk

Değerlendirme: Test raporu

Gruplar test planını tamamlar, en az bir hatayı "belirti → neden → çözüm" biçiminde yazar. Öz değerlendirme ölçeğinde kendilerini işaretler; komşu grup raporu okuyup "çözüm anlaşılır mı?" sorusuna evet/hayır der.

Doğru mu, yanlış mı?

Dersin sonunda tahtada ya da öğrencinin kendi cihazında çözülür.

1. Test planında her durum için beklenen sonuç önceden yazılır.

Cevabı gösterDoğru · Beklenen sonuç yazılmazsa testin geçip geçmediğine karar veremeyiz.

2. Koşulda "ışık > 300" yazılırsa lamba gündüz yanar, gece söner.

Cevabı gösterDoğru · Karanlıkta değer küçüldüğü için koşul ters çalışır.

3. Sayaç 100’den başlayıp her 0,1 saniyede 1 azalırsa lamba yaklaşık 10 saniye açık kalır.

Cevabı gösterDoğru

4. Sayaç programında yeni bir hareket algılanınca sayaç sıfırlanır ve lamba hemen söner.

Cevabı gösterYanlış · Yeni hareket sayacı yeniden 100 yapar; süre baştan başlar ve lamba yanmaya devam eder.

5. PWM, LED’e verilen gerilimi gerçekten 2,5 V’a düşürerek yarı parlaklık sağlar.

Cevabı gösterYanlış · PWM pini yalnızca 0 V ve 5 V verir; çok hızlı aç-kapa yapar. Gözümüz bu hızı fark edemediği için ortalama bir parlaklık görürüz.

6. Parlaklığı ayarlamak için LED, ~ işaretli bir PWM pinine bağlı olmalıdır.

Cevabı gösterDoğru

7. map(isik, 0, 300, 255, 80) komutu karanlık arttıkça daha büyük bir parlaklık değeri verir.

Cevabı gösterDoğru · Işık 0’a yaklaştıkça sonuç 255’e, 300’e yaklaştıkça 80’e yaklaşır.

8. Bir test kalırsa programın tamamını silip baştan yazmak en iyi yoldur.

Cevabı gösterYanlış · Önce belirtiyi gözler, seri monitörden değerlere bakar ve hatanın yerini daraltırız. Çoğu zaman tek bir satırı düzeltmek yeter.

9. "analog pin 9 değerini 255 yap" ile "dijital pin 9 YÜKSEK yap" LED’de aynı parlaklığı verir.

Cevabı gösterDoğru

10. Hata ayıklarken seri monitör yalnızca son değeri gösterir; önceki değerler görülemez.

Cevabı gösterYanlış · Seri monitör değerleri satır satır listeler; yukarı kaydırarak önceki ölçümlere bakabiliriz.

13. hafta günlük planı

2026–2027 2. düzey Seçmeli Robotik Kodlama 2 dersi 13. 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 · 13. HAFTA

BÖLÜM I · DERSE İLİŞKİN BİLGİLER
DersSeçmeli Robotik Kodlama 2. SeviyeSınıf / Düzey2. düzey (seçmeli)
Hafta / Tarih13. Hafta · 14–18 Aralık (ARALIK)Süre2 ders saati (40' + 40')
TemaAKILLI AYDINLATMA
KonuAkıllı Aydınlatma 3: Test ve Geliştirme
BÖLÜM II · ÖĞRENME ÇIKTILARI VE KAYNAKLAR
Öğrenme çıktısıRK.2.2.2 Benzetim ortamında devre hazırlama, test ve hata ayıklama
Süreç bileşenleri
  • Karar tablosunu test planına çevirir; her durum için beklenen ve gözlenen sonucu karşılaştırır.
  • Benzetimde karşılaştığı hataları (yanlış pin, ters karşılaştırma, unutulan değilse kolu) bulur ve düzeltir.
  • Son hareketten sonra lambayı 10 saniye açık tutan bir sayaç değişkeni ekler.
  • LED parlaklığını ortam ışığına göre PWM ve eşle (map) ile ayarlar.
Araç, gereç ve kaynaklarAkıllı tahta ve Tinkercad’deki grup projeleri · Test planı çalışma kâğıdı (4 durum + 2 geliştirme testi) · Kronometre ya da telefon saati · "Hata avı" kartları · Bilişim Ders Notları ders sayfası, sunum ve etkinlikler (bilisimdersnotlari.com)
BÖLÜM III · ÖĞRENME-ÖĞRETME UYGULAMALARI
SüreEtkinlik akışı
1. ders
6 dk
Isınma: Hata avı
Tahtaya içinde üç hata olan bir blok programı yansıtın: karşılaştırma yönü ters (ışık > 300), LED pini 8 yazılmış ve içteki "değilse" kolu eksik. Gruplar hataları bulmak için 3 dakika yarışır. Her hatanın lambada nasıl bir belirti yaratacağını tartışın ("gündüz yanıyor", "hiç yanmıyor", "bir kez yanınca sönmüyor").
1. ders
10 dk
Keşif: Test planı ile dört durum
Karar tablosunu test planına dönüştürün: her satırda durum, beklenen sonuç, gözlenen sonuç ve "geçti/kaldı" sütunu olsun. Benzetimde kaydırıcı ve PIR nesnesiyle dört durumu sırayla deneyin. Kalan bir test varsa sebebi seri monitördeki değerlere bakarak bulunur ve düzeltilir.
1. ders
12 dk
Etkinlik: Süre sayacı
PIR hareketi bitince lambanın hemen söndüğünü gösterin; koridorda yürüyen biri için bu rahatsız edicidir. Hareket algılanınca "sayaç" değişkenini 100 yapan, her 0,1 saniyede 1 azaltan programı yazın: son hareketten sonra lamba yaklaşık 10 saniye yanar. Kronometreyle süreyi ölçün.
1. ders
7 dk
Etkinlik: Ortama göre parlaklık
"Akşam alacakaranlığında lamba tam parlak yanmak zorunda mı?" diye sorun. YÜKSEK yerine "analog pin 9" bloğuyla parlaklık değeri verin; eşle bloğuyla ışık 300 iken 80, tam karanlıkta 255 olsun. PWM çiziminde LED’in hızlı aç-kapa ile nasıl yarı parlak göründüğünü gösterin.
1. ders
5 dk
Değerlendirme: Test raporu
Gruplar test planını tamamlar, en az bir hatayı "belirti → neden → çözüm" biçiminde yazar. Öz değerlendirme ölçeğinde kendilerini işaretler; komşu grup raporu okuyup "çözüm anlaşılır mı?" sorusuna evet/hayır der.
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: Belirti → olası neden; Hata ayıklama adımları; Hesapla ya da açıkla; Doğru mu, yanlış mı?; Kutuyu aç: konu soruları; Eşleşen kartlar: Akıllı Aydınlatma 3: Test ve Geliştirme.
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ırmaBilgisayarsız sınıf alternatifi: Kronometreli insan lamba. "PIR" öğrencisi bir öğrenci önünden geçince el kaldırır. "Arduino" öğrencisi elindeki 10’luk sayı kartlarını her saniye bir azaltarak tahtaya yazar (10, 9, 8…); yeni bir geçişte sayıyı yeniden 10 yapar. "LED" öğrencisi sayı 0’dan büyük olduğu sürece sarı kartı havada tutar. Parlaklık için sarı kartın yanına "%30", "%60", "%100" kartları eklenir; öğretmen ortamın ne kadar karanlık olduğunu söyler.
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ı
  1. Test planında her durum için beklenen sonuç önceden yazılır. (D)
  2. Koşulda "ışık > 300" yazılırsa lamba gündüz yanar, gece söner. (D)
  3. Sayaç 100’den başlayıp her 0,1 saniyede 1 azalırsa lamba yaklaşık 10 saniye açık kalır. (D)
  4. Sayaç programında yeni bir hareket algılanınca sayaç sıfırlanır ve lamba hemen söner. (Y)
  5. PWM, LED’e verilen gerilimi gerçekten 2,5 V’a düşürerek yarı parlaklık sağlar. (Y)
  6. Parlaklığı ayarlamak için LED, ~ işaretli bir PWM pinine bağlı olmalıdır. (D)
  7. map(isik, 0, 300, 255, 80) komutu karanlık arttıkça daha büyük bir parlaklık değeri verir. (D)
  8. Bir test kalırsa programın tamamını silip baştan yazmak en iyi yoldur. (Y)
  9. "analog pin 9 değerini 255 yap" ile "dijital pin 9 YÜKSEK yap" LED’de aynı parlaklığı verir. (D)
  10. Hata ayıklarken seri monitör yalnızca son değeri gösterir; önceki değerler görülemez. (Y)
Dersin uygulanmasına ilişkin açıklamalarSayaç programında 0,1 saniyelik bekleme ile sayaç başlangıcı (100) çarpılarak süre bulunur; öğrencilere 30 saniye için başlangıç değerini (300) kendilerinin hesaplatmasını isteyin. analogWrite yalnızca ~ işaretli pinlerde çalışır; LED başka pindeyse parlaklık değişmez.
…………………………Bilişim Teknolojileri Öğretmeni
UYGUNDUR14.12.2026…………………………Okul Müdürü
Bu dersi sınıfta işleyinSunum, tahta modu ve etkileşimli etkinlikler için.
Etkileşimli sürümü aç →