1. 1. Memenuhi
syarat untuk Modul 4 Praktikum Mikrokontroller & Mikroprosesor.
2. 2. Mengimplementasikan
Lock Door System menggunakan touch
sensor, ultrasonic sensor dan keypad sebagai kunci pembuka pintu berbasis Arduino
3.
3. engimplementasikan
komunikasi UART pada Lock Door System
Alat :
Bahan :
Komponen Input :
Komponen Output :
Komponen Lainnya :
1. Arduino Uno
Gambar 1.Arduino Uno
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. Untuk mendukung mikrokontroler agar dapat digunakan,
cukup hanya menghubungkan Board Arduino Uno ke komputer dengan menggunakan
kabel USB atau listrik dengan AC yang-ke adaptor-DC atau baterai untuk
menjalankannya. Uno berbeda dengan semua board sebelumnya dalam hal koneksi
USB-to-serial yaitu menggunakan fitur Atmega8U2 yang diprogram sebagai
konverter USB-to-serial berbeda dengan board sebelumnya yang menggunakan chip
FTDI driver USB-to-serial.
Nama “Uno” berarti satu dalam
bahasa Italia, untuk menandai peluncuran Arduino 1.0. Uno dan versi 1.0 akan
menjadi versi referensi dari Arduino. Uno adalah yang terbaru dalam serangkaian
board USB Arduino, dan sebagai model referensi untuk platform Arduino,
untuk perbandingan dengan versi sebelumnya, lihat indeks board Arduino.
SPESIFIKASI |
|
Arduino Uno |
|
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) |
SRAM |
2 KB (ATmega328P) |
EEPROM |
1 KB (ATmega328P) |
Clock Speed |
16 MHz |
LED_BUILTIN |
13 |
Length |
68.6 mm |
Width |
53.4 mm |
Weight |
Arduino Uno dapat diaktifkan
melalui koneksi USB atau dengan catu daya eksternal (otomatis). Daya Eksternal
(non-USB) dapat berasal baik dari AC-ke adaptor-DC atau baterai. Adaptor
ini dapat dihubungkan dengan menancapkan plug jack pusat-positif ukuran 2.1mm
konektor POWER. Ujung kepala dari baterai dapat dimasukkan kedalam Gnd dan Vin
pin header dari konektor POWER. Kisaran kebutuhan daya yang disarankan untuk
board Uno adalah7 sampai dengan 12 V, jika diberi daya kurang dari 7 V
kemungkinan pin 5 V Uno dapat beroperasi tetapi tidak stabil kemudian jika
diberi daya lebih dari 12V, regulator tegangan bisa panas dan dapat merusak
board Uno.
Pin listrik adalah sebagai berikut:
a) VIN. Tegangan masukan
kepada board Arduino ketika itu menggunakan sumber daya eksternal (sebagai
pengganti dari 5volt koneksi USB atau sumber daya lainnya).
b) 5V. Catu daya digunakan
untuk daya mikrokontroler dan komponen lainnya.
c) 3v3. Sebuah pasokan
3,3volt dihasilkan oleh regulator on-board.
d) GND. Ground pin.Input
dan Output
Masing-masing dari 14
pin digital di Uno dapat digunakan sebagai input atau output, dengan
menggunakan fungsi pinMode (), digitalWrite (),
dan digitalRead (), beroperasi dengan daya 5 volt. Setiap pin dapat
memberikan atau menerima maksimum 40 mA dan memiliki internal pull-up resistor
(secara default terputus) dari 20-50 kOhms. Selain itu, beberapa pin memiliki
fungsi khusus:
e) Serial: 0 (RX) dan 1 (TX).
Digunakan untuk menerima (RX) dan mengirimkan (TX) TTL data serial. Pin ini
dihubungkan ke pin yang berkaitan dengan chip Serial ATmega8U2 USB-to-TTL.
f)
Eksternal menyela: 2 dan 3. Pin ini dapat dikonfigurasi untuk memicu interrupt pada
nilai yang rendah, dengan batasan tepi naik atau turun, atau perubahan nilai.
Lihat (attachInterrupt) fungsi untuk rincian lebih lanjut.
g) PWM: 3, 5, 6, 9, 10, dan
11. Menyediakan output PWM 8-bit dengan fungsi analogWrite ().
h) SPI: 10 (SS), 11 (Mosi), 12
(MISO), 13 (SCK). Pin ini mendukung komunikasi SPI menggunakan SPI
library.
i)
LED:
13. Ada built-in LED terhubung ke pin digital 13. Ketika pin bernilai nilai
HIGH, LED on, ketika pin bernilai LOW, LED off.
Arduino Uno memiliki 6
masukan analog, berlabel A0 sampai dengan A5, yang masing-masing menyediakan 10
bit dengan resolusi (yaitu 1024 nilai yang berbeda). Selain itu, beberapa pin
memiliki fungsi khusus:
j)
I2C: A4 (SDA) dan A5 (SCL). Dukungan I2C (TWI) komunikasi menggunakan
perpustakaan Wire.
k) Aref. Tegangan referensi (0
sampai 5V saja) untuk input analog. Digunakan dengan fungsi analogReference
().
l)
Reset. Bawa baris ini LOW untuk me-reset mikrokontroler.
Arduino Uno memiliki
sejumlah fasilitas untuk berkomunikasi dengan komputer, Arduino lain, atau
mikrokontroler lainnya. Atmega328 menyediakan UART TTL (5V) untuk komunikasi
serial, yang tersedia di pin digital 0 (RX) dan 1 (TX). Sebuah Atmega8U2
sebagai saluran komunikasi serial melalui USB dan sebagai port virtual
com untuk perangkat lunak pada komputer. Firmware ’8 U2 menggunakan driver
USB standar COM, dan tidak ada driver eksternal yang diperlukan. Namun, pada
Windows diperlukan, sebuah file inf.
Perangkat lunak Arduino
terdapat monitor serial yang memungkinkan digunakan memonitor data tekstual
sederhana yang akan dikirim komputer dari board Arduino. LED RX dan TX di papan
tulis akan berkedip ketika data sedang dikirim melalui chip USB-to-serial
dengan koneksi USB ke komputer (tetapi tidak untuk komunikasi serial pada pin 0
dan 1). Sebuah SoftwareSerial library memungkinkan untuk
berkomunikasi secara serial pada salah satu pin digital pada board Uno.
Atmega328 juga mendukung I2C (TWI) dan komunikasi SPI. Perangkat lunak Arduino
termasuk perpustakaan Kawat untuk menyederhanakan penggunaan bus I2C, lihat
dokumentasi untuk rincian. Untuk komunikasi SPI, menggunakan perpustakaan SPI
2. Arduino Mega
Board Arduino Mega 2560 adalah sebuah Board Arduino yang
menggunakan ic Mikrokontroler ATmega 2560.Board ini memiliki Pin I/O yang
relatif banyak, 54 digital Input / Output,15 buah di antaranya dapat di gunakan
sebagai output PWM, 16 buah analog Input, 4 UART. Arduino Mega 2560 di lengkapi
kristal 16. Mhz Untuk penggunaan relatif
sederhana tinggal menghubungkan power dari USB ke PC / Laptop atau melalui Jack
DC pakai adaptor 7-12 V DC.
Untuk lebih jelasnya
dapat di lihat dari spesifikasi Arduino Mega 2560 di bawah ini :
Arduino Mega Pin/Out
Pin digital Arduino Mega2560 ada 54
Pin yang dapat di gunakan sebagai Input atau Output dan 16 Pin Analog berlabel
A0 sampai A15 sebagai ADC, setiap Pin Analog memiliki resolusi sebesar 10
bit.Arduino Mega 2560 di lengkapi dengan pin dengan fungsi khusus,sebagai
berikut :
- Serial 4 buah : Port Serial : Pin 0 (RX) dan
Pin 1 (TX) ;Port Serial 1 : Pin 19 (RX) dan Pin 18 (TX); Port Serial 2 :
Pin 17 (RX) dan Pin 16 (TX); Port Serial 3 : Pin 15 (RX) dan Pin 14
(TX).Pin Rx di gunakan untuk menerima data serial TTL dan Pin (Tx) untuk
mengirim data serial TTL
- External Interrupts 6 buah : Pin 2 (Interrupt 0),Pin 3
(Interrupt 1), Pin 18 (Interrupt 5), Pin 19 (Interrupt 4), Pin 20
(Interrupt 3) dan Pin 21 (Interrupt 2)
- PWM 15 buah : 2,3,4,5,6,7,8,9,10,11,12,13 dan
44,45,46 pin-pin tersebut dapat di gunakan sebagai Output PWM 8 bit
- SPI : Pin 50 (MISO), Pin 51 (MOSI), Pin 52 (SCK), Pin 53
(SS) ,Di gunakan untuk komunikasi SPI menggunakan SPI
Library
- I2C : Pin 20 (SDA) dan Pin 21 (SCL) , Komunikasi I2C
menggunakan wire library
- LED : 13. Buit-in LED terhubung dengan Pin Digital 13
PIR Sensor
3. Infrared Sensor
Sensor Infrared adalah komponen elektronika yang dapat mendeteksi benda ketika cahaya infra merah terhalangi oleh benda. Sensor infared terdiri dari led infrared sebagai pemancar dan fototransistor sebagai penerima cahaya infra merah.
Led infrared sebagai pemancar cahaya infra merah merupakan singkatan dari Light Emitting Diode Infrared yang terbuat dari bahan Galium Arsenida (GaAs) dapat memancarkan cahaya infra merah dan radiasi panas saat diberi energi listrik. (M. Aksin. 2013) Proses pemancaran cahaya akibat adanya energi listrik yang diberikan terhadap suatu bahan disebut dengan sifat elektroluminesensi.
Prinsip kerja rangkaian sensor infrared berdasarkan pada gambar 3. Adalah ketika cahaya infra merah diterima oleh fototransistor maka basis fototransistor akan mengubah energi cahaya infra merah menjadi arus listrik sehingga basis akan berubah seperti saklar (swith closed) atau fototransistor akan aktif (low) secara sesaat seperti gambar 4.
1. Saklar
Fungsi transistor yang pertama yaitu sebagai saklar elektronik. Hal ini terjadi karena transistor dapat mengatur bias dari satu transistor ke transistor lainnya. Oleh karena itu, bisa didapatkan hubungan yang singkat antar kaki konektor.
2. Penguat Arus
Fungsi selanjutnya dari transistor yaitu penguat arus. Akan tetapi, untuk dapat menguatkan arus, transistor harus terbiasa pada tegangan yang konstan. Hal ini sangat diperlukan agar emitor yang keluar dengan tegangan yang besarnya tetap.
3. Driver Motor DC
Fungsi terakhir dari transistor yaitu sebagai driver motor DC. Motor DC dapat on atau off apabila transistor dalam keadaan cut off. Selain itu, transistor juga berfungsi sebagai penentu arah putaran DC
4. LCD (LM016L)
Gambar 14.LCD
LCD atau Liquid
Crystal Display adalah suatu jenis media display (tampilan) yang
menggunakan kristal cair (liquid crystal) untuk menghasilkan gambar yang
terlihat. Teknologi Liquid Crystal Display (LCD) atau Penampil Kristal Cair
sudah banyak digunakan pada produk-produk seperti layar Laptop, layar Ponsel,
layar Kalkulator, layar Jam Digital, layar Multimeter, Monitor Komputer, Televisi,
layar Game portabel, layar Thermometer Digital dan produk-produk elektronik
lainnya.
Teknologi Display LCD
ini memungkinkan produk-produk elektronik dibuat menjadi jauh lebih tipis jika
dibanding dengan teknologi Tabung Sinar Katoda (Cathode Ray Tube atau
CRT). Jika dibandingkan dengan teknologi CRT, LCD juga jauh lebih hemat dalam
mengkonsumsi daya karena LCD bekerja berdasarkan prinsip pemblokiran cahaya
sedangkan CRT berdasarkan prinsip pemancaran cahaya. Namun LCD membutuhkan
lampu backlight (cahaya latar belakang) sebagai cahaya pendukung karena LCD
sendiri tidak memancarkan cahaya. Beberapa jenis backlight yang umum digunakan
untuk LCD diantaranya adalah backlight CCFL (Cold cathode fluorescent lamps)
dan backlight LED (Light-emitting diodes).
LCD atau Liquid Crystal Display pada dasarnya terdiri dari dua bagian utama
yaitu bagian Backlight (Lampu Latar Belakang) dan bagian Liquid Crystal
(Kristal Cair). Seperti yang disebutkan sebelumnya, LCD tidak memancarkan
pencahayaan apapun, LCD hanya merefleksikan dan mentransmisikan cahaya yang
melewatinya. Oleh karena itu, LCD memerlukan Backlight atau Cahaya latar
belakang untuk sumber cahayanya. Cahaya Backlight tersebut pada umumnya adalah
berwarna putih. Sedangkan Kristal Cair (Liquid Crystal) sendiri adalah cairan
organik yang berada diantara dua lembar kaca yang memiliki permukaan transparan
yang konduktif.
Bagian-bagian LCD atau
Liquid Crystal Display diantaranya adalah:
·
Lapisan Terpolarisasi 1 (Polarizing Film 1)
·
Elektroda Positif (Positive Electrode)
·
Lapisan Kristal Cair (Liquid Cristal Layer)
·
Elektroda Negatif (Negative Electrode)
·
Lapisan Terpolarisasi 2 (Polarizing film 2)
·
Backlight atau Cermin (Backlight or Mirror)
Dibawah ini adalah
gambar struktur dasar sebuah LCD:
Gambar 15.Struktur LCD
LCD yang digunakan pada
Kalkulator dan Jam Tangan digital pada umumnya menggunakan Cermin untuk
memantulkan cahaya alami agar dapat menghasilkan digit yang terlihat di layar.
Sedangkan LCD yang lebih modern dan berkekuatan tinggi seperti TV, Laptop dan Ponsel
Pintar menggunakan lampu Backlight (Lampu Latar Belakang) untuk menerangi
piksel kristal cair. Lampu Backlight tersebut pada umumnya berbentuk persegi
panjang atau strip lampu Flourescent atau Light Emitting Diode (LED). Cahaya
putih adalah cahaya terdiri dari ratusan cahaya warna yang berbeda. Ratusan
warna cahaya tersebut akan terlihat apabila cahaya putih mengalami refleksi
atau perubahan arah sinar. Artinya, jika beda sudut refleksi maka berbeda pula
warna cahaya yang dihasilkan.
Backlight LCD yang berwarna
putih akan memberikan pencahayaan pada Kristal Cair atau Liquid Crystal.
Kristal cair tersebut akan menyaring backlight yang diterimanya dan
merefleksikannya sesuai dengan sudut yang diinginkan sehingga menghasilkan
warna yang dibutuhkan. Sudut Kristal Cair akan berubah apabila diberikan
tegangan dengan nilai tertentu. Karena dengan perubahan sudut dan penyaringan
cahaya backlight pada kristal cair tersebut, cahaya backlight yang sebelumnya
adalah berwarna putih dapat berubah menjadi berbagai warna.
Jika ingin menghasilkan
warna putih, maka kristal cair akan dibuka selebar-lebarnya sehingga cahaya
backlight yang berwarna putih dapat ditampilkan sepenuhnya. Sebaliknya, apabila
ingin menampilkan warna hitam, maka kristal cair harus ditutup serapat-rapatnya
sehingga tidak adalah cahaya backlight yang dapat menembus. Dan apabila
menginginkan warna lainnya, maka diperlukan pengaturan sudut refleksi kristal
cair yang bersangkutan.
5. Papan Breadboard
Breadboard merupakan
sebuah board atau papan yang berfungsi untuk merancang sebuah rangkaian
elektronik sederhana. Breadboard tersebut nantinya akan dilakukan prototipe
atau uji coba tanpa harus melakukan solder.
Umumnya breadboard terbuat dari bahan plastik yang juga sudah
terdapat berbagai lubang. Lubang tersebut sudah diatur sebelumnya sehingga
membentuk pola yang didasarkan pada pola jaringan di dalamnya. Selain itu,
breadboard yang bisa ditemukan di pasaran umumnya dibagi menjadi 3 ukuran.
Pertama dinamakan sebagai mini breadboard, kedua disebut medium breadboard, dan
yang terakhir dinamakan sebagai large breadboard. Untuk mini breadboard, ia
memiliki kurang lebih 170 titik.
Sementara untuk medium breadboard sudah dilengkapi dengan kurang
lebih 400 titik. Large breadboard memiliki lubang kurang lebih 830. Seperti
gambar yang sudah ada di atas, bahwa mini breadboard memiliki 200 titik hubung.
Di bagian kanan sudah bisa dilihat pola layout yang digambarkan dengan garis
biru. Di sini bisa dilihat beberapa tulisan mulai dari A sampai dengan J.
Setelah itu masih ada angka 1,5, 10, 15, maupun 20. Perpaduan antara
huruf dan juga angka tersebut merupakan sebuah koordinat. Misalnya, A1, B1,
sampai dengan E1 saling terkoneksi berdasarkan pola koneksinya (Bisa dilihat
pada gambar berwarna biru). Sementara untuk A2 sampai dengan E2, A3 sampai
dengan E3, F1 sampai dengan J1, dan seterusnya. Dengan memahami pola tersebut,
maka kita nanti bisa membuat sebuah prototipe sehingga kita tidak bingung
ketika harus menempatkan komponen-komponen elektronik tersebut sesuai dengan
tempatnya masing-masing.
6. Kabel Jumper
jumper adalah kabel elektrik yang memiliki
pin konektor di setiap ujungnya dan memungkinkanmu untuk menghubungkan dua
komponen yang melibatkan Arduino tanpa memerlukan solder.
Intinya kegunaan kabel jumper ini adalah
sebagai konduktor listrik untuk menyambungkan rangkaian listrik.
Macam-Macam Kabel Jumper Arduino
Jenis jenis kabel jumper yang paling umum
adalah sebagai berikut:
1. Kabel Jumper Male to Male
Jenis yang
pertama adalah kabel jumper male male. Kabel jumper male to male
adalah adalah jenis yang sangat yang sangat cocok untuk kamu yang mau membuat
rangkaian elektronik di breadboard.
2. Kabel Jumper Male to Female
Kabel jumper
male female memiliki ujung konektor yang berbeda pada tiap ujungnya, yaitu male
dan female.
Biasanya kabel ini digunakan untuk menghubungkan komponen elektronika selain Arduino ke breadboard
3.
Kabel Jumper
Female to Female
Jenis kabel
jumper yang terakhir adalah kabel female to female. Kabel ini sangat
cocok untuk menghubungkan antar komponen yang memiliki header male.
contohnya seperti sensor ultrasonik HC-SR04, sensor suhu DHT, dan
masih banyak lagi.
7. Touch Sensor
Touch Sensor atau Sensor Sentuh adalah
sensor elektronik yang dapat mendeteksi sentuhan. Sensor Sentuh ini pada
dasarnya beroperasi sebagai sakelar apabila disentuh, seperti sakelar pada
lampu, layar sentuh ponsel dan lain sebagainya. Sensor Sentuh ini dikenal juga
sebagai Sensor Taktil (Tactile Sensor). Seiring dengan perkembangan teknologi,
sensor sentuh ini semakin banyak digunakan dan telah menggeser peranan sakelar
mekanik pada perangkat-perangkat elektronik.
8. Keypad
Keypad adalah salah satu perangkat input
yang paling umum digunakan dalam aplikasi mikroprosesor. Dalam keypad standar
yang disambungkan sebagai matriks sakelar XY, sakelar yang biasanya terbuka
menghubungkan baris ke kolom saat ditekan. Jika sebuah papan tombol memiliki 12
tombol, itu disambungkan sebagai 3 kolom dengan 4 baris. Sebuah 16 tombol akan
memiliki 4 kolom dengan 4 baris. Beberapa waktu lalu, saya membeli beberapa
keypad membran 3x4 dari eBay. Seperti biasa itu dikemas dengan nol dokumentasi,
sehingga butuh beberapa jam untuk mulai bekerja.
Gambar berikut menunjukkan struktur internal dan notasi pin dari keypad 3x4 yang digunakan untuk percobaan.
Berikut adalah informasi yang sama secara
tekstual; kolom keypad C1-C2-C3 diarahkan ke pin 3,1,5 dan baris R1-R2-R3-R4
diarahkan ke pin 2,7,6,4 yang terletak di ujung kabel fleksibel 7-pin.
9. Adaptor AC/DC
Adaptor
adalah rangkaian elektronika yang berfungsi untuk mengubah tegangan AC (arus
bolak-balik) yang tinggi menjadi tegangan DC (arus searah) yang lebih rendah.
Bagian-bagian adaptor
Pada sebuah adaptor terdapat beberapa bagian atau blok yaitu trafo
(transformator), rectifier (penyearah) dan filter
Trafo ( Transformator )
Adalah sebuah komponen yang berfungsi untuk menurunkan atau menaikan tegangan
AC sesuai kebutuhan. Pada sebuah adaptor, trafo yang digunakan adalah trafo
jenis step down atau trafo penurun tegangan.
Trafo tediri dari 2 bagian yaitu bagian primer dan bagian sekunder, pada masing-masing bagian terdapat lilitan kawat email yang jumlahnya berbeda. Untuk trafo step-down, jumlah lilitan primer akan lebih banyak dari jumlah sekunder. Lilitan Primer merupakan input dari pada Transformator sedangkan Output-nya adalah pada lilitan sekunder. Meskipun tegangan telah diturunkan, output dari Transformator masih berbentuk arus bolak-balik (arus AC) yang harus diproses selanjutnya.
Rectifier (Penyearah )
1. Half Wave Rectifier : menggunakan 1 dioda penyearah
2. Full Wave Rectifier : menggunakan 2 atau 4 dioda penyearah
Filter adalah bagian yang berfungsi untuk menyaring atau meratakan sinyal arus yang keluar dari bagian rectifier. Filter ini biasanya terdiri dari komponen Kapasitor (Kondensator) yang berjenis Elektrolit atau ELCO ( Electrolyte Capacitor ).
Sebenarnya dengan adanya bagian trafo, rectifier dan filter syarat dari sebuah
adaptor sudah terpenuhi, namun terkadang tegangan yang dihasilkan biasanya
tidak stabil sehingga diperlukan bagian lain yaitu yang berfungsi untuk
menstabilkan tegangan dan mendapatkan tegangan yang akurat. Bagian tersebut
adalah bagian regulator atau pengatur tegangan.
Voltage Regulator ( Pengatur Tegangan )
Untuk menghasilkan tegangan dan Arus DC yang tetap dan stabil , diperlukan
bagian Voltage Regulator yang berfungsi untuk mengatur tegangan sehingga
tegangan Output tidak dipengaruhi oleh suhu, arus beban dan juga tegangan input
yang berasal Output Filter. Voltage Regulator pada umumnya terdiri dari Dioda
Zener, Transistor atau IC
Pada DC Power Supply yang canggih, biasanya Voltage Regulator juga dilengkapi dengan Short Circuit Protection ( perlindungan atas hubung singkat ), Current Limiting ( Pembatas Arus ) ataupun Over Voltage Protection ( perlindungan atas kelebihan tegangan ).
1. Master
1.
//master
#define selonoid 7
int j = 0;
int infrared = 8; // membuat varibel trig yang di set ke-pin 5
int motorPin1 = 4;
int motorPin2 = 2;
void setup() {
pinMode(infrared, INPUT);
pinMode(selonoid, OUTPUT);
pinMode(motorPin1, OUTPUT);
pinMode(motorPin2, OUTPUT);
Serial.begin(9600);
digitalWrite(selonoid, LOW);
digitalWrite(motorPin1, LOW);
digitalWrite(motorPin2, LOW);
}
void loop() {
int IR = digitalRead(infrared);
//Serial.println(jarak);
if (digitalRead(infrared) == HIGH) {
for (j; j < 1; j++) {
Serial.println("1");
Serial.write("motorPin1 ON");
digitalWrite(motorPin1, HIGH);
digitalWrite(motorPin2, LOW);
digitalWrite(selonoid, HIGH);
delay(1000);
digitalWrite(motorPin1, LOW);
digitalWrite(motorPin2, LOW);
digitalWrite(selonoid, LOW);
}
}
else {
j = 0;
Serial.write("motorPin1 OFF");
digitalWrite(motorPin1, LOW);
digitalWrite(motorPin2, LOW);
digitalWrite(selonoid, LOW);
}
if (Serial.available() > 0) {
int data = Serial.read();
if (data == 1) {
Serial.println("1");
digitalWrite(motorPin1, HIGH);
digitalWrite(motorPin2, LOW);
digitalWrite(selonoid, HIGH);
delay(1000);
digitalWrite(motorPin1, LOW);
digitalWrite(selonoid, LOW);
}
else {
Serial.println("0");
digitalWrite(motorPin2, HIGH);
digitalWrite(selonoid, LOW);
}
}
}
2. Slave
#include <SoftwareSerial.h>
//SLAVE
#include <LiquidCrystal.h>
#define touch 4
#define pir 6
#include <Password.h>
#include <Keypad.h>
int i = 0;
int l = 0;
const int rs = A5, en = A4, d4 = A0, d5 = A1, d6 = A2, d7 = A3;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);
Password password = Password( "123" );
const byte ROWS = 4;
const byte COLS = 3;
char keys[ROWS][COLS] =
{
{'1', '2', '3'},
{'4', '5', '6'}, //Inisialisasi keypad matriks 4x3
{'7', '8', '9'},
{'*', '0', '#'}
};
byte rowPins[ROWS] = {7, 8, 9, 10};
byte colPins[COLS] = {13, 12, 11};
Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );
void setup() {
lcd.begin(16, 2);
lcd.setCursor(0, 0);
lcd.print("Selamat");
lcd.setCursor(0, 1);
lcd.print("Datang");
pinMode(touch, INPUT);
pinMode(pir, INPUT);
keypad.addEventListener(keypadEvent);
Serial.begin(9600);
}
void loop() {
int statusPir = digitalRead(pir);
if (statusPir == HIGH) {
//lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Masukan Password");
lcd.setCursor(0, 1);
lcd.print("atau Fingerprint");
}
if (digitalRead(touch) == HIGH) {
//Serial.println ("disentuh");
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Fingerprint");
lcd.setCursor(0, 1);
lcd.print("Benar");
for (i; i < 1; i++) {
Serial.write(1);
}
delay(1000);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Masukan Password");
lcd.setCursor(0, 1);
lcd.print("atau Fingerprint");
}
else {
i = 0;
}
keypad.getKey();
}
void keypadEvent(KeypadEvent eKey) {
switch (keypad.getState()) {
case PRESSED:
Serial.print("Pressed: ");
Serial.println(eKey);
switch (eKey) {
case '*': checkPassword(); break;
case '#': password.reset(); break;
default: password.append(eKey);
}
}
}
void checkPassword() {
if (password.evaluate()) {
Serial.write(1);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Password Benar");
Serial.println("Success");
delay(1000);
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Masukan Password");
lcd.setCursor(0, 1);
lcd.print("atau Fingerprint");
//delay(100);
}
else {
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("Password Salah");
Serial.println("Wrong");
}
}
Rangkaian lock door system merupakan rangkaian yang menggunakan keypad, touch sensor,PIR sensor dan Infrared sensor. Komunikasi yang digunakan pada rangkaian ini yaitu UART (Universal Asynchronous Receiver Transmitter) merupakan metode komunikasi serial dimana digunakannya dua komponen Arduino sebagai master dan slave.Komunikasi ini menggunakan pin TX (Transmitter) dan RX (Receiver). Master menggunakan arduino Mega, sedangkan slave menggunakan arduino UNO pada rangkaian ini. Pada Slave akan dihubungkan Touch sensor, PIR sensor, keypad, dan LCD. Lalu pada Master akan dihubungkan dengan Infrared sensor, solenoid, dan motor.
Keypad, touch sensor, PIR sensor, dan LCD akan diletakkan diluar ruangan, sedangkan Infrared sensor diletakkan didalam ruangan. Ketika Rangkaian simulasi dijalankan maka LCD pertama kali akan menampilkan kalimat "Selamat Datang". Lalu sensor PIR akan mendeteksi adanya orang yang berapa diluar pintu, LCD akan menampilkan "Masukan Password atau fingerprint". Maka disini akan terdapat dua opsi untuk membuka pintu, yaitu menggunakan keypad dan touch sensor.
Keypad dengan prinsip kerja ketika password yang di masukkan benar maka master akan memeritahkan slave untuk mengirimkan data, ketika data diterima oleh slave selanjutnya LCD akan menampilkan tampilan “password benar”. Selanjutnya data juga akan dikirim menuju master, dan data akan diteruskan menuju transistor, maka transistor akan memperkecilkan tegangan selanjutnya akan diteruskan untuk mengaktifkan solenoid. Ketika solenoid aktif maka akan membuka pintu, solenoid akan aktif dengan delay 1000 ms. Ketika pada keypad dimasukkan password yang salah maka master akan memeritahkan slave untuk mengirimkan data, ketika data diterima oleh slave selanjutnya LCD akan menampilkan tampilan “password salah”. Selanjutnya data juga akan dikirim menuju master, dan solenoid tidak aktif.
Touch sensor memiliki prinsip kerja ketika disentuh maka master akan memerintahkan slave untuk mengirimkan data, ketika data diterima oleh slave maka LCD akan menampilkan “fingerprint benar”. Selanjutnya data akan diteruskan menuju master selanjutnya menuju ke transistor, maka transistor akan memperkecilkan tegangan selanjutnya akan diteruskan untuk mengaktifkan solenoid. Ketika selonoid aktif maka pintu akan terbuka, selonoid akan aktif dengan delay 1000ms.
Infrared sensor diletakkan didalam ruangan dengan prinsip kerja, ketika sensor
Infrared mendeteksi objek dengan jarak < 10 cm, maka master akan
mengirimkan data menuju relay. Ketika relay aktif maka
selanjutnya akan mengaktifkan selonoid. Ketika selonoid aktif maka akan membuka
pintu, selonoid akan aktif dengan delay 1000 ms.
1. Demo Alat
2. Simulasi Proteus
Rangkaian lock door system ini dapat berguna untuk memudahkan sistem membuka pintu tanpa menggunakan kunci. Rangkaian ini dapat diakses melalui password, fingerprint, mendeteksi orang dan mengukur jarak dengan menggunakan sensor Infrared Modul. Komponen yang digunakan antara lain keypad, touch sensor, Infrared sensor,PIR sensor, LCD, solenoid, dan transistor. Awal mulanya LCD akan menampilkan "Selamat Datang". Selanjutnya PIR sensor akan mendeteksi adanya orang dari luar pintu, lalu LCD menampilkan "Masukan password atau fingerprint". Ketika keypad dimasukkan password yang benar maka pada LCD akan menampilkan "password benar" dan pintu akan terbuka sebaliknya, sedangkan Ketika password yang dimasukkan salah maka LCD menampilkan "Password salah" dan pintu tidak terbuka. Pada touch sensor, Ketika disentuh maka LCD akan menampilkan fingerprint benar dan pintu akan terbuka. Sedangkan pada Infrared sensor, Ketika sensor mendeteksi adanya objek di dalam pintu dengan jarak < 10 cm maka pintu akan terbuka.
Tidak ada komentar:
Posting Komentar