35
PERANCANGAN dan REALISASI
Pada bab ini akan dibahas mengenai perancangan dan realisasi alat secara keseluruhan dan terbagi dalam beberapa sub bab sesuai dengan modul-modul yang terkait dalam realisasi alat. Perancangan yang dimaksud adalah perancangan dalam bentuk perangkat keras dan perangkat lunak. Secara lengkap, alat yang dirancang dan direalisasikan dapat dilihat dalam blok diagram pada Gambar 3.1.
Alat yang direalisasikan terdiri dari dua bagian besar yaitu ear tag RFID dan
Portable Control Box. Ear tag RFID berupa RFID tag dengan chip Mifare 1k S50. Portable Control Box sendiri merupakan sebuah kotak portable yang berfungsi untuk
mengatur semua proses rekam perkembangan data ternak sapi.
Seluruh kerja alat diatur oleh mikrokontroler mulai dari operasi baca tulis terhadap ear tag RFID melalui RFID reader, menampilkan menu melalui LCD sebagai antarmuka dengan pengguna, koneksi dengan keypad sebagai masukan, dan juga berkomunikasi dengan RTC dan MMC.
3.1. Perancangan Perangkat Keras
3.1.1. Ear Tag RFID
Ear tag RFID merupakan salah jenis RFID tag yang berbentuk anting-anting. Ear tag RFID ini menggunakan chip Mifare 1k S50 yang dapat dibaca dan ditulis dengan
memori sebesar 1 kilobyte. Ear tag RFID ini akan difungsikan sebagai memori penyimpan data ternak sapi yang akan dipasangkan pada telinga ternak sapi.
Dengan besar memori 1 kilobyte, chip ini sudah memenuhi kebutuhan untuk menyimpan data ternak. Tersedia 47 blok data yang dapat digunakan dan kebutuhan blok data hanya sekitar 20 blok data saja. Tabel 3.1 menunjukkan pembagian alokasi memori ear tag RFID untuk penyimpanan data ternak sapi.
Tabel 3.1. Pembagian Alokasi Penyimpanan Data Pada Memori Ear Tag RFID
Nomor Blok Data Nomor Blok Data
4 Nama peternak 14 Tanggal IB dan hasil
5 Nama sapi 16 Tanggal IB dan hasil
6 Nomor telinga 17 Tanggal IB dan hasil
8 Tanggal lahir 18 Tanggal IB dan hasil
9 Jenis kelamin 20 Tanggal IB dan hasil
10 Berat lahir 21 Tanggal IB dan hasil
12 Induk jantan 22 Tanggal IB dan hasil
3.1.2. Modul Mikrokontroler
Modul mikrokontroler menggunakan mikrokontroler ARM CORTEX-M0 LPC1114. Pemilihan mikrokontroler ARM CORTEX-M0 LPC1114 pada perancangan skripsi ini didasarkan pada:
1. Harga yang murah untuk sebuah mikrokontroler. Perbandingan harga dengan mikrokontroler yang ada di pasaran.
2. Memiliki ukuran yang tergolong kecil. Mendukung untuk perancangan alat yang dibuat portable, cocok dengan dimensi alat yang dibuat.
3. Memiliki fitur yang sesuai kebutuhan. Fitur-fitur yang sudah dijelaskan pada bab 2.
4. Memiliki kecepatan tinggi karena dapat berjalan atau bekerja sampai frekuensi 50Mhz.
5. Memiliki memori program sebesar 32 kiloByte. Ruang memori yang cukup besar untuk menyimpan perangkat lunak.
Untuk perancangan perangkat kerasnya, Gambar 3.2 menunjukkan skematik dari modul mikrokontroler.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 9-30 Header 22 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 4-31 Header 22 2-11 1-0 1-1 1-2 3-0 3-1 2-3 1-3 1-4 GND 1-11 3-2 3.3V 1-5 1-6/RXD 1-7/TXD 3-3 2-6 2-0 0-0/RESET 0-1/CLKOUT 2-4 3-4 1-9 0-5/SDA RTC 0-4/SCL RTC 0-3 2-1 2-8 2-7 0-2/SSEL0 1-8 1-10 0-10/SCK0 0-9/MOSI0/D1 0-8/MISO0/D0 2-2 2-10 2-9 0-7 0-6 3-5 2-5 0-11 1 2 3 4 5 6 7 8 KEYPAD Header 8 1 2 3 4 5 6 7 8 MMC Header 8 5V GND 3.3V 0-1/CLKOUT 0-0/RESET 3.3V 0-9/MOSI0/D1 0-8/MISO0/D0 0-10/SCK0 0-2/SSEL0 2-4 3-4 2-10 2-9 0-7 0-6 3-5 2-5 1 2 3 4 5 6 7 8 9 10 11 12 LCD Header 12 1K RLCD Res1 2-11 1-0 0-11 5V 1-1 1-2 3-0 3-1 1 2 3 4 5 6 7 8 3.3v Header 4X2 1 2 3 4 5 6 7 8 5v Header 4X2 3.3V 5V 1K RBLIGHT Res1 1 2 3 4 5 6 7 8 ground Header 4X2 1 2 3 4 5 6 down Header 6 1 2 3 4 5 6 7 8 9 10 11 12 13 port Header 13 2-3 1-3 1-4 1-11 3-2 1-5 1-6/ R X D 1 -7 /T X D 3-3 2-6 2-0 0-0/RESET 0-1/CLKOUT 1 2 3 6 5 4 swithing SW DIP-3 1 2 3 4 rfidddd Header 4 rxdown txdown 3.3V rx rfi d rtx rfi d rx rf id rt x rf id 1-6/RXD 1-7/TXD rx do w n tx d o w n
Gambar 3.2. Skematik Modul Mikrokontroler
Modul mikrokontroler ini sebagai modul utama. Semua koneksi, komunikasi, dan kerja alat diatur melalui modul ini. Perancangan koneksi pin keluaran dari mikrokontroler adalah sebagai berikut (Gambar 3.2):
1. Pin 1.6/RXD dan pin 1.7/TXD terhubung dengan pin-pin pada modul RFID
reader. Pin ini akan dipararel dengan programming downloader. Pin ini
2. Pin 2.10, 2.9, 0.7, 0.6, 3.5, 2.5, 2.4, 3.4 dikonfigurasikan sebagai inputan untuk mikrokontroler dan akan dikoneksikan dengan keypad. Koneksi ini membutuhkan 8 pin.
3. Pin 2.11, 0.11, 1.0, 1.1, 1.2, 3.0, 3.1 dikonfigurasikan sebagai output untuk mikrokontroler dan akan dikoneksikan dengan LCD. Koneksi dengan LCD ini membutuhkan 12 pin termasuk untuk catu daya dan ground.
4. Pin 0.5/SDA RTC dan pin 0.4/SCL RTC dikonfigurasikan untuk komunikasi I2C dengan RTC. Koneksi in membutuhkan 2 pin komunikasi.
5. Pin 0.8/MISO/D0, 0.10/SCK0, 0.9/MOSI/D1, 0.2/SSEL0 dikonfigurasikan untuk komunikasi SPI dengan MMC. Koneksi dengan MMC membutuhkan 7 pin termasuk catu daya dan ground.
3.1.2.1 Regulator Tegangan
Pada modul mikrokontroler juga terdapat rangkaian catu daya. Catu daya yang dirancang menghasilkan tegangan 3,3 V dan 5 V. Sumber tegangan berasal dari baterai dengan besar 9 V. Gambar 3.3 merupakan gambar skematik dari untai catu daya.
1 2 3 4 5 6 7 8 SUMBER Header 4X2 IN 3 1 OUT 2 ADJ U1 LM317T 9-15V 100pF C2 Cap 100pF C1 Cap IN 1 3 OUT 2 GND U2 L7805CP 9-15V 100pF C3 Cap 100pF C4 Cap 5V 3.3V 330 R1 Res1 560 R2 Res1 1K rled Res2 leddd Diode 1N914
Catu daya dirancang menghasilkan tegangan 3,3 V karena ARM CORTEX-M0 LPC1114 dan modul RFID reader CR-028 membutuhkan catu daya sebesar 3,3 V.
Gambar 3.4. Untai Adjustable Regulator LM317 [14, h.5]
Dikarenakan LM317 merupakan regulator tegangan 1,2 V-25 V, maka untuk mendapatkan tegangan keluaran (Vout) sebesar 3,3 V digunakan persamaan 3.1 untuk mendapatkan perbandingan nilai resistor R1 dan R2 sesuai Gambar 3.4.
+
=
1 21
R
R
V
V
out ref (3.1)Dengan nilai Vref sebesar 1,25 V dan hasil perhitungan didapat,
+ = 1 2 1 25 , 1 3 , 3 R R (3.2) 1 2 25 , 1 25 , 1 3 , 3 R R + = (3.3) 1 2 . 25 , 1 25 , 1 3 , 3 R R = − (3.4) 1 2 25 , 1 05 , 2 R R = (3.5)
Perbandingan nilai R2 dibanding R1 adalah 2,05:1,25. Dalam realisasi alat digunakan nilai resistor R2 = 560Ω dan R1 = 330Ω. Apabila dikembalikan lagi ke dalam persamaan 3.1 didapat,
+
=
1 21
R
R
V
V
out ref (3.6)
+
=
330
560
1
25
,
1
outV
(3.7)(
1
1
,
7
)
25
,
1
+
=
outV
(3.8)( )
2
,
7
25
,
1
=
outV
(3.9)V
V
out=
3
,
375
(3.10)Dari hasil perhitungan didapatkan tegangan keluaran sebesar 3,375 V.
Untuk mendapatkan tegangan 5 V digunakan regulator tegangan 7805. Untai regulator 5 V yang menggunakan regulator tegangan 7805 ditunjukan Gambar 3.5.
Gambar 3.5. Untai Regulator 7805 [5, h.21]
3.1.3. RFID Reader
Modul RFID reader yang digunakan adalah CR-028 buatan China. Modul ini merupakan modul yang tergolong murah dan berdaya rendah. Penggunaan dari modul ini juga mudah. Untuk berkomunikasi dengan modul mikrokontroler sebagai modul
utama, modul RFID reader ini menggunakan protokol komunikasi UART. Secara keseluruhan ada 4 jalur yang terhubung dengan modul mikrokontroler, 2 jalur data, 1 jalur catu daya, dan 1 jalur ground. Untuk jalur data, koneksi antara kedua modul dapat dilihat pada Tabel 3.2.
Tabel 3.2. Koneksi Antar Pin Modul Mikrokontroler dan Modul RFID
Reader
Pin RFID Reader Pin Mikrokontroler
TXD 1.6/RXD
RXD 1.7/TXD
Untuk catu daya, modul ini membutuhkan tegangan sebesar 3,3 V yang didapat dari regulator tegangan 3,3V yang ada pada modul mikrokontroler.
3.1.4. Liquid Cyrstal Display (LCD)
Modul LCD yang digunakan adalah LCD karakter 20 kolom x 4 baris. LCD ini memiliki pin keluaran sebanyak 16 pin, tetapi pada perancangan ini hanya 12 pin yang digunakan. 12 pin yang terkoneksi dengan modul mikrokontroler sudah termasuk dengan koneksi tegangan 5V (pin 2), ground (pin 1), dan LED backlight (pin 15 dan 16). 7 pin yang langsung terkoneksi dengan pin-pin pada mikrokontroler dapat dilihat pada Tabel 3.3.
Tabel 3.3. Konfigurasi Pin Modul LCD dengan Pin Modul Mikrokontroler
Pin LCD Pin Mikrokontroler
RS PIO 2-11 R/W PIO 0-11 E PIO 1-0 Data 4 PIO 1-1 Data 5 PIO 1-2 Data 6 PIO 3-0 Data 7 PIO 3-1
Pin RS adalah pin Register Select, utnuk memilih jenis data yang dikirm ke LCD. Ada 2 kondisi:
• RS=0, data yang akan dikirim adalah perintah untuk pengaturan kerja LCD.
• RS=1, data yang dikirim adalah kode ASCII yang akan ditampilkan pada LCD atau yang dikirim oleh modul mikrokontroler.
Pin E merupakan pin isyarat sinkronisasi, saat nilai pin E berubah dari ‘1’ menjadi ‘0’, maka data pada pin Data 4–data 7 diterima oleh LCD. Sedangkan untuk mengambil data, pin E harus berubah menjadi ‘1’ dan data harus diambil sebelum pin E di-nol-kan lagi.
Tabel 3.4. Register Selection LCD [9, h.7]
Tabel 3.4 menjelaskan hubungan antara pin RS, R/W dan operasi yang dikerjaan.
• Saat RS = 0 dan R/W =0, LCD mengerjakan operasi internal.
• Saat RS = 0 dan R/W =1, maka D7 akan menunjukkan Busy Flag atau jika D7 = 1, maka LCD sedang menjalankan operasi internal sehingga pada kondisi ini tidak dapat melakukan perintah dari luar.
• Saat RS = 1 dan R/W =0, dikerjakan proses penulisan data ke DDRAM atau CGRAM.
• Saat RS = 1 dan R/W =1, dilakukan proses pembacaan dari DDRAM atau CGRAM.
3.1.5. Keypad
Modul keypad yang digunakan adalah modul keypad jenis membran dengan ukuran 4 kolom x 4 baris. Bentuk fisik dari keypad 4x4 ditunjukkan oleh Gambar 3.6.
Gambar 3.6. Keypad 4x4
Perancangan untuk modul ini menggunakan scanning keypad. Scanning dilakukan dengan mengkonfigurasikan pin-pin dari keypad menjadi masukan dan keluaran untuk mikrokontroler. Ditentukan pin-pin yang dikonfigurasikan sebagai keluaran, dihubungkan dengan pin yang terhubung dengan 4 baris pada keypad dan pin-pin yang dikonfigurasikan sebagai masukan dihubungkan dengan pin yang terhubung dengan 4 kolom pada keypad. Konfigurasi koneksi antar pin ditunjukkan pada Tabel 3.5.
Tabel 3.5. Konfigurasi Pin Keypad
Pin Keypad (tampak depan) Pin Mikrokontroler Fungsi Pin Mikrokontroler
Pin 1 PIO 2-10 output
Pin 2 PIO 2-9 output
Pin 3 PIO 0-7 output
Pin 4 PIO 0-6 output
Pin 5 PIO 3-5 input
Pin 6 PIO 2-5 input
Pin 7 PIO 2-4 input
3.1.6. Real-Time Clock (RTC)
Perancangan untuk modul Real-Time Clock (RTC) menggunakan IC RTC DS1307 (Gambar 3.8).
Gambar 3.7. Pin Out DS 1307 [3, h.1]
1 2 Y1 XTAL BT1 Battery 0-4/SCL RTC 0-5/SDA RTC 5V 5V 5V 1K R4 Res1 1K R5 Res1 X1 1 X2 2 VBAT 3 GND 4 SDA 5 SCL 6 SQW/OUT 7 VCC 8 U3 DS1307 (b)
Gambar 3.8. (a) Untai Modul RTC [3, h.2]; (b) Skematik Untai Modul RTC.
Pin X1 dan X2 (Gambar 3.9a) adalah pin yang terhubung dengan Kristal
eksternal. Kristal ini merupakan pembangkit sinyal untuk mendukung kerja DS 1307.
Nilai Kristal yang digunakan adalah 32,768 kHz.
Pin Vbat adalah pin yang terhubung dengan baterai yang berfungsi sebagai catu daya cadangan apabila catu daya utama IC DS1307 (VCC, pin 8) mati. Ketika catu daya mati, baterai ini akan tetap menjaga IC DS1307 bekerja.
Pin SDA dan SCL ini adalah pin yang dihubungkan dengan mikrokontroler sebagai jalur data dan jalur clock. Komunikasi antara 2 IC ini menggunakan 2 kabel (2
wire biderictional ). Untuk pin SDA DS1307 terhubung dengan pin PIO 0-5/SDA dan
3.1.7. Multi Media Card (MMC)
Gambar 3.9. Pin Out MMC
Komunikasi yang digunakan antara modul MMC dan mikrokontroler adalah SPI. MMC dan mikrokontroler dihubungkan dengan 4 kabel dan konfigurasi pin-pin yang berhubungan dapat dilihat pada Tabel 3.6.
Tabel 3.6. Konfigurasi Koneksi Pin MMC dan Mikrokontroler
Pin Keypad (tampak depan) Pin Mikrokontroler
Pin 1 CS PIO 0-2/SSEL0
Pin 2 MOSI PIO 0-9/MOSI0
Pin 5 SCK PIO 0-10/SCK0
Pin 7 MISO PIO 0-8/MISO0
Modul ini membutuhkan tegangan 3,3 V agar dapat bekerja dengan baik. Tegangan 3,3 V didapat dari regulator 3,3V pada modul mikrokontroler.
3.1 Perancangan Perangkat Lunak
3.2.1. Prosedur Baca dan Tulis
Perancangan perangkat lunak diutamakan pada perancangan proses baca tulis terhadap ear tag RFID. untuk dapat melakukan baca tulis pada ear tag RFID, ada beberapa prosedur yang harus dijalankan. Prosedur ini tergantung dengan jenis modul RFID reader yang akan melakukan proses baca tulis. CR-028 sebagai modul RFID
reader yang digunakan dalam perancangan ini, memiliki beberapa prosedur sebelum
melakukan proses baca tulis ear tag RFID seperti yang sudah dijelaskan pada Bab 2. Untuk dapat melakukan proses baca tulis, modul RFID reader akan dikontrol kerjanya oleh mikrokontroler. Ada beberapa function code untuk mengatur kerja dari RFID reader (Tabel. 3.7)
Tabel 3.7. Function Code
Bentuk Data (2 byte dengan high byte terlebih dahulu) Keterangan
01 01 Set baud rate
01 04 Baca device
02 01 Request tipe ear tag RFID
02 02 Mifare anti collision
02 03 Pilih ear tag RFID
02 07 Mifare autentikasi 2
02 08 Mifare read
02 09 Mifare write
Pertama yang harus dilakukan adalah melakukan koneksi agar dapat berkomunikasi. Dalam Pengaturan komunikasi salah satunya adalah pengaturan baud
rate. Baud rate yang digunakan adalah 19200 bps.
Tabel 3.8. Format Data Set Baud Rate
HEAD LENGTH NODE ID FUNC. CODE DATA XOR
AA BB 06 00 00 00 01 01 03 XOR
Kolom DATA berisi data 03 karena kode untuk baud rate 19200 pada CR-028 adalah 03. Setelah data baud rate dikirim, maka akan mendapat balasan dengan format data sperti pada Tabel 3.9.
Tabel 3.9. Format Data Respon Set Baud Rate
HEAD LENGTH NODE ID FUNC. CODE STATUS DATA XOR
Dalam format data balasan terdapat byte STATUS. STATUS ini menunjukan keberhasilan dalam pengirim data dan pengiriman perintah. Apabila bernilai ‘00’ proses pengiriman data dan perintah berhasil dan apabila bernilai selain ‘00’, berarti gagal.
Setelah proses koneksi antara mikrokontroler dan modul RFID reader berhasil, maka dapat dilakukan proses selanjutnya seperti proses baca tulis terhadap ear tag RFID. Proses baca dan tulis dari ear tag RFID dapat dijelaskan melalui diagram alir pada Gambar 3.10 dan pseudocode berikut.
Pseudocode untuk diagram alir pada Gambar 3.10 adalah :
1. Kirim fungsi untuk memeriksa tag.
2. Cek status balasan apakah berhasil mengirim fungsi untuk memeriksa tag atau tidak.
3. Jika gagal, maka akan kembali mengulang mengirim fungsi memeriksa tag. Apabila berhasil, maka dilanjutkan mengirim fungsi request serial number atau ID.
4. Kirim fungsi untuk request serial number.
5. Cek status balasan apakah berhasil mengirim fungsi untuk request serial number atau tidak.
6. Jika gagal, maka akan kembali mengulang mengirim fungsi memeriksa tag. Apabila berhasil, maka dilanjutkan mengirim fungsi memilih tag.
7. Kirim fungsi untuk memilih tag.
8. Cek status balasan apakah berhasil mengirim fungsi untuk memilih tag atau tidak.
9. Jika gagal, maka akan kembali mengulang mengirim fungsi memeriksa tag. Apabila berhasil, maka dilanjutkan mengirim fungsi autentikasi 2.
10.Kirim fungsi untuk autentikasi 2.
11.Cek status balasan apakah berhasil mengirim fungsi untuk autentikasi 2 atau tidak.
12.Jika gagal, maka akan kembali mengulang mengirim fungsi memeriksa tag. Apabila berhasil, maka dilanjutkan proses baca tulis.
…
{
…
Kirim fungsi memeriksa tag;
if (berhasil) {
Kirim fungsi request serial number; If (berhasil)
{
Kirim fungsi memilih tag; If (berhasil)
{
Kirim fungsi auntentikasi 2; If (berhasil)
{
Proses baca atau tulis; If (berhasil) { Selesai; } else {
Ulangi kirim fungsi memeriksa tag; }
else {
Ulangi kirim fungsi memeriksa tag; }
else {
Ulangi kirim fungsi memeriksa tag; }
else {
Ulangi fungsi memeriksa tag; }
else {
Ulangi fungsi memeriksa tag; }
…
} …
3.2.1.1 Memeriksa Tipe Ear Tag RFID
Proses baca tulis diawali dengan memeriksa tipe ear tag RFID (Gambar 3.10). Untuk mendapatkan tipe ear tag RFID, RFID reader mengirimkan data (Tabel 3.10) melalui serial seperti pada pseudocode diatas.
Tabel 3.10. Format Data Periksa Ear Tag RFID
HEAD LENGTH NODE ID FUNC. CODE DATA XOR
Format data balasannya (Tabel 3.11).
Tabel 3.11. Format Data Respon Periksa Ear Tag RFID
HEAD LENGTH NODE ID FUNC. CODE STATUS DATA XOR
AA BB 08 00 00 00 01 02 00 04 00 XOR
Dalam format data balasan isi dari DATA adalah 04 00, ini menunjukan bahwa tipe ear tag RFID yang sedang dideteksi adalah Mifare 1k (S50). Pada dalam kolom STATUS bernilai ‘0’ menunjukkan bahwa proses pengiriman data dan perintah berhasil.
3.2.1.2 Request Serial Number atau ID
Setelah melakukan pemeriksaan tipe ear tag RFID, langkah selanjutnya melakukan permintaan serial number dari ear tag RFID dengan format data (Tabel 3.12):
Tabel 3.12. Format Data Mifare Anti Collision
HEAD LENGTH NODE ID FUNC. CODE DATA XOR
AA BB 05 00 00 00 02 02 - XOR
Balasannya akan berisi DATA yang menunjukkan serial number atau ID dari ear
ear tag RFID RFID (Tabel 3.13).
Tabel 3.13. Format Data Respon Mifare Anti Collision
HEAD LENGTH NODE ID FUNC. CODE STATUS DATA XOR
AA BB 0A 00 00 00 02 02 00 46 FF A6
B8 XOR
melihat dari Tabel 3.13 didapat hasil Request Serial Number adalah 46 FF A6 B8. Sehingga ear tag RFID yang dibaca memiliki ID 46 FF A6 B8.
3.2.1.3 Memilih Ear tag RFID
Proses selanjutnya adalah memilih ear tag RFID yang akan dibaca atau ditulis. Sebagai contoh ear tag RFID yang akan ditulis memiliki serial number 46 FF A6 B8 (Tabel 3.14) dan balasannya dapat dilihat pada Tabel 3.15.
Tabel 3.14. Format Data Memilih Ear tag RFID
HEAD LENGTH NODE ID FUNC. CODE DATA XOR
AA BB 09 00 00 00 03 02 46 FF A6 B8 XOR
Tabel 3.15. Format Data Respon Memilih Ear tag RFID
HEAD LENGTH NODE ID FUNC. CODE STATUS DATA XOR
AA BB 07 00 00 00 03 02 00 08 XOR
3.2.1.4 Mifare Autentikasi 2
Prosedur terakhir sebelum melakukan proses baca dan tulis adalah Mifare
Autentikasi 2. Proses ini berfungsi untuk pengenalan key pada ear tag RFID.
Tabel 3.16. Format Data Mifare Autentikasi 2
HEAD LENGTH NODE ID FUNC. CODE DATA XOR
AA BB 0D 00 00 00 07 02 60 04 FF FF FF FF FF FF XOR
Sebagai contoh digunakan key A dengan kode data 60 dan akan melakukan proses baca atau tulis pada block 4 dengan kode data 04 (Tabel 3.16). Apabila berhasil maka akan mendapat balasan seperti pada Tabel 3.17.
Tabel 3.17. Format Data Respon Mifare Autentikasi 2
HEAD LENGTH NODE ID FUNC. CODE STATUS DATA XOR
3.2.1.5 Baca Ear tag RFID
Tahap akhir, apabila akan melakukan pembacaan pada ear tag RFID maka format data yang dikirimkan terlihat pada Tabel 3.18 dan apabila berhasil akan mendapat balasan seprti Tabel 3.19 dengan data yang ditunjukkan pada kolom DATA.
Tabel 3.18. Format Data mifare Read
HEAD LENGTH NODE ID FUNC. CODE DATA XOR
AA BB 05 00 00 00 08 02 04 XOR
Tabel 3.19. Format Data Respon Mifare Read
HEAD LENGTH NODE ID FUNC. CODE STATUS DATA XOR
AA BB 16 00 00 00 08 02 00 data XOR
3.2.1.6 Tulis Ear tag RFID
Jika akan melakukan penulisan data format datanya seperti pada Tabel 3.20 dengan isi dari kolom DATA adalah data yang akan dikirim ke dalam ear tag RFID, dan apabila proses tulis berhasil maka akan mendapat balasan yang menunjukkan proses berhasil (Tabel 3.21).
Tabel 3.20. Format Data Mifare Write
HEAD LENGTH NODE ID FUNC. CODE DATA XOR
AA BB 16 00 00 00 09 02 data XOR
Tabel 3.21. Format Data Respon Mifare Write
HEAD LENGTH NODE ID FUNC. CODE STATUS DATA XOR
3.2.2. Antarmuka Visual
Perancangan antarmuka dengan pengguna menggunakan tampilan berupa menu pada halaman awal. Pada menu awal terdapat 4 menu yaitu:
1. Terhubung ear tag RFID. 2. Inseminasi Buatan
3. Baca data dari MMC 4. Baca data logger.
Diagram alir dari tampilan menu ditunjukkan Gambar 3.11.
mulai
Tampilkan menu
Pilih 1? Ada tag?
Baca,tampilkan, dan edit data ternak dari tag
Pilih 2? Pilih 3? Menu IB Tampilkan data ternak dari MMC ya ya ya ya tidak
Pilih 4? Tampilkan data
logger ya Tekan kembali? Tekan kembali? Tekan kembali? Tekan kembali? tidak tidak tidak ya ya ya ya
Penjelasan diagram alir pada gambar 3.11 akan dibahas dalam sub bab berikut.
3.2.2.1. Baca, Tampilkan, dan Edit Data Ternak dari Ear Tag RFID.
Proses baca, tampilkan, dan edit data ternak dapat dijelaskan melalui pseudocode berikut.
…
case '1':
while (ambil masukan keypad)
;
tampilkan "dekatkan Ear Tag";
while (1)
{
if (ada tag)
{
Tulis data logger; Baca ear tag RFID; Masuk menu edit; clear();
break;
}
if (ada masukan keypad == 'C') break;
} break;
…
Setelah pemilihan menu pertama, maka akan diminta untuk mendekatkan ear tag RFID. setelah terdeteksi, maka akan melakukan pencatatan ke data logger dilanjutkan menampilkan data hasil pembacaan dari ear tag RFID. Proses selanjutnya adalah edit data.
3.2.2.2. Proses Penambahan Data IB
Menu kedua adalah menu untuk penambahan data mengenai kegiatan IB. menu IB ini akan dijelaskan melalui pseudocode berikut.
…
void menu_ib()
{
while (tunggu masukan keypad)
;
tampilkan "Ins. Buatan"); tampilkan "1.Penyuntikan"; tampilkan "2.Hamil"; tampilkan "3.Gagal"; while (1) { key = get_keypad(); … if (masukan keypad == 'C') return;
if(masukan keypad selain 1-3) tampilkan "Dekatkan Ear Tag";
while (1) { if (masukan keypad == 'C') return; if (ada kartu) { … switch (key) { case '1':
tulis suntik ke mmc dan tag; break;
case '2':
tulis hamil ke mmc dan tag; break;
case '3':
tulis gagal ke mmc dan tag; break; case 'C': return; } … } … } … } … } …