Disusun Oleh :
|
1. Farel
Alfarizi |
25051204250 |
|
2. Klement Ezra
Suhartanto |
25051204082 |
|
3. Muchammad Achsan |
25051204028 |
|
4. Bintang Renaldy Pratama |
25051204026 |
BAB I
1.1.
Latar Belakang
Perkembangan teknologi dalam bidang
sistem keamanan terus mengalami peningkatan seiring dengan meningkatnya
kebutuhan masyarakat terhadap perlindungan dan efisiensi dalam aktivitas sehari-hari. Salah satu bentuk teknologi yang banyak diterapkan adalah sistem
penguncian pintu berbasis elektronik, yang dianggap lebih praktis, fleksibel,
dan memiliki tingkat keamanan yang lebih baik dibandingkan kunci mekanik
konvensional. Sistem ini mengandalkan proses autentikasi tertentu sebelum pintu
dapat dibuka, sehingga mampu meminimalkan risiko akses tidak sah.
Praktikum ini menjadi sarana
untuk menghubungkan teori dengan implementasi nyata melalui
perancangan sistem berbasis mikrokontroler. Arduino Uno, sebagai platform
mikrokontroler yang mudah diprogram dan memiliki dukungan luas, menjadi media
ideal untuk mempelajari cara kerja unit pemrosesan, memori, port I/O, dan
perangkat pendukung lainnya.
Melalui proyek “Perancangan Sistem
Keamanan Pintu Pintar (Smart Door Lock) Berbasis
Keypad Menggunakan Arduino Uno”, mahasiswa dapat
memahami proses autentikasi berbasis input digital,
pengolahan data oleh mikrokontroler, serta bagaimana sinyal keluaran dihasilkan
untuk menggerakkan aktuator berupa servo sebagai mekanisme pengunci pintu.
Sistem ini juga dilengkapi tampilan LCD untuk memberikan feedback kepada pengguna
selama proses pemasukan kode dan status pintu.
Dengan demikian, praktikum ini tidak
hanya bertujuan menghasilkan prototipe sistem keamanan sederhana, tetapi juga
memperkuat pemahaman mahasiswa terhadap struktur, fungsi, dan hubungan
antar-komponen dalam sebuah sistem komputer. Selain itu, proyek ini melatih
keterampilan problem-solving, kerja sama tim, serta kemampuan merancang solusi
teknologi yang relevan dengan kebutuhan nyata di masyarakat.
1.2.
Rumusan Masalah
1.
Bagaimana merancang dan
mengimplementasikan sistem keamanan pintu pintar
yang menggunakan keypad sebagai media autentikasi berbasis Arduino Uno?
2.
Bagaimana proses kerja
mikrokontroler dalam menerima input kode, memproses data, serta memberikan output berupa pergerakan servo untuk membuka
atau mengunci pintu?
3.
Bagaimana sistem dapat memberikan informasi kepada pengguna
melalui tampilan LCD terkait status penguncian atau
kesalahan dalam memasukkan kode?
1.3.
Tujuan Penelitian
1.
Mempelajari cara kerja mikrokontroler Arduino Uno dalam mengelola proses input dan output pada sistem
keamanan berbasis keypad.
2.
Mengimplementasikan sistem autentikasi sederhana
menggunakan password digital untuk membuka dan mengunci pintu
otomatis.
3.
Memahami cara kerja LCD dan servo motor sebagai
perangkat output dalam suatu
rangkaian embedded system.
4.
Mengembangkan kemampuan
mahasiswa dalam merancang, mengintegrasikan, dan
menguji perangkat keras serta perangkat lunak pada sistem berbasis
mikrokontroler.
5.
Melatih keterampilan analisis, kerjasama
kelompok, dan pemecahan
masalah dalam menerapkan
konsep Arsitektur dan Organisasi Komputer.
BAB II
2.1
Arduino Uno
Arduino Uno adalah papan mikrokontroler
berbasis ATmega328P yang banyak digunakan dalam pembelajaran sistem embedded dan automasi. Arduino
Uno memiliki 14 pin
digital I/O, 6 pin analog,
clock 16 MHz, dan dilengkapi dengan port USB untuk pemrograman. Dalam konteks Arsitektur dan
Organisasi Komputer, Arduino Uno bekerja sebagai unit pemrosesan yang
mengeksekusi instruksi dari program (sketch) secara sequential. Mikrokontroler
mengatur komunikasi antara perangkat input, seperti keypad, dan perangkat
output, seperti servo dan LCD, melalui mekanisme pengolahan sinyal digital
maupun analog.
2.2
Sistem Pengendalian Pintu Pintar
Sistem keamanan pintu pintar (Smart Door Lock) merupakan implementasi
teknologi penguncian otomatis yang menggunakan autentikasi digital untuk
membuka atau mengunci pintu. Sistem seperti
ini menggantikan kunci konvensional dengan
metode akses berbasis
kode atau sensor elektronik.
Komponen utama
dari sistem pintu pintar berbasis
Arduino meliputi:
1.
Unit input → keypad sebagai
media memasukkan kode.
2.
Unit pemrosesan → Arduino Uno sebagai
pengendali logika sistem.
3.
Unit output → servo sebagai
aktuator dan LCD sebagai penampil
status sistem.
Sistem penguncian digital memiliki keunggulan dalam efisiensi, fleksibilitas, dan tingkat keamanan
yang lebih baik dibanding sistem manual.
2.3
Keypad 4x4
Keypad
4x4 merupakan komponen
input yang terdiri
dari 16 tombol yang disusun
dalam bentuk matriks baris dan kolom (4 baris × 4 kolom). Ketika sebuah
tombol ditekan, baris dan kolom yang terhubung akan saling ter-short sehingga Arduino dapat
mendeteksi tombol mana yang aktif.
Dari sisi arsitektur komputer, pembacaan
keypad merupakan bentuk pemindaian (scanning input) yang dilakukan secara rutin
oleh mikrokontroler. Arduino akan mengirim sinyal pada tiap baris dan membaca
respon dari kolom untuk mendeteksi tombol yang ditekan.
2.4
Liquid Crystal Display (LCD)
LCD 16×2 digunakan untuk menampilkan teks berupa instruksi atau status sistem,
seperti “Input Kode”, “Akses Diterima”, atau “Kode Salah”. LCD berfungsi
sebagai antarmuka pengguna (user
interface) yang membuat sistem menjadi lebih informatif.
LCD dioperasikan melalui mode 4-bit
maupun 8-bit. Pada penelitian/praktikum ini digunakan mode 4-bit untuk
menghemat penggunaan pin digital Arduino.
Pengiriman karakter dilakukan
secara serial oleh mikrokontroler menggunakan library LiquidCrystal.
2.5
Servo Motor
Servo motor adalah aktuator yang mampu
bergerak pada sudut tertentu secara presisi. Pada sistem pintu pintar, servo
digunakan sebagai penggerak mekanisme kunci, misalnya mengunci pada posisi 90°
dan membuka pada posisi 0°.
Secara arsitektural, servo menerima
sinyal PWM (Pulse Width Modulation) dari Arduino. Lebar pulsa menentukan posisi
servo. Mikrokontroler mengelola pembuatan sinyal ini secara real-time melalui
timer internal.
2.6
Konsep Autentikasi Digital
Autentikasi digital adalah proses
verifikasi identitas pengguna
berdasarkan data tertentu, dalam hal ini berupa kode
numerik. Sistem hanya memberikan akses jika input yang dimasukkan sesuai dengan
kode yang telah diprogram.
Proses autentikasi pada Arduino melibatkan:
1.
Pengambilan input dari keypad.
2.
Penyimpanan sementara
(buffer) di memori mikrokontroler.
3.
Perbandingan string input
dengan password yang telah ditentukan.
4.
Eksekusi perintah sesuai hasil verifikasi (akses diterima atau ditolak).
Konsep
ini merupakan implementasi sederhana dari sistem keamanan digital yang
digunakan pada perangkat elektronik modern.
2.7
Bahasa Pemrograman Arduino (C/C++)
Arduino menggunakan bahasa pemrograman berbasis C/C++ yang telah
dimodifikasi agar lebih sederhana. Struktur program terdiri dari dua
bagian utama:
·
setup() → dijalankan sekali saat board
dinyalakan.
·
loop() → dijalankan terus-menerus selama board aktif.
Dari sudut pandang organisasi komputer, program dalam Arduino dieksekusi secara linear dan sinkron, sehingga sangat bergantung
pada logika kontrol yang dituliskan oleh programmer.
2.8
Hubungan Antar-Komponen dalam Sistem
Hubungan antar-komponen membentuk alur kerja sebagai berikut:
1.
Pengguna memasukkan
kode melalui keypad.
2.
Arduino menerima sinyal input dan menyimpannya sementara.
3.
Arduino membandingkan kode input dengan
password yang benar.
4.
Jika cocok → Arduino mengirim
sinyal ke servo
untuk membuka kunci
dan
menampilkan status
pada LCD.
5.
Jika salah → Arduino menampilkan “Kode Salah”
dan sistem tetap terkunci.
Alur ini menunjukkan bagaimana
mikrokontroler berfungsi sebagai
pusat pemrosesan, mengatur
komunikasi input–output berdasarkan instruksi yang telah diprogram.
BAB III
METODOLOGI PENELITIAN
3.1 Desain Sistem
Sistem Smart Door Lock berbasis keypad
ini dirancang untuk memberikan mekanisme pengamanan pintu yang efisien,
otomatis, dan mudah digunakan. Proses identifikasi dilakukan menggunakan keypad 4×4 sebagai
media input kode. Sensor ultrasonik berfungsi sebagai pemicu (trigger) aktifnya
sistem ketika mendeteksi objek pada jarak tertentu. LCD berperan sebagai media
informasi bagi pengguna, sedangkan servo digunakan sebagai aktuator untuk
membuka dan mengunci pintu. Keseluruhan komponen dikendalikan oleh mikrokontroler
Arduino Uno, yang menjalankan logika validasi password, pengaturan servo, serta
tampilan informasi.
3.2
Flowchart Sistem
(Gambar 1 flowchart sistem) |
3.3 Alat dan Bahan
Praktikum ini dilaksanakan menggunakan simulator berbasis
web Autodesk Tinkercad dengan rincian komponen sebagai berikut:
1.
Arduino UNO R3
2.
Keypad 4x4
3.
Micro Servo
4.
LCD 16x2
5.
Resistor 220Ω &
Potensiometer
6.
Breadboard & kabel
jumper
7.
Piezo buzzer
8.
Ultrasonic Sensor
3.4 Perancangan Perangkat Keras (Wiring)
Komponen-komponen dirangkai
secara terintegrasi dengan rincian koneksi
sebagai berikut:
1.
Sensor Ultrasonik HC-SR04
|
Pin Sensor |
Pin Arduino |
|
VCC |
5V |
|
GND |
GND |
|
TRIG |
D12 |
|
ECHO |
D11 |
2.
Keypad 4×4
|
Baris/Kolom |
Pin Arduino |
|
R1 – R4 |
D9, D8, D7, D6 |
|
C1 – C4 |
D5, D4, D3, D2 |
3.
LCD I2C
|
Pin LCD |
Pin Arduino |
|
SDA |
A4 |
|
SCL |
A5 |
|
VCC |
5V |
|
GND |
GND |
4.
Servo Motor
|
Komponen |
Pin Arduino |
|
Sinyal |
D13 |
|
VCC |
5V |
|
GND |
GND |
5.
Buzzer
|
Komponen |
Pin Arduino |
|
Positif |
A0 |
|
GND |
GND |
3.5 Perancangan Perangkat Lunak (Software)
Perangkat
lunak disusun menggunakan bahasa pemrograman Arduino dengan beberapa library
pendukung:
·
Keypad.h →
membaca input tombol dari keypad.
·
LiquidCrystal_I2C.h
→ menampilkan data ke LCD.
·
Servo.h →
mengatur sudut servo.
·
Wire.h → komunikasi I2C.
Struktur software
dirancang menjadi beberapa fungsi utama:
1.
setup()
·
Inisialisasi LCD, sensor ultrasonik, buzzer,
dan servo.
·
Mengatur kondisi awal sistem pada mode standby (“TIDAK TERDETEKSI”).
2.
loop()
·
Membaca jarak ultrasonik secara terus-menerus.
·
Mengaktifkan mode input jika objek terdeteksi.
·
Mengolah input password
dan memproses validasi.
·
Mengendalikan servo berdasarkan hasil validasi.
·
Melakukan reset sistem
jika objek pergi.
3.
getDistance()
Mengambil jarak menggunakan prinsip
pantulan gelombang ultrasonik (echo).
4.
unlockdoor() Berisi proses:
·
Menampilkan akses diterima
·
Membuka pintu (servo 0°)
·
Menunggu objek
hilang
·
Perintah mengunci kembali
(servo 90°)
·
Reset sistem
5.
incorrect()
Menampilkan pesan ketika kode
salah.
6.
torture1() & torture2()
Mengaktifkan
sistem penguncian sementara (delay 15 detik dan 1 menit) untuk mencegah brute-force.
7.
beep() & unlockbuzz()
Memberikan indikator suara pada beberapa
kondisi.
BAB
IV
HASIL DAN PEMBAHASAN
4.1
Hasil Implementasi Sistem
Setelah proses perancangan pada Bab
sebelumnya, sistem Smart Door Lock berbasis
keypad berhasil diimplementasikan menggunakan platform Arduino Uno serta
lingkungan simulasi Tinkercad. Sistem
ini mampu melakukan proses autentikasi menggunakan input kode numerik
melalui keypad dan menampilkan status sistem secara real-time melalui LCD 16×2.
Hasil simulasi menunjukkan bahwa
mekanisme kunci pintu (servo) dapat merespons sesuai logika program, yaitu:
1.
Pintu terbuka apabila
pengguna memasukkan kode yang benar.
2.
Pintu tetap terkunci apabila kode
yang dimasukkan salah, disertai tampilan pesan kesalahan.
3.
LCD menampilkan state sistem
mulai dari kondisi
terkunci, proses input,
verifikasi password, hingga status pintu terbuka.
Gambar berikut
menunjukkan tampilan akhir
hasil simulasi sistem
yang telah berjalan:
4.2 Pembahasan
Berdasarkan hasil simulasi, sistem dapat menjalankan fungsinya sesuai kebutuhan proyek. Pembahasan sistem
dijelaskan sebagai berikut:
4.2.1 Proses Autentikasi
Pengguna memasukkan empat digit kode
melalui keypad. Setiap penekanan tombol ditampilkan pada LCD dalam
bentuk karakter bintang (*) untuk menjaga privasi input. Setelah empat digit terkumpul, Arduino melakukan verifikasi dengan membandingkan input dengan kode yang ditetapkan dalam
program.
Jika
kode benar, program
mengeksekusi fungsi untuk
membuka pintu dengan mengubah sudut servo menjadi
posisi terbuka. Jika salah, sistem menampilkan pesan “KODE SALAH” pada LCD.
4.2.2 Respons Aktuator (Servo
Motor)
Servo berfungsi
sebagai representasi mekanisme kunci pintu.
·
Posisi 90° → kondisi terkunci
·
Posisi 0° → kondisi
terbuka
Perubahan posisi
servo terjadi otomatis
setelah verifikasi password,
dan akan kembali ke posisi
terkunci setelah jeda waktu tertentu.
4.2.3 Tampilan Status Melalui
LCD
LCD bertindak sebagai antarmuka utama
yang memberikan informasi kepada pengguna, seperti:
·
“SISTEM TERKUNCI” saat awal sistem
dijalankan
·
“PASSWORD:” ketika pengguna
mulai memasukkan kode
·
“AKSES DITERIMA” saat autentikasi berhasil
·
“KODE SALAH” ketika autentikasi gagal
Fungsi ini penting untuk
memberikan feedback langsung kepada
pengguna.
4.2.4
Evaluasi Kinerja
Sistem
Secara keseluruhan, hasil simulasi menunjukkan bahwa:
·
Sistem berjalan stabil tanpa error pada proses input
dan verifikasi.
·
Transisi tampilan LCD berjalan mulus
dan informatif.
·
Mekanisme servo bekerja
sesuai yang diharapkan.
·
Logika kontrol ringan sehingga
tidak memberikan beban berlebih pada mikrokontroler.
Dengan demikian, implementasi dapat dikatakan berhasil memenuhi tujuan
awal, yaitu merancang sistem keamanan pintu sederhana berbasis keypad.
BAB V
5.1
Kesimpulan
Berdasarkan proses perancangan,
implementasi, dan pengujian sistem Smart
Door Lock
berbasis keypad
menggunakan Arduino Uno, dapat
disimpulkan bahwa:
1.
Sistem keamanan pintu berhasil
dirancang dan berfungsi sesuai tujuan, yaitu memberikan mekanisme autentikasi
sederhana melalui input kode akses dari keypad 4×4.
2.
Proses verifikasi password berjalan
efektif, ditandai dengan kemampuan sistem membedakan antara input benar dan
salah, serta memberikan umpan balik langsung melalui tampilan LCD.
3.
Aktuator servo mampu mensimulasikan
mekanisme buka–tutup kunci pintu, di mana perubahan sudut servo menggambarkan
kondisi “terkunci” dan “terbuka” secara jelas.
4.
LCD berperan penting sebagai media
informasi kepada pengguna, menampilkan status
sistem secara real-time mulai dari proses
input, kesalahan kode,
hingga akses diterima.
5.
Secara keseluruhan, sistem telah
memenuhi tujuan pembelajaran mata kuliah Arsitektur dan Organisasi Komputer,
yaitu memahami hubungan perangkat input, mikrokontroler, dan aktuator dalam
satu rangkaian terintegrasi.
Dengan demikian, sistem ini dapat dijadikan contoh implementasi dasar konsep
embedded system dan integrasi komponen
digital dalam aplikasi keamanan
pintu sederhana.
5.2
Saran
Agar sistem dapat dikembangkan lebih baik pada penelitian atau praktikum selanjutnya, beberapa saran yang dapat
dipertimbangkan adalah sebagai berikut:
1.
Penambahan Modul Komunikasi
Sistem
dapat dikembangkan dengan modul Wi-Fi (ESP8266) atau Bluetooth untuk membuat
fitur kontrol jarak jauh seperti
membuka pintu melalui
aplikasi.
2.
Penyimpanan Riwayat Akses
Data waktu dan pengguna
yang memasukkan password
dapat disimpan pada SD
card untuk meningkatkan aspek monitoring.
3.
Penggunaan Sensor Tambahan
Sensor sidik jari, RFID, atau keypad dengan proteksi input dapat meningkatkan keamanan sistem secara keseluruhan.
4.
Optimasi User Interface
pada LCD
Tampilan LCD dapat dibuat lebih interaktif, misalnya menampilkan animasi singkat atau indikator loading agar lebih informatif.
5.
Penerapan pada Prototipe Fisik
Sistem sebaiknya
diuji pada prototipe
pintu nyata agar dapat menguji
kekuatan mekanik servo dan stabilitas sistem dalam penggunaan jangka
panjang.
DAFTAR PUSTAKA
Arduino. (2023). Arduino Uno Rev3 Documentation. Diakses dari https://www.arduino.cc/en/Main/ArduinoBoardUno
Banzi, M., & Shiloh, M. (2022). Getting Started with
Arduino: The Open Source Electronics Prototyping Platform (3rd ed.).
Sebastopol, CA: Maker Media.
Malvino, A. P., & Brown, J. A. (2015). Digital Computer
Electronics. New York: McGraw- Hill Education.
Margolis, M. (2011). Arduino
Cookbook. Sebastopol, CA: O’Reilly Media.
Monk, S. (2017).
Programming Arduino: Getting
Started with Sketches
(2nd ed.). New York:
McGraw-Hill Education.
Tinkercad. (2024). Tinkercad Circuits Documentation. Diakses dari
https://www.tinkercad.com

Tidak ada komentar:
Posting Komentar