SENSOR MENGUKUR SUHU DAN KELEMBABAN UDARA DENGAN SENSOR DHT11 DAN ARDUINO
SENSOR
MENGUKUR SUHU DAN KELEMBABAN UDARA DENGAN SENSOR DHT11 DAN ARDUINO
Latar Belakang
Otomatisasi ini diaplikasikan mengukur
suhu dan kelembaban udara dengan sensor dht dan arduino yang di jalankan
menggunakan bahasa C, Rangkaian ini juga
berfungsi untuk mendukung proses kerja alat agar bekerja dengan sebaik mungkin.
Pada laporan ini telah dibahas dan dipelajari lebih dalam tentang perancangan
sebuah alat elektronik berbasis
mikrokontroler yang
dikendalikan oleh bahasa pemograman C yang berfungsi mematikan dan menghidupkan
Suhu pada suatu ruangan.
DHT11 adalah salah satu sensor yang dapat mengukur dua parameter lingkungan sekaligus, yakni suhu dan kelembaban udara. Dalam sensor ini terdapat sebuah thermistor tipe NTC (Negative Temperature Coefficient) untuk mengukur suhu sebuah sensor kelembaban tipe resisitif dan sebuah mikonkontroler 8 bit
DHT11 adalah salah satu sensor yang dapat mengukur dua parameter lingkungan sekaligus, yakni suhu dan kelembaban udara. Dalam sensor ini terdapat sebuah thermistor tipe NTC (Negative Temperature Coefficient) untuk mengukur suhu sebuah sensor kelembaban tipe resisitif dan sebuah mikonkontroler 8 bit
Studi Literatur
Mereka
membuat suatu project untuk mengukur dan kelembaban udara menggunakan Arduino untuk
mengecek suatu ruangan jika ruangan ada 5 orang atau kurang suhu akan di
kurangkan, jika diruangan lebih dari 5 orang maka suhu akan di naikan
Kelebihan
1. Bisa menggunakan handphone
2. Tingkat keakuratan cukup tinggi.
1. Bisa menggunakan handphone
2. Tingkat keakuratan cukup tinggi.
Kekurangan
1. Gampang error
2. Kabel jumper yang digunakan mudah digigit tikus bila modul akan ditanam di tembok.
1. Gampang error
2. Kabel jumper yang digunakan mudah digigit tikus bila modul akan ditanam di tembok.
Diagram Blok
Rangkaian
Adapun diagram
blok dari sistem yang dirancang adalah seperti yang
diperlihatkan pada
gambar dibawah ini.
Perancangan suatu
alat yang akan dibuat merupakan suatu tahapan
yang sangat
penting dalam membuat suatu program ataupun melanjutkan kelangkah
selanjutnya karena
dengan perencanaan tersebut diharapkan mendapatkan hasil yang
baik dan maksimal,
dalam perancangan sistem yang penulis buat “Rancang Bangun
Alat Pengukur
Kelembaban Udara dan Suhu Pada Laboratorium Volume Dengan
Menggunakan Sensor
DHT-11 Berbasis Arduino Uno”.
Fungsi Tiap Blok :
1. Block Supply :
Sebagai Sumber Tegangan
2. Blok Sensor
DHT-11 : Sebagai penerima suhu dan kelembaban
3. Blok Arduino
Uno : Sebagai tempat untuk menghitung perubahan logika yang
diproses berupa
hitungan dari suhu dan kelembaban
4. Blok Display
LCD : Sebagai tampilan data yang telah diproses
Pada sistem ini
DHT-11 akan mendeteksi suhu dan kelembaban berdasarkan perintah
dari Arduion Uno,
setelah Arduino Uno mengirimkan perintah kepada DHT-11 maka
Arduino Uno
menunggu beberapa saat untuk menerima balasan dari DHT-11.
Setelah data
diterima oleh Arduino Uno maka data akan diproses dan kemudian
dikonversikan
menjadi derajat celcius untuk suhu dan % untuk kelembaban.Setelah
data dikonversikan
oleh Arduino Uno maka LCD akan aktif sebagai display. Setelah
display aktif dan
siap menerima data baru setelah itu Arduino Uno mengirimkan data
hasil konversi ke
LCD.
Alat
Alat
1. Solder : 1 buah
2. Timah :
secukupnya
3. Tang Potong : 1
buah
4. Obeng Plus
Minus : 1 buah
5. Baut dan Mur :
Secukupnya
Bahan
1. Sensor DHT-11 :
1 buah
2. Arduino Uno : 1
buah
3. Resistor
Variabel 10 k : 1 buah
4. Resistor : 2
buah
5. Pin Header 16
pin : 1 buah
6. Kabel Jumper
Male Female : secukupnya
7. PCB Cetak : 1
buah
8. Buzzer : 1 buah
9. Protoboard : 1
buah
Codingan
#include "DHT.h"
#define DHTPIN A5 // what digital
pin we're connected to
float humidity;
float temp;
// Uncomment whatever type you're
using!
//#define DHTTYPE DHT11 // DHT 11
#define DHTTYPE DHT22 // DHT 22
(AM2302), AM2321
//#define DHTTYPE DHT21 // DHT 21
(AM2301)
// Connect pin 1 (on the left) of
the sensor to +5V
// NOTE: If using a board with 3.3V
logic like an Arduino Due connect pin 1
// to 3.3V instead of 5V!
// Connect pin 2 of the sensor to
whatever your DHTPIN is
// Connect pin 4 (on the right) of
the sensor to GROUND
// Connect a 10K resistor from pin
2 (data) to pin 1 (power) of the sensor
// Initialize DHT sensor.
// Note that older versions of this
library took an optional third parameter to
// tweak the timings for faster
processors. This parameter is no longer needed
// as the current DHT reading
algorithm adjusts itself to work on faster procs.
// include the library code:
#include <LiquidCrystal.h>
// initialize the library with the
numbers of the interface pins
LiquidCrystal lcd(2,3,4,5,6,7,8);
DHT dht(DHTPIN, DHTTYPE);
void setup() {
// set up the LCD's number of
columns and rows:
pinMode(13,OUTPUT);
Serial.begin(9600);
lcd.begin(16, 2);
// Print a message to the LCD.
lcd.setCursor(0, 0);
lcd.print("PROJEK AKHIR
2");
lcd.setCursor(0, 1);
lcd.print(" HYGROMETER");
delay(3000);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(" ANDY
SINAGA");
lcd.setCursor(0, 1);
lcd.print(" 142411008");
lcd.setCursor(0,0);
lcd.print("METROLOGI &
INST");
delay(5000);
lcd.clear();
dht.begin();
}
void loop() {
// Wait a few seconds between
measurements.
// delay(2000);
// Reading temperature or humidity
takes about 250 milliseconds!
// Sensor readings may also be up
to 2 seconds 'old' (its a very slow sensor)
float h = dht.readHumidity();
// Read temperature as Celsius (the
default)
float t = dht.readTemperature();
// Read temperature as Fahrenheit
(isFahrenheit = true)
float f = dht.readTemperature(true);
humidity=0.0305*h;
temp=0.0390*t;
// Check if any reads failed and
exit early (to try again).
if (isnan(h) || isnan(t) ||
isnan(f)) {
lcd.print("Failed to read from
DHT sensor!");
return;
}
// Compute heat index in Fahrenheit
(the default)
float hif = dht.computeHeatIndex(f,
h);
// Compute heat index in Celsius
(isFahreheit = false)
float hic = dht.computeHeatIndex(t,
h, false);
lcd.setCursor(0, 0);
lcd.print("humidity ");
lcd.print(humidity);
lcd.print("%");
lcd.setCursor(0, 1);
lcd.print("temp ");
lcd.print(temp);
lcd.print(" C");
delay(500);
lcd.clear();
//digitalWrite(12,HIGH);
if(temp>=35)
{
digitalWrite(13,HIGH);
}
delay(5000);
lcd.clear();
dht.begin();
}
void loop() {
// Wait a few seconds between measurements.
// delay(2000);
// Reading temperature or humidity
takes about 250 milliseconds!
// Sensor readings may also be up
to 2 seconds 'old' (its a very slow sensor)
float h = dht.readHumidity();
// Read temperature as Celsius (the
default)
float t = dht.readTemperature();
// Read temperature as Fahrenheit
(isFahrenheit = true)
float f =
dht.readTemperature(true);
// Check if any reads failed and
exit early (to try again).
if (isnan(h) || isnan(t) ||
isnan(f)) {
lcd.print("Failed to read from
DHT sensor!");
return;
}
lcd.setCursor(0, 0);
lcd.print("humidity ");
lcd.print(h);
lcd.print("%");
lcd.setCursor(0, 1);
lcd.print("temp");
lcd.print(t);
lcd.print("C");
delay(500);
lcd.clear();
//digitalWrite(12,HIGH);
if(temp>35)
{
digitalWrite(13,HIGH);
}
else
{
digitalWrite(13,LOW);
}
Hasil
uji coba
1. Dapat mengetahui nilai suhu dan kelembaban udara
2. Sensor akan suhu untuk di dalam ruangan tersebut
Kesimpulan
1. Dapat mengetahui nilai suhu dan kelembaban udara
2. Sensor akan suhu untuk di dalam ruangan tersebut
Kesimpulan
Sensor DHT 11 merupakan sensor dengan
kalibrasi sinyal digital yang mampu
memberikan informasi suhu dan
kelembaban. Sensor ini tergolong komponen
yang memiliki tingkat stabilitas
yang baik, serta ditambah dengan kemampuan
mikrokontroler 8 bit seperti
Arduino. Koefisien kalibrasi DHT 11 disimpan dalam
OTP program memori, sehingga ketika
internal sensor mendeteksi sesuatu, maka
modul ini membaca
koefisien sensor.
Komentar
Posting Komentar