Obsah:
2025 Autor: John Day | [email protected]. Naposledy změněno: 2025-01-13 06:57
Digitální teplotní senzor STS21 nabízí vynikající výkon a prostorově úspornou stopu. Poskytuje kalibrované linearizované signály v digitálním formátu I2C. Výroba tohoto senzoru je založena na technologii CMOSens, která se vyznačuje vynikajícím výkonem a spolehlivostí STS21. Rozlišení STS21 lze změnit příkazem, lze detekovat vybití baterie a kontrolní součet pomáhá zlepšit spolehlivost komunikace.
V tomto tutoriálu bylo ukázáno propojení senzorového modulu STS21 s fotonem částic. Ke čtení hodnot teploty jsme použili foton s adaptérem I2c. Tento adaptér I2C umožňuje snadné a spolehlivější připojení k modulu senzoru.
Krok 1: Požadovaný hardware:
Materiály, které potřebujeme k dosažení našeho cíle, zahrnují následující hardwarové komponenty:
1. STS21
2. Foton částic
3. Kabel I2C
4. I2C štít pro částicový foton
Krok 2: Připojení hardwaru:
Sekce zapojení hardwaru v zásadě vysvětluje zapojení potřebná pro připojení mezi snímačem a fotonem částic. Zajištění správného připojení je základní nutností při práci na jakémkoli systému pro požadovaný výstup. Požadovaná připojení jsou tedy následující:
STS21 bude fungovat přes I2C. Zde je příklad schématu zapojení, které ukazuje, jak zapojit jednotlivá rozhraní senzoru.
Po vybalení je deska nakonfigurována pro rozhraní I2C, proto doporučujeme tuto přípojku použít, pokud jste jinak agnostik. Vše, co potřebujete, jsou čtyři dráty!
Jsou vyžadována pouze čtyři připojení Vcc, Gnd, SCL a SDA piny a ty jsou spojeny pomocí kabelu I2C.
Tato spojení jsou ukázána na obrázcích výše.
Krok 3: Kód pro měření teploty:
Začněme nyní kódem částic.
Při používání senzorového modulu s Arduinem jsme zahrnuli knihovnu application.h a spark_wiring_i2c.h. Knihovna „application.h“a spark_wiring_i2c.h obsahuje funkce, které usnadňují komunikaci i2c mezi senzorem a částicem.
Celý kód částic je pro pohodlí uživatele uveden níže:
#zahrnout
#zahrnout
// Adresa STS21 I2C je 0x4A (74)
#define addr 0x4A
float cTemp = 0,0;
neplatné nastavení ()
{
// Nastavit proměnnou
Particle.variable ("i2cdevice", "STS21");
Particle.variable ("cTemp", cTemp);
// Inicializujte komunikaci I2C jako MASTER
Wire.begin ();
// Zahájení sériové komunikace, nastavení přenosové rychlosti = 9600
Serial.begin (9600);
zpoždění (300);
}
prázdná smyčka ()
{
nepodepsaná int data [2];
// Spusťte přenos I2C
Wire.beginTransmission (addr);
// Vyberte no hold master
Wire.write (0xF3);
// Ukončení přenosu I2C
Wire.endTransmission ();
zpoždění (500);
// Vyžádejte si 2 bajty dat
Wire.requestFrom (addr, 2);
// Přečíst 2 bajty dat
pokud (Wire.available () == 2)
{
data [0] = Wire.read ();
data [1] = Wire.read ();
}
// Převod dat
int rawtmp = data [0] * 256 + data [1];
int hodnota = rawtmp & 0xFFFC;
cTemp = -46,85 + (175,72 * (hodnota / 65536,0));
float fTemp = cTemp * 1,8 + 32;
// Výstup dat na řídicí panel
Particle.publish ("Teplota ve stupních Celsia:", řetězec (cTemp));
Particle.publish („Teplota ve stupních Fahrenheita:“, řetězec (fTemp));
zpoždění (1000);
}
Funkce Particle.variable () vytváří proměnné pro uložení výstupu senzoru a funkce Particle.publish () zobrazuje výstup na palubní desce webu.
Výstup snímače je uveden na obrázku výše pro vaši referenci.
Krok 4: Aplikace:
Digitální teplotní senzor STS21 lze použít v systémech, které vyžadují vysoce přesné sledování teploty. Může být začleněn do různých počítačových zařízení, zdravotnických zařízení a průmyslových řídicích systémů s nezbytným měřením teploty s dostatečnou přesností.