Pada gambar di bawah ini merupakan tampilan awal untuk memulai pembuatan database. Masuk ke dalam google drive menggunakan akun gmail. Setelah masuk ke maka akan muncul tampilan seperti di bawah ini.
Gambar 3. 11 Tampilan Google Drive
Setelah berhasil masuk ke dalam firebase muncul tampilan seperti pada gambar di bawah ini, selanjutnya membuat project kemudian pilih Google Spreadsheet.
Gambar 3. 12 Tampilan Membuat Spreadsheet
Tampilan Tambah project pada gambar 3.13 setelah memilih menu Buat project.
kemudian isi data sesuai dengan apa yang akan diteliti.
Gambar 3. 13 Tampilan Spreadsheet Baru
Tampilan Database pada gambar 3.14 setelah data base dimasukan maka data base siap diakses untuk keperluan penelitian.
Gambar 3. 14 Tampilan Database
setelah membuat data base kemudian membuat google script untuk mengakses atau mengabil data tersebut seperti pada gambar 3.15
Gambar 3. 15 Tampilan Membuat Script Baru
Tampilan project baru google script pada gambar 3.14 Setelah membuat project baru kemudian isi dengan perintah script yang digunakan untuk membaca isi data base menggunakan link api.
Tampilan script json pada gambar 3.16. Script tersebut digunakan untuk pemrograman membaca isi spreadsheet menggunakan akses link api. Isi spread sheet yang ditampilkan bisa diatur berdasarkan kolom dan baris, misalnya menampilkan isi spreadsheet dari A1 sampai A5 pada sheet 1. pernitah var ss = SpreadsheetApp.openByUrl(""); digunakan untuk membuka link spreadsheet, perintah var sheet = ss.getSheetByName(""); digunakan untuk mengidentifikasi nama sheet yang akan di ambil datanya pada spreadsheet tersebut. Perintah return getUsers(sheet); digunakan untuk membaca atau mengakses isi dari sheet yang sudah teridentifikasi. Perintah function getUsers(sheet) digunakan untuk mengidentifikasi apa saja perintah selanjutnya setelah mengakses sheet tersebut.
Di dalam perintah tersebut terdapat perintah var jo = {}; digunakan untuk memberi tanda kurung, var dataArray = []; digunakan untuk mengubah data menjadi aray, kemudian var rows = sheet.getRange(1,1,sheet.getLastRow()-1, sheet.getLastColumn()).getValues(); digunakan untuk membuka kolom maupun baris sesuai dengan panjang kolom dan baris. Selanjutnya setelah ada perintah identifikasi membaca kolom dan baris kemudian terdapat perintah selanjutnya sebagai opsi menjalankan perinta tersebut yaitu for(var i = 0, l= rows.length; i<l ; i++) perintah tersebut digunakan untuk membaca baris sesuai dengan panjang barus dan pembacaan baris di hitung dari angka 0 sebagai baris pertama. Di dalam perinta tersebut tertapat perintah selanjutnya yaitu var dataRow = rows[i];
perintah tersebut digunakan untuk mengidentifiasikan banyaknya kelompok baris tersebut ada berapa kolom atau mengidentifikasi banyaknya kolom yang ditempati baris. Kemudian perintah record = dataRow[0]; digunakan untuk mengidentifikasi baris pada kolom ke berapa yang akan di baca, syintax [0]
memiliki arti kolom yang dibaca yang dihitung dari 0 sebagai kolom pertama.
Selanutnya Perintah dataArray.push(record); yang digunakan membaca isi pada baris dan kolom yang sudah di ketahui. Setelah data terbaca kemudian data akan akan ditampilkan, untuk menampilkan data yang sudah di baca diperlukan identifikasi terlebih dahulu menggunakan perintah var result = JSON.stringify(dataArray); artinya variable result mengidentifikasikan Json yang berisi data yang sudah dibaca sebagai string. Setelah di jadikan variable kemudian
variable tersbut ditampilkan sebagai output hasil dari pembacaan tersebut dengan menggunakan perintah return ContentService.createTextOutput(result).
setMimeType(ContentService.MimeType. JSON); artinya perintah tersebut menciptakan output tulisan yang berasal dari variable result yang sudah diidentifikasikan sebelumnya sebagai isi dari hasil pembacaan tersebut. Hasil tersebut akan ditampilkan melalui link dengan menggunakan api key.
Gambar 3. 17 Tampilan Scrip Json Spreadsheet
Setelah scrip sudah di buat kemudian buat api key sebagai project baru untuk link akses pada spreadsheet tersebut seperti pada gambar 3.16
Gambar 3. 18 Tampilan Scrip Json Spreadsheet
Gambar 3. 19 Tampilan Nama Project
Tampilan tampilan opsi pemilihan akses pada gambar 3.18 setelah memberi nama project. Akses yang digunakan adalah anonymous dan project version di isi angka sesuai dengan jumlah pengeditan script, misalnya script sudah 3 kali edit maka untuk mengedit lagi di simpan dengan ditulis angka 4 sebagai hasil pengeditan ke 4. Kemudian klik deploy.
Gambar 3. 20 Tampilan Opsi Pemilihan Akses
Setelah di deployed, kemudian akan diminta untuk review permissions, maksud dari review permissions adalah untuk meninjau izin berdasarkan alaman email google. Untuk membuat api key barus harus medapat izin dengan menggunakan email google.
Gambar 3. 21 Review Permision Selanjutnya login akun gmail untuk melanjutkan akses
Gambar 3. 22 Login Gmail
Karena muncul notifikasi aplikasi belum diverivikasi, klik lanjutkan dan buka
Gambar 3. 23 Notifikasi Google
Setelah login email kemudian klik izinkan Kemudian klik izinkan agar akun google bisa mengakses google spreadsheet
Gambar 3. 24 Notifikasi Google
Tampilan apikey pada gambar 3.22, Setelah di izinkan maka akan di beri api key untuk mengakses google spreadsheet.
Gambar 3. 25 Tampilan apikey
Tampilan pada gambar 3.25 merupakan hasil pembacaan spreadsheet yang ditampilkan pada web melalui api key. Setelah apikey di buat maka api key dapat digunakan untuk mengakses data spreadsheet apabila alamat link di buka pada website
Gambar 3. 26 Hasl Pembacaan Data Spreadsheet B. Perancangan Notifikasi Menggunakan Layanan IFTTT
Pada gambar di bawah ini merupakan tampilan awal untuk memulai IFTTT.
Daftar akun atau masuk apabilah sudah memiliki akun. Akun IFTTT yang masuk seperti pada gambar di bawah ini.
Gambar 3. 27 Hasl Pembacaan Data Spreadsheet
Selanjutnya membuat project dengan memilih menu create
Gambar 3. 28 Membuat Project Baru Kemudian klik untuk menambah service pertama sebagai triger
Gambar 3. 29 Tampilan Penambahan Service
Di sini service yang digunakan adalah webhock. webhook merupakan service untuk menambahkan data pada link URL yang kemudian dikirim dan diterima di waktu sama dengan link URL yang sudah ditentukan.
Gambar 3. 30 Tampilan Pemilihan Service
Tampilan Koneksi Webhook pada gambar 3.18. Setelah memilih service tersebut kemudian klik connect agar service tersebut dalam keadaan aktif.
Gambar 3. 31 Tampilan Koneksi Webhook
Setelah klik conncet akan muncul tampilan berupa keterakan opsi yang akan dijalankan pada aplikasi tersebut seperti pada gambar 3.19 di bawah ini. Opsi yang akan di jalankan adalah menerima permintaan web sebelum di teruskan ke aplikasi lain. Permintaan web yang dimaksud adalah notifikasi yang di kirim dari mikrokontroler dan perintah lainya untuk mengakses service tersebut.
Gambar 3. 32 Keterangan Pada Opsi Webhook
Tampilan pembuatan triger pada gambar 3.29 setelah memilih opsi yang akan dijalankan. Nama event di isi sesuai dengan nama yang ada pada data base yang akan di uji pada penelitian ini. Even merupakan suatu nama yang digunakan sebagai penerima pernerima notifikasi atau pengiriman yang di tuju ibarat nomor telephone.
Gambar 3. 33 Keterangan Pada Opsi Webhook
Setelah menambahkan service 1 kemudian mendambahkan service 2 sebagai penerima.
Gambar 3. 34 Keterangan Pada Opsi Webhook
Service 2 yang digunakan pada penelitian ini adalah line yang bisa di akses di semarthphone untuk menerima notifikasi.
Gambar 3. 35 Tampilan Pemilihan Service
Gambar 3. 36 Tampilan Pemilihan Service
Tampilan login line pada gambar 3.33 untuk mengkoneksi ke line diperlukan login untuk verifikasi akun line sebagai sarana untuk menerima notifikasi.
Gambar 3. 37 Login Line
Line yang telah berhasil muncul tampilan pada gambar 3.34. Setelah login berasil kemudian setujui dan tautkan.
Gambar 3. 38 Verifikasi Line
Setelah klik conncet akan muncul tampilan berupa keterakan opsi yang akan dijalankan pada aplikasi tersebut seperti pada gambar 3.36.
Gambar 3. 39 Keterangan Pada Opsi Line
Setelah memilih opsi yang dijalankan yaitu mengirim pesan kemudian muncul tampilan seperti pada gambar 3.37 di bawah ini, pada gambar tersebut terbdapat bagian-bagian terkait pengiriman pesan. Recipien merupakan bagian yang digunakan sebagai penerima pesan atau chat room yang digunakan untuk menampilkan pesan. Chat room terdapat opsi pemilihan yaitu pemilihan notifikasi dari line notify itu sendiri atau notifikasi di kirimkan ke grup line, teman chat dan sebagainya. Kemudian messenge merupakan isi dari pesan yang digunakan dalam notifikasi. Isi pesan dapat diatur dari pengaturan itu sendiri atau dari isi notifikasi mikrokontroler berdasarkan sensor yang terbaca atau ouput pemrograman. Pesan pada mikorkontroler diatur menggunakan variable value yang berarti nilai. Setelah semuanya sudah di atur kemudian klik create action.
Gambar 3. 40 Pengaturan Notifikasi Line
Tampilan pada gambar 3.40 merupakan tampilan langkah akhir dari pembuatan prject IFTTT, pastikan receive notifikasi when this aplication dalam keadaan on sebelum klik finish agar bisa digunakan untuk mengirim notifikasi.
Gambar 3. 41 Pengaturan Notifikasi Line
Pada gambar 3.41 merupakan tampilan project yang sudah di buat dan siap digunakan untuk mengirimkan notifikasi.
Gambar 3. 42 Tampilan Applet Yang Sudah Dibuat
Tampilan bagian-bagian applet pada gambar 3.40 pada gambar tersebut terdapat key yang merupakan kunci akses untuk mengakses service webhook setiap akun
ifttt yang mengakses webhook memiliki kunci akses yang berbeda-beda.
Kemudian JSON body merupakan isi dari pesan yang akan di kirimkan, pesan di isi berdasakan ouput dari mikrokontroler, misalnya ouput tersebut merupakan hasil dari pembacaan suhu maka isi pesan atau value yang dikirim akan berubah-ubah sesuai dengan pembacaan suhu akibat kondisi tertentu. Kemudian try it with curl from a command line merupakan link yang digunakan untuk mengirim notifikasi apabila link tersebut di buka. pada mikrokotroler link tersebut akan dibuka menggunakan json atau HTTPClient.
Gambar 3. 43 Tampilan Bagian-bagaian appletTampilan Bagian-bagaian applet Tampilan notifikasi pengiriman pada gambar 3.41 ketika link url di buka pada web browser maka akan mucul keterangan bahwa notifikasi atau data sudah terkirim ke line dengan event polsek_1.
Gambar 3. 44 Tampilan Notifikasi Pengiriman Berhasil
Tampilan notifikasi line pada gambar 3.42 ketika pengiriman berhasil maka
Gambar 3. 45 Tampilan Notifikasi Line C. Perancangan Line Bot Pengendali Jarak Jauh
Pada gambar di bawah ini merupakan tampilan awal untuk membuat line bot.
Masuk kemudian control untuk login. layanan yang digunakan untuk membuat line bot yaitu iSYNC.
Gambar 3. 46Tampilan Awal iSYNC
Tampilan halaman login gambar 3.46 apabila belum memiliki akun harus mendaftar terlebih dahulu
Gambar 3. 47Tampilan Login iSYN Kemudian isi semua informasi dan klik register
Gambar 3. 48 Tampilan Register iSYN
Setelah akun terdaftar dan berhasil login muncul tampilan seperti pada gambar
Line dikoneksikan dengan cara scan barcorde melalui fitur tambah teman.
Kemudian setelah terhubung ke line buat project baru.
Gambar 3. 49 Tampilan iSYN Setelah Login
Pada tampilan gambar 3.45 merupakan tampilan daftar project. Pada tampilan tersebut daftar project masih kosong. Karena project masih kosong maka buat project baru
Gambar 3. 50 Tampilan iSYN Setelah Login
Setelah mengeklik new project kemudian beri nama project sesuai yang di inginkan.
Gambar 3. 51Tampilan Pemberian Nama Project
Pada tampilan gambar 3.46 merupakan tampilan daftar project yang sudah terisi.
Kemudian buka project yang sudah di buat.
Gambar 3. 52 Tampilan iSYN Setelah Login
Setelah project di buka maka akan muncul tampilan seperti pada gambar 3.47 Pada gambar tsersebut terdiri dari username dan project auth. Namun untuk mrngakses line bot tersebut dibutuhkan key atau kunci api, namun kunci api belum tertera pada gambar tersebut maka harus membuat key atau kunci api terlebih dahulu.
Gambar 3. 53 Tampilan Membuat Key
Setelah mengeklik new key kemudian beri nama key sesuai yang di inginkan.
Gambar 3. 54 Memberi Nama Key
Pada tampilan gambar 3.49 merupakan tampilan key yang sudah di buat yang sudah terisi. Apabila key sudah di buat maka nomor key akan tertera pada daftar project. Kemudian klik view data untuk melihat kembali data informasi terkait project yang sudah di buat
Gambar 3. 55 Tampilan Nomor Key
Pada tampilan gambar 3.49 merupakan tampilan ifrmomasi yang mengenai project yang sudah di buat yang terdiri dari nama project, nama key, Id Key, dan link akses untuk mengakses layanan tersebut. Id key dan link akses nantinya akan dugunakan oleh mikrokontroler untuk terbubung ke line bot.
Gambar 3. 56 Tampilan Informasi Project 3.2.4 Pengujian oprasional alat
Pada penelitian ini menggunakan aplikasi line yang memanfaatkan jaringan wifi. NodeMCU sebagai mikrokontroler yang mengolah informasi semua informasi dari Ublox Neo 6mv2 yang menyatakan lokasi saat ini, kemudian menentukan lokasi terdekat berdasarkan data base yang tersimpan dalam spreadsheet dan akan mengirimkan data ke internet apabila Button Switch ditekan sehingga informasi lokasi pengendara diketahui melalui Smart Phone masing-masing pihak berwajib. Hasil perancangan Hardware dan Software dilakukan pengujian. Pengujian yang mencakup pengujian GPS, pengujian pengiriman, pengujian pengambilan data, pengujian deteksi lokasi, dan pengujian keamanan kendali jarak jauh. Pengujian deteksi lokasi merupakan tujuan paling utama dari oprasional alat tersebut. Pengujian dilakukan mencangkup 10 lokasi dan 10 titik pengujian. Titik pengujian merupakan titik dimana koordinat GPS atau lokasi kendaraan pada saat terjadi adanya begal atau kejahatan. Pengujian deteksi lokasi disajikan pada tabel sebagai berikut
Tabel 3. 3 Daftar Lokas Polsek
Daftar Polsek Lokasi Koordinat
Latitude Longitude
Polsek 1 Hotel Aston -7,416988 109,244950
Polsek 2 IT Telkom -7,435327 109,248733
Polsek 4 Margono -7,438442 109,268029 Polsek 5 Andang Pangrenan -7,440011 109,244224 Polsek 6 Stikes Harapan Bangsa -7,421528 109,270567
Polsek 7 Geriatri -7,416137 109,230713
Polsek 8 Stikom Yos Sudarso -7,447541 109,244995
Polsek 9 Telkom Akses -7,442030 109,235555
Polsek 10 Rajawali Cinema -7,432453 109,243772
Pada pada titik lokasi merupakan titik dimana yang akan menerima notifikasi ketika tombol. Data lokasi di simpan di goole spreadsheet yang kemudian akan diakses oleh NodeMCU. Lokasi yang menerima notifikasi dari pengirim bergantung pada lokasi GPS pengirim pada saat itu. Lokasi yang menerima notifikasi hanya 1 berdasarkan lokasi paling dekat dengan koordina GPS pengirim. Polsek 1 berada di area dekat hotel aston jalan Prof. Dr. Suharso dengan koordinat -7.416988, 109.244950. kemudian polsek 2 berada di area dekat IT Telkom Purwokerto Jl. DI. Pandjaitan dengan koordinat -7.435327,109.248733.
Polsek 3 berada di area alun-alun Purwokerto Jl. Jendral Sudirman dengan koordinat -7.425035,109.230700. Polsek 4 berada di area dekat Rumah Sakit Margono Purwokerto Jl. Dr. Gumnreg dengan koordinat -7.438442, 109.268029.
Polsek 5 berada di Andang Pangrenan Jl. Kh. Machid Hasyi dengan koordinat --7.440011, 109.244224. Polsek 6 berada di area dekat kampus Stikes Harapan Bangsa Purwokerto Jl. Rd. Patah dengan koordinat -7,421528, 109,270567.
Polsek 7 berada di dekat rumah sakit Pavilium Griatri jalan Dr. Angka dengan koordinat -7.416137, 109.230713. Polsek 8 berada di area dekat kampus Stikom Yos Sudarso Purwokerto dengan koordinat JL.SMP 5 Karang Klesem -7.447922, 109.242438. Polsek 9 berada di dekat area kantor PT Telkom Akses Purwokerto Jl. Perintis Kemerdekaan No.789 dengan koordinat -7.442030, 109.235555.
Polsek 10 berada di area dekat area boskop Rajawali Cinema Purwokerto Jl. S.
Parman dengan koordinat -7.432453, 109.243772.
Tabel 3. 4 Daftar Lokas Pengujian
Daftar Titik Lokasi Koordinat
Pengujian Latitude Longitude Titik Pengujian 1 Mardikenya -7,424166 109,236602 Titik Pengujian 2 Pasar Wage -7,427269 109,248692 Titik Pengujian 3 Moro Mall Purokerto -7,429017 109,240681 Titik Pengujian 4 Stasiun Purwokerto -7,419304 109,222523 Titik Pengujian 5 Mitsubishi Purwokerto -7,437457 109,264096 Titik Pengujian 6 SMA Kristen -7,422772 109,241948 Titik Pengujian 7 SMP Burderan -7,420500 109,232872 Titik Pengujian 8 Ayam Goreng Tantene -7,415238 109,237579 Titik Pengujian 9 Quattro -7,422237 109,230770 Titik Pengujian 10 Fakultas Kedokteran -7,434464 109,267871
Pada titik pengujian merupakan titik dimana GPS tersebut mengirimkan notifikasi apabila ada bahaya. Hal ini merupakan simulasi apabila adanya begal di jalan raya. Pangujian dilakukan untuk mengetahui kinerja perangkat sesuai dengan perencanaan. Jika hasil pengujian tidak sesuai dengan perencanaan akan dilakukan perancanga kembali dan dilakukan pengujian sesuai dengan perencanaan sehingga hasil pengujian sesuai dengan perencanaan.
Gambar 3. 57 Deteksi Lokasi
Berdasarkan gambar tersebut cara kerja dari sistem dimulai dari smartphone atau wifi yang memancarkan sinyal wifi sebagai input atau output ke NodeMCU, kemudian SD Card, Push Button sebagai input,GPS sebagai input, data yang telah masuh pada NodeMCU akan di proses kemudian output akan di kirim kembali ke wifi, kemudian wifi akan ngirimkan ke layanan IFTTT, kemudian layanan IFTTT sebagai trigger untuk mengirim ke layanan jejaring social sebagai notifikasi.
Notifikasi akan di kirim ke polsek atau layanan bengkel terdekat untuk meminta bantuan akan adanya masalah keamanan ketika berkendara di jalan raya terutama jarak jauh.
Untuk skema deteksi lokasi terdekat adalah sebagai berikut :
Gambar 3. 58 Skema deteksi lokasi
x dan y sebagai koordina lokasi atau tempa, a dan b sebagai koordinat posisi, A dan B sebagai hasil selisih antara koordinat lokasi dengan koordinat posisi, kemudian koordinat hasil dari selisih koordinat dilakukan perhitungan Euclidean untuk menentukan jarak antara tempat yang dituju dengan posisi. A sebagai longitude dan B sebagai latitude, hasil dari perhitungan Euclidean sebagai variable C. C dalam bentuk array memiliki 5 hasil perhitungan, kemudian dari kelima hasil perhitungan tersebut diambil angka yang terkecil sebagai variable D. Skema jalanya program dapat dituliskan sebagai berikut :
Gambar 3. 59 Kode pemrograman deteksi lokasi
Berdasarkan gambar tersebut nilai a dikalikan 1 juta agar hasilnya bilangan bulat, hal ini dikarenakan arduino memiliki keterbatasan dalam membaca seberapa banyak angkan desimal, nilai sebagai Variable C yang menyatakan hasil perhitungan dan angkan sebagai variable D yang menyatakan hasil yang terkecil pada perhitungan, kemudian Hit yang menyatakan baris pada suatu array, baris.yang dimaksud adalah hasil peritungan terkecil terletak hasil peritungan terkecil terletak pada kolom ke berapa pada variable C. Variable hit berisikan nama lokasi berdasarkan kota atau jarak.
3.2.5 Pengumpulan Data
Hasil pengujian sesuai dengan perencanaan merupakan indikator bahwa perancangan hardware maupun Software berhasil dilakukan. Pada tahapan selanjutnya dilakukan pengumpulan data sesuai dengan hasil pengujian dan dilakukan pembahasan. Data yang dikumpulkan berupa parameter jarak dan koordinat GPS. Apabila terdapat masalah ketika pengujian maka dilakukan pengecekan dan perancangan kembali baik dalam sisi hardware maupun software.
BAB IV