İçindekiler:

SHT25 ve Parçacık Fotonu Kullanarak Sıcaklık ve Nem İzleme: 5 Adım
SHT25 ve Parçacık Fotonu Kullanarak Sıcaklık ve Nem İzleme: 5 Adım

Video: SHT25 ve Parçacık Fotonu Kullanarak Sıcaklık ve Nem İzleme: 5 Adım

Video: SHT25 ve Parçacık Fotonu Kullanarak Sıcaklık ve Nem İzleme: 5 Adım
Video: BeagleBone Black SHT25 I2C Humidity and Temperature Sensor 'C' Code Tutorial 2024, Temmuz
Anonim
Image
Image

Yakın zamanda sıcaklık ve nem izleme gerektiren çeşitli projeler üzerinde çalıştık ve daha sonra bu iki parametrenin bir sistemin çalışma verimliliğini tahmin etmede gerçekten çok önemli bir rol oynadığını fark ettik. Hem endüstriyel düzeyde hem de kişisel sistemlerde, sistemin yeterli performansı için optimum bir sıcaklık seviyesi şarttır.

Bu nedenle, bu eğitimde SHT25 nem ve sıcaklık sensörünün parçacık fotonu ile çalışmasını açıklayacağız.

Adım 1: SHT25'e Genel Bakış:

Neye ihtiyacın var..!!
Neye ihtiyacın var..!!

Her şeyden önce, sensörün ve üzerinde çalıştığı protokolün temel anlayışıyla başlayalım.

SHT25 I2C Nem ve Sıcaklık Sensörü ±1.8%RH ±0.2°C I2C Mini Modül. Dijital, I2C formatında kalibre edilmiş, doğrusallaştırılmış sensör sinyalleri sağlayan, form faktörü ve zeka açısından bir endüstri standardı haline gelen yüksek hassasiyetli nem ve sıcaklık sensörüdür. Özel bir analog ve dijital devre ile entegre edilen bu sensör, sıcaklık ve nemi ölçmek için en verimli cihazlardan biridir.

Sensörün üzerinde çalıştığı iletişim protokolü I2C'dir. I2C, inter-entegre devre anlamına gelir. Haberleşmenin SDA(seri data) ve SCL(seri saat) hatları üzerinden gerçekleştiği bir haberleşme protokolüdür. Aynı anda birden fazla cihazın bağlanmasına izin verir. En basit ve en verimli iletişim protokollerinden biridir.

Adım 2: İhtiyacınız Olan Şey..!

Neye ihtiyacın var..!!
Neye ihtiyacın var..!!
Neye ihtiyacın var..!!
Neye ihtiyacın var..!!
Neye ihtiyacın var..!!
Neye ihtiyacın var..!!

Hedefimizi gerçekleştirmek için ihtiyaç duyduğumuz malzemeler aşağıdaki donanım bileşenlerini içerir:

1. SHT25 nem ve sıcaklık sensörü

2. Parçacık Fotonu

3. I2C Kablosu

4. Parçacık fotonu için I2C Shield

Adım 3: Donanım Bağlantısı:

Donanım Bağlantısı
Donanım Bağlantısı
Donanım Bağlantısı
Donanım Bağlantısı

Donanım bağlantısı bölümü temel olarak sensör ve parçacık fotonu arasında gerekli olan kablo bağlantılarını açıklar. İstenilen çıktı için herhangi bir sistem üzerinde çalışırken doğru bağlantıların sağlanması temel zorunluluktur. Yani, gerekli bağlantılar aşağıdaki gibidir:

SHT25, I2C üzerinde çalışacaktır. Sensörün her bir arayüzünün nasıl bağlanacağını gösteren örnek kablo şeması buradadır.

Kutudan çıktığı gibi, kart bir I2C arayüzü için yapılandırılmıştır, bu nedenle, aksi takdirde agnostik iseniz bu bağlantıyı kullanmanızı öneririz. Tek ihtiyacınız olan dört tel!

Vcc, Gnd, SCL ve SDA pinlerinden sadece dört bağlantı gereklidir ve bunlar I2C kablosu yardımıyla bağlanır.

Bu bağlantılar yukarıdaki resimlerde gösterilmiştir.

Adım 4: Sıcaklık ve Nem İzleme Kodu:

Sıcaklık ve Nem İzleme Kodu
Sıcaklık ve Nem İzleme Kodu

Şimdi parçacık koduyla başlayalım.

Sensör modülünü arduino ile kullanırken application.h ve spark_wiring_i2c.h kütüphanesini dahil ediyoruz. "application.h" ve spark_wiring_i2c.h kitaplığı, sensör ve parçacık arasındaki i2c iletişimini kolaylaştıran işlevleri içerir.

Parçacık kodunun tamamı, kullanıcının rahatlığı için aşağıda verilmiştir:

#Dahil etmek

#Dahil etmek

// SHT25 I2C adresi 0x40(64)

#define Addr 0x40

şamandıra nemi = 0.0, cTemp = 0.0, fTemp = 0.0;

geçersiz kurulum()

{

// Değişken ayarla

Particle.variable("i2ccihaz", "SHT25");

Particle.variable("nem",nem);

Particle.variable("cTemp",cTemp);

// I2C iletişimini MASTER olarak başlat

Wire.begin();

// Seri iletişimi başlat, baud hızını ayarla = 9600

Seri.başla(9600);

gecikme(300);

}

boşluk döngüsü()

{

imzasız int veri[2];

// I2C iletişimini başlat

Wire.beginTransmission(Adr);

// Nem ölçüm komutu gönder, NO HOLD master

Wire.write(0xF5);

// I2C iletimini durdur

Wire.endTransmission();

gecikme(500);

// 2 bayt veri iste

Wire.requestFrom(Adr, 2);

// 2 bayt veri oku

// nem msb, nem lsb

if(Wire.available() == 2)

{

data[0] = Wire.read();

data[1] = Wire.read();

// Verileri dönüştür

nem = (((veri[0] * 256.0) + veri[1]) * 125.0) / 65536.0) - 6;

// Gösterge tablosuna veri çıkışı

Particle.publish("Bağıl Nem: ", String(nem));

}

// I2C iletimini başlat

Wire.beginTransmission(Adr);

// Sıcaklık ölçüm komutu gönder, NO HOLD master

Wire.write(0xF3);

// I2C iletimini durdur

Wire.endTransmission();

gecikme(500);

// 2 bayt veri iste

Wire.requestFrom(Adr, 2);

// 2 bayt veri oku

// temp msb, temp lsb

if(Wire.available() == 2)

{

data[0] = Wire.read();

data[1] = Wire.read();

// Verileri dönüştür

cTemp = ((((veri[0] * 256.0) + veri[1]) * 175.72) / 65536.0) - 46.85;

fTemp = (cTemp * 1.8) + 32;

// Gösterge tablosuna veri çıkışı

Particle.publish("Sıcaklık Santigrat Olarak: ", String(cTemp));

Particle.publish("Sıcaklık Fahrenhayt Olarak: ", String(fTemp));

}

gecikme(300);

}

Particle.variable() işlevi, sensörün çıktısını depolamak için değişkenleri oluşturur ve Particle.publish() işlevi, çıktıyı sitenin panosunda görüntüler.

Sensör çıkışı, referansınız için yukarıdaki resimde gösterilmektedir.

Adım 5: Uygulamalar:

Uygulamalar
Uygulamalar

SHT25 sıcaklık ve bağıl nem sensörü, sıcaklık izleme, bilgisayar çevresel termal koruma gibi çeşitli endüstriyel uygulamalara sahiptir. Bu sensörü ayrıca hava durumu istasyonu uygulamalarının yanı sıra sera izleme sisteminde de kullandık.

Önerilen: