İçindekiler:

Raspberry Pi Kullanarak LCD'de DHT Verileri Nasıl Okunur: 6 Adım
Raspberry Pi Kullanarak LCD'de DHT Verileri Nasıl Okunur: 6 Adım

Video: Raspberry Pi Kullanarak LCD'de DHT Verileri Nasıl Okunur: 6 Adım

Video: Raspberry Pi Kullanarak LCD'de DHT Verileri Nasıl Okunur: 6 Adım
Video: Arduino Analog Okuma ve Seri Haberleşme #4 2024, Temmuz
Anonim
Raspberry Pi Kullanarak LCD'de DHT Verileri Nasıl Okunur
Raspberry Pi Kullanarak LCD'de DHT Verileri Nasıl Okunur

Sıcaklık ve bağıl nem önemlidir

ortamlardaki hava durumu verileri. İkisi, bir mini hava istasyonunun sunduğu veriler olabilir. Raspberry Pi ile sıcaklık ve Bağıl nemi okumak, farklı modüller ve eklentiler kullanılarak elde edilebilir. Bu eğitimde, sıcaklığı okumak için ortak bir Sensör DHT11 kullanacağız ve verileri 16 bitlik bir LCD ekranda görüntüleyeceğiz.

Adım 1: DHT Sensörü

DHT Sensörü
DHT Sensörü

DHT11 sensörü, aşağıdaki özelliklerle bağıl nemi ve sıcaklığı ölçebilir

Sıcaklık Aralığı: 0-50°C

Sıcaklık Doğruluğu: ±2 °C

Nem Aralığı: %20-90 Bağıl Nem

Nem Doğruluğu: ±5 %

Adım 2: Adafruit LCD Kitaplığını Raspberry Pi'ye Kurmak:

Adafruit LCD Kitaplığını Raspberry Pi'ye Kurmak
Adafruit LCD Kitaplığını Raspberry Pi'ye Kurmak

Raspberry pi'nizin kabuğu açıkken, ahududu pi'ye Adafruit LCD ekran kitaplığını kurmak için aşağıdaki talimatları izleyin. Sıcaklık ve nem değeri LCD ekranda görüntülenecektir.

Adım 1: Aşağıdaki satırı kullanarak git'i Raspberry Pi'nize yükleyin. Git, Github'daki herhangi bir proje dosyasını klonlamanıza ve Raspberry pi'nizde kullanmanıza izin verir. Kütüphanemiz Github'da, bu yüzden o kütüphaneyi pi'ye indirmek için git'i kurmamız gerekiyor.

apt-get kurulum git

Adım 2: Kitaplığın bulunduğu GitHub sayfasına aşağıdaki satır bağlantıları, proje dosyasını Pi ana dizininde klonlamak için satırı çalıştırmanız yeterlidir.

git klon git://github.com/adafruit/Adafruit_Python_CharLCD

Adım 3: Dizin satırını değiştirmek, az önce indirdiğimiz proje dosyasına girmek için aşağıdaki komutu kullanın. Komut satırı aşağıda verilmiştir

cd Adafruit_Python_CharLCD

Adım 4: Dizinin içinde setup.py adında bir dosya olacak, kütüphaneyi kurmak için onu kurmamız gerekiyor. Kütüphaneyi kurmak için aşağıdaki kodu kullanın

sudo python setup.py kurulumu

Adım 3: Adafruit DHT11 Kütüphanesini Raspberry Pi'ye Kurmak:

Adafruit tarafından sağlanan DHT11 kütüphanesi, DHT11, DHT22 ve diğer tek telli sıcaklık sensörleri için de kullanılabilir. DHT11 kitaplığını kurma prosedürü de LCD kitaplığını kurmak için izlenene benzer. Değişecek tek satır, DHT kitaplığının kaydedildiği GitHub sayfasının bağlantısıdır.

DHT kitaplığını kurmak için dört komut satırını tek tek terminalde girin

git klon

cd Adafruit_Python_DHT

sudo apt-get install build-essential python-dev

sudo python setup.py kurulumu

Adım 4: Devre Şeması

Devre şeması
Devre şeması
Devre şeması
Devre şeması

DHT11 Modülü 3 pin halinde gelir, Vcc'yi pi üzerindeki 5V'a bağlayın, topraklama pinini pi üzerindeki herhangi bir toprak pinine bağlayın ve veri pinini pi üzerindeki seçtiğiniz GPIO pinine bağlayın, bu eğitimde GPIO kullanıyoruz Pi üzerindeki 11 numaralı pin olan 17.

NOT: DHT11 Modül veya sensör tipinde gelir, aşağıdaki şemada gösterilen 4 pinli sensör tipidir, modül tipini sadece 3 ile kullanıyorsanız, veri pini ile Vcc arasına bir direnç bağlanır. pimler, dirence gerek yoktur.

Raspberry pi pinlerinin pin çıkışı için aşağıdaki şemaya bakın.

Adım 5:

resim
resim
resim
resim

Aşağıda bağlantının tam şeması bulunmaktadır. LCD, pi'de bulunan iki 5V'u kullanacağından, 5V'yi LCD ve DHT11 Modülü arasında paylaşmak için bir devre tahtası kullanabiliriz. LCD pinleri pi'ye aşağıdaki sırayla bağlanacaktır. LCD'nin 7, 8, 9 ve 10 numaralı pinlerinin kullanılmayacağını unutmayın.

6. Adım:

Verileri okumak ve LCD'de görüntülemek için tam kod aşağıda gösterilmiştir.

zamandan itibaren uykuyu içe aktar Adafruit_DHT'yi Adafruit_CharLCD'den içe aktar Adafruit_CharLCD sensor = Adafruit_DHT. DHT11 pin = 17 nem, sıcaklık = Adafruit_DHT.read_retry(sensör, pin) lcd = Adafruit_CharLCD(rs=26, en=19, d4=13, d5=6, d6=5, d7=11, cols=16, satır=2) #STATİK METİN GÖRÜNTÜLE lcd.clear() eğer nem Yok değilse ve sıcaklık Yok değilse: print('Temp={0:0.1f}*C Nem={1:0.1f}%'.format(sıcaklık, nem)) lcd.message('Sıcaklık={0:0.1f}*C \nNem={1:0.1f}%'.format(sıcaklık, nem))) else: print('Okuma başarısız oldu. Tekrar deneyin!') lcd.message('Okuma alınamadı. Tekrar deneyin!')

Önerilen: