2 Litar Meter Suhu Arduino Mudah Terokai

Cuba Instrumen Kami Untuk Menghapuskan Masalah





Dalam artikel ini, kami akan membina beberapa rangkaian meter suhu Arduino yang mudah yang juga dapat digunakan sebagai LED litar termometer bilik .

Litar ini dirancang untuk menampilkan bacaan dalam LED titik / bar. Projek ini dapat dilaksanakan untuk aplikasi di mana suhu persekitaran memainkan peranan penting atau boleh dibina seperti projek lain yang menyeronokkan untuk kediaman anda.



1) Menggunakan DTH11 sebagai Sensor Suhu

Jantung dan otak projek meter suhu pertama adalah sensor DTH11 dan Arduino. Kami hanya akan mengekstrak data suhu dari sensor.

Arduino akan menyimpulkan data dan menyegarkan suhu yang dipaparkan setiap beberapa saat.



Kami akan mengambil 12 resolusi Pengesan suhu , dengan kata lain, kita akan mengambil julat suhu di mana suhu persekitaran biasanya berbeza.

Sekiranya anda ingin menambahkan lebih banyak resolusi / LED, anda memerlukan arduino mega untuk memanfaatkan spektrum suhu keseluruhan sensor dengan program yang diubah.

DTH11 sebagai Sensor Suhu

Susun atur yang digambarkan di atas boleh digunakan untuk mencari persediaan anda dengan sebaiknya.

Pengguna hanya perlu memasuki julat suhu minimum bilik. Ini boleh menjadi nilai kasar, yang kemudiannya dapat diubah setelah penyediaan perkakasan lengkap selesai.

Sekiranya julat suhu berada di bawah nilai ambang yang dimasukkan pengguna, tidak ada LED yang akan menyala dan jika suhu melebihi julat maksimum (minimum + 11) semua LED akan menyala.

Sekiranya terdapat masalah penyambungan sensor, semua LED akan berkelip setiap saat secara serentak.

Rekaan:

Pendawaian litar meter suhu LED Arduino sangat mudah, satu siri LED yang disambungkan ke pin GPIO antara 2 hingga 13 dengan perintang penghad semasa, dan sensor DHT11 dipasang ke pin I / O analog, yang diprogramkan untuk memberi bekalan kuasa ke sensor serta membaca data.

Litar Termometer Bilik LED

Oleh itu, penyediaan litar termometer LED anda lengkap dan siap untuk memuat naik kodnya. Selalu disarankan untuk menguji litar di papan roti sebelum membuatnya tetap.

Petua: Gunakan LED warna yang berbeza untuk menunjukkan julat suhu yang berbeza. Anda boleh menggunakan LED biru untuk julat suhu yang lebih rendah, hijau atau kuning untuk julat suhu pertengahan dan LED merah untuk suhu yang lebih tinggi. Ini akan menjadikan lebih menarik.

Prototaip pengarang:

prototaip berfungsi Litar Termometer Bilik LED

CATATAN: Program berikut hanya serasi dengan sensor DHT11.

Sebelum meneruskan, pastikan memuat turun fail perpustakaan dari pautan berikut:

https://arduino-info.wikispaces.com/file/detail/DHT-lib.zip

Kod Program:

//-------Program developed by R.Girish------//
#include
int a=2
int b=3
int c=4
int d=5
int e=6
int f=7
int g=8
int h=9
int i=10
int j=11
int k=12
int l=13
int p=A0
int data=A1
int n=A2
int ack
dht DHT
int temp=25 // set temperature range.
void setup()
{
Serial.begin(9600) // may be removed after testing.
pinMode(a,OUTPUT)
pinMode(b,OUTPUT)
pinMode(c,OUTPUT)
pinMode(d,OUTPUT)
pinMode(e,OUTPUT)
pinMode(f,OUTPUT)
pinMode(g,OUTPUT)
pinMode(h,OUTPUT)
pinMode(i,OUTPUT)
pinMode(j,OUTPUT)
pinMode(k,OUTPUT)
pinMode(l,OUTPUT)
pinMode(p,OUTPUT)
pinMode(n,OUTPUT)
digitalWrite(p,HIGH)
digitalWrite(n,LOW)
}
void loop()
{
// may be removed after testing.
Serial.print('Temperature(°C) = ')
Serial.println(DHT.temperature)
Serial.print('Humidity(%) = ')
Serial.println(DHT.humidity)
Serial.print(' ')
//till here
ack=0
int chk = DHT.read11(data)
switch (chk)
{
case DHTLIB_ERROR_CONNECT:
ack=1
break
}
if (ack==0)
{
if(DHT.temperature>=temp)digitalWrite(a,HIGH)
if(DHT.temperature>=temp+1)digitalWrite(b,HIGH)
if(DHT.temperature>=temp+2)digitalWrite(c,HIGH)
if(DHT.temperature>=temp+3)digitalWrite(d,HIGH)
if(DHT.temperature>=temp+4)digitalWrite(e,HIGH)
if(DHT.temperature>=temp+5)digitalWrite(f,HIGH)
if(DHT.temperature>=temp+6)digitalWrite(g,HIGH)
if(DHT.temperature>=temp+7)digitalWrite(h,HIGH)
if(DHT.temperature>=temp+8)digitalWrite(i,HIGH)
if(DHT.temperature>=temp+9)digitalWrite(j,HIGH)
if(DHT.temperature>=temp+10)digitalWrite(k,HIGH)
if(DHT.temperature>=temp+11)digitalWrite(l,HIGH)
delay(2000)
goto refresh
}
if (ack==1)
{
// This may be removed after testing.
Serial.print('NO DATA')
Serial.print(' ')
// till here
delay(500)
digitalWrite(a,1)
digitalWrite(b,1)
digitalWrite(c,1)
digitalWrite(d,1)
digitalWrite(e,1)
digitalWrite(f,1)
digitalWrite(g,1)
digitalWrite(h,1)
digitalWrite(i,1)
digitalWrite(j,1)
digitalWrite(k,1)
digitalWrite(l,1)
refresh:
delay(500)
digitalWrite(a,0)
digitalWrite(b,0)
digitalWrite(c,0)
digitalWrite(d,0)
digitalWrite(e,0)
digitalWrite(f,0)
digitalWrite(g,0)
digitalWrite(h,0)
digitalWrite(i,0)
digitalWrite(j,0)
digitalWrite(k,0)
digitalWrite(l,0)
}
}
//-------Program developed by R.Girish------//

