Isi kandungan:

Tutorial Arduino Nano - SI7050 Sensor Suhu: 4 Langkah
Tutorial Arduino Nano - SI7050 Sensor Suhu: 4 Langkah

Video: Tutorial Arduino Nano - SI7050 Sensor Suhu: 4 Langkah

Video: Tutorial Arduino Nano - SI7050 Sensor Suhu: 4 Langkah
Video: Учебное пособие по датчику влажности и температуры Arduino Nano HYT939 I2C 2024, Julai
Anonim
Image
Image

SI7050 adalah sensor suhu digital yang berfungsi pada protokol komunikasi I2C dan menawarkan ketepatan tinggi pada keseluruhan voltan operasi dan julat suhu. Ketepatan tinggi sensor ini disebabkan oleh pemprosesan isyarat baru dan reka bentuk analog. Sensor ini disematkan dengan memori on-chip yang menyimpan data kalibrasi yang memudahkan penggunaannya dalam jarak yang luas. Inilah demonstrasinya dengan Arduino Nano.

Langkah 1: Apa yang Anda Perlu..

Apa yang kamu perlu..!!
Apa yang kamu perlu..!!

1. Arduino Nano

2. SI7050

3. Kabel I²C

4. Perisai I²C untuk Arduino Nano

Langkah 2: Sambungan:

Sambungan
Sambungan
Sambungan
Sambungan
Sambungan
Sambungan
Sambungan
Sambungan

Ambil pelindung I2C untuk Arduino Nano dan perlahan-lahan menolaknya ke atas pin Nano.

Kemudian sambungkan satu hujung kabel I2C ke sensor SI7050 dan hujung yang lain ke pelindung I2C.

Sambungan ditunjukkan dalam gambar di atas.

Langkah 3: Kod:

Kod
Kod

Kod arduino untuk SI7050 boleh dimuat turun dari github repository-DCUBE Store kami.

Berikut adalah pautan yang sama:

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

Kami menyertakan perpustakaan Wire.h untuk memudahkan komunikasi sensor I2c dengan papan Arduino.

Anda juga boleh menyalin kod dari sini, ia diberikan seperti berikut:

// Diagihkan dengan lesen kehendak bebas.

// Gunakan dengan cara yang anda mahukan, untung atau percuma, dengan syarat ia sesuai dengan lesen karya yang berkaitan.

// SI7050

// Kod ini direka untuk berfungsi dengan Modul Mini SI7050_I2CS I2C

#sertakan

// Alamat SI7050 I2C adalah 0x40 (64)

#tentukan Addr 0x40

persediaan tidak sah ()

{

// Memulakan komunikasi I2C sebagai MASTER

Wire.begin ();

// Mulakan komunikasi bersiri, tetapkan kadar baud = 9600

Serial.begin (9600);

// Mulakan penghantaran I2C

Wire.beginTransmission (Addr);

// Hentikan penghantaran I2C

Wire.endTransmission ();

kelewatan (300);

}

gelung kosong ()

{

data int yang tidak ditandatangani [2];

// Mulakan penghantaran I2C

Wire.beginTransmission (Addr);

// Hantar arahan pengukuran suhu, TIDAK ADA MASUK

Wire.write (0xF3);

// Hentikan penghantaran I2C

Wire.endTransmission ();

kelewatan (500);

// Minta 2 bait data

Wire.requestFrom (Addr, 2);

// Baca 2 bait data

// temp msb, temp lsb

jika (Wire.available () == 2)

{

data [0] = Wire.read ();

data [1] = Wire.read ();

}

// Tukarkan data

suhu apungan = ((data [0] * 256.0) + data [1]);

float ctemp = ((175.72 * temp) / 65536.0) - 46.85;

float ftemp = ctemp * 1.8 + 32;

// Keluarkan data ke monitor bersiri

Serial.print ("Suhu dalam Celsius:");

Serial.print (ctemp);

Serial.println ("C");

Serial.print ("Suhu di Fahrenheit:");

Serial.print (ftemp);

Serial.println ("F");

kelewatan (500);

}

Langkah 4: Aplikasi:

SI7050 dapat digabungkan dalam pelbagai sistem termasuk peralatan komputer, peranti pengguna mudah alih dan peralatan perubatan. Sensor ini dapat digunakan dalam rantai penyimpanan sejuk, penjejakan aset serta pelbagai sistem kawalan industri. Ia juga memainkan peranan penting dalam perlindungan bateri.

Disyorkan: