Arduino, elektronik projeler geliştirmek isteyenler için açık kaynaklı bir mikrodenetleyici platformudur. Gerek öğrenciler, gerekse profesyonel geliştiriciler tarafından sıkça tercih edilen Arduino, kolay kullanımı ve geniş topluluk desteği sayesinde donanım programlama dünyasına girişin en pratik yollarından biridir.
Arduino Nedir?
Arduino, Atmel tabanlı mikrodenetleyiciler kullanan bir geliştirme kartı ve bu kartları programlamaya yarayan yazılım ekosistemidir. En çok bilinen modelleri şunlardır:
-
Arduino Uno (en yaygın model)
-
Arduino Mega (çok sayıda pin isteyen projeler için)
-
Arduino Nano (kompakt boyutlu)
-
Arduino Leonardo (USB klavye/fare taklidi yapabilen)
Arduino kartları genellikle şu bileşenleri içerir:
-
Dijital giriş/çıkış pinleri
-
Analog giriş pinleri
-
USB bağlantı noktası
-
Güç girişleri (DC jack, Vin)
-
Mikrodenetleyici (ör: ATmega328P)
⚙️ Arduino Nasıl Çalışır?
Arduino kartı, bilgisayar üzerinden USB ile programlanır. Arduino IDE kullanılarak yazılan C++ tabanlı kodlar (Sketch), karta yüklenir. Bu kodlar, giriş pinlerinden gelen verileri işleyip çıkış pinleri aracılığıyla cihazları kontrol eder.
Örneğin:
-
Bir butona basıldığında LED yakma
-
Bir sensörden sıcaklık verisi okuma
-
Motor kontrolü
Gerekli Temel Araçlar
-
Arduino kartı (örn. Arduino Uno)
-
USB kablo
-
Arduino IDE (https://www.arduino.cc/en/software)
-
Breadboard (devre tahtası)
-
Direnç, LED, jumper kablo gibi temel elektronik elemanlar
Arduino ile Yapılabilecek Örnek Projeler
1. LED Yakıp Söndürme (Blink)
void setup() {
pinMode(13, OUTPUT);
}
void loop() {
digitalWrite(13, HIGH);
delay(1000);
digitalWrite(13, LOW);
delay(1000);
}
Bu kod, Arduino’nun üzerindeki dahili LED’i her saniye yanıp sönecek şekilde kontrol eder.
2. Sıcaklık Sensörü ile Termometre
-
Kullanılan sensör: LM35
int sensorPin = A0;
float voltage, temperature;
void loop() {
int reading = analogRead(sensorPin);
voltage = reading * 5.0 / 1024.0;
temperature = voltage * 100;
Serial.println(temperature);
delay(1000);
}
3. Servo Motor ile Açılı Kontrol
#include
Servo myservo;
void setup() {
myservo.attach(9);
}
void loop() {
for (int pos = 0; pos <= 180; pos += 1) {
myservo.write(pos);
delay(15);
}
}
4. Ultrasonik Sensör ile Mesafe Ölçme
-
HC-SR04 sensörü kullanılır
#define trigPin 9
#define echoPin 10
void setup() {
Serial.begin(9600);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
}
void loop() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
long duration = pulseIn(echoPin, HIGH);
int distance = duration * 0.034 / 2;
Serial.println(distance);
delay(500);
}
İleri Düzey Proje Örnekleri
Proje | Açıklama |
---|---|
Akıllı Ev Sistemi | Işık, sıcaklık ve hareket sensörleri ile ev otomasyonu |
Bluetooth ile Robot Kontrol | HC-05 modülü ile mobil uygulama üzerinden robotu kontrol etme |
IoT Hava Durumu İstasyonu | WiFi modülü ile internet üzerinden hava durumu çekme |
RFID Kart Okuyucu | RC522 ile kart tanıma ve kontrol |
Topluluk ve Kaynaklar
-
Resmi site: arduino.cc
-
Forumlar: Arduino Türkiye, Reddit, StackOverflow
-
Kitaplar: "Arduino ile Programlama", "Arduino 101", "30 Günde Arduino"
✅ Sonuç
Arduino, donanım dünyasına giriş için harika bir platformdur. Hem hobi projelerinde hem de profesyonel sistemlerde kullanılabilir. LED yakmaktan robot kontrolüne kadar geniş bir uygulama yelpazesi sunar. Geniş topluluk desteği, örnek kodlar ve açık kaynak doğası sayesinde öğrenmesi kolay, uygulaması güçlüdür.