Rehberler · 13 dk okuma

Arduino Dersinde Farklılaştırma: Karma Seviyeli Sınıfa Tek Ders

Arduino dersi farklılaştırma: 10 dakikalık seviye tespiti, aynı projede temel/gelişen/ileri görevler, gruplama, uzatma ve destek, adil rubrik, 40 dk akış.

Arduino dersi farklılaştırma için üç ayrı ders hazırlaman gerekmez: bütün sınıf aynı projeyi yapar, ama her proje üç kata bölünür. Temel kat projeyi çalıştırıp tek bir değeri değiştirir, gelişen kat projeye yeni bir davranış ekler, ileri kat programın yapısını değiştirir. Hangi öğrencinin hangi kattan başlayacağını ilk derste 10 dakikalık bir seviye tespitiyle bulursun; gruplar da sabit kalmaz, dersin aşamasına göre değişir. Böylece hiç kod görmemiş öğrenci dersin sonunda çalışan bir trafik lambası görür, robot yapmış öğrenci aynı trafik lambasını delay() kullanmadan yeniden yazmakla uğraşır ve iki öğrenci aynı devre üzerinde konuşabilir.

Bu yazıda o şablonun bütün parçaları var: seviye tespiti için üç soru ve bir mini görev, puanı kata çeviren tanılama tablosu, dört ücretsiz BlueGrays projesi için hazır temel/gelişen/ileri görevler, dört gruplama stratejisinin ne zaman işe yaradığı, hızlı öğrenciler için uzatma menüsü, desteğe ihtiyacı olan öğrenciler için iskele listesi, herkesi kendi katından ölçen bir değerlendirme yaklaşımı ve dakika dakika 40 dakikalık bir ders akışı. Örnekler hep aynı varsayıma dayanıyor: 24 öğrencilik bir sınıf, 12 Arduino Uno seti, ikili çalışma ve 40 dakikalık ders. Sınıf lojistiğini (set kutuları, yardım kuyruğu, toplama) kalabalık sınıfta Arduino dersi yazısında, haftalık konu sırasını da 8 haftalık robotik kodlama planında anlattık; burada yalnız aynı dersi farklı seviyelere nasıl açacağına odaklanıyoruz.

Arduino dersinde farklılaştırma ne demek, ne demek değil?

Farklılaştırma, herkesin aynı hedefe farklı yollardan ve farklı derinlikte ulaşmasıdır. Arduino dersinde hedef çoğu zaman bir kavramdır: dijital çıkış, zamanlama, koşul, analog okuma. Trafik lambası dersinin hedefi "komutların sırası ve süresi programın davranışını belirler" fikriyse, temel kattaki öğrenci bunu bir delay() değerini değiştirerek, ileri kattaki öğrenci zamanlamayı millis() ile yeniden kurarak öğrenir. İkisi de aynı fikri öğrenmiş olur; biri yüzeyde, diğeri derinde. Farklılaştırma üç şeyi değiştirebilir: görevin kendisini (ne yapılacak), desteği (ne kadar yardım var) ve ürünü (öğrenci öğrendiğini nasıl gösterecek). Bu yazıdaki şablon üçünü birlikte kullanır.

Farklılaştırma şunlar değildir: hızlı öğrenciye aynı işten daha fazlasını vermek (beş LED yerine on LED yakmak derinlik değil, sadece daha uzun süren aynı iştir), yavaş öğrenciyi daha kolay bir projeye göndermek (o zaman sınıf aynı şeyi konuşamaz), öğrencileri yıl boyu "zayıf grup" ve "güçlü grup" diye etiketlemek. Arduino'da bu etiket ayrıca yanıltıcıdır, çünkü beceri üç ayrı koldan gelişir: devre kurma, kod okuma ve hata ayıklama. Robot yapmış bir öğrenci devreyi gözü kapalı kurar ama kodu hiç okumamış olabilir; hiç devre görmemiş ama okulda Python dersi almış bir öğrenci de if bloğunu herkesten önce anlar. Bu yüzden katlar öğrenciye değil göreve verilir ve öğrenci her derste bir üst kata geçebilir.

İlk derste 10 dakikalık seviye tespiti

