PENDAHULUAN
1.1 Latar Belakang
Dengan adanya pekembangan teknologi yaitu
internet maka dapat memudahkan hidup manusia salah satunya kita dapat berkomunikasi
jarak jauh tanpa harus tatap muka(bertemu langsung).
Seperti yang kita ketahui
bahwa mengantri adalah hal yang paling membosankan, namun bagaimana jika
mengantri dapat kita tunggu dimanapun kita mau tentu akan menjadi sensai yang
berbeda.
Dari paparan di diatas disini
kita akan membuat mesin antrian online sehingga dalam mengantri kita dapat cek
no antrian kita secara online. Sehingga dapat menghemat kertas karena no
antrian tidak berbasis kertas lagi.
1.2 Tujuan
1. Untuk mengecek nomor antrian secara online melalui web
2. Untuk menghemat penggunaan kertas
3. Pemanfaatan KTP
4. Untuk Mendapatkan nomor antrian tanpa harus datang ke tempat antrian
1.3 Manfaat
1. Mengurangi rasa bosan dalam mengantri tanpa harus menunggu di tempat
antrian
2. Ramah lingkungan karena piranti antrian menggunakan kartu yang tidak
sekali pakai seperti kertas
3. Selain kartu identitas ktp juga dapat digunakan untuk mengantri yang
menjadikan multi fungsi sebuah kartu
4. Lebih efisien dalam mengantri karena dalam pengambilan nomor antrian kita
tidak harus datang ke tempat antrian yang akan menghabiskan waktu, tenaga dan
juga materi
1.4 Rumusan Masalah
1. Bagaimana cara mempermudah dalam mengantri?
2. Apa upaya pemanfaatan kartu identitas ktp?
3. Peran teknologi digital jaringan online itu apa?
1.5 Sistematika
Penulisan
Sistematika
pembahasan penyusunan Proyek Akhir ini direncanakan sebagai berikut:
BAB 1 :
PENDAHULUAN
Bab ini membahas
pendahuluan yang terdiri dari latar belakang, tujuan, manfaat, rumusan masalah,
sistematika pembahasan Proyek Akhir.
BAB 2 : PENJELASAN
ALAT
Bab ini membahas
tentang cara penggunaan alat, sebelum digunakan alat ini perlu di set sesui ketentuan seperti sumber
listrik, jaringan, server dan juga bahan pembuatan alat.
BAB 3 : ALGORITMA
DAN FLOWCHART
Bab ini membahas
secara keseluruhan dari sistem kerja dari sebuah alat yaitu urutan-urutan yang
harus di lalui agar alat ini dapat bekerja dengan baik
BAB 4 : CODING
Bab ini membahas
sketch yang digunakan untuk memasukan ID ke dalam sebuah data base menggunakan
sebuah controller dan sensor.
BAB 5 : ANALISA
DAN KESIMPULAN
Bab ini membahas
kesimpulan dari pembahasan, perencanaan, pengujian dan analisa berdasarkan data
hasil pengujian sistem.
LAMPIRAN
Bab ini menampilkan
dokumentasi dari hasil proyek yang telah dibuat.
PENJELASAN ALAT
1.6 Pengertian
Mesaolin adalah sebuah alat yang digunakan untuk memberikan no antrian.
Alat ini dapat digunakan di rumah sakit, puskesmas, administrasi pemerintah,
komersial dll. Yaitu yang memiliki antrian yang panjang dalam pelayanan.
Penggunaan
dari alat ini adalah menggunakan sebuah kartu rfid, bisa sebuah kartu yang
dapat dibeli secara bebas atau bisa juga sebuah ktp elektronik yang di
daftarkan dalam database terlebih dahulu yang kemudian dapat digunakan untuk
mengantri dengan menge-tap/menempekan kartu pada alat tersebut.
Setelah
itu kita akan mendapatkan no antrian yang dapat di cek/dilihat secara online
melalui web yang telah di sediakan
1.7 Alat dan Bahan
1.
PC (memasukan data base)
2.
Jaringan/Router(local area)
3.
Software(Xampp, MS. VisualCode, Arduino
IDE)
4.
Modul NodeMCU
5.
Modul RFDID-RC522
6.
Modul LCD 16x2
7.
Buzzer
8.
Kabel jumper
1.8 Diagram Blok
1.9 Koneksi
1.10
Gambar Alat
1.11
Cara Penggunaan
1. Buka pc yang digunakan sebagai server hubungkan pc pada sebuah jaringan
2. Pastekan script php yang telah dibuat pada pc server(pada folder htdocs
jika menggukan xampplite)
3. Buka software xampplite start apache dan mysql
5. Ketik localhost/nama_folder/nama_file.php pada browser maka akan tampil
berapa file
6. Sambungkan alat ke sebuah jaringan yang sama dengan server, ubah pada
sketch Arduino yaitu ssid dan password jika ada
8. Upload menggunakan software Arduino
ide.
9. Alat siap digunakan.
1.12
File-file PHP yang digunakan
1.
insert.php digunakan untuk memasukan data
dari alat maupun web kedalam database server
2.
Koneksi.php digunakan untuk menghubungkan
script php dengan database mysql
3.
tabel_db.php digunkan untuk menampilkan
anggota member yang terdaftar pada alat
4.
edit_database.php digunakan untuk mengubah
identitas dari member yang terdaftar
5.
submit_edit_database.php digunakan untuk
memasukan data yang telah di edit ke dalam database
6.
delete_database.php digunakan untuk menghapus member dari daftar database
7.
submit_delete_database.php digunkan
untuk menghapus member di database
server
8.
tabel_antri.php digunakan sebagai tampilan
untuk memanggil nomor antrian
9.
call.php digunakan untuk menampikan nomor
antrian yang telah terpanggil
10.
daftar_antrian.php digunakan untuk melihat
nomor antrian yang sedang berjalan.
ALGORITMA DAN FLOWCHART
1.13
Algoritma
1.
Tap kartu rfid/ktp pada alat pertama kali
2.
Jika belum terhubung maka akan tampil
“koneksi error” pada lcd
3.
Jika telah terhubung dan menyimpan database
pada tabel db maka lcd akan menampilkan “anda terdaftar”
4.
Jika telah terhubung jaringan namun gagal
menyimpan dalam database server maka akan tampil “server error”
5.
Operator pc server mengisikan identitas
member yaitu nama dan tanggal lahir dengan cara klik link edit isi data dan
klik submit
6.
Jika ingin menghapus member dari database
klik link delete muncul kotak dialog klik ya lalu submit namun jika ingin
membatalkan klik tidak lalu submit
7.
Tap kartu rfid/ktp kedua
8.
Ulang ke algoritma 2 dan 4
9.
Cek pada database, jika terdaftar maka akan
masuk pada tabel antri dan mendapatkan nomor antrian
10.
Cara mendaftar juga dapat dilakukan melalui
web dengan mengunjungi url http://ip_server/mesaolin/antri_online.php lalu mengisikan nama dan tanggal lahir
yang sesuai dengan pendaftaran
11.
Jika belum terdaftar maka akan mendapatkan
nomor antrian
12.
Jika telah terdaftar dalam antrian maka
muncul link untuk melihat nomor antrian
13.
Tap kartu rfid/ktp ketiga dan seterusnya
akan menampilkan nomor antrian yang telah di dapat
14.
Operator pc dapat memanggil nomor antrian
dengan membuka file tabel_antri
15.
Klik link call maka akan memanggil nomor
antrian dan tampil pada layar sekaligus menghapus member dari tabel antrian
16.
Klik audio untuk memanggil ulang nomor
antrian
17.
Jika nomor antrian telah di panggil maka
akan mengulangi algoritma pertama
1.14
Flowchart
CODING
1.15
Coding Arduino
#include <Arduino.h>
#include <ESP8266WiFi.h>
#include <ESP8266WiFiMulti.h>
#include <ESP8266HTTPClient.h>
#include <SPI.h>
#include <MFRC522.h>
#include <LiquidCrystal_I2C.h>
#define USE_SERIAL Serial // Gunakan serial
sebagai monitor
#define SS_PIN D4
#define RST_PIN D3
// Buat object Wifi
ESP8266WiFiMulti WiFiMulti;
MFRC522 mfrc522(SS_PIN, RST_PIN); // Instance
of the class
LiquidCrystal_I2C lcd(0x27, 16, 2);
// Ini adalah alamat script (URL) yang kita
pasang di web server
// Silahkan sesuaikan alamat IP dengan ip
komputer anda atau alamat domain (bila di web hosting)
String url =
"http://192.168.43.116/mesaolin/insert.php?";
// Buat object http
HTTPClient http;
//deklarasi variable
String feedback;
void setup() {
lcd.begin(16,2);
lcd.init();
//
Nyalakan backlight
lcd.backlight();
pinMode(D0, OUTPUT);
USE_SERIAL.begin(115200);
USE_SERIAL.setDebugOutput(false);
SPI.begin(); // Init SPI bus
mfrc522.PCD_Init(); // Init MFRC522
for(uint8_t t = 4; t > 0; t--) {
USE_SERIAL.printf("[SETUP] Tunggu %d...\n", t);
USE_SERIAL.flush();
delay(1000);
}
Serial.println("RFID reading UID");
WiFi.mode(WIFI_STA);
WiFiMulti.addAP("SamsungA5","87654321");
// Sesuaikan SSID dan password ini
//
Pemanggilan pertama memerlukan parameter jumlah kolom dan baris
//
Ini harus sama dengan yang dimasukan pada konstruktor.
}
void loop() {
String
uid;
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("ID:");
if (
mfrc522.PICC_IsNewCardPresent())
{
if ( mfrc522.PICC_ReadCardSerial())
{
Serial.print("Tag UID:");
for (byte i = 0; i < mfrc522.uid.size; i++) {
uid = uid + String (mfrc522.uid.uidByte[i], HEX);
}
mfrc522.PICC_HaltA();
Serial.println(uid);
lcd.setCursor(3, 0);
lcd.print(uid);
// Cek apakah statusnya sudah terhubung
if((WiFiMulti.run() == WL_CONNECTED)) {
// Tambahkan isi pada URL yang sudah kita buat
// '?id=' adalah adalah nama parameter yang akan dikirimkan ke script
PHP
USE_SERIAL.print("[HTTP] Memulai...\n");
http.begin( url + "id="+uid);
// Mulai koneksi dengan metode GET
USE_SERIAL.print("[HTTP] Melakukan GET ke server...\n");
int httpCode = http.GET();
// Periksa httpCode, akan bernilai negatif kalau error
if(httpCode > 0) {
// Tampilkan response http
USE_SERIAL.printf("[HTTP] kode response GET: %d\n", httpCode);
// Bila koneksi berhasil,
baca data response dari server
if(httpCode == HTTP_CODE_OK)
{
feedback =
http.getString();
USE_SERIAL.println(feedback);
lcd.setCursor(0, 1);
lcd.print(feedback);
}
}
else {
USE_SERIAL.printf("[HTTP] GET gagal, error: %s\n",
http.errorToString(httpCode).c_str());
lcd.setCursor(0, 1);
lcd.print("Server error");
}
http.end();
}
else{
lcd.setCursor(0, 1);
lcd.print("Koneksi error");
}
digitalWrite (D0, HIGH);
delay(1000);
digitalWrite (D0, LOW);
delay(200);
}
}
delay(100);
}
1.16
Penjelasan coding
Coding Arduino digunakan untuk memprogram modul
nodemcu agar bisa membaca RFID,
Menampilkna di LCD 16x2, membunyikan buzzer, terhubung dengan jaringan
dan bisa memasukan database server. Dalam coding tersebut kita perlu
menambahkan library-library yang dapat di download di internet.
Langkah kerja dari coding tersebut adalah yang
pertama konek ke sebuah jaringan, kedua konek server, ketiga membaca rfid,
keempat membuat link url untuk alamat server, kelima menerima feedback dari
server.
ANALISA DAN KESIMPULAN
1.17
Analisa
Setelah saya menyelesaikan proyek ini di
dapatkankan hasil yaitu proyek ini dapat membantu dalam mengatasi antrian yang
panjang, yang dapat menghabiskan waktu dan energi.
Dalam pembuatan alat tersebut menggunakan media
online/jaringan dan juga teknologi RFID. Teknologi RFID yaitu membaca sebuah
kartu yang telah ditanami chip sehingga dapat menyimpan data digital.
Kartu RFID dibaca menggunakan sensor berbasis
electromagnet sehingga dengan mendekatkan kart uke dalam sebuah sensor
tersebut, sensor dapat membaca data digital berupa id yang bersifat unik
sehingga setiap kartu memiliki id yang berbeda dan tidak ada yang sama.
Pembacaan id akan diolah oleh kontroler
ditampilkan di LCD 16x2 dan di indikatorkan pada buzzer, setelah itu di
koneksikan dengan computer server menggukan url, data pembacaan ID RFID dikirim
menggunakan metode GET URL. Karena pada proyek ini menggunakan local server kita
harus menggunakan local host yaitu software xampplite.
Karena menggunakan local host dalam berkoneksi
kita menggunakan alamat IP. Syarat agar local server terkoneksi adalah
menggunakan jaringan yang sama dan net id yang sama. Setelah kontroler membuat
http kita dapat mengambil data dari server melalui url yang dibuat oleh
controller.
Data yang diambil tersebut di olah menggunakan
script PHP dan dimasukan kedalam database MYSQL, data dalam mysql tersebut dapat
diolah dan ditampilkan kembali di sebuah halaman web.
Sehingga kita dapat memasukan data untuk
mendapatkan nomor antrian, membaca nomor antrian yang di dapatkan,
mengedit identitas dari ID RFID yang dimasukan meggunakan kartu RFID,
dan juga menghapus data yang telah kita masukan.
1.18
Kesimpulan
Dari analisa
di atas maka dapat disimpulkan bahwa :
1.
Cara mempermudah dalam mengantri adalah dengan
mengganti no antrian berbasis kartu yang dapat digunakan berulang-ulang, tidak
seperti kertas yang sekali pakai dan tidak ramah lingkungan
2.
Salah satu kartu yang dapat digunakan adalah
KTP yang selama ini hanya digunakan untuk identitas diri saja dan tentu saja
lebih ekonomis
3.
Dalam melihat urutan antrian kita juga
dimudahkan oleh media online sehingga kita
tidak perlu datang langsung ke tenpat antrian
4.
Untuk menyelesaikan proyek ini juga diperlukan
pengolahan database yaitu : CRUD(Create, Read, Update, Delete) di mysql
menggunakan syntax PHP.