1. Pendahuluan [Kembali]
Ruang belajar yang nyaman dan kondusif merupakan salah satu faktor penting dalam mendukung proses belajar mengajar. Kenyamanan ini bisa dipengaruhi oleh berbagai faktor seperti suhu ruangan, kualitas udara, serta pencahayaan. Di era teknologi saat ini, berbagai metode dan teknologi terus dikembangkan untuk menciptakan lingkungan belajar yang optimal. Salah satu metode yang mulai banyak digunakan adalah sistem kamar belajar pintar atau SmartSense: Ruang belajar cerdas
SmartSense: Ruang
belajar cerdas didefinisikan sebagai ruangan yang dilengkapi dengan teknologi
otomatisasi untuk mengatur kondisi lingkungan secara optimal. Dengan penggunaan
teknologi ini, berbagai aspek seperti suhu, kelembaban, pencahayaan, dan keamanan
dapat dikontrol secara otomatis sehingga menciptakan lingkungan yang ideal bagi
para pelajar. Kami membuat SmartSense: Ruang belajar cerdas dengan tujuan
pelajar akan dapat belajar dengan baik dan meningkatkan produktifitas.
SmartSense ini dilengkapi sensor RFID untuk membuka pintu sehingga tidak semua
orang bisa masuk kedalam ruangan. Sistem juga tedapat
sensor LM35 dan DHT22 yang nantinya akan dapat mengatur AC dan Jendela. Sistem ini memiliki sensor PIR untuk
menghidupkan lampu secara otomatis. Untuk keselamatan, sistem dilengkapi dengan
sensor gas MQ2 yang nantinya akan membunyikan buzzer sebagai peringatan
terdapat gas berbahaya dan mudah terbakar.
1. Untuk mengetahui pemakaian
mikroprosesor dan mikrokontroler pada prototype yang dibuat
2. Untuk menghasilkan alat yang
dapat bekerja secara otomatis berbasis mikroprosesor dan mikrokontroler
- Arduino
uno
- Sensor
PIR
- Sensor
RFID
- Sensor
Gas MQ2
- Sensor
DHT22
- Sensor
LM35
- LCD
16 x 2
- Buzzer
- Adaptor
12V-2A
- Motor
driver L293D
- Motor
DC
- Motor
servo SG 90
- LED
- Jumper
4. Dasar Teori [Kembali]
- PWM
PWM (Pulse Width Modulation) adalah salah satu teknik modulasi dengan mengubah lebar pulsa (duty cylce) dengan nilai amplitudo dan frekuensi yang tetap. Satu siklus puls merupakan kondisi high kemudian berada di zona transisi ke kondisi low. Lebar pulsa PWM berbanding lurus dengan amplitudo sinyal asli yang belum termodulasi. Duty Cycle adalah perbandingan antara waktu ON (lebar pulsa High) dengan perioda. Duty Cycle biasanya dinyatakan dalam bentuk persen (%).
1. Duty Cycle = tON / total
2. tON = Waktu ON atau Waktu dimana tegangan keluaran berada pada posisi tinggi (high atau 1)
3. tOFF = Waktu OFF atau Waktu dimana tegangan keluaran berada pada posisi rendah (low atau 0)
4. ttotal = Waktu satu siklus atau penjumlahan antara tON dengan tOFF atau disebut juga dengan “periode satu gelombang”Pada board Arduino Uno, pin yang dapat digunakan untuk PWM adalah pin yang ditandai dengan tilde (~), yaitu pin 3, 5, 6, 9, 10, dan 11. Pin-pin ini dapat berfungsi sebagai input atau output analog. Untuk menggunakan PWM pada pin ini, dapat digunakan perintah analogWrite();.
PWM pada Arduino bekerja pada frekuensi 500Hz, artinya terdapat 500 siklus dalam satu detik. Setiap siklus dapat diberikan nilai dari 0 hingga 255. Ketika diberi nilai 0, pin tersebut akan selalu bernilai 0 volt. Jika diberi nilai 255, pin akan selalu bernilai 5 Volt sepanjang siklus. Dengan nilai 127 (50% dari 255), setengah siklus akan bernilai 5 Volt dan setengahnya lagi 0 volt. Jika diberi nilai 64 (25% dari 255), maka selama 1/4 siklus akan bernilai 5 Volt dan 3/4 siklus lainnya akan bernilai 0 volt, dan ini terjadi 500 kali dalam satu detik.
- ADC
ADC atau Analog to Digital Converter adalah perangkat elektronik yang digunakan untuk menghubungkan sinyal analog ke sistem digital. Fungsi utama dari ADC adalah mengubah sinyal analog menjadi sinyal digital dalam bentuk kode digital. Ada dua faktor penting dalam kinerja ADC, yaitu kecepatan sampling dan resolusi.
Kecepatan sampling menunjukkan seberapa sering perangkat dapat mengonversi sinyal analog ke digital dalam interval waktu tertentu, yang biasanya dinyatakan dalam sampel per detik (SPS). Sementara itu, resolusi menunjukkan tingkat ketelitian pengukuran. Pada Arduino, resolusinya adalah 10 bit, yang berarti nilai digital berkisar antara 0 hingga 1023. Dengan tegangan referensi 5 volt, ADC pada Arduino dapat menangani sinyal analog dengan rentang tegangan 0 hingga 5 volt. Arduino menggunakan pin analog input yang ditandai dengan kode A (A0 hingga A5 pada Arduino Uno) untuk membaca sinyal input analog, dengan fungsi analogRead(pin); untuk mengambil data sinyal tersebut.
- Mikrokontroler
Dapat dilihat pada Gambar 1, Arduino Uno adalah board mikrokontroler berbasis ATmega328 (datasheet). Memiliki 14 pin input dari output digital dimana 6 pin input tersebut dapat digunakan sebagai output PWM dan 6 pin input analog, 16 MHz osilator kristal, koneksi USB, jack power, ICSP header, dan tombol reset.
Setiap 14 pin digital pada arduino uno dapat digunakan sebagai input dan output, menggunakan fungsi pinMode(), digitalwrite(), dan digitalRead(). Fungsi fungsi tersebut beroperasi di tegangan 5 volt, Setiap pin dapat memberikan atau menerima suatu arus maksimum 40 mA dan mempunyai sebuah resistor pull-up (terputus secara default) 20-50 kOhm.
Spesifikasi Arduino uno
Adapun block diagram mikrokontroler ATMega 328P dapat dilihat pada gambar berikut:
Block diagram dapat digunakan untuk memudahkan / memahami bagaimana kinerja dari mikrokontroler ATMega 328P.Pin-pin ATMega 328P:
- Komunikasi
- Universal Asynchronous Receiver Transmitter
(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 periperalCara Kerja Komunikasi UART:
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, kemudian ditransfer secara parallel ke data bus penerima. - Serial Peripheral Interface (SPI)
Serial Peripheral Interface (SPI) merupakan salah satu mode komunikasi serial synchrounous kecepatan tinggi yang dimiliki oleh ATmega 328. Komunikasi SPI membutuhkan 3 jalur yaitu MOSI, MISO, dan SCK. Melalui komunikasi ini data dapat saling dikirimkan baik antara mikrokontroler maupun antara mikrokontroler dengan peripheral lain di luar mikrokontroler.1. MOSI: Master Output Slave Input artinya jika dikonfigurasi sebagai master maka pin MOSI sebagai output tetapi jika dikonfigurasi sebagai slave maka pin MOSI sebagai inputSS/CS: Slave Select / Chip Select adalah jalur master memilih slave mana yang akan dikirimkan data.
2. MISO: Master Input Slave Output artinya jika dikonfigurasi sebagai master maka pin MISO sebagai input tetapi jika dikonfigurasi sebagai slave maka pin MISO sebagai output.
3. SCLK: Clock jika dikonfigurasi sebagai master maka pin CLK berlaku sebagai output tetapi jika dikonfigurasi sebagai slave maka pin CLK berlaku sebagai input.
Cara Kerja Komunikasi SPI:
Sinyal clock dialirkan dari master ke slave yang berfungsi untuk sinkronisasi. Master dapat memilih slave mana yang akan dikirimkan data melalui slave select, kemudian data dikirimkan dari master ke slave melalui MOSI. Jika master butuh respon data maka slave akan mentransfer data ke master melalui MISO. - Inter Integrated Circuit(I2C)
Inter Integrated Circuit atau sering disebut I2C adalah standar komunikasi serial dua arah menggunakan dua saluran yang didisain khusus untuk mengirim maupun menerima data. Sistem I2C terdiri dari saluran SCL (Serial Clock) dan SDA (Serial Data) yang membawa informasi data antara I2C dengan pengontrolnya.5. ACK/NACK bit berfungsi sebagai pemberi kabar jika data frame ataupun address frame telah diterima receiver.Cara Kerja Komunikasi I2C:
1. Pada I2C, data ditransfer dalam bentuk message yang terdiri dari kondisi start, Address Frame, R/W bit, ACK/NACK bit, Data Frame 1, Data Frame 2, dan kondisi Stop.
2. Kondisi start dimana saat pada SDA beralih dari logika high ke low sebelum SCL.
3. Kondisi stop dimana saat pada SDA beralih dari logika low ke high sebelum SCL.
4. R/W bit berfungsi untuk menentukan apakah master mengirim data ke slave atau meminta data dari slave. (logika 0 = mengirim data ke slave, logika 1 = meminta data dari slave) - Sensor
- Sensor PIRPIR (Passive Infrared) Sensor adalah komponen elektronik yang berfungsi untuk mendeteksi gerakan berdasarkan perubahan radiasi inframerah dari objek di sekitarnya. Sensor ini mendeteksi perubahan panas yang dihasilkan oleh tubuh manusia atau hewan dalam jangkauan deteksinya. PIR sensor memiliki sudut pandang yang bervariasi tergantung pada modelnya, biasanya sekitar 110 derajat, dan beroperasi pada suhu -20 derajat hingga 85 derajat. Sensor ini ideal untuk digunakan dalam sistem keamanan dan otomatisasi.
Grafik Sensor PIR:
Spesifikasi dari sensor PIR:
1. Tegangan operasi: 5V
2. Pin keluaran digital
3. Sensitivitas dan durasi alarm dapat disesuaikan
4. Deteksi jarak: hingga 7 meter
5. Sudut deteksi: sekitar 110 derajat
6. Waktu inisialisasi: sekitar 1 menit
7. Ukuran: 32 x 24mm
8. Berat: sekitar 7gPin
Deskripsi
VCC
Supply 5.5V
OUTPUT
Mengirimkan data yang diterima
GND
Terhubung ke ground sirkuit
- Sensor RFID
Spesifikasi Sensor RFID:
1. Fungsi Dasar: Membaca dan mengidentifikasi kartu RFID.
2. Tegangan Operasi: 5V.
3. Keluaran: Output SPI (Serial Peripheral Interface).
4. Sensitivitas dan Durasi Baca: Dapat disesuaikan untuk kebutuhan aplikasi tertentu.
5. Jarak Baca: Bergantung pada kondisi lingkungan dan jenis kartu RFID, namun umumnya dapat mencapai beberapa sentimeter hingga beberapa puluh sentimeter.
6. Waktu Inisialisasi: Tergantung pada sistem yang digunakan, biasanya butuh waktu kurang dari satu detik untuk inisialisasi.
7. Ukuran dan Berat: Ukuran dan berat yang mungkin bervariasi tergantung pada model atau produsen, namun umumnya cukup kecil dan ringan untuk integrasi dalam berbagai aplikasi.
Sensor RFID RC522 biasanya digunakan dalam sistem keamanan, kontrol akses, otomatisasi, dan berbagai aplikasi lain di mana identifikasi dan otentikasi menggunakan kartu RFID diperlukan.Pin
Deskripsi
VCC
Supply 3.5V hingga 5.5V
RST
Menampilkan suhu dan kelembaban melalui data serial
GND
Terhubung ke ground sirkuit
IRQ
Pin interrupt (opsional, tergantung modul).
MISO
Pin data output (Master In Slave Out), digunakan untuk SPI atau antarmuka serial
MOSI
Pin data input (Master Out Slave In), digunakan untuk SPI atau antarmuka serial.
SCK
Pin clock untuk antarmuka SPI.
SS
Pin Slave Select untuk antarmuka SPI.
- Sensor GAS MQ2Sensor Gas MQ2
1. Fungsi Utama: Mendeteksi konsentrasi gas dalam udara.
2. Tegangan Operasi: 5V.
3. Arus: Kurang dari 150mA saat pengukuran.
4. Keluaran: Analog dan digital.Kisaran Gas yang Dapat Dideteksi: Gas yang biasa dideteksi meliputi asap, gas hidrogen (H2), gas metana (CH4), karbon monoksida (CO), dan alkohol.
5. Resolusi: Tergantung pada kondisi pengukuran dan pemrosesan data, biasanya memiliki resolusi yang memadai untuk mendeteksi konsentrasi gas dengan baik.
6. Akurasi: Akurasi dalam mengukur konsentrasi gas bisa bervariasi tergantung pada faktor-faktor seperti kondisi lingkungan dan jenis gas yang dideteksi. Namun, secara umum, akurasi sensor MQ2 dapat dianggap cukup baik untuk aplikasi deteksi gas.
Dengan spesifikasi ini, sensor gas MQ2 dapat digunakan dalam berbagai aplikasi seperti deteksi kebocoran gas, pemantauan kualitas udara dalam ruangan, sistem keamanan, dan pemadam kebakaran.
Grafik Sensor GasPin
Deskripsi
VCC
Supply 3.5V hingga 5.5V
OUTPUT ANALOG
Membaca dan mengeluarkan data analog
GND
Terhubung ke ground sirkuit
OUTPUT DIGITAL
Membaca dan mengeluarkan data 1 dan 0
- Sensor DHT22Sensor DHT22 adalah sensor yang berfungsi untuk mengukur suhu dan kelembaban udara sekaligus, menggunakan termistor tipe NTC (Negative Temperature Coefficient) untuk mengukur suhu, dan sebuah sensor kelembapan resistif untuk mengukur kadar air di udara. Sensor ini juga memiliki chip yang melakukan konversi analog ke digital dan mengeluarkan output dalam format single-wire bi-directional (kabel tunggal dua arah).
1. Spesifikasi dari sensor DHT22:
2. Tegangan operasi: 3.3V hingga 6V
3. Arus: 1.5mA (mengukur) 60uA (siaga)
4. Keluaran: data serial
5. Kisaran suhu: -40°C hingga 80°C
6. Kisaran kelembaban: 0% hingga 100%
7. Resolusi: suhu dan kelembaban keduanya 16-bit
8. Akurasi: ±0.5°C dan ±2%
Grafik Sensor DHT22:Pin
Deskripsi
VCC
Supply 3.5V hingga 5.5V
OUTPUT
Menampilkan suhu dan kelembaban melalui data serial
GND
Terhubung ke ground sirkuit
- Sensor LM35LM35 adalah sensor suhu presisi yang populer digunakan dalam berbagai aplikasi elektronik. Sensor ini menghasilkan output tegangan yang linier berdasarkan suhu dalam derajat Celsius, di mana setiap derajat Celsius direpresentasikan sebagai 10 milivolt. Dengan rentang suhu operasional yang luas (-55°C hingga +150°C) dan akurasi yang tinggi (biasanya sekitar ±0.5°C), LM35 memberikan pengukuran suhu yang akurat dan dapat diandalkan. Dengan ukuran yang kecil dan konsumsi daya yang rendah, sensor ini cocok untuk integrasi dalam berbagai perangkat elektronik seperti termometer digital, sistem kontrol suhu, dan perangkat pemantauan suhu lainnya.
Spesifikasi LM35
1. Fungsi Dasar: Mengukur suhu dalam derajat Celsius.
2. Tegangan Operasi: Biasanya dalam rentang 4V hingga 20V DC.
3. Keluaran: Output analog yang linier, dengan masing-masing derajat Celsius direpresentasikan sebagai 10 mV.
4. Resolusi: 0.1°C (dengan sensitivitas 10 mV per derajat Celsius).
5. Akurasi: Tergantung pada model dan kondisi lingkungan, namun umumnya memiliki akurasi sekitar ±0.5°C di dalam rentang suhu operasionalnya.
6. Rentang Suhu: Biasanya dari -55°C hingga +150°C.
7. Kestabilan: Kondisi lingkungan dan kualitas sensor dapat mempengaruhi stabilitasnya, namun umumnya cukup stabil untuk aplikasi umum.
8. Waktu Respon: Sangat cepat, biasanya dalam hitungan milidetik.
9. Ukuran dan Berat: Kecil dan ringan, biasanya dalam bentuk paket TO-92 yang mudah diintegrasikan dalam perangkat elektronik.
Sensor suhu LM35 sering digunakan dalam berbagai aplikasi yang membutuhkan pemantauan suhu seperti termometer digital, sistem pendingin otomatis, kontrol suhu lingkungan, dan berbagai aplikasi lain di mana pengukuran suhu yang akurat dan cepat dibutuhkan.Pin
Deskripsi
VCC
Supply 3.5V hingga 5.5V
OUTPUT
Menampilkan suhu melalui data serial
GND
Terhubung ke ground sirkuit
- LCD
LCD (Liquid-Crystal Display) atau Penampil Kristal Cair adalah layar panel datar atau perangkat optik elektronik termodulasi yang menggunakan sifat modulasi cahaya dari kristal cair (liquid crystal) yang dikombinasikan dengan polarizer. Kristal cair tidak memancarkan cahaya secara langsung, melainkan menggunakan lampu latar atau reflektor untuk menghasilkan gambar berwarna atau monokrom.
Spesifikasi:
· Format tampilan: 16 x 2 karakter
· Pengontrol bawaan: ST 7066 (atau setara)
· Siklus kerja: 1/16
· 5 x 8 titik termasuk kursor
· Supply + 5 V (juga tersedia untuk + 3 V)
· LED dapat digerakkan oleh pin 1, pin 2, pin 15, pin 16 atau A dan K
· N.V. opsional untuk supply + 3 V
- Buzzer
Buzzer adalah sebuah komponen elektronika yang dapat menghasilkan getaran suara berupa gelombang bunyi. Buzzer akan menghasilkan getaran suara ketika diberikan sejumlah tegangan listrik dengan taraf tertentu sesuai dengan spesifikasi bentuk dan ukuran buzzer itu sendiri. Pada umumnya, buzzer ini sering digunakan sebagai alarm karena penggunaannya yang cukup mudah yaitu dengan memberikan tegangan input maka buzzer akan menghasilkan getaran suara berupa gelombang bunyi yang dapat didengar.
Spesifikasi:
· Nilai tegangan: 6V DC
· Tegangan pengoperasian: 4 hingga 8V DC
· Arus: ≤30mA
· Keluaran suara pada 10cm: ≥85dB
· Frekuensi resonansi: 2300 ±300Hz
· Nada: Berkelanjutan
· Suhu operasional: -25°C hingga +80°C
· Suhu penyimpanan: -30°C hingga +85°C
· Berat: 2g
- Adaptor 12V-2A
Adaptor 12V-2A adalah perangkat listrik yang dirancang untuk menyediakan tegangan dan arus yang sesuai untuk pengisian baterai dan pengoperasian perangkat elektronik lainnya yang membutuhkan pasokan daya 12 Volt dengan arus maksimum 2 ampere. Adaptor ini berfungsi dengan mengonversi tegangan AC dari sumber listrik menjadi tegangan DC yang stabil sesuai dengan spesifikasi yang dibutuhkan. Dengan kapasitas output yang mencapai 24 Watt, adaptor ini cocok untuk digunakan dengan berbagai perangkat seperti kamera, lampu LED, perangkat audio, dan sebagainya yang membutuhkan pasokan daya DC yang handal dan stabil.
Spesifikasi dari adaptor 12V-2A adalah sebagai berikut:
· Output Voltage: 12 Volt DC
· Output Current: 2 ampere (2000 milliampere)
· Metode Pengisian: Tegangan Konstan dengan Arus Terbatas (CC)
· Waktu Pengisian Daya: Sesuai kebutuhan perangkat yang diisi daya, dengan batasan arus maksimum 2A untuk memastikan pengisian yang efisien dan aman.
· Tegangan Cut-off Discharge: 12 volt - Memastikan bahwa tegangan output tidak melebihi batas yang aman untuk perangkat yang dioperasikan.
· Dimensi: Sesuai dengan standar dimensi untuk adaptor 12V-2A, memungkinkan untuk instalasi yang mudah dan kompatibilitas dengan berbagai perangkat.
- Motor Driver
Motor driver L293D adalah sebuah modul yang digunakan untuk mengendalikan motor DC dengan mudah. Modul ini menggunakan IC L293D sebagai pengendali motor, yang terkenal dalam dunia elektronika untuk mengatur kecepatan dan arah rotasi motor dengan efisien. Berikut adalah spesifikasi dari motor driver L293D:
· Tegangan Input: 4.5V - 36V
· Driver: Motor Driver L293D Dual H-Bridge DC
· Supply: 5V
· Arus Puncak: 600mA per kanal (1.2A total)
· Kisaran Operasi: 0 - 36 mA
· Konsumsi Daya Maksimum: 5W (saat suhu 75 ℃)
· Suhu Penyimpanan: -40 ℃ hingga +150 ℃
· Keluaran Pin 10 (sumber tegangan IC) jika berfungsi sebagai pin output: 5V
· Ukuran: 2.7cm x 2.2cm x 1.3cm
- Motor DC
Motor DC yang sering ditemui dalam berbagai perangkat memiliki spesifikasi sebagai berikut:
· Tegangan Operasi: 3V - 5V
· Tipe Motor: Coreless DC Motor
· Arus Operasi: 50mA - 100mA
· Kecepatan Putar: Sekitar 5000 - 10000 RPM (Rotasi per Menit)
· Jenis Kontrol: Analog (tergantung pada sensor yang terpasang)
· Konstruksi: Kompak dengan dimensi sekitar 1cm x 1cm x 1cm
· Fitur Tambahan: Mungkin dilengkapi dengan gearbox untuk mengubah torsi dan mengoptimalkan kecepatan putar motor.
- Motor Servo
Motor servo SG90 adalah sebuah motor servo kecil yang sering digunakan dalam berbagai proyek elektronik dan robotika. Motor ini dirancang untuk memberikan gerakan yang presisi dan kontrol yang akurat terhadap sudut putar. SG90 memiliki ukuran yang kecil namun mampu memberikan torsi yang cukup untuk menggerakkan komponen mekanis dengan stabil. Motor servo ini sangat populer karena ukurannya yang kompak dan performanya yang handal dalam menjalankan berbagai tugas yang membutuhkan pengendalian sudut yang tepat.
Spesifikasi dari motor servo SG90 adalah sebagai berikut:
· Tegangan Operasi: 4.8V - 6V
· Tipe Motor: Motor Servo DC
· Torsi: 1.8 kg/cm (4.8V)
· Kecepatan Putar: 0.12 detik/60° (tanpa beban)
· Sudut Putar: 180°
· Jenis Kontrol: PWM (Pulse Width Modulation)
· Konstruksi: Plastik ABS dengan gigi logam
· Dimensi: 22.2mm x 11.8mm x 31mm
· Berat: Sekitar 9 gram
- LED
LED Super Red adalah jenis LED yang memberikan cahaya berwarna merah dengan tingkat kecerahan yang tinggi. LED ini memiliki berbagai aplikasi dalam berbagai bidang, mulai dari elektronik hingga dekorasi. LED Super Red memiliki spesifikasi sebagai berikut:
· Warna Cahaya: Merah
· Tegangan Operasi: 1.8V - 2.4V
· Arus Operasi: 20mA - 30mA
· Kecerahan: Variabel tergantung pada kondisi operasional dan karakteristik LED
· Tipe: Light Emitting Diode (LED)
· Material: Semikonduktor padat
· Konstruksi: Biasanya berbentuk chip atau encapsulated dalam package yang tahan panas dan tahan air
· Dimensi: Variabel tergantung pada tipe dan package LED
- Jumper
Jumper adalah komponen elektronik yang digunakan untuk menghubungkan dua titik pada suatu rangkaian atau papan sirkuit. Biasanya terbuat dari kawat yang dilapisi dengan bahan isolasi seperti plastik atau karet. Jumper digunakan untuk memperbaiki atau mengubah konfigurasi suatu rangkaian dengan cara menyambungkan atau memutuskan koneksi antara titik-titik tertentu. Spesifikasi umum dari jumper adalah sebagai berikut:
· Bahan: Biasanya terbuat dari kawat tembaga yang dilapisi dengan isolasi
· Panjang: Variabel tergantung pada kebutuhan, namun biasanya tersedia dalam ukuran yang cukup pendek, sekitar beberapa milimeter hingga beberapa sentimeter.
· Warna: Beragam warna untuk memudahkan identifikasi dan pengelompokan.
· Konektor: Pada ujungnya bisa memiliki konektor seperti male header, female header, atau hanya berupa ujung kawat yang dipotong.
· Ketahanan: Biasanya memiliki ketahanan yang baik terhadap arus listrik dan suhu lingkungan yang umumnya ditemui dalam aplikasi elektronik.
Jumper sangat serbaguna dan digunakan dalam berbagai proyek elektronik, mulai dari prototyping hingga perbaikan rangkaian yang lebih kompleks. Kelebihannya yang sederhana dan mudah digunakan membuat jumper menjadi komponen yang sangat berguna dalam dunia elektronika.
- Siapkan segala komponen yang di butuhkan
- Susun rangkaian sesuai panduan
- Input codingan arduino
- Hidupkan rangkaian
- Apabila tidak terjadi eror, maka rangkaian selesai dibuat
5. Prosedur [Kembali]
Pada modul 4 ini yang berjudul Smartsense: Ruang
Belajar Pintar, kami menggunakan 5 buah sensor yaitu sensor RFID, LM35, DHT22,
PIR, dan MQ2. Rangkaian ini terdiri dari dua bagian utama yaitu Arduino Master
dan Arduino Slave. Arduino Master bertugas membaca data dari berbagai sensor
sebagai input, sementara Arduino Slave bertugas untuk mengeksekusi berdasarkan
data yang diterima dari Arduino Master. Kedua Arduino ini berkomunikasi
menggunakan komunikasi UART (Universal Asynchronous Receiver/Transmitter).
Arduino Master terhubung pada sensor gas (MQ2) di pin
7, sensor PIR di pin 8, sensor DHT22 di pin A1, sensor suhu LM35 di pin A3, dan
RFID yang terhubung ke pin 9 (RST) dan pin 10 (SS). Arduino Slave terhubung
pada aktuator yaitu servo motor pertama untuk membuka pintu masuk di pin 6,
servo motor kedua untuk membuka jendela di pin 5, motor DC sebagai AC di pin
12, LED sebagai lampu ruangan di pin A3, dan buzzer sebagai indikasi adanya gas
dalam ruangan di pin 9.
Sensor gas berfungsi untuk mendeteksi keberadaan gas di
dalam ruangan. Jika ada gas yang terdeteksi (nilai HIGH), Arduino Master akan
mengirim sinyal 'B' ke Arduino Slave untuk mengaktifkan buzzer. Jika tidak ada
gas yang terdeteksi (nilai LOW), sinyal 'b' akan dikirim untuk mematikan
buzzer. Sensor PIR berfungsi untuk mendeteksi gerakan di dalam ruangan. Ketika
gerakan terdeteksi (nilai HIGH), Arduino Master akan mengirim sinyal 'C' ke
Arduino Slave untuk menyalakan LED. Jika tidak ada
gerakan (nilai LOW), sinyal 'c' akan dikirim untuk mematikan LED.
Sensor suhu LM35 berfungsi untuk mengukur suhu ruangan
dan terhubung ke pin A3. Sensor
ini mengkonversi nilai tegangan yang dibaca ke suhu dalam derajat Celsius. Jika
suhu yang terdeteksi tinggi (> 32°C), Arduino Master akan mengirim sinyal
'd' ke Arduino Slave untuk menghidupkan AC (motor DC). Jika
suhu rendah (≤ 32°C), sinyal 'D' akan dikirim untuk mematikan AC. Sensor DHT22
terhubung ke pin A1 dan digunakan untuk mengukur suhu dan kelembaban ruangan. Data suhu dan kelembaban yang diperoleh dari sensor ini
akan ditampilkan pada LCD. Selain itu, data ini juga digunakan untuk menentukan
kondisi lain seperti mengontrol jendela berdasarkan kombinasi nilai dari sensor
PIR dan kelembaban. Jika kelembaban rendah (≤ 50%) dan PIR mendeteksi gerakan,
sinyal 'E' akan dikirim untuk menutup jendela (servo motor kedua). Jika
kelembaban tinggi (> 50%), sinyal 'e' akan dikirim untuk membuka jendela.
Arduino Slave menerima data dari Arduino Master melalui port serial dan mengendalikan aktuator berdasarkan data yang diterima. Servo motor pertama terhubung ke pin 6 dan berfungsi untuk membuka dan menutup pintu. Ketika Arduino Slave menerima sinyal 'A' dari Arduino Master, servo motor pertama akan bergerak ke posisi 90 derajat selama 5 detik untuk membuka pintu, kemudian kembali ke posisi 0 derajat untuk menutup pintu. Jika sinyal yang diterima adalah 'a', pintu akan tetap tertutup. Servo motor kedua terhubung ke pin 5 dan berfungsi untuk membuka dan menutup jendela. Jika Arduino Slave menerima sinyal 'E', servo motor kedua akan bergerak ke posisi 0 derajat untuk menutup jendela. Jika sinyal yang diterima adalah 'e', servo motor kedua akan bergerak ke posisi 90 derajat untuk membuka jendela. Motor DC terhubung ke pin 12 dan berfungsi sebagai AC di ruangan. Motor ini dikendalikan berdasarkan kombinasi nilai dari sensor PIR dan sensor suhu/kelembaban yang diterima oleh Arduino Master. Jika suhu yang terdeteksi tinggi (> 32°C), motor DC akan dihidupkan untuk menghidupkan AC. Jika suhu rendah (≤ 32°C), motor DC akan dimatikan. LED terhubung ke pin A3 dan akan menyala ketika sinyal 'C' diterima dari Arduino Master, menandakan adanya gerakan di ruangan. Jika tidak ada gerakan, sinyal 'c' akan mematikan LED. Buzzer terhubung ke pin 9 dan akan menghasilkan bunyi ketika sinyal 'B' diterima dari Arduino Master sebagai indikasi adanya gas di dalam ruangan. Jika tidak ada gas, sinyal 'b' akan mematikan buzzer. Dengan rangkaian ini, Arduino Master dan Slave dapat bekerja bersama-sama untuk membaca data dari sensor, mengirimkan data, dan mengendalikan berbagai aktuator sesuai dengan kondisi yang terdeteksi oleh sensor, menciptakan lingkungan ruang belajar yang pintar dan responsif terhadap berbagai kondisi.
A. Master
//
library #include
<Wire.h> #include
<LiquidCrystal_I2C.h> //library lcd i2c #include
<DHT.h> //library dht #include
<SPI.h> //library rfid #include
<MFRC522.h> //library rfid
//deklarasi
komponen LiquidCrystal_I2C
lcd(0x27, 16, 2); //lcd #define
GAS_SENSOR_PIN 7 //pin senso gas #define
PIR_SENSOR_PIN 8 //pin sensor pir //#define
LM35_SENSOR_PIN A3 //pin sensor lm35 #define
DHT22_SENSOR_PIN 2 //pi sensor dht22 #define
DHT_TYPE DHT22 //tipe dht DHT
dht(DHT22_SENSOR_PIN, DHT_TYPE); #define
SS_PIN 10 //pin ss rfid #define
RST_PIN 9//pin rst rfid byte
readCard[4]; String
MasterTag = "CAD0FD3F"; String
tagID = ""; MFRC522
rfid(SS_PIN, RST_PIN); //deklarasi pin rfid
void
setup() { Serial.begin(9600); SPI.begin(); // Init SPI bus rfid.PCD_Init(); rfid.PCD_DumpVersionToSerial(); lcd.init(); lcd.backlight(); dht.begin(); pinMode(GAS_SENSOR_PIN, INPUT); pinMode(PIR_SENSOR_PIN, INPUT); // pinMode(LM35_SENSOR_PIN, INPUT); }
void
loop() { int gasValue = digitalRead(GAS_SENSOR_PIN); int pirValue = digitalRead(PIR_SENSOR_PIN); // float lm35Value =
analogRead(LM35_SENSOR_PIN); // float voltage = lm35Value * (5.0 /
1023.0); // float lm35Temperature = voltage * 100.0; float dht22Temperature =
dht.readTemperature(); float dht22Humidity = dht.readHumidity();
lcd.setCursor(0, 0); lcd.print("Temp: "); lcd.print(dht22Temperature); lcd.print("C "); lcd.setCursor(0, 1); lcd.print("Humidity: "); lcd.print(dht22Humidity); lcd.print("%");
while (getID()) { if (tagID == MasterTag){ Serial.write('A'); Serial.print(""); Serial.println("RFID TAG"); } else{ Serial.write('a'); Serial.println(""); } }
//kondisi if (gasValue == LOW) { Serial.write('B'); Serial.print(""); Serial.println("ada gas"); } if (gasValue == HIGH) { Serial.write('b'); Serial.println(""); }
if (pirValue == HIGH) { Serial.write('C'); Serial.print(""); Serial.println("ada gerakan"); } if (pirValue == LOW) { Serial.write('c'); Serial.println(""); }
if ( dht22Temperature <= 32) { Serial.write('D'); Serial.print(""); Serial.println("suhu rendah"); } if ( dht22Temperature > 32) { Serial.write('d'); Serial.println(""); }
if ( dht22Humidity <= 50) { Serial.write('E'); Serial.print(""); Serial.println("kel rendah"); } if ( dht22Humidity > 50) { Serial.write('e'); Serial.println(""); } }
boolean
getID() { if ( ! rfid.PICC_IsNewCardPresent()) { return false; } if ( ! rfid.PICC_ReadCardSerial()) { return false; } tagID = ""; // The MIFARE PICCs that we use have 4 byte
UID for ( uint8_t i = 0; i < 4; i++) { tagID.concat(String(rfid.uid.uidByte[i],
HEX)); } tagID.toUpperCase(); rfid.PICC_HaltA(); // Stop reading return true; }
|
B. Slave
#include <Servo.h> #define SERVO_PIN 6 #define MOTOR_PIN 8 #define MOTOR_PIN2 9 #define LED_PIN 2 #define BUZZER_PIN 3 #define SERVO_PIN2 11
Servo servoMotor1; Servo servoMotor2;
void setup() {
Serial.begin(9600); servoMotor1.attach(SERVO_PIN); // Menghubungkan
servo motor ke pin 5 servoMotor2.attach(SERVO_PIN2);
pinMode(MOTOR_PIN, OUTPUT);
pinMode(LED_PIN, OUTPUT);
pinMode(BUZZER_PIN, OUTPUT); }
void loop() { if
(Serial.available()) { char
message = Serial.read(); // Baca karakter dari Serial dan simpan ke variabel
message
if
(message =='A') {
servoMotor1.write(90);
delay(5000);
servoMotor1.write(0); } else
if (message == 'a'){
servoMotor1.write(0); } if
(message == 'B') {
digitalWrite(BUZZER_PIN, HIGH);
delay(1000);
digitalWrite(BUZZER, LOW);
delay(1000);
digitalWrite(BUZZER, HIGH);
delay(1000);
digitalWrite(BUZZER, LOW);
delay(1000); } else
if (message == 'b'){
digitalWrite(BUZZER_PIN, LOW); } if
(message == 'C') {
digitalWrite(LED_PIN, HIGH); } else
if (message == 'c' ){
digitalWrite(LED_PIN, LOW); } if
(message == 'D'){
digitalWrite(MOTOR_PIN, LOW);// AC
digitalWrite(MOTOR_PIN2, LOW);// AC
digitalWrite(LED_PIN, LOW);
} if
(message == 'd' ){
digitalWrite(MOTOR_PIN, HIGH);// AC
digitalWrite(MOTOR_PIN2, LOW);// AC
digitalWrite(LED_PIN, HIGH); } if
(message == 'E') {
servoMotor2.write(0);
digitalWrite(LED_PIN, LOW);
} if
(message == 'e') {
servoMotor2.write(90);
digitalWrite(LED_PIN, HIGH); }
delay(20);
Serial.print(message); } }
|
1. Video Simulasi Proteus
- Download HTML disini
- Download rangkaian simulasi disini
- Download kode program Slave disini
- Download Kode Program Master disini
- Download vidio simulasi Proteus disini
- Download vidio Simulasi Demo disini
- Download datasheet resistor disini
- Download datasheet Buzzer disini
- Download datasheet Motor Servo disini
- Download datasheet led disini
- Download datasheet arduino disini
- Download datasheet motor DC disini
- Download datasheet LCD disini
- Download datasheet Motor Driver disini
- Download library sensor PIR disini
- Download library arduino disini
- Download library sensor Gas disini
- Download datasheet sensor PIR disini
- Download datasheet sensor DHT22 disini
- Download datasheet sensor LM35 disini
- Download datasheet sensor Gas disini
- Download datasheet sensor RFID disini
- Download Softcopy laporan Akhir disini
Tidak ada komentar:
Posting Komentar