Seviye tespiti not için değil, ilk haftanın görev dağılımı içindir; öğrencilere de bunu baştan söyle. Bireysel ve kağıt üzerinde yapılır, böylece ikili çalışan öğrencilerin birbirinin gölgesinde kalması önlenir. Toplam 10 dakika sürer ve ders sonrasında 24 kağıdı puanlamak yaklaşık 10 dakikanı alır. Her madde 0, 1 ya da 2 puan alır, toplam 8 puan üzerinden değerlendirilir.

  1. Kavram sorusu (2 dk): "LED'i Arduino'ya bağlarken neden araya direnç koyarız?" Akımı sınırladığını söyleyen 2, "LED yanmasın diye" gibi yarım bir cevap veren 1, boş bırakan 0 alır.
  2. Kod okuma sorusu (2 dk): Tahtaya dört satır yaz: digitalWrite(2, HIGH); delay(1000); digitalWrite(2, LOW); delay(1000); Soru: "Bu kod ne yapar? delay(1000) yerine delay(200) yazarsan ne değişir?" İkisini doğru anlatan 2, yalnız birini anlatan 1 alır.
  3. Deneyim beyanı (1 dk): "Daha önce ne yaptın?" Hiçbir şey 0; blok kodlama ya da bir setten adım adım proje 1; kendi kodunu yazdığı ya da değiştirdiği bir proje 2.
  4. Mini görev (4 dk): Kağıda basılmış bir LED devresi çizimi ver. Çizimde iki hata olsun: LED ters takılmış ve direnç atlanmış. Öğrenci hataları daire içine alıp nasıl düzelteceğini yazar. İki hatayı bulan 2, birini bulan 1 alır.
  5. Toplama (1 dk): Kağıtlar toplanır. Puanı sonraki derse kadar kimseye söyleme; katlar ilk derste görev kartlarıyla, sessizce dağıtılır.
Toplam puanTipik görünümBaşlangıç katıİlk haftanın odağı
0–3Direnç sorusu boş, kodu satır satır okuyamıyor, hiç proje yapmamışTemelHazır devre, Bloklarla göster açık, tek bir değeri değiştirip sonucu gözlemlemek
4–6Direncin akımı sınırladığını biliyor, delay değişikliğini tahmin ediyor, bir hatayı buluyorGelişenDevreyi şemadan kendisi kurmak, projeye bir buton ya da LED eklemek
7–8İki hatayı da buluyor, kodu açıklıyor, daha önce kendi kodunu yazmışİleriProgramın yapısını değiştirmek (millis(), dizi, fonksiyon), gerektiğinde mentorluk
Çelişkili (ör. beyan 2, diğerleri 0)"Robot yaptım" diyor ama devre ve kod sorularında zorlanıyor; muhtemelen hazır bir seti talimatla kurmuşGelişenİlk derste yakından gözle, iki ders içinde katını düzelt

Kağıt üzerindeki tespiti BlueGrays'teki iki araçla destekleyebilirsin. İlki Günün soruları bölümündeki Seviye testi: 15 soruluk bu test öğrenciyi altı seviyeden birine yerleştirir (A1 İlk Işık, A2 Devre Kurucu, B1 Sensör Kâşifi, B2 Proje Geliştirici, C1 Sistem Tasarımcısı, C2 Atölye Ustası). Kaba bir eşleme olarak A1–A2'yi temel, B1–B2'yi gelişen, C1–C2'yi ileri kata denk sayabilirsin. İkincisi Proje Bulucu'nun üçüncü sorusu, Ne kadar deneyimin var?: üç seçeneği (İlk projem olacak, Birkaç proje yaptım, Rahatım, zorlayın) neredeyse birebir üç katına karşılık gelir ve öğrencinin kendini nasıl gördüğünü gösterir. İkisini de ilk dersten önce ödev olarak verebilirsin; çıkan sonuçla kağıttaki puan arasındaki fark, kimi yakından izlemen gerektiğini söyler. Seviye testinin sorularını ve seviye sistemini günün soruları yazısında ayrıntılı anlattık.

Uygulamada bir sınıf paneli yok: öğrencilerin seviye testi sonucunu ya da Proje Bulucu cevabını uzaktan bir listede göremezsin. Sonucu öğrenci sana kendi telefonundan gösterir ya da kağıda yazar. Bunu bir sınav gibi değil, başlangıç noktası olarak sun; seviye testi sonucunu not hesabına katma, yoksa öğrenciler testi kendilerini olduğundan düşük ya da yüksek göstermek için kullanır.

Aynı proje, üç kat: dört ücretsiz projeyle şablon

Şablonun kuralı basit. Temel kat projeyi çalıştırır ve bir değeri değiştirip sonucunu gözlemler; çoğu zaman bu, projenin Kodu anla sekmesindeki Kendin dene görevidir. Gelişen kat projeye yeni bir davranış ekler: bir buton, bir LED, bir koşul ya da Serial Monitor çıktısı. İleri kat programın yapısını değiştirir: delay() yerine millis(), tekrar eden satırlar yerine dizi ve döngü, iki eşik arasında durum tutma. Aşağıdaki dört proje BlueGrays'te devre şeması, kod, bloklar ve Kodu anla ile tamamen ücretsiz; sınıftaki hiçbir öğrencinin Premium'a ihtiyacı yok.

