Obsah:
2025 Autor: John Day | [email protected]. Naposledy změněno: 2025-01-13 06:57
LM75BIMM je digitální teplotní senzor integrovaný s tepelným hlídáním a má dvouvodičové rozhraní, které podporuje jeho provoz až do 400 kHz. Má přehřátí s programovatelným limitem a hysterézou.
V tomto tutoriálu bylo ukázáno propojení senzorového modulu LM75BIMM s arduino nano. Ke čtení hodnot teploty jsme použili arduino 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. LM75BIMM
2. Arduino Nano
3. Kabel I2C
4. I2C štít pro arduino nano
Krok 2: Připojení hardwaru:
Sekce zapojení hardwaru v zásadě vysvětluje zapojení kabelů požadovaná mezi senzorem a arduino nano. 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í:
LM75BIMM 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í arduino kódem.
Při používání senzorového modulu s arduino jsme zahrnuli knihovnu Wire.h. Knihovna „Wire“obsahuje funkce, které usnadňují komunikaci i2c mezi senzorem a deskou arduino.
Celý arduino kód je pro pohodlí uživatele uveden níže:
#zahrnout
// Adresa I2C LM75BIMM je 0x49 (73)
#define Addr 0x49
neplatné nastavení ()
{
// Inicializujte komunikaci I2C jako MASTER
Wire.begin ();
// Inicializace sériové komunikace, nastavení přenosové rychlosti = 9600
Serial.begin (9600);
// Spusťte přenos I2C
Wire.beginTransmission (Addr);
// Vyberte konfigurační registr
Wire.write (0x01);
// Nepřetržitý provoz, normální provoz
Wire.write (0x00);
// Zastavte přenos I2C
Wire.endTransmission ();
zpoždění (300);
}
prázdná smyčka ()
{
nepodepsaná int data [2];
// Spusťte přenos I2C
Wire.beginTransmission (Addr);
// Vyberte teplotní datový registr
Wire.write (0x00);
// Zastavte přenos I2C
Wire.endTransmission ();
// Vyžádejte si 2 bajty dat
Wire.requestFrom (Addr, 2);
// Přečíst 2 bajty dat
// temp msb, temp lsb
pokud (Wire.available () == 2)
{
data [0] = Wire.read ();
data [1] = Wire.read ();
}
// Převod dat na 9bitové
int temp = (data [0] * 256 + (data [1] & 0x80)) / 128;
pokud (teplota> 255)
{
teplota -= 512;
}
float cTemp = teplota * 0,5;
float fTemp = cTemp * 1,8 + 32;
// Výstup dat na sériový monitor
Serial.print ("Teplota ve stupních Celsia:");
Serial.print (cTemp);
Serial.println ("C");
Serial.print ("Teplota ve stupních Fahrenheita:");
Serial.print (fTemp);
Serial.println ("F");
zpoždění (1000);
}
V drátové knihovně Wire.write () a Wire.read () slouží k zápisu příkazů a čtení výstupu senzoru.
Serial.print () a Serial.println () se používá k zobrazení výstupu senzoru na sériovém monitoru Arduino IDE.
Výstup snímače je zobrazen na obrázku výše.
Krok 4: Aplikace:
LM75BIMM je ideální pro řadu aplikací, včetně základnových stanic, elektronických testovacích zařízení, kancelářské elektroniky, osobních počítačů nebo jakéhokoli jiného systému, kde je monitorování teploty rozhodující pro výkon. Tento senzor má proto klíčovou roli v mnoha vysoce teplotně citlivých systémech.