Cuprins:

Tutorial senzor de temperatură Arduino Nano - SI7050: 4 pași
Tutorial senzor de temperatură Arduino Nano - SI7050: 4 pași

Video: Tutorial senzor de temperatură Arduino Nano - SI7050: 4 pași

Video: Tutorial senzor de temperatură Arduino Nano - SI7050: 4 pași
Video: Arduino Nano - SI7050 Temperature Sensor Tutorial 2024, Iulie
Anonim
Image
Image

SI7050 este un senzor digital de temperatură care funcționează pe protocolul de comunicație I2C și oferă o precizie ridicată pe întreaga gamă de tensiune de operare și temperatură. Această precizie ridicată a senzorului este atribuită de noua procesare a semnalului și designul analogic. Acești senzori sunt încorporați cu o memorie on-chip care stochează datele de calibrare care facilitează utilizarea acestuia pe o gamă largă. Iată demonstrația sa cu Arduino Nano.

Pasul 1: De ce ai nevoie..

De ce ai nevoie..!!
De ce ai nevoie..!!

1. Arduino Nano

2. SI7050

3. Cablu I²C

4. Scut I²C pentru Arduino Nano

Pasul 2: Conexiune:

Conexiune
Conexiune
Conexiune
Conexiune
Conexiune
Conexiune
Conexiune
Conexiune

Luați un scut I2C pentru Arduino Nano și împingeți-l ușor peste pinii Nano.

Apoi conectați capătul unui cablu I2C la senzorul SI7050 și celălalt capăt la ecranul I2C.

Conexiunile sunt afișate în imaginea de mai sus.

Pasul 3: Cod:

Cod
Cod

Codul arduino pentru SI7050 poate fi descărcat din depozitul nostru github-Magazin DCUBE.

Iată linkul pentru același lucru:

github.com/DcubeTechVentures/SI7050/blob/master/Arduino/SI7050.ino

Includem biblioteca Wire.h pentru a facilita comunicarea I2c a senzorului cu placa Arduino.

De asemenea, puteți copia codul de aici, acesta este dat după cum urmează:

// Distribuit cu o licență de liberă voință.

// Folosiți-l în orice mod doriți, profit sau gratuit, cu condiția să se încadreze în licențele lucrărilor sale asociate.

// SI7050

// Acest cod este conceput pentru a funcționa cu modulul SI7050_I2CS I2C Mini

#include

// Adresa SI7050 I2C este 0x40 (64)

#define Addr 0x40

configurare nulă ()

{

// Inițializați comunicarea I2C ca MASTER

Wire.begin ();

// Inițializați comunicarea serială, setați rata de transmisie = 9600

Serial.begin (9600);

// Porniți transmisia I2C

Wire.beginTransmission (Addr);

// Opriți transmisia I2C

Wire.endTransmission ();

întârziere (300);

}

bucla nulă ()

{

date int nesemnate [2];

// Porniți transmisia I2C

Wire.beginTransmission (Addr);

// Trimiteți comanda de măsurare a temperaturii, NU HOLD MASTER

Wire.write (0xF3);

// Opriți transmisia I2C

Wire.endTransmission ();

întârziere (500);

// Solicitați 2 octeți de date

Wire.requestFrom (Addr, 2);

// Citiți 2 octeți de date

// temp msb, temp lsb

if (Wire.available () == 2)

{

date [0] = Wire.read ();

date [1] = Wire.read ();

}

// Conversia datelor

float temp = ((date [0] * 256.0) + date [1]);

float ctemp = ((175,72 * temp) / 65536,0) - 46,85;

float ftemp = ctemp * 1,8 + 32;

// Ieșire date pe monitorul serial

Serial.print ("Temperatura în grade Celsius:");

Serial.print (ctemp);

Serial.println ("C");

Serial.print ("Temperatura în Fahrenheit:");

Serial.print (ftemp);

Serial.println ("F");

întârziere (500);

}

Pasul 4: Aplicații:

SI7050 poate fi încorporat în diverse sisteme, inclusiv echipamente pentru computere, dispozitive portabile de consum și echipamente medicale. Acest senzor poate fi utilizat în lanțurile de depozitare frigorifică, urmărirea activelor, precum și în diferite sisteme de control industrial. De asemenea, joacă un rol esențial în protecția bateriei.

Recomandat: