Bilişim Ders Notları
Robotik 2 · 5. hafta · Devre Elemanları ve Temel Uygulamalar (LED ve Motor)

Vantilatör: Benzetim, Test ve Hata Ayıklama

Robotik Kodlama 2 · 5. hafta ders notu · RK.2.1.2

Öğrenme çıktıları
RK.2.1.2
  • Vantilatör devresini Tinkercad Devreler'de transistör, diyot, buton ve potansiyometreyle kurar.
  • Tek butonla aç/kapa yapan, potansiyometreyle motor hızını PWM ile ayarlayan programı blok kodla yazar ve Arduino C karşılığını okur.
  • Potansiyometre değerinin (0–1023) PWM değerine (0–255) nasıl dönüştüğünü hesaplar.
  • Benzetimde karşılaştığı hataları test tablosuyla bulur ve düzeltir.
Bilgisayarsız sınıf alternatifi

İnsan potansiyometre

Tahtaya 0'dan 1023'e bir sayı doğrusu çizilir. Bir öğrenci "potansiyometre" olur ve parmağıyla doğru üzerinde bir yer gösterir; ikinci öğrenci "Arduino" olur ve sayıyı 4'e bölerek PWM değerini söyler; üçüncü öğrenci "motor" olur ve PWM değerine göre yerinde yavaş ya da hızlı döner. Aç/kapa için bir zil ya da alkış kullanılır: her alkışta "motor" öğrenci durur ya da başlar. Ardından aynı mantık kâğıttaki test tablosuyla kontrol edilir.

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.

01Tinkercad'de vantilatör devresi
Tinkercad · Devreler Vantilatör KodSimülasyonu Başlat UNO Bloklar + Metin ▾ değer ← A0 pinini oku eğer durum = 1 ise pin 9'u değer / 4 yap deger = analogRead(A0);if (durum == 1) { analogWrite(9, deger / 4);}
  1. 1Kod düğmesiKod panelini açar ve kapatır.Dokun, adını gör
  2. 2Simülasyonu BaşlatDevreyi ve programı sanal olarak çalıştırır; motorun döndüğü görülür.Dokun, adını gör
  3. 3Bloklar + Metin menüsüBlokları ve onların Arduino C karşılığını yan yana gösterir.Dokun, adını gör
  4. 4Blok alanıProgramı sürükle-bırak bloklarla kurduğumuz yer.Dokun, adını gör
  5. 5Metin (C kodu) alanıBlokların otomatik üretilen C kodu; buradan kopyalanıp Arduino IDE'ye aktarılabilir.Dokun, adını gör
  6. 6ButonAç/kapa girişi; basıldığında pin 2 YÜKSEK okunur.Dokun, adını gör
  7. 7PotansiyometreHız ayarı; orta ucu A0 pinine bağlıdır.Dokun, adını gör
  8. 8DC motorBenzetimde dönüş hızı ekranda görülür.Dokun, adını gör

Numaralara dokun.

?Tinkercad'de hangi parçaları kullanırız?
Arduino Uno R3, breadboard, NPN transistör, diyot, DC motor, 4'lü AA pil, buton, 10 kΩ ve 1 kΩ dirençler, potansiyometre. Parçalar sağdaki "Bileşenler" panelinden aranarak sürüklenir.
?"Bloklar + Metin" görünümü neden faydalı?
Blokları yerleştirdikçe yanda Arduino C kodu kendiliğinden oluşur. Böylece her bloğun hangi komuta karşılık geldiğini görürüz; bu kod gerçek karta yüklemek için de kopyalanabilir.
Anahtar kavramlar: BenzetimBloklar + MetinSilecek (orta uç)
02Pot değeri → PWM hızı
?Neden 4'e bölüyoruz?
Analog okuma 0–1023 (1024 basamak), PWM ise 0–255 (256 basamak) aralığındadır. 1024 ÷ 256 = 4 olduğu için okunan değeri 4'e bölmek iki aralığı eşler.
?PWM motoru nasıl yavaşlatır?
Pin saniyede yüzlerce kez açılıp kapanır. 128 değerinde pin zamanın yarısında açıktır; motora ortalama olarak yarım güç gider ve motor daha yavaş döner.
?C kodundaki map() komutu ne işe yarar?
map(deger, 0, 1023, 0, 255) bir aralıktaki değeri başka bir aralığa orantılı olarak taşır. Bölme ile aynı işi yapar ama farklı aralıklarda da kullanılabilir.
Potansiyometre A0 = 6120 – 1023 ÷ 4 1530 – 255 %60 açık → orta hız A0 = 0→ PWM 0Motor dururA0 = 512→ PWM 128Yarım hızA0 = 1023→ PWM 255Tam hız
03Tek butonla aç/kapa
?Tek butonla iki iş nasıl yapılır?
"acik" değişkeni vantilatörün durumunu hatırlar. Butona her basıldığında değişken 0 ise 1, 1 ise 0 yapılır; buna "durum değiştirme" (toggle) denir.
?"Olana kadar bekle" bloğu neden gerekli?
Bir basış insan için kısa, program için çok uzundur. Bu blok olmazsa döngü, el butondayken durumu defalarca değiştirir ve vantilatör rastgele açık ya da kapalı kalır.
Arduino başladığında
sürekli tekrarla
eğer dijital pin (2) okuma = (1) ise
eğer (acik) = (0) ise
acik ▾ değişkenini 1 yap
değilse
acik ▾ değişkenini 0 yap
dijital pin (2) okuma = (0) olana kadar bekle
eğer (acik) = (1) ise
hiz ▾ değişkenini analog pin [A0] oku yap
analog pin 9 değerini hiz / 4 yap
değilse
analog pin 9 değerini 0 yap
04Arduino C karşılığı
?acik = 1 - acik satırı ne yapar?
acik 0 ise 1 − 0 = 1, acik 1 ise 1 − 1 = 0 olur. Bloklardaki "eğer–değilse" yapısının kısa yazılışıdır.
?while (digitalRead(2) == HIGH) { } neden boş?
İçi bilerek boş bırakılmıştır: buton basılı olduğu sürece program bu satırda bekler. Bloklardaki "olana kadar bekle" ile aynı işi görür.
int acik = 0;

void setup() {
  pinMode(2, INPUT);
  pinMode(9, OUTPUT);
}

void loop() {
  if (digitalRead(2) == HIGH) {
    acik = 1 - acik;              // 0 ↔ 1
    while (digitalRead(2) == HIGH) { }
  }
  if (acik == 1) {
    int hiz = analogRead(A0) / 4;
    analogWrite(9, hiz);
  } else {
    analogWrite(9, 0);
  }
}
05Test tablosu ve hata ayıklama

Soru işaretli kutulara dokun.

Biliyor muydun?

Seri monitör en iyi yardımcıdır: Serial.println(hiz); satırını ekleyip benzetimi başlatın, pot çevrildikçe sayının değiştiğini görün.

TestBeklenenGözlenirse hata nerede?
Pot en solda
Pot en sağda
Butona bir bas
Hiç basmadan
Benzetimde motor hiç dönmüyor

Ders akışı

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

5dk

Isınma: Döndür, hızlansın

Bir öğrenciye potansiyometreyi (ya da ses düğmesi olan bir cihazı) çevirt. "Düğme çevrildikçe Arduino ne görüyor?" sorusunu sor. Çizim üzerinden 0–1023 arası okuma değerinin 4'e bölünerek 0–255 PWM değerine dönüştüğünü göster; hesap kartlarıyla birkaç dönüşümü sınıfça yapın.

Potansiyometre A0 = 6120 – 1023 ÷ 4 1530 – 255 %60 açık → orta hız A0 = 0→ PWM 0Motor dururA0 = 512→ PWM 128Yarım hızA0 = 1023→ PWM 255Tam hız
12dk

Keşif: Devreyi Tinkercad'de kur

Tahtada Tinkercad'i aç; öğrenciler sırayla gelip parçaları ekler: NPN transistör, diyot, DC motor, 4'lü AA pil, buton, 10 kΩ direnç, potansiyometre. Pin 9 → 1 kΩ → taban, pin 2 → buton, A0 → potun orta ucu bağlanır. Her bağlantıdan sonra sınıf "geçen haftaki şemaya uyuyor mu?" diye kontrol eder.

Tinkercad · Devreler Vantilatör KodSimülasyonu Başlat UNO Bloklar + Metin ▾ değer ← A0 pinini oku eğer durum = 1 ise pin 9'u değer / 4 yap deger = analogRead(A0);if (durum == 1) { analogWrite(9, deger / 4);}
15dk

Etkinlik: Kodla, çalıştır, test et

Kod panelini "Bloklar + Metin" görünümüne al. Önce yalnızca hız bloklarını yazıp benzetimi başlatın ve potu çevirin. Sonra aç/kapa bölümünü ekleyin. Gruplar test tablosunu doldurur: "Pot en solda → motor?", "Butona bir kez bas → ?", "Butonu basılı tut → ?". Beklenen ile gözlenen farklıysa satır kırmızı işaretlenir ve hata ayıklanır.

Arduino başladığında
sürekli tekrarla
eğer dijital pin (2) okuma = (1) ise
eğer (acik) = (0) ise
acik ▾ değişkenini 1 yap
değilse
acik ▾ değişkenini 0 yap
dijital pin (2) okuma = (0) olana kadar bekle
eğer (acik) = (1) ise
hiz ▾ değişkenini analog pin [A0] oku yap
analog pin 9 değerini hiz / 4 yap
değilse
analog pin 9 değerini 0 yap
8dk

Değerlendirme: Hata avı ve öz değerlendirme

Öğretmen hazırladığı üç "bozuk" projeyi açar: taban direnci yok, pot A0 yerine A1'e bağlı, "olana kadar bekle" bloğu eksik. Gruplar hatayı bulup düzeltir. Son olarak her öğrenci "Devreyi kurdum / kodu açıklayabilirim / hatayı kendim buldum" maddelerini öz değerlendirme kâğıdında 1–3 arası işaretler.

Doğru mu, yanlış mı?

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

1. Potansiyometre analog pinden 0 ile 1023 arasında bir değer olarak okunur.

Cevabı gösterDoğru

2. analogWrite ile bir PWM pinine 0 ile 255 arasında değer verilir.

Cevabı gösterDoğru

3. Pot değeri 1023 iken 4'e bölünürse PWM değeri yaklaşık 255 olur.

Cevabı gösterDoğru · 1023 ÷ 4 = 255,75; tam sayıya yuvarlanınca 255 olur.

4. Motor pin 9 yerine pin 8'e bağlanırsa hız ayarı yine çalışır.

Cevabı gösterYanlış · Pin 8 PWM üretemez; yalnızca açık-kapalı çalışır. Hız ayarı için ~ işaretli pinler (3, 5, 6, 9, 10, 11) kullanılır.

5. "Pin 2 sıfır olana kadar bekle" bloğu silinirse buton basılı tutulduğunda vantilatör hızla açılıp kapanmaya devam eder.

Cevabı gösterDoğru · Döngü saniyede binlerce kez döner; el butonda kaldıkça durum her turda tersine çevrilir.

6. Butona aşağı çekme direnci (10 kΩ) bağlanmasa da pin her zaman kararlı biçimde 0 okur.

Cevabı gösterYanlış · Boşta kalan pin "havada" kalır; çevredeki elektrik gürültüsüyle bazen 0, bazen 1 okur. 10 kΩ direnç pini basılmadığında GND'ye çekerek kararlı 0 okunmasını sağlar.

7. Tinkercad'de benzetim çalışırken kablo eklenemez; önce benzetim durdurulmalıdır.

Cevabı gösterDoğru

8. Benzetimde motor dönüyorsa gerçek devrede de kesinlikle sorunsuz döner.

Cevabı gösterYanlış · Benzetim gevşek kabloları, zayıf pili ya da yanlış transistör bacağını göstermez. Benzetim mantığı doğrular; gerçek kurulumda ayrıca test gerekir.

9. Test tablosunda "beklenen" ve "gözlenen" sonuçlar karşılaştırılarak hata bulunur.

Cevabı gösterDoğru

5. hafta günlük planı

2026–2027 2. düzey Seçmeli Robotik Kodlama 2 dersi 5. 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 · 5. 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 / Tarih5. Hafta · 12–16 Ekim (EKİM)Süre2 ders saati (40' + 40')
TemaMOTOR UYGULAMASI
KonuVantilatör: Benzetim, Test ve Hata Ayıklama
BÖLÜM II · ÖĞRENME ÇIKTILARI VE KAYNAKLAR
Öğrenme çıktısıRK.2.1.2 Benzetim ortamında devre tasarımı, test ve hata düzeltme
Süreç bileşenleri
  • Vantilatör devresini Tinkercad Devreler'de transistör, diyot, buton ve potansiyometreyle kurar.
  • Tek butonla aç/kapa yapan, potansiyometreyle motor hızını PWM ile ayarlayan programı blok kodla yazar ve Arduino C karşılığını okur.
  • Potansiyometre değerinin (0–1023) PWM değerine (0–255) nasıl dönüştüğünü hesaplar.
  • Benzetimde karşılaştığı hataları test tablosuyla bulur ve düzeltir.
Araç, gereç ve kaynaklarAkıllı tahta ve Tinkercad Devreler (öğretmen hesabı, hazır taslak proje) · Test tablosu çalışma kâğıdı · Hesap kartları: 0, 256, 512, 768, 1023 · Varsa potansiyometre ve motor (gösterim için) · Bilişim Ders Notları ders sayfası, sunum ve etkinlikler (bilisimdersnotlari.com)
BÖLÜM III · ÖĞRENME-ÖĞRETME UYGULAMALARI
SüreEtkinlik akışı
1. ders
5 dk
Isınma: Döndür, hızlansın
Bir öğrenciye potansiyometreyi (ya da ses düğmesi olan bir cihazı) çevirt. "Düğme çevrildikçe Arduino ne görüyor?" sorusunu sor. Çizim üzerinden 0–1023 arası okuma değerinin 4'e bölünerek 0–255 PWM değerine dönüştüğünü göster; hesap kartlarıyla birkaç dönüşümü sınıfça yapın.
1. ders
12 dk
Keşif: Devreyi Tinkercad'de kur
Tahtada Tinkercad'i aç; öğrenciler sırayla gelip parçaları ekler: NPN transistör, diyot, DC motor, 4'lü AA pil, buton, 10 kΩ direnç, potansiyometre. Pin 9 → 1 kΩ → taban, pin 2 → buton, A0 → potun orta ucu bağlanır. Her bağlantıdan sonra sınıf "geçen haftaki şemaya uyuyor mu?" diye kontrol eder.
1. ders
15 dk
Etkinlik: Kodla, çalıştır, test et
Kod panelini "Bloklar + Metin" görünümüne al. Önce yalnızca hız bloklarını yazıp benzetimi başlatın ve potu çevirin. Sonra aç/kapa bölümünü ekleyin. Gruplar test tablosunu doldurur: "Pot en solda → motor?", "Butona bir kez bas → ?", "Butonu basılı tut → ?". Beklenen ile gözlenen farklıysa satır kırmızı işaretlenir ve hata ayıklanır.
1. ders
8 dk
Değerlendirme: Hata avı ve öz değerlendirme
Öğretmen hazırladığı üç "bozuk" projeyi açar: taban direnci yok, pot A0 yerine A1'e bağlı, "olana kadar bekle" bloğu eksik. Gruplar hatayı bulup düzeltir. Son olarak her öğrenci "Devreyi kurdum / kodu açıklayabilirim / hatayı kendim buldum" maddelerini öz değerlendirme kâğıdında 1–3 arası işaretler.
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: Pot değeri → PWM değeri; Tinkercad ekranı: numarayı eşleştir; Belirti → olası neden; Doğru mu, yanlış mı?; Kutuyu aç: konu soruları; Test yarışması: Vantilatör: Benzetim, Test ve Hata….
2. ders
10 dk
Değerlendirme
9 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: İnsan potansiyometre. Tahtaya 0'dan 1023'e bir sayı doğrusu çizilir. Bir öğrenci "potansiyometre" olur ve parmağıyla doğru üzerinde bir yer gösterir; ikinci öğrenci "Arduino" olur ve sayıyı 4'e bölerek PWM değerini söyler; üçüncü öğrenci "motor" olur ve PWM değerine göre yerinde yavaş ya da hızlı döner. Aç/kapa için bir zil ya da alkış kullanılır: her alkışta "motor" öğrenci durur ya da başlar. Ardından aynı mantık kâğıttaki test tablosuyla kontrol edilir.
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. Potansiyometre analog pinden 0 ile 1023 arasında bir değer olarak okunur. (D)
  2. analogWrite ile bir PWM pinine 0 ile 255 arasında değer verilir. (D)
  3. Pot değeri 1023 iken 4'e bölünürse PWM değeri yaklaşık 255 olur. (D)
  4. Motor pin 9 yerine pin 8'e bağlanırsa hız ayarı yine çalışır. (Y)
  5. "Pin 2 sıfır olana kadar bekle" bloğu silinirse buton basılı tutulduğunda vantilatör hızla açılıp kapanmaya devam eder. (D)
  6. Butona aşağı çekme direnci (10 kΩ) bağlanmasa da pin her zaman kararlı biçimde 0 okur. (Y)
  7. Tinkercad'de benzetim çalışırken kablo eklenemez; önce benzetim durdurulmalıdır. (D)
  8. Benzetimde motor dönüyorsa gerçek devrede de kesinlikle sorunsuz döner. (Y)
  9. Test tablosunda "beklenen" ve "gözlenen" sonuçlar karşılaştırılarak hata bulunur. (D)
Dersin uygulanmasına ilişkin açıklamalarTinkercad'de potansiyometrenin orta ucu "Silecek" (wiper) olarak adlandırılır; öğrenciler bunu çoğu zaman kenardaki uçlarla karıştırır. Taslak projeyi önceden hazırlayıp yalnızca kablolamayı derste yaptırmak 10 dakika kazandırır.
…………………………Bilişim Teknolojileri Öğretmeni
UYGUNDUR12.10.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ç →