Obsah:

Výuka teplotního senzoru Arduino Nano - SI7050: 4 kroky
Výuka teplotního senzoru Arduino Nano - SI7050: 4 kroky

Video: Výuka teplotního senzoru Arduino Nano - SI7050: 4 kroky

Video: Výuka teplotního senzoru Arduino Nano - SI7050: 4 kroky
Video: #11 LM35 и промышленный датчик температуры 4–20 мА для герметизации ПЛК Arduino 2024, Červenec
Anonim
Image
Image

SI7050 je digitální teplotní senzor, který pracuje na komunikačním protokolu I2C a nabízí vysokou přesnost v celém rozsahu provozního napětí a teploty. Tato vysoká přesnost senzoru je dána novým zpracováním signálu a analogovým designem. Tyto senzory jsou vybaveny integrovanou pamětí na čipu, která ukládá kalibrační data, což usnadňuje jejich použití v širokém rozsahu. Zde je jeho ukázka s Arduino Nano.

Krok 1: Co potřebujete..

Co potřebuješ..!!
Co potřebuješ..!!

1. Arduino Nano

2. SI7050

3. I²C kabel

4. I²C štít pro Arduino Nano

Krok 2: Připojení:

Spojení
Spojení
Spojení
Spojení
Spojení
Spojení
Spojení
Spojení

Vezměte štít I2C pro Arduino Nano a jemně jej zatlačte přes kolíky Nano.

Poté připojte jeden konec kabelu I2C k senzoru SI7050 a druhý konec ke stínění I2C.

Připojení jsou znázorněna na obrázku výše.

Krok 3: Kód:

Kód
Kód

Arduino kód pro SI7050 lze stáhnout z našeho úložiště github-DCUBE Store.

Zde je odkaz na totéž:

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

Zahrnujeme knihovnu Wire.h pro usnadnění I2c komunikace senzoru s deskou Arduino.

Odtud můžete také zkopírovat kód, který je uveden následovně:

// Distribuováno s licencí svobodné vůle.

// Používejte jej jakýmkoli způsobem, ať už ziskem nebo zdarma, za předpokladu, že se vejde do licencí souvisejících děl.

// SI7050

// Tento kód je navržen pro práci s mini modulem SI7050_I2CS I2C

#zahrnout

// Adresa SI7050 I2C je 0x40 (64)

#define Addr 0x40

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

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

// Odeslání příkazu měření teploty, ŽÁDNÝ MASTER HOLD

Wire.write (0xF3);

// Zastavte přenos I2C

Wire.endTransmission ();

zpoždění (500);

// 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

float temp = ((data [0] * 256,0) + data [1]);

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

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í (500);

}

Krok 4: Aplikace:

SI7050 může být začleněn do různých systémů včetně počítačového vybavení, přenosných spotřebitelských zařízení a zdravotnických zařízení. Tento senzor lze použít v chladírenských řetězcích, sledování aktiv a také v různých průmyslových řídicích systémech. Hraje také klíčovou roli v ochraně baterie.

Doporučuje: