Satura rādītājs:

Temperatūras mērīšana, izmantojot MCP9803 un Arduino Nano: 4 soļi
Temperatūras mērīšana, izmantojot MCP9803 un Arduino Nano: 4 soļi

Video: Temperatūras mērīšana, izmantojot MCP9803 un Arduino Nano: 4 soļi

Video: Temperatūras mērīšana, izmantojot MCP9803 un Arduino Nano: 4 soļi
Video: Использование Melexis MLX90614 Инфракрасный термометр с Arduino 2024, Novembris
Anonim
Image
Image

MCP9803 ir 2 vadu augstas precizitātes temperatūras sensors. Tie ir iemiesoti lietotāja programmējamos reģistros, kas atvieglo temperatūras noteikšanas lietojumprogrammas. Šis sensors ir piemērots ļoti sarežģītai daudzzonu temperatūras kontroles sistēmai.

Šajā apmācībā ir parādīta MCP9803 sensora moduļa saskarne ar arduino nano. Lai nolasītu temperatūras vērtības, mēs esam izmantojuši arduino ar I2c adapteri. Šis I2C adapteris padara savienojumu ar sensora moduli vieglu un uzticamāku.

1. darbība. Nepieciešamā aparatūra:

Nepieciešamā aparatūra
Nepieciešamā aparatūra
Nepieciešamā aparatūra
Nepieciešamā aparatūra
Nepieciešamā aparatūra
Nepieciešamā aparatūra

Materiāli, kas nepieciešami mūsu mērķa sasniegšanai, ietver šādas aparatūras sastāvdaļas:

1. MCP9803

2. Arduino Nano

3. I2C kabelis

4. I2C vairogs arduino nano

2. darbība. Aparatūras savienošana:

Aparatūras savienojums
Aparatūras savienojums
Aparatūras savienojums
Aparatūras savienojums

Aparatūras savienošanas sadaļa pamatā izskaidro nepieciešamos vadu savienojumus starp sensoru un arduino nano. Pareizu savienojumu nodrošināšana ir pamatvajadzība, strādājot pie jebkuras sistēmas vēlamajam rezultātam. Tātad nepieciešamie savienojumi ir šādi:

MCP9803 darbosies, izmantojot I2C. Šeit ir elektroinstalācijas shēmas piemērs, kas parāda, kā savienot katru sensora saskarni.

Izņemot komplektu, tāfele ir konfigurēta I2C saskarnei, tāpēc mēs iesakām izmantot šo savienojumu, ja esat citādi agnostiķis.

Viss, kas Jums nepieciešams, ir četri vadi! Nepieciešami tikai četri savienojumi Vcc, Gnd, SCL un SDA, un tie ir savienoti, izmantojot I2C kabeli.

Šie savienojumi ir parādīti iepriekš redzamajos attēlos.

3. darbība. Temperatūras mērīšanas kods:

Temperatūras mērīšanas kods
Temperatūras mērīšanas kods

Sāksim ar arduino kodu tūlīt.

Izmantojot sensoru moduli ar arduino, mēs iekļaujam Wire.h bibliotēku. "Wire" bibliotēkā ir funkcijas, kas atvieglo i2c komunikāciju starp sensoru un arduino plati.

Viss arduino kods lietotāja ērtībai ir norādīts zemāk:

#iekļaut

// MCP9803 I2C adrese ir 0x48 (72)

#define Addr 0x48

anulēts iestatījums ()

{

// Inicializēt I2C komunikāciju kā MASTER

Wire.begin ();

// Inicializēt seriālo komunikāciju, iestatīt pārraides ātrumu = 9600

Sērijas sākums (9600);

// Sākt I2C pārraidi

Wire.beginTransmission (Addr);

// Izvēlieties konfigurācijas reģistru

Wire.write (0x01);

// Nepārtrauktas konversijas režīms, ieslēgšanas noklusējums

Wire.write (0x60);

// Apturēt I2C pārraidi

Wire.endTransmission ();

kavēšanās (300);

}

tukša cilpa ()

{

neparakstīti int dati [2];

// Sāk I2C komunikāciju

Wire.beginTransmission (Addr);

// Atlasiet datu reģistru

Wire.write (0x00);

// Apturēt I2C pārraidi

Wire.endTransmission ();

// Pieprasīt 2 baitus datu

Wire.requestFrom (Addr, 2);

// Lasīt 2 baitus datu

// temp msb, temp lsb

ja (Wire.available () == 2)

{

dati [0] = Wire.read ();

dati [1] = Wire.read ();

}

// Konvertējiet datus uz 12 bitiem

int temp = ((dati [0] * 256) + dati [1]) / 16,0;

ja (temperatūra> 2047)

{

temperatūra -= 4096;

}

pludiņš cTemp = temp * 0,0625;

pludiņš fTemp = cTemp * 1,8 + 32;

// Izvadiet datus uz seriālo monitoru

Serial.print ("Temperatūra pēc Celsija:");

Serial.print (cTemp);

Serial.println ("C");

Serial.print ("Temperatūra pēc Fārenheita:");

Sērijas nospiedums (fTemp);

Serial.println ("F");

kavēšanās (500);

}

Vadu bibliotēkā Wire.write () un Wire.read () tiek izmantotas komandu rakstīšanai un sensora izejas nolasīšanai.

Serial.print () un Serial.println () tiek izmantoti, lai parādītu sensora izvadi Arduino IDE sērijas monitorā.

Sensora izeja ir parādīta attēlā iepriekš.

4. darbība. Lietojumprogrammas:

Lietojumprogrammas
Lietojumprogrammas

MCP9803 var izmantot plašā ierīču arēnā, kurā ietilpst personālais dators un perifērijas ierīces, cietie diski, dažādas izklaides sistēmas, biroja sistēmas un datu sakaru sistēmas. Šo sensoru var iekļaut dažādās sarežģītās sistēmās.

Ieteicams: