• Tidak ada hasil yang ditemukan

T1 612006026 BAB III

N/A
N/A
Protected

Academic year: 2017

Membagikan "T1 612006026 BAB III"

Copied!
40
0
0

Teks penuh

(1)

BAB III

PERANCANGAN SISTEM

Pada bab ini akan dijelaskan mengenai perancangan dari komponen penyusun pada sistem. Komponen – komponen yang dirancang meliputi perangkat keras dan perangkat lunak. Perangkat keras berupa rangkaian atau modul rangkaian elektronika, sedangkan perangkat lunak merupakan program yang ada pada mikrokontroler maupun aplikasi desktop.

3.1. Gambaran Sistem

Sistem keseluruhan terdiri dari sebuah PC, switch dan modul pencatat kehadiran. Ketiganya terkoneksi secara LAN di sebuah gedung perkuliahan. Switch bertugas sebagai terminal jaringan. PC memiliki peran sebagai server untuk mengolah, mengirim dan menerima informasi terhadap modul pencatat kehadiran.

(2)

Modul pencatat kehadiran merupakan modul yang memiliki tugas menerima data dari label barcode KTM dan mengirimkan data tersebut ke PC melewati switch. Modul ini diletakan pada setiap ruangan dalam suatu gedung perkuliahan dan digunakan saat mahasiswa masuk ke ruangan kuliah. PC diletakkan pada sebuah ruangan gedung perkuliahan. Sistem dijalankan maksimal untuk 16 minggu pertemuan per matakuliah.

Pengajar yang hendak memulai perkuliahan menyalakan modul pencatat kehadiran, lalu memastikan bahwa jadwal yang tampak pada LCD merupakan matakuliah pengajar tersebut. Setelah itu, mahasiswa dipersilahkan untuk mengeluarkan KTM dan memasuki ruang kuliah. Pengajar mempersiapkan barcode scanner, kemudian menekan tombol scan terhadap label barcode KTM para mahasiswa yang memasuki ruang kuliah.

3.2. Cara Kerja Sistem

Sistem yang dibuat terdiri dari PC dan modul pencatat kehadiran, oleh karena itu cara kerja sistem dibagi menjadi dua. Kedua cara kerja sistem tersebut yaitu:

1. Cara Kerja Sistem pada PC

Operator memberikan input ke database PC secara manual melalui pengisian form atau dengan menggunakan file, dimana data yang dimasukkan berupa informasi mengenai daftar presensi yang berisi kode matakuliah, nama matakuliah, kode pengajar, nama pengajar, waktu perkuliahan, ruangan kuliah dan daftar peserta. File-file yang dimasukkan ke database berasal dari kantor fakultas, dengan format yang sudah ditentukan. Pengisian secara manual dapat dilakukan dengan menggunakan form – form data yang tersedia. Proses ini dilakukan sebelum masa perkuliahan dimulai.

(3)

Pengaturan dilakukan dengan memberikan alamat IP modul pencatat kehadiran yang disesuaikan dengan ruangan kuliah. Ketika pengaturan sudah selesai, operator wajib memeriksa dan memastikan bahwa koneksi tidak bermasalah.

Aplikasi desktop dijalankan pukul 07:00 sampai 20:00 pada hari Senin hingga Jumat. Operator wajib membuka koneksi sebelum pukul 07:00 dengan menekan start button pada form halaman utama. Setelah pukul 20:00 maka koneksi harus diputus dengan penekanan tombol stop.

Setelah masa perkuliahan selesai, maka operator dapat mencetak laporan yang sudah diolah pada aplikasi desktop. Laporan tersebut diteruskan kepada kantor fakultas sebagai laporan daftar presensi untuk ditindaklanjuti, apabila ditemukan ada mahasiswa yang tidak mengikuti perkuliahan selama lebih dari 3 pertemuan.

2. Cara Kerja Sistem pada Modul Pencatat Kehadiran

Modul pencatat kehadiran dinyalakan terlebih dahulu ketika hendak digunakan. Setelah modul menyala, maka modul akan memeriksa koneksi kepada PC. LED hijau akan menyala jika koneksi dengan PC berhasil, ini menandakan bahwa modul berada pada mode online. Jika koneksi gagal maka LED kuning akan menyala, modul berada pada mode offline.

Pada mode online, mikrokontroler akan memeriksa terlebih dahulu apakah ada data di EEPROM internal. Jika ada maka data pada EEPROM akan dikirim ke server terlebih dahulu sebelum modul meminta informasi jadwal perkuliahan.

(4)

matakuliah, nama matakuliah dan nama pengajar. Proses pengisian daftar presensi dapat dilakukan setelah informasi jadwal tertampil di LCD.

Pengisian daftar presensi dilakukan dengan menggunakan label barcode KTM. Label barcode KTM didekatkan ke barcode scanner, lalu tombol scan ditekan. Data akan masuk ke mikrokontroler kemudain diolah dan diteruskan ke PC bagian aplikasi server. Setelah beberapa saat, akan muncul konfirmasi di LCD mengenai respon terhadap data yang dikirim tadi. Mahasiswa dapat mengamati informasi tersebut, dan apabila konfirmasi menyatakan bahwa NIM gagal tercatat atau merasa kurang yakin dengan informasi tersebut, maka mahasiswa dapat mengulangi proses pengisian daftar presensi.

Konfirmasi dari server setelah mahasiswa melakukan proses scanning pada label barcode KTM berupa informasi bahwa mahasiswa tersebut berhasil mengisi daftar presensi, ditambah dengan pesan yang menyatakan status kehadiran di perkuliahan. Status kehadiran yang dimaksud adalah toleransi untuk tidak menghadiri perkuliahan, tentunya mahasiswa yang sudah melanggar batas toleransi akan mendapatkan status kehadiran bahwa mahasiswa tersebut telah gagal dalam perkuliahan. Batas toleransi yang digunakan adalah sebanyak tiga kali untuk setiap matakuliah yang diikuti, lebih dari batas itu mahasiswa dianggap gagal mengikuti perkuliahan.

(5)

Modul pencatatan daftar presensi memiliki waktu toleransi 15 menit untuk digunakan, artinya seluruh mahasiswa yang hendak melakukan pengisian daftar presensi hanya mendapat batas waktu sebesar 15 menit. Waktu tersebut mulai dihitung saat ada data NIM yang masuk untuk pertama kali, dimana NIM tersebut ada pada daftar presensi. Aturan ini digunakan saat berada pada mode online.

3.3. Perancangan Perangkat Keras

Perangkat keras yang digunakan pada modul pencatat kehadiran berupa komponen atau modul elektronika. Pada bagian ini akan dibahas mengenai perancangan dan koneksi perangkat – perangkat tersebut. Bagian – bagian penyusun modul pencatat kehadiran dapat dilihat pada gambar 3.2 .

Gambar 3.2. Komponen penyusun Modul Pencatat Kehadiran.

(6)

1. Mikrokontroler

Mikrokontroler digunakan sebagai pengolah data dari label barcode KTM dan mengatur komunikasi data dengan PC.

2. Barcode scanner

Alat ini berfungsi untuk membaca data pada label barcode KTM dan mengirimkan ke mikrokontroler.

3. LCD

LCD digunakan sebagai sarana penampil informasi kepada pengguna. 4. Modul Jaringan Ethernet

Modul ini berfungsi untuk komunikasi antara mikrokontroler dengan PC melalui jaringan ethernet.

5. Real Time Clock

RTC bertugas untuk memberikan waktu real saat listrik PLN padam, dan digunakan untuk acuan batas waktu pengisian daftar presensi.

6. MAX232

IC MAX232 berfungsi sebagai konverter tegangan level TTL ke RS-232, dan kondisi sebaliknya.

7. Buzzer dan LED

Buzzer dan LED digunakan sebagai pemberi isyarat tambahan yang membantu

sarana penampil untuk memberikan informasi kepada pengguna.

3.3.1. Rangkaian Minimum Sistem Mikrokontroler

(7)

memiliki fungsi untuk mengarahkan program mikrokontroler ke alamat awal, akibatnya mikrokontroler akan menjalankan program dari awal sama seperti saat awal mikrokontroler pertama kali dinyalakan. Osilator digunakan sebagai sumber clock mikrokontroler.

Gambar 3.3. Skematik minimum sistem mikrokontroler Atmega32.

Mikrokontroler yang digunakan merupakan mikrokontroler keluarga AVR yaitu ATmega32 , maka reset dilakukan dengan memberikan tegangan level low pada pin reset. Untuk mewujudkannya digunakan untai seperti terdapat pada bagian untai reset di gambar 3.3. Pada kondisi switch tidak ditekan maka kondisi pada pin reset

ATmega32 akan high, ketika switch tersebut ditekan maka pin reset akan low sehingga mikrokontroler akan melakukan reset.

(8)

Konfigurasi pin – pin mikrokontroler ATmega32 yang digunakan dapat dilihat pada tabel 3.1.

Tabel 3.1. Konfigurasi pin – pin mikrokontroler.

Pin Mikrokontroler Keterangan

PD.0 pin untuk menerima data serial dari WIZ110SR PD.1 pin untuk mengirim data serial ke WIZ110SR PD.2 pin untuk jalur clock dari barcode scanner PD.5 pin untuk jalur data dari barcode scanner PD.6 pin untuk jalur SCL DS1307

PD.7 pin untuk jalur SDA DS1307 PC.0 pin untuk jalur RS LCD 16x4 PC.1 pin untuk jalur RD LCD 16x4 PC.2 pin untuk jalur EN LCD 16x4 PC.4 – 7 pin – pin data untuk LCD 16x4 PB.3 pin untuk LED berwarna merah PB.2 pin untuk LED berwarna kuning PB.1 pin untuk LED berwarna hijau

PB.0 pin untuk buzzer

3.3.2. Koneksi Modul Jaringan Ethernet dengan Mikrokontroler

WIZ110SR merupakan modul jaringan ethernet yang digunakan pada sistem yang dibuat. WIZ110SR berfungsi untuk melakukan pengiriman data serial ke paket ethernet, berlaku juga untuk kondisi sebaliknya. Modul ini menggunakan konektor

DB9 dengan interface RS-232 untuk berkomunikasi dengan mikrokontroler. WIZ110SR dilengkapi dengan konektor RJ-45 untuk komunikasi pada jaringan ethernet.

(9)

sampai 25 volt untuk logika 0. Perbedaan level tegangan ini menyebabkan pin – pin ATmega32 dan WIZ110SR tidak dapat dihubungkan secara langsung.

Hal tersebut dapat diatasi dengan menggunakan konverter level tegangan. Konverter level tegangan yang dibuat menggunakan IC MAX232. Rangkaian pelengkap IC MAX232 dapat dilihat pada gambar 3.4.

Gambar 3.4. Skematik rangkaian pelengkap IC MAX232.

WIZ110SR digunakan sebagai client, sehingga pemilihan mode berada pada mode client. Data packing condition yang digunakan adalah character condition

dengan menggunakan karakter ‘$’ dengan nilai 24h, sehingga WIZ110SR akan melakukan pengiriman data ketika didapati karakter ini pada buffer data WIZ110SR.

3.3.3. Koneksi Barcode Scanner dengan Mikrokontroler

Barcode scanner yang digunakan Cipherlab 1000, dengan antarmuka PS/2. Pin

(10)

Gambar 3.5. Koneksi barcode scanner dengan mikrokontroler.

Apabila ada label barcode yang terbaca maka PD.2 akan menghasilkan data disertai dengan clock pada PD.5. Ketika PD.5 berada dalam kondisi low maka akan terjadi interupsi eksternal 0 pada mikrokontroler. Setiap terjadi interupsi eksternal 0, bit – bit yang diterima melalui PD.2 akan disimpan. Bit – bit tersebut akan diolah ketika interupsi eksternal 0 berhenti.

3.3.4. Koneksi LCD dengan Mikrokontroler

Sarana penampil modul pencatat kehadiran menggunakan LCD karakter 16x4. LCD ini mampu menampilkan 64 karakter, dan dilengkapi dengan backlight. Konfigurasi pin – pin LCD yang terhubung dengan mikrokontroler dapat dilihat pada tabel 3.2.

Tabel 3.2. Konfigurasi pin – pin mikrokontroler dengan LCD. Pin LCD Pin ATmega32

RS PC.0

R/W PC.1

EN PC.2

D4 PC.4

D5 PC.5

D6 PC.6

(11)

Mode LCD yang digunakan adalah mode 4 bit, sehingga pin D0 – D3 pada

LCD tidak digunakan. Pin kontras LCD dihubungkan ke ground agar mendapatkan kontras yang bernilai maksimal. Nilai kontras LCD dibuat maksimal, hal ini dilakukan untuk memperjelas karakter yang tertampil di LCD.

3.3.5. Rangkaian RTC

Real time clock pada modul pencatat kehadiran memanfaatkan DS1307, IC ini

digunakan untuk mengetahui waktu real saat modul pencatat kehadiran bekerja pada offline mode. Rangkaian RTC menggunakan DS1307 dapat dilihat pada gambar 3.6.

Catu daya pada RTC dilengkapi dengan catu daya cadangan menggunakan baterai CMOS 3V, hal ini dilakukan agar RTC tetap dapat bekerja saat catu daya utama mati.

Gambar 3.6. Skematik rangkaian RTC dengan DS1307.

(12)

3.3.6. Rangkaian LED dan Buzzer

Modul pencatat kehadiran dilengkapi dengan indikator berupa LED dan buzzer. buzzer. Buzzer berfungsi untuk memberikan isyarat berupa suara, sebagai penanda

kepada pengguna agar pengguna tahu akan adanya informasi yang dapat dibaca pada LCD. Jumlah LED yang digunakan ada tiga buah, LED – LED ini memiliki fungsi yang hampir sama dengan buzzer. Konfigurasi indikator – indikator tersebut dengan mikrokontroler dapat dilihat pada gambar 3.7.

Gambar 3.7. Rangkaian LED dan buzzer.

LED – LED yang digunakan berwarna hijau, kuning, dan merah. Ketiga LED tersebut memiliki fungsi sebagai berikut:

