Obsah:
2025 Autor: John Day | [email protected]. Naposledy zmenené: 2025-01-13 06:58
LM75BIMM je digitálny snímač teploty integrovaný s tepelným strážcom a má dvojvodičové rozhranie, ktoré podporuje jeho prevádzku až do 400 kHz. Má prehriatie s programovateľným limitom a hysterézou.
V tomto návode je ilustrované prepojenie senzorového modulu LM75BIMM s arduino nano. Na čítanie hodnôt teploty sme použili arduino s adaptérom I2c. Vďaka tomuto adaptéru I2C je pripojenie k senzorovému modulu jednoduché a spoľahlivejšie.
Krok 1: Potrebný hardvér:
Materiály, ktoré potrebujeme na dosiahnutie nášho cieľa, obsahujú nasledujúce hardvérové komponenty:
1. LM75BIMM
2. Arduino Nano
3. Kábel I2C
4. I2C štít pre arduino nano
Krok 2: Pripojenie hardvéru:
Časť zapojenia hardvéru v zásade vysvetľuje zapojenie potrebné medzi senzorom a arduino nano. Zabezpečenie správneho pripojenia je základnou potrebou pri práci na akomkoľvek systéme s požadovaným výstupom. Potrebné spojenia sú teda tieto:
LM75BIMM bude fungovať na I2C. Tu je príklad schémy zapojenia, ktorá ukazuje, ako prepojiť každé rozhranie snímača.
Hneď po vybalení je doska nakonfigurovaná na rozhranie I2C, preto vám toto pripojenie odporúčame použiť, ak ste inak agnostik.
Všetko, čo potrebujete, sú štyri drôty! Vyžadujú sa iba štyri pripojenia Vcc, Gnd, SCL a SDA piny, ktoré sú prepojené pomocou kábla I2C.
Tieto spojenia sú znázornené na obrázkoch vyššie.
Krok 3: Kód na meranie teploty:
Začnime teraz arduino kódom.
Pri použití senzorového modulu s arduinom obsahuje knižnicu Wire.h. Knižnica "Wire" obsahuje funkcie, ktoré uľahčujú komunikáciu i2c medzi senzorom a doskou Arduino.
Celý arduino kód je pre pohodlie užívateľa uvedený nižšie:
#zahrnúť
// Adresa LM75BIMM I2C je 0x49 (73)
#define Addr 0x49
neplatné nastavenie ()
{
// Inicializujte komunikáciu I2C ako MASTER
Wire.begin ();
// Inicializácia sériovej komunikácie, nastavenie prenosovej rýchlosti = 9600
Serial.begin (9600);
// Spustite prenos I2C
Wire.beginTransmission (Addr);
// Vyberte konfiguračný register
Wire.write (0x01);
// Nepretržitá prevádzka, normálna prevádzka
Wire.write (0x00);
// Zastavte prenos I2C
Wire.endTransmission ();
oneskorenie (300);
}
prázdna slučka ()
{
int data bez znamienka [2];
// Spustite prenos I2C
Wire.beginTransmission (Addr);
// Vyberte register údajov teploty
Wire.write (0x00);
// Zastavte prenos I2C
Wire.endTransmission ();
// Požiadajte o 2 bajty údajov
Wire.requestFrom (Addr, 2);
// Prečítajte 2 bajty údajov
// temp msb, temp lsb
ak (Wire.available () == 2)
{
data [0] = Wire.read ();
údaje [1] = Wire.read ();
}
// Previesť údaje na 9-bitové
int temp = (údaje [0] * 256 + (údaje [1] a 0x80)) / 128;
ak (teplota> 255)
{
teplota -= 512;
}
float cTemp = teplota * 0,5;
float fTemp = cTemp * 1,8 + 32;
// Výstup údajov na sériový monitor
Serial.print ("Teplota v stupňoch Celzia:");
Serial.print (cTemp);
Serial.println ("C");
Serial.print ("Teplota vo Fahrenheite:");
Serial.print (fTemp);
Serial.println ("F");
oneskorenie (1000);
}
V knižnici drôtov Wire.write () a Wire.read () sa používajú na zápis príkazov a čítanie výstupu snímača.
Serial.print () a Serial.println () sa používa na zobrazenie výstupu senzora na sériovom monitore Arduino IDE.
Výstup senzora je zobrazený na obrázku vyššie.
Krok 4: Aplikácie:
LM75BIMM je ideálny pre množstvo aplikácií vrátane základňových staníc, elektronických testovacích zariadení, kancelárskej elektroniky, osobných počítačov alebo akéhokoľvek iného systému, kde je monitorovanie teploty rozhodujúce pre výkon. Tento senzor má preto kľúčovú úlohu v mnohých vysoko teplotne citlivých systémoch.