Raspberry Pi ile HC-SR04'ü kullanmak

Using the HC-SR04 With the Raspberry Pi

HC-SR04 ultrasonik sensör, çeşitli DIY ve profesyonel projelerde mesafeyi ölçmek için popüler, uygun maliyetli bir araçtır. Bir Raspberry Pi ile eşleştirildiğinde, engel algılama, seviye ölçümü ve hatta etkileşimli kurulumlar gibi uygulamalar oluşturmak için bir olasılık dünyası açar. Bu blog yazısı, HC-SR04 sensörünü Raspberry Pi'nizle kurma ve kullanma sürecinde size rehberlik edecektir.

HC-SR04 ultrasonik sensörü nedir?

HC-SR04, ultrasonik dalgalar yayarak ve yankının geri dönmesi için gereken süreyi hesaplayarak mesafeyi ölçen ultrasonik bir sensör modülüdür. 5V'de çalışır ve kısa ila orta menzilli mesafe ölçümlerinde, tipik olarak 2 cm ile 400 cm arasında doğruluğu ve güvenilirliği ile bilinir.

İhtiyacınız olacak bileşenler

  • Raspberry Pi (Raspberry Pi 4 gibi GPIO pimleri olan herhangi bir model)
  • HC-SR04 ultrasonik sensör
  • Jumper telleri
  • Breadboard
  • 10kΩ direnç (voltaj bölümü için)
  • İsteğe bağlı: görsel geri bildirim için LED ve direnç

HC-SR04'ü Raspberry Pi'ye bağlama

HC-SR04'ü Raspberry Pi'ye bağlamak, özellikle Raspberry Pi GPIO pimleri 3.3V'de çalıştığı ve HC-SR04 5V'de çalıştığı için dikkatli bir şekilde kullanım gerektirir. PI'nize zarar vermeyi önlemek için, yankı piminde bir voltaj bölücü kullanmak önemlidir.

Pin bağlantıları

  • VCC HC-SR04 ila 5V Raspberry Pi'de Pin
  • Gnd HC-SR04 ila Gnd Raspberry Pi'de
  • Trig HC-SR04 PIN Gpio pimi Raspberry Pi'de (ör. GPIO23)
  • Yankı Bir voltaj bölücüsü aracılığıyla HC-SR04'ün Raspberry Pi'ye pimi

Voltaj bölücüsünün ayarlanması

Yankı pimini Raspberry Pi'ye güvenli bir şekilde bağlamak için, 10KΩ direnç ve 20kΩ dirençli bir voltaj bölücü kullanın. Bu, 5V sinyalini yaklaşık 3.3V'ye indirecektir.


# Example schematic for voltage divider
# HC-SR04 Echo pin ---- 10kΩ ----> Raspberry Pi GPIO (Echo)
#                             |
#                           20kΩ
#                             |
#                           GND

Gerekli kütüphaneleri yükleme

Kodu yazmadan önce, Raspberry Pi'nizin güncel olduğundan ve gerekli kütüphanelerin yüklendiğinden emin olun.


sudo apt-get update
sudo apt-get upgrade
sudo apt-get install python3-rpi.gpio

Python betiğini yazmak

Aşağıda HC-SR04 sensörü ile arayüz sağlamak için basit bir Python komut dosyası bulunmaktadır. Bu komut dosyası bir tetik darbesi gönderir, yankıyı bekler ve yankının geri dönmesi için gereken süreye göre mesafeyi hesaplar.


import RPi.GPIO as GPIO
import time

# GPIO Mode (BOARD / BCM)
GPIO.setmode(GPIO.BCM)

# Set GPIO Pins
TRIG = 23
ECHO = 24

print("Distance Measurement In Progress")

# Set GPIO direction (IN / OUT)
GPIO.setup(TRIG, GPIO.OUT)
GPIO.setup(ECHO, GPIO.IN)

def distance():
    # Set TRIG to LOW
    GPIO.output(TRIG, False)
    time.sleep(2)

    # Send 10us pulse to TRIG
    GPIO.output(TRIG, True)
    time.sleep(0.00001)
    GPIO.output(TRIG, False)

    start_time = time.time()
    stop_time = time.time()

    # Save StartTime
    while GPIO.input(ECHO) == 0:
        start_time = time.time()

    # Save Time of Arrival
    while GPIO.input(ECHO) == 1:
        stop_time = time.time()

    # Time difference between start and arrival
    time_elapsed = stop_time - start_time
    # Multiply with speed of sound (34300 cm/s)
    # and divide by 2, because there and back
    distance = (time_elapsed * 34300) / 2

    return distance

if __name__ == '__main__':
    try:
        while True:
            dist = distance()
            print("Measured Distance = %.1f cm" % dist)
            time.sleep(1)
    except KeyboardInterrupt:
        print("Measurement stopped by User")
        GPIO.cleanup()

Senaryoyu Çalıştırma

Kablolamanızın doğru olduğundan emin olun ve ardından Python 3'ü kullanarak komut dosyasını çalıştırın:


python3 hc-sr04.py

Ölçülen mesafeyi konsola basılmış santimetre cinsinden görmelisiniz. Görsel geri bildirim için bir LED kullanıyorsanız, bir nesne belirli bir aralıktayken LED'i aydınlatmak için komut dosyasını değiştirebilirsiniz.

Projenizi Geliştirme

Temel mesafe ölçümlerini çalıştırdıktan sonra, ek özellikleri entegre etmeyi düşünün:

  • LED göstergeleri: Farklı mesafe aralıklarını belirtmek için LED'ler kullanın.
  • LCD Ekran: LCD ekranda mesafeyi gösterin.
  • Veri Günlüğü: Analiz için zaman içindeki mesafe ölçümlerini kaydedin.
  • Uyarı Sistemleri: Nesneler çok yakın olduğunda alarmları veya bildirimleri tetikleyin.

Ortak sorunların giderilmesi

Sensörler ve GPIO ile çalışmak bazen zor olabilir. İşte bazı yaygın sorunlar ve bunların nasıl ele alınacağı:

  • Yanlış Kablolama: Tüm bağlantıları, özellikle yankı pimindeki voltaj bölücüsünü iki kez kontrol edin.
  • Gürültülü Ölçümler: Kurulumunuzun sabit olduğundan emin olun ve gürültüyü filtrelemek için kapasitör eklemeyi düşünün.
  • GPIO Çatışmaları: Başka hiçbir komut dosyası veya hizmetin aynı GPIO pimlerini kullanmadığından emin olun.
  • İzinler: Komut dosyalarınızı uygun izinlerle çalıştırın sudo Gerekirse.

Çözüm

HC-SR04 ultrasonik sensör, Raspberry Pi ile birleştirildiğinde basit mesafe ölçümünden karmaşık otomasyon sistemlerine kadar çok sayıda uygulamaya hizmet edebilen çok yönlü ve güvenilir bir bileşendir. Bu kılavuzda özetlenen adımları izleyerek, Raspberry Pi'nizde HC-SR04 ile denemeye başlayabilmeniz ve denemeye başlayabilmeniz gerekir. Mutlu Tinkering!

Yorum bırak

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.