Arduino

Arduino ile Dijital Mesafe Ölçer Projesi

Aykut AKMAN 10 ay önce Yorumlar (0) 4 Dakika Okuma
Arduino ile Dijital Mesafe Ölçer Projesi
E-Posta : 1.9k 1

Bu projede ultrasonik sensör ve LCD ekran kullanarak bir mesafe ölçüm cihazı oluşturacağız. Proje, mesafeyi ölçerek hem LCD ekranda hem de seri monitörde gösterecek.

Gerekli Malzemeler

  • Arduino Uno (veya başka bir model)
  • HC-SR04 Ultrasonik Sensör
  • I2C destekli 16x2 LCD Ekran
  • Bağlantı Kabloları
  • Breadboard

Devre Bağlantıları

arduino-dijital-mesafe-ölçer-devre-şeması

Ultrasonik Sensör Bağlantısı

  • Trig Pin: Arduino'nun 9 numaralı pinine bağlanır.
  • Echo Pin: Arduino'nun 10 numaralı pinine bağlanır.
  • VCC: Arduino'nun 5V çıkışına bağlanır.
  • GND: Arduino'nun GND pinine bağlanır.

LCD Ekran Bağlantısı

  • VCC ve GND: Arduino'nun 5V ve GND pinlerine bağlanır.
  • SDA: Arduino'nun A4 pinine bağlanır.
  • SCL: Arduino'nun A5 pinine bağlanır.

Not: Arduino Uno Klon modelinde kart üzerindeki SDA ve SCL girişleri kullanılabilir.

Arduino Kodu

Aşağıdaki kod, ultrasonik sensörden mesafeyi ölçer ve hem LCD ekrana hem de seri monitöre yazar.

#include 
#include 

// LCD ekran tanımlama
LiquidCrystal_I2C lcd(0x27, 16, 2);

// Ultrasonik sensör pinleri
const int trigPin = 9;
const int echoPin = 10;

void setup() {
  // Pin modlarını ayarlama
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);

  // LCD ekran başlatma
  lcd.init();
  lcd.backlight();
  lcd.print("Mesafe: ");

  // Seri iletişim başlatma
  Serial.begin(9600);
}

void loop() {
  // Ultrasonik sensörden mesafe ölçümü
  digitalWrite(trigPin, LOW);
  delayMicroseconds(2);
  digitalWrite(trigPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(trigPin, LOW);

  long duration = pulseIn(echoPin, HIGH);
  float distance = (duration * 0.034) / 2.0; // Mesafeyi cm olarak hesapla

  // LCD ekrana mesafeyi yazdır
  lcd.setCursor(0, 1);
  lcd.print("Mesafe: ");
  lcd.print(distance, 1); // 1 ondalık basamak göster
  lcd.print(" cm   ");

  // Seri monitöre mesafeyi yazdır
  Serial.print("Mesafe: ");
  Serial.print(distance, 1); // 1 ondalık basamak göster
  Serial.println(" cm");

  delay(1000);
}

Kod Açıklamaları

Pin Tanımları

  • trigPin: Sensörün tetikleme pini.
  • echoPin: Sensörün yankı pini.

LCD Ekran Tanımı

  • LiquidCrystal_I2C lcd(0x27, 16, 2);: I2C adresi 0x27 olan 16x2 LCD ekranı tanımlar.

Mesafe Ölçümü

  • pulseIn(): Echo pininden gelen yüksek sinyal süresini ölçer.
  • (duration * 0.034) / 2.0: Mesafeyi cm olarak hesaplar.

Ekran ve Seri Monitör

  • LCD ve seri monitöre ölçülen mesafeyi yazdırır.

Proje Çalışma Prensibi

Projenin çalışan örneğini görmek için tıklayınız.

Ultrasonik Sensör

  • Sensör, ses dalgaları gönderir ve geri dönen yankıyı algılar.
  • Yankının sensöre dönmesi için geçen süre ölçülür ve mesafe hesaplanır.

LCD ve Seri Monitör

  • Ölçülen mesafe LCD ekran ve seri monitöre yazdırılır.
  • LCD ekran 16x2 olduğundan, mesafe birimi ile birlikte yazdırılır.

Uygulama Alanları

  • Mesafe ölçüm cihazları.
  • Engel algılama sistemleri.
  • Robotik projelerde mesafe sensörü kullanımı.

Bu proje ile ultrasonik sensörün nasıl çalıştığını ve LCD ekranla entegrasyonunu öğrenebilirsiniz. Tinkercad simülasyonunda da rahatlıkla test edilebilir.

Sıkça Sorulan Sorular

Ultrasonik sensörler, nesnelerin mesafesini ölçmek için ses dalgalarını kullanır. Arduino ile bağlantı yapılarak ses dalgalarının yansıma süresi hesaplanır ve mesafe cm veya inç olarak bulunur.

Gerekli malzemeler:

  • Arduino Uno (veya benzeri)
  • HC-SR04 ultrasonik sensör
  • I2C destekli LCD ekran
  • Bağlantı kabloları
  • Breadboard (isteğe bağlı)

Sensör, "trig" pini ile ses dalgalarını gönderir ve "echo" pini ile geri dönüş süresini ölçer. Arduino, bu süreyi mesafeye dönüştürerek cm veya inç cinsinden sonuç verir.

Hassas ölçüm için sensörün düzgün bir şekilde hizalanması, çevresel parazitlerden arındırılmış bir ortamda çalıştırılması ve ölçüm sonuçlarının ondalıklı şekilde gösterilmesi önerilir.

Arduino ile LCD ekran kullanmak için LiquidCrystal_I2C kütüphanesi kullanılır. Mesafe ölçümü sonucu LCD'ye şu şekilde yazdırılabilir:

lcd.setCursor(0, 1);
lcd.print("Mesafe: ");
lcd.print(distance, 1);
lcd.print(" cm");

En yaygın sorunlar:

  • Sensörün doğru hizalanmaması
  • Elektriksel gürültü veya parazitler
  • Kodda yanlış mesafe hesaplama formülü kullanımı
  • LCD ekranın doğru adresle tanımlanmaması (örn. 0x27 yerine 0x3F)

Hassasiyet artırmak için:

  • Sensörü sabit ve düzgün bir yüzeye yerleştirin.
  • Kodda ölçüm verilerini filtreleyerek ortalama değer alın.
  • Sensörün çevresel parazitlerden korunmasını sağlayın.

Evet, Tinkercad üzerinde ultrasonik sensör ve LCD ekran kullanılarak mesafe ölçüm cihazı simüle edilebilir. Ancak sensör ve ekran adreslerinin doğru tanımlandığından emin olun.

Ultrasonik sensör ile şu projeler yapılabilir:

  • Park sensörü
  • Mesafe ölçüm cihazı
  • Robotik engel algılama sistemi
  • Akıllı depo izleme

Yanlış ölçümler genellikle şu nedenlerden kaynaklanır:

  • Yanlış hizalama veya sensörün eğik yerleştirilmesi
  • Çevredeki ses dalgalarının geri dönüşünü etkileyen parazitler
  • Kodda yanlış dönüşüm faktörleri kullanılması
Aykut AKMAN

Aykut AKMAN

Bilişim Öğretmeni

Bu Gönderiye Yorum Yapılmamış

Yorum Yap

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlendi.

Diğer Yazılar

PHP Form İşlemleri ve Veri Doğrulama Php

PHP Form İşlemleri ve Veri Doğrulama

Aykut AKMAN 1 yıl önce