Evde kendi robotunu üretmek isteyenler için Arduino ile temizlik robotu yapımı hem öğretici hem de oldukça keyifli projelerden biridir. Hareket ederken zemindeki toz ve küçük kir parçacıklarını fan yardımıyla içine çeken, aynı zamanda engelleri algılayarak yön değiştirebilen akıllı bir temizlik robotu yapıyoruz.

Gelin, akıllı temizlik robotumuzun detaylarına ve nasıl çalıştığına yakından bakalım.
Projenin Amacı Nedir?
Projenin temel amacı, zeminde bulunan toz, kir ve küçük parçacıkları otomatik olarak toplayabilen otonom bir robot geliştirmektir. Sistem, hareket kabiliyeti sunmanın yanında, bu hareketi verimli bir temizlik mekanizmasıyla entegre ederek pratik bir çözüm sunar.
Kullanılan Malzemeler

Arduino ile temizlik robotu yapımı için karmaşık veya çok pahalı parçalara ihtiyacınız yok. Temel elektronik bileşenler ve biraz yaratıcılık (örneğin gövde için karton ve plastik şişe gibi geri dönüştürülebilir materyaller) yeterlidir. İşte kullanacağımız temel malzemeler:
- Arduino UNO R3 Klon USB Kablo Hediyeli – (USB Chip CH340)
- Mini 4 Kanal L293D Motor Sürücü Kartı
- 2 adet DC motor
- Fan veya küçük bir vakum motoru (Şişe veya silindir bir hazne ile birleştirilerek)
- Uygun bir şase (Karton veya 3D yazıcı ile basılmış bir plaka kullanabilirsiniz)
- SUPEX 18650 3.7V 2500 mAh Li-ion Şarjlı Pil – Kutup Başlı
- HC-SR04 – Ultrasonik Mesafe Sensörü
- MG90S Mikro Servo Motor – 360 Derece
- Metal Bilyeli Sarhoş Teker
- 6V 250 RPM Motor Uyumlu Tekerlek – Sarı Tekerlek
- Jumper kablo
Akıllı Temizlik Robotu Nasıl Çalışır?

Robotumuz, otonom olarak zeminde gezinirken eş zamanlı olarak vakumlama işlemi gerçekleştirir. Çalışma mantığı şu adımlardan oluşur:
- Robot, kodlanan algoritmaya göre ileri doğru hareket etmeye başlar.
- Alt kısma yerleştirilen fan veya vakum motoru sürekli çalışarak zemindeki toz ve kirleri kendi haznesine çeker.
- Üzerindeki ultrasonik sensör sayesinde önüne bir engel çıktığında (örneğin duvar veya masa bacağı) bunu algılar.
- Engeli algılayan robot durur, servo motor yardımıyla sağını ve solunu kontrol eder, boş olan yöne doğru dönerek temizliğe kesintisiz devam eder.
- Motorlar sayesinde sağa, sola ve geri manevralar yaparak alanın tamamını dolaşmaya çalışır.
Devre Şeması
Elektronik bağlantıların doğru yapılması, projenin güvenli çalışması açısından büyük önem arz eder. Motor sürücü kartı üzerinde bulunan giriş pinleri, Arduino’nun dijital pinlerine sırasıyla bağlanmalıdır. Sensörün tetikleme ve yankı pinleri ise mesafe verisinin doğru okunabilmesi için belirlenen portlara takılmalıdır. Paylaşılan görselde görülen bağlantı şeması, sistemin hatasız bir şekilde kurulması için rehberlik etmektedir.
Motor Sürücü (L298N) ve Sensör Pinleri
| Bileşen | Pin Adı | Arduino Pin |
| L298N | IN1 / IN2 | D8 / D9 |
| L298N | IN3 / IN4 | D10 / D11 |
| HC-SR04 | TRIG | D6 |
| HC-SR04 | ECHO | D7 |

Hareket ve Temizlik Mekanizması
Robotun hareket kabiliyeti diferansiyel sürüş sistemi ile sağlanır. Yani yönlendirme işlemi, sağ ve sol tekerleklerin hızları ve dönüş yönleri değiştirilerek yapılır:
- Düz gitme: Tüm tekerlek motorları aynı hızda ve ileri yönde çalışır.
- Sağa dönüş: Sol tekerlekler daha hızlı (veya sadece sol tekerlekler) döner.
- Sola dönüş: Sağ tekerlekler daha hızlı döner.
- Tank dönüşü (Kendi etrafında dönme): Sağ ve sol tekerlekler birbirine zıt yönlerde döner.
Temizlik mekanizmasının kalbi ise robotun altına veya ön kısmına yerleştirilmiş, sürekli çalışan fan motorudur. Fan motoru, basit bir pet şişe veya boru haznesi içine vakum etkisi yaratarak kirleri toplar.
Yazılım Yapısı ve Kodlama
Arduino ile temizlik robotu yapımı sürecinin beyni yazılımdır. Arduino IDE üzerinden yazılacak kodlar şu temel görevleri üstlenir:
- Sensörden gelen mesafe verilerini okumak ve işlemek.
- Mesafe belirli bir sınırın altına düştüğünde (örneğin 15 cm) kaçınma manevrası algoritmasını tetiklemek.
- Motor sürücü kalkanı (shield) üzerinden motor hızlarını (PWM ile) ve yönlerini ayarlamak.
- Temizlik (vakum) motoruna sürekli güç göndererek aktif tutmak.
Kodlar
#define trigPin 6
#define echoPin 7
#define IN1 8
#define IN2 9
#define IN3 10
#define IN4 11
long duration;
int distance;
void setup() {
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
pinMode(IN3, OUTPUT);
pinMode(IN4, OUTPUT);
Serial.begin(9600);
}
void loop() {
distance = mesafeOlc();
if (distance > 20) {
ileri();
} else {
dur();
delay(300);
geri();
delay(500);
sagaDon();
delay(400);
}
}
int mesafeOlc() {
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distance = duration * 0.034 / 2;
return distance;
}
void ileri() {
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);
}
void geri() {
digitalWrite(IN1, LOW);
digitalWrite(IN2, HIGH);
digitalWrite(IN3, LOW);
digitalWrite(IN4, HIGH);
}
void sagaDon() {
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, HIGH);
}
void dur() {
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, LOW);
}
Neden Bu Projeyi Yapmalısınız? (Avantajları)
- Bütçe Dostudur: Çok düşük maliyetli elektronik bileşenler ve geri dönüşüm malzemeleriyle üretilebilir.
- Geliştirilmeye Açıktır: Modüler yapısı sayesinde robota sonradan yeni özellikler eklemek çok kolaydır.
- Öğreticidir: Gömülü sistemler, motor kontrolü, sensör okuma ve temel robotik algoritmalar konusunda eşsiz bir pratik deneyim sunar.
- Faydalıdır: Sadece bir oyuncak değil, gerçek hayattaki bir probleme (temizlik) çözüm üreten bir sistemdir.
Projenizi Bir Üst Seviyeye Taşıyın: Geliştirme Önerileri
Temel robotunuzu başarıyla tamamladıktan sonra, onu gerçek bir “akıllı ev aletine” dönüştürmek için şu özellikleri ekleyebilirsiniz:
- Haritalama (Mapping): Daha gelişmiş sensörler (LIDAR gibi) kullanarak odanın haritasını çıkaran algoritmalar ekleyebilirsiniz.
- Bluetooth/Wi-Fi Kontrolü: Otonom modun yanı sıra, bir mobil uygulama geliştirerek robotu manuel olarak telefonunuzdan yönlendirebilirsiniz.
- Otomatik Şarj (Dock İstasyonu): Şarjı azaldığında kendi şarj istasyonunu bulup kenetlenebileceği bir sistem tasarlayabilirsiniz.
- Gelişmiş Emiş Gücü: Daha profesyonel pervaneler ve güçlü fırçasız (brushless) motorlar kullanarak gerçek bir elektrikli süpürge performansı yakalayabilirsiniz.
Haritalama, mobil uygulama kontrolü veya şarj istasyonu gibi geliştirme önerilerimizden en çok hangisini kendi robotunuza eklemek isterdiniz? Yoksa aklınızda yepyeni ve çok daha farklı bir özellik mi var? Fikirlerinizi, sorularınızı ve projeye katacağınız o özel dokunuşu yorumlarda bizimle paylaşın, projelerinizi hep birlikte tartışalım!







