Obsah:

Monitorovanie teploty pomocou MCP9808 a fotónu častíc: 4 kroky
Monitorovanie teploty pomocou MCP9808 a fotónu častíc: 4 kroky

Video: Monitorovanie teploty pomocou MCP9808 a fotónu častíc: 4 kroky

Video: Monitorovanie teploty pomocou MCP9808 a fotónu častíc: 4 kroky
Video: Lesson 42: Using LM35 Temperature Sensor | Arduino Step By Step Course 2024, November
Anonim
Image
Image

MCP9808 je vysoko presný digitálny snímač teploty I2C ± 0,5 ° C. Sú vybavené užívateľsky programovateľnými registrami, ktoré uľahčujú aplikácie snímania teploty. Vysoko presný teplotný senzor MCP9808 sa stal priemyselným štandardom z hľadiska tvarového faktora a inteligencie a poskytuje kalibrované, linearizované signály zo senzorov v digitálnom formáte I2C.

V tomto tutoriáli bolo ukázané prepojenie senzorového modulu MCP9808 s fotónom častíc. Na čítanie hodnôt teploty sme použili malinový pi s adaptérom I2c. Tento adaptér I2C uľahčuje a spoľahlivejšie pripojenie k modulu senzora.

Krok 1: Potrebný hardvér:

Potrebný hardvér
Potrebný hardvér
Potrebný hardvér
Potrebný hardvér
Potrebný hardvér
Potrebný hardvér

Materiály, ktoré potrebujeme na dosiahnutie nášho cieľa, obsahujú nasledujúce hardvérové komponenty:

1. MCP9808

2. Fotón častíc

3. Kábel I2C

4. I2C štít pre časticový fotón

Krok 2: Pripojenie hardvéru:

Pripojenie hardvéru
Pripojenie hardvéru
Pripojenie hardvéru
Pripojenie hardvéru

Časť zapojenia hardvéru v zásade vysvetľuje zapojenie potrebné medzi snímačom a fotónom častíc. 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:

MCP9808 bude fungovať cez 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:

Kód na meranie teploty
Kód na meranie teploty

Začnime teraz s časticovým kódom.

Pri použití senzorového modulu s arduino zahrnujeme knižnicu application.h a spark_wiring_i2c.h. Knižnica "application.h" a spark_wiring_i2c.h obsahuje funkcie, ktoré uľahčujú i2c komunikáciu medzi senzorom a časticou.

Celý kód častíc je pre pohodlie užívateľa uvedený nižšie:

#zahrnúť

#zahrnúť

// Adresa MCP9808 I2C je 0x18 (24)

#define Addr 0x18

float cTemp = 0, fTemp = 0;

neplatné nastavenie ()

{

// Nastavenie premennej

Premenná častica ("i2cdevice", "MCP9808");

Particle.variable ("cTemp", cTemp);

// Inicializujte komunikáciu I2C ako MASTER

Wire.begin ();

// Inicializujte sériovú komunikáciu, nastavte prenosovú rýchlosť = 9600

Serial.begin (9600);

// Spustite prenos I2C

Wire.beginTransmission (Addr);

// Vyberte konfiguračný register

Wire.write (0x01);

// Režim nepretržitej konverzie, predvolené nastavenie pri zapnutí

Wire.write (0x00);

Wire.write (0x00);

// Zastavte prenos I2C

Wire.endTransmission ();

// Spustite prenos I2C

Wire.beginTransmission (Addr);

// Vyberte rozlíšenie rgister

Wire.write (0x08);

// Rozlíšenie = +0,0625 / C

Wire.write (0x03);

// Zastavte prenos I2C

Wire.endTransmission ();

oneskorenie (300);

}

prázdna slučka ()

{

int data bez znamienka [2];

// Spustí komunikáciu I2C

Wire.beginTransmission (Addr);

// Vyberte dátový register

Wire.write (0x05);

// 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 ();

}

oneskorenie (300);

// Previesť údaje na 13-bitové

int temp = ((data [0] & 0x1F) * 256 + data [1]);

ak (teplota> 4095)

{

teplota -= 8192;

}

cTemp = teplota * 0,0625;

fTemp = cTemp * 1,8 + 32;

// Výstup údajov na informačný panel

Particle.publish („Teplota v stupňoch Celzia:“, reťazec (cTemp));

Particle.publish („Teplota vo Fahrenheite:“, reťazec (fTemp));

oneskorenie (500);

}

Funkcia Particle.variable () vytvára premenné na ukladanie výstupu zo senzora a funkcia Particle.publish () zobrazuje výstup na palubnej doske webu.

Výstup senzora je pre vašu referenciu zobrazený na obrázku vyššie.

Krok 4: Aplikácie:

Aplikácie
Aplikácie

Digitálny snímač teploty MCP9808 má niekoľko aplikácií na priemyselnej úrovni, ktoré obsahujú priemyselné mrazničky a chladničky spolu s rôznymi kuchynskými robotmi. Tento senzor je možné použiť pre rôzne osobné počítače, servery a ďalšie periférie počítača.

Odporúča: