DAFTAR ISI
PENDAHULUAN …………………………………………………………………….. 2
PENDAHULUAN
REQUEST
HTTP GET
RESPONSE
JSON
SERVER
CLIENT
Project ini memiliki fitur Dual Function Mode yang artinya terdapat dua mode fungsi
dalam satu perangkat yakni fungsi Absensi dan fungsi Doorlock. Kedua mode bisa diswitch
dengan trigger push button. Data terekam secara realtime ke dalam database server.
BAGIAN 1
PERSIAPAN SOFTWARE PENDUKUNG &
DATABASE
2. Silakan pilih versi php yang anda inginkan (disarankan pilih versi terbaru) dan sesuaikan
dengan mesin komputer anda (32 atau 64 bit) lalu klik Download. Jika anda tidak
menemukan versi yang anda inginkan silakan klik More Downloads.
3. Double klik file yang telah anda download, pilih English untuk language lalu klik Ok
4. Selanjutnya centang komponen yang akan diinstalasi, secara default Apache dan PHP
telah tercentang, tambahkan lagi centang pada MySQL dan phpMyAdmin lalu Next
6. Jika telah muncul jendela seperti pada Gambar 6, klik Finish untuk mengakhiri proses
instalasi.
7. Kemudian akan muncul kotak dialog untuk mengkonfirmasi apakah anda ingin langsung
menjalankan XAMPP atau tidak. Silakan pilih yes atau no.
8. Buka xampp control panel lalu jalankan web servernya dengan mengklik tombol start
9. Buka browser lalu ketikkan localhost jika muncul halaman seperti pada Gambar 8 maka
selamat anda telah berhasil menginstall XAMPP di PC/Laptop anda
B. Persiapan Database
Gambar 9. phpMyAdmin
6|Manual Book Kit Proyek IoT
SISTEM ABSENSI - DOORLOCK
2. Buat database: Klik New -> Isikan kolom Database name dengan nama
absensirfiddoorlock -> klik create.
2. Buka folder Arduino -> pilih dan dobel klik file arduino.exe
3. Jalankan file arduino, lalu buka file -> preferences. Pada jendela preferences tepatnya di
bagian bawah terdapat kolom Additional Board Manager URLs, lalu ketikkan
http://arduino.esp8266.com/stable/package_esp8266com_index.json -> klik OK
4. Pilih dan klik menu Tools -> Board -> Boards Manager. Ketikkan di kolom pencarian
esp8266 -> pilih versi 2.4.0 -> klik install pada bagian bawah
5. Contoh COM 13 adalah nama port yang nanti akan digunakan untuk mengupload
program ke board nodemcu melalui IDE arduino. Nama port pada setiap PC/laptop
kemungkinan akan berbeda satu sama lain.
6. Lakukan pengecekan board dan driver telah terinstall pada IDE arduino. Buka kembali
file arduino -> Tools -> Board. Jika tampilannya seperti pada Gambar 19 maka
selamat anda telah berhasil menginstall board dan driver nodemcu pada PC/laptop anda.
BAGIAN 2
PERSIAPAN HARDWARE, BOT
TELEGRAM, & WEB
G. Perakitan Hardware
Seputar Power
Perlu diperhatikan bahwa untuk mensuplai power ke board nodemcu dapat menggunakan dua
cara yaitu melalui soket USB atau melalui jack DC. Jika power disuplai melalui USB maka
blok pin power yang dilingkari biru yang akan aktif sedangkan ketika power disuplai melalui
jack DC maka blok yang dilingkari merah yang akan aktif. Jika ingin menghasilkan tegangan
power yang stabil maka disrankan untuk menggunakan Power Adaptor DC 9V 1A yang
disambungkan melalui jack DC
4. Perhatikan Gambar 35, silakan ganti dan sesuaikan dengan SSID dan password dari WiFi
atau hotspot yang anda gunakan.
Perlu diperhatikan bahwa IP address pada PC/laptop sifatnya IP dynamic yang sewaktu
waktu bisa berubah sehingga ketika suatu saat program tiba-tiba tidak berjalan sebagaimana
mestinya silakan cek kembali IP adress anda dan sesuaikan dengan program arduino anda.
2. Pada chatroom klik MULAI atau ketikkan /start lalu kirim sehingga nanti akan muncul
balasan seperti Gambar 37.
3. Untuk membuat bot baru ketikkan /newbot pada chatroom lalu kirim
4. Selanjutnya buatkan nama untuk akun bot sebagai contoh misal Absensi Doorlock,
ketikkan nama tersebut lalu kirim
5. Kemudian buat username untuk akun bot dimana username wajib mengandung kata bot
tanpa spasi sebagai contoh misal AbsenRFID_bot, ketikkan lalu kirim.
6. Selanjutnya akan muncul balasan yang di dalamnya terdapat TOKEN untuk mengakses
API BOT Telegram. Jaga kerahasiaan token bot telegram anda!
7. Pada kolom pencarian ketikkan username dari Bot yang telah dibuat sebelumnya lalu
masuk ke dalam chatroom
8. Pada chatroom klik MULAI atau ketikkan /start lalu kirim
9. Selanjutnya anda dapat mengatur akun bot telegram missal dengan menambahkan foto
profil, deskripsi bot ataupun mengubah nama bot dengan mengikuti keyword berikut:
/setuserpic : Untuk menambahkan foto profil bot
/setdescription : Untuk menambahkan deskripsi bot
/setname : Untuk mengubah nama bot
Selamat anda telah berhasil membuat akun bot telegram anda sendiri
3. Buka control panel XAMPP kemudian jalankan web server dengan mengklik tombol
start pada menu pilihan Apache dan MySQL (lihat Gambar 7).
4. Buka web browser lalu pada kolom URL ketikkan link berikut:
http://localhost/absenrfiddoorlock lalu enter. Jika anda ingin mengaksesnya pada
perangkat lain (misal: smartphone) silakan ganti localhost dengan IP Address server.
Contoh http://192.168.43.220/absenrfiddoorlock. Pastikan antara perangkat dengan
PC/laptop server berada dalam satu jaringan internet yang sama.
5. Setelah itu anda akan langsung diarahkan pada halaman login. Silakan memasukkan
username: admin dan password: admin kemudian klik login
6. Selanjutnya buka menu Pengaturan lalu pilih dan klik Autentikasi. Kemudian copy
paste Token Bot Telegram yang telah diperoleh sebelumnya lalu klik simpan.
Adapun untuk Token Web anda bisa menggantinya namun jangan lupa untuk menyesuaikan
juga dengan yang ada di program arduinonya. Jika data berhasil disimpan maka akan muncul
notifikasi Telegram.
7. Selanjutnya buka menu Pengaturan lalu pilih dan klik Admin. Kemudian masukkan
chat id anda sebagai admin serta atur ulang Username dan Password baru anda.
8. Selanjutnya, buka menu Pengaturan, lalu pilih dan klik Data Shift. Silakan lakukan
pengaturan shift dan jam kerja yang diinginkan.
22 | M a n u a l B o o k Kit Proyek IoT
SISTEM ABSENSI - DOORLOCK
Id shift : Kode unik untuk setiap shift jam kerja (Format Angka)
Adapun untuk mengatur zona waktu berdasarkan wilayah silakan buka file script PHP
dengan nama koneksidb.php lalu ganti isi dari variable $Zona sesuai dengan wilayah
masing – masing. Asia/Jakarta (WIB), Asia/Makassar (WITA), Asia/Jayapura (WIT).
9. Selanjutnya buka menu Pengaturan, lalu pilih dan klik Hari Libur. Silakan melakukan
pengaturan hari libur pada system absensi. Hari libur dibagi atas hari libur mingguan
(secara default Sabtu dan Ahad) dan hari libur nasional berdasarkan kalender.
10. Untuk konfigurasi akses ruangan, masuk ke menu Data -> Akses Ruangan -> Data
Ruangan lalu klik tombol Tambah Ruangan. Setelah itu akan muncul modal Form
Tambah Ruangan silakan registrasikan ruangan – ruangan yang akan diintegrasikn
dengan perangkat doorlock. Masukkan data nama ruangan serta kode ruangan berupa
angka lalu submit data tersebut.
Perlu diketahui bahwa satu perangkat RFID Reader + Doorlock hanya untuk satu Ruangan
saja yang dimana setiap perangkat harus dimasukkan kode ruangan pada baris
programnya. Kode ruangan yang dimasukkan dalam bentuk integer (bilangan bulat).
Selain registrasi ruangan, anda sebagai admin juga dapat mengubah dan menghapus data
ruangan melalui halaman web.
Gambar 53. Baris program untuk kode ruangan pada perangkat Nodemcu
11. Role Utama dari Admin yakni mengelola data Anggota meliputi registrasi anggota baru,
mengubah dan menghapus data anggota, mereset ID anggota serta mengelola data subjek.
3. Kemudian atur Mode yang diinginkan dengan menekan push button pada perangkat.
Tersedia dua pilihan Mode yakni Absensi dan Doorlock
4. Pada mode absensi, silakan tempelkan kartu tag pada RFID Reader maka secara otomatis
perangkat akan merespon dalam bentuk suara dan teks. Proses Absensi akan mentrigger
notifikasi Telegram ke masing-masing user
Gambar 56. Contoh Notifikasi Telegram Saat Check In dan Check Out
Data absen masuk dan pulang saat melakukan tap kartu akan secara otomatis terekam ke
dalam database server.
5. Proses Registrasi ID dan Absensi dapat juga dilakukan tanpa melalui perangkat
mikrokontroller caranya melalui menu Tag ID lalu inputkan ID secara manual.
7. Pada Mode Doorlock, silakan tempelkan kartu pada RFID Reader maka secara otomatis
perangkat akan merespon dalam bentuk suara dan teks serta mentrigger doorlock untuk
terbuka selama beberapa detik lalu secara otomatis mengunci kembali. Proses Akses
Doorlock juga akan mentrigger notifikasi Telegram ke masing – masing User. Data
pengunjung yang mengakses ruangan secara otomatis terekam ke dalam server.
8. Fitur Reset Password pada halaman Login perlu dilakukan konfigurasi terlebih dahulu
sebelum bisa digunakan. Buka file index.php lalu cari variabel dengan nama $link
kemudian sesuaikan dengan ip address dan direktori penyimpanan anda.
M. Troubleshooting
1. esp com mem failed
Cara mengatasi: cabut terlebih dahulu pin D8, Rx, dan Tx pada Nodemcu sebelum
melakukan upload program ke board Nodemcu.
2. error compiling for Nodemcu
Cara mengatasi: Pada IDE Arduino silakan buka Tools -> Board -> Board Manager ->
Ketik esp pada kolom pencarian, lalu select version 2.3.0 atau 2.4.0 kemudian install. Jika
proses install selesai silakan restart IDE Arduino anda.
3. connection refused/read timeout
Beberapa cara untuk mengatasinya sebagai berikut:
• Pastikan anda telah anda telah menjalankan Apache dan MySQL pada XAMPP Panel
• Cek ulang IP Address Laptop/PC yang anda gunakan sebagai server (Localhost)
• Lakukan clear cache pada browser yang anda gunakan
• Nonaktifkan Firewall pada laptop/PC anda
• Jika anda menggunakan hosting, pastikan web anda tidak menggunakan SSL Enkripsi.
4. Modul DFplayer tidak berfungsi
Beberapa cara untuk mengatasinya sebagai berikut:
• Cek ulang pengkabelan
• Pastikan anda telah melakukan format FAT atau FAT32 pada sdcard yang digunakan.
• Cek ulang file audio yang anda masukkan ke dalam sdcard. Pastikan anda tidak
mengubah nama Folder maupun nama File. File audio yang dimasukkan ke dalam
sdcard harus berada dalam Folder dengan nama mp3.
5. Layar LCD tidak menampilkan teks
Beberapa cara untuk mengatasinya sebagai berikut:
• Cek ulang pengkabelan khususnya pin SDA dan SCL
• Atur kontras layar dengan memutar trimpot pada bagian belakang LCD
• Tekan tombol RST pada Nodemcu untuk mereset board.
6. Perangkat mikrokontroller gagal terhubung ke internet
Beberapa cara untuk mengatasinya sebagai berikut:
• Pastikan anda telah memasukkan SSID dan password pada program Arduino secara
benar (tidak ada kesalahan penulisan)
• Cek koneksi internet yang anda gunakan
• Tekan tombol RST pada Nodemcu untuk mereset board.