ProjeTemel katGelişen katİleri kat
Trafik Lambası (LED'ler D2, D3, D4)Kendin dene: yeşilden sonraki sarıyı 0,3 saniyeden 1,5 saniyeye çıkar (son delay(300) satırı delay(1500) olur), sonra kırmızıyı 5 saniye yapYaya butonu ekle: butonu D7 ile GND arasına bağla, pinMode(7, INPUT_PULLUP) kullan; butona basılmışsa kırmızı süresi 2 saniyeden 6 saniyeye uzasınAynı lambayı millis() ile bloklamadan yeniden yaz; buton her an okunsun ve basış hiçbir fazda kaçmasın
Buton İle Led Yakma (On Off) (buton D13, LED D7)Kendin dene: LED butona basınca değil, bırakınca değişsin (if (button == 1) satırı if (button == 0) olur)İkinci bir LED ekle (D8, 330 Ω); her basışta sırayla yalnız birinci, yalnız ikinci, ikisi birden ve hiçbiri yansın (0–3 arası sayaç)delay(50) yerine millis() ile titreşim bastırma yaz; 1 saniyeden uzun basmayı ayrı algılayıp iki LED'i birden söndür
Ldr İle Gece Lambası (LDR A0, LED D13)Kendin dene: eşik değerini 50'den 300'e çıkar, LDR'yi elinle yavaşça kapatıp LED'in ne zaman yandığını izleOkunan değeri Serial.println() ile yazdır; sınıfın aydınlık ve karanlık değerlerini ölçüp eşiği bu ölçüme göre seç (Ldr İle Işık Şiddeti Okuma yardımcı olur)İki eşikli (histerezisli) sürüm yaz: 250'nin altında yansın, 350'nin üstünde sönsün; aradaki değerlerde LED'in titremesi bitsin
Buzzer Kullanımı (buzzer D7)Kendin dene: frekansı 400 Hz'den 1000 Hz'e çıkar ve farkı dinle (pasif buzzer gerekir)İki tonlu siren yap: 600 Hz ve 900 Hz sırayla, her biri 400 ms çalsın; sonra sürelerle oynayarak acil durum sesine benzetNotaları ve süreleri iki diziye koyup for döngüsüyle 8 notalık kısa bir melodi çaldır; melodiyi tek bir fonksiyona taşı

Tabloyu kat kartı olarak kullan: her proje için üç kartı A5 kağıda bas, her ikiliye kendi katının kartını ver, ama diğer iki kart da masanın ortasında dursun. Temel kartını bitiren ikili gelişen kartını çekmekte serbesttir; ileri kartta zorlanan ikili gelişen karta dönmekte de serbesttir ve bu bir başarısızlık sayılmaz. Gelişen kattaki yaya butonu görevinin devre ve kod ayrıntılarına Arduino trafik lambası yazısında, ileri katın temelindeki bloklamayan zamanlamaya da millis() ve delay() yazısında bakabilirsin. Katların hepsi aynı temel devre üzerinde kurulur; bu yüzden sınıfta tek bir şema konuşulur ve ileri kattaki öğrenci, temel kattaki arkadaşına "bak, senin değiştirdiğin delay() satırı bende yok" diyebilir.

Ek malzemeİkili başınaSınıf toplamı (12 ikili + yedek)Hangi kat, hangi proje?
Push buton114Gelişen ve ileri kat, Trafik Lambası
LED + 330 Ω direnç1 + 114 + 14Gelişen ve ileri kat, Buton İle Led Yakma (On Off)
Pasif buzzer113Bütün katlar, Buzzer Kullanımı (aktif buzzer'da frekans değişmez)
Kat kartları (A5)3 kart × 4 projeProje başına 36 kartHepsi
Adım kartları (A5)1 deste5–6 desteTemel kat
Önceden kurulmuş yarım devre—2–3 breadboardTemel kat, takılan ikililer
Gelişen kat için eklenen 330 Ω direnci 10 kΩ ile karıştırmamak için dirençleri ayrı kutulara koy ve öğrencilerden halkaları Renk kodu hesaplayıcısıyla kontrol etmelerini iste. Temel kattaki ikililere bu kontrolü küçük bir görev olarak vermek, onları da devre konuşmasının içine katar.

Gruplama stratejileri: hangisi, ne zaman?

Karma seviyeli sınıfta tek bir gruplama yöntemi bütün derse yetmez. Esnek gruplamada gruplar dersin aşamasına göre değişir: yeni bir kavramı tanıştırırken karma gruplar birbirine anlatır, kat görevlerinde benzer seviyedeki ikililer kendi hızında ilerler, ders sonunda uzmanlar dolaşır. Aşağıdaki tablo dört stratejinin nerede işe yaradığını ve nerede ters teptiğini özetliyor.

StratejiNasıl kurulur?Ne zaman işe yarar?Dikkat
Homojen (aynı kat)Aynı kattaki iki öğrenci bir sette çalışırKat görevlerinde; herkesin kendi hızında ilerlemesi gerektiğindeUzun süre aynı kalırsa etikete dönüşür; her 2–3 derste bir yeniden bak
Heterojen (karma)Bir temel ve bir ileri ya da gelişen öğrenci yan yanaProjenin tanıtımında, devre kurulumunda, blokları birlikte okurkenİleri öğrenci her şeyi kendisi yapabilir; klavyeye ve kablolara en az deneyimli olan dokunur
Uzman masasıİleri kattan 2–3 öğrenci bir masada durur, takılan ikili oraya soru getirirKat görevlerinin ikinci yarısında; senin yardım kuyruğun uzadığındaUzman yalnız anlatır, kabloya ve klavyeye dokunmaz; uzmanlık sırayla dönsün ki kendi işi de ilerlesin
Eşli programlamaBiri sürücü (klavye ve kablo), diğeri yönlendirici (şema ve kodu okur); 10 dakikada bir rol değişirKod yazma ve hata ayıklama görevlerinde; özellikle gelişen ve ileri kattaYönlendirici yalnız söyler, ekranı elinden almaz; rol değişimini süreyle sen duyur

Eşli programlama Arduino dersine çok iyi uyar, çünkü işin iki eli vardır: biri devreyle ve Arduino IDE'yle uğraşırken diğeri telefonda projenin şemasını ve kodunu açık tutar. Yönlendirici "kırmızı LED'in uzun bacağı D2 hattına gidecek" ya da "loop'un sonundaki delay'e bak" diye yol gösterir, sürücü uygular. 10 dakikalık rol değişimi, karma bir ikilide temel kattaki öğrencinin hiç klavyeye dokunmadan dersi bitirmesini engeller. Gruplamayı ilk tanılamadan sonra kur, ama her 2–3 derste bir öğrencilerin hangi kart rengini çektiğine bakarak yenile; üst karta geçen ikili bir sonraki derste yeni bir eşle başlayabilir.

Karma gruplarda en sık görülen sorun, deneyimli öğrencinin "ben yaparım, daha hızlı" diyerek bütün işi üstlenmesidir. Ders sonunda devre çalışır ama temel kattaki öğrenci hiçbir şey yapmamış olur. Basit bir kural koy: kabloyu ve klavyeyi her zaman ikilideki daha az deneyimli öğrenci tutar, diğeri yalnız konuşur. Turda dolaşırken bu kuralın uygulanıp uygulanmadığına bakmak, kimin ne öğrendiğini anlamanın da en kısa yoludur.

Hızlı öğrenciler için uzatma menüsü

Hızlı bitiren öğrenciye "sen arkadaşına yardım et" demek kolaydır ama tek başına uzatma değildir; o öğrenci de o derste yeni bir şey öğrenmelidir. Uzatma menüsü öğrencinin bitirdiği anda ne yapacağını bilmesini sağlar ve senin yanına gelmesine gerek bırakmaz. Menüyü tahtanın köşesine ya da ileri kat kartının arkasına yaz.

  • Kendin dene, ama ipucusuz: Her projenin Kodu anla sekmesinin sonundaki Kendin dene görevini önce İpucu ve Çözümü göster düğmelerine dokunmadan çöz, sonra kendi çözümünü uygulamadakiyle karşılaştır. Ardından aynı projeye arkadaşları için yeni bir görev yaz. Görevlerin nasıl çalıştığını Kodu anla yazısında anlattık.
  • Kod rehberi kartları: Kod rehberinde millis(), diziler ve tone() gibi kartlar ileri kat görevlerinin altyapısıdır. Her kartın sonunda mini test ve "Bu konuyu projede gör" bölümü var; öğrenci komutu kolaydan zora sıralanmış başka projelerde de görür. Rehberin yapısını Arduino komutları rehberi yazısında bulabilirsin.
  • Premium projelere geçiş: Ücretsiz projeleri bitiren öğrenci için sıradaki adım, sensörlü, ekranlı ve motorlu Premium projelerdir. Bunun için öğrencinin kendi kartı ya da aboneliği gerekmez; aşağıda anlatılan eğitmen kodlarından birini kullanması yeter.
  • Kendi projesini tasarlama: İki ücretsiz projeyi birleştiren bir proje tasarlat: örneğin Trafik Lambası ile Ldr İle Gece Lambası birleşince gece olunca sarı ışığı yanıp sönen bir trafik lambası çıkar. Öğrenci önce kağıda amaç, parça listesi, pin tablosu ve test planı yazar, sonra kurar. Öğrenci bitmiş projesini fotoğrafı ve koduyla Öğren > Forum > Yeni Konu'da Rehber konusu olarak paylaşabilir; konu herkese açıktır, sınıfa özel değildir.
  • Mentorluk rolü: Uzman masasında oturmak bir ödül değil, bir görevdir: mentor yalnız soru sorar ve anlatır, kabloya dokunmaz. Bir dersi mentorlukla, bir sonrakini kendi ileri görevle geçirmek, hızlı öğrencinin hem anlatarak hem de yaparak ilerlemesini sağlar.
  • Seviye atlama hedefi: Günün soruları tarafında öğrencinin seviyesi %100 olup o seviyede yeterli soru çözdüğünde geçiş sınavı açılır; 10 sorudan 9'unu doğru yapan bir üst seviyeye geçer. Dönem başında "bir seviye atla" hedefi koymak, dersin dışında da süren bir uzatmadır.

Premium projeleri birkaç hızlı öğrenciye açmak için bütün sınıfa kod almak zorunda değilsin. Profil'deki Eğitimci Paketleri ekranında 5, 10 ya da 50 kodluk, aylık ya da yıllık paketler var. Ödeme tek seferliktir, otomatik yenilenmez; öğrenci Apple ya da Google hesabına kart eklemeden Kod Kullan ekranından kodu girip Premium olur. Kullanılmamış kodların süresi dolmaz, Kodlarım ekranında hangi kodu kimin kullandığını görürsün. Yıllık paketlerde her kodun 6, aylık paketlerde 1 transfer hakkı var: ihtiyaç dönem içinde başka bir öğrenciye kayarsa kullanılmış kodu iptal edip kalan süreyle yeni bir kod oluşturabilirsin. 10'lu pakette öğrenci başı maliyet 5'liye göre yaklaşık %20 daha düşüktür; güncel fiyatı ülkene göre aynı ekranda görürsün. Bir şeyi öğrencilerine baştan söyle: kodu kullanan öğrencinin adı, kullanıcı adı, e-postası ve profil fotoğrafı kodu veren eğitmenle paylaşılır. Paketlerin ayrıntısını sınıfa toplu Premium kod yazısında anlattık.

Desteğe ihtiyacı olan öğrenciler: hedefi değil yükü azalt

Desteğe ihtiyacı olan öğrenci için amaç, daha kolay bir proje vermek değil, aynı projede aynı fikre ulaşırken yolundaki gereksiz yükü kaldırmaktır. Hiç devre görmemiş bir öğrenci ilk derste hem breadboard'un iç bağlantılarını, hem LED'in yönünü, hem Arduino IDE'de port seçmeyi, hem de kodu öğrenmeye çalışırsa dersin sonunda hiçbirini öğrenmemiş olur. İskele bu yüklerden birkaçını geçici olarak senin üstlenmen demektir; öğrenci ilerledikçe iskeleyi tek tek kaldırırsın.

  • Hazır devre: Temel kattaki ikiliye devreyi kurulmuş olarak ver ya da yalnız breadboard kısmı hazır bir yarım devre ver. Böylece ilk 15 dakika kablolamayla geçmez ve öğrencinin enerjisi "hangi satır neyi değiştiriyor?" sorusuna kalır. İkinci derste devrenin yarısını, üçüncü derste tamamını kendisi kurar.
  • Bloklarla göster ve Blokları anla: Proje sayfasındaki Bloklarla göster anahtarı aynı programı bloklarla gösterir; anahtar açıkken Kodu anla sekmesi Blokları anla olur ve program adım adım blok blok açıklanır. Bloklar okumak içindir, karta yine projenin gerçek kodu yüklenir; ama "eğer value < 50" bloğunu okuyan öğrenci, koddaki if (value < 50) satırını bulmakta zorlanmaz.
  • Adım kartları: Devreyi ve görevi 5–6 karta böl, her karta tek bir adım yaz: "Kırmızı LED'in uzun bacağını D2 hattına tak", "330 Ω direnci LED'in kısa bacağıyla GND hattı arasına koy". Öğrenci kartı bitirince ters çevirir. Kartlar ilerlemeyi görünür kılar ve "ne yapacağım?" sorusunu azaltır.
  • Birlikte yapalım modu: Uygulamadaki Birlikte yapalım modu projeyi dört adıma böler: Parçaları hazırla, Devreyi kur, Kodu yükle, Çalıştır ve test et. Bu modda ekran açık kalır, öğrenci kaldığı adımdan devam edebilir. Telefonu masaya bırakan temel kat ikilisi için hazır bir adım kartı destesi gibidir. Modun ayrıntıları ilk Arduino projesi yazısında.
  • Kısa hedefler: 40 dakikayı üç küçük hedefe böl ve tahtaya yaz: "1. LED'ler sırayla yanıyor", "2. Sarının süresini değiştirdim", "3. Yaptığım değişikliği bir cümleyle anlattım". Her hedefin yanına bir işaret koyan öğrenci, dersin sonunda neyi başardığını görür.
  • Takıldıysan bölümü: Kodu anla sekmesinin Takıldıysan bölümü sık karşılaşılan belirtileri ve çözümlerini listeler. Temel kattaki öğrenciye önce oraya bakmasını, sonra arkadaşına, en son sana gelmesini öğretmek, kendi başına sorun çözmenin ilk adımıdır.
Ldr İle Gece Lambası projesinin Türkçe blokları: value değişkenine A0'dan analog okuma, eğer value < 50 karşılaştırması ve 13 numaralı pine YÜKSEK ya da DÜŞÜK yazan yap/değilse blokları
Temel kat için Bloklarla göster: öğrenci eşik değerini bloklarda bulur, aynı sayıyı kodda değiştirir ve LDR'yi kapatarak sonucu dener.

Temel kattaki bir ikili için başarılı bir ders şöyle görünür: Ldr İle Gece Lambası projesinde devre hazır gelir, öğrenciler blokları okuyup "değer 50'den küçükse LED yanar" cümlesini kendi sözleriyle söyler, eşik değerini 300 yapıp yükler, LDR'yi elleriyle kapatarak LED'in daha erken yandığını görür ve çıkış sorusunda "eşik büyüdükçe LED daha az karanlıkta yanar" diye yazar. Bu, ileri kattaki histerezis görevinden daha az kod demektir ama aynı fikre, yani programın bir ölçümü bir sayıyla karşılaştırıp karar verdiğine ulaşmıştır. Bir sonraki LDR dersinde aynı ikili Serial Monitor'de değeri okuyup eşiği kendi seçebilir; böylece gelişen kata kendiliğinden geçer.

Değerlendirmede adalet: herkes kendi katından ölçülür

Farklılaştırılmış bir derste herkese aynı ölçüte göre not vermek iki yönden adaletsizdir: temel kattaki öğrenci hiçbir zaman millis() yazamadığı için düşük not alır, ileri kattaki öğrenci de hiç zorlanmadan en yüksek notu alır. Çözüm, değerlendirmeyi ikiye ayırmaktır. Birinci kısım her katta aynı olan süreç ölçütleridir: tahmin edip test etmek, yaptığını açıklamak, hatayı bulmak. İkinci kısım öğrencinin kendi katının hedefine ulaşıp ulaşmadığı ve ilk tanılamadan bu yana ne kadar ilerlediğidir. Aşağıdaki tablo, aynı ölçütün her katta "hedefe ulaştı" düzeyinde neye benzediğini gösteriyor. Ayrıntılı ölçütler, teslim formu ve portfolyo için Arduino dersi değerlendirme rubriği yazısına bakabilirsin.

ÖlçütTemel kat: hedefe ulaştıGelişen kat: hedefe ulaştıİleri kat: hedefe ulaştı
DevreHazır ya da yarım devreyi şemayla karşılaştırıp doğru olduğunu söylerEklediği butonu ya da LED'i şemaya bakarak doğru pine bağlarYeni parçanın pinini kendisi seçer ve pin tablosunu yazar
Kod değişikliğiTek bir değeri değiştirip yüklerYeni bir koşul ya da çıkış ekler, derleme hatasını kendisi düzeltirProgramın yapısını değiştirir (millis(), dizi, fonksiyon)
Tahmin ve testDeğişiklikten önce sonucu tahmin edip yazarBirden fazla durumu dener (ör. butona farklı fazlarda basmak)Programın sınır durumlarını arar ve test planı yazar
AçıklamaDeğiştirdiği satırın ne yaptığını bir cümleyle söylerEklediği kısmın nasıl çalıştığını bir arkadaşına anlatırNeden bu yapıyı seçtiğini ve delay() sürümünden farkını açıklar
Hata ayıklamaTakıldıysan bölümüne bakıp bir sorunu çözerSerial Monitor ya da LED ile hatanın yerini bulurBaşka bir ikilinin hatasını onun yerine yapmadan bulmasına yardım eder

Not hesabı için bir örnek: 100 puanın 40'ını her katta aynı olan süreç ölçütlerine (tahmin, açıklama, hata ayıklama), 40'ını öğrencinin kendi katındaki hedefe, 20'sini de ilerlemeye ver. İlerleme puanı, öğrencinin dönem içinde bir üst kata geçip geçmediğine ve tanılamadaki zayıf kolunu (devre, kod okuma ya da hata ayıklama) ne kadar geliştirdiğine bakar. Diyelim ki tanılamada 2 puan alan bir öğrenci dönemin yarısında gelişen kat kartlarını çekmeye başladı: ilerlemeden tam puan alır. Tanılamada 8 alan ve dönem boyunca hiç zorlanmadan ileri kat görevlerini bitiren öğrenci ise ilerleme puanını ancak yeni bir alan denediğinde, örneğin mentorlukta ya da kendi projesini tasarlamakta kazanır. Dönem sonunda herkesin en az bütün projelerin temel katını kendi başına yapabilmesi ortak taban olsun; böylece kat, notun tavanı ya da tabanı olmaz.

40 dakikalık farklılaştırılmış ders akışı: Trafik Lambası

Aşağıdaki akış Trafik Lambası projesiyle, tanılamadan sonraki ilk ders için hazırlandı. Diyelim ki tanılamadan sonra 12 ikiliden 5'i temel, 4'ü gelişen, 3'ü ileri kat kartı aldı. Projeyi okurken iki ikili bir masada karma oturur (bir temel ve bir gelişen ya da ileri ikili), kurulum ve kat görevlerinde her ikili kendi setine döner. Dersin başı ve sonu herkes için ortak, ortası üç kata ayrılıyor.

DakikaHerkesTemel katGelişen katİleri kat
0–4Isınma sorusu: Kavşakta sarı ışık neden bu kadar kısa yanıyor? Kat kartları zarfla dağıtılır———
4–10Proje projeksiyonda; Bloklarla göster açık. İki ikili bir masada karma oturur, bloklar ve pin tablosu (D2 kırmızı, D3 sarı, D4 yeşil) birlikte okunur———
10–20Her ikili kendi setinde devreyi kurar; kabloyu ikilinin daha az deneyimli üyesi tutarHazır devreyi şemayla karşılaştırır, kodu yüklerDevreyi şemadan kurar, kodu yüklerDevreyi şemaya bakmadan kurar, kodu yükler, sonra şemayla kontrol eder
20–32Kat görevleri (eşli programlama, 26. dakikada rol değişimi)Kendin dene: sarı 1,5 sn; sonra kırmızı 5 sn. Her değişiklikten önce tahmin yazılırYaya butonu D7, INPUT_PULLUP; basılmışsa kırmızı 6 snmillis() ile bloklamayan sürüm; 28. dakikadan sonra uzman masası
32–36Paylaşım: her kattan bir ikili 1 dakikada ne değiştirdiğini gösterirTahmini ile sonucunu karşılaştırırButona sarıda basınca ne olduğunu gösterirdelay() ve millis() sürümlerinde butonun farkını gösterir
36–40Çıkış sorusu ve toplamaKendi katının çıkış sorusuKendi katının çıkış sorusuKendi katının çıkış sorusu

Çıkış soruları her kat için tek bir cümlelik cevap ister ve bir sonraki dersin kat dağılımını belirler. Temel: "Kodda delay(2000) satırını delay(5000) yaparsan hangi ışık kaç saniye yanar?" Gelişen: "Butona tam sarı yanarken basarsan programın ne yapar, neden?" İleri: "delay() kullanan sürümde butona basmak neden bazen işe yaramıyor?" Doğru cevap veren temel kat öğrencisi bir sonraki derste gelişen kartı denemeye davet edilir; ileri kattaki cevap belirsizse aynı öğrenci bir ders daha ileri kartta kalır.

  • Tanılama kağıtları puanlandı, her öğrencinin başlangıç katı not edildi.
  • Projenin üç kat kartı basıldı ve masaların ortasına konacak kadar çoğaltıldı.
  • Temel kat için hazır ya da yarım devreler ve adım kartları hazır.
  • Gelişen ve ileri kat için ek malzeme (buton, LED, 330 Ω, pasif buzzer) ikili başına ayrıldı.
  • Okuma aşaması için karma masa eşleşmeleri yazıldı; uzman masası için 2–3 ileri öğrenci belirlendi.
  • Uzatma menüsü tahtanın köşesine yazıldı, kısa hedefler tahtada.
  • Çıkış soruları üç kat için ayrı kağıtlarda hazır; bir sonraki dersin kat dağılımı bu kağıtlara göre güncellenecek.

Karma seviyeli bir sınıf, iyi kurulduğunda bir sorun değil, bir kaynak olur: ileri kattaki öğrenci anlatarak derinleşir, temel kattaki öğrenci aynı projeyi konuşarak sınıfın içinde kalır. Bir sonraki dersini planlarken tablodaki dört projeden biriyle başlayabilirsin; hepsinin devre şeması, kodu, blokları ve Kodu anla bölümü BlueGrays uygulamasında ücretsiz olarak seni bekliyor, kat kartlarını da doğrudan oradaki Kendin dene görevlerinden çıkarabilirsin.

Sıkça sorulan sorular

Arduino dersinde farklılaştırma nasıl yapılır?

Bütün sınıf aynı projeyi yapar, ama görevler üç kata ayrılır: temel kat bir değeri değiştirir, gelişen kat yeni bir davranış ekler, ileri kat programın yapısını değiştirir. Öğrencinin hangi kattan başlayacağını kısa bir seviye tespitiyle belirler, katı her derste yeniden gözden geçirirsin.

Karma seviyeli sınıfta öğrenciler nasıl gruplandırılır?

Tek bir yöntem yerine esnek gruplama kullan: tanıtım ve devre kurulumunda karma ikililer, kat görevlerinde aynı seviyedeki ikililer, ders sonunda uzman masası. Kod yazma görevlerinde eşli programlama ve 10 dakikada bir rol değişimi iyi sonuç verir.

Arduino'da hızlı bitiren öğrenciye ne yaptırılır?

Aynı işten daha fazlasını değil, daha derinini ver: Kendin dene görevini ipucusuz çözmek, millis() ya da dizilerle programı yeniden yazmak, iki projeyi birleştiren kendi projesini tasarlamak ya da uzman masasında mentorluk yapmak. Premium projelere geçmek için öğrenciye bir eğitmen kodu verebilirsin.

Hiç kod bilmeyen öğrenci Arduino dersine nasıl katılır?

Devreyi hazır ver, blokları okut ve tek bir değeri değiştirmesini iste. Bloklarla göster ve Blokları anla aynı programı adım adım gösterir, Birlikte yapalım modu projeyi dört adıma böler. İkinci ve üçüncü derste iskeleyi azaltıp devreyi kendisinin kurmasını sağlarsın.

Arduino dersinde seviye tespiti nasıl yapılır?

İlk derste 10 dakikalık kağıt üzerinde bir tespit yeterlidir: bir kavram sorusu, bir kod okuma sorusu, bir deneyim beyanı ve hatalı bir devre çiziminde hata bulma. Her madde 0–2 puan alır; 0–3 temel, 4–6 gelişen, 7–8 ileri kattan başlar. BlueGrays'teki 15 soruluk Seviye testi de destek olarak kullanılabilir.

Farklılaştırılmış derste not nasıl verilir?

Notu ikiye ayır: her katta aynı olan süreç ölçütleri (tahmin, açıklama, hata ayıklama) ve öğrencinin kendi katındaki hedefle ilerlemesi. Örneğin 40 puan süreç, 40 puan kat hedefi, 20 puan ilerleme. Böylece temel kattaki öğrenci cezalandırılmaz, ileri kattaki öğrenci de çaba göstermeden tam puan almaz.

Tüm projeleri gör
Trafik Lambası
#3Başlangıç

Trafik Lambası

Her gün yolda gördüğün trafik ışığının minik bir kopyası. Kırmızı iki saniye yanar, sarı kısa bir an parlar, yeşil iki saniye yanar, ardından yine sarı üzerinden kırmızıya dönülür ve döngü hiç durmaz.

4.8(131)
397
Buton İle Led Yakma (On Off)
#10Başlangıç

Buton İle Led Yakma (On Off)

Bir butona bir kez basınca ışık yanar, bir daha basınca söner; tıpkı odandaki lamba düğmesi gibi. Arduino her basışı fark edip LED'in durumunu tersine çevirir, düğme içindeki minik titreşimler ışığı k

4.8(100)
167
Ldr İle Gece Lambası
#12Başlangıç

Ldr İle Gece Lambası

Hava karardığında kendiliğinden yanan, sabah olunca sönen küçük bir gece lambası. Işık sensörü odadaki aydınlığı ölçer; Arduino ortam yeterince karanlıksa LED'i yakar, aydınlanınca söndürür. Sokak lam

4.8(102)
205
Buzzer Kullanımı
#13Başlangıç

Buzzer Kullanımı

Kapı zili ya da alarm sesi nasıl çıkar, hiç merak ettin mi? Arduino küçük bir buzzer'ı kısa aralıklarla öttürür: bip, sus, bip, sus. Sesin elektrikle nasıl üretildiğini görür, ileride melodi çalan pro

4.7(89)
161
Ldr İle Işık Şiddeti Okuma
#11Başlangıç

Ldr İle Işık Şiddeti Okuma

Odanın ne kadar aydınlık olduğunu sayıyla görmek ister misin? Işığa duyarlı küçük bir parça olan LDR ortam ışığını ölçer ve Arduino bu değeri yarım saniyede bir bilgisayar ekranına yazar. Elinle üstün

4.6(81)
139
Buton İle Led Yakma (Push)
#9Başlangıç

Buton İle Led Yakma (Push)

Kapı zili gibi: bastığın sürece ışık yanar, bırakınca söner. Arduino butonu sürekli dinler; butona basılıyken LED'i yakar, elini çektiğin an söndürür. Kartın dışarıdan gelen bir dokunuşu nasıl hissett

4.8(113)
229
Yürüyen Led
#5Orta

Yürüyen Led

Sıra sıra yanıp sönen, koşar gibi ilerleyen ışıklar. Arduino altı LED'i tek tek yakar; her biri kısa bir an parlayıp söner ve ışık baştan sona yürür, sonra yeniden başlar. Birden çok ışığı tek bir düz

4.6(85)
207
HC-SR04 Mesafe Ölçme (Serial Ekran)
#27Başlangıç

HC-SR04 Mesafe Ölçme (Serial Ekran)

Yarasalar karanlıkta yollarını nasıl buluyorsa HC-SR04 sensörü de öyle çalışır: duyamadığın bir ses gönderir, yankısını dinler ve önündeki cismin ne kadar uzakta olduğunu ölçer. Arduino bu mesafeyi sa

4.6(46)
71