CATATAN 1:

Dalam program ini:

int temp = 25 // tetapkan julat suhu.
Ganti '25' dengan suhu persekitaran minimum yang anda temui pada masa lalu dengan termometer lain atau ramalkan nilai kasar.
CATATAN 2: Sila sahkan bacaan suhu dari monitor bersiri dan pemasangan LED.

2) Arduino Temperature Meter Menggunakan DS18B20

Dalam reka bentuk kedua ini, kami mempelajari satu lagi sensor suhu Arduino yang ringkas namun sangat tepat dengan litar Indikator, menggunakan modul pembacaan paparan LCD digital canggih.

modul bacaan paparan LCD digital.

Sebenarnya tidak ada yang dapat dijelaskan dalam konfigurasi ini, kerana semuanya berdasarkan modul dan hanya memerlukan penyambungan atau penyambungan antara satu sama lain melalui soket dan penyambung wanita lelaki yang ditawarkan.

Perkakasan diperlukan

Empat bahan asas diperlukan untuk membina litar meter suhu LCD Arduino yang tepat ini, yang boleh dikaji seperti yang diberikan di bawah:

1) Lembaga Arduino UNO

2) A Modul LCD yang serasi

3) Cip sensor suhu analog, seperti DS18B20 atau kami sendiri LM35 IC .

Spesifikasi Termometer Digital DS18B20

DS18B20 termometer digital memastikan spesifikasi suhu 9-bit hingga 12-bit Celsius dan membawa ciri penggera dengan elemen pengaktifan yang lebih tinggi dan lebih rendah yang boleh diprogramkan oleh pengguna yang tidak mudah berubah. DS18B20 berkomunikasi melalui bus Wire tunggal yang dengan keterangan menuntut satu baris data (dan ground) untuk sambungan dengan mikropemproses utama.

Ia merangkumi julat suhu kerja dari -55 ° C hingga + 125 ° C yang tepat hingga ± 0,5 ° C sepanjang bermacam -10 ° C hingga + 85 ° C.

Seiring dengan ini, DS18B20 diaktifkan untuk memperoleh kuasa langsung dari garis data ('daya parasit'), membuang keperluan
rel = ' tidak ikut 'bekalan kuasa luar.

Masing-masing DS18B20 mempunyai kod bersiri 64-bit khas, yang membolehkan banyak DS18B20 berfungsi pada bas 1 Kawat yang sama. Oleh itu, hanya satu mikropemproses yang mesra pengguna dan tidak rumit untuk menguruskan beban yang berkaitan dengan DS18B20 yang dilancarkan di lokasi yang meluas.

Program yang dapat dengan mudah memanfaatkan atribut ini melibatkan konfigurasi ekologi HVAC, perangkat pengawasan suhu di dalam perusahaan, alat, atau alat, dan sistem pengawasan dan pengawalan proses.

Butiran Pinout

Spesifikasi Termometer Digital DS18B20

4) Unit penyesuai 9V, 1 amp AC ke DC

Sekarang hanya mengenai menekan penyambung antara satu sama lain, lakukan sedikit tetapan melalui butang tekan LCD, dan anda akan mendapat meter suhu LCD digital lengkap yang tepat.

Anda dapat mengukur suhu bilik dengan pemasangan ini, atau menjepit sensor dengan tepat dengan alat pemancar panas yang perlu dipantau seperti mesin kereta, ruang inkubator telur, geyser, atau hanya untuk memeriksa pelesapan panas dari peranti penguat kuasa.

Cara Menghubungkan Meter Suhu Arduino

Gambar berikut menunjukkan penyambungan sambungan, di mana papan Arduino berada di bahagian bawah, dengan monitor LCD terpasang di atasnya, dan sensor suhu disambungkan dengan papan LCD.

Tetapi sebelum anda melaksanakan penyediaan di atas, anda perlu memprogram papan Arduino dengan contoh kod berikut.

Kesopanan : dfrobot.com/wiki/index.php?title=LCD_KeyPad_Shield_For_Arduino_SKU:_DFR0009




Sebelumnya: Menghidupkan / Mematikan Dua Beban Alternatif dengan IC 555 Seterusnya: Litar Suis Relay SPDT menggunakan Triac