- Dapat merancang sebuah sistem sehingga rancangan dapat menjadi sebuah alat
- Dapat mengnkombinasikan berbagai sensor, akuator, dan display
- Dapat mengetahui sebuah sistem menggunakan mikrokontroler
1. Pendahuluan [Kembali]
Keamanan kendaraan, khususnya mobil, menjadi
salah satu aspek penting yang perlu mendapat perhatian serius. Peningkatan
angka pencurian mobil dan insiden terkait keamanan lainnya membuat pemilik
kendaraan merasa was-was dan mencari solusi yang lebih aman dan efektif.
Teknologi keamanan konvensional, seperti alarm biasa, kunci kemudi, dan sistem
pelacakan GPS, meskipun cukup membantu, masih memiliki keterbatasan dalam
mendeteksi berbagai jenis ancaman secara real-time.
Oleh karena itu, diperlukan sistem keamanan yang
lebih canggih dan terintegrasi yang mampu memberikan perlindungan komprehensif.
Dengan perkembangan teknologi sensor dan mikroprosesor, kini memungkinkan untuk
mengembangkan sistem keamanan yang lebih maju dengan menggunakan berbagai jenis
sensor. Beberapa sensor yang dapat digunakan untuk meningkatkan keamanan mobil
meliputi sensor ultrasonik, sensor getaran (vibration), sensor gas MQ7, sensor
suhu LM35, dan sensor api (flame). Kombinasi dari berbagai sensor ini dapat
mendeteksi berbagai jenis ancaman, seperti upaya pencurian, kebocoran gas,
kebakaran, dan situasi darurat lainnya.
Keamanan kendaraan, khususnya mobil, menjadi
salah satu aspek penting yang perlu mendapat perhatian serius. Peningkatan
angka pencurian mobil dan insiden terkait keamanan lainnya membuat pemilik
kendaraan merasa was-was dan mencari solusi yang lebih aman dan efektif.
Teknologi keamanan konvensional, seperti alarm biasa, kunci kemudi, dan sistem
pelacakan GPS, meskipun cukup membantu, masih memiliki keterbatasan dalam
mendeteksi berbagai jenis ancaman secara real-time.
Oleh karena itu, diperlukan sistem keamanan yang
lebih canggih dan terintegrasi yang mampu memberikan perlindungan komprehensif.
Dengan perkembangan teknologi sensor dan mikroprosesor, kini memungkinkan untuk
mengembangkan sistem keamanan yang lebih maju dengan menggunakan berbagai jenis
sensor. Beberapa sensor yang dapat digunakan untuk meningkatkan keamanan mobil
meliputi sensor ultrasonik, sensor getaran (vibration), sensor gas MQ7, sensor
suhu LM35, dan sensor api (flame). Kombinasi dari berbagai sensor ini dapat
mendeteksi berbagai jenis ancaman, seperti upaya pencurian, kebocoran gas,
kebakaran, dan situasi darurat lainnya.
2. Tujuan [Kembali]
3. Alat dan Bahan [Kembali]
a.
Arduino
uno
Gambar 1. Arduino uno
b. Sensor
Flame
Gambar
2. sensor flame
c. Sensor
ultrasonic
Gambar
3. Sensor ultrasonic
d. Sensor
MQ7
Gambar 4. Sensor MQ7
e. Sensor
Vibration
Gambar
5. Sensor vibration
f. Sensor
LM35
Gambar
6. Sensor LM35
g. Motor
servo
Gambar
7. motor servo
h. Buzzer
Gambar
8. buzzer
i. Kipas
Gambar
9. kipas
j. Jumper
Gambar
10. jumper
k. Batterai
Gambar
11. batterai
l. LCD
Gambar
12. Lcd
m. Breadboard
Gambar 13. breadboard
4. Dasar Teori [Kembali]
1.
Arduino uno
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:
Pin-pin ATMega 328P:
2.
Buzzer
Buzzer
adalah sebuah komponen elektronika yang berfungsi untuk mengubah getaran
listrik menjadi getaran suara. Pada dasarnya prinsip kerja buzzer hamper sama
dengan loud speaker, jadi buzzer juga terdiri dari kumparan yang terpasang pada
diafragma dan kemudian kumparan tadi akan tertarik ke dalam atau keluar,
tergantung dari arah arus polaritas magnetnya, karena kumparan dipasang pada
diafragma maka setiap gerakan kumparan akan menggerakan diafragma secara
bolak-balik sehingga membuat udara bergetar yang akan menghasilkan suaara.
Buzzer biasa digunakan sebagai indicator bahwa proses telah selesai atau
terjadi suatu kesalahan pada sebuah alat (alarm).
Spesifikasi
buzzer
3.
Motor servo
Motor
servo adalah sebuah motor DC dengan sistem umpan balik tertutup di mana posisi
rotor-nya akan diinformasikan kembali ke rangkaian kontrol yang ada di dalam
motor servo. Motor ini terdiri dari sebuah motor DC, serangkaian gear,
potensiometer, dan rangkaian kontrol. Potensiometer berfungsi untuk menentukan
batas sudut dari putaran servo. Sedangkan sudut dari sumbu motor servo diatur
berdasarkan lebar pulsa yang dikirim melalui kaki sinyal dari kabel motor
servo.
Keunggulan
dari penggunaan motor servo adalah :
a.
Tidak bergetar dan tidak ber-resonansi saat beroperasi.
b.
Daya yang dihasilkan sebanding dengan ukuran dan berat motor.
c.
Penggunaan arus listik sebanding dengan beban yang diberikan.
d.
Resolusi dan akurasi dapat diubah dengan hanya mengganti encoder yang dipakai.
e.
Tidak berisik saat beroperasi dengan kecepatan tinggi
Spesifikasi
motor servo
4.
Sensor ultrasonic
Sensor
ultrasonik adalah sebuah sensor yang berfungsi untuk mengubah besaran fisis
(bunyi) menjadi besaran listrik dan sebaliknya. Cara kerja sensor ini
didasarkan pada prinsip dari pantulan suatu gelombang suara sehingga dapat
dipakai untuk menafsirkan eksistensi (jarak) suatu benda dengan frekuensi
tertentu. Disebut sebagai sensor ultrasonik karena sensor ini menggunakan
gelombang ultrasonik (bunyi ultrasonik).
Gambar
diatas menampilkan cara kerja dari sensor ultrasonic. Pada sensor ultrasonik, gelombang ultrasonik
dibangkitkan melalui sebuah alat yang disebut dengan piezoelektrik dengan
frekuensi tertentu. Piezoelektrik ini akan menghasilkan gelombang ultrasonik
(umumnya berfrekuensi 40kHz) ketika sebuah osilator diterapkan pada benda
tersebut. Secara umum, alat ini akan menembakkan gelombang ultrasonik menuju
suatu area atau suatu target. Setelah gelombang menyentuh permukaan target,
maka target akan memantulkan kembali gelombang tersebut. Gelombang pantulan
dari target akan ditangkap oleh sensor, kemudian sensor menghitung selisih
antara waktu pengiriman gelombang dan waktu gelombang pantul diterima.
Spesifikasi
sensor ultrasonic
Grafik jarak banding waktu sensor ultrasonic
Visualisasi sinyal dari sensor
ultrasonic
5. Sensor flame
Flame Sensor adalah komponen elektronika yang memiliki
fungsi dapat mendeteksi nyala api dengan panjang gelombang 760nm – 1100nm.
Sensor nyala api ini mempunyai sudut pembacaan 60 derajat, dan beroperasi pada
suhu -25 derajat -85 derajat. Dan jarak pembacaan antara sensor dan objek yang
dideteksi tidak boleh terlalu dekat, untuk menghindari kerusakan sensor.
Analog output (A0): Real-time sinyal tegangan output
pada tahan panas. Dengan pin Analog Output ini kita bisa memperkirakan letak
api karena pembacaan sensor ini yaitu 60 derajat.
Digital output (D0): Jika suhu mencapai batas tertentu,
output akan tinggi dan rendah ambang sinyal disesuaikan melalui potensiometer.
Tegangan input untuk pin Analog adalah 5V dan jika
menggunakan pin digital dapat menggunakan tegangan 3.3V.
Spesifikasi sensor flame
Grafik respon sensor flame
6.
Sensor vibration
Sensor getar yang digunakan adalah vibration sensor
yang dibuat untuk keadaan umum. Spesifikasi yang membutuhkan tegangan masukan
yang kecil membuat perangkat ini sangat sempurna digunakan untuk banyak
aplikasi di otomotif dan industriindustri elektronik.
Berikut merupakan karakteristik sensor getar
a. Tegangan masukannya mulai dari 2V s/d 36V DC.
b. Kehilangan arus sangat kecil ketika tegangan kecil
0,4 mA.
c. Sensitivitasnya bisa diatur.
d. Rugi-rugi arus masuk ± 5 nA.
e. Rugi-rugi tegangan yang keluar ± 3 mV
7.
Sensor LM35
Sensor
suhu LM35 adalah komponen elektronika yang memiliki fungsi untuk mengubah
besaran suhu menjadi besaran listrik dalam bentuk tegangan. Sensor Suhu LM35
yang dipakai dalam penelitian ini berupa komponen elektronika elektronika yang
diproduksi oleh National Semiconductor.
karakteristik dari sensor LM35:
- Memiliki
sensitivitas suhu, dengan faktor skala linier antara tegangan dan suhu 10
mVolt/ºC, sehingga dapat dikalibrasi langsung dalam celcius.
- Memiliki
ketepatan atau akurasi kalibrasi yaitu 0,5ºC pada suhu 25 ºC
- Memiliki
jangkauan maksimal operasi suhu antara -55 ºC sampai +150 ºC.
- Bekerja
pada tegangan 4 sampai 30 volt.
- Memiliki
arus rendah yaitu kurang dari 60 µA.
- Memiliki
pemanasan sendiri yang rendah (low-heating) yaitu kurang dari 0,1 ºC pada
udara diam.
- Memiliki
impedansi keluaran yang rendah yaitu 0,1 W untuk beban 1 mA.
- Memiliki
ketidaklinieran hanya sekitar ± ¼ ºC.
Grafik sensor LM35
8.
Sensor MQ7
Sensor MQ-7 adalah sebuah sensor gas CO (karbon
monoksida) yang cukup mudah dalam menggunakannya, memiliki sensitivitas yang
tinggi dan waktu respon yang cukup cepat. Sensor ini sangat cocok untuk
mendeteksi gas CO dengan jangkauan mulai dari 20 sampai 2.000 ppm (Part Per
Million). Pada sensor ini terdapat nilai resistansi sensor (Rs) yang dapat
berubah bila mendeteksi gas dan juga sebuah pemanas yang digunakan sebagai
pembersih sensor dari kontaminasi udara dari luar (Faroqi, Hadisantoso, Halim,
& Sanjaya, 2016). Output yang dihasilkan sensor ini berupa sinyal analog
dan membutuhkan tegangan direct current (DC) sebesar 5V. Sensor MQ-7 ini memiliki
6 pin, 4 pin yang digunakan untuk mengambil sinyal dan 2 pin digunakan untuk
memberikan pemanasan material sensor, struktur dan konfigurasi sensor gas.
Spesifikasi sensor MQ7
Grafik respon sensor MQ7
- 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]
Arduino master bertanggung jawab
untuk mengumpulkan data dari berbagai sensor. Sensor flame mendeteksi adanya
api atau sumber panas yang tidak normal, sensor vibration mendeteksi getaran
yang menunjukkan adanya benturan atau upaya pembobolan, sensor gas MQ7
mendeteksi keberadaan gas karbon monoksida, sensor suhu LM35 memantau suhu di
dalam mobil, dan sensor ultrasonik mendeteksi pergerakan atau objek di sekitar
mobil.
Arduino master terus-menerus memonitor dan membaca
data dari sensor-sensor ini. Ketika mendeteksi kondisi abnormal seperti api,
getaran, kebocoran gas, suhu tinggi, atau pergerakan mencurigakan, Arduino
master akan mengirimkan data atau sinyal ke Arduino slave melalui komunikasi UART.
Arduino slave bertindak sebagai
pengendali eksekusi tindakan berdasarkan data yang diterima dari master.
Tindakan-tindakan ini meliputi mengaktifkan alarm suara melalui buzzer,
menampilkan pesan peringatan di LCD, mengaktifkan kipas untuk menurunkan suhu.
Dengan demikian, Arduino master
bertugas sebagai pengumpul dan pemroses data dari sensor-sensor, sementara
Arduino slave bertugas sebagai penerima data dan pengendali output atau
tindakan yang harus diambil. Hal ini memungkinkan sistem untuk merespons secara
cepat dan efektif terhadap berbagai ancaman yang terdeteksi, memberikan
keamanan yang lebih komprehensif bagi kendaraan
SLAVE
A. Master
//
Kode untuk Arduino Master #define
LM35 A0 #define
GAS_SENSOR 13 #define
FLAME_SENSOR 12 #define
VIBRATION_SENSOR 11 #define
TRIGGER_PIN 10 #define
ECHO_PIN 9
void
setup()
{
Serial.begin(9600);
pinMode(GAS_SENSOR,
INPUT);
pinMode(FLAME_SENSOR,
INPUT);
pinMode(VIBRATION_SENSOR,
INPUT);
pinMode(TRIGGER_PIN,
OUTPUT);
pinMode(ECHO_PIN,
INPUT); }
void
loop() {
float suhu = analogRead(LM35);
float voltage = suhu * (5.0
/ 1023.0);
// Mengonversi nilai analog ke tegangan
float temperature =
voltage * 100.0;
// Mengonversi tegangan ke suhu (°C)
if (temperature
>= 39) {
Serial.write('B');
// Menghidupkan motor pada pin 9 Slave
}
int gas = digitalRead(GAS_SENSOR);
if (gas
== HIGH) {
Serial.write('A');
// Menghidupkan motor pada pin 11 Slave
} else
{
Serial.write('C');
// Mengaktifkan pin 10 Slave
}
if (digitalRead(FLAME_SENSOR)
== HIGH) {
Serial.write('D');
// Menghidupkan buzzer pada pin 13 Slave
}
if (digitalRead(VIBRATION_SENSOR)
== HIGH) {
Serial.write('E');
// Menghidupkan buzzer pada pin 12 Slave
}
// Kode untuk sensor ultrasonik
digitalWrite(TRIGGER_PIN,
LOW);
delayMicroseconds(2);
digitalWrite(TRIGGER_PIN,
HIGH);
delayMicroseconds(10);
digitalWrite(TRIGGER_PIN,
LOW);
long duration = pulseIn(ECHO_PIN,
HIGH);
int distance = duration * 0.034
/ 2;
if (distance
< 200) {
// Jika ada benda dalam jarak 200 cm
Serial.write('F');
// Mengirimkan perintah ke Slave untuk menampilkan pesan
}
delay(100); }
|
B. Slave
#include
<Wire.h> #include
<LiquidCrystal_I2C.h> #include
<Servo.h>
//
Inisialisasi LCD I2C dengan alamat 0x27 dan ukuran 16x2 LiquidCrystal_I2C
lcd(0x27,
16, 2);
Servo
myservo; // Membuat objek servo
int
motorPin2 = 9; int
ledPin = 10; int
buzzerPin = 13; int
buzzerPin2 = 12;
//
Variabel untuk menyimpan waktu terakhir sensor terpicu unsigned
long lastTriggerTime = 0;
const
unsigned long
clearDelay = 50000;
// Waktu tunda untuk membersihkan LCD (dalam milidetik)
void
setup()
{
Serial.begin(9600);
myservo.attach(11);
// Menghubungkan servo ke pin 11
pinMode(motorPin2,
OUTPUT);
pinMode(ledPin,
OUTPUT);
pinMode(buzzerPin,
OUTPUT);
pinMode(buzzerPin2,
OUTPUT);
// Inisialisasi LCD I2C
lcd.init();
lcd.backlight();
// Menampilkan pesan pada LCD
lcd.print("Hello"); }
void
loop() {
if (Serial.available())
{
char command = Serial.read();
switch (command)
{
case
'A':
myservo.write(180);
// Mengatur servo ke +90 derajat
lcd.setCursor(0,
1);
// Mengatur posisi kursor pada baris kedua
lcd.print("Motor
ON ");
// Menampilkan pesan pada LCD
break;
case
'B':
digitalWrite(motorPin2,
HIGH);
lcd.setCursor(0,
1);
lcd.print("Motor2
ON ");
break;
case
'C':
myservo.write(0);
break;
case
'D':
digitalWrite(buzzerPin,
HIGH);
lcd.setCursor(0,
1);
lcd.print("Buzzer
ON ");
break;
case
'E':
digitalWrite(buzzerPin2,
HIGH);
lcd.setCursor(0,
1);
lcd.print("Buzzer2
ON ");
break;
case
'F':
lcd.clear();
// Membersihkan LCD
lcd.setCursor(0,
0);
// Mengatur posisi kursor pada baris pertama
lcd.print("Ada
sesuatu");
// Menampilkan pesan pada baris pertama
lcd.setCursor(0,
1);
// Mengatur posisi kursor pada baris kedua
lcd.print("di
belakang");
// Menampilkan pesan pada baris kedua
lastTriggerTime = millis();
// Memperbarui waktu terakhir sensor terpicu
break;
}
delay(10);
// Matikan semua output
myservo.write(0);
// Mengatur servo ke posisi 0 derajat
digitalWrite(motorPin2,
LOW);
digitalWrite(ledPin,
LOW);
digitalWrite(buzzerPin,
LOW);
digitalWrite(buzzerPin2,
LOW);
}
// Cek apakah sudah lewat waktu tunda sejak sensor terakhir terpicu
if (millis()
- lastTriggerTime >= clearDelay)
{
lcd.clear();
// Membersihkan LCD jika sudah lewat waktu tunda
lastTriggerTime = millis();
// Reset waktu terakhir sensor terpicu
} }
|
- Download HTML disiniDownload rangkaian simulasi disiniDownload kode program Master disiniDownload kode program Slave disiniDownload vidio simulasi disini
Download Vidio Demo disiniDownload datasheet Arduino uno disiniDownload datasheet Buzzer disiniDownload datasheet Flame disiniDownload datasheet LM35 disiniDownload datasheet MQ-7 disiniDownload datasheet Ultrasonic disiniDownload datasheet Vibration disini