BAB 3 PERANCANGAN SISTEM 3.1 Rancangan Perangkat Keras Sistem Penuntun Satpam Perancangan sistem penuntun satpam bagi keamanan gedung ini dapat diilustrasikan berdasarkan blok diagram sebagai berikut: Gambar 3.1 Blok Diagram Sistem Penuntun Satpam Perancangan sistem penuntun satpam bagi keamanan gedung ini meliputi beberapa modul perangkat keras dan perancangan piranti lunak. Modul perangkat keras, antara lain : 24
25 Modul sistem minimum yang terdiri dari AVR ATtiny2313 sebagai kontrol utama sistem minimum, 24C512 untuk menyimpan data, dan DS1307 sebagai penyedia waktu. Modul RFID receiver ID10, yang berfungsi untuk menerima data dari sinyal RF tranceiver (tag), Kemudian data tersebut disimpan didalam 24C512 melalui ATtiny2313. Komputer sebagai alat antar muka kepada administrator, menerima data dari sistem minimum, serta pengolahan data validasi pada database. Perancangan piranti lunak yang digunakan antara lain: Program pada AVR sebagai pengendali inti sistem minimum dan pengaturan komunikasi data dengan komputer dengan serial RS 232. Visual Basic sebagai penghubung antara sistem minimum dengan database, menerima serta mengirimkan perintah pada sistem minimum, serta tampilan untuk user. Pembuatan database dengan menggunakan Microsoft access. 3.1.1 Modul Utama Sistem Minimum Modul utama sistem minimum yang berfungsi sebagai alat pengendali utama dari perangkat keras. Data yang diterima dari RFID receiver akan disimpan di EEPROM eksternal lalu sesaat setelah itu waktu diambil dari RTC dan disimpan juga di EEPROM. Kemudian data-data tersebut ditransfer ke PC melalu RS-232 lalu dicocokkan dengan database yang ada. Sistem ini menggunakan ATtiny2313 sebagai pengontrol, 24C512
26 untuk menyimpan data, DS1307 untuk penyedia waktu dan MAX232 sebagai sarana transfer data dari modul utama sistem minimum ke PC. Gambar 3.2 Rangkaian modul utama sistem minimum Sistem mulai bekerja pada saat RF reader dibangkitkan oleh RF transmitter yang mendekat. RF reader ID-10 mengirimkan data secara serial. Data yang dikirim dari RFID reader diterima oleh serial port yang dimiliki ATtiny2313. Fungsi dari ATtiny2313 adalah menerima data dan menyimpannya di 24C512, lalu mengambil waktu dari DS1307 dan disimpan juga di 24C512. EEPROM 24C512 mempunyai kapasitas sebesar 512 Kb sehingga dapat menampung data sebanyak 2600 set, dimana satu set datanya adalah sebesar 25 Byte.
27 Sistem akan mulai mentransfer data dari modul utama ke PC, atau menghapus data pada EEPROM atau menset waktu pada DS1307, ketika menerima perintah dari PC melalui MAX232. 3.1.2 Modul RFID Receiver ID10 RFID receiver yang digunakan dapat membaca data dari RFID tranceiver tipe EM (4x02) dan SID (unique). Tipe RFID ini tidak terlalu banyak membutuhkan komponen eksternal dibandingkan dengan tipe RFID yang lain, dan juga tidak membutuhkan antena eksternal, dan hal ini menyebabkan maksimum jarak pembacaan 7-8cm Daya tegangan yang dibutuhkan sebesar 5 Volt. Format output data yang digunakan adalah tipe (ASCII). Gambar 3.3 Rangkaian Modul RFID receceiver Format data yang digunakan adalah tipe data ASCII., satu karakter dalam ASCII direpresentasikan dalam 8 bit. Data yang disimpan pada setiap kartu sebesar 16 byte. Pada setiap pegiriman data dimulai dengan start bit dan diakhiri dengan stop bit. Gambar 3.4 Output format ASCII
28 3.2 Perancangan Piranti Lunak Perancangan piranti lunak ini terbagi atas piranti lunak pada AVR dan piranti lunak pada PC. Pada piranti lunak AVR menggunakan bahasa pemograman C, sementara pada piranti lunak pada PC menggunakan bahasa pemograman Visual Basic untuk tampilannya dan Microsoft Access untuk pembuatan databasenya. 3.2.1 Piranti lunak pada Modul utama
29 Gambar 3.5 Diagram alir program AVR Pada diagram alir mikrokontroler, pertama sistem menginisialisasi apakah sistem sudah siap menerima data. Lalu jika sudah siap, maka sistem akan menunggu data masuk, jika ada data maka akan dilihat apakah data tersebut adalah data RFID atau bukan, jika iya maka data tersebut akan disimpan di EEPROM, kemudian mengambil waktu dari RTC dan menyimpannya di EEPROM. Jika bukan, akan dillihat apakah data yang masuk merupakan perintah dari PC untuk membaca memori di EEPROM, jika ya maka mikrokontroler akan mengakses EEPROM lalu membaca isinya dan mengirim
30 datanya ke PC, sementara itu jika bukan maka akan dilihat apakah data yang masuk merupakan perintah dari PC untuk menghapus memori, jika ya maka isi dari EEPROM akan dihapus semuanya, sementara jika bukan maka akan dilihat apakah data tersebut adalah perintah dari PC untuk mensikronisasikan waktu PC dengan waktu RTC, jika ya maka waktu PC akan diambil dan waktu pada RTC akan diubah sesuai dengan waktu PC tersebut, jika bukan maka kembali ke menunggu data masuk. 3.2.2 Piranti lunak Visual Basic pada PC Gambar 3.6 Diagram alir program Visual Basic
31 Program ini untuk mengambil data dari Sistem minimum, menghapus data pada Sistem minimum dan Mengsinkronisasi waktu pada Sistem minimum dengan waktu pada PC. Ketika sistem minimum dihubungkan dengan PC maka dibutuhkan waktu agar koneksi komunikasi serial tersambung, setelah tersambung PC akan menunggu perintah yang diinginkan dari Administrator, terdapat tiga pilihan, yaitu Membaca memori pada Sistem minimum, menghapus Memori pada Sistem minimum, dan mengsinkronisasikan waktu pada Sistem minimum dengan waktu pada PC. Jika yang dipilih adalah membaca memori, makan interup baca memori dikirim ke sistem minimum, maka sistem minimum akan mengirim semua data pada EEPROM ke PC, setelah PC menerima data tersebut maka data tersebut akan dibandingkan dengan data yang ada pada database, jika cocok maka IDnya akan ditampilkan, sementara jika tidak maka akan muncul message unknown. Jika yang dipilih adalah perintah menghapus memori, maka interup menghapus memori yang dikirim, dan Sistem minimum akan menghapus semua data yang ada pada EEPROM. Sementara jika yang dipilih adalah set time, maka PC akan mengirim interup mengsinkronisasi waktu, lalu PC mengirim waktunya ke Sistem minimum. 3.2.3 Perancangan database Pada penyimpanan database, program yang digunakan adalah program Microsoft Access, sedangkan tampilan untuk user digunakan bahasa pemrograman Visual Basic. Berikut tampilan table databasenya :
32 Gambar 3.7 Tampilan database pada Visual Basic Keterangan: o Add, untuk menambah No ID kartu pada data base. o Edit, digunakan untuk mengedit atau meng update data yang telah ada. o Delete, digunakan untuk menghapus data yang ada pada data base o Close, untuk mengakhiri program o Short, digunakan untuk melihat semua data yang ada pada data base, berdasarkan susunan yang diinginkan. Tabel 3.1 Tabel ID pada database o Filter, digunakan untuk menfilter data. o Move, digunakan untuk mengubah susunan data pada data base o Find, digunakan sebagai mencari data