Arduino ile mBot Yapımı: Adım Adım Rehber
Günümüzde robotik, özellikle eğitim alanında büyük bir öneme sahip. Öğrencilere ve hobicilere robotik dünyasına adım atma imkanı sunan projeler, öğrenmeyi eğlenceli ve öğretici hale getiriyor. Arduino, robotik projelerde en yaygın kullanılan platformlardan biri olup, açık kaynaklı yapısı sayesinde oldukça esnektir. Bu yazımızda, Arduino ile mBot yapımını ele alacağız.
mBot Nedir?
mBot, genellikle eğitim amaçlı kullanılan, temel robotik hareketleri gerçekleştirebilen bir robottur. Özellikle çocuklar ve yeni başlayanlar için tasarlanmış olmasına rağmen, daha ileri seviyelerde robotik projeler için de geliştirme yapabilmek mümkündür. mBot, motorlar, sensörler ve Arduino ile entegre bir platform kullanılarak hareket ettirilebilen, programlanabilir bir robot kitidir. Bu robotlar, genellikle yol takip etme, engelden kaçma veya ışığa tepki verme gibi görevleri yerine getirebilir.
1. Gerekli Malzemeler
Arduino ile mBot yaparken ihtiyacınız olacak bazı temel malzemeler:
- Arduino UNO veya mBot Ana Kartı: Bu, robotun beynini oluşturan mikrodenetleyici kartıdır. mBot'unuza bir Arduino UNO kartı kullanarak, robotun temel işlevlerini programlayabilirsiniz.
- Motorlar (2 Adet): Robotu hareket ettirecek motorlar.
- Motor Sürücüsü (L298N): Motorları Arduino'ya bağlamak için motor sürücü kullanılır.
- Ultrasonik Sensör (HC-SR04): Engelleri tespit etmek için kullanılacak sensör.
- Şasi (Chassis): Robotun tüm bileşenlerinin yerleşeceği ana platform.
- Tekerlekler (2 Adet): Robotun hareket etmesini sağlayacak tekerlekler.
- Jumper Kabloları: Bağlantıları yapmak için.
- Akü veya Batarya: Robotu çalıştıracak güç kaynağı.
2. mBot'un Yapısı ve Bağlantı Diyagramı
mBot, genellikle bir şasi üzerine yerleştirilmiş motorlar ve sensörlerle birlikte gelir. Robotu oluştururken şunlara dikkat etmelisiniz:
-
Motorlar: Motorlar, robotun hareket etmesini sağlayacak temel bileşenlerdir. Bu motorlar, genellikle bir motor sürücü kartı kullanılarak Arduino'ya bağlanır.
-
Motor Sürücü (L298N): Motor sürücüsü, Arduino'nun motorlara yeterli gücü sağlamak için kullanılır. L298N motor sürücüsü, Arduino'nun dijital pinleri ile motorları kontrol eder.
-
Ultrasonik Sensör (HC-SR04): Bu sensör, robotun önündeki engelleri algılamak için kullanılır. Ultrasonik sensör, Arduino'ya bağlı olan trig ve echo pinleri aracılığıyla engelin mesafesini ölçer.
-
Batarya: Robotun çalışması için enerji kaynağına ihtiyaç duyulur. Genellikle bir 7.4V Li-ion batarya kullanılabilir.
3. Bağlantılar ve Kurulum
Robotunuzu kurarken dikkat etmeniz gereken temel bağlantılar:
-
Motorların Bağlantısı: Motorları L298N motor sürücüsüne bağlayın. Motor sürücüsünü Arduino'nun dijital pinlerine bağlayın.
-
Ultrasonik Sensör Bağlantısı: Ultrasonik sensörü Arduino'nun
Trig
veEcho
pinlerine bağlayın. -
Güç Kaynağı: Robotun enerji ihtiyacını karşılamak için bir batarya kullanın. Bataryayı, Arduino ve motor sürücüsüne bağlayın.
4. Arduino Kodu
Robotunuzu programlamak için Arduino IDE'sinde bir yazılım geliştireceğiz. Bu yazılım, robotun hareket etmesini, engellerden kaçmasını ve doğru yönde ilerlemesini sağlayacak. İşte temel bir mBot kodu:
#include <AFMotor.h>
#define trigPin 9
#define echoPin 10
AF_DCMotor motor1(1); // Motor 1 (sağ)
AF_DCMotor motor2(2); // Motor 2 (sol)
long duration;
int distance;
void setup() {
Serial.begin(9600);
pinMode(trigPin, OUTPUT);
pinMode(echoPin, INPUT);
}
void loop() {
// Ultrasonik sensör ile mesafe ölçümü
digitalWrite(trigPin, LOW);
delayMicroseconds(2);
digitalWrite(trigPin, HIGH);
delayMicroseconds(10);
digitalWrite(trigPin, LOW);
duration = pulseIn(echoPin, HIGH);
distance = duration * 0.034 / 2;
Serial.print("Mesafe: ");
Serial.println(distance);
// Eğer mesafe 10 cm'den küçükse, robot geri gitsin
if (distance < 10) {
motor1.setSpeed(255); // Motor hızını belirle
motor2.setSpeed(255);
motor1.run(BACKWARD); // Geri git
motor2.run(BACKWARD);
delay(1000);
} else {
// Eğer engel yoksa, robot ileri gitsin
motor1.setSpeed(255);
motor2.setSpeed(255);
motor1.run(FORWARD); // İleri git
motor2.run(FORWARD);
}
}
5. Kodu Açıklama
-
Motor Kontrolü:
AFMotor
kütüphanesi, motorları kontrol etmek için kullanılır. Her motor içinAF_DCMotor
nesnesi oluşturulur ve bu motorlarsetSpeed()
verun()
fonksiyonları ile kontrol edilir. -
Ultrasonik Sensör: Ultrasonik sensörün mesafeyi ölçmesini sağlayan kodda,
trigPin
pinine bir sinyal gönderilir veechoPin
pininde geri dönen sinyalin süresi ölçülür. Bu süre, engelin uzaklığını hesaplamak için kullanılır. -
Engel Algılama ve Tepki: Eğer robot bir engelle karşılaşırsa, mesafe 10 cm'nin altına düşerse, robot geri gitmeye başlar. Eğer engel yoksa, robot ileri hareket eder.
6. Test Etme ve Ayar
Arduino ile robotunuzu oluşturduktan sonra, yazılımı yükleyip robotu test etmeye başlayabilirsiniz. Eğer robot beklenmedik şekilde davranıyorsa, şu adımları kontrol edebilirsiniz:
-
Motor Bağlantılarını Kontrol Edin: Motorların doğru şekilde bağlandığından emin olun. Hangi motorun sağa, hangi motorun sola hareket ettiğini kontrol edin.
-
Sensör Verilerini Test Edin: Ultrasonik sensörün doğru şekilde çalışıp çalışmadığını test edin. Seri monitörde mesafe verilerini kontrol edebilirsiniz.
-
PID Kontrolü: Daha hassas hareketler için, motor hızlarını PID kontrol algoritması ile dengelemeyi deneyebilirsiniz.
7. Robotu Geliştirme
Bu temel robotu daha da geliştirebilirsiniz. İşte bazı öneriler:
- Daha İyi Engel Algılama: Ek sensörler ekleyerek, robotun çevresini daha iyi algılamasını sağlayabilirsiniz.
- Otomatik Görevler: Robotu belirli görevleri yerine getirecek şekilde programlayabilirsiniz, örneğin bir nesneyi alıp başka bir yere bırakma gibi.
- Uzaktan Kumanda: Robotunuzu bir Bluetooth modülü veya RF alıcı ile uzaktan kumanda ile kontrol edebilirsiniz.
Arduino ile mBot yapımı, robotik dünyasına adım atmak için harika bir başlangıçtır. Hem temel motor kontrolü, hem de sensör entegrasyonu hakkında bilgi sahibi olmanızı sağlar. Bu projeyi geliştirerek daha karmaşık robotlar yapabilir ve farklı görevler için özelleştirebilirsiniz. Robotik, pratik yaparak öğrenebileceğiniz eğlenceli bir alan ve mBot gibi projeler, bu yolda attığınız ilk adımlar için mükemmel fırsatlar sunuyor.
Hiç yorum yok:
Yorum Gönder