LAMPIRAN A
Sintaks Program Sistem Absensi
#include "SIM900.h" #include <SoftwareSerial.h> #include "inetGSM.h" #include <SPI.h> #include <SD.h> #include <Wire.h> #include <EEPROM.h> #include <MFRC522.h> #include "RTClib.h" #include "sms.h" SMSGSM sms;
#if defined(ARDUINO_ARCH_SAMD) // for Zero, output on USB Serial console #define Serial SerialUSB
#endif
#define RST_PIN A11 #define SS_PIN 53
MFRC522 mfrc522(SS_PIN, RST_PIN); // Create MFRC522 instance RTC_DS1307 rtc;
int numdata; char inSerial[50]; boolean started; char publishKey[43]; char subscribeKey[43]; char channelName[20]; public:
PubnubPublisher(char* publishKey, char* subscribeKey, char* channelName) { started=false; strcpy(this->publishKey, publishKey); strcpy(this->subscribeKey, subscribeKey); strcpy(this->channelName, channelName); }
void setup() {
Serial.begin(9600); Serial.println("Pubnub Publisher."); if (gsm.begin(4800)){ Serial.println("\nstatus=READY"); started=true; } else Serial.println("\nstatus=IDLE"); if(started){
if (inet.attachGPRS("internet.wind", "", "")) Serial.println("status=ATTACHED"); else Serial.println("status=ERROR"); delay(1000);
gsm.SimpleWriteln("AT+CIFSR");//Read IP address. delay(5000);
} };
void publish(char* message) { char publishUri[109+50+1];
sprintf(publishUri, "/publish/%s/%s/0/%s/0/%s", publishKey, subscribeKey, channelName, message);
numdata=inet.httpGET("pubsub.pubnub.com", 80, publishUri, msg, 50); Serial.println("\nNumber of data received:"); //Print the results. Serial.println(numdata);
//Serial.println("\nData received:"); //Serial.println(msg);
}; };
PubnubPublisher* pubnubPublisher = new PubnubPublisher("pub-c-9f184179-4324-4315-9376-6a6cef5e95ff", "sub-c-4481b53c-0fab-11e6-996b-0619f8945a4f", "absen");
const int chipSelectSD = 36; int cards, user_id,i; int detect = 0, stat = 0;
boolean started=false;
char* nims[]={"120402001", "120402002", "120402003",
"120402004", "120402005","120402006","120402007","120402008", "120402009","120402010","120402011","120402012","120402013", "120402014","120402015","120402016","120402017","120402018", "120402019","120402020","120402021","120402022","120402023", "120402024","120402025"};
smsStatus[22]=1;i=22; publikasi();break; case 24: Serial.println(F("Xenia Peranginangin")); myFile.println("\tXenia Peranginangin"); smsStatus[23]=1;i=23; publikasi();break; case 25: Serial.println(F("Yudha Al-Hakim")); myFile.println("\tYudha Al-Hakim"); smsStatus[24]=1; i=24;publikasi();break; } }
void setup() {a
pubnubPublisher->setup(); SPI.begin(); // Init SPI bus
Wire.begin(); // Init I2C communication rtc.begin(); // Init RTC Module
mfrc522.PCD_Init(); // Init MFRC522 RFID Serial.begin(9600); //
if (! rtc.isrunning()) {
Serial.println(F("RTC NOT Run!")); }
if (!SD.begin(chipSelectSD)) { Serial.println(F("Card Failed!")); return;
}
if(started) {
if (inet.attachGPRS("", "", ""))
Serial.println(F("status=ATTACHED")); else Serial.println(F("status=ERROR")); delay(1000);
gsm.SimpleWriteln("AT+CIFSR");/** Read IP address. */ delay(5000);
}
Serial.println(F("NON-ACTIVE !")); };
void loop() {
DateTime now = rtc.now(); if(stat==1)
{
EEPROM.write(300, 30); baca();
user_id = EEPROM.read(300); if(user_id==26) {
myFile = SD.open("test.txt", FILE_WRITE); if (myFile) {
Serial.print(F("Error File"));// if the file didn't open, print an error: }
CekSMS(); stat = 0; } if(user_id!=30){ cetakID(); } } else{ EEPROM.write(300, 30); baca();
user_id = EEPROM.read(300); if(user_id==26){
if (stat==0){
myFile = SD.open("test.txt", FILE_WRITE); if (myFile){ myFile.print(now.hour(), DEC);myFile.print(':'); myFile.print(now.minute(), DEC);myFile.print(':'); myFile.print(now.second(), DEC); myFile.println("\tActive"); myFile.close(); Serial.println(F("ACTIVE !")); Serial.println(F("Tag Your Card")); }
else{
}
delay(500); };
void cetakID(){
DateTime now = rtc.now(); if(user_id==0){
Serial.println(F("Unknown UID")); }
else{
myFile = SD.open("test.txt", FILE_WRITE); if (myFile) { myFile.print(now.hour(), DEC);myFile.print(':'); myFile.print(now.minute(), DEC);myFile.print(':'); myFile.print(now.second(), DEC); Serial.println(F("Thank You")); Name(user_id); myFile.close(); } else {
Serial.print(F("Error File")); // if the file didn't open, print an error: }
delay(500); }
}
void baca(){
void CekSMS(){ char pesan[100];
for (int i = 0; i < 25; i++){ if (smsStatus[i]==0){
sprintf(pesan, "Anak anda dengan nim %s, hari ini tidak hadir", nims[i]); if (sms.SendSMS("+628979213454", pesan))
Serial.println("\nSMS sent OK"); delay(2000);
} } }
void publikasi(){ char message[30];
sprintf(message, "{\"text\":\"%d hadir\"}", nims[i]); pubnubPublisher->publish(message);
LAMPIRAN B
Tabel Hasil Pengujian 30 byte
Echo Reply
Time Out 1 detik Time Out 5 detik Time Out 10 detik
Delay TTL Delay TTL Delay TTL
1 600 255 16 55 15 55
2 600 255 10 55 9 55
3 600 255 8 55 7 55
4 7 55 8 55 8 55
5 7 55 8 55 7 55
6 7 55 8 55 7 55
7 8 55 8 55 8 55
8 8 55 8 55 7 55
9 7 55 8 55 7 55
10 8 55 8 55 8 55
Tabel Hasil Pengujian 150 byte
Echo Reply
Time Out 1 detik Time Out 5 detik Time Out 10 detik
Delay TTL Delay TTL Delay TTL
1 600 255 15 55 15 255
2 600 255 15 55 10 255
3 600 255 8 55 8 255
4 8 55 8 55 8 55
5 8 55 8 55 8 55
6 8 55 8 55 8 55
7 8 55 8 55 8 55
8 8 55 8 55 8 55
9 8 55 8 55 8 55
Tabel Hasil Pengujian 300 byte
Echo Reply Timeout 1 detik Timeout 5 detik Timeout 10 detik
Delay TTL Delay TTL Delay TTL
1 600 255 15 55 15 55
2 600 255 14 55 14 55
3 600 255 9 55 9 55
4 9 55 9 55 9 55
5 9 55 9 55 9 55
6 9 55 9 55 9 55
7 9 55 9 55 9 55
8 9 55 9 55 9 55
9 9 55 9 55 9 55
10 9 55 9 55 9 55
Tabel Hasil Pengujian 450 byte
Echo Reply Time Out 1 detik Time Out 5 detik Time Out 10 detik
Delay TTL Delay TTL Delay TTL
1 600 255 16 55 16 55
7 9 55 9 55 9 55
8 600 255 9 55 9 55
9 9 55 9 55 9 55
10 9 55 9 55 9 55
Tabel Hasil Pengujian 600 byte
Echo Reply
Time Out 1 detik Time Out 5 detik Time Out 10 detik
Delay TTL Delay TTL Delay TTL
1 600 255 18 55 17 55
2 600 255 15 55 16 55
3 600 255 15 55 15 55
4 600 255 15 55 15 55
5 600 255 15 55 15 55
6 600 255 15 55 15 55
7 600 255 15 55 15 55
8 600 255 15 55 15 55
9 600 255 15 55 15 55
10 600 255 15 55 15 55
Tabel Hasil Pengujian 750 byte
Echo Reply
Timeout 1 detik Timeout 5 detik Timeout 10 detik
Delay TTL Delay TTL Delay TTL
1 600 255 18 55 18 55
3 600 255 15 55 15 55
4 600 255 15 55 15 55
5 600 255 15 55 15 55
6 600 255 15 55 15 55
7 600 255 15 55 15 55
8 600 255 15 55 15 55
9 600 255 15 55 15 55
LAMPIRAN C
Gambar Pengujian 30 byte dengan Timeout 1 detik
LAMPIRAN D
Penentuan Kuat Sinyal
DAFTAR PUSTAKA
[1]Direktorat Tenaga Kependidikan Direktorat Jenderal Peningkatan Mutu Pendidik dan Tenaga Kependidikan Departemen Pendidikan Nasional. 2008. Administrasi dan Pengelolaan Sekolah: Administrasi Kesiswaan. Jakarta : Direktorat Pendidikan.
[2] Cai, Jian & David Goodman. Oktober1997. General Packet Radio Service in GSM. IEEE Communications Magazine vol.163, no.6804, pp. 122-131
[3] Finkenzeller, Klaus. 2010. RFID Handbook: Fundamentals and Applications in Contactless Smart Cards, Radio Frequency Identification and Near-Field Communication. Wiltshire : John Wiley and Sons Inc.
[4]Lubis, Reza Al Kautsar. 2015. Perancangan Sistem Verifikasi Keanggotaan Dengan Kartu Cerdas Nirkontak Berbasis Arduino Mega 2560. Skripsi. Universitas Sumatera Utara.
[5]Artanto, Dian. 2012. Interaksi Arduino dan LabVIEW. Jakarta : PT. Elex Media Komputindo.
[6] Kadir, Abdul. 2012. Panduan Praktis Mempelajari Aplikasi Mikrokontroler dan Pemrogramannya menggunakan Arduino. Yogyakarta : Penerbit Andi
BAB III
METODOLOGI PENELITIAN
3.1Umum
Pada Bab 3 ini dilakukan perancangan sistem absensi yang terintergrasi dengan website melalui teknologi GPRS sesuai dengan tahap-tahap sebagai berikut :
a. Membuat model sistem absensi
Pada tahap ini dilakukan pembuatan model sistem absensi sehingga didapatkan gambaran kebutuhan sistem absensi yang akan diimplementasikan, baik secara perangkat keras maupun secara perangkat lunak.
b. Kebutuhan sistem rancangan
Pada tahap ini dilakukan pemilihan perangkat yang sesuai dengan kebutuhan sistem absensi yang dirancang.
c. Perancangan perangkat keras
Pada tahap dilakukan dilakukan pengintegrasian perangkat-perangkat keras sesuai dengan protokol dari masing-masing perangkat. Perancangan perangkat ini terpusat pada Arduino sebagai kontroler.
3.2Gambaran Sistem Rancangan
Gambar 3.1 Model Sistem Rancangan
Pada saat dihidupkan, perangkat menunggu masukan yang berasal dari RFID reader. Ketika sebuah tagRFIDdidekatkan ke RFID reader, maka Arduino akan
membaca UID dari tagRFID melalui RFID reader. UID tersebut akan dicocokkan dengan data UID yang telah dimasukkan ke dalam EEPROM pada Arduino. Jika absensi belum diaktifkan, maka Arduino akan memeriksa apakah UID tersebut adalah UID yang berfungsi untuk mengaktifkan absensi. Jika tidak benar, maka akan diulang pada proses pemeriksaan kondisi RFID reader. Jika benar, maka sistem absensi akan diaktifkan dan data akan dimasukan ke dalam SD card. Namun, jika absensi telah diaktifkan, maka Arduino akan memeriksa apakah UID tersebut cocok dengan UID pada EEPROM. Jika tidak benar, maka akan diulang pada proses pemeriksaan kondisi RFID reader. Jika benar, Arduino akan memeriksa apakah UID tersebut merupakan UID yang akan menonaktifkan absensi. Jika tidak benar, Arduino akan mengirimkan data UID sesuai dengan identitas pada ROM dan akan diulang proses pemeriksaan kondisi RFID reader. Jika benar, maka absensi akan dinonaktifkan dan data akan masuk ke dalam SD card. Lalu, Arduino akan mengirimkan SMS ke nomor yang telah dimasukkan ke dalam ROM jika ada peserta yang tidak hadir.
RFID. Maka, dibutuhkan pemilihan tipe perangkat yang sesuai dengan kebutuhan sistem absensi.
3.3.1 Arduino Mega 2560
Arduino Mega 2560 adalah tipe jenis Arduino yang cukup populardigunakan. Selain memiliki pin masukan dan keluaran yang banyak, Arduino jenisini memiliki kapasitas memori yang lebih besar dibandingkan dengan beberapajenis Arduino lainnya.Untuk ukuran dimensi perangkatnya Arduino Mega 2560termasuk jenis Arduino dengan ukuran board yang besar. Gambar 2.3menunjukan bentuk fisik Arduino Mega 2560. Gambar 3.2 menunjukkan tampilan fisik dari Arduino Mega 2560 Adapun spesifikasi singkatmengenai Arduino Mega 2560 adalah sebagai berikut:
a. Mikrokontroler : ATmega2560
b. Tegangan Operasional : 5V
c. Tegangan Masukan (direkomendasi) : 7-12V
d. Tegangan Masukan (batas) : 6-20V
e. Pin Digital I/O : 54 (14 pin untuk keluaran
PWM)
f. Analog Input Pins : 16
g. Arus DC per I/O Pin : 40 mA
h. Arus DC for 3.3V Pin : 50 mA
i. Memori Flash :256 KB(8 KB untukbootloader)
k. EEPROM : 4 KB
[image:45.612.221.415.86.295.2]l. Clock Speed : 16 MHz
Gambar 3.2 Arduino Mega 2560
Dengan sistem yang cukup kompleks yang terdiri dari modul SD card, modul GSM/GPRS, modul RTC, dan modul RFID, maka dibutuhkan Arduino yang memiliki memori pemrograman yang cukup besar. Pemilihan Arduino Mega 2560 didasarkan pada besarnya memori yang dimiliki oleh Arduino Mega 2560. Selain itu, Arduino Mega 2560 memiliki kemiripan dengan Arduino UNO yang memiliki dukungan pustaka yang lebih banyak dibandingkan jenis Arduino lainnya, namun Arduino UNO memiliki jumlah memori yang lebih kecil.
dipetakan sesuai dengan kebutuhan standar Arduino pada umumnya.Pemetaan pin (pin mapping) ATMega 2560 dapat dilihat pada Gambar 3.3.
Gambar 3.3 Konfigurasi Pin ATMega 2560
3.3.1.2Memori Program
Arduino Mega 2560 memiliki 250 Kbyte On-chip In-System Reprogrammable Flash Memory sebagai tempat menyimpan program. Memori flash ini dibagi
adalah program kecil yang dieksekusi saat setelah pertama kali sistem dinyalakan. Bootloader ini bekerja sebagai perantara antara memori program dengan software compiler Arduino. Bootloader akan menerimafile hasil kompilasi yang telah di-upload ke Arduino dan akan menyimpannya ke memori program kemudian Arduino akan langsung mengeksekusi program tersebut. Peta memori program dapat dilihat pada Gambar 3.4.
Gambar 3.4 Peta Memori Program
3.3.1.3Memori Data
3.3.1.4Memori Input/Output
Arduino Mega 2560 memiliki 54 pin digital yang dapat digunakan sebagai masukan atau keluaran menggunakan fungsi pinMode() dan menentukan proses penulisan atau pembacaan data I/O menggunakan fungsi digitalWrite() dan digitalRead(). Setiap pin beroperasi pada tegangan 5 volt, mampu menerima atau menghasilkan arus maksimum sebesar 40 mA dan memiliki 20 - 50 Kohm resistor pull-up internal (diputus secara default).
Pin digital ini selain berfungsi sebagai masukan dan keluaran digital namun
juga dapat berfungsisebagai pin dengan fungsi khusus seperti untuk komunikasi UART (pin 0 sebagai RX dan pin 1 sebagai TX), komunikasi SPI, komunikasi I2C, external interrupt, dan PWM. Untuk memanfaatkan pin digital Arduino sebagai pin dengan fungsi khusus, maka register yang terkait dengan fungsi khusus tersebut harus dikonfigurasi terlebih dahulu. Konfigurasi register-register tersebut telah disediakan di pustakaArduino. Selain fitur pin digital, Arduino Mega 2560 juga memiliki 16 pin analog yaitu pin A0 sampai A15 dan setiap pin menyediakan resolusi sebesar 10 bit.
3.3.1.5Catu Daya
3.3.2 Modul SD Card
Modul SD Card adalah modul pembaca/penulis (Reader/Writer) SDCard yang dapat disambungkan dengan Arduino atau rangkaian elektronika berbasis mikrokontroler. Modul ini memiliki protokol komunikasi data SPI. Modul ini dapat bekerja dengan tegangan kerja 5V dan 3.3V.Gambar 3.5 menunjukkan tampilan modul SD card.
.
Gambar 3.5Modul SD Card
Pemilihan modul SD card ini dikarenakan memiliki kompatibilitas dengan SD card dengan tipe apapun dengan memori hingga 8 Gigabyte. Dengan besarnya
memori tersebut, maka lebih dari cukup untuk menyimpan data dalam bentuk teks yang menyimpan log data absensi dalam perangkat keras. Selain itu, kompatibilitas dengan Arduino melalui protokol SPI juga menjadi pertimbangan dalam pemilihan modul ini.
3.3.3 Modul RFID MFRC522
lain. Beberapa jenis seriMFRC5xx lainnya memiliki kompatibilitas yang terlalu luas yaitu mampu berkomunikasi dengan ISO 14443 B. MFRC522 mendukung untuk pembacaanseluruh varian kartu Mifare seperti Mifare mini, Mifare ultralight, Mifare ultralight C, Mifare Plus, Mifare DESFire, Mifare Clasic. Sebagai tambahan, hingga saat ini pustaka Arduino yang disediakan untuk pembacaan kartu Mifare hanya pustaka untuk modul RFID reader dengan bahan contactless reader IC MFRC522 saja. Gambar fisik dari modul MFRC522 dapat
dilihat pada Gambar 3.6.
Gambar 3.6Modul MFRC522
Deskripsi :
a. Chipset : MFRC522 Contactless Reader/Writer IC
b. Arus :13-26mA / DC 3.3V
c. Arus Puncak : 30mA
d. Frekuensi Kerja : 13.56MHz
e. Kartu yang Didukung : S50, S70, UltraLight, Pro, Desfire
f. Dimensi : 40mm x 60mm
h. Jarak pembacaan kartu : < 50mm
i. Suhu operasional : -20°C s.d. +80°C j. Kelembaban Relatif : 5% -95%
k. Protokol akses : SPI (Serial Peripheral Interface)
[image:51.612.250.393.419.526.2]Komponen kartu RFID tag yang digunakan pada sistem ini adalah jenisMifare Ultralight. Penentuan komponen ini dikarenakan kartu ini memilikikemudahan dalam memahami sistem keamanannya. Kartu jenis ini juga memilikijenis serial ID yang unik. Kartu ini memiliki kapasitas memori yang tidak besarsehingga untuk membantu kapasitas memori sistem digunakan memori tambahandari Arduino Mega 2560. Gambar 3.7 menunjukkan gambaran fisik dari kartu Mifare Ultralight.
Gambar 3.7Mifare Ultralight
tetap bekerja pada saat catu daya tidak tersambung, modul ini dapat berfungsi sebagai penjejak waktu (time tracking device) yang dapat bertahan hingga bertahun-tahun.
[image:52.612.263.388.262.386.2]Modul ini juga dilengkapi dengan EEPROM tambahan sebesar 4 Kilobytemenggunakan IC Atmel AT24C32, berguna untuk menyimpan data secara permanen. Gambar 3.8 menunjukkan tampilan dari modul RTC DS-1307.
Gambar 3.8Modul RTC DS-1307
Pemilihan modul RTC dengan tipe ini didasarkan dengan kemampuannya yang cukup handal. Selain itu, kemudahan dalam koneksi dengan Arduino melalui protokol i2c juga menjadi alasan dipilihnya modul RTC DS-1307. Pustaka yang banyak memudahkan pemrograman modul RTC ini.
3.3.5 Modul GSM/GPRS SIM900
yang beroperasi di frekuensi dual band 900 MHz dan 1800 MHz sekaligus. Gambar 3.9 menunjukkan tampilan modul GPRS SIM900.
Gambar 3.9 Modul GPRSSim900
Spesifikasi SIM900:
a. GPRS multi-slot class 10/8, kecepatan transmisi hingga 85.6 kbps (downlink)
b. GPRS mobile station class B c. Class 4 (2 W @ 900 MHz) d. Class 1 (1 W @ 1800MHz) e. SMS (Short Messaging Service)
k. Tingkat tegangan TTL, didukung dengan 3.3V and 5V
Pemilihan SIM900 didasarkan pada fiturnya yang sesuai dengan kebutuhan sistem absensi dan kemudahan dalam koneksi dengan Arduino Mega 2560 selaku kontroler dalam sistem absensi yang dirancang. Selain itu, penggunaan AT commanddan dukungan pustaka yang luasyang juga memudahkan dalam
pemrograman perangkat.
3.4Perancangan Perangkat Keras
Pada perancangan ini, sistem absensi menggunakan perangkat keras berupa Arduino Mega 2560, modul RTC (Real Time Clock), modul SD (Secure Digital)card, Modul GPRS dengan tipe SIM900, dan modul RFID (Radio Frequency Identification) dengan tipe MFRC522. Gambar 3.10 menunjukkan rangkaian
Gambar 3.10 Rangkaian Skematik Sistem Absensi
Berikut penjelasan rangkaian pada Gambar 3.10 :
1. Arduino Mega 2560 bertugas sebagai pusat kontrol sistem yang akan mengolah data input dan output. Arduino Mega 2560 mendapat catuan komputer melalui kabel USB (Universal Serial Bus).
CS (Chip Select). Pada perancangan ini, pin CS terhubung dengan kaki digital 36 pada Arduino Mega 2560.
3. Modul RTC berkomunikasi dengan Arduino Mega 2560 dengan protokol I2C (Inter-Intergrated Circuit). Protokol ini menggunakan dua buah pin, yaitu SCK dan SDA. Pada Arduino Mega 2560, protokol ini terletak pada kaki digital 20 dan 21.
4. Seperti halnya SD card, modul RFID dengan tipe MFRC522 juga menggunakan protokol SPI untuk berkomunikasi dengan Arduino Mega 2560. Pin SDA pada Modul RFID terhubung dengan kaki digital 53 pada Arduino
Mega 2560.
5. Modul GPRS dengan tipe SIM900 berkomunikasi secara serial dengan Arduino Mega 2560. Pin-pin yang terdapat protokol ini adalah pin Rx dan Tx yang terhubung dengan pin digital 18 dan 19 pada Arduino Mega 2560.
3.5Perancangan Perangkat Lunak
Pada perancangan perangkat lunak sistem absensi ini terdiri dari dua bagian yaitu perancangan program Arduino dan websiteyang akan digunakan.
3.5.1 Perancangan Program Arduino
Arduino diibaratkan sebagai blok-blok data yang mempunyai besar data setiap blok adalah 1 byte atau 8 bit. Gambar 3.11 menunjukkan diagram alir penulisan data ke EEPROM pada Arduino Mega 2560.
Pada perancangan program Arduino ini digunakan bahasa pemrograman yang memiliki kompatibitas sesuai dengan Arduino yang digunakan yaitu bahasa C++. Arduino Mega 2560 menggunakan bahasa pemrograman C++ dalam pengaplikasian fitur-fitur yang ada di dalamnya. Perangkat lunak yang digunakan adalah Arduino IDE (Integrated Development Environment). Gambar 3.13 menunjukkan tampilan Arduino IDE.
Gambar 3.13 Arduino IDE
Berikut ini adalah tombol-tombol toolbar serta fungsinya: Verify
mengecek error pada kode program. Upload
New
membuat sketch baru. Open
menampilkan sebuah menu dari seluruh sketch yang berada di dalam sketchbook.
Save
menyimpan sketch. Serial Monitor
membuka serial monitor.
Dalam lingkungan arduino digunakan sebuah konsep yang disebut sketchbook, yaitu tempat standar untuk menyimpan program (sketch). Sketch yang ada pada sketchbook dapat dibuka dari menu File > Sketchbook atau dari tombol open pada
toolbar. Ketika pertama kali menjalankan ArduinoIDE, sebuah direktori akan dibuat
secara otomatis untuk tempat penyimpana sketchbook. Kita dapat melihat atau mengganti lokasi dari direktori tersebut dari menu File > Preferences.
Serial monitor menampilkan data serial yang sedang dikirim dari Arduino. Untuk
mengirim data ke Arduino, masukkan teks, dan klik tombol send atau tekan enter pada keyboard.
Setelah memilih Arduino dan port serial yang tepat, tekan tombol upload pada toolbar atau pilih menu File > Upload. Arduino akan me-reset secara otomatis dan
proses upload akan dimulai. Pada kebanyakan jenis Arduino, LED RX dan TX akan berkedip ketika program sedang di-upload. ArduinoIDE akan menampilkan pesan ketika proses upload telah selesai, atau menampilkan pesan error.
Ketika sedang meng-upload program, Arduino bootloader sedang digunakan, Arduinobootloader adalah sebuah program kecil yang telah ditanamkan pada mikrokontroler yang berada pada Arduino. Bootloader ini mengijinkan kita meng-upload program tanpa menggunakan perangkat keras tambahan.
3.5.2 Website
Website yang digunakan dalam sistem absensi ini merupakan website yang
disediakan oleh sebuah perusahaan yang mendukung IoT (Internet of Things). Websitehanya digunakan untuk menampilkan data yang dikirim oleh Arduino Mega
2560 melalui sim900 dengan teknologi GPRS.
Websiteyang digunakan dalam sistem absensi ini adal
Website ini memiliki dukungan terhadap IoT sehingga dapat digunakan sebagai
BAB IV
PENGUJIAN DAN ANALISA DATA
4.1Umum
Pada Bab 4 ini akan dilakukan implementasi sistem berdasarkan perancangan pada Bab 3, maka dilakukan pembuatan sistem absensi yang terintergrasi dengan website melalui teknologi GPRS. Selain itu, dilakukan juga pengujian-pengujian
terhadap sistem absensi. Setelah itu, dilakukan analisa terhadap masing-masing pengujian. Data-data hasil analisa secara keseluruhan terdapat pada lampiran B, C, dan D. Adapun pengujian yang dilakukan terdiri dari :
1. Pengujian koneksi masing-masing perangkat dengan menghubungkannya ke Arduino.
2. Pengujian pengiriman SMS
3. Pengujian pencocokan lokasi pengambilan data 4. Pengujian koneksi GPRS
5. Pengujian koneksi ke website
6. Pengujian pengiriman data ke website
4.2Implementasi
[image:65.612.145.513.221.502.2]Pada tahap implementasi, perangkat yang digunakan adalah Arduino Mega 2560, Modul SD card, modul RFID, modul RTC, dan SIM900. Perangkat-perangkat ini merupakan perangkat keras pada sistem absensi. Gambar 4.1 menunjukkan perangkat-perangkat yang digunakan.
Gambar 4.1 Perangkat-Perangkat Keras Sistem Absensi
Gambar 4.2ShieldArduino Mega 2560
Gambar 4.3 Implementasi Perangkat Absensi
4.3Pengujian dan Analisis Koneksi Arduino dengan RTC
Gambar 4.4 Perangkat Pengujian Modul RTC
Perangkat-perangkat pengujian RTC dijadikan satu kesatuan dan dihubungkan ke komputer melalui kabel USB untuk menampilkan kondisi pengujian modul RTC pada serial monitor. Gambar 4.5 menunjukkan proses pengujian modul RTC.
Pengujian koneksi Arduino dengan RTC dilakukan dengan meng-upload program yang telah ada di pustaka RTClib.h. Program ini bermaksud untuk membaca dan menampilkan data waktu yang ada di modul RTC DS-1307 di serial monitor. Gambar 4.6 menunjukkan hasil pengujian koneksi RTC dengan Arduino.
Gambar 4.6 Hasil Pengujian Koneksi RTC dengan Arduino
4.4Pengujian dan Analisis Koneksi Arduino dengan RFID
[image:70.612.149.511.221.495.2]Pengujian koneksi RFID menggunakan Arduino Mega 2560, shield Arduino Mega 2560, Modul RFID,tag RFID berbentuk kartu dan software Arduino IDE yang mempunyai serial monitor. Gambar 4.7 menunjukkan perangkat-perangkat yang digunakan dalam pengujian.
Gambar 4.7 Perangkat Pengujian Modul RFID
Pengujian dilakukan dengan mendekatkan tag RFID, dimana perangkat-perangkat pengujian modul RFID sebelumnya telah dijadikan satu kesatuan dan dihubungkan ke komputer melalui kabel USB untuk menampilkan kondisi pengujian modul RTC pada serial monitor. ke reader RFID. Gambar 4.8 menunjukkan proses pengujian modul
Gambar 4.8 Proses Pengujian Modul RFID
[image:71.612.226.435.463.678.2]Pada Gambar 4.9 ditunjukkan nilai UID, PICC type, dan sector block data dari sebuah tag RFID yang ditampilkan pada sebuah serial monitor, dimana UID yang ditampilkan adalah FE 0C 84 B3. Untuk mendapatkan semua data sebuah tagRFID, maka tagtersebut harus didekatkan pada jarak yang mampu dijangkau oleh readerRFID yaitu maksimal 5 cm.
4.5Pengujian dan Analisis Koneksi Arduino dengan Modul SD Card
[image:72.612.156.505.386.650.2]Pengujian koneksi modul SD card menggunakan Arduino Mega 2560, shield Arduino Mega 2560, Modul SD card, SD card, dan software Arduino IDE yang mempunyai serial monitor. Gambar 4.10 menunjukkan perangkat-perangkat yang digunakan dalam pengujian.
Perangkat-perangkat pengujian modul SD card dijadikan satu kesatuan dan dihubungkan ke komputer melalui kabel USB untuk menampilkan kondisi pengujian modul SD card pada serial monitor. Gambar 4.11 menunjukkan proses pengujian modul SD card.
Gambar 4.11 Proses Pengujian Modul SD Card
Gambar 4.12 Hasil Pengujian Koneksi Modul SD Card dengan Arduino
Gambar 4.12 menunjukkan data dari sebuah SD card yang ditampilkan pada sebuah serial monitor. Tipe dari SD cardyang digunakan yaitu SDHC (Secure Digital High Capacity), dimana besar memori dari SD card tersebut adalah 3484 MB. Di
dalam SD card tersebut terdapat sebuah file dengan nama TEST.TXT.
4.6Pengujian dan Analisis Pembacaan Data SD card
Gambar 4.13 Hasil Pengujian Penulisan Data SD card
[image:75.612.218.422.83.310.2]Pada Gambar 4.14 menunjukkan nama-nama siswa beserta waktu saat memasukkan data melalui RFID. Data pada Gambar 4.14 menunjukkan kesamaan dengan data pada Gambar 4.13, dimana data-data nama pada Gambar 4.14 adalah Lisa Umar, Mahatir Muhammad, Oyen Ginting, dan Nur Iqbal.
4.7Pengujian dan Analisis Koneksi Arduino dengan SIM900
Pengujian koneksi modul SIM900 menggunakan Arduino Mega 2560, shield Arduino Mega 2560, Modul SIM900, kartu SIM yang mendukung GSM/GPRS dan software Arduino IDE yang mempunyai serial monitor. Gambar 4.15 menunjukkan
[image:76.612.189.472.359.574.2]perangkat-perangkat yang digunakan dalam pengujian.
Gambar 4.15 Perangkat Pengujian Koneksi SIM900
Gambar 4.16 Proses Pengujian Koneksi SIM900
Pengujian koneksi Arduino dengan SIM900 dilakukan dengan memberikan input kepada SIM900 melalui komunikasi secara serial. SIM900 bekerja berdasarkan AT command yang di-input-kan oleh user ke Arduino. SIM900 hanya mengenali AT
command sesuai dengan datasheet. Gambar 4.17 menunjukkan hasil pengujian
[image:77.612.250.392.480.678.2]Pada Gambar 4.17 terlihat status koneksi antara SIM900 dengan Arduino Mega 2560 yang menunjukkan kondisi “ready”. Kondisi ini menunjukkan adanya komunikasi antara dua perangkat keras.
4.8Pengujian dan Analisis Pengiriman SMS
[image:78.612.211.429.388.647.2]Pengujian pengiriman SMS dilakukan dengan sebuah program yang akan mengirimkan teks bertuliskan “Anak Anda tidak hadir” melalui protokol GSM, dimana nomor kartu SIM yang digunakan adalah 089664983460 dan nomor tujuan pengiriman adalah 08979213454. Gambar 4.18 menunjukkan kondisi pengujian pengiriman SMS pada serial monitor.
Gambar 4.18 menunjukkan kondisi dari Arduino yang memerintahkan SIM900 untuk mengirimkan SMS. Jika SMS berhasil dikirimkan, maka penerima akan menerima teks bertuliskan “Anak Anda tidak Hadir”. Gambar 4.19 menunjukkan hasil pengiriman SMS pada penerima.
Gambar 4.19 Hasil Pengujian Pengiriman SMS pada Sisi Penerima
4.9Pengujian dan Analisis Lokasi Pengambilan Data
Gambar 4.20 Hasil Pengujian Pengecekan Lokasi
Gambar 4.21 Lokasi pada Google Map
Pada gambar 4.21 menunjukkan lokasi pada google map yaitu d sekitar gedung Departemen Teknik Elektro di Jalan Politeknik Kampus USU. Nilai longitudedan latitude yang hanya menunjukkan derajatdikonversi menjadi 3°33'42.3"LU dan
98°39'16.8"BT.
4.10 Pengujian dan Analisis Koneksi GPRS
Pengujian koneksi GPRS dilakukan dengan meng-input-kan program ke dalam Arduino Mega 2560 yang akan melakukan request data dari sebuah website. Selama request dilakukan, data requestadalah sebanyak 50 byte.Pada pengujian ini website
Gambar 4.22 Hasil Pengujian Koneksi GPRS
Gambar 4.22 menunjukkan data yang diterima oleh Arduino yaitu 49 byte dari 50 byte data. Requestterhadap data HTTP juga berhasil dilakukan yang terlihat dari data kode website yang diterima oleh Arduino. Gambar 4.21 menunjukkan grafik pengujian koneksi GPRS.
Gambar 4.23 Grafik Pengujian Koneksi GPRS
1 2 3 4 5 6 7 8 9 10
Data diterima 49 49 18 49 19 49 49 18 24 19
Data Request 50 50 50 50 50 50 50 50 50 50
49 49 18 49 19 49 49 18 24 19
50 50 50 50 50 50 50 50 50 50
Gambar 4.23 menunjukkan sebanyak 10 percobaan requestdata dilakukan. Dari 10 kali percobaan request data sebanyak 50 byte, terdapat 4 kali Arduino menerima data sebanyak 49 byte, yaitu pada pengujian 1, 2, 4, 6, dan 7. Pada pengujian 3 dan 8 Arduino menerima data sebanyak 18 byte. Pada pengujian 5 dan 10, Arduino menerima data sebanyak 19 byte. Sedangkan pada pengujian 9, data yang diterima oleh Arduino adalah 24 byte.
4.11 Pengujian dan Analisis Koneksi ke Website
Gambar 4.24 Hasil Pengujian Koneksi ke Pubnub
Gambar 4.24 menunjukkan 3 buah data yang diterima yang berupa teks bertuliskan “”teks” : “hello NIM : 12-X“”, dimana X merupakan nilai integer yang ditambah tiap perulangan pengiriman data ke website.
Pada pengujian ini, Arduino Mega 2560 harus melakukan konfigurasi terhadap SIM900 sebelum mengirimkan data ke website melalui prorokol FTP (File Transfer Protocol). Maka diperlukan waktu tunggu untuk mempersiapkan pengiriman data.
Tabel 4.1 menunjukkan hasil pengiriman data berdasarkan delay pada Arduino. Tabel 4.1 Keberhasilan Pengiriman Data Berdasarkan Delay pada Arduino
Increement Delay 1 detik Delay 2 Detik Delay 3 Detik Delay 4 Detik Delay 5 Detik 0 Berhasil Berhasil Berhasil Berhasil Berhasil
1 Gagal Gagal Gagal Gagal Berhasil
2 Gagal Berhasil Berhasil Berhasil Berhasil
3 Berhasil Gagal Gagal Gagal Berhasil
4 Gagal Berhasil Berhasil Berhasil Berhasil
5 Gagal Gagal Gagal Gagal Berhasil
Pada Tabel 4.1 menunjukkan bahwa delay yang diperlukan Arduino untuk mengirimkan data yang berturut-turut ke sebuah website adalah 5 detik. Pada pengaturan delay 1 detik, kegagalan pengiriman data akan terjadi setelah sebuah data yang dikirimkan berhasil sampai ke website. Kegagalan pengiriman data terjadi sebanyak dua kali. Pada pengaturan delay 2 detik, 3 detik, dan 3 detik terjadi sebuah kegagalan pengiriman data setelah sebuah data berhasil sampai ke website.
4.12 Pengujian dan Analisis Pengiriman Data ke Website
Pengujian dilakukan dengan melakukan PING terhadap websiteyang dituju melalui IP addressdari website tersebut. Websiteyang dituju adala dengan IP addressyaitu 199.27.79.143. Ada tiga buah kondisi saat melakukan pengujian, yaitu mengatur nilai timeout sebesar 1 detik, 5 detik, dan 10 detik. Pada masing-masing kondisi, data yang digunakan sebanyak 30 byte, 150 byte, 300 byte, 450 byte, 600 byte, dan 750 byte. Pada masing-masing kondisi akan diminta replysebanyak 10 kali. Data yang akan diukur adalah delay, TTL, jumlah timeout,
kuat sinyal, dan BER (Bit Error Ratio). Jumlah timeout dapat diketahui dari nilai delay dan TTL. Jika nilai delay adalah 600 dan nilai TTL adalah 255, maka timeout
telah terjadi. Data yang diukur dapat dilihat nilainya pada lampiran B dan lampiran C. Sedangkan untuk menentukan kuat sinyal dan BER dapat dilihat pada lampiran E.
4.25 menunjukkan grafik hasil pengujian.
Gambar 4.25 Grafik Pengujian Data 30 byte
Pada gambar 4.25 menunjukkan terjadi timeoutsebanyak tiga kali pada kondisi pengaturan timeout 1 detik. Timeoutterjadi pada echo replypertama, kedua, dan ketiga. Pada echo reply selanjutnya, nilai delay stabil pada 7 dan 8 detik, sedangkan TTL menunjukkan nilai 55. Pada kondisi pengaturan nilai timeout 5 detik dan 10 detik, kondisi timeout tidak terpenuhi. Nilai delay dan TTL pada echo reply pertama dan kedua menunjukkan nilai yang tidak stabil, namun echoreply selanjutnya menunjukkan nilai yang stabil.
Pada percobaan yang kedua, data yang digunakan sebanyak 150 byte dengan timeoutsebesar 1 detik, 5 detik, dan 10 detik. Data 150 byte merupakan penyamaan
besar data yang sama dengan 5 orang siswa. Kuat sinyal pada percobaan kedua
600 600 600
7 7 7 8 8 7 8
255 255 255
55 55 55 55 55 55 55
16 10 8 8 8 8 8 8 8 8
55 55 55 55 55 55 55 55 55 55
15 9 7 8 7 7 8 7 7 8
55 55 55 55 55 55 55 55 55 55
0 100 200 300 400 500 600 700
1 2 3 4 5 6 7 8 9 10
D e la y ( s) & T T L Echo Reply
Timeout 1 detik : Timeout 1 detik : Timeout 5 detik :
adalah sebesar -46,28 dBm. Sedangkan BER yaitu lebih kecil dari 0,2%. Gambar 4.26 menunjukkan grafik hasil pengujian.
Gambar 4.26 Grafik Pengujian Data 150 byte
Pada Gambar 4.26 menunjukkan terjadi timeoutsebanyak tiga kali pada kondisi pengaturan timeout 1 detik. Timeoutterjadi pada echo replypertama, kedua, dan ketiga. Pada echo reply selanjutnya, nilai delay stabil pada angka 8 detik, sedangkan TTL menunjukkan nilai 55. Pada kondisi pengaturan nilai timeout 5 detik dan 10 detik, kondisi timeout tidak terpenuhi. Nilai delay dan TTL pada echo reply pertama dan kedua menunjukkan nilai yang tidak stabil, namun echoreply selanjutnya menunjukkan nilai yang stabil yaitu pada angka 8 detik dan 55.
600 600 600
8 8 8 8 8 8 8
255 255 255
55 55 55 55 55 55 55
15 15 8 8 8 8 8 8 8 8
55 55 55 55 55 55 55 55 55 55
15 10 8 8 8 8 8 8 8 8
255 255 255
55 55 55 55 55 55 55
0 100 200 300 400 500 600 700
1 2 3 4 5 6 7 8 9 10
D e la y ( s) T T L Echo Reply
Timeout 1 detik: Timeout 1 detik: Timeout 5 detik:
adalah sebesar -46,28 dBm. Sedangkan BER yaitu lebih kecil dari 0,2%. Gambar 4.27 menunjukkan grafik hasil pengujian.
Gambar 4.27 Grafik Pengujian Data 300 byte
Pada gambar 4.27 menunjukkan terjadi timeoutsebanyak tiga kali pada kondisi pengaturan timeout 1 detik. Timeoutterjadi pada echo replypertama, kedua, dan ketiga. Pada echo reply selanjutnya, nilai delay stabil pada angka 9 detik, sedangkan TTL menunjukkan nilai 55. Pada kondisi pengaturan nilai timeout 5 detik dan 10 detik, kondisi timeout tidak terpenuhi. Nilai delay dan TTL pada echo reply pertama dan kedua menunjukkan nilai yang tidak stabil, namun echoreply selanjutnya menunjukkan nilai yang stabil, yaitu pada angka 9 detik dan 55.
Pada percobaan yang keempat, data yang digunakan sebanyak 450 byte dengan timeoutsebesar 1 detik, 5 detik, dan 10 detik. Data 450 byte merupakan penyamaan
besar data yang sama dengan 15 orang siswa. Kuat sinyal pada percobaan keempat
600 600 600
9 9 9 9 9 9 9
255 255 255
55 55 55 55 55 55 55
15 14 9 9 9 9 9 9 9 9
55 55 55 55 55 55 55 55 55 55
15 14 9 9 9 9 9 9 9 9
55 55 55 55 55 55 55 55 55 55
0 100 200 300 400 500 600 700
1 2 3 4 5 6 7 8 9 10
D e la y ( s) & T T L Echo Reply
Timeout 1 detik: Timeout 1 detik: Timeout 5 detik:
adalah sebesar -46,28 dBm. Sedangkan BER yaitu lebih kecil dari 0,2%. Gambar 4.28 menunjukkan grafik hasil pengujian.
Gambar 4.28 Grafik Pengujian Data 450 byte
Pada gambar 4.28 menunjukkan terjadi timeoutsebanyak tujuh kali pada kondisi pengaturan timeout 1 detik. Timeout tidakterjadi pada echo replyketujuh, kesembilan, dan kesepuluh. Pada echo reply tersebut, nilai delay stabil pada angka 9 detik, sedangkan TTL menunjukkan nilai 55. Pada kondisi pengaturan nilai timeout 5 detik dan 10 detik, kondisi timeout tidak terpenuhi. Nilai delay dan TTL pada echo reply pertama dan kedua menunjukkan nilai yang tidak stabil, namun echoreply selanjutnya menunjukkan nilai yang stabil yaitu pada angka 9 detik dan 55.
600 600 600 600 600 600
9
600
9 9
255 255 255 255 255 255
55
255
55 55
16 14 9 9 9 9 9 9 9 9
55 55 55 55 55 55 55 55 55 55
16 14 9 9 9 9 9 9 9 9
55 55 55 55 55 55 55 55 55 55
0 100 200 300 400 500 600 700
1 2 3 4 5 6 7 8 9 10
D e la y ( s) & T T l Echo Reply
Timeout 1 detik: Timeout 1 detik: Timeout 5 detik:
adalah sebesar -46,28 dBm. Sedangkan BER yaitu lebih kecil dari 0,2%. Gambar 4.29 menunjukkan grafik hasil pengujian.
Gambar 4.29 Grafik Pengujian Data 600 byte
Pada gambar 4.29 menuunjukkan terjadinya timeoutpada semua echo replypada kondisi pengaturan timeout 1 detik. Pada kondisi pengaturan nilai timeout 5 detik dan 10 detik, kondisi timeout tidak terpenuhi. Nilai delay dan TTL pada echo reply pertama menunjukkan nilai yang tidak stabil, namun echoreply selanjutnya menunjukkan nilai yang stabil yaitu pada angka 15 detik dan 55.
Pada percobaan yang keenam, data yang digunakan sebanyak 750 byte dengan timeoutsebesar 1 detik, 5 detik, dan 10 detik. Data 750 byte merupakan penyamaan
besar data yang sama dengan 25 orang siswa. Kuat sinyal pada percobaan pertama adalah sebesar -46,28 dBm. Sedangkan BER yaitu lebih kecil dari 0,2%. Gambar
600 600 600 600 600 600 600 600 600 600
255 255 255 255 255 255 255 255 255 255
18 15 15 15 15 15 15 15 15 15
55 55 55 55 55 55 55 55 55 55
17 16 15 15 15 15 15 15 15 15
55 55 55 55 55 55 55 55 55 55
0 100 200 300 400 500 600 700
1 2 3 4 5 6 7 8 9 10
D e la y ( s) T T L Echo Reply
Timeout 1 detik: Timeout 1 detik: Timeout 5 detik:
4.30 menunjukkan grafik hasil pengujian.
Gambar 4.30 Grafik Pengujian Data 750 byte
Pada gambar 4.30 menuunjukkan terjadinya timeoutpada semua echo replypada kondisi pengaturan timeout 1 detik. Pada kondisi pengaturan nilai timeout 5 detik dan 10 detik, kondisi timeout tidak terpenuhi. Nilai delay dan TTL pada echo reply pertama menunjukkan nilai yang tidak stabil, namun echoreply selanjutnya menunjukkan nilai yang stabil yaitu pada angka 15 detik dan 55.
Dari enam buah grafik yang ada, menunjukkan data-data yang linear. Semakin
600 600 600 600 600 600 600 600 600 600
255 255 255 255 255 255 255 255 255 255
18 15 15 15 15 15 15 15 15 15
55 55 55 55 55 55 55 55 55 55
18 15 15 15 15 15 15 15 15 15
55 55 55 55 55 55 55 55 55 55
0 100 200 300 400 500 600 700
1 2 3 4 5 6 7 8 9 10
D e la y ( s) & T T L Echo Reply
Timeout 1 detik : Timeout 1 detik : Timeout 5 detik :
setiap awal echo reply, biasanya pada echo reply pertama dan kedua. SIM900 sebagai modul GPRS dapat menstabilkan nilai setelah echo reply pertama dan kedua. Pada grafik juga dapat dilihat bahwa timeouthanya tercapai pada pengaturan nilai timeout 1 detik. Untuk nilai pengaturan timeout 5 detik dan 10 detik tidak menunjukkan perbedaan yang signifikan. Hal ini dikarenakan SIM900 sudah mampu mengirim dan mendapat balasan PING dari alamat IP yang dituju selama kurang dari 5 detik.
4.13 Pengujian Sistem Absensi secara Keseluruhan
Pengujian secara keseluruhan dilakukan dengan menggabungkan keseluruhan perangkat dan mengujinya dengan menggunakan program pada lampiran A. Pengujian yang dilakukan meliputi pengaktifan absensi oleh tag RFID khusus yang hanya berfungsi untuk mengaktifkan dan menonaktfikan perangkat absensi. Pengujian yang selanjutnya membaca tagRFID dan memasukkan datanya ke website, dimana banyak tag RFID yang ada adalah 25 buah. Namun, tidak semua tag RFID dibaca. Hal ini dilakukan dengan maksud untuk melakukan pengujian yang selanjutnya yaitu pengiriman SMS. Jika tidak dilakukan pembacaan data oleh RFID reader maka Arduino Mega 2560 akan memerintahkan SIM900 untuk mengirim
SMS kepada wali siswa dan memberitahukan bahwa siswa tersebut tidak hadir. Pengujian SMS dilakukan setelah sistem absensi dinonaktifkan. Pengujian yang terakhir adalah pengujian pembacaan log pada SD card dengan melihat file yang ada di dalam SD card.
komunikasi serial, komunikasi I2C, dan komunikasi SPI. Konfigurasi yang dilakukan meliputi koneksi terhadap SIM900 dan GPRS. Gambar 4.31 menunjukkan hasil inisialiasi pada serial monitor.
Gambar 4.31 Hasil Inisialisasi Sistem Absensi
Gambar 4.32 Proses Pengaktifan Absensi
Proses pengaktifan hanya dilakukan dengan mendekatkan tag RFID dengan reader RFID. Pengaktifan absensi hanya dapat dilakukan oleh satu tagRFID saja.
Gambar 4.33 menunjukkan hasil pengaktifan pada serial monitor.
Setelah perangkat diaktifkan, pengujian selanjutnya adalah pembacaan tagRFID yang dimiliki oleh siswa dan mengirimkan data siswa tersebut ke website.Gambar 4.34 menunjukkan proses pembacaan tag RFID.
Gambar 4.34 Proses Pembacaan TagRFID
Pada gambar 4.35 menunjukkan berhasilnya data dikirimkan ke website. Data yang ditampilkan pada website dapat dilihat pada Lampiran C, dimana diterima sebanyak 23 data NIP siswa. Dua buah data yang tidak hadir yaitu 120402021 dan 120402024. Data dua buah siswa yang tidak ini akan dijadikan patokan dalam pengiriman SMS.
Pengujian selanjutnya yang dilakukan adalah pengujian menonaktifkan perangkat absensi. Proses yang dilakukan serupa dengan proses mengaktifkan perangkat absensi. Tag RFID yang digunakan juga menggunakan tag RFID yang sama dengan tag RFID yang mengaktifkan perangkat absensi. Gambar 4.36 menunjukkan hasil
proses penonaktifan perangkat absensi.
Pengujian yang selanjutnya dilakukan adalah pengujian pengiriman SMS ke dua buah data yang tidak dimasukkan ke dalam website. Gambar 4.37 menunjukkan proses pengiriman SMS pada serial monitor.
Gambar 4.37 ProsesPengiriman SMS pada Serial Monitor
Gambar 4.38 PenerimaanSMS pada Nomor Tujuan
Pengujian yang terakhir dilakukan adalah pembacaan data pada SD card. Data yang terdapat pada SD card seharusnya tidak terdapat data siswa yang memiliki NIP 10204021 dan 120402024. Gambar 4.39 menunjukkan data pada SD card.
BAB V
PENUTUP
9.1Kesimpulan
Berdasarkan hasil pembahasan pada bab 4, maka dapat dibuat kesimpulan sebagai berikut:
1. Perangkat absensi hasil rancangan membutuhkan waktu yang lama pada proses inisialisasi dan konfigurasi sistem absensi.
2. Diperlukan rentang waktu 5 detik oleh perangkat absensi untuk mengirimkan sebuah data dengan FTP.
3. Secara default, pengiriman data hingga 750 byte mampu dilakukan dengan baik oleh perangkat absensi.
4. Timeout pengiriman data ke website hanya terjadi pada pengaturan nilai timeout 1 detik.
5. Nilai BER pada kuat sinyal -46,28 dBm adalah kurang dari 0,2%.
9.2Saran
Adapun saran bagi penelitian berikunya adalah :
1. Penelitian dapat dikembangkan dengan sistem yang menggunakan modul dengan teknologi terkini, misalnya dengan menggunakan modul 3G yang memiliki kecepatan data jauh melebihi GPRS.
2. Diharapkan pada pengembangan berikutnya, peneliti dapat membuat website sendiri sehingga pengolahan data menjadi lebih baik.
BAB II
LANDASAN TEORI
2.1Sistem Absensi
Kehadiran peserta didik di sekolah (school attandence) adalah keikutsertaan peserta didik secara fisik dan mental terhadap aktivitas sekolah pada jam-jam efektif di sekolah. Sebaliknya, ketidakhadiran adalah ketiadaan partisipasi secara fisik peserta didik terhadap kegiatan-kegiatan sekolah.Pada jam-jam efektif belajar di sekolah, peserta didik diwajibkan berada di sekolah. Jika tidak dapat hadir di sekolah, maka harus memberikan keterangan yang sah serta diketahui oleh orang tua atau walinya[1].
2.2GPRS
GPRS (General Packet Radio Service) merupakan salah satu metode protokol pengiriman data seluler. Pada GPRS terdapat dua elemen baru yang diperkenalkan untuk membuat mode transfer paket end-to-end. Sebagai tambahan, HLR dikembangkan dengan data pelanggan GPRS dan informasi routing. Dua layanan yang dihasilkan yaitu point-to-point (PTP) dan point-to-multipoint (MTP)[2]. Gambar 2.1 menunjukkan arsitektur dari GPRS.
sebuah interfacelogika ke jaringan data paket eksternal. Serving GPRS support node (SGSN) bertanggung jawab atas pengiriman paket-paket ke MS dalam area layanannya. Dalam jaringan GPRS, protocol data unit (PDU) dikemas pada GSN asal dan dimuat pada GSN tujuan. Di antara GSN, Internet Protocol (IP) digunakan sebagai backbone pengiriman PDU. Semua proses ditetapkan sebagai tunneling pada GPRS. GGSN juga mempertahankan informasi routing yang digunakan untuk menembus PDU ke SGSN secara langsung melayani MS. Keseluruhan data pengguna yang berhubungan dibutuhkan oleh SGSN untuk menampilkan routing dan transfer data secara fungsional ke dalam HLR.
2.3RFID
Dalam beberapa tahun terakhir, prosedur identifikasi automatis (Auto-ID) menjadi sangat populer di banyak industri. Prosedur identifikasi automatis tersebut bertujuan untuk menghasilkan informasi tentang manusia, hewan, barang, dan produk. Salah satu contohnya adalah RFID (Radio Frequency Identification). RFID memasukkan data ke dalam sebuah alat elektronik yang membawa data atau disebut transponder. Transponder memanfaatkan gelombang elektromagnetik yang
dipancarkan oleh readerRFID untuk menghasilkan daya agar dapat bekerja[3]. Sebuah RFID terdiri dari dua komponen, yaitu:
1. Transponder
Transpoder diletakkan pada objek yang ingin diidentifikasi.
Reader bergantung pada desain dan teknologi yang digunakan, yang dapat
berupa hanya alat pembaca atau dapat digunakan untuk membaca dan menulis ID.
Sebuah reader secara khusus mengandung sebuah modul frekuensi radio (pengirim dan penerima), sebuah unit kontrol, dan sebuah elemen coupling ke transponder. Banyak reader yang dicocokkan dengan interface tambahan seperti
RS232 dan RS485 untuk mengaktifkan pengiriman dara ke dalam sistem yang lain seperti PC. Gambar 2.2 menunjukkan komponen dalam sistem RFID.
Gambar 2.2 Komponen dalam Sistem RFID
2.4Kartu Cerdas
Gambar 2.3 Standar Ukuran Identification Card
Kartu cerdas dibedakan menurut cara transmisi datanya menjadi dua yaitu kontak (contact) dan nirkontak (contactless). Kartu cerdas kontak memiliki area konduktor yang harus kontak ke reader ketika ingin melakukan komunikasi. Sedangkan nirkontak, kartu dapat melakukan komunikasi dengan reader tanpa harus melakukan kontak secara langsung[4].
2.5Arduino
Arduino didefinisikan sebagai sebuah platform elektronik yang open source, berbasis pada sofwtare dan hardware yang fleksibel dan mudah digunakan, yang ditujukan untuk para seniman, desainer, hobbies, dan setiap orang yang tertarik dalam membuat objek atau lingkungan yang interaktif[5].
Gambar 2.4 Jenis-jenis Arduino
Kelebihan Arduino dari platformhardwaremikrokontroler lainnya adalah:
1. IDE Arduino merupakan multiplatform, yang dapat dijalankan di berbagai sistem operasi, seperti Windows, Macintosh, dan Linux.
2. IDE Arduino dibuat berdasarkan pada IDE Processing, yang sederhana sehingga mudah digunakan.
3. Pemrograman Arduino menggunakan kabel yang terhubung dengan port USB, bukan port serial. Fitur ini berguna karena banyak komputer yang sekarang ini tidak memiliki port serial.
4. Arduino adalah hardware dan software open source. 5. Biaya hardware cukup murah.
6. Proyek Arduino ini dikembangkan dalam lingkungan pendidikan, sehingga bagi pemula akan lebih cepat dan mudah mempelajarinya.
2.5.1 Bahasa Pemrograman Arduino
Arduino merupakan perangkat yang berbasiskan mikrokontroler. Perangkat lunak merupakan komponen yang membuat sebuah mikrokontroler dapat bekerja. Arduino akan bekerja sesuai dengan perintah yang ada dalam perangkat lunak yang ditanamkan padanya.Bahasa pemrograman Arduino menggunakan bahasa pemrograman C++ sebagai dasarnya.
2.5.1.1Struktur
Gambar 2.5 Struktur Umum Pemrograman Arduino
Program pada Gambar 2.5 dapat dianalogikan dalam bahasa C seperti ditunjukkan pada Gambar 2.6.
Gambar 2.6 Analogi Struktur Umum Pemrograman Arduino
2.5.1.2Konstanta
Konstanta adalah variabel yang sudah ditetapkan sebelumnya dalam bahasa pemrograman Arduino. Konstanta digunakan agar program lebih mudah untuk dibaca dan dimengerti. Konstanta dibagi menjadi 3 kelompok yaitu:
1. Konstanta yang digunakan untuk menunjukkan tingkat logika (konstanta Boolean), yaitu true dan false.
2. Konstanta untuk menunjukkan keadaan pin, yaitu HIGH dan LOW.
3. Konstanta untuk menunjukkan fungsi pin, yaitu INPUT, INPUT_PULLUP, dan OUTPUT.
Ketika membaca atau menulis ke sebuah pin digital, terdapat hanya dua nilai, yaitu HIGH dan LOW. HIGH memiliki arti yang berbeda tergantung dengan konfigurasinya. Ketika pin dikonfigurasi sebagai masukan dengan fungsi pinMode(), mikrokontroler akan melaporkan nilai HIGH jika tegangan yang ada pada pin tersebut berada pada tegangan 3 volt atau lebih.Ketika sebuah pin dikonfigurasi sebagai masukan dan kemudian dibuat bernilai HIGH dengan fungsi digitalWrite(), maka resistor pull-up internal dari chip ATmega akan aktif, yang akan membawa pin masukan ke nilai HIGH, kecuali pin tersebut ditarik (pull-down) ke nilai LOW oleh rangkaian dari luar. Ketika pin dikonfigurasi sebagai keluaran dengan fungsi pinMode() dan diatur ke nilai HIGH dengan fungsi digitalWrite(), maka pin berada pada tegangan 5 volt.
2.5.1.3Fungsi Masukan dan Keluaran Digital
Arduino memiliki 3 fungsi untuk masukan dan keluaran digital pada Arduino, yaitu pinMode(), digitalWrite() dan digitalRead().
Fungsi pinMode() mengkonfigurasi pin tertentu untuk berfungsi sebagai masukan atau keluaran. Sintaks untuk fungsi pinMode() ditunjukkan pada Gambar 2.7.
Gambar 2.7 Fungsi Sintaks pinMode
Fungsi digitalWrite() berfungsi untuk memberikan nilai HIGH atau LOW suatu digital pin. Sintaks untuk fungsi digitalWrite() ditunjukkan pada Gambar 2.8.
Gambar 2.8 Fungsi Sintaks digitalWrite
Gambar 2.9 Fungsi Sintaks digitalRead
Beberapa contoh penggunaan sintaks tersebut dapat diimplementasikan pada contoh penggunaan fungsi masukan dan keluaran digital dalam sebuah program yang ditunjukkan pada Gambar 2.10.
Gambar 2.10 Implementasi Sintaks pada Program Arduino
2.6PING
Packet InterNet Gopher (PING) adalah salah satu protokol messagging TCP/IP
berguna untuk menguji permasalahan pada jaringan. Gambar 2.11 menunjukkan penggunaan PING pada Command Prompt.
Gambar 2.11 PING pada Command Prompt
Gambar 2.11 menunjukkan hasil penggunaan PING setelah menyelesaikan echo reply. Waktu round trip terpendek adalah 68 ms, rata-rata adalah 68 ms, dan nilai
BAB I
PENDAHULUAN
1.1Latar Belakang Penulisan
Sekarang ini dunia pendidikan erat kaitannya dengan penerapan teknologi. Salah satu contohnya adalah penerapan teknologi ke dalam aplikasi absensi di berbagai tempat, seperti sekolah. Penerapan teknologi yang dimaksud salah satunya adalah sistem absensi menggunakan sidik jari. Selain itu dikembangkan pula sistem absensi berbasis RFID. Kedua sistem tersebut telah diteliti oleh mahasiswa Departemen Teknik Elektro Universitas Sumatera Utara. Dalam penelitiannya,mahasiswa tersebut membahas tentang penentuan besar data sidik jari pada mikrokontroler dan komputer. Selain itu, dibahas pula waktu pada proses pengolahan data RFID oleh mikrokontroler.
diharapkan permasalahan kontrol wali siswa terhadap aktifitas anaknya di sekolah dapat diselesaikan.
1.2Rumusan Masalah
Berdasarkan latar belakang pada Tugas Akhir ini, maka rumusan masalahnya adalah :
1. Bagaimana merancang kesatuan sistem absensi yang terintegrasi dengan website melalui teknologi GPRS.
2. Bagaimana mekanisme pengiriman data perangkat sistem absensi ke website melalui GPRS.
3. Bagaimana menganalisa kinerja perangkat hasil rancangan sistem absensi ke website melalui GPRS.
1.3Tujuan Penulisan
Adapun tujuan dari penulisan Tugas Akhir ini adalah merancang sebuah sistem absensi yang terintegrasi dengan website melalui teknologi GPRS.
1.4Batasan Masalah
Agar penulisan ini sesuai dengan tujuan, maka batasan masalah adalah:
dan 1 tag digunakan oleh pengajar untuk mengaktifkan/menonaktifkan perangkat absensi.
3. Websitehanya digunakan sebagai penampil data. Website tidak dirancang
sendiri, namun memanfaatkan website yang sudah ada di internet.
4. Parameter yang diukur yaitu delay pengiriman, TTL(Time To Live), jumlah timeout, kuat sinyal, dan Bit Error Ratio (BER).
5. Tidak membahas jenis kartu SIM yang digunakan. 6. Tidak membahas jenis antena yang digunakan.
1.5Metodologi Penulisan
Adapun metodologidalam penulisan ini yaitu : 1. Studi literatur
Pada tahap ini dilakukan studi pada berbagai referensi pustaka yang berkaitan dengan perancangan, baik buku, jurnal, artikel, dan lain-lain.
2. Pemodelan sistem absensi
Pada tahap ini sistem dimodelkan sehingga gambaran perancangan alat yang akan dibuat akan terlihat secara jelas.
3. Perancangan perangkat keras
Pada tahap ini dilakukan perancangan perangkat keras antara lain konfigurasi komponen-komponen dengan kontroler.
4. Perancangan perangkat lunak
5. Pengujian dan analisa sistem
Melakukan pengujian dan analisa terhadap sistem secara keseluruhan dengan menggabungkan perangkat keras dan perangkat lunak.
1.6Sistematika Penulisan
Untuk mempermudah pemahaman, tugas akhir ini ditulis dengan sistematika sebagai berikut:
BAB I : PENDAHULUAN
Bab ini berisikan tentang latar belakang masalah, tujuan penulisan, rumusan masalah, batasan masalah, metode penulisan serta sistematika penulisan. BAB II : LANDASAN TEORI
Pada bab ini dijelaskan tentang sistem absensi,GPRS, Arduino, dan RFID. BAB III : METODOLOGI PENELITIAN
Bab ini mengulas tentang perancangan sistem secara umumdan secara khusus. Sistem mencakup perangkat keras dan perangkat lunak.
BAB IV: PENGUJIAN DAN ANALISA
BAB V: PENUTUP
ABSTRAK
Teknologi telekomunikasi telah berkembang pesat dan menjadi kebutuhan harian. Perkembangan teknologi yang cukup pesat ini dapat diterapkan ke berbagai bidang, khususnya dunia pendidikan. Penerapan teknologi yang dimaksud salah satunya adalah sistem absensi menggunakan RFID.Pada tugas akhir ini dirancang suatu perangkat absensi siswa yang menggunakan Arduino, RFID dan GPRS. GPRS merupakan salah satu teknologi pengiriman data seluler, yang pada penelitian ini berfungsi sebagai sarana akses pengiriman data absensi siswa menuju website. Dari penelitian Tugas Akhir ini, telah berhasil dirancang suatu sistem absensi yang terintegrasi dengan website melalui teknologi GPRS. Sistem absensi menggunakan perangkat-perangkat yaitu Arduino Mega 2560, modul RFID MFRC522, modul RTC DS1307, modul SD card, dan modul GSM/GPRS SIM900.Dari hasil pengujian diperoleh bahwa sistem absensi mampu mengirimkan data siswa hingga 25 orang sekaligus menuju ke sebuah website. Dari 18 percobaan pengambilan data, didapatkan kondisi kuat sinyal sebesar -46,28 dBm dan nilai BER kurang dari 0,2%. Namun, untuk membangun konfigurasi pengiriman per masing-masing data siswa menuju website melalui protokol FTP membutuhkan waktu sebesar 5 detik.
TUGAS AKHIR
RANCANG BANGUN SISTEM ABSENSI YANG
TERINTEGRASI DENGAN WEBSITEMELALUI TEKNOLOGI GENERAL
PACKET RADIO SERVICE
Diajukan untuk memenuhi persyaratan
menyelesaikan pendidikan sarjana (S-1) pada
Departemen Teknik Elektro Sub konsentrasi Teknik Telekomunikasi
Oleh
Royansyah Putra Ginting
NIM : 120402056
DEPARTEMEN TEKNIK ELEKTRO
FAKULTAS TEKNIK
UNIVERSITAS SUMATERA UTARA
MEDAN
ABSTRAK
Teknologi telekomunikasi telah berkembang pesat dan menjadi kebutuhan harian. Perkembangan teknologi yang cukup pesat ini dapat diterapkan ke berbagai bidang, khususnya dunia pendidikan. Penerapan teknologi yang dimaksud salah satunya adalah sistem absensi menggunakan RFID.Pada tugas akhir ini dirancang suatu perangkat absensi siswa yang menggunakan Arduino, RFID dan GPRS. GPRS merupakan salah satu teknologi pengiriman data seluler, yang pada penelitian ini berfungsi sebagai sarana akses pengiriman data absensi siswa menuju website. Dari penelitian Tugas Akhir ini, telah berhasil dirancang suatu sistem absensi yang terintegrasi dengan website melalui teknologi GPRS. Sistem absensi menggunakan perangkat-perangkat yaitu Arduino Mega 2560, modul RFID MFRC522, modul RTC DS1307, modul SD card, dan modul GSM/GPRS SIM900.Dari hasil pengujian diperoleh bahwa sistem absensi mampu mengirimkan data siswa hingga 25 orang sekaligus menuju ke sebuah website. Dari 18 percobaan pengambilan data, didapatkan kondisi kuat sinyal sebesar -46,28 dBm dan nilai BER kurang dari 0,2%. Namun, untuk membangun konfigurasi pengiriman per masing-masing data siswa menuju website melalui protokol FTP membutuhkan waktu sebesar 5 detik.
KATA PENGANTAR
Puji syukur senantiasa penulis ucapkan kepada Allah SWT yang telahmemberikan kesempatan bagi penulis untuk dapat kiranya menyelesaikanpenulisan Tugas Akhir ini, yang merupakan salah satu syarat untuk mendapatkangelar kesarjanaan.Kemudian shalawat dan salam penulis sampaikan kepadajunjungan kita Nabi besar Muhammad SAW yang selalu menjadi inspirasi penulissekaligus menjadi panutan bagi setiapumat muslim.
Tugas Akhir ini merupakan bagian dari kurikulum yang harusdiselesaikan untuk memenuhi persyaratan menyelesaikan pendidikan SarjanaStrata Satu di Departemen Teknik Elektro, Fakultas Teknik, Universitas SumateraUtara.Tugas Akhir ini penulis persembahkan kepadakeluarga,khususnya kedua orang tua yaituIbunda dan Ayahanda yang senantiasamendoakan, memberi semangat serta nasehat kepada penulis. Adapun judul Tugas Akhir ini adalah :
“RANCANG BANGUN SISTEM ABSENSI YANG TERINTEGRASI DENGAN WEBSITE DENGAN TEKNOLOGI
GENERAL PACKET RADIO SERVICE”
mengarahkanpenulis baik semasa kuliah maupun saat proses penulisan tugas akhir ini.
2. Bapak Ir. Arman Sani, M.T dan Bapak Rahmad Fauzi, S.T, M.T selakuDosen Penguji yang telah mengevaluasi serta mengarahkan penulis baiksemasa kuliah maupun saat proses penulisan tugas akhir ini.
3. Bapak Ir. Surya Tarmizi Kasim, M.siselaku Ketua Departemen Teknik Elektro FT-USU dan Bapak Rahmad Fauzi, S.T, M.T selaku Sekretaris Departemen Teknik Elektro FT-USU yang selama ini telah memotivasi, membimbing serta membina selama masa perkuliahan.
4. Orang tua tercinta, Taufik W Ginting dan Cut Mursidiana yang telah memberikan segalany