1. Pendahuluan [Kembali]
Dalam kehidupan sehari-hari, menjemur pakaian
merupakan salah satu aktivitas rumah tangga yang tak terhindarkan. Di
negara-negara dengan iklim tropis seperti Indonesia, proses menjemur pakaian
sering kali bergantung pada cuaca. Cuaca yang tidak menentu, seperti hujan
tiba-tiba. sering kali menjadi kendala dalam menjemur pakaian secara manual.
Hal ini dapat menyebabkan pakaian yang dijemur tidak kering dengan sempurna
akibat cuaca yang berubah secara tiba tiba
Selain itu, aktivitas menjemur pakaian
secara manual juga membutuhkan waktu dan tenaga. Bagi sebagian orang, terutama
mereka yang memiliki kesibukan tinggi atau tinggal di apartemen dengan ruang
terbatas, menjemur pakaian bisa menjadi tantangan tersendiri. Dengan
perkembangan teknologi yang semakin pesat, kebutuhan akan solusi praktis dan
efisien dalam menjemur pakaian semakin meningkat.
Jemuran otomatis hadir sebagai inovasi
untuk menjawab permasalahan tersebut. Dengan menggunakan teknologi canggih,
jemuran otomatis dirancang untuk dapat menjemur pakaian secara efisien tanpa
tergantung pada kondisi cuaca. Sistem jemuran otomatis ini biasanya dilengkapi
dengan sensor DHT, PIR, LDR, TOUCH, & RAIN dengan mekanisme otomatis yang
dapat menjemur dan mengangkat pakaian secara otomatis.
Penggunaan jemuran otomatis
tidak hanya memberikan kemudahan bagi pengguna, tetapi juga berpotensi
meningkatkan efisiensi energi dan waktu. Misalnya, dengan adanya sensor hujan,
atap akan otomatis tertutup untuk melindungi pakaian agar tidak terkena hujan.
Hal ini sangat membantu orang-orang yang aktivitasnya cenderung banyak di luar
rumah dan tidak sempat pulang hanya untuk mengangkat jemuran saat hujan turun.
Maka dari itu dibutuhkannya inovasi jemuran berbasis teknologi untuk mengatasi
permasalahan ini.
2. Tujuan [Kembali]
Tujuan rancangan inovasi cerdas jemuran diantaranya:
1) Memberikan kemudahan bagi pengguna dalam pengontrolan penjemuran dan pengangkatan jemuran tanpa harus memantau jemuran sepanjang hari
2) Memberikan solusi praktis dan efisien bagi orang-orang yang memiliki kesibukan tinggi
3) Memaksimalkan penggunaan ruangan terbatas sebagai jemuran
3. Alat dan Bahan [Kembali]
1. Adaptor 12V 2 A
Spesifikasi:
Output DC-12V MURNI 2A
Adaptor DC 12Vol 2 AMP:
Input Voltage : AC 100-240V
Input Voltage Frequency : 50/60Hz
Output Voltage : DC 12V +/-5%
Total Output Current : 2Amp
Rippie&Noise:<100mv
Efficiency:>85%
2. Breadboard Power Supply
Spesifikasi:
- Untuk breadboard MB102
- Tegangan 5V, 3.3V
- Tegangan Input : 6.5-12V (DC) atau USB power
- Tegangan Output : 3.3V, 5V switchable
- Arus Maximum: Two way independent control
- Bisa di switch 0V, 3.3V, 5V
- On-board Two sets of 3.3V, 5V DC output internal leads
3. Breadboard
Spesifikasi:
- Solderless Breadboard 830 titik, terdiri dari 630 titik terminal dan 200 titik distribusi
- Setiap titik diidentifikasi dengan huruf dan angka untuk memudahkan pemakaian
- Re-usable, bisa dipakai berulang-ulang
- Low static, body plastik
- Bisa dimasuki kabel berukuran 20-29AWG
- Size: 165mm (L) x 55mm (W)
4. Resistor 100 ohm
Spesifikasi:
- Resistance : 100 Ohm
- Power Rating : 250 mW (1/4 W)
- Tolerance : 0.1 %
- Temperature Coefficient : 15 PPM / C
- Voltage Rating : 250 V
- Operating Temperature Range : - 55 C to + 155
C
- Length : 7.1 mm
- Diameter : 2.3 mm
5. Arduino
Spesifikasi
- Microcontroller : ATmega328P
- Operating Voltage : 5V
- Input Voltage (recommended) : 7-12V
- Input Voltage (limit) : 6-20V
- Digital I/O Pins : 14 (of which 6 provide PWM output)
- PWM Digital I/O Pins : 6
- Analog Input Pins : 6
- DC Current per I/O Pin : 20 mA
- DC Current for 3.3V Pin 50 mA
- Flash Memory : 32 KB (ATmega328P) of which 0.5
KB used by bootloader
- SRAM : 2 KB (ATmega328P)
- EEPROM : 1KB (ATmega328P)
- Clock Speed : 16 MHz
- Length : 68.6 mm
- Width : 53.4 mm
6. Touch Sensor
Spesifikasi
Konsumsi daya
rendah
Catu daya untuk 2 ~
5.5V DC
Dapat menggantikan
sentuhan tombol tradisional
Empat lubang
pemosisian sekrup M2 untuk pemasangan yang mudah
Output Pin Sink
Current (VCC = 3V, VOL = 0.6V): 8 mA
Arus pull-up pin
keluaran (VCC = 3V, VOH = 2.4V): 4 mA
7. DHT11
Spesifikasi
DHT11:
- Humidity measuring range: 20% -95% (0 degrees
-> 50 degrees) Humidity measurement error: + -5%
- Temperature measurement range: 0 degrees ->
50 degrees temperature measurement error: + -2
degrees
- Operating voltage 3.3V-5V
-
Operating current 0.3mA
- Output Type Digital Output
- with fixed bolt hole for easy installation
- small plates PCB size: 3.2cm* 1.4cm
8. PIR Sensor
Spesifikasi:
-
Product Type: HC--SR501 Body Sensor Module
- Operating voltage range: DC 4.5-20V
-
Operating current: 0.125mA
- Level output: High 3.3 V /Low 0V
- Trigger: L can not be repeated trigger/H can
be repeated trigger(Default repeated trigger)
- Delay time: 5-300S(adjustable) the range is
(second to tens of second)
- Block time: 2.5S(default)Can be made a
range(to tens of seconds
- Board Dimensions: 32mm*24mm
- Angle Sensor: Operation Temp: -15-+70 degrees
- Lens size sensor: Diameter:23mm(Default)
9. RainDrops Sensor Module
Specification:
- Small board PCB size: 3.2cm x 1.4cm
- Operating voltage: 3.3V-5V
- Voltage: 5V
- Tegangan kerja 3.3V - 5V
- Driving ability over 15mA
10. LDR Sensor Module
Spesifikasi:
-
Tegangan kerja 3.3V - 5V
- Arus
kerja 3.5nA
- Output digital berupa 0 dan 1
- Dengan lobang baut untuk instalasi
- Ukuran 3cm x 1.6cm
- Dilengkapi indikator power (merah) dan
indikator deteksi (hijau)
- Menggunakan pembanding LM393 comparator yang
stabil
11. LCD I2C
Spesifikasi:
- LCD Karakter 1602 dengan I2C modul untuk
Arduino
- Jenis LCM: Karakter
-
Working Current 1,5 mA
- Menampilkan 2 baris X 16-karakter.
- Tegangan: 5V DC.
- Dimensi modul: 80mm x 35mm x 11mm.
- luas area: 64.5mm x 16mm
- Fitur IIC / I2C 4 kabel
12. Motor Servo
Spesifikasi:
- Weight: 9g
- Servo 180 derajat
- Dimension: 22mm x 11.5mm x 22.5mm
- Stall torque: 1.8kg/cm(4.8v)
- Gear type: POM gear set
- Operating speed: 0.1sec/60degree(4.8v)
- Operating voltage: 4.8v
- Arus
kerja 2,5 kg: 250mA
- Temperature range: 0_ 55
- Dead band width: 1us
- Power Supply: Through External Adapter
- servo wire length: 25 cm
13. LED White
Spesifikasi:
-
Colour : White
- Size : 5mm
- Lens Colour : Clear white
- Forward Current : 20mA
- Max Power Dissipation : 80mw Max Continuous
- Operation Temperature : -40 ~ 85C
- Storage Temperature : -40 ~ 100C
- Pin length : 29.5mm
14. Jumper
Spesifikasi:
- Panjang : 15cm
- Tipe : Male to Male/Male To Female/ Female To Female
- Pitch : 2.54mm pin header
1) Arduino
Uno
Arduino merupakan rangkaian elektronik open source
yang di dalamnya terdapat komponen utama, yaitu sebuah chip mikrokontroler
dengan jenis AVR. Mikrokontroler adalah chip atau IC (integrated circuit) yang
bisa diprogram menggunakan komputer. Tujuan memberikan program pada
mikrokontroler adalah agar rangkaian elektronik dapat membaca input, memproses
input dan kemudian menghasilkan output sesuai yang diinginkan. Mikrokontroler
bertugas sebagai “otak‟ yang mengendalikan input, proses dan output sebuah
rangkaian elektronik.
ATMega328P mempunyai kaki standar 28 pin yang
mempunyai fungsi yang berbeda- beda baik sebagai port atau pun sebagai fungsi
yang lain. Konfigurasi 18 pin tersebut antara lain:
1. VCC merupakan pin
yang berfungsi sebagai masukan catu daya.
2. GND merupakan pin
Ground.
3. Port B (PB0 – PB7)
merupakan pin masukan/keluaran dua arah (full duplex) dan masing-masing port
memiliki fungsi khusus.
4. Port C (PC0 – PC6)
merupakan pin masukan/keluaran dua arah (full duplex) dan masing-masing port
memiliki fungsi khusus.
5. Port D (PD0 – PD7)
merupakan pin masukan/keluaran dua arah (full duplex) dan masing-masing port
memiliki fungsi khusus.
6. RESET merupakan pin
yang digunakan untuk mengatur atau menjalankan ulang program awal yang sudah
dimasukkan ke mikrokontroler.
7. XTAL1 dan XTAL2,
merupakan pin masukan external clock.
8. AVCC merupakan pin
masukan tegangan ADC (Analog-Digital Converter).
9. AREF merupakan pin
masukan referensi tegangan ADC.
2) Komunikasi
UART
UART (Universal
Asynchronous Receiver-Transmitter) adalah bagian perangkat keras komputer yang
menerjemahkan antara bit-bit paralel data dan bit-bit serial. UART biasanya
berupa sirkuit terintegrasi yang digunakan untuk komunikasi serial pada
komputer atau port serial perangkat periperal.
Data dikirimkan secara paralel dari data bus ke
UART1. Pada UART1 ditambahkan start bit, parity bit, dan stop bit kemudian
dimuat dalam satu paket data. Paket data ditransmisikan secara serial dari Tx
UART1 ke Rx UART2. UART2 mengkonversikan data dan menghapus bit tambahan,
kemudia di transfer secara parallel ke data bus penerima.
3) Resistor
Resistor merupakan komponen elektronika dasar yang
digunakan untuk membatasi jumlah arus yang mengalir dalam satu rangkaian.Sesuai
dengan namanya, resistor bersifat resistif dan umumnya terbuat dari bahan
karbon. Resistor memiliki simbol seperti gambar dibawah ini :
Resistor mempunyai nilai resistansi (tahanan)
tertentu yang dapat memproduksi tegangan listrik di antara kedua pin dimana
nilai tegangan terhadap resistansi tersebut berbanding lurus dengan arus yang
mengalir, berdasarkan persamaan Hukum OHM :
Dimana V adalah tegangan, I adalah kuat arus, dan R adalah
Hambatan.
Di dalam resistor, terdapat ketentuan untuk membaca
nilai resistor yang diwakili dengan kode warna dengan ketentuan di bawah ini :
Sebagian besar resistor yang kita lihat memiliki
empat pita berwarna. Oleh karena itu ada cara membacanya seperti ketentuan
dibawah ini:
1. Dua pita pertama
dan kedua menentukan nilai dari resistansi
2. Pita ketiga
menentukan faktor pengali, yang akan memberikan nilai resistansi.
3. Dan terakhir, pita
keempat menentukan nilai toleransi.
Rumus Resistor:
Seri: Rtotal = R1 + R2 + R3 + … + Rn
Dimana:
Rtotal = Total Nilai Resistor
R1 = Resistor ke-1
R2 = Resistor ke-2
R3 = Resistor ke-3
Rn = Resistor ke-n
Paralel: 1/Rtotal = 1/R1 + 1/R2 + 1/R3 + …+ 1/Rn
Dimana:
Rtotal = Total Nilai Resistor
R1 = Resistor ke-1
R2 = Resistor ke-2
R3 = Resistor ke-3
Rn = Resistor ke-n
4) LED (Light Emitting Diode)
Light Emitting Diode atau sering disingkat dengan LED adalah
komponen elektronika yang dapat memancarkan cahaya monokromatik ketika
diberikan tegangan maju. Warna-warna Cahaya yang dipancarkan oleh
LED tergantung pada jenis bahan semikonduktor yang dipergunakannya.
LED merupakan keluarga dari Dioda yang terbuat dari
Semikonduktor. Cara kerjanya pun hampir sama dengan Dioda yang memiliki dua
kutub yaitu kutub Positif (P) dan Kutub Negatif (N). LED hanya akan memancarkan
cahaya apabila dialiri tegangan maju (bias forward) dari Anoda menuju ke
Katoda.
LED terdiri dari sebuah chip semikonduktor yang di
doping sehingga menciptakan junction P dan N. Yang dimaksud dengan proses
doping dalam semikonduktor adalah proses untuk menambahkan ketidakmurnian
(impurity) pada semikonduktor yang murni sehingga menghasilkan karakteristik
kelistrikan yang diinginkan. Ketika LED dialiri tegangan maju atau bias forward
yaitu dari Anoda (P) menuju ke Katoda (K), Kelebihan Elektron pada N-Type
material akan berpindah ke wilayah yang kelebihan Hole (lubang) yaitu wilayah yang
bermuatan positif (P-Type material). Saat Elektron berjumpa dengan Hole akan
melepaskan photon dan memancarkan cahaya monokromatik (satu warna).
LED atau Light Emitting Diode yang memancarkan
cahaya ketika dialiri tegangan maju ini juga dapat digolongkan sebagai
Transduser yang dapat mengubah energi listrik menjadi energi cahaya.
Rumus untuk Menentukan Besaran
Resistansi dari Sebuah Resistor
Resistor (ohm) = (Tegangan Input -
Tegangan LED) / Arus LED
Dimana :
Nilai resistansi dari
resistor adalah R (ohm)
Tegangan input adalah Vs (volt)
Tegangan LED adalah VL (volt)
Arus maju LED adalah I (ampere)
5)
Touch Sensor
Touch
sensor adalah sensor yang mendeteksi sentuhan fisik pada permukaannya. Ketika
permukaan sensor disentuh, ada perubahan dalam arus atau tegangan yang dihasilkan,
yang kemudian diinterpretasikan sebagai input. Ini sering digunakan dalam
aplikasi seperti layar sentuh atau tombol sentuh.
Pada saat disentuh oleh jari, sensor akan mendeteksi aliran arus listrik pada tubuh manusia karena tubuh manusia dapat mengalirkan listrik. Data akan berlogika 1 (HIGH) saat disentuh oleh jari dan akan berlogika 0 (LOW) saat tidak disentuh.
Di sini kami menggunakannya untuk menurunkan jemuran agar lebih rendah
6)
Sensor DHT11
Sensor DHT11 adalah
sensor suhu dan kelembaban. Ini menggunakan sensor semikonduktor untuk mengukur
suhu dan kelembaban udara sekitarnya. Sensor ini mengubah nilai suhu dan
kelembaban menjadi sinyal digital yang kemudian dapat dibaca oleh
mikrokontroler atau perangkat lainnya.
DHT11
merupakan sebuah sensor kelembaban dan suhu, komponen ini mempunyai output
sinyal digital yang dikalibrasi dengan sensor kelembaban dan suhu yang
kompleks, sinyal transmisi jarak pada ruangan hingga 20 meter. Sensor ini dapat
mengukur data kelembaban beserta suhu, kemudian data yang diperoleh, secara
otomatis setiap 2 detil sekali sensor ini akan mengirimkan sinyal data ke
pinout data pada sensor tersebut.
Disini kami menggunakannya
untuk mengecek suhu dan kelembapan luar ruangan
Respon
suhu: Grafik respon suhu umumnya berupa
garis linier yang mengikuti perubahan suhu actual.
Respon
kelembaban: Grafik respon kelembaban umumnya
berupa garis eksponensial yang mengikuti perubahan kelembaban aktual.
7) Sensor PIR
PIR (Passive Infrared Receiver) merupakan sebuah sensor
berbasiskan infrared. Akan tetapi, tidak seperti sensor infrared kebanyakan
yang terdiri dari IR LED dan fototransistor. PIR tidak memancarkan apapun
seperti IR LED. Sesuai dengan namanya ‘Passive’, sensor ini hanya merespon
energi dari pancaran sinar inframerah pasif yang dimiliki oleh setiap benda
yang terdeteksi olehnya. Benda yang bisa dideteksi oleh sensor ini biasanya
adalah tubuh manusia Sensor PIR mendeteksi perubahan
suhu yang disebabkan oleh gerakan benda-benda di sekitarnya. Ketika benda
bergerak, perbedaan suhu diidentifikasi oleh sensor dan menghasilkan keluaran
listrik.
Sensor PIR ini bekerja dengan menangkap energi panas yang dihasilkan dari pancaran sinar inframerah pasif yang dimiliki setiap benda dengan suhu benda diatas nol mutlak. Seperti tubuh manusia yang memiliki suhu tubuh kira-kira 32 derajat celcius, yang merupakan suhu panas yang khas yang terdapat pada lingkungan. Pancaran sinar inframerah inilah yang kemudian ditangkap oleh Pyroelectric sensor yang merupakan inti dari sensor PIR ini sehingga menyebabkan Pyroelectic sensor yang terdiri dari galium nitrida, caesium nitrat dan litium tantalate menghasilkan arus listrik. Mengapa bisa menghasilkan arus listrik? Karena pancaran sinar inframerah pasif ini membawa energi panas. Prosesnya hampir sama seperti arus listrik yangterbentuk ketika sinar matahari mengenai solar cell. Ini sering digunakan dalam sistem keamanan atau otomatisasi rumah untuk mendeteksi gerakan manusia atau hewan, Disini kami menggunakannya Mendeteksi manusia diruangan untuk menghidupkan lampu
Grafik Respon Pir terhadap suhu
Grafik sensor pir terhadap jarak, kecepatan,arah objek:
8)
Sensor Rain:
Sensor Rain mendeteksi keberadaan air, seperti hujan atau embun. Ada beberapa jenis sensor hujan, tetapi umumnya mereka menggunakan konduktivitas air untuk mendeteksi kelembaban. Ketika air menyentuh permukaan sensor, itu mengubah resistansi listriknya, yang kemudian dapat diukur.
Berikut ini adalah gambar grafik respon sensitifiras sensor rain
9) Sensor LDR (Light Dependent
Resistor)
Sensor LDR mengubah
resistansi berdasarkan intensitas cahaya yang diterimanya. Semakin terang
cahaya, semakin rendah resistansinya, dan sebaliknya. Ini memungkinkan sensor
untuk mendeteksi perubahan cahaya di sekitarnya. Umumnya digunakan dalam
aplikasi seperti kontrol lampu otomatis atau perangkat pengatur kecerahan
layar. Dsini kami menggunakannya untuk mendeteksi cahaya matahari.
Grafik respon penurunan daya disipasi sensor LDR:
Grafik respon resistansi LDR:
10)
LCD (Liquid Crystal Display)
LCD adalah layar yang menggunakan kristal cair untuk menampilkan informasi. Ini terdiri dari banyak piksel yang masing-masing dapat dikendalikan untuk menampilkan teks atau grafik. Biasanya, informasi ditampilkan dengan mengatur kecerahan atau kegelapan piksel menggunakan tegangan listrik.
Pinout LCD 16x2 ditunjukkan di bawah
ini.
· Pin1
(Ground / Source Pin): Ini adalah pin tampilan GND, digunakan untuk
menghubungkan terminal GND unit mikrokontroler atau sumber daya.
· Pin2
(VCC / Source Pin): Ini adalah pin catu tegangan pada layar, digunakan untuk
menghubungkan pin catu daya dari sumber listrik.
· Pin3
(V0 / VEE / Control Pin): Pin ini mengatur perbedaan tampilan, yang digunakan
untuk menghubungkan POT yang dapat diubah yang dapat memasok 0 hingga 5V.
· Pin4
(Register Select / Control Pin): Pin ini berganti-ganti antara perintah atau
data register, digunakan untuk menghubungkan pin unit mikrokontroler dan
mendapatkan 0 atau 1 (0 = mode data, dan 1 = mode perintah).
· Pin5
(Pin Baca / Tulis / Kontrol): Pin ini mengaktifkan tampilan di antara operasi
baca atau tulis, dan terhubung ke pin unit mikrokontroler untuk mendapatkan 0
atau 1 (0 = Operasi Tulis, dan 1 = Operasi Baca).
· Pin
6 (Mengaktifkan / Mengontrol Pin): Pin ini harus dipegang tinggi untuk
menjalankan proses Baca / Tulis, dan terhubung ke unit mikrokontroler &
terus-menerus dipegang tinggi.
· Pin
7-14 (Pin Data): Pin ini digunakan untuk mengirim data ke layar. Pin ini
terhubung dalam mode dua-kawat seperti mode 4-kawat dan mode 8-kawat. Dalam
mode 4-kawat, hanya empat pin yang terhubung ke unit mikrokontroler seperti 0
hingga 3, sedangkan dalam mode 8-kawat, 8-pin terhubung ke unit mikrokontroler
seperti 0 hingga 7.
· Pin15
(+ve pin LED): Pin ini terhubung ke +5V
· Pin
16 (-ve pin LED): Pin ini terhubung ke GND.
Layar LCD 16 x 2
ini memiliki 16 Kolom dan 2 Baris . Baris ke-1 dari modul ini memiliki total 16
kolom 0 hingga 15 dan posisi baris pertama adalah 0. Juga, baris ke-2 memiliki
total 16 kolom 0 hingga 15 dan posisi baris kedua adalah posisi 1. Jadi jumlah
total kolom adalah 16 x 2 = 32. Ini berarti modul LCD 16 x 2 dapat menampilkan
32 karakter secara bersamaan
11) Motor Servo
Motor servo adalah jenis motor listrik yang
dirancang untuk memberikan output yang presisi dalam menyelesaikan pergerakan
tertentu. Motor ini dilengkapi dengan kontroler yang memungkinkan presisi
tinggi dalam mengatur posisi atau sudut rotor. Prinsip kerja motor servo
didasarkan pada umpan balik atau feedback yang terus-menerus dari posisi rotor.
Prinsip kerja motor servo:
1. Umpan Balik
(Feedback): Motor servo menggunakan sensor umpan balik, seperti potensiometer,
enkoder, atau resolver, untuk terus memonitor posisi atau sudut rotor.
2. Kontroler:
- Kontroler servo
menerima sinyal perintah untuk mencapai posisi tertentu
- Kontroler membandingkan posisi aktual
(yang diberikan oleh sensor umpan balik) dengan posisi yang diminta.
3. Error Signal:
- Jika terdapat perbedaan
antara posisi aktual dan yang diminta, tercipta sinyal kesalahan (error
signal).
4. Sinyal Penggerak
(Drive Signal):
- Kontroler
menghasilkan sinyal penggerak yang disesuaikan berdasarkan error signal.
- Sinyal
penggerak mengontrol daya yang disuplai ke motor untuk mengoreksi perbedaan
posisi.
5. Pergerakan Presisi:
- Motor
servo merespons dengan mengubah posisi rotor untuk mengurangi error posisi.
- Proses
ini berlanjut sampai posisi yang diminta tercapai.
Motor servo memiliki
respon sudut terhadap sinyal kontrol. Grafik responnya umumnya
berupa garis linier yang mengikuti nilai sudut yang diberikan.
5. Prosedur [Kembali]
a. Prosedur [Kembali]
Prosedur percobaan:
1. Siapkan komponen yang dibutuhkan
2. Susun rangkaian sebagaimana yang dibutuhkan
3. Inputkan codingan Arduino
4. Jalankan rangkaian
5. Lakukan koreksi jika terjadi error, jika tidak terjadi error maka rangkaian berhasil dan selesai.
b. Hardware [Kembali]
Hardware
c. Rangkaian Simulasi dan Prinsip Kerja [Kembali]
Prinsip Kerja
Rangkaian
ini menggunakan dua buah Arduino yang terhubung melalui komunikasi UART.
Arduino 1 terhubung dengan LCD dan lima sensor diantara sensor PIR, touch,
DHT11, LDR, dan rain. Pada Arduino 1 ini LCD berfungsi sebagai output untuk
menampilkan suhu dan kelembaban dari inputan sensor DHT11. Sensor lainnya juga
berfungsi sebagai input. Sedangkan Arduino 2 terhubung dengan dua motor servo
yang akan membukakan atap dan mengangkat jemuran serta terhubung dengan LED
yang akan menerangi rooftop. Komunikasi UART akan mengirimkan data inputan dari
Arduino 1 ke Arduino 2 melalui pin TX dan RX yang mana pin TX Arduino 1
dihubungkan ke pin RX Arduino 2, begitu sebaliknya.
Sensor
LDR
mendeteksi intensitas cahaya diatas atap untuk mengetahui malam atau siang.
Pembacaan output LDR akan diubah menjadi rentang tegangan 0-5V. Ketika tegangan
output LDR lebih dari 4 V maka Arduino 1 akan membaca kondisi ini sebagai
malam, sedangkan ketika tegangan output LDR kurang dari 4 V maka Arduino 1 akan
membaca kondisi ini sebagai siang. Ketika tegangan LDR > 4 V (malam) maka
Arduino 1 akan mengirimkan pesan “B” melalui komunikasi UART ke Arduino 2.
Kemudian Arduino 2 akan menerima pesan “B”, maka Arduino akan menurunkan
jemuran dengan cara menggerakan servo jemuran ke derajat 0 dan Arduino akan
menutup atap dengan cara menggerakan servo atap ke derajat 0. Setelah itu,
Arduino 1 akan mengecek apakah sensor PIR aktif atau tidak.
Sensor
PIR
berfungsi untuk mendeteksi keberadaan orang di rooftop. Ketika orang terdeteksi
maka sensor PIR akan berlogika HIGH, namun sesuai dengan program Arduino, LED
baru dinyalakan jika sensor LDR mendeteksi malam (yaitu tegangan output LDR
> 4). Meskipun pada siang hari sensor PIR aktif maka LED tidak akan hidup.
Jadi ketika tegangan output LDR lebih dari 4 V dan sensor PIR berlogika high,
maka Arduino akan mengirimkan pesan “C” melalui komunikasi UART ke Arduino 2.
Kemudian Arduino 2 akan menerima pesan “C”, maka Arduino akan memberi logika
HIGH ke pin A2 yang terhubung ke LED sehingga LED menyala. Sedangkan PIR tidak
mendeteksi keberadaan orang lagi atau PIR berlogika LOW, maka Arduino 1 akan
mengirimkan pesan “D” melalui komunikasi UART ke Arduino 2. Kemudian Arduino 2
akan menerima pesan “D”, maka Arduino akan memberi logika LOW ke pin A2 yang
terhubung ke LED sehingga LED mati.
Namun,
ketika tegangan LDR <= 4 V (siang) maka Arduino 1 akan mengirimkan pesan “A”
melalui komunikasi UART ke Arduino 2. Kemudian Arduino 2 akan menerima pesan
“A”, maka Arduino akan membuka atap dengan cara menggerakan servo atap ke
derajat 90 dan Arduino akan menaikkan jemuran dengan cara menggerakan servo
jemuran ke derajat 180. Kemudian, Arduino 1 akan mengecek apakah sensor Touch
berlogika HIGH atau LOW.
Sensor
Touch ini berfungsi untuk menurunkan jemuran ketika
membutuhkannya. Ketika sensor touch disentuh maka sensor touch akan berlogika
HIGH selama disentuh dan ketika sentuhannya dilepas maka sensor touch akan
berlogika LOW. Arduino 1 akan memproses perintah menurunkan jemuran ketika LDR
dalam kondisi mendeteksi siang (tegangan
LDR <= 4 V) dan sensor touch aktif, maka Arduino 1 tidak akan memproses
input sensor touch ketika malam hari (karena jemurannya udah turun jadi tidak
perlu diturunkan ketika malam hari). Ketika tegangan output LDR <= 4 V dan
sensor touch berlogika high, maka Arduino 1 akan mengirimkan pesan “B” melalui
komunikasi UART ke Arduino 2. Kemudian Arduino 2 akan menerima pesan “B”, maka
Arduino akan menurunkan jemuran dengan cara menggerakan servo jemuran ke
derajat 0 dan Arduino akan menutup atap dengan cara menggerakan servo atap ke
derajat 0.
Sensor
Rain berfungsi untuk mendeteksi adanya hujan di atas atap.
Sensor ini terhubung ke Arduino 1 dan bekerja dengan menggunakan interrupt
untuk mendeteksi tetesan air hujan. Saat hujan terdeteksi, interrupt akan aktif
dan mengatur flag rainDetected
menjadi
true. maka Arduino 1 akan mengirimkan pesan “B” melalui komunikasi UART ke
Arduino 2. Kemudian Arduino 2 akan menerima pesan “B”, maka Arduino akan
menurunkan jemuran dengan cara menggerakan servo jemuran ke derajat 0 dan
Arduino akan menutup atap dengan cara menggerakan servo atap ke derajat 0.
Sensor
DHT11 berfungsi untuk membaca suhu dan kelembaban diatas
atap. Arduino akan menerima input sensor DHT11 dan Arduino akan membaca inputan
menggunakan library dht. Pembacaan suhu dan kelembaban ini kemudian di
tampilkan di LCD dimana baris pertama LCD akan menampikan suhu dan baris kedua
akan menampikan kelembaban.
B.
Flowchart Arduino 2
A.
Arduino 1
#include <DHT.h> #include <LiquidCrystal_I2C.h> LiquidCrystal_I2C lcd(0x27, 16, 2); // Define sensor pins #define Touch 4 #define PIR 3 #define Rain 2 #define LDR A1 #define DHTPIN A0 #define DHTTYPE DHT11 // Initialize DHT sensor DHT dht(DHTPIN, DHTTYPE); void setup() { lcd.begin(16, 2); lcd.init(); lcd.backlight(); Serial.begin(9600); pinMode(Touch, INPUT); pinMode(PIR, INPUT); pinMode(Rain, INPUT); pinMode(LDR, INPUT); dht.begin(); } void loop() { // Sensor DHT11 float t = dht.readTemperature(); float h = dht.readHumidity(); lcd.clear(); lcd.setCursor(0, 0); lcd.print("Suhu: "); lcd.print(t); Serial.println(t); lcd.setCursor(0, 1); lcd.print("Kelembaban: "); lcd.print(h); Serial.println(h); delay(100); // Sensor LDR int Malam = analogRead(LDR); float voltageLDR = Malam * (5.0 / 1023.0); if (voltageLDR > 4) { // Malam Serial.write('B'); // Sensor PIR delay(1000); if (digitalRead(PIR) == HIGH) { Serial.write('C'); Serial.println("PIR aktif"); } else { Serial.write('D'); Serial.println("PIR tidak aktif"); } delay(1000); Serial.println("Malam"); } else { // Siang // Sensor Touch delay(1000); if (digitalRead(Touch) == HIGH || digitalRead(Rain) == LOW) { Serial.write('B'); Serial.println("Touch atau rain Aktif"); } else { Serial.write('A'); Serial.println("Siang"); } } Serial.println(voltageLDR); delay(100); // Add a small delay to avoid spamming the serial communication } |
B. Slave
#include <Servo.h>
const int LED = A2; Servo motorAtap; Servo motorJemuran;
void setup() { Serial.begin(9600);
pinMode(LED, OUTPUT); motorAtap.attach(A1); motorJemuran.attach(A0); }
void loop() { if (Serial.available()) { char input = Serial.read(); switch (input) { case 'A'://Buka motorAtap.write(90); delay(2000); motorJemuran.write(180); break; case 'B'://Tutup motorJemuran.write(0); delay(2000); motorAtap.write(0); break; case 'C': //Terang digitalWrite(LED, HIGH); break; case 'D'://Mati digitalWrite(LED, LOW); break; } delay(100); } } |
- File HTML [klik]
- File Rangkaian Proteus [klik]
- Code Arduino 1 [klik]
- Code Arduino 2 [klik]
- Video Demo [klik]
- Datasheet Arduino Uno [klik]
- Datasheet LED [klik]
- Datasheet LCD [klik]
- Datasheet Resistor [klik]
- Datasheet Sensor PIR [klik]
- Datasheet Sensor Touch [klik]
- Datasheet Sensor LDR [klik]
- Datasheet Sensor DHT11 [klik]
- Datasheet Sensor Rain [klik]
- Datasheet Motor servo [klik]
- Library Sensor Touch [klik]
- Library Sensor PIR [klik]
- Library Sensor Rain [klik]
- Softcopy Laporan Akhir [klik]
Tidak ada komentar:
Posting Komentar