You are on page 1of 9

Absensi Mahasiswa Menggunakan Sensor RFID

dan Mikrokontroller Arduino Atmega 2560 untuk


Perhitungan Kompensasi Kehadiran dan Penilaian

Herri Trisna Frianto 1) Anwar 2) Aulia Salman 3) Joni Hasman 4)


Reniwati Lubis 5) Nasruddin 6) Murtopo 7) Gunawan 8)

1,2,3,4) Politeknik Negeri Medan


5,6,7,8) Politeknik Negeri Media Kreatif Medan

ABSTRAK

Dalam mengabsen mahasiswa sekarang ini masih banyak secara manual yaitu dengan memanggil nama satu
persatu dan menaruhnya dikertas. Hal ini membuang waktu dan tenaga. Selain itu permasalahan yang terjadi
yaitu seringnya kesalahan dalam menginput data absen ke komputer. Pada zaman sekarang ini sudah terdapat
teknologi-teknologi baru berupa IC terprogram yaitu mikrokontroller. Mikrokontroller tersebut diisi program
oleh manusia sehingga sebuah sistem dapat bekerja secara otomatis dan dapat mengganti peran manusia dalam
melakukan sebuah aktivitas. Dengan adanya mikrokontroller,penulis dapat mengatasi permasalahan di atas yang
terjadi pada pengabsenan mahasiswa dan perhitungan nilai kompensasi absensi mahasiswa setiap semester.

Mikrokontroller yang digunakan adalah arduinomega 2560 yang berfungsi untuk memproses dan mengolah
input dan mengendalikan output. Input yang di proses berupa kartu RFId yang berisikan Nama dan NIM
mahasiswa tersebut sebagai syarat untuk masuk kedalam kelas dan motor DC sebagai mekanik untuk membuka
pintu serta sensor infra merah sebagai pendeteksi suatu objek yang ada didepan pintu.
Sedangkan output yang dikendalikan adalah LCD dan USB to TTL. LCD berfungsi untuk menampilkan
karakter berupa nama dan nim mahasiswa tersebut dan USB to TTL berfungsi untuk mengirimkan data hasil
absen dari arduino ke PC.

Kata Kunci: Absensi, Kompensasi, Penilaian, Mikrokontroler, Sensor RFId.

1. Latar Belakang
Absensi atau daftar kehadiran mahasiswa merupakan salah satu aspek penting yang menunjang berjalannya
sistem perkuliahan. Pada Perguruan Tinggi seperti Politeknik Negeri Medan dan Politeknik Negeri Media
Kreatif Medan masih menggunakan sistem absensi manual yaitu meng-absen mahasiswanya satu per satu.
Sistem absensi manual ini memiliki kelemahan yaitu tidak praktis. Perihal tidak praktis dalam sistem ini dapat
berupa menghabiskan banyak waktu untuk mengabsen mahasiswa satu persatu atau proses perekapan data ke
pusat yang rumit karena dilakukan secara manual, data absensi di pusat tidak dapat langsung di-update karena
harus menunggu untuk direkap oleh petugas yang bersangkutan.

Kelemahan dari sistem absensi manual ini lagi ialah tidak dapat memantau waktu kehadiran mahasiswa secara
terperinci seperti berapa menit atau berapa jam telatnya seorang mahasiswa.Padahal pemantauan waktu
kehadiran sangat berguna setiap menit atau jamnya keterlambatan kehadiran di perkuliahan, mahasiswa akan
dikenakan sanksi berupa penambahan tugas/kerja (denda dan kompensasi). Untuk menentukan seberapa banyak
tugas atau denda (kompensasi) yang diberikan kepada mahasiswa yang telat ditentukan melalui berapa banyak
waktu keterlambatan mahasiswa setiap perkuliahan.

2. Dasar Teori
1. Mikrokontroller

Mikrokontroler adalah sistem mikroprosesor lengkap yang terkandung didalam sebuah chip yang memadukan
CPU,ROM,RMW, I/O paralel,I/O seri,counter timer dan rangkaian clock didalamnya. Dengan kata lain
Mikrokontroler adalah sebuah alat elektronika yang mempunyai masukan dan keluaran serta kendali dengan
program yang bisa ditulis dan dihapus dengan cara yang tertentu.
Mikrokontroler Alf and Vegard’s Risc Processor atau AVR merupakan mikrokontroler 8 bit, karena sebagian
besar kode instruksinya dikemas dalam satu siklus clock. Secara umum AVR dikelompokkan atas 4 kelas yaitu
keluarga ATTny,keluarga AT90Sxx,keluarga ATMega dan AT86RFxx. Pada dasarnya yang membedakan
masing-masing kelas adalah memori,peripheral dan fungsinya. Pada Tugas Akhir ini mikrokontroler yang
digunakan adalah Arduino Mega2560.

Arduino Mega2560

Arduino Mega adalah board mikrokontroler berbasias ATMega2560. Modul ini memiliki 54 digital
input/output dimana 14 digunakan untuk PMW output dan 16 digunakan sebagai analog input, 4 untuk UART,
16 MHz osilator kristal,koneksi USB, power jack, ICSP Header dan tombol reset. Modul ini memiliki segalanya
yang dibutuhkan untuk memprogram mikrokontrolerseperti kabel USB dan sumber daya melalui adaptor
ataupunbattery. Modul arduino mega2560

2. Radio Frequency Identification (RFId)

Radio Frequency Identification merupakan suatu metode identifikasi objek yang menggunakan gelombang
radio.Metode identifikasi ini dengan menggunakan sarana yang disebut label RFId atau transponder untuk
menyimpan dan mengambil data jarak jauh. Label atau kartu RFId adalah sebuah benda yang bisa dipasang atau
dimasukkan di dalam sebuah produk, hewan atau bahkan manusia dengan tujuan untuk identifikasi
menggunakan gelombang radio. Label RFId terdiri atas microchipsilikon dan antena.

RFId dapat disediakan dalam alat yang hanya dapat dibaca saja (Read Only) atau dapat dibaca dan ditulis
(Read/Write), tidak memerlukan kontak langsung maupun jalur cahaya untuk dapat beroperasi, dapat berfungsi
pada berbagai variasi kondisi lingkungan, dan menyediakan tingkat integritas data yang tinggi.

Setiap Tag dapat membawa informasi yang unik, diantaranya: serial number, model, warna tempat perakitan,
dan data dari objek tersebut. Ketika Tag ini melalui medan yang dihasilkan oleh pembaca RFId yang
kompetibel, Tag akan mentransmisikan informasi yang ada pada Tag kepada pembaca RFId, sehingga proses
identifikasi objek dapat dilakukan. Sistem RFId terdiri dari empat komponen, diantaranya seperti dapat dilihat
pada gambar 1.
 Tag atau Transponder adalah device yang menyimpan informasi unutk identifikasi objek.
 Antena untuk menstransmisi, yaitu menstransmisikan sinyal frekuensi radio antara pembaca
RFIddenganTagRFId
 RFIdreader adalah perangkat yang kompatibel denganTagRFId yang akan berkomunikasi secara
wireless dengan Tag.
 Software aplikasi adalah aplikasi pada sebuah workstation atau PC yang dapat membaca data dari Tag
melalui pembaca RFId. Baik Tag dan pembaca RFId diperlengkapi dengan antena sehingga dapat
menerima dan memancarkan gelombang elektromagnetik.

Gambar 1.Sistem RFId


3. Bahasa Pemrograman

Pembuatan program aplikasi menggunakan visual basic dilakukan dengan membuat tampilan aplikasi pada
form,kemudian diberi script program didalam komponen-komponen yang diperlukan. Form disusun oleh
komponen-komponen yang berada di toolbox, dan setiap komponen yang dipakai harus diatur propertinya lewat
jendela properti. Menu pada dasarnya adalah operasional standar didalam sistem operasi windows, seperti
membuat form baru, membuat project baru, membuka project dan menyimpan project.

3. Perancangan Sistem
Dalam perancangan suatu sistem terlebih dahulu sistem itu direncanakan dengan membuat diagram blok.
Diagram blok dapat menganalisis cara kerja rangkaian dan merancang hardware serta software yang dibuat
secara umum. Diagram blok merupakan pernyataan hubungan yang berurutan satu atau lebih komponen yang
memiliki satu kesatuan tersendiri dan setiap blok komponen mempengaruhi komponen lainnya. Diagram blok
memiliki arti khususdengan memberikan keterangan didalamnya. Untuk setiap blok dihubungkan dengan satu
garis yang menunjukkan arah kerja dari setiap blok yang bersangkutan.

Pada diagram blok sistem ini terdapat beberapa blok,yaitu blok masukan (input) , blok pengendali,blok keluaran
(output) dan blok interface.

Perancangan Hardware
 Perancangan rangkaian RFId
Rangkaian RFId seperti terlihat pada gambar 2.

Gambar 2.Rangkaian RFId

Pada gambar 2. merupakan blok inputRFId. Sensor RFId yang digunakan merupakan tipe RDM300 yang
bekerja pada frekuensi 125 KHz dan pada tegangan 5 volt.Cara kerja rangkaian ini adalah ketika kartu RFId
didekatkan dengan sensor RFId maka sensor RFId akan mengirim sinyal data ke arduino. Pada alat ini terdapat
dua RFId yaitu RFId masuk dan RFId keluar.

Program sensor RFId sebagai berikut

while (Serial1.available()) { BuzzLoop = 4;

char inChar = Serial1.read(); }


//Serial.print(inChar);
inputString1 ="";
if (inChar == char(3)) {
}else if (inChar == char(2)) {
if (OldString1 != inputString1
&&inputString1.length() == 12) inputString1 = "";

OldString1 = inputString1; }else{

Serial.print("#"); if (inChar > char(40) )inputString1 += inChar;

Serial.print(OldString1); }

Serial.println("!"); }

mySerial.print("OUT:"); }

mySerial.println(OldString1);

stringComplete1 = true;
Perancangan Program Sistem Hardware dan Software
Perancangan program pada tugas akhir ini yaitu dengan merancang flowchart atau diagram alir. Penjelasan
masing-masingflowchart adalah sebagai berikut:

Flowchart Sistem Hardware


Flowchart pada arduino ini menjelaskan urutan proses kerja sistem yang akan bekerja pada arduino. proses kerja
sistem dimulai dari menginisialisasi port input dan output. Ketika kartu di scan ke RFId masuk maka RFId akan
memeriksa apakah data sesuai dengan yang ada di database pada PC, jika sesuai maka arduino memberi perintah
kepada motor DC untuk membuka pintu dan PC akan mencatat jam masuk serta mengaktifkan sensor
inframerah sebagai penanda jika objek telah masuk keruangan. Setelah objek masuk keruangan maka pintu akan
tertutup.

Kemudian jika data yang dikartu RFId yang discan tidak sesuai maka, RFId keluar akan aktif dan memeriksa
apakah data yang di database pada PC sesuai, jika sesuai maka arduino akan memerintahkan motor DC untuk
membuka pintu dan PC mencatat jam keluar dan menyimpan kalkulasi pada PC serta mengaktifkan sensor
inframerah,ketika objek telah keluar pintu akan tertutup. Jika tidak sesuai selama 3 kali percobaan maka alarm
akan berbunyi.. Perhatikan gambar 3 dan 4.

Catatan : bahwa perancangan lengkap sistem hardware dan software antara lain perancangan dan pemanfaatan
Motor DC, Limit Switch, Buzzer, LCD, infra merah dan lain-lain. Penulis berhak tidak mencantumkan dalam
paper ini. Oleh karena menjaga kerahasiaan perancangan sistem itu sendiri.

4. Pengujian Sistem

Pengujian Rangkaian Sensor Inframerah


Pengujian pada sensor Inframerah yaitu dengan cara mengukur Vout pada saat terhalang dan tidak terhalangnya
sensor. Perhatikan gambar 5 dan 6, di bawah.

Tabel 1 Pengukuran Vout Sensor Inframerah

No Port Tegangan Sensor Infra Merah Kondisi Sensor

42 0,11 Tidak Terhalang


42 4,99 Terhalang

Dari hasil pengujian dan pengukuran pada tabel 1. bahwa tegangan keluar (Vout) ketika sensor tidak dihalangi
suatu objek adalah 0,11 volt sedangkan ketika sensor dihalangi suatu objek maka tegangan keluar adalah 4,99
volt.

Tabel 4.7 Analisa Data RFId Masuk

No No Kartu Nama NIM WaktuMasuk Ket

1 18005A27FD98 Mesran 1405042059 12.46 HADIR


2 18005A210888 Robi 1305042080 12.47 HADIR
3 18005A58C009 Zulfan 1305042088 12.48 HADIR
4 1B005A778DBB Anggi 1305042074 12.49 HADIR

Tabel 4.8. Analisa data RFId keluar


WaktuMas
No No Kartu Nama NIM Ket
uk
1 18005A27FD98 Mesran 1405042059 18.31 KELUAR
2 18005A210888 Robi 1305042080 18.32 KELUAR
3 18005A58C009 Zulfan 1305042088 18.33 KELUAR
4 1B005A778DBB Anggi 1305042074 18.34 KELUAR
START

INISIALISASI

BACA RFID
MASUK

DATA Ya
BUKA PINTU CATAT JAM
SESUAI ?
MASUK

Tidak

BACA RFID
KELUAR

DATA Ya CATAT JAM


SESUAI? BUKA PINTU KELUAR

Tidak

SIMPAN
KALKULASI
TIDAK
ALARM
SESUAI
3X

SENSOR
INFRA
AKTIF

TUTUP PINTU

END

Gambar 3. Flowchart Perancangan Hardwrae Sistem

Flowchart Perancangan Sistem Software


Start

Inisialisasi

Baca data serial


masuk

Data dari Ya Id Tidak


RFId Fl terdaftar
masuk ? ?
o
w
ch Ya

Tidak ar
Catat
Flow t jammasuk
char pa
t da
pada ar
ardui du
Data dari Ya Id
Rfid no in terdaftar
Fl
keluar? ini o
o
menj ini
w
elask m
ch
an en
ar Catat
uruta jel
Tidak t jamkeluar
n as
pa
prose ka
da
s n Kalkulasi
ar
kerja ur jam
du absensi
siste ut
in
m an
o
yang pr
ini
end
akan os
m
beke es
en
rja ke
jel
padaGambarrja
4. Flowchart Software Sistem
as
ardui sis
ka
no. te
n
Flow m
ur
chart ya
ut
siste ng
an
m ak
pr
ardui an
os
no be
es
seper ke
Gambar 5. Pengujian dan pengukuran Infra Merah ketika Sensor tidak terhalang.

Gambar 6. Pengujian dan pengukuran Infra Merah ketika Sensor terhalang

Untuk perhitungan jam masuk dan keluarmahasiswa/i selama satu minggu beserta kompensasi diberi program
sebagai berikut :
Gambar 7. Tampilan Rekap Seminggu Salah Satu ID
Program jam masukataukeluarsebagaiberikut :
Private Sub Form_Load() ElseIf(CDate(lblWaktuMasuk.Caption)
On Local Error Resume Next >CDate(JamMasukNormal2Awal)) And
Dim asu As String (CDate(lblWaktuMasuk.Caption)
JamMasukUser = "08:00:00 AM" <CDate(JamMasukNormal2Akhir)) Then
DataUser(Eses, 7) =
JamMasukNormal1Awal = "07:30:00" Format(CDate(CDate(lblWaktuMasuk.Caption) -
JamMasukNormal1Akhir = "10:10:00" CDate(JamMasukNormal2Awal)), "hh:mm:ss")
Debug.Print "TELAT2 "&DataUser(Eses, 7) & " jam"
JamMasukNormal2Awal = "10:40:00"
JamMasukNormal2Akhir = "12:40:00" Else
Debug.Print "TIDAK TELAT2"
JamMasukNormal3Awal = "13:00:00" DataUser(Eses, 7) = "00:00:00"
JamMasukNormal3Akhir = "15:30:00" End If
lblWaktuKeluar.Caption = ""
JamMasukNormal4Awal = "16:00:00" SendDataIDNya& "=" &NamaNya
JamMasukNormal4Akhir = "18:30:00" End If

JamKeluarNormal = "17:00:00" Perhitungankompensasi


Label7.Caption = "*jam masuk normal " &JamMasukNormal nilaiDenda = 2500
'TotalSensor = Form1.GetTotalSensor
'If CDate(JamMasukUser) >CDate(JamMasukNormal) Then MSFlexGrid1.TextMatrix(0, 0) = "Tanggal"
Debug.Print "TELAT" Else Debug.Print "TIDAK TELAT" MSFlexGrid1.TextMatrix(0, 1) = "Masuk"
MSFlexGrid1.TextMatrix(0, 2) = "Keluar"
' koneksikankekomunikasi serial MSFlexGrid1.TextMatrix(0, 3) = "Telat"
With MSComm1
.CommPort = 2 MSFlexGrid1.ColWidth(0) = 2500
.InputLen = 1 MSFlexGrid1.ColWidth(1) = 2000
.RThreshold = 1 MSFlexGrid1.ColWidth(2) = 2000
.Settings = "9600,n,8,1" MSFlexGrid1.ColWidth(3) = 1700
.PortOpen = True
End With File1.Pattern = "*.txt"
If DataUser(Eses, 5) = "0" Then File1.Path = App.Path& "\log\"
DataUser(Eses, 5) = "1" cboFilter.AddItem "ALL"
DataUser(Eses, 6) = Time For h = 0 To Form1.maxUser
lblWaktuMasuk.Caption = Time cboFilter.AddItemForm1.getUser(h, 1)
' Cekterlambat Next h
End Sub
If (CDate(lblWaktuMasuk.Caption) Next i
>CDate(JamMasukNormal1Awal)) And stelat = CDate(TotalTelat)
(CDate(lblWaktuMasuk.Caption) lblInfo.Caption = "Total waktutelat :" & Mid(stelat, 1,
<CDate(JamMasukNormal1Akhir)) Then Len(stelat) - 2) & " Jam , Jumlahtelat " &JlhTelat& " kali"
'Debug.Print "TELAT" If JlhTelat> 0 Then
DataUser(Eses, 7) = lblKompen.Caption = "Biayakompensasi = Jumlahtelat X "
Format(CDate(CDate(lblWaktuMasuk.Caption) - &nilaiDenda& ",-, Total biayakompensasi : " &
CDate(JamMasukNormal1Awal)), "hh:mm:ss") Val(Left(stelat, 2)) * nilaiDenda 'If i > 0 Then OpenSucces =
Debug.Print "TELAT1 "&DataUser(Eses, 7) & " jam" True Else OpenSucces = False
Else OpenSucces = True
lblKompen.Caption = "" End Sub
End If

5. Kesimpulan

1. Pemanfaatan dan Penggunaan Sensor RFId melalui perancangan sistem hardware dan
software yang terhubung dengan mikrokontroller dan piranti elektronik lainnya serta
jaringan, sebagai pendataan absensi dan kompensasi dalam proses penilaian akhir semester di
lingkungan kampus, setelah diujia coba dan simulasikan ternyata efektif dan efisiensi dapat
diandalkan dan akurat.
2. Penerapan teknologi ini berdampak positif akan kehadiran para mahasiswa/i dan para dosen
yang pengampu ketika bertugas melaksanakan kegiatan belajar dan mengajar.

6. Daftar Pustaka.

Malvino.1985.Prinsip-prinsip Elektronika.Jakarta:Erlangga
Raditya Wibowo, Herry.2014.Buku Pintar VB Net. Jakarta:PT Elex Media Komputindo
Igoe, Tom.2012.Getting Started with RFID.United States of America: O’Rilley Media.

Pustaka Elektronik
https://www.arduino.cc/en/Main/ArduinoBoardMega2560
Diakses pada tanggal 06 Agustus 2016
http://elektronika-dasar.web.id/definisi-dan-aplikasi-rfid-radio-frequency-identification/
Diakses pada tanggal 06 Agustus 2016
http://elektronika-dasar.web.id/limit-switch-dan-saklar-push-on/
Diakses pada tanggal 06 Agustus 2016
http://elektronika-dasar.web.id/infra-red-ir-detektor-sensor-infra-merah/
Diakses pada tanggal 06 Agustus 2016
https://biondiocta.wordpress.com/2012/10/16/pengertian-motor-listrik-dc/
Diakses pada tanggal 06 Agustus 2016
http://ilmukomputerindonesia-komputer.blogspot.co.id/p/visual-basic-60.html
Diakses pada tanggal 06 Agustus 2016

You might also like