Raspberry Pi ile GY-302'yi kullanmak

Using the GY-302 with the Raspberry Pi

GY-302, BH1750 sensörüne dayanan bir ışık yoğunluk sensörü modülüdür. Doğru lüks (ışık yoğunluğu) ölçümleri sağlar ve akıllı aydınlatma, hava durumu izleme ve fotoğrafçılık gibi uygulamalar için idealdir. Bu kılavuz, bir Raspberry Pi ile GY-302'nin nasıl kurulacağını ve kullanılacağını açıklar.


Ne İhtiyacınız Olacak

  1. Ahududu pi (GPIO destekli herhangi bir model, örneğin Pi 3, Pi 4)
  2. GY-302 Işık Sensörü Modülü
  3. Breadboard ve jumper telleri
  4. Raspberry Pi'ye veya bağlı bir klavyeye ve monitöre SSH erişimi olan bir bilgisayar
  5. Raspberry Pi'ye Python kuruldu

Adım 1: GY-302'yi Raspberry Pi'ye bağlama

GY-302, I2C protokolünü kullanarak Raspberry Pi ile iletişim kurar.

Bağlantılar (I2C modu)

GY-302 PIN Raspberry Pi Pimi
VCC 3.3V (pim 1)
Gnd Zemin (pim 6)
SDA SDA (pim 3, GPIO2)
Scl SCL (Pin 5, GPIO3)

2. Adım: Raspberry Pi'deki I2C arayüzünü etkinleştirin

  1. Raspberry Pi yapılandırma aracını açın:
    sudo raspi-config
    
  2. Gezmek Arayüz Seçenekleri> I2C ve etkinleştir.
  3. Raspberry Pi'yi yeniden başlatın:
    sudo reboot
    

3. Adım: Gerekli kütüphaneleri kurun

  1. Raspberry Pi'nizi güncelleyin:
    sudo apt update && sudo apt upgrade -y
    
  2. I2C araçlarını ve python kütüphanelerini yükleyin:
    sudo apt install -y i2c-tools python3-smbus python3-pip
    
  3. GY-302'nin I2C veri yolunda algılandığını doğrulayın:
    sudo i2cdetect -y 1
    
    Cihaz adresini görmelisiniz (tipik olarak 0x23) çıktıda.

4. Adım: GY-302'den Veri Okuma

Aşağıdaki Python komut dosyası, GY-302'den ışık yoğunluğu (Lux) verilerinin nasıl okunacağını gösterir.

Python kodu örneği

import smbus2
import time

# Define I2C address and commands
BH1750_ADDRESS = 0x23
CONTINUOUS_HIGH_RES_MODE = 0x10

# Initialize I2C bus
bus = smbus2.SMBus(1)

def read_light():
    data = bus.read_i2c_block_data(BH1750_ADDRESS, CONTINUOUS_HIGH_RES_MODE, 2)
    lux = (data[0] << 8) | data[1]
    return lux / 1.2

try:
    while True:
        light_level = read_light()
        print(f"Light Intensity: {light_level:.2f} lux")
        time.sleep(1)
except KeyboardInterrupt:
    print("Exiting...")

Adım 5: GY-302 uygulamaları

  1. Akıllı Aydınlatma: Aydınlatmayı ortam ışık seviyelerine göre ayarlayın.
  2. Hava Durumu İzleme: Hava istasyonlarının bir parçası olarak ışık yoğunluğunu ölçün.
  3. Fotoğraf: Kamera sistemlerinde pozlama kontrolü için kullanın.
  4. IoT Projeleri: Işık yoğunluk verilerini otomasyon sistemlerine entegre edin.

Sorun giderme

  1. Cihaz algılanmadı:

    • SDA ve SCL bağlantılarını doğrulayın.
    • I2C arayüzünün Raspberry Pi'de etkin olduğundan emin olun.
  2. Yanlış Okumalar:

    • Harici ışık kaynaklarından gelen parazit olup olmadığını kontrol edin.
    • Sensörün uygun şekilde bağlandığından ve yönlendirildiğinden emin olun.
  3. I2C hataları:

    • I2C otobüsünde çelişkili cihaz olmadığından emin olun.

Çözüm

GY-302 ışık sensörü modülü, bir Raspberry Pi kullanarak ışık yoğunluğunu ölçmek için basit ve etkili bir yol sağlar. Bu kılavuzu izleyerek, sensörü ayarlayabilir ve akıllı ev sistemlerinden IoT projelerine kadar çeşitli uygulamalara entegre edebilirsiniz. Tam potansiyelini keşfetmek için farklı senaryoları deneyin!

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.