DATASHEET Ril
DATASHEET Ril
DOSEN PENGEMPU :
Galih Putra Riatma, S.ST., MT.
Nama Mahasiswa :
Specifications:
DHT22
DHT22 Specifications
HC-SR04
Pin Asignments
Specifications
Analisa Data
PIR Motion
Sensor PIR adalah sensor yang mendeteksi perubahan suhu yang disebabkan oleh gerakan
objek di sekitarnya. Sensor ini sangat umum digunakan dalam sistem keamanan dan
otomatisasi rumah cerdas.
Aplikasi Umum:
a. Sistem keamanan rumah
b. Otomatisasi ruang dalam rumah
c. Penghematan energi dengan otomatisasi pencahayaan
Keuntungan:
a. Dapat mendeteksi gerakan tanpa memerlukan kontak fisik.
b. Konsumsi daya rendah dalam mode istirahat.
c. Cocok untuk mendeteksi gerakan manusia.
Kekurangan
a. Rentang dan sudut deteksi terbatas.
b. Tidak dapat membedakan antara objek yang bergerak dengan sumber panas tetap.
Sensor DHT22
Sensor DHT22 adalah sensor digital yang digunakan untuk mengukur suhu dan kelembaban
udara. Ini adalah sensor presisi yang cocok untuk aplikasi yang membutuhkan pemantauan
suhu dan kelembaban dengan akurasi tinggi.
Aplikasi Umum:
b. Sistem pemantauan iklim dalam ruangan
c. Proyek hobi yang membutuhkan pemantauan suhu dan kelembaban
d. Otomasi rumah cerdas
Keuntungan:
a. Akurasi tinggi untuk pengukuran suhu dan kelembaban
b. Mudah digunakan dengan berbagai mikrokontroler
Kerugian:
a. Lebih mahal dibandingkan dengan beberapa sensor suhu dan kelembaban lainnya
• Sensor Ultrasonic
Untuk pengendalian kolam, apabila kolam terisi dan air berjarak kurang dari 20 cm maka
lampu akan menyala
• Sensor DHT22
Untuk mendeteksi keadaan suhu dan kelembapan disurabaya
Jika suhu mencapai lebih dari 34 derajat maka lampu akan menyala, suhu ini termasuk suhu
panas di kota Surabaya, sehingga masyarakat dihimbau untuk mencukupi kebutuhan air agar
tidak dehidrasi
Refrensi : wheater.com
Jika Kelembapan di bawah 20% maka lampu akan menyala, mengindikasikan udara kering
sehingga dihimbau untuk tidak keluar rumah dan bisa menimpulkan batuk dan penyakit
saluran pernafasan.
Refrensi : https://www.higienis.com/blog/humidity-guide/
2. SCREENSHOT RANGKAIAN
Saya menggunakan 3 sensor dan 4 buah LED, masing masing LED akan menyala sesuai
keadaan setiap sensor. PIR motion mempunyai 1 masukan, DHT 22 mempunyai 1 masukan,
sedangkan Ultrasonic mempunyai 1 masukan dan 1 keluaran
Pada sesnsor PIR Motion, saya menggunakan lampu merah untuk mengindikasikan ketika
sensor PIR Motion Mendeteksi gerakan, saya memakai block percabangan if. Saya juga
menambahkan keterangan jika sensor PIR Motion Mendeteksi gerakan
Pada Sensor Ultrasonic (HCRS04) Saya menggunakan lampu hijau untuk mengindikasikan
ketika Sensor Ultrasonic jaraknya kurang dari 20, saya menambahkan keterangan jarak untuk
memudahkan membaca. Saya menggunakan block percabangan If else.
Pada Sensor DHT 22 terlebih dulu saya menginstal library sensor tersebut dan memberi
keterangan nilai temperatur supaya memudahkan dalam membaca. Saya menggunakan lampu
biru ketika temperature bernilai lebih dari 34 dan menggunakan lampu kuning ketika
kelembapan kurang dari 20, disini daya menggunakan block percabangan If else pada kedua
keadaan tersebut.
Link Projek saya : https://wokwi.com/projects/377445576354933761
3. SOURCE CODE
#include "DHTesp.h"
#define ECHO_PIN 34
#define TRIG_PIN 12
#define DHT_PIN 22
#define PIR 23
#define RED 13
#define BLU 15
#define GRN 14
#define YLW 21
#define stop 250
DHTesp dhtSensor;
void setup() {
Serial.begin(115200);
pinMode(RED, OUTPUT);
pinMode(BLU, OUTPUT);
pinMode(GRN, OUTPUT);
pinMode(YLW, OUTPUT);
pinMode(TRIG_PIN, OUTPUT);
pinMode(ECHO_PIN, INPUT);
pinMode(PIR, INPUT);
dhtSensor.setup(DHT_PIN, DHTesp::DHT22);
}
void loop() {
TempAndHumidity data = dhtSensor.getTempAndHumidity();
Serial.println("Temp: " + String(data.temperature, 2) + "°C");
Serial.println("Humidity: " + String(data.humidity, 1) + "%");
Serial.println("---");
delay(2000);
if (distance <20) {
digitalWrite(GRN, HIGH);
} else {
digitalWrite(GRN, LOW);
}
float readDistanceCM() {
digitalWrite(TRIG_PIN, LOW);
delayMicroseconds(2);
digitalWrite(TRIG_PIN, HIGH);
delayMicroseconds(10);
digitalWrite(TRIG_PIN, LOW);
unsigned long duration = pulseIn(ECHO_PIN, HIGH);
return duration * 0.034 / 2;
}