LED Hijau, berfungsi untuk memberitahu kepada pengguna bahwa modul pencatat kehadiran berada pada online mode.

LED Kuning, berfungsi untuk memberitahu kepada pengguna bahwa modul pencatat kehadiran berada pada offline mode.

(13)

Buzzer dan LED akan bekerja ketika mikrokontroler memberikan level tegangan low kepada pin – pin yang terhubung. Apabila mikrokontroler memberikan level high kepada pin – pin yang terhubung, tegangan pin – pin tersebut akan setara dengan tegangan catu daya, sehingga arus tidak cukup untuk mengaktifkan buzzer atau LED.

Nilai resistor pada rangkaian indikator LED yakni sebesar 560 ohm. Perhitungan nilai resistor yang digunakan melibatkan arus dan tegangan pada LED. Jika tegangan LED sebesar 2 V dan arus yang diinginkan mengalir sebesar 5 mA. Perhitungan untuk nilai resistor dapat dilihat pada persamaan berikut:

Vcc = VR + VL ………(3.1)

Keterangan mengenai variabel pada persamaan diatas, sebagai berikut: Vcc = tegangan catu daya

VR = tegangan pada resistor VL = tegangan pada LED

I R = arus yang melewati resistor

(14)

3.3.7. Rangkaian Catu Daya

Catu daya yang digunakan ada dua buah yaitu catu daya dengan sumber listrik AC dan baterai. Catu dengan sumber listrik AC digunakan sebagai catu daya utama. Catu daya utama akan digunakan ketika listrik PLN tidak padam, sedangkan baterai untuk keadaan sebaliknya.

Rangkaian catu daya utama menggunakan transformator sebesar 1A dengan tegangan rms 12 V. Jenis transformator yang digunakan transformator CT, sehingga pada rangkaian diperlukan dua buah dioda penyearah. Capasitor digunakan untuk memperhalus riak gelombang keluaran dari penyearah. Rangkaian catu daya utama dapat dilihat pada gambar 3.8.

Gambar 3.8. Skematik Catu Daya Utama.

Dioda penyearah yang dipasang merupakan dioda 1 ampere dan kapasitor yang dipasang sebesar 4700uF. Perhitungan nilai kapasitor yang dipasang diperlihatkan pada persamaan di bawah ini.

dt dv C

I= × ………(3.3)

Karena perubahan tegangan terhadap waktu selalu tetap, maka persamaan di atas menjadi:

T V C

(15)

Keterangan mengenai persamaan di atas sebagai berikut: I = arus yang dibutuhkan beban

C = nilai kapasitor yang terpasang setelah penyearah V = tegangan ripple yang terjadi

T = periode dari tegangan ripple

Periode dari tegangan ripple nilainya sama dengan periode tegangan AC yang telah disearahkan. Periode tegangan ripple yang terjadi adalah sebesar 0,01s. Nilai ini diambil dari rumus hubungan periode (T) dan frekuensi (f), rumus ini dapat dilihat pada persamaan 3.5.

f 1

T= ………..…(3.5)

(16)

Gambar 3.9. Skematik Rangkaian Charger Baterai.

Arus pengisian pada baterai melewati resisistor R5, resistor ini digunakan untuk membatasi arus agar arus yang masuk ke baterai tidak terlalu besar. D2 digunakan sebagai proteksi ketika catu daya utama dimatikan, hal ini dimaksudkan untuk menghindari pencatuan opamp menggunakan baterai akibat dari kondisi NC (Normally Close) relay terhubung pada Vout1.

Pada rangkaian charger baterai, opamp LM324 digunakan sebagai komparator. Output akan bernilai high jika tegangan pada baterai lebih dari tegangan referensi pada kaki input inverting (V ). Nilai tegangan referensi tersebut dibuat kira – kira bernilai (-)

10 volt. Perhitungan tegangan referensi sebagai berikut:

(17)

akan menyala. Apabila dalam proses pengisian baterai mengalami penurunan tegangan, maka output LM324 akan bernilai low dan transistor akan tetap aktif sampai isi kapasitor habis. Ketika isi kapasitor habis maka baterai akan kembali diisi. Dioda D1 berfungsi untuk menjaga agar pengosongan kapasitor tidak menuju output opamp saat low, tetapi menuju ke basis BC546.

Penentuan penggunaan catu daya menggunakan penyaklaran otomatis, sehingga ketika listrik padam maka catu daya yang digunakan otomatis menjadi baterai. Rangkaian penyaklaran ini dapat diperlihatkan pada gambar 3.10.

Gambar 3.10. Skematik Penyaklaran Catu Daya.

Output akan menjadi tegangan yang terhubung ke modul.yaitu sebesar 5 volt. LM7805 diberi heat sink untuk menyerap panas akibat dari konsumsi beban. Untuk menyalakan modul digunakan saklar tipe push on push off.

3.4. Perancangan Perangkat Lunak

(18)

3.4.1. Perangkat Lunak Modul Pencatat Kehadiran

Pada bagian ini dibahas tentang hal – hal yang berkaitan dengan perangkat lunak pada mikrokontroler yang ada pada modul pencatat kehadiran. Bagian – bagian dari perangkat lunak meliputi instruksi yang digunakan, header data, format data pada EEPROM, program utama dan beberapa bagian program.

3.4.1.1. Instruksi Modul Pencatat Kehadiran

Modul pencatat kehadiran mempunyai beberapa instruksi yang digunakan untuk berkomunikasi dengan server. Instruksi – instruksi tersebut yaitu CNNCT, TMNW dan JDWL. Setiap instruksi yang dikirimkan kepada server, akan mendapatkan respon yang berbeda.

Penjelasan dan keterangan mengenai respon – respon terhadap instruksi sebagai berikut:

1. CNNCT

Perintah CNNCT digunakan untuk memeriksa koneksi dengan server. Tanggapan yang diberikan server terhadap instruksi ini yaitu CNNCTOK. Ketika perintah ini dikirimkan dan tidak ada data respon, dapat diketahui bahwa koneksi dengan server terputus.

2. TMNW

(19)

3. JDWL

Perintah ini digunakan untuk meminta data jadwal sesuai dengan waktu modul dinyalakan. Data yang diterima berupa kode matakuliah, nama matakuliah, dan nama pengajar.

Pada bagian instruksi TMNW dan JDWL, respon yang dikirimkan oleh server disertai dengan informasi yang diperlukan sesuai permintaan instruksi. Respon data terhadap ketiga instruksi ini dapat dilihat pada tabel 3.3.

Tabel 3.3. Tabel Respon instruksi.

Instruksi Respon

CNNCT CNNCTOK

TMNW D[hari]/[bulan]/[tahun]/[jam]:[menit]:[detik]

JDWL [kode matakuliah];[nama matakuliah];[nama pengajar]

3.4.1.2. Header Data Modul Pencatat Kehadiran

Pengiriman data ke server dilakukan dengan memberikan tambahan berupa header data pada awal data. Header berfungsi sebagai penanda terhadap data yang dibawa sehingga memudahkan server dalam pembacaan data. Sistem yang dibuat pada modul pencatat kehadiran menggunakan dua buah header untuk mengirim data utama berupa NIM dan data presensi mahasiswa yang tersimpan di EEPROM.

Pada saat mahasiswa mengisi daftar presensi dan modul dalam keadaan online, data NIM yang didapat dari barcode KTM tidak dikirimkan secara langsung

(20)

Bagian data kedua yang diberi header sebelum dikirimkan ke server adalah data presensi mahasiswa yang tersimpan di EEPROM. Data ini merupakan data yang tersimpan ketika ada pengisian daftar presensi saat modul berkondisi offline mode. Pemeriksaan data di EEPROM terjadi saat modul menyala dan berada pada

online mode, modul akan memeriksa apakah di EEPROM ada data presensi

mahasiswa. Bila di EEPROM terdapat data, maka data ini tidak dikirimkan langsung melainkan diberi header data terlebih dahulu. header data yang digunakan yaitu RDDT#.

Kedua header data tersebut memiliki tanggapan dari server yang berbeda – beda, tanggapan ini dapat dilihat pada tabel 3.4.

Tabel 3.4. Respon data NIM dan RTC.

Format Data Respon

[9 digit NIM];BHL;[status] NIM#[9 digit nim]

NODT

RDDT#[data EEPROM] RDDTOK

Pada bagian NIM terdapat dua respon, respon NODT diberikan ketika NIM tidak ditemukan pada daftar presensi. Pada respon yang pertama, bagian status menyatakan informasi tentang jumlah kehadiran total dari mahasiswa. Penjelasan mengenai status dapat dilihat pada tabel 3.5.

Tabel 3.5. Keterangan status.

(21)

3.4.1.3. Format Data Presensi Mahasiswa di EEPROM

Penulisan data pada EEPROM dirancang sedemikian rupa sehingga kapasitas data yang tersimpan diharapkan menjadi maksimal. Penyimpanan data di EEPROM digunakan saat modul bekerja secara offline mode. Perancangan akan penulisan data tersebut diperlukan karena keterbatasan ruang memori EEPROM yaitu sebesar 1 kB. Pengaturan penulisan data meliputi format penulisan data dan aturan yang ditetapkan dalam penulisan data.

Format penulisan yang digunakan mencakup tiga kategori data yaitu tanggal, waktu dan NIM. Struktur umum penulisan ketiganya yaitu [‘<’][inisial][data]. Jumlah data setelah inisial maksimal 2 byte. Karakter ‘<’

digunakan untuk awal sekaligus akhir pembacaan data, ini disebabkan setiap ada dua karakter ‘<” di tengahnya pasti ada inisial dan data. Inisial merupakan penanda untuk menentukan kategori data yang dibaca. Data ditulis setelah inisial, panjang data yang ditulis disesuaikan dengan kategori data.

Gambar 3.11. Struktur penulisan data di EEPROM.

(22)

Tabel 3.6. Inisial hari, bulan dan tahun. Inisial Keterangan

H hari

B bulan

T tahun

Data waktu terdiri atas dua bagian yaitu jam, menit. Pada bagian format waktu, data untuk detik tidak diikutsertakan karena akan diikutkan pada bagian format data NIM. Panjang data setelah inisial sebesar satu byte, baik untuk jam atau menit. Inisial untuk waktu dapat dilihat pada tabel 3.7.

Tabel 3.7. Inisial jam dan menit. Inisial Keterangan

J jam

M menit

Kategori data NIM ada tiga buah, yaitu untuk menunjukkan fakultas, tahun angkatan dan nomor urut angkatan. Data untuk fakultas diambil dari digit satu dan dua pada sembilan digit data NIM, sedangkan bagian tahun angkatan diambil digit ke lima dan enam. Digit tiga dan empat tidak diikutsertakan di tahun angkatan, karena nilainya akan selalu 20. Inisial hanya terdapat pada data fakultas dan tahun angkatan.

(23)

Panjang data setelah inisial fakultas atau tahun angkatan adalah sebesar satu byte. Inisial yang digunakan dapat dilihat pada tabel 3.8.

Tabel 3.8. Inisial fakutas dan tahun angkatan. Inisial Keterangan

N fakultas O tahun angkatan

Nomor urut angkatan diambil dari digit tujuh, delapan dan sembilan. Format penulisan nomor urut angkatan tidak mengikuti aturan yang sebelumnya, pada bagian inisial diganti dengan nilai detik saat terjadi pengisian daftar presensi. Kemudian diikuti dengan nomor urut angkatan yang dapat direpresentasikan menjadi satu byte atau dua byte.

Satu byte diberikan untuk nomor urut angkatan di bawah 128. Dua byte akan mewakili nomor urut angkatan di atas 127. Hal ini dikarenakan pada bagian server digunakan encoding ASCII untuk penerimaan data, sehingga satu byte data maksimal hanya bernilai 127.

Posisi byte pertama untuk nomor urut angkatan di atas 127 menunjukkan faktor pengali dari 127, dan byte berikutnya untuk sisa yang diperlukan agar total perhitungan dari byte pertama dikali 127 ditambah byte kedua menjadi nomor urut angkatan. Format penulisan nomor urut angkatan dapat dilihat pada tabel 3.9.

Tabel 3.9. Format penulisan nomor urut angkatan.

(24)

Keterangan untuk nilai x dan y dapat dilihat pada persamaan berikut:

NomorUrutAngkatan=

(

127×X

)

+Y………..……(3.7)

Aturan - aturan yang ditetapkan dalam penulisan data presensi mahasiswa di EEPROM sebagai berikut:

1. Tanggal hanya dicatat sebanyak satu kali.

2. Jam dan menit tidak ditulis ke dalam EEPROM ketika jam dan menit masih bernilai sama dengan data jam dan menit sebelumnya.

3. Data fakultas tidak ditulis ke EEPROM saat nilainya sama dengan data fakultas yang tercatat sebelumnya.

4. Data tahun angkatan tidak ditulis ke EEPROM saat nilainya sama dengan tahun angkatan yang tercatat sebelumnya.

5. Keempat aturan tersebut berlaku selama modul menyala dalam kondisi offline.

3.4.1.4. Program Utama Modul Pencatat Kehadiran

(25)

!!

Gambar 3.13. Diagram alir pemeriksaan koneksi.

Pada diagram alir ditunjukkan bahwa setelah melakukan inisialisasi, modul memeriksa koneksi server untuk menentukan mode yang digunakan. Setelah berhasil masuk ke dalam mode yang dipilih, maka proses pengisian daftar presensi dapat dilakukan.

Prinsip kerja dari modul pencatat kehadiran adalah mengirim data ke server dan menunggu respon dari server. Oleh karena menunggu respon dari server,

maka modul memiliki waktu tunda terhadap respon server. Waktu tunda direalisasikan menggunakan timer mikrokontroler.

Modul akan mengaktifkan timer setiap selesai mengirimkan data ke server. Timer ini memiliki tujuan sebagai batasan waktu respon dari server. Ketika timer

(26)

Gambar 3.14. Diagram alir pengiriman dan penerimaan data.

3.4.1.4.1. Online mode

Pada saat modul berkondisi online mode, pertama kali modul akan meminta waktu berupa tanggal dan jam untuk disesuaikan dengan waktu server. Setelah melakukan penyesuaian waktu RTC, modul akan memeriksa apakah pada EEPROM terdapat data presensi mahasiswa, jika ada data maka data tersebut dikirim ke server. Data pada EEPROM merupakan data presensi mahasiswa pada saat modul berada pada offline mode.

(27)

Mahasiswa dapat melakukan pengisian daftar presensi dengan menggunakan KTM melalui barcode scanner, setelah mengisi daftar presensi akan muncul informasi mengenai kehadiran mahasiswa tersebut pada LCD. Jika koneksi terputus, modul akan meminta reset untuk kembali pada kondisi awal.

Toleransi waktu yang digunakan untuk proses pengisian daftar presensi sebesar 15 menit. Waktu toleransi mulai dihitung ketika ada mahasiswa yang melakukan pengisian daftar presensi, dan mahasiswa tersebut ada di dalam daftar presensi.

(28)

3.4.1.4.2. Offlinemode mode ini, data – data berupa NIM dan waktu disimpan di EEPROM.

Gambar 3.16. Diagram alir modul saat offline mode.

3.4.1.5. Subrutin Penerima Data Barcode Scanner

(29)

Metode yang digunakan adalah meletakkan setiap bit yang diterima ke posisi MSB, dan menggeser ke arah kanan sebanyak satu kali setiap ada data yang masuk. Setelah data yang masuk mencapai satu byte, data disimpan ke dalam sebuah variabel. Berikut ini potongan kode program pada bagian interupsi eksternal 0, yang digunakan untuk melakukan proses penerimaan data barcode scanner.

interrupt [EXT_INT0] void ext_int0_isr(void) {

Setelah menerapkan subrutin di atas diperoleh kode untuk setiap digit angka. Kode tersebut dapat dilihat pada tabel 3.10, nilai data tersebut sama dengan kode angka keyboard komputer.

Tabel 3.10. Kode heksadesimal untuk digit angka.

(30)

Gambar 3.17. Kode pada keyboard komputer.

3.4.2. Perangkat Lunak Aplikasi Desktop

Bagian ini akan membahas perancangan perangkat lunak pada PC berupa aplikasi desktop. Aplikasi desktop yang dibuat terdiri dari dua bagian yaitu bagian pengolah data dan aplikasi server. Pengolahan data meliputi penanganan jadwal kuliah dan peserta perkuliahan. Aplikasi server digunakan untuk menangani komunikasi terhadap modul pencatat kehadiran. Oleh karena aplikasi desktop cukup kompleks, maka aplikasi desktop yang dibuat terdiri dari beberapa form.

Form – form yang digunakan untuk menangani jadwal dan peserta kuliah

terdiri dari empat buah form data, yaitu pengajar dan mahasiswa, matakuliah, jadwal, dan peserta. Form – form untuk aplikasi server yakni form koneksi dan halaman utama. Selain beberapa form tersebut tedapat dua buah form lain yaitu form laporan dan input file.

3.4.2.1. Perancangan Form Data Pengajar dan Mahasiswa

Form pengajar dan mahasiswa digunakan untuk mengolah data yang

(31)

pengajar atau mahasiswa. Terdapat fasilitas untuk melakukan pencarian yang disesuaikan dengan kategori yang dipilih.

Gambar 3.18. Form Pengajar dan Mahasiswa.

Data pengajar dan mahasiswa disimpan pada dua buah tabel. Format tabel yang digunakan ada pada gambar 3.19. Primary key yang digunakan tabel mahasiswa adalah NIM, sedangkan untuk pengajar digunakan kode pengajar.

Gambar 3.19. Tabel Mahasiswa dan Pengajar.

3.4.2.2. Perancangan Form Data Matakuliah

Form ini digunakan untuk pengolahan informasi matakuliah. Informasi

(32)

Gambar 3.20. Form Data Matakuliah.

Informasi matakuliah disimpan pada tabel yang diberi nama tabel matakuliah, dapat dilihat pada gambar 3.21. Primary key yang digunakan adalah kode matakuliah.

Gambar 3.21. Tabel Matakuliah.

3.4.2.3. Perancangan Form Data Peserta

(33)

kode pengajar, nama pengajar, sks dan total peserta. Matakuliah yang diperbolehkan untuk penambahan peserta hanya matakuliah yang telah memiliki jadwal.

Peserta dapat ditambahkan ke suatu matakuliah apabila peserta tersebut telah terdapat pada tabel mahasiswa. Selain itu, peserta dapat dihapus satu per satu atau secara keseluruhan sesuai dengan kode matakuliah yang dipilih.

Gambar 3.22. Form Data Peserta.

Peserta yang telah ditambahkan melalui form ini akan disimpan ke dalam tabel peserta yang memiliki format tabel pada gambar 3.23.

(34)

Kolom [1] – [16] digunakan untuk mencatat waktu presensi. Total kehadiran menyatakan jumlah kehadiran selama perkuliahan berjalan. Keterangan mengenai status dapat dilihat pada tabel 3.5.

3.4.2.4. Perancangan Form Data Jadwal

Pengaturan mengenai jadwal perkuliahan dilakukan pada form ini, pengaturan meliputi ruangan dan waktu penyajian matakuliah. Jadwal perkuliahan berlaku untuk hari Senin sampai Jumat dengan rentang waktu perkuliahan dari jam 07:00 sampai 20:00.

Gambar 3.24. Form Data Jadwal.

(35)

Gambar 3.25. Tabel Jadwal.

3.4.2.5. Perancangan Form Input File

Form input file digunakan untuk memasukkan file – file yang berisi daftar

presensi. Setiap file mewakili daftar presensi satu buah matakuliah. File yang digunakan adalah file microsoft excel dengan ekstensi xls. Format penulisan file dapat dilihat pada tabel 3.11.

(36)

Tabel 3.11. Format File Excel. indeks tersebut memiliki arti bahwa pengisian peserta matakuliah dimulai dari baris 17 sampai baris terisi seluruh peserta. File ini dibuat berdasarkan jadwal matakuliah setiap fakultas, dan dikirimkan ke server sesuai dengan gedung perkuliahan tempat server diletakkan..

3.4.2.6. Perancangan Form Laporan

Form ini digunakan untuk melihat laporan daftar presensi. Form tersebut

(37)

Gambar 3.27. Form Laporan.

Informasi matakuliah yang tertulis termasuk di dalamnya yakni kode matakuliah, nama matakuliah, kode pengajar, nama pengajar, sks, fakultas dan progdi. Informasi tersebut diperlihatkan pada gambar 3.28.

Gambar 3.28. Bagian laporan mengenai informasi matakuliah.

(38)

pada posisi setelah tanggal pertemuan, daftar tersebut disajikan dalam bentuk kolom. Kolom – kolom tersedia dapat dilihat pada gambar 3.29. Penjelasan mengenai status terdapat pada bagian akhir laporan.

Gambar 3.29. Bagian akhir laporan.

3.4.2.7. Perancangan Form Koneksi

(39)

Gambar 3.30. Form Koneksi.

Gambar 3.31. Tabel Ruangan.

3.4.2.8. Perancangan Form Halaman Utama

Form Halaman Utama merupakan form yang digunakan untuk mengatur

(40)

Gambar 3.32. Form Halaman Utama.

Diagram alir dari aplikasi server pada form ini dapat dilihat pada gambar 3.33. Diagram alir menjelaskkan bagaimana respon terhadap data yang masuk dengan kondisi tombol START sudah ditekan.

Gambar

Gambar 3.1. Gambaran keseluruhan sistem.
Gambar 3.2. Komponen penyusun Modul Pencatat Kehadiran.
Gambar 3.4. Skematik rangkaian pelengkap IC MAX232.
Gambar 3.5. Koneksi barcode scanner dengan mikrokontroler.
+7

Referensi

Dokumen terkait

Oleh karena itu penelitian ini bertujuan untuk mendapatkan nilai kebisingan lalu lintas kendaraan yang terjadi pada ruas jalan tol Ir.. Sutami Makassar dan

Surat berharga yang mempunyai sifat kebendaan yaitu konosemen karena konosemen diterbitkan atas nama, atas pengganti atau atas pembawa dan konosemen tidak hanya

Persepsi Kualitas, Persepsi Nilai dan Niat Pembelian secara bersama tidak memberikan pengaruh yang signifikan terhadap peningkatan atau penurunan Harga telepon

Besarnya cepat rambat gelombang seismik dalam lapisan batuan dipengaruhi oleh elastisitas dan densitas batuan, sehingga dengan mengetahui cepat rambat gelombang seismik

Untuk teman-temanku Analis Kesehatan Fakultas Ilmu Kesehatan Universitas Muhammadiyah Surabaya angkatan 2014 selalu memberikan semangat serta saran dan kritik sehingga

D : begini dek, di tubuh adek itu terdapat dua sel darah, ada sel darah merah dan sel darah putih, lah leukimia itu kelebihan sel darah yang putih dan kekurangan sel darah

tunnevuorovaikuttajatyypin kuvauksella. Nämä tyypit kuvaavat tässä tutkimuksessa esiintyneitä lasten tyypillisiä tapoja olla tunnevuorovaikutuksessa ja voivat antaa viitteitä

Berdasarkan hasil penelitian disimpul- kan bahwa dukungan keluarga terhadap konsumsi tablet tambah darah pada remaja puteri di SMA PGRI 4 Banjarmasin terdistribusi