İçindekiler:
2025 Yazar: John Day | [email protected]. Son düzenleme: 2025-01-13 06:58
STS21 Dijital Sıcaklık Sensörü, üstün performans ve yerden tasarruf sağlayan bir ayak izi sunar. Dijital, I2C formatında kalibre edilmiş, doğrusallaştırılmış sinyaller sağlar. Bu sensörün üretimi, STS21'in üstün performansına ve güvenilirliğine atfedilen CMOSens teknolojisine dayanmaktadır. STS21'in çözünürlüğü komutla değiştirilebilir, düşük pil algılanabilir ve bir sağlama toplamı iletişim güvenilirliğini artırmaya yardımcı olur.
Bu eğitimde, STS21 sensör modülünün parçacık fotonu ile ara yüzü gösterilmiştir. Sıcaklık değerlerini okumak için bir I2c adaptörü ile foton kullandık. Bu I2C adaptörü sensör modülüne bağlantıyı daha kolay ve daha güvenilir hale getiriyor.
Adım 1: Donanım Gerekli:
Hedefimizi gerçekleştirmek için ihtiyaç duyduğumuz malzemeler aşağıdaki donanım bileşenlerini içerir:
1. STS21
2. Parçacık Fotonu
3. I2C Kablosu
4. Parçacık fotonu için I2C kalkanı
Adım 2: 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:
STS21, I2C üzerinden ç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 3: Sıcaklık Ölçümü Kodu:
Şimdi parçacık koduyla başlayalım.
Arduino ile sensör modülünü 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
// STS21 I2C adresi 0x4A(74)
#define adres 0x4A
kayan cTemp = 0.0;
geçersiz kurulum()
{
// Değişken ayarla
Particle.variable("i2ccihaz", "STS21");
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 İletimini Başlat
Wire.beginTransmission(addr);
// master tutma yok seç
Wire.write(0xF3);
// I2C İletimini Sonlandır
Wire.endTransmission();
gecikme(500);
// 2 bayt veri iste
Wire.requestFrom(addr, 2);
// 2 bayt veri oku
if (Wire.available() == 2)
{
data[0] = Wire.read();
data[1] = Wire.read();
}
// Verileri dönüştür
int rawtmp = veri[0] * 256 + veri[1];
int değeri = rawtmp & 0xFFFC;
cTemp = -46.85 + (175.72 * (değer / 65536.0));
kayan nokta 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(1000);
}
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 4: Uygulamalar:
STS21 Dijital Sıcaklık Sensörü, yüksek doğrulukta sıcaklık izleme gerektiren sistemlerde kullanılabilir. Çeşitli bilgisayar ekipmanlarına, tıbbi ekipmanlara ve endüstriyel kontrol sistemlerine, sıcaklık ölçümü gerekliliği ile yetkin bir doğrulukla dahil edilebilir.