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.4 Kartu Cerdas
Kartu cerdas Smart Card merupakan sebuah kartu yang didalamnya tertanam IC. Kartu cerdas juga dikenal dengan sebutan Integrated Circuit Card ICC.
Dimensi fisik kartu cerdas telah ditentukan didalam ISO IEC 7810 yang mendefinisikan bahwa ukuran kartu yang digunakan adalah ID-1 85.60x53.98 mm.
Ukuran kartu dengan standar ISO 7810 terlihat pada Gambar 2.3.
Universitas Sumatera Utara
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.5 Arduino
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].
Nama Arduino di sini tidak hanya dipakai untuk menamai papanrangkaiannya saja, tetapi juga untuk menamai bahasa dan software pemrogramannya, serta
lingkungan pemrogramannya atau IDE-nya IDE = Integrated Development Environment. Gambar 2.4 menujukkan tampilan dari beberapa Arduino.
Universitas Sumatera Utara
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.
7. Memiliki begitu banyak pengguna dan komunitas di internet yang dapat
membantu setiap kesulitan yang dihadapi.
Universitas Sumatera Utara
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.1 Struktur
Setiap program dalam Arduino terdiri dari dua fungsi utama yaitu setup dan loop. Fungsi digambarkan sebagai kumpulan kode yang ditujukan untuk
melaksanakan tugas tertentu dan kode tersebut akan dijalankan ketika nama fungsi tersebut dipanggil di dalam program[6]. Instruksi yang berada dalam
fungsi setup dieksekusi hanya sekali, yaitu ketika Arduino pertama kali dihidupkan. Biasanya instuksi yang berada pada fungsi setup merupakan
konfigurasi dan inisialisasi dari Arduino. Instruksi yang berada pada fungsi loop dieksekusi berulang-ulang hingga Arduino dimatikan catu daya diputus. Fungsi
loop merupakan tugas utama dari Arduino. Jadi setiap program yang menggunakan bahasa pemrograman Arduino memilliki struktur yang ditunjukkan
pada Gambar 2.5.
Universitas Sumatera Utara
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.2 Konstanta
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. Konstanta yang digunakan untuk menunjukkan benar atau salah dalam bahasa
pemrograman Arduino adalah true dan false. False didefinisikan sebagai 0nol. True sering didefinisikan sebagai 1satu, namuntrue memiliki definisi yang lebih
luas. Setiap integer yang bukan nol adalah true dalam pengertian Boolean.
Universitas Sumatera Utara
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. Untuk mengkonfigurasi fungsi pin pada Arduino digunakan konstanta
INPUT, INPUT_PULLUP, dan OUTPUT. Pin Arduino yang dikonfigurasi sebagai masukan dengan fungsi pinMode dikatakan berada dalam kondisi
berimpedansi tinggi. Pin yang dikonfigurasi sebagai masukan memiliki permintaan yang sangat kecil kepada rangkaian yang di-sampling-nya, setara
dengan sebuah resistor 100 Megaohm dipasang seri dengan pin tersebut.Chip ATmega pada Arduino memiliki resisitor pull-up internal resistor yang
terhubung ke sumber tegangan secara internal yang dapat digunakan. Untuk menggunakan resistor pull-up internal ini kita menggunakan konstatnta
INPUT_PULLUP pada fungsi pinMode. Pin yang dikonfigurasi menjadi sebuah keluaran dikatakan berada dalam kondisi berimpedansi rendah.
Universitas Sumatera Utara
2.5.1.3 Fungsi 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
Fungsi digitalRead bertujuan untuk membaca nilai yang ada pada pin Arduino. Sintaks untuk fungsi digitalRead ditunjukkan pada Gambar 2.9.
Universitas Sumatera Utara
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.6 PING
Packet InterNet Gopher PING adalah salah satu protokol messagging TCPIP yang bekerja berdasarkan IP Internet Protocol. Protokol ini digunakan untuk
mendeteksi error pada jaringan, timeout, dan congestiontubrukan[7]. Jadi, PING merupakan suatu protokol standar TCPIP yang mengijinkan pengguna untuk
menguji konektifitas dengan perangkat lain, atau menguji apakah TCPIP stack pengguna bekerja dengan sesuai. Umumnya, pengguna mengetik seperti “PING
123.456.678.09” untuk menguji konektifitas pada alamat IP tersebut. PING sangat
Universitas Sumatera Utara
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
maksimum adalah 70 ms.
Universitas Sumatera Utara
BAB I PENDAHULUAN
1.1 Latar 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. Pada Tugas Akhir ini, penulis akan merancang suatu sistem absensi berbasis
mikrokontroler dan menggunakan RFID sebagai masukan data. Dalam perancangannnya sistem absensi menggunakan teknologi GPRS dalam pengiriman
data. Sistem absensi memiliki fitur kontrol dari pengajar, dimana hanya pengajar yang dapat mengaktifkan perangkat absensi melalui tag
RFID yang dimilikinya.Melalui sistem yang terhubung ke website yang mempunyai fitur GSM
dan GPRS ini juga diharapkan orang tua selaku wali peserta didik dapat melakukan kontrol terhadap aktivitas anaknya. Jika dalam suatu kondisi peserta didik tidak hadir
di dalam kelas, maka sistem secara otomatis akan mengirimkan SMS ke nomor telepon genggam orang tua dari peserta didik. Dengan dirancangnya sistem ini,
Universitas Sumatera Utara
diharapkan permasalahan kontrol wali siswa terhadap aktifitas anaknya di sekolah dapat diselesaikan.
1.2 Rumusan Masalah