Üç bölgeli park modeli
Mesafeyi yakın, orta ve uzak olarak üç ışıkla göster.
9+ yaş · 35 dakika ·
İnteraktif atölyede aç →Neler öğreneceğiz?
Mesafeyi yakın, orta ve uzak olarak üç ışıkla göster.
Ultrasonik darbenin gidiş-dönüş süresini ölçeriz. Yaklaşık us/58 dönüşümü santimetre verir. -1 yankı alınamadığını belirtir. Örnekler arasında en az 60 ms bekle; 2 cm altı ve eğimli/yumuşak yüzeyler güvenilmez olabilir. ECHO 5 V olduğundan bu bağlantı Uno içindir.
Her LED’in kendine ait seri direnci vardır. Kırmızı D8, sarı D7, yeşil D6 pinindedir.
Malzeme listesi
- 1 × Arduino Uno R3
- 1 × USB veri kablosu
- 1 × breadboard
- Yeterli sayıda jumper kablo
- 1 × HC-SR04 ultrasonik sensör
- Kırmızı, sarı ve yeşil LED
- 3 × 330 Ω direnç
Bağlantı tablosu
| Başlangıç | Bağlantı |
|---|---|
| HC-SR04 VCC | 5V |
| HC-SR04 GND | GND |
| HC-SR04 TRIG | D12 |
| HC-SR04 ECHO | D11 |
| D8 | 330 Ω → kırmızı LED anot |
| D7 | 330 Ω → sarı LED anot |
| D6 | 330 Ω → yeşil LED anot |
| Üç LED katodu | GND |
Adım adım yapalım
- Önce bağlantı görselini ve malzeme listesini oku. 6–8 yaş grubunda bir yetişkin devreyi kurarken çocuk komutları ve sonucu takip eder.
- USB ve harici beslemeyi çıkar. Breadboard güç raylarının bağlı/ayrık bölümlerini kontrol et.
- HC-SR04 VCC ucunu 5V noktasına bağla.
- HC-SR04 GND ucunu GND noktasına bağla.
- HC-SR04 TRIG ucunu D12 noktasına bağla.
- HC-SR04 ECHO ucunu D11 noktasına bağla.
- D8 ucunu 330 Ω → kırmızı LED anot noktasına bağla.
- D7 ucunu 330 Ω → sarı LED anot noktasına bağla.
- D6 ucunu 330 Ω → yeşil LED anot noktasına bağla.
- Üç LED katodu ucunu GND noktasına bağla.
- Bir yetişkinle güç, GND, parça yönü ve dirençleri bağlantı tablosuna göre tek tek kontrol et.
- Arduino IDE’de Arduino Uno kartını ve bağlı portu seç. Servo veya LCD kullanılan projelerde ilgili Servo/LiquidCrystal kütüphanesini kur.
- Aşağıdaki bağımsız kodu yeni eskize yapıştır ve karta yükle. Seri Monitör gerekiyorsa 9600 baud seç.
- Beklenen sonucu gözle, ardından yalnız bir değişkeni değiştirerek “Sıra sende” görevini yap.
Kod · Arduino C++
// Arduino Uno R3 — Üç bölgeli park modeli
long distanceCm(){digitalWrite(12,LOW);delayMicroseconds(2);digitalWrite(12,HIGH);delayMicroseconds(10);digitalWrite(12,LOW);unsigned long us=pulseIn(11,HIGH,25000UL);return us==0?-1:long(us/58UL);}
void lights(bool r,bool y,bool g){digitalWrite(8,r);digitalWrite(7,y);digitalWrite(6,g);}
void setup(){
Serial.begin(9600);
pinMode(12,OUTPUT); pinMode(11,INPUT);
pinMode(8,OUTPUT); pinMode(7,OUTPUT); pinMode(6,OUTPUT);
}
void loop(){
long d=distanceCm();lights(d>=0&&d<15,d>=15&&d<35,d>=35);delay(100);
}
Kod nasıl çalışır?
Mesafeyi yakın, orta ve uzak olarak üç ışıkla göster.
setup() bir kez çalışıp pin yönlerini ve haberleşmeyi hazırlar. loop() içindeki komutlar sürekli tekrarlanır. Ultrasonik darbenin gidiş-dönüş süresini ölçeriz. Yaklaşık us/58 dönüşümü santimetre verir. -1 yankı alınamadığını belirtir. Örnekler arasında en az 60 ms bekle; 2 cm altı ve eğimli/yumuşak yüzeyler güvenilmez olabilir. ECHO 5 V olduğundan bu bağlantı Uno içindir.
Her LED’in kendine ait seri direnci vardır. Kırmızı D8, sarı D7, yeşil D6 pinindedir.
Beklenen sonuç
Yakında kırmızı, ortada sarı, uzakta yeşil yanar; yankı yoksa hepsi söner.
Sıra sende
Bu eğitim modelinin gerçek araç güvenliği için yeterli olmadığını tartış.
Güvenli atölye
Yalnız düşük gerilimli eğitim devresi. Şebeke/priz bağlantısı yapma. Bağlantıları enerji kapalıyken ve bir yetişkinle kur. Motor/servo hareket alanını boş tut. Bu proje fiziksel devrede test edilmiş olarak işaretlenmemiştir.
Çalışmıyorsa kontrol et
- Kod yüklenmiyorsa kart, port ve USB veri kablosunu kontrol et.
- Gücü çıkarıp her bağlantıyı tablodaki satırla eşleştir; ortak GND olmadan sinyaller güvenilir olmayabilir.
- Beklenen sonuçla gerçek sonucu karşılaştır. Sensör eşikleri bulunduğun ortama göre ayar ister.
- LED yanmıyorsa seri direnci ve anot/katot yönünü kontrol et; LED içermeyen projede sensörün pin etiketlerini incele.