PINTU MORSE “PINTU MORSE: KODE KETUKAN PADA PINTU BERBASIS MIKROKONTROLER SEBAGAI SISTEM PENGUNCIAN, BEL PINTU, DAN NOTIFIKASI MELALUI PESAN SINGKAT” Dita Nur Ismi

  Seminar Nasional Terapan Riset Inovatif SEMARANG, 15

  • – 16 Oktober 2016

  

PINTU MORSE

“PINTU MORSE: KODE KETUKAN PADA PINTU BERBASIS

MIKROKONTROLER SEBAGAI SISTEM PENGUNCIAN, BEL PINTU,

DAN NOTIFIKASI MELALUI PESAN SINGKAT”

  Dita Nur Ismi 1) , Sakka Fatahillah 2) , Abdul Basith Faiz Al-Ahmad 3) , Aprilla Putri Hardiyanti 4) , Muhammad Mahfud Farid Taufiqi 5) 1,2

  Teknik Elektro, Politeknik Negeri Semarang

  3 Teknik Mesin, Politeknik Negeri Semarang 4 ,5

  Teknik Sipil, Politeknik Negeri Semarang Email : ismideeta@gmail.com, slfatahillah@gmail.com, bastic.dul@gmail.com aprillaputri027@gmail.com, mahfudalfarid26@gmail.com

  Abstract

Every house has door(s). And every door has its key to protect it. Most cases about the key

are the key is broken, lost, or forgot which one is the exact key for the door. It made the

owner confuse and uncomfortable. Therefor, we create Pintu Morse. The owner no need to

be afraid about the broken or lost key. This door uses Piezoelectric sensor as the main

sensor that send the data (the knock) to Arduino microcontroller as the data processing. The

pupose of this creation are 1) The owner will be easy to open the door with no key(s), 2)

Help the owner to know about someone who come to the house by a SMS notification. The

result of Pintu Morse are first, when the door closed (locked), then the knock(s) that

inputted to the sensor is correct, so the key will open. Second, when the door closed

(locked), then the knock(s) are wrong, the buzzer will ring and the modul gsm will send a

SMS notification to the owner. The closed door considered as the owner is out of the

h

ouse. The knock(s) has its special rhythm that match with the code that’s inputted by the

owner.

  Keywords: Piezoelectric sensor, Door, Arduino, Safety, Knock

Abstrak

Pintu adalah komponen properti yang harus ada pada rumah. Setiap pintu pasti memiliki

kunci sebagai pengaman rumah. Kasus yang seringkali terjadi adalah kunci yang hilang,

rusak, ataupun lupa kunci mana yang sesuai dengan pintu yang ingin dibuka. Hal itu tentu

saja membuat pemilik kunci merasa khawatir dan tidak nyaman. Maka dari itu kami

menciptakan Pintu Morse. Pemilik rumah tidak perlu khawatir mengenai kehilangan

ataupun rusak. Pintu ini menggunakan sensor piezoelektrik sebagai sensor utama dalam

mengirimkan data (berupa ketukan) yang kemudian diproses dalam mikrokontroller

arduino sebagai pengolah data. Alat-alat yang digunakan kemudian diterapkan pada pintu.

Tujuan yang diharapkan adalah 1) mempermudah pemilik rumah membuka pintu yang

terkunci, tidak perlu menggunakan anak kunci, 2) membantu pemilik rumah mengetahui

tamu yang datang melalui notifikasi pesan singkat yang diterima. Hasil dari Pintu Morse

ini adalah pertama yaitu ketika pintu terkunci, kemudian ketukan yang diinputkan benar,

maka kunci akan terbuka. Kedua yaitu ketika pintu tertutup namun ketukan yang

diinputkan salah, maka modul GSM akan mengirimkan pesan singkat kepada pemilik

rumah mengenai adanya tamu yang berkunjung. Kondisi pintu tertutup ini dianggap bahwa

pemilik rumah sedang meninggalkan rumah. Ketukan yang dilakukan mempunyai irama

tertentu sesuai dengan kode ketukan yang telah diatur oleh pengguna.

  Kata Kunci: Sensor Piezoelektrik, Pintu, Arduino, Keamanan, Ketukan.

  PENDAHULUAN

  Setiap rumah tentu saja memiliki pintu. Pintu itu tentu saja memiliki kunci. Dan setiap rumah tentunya tidak hanya terdapat satu pintu saja. Maka otomatis, kunci yang didapat juga lebih dari satu. Kasus yang seringkali terjadi di lingkungan masyarakat ini adalah kunci yang hilang, rusak, ataupun lupa kunci mana yang sesuai dengan pintu yang ingin dibuka. Hal itu tentu saja membuat pemilik kunci merasa tidak nyaman jika suatu ketika kejadian itu terjadi. Maka dari itu kami menciptakan Pintu Morse. Pemilik rumah tidak perlu khawatir mengenai kehilangan, kerusakan, atau lupa mengenai kunci yang dimiliki. Pintu ini menggunakan sensor piezoelectric sebagai sensor utama dalam mengirimkan data (berupa ketukan) yang kemudian diproses dalam modul arduino sebagai pengolah data. Alat-alat yang digunakan itu kemudian akan diterapkan pada pintu yang akan dipakai.

  Pada pembuatan alat ini, sensor utama yang digunakan adalah sensor piezoelektrik yang digunakan sebagai sensor ketukan. Dengan kata lain sensor ini digunakan sebagai input. Input lain yang digunakan adalah Magnetic Switch. Saklar (switch) ini berfungsi untuk mendeteksi apakah pintu dalam kondisi terbuka atau tertutup. Kemudian terdapat Push Button sebagai tombol pengoperasian. Akan terdapat 3 tombol yang dapat doiperasikan oleh pengguna, yaitu tombol “Home” sebagai pendeteksi bahwa pemilik rumah berada di rumah, kemudian “Go” untuk mendeteksi pemilik rumah sedang pergi, dan tombol “Reset” untuk mengatur ulang atau mengganti kode ketukan. Sensor, Switch, dan Push Button ini kemudian diproses dalam mikrokontroller arduino. Output yang dihasilkan oleh alat ini ada 4 diantaranya LCD sebagai display, Buzzer sebagai pembunyi suara bel, Solenoid door lock sebagai pengunci pintu, dan modul gsm yang digunakan untuk mengirimkan informasi berbentuk pesan singkat kepada ponsel penerima (mobile receiver). Mikrokontroller Arduino ini sendiri diaktifkan menggunakan catu daya yang berasal dari adaptor. Tegangan yang dibutuhkan sebesar 12 volt.

  Gambar. 1. Diagram Blok Sistem Kerja Alat Untuk mencegah kemungkinan mengenai pengguna yang lupa password, dan saat itu terjadi pengguna sedang dalam kondisi di luar rumah ingin masuk rumah, alat ini menyediakan system reset yang tersembunyi di bagian bawah LCD yang berada di bagian depan pintu. Sistem reset yang digunakan pada modul LCD bagian depan ini memiliki penutup yang berkamuflase terhadap pintu, sehingga bisa mencegah orang lain untuk melakukan pembobolan. Reset ini sendiri silakukan dengan cara khusus, yaitu dengan menyediakan 3 pin. Pin pertama NC, pin kedua Vcc, dan pin ketiga Ground. Pada 3 pin ini disediakan mini jumper. Dalam keadaan normal, mini jumper ini menghubungkan pin NC dan pin Vcc. Kemudian jika pengguna ingin mengganti kode ketukan, pengguna bisa membuka penutup tersembunyi di bawah LCD bagian depan pintu, kemudian pengguna bisa memindahkan mini jumper pada pin Vcc dan Gnd sebentar saja. Lalu lepas mini jumper, dan pengguna bisa menginputkan ketukan baru pada pintu dalam rentan waktu maksimal 5 detik. Kemudian pasang lagi mini jumper pada pin NC dan Vcc. Setelah terpasang, pengguna bisa mengetukkan kode ketukan baru pada pintu dan pintu bisa terbuka.

  Terdapat 3 tahapan dalam pelaksanaan pembuatan “Pintu Morse: Kode Ketukan Pada Pintu Berbasis Mikrokontroller Sebagai Sistem Penguncian, Bel Pintu, dan Notifikasi Melalui Pesan Singkat”, yaitu: 1.

  Perancangan dan Pembuatan Pintu Pada tahap ini, proses pembuatan pintu dilakukan selama kurang-lebih 5 minggu. Ukuran pintu yang akan dibuat sebesar 250 cm x 100 cm. selain itu, pembuatan kusen dibuat lebih tebal dari pintu baik di bagian luar maupun dalam

  • –pada pintu biasa hanya bagian luar yang lebih tebal. Kusen bagian dalam dibuat lebih tebal bertujuan untuk penempatan solenoid door lock. Hal khusus lainnya ada pintu adalah membuat cekungan kotak pada bagian depan untuk penempatan LCD. Hal ini dilakukan supasa lebih estetis dan efisien dalam pemasangan.

  2. Perancangan dan Pembuatan Alat Pada tahap perancangan dan pembuatan alat ini, banyak alat dan bahan yang perlu disiapkan. Berikut langkah-langkah yang dilakukan pada tahap ini adalah: a.

  Membuat program yang akan mengoperasikan alat yang akan digunakan.

  b.

  Mendownload program pada alat yang telah dibuat.

  c.

  Menyambungkan komponen input-output (solenoid door lock, magnetic switch, buzzer, sensor Piezoelectric, LCD, dan modul GSM) ke modul mikrokontroller.

  d.

  Desain bentuk casing untuk wadah komponen e. Siapkan modul LCD yang digunakan sebagai antar-muka pengguna terhadap alat yang digunakan.

  f.

  Pasang modul LCD pada casing. i.

  Pemasangan dan penataan komponen-komponen pada modul mikrokontroller yang telah disusun ke dalam casing.

  3. Penerapan Alat pada Pintu Setelah alat yang telah dirangkai sudah siap, tahap berikutnya adalah menerapkan alat pada pintu. Hal-hal yang perlu dilakukan dalam penerapan alat pada pintu adalah: a.

  Pemasangan casing pada Pintu b.

  Penyesuaian komponen di dalam Casing c.

  Menerapkan modul LCD pada bagian depan pintu. Sambungkan modul LCD pada modul mikrokontroller.

  d.

  Pemasangan sensor Piezoelectric pada Pintu e. Pemasangan Solenoid Door Lock pada Pintu f. Pemasangan Magnetic Switch pada kusen dan pintu g.

  Pemasangan Pegas Pintu pada kusen dan pintu h. Pemasangan Power Supply atau Adaptor pada catu daya yang paling dekat dengan pintu. i.

  Penyesuaian Kabel Penghubung pada Pintu j. Pengujian Pintu dalam durasi waktu yang ditentukan k.

  Penyempurnaan Peralatan

  HASIL DAN PEMBAHASAN Gambaran Umum Cara Kerja Pintu Morse

  Cara kerja Pintu Morse ini menggunakan program utama yaitu Arduino Mega H2560 untuk memproses data yang diterima oleh sensor piezoelektrik yang kemudian menentukan kerja solenoid doorlock, LCD, Buzzer, Modul GSM. Pintu ini menggunakan kode ketukan untuk mampu membuka dan menutup kunci pintu, menghasilkan bunyi bel, dan mengirimkan pesan singkat berisi informasi mengenai adanya tamu kepada pemilik rumah. Pintu ini menggunakan sebuah alat yang ditanamkan pada pintu. Alat ini memakai sensor utama berupa sensor piezoelectric.

  Sensor inilah yang nantinya akan meneruskan apa yang diinputkan (berupa ketukan) ke sebuah modul mikrokontroller. Dalam modul mikrokontroller inilah yang nantinya akan menentukan apakah pintu akan terbuka kuncinya, membunyikan bel, atau mengirimkan pesan singkat. Terdapat tiga kemungkinan output yang dihasilkan pada Pintu Morse ini. Pertama yaitu ketika pintu terkunci, kemudian ketukan yang diinputkan benar, maka kunci akan terbuka. Kedua yaitu ketika pintu tertutup namun ketukan yang diinputkan salah, maka modul GSM akan mengirimkan pesan singkat kepada pemilik rumah mengenai adanya tamu yang berkunjung. Kondisi pintu tertutup ini dianggap bahwa pemilik rumah sedang meninggalkan rumah. Ketiga yaitu ketika pintu terbuka kemudian ada yang mengetuk pintu, maka buzzer akan berbunyi seperti bel rumah pada umumnya. Hal ini dilakukan karena kebanyakan pemilik rumah tidak menyadari ataupun mendengar adanya ketukan pintu di rumahnya.

  Dari program yang dibuat dilakukan juga pengujian terhadap kerja pintu yaitu: pengujian keseiramaan getaran atau ketukan pada sensor piezoelektrik, pengujian modul sms pada pintu , pengujian buzzer apabila pintu salah ketuk.

  Tahap Pengujian Proses ketukan

   Pada uji coba yang pertama , data masih berupa banyak ketukan yang dimasukan, belum berupa irama, dan mengalami kesulitan.  Uji coba kedua, pintu sudah mampu mendeteksi kode ketukan berirama. Namun belum dapat untuk menyimpan data, karena memerlukan program tambahan untuk penyimpan data setelah dinyalakan ulang.

   Uji coba ketiga, alat sudah mampu menerima sistem reset untuk kode ketukan sehingga mampu mengganti-ganti kode ketukan yang ada dengan syarat memencet tombol rahasia yang ada di pintu.

  Pembahasan Alat

  Alat yang digunakan ini menggunakan program utama melalui mikrokontroller Arduino Mega h2560, dengan komponen elektronika masukan adalah sensor piezoelektrik, magnetic switch, dan push button. Kemudian komponen elektronika keluaran adalah solenoid doorlock, modul gsm, buzzer, dan LCD 16x2. Sensor piezoelektri berfungsi untuk mendeteksi ketukan yang diketukkan pada pintu dan kemudian diproses pada mikrokontroller arduino yang menyebabkan hasil keluaran sesuai dengan hasil masukan. Magnetic switch digunakan untuk mereset solenoid door lock yang aktif saat pintu terbuka, dan saat pintu tertutup maka magnetic switch akan aktif dan solenoid door lock akan off. Kemudian buzzer, modul gsm akan bekerja ketika kode ketukan yang dimasukkan salah. Terakhir LCD digunakan sebagai antar muka antara pengguna dan sistem pada pintu.

  Program Ketukan Irama

  Proses ketukan berirama ini adalah proses utama dalam alat ini karena inilah keunikan dari alat ini. Berikut program untuk ketukan berirama. Program tersebut membuat ketukan yang dimasukkan bekerja sebagai counter dan timer. Dalam waktu tertentu, harus terdapat data ketukan yang sesuai dengan data yang tersimpan. Dan int i; int j=1; void setup() { // put your setup code here, to run once: pinMode(0,INPUT_PULLUP); pinMode(13,OUTPUT); } void loop() { // put your main code here, to run repeatedly: if(digitalRead(0)==0){ // while(digitalRead(0)==0); delay (100); i++; } ketika data yang dimasukkan sudah benar, maka solenoid door lock akan aktif

  (penguncian terbuka)

  Program notifikasi melalui pesan singkat

  Program ini berfungsi untuk mengirimkan pesan singkat kepada pemilik pintu ketika ketukan yang dimasukkan tidak sama dengan data kode yang tersimpan.

  #include <GSM.h> #define PINNUMBER "" // initialize the library instance GSM gsmAccess; GSM_SMS sms; void setup() { // initialize serial communications and wait for port to open: Serial.begin(9600); while (!Serial) { ; // wait for serial port to connect. Needed for native USB port only } Serial.println("SMS Messages Sender"); // connection state boolean notConnected = true;

  // Start GSM shield // If your SIM has PIN, pass it as a parameter of begin() in quotes while (notConnected) { if (gsmAccess.begin(PINNUMBER) == GSM_READY) { notConnected = false; } else { Serial.println("Not connected"); delay(1000); } } Serial.println("GSM initialized"); } void loop() { Serial.print("Enter a mobile number: "); char remoteNum[20]; // telephone number to send sms readSerial(remoteNum); Serial.println(remoteNum); // sms text Serial.print("Now, enter SMS content: "); char txtMsg[200]; readSerial(txtMsg); Serial.println("SENDING"); Serial.println(); Serial.println("Message:"); Serial.println(txtMsg); // send the message sms.beginSMS(remoteNum); sms.print(txtMsg); sms.endSMS(); Serial.println("\nCOMPLETE!\n"); } Program ini akan mengirimkan pesan singkat kepada pengguna ketika kondisi tertentu diterima oleh sensor.

  Program nyala buzzer

  Buzzer berfungsi untuk membunyikan bel pada pintu sehingga menyebabkan pemilik pintu mengetahui adanya tamu yang datang. int readSerial(char result[]) { int i = 0; while (1) { while (Serial.available() > 0) { char inChar = Serial.read(); if (inChar == '\n') { result[i] = '\0'; Serial.flush(); return 0; } if (inChar != '\r') { result[i] = inChar; i++; } } }

  #include "pitches.h" // notes in the melody: int melody[] = { NOTE_C4, NOTE_G3, NOTE_G3, NOTE_A3, NOTE_G3, 0, NOTE_B3, NOTE_C4 }; // note durations: 4 = quarter note, 8 = eighth note, etc.: int noteDurations[] = { 4, 8, 8, 4, 4, 4, 4, 4 }; void setup() { // iterate over the notes of the melody: for (int thisNote = 0; thisNote < 8; thisNote++) { Dalam kondisi tertentu pintu akan didatangi tamu yang tidak mengetahui kode ketukan. Maka saat itu buzzer akan berbunyi untuk memberi tahu pemilik pintu bahwa ada tamu yang datang.

  Antarmuka LCD

  Program ini membuat pengguna yang mengetuk pintu mengetahui kondisi alat pada pintu.

  // to calculate the note duration, take one second // divided by the note type. //e.g. quarter note = 1000 / 4, eighth note = 1000/8, etc. int noteDuration = 1000 / noteDurations[thisNote]; tone(8, melody[thisNote], noteDuration); // to distinguish the notes, set a minimum time between them. // the note's duration + 30% seems to work well: int pauseBetweenNotes = noteDuration * 1.30; delay(pauseBetweenNotes); // stop the tone playing: noTone(8); } } const int row[8] = {

  2, 7, 19, 5, 13, 18, 12, 16 }; // 2-dimensional array of column pin numbers: const int col[8] = { 6, 11, 10, 3, 17, 4, 8, 9 }; // 2-dimensional array of pixels: int pixels[8][8]; // cursor position: int x = 5; int y = 5; void setup() { // initialize the I/O pins as outputs // iterate over the pins: for (int thisPin = 0; thisPin < 8; thisPin++) {

  // initialize the output pins: pinMode(col[thisPin], OUTPUT); pinMode(row[thisPin], OUTPUT); // take the col pins (i.e. the cathodes) high to ensure that // the LEDS are off: digitalWrite(col[thisPin], HIGH); } // initialize the pixel matrix: for (int x = 0; x < 8; x++) { for (int y = 0; y < 8; y++) { pixels[x][y] = HIGH; } } } void loop() { // read input: readSensors(); // draw the screen: refreshScreen(); } void readSensors() { // turn off the last position: pixels[x][y] = HIGH; // read the sensors for X and Y values: x = 7 - map(analogRead(A0), 0, 1023, 0, 7); y = map(analogRead(A1), 0, 1023, 0, 7); // set the new pixel position low so that the LED will turn on // in the next screen refresh: pixels[x][y] = LOW; } .

  Beberapa tampilan dari LCD ini adalah “Selamat datang”, “Silakan mengetuk”, dan “Pemilik rumah sedang pergi.” . pernyataan terakhir ini digunakan ketika pintu dalam kondisi terkunci dan pemilik rumah sedang pergi.

  SIMPULAN

  Pintu Morse ini adalah pintu yang menggunakan kode ketukan untuk membuka dan menutup kunci pintu, menghasilkan bunyi bel, dan mengirimkan pesan singkat berisi informasi mengenai adanya tamu kepada pemilik rumah. Pintu ini menggunakan alat yang ditanamkan pada pintu. Alat ini memakai sensor utama berupa sensor piezoelektrik. Sensor inilah yang akan meneruskan apa yang diinputkan (berupa ketukan) ke sebuah modul mikrokontroller. Dalam modul mikrokontroller inilah yang nantinya akan menentukan apakah pintu akan terbuka kuncinya, membunyikan bel, atau mengirimkan pesan singkat. Alat tambahan yang terpasang pada Pintu Morse ini ada modul GSM, Pegas Pintu, modul LCD, dan buzzer.