tugas akhir sistem telemetri kualitas air kolam … filetugas akhir sistem telemetri kualitas air...
TRANSCRIPT
TUGAS AKHIR
SISTEM TELEMETRI KUALITAS AIR KOLAM
IKAN DENGAN RFM12-433S SEBAGAI CENTRAL
UNIT
Diajukan untuk memenuhi salah satu syarat
Memperoleh gelar Sarjana Teknik pada
Program Studi Teknik Elektro
Jurusan Teknik Elektro
Fakultas Sains dan Teknologi Universitas Sanata Dharma
disusun oleh:
CHRISTIN KARURU
NIM : 115114039
PROGRAM STUDI TEKNIK ELEKTRO
JURUSAN TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2015
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ii
FINAL PROJECT
THE QUALITY OF WATER FISH POOL
TELEMETRY SYSTEM WITH RFM12-433S AS
CENTRAL UNIT
In partial fulfillment of requirements
For the degree of Sarjana Teknik
In Electrical Engineering Study Program
By:
CHRISTIN KARURU
NIM : 115114039
ELECTRICAL ENGINERING STUDY PROGRAM
ELECTRICAL ENGINERING DEPARTMENT
FACULTY OF SCIENCE AND TECHNOLOGI FACULTY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2015
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iii
PERNYATAAN KEASLIAN KARYA
Saya menyatakan dengan sesungguhnya bahwa tugas akhir ini tidak memuat karya
atau bagian karya orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar
pustaka sebagaimana layaknya karya ilmiah.
Yogyakarta, 01 Desember 2015
Christin Karuru
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
iv
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
v
PERNYATAAN KEASLIAN KARYA
Saya menyatakan dengan sesungguhnya bahwa tugas akhir ini tidak memuat karya
atau bagian karya orang lain, kecuali yang telah disebutkan dalam kutipan dan daftar
pustaka sebagaimana layaknya karya ilmiah.
Yogyakarta, 01 Desember 2015
Christin Karuru
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vi
LEMBAR PERNYATAAN PERSETUJUAN
PUBLIKASI KARYA ILMIAH UNTUK
KEPENTINGAN AKADEMIS
Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma:
Nama : Christin Karuru
Nomor Mahasiswa : 115114039
Demi pengembangan ilmu pengetahuan, saya memberikan kepada Perpustakaan
Universitas Sanata Dharma karya ilmiah saya yang berjudul:
SISTEM TELEMETRI KUALITAS KOLAM AIR
IKAN DENGAN RFM12-433S SEBAGAI CENTRAL
UNIT
Beserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan kepada
Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam
bentuk media lain, mengolanya dalam bentuk pangkalan data, mendistribusikan secara
terbatas, dan mempublikasikannya di Internet atau media lain untuk kepentingan akademis
tanpa perlu meminta ijin dari saya maupun memberikan royalty kepada saya selama tetap
mencantumkan nama saya sebagai penulis.
Demikian pernyataan ini saya buat dengan sebenarnya.
Yogyakarta, 01 Desember 2015
Christin Karuru
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
vii
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP
MOTTO :
GOD SAYS,
“STOP WORRYING AND
JUST TRUST ME.”
Persembahan
Karya ini ku persembahkan kepada…
Tuhan Yesus Kristus Pembimbingku yang setia.
Bapak dan Mamaku tercinta, dan kedua Adikku tersayang.
Andre, kekasihku dengan setia membantu dan memotivasi
Keluarga XVI oi..oi.. yang selalu mengasihiku dan mendukungku Dan semua orang yang mendoakan dalam penyelesaian Tugas Akhir.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
viii
INTISARI
Pertumbuhan produksi budidaya ikan air tawar merupakan usaha yang menjanjikan
keuntungan yang cukup besar. Hal ini menujukkan ada gairah besar di masyarakat untuk
mengembangkan usaha budidaya ikan air tawar. Tentunya pertumbuhan produksi ini
mengacu pada permintaan pasar yang terus meningkat. Untuk membudidayakan ikan air
tawar, kualitas air menjadi faktor yang paling mendukung dalam perkembangan ikan. Oleh
karena itu, penulis bermaksud untuk membuat sistem yang dapat menerima data secara
wireless dan memprosesnya menjadi data yang dikehendaki.
Sistem ini menggunakan Atmega 8535 untuk komunikasi dengan RFM12-433S
dengan komunikasi SPI. Sistem akan menerima data secara wireless dari setiap sensor
kemudian data tersebut akan ditampilkan menggunakan Visual Basic untuk User Interface.
Data tersebut akan ditampilkan dalam sebuah tabel dan grafik untuk setiap masing-masing
sensor.
Sistem Telemetri Kualitas Kolam Air Ikan dengan RFM12-433S sebagai Central
Unit sudah berhasil dibuat dengan menggunakan 3 pilihan frekuensi dan 3 pilihan
kecepatan transfer data. Frekuensi yang digunakan adalah 432MHz, 435MHz dan
437MHz, sedangkan kecepatan transfer data yang digunakan 1kbps, 2kbps dan 5kbps.
Sistem ini sudah diuji dengan jarak maksimum pengujian pada jarak 15 meter untuk
pengiriman paket data.
Kata kunci: Kualitas air, Kolam ikan, RFM12-433S
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
ix
ABSTRACT
The production growth cultivation of fish freshwater is a business that promised a
sizeable profit. This suggests is of great passion in the community to develop the business
of cultivating freshwater fish. Of course the production growth is based on with the market
demand that is increasing. To cultivate freshwater fish, the quality of water into factors the
most support in the development of fish. Hence, writer mean to keep system that could
receive data and a wireless data processing be desired.
This system uses ATMEGA8535 for communication with RFM12-433S by
communication of SPI. System will receive data is a wireless of any sensors then the data
will display use visual basic to a user interface. The data to display in a table and charts for
each sensors.
System telemetry the quality of a pool of water fish with rfm12-433s as central unit
have successfully created by using 3 choice the frequency and 3 choice speed data
transfers. Frequencies used is 432Mhz, 435Mhz and 437Mhz, while speed transfer the data
used 1Kbps, 2Kbps and 5Kbps. System has been tested with maximum distance testing at a
distance 15 meters of package delivery data.
The keywords: Water quality, Fish farm, RFM12-433S.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
x
KATA PENGANTAR
Puji dan syukur kepada Tuhan Yesus karena telah memberikan Berkat-Nya
sehingga penulis dapat menyelesaiakan laporan tugas akhir dengan baik, dan dapat
memperoleh gelar sarjana.
Dalam penulisan tugas akhir ini, penulis menyadari tidak lepas dari seluruh bantuan
dan bimbingan dari berbagai pihak. Oleh karena itu, pada kesempatan ini penulis
mengucapkan banyak terima kasih kepada :
1. Tuhan Yesus Kristus atas berkat dan anugerah-Nya kepada penulis.
2. Ibu P. H. Prima Rosa, S. Si., M. Sc., selaku Dekan Fakultas Sains dan
Teknologi Univesitas Sanata Dharma.
3. Petrus Setyo Prabowo, S.T., M.T., selaku Ketua Program Studi Teknik Elektro
Universitas Sanata Dharma.
4. Bapak Pius Yozy Merucahyo, S.T., M.T., selaku dosen pembimbing yang
dengan penuh kesabaran membimbing, memberikan saran dan kritik yang
membantu penulis dalam menyelesaikan tulisan ini.
5. Bapak Dr. Linggo Sumarno dan Bapak Wiwien Widyastuti S.T., M.T., selaku
dosen penguji yang telah memberikan bimbingan, saran, dan merevisi Tugas
Akhir ini
6. Bapak Martanto, M.T. yang telah memberikan saran dan kritik yang membantu
penulis dalam menyelesaikan tulisan ini.
7. Seluruh dosen prodi Teknik Elektro dan laboran yang telah memberikan ilmu
pengetahuan kepada penulis selama kuliah.
8. Bapak dan Mama tercinta yang selalu mendoakan, terima kasih untuk semua
perhatian dan dukungan baik spiritual maupun material.
9. Andreas Bagus Sadewo, terima kasih dengan setia selalu memberikan bantuan,
motivasi dan semangat untuk segera menyelesaikan penulisan tugas akhir ini.
10. Keluarga Barana’ XVI yang selalu mengasihiku dan mendukungku, terima
kasih sudah menjadi saudara yang selalu menyemangati.
11. Teman – teman prodi Teknik Elektro angkatan 2011, atas kebersamaannya
selama penulis menjalani studi.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xi
12. Semua pihak yang tidak bisa disebutkan satu persatu atas bantuan, bimbingan,
kritik dan saran.
Penulis menyadari bahwa dalam penyusunan laporan Tugas Akhir ini masih
mengalami kesulitan dan tidak lepas dari kesalahan. Oleh karena itu, penulis
mengharapkan masukan, saran, kritikan yang mendukung agar skripsi ini menjadi lebih
baik, dan semoga skripsi ini dapat bermanfaat sebagaimana mestinya.
Yogyakarta, 01 Desember 2015
Christin Karuru
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xii
DAFTAR ISI
Halaman
HALAMAN JUDUL (Bahasa Indonesia) ............................................................................. i
HALAMAN JUDUL (Bahasa Inggris) .................................................................................. ii
HALAMAN PERSETUJUAN ............................................................................................... iii
HALAMAN PENGESAHAN ................................................................................................. iv
PERNYATAAN KEASLIAN KARYA ................................................................................. v
LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK
KEPENTINGAN AKADEMIS .............................................................................................. vi
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP………………………….…………vii
INTISARI ................................................................................................................................ viii
ABSTRACT ............................................................................................................................. ix
KATA PENGANTAR ............................................................................................................. x
DAFTAR ISI ............................................................................................................................ xii
DAFTAR GAMBAR ............................................................................................................... xv
DAFTAR TABEL ................................................................................................................... xvii
BAB I PENDAHULUAN ......................................................................................................... 1
1.1. Latar Belakang .............................................................................................................. 1
1.2. Tujuan dan Manfaat Penelitian ..................................................................................... 2
1.3. Batasan Masalah ............................................................................................................ 2
1.4. Metodologi Penelitian ................................................................................................... 3
BAB II DASAR TEORI........................................................................................................... 4
2.1. Kualitas Air Kolam Ikan ............................................................................................... 4
2.1.1. Temperatur Air .............................................................................................................. 4
2.1.2. Keasaman Air (pH) ....................................................................................................... 4
2.1.3. Kekeruan ....................................................................................................................... 5
2.1.4. Kandungan Oksigen (DO).............................................................................................. 5
2.2. Atmega8535 .................................................................................................................. 5
2.2.1. Fitur-fitur Atmega ......................................................................................................... 6
2.2.2. Konfigurasi pin ATMega8535 ...................................................................................... 7
2.2.3. USART (Universal Synchronous and Ansynchronous Serial Receiver
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiii
and Transmitter) ........................................................................................................... 8
2.2.4. Serial Peripheral Interface ( SPI ) ................................................................................ 8
2.3. LCD ( Liquid Crystal Display ) ..................................................................................... 11
2.4. USB to TTL .................................................................................................................. 12
2.5. RFM12-433S ................................................................................................................. 12
2.6. Modulasi Digital ........................................................................................................... 13
2.6.1. Modulasi Digital FSK (Frequency Shift Keying) ........................................................... 14
2.6.2. Demodulasi FSK (Frequency Shift Keying) ................................................................. 14
2.7. Visual Basic .................................................................................................................. 15
2.7.1. Tipe Variabel ................................................................................................................. 15
2.7.2. Operator pada Visual Basic dan Urutan Operasinya ..................................................... 15
2.7.3. Operator Like ................................................................................................................ 16
2.7.4. Deklarasi Variabel ......................................................................................................... 16
2.7.5. Mengenal Struktur Kendali ........................................................................................... 16
2.7.6. Deklarasi Konstanta ...................................................................................................... 17
2.7.7. Struktur Pengulangan .................................................................................................... 18
2.8. Sistem Pengendali Air Kolam ....................................................................................... 18
BAB III RANCANGAN PENELITIAN ................................................................................ 20
3.1. Perancangan Perangkat Keras ....................................................................................... 21
3.1.1. Rangkaian Minimum Sistem Atmega 8535 .................................................................. 21
3.1.2. Rangkaian LCD .............................................................................................................. 22
3.2. Perancangan Perangkat Lunak ...................................................................................... 22
3.2.1. Diagram Alir Program PC .............................................................................................. 22
3.2.2. Diagram Alir Program Mikro......................................................................................... 24
3.2.3. Pengaturan Frekuensi Kerja RFM12 ............................................................................. 25
3.2.4. Prosedur Pengiriman Data dengan RFM12.................................................................... 26
3.2.5. Prosedur Penerimaan Data dengan RFM12 .................................................................. 27
3.2.6. Format Paket .................................................................................................................. 28
3.2.7. Diagram Alir Proses Serial Peripheral Interface (SPI) ................................................. 28
3.2.8. Tampilan data pada PC .................................................................................................. 29
BAB IV HASIL DAN PEMBAHASAN ................................................................................. 32
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xiv
4.1. Bentuk Fisik Central Unit Dan Hardware Elektronik ................................................... 32
4.1.1. Bentuk Fisik Central Unit .............................................................................................. 32
4.1.2. Subsistem Elektonik Alat ............................................................................................... 33
4.2. Pengujian Alat ............................................................................................................... 35
4.2.1. Pengujian Komunikasi RFM12-433S 1 Arah ................................................................ 35
4.2.2. Pengujian Komunikasi RFM12-433S 2 Arah Secara Bergantian .................................. 39
4.2.3. Pengujian Penerimaan Paket Data ke Remote Unit........................................................ 40
4.2.4. Tampilan Visual Pengguna ............................................................................................ 43
4.3. Pembahasan Program Pengiriman Dan Penerimaan Data Dari Remote Unit ................ 45
4.4. Pembahasan Program Visual Basic ................................................................................ 49
4.5. Cara Mengatur Frekuensi Dan Baudrate yang Akan Digunakan ................................... 51
4.6. Cara Penggunaan Sistem Secara Keseluruhan ............................................................... 52
BAB V KESIMPULAN DAN SARAN ................................................................................... 53
5.1. Kesimpulan .................................................................................................................... 53
5.2. Saran ............................................................................................................................... 53
DAFTAR PUSTAKA ............................................................................................................... 54
LAMPIRAN.............................................................................................................................. 55
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xv
DAFTAR GAMBAR
Halaman
Gambar 1.1. Blok Diagram Sistem Telemetri Kualitas ............................................................... 1
Gambar 2.1. Gambar mikrokontroler ATMega8535 ................................................................... 6
Gambar 2.2. Konfigurasi port Atmega8535 ................................................................................ 7
Gambar 2.3. Koneksi Master-Slave dengan SPI .......................................................................... 9
Gambar 2.4. SPI Control Register ............................................................................................... 9
Gambar 2.5. SPI Status Register ................................................................................................ 10
Gambar 2.6. SPI Data Register .................................................................................................. 10
Gambar 2.7. Bentuk fisik LCD 16x2 ......................................................................................... 11
Gambar 2.8. Bentuk fisik USB to TTL ...................................................................................... 12
Gambar 2.9. Konfigurasi Pin RFM12-433S .............................................................................. 13
Gambar 2.10. Sinyal modulasi digital Frequency Shift Keying (FSK) ........................................ 14
Gambar 2.11. Diagram Blok Demodularot FSK .......................................................................... 14
Gambar 3.1. Blok Diagram Sistem Yang Dibuat ....................................................................... 19
Gambar 3.2. Rangkaian Osilator Atmega 8535 ......................................................................... 20
Gambar 3.3. Rangkaian Reset Atmega 8535 ............................................................................. 20
Gambar 3.4. Rangkaian Minimum Sistem Atmega 8535 .......................................................... 21
Gambar 3.5. Rangkain LCD 16x2 .............................................................................................. 21
Gambar 3.6. Diagram Alir PC .................................................................................................... 22
Gambar 3.7. Gambar Diagram Alir Program Mikro .................................................................. 24
Gambar 3.8. Diagram Alir Pengiriman Data RFM12 ................................................................ 26
Gambar 3.9. Diagram Alir Penerimaan Data RFM12 ................................................................ 27
Gambar 3.10. Tampilan 2D Diagram Batang Pengukuran Kualitas Air Kolam Ikan .................. 28
Gambar 3.11. Tampilan 2D Diagram Plot Pengukuran Kualitas Air Kolam Ikan ....................... 28
Gambar 3.12. Tampilan 3D Diagram Plot Pengukuran Kualitas Air Kolam Ikan ....................... 29
Gambar 4.1. Kotak Sistem Tampak Atas ................................................................................... 32
Gambar 4.2. Kotak Sistem Tampak Samping ............................................................................ 33
Gambar 4.3. Kotak Sistem Tampak Belakan ............................................................................. 33
Gambar 4.4. Rangkaian Sistem Mikrokontroler dan LCD karakter .......................................... 34
Gambar 4.5. Rangkaian Penerima dan Antena .......................................................................... 34
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xvi
Gambar 4.6. Rangkaian USB to TTL ......................................................................................... 35
Gambar 4.7. Sinyal Diterima Central Unit Untuk Pengiriman 1 Byte dengan Baudrate 1kbps
............................................................................................................................... 36
Gambar 4.8. Sinyal Diterima Central Unit Untuk Pengiriman 1 Byte dengan Baudrate 2kbps
............................................................................................................................... 37
Gambar 4.9. Sinyal Diterima Central Unit Untuk Pengiriman 1 Byte dengan Baudrate 5kbps
............................................................................................................................... 37
Gambar 4.10. Sinyal Diterima Central Unit Dengan Jarak Pengujian 1 Meter ........................... 37
Gambar 4.11. Sinyal Diterima Central Unit Dengan Jarak Pengujian 10 Meter ......................... 38
Gambar 4.12. Sinyal Diterima Central Unit Dengan Jarak Pengujian 20 Meter ......................... 38
Gambar 4.13. Sinyal Diterima Central Unit Dengan Jarak Pengujian 40 Meter ......................... 38
Gambar 4.14. Cara Membaca Sinyal Yang Diterima .................................................................. 39
Gambar 4.15. Sinyal Penerimaan Paket Data Dengan Baudrate 1kbps ...................................... 42
Gambar 4.16. Sinyal Penerimaan Paket Data Dengan Baudrate 2kbps ...................................... 42
Gambar 4.17. Sinyal Penerimaan Paket Data Dengan Baudrate 5kbps ...................................... 42
Gambar 4.18. Tampilan Pada Visual Basic .................................................................................. 43
Gambar 4. 19. Tampilan data tersimpan dalam database ............................................................. 44
Gambar 4.20. Tampilan Utama ................................................................................................... 51
Gambar 4.21. Tampilan Ketika Tombol OK Ditekan .................................................................. 51
Gambar 4.22. Tampilan Ketika Tombol UP Ditekan .................................................................. 52
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
xvii
DAFTAR TABEL
Halaman
Tabel 2.1. Hubungan SCK dan Frekuensi Osilator ................................................................ 10
Tabel 2.2. Konfigurasi Pin LCD M1632 ................................................................................ 11
Tabel 2.3. Fungsi Pin RFM12-433S ....................................................................................... 13
Tabel 2.4. Tipe variabel, pemakaian storage dan jangkauan masing-masing ........................ 15
Tabel 2.5. Operator pada Visual Basic dan urutan operasi dari atas ke bawah ..................... 16
Tabel 2.6. Karakter Dalam Pencocokan Pola Pada Operator Like ........................................ 16
Tabel 2.7. Aksi Pengendalian ................................................................................................. 19
Tabel 3.1. Format Pengaturan Frekuensi ................................................................................ 25
Tabel 3.2. Format Paket Data ................................................................................................. 28
Tabel 4.1. Hasil Pengujian RFM12-433S 1 Arah .................................................................. 36
Tabel 4.2. Hasil Pengujian Pengujian RFM12-433S 2 Arah Bergantian ............................... 40
Tabel 4.3. Hasil Pengujian Pengiriman Paket Data ................................................................ 41
Tabel 4.4. Format Paket Data ................................................................................................. 45
Tabel 4.5. Format Paket Data ................................................................................................. 45
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
1
BAB I
PENDAHULUAN
1.1. Latar Belakang
Pertumbuhan produksi budidaya ikan air tawar merupakan usaha yang menjanjikan
keuntungan yang cukup besar. Kenaikan produksi budidaya ikan dalam kolam air tawar
cukup pesat yaitu berkisar 11% setiap tahun. Hal ini menujukkan ada gairah besar di
masyarakat untuk mengembangkan usaha budidaya ikan air tawar. Tentunya pertumbuhan
produksi ini mengacu pada permintaan pasar yang terus meningkat. Untuk
membudidayakan ikan air tawar, kualitas air menjadi faktor yang paling mendukung dalam
perkembangan ikan. Banyak ikan yang mati karena kualitas air yang buruk, sehingga
produksi ikan pun menjadi menurun dan pengusaha mengalami kerugian yang besar.
Perkembangan ilmu pengetahuan dan teknologi telah mengalami percepatan yang
tinggi. Keadaan tersebut membuat banyak hal dapat dilakukan dengan lebih mudah dan
efisien. Seiring perkembangan teknologi di dunia elektronika, maka semakin
dikembangkan otomasi dan efisiensi dalam bekerja khususnya untuk kehidupan manusia.
Untuk mewujudkan hal tersebut perlu adanya sebuah perangkat elektronika yang dapat
memenuhi kebutuhan yang dapat menunjang kemudahan bagi manusia.
Berdasarkan hal tersebut, diperlukan sebuah alat yang digunakan untuk monitoring
kualitas air kolam ikan. Alat ini terbagi menjadi 3 bagian, yaitu bagian pertama yang tediri
dari kolam ikan, sensor, dan pengendali kualitas air, bagian kedua yang terdiri dari remote
unit, dan bagian ketiga yeng terdiri dari central unit seperti ditunjukkan pada gambar 1.1.
Gambar 1.1. Blok Diagram Sistem Telemetri Kualitas Kolam Air Ikan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
2
Pada sistem ini, penulis lebih berkonsentrasi pada bagian central unit. Banyak
penelitian yang sudah membuat sistem untuk memonitoring kualitas kolam air ikan. Salah
satu penelitian yang sudah ada dilakukan oleh Charles Wilianto, dalam penelitian berjudul
“Sistem Komunikasi Pengendalian Kualitas Air Kolam Ikan Berbasis ATMega 128”.
Dalam penelitian yang dilakukan Charles Wilianto apabila cental unit mengirimkan
perintah untuk mengambil data ke remote unit, Remote unit mengumpulkan data dari setiap
sensor dan disatukan menjadi paket data yang kemudian dikirimkan ke cental unit
menggunakan kabel untuk kemudian dipisahkan kembali dan ditampilkan dalam bentuk
tabel dan grafik. Metode pengiriman paket data masih secara manual dan mengunakan
kabel untuk menghubungkan antara remote unit dengan central unit [1].
Menggunakan konsep penelitian yang sama namun dengan metode yang berbeda,
penulis yang berkonsentrasi pada bagian central unit akan menerima paket data secara
otomatis dari remote unit dengan menggunakan wireless sebagai penghubung antara
remote unit dengan central unit. Setiap 60 menit remote unit akan mengirimkan paket data
ke central unit. Paket data tersebut kemudian dipisahkan untuk kemudian diterjemahkan
dan ditampilkan di monitor. Paket data yang diterima disimpan ke dalam tabel dan dapat
dibuat grafik.
Maka, dengan Sistem Telemetri Kualitas Kolam Air Ikan dengan RFM12-433S
sebagai central unit, semua data dapat dilihat melalui monitor pada central unit . Sistem ini
memudahkan dalam mengontrol dan mengukur kualitas air kolam ikan seperti tingkat
derajat keasaman (pH), kekeruhan, kandungan oksigen (DO), dan temperatur.
1.2. Tujuan dan Manfaat Penelitian
Penelitian ini bertujuan untuk menghasilkan suatu sistem untuk menerima data
yang dikirimkan dari remote unit Sistem Telemetri Kualitas Kolam Air Ikan dengan
RFM12-433S dan data tersebut akan ditampilkan melalui PC pada central unit. Manfaat
dari penelitian adalah memudahkan pemantauan kualitas air kolam ikan sehingga
monitoring dapat dilakukan selama 24 jam dan dapat dilakukan dari jarak jauh.
1.3. Batasan Masalah
Batasan masalah dalam penelitian ini adalah :
a. Menggunakan modul RFM12-433S untuk transceiver dan receiver.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
3
b. Menggunakan Atmega 8535 untuk komunikasi dengan RFM12-433S dengan
komunikasi SPI.
c. Menggunakan AVR Codevition untuk program Atmega 8535.
d. Menggunakan Visual Basic untuk User Interface.
e. Menggunakan Miccrosoft Access untuk penyimpanan database.
f. Paket data yang diterima, disimpan di dalam tabel dan dapat dibuat grafik.
g. Data sensor yang diterima diawali dengan inisial data sensor yang dikirimkan dan
diakhiri dengan karakter pagar (#).
h. Batas pengujian pada ruang terbuka dengan jarak 5 meter, 10 meter, 15 meter.
i. Frekuensi yang digunakan yaitu 432MHz, 435MHz, dan 437MHz.
j. Batas pengujian baudrate pada 1kbps, 2kbps, dan 5kbps.
1.4. Metode Penelitian
Metode penulisan yang digunakan adalah :
a. Studi lineatur berupa pengumpulan referensi buku – buku, referensi dari internet
berupa jurnal dan artikel.
b. Studi kasus terhadap alat yang sudah dibuat sebelumnya. Tahap ini dilakukan guna
memahami prinsip kerja dari alat yang telah dibuat sebelumnya.
c. Perancangan sistem hardware dan software. Tahap ini bertujuan mencari bentuk
model yang optimal dari sistem yang dibuat dengan mempertimbangkan dari
berbagai faktor permasalahan dan kebutuhan yang telah ditentukan.
d. Pembuatan sistem hardware dan software. Sistem bekerja apabila, central unit
dapat menerima data yang dikirimkan dari remote unit secara otomatis dengan
menggunakan wireless dan ditampilkan pada monitor PC atau laptop.
e. Analisa dan pengambilan kesimpulan. Analisa data dilakukan dengan memeriksa
semua data yang diterima oleh central unit dari remote unit dengan pengiriman data
dengan jangkauan jarak yang berbeda 5 meter, 10 meter, 15 meter serta penggunaan
frekuensi yang berbeda yaitu 432MHz, 435MHz, dan 437MHz dan baudrate yang
berbeda yaitu 1kbps, 2kbps, dan 5kbps.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
4
BAB II
DASAR TEORI
2.1. Kualitas Air Kolam Ikan
Secara umum kualitas air berhubungan dengan kandungan bahan terlarut di
dalamnya. Kesesuaian lingkungan hidup untuk setiap ikan berbeda, tergantung pada jenis
ikan, jenis ikan tertentu yang sesuai dengan kondisi lingkungan dapat bertumbuh dan
berkembang. Sebaliknya, jika keadaan tidak sesuai dapat menghambat pertumbuhan dan
perkembangannya. Beberapa faktor dapat mempengaruhi kualitas air. Kualitas air tersebut
antara lain temperatur, derajat keasaman (pH), derajat kekeruan, serta kandungan
oksigen[1].
2.1.1. Temperatur Air
Temperatur air sangat berpengaruh pada pertumbuhan dan perkembangan ikan.
Temperatur air yang tidak cocok, misalnya terlalu tinggi atau terlalu rendah dapat
menyebabkan ikan tidak dapat bertumbuh dengan baik. Perubahan suhu yang mendadak
berpengaruh buruk pada kehidupan ikan karena ikan tidak dapat hidup dengan baik pada
suhu yang telalu dingin atau terlalu rendah. Temperatur yang cocok untuk pertumbuhan
ikan adalah berkisar antara 15ºC - 30ºC dan perbedaan suhu antara siang dan malam
kurang dari 5ºC [3].
2.1.2. Keasaman Air (pH)
Tingkat keasaman air dinyatakan dalam pH air. Derajat keasaman (pH) adalah
salah satu faktor penting kualitas air yang mempengaruhi kesehatan ikan. Derajat
keasaman diukur oleh kuantitas hidrogen dan hidroksil yang ada di air kolam. Skala
pengukurannya dari 1 – 14. Jika ion hidrogen terlalu banyak maka pH terlalu asam.
Sedangkan jika hidroksilnya lebih tinggi maka air terlalu basa. Besarnya pH air yang
optimal untuk kehidupan ikan adalah 6.9 – 8 (netral), karena pada kisaran tersebut
menunjukkan keseimbangan yang optimal antara oksigen dan karbondioksida serta pada
nilai tersebut, berbagai mikroorganisme yang merugikan akan sulit berkembang[4].
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
5
2.1.3. Kekeruhan
Kecerahan atau tingkat kekeruhan air pada hakekatnya menunjukkan populasi
plankton dan kandungan material lainya yang terlarut dalam air, biasanya diukur dengan
menggunakan Secci Disk atau Turbidity Meter. Kecerahan yang baik berkisar antara 30 –
40 cm, karena pada kondisi itu populasi plankton cukup ideal untuk pakan alami dan
material terlarut cukup rendah[6].
Kecerahan yang ideal juga menunjukkan kondisi air yang baik, karena penurunan
kualitas air banyak disebabkan oleh tingginya kadar bahan organik dan anorganik terlarut.
Disamping itu, plankton yang terlalu tinggi populasinya menyebabkan tingginya pH pada
siang hari dan punurunan drastis kadar DO pada malam hari terutama jika plankton yang
dominan adalah phytoplankton[6].
Satuan yang biasa dipakai dalam kekeruhan yaitu NTU (Nephelometric Turbidity
Units).Kekeruhan juga sering digambarkan dengan satuan TSS (Total Suspended Solids)
atau mg/1 (milligram per liter). Air murni memiliki NTU kurang dari 1 atau 0 mg/1[5].
Standar kekeruhan air yang baik bagi ikan harus kurang dari 500 NTU, karena lebih dari
itu dapat mengakibatkan pertumbuhan ikan menjadi terganggu[8].
2.1.4. Kandungan Oksigen (DO)
Kekurang kadar oksigen, maka akan menyebabkan kematian ikan. Kandungan
oksigen terkait dengan suhu air, sehingga apabila ada kenaikan suhu air, maka kandungan
oksigennya turun, dan demikian sebaliknya. Kandungan oksigen terlarut dalam air cocok
untuk kehidupan dan pertumbuhan ikan gurami sebesar 5ppm, untuk ikan nila lebih dari
3ppm, ikan mas berkisar 5 – 7ppm (5 – 7cc /liter air)[2]. Pengaliran air yang baik dan
permukaan kolam yang selalu terbuka dapat meningkatkan kadar oksigen dalam.
2.2. Atmega8535
Mikrokontroler ATmega8535 adalah mokrokontroler berjenis RISC 8 bit dengan
delapan kilobyte flash memori, high performance dan low power. Piranti dapat deprogram
secara in-system programming (ISP) dan dapat di program berulang-ulang selama 10.000
kali baca/ tulis didalam sistem[7]. Berikut ini gambar Mikrokontroler Atmega8535
ditunjukkan pada gambar 2.1.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
6
Gambar 2.1.Gambar mikrokontroler ATMega8535
ATMega8535 adalah mikrokontroler CMOS 8 bit daya rendah berbasis arsitektur
RISC. Instruksi dikerjakan pada satu siklus clock, ATMega8535 mempunyai
throughputmendekati 1 MIPS per MHz, hal ini membuat ATMega8535 dapat bekerja
dengan kecepatan tinggi walaupun dengan penggunaan daya rendah.Mikrokontroler
ATmega8535 memiliki beberapa fitur atau spesifikasi yang menjadikannya sebuah solusi
pengendali yang efektif untuk berbagai keperluan[7].
2.2.1. Fitur-fitur Atmega8535
Di dalam Atmega8535 terdapat beberapa fitur, seperti berikut [9]:
a. Saluran I/O sebanyak 32 buah, yaitu Port A,Port B,Port C dan Port D.
b. ADC 8 channel 10 bit.
c. Tiga buah Timer/Counter dengan kemampuan pembanding.
d. CPU yang terdiri atas 32 buah register.
e. Watchdogtimer dengan osilator internal.
f. SRAM sebesar 512 byte.
g. Memori Flash sebesar 8 KB dengan kemampuan Read While Write.
h. Interrupt internal dan eksternal
i. Port antarmuka SPI (Serial Peripheral Interface).
j. EEPROM sebesar 512 byte yang dapat diprogram saat operasi.
k. Antarmuka komparator analog.
l. Port USART untuk komunikasi serial.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
7
2.2.2. Konfigurasi Pin ATMega8535
Gambar 2.2. Konfigurasi port Atmega8535 [7]
Secara umum konfigurasi dan fungsi pin ATMega8535 ditunjukkan pada gambar
2.2 dan dapat dijelaskan sebagai berikut:
a. VCC Input sumber tegangan (+).
b. GNDGround (-) .
c. Port A (PA7 … PA0) Berfungsi sebagai input analog dari ADC (Analog to Digital
Converter). Port ini juga berfungsi sebagai port I/O dua arah, jika ADC tidak
digunakan.
d. Port B (PB7 … PB0) Berfungsi sebagai port I/O dua arah. Port PB5, PB6 dan PB7
juga berfungsi sebagai MOSI, MISO dan SCK yang dipergunakan pada proses
downloading.
e. Port C (PC7 … PC0) Berfungsi sebagai port I/O dua arah. Fungsi lain port ini
selengkapnya bisa dibaca pada buku petunjuk ”AVR ATMega8535”
f. Port D (PD7 … PD0) Berfungsi sebagai port I/O dua arah. Port PD0 dan PD1 juga
berfungsi sebagai RXD dan TXD, yang dipergunakan untuk komunikasi serial.
g. RESET Inputreset.
h. XTAL1 Input ke amplifier inverting osilator dan input ke sirkuit clockinternal.
i. XTAL2 Output dari amplifier inverting osilator.
j. AVCC Input tegangan untuk PortA dan ADC.
k. AREF Tegangan referensi untuk ADC.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
8
2.2.3. USART (Universal Synchronous and Ansynchronous Serial Receiver and
Transmitter)
USART merupakan komunikasi yang memiliki fleksibilitas tinggi, yang dapat
digunakan untuk melakukan transfer data baik antar mikrokontroler maupun dengan
modul-modul eksternal termasuk PC yang memiliki fitur UART.
USART memungkinkan transmisi data baik secara syncrhronous maupun
asyncrhronous, sehingga dengan memiliki USART pasti kompatibel dengan UART. Pada
ATmega8535, secara umum pengaturan mode syncrhronous maupun asyncrhronous
adalah sama. Perbedaannya hanyalah terletak pada sumber clock saja. Jika pada mode
asyncrhronous masing-masing peripheral memiliki sumber clock sendiri, maka pada mode
syncrhronous hanya ada satu sumber clock yang digunakan secara bersama-sama. Dengan
demikian, secara hardware untuk mode asyncrhronous hanya membutuhkan 2 pin yaitu
TXD dan RXD, sedangkan untuk mode syncrhronous harus 3 pin yaitu TXD, RXD dan
XCK. Komunikasi serial data antara master dan slave pada SPI diatur melalui 4 buah pin
yang terdiri dari SCLK, MOSI, MISO, dan SS sbb:
1. SCLK dari master ke slave yang berfungsi sebagai clock.
2. MOSI jalur data dari master dan masuk ke dalam slave.
3. MISO jalur data keluar dari slave dan masuk ke dalam master.
4. SS (slave select) merupakan pin yang berfungsi untuk mengaktifkan slave.
2.2.4. Serial Peripheral Interface ( SPI )
Serial Peripheral Interface ( SPI ) adalah protokol data serial sinkron digunakan
oleh mikrokontroler untuk berkomunikasi dengan satu atau lebih perangkat periferal cepat
jarak pendek. Hal ini juga dapat digunakan untuk komunikasi antara dua mikrokontroler.
Dengan koneksi SPI selalu ada perangkat satu master (biasanya mikrokontroler) yang
mengontrol perangkat periferal
Komunikasi SPI membutuhkan 3 jalur yaitu MOSI, MISO, dan SCK. Melalui
komunikasi ini data dapat saling dikirimkan baik antara mikrokontroller maupun antara
mikrokontroller dengan peripheral lain di luar mikrokontroller. Penjelasan 3 jalur utama
dari SPI adalah sebagai berikut :
1. MOSI : Master Output Slave Input, yaitu jika dikonfigurasi sebagai Master maka
pin MOSI sebagai output tetapi jika dikonfigurasi sebagai Slave maka pin MOSI
sebagai input.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
9
2. MISO : Master Input Slave Output, yaitu jika dikonfigurasi sebagai Master maka
pin MISO sebagai input tetapi jika dikonfigurasi sebagai Slave maka pin MISO
sebagai output.
3. CLK : Clock, jika dikonfigurasi sebagai Master maka pin CLK berlaku sebagai
output tetapi jika dikonfigurasi sebagai Slave maka pin CLK berlaku sebagai input.
Ada dua maca SPI, yaitu satu master dengan satu slave dan satu master dengan banyak
slave. Pada gambar 2.3 ditunjukkan sambungan antar master dan slave dengan SPI.
Gambar 2.3. Koneksi Master-Slave dengan SPI [7]
Register yang berhubungan dengan SPI terdapat seperti gambar 2.4.
Gambar 2.4. SPI Control Register [7]
Setiap bit dari register SPCR mempunyai fungsinya masing-masing. Dan untuk
mengaktifkan SPI, maka perlu diketahui setiat bit register tersebut, sebagai berikut:
a. Bit 7 – SPIE: SPI Interrupt Enable. SPIE digunakan untuk mengaktifkan
interupsi SPI.
b. Bit-6 SPE (SPI Enable). SPE digunakan untuk mengaktifkan dan menonaktifkan
komunikasi SPI dimana jika SPI bernilai 1 maka komunikasi SPI aktif sedangkan
jika bernilai 0 maka komunikasi SPI tidak aktif.
c. Bit 5 – DORD: Data Order. DORD digunakan untuk memilih urutan pengiriman
data, dari LSB atau MSB terlebih dahulu. Nilai satu untuk LSB dan nilai nol untuk
MSB.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
10
d. Bit-4 MSTR (Master or Slave Select). MSTR digunakan untuk mengkonfigurasi
sebagai master atau slave secara software dimana jika MSTR bernilai 1 maka
terkonfigurasi sebagai master sedangkan MSTR bernilai 0 maka terkonfigurasi
sebagai slave. Pengaturan bit MSTR ini tidak akan bisa dilakukan jika pin SS
dikonfigurasi sebagai input karena jika pin SS dikonfigurasi sebagai input maka
penentuan master atau slavenya otomatis dilakukan secara hardware yaitu dengan
membaca level tegangan pada SS.
e. Bit-3 CPOL dan Bit-2 CPHA digunakan untuk pengaturan polaritas dan fasa dari
clock.
f. Bit-1 SPR1/0 (SPI Clock Rate Select) SPR1 dan SPR0 digunakan untuk
menentukan kecepatan clock yang digunakan dalam komunikasi SPI.
Tabel 2.1. Hubungan SCK dan Frekuensi Osilator [7]
SPI2x SPR1 SPR0 SCK Frequency
0 0 0 4
0 0 1 16
0 1 0 64
0 1 1 128
1 0 0 2
1 0 1 8
1 1 0 32
1 1 1 64
Gambar 2.5. SPI Status Register [7]
SPIF (SPI Interrupt Flag) merupakan bendera yang digunakan untuk mengetahui
bahwa proses pengiriman data 1 byte sudah selesai. Jika proses pengiriman data sudah
selesai maka SPIF akan bernilai satu (high). SPIF ini berada dalam SPI Status Register
(SPSR).
Gambar 2.6. SPI Data Register [7]
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
11
SPI Data Register (SPDR) SPDR merupakan register yang digunakan untuk
menyimpan data yang akan dikirim atau diterima pada komunikasi SPI.
2.3. LCD (Liquid Crystal Display)
LCD (Liquid Crystal Display) adalah komponen yang berfungsi untuk
menampilkan suatu karakter pada suatu tampilan (display) dengan bahan utama yang
digunakan berupa Liquid Crystal Display[11].Apabila diberi arus listrik sesuai dengan
jalur yang telah dirancang pada kontruksi LCD, Liquid Crystal Display akan menghasilkan
suatu cahaya dan cahaya tersebut akan membentuk karakter tertentu.
LCD yang digunakan adalah tipe M1632.LCD M1632 merupakan modul LCD
dengan tampilan 2x16 (2 baris, 16 kolom) dengan konsumsi daya rendah[10]. LCD tipe
M1632 yang ditunjukkan pada gambar 2.7
.
Gambar 2.7. Bentuk fisik LCD 16x2 [10]
Tabel 2.2. Konfigurasi Pin LCD M1632
No. Nama Fungsi
1 Vss 0V (GND)
2 Vcc +5V
3 VLC LCD Contrast Voltage
4 RS Register Select
H: Data Input; L: Instruction Input
5 RD Read/Write
H: Read; L: Write
6 EN Enable Signal
7 D0
Data Bus
8 D1
9 D2
10 D3
11 D4
12 D5
13 D6
14 D7
15 V+ BL Positif backlight voltage (4-4,2V; 50-200mA)
16 V- BL Negative backlight voltage (0V; GND)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
12
2.4. USB to TTL
USB to TTL adalah sebuah modul yang berguna untuk berkomunikasi dengan
peralatan eksternal dengan port USB (Universal Serial Bus) secara serial seperti pada
protokol RS-232 namun pada tingkatan tegangan signal yang kompatibel dengan TTL,
level tegangan yang umum digunakan pada UART mikrokontroler berbasis 5V[14]. Modul
ini memiliki beberapa fitur seperti berikut:
a. Spesifikasi USB 2.0 dan kompatibel dengan kecepatan sampai 12Mbps.
b. Standar USB jenis Amale dan TTL 5pin konektor. 5pins untuk TXD RXD GND
3.3V 5V.
c. Baud rates: 300 bps to 1.5 Mbps.
d. Byte receive buffer; 640 byte transmit buffer.
e. Temperature Range: -40 to +85.
f. Supports Windows 98SE, 2000, XP, Vista, Window7, Mac OS 9, Mac OS X &
Linux 2.40.
Berikut bentuk fisik dari USB to TTL ditunjukkan pada gambar 2.8.
Gambar 2.8. Bentuk fisik USB to TTL[14].
2.5. RFM12-433S
RFM12-433S merupakan modul transceiver yang menggunakan modulasi
Frequency Shift Keying dengan menggunakan frekuensi kerja 433 Mhz [13]. Karena modul
ini merupakan transceiver maka modul ini bisa dioperasikan menjadi transmitter maupun
sebagai receiver. Untuk koneksi pin RFM12-433S pada dapat dilihat pada gambar 2.9.
Fungsi setiap pinnya dapat dilihat pada table 2.3.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
13
Gambar 2.9. Konfigurasi Pin RFM12-433S [12]
Tabel 2.3. Fungsi Pin RFM12-433S [12]
Definisi Tipe Fungsi
nINT/VDI DI/ DO Input interupsi (aktif rendah) / indikator data
benar
VDD S Positif power supply
SDI DI SPI data input
SCK DI SPI clock input
nSel DI Chip select (aktif rendah)
SDO DO Serial data output dengan bus
nIRQ DO Intereups request output (aktif rendah)
FSK/DATA/Nffs DI/DO/DI Transmit FSK data input/ Received data
output (FIFO not used)/ FIFO select
DCLK/CFIL/FFIT DO/AIO/DO
Clock output (no FIFO )/ external filter
capacitor(analog mode)/ FIFO
interrupts(active high)when FIFO level set
to 1, FIFO empty interruption can
be achieved
CLK DO Clock output for external microcontroler
nRES DIO Reset output (active low)
GND S Power ground
2.6. Modulasi Digital
Modulasi Digital merupakan proses penumpangan sinyal digital (bit stream) ke
dalam sinyal carrier. Modulasi digital sebetulnya adalah proses mengubah-ubah
karakteristik dan sifat gelombang pembawa (carrier) sedemikian rupa sehingga bentuk
hasilnya (modulated carrier) memiliki ciri-ciri dari bit-bit (0 atau 1) yang dikandungnya.
Melalui proses modulasi digital sinyal-sinyal digital setiap tingkatan dapat dikirim ke
penerima dengan baik. Untuk pengiriman ini dapat digunakan media transmisi fisik (logam
atau optik) atau non fisik (gelombang-gelombang radio). Pada dasarnya dikenal 3 prinsip
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
14
atau sistem modulasi digital yaitu: ASK, FSK, dan PSK, pada makalah ini dikhususkan
pembahasan pada sistem modulasi FSK dan demodulasi FSK[13].
2.6.1. Modulasi Digital FSK (Frequency Shift Keying)
Modulasi Digital FSK (Frequency Shift Keying) merupakan sejenis Frequency
Modulation (FM), dimana sinyal pemodulasinya (sinyal digital) menggeser outputnya
antara dua frekuensi yang telah ditentukan sebelumnya, yang biasa diistilahkan mark dan
space. Modulasi digital dengan FSK juga menggeser frekuensi carrier menjadi beberapa
frekuensi yang berbeda didalam band-nya sesuai keadaan digit yang dilewatkannya. Jenis
modulasi ini tidak mengubah amplitudo dari signal carrier, melainkan yang berubah hanya
frekuensi. Adapun bentuk sinyal modulasi digital Frequency Shift Keying (FSK) adalah
sebagai berikut :
Gambar 2.10. Sinyal modulasi digital Frequency Shift Keying (FSK).
2.6.2. Demodulasi FSK (Frequency Shift Keying)
Konsep dasar Demodulasi adalah proses pemisahan sinyal antara sinyal pembawa
(carrier) dengan sinyal data yang dikirim oleh suatu pemancar. Frekuensi gelombang
pembawa menggeser outpunyta dimana pulsa sinusoidal dengan frekuensi tertentu
mewakili logika 0 atau disebut frekuensi mark (fm) dan pulsa sinusoidal dengan frekuensi
lainnya mewakili logika 1 atau yang disebut frekuensi space (fs). Demodulator ini berada
pada sisi penerima untuk melakukan proses pemisahan sinyal tersebut, sehingga data yang
diterima dapat sesuai dengan data yang dikirim sebelumnya.
Gambar 2.11. Diagram Blok Demodularot FSK
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
15
2.7. Visual Basic
Visual Basic adalah salah suatu development tools untuk membangun aplikasi
dalam lingkungan Windows. Dalam pengembangan aplikasi, Visual Basic menggunakan
pendekatan Visual untuk merancang user interface dalam bentuk form, sedangkan untuk
kodingnya menggunakan dialok bahasa Basic yang cenderung mudah dipelajari.Visual
Basic telah menjadi tools yang terkenal bagi para pemula maupun para developer dalam
pengembangan aplikasi skala kecil sampai ke skala besar.
2.7.1. Tipe Variabel
Ketepatan pemilihan tipe variabel akan sangat menentukan pemakaian resources
oleh aplikasi yang dihasilkan, adalah tugas programmer untuk memilih tipe yang sesuai
untuk menghasilkan program yang efisien dan berperfomance tinggi [12].
Tabel 2.4. Tipe variabel, pemakaian storage dan jangkauan masing-masing
Type Data Ukuran Storage Jangkuan
Byte 1 byte 0 s/d 255
Boolean 2 byte True atau False
Integer 3 byte -32,768 s/d 32767
Long 4 byte -2,147,483,648 s/d 2,147,483,647
Single 4 byte -3.402823E38 s/d -1.401298E-45 (-)
1.401298E-45 s/d 3.402823E38 (+)
Double 8 byte -1.79769313486232E308 s/d -
4.94065645841247E-324 (-)
Currency 8 byte -922,337,203,685,477.5808 s/d
922,337,203,685,477.580
Decimal 14 byte +/79,228,162,514,264,337,593,543,95
0,335
Date 8 byte 1 Januari 100 s/d 31 Desember 9999
Object 4 byte Mengacu pada objek tertentu
String (panjang variabel) 10 byte + panjang
string
0 sampai lebih kurang 2 milyar
String (panjang tetap) panjang dari string 1 sampai lebih kurang 65,400
Variant (dengan angka) 16 byte Sembarang angka sampai jangkauan
jenis Double
Variant (dengan
karakter)
22 byte + panjang
string
Sama dengan jangkauan variabel
String
2.7.2. Operator pada Visual Basic dan Urutan Operasinya
Visual basic meyediakan operator aritmatika, komparasi dan logika, salah satu hal
yang harus dipahami oleh programmer adalah tata urutan operasi dari masing-masing
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
16
operator tersebut sehingga mampu membuat ekspresi yang akan menghasilkan nilai yang
benar, Tabel 2.5 menunjukkan operator dan urutan operasinya dari atas kebawah.
Tabel 2.5.Operator pada Visual Basic dan urutan operasi dari atas ke bawah
Aritmatika Komparasi Logika
Pangkat (^) Sama (=) Not
Negatif (-) Tidak sama (<>) And
Kali dan Bagi (*, /) Kurang dari (<) Or
Pembagian bulat (\) Lebih dari (>) Xor
Sisa Bagi (Mod) Kurang dari atau sama (<=) Eqv
Tambah dan Kurang (+,-) Lebih dari atau sama (>=) Imp
Pengabungan String (&) Like
2.7.3. Operator Like
Salah satu operator yang menarik untuk dibahas adalah operator like, karena
operatorini tidak tersedia pada bahasa BASIC. Operator digunakan untuk operasi
pencocokan polapada string yang akan sangat membantu programmer. Tabel 2.6.
menunjukan karakter dalampencocokan pola pada operator like.
Tabel 2.6. Karakter Dalam Pencocokan Pola Pada Operator Like
Karakter dalam pola Penyamaan dalam string
? Sembarang karakter tunggal
* Nol atau lebih karakter
# Sembarang digit tunggal (0-9)
[charlist] Sembarang karakter yang berada dalam charlist
[!charlist] Sembarang karakter yang tidak berada dalam
charlist
2.7.4. Deklarasi Variabel
a. Deklarasi variabel pada bagian deklarasi (general declaration) di suatu form,
standar, atau class module, dari pada dalam suatu procedure, membuat variabel itu
berlaku untuk semua procedure dan function dalam module tersebut
b. Deklarasi variabel dengan menggunakan keyword Public membuatnya berlaku pada
keseluruhan aplikasi anda.
c. Deklarasi suatu variabel lokal dengan menggunakanan keyword Static akan
menyimpan nilainya ketika suatu procedure berakhir.
2.7.5. Mengenal Struktur Kendali
Struktur kendali memungkinkan anda untuk mengatur jalannya program anda, Jika
membiarkan tanpa di periksa oleh statement control-flow, suatu logika program akan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
17
berjalan dari kiri ke kanan dan dari atas kebawah. Hanya program yang sangat sederhana
dapat ditulis tanpa statement control-flow. Struktur keputusan yang didukung oleh Visual
Basic adalah sebagai berikut :
a. If…Then
Kondisi biasanya berupa suatu perbandingan, maupun ekspresi yang
menghasilkan nilai numerik.Visual Basic menginterpretasikan Falsesebagai nol (0),
dan True sebagai bukan nol.
b. If…Then…Else
Visual Basic awalnya akan mencoba kondisi1. Jika False, maka Visual Basic
akan memeriksa kondisi2, dan seterusnya sampai menemukan suatu kondisi True
untuk dijalankan blok pernyataannya.
c. Select Case
Visual Basic menyediakan struktur Select Case sebagai suatu alternatif
terhadap If...Then...Else.Suatu Select Case statement memiliki kemampuan yang
sama dengan If…Then…Else…, tetapi membuat code lebih mudah dibaca. Struktur
Select Case bekerja dengan suatu percobaan tunggal yang hanya dievaluasi satu
kali pada bagian atas struktur.Visual Basic then membandingkan hasil ekspresi
dengan nilai pada setiap case didalam struktur tersebut, jika ada yang sesuai, akan
dijalankan blok statement yang sesuai.
2.7.6. Deklarasi Konstanta
Membuat code dapat ditangani dengan menggunakan suatu konstanta[12]. Suatu
konstanta adalah nama yang menyimpan dari suatu nilai yang tidak dapat berubah. Ada
dua sumber dari suatu konstanta :
a. Intrinsic atau System-defined konstanta yang disediakan oleh suatu aplikasi atau
kontrol. Konstanta Visual Basic terdaftar pada Visual Basic (VB), Visual Basic
for Application (VBA), dan Data Access (DAO).
b. Symbolic atau User-defined konstanta adalah dideklarasikan dengan
menggunakan statement Const.
c. Membuat suatu konstanta yang mana hanya ada dalam suatu procedure,
deklarasikan di dalam procedure tersebut
d. Membuat suatu konstanta berlaku pada semua procedure dalam suatu module,
deklarasikan dia pada bagian deklarasi di module tersebut.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
18
e. Membuat suatu konstanta berlaku pada semua aplikasi, deklarasikan dia
dengan keyword Public sebelum kata Const.
2.7.7. Struktur Pengulangan
Struktur loop memperbolehkan untuk melaksanakan sekelompok baris lebih dari
satu kali [12]:
a. Do…Loop
Ketika Visual menjalankan Do loop ini, pertama kali akan di coba kondisinya,
jika kondisi False (0), akan diloncati semua statements yang mengikuti kondisi
tersebut. Visual Basic akan menjalankan statements jika kondisi benar dan kembali
ke Do…Loop berikutnya.
b. For…Next
Do loops bekerja dengan baik, ketika anda tidak tahu berapa bayak kali
untuk butuhkan untuk menjalankan statement. Ketika anda mengetahui harus
menjalankan statement sejumlah kali, bagaimanapun For…Next adalah pilihan
yang lebih baik. Tidak seperti Do Loop, For…loop menggunakan suatu variabel
yang disebut counter yang mana akan bertambah atau berkurang pada setiap
perulangan.
c. Do While…Loop
Pengulangan Do While…Loop digunakan apabila jumlah pengulangan
belum diketahui, dan nilai awal pengulangan harus diinialisasi terlebih dahulu.
Dalam program terdapat counter untuk menaikkan nilai pengulangan.
2.8. Sistem Pengendali Air Kolam
Sistem pengendalian kualitas air terdiri dari pintu masuk air kolam, pintu keluar air
kolam dan pompa air. Sistem ini akan bekerja pada remote unit berdasarkan data sensor
yang didapatkan dan standar yang telah ditentukan. Setiap jenis ikan memiliki perbedaan
standar kualitas air, maka ditetapkan standar air yang dikendalikan sistem ini. Hal ini
ditetapkan agar sistem dapat digunakan untuk semua jenis ikan seperti pada tabel 2.7. Pada
tabel tersebut juga ditentukan aksi pengendalian berdasarkan standar yang ditentukan [13];
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
19
Tabel 2.7. Aksi Pengendalian
Kualiatas Yang diamati Standar air Aksi Pengendalian
Suhu 18-28 ºC Jika suhu air kolam >28 ºC atau <18 maka: - Inlet off (pintu masuk air tertutup)
- Outlet on (pintu keluar air terbuka)
- Pompa sumur on
Dengan asumsi suhu air sumur selalu
berada pada suhu 18ºC – 28ºC.
pH 5-8,5 Jika pH air kolam >8.5 atau <5 maka:
- Inlet off (pintu masuk air tertutup)
- Outlet on (pintu keluar air terbuka)
- Pompa sumur on
Dengan asumsi PH air sumur selalu berada
diantara 5 – 8,5
Kekeruhan <380 NTU Jika kekeruhan air kolam >380 NTU maka: - Inlet off (pintu masuk air tertutup)
- Outlet on (pintu keluar air terbuka)
- Pompa sumur on
Dengan asumsi kekeruhan air sumur < 380
NTU
DO > 5 ppm Jika DO air kolam < 5ppm maka: -Inlet off (pintu masuk air tertutup)
- Outlet on (pintu keluar air terbuka)
- Pompa sumur on
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
20
BAB III
RANCANGAN PENELITIAN
Perancangan sistem telemetri kualitas kolam air ikan sebagai central unit ini dibagi
menjadi menjadi dua bagian utama, yaitu:
1. Perancangan hardware yang terdiri dari mikrokontroler dan perangkat pendukung,
seperti minimum sistem atmega 8535, dan LCD. Gambar 3.1 menunjukkan blok
diagram sistem yang akan dibuat.
2. Perancangan software yang terdiri dari pemograman pc, dan pemograman mikro.
Gambar 3.1. Blok Diagram Sistem Yang Dibuat.
Berikut merupakan keterangan cara kerja sistem yang ditunjukkan gambar 3.1:
1. RFM12-433S merupakan sebuat transmitter wireless yang bekerja pada frekuensi
433MHz. Pada central unit alat ini berfungsi sebagai penerima data secara wireless
yang kemudian diteruskan ke atmega8535.
2. Atmega 8535 berfungsi sebagai media perantara untuk mentransmisikan data yang
diterima RFM12-433S yang kemudian akan diteruskan dan ditampilkan di PC.
3. USB to TTL berfungsi untuk media komunikasi antara mikro dengan ke PC
menggunakan port USB.
4. Secara keseluruhan, RFM12-433S menerima data secara wireless kemudian data
tersebut diteruskan ke atmega8535 dengan komunikasin SPI agar data tersebut dapat
diteruskan ke PC. Sebelum dikirimkan ke PC, data tersebut ditampilkan ke LCD dan
kemudian dikirimkan ke PC melalui USB to TTL. Setelah data di terima di PC, data
tersebut dipisahkan untuk setiap sensornya dan kemudian ditampilkan dalam bentuk
tabel dan grafik.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
21
3.1. Perancangan Perangkat Keras
3.1.1. Rangkaian Minimum Sistem Atmega 8535
Rangkaian sistem minimum berfungsi sebagai I/O untuk mengolah data dan
mengatur komunikasi untuk transmitter dan komunikasi ke PC. Mikrokontroler
membutuhkan sistem minimum yang terdiri dari rangkaian eksternal yaitu, rangkaian
osilator dan rangkaian reset. Rangkaian osilator ditunjukkan pada gambar 3.2.
Perancangan rangkaian osilator digunakan kristal dengan frekuensi 12Mhz dan
menggunakan kapasitor 22pF (datasheet) pada pin XTAL 1 dan XTAL 2 di
mikrokontroler.
Gambar 3.2. Rangkaian Osilator Atmega 8535.
Gambar 3.6 menunjukkan rangkaian reset mikrokontroler ATmega8535. Rangkaian
reset bertujuan untuk memaksa proses kerja pada mikrokontroler diulang dari awal. Jika
tombol reset ditekan, maka pin reset akan mendapat input logika rendah, sehingga
mikrokontroler akan mengulang proses eksekusi program dari awal. Pada perancangan
rangkaian reset digunakan resistor sebesar 10kΩ dan kapasitor sebesar 10µF berdasarkan
gambar 3.3.
Gambar 3.3. Rangkaian Reset Atmega 8535.
Untuk pengunaan port mikrokontroler disambungkan dengan pin-header male
sehingga bisa digunakan sesuai kebutuhan dan mudah untuk dirubah. Berikut rangkaian
minimum sistem Atmega 8535 ditunjukkan pada gambar 3.4.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
22
Gambar 3.4. Rangkaian Minimum Sistem Atmega 8535
3.1.2. Rangkaian LCD
LCD yang digunakan pada perancangan ini adalah LCD character 16x2 yang
berfungsi untuk menampilkan data yang diterima dari pemancar sebelum dikirim ke PC.
Berdasarkan datasheet tegangan kontras (pin Vo) maksimum LCD ini adalah 5 volt,
sehingga digunakan sebuah variable resistor sebesar 10 kOhm yang digunakan untuk
membatasi tegangan pada pin ini. Rangkaian LCD character 16x2 ditunjukkan pada
gambar 3.5.
Gambar 3.5. Rangkain LCD 16x2
3.2. Perancangan Perangkat Lunak
3.2.1. Diagram Alir Program PC
Diagram alir utama ditunjukkan pada gambar 3.6.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
23
Gambar 3.6. Diagram Alir PC
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
24
Diagram alir ini bekerja pada PC yang berfungsi untuk mengolah semua data yang
masuk dan menampilkannya pada PC dalam bentuk tabel dan grafik. PC tidak dapat
langsung menerima data yang diterima melalui RFM12 karena modul menggunakan sistem
komunikasi SPI sehingga dibutuhkan sebuah mikrokontroler sebagai jembatan komunikasi
untuk menerima data dari RFM12 ke PC.
Sebelum mengirimkan data, remote unit mengirimkan karakter “p” ke central unit
untuk memeriksa koneksi dan kesiapan dari central unit untuk menerima data, apabila
central unit siap untuk menerima paket data central unit mengirimkan karakter “y”, setelah
remote unit menerima karakter “y”, remote unit mengirimkan paket data yang berisi data
yang diambil dari setiap sensor. Setiap paket data memiliki 46 karakter, dimana data
tersebut diawali karakter “@” dan diakhiri dengan karakter “$”.
Untuk memeriksa paket data yang dikirimkan benar atau salah, central unit
memeriksa jumlah data yang diterima dan mememeriksa karakter pertama dan terakhir.
Jika paket data yang diterima berjumlah 46 karakter, diawali dengan karakter “@” dan
diakhiri dengan karakter “$”, maka paket data dianggap benar. Jika paket data yang
diterima benar, central unit mengirimkan karakter “y” ke remote unit untuk memberikan
kode pengiriman paket data berhasil, tetapi apabila central unit tidak mengirimkan karakter
“y” setelah menerima paket data, remote unit akan menganggap pengiriman paket data
gagal sehingga data yang dikirimkan di simpan dan akan dikirimkan kembali setelah
jadwal pengiriman selanjutnya.
3.2.2. Diagram Alir Program Mikro
Diagram alir program ditunjukkan pada gambar 3.7. Program ini sebagai converter
data yang akan dikirimkan dan diterima oleh PC dan transmitter agar dapat beroperasi
karena komunikasi yang digunkan berbeda. Mikro akan memeriksa register mana yang
menerima data terlebih dahulu, apabila register SPI yang menerima terlebih dahulu, maka
ada data dari transmitter. Data tersebut diambil dan ditampilkan pada LCD, kemudian data
tersebut dikirimkan ke PC, tetapi pabila register USART yang terlebih dahulu menerima
data, maka ada data dari PC. Sehingga Data tersebut diambil dan ditampilkan pada LCD,
kemudian data tersebut dikirimkan ke transmitter.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
25
Gambar 3.7. Gambar Diagram Alir Program Mikro.
3.2.3. Pengaturan Frekuensi Kerja RFM12
Pengaturan frekuensi kerja RFM12 (baik pancar maupun terima) menggunakan
perintah “Frequency Setting Command”. Instruksi ini memiliki format :
Tabel 3.1. Format Pengaturan Frekuensi [13]
Bit 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
Data 1 0 1 0 F, menyatakan frekuensi
Nilai F ditentukan melalui persamaan [13]:
MHz (3.1)
Frekuensi yang akan digunakan adalah 432 MHz, dari persamaan 3.1. dapat dihitung untuk
mencari nilai F seperti berikut:
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
26
Nilai F yang didapat dirubah ke dalam bentuk heksadesimal menjadi:
Nilai heksadesimal yang didapat dimasukkan ke dalam register “Frequency Setting
Command” untuk mengatur frekuensi yang digunakan.
3.2.4. Prosedur Pengiriman Data dengan RFM12
Prosedur pengiriman data melibatkan instruksi “Power Management Command”
dan “Transmitter Register Write Command”. “Power Management Command” berfungsi
menghidupkan dan mematikan komponen – komponen pemancar RF pada RFM12.
”Transmitter Register Write Command” berfungsi mengirimkan satu byte data ke register
data pemancar pada RFM12.
Prosedur pengiriman data dimulai dengan menghidupkan bagian pemancar
menggunakan instruksi “Power Management Command” dengan nilai 0x8238. Instruksi
dengan nilai tersebut akan menghidupkan penguat daya RF (Radio Frequency), dan
osilator. Selanjutnya, lima paket data pembuka dikirim secara urut sesuai datasheet :
0xB8AA, 0xB8AA, 0xB8AA, 0xB82D dan 0xB8D4. Kemudian satu byte data dikirim
menggunakan perintah “Transmitter Register Write Command” yaitu dengan melakukan
operasi OR antara bilangan heksadesimal 0xB800 dengan data yang bersangkutan.
Langkah ini dapat diulangi jika data yang dikirim berjumlah lebih dari satu byte.
Jika data sudah dikirim semuanya, prosedur ditutup dengan mematikan pemancar
menggunakan perintah 'Power Management Command' dengan nilai 0x8208. Instruksi
dengan nilai tersebut akan mematikan penguat daya RF, dan osilator.
Untuk pengujian frekuensi yang digunakan adalah 432MHz, 435MHz dan
437MHz. Frekuensi tersebut dipilih karena penulis ingin menguji frekuensi kerja dari
modul RFM12-433S pada batas atas, batas tengah dan batas atas dari modul tersebut. Dan
untuk baudrate yang digunakan adalah 1kbps, 2kbps dan 5kbps. Diagram alir prosedur
pengiriman data ditampilkan pada Gambar 3.8.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
27
Gambar 3.8. Diagram Alir Pengiriman Data RFM12
3.2.5. Prosedur Penerimaan Data dengan RFM12
Prosedur penerimaan data melibatkan tiga instruksi. “Power Management
Command” berfungsi menghidupkan dan mematikan komponen – komponen penerima RF
dari RFM12. “FIFO dan Reset Mode Command' berfungsi mengatur pemakaian register
data FIFO. “Receiver FIFO Read Command” berfungsi menerima satu byte data yang
ditampung pada register FIFO.
Prosedur penerimaan data dimulai dengan menghidupkan komponen – komponen
penerima meliputi RF, baseband, dan osilator. Hal ini dilakukan menggunakan instruksi
'Power Management Command' dengan nilai 0x82C8. Mode FIFO diatur dan FIFO
diaktifkan menggunakan perintah 'FIFO and Reset Mode Command' dengan nilai 0xCA81
dan 0xCA83. Pengambilan data dilakukan pada register FIFO menggunakan instruksi
“Receiver FIFO Read Command”. Hal ini dilakukan dengan mengirimkan nilai 0xB000
dan menampung data kembalian dari RFM12.
Untuk data yang hendak diterima berjumlah lebih dari satu byte langkah diatas bisa
diulangi sampai semua data diterima. Terakhir, setelah data selesai dikirimkan, prosedur
diakhiri dengan mematikan komponen – komponen penerima menggunakan instruksi
Power Management Command' dengan nilai 0x8208. Diagram alir prosedur penerimaan
data tampak pada Gambar 3.9.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
28
Gambar 3.9. Diagram Alir Penerimaan Data RFM12
3.2.6. Format Paket Data
Jumlah karakter di dalam paket data sebanyak 46 karakter, karakter tersebut terdiri
dari nomor penyimpanan, tanggal, jam, penggabungan 4 data sensor, dan status dari sistem
pengendali. Format data tersebut disesuaikan dengan kebutuhan dan sesuai dengan yang
dibutuhkan oleh remote unit, berikut format data di dalam paket data:
@01#dd-MM-yyyy#HH:mm#Saaaa#Kbbbb#Hcccc#Ddddd#$
Dari format paket data tersebut bisa dijelaskan pada tabel 3.2 seperti berikut:
Tabel 3.2. Format Paket Data
Nomor
penyimpanan Tanggal Waktu Suhu Keasaman Kekeruhan DO
Jumlah
karakter 2 10 5 5 5 5 5
3.2.7. Diagram Alir Proses Serial Peripheral Interface (SPI)
Diagram alir program ditunjukkakan pada gambar 3.10. Pengiriman pemancar
menggunakan proses SPI yang membutuhkan pergeseran. Dimana satu data terdiri dari 16
bit sehingga tiap satu data menghasilkan 16 clock. Setiap data yang masuk akan
dimaksukkan terlebih dahulu ke variabel “writeCmd”. Cmd merupakan tempat untuk
penyimpanan data. Terlebih dahulu pemancar diaktifkan kemudian clock diatur low (clock
= 0). Ketika isi cmd pertama tersebut berisi 0x800 yang berarti ada data masuk. Jika isi
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
29
cmd pertama tidak ada data maka clock diatur = 0, kirim data, kemudian geser data ke kiri
1 kali. Langkah ini terjadi hingga counter melewati 16 kali maka proses akan selesai jika,
Namun jika isi cmd pertama ada data maka clock diatur = 0, simpan data ke cmd, geser
data cmd ke kiri 1 kali, kemudian clock kembali diatur = 0. Proses ini akan selesai sampai
tidak adanya data yang diterima.
Gambar 3.10. Diagram Alir Proses SPI
3.2.8. Tampilan data pada PC
Central Unit menerima data masukan dimana data masukan merupakan data suhu,
keasaman, kekeruan dan kandungan oksigen. Program pada PC ini dilengkapi dengan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
30
tampilan data dalam bentuk tabel dan grafik sesuai dengan tanggal dan waktu saat data
diterima. Tampilan grafik dapat ditampilkan dalam bentuk diagram batang dan diagram
plot dalam bentuk 2D dan 3D. Tampilan ini akan mempermudah dalam melihat data semua
sensor yang mengukur kualitas kolam air ikan
Gambar 3.11. Tampilan 2D Diagram Batang Pengukuran Kualitas Air Kolam Ikan
Gambar 3.12. Tampilan 2D Diagram Plot Pengukuran Kualitas Air Kolam Ikan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
31
Gambar 3.13. Tampilan 3D Diagram Plot Pengukuran Kualitas Air Kolam Ikan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
32
BAB IV
HASIL DAN PEMBAHASAN
Bab ini berisi gambar fisik hardware yang dibuat, pembahasan tentang pembagian
hardware, hasil pengujian rangkaian, hasil data yang diterima, pembahasan tentang
program visual basic yang menampilkan grafik dan program mikrokontroler. Data yang
akan dibahas terdiri dari data data sensor dan paket data ke yang diterima oleh cental unit.
Data yang diterima kemudian ditampilkan dalam bentuk tabel dan grafik di visual basic.
Hasil pengujian berupa data-data yang diperoleh dapat memperlihatkan bahwa hardware
atau software yang dirancang telah bekerja dengan baik atau tidak. Berdasarkan data-data
tersebut dapat dilakukan analisis terhadap proses kerja alat yang kemudian dapat
digunakan untuk menarik kesimpulan akhir
4.1. Bentuk Fisik Central Unit dan Hardware Elektronik
4.1.1. Bentuk Fisik Central Unit
Bentuk fisik remote unit secara keseluruhan ditunjukkan pada gambar 4.1 sampai
gambar 4.3. Bentuk fisik remote unit ini terdiri dari 1 box yang bertujuan untuk melindungi
dan merapikan rangkaian elektronik di dalamnya.
Gambar 4.1. Kotak Sistem Tampak Atas
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
33
Gambar 4.2. Kotak Sistem Tampak Samping
Gambar 4.3. Kotak Sistem Tampak Belakan
4.1.2. Subsistem Elektonik Alat
Subsistem elektronik alat terdiri atas rangkaian sistem mikrokontroler dan LCD
karakter, rangkaian tombol, rangkaian penerima, dan rangkaian antena. Penulis membuat
rangkaian sistem mikrokontroler dan LCD karakter dalam 1 rangkaian PCB, rangkaian
tersebut bisa dilihat pada gambar 4.4, sedangkan untuk rangkaian penerima dan rangkaian
antena ditampilkan pada gambar 4.5, dan untuk rangkaian USB to TTL ditampilkan pada
gambar 4.6.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
34
Gambar 4.4. Rangkaian Sistem Mikrokontroler dan LCD karakter
Gambar 4.5. Rangkaian Penerima dan Antena
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
35
Gambar 4.6. Rangkaian USB to TTL
4.2. Pengujian Alat
4.2.1. Pengujian Komunikasi RFM12-433S 1 Arah
Pengujian komunikasi RFM12-433S 1 arah dilakukan untuk mengetahui jarak
maksimum dari modul pemancar tersebut. Pengujian dilakukan pada ruang terbuka dengan
cara mengirimkan 1 karakter “O” secara terus menerus dari pemancar ke penerima, apabila
penerima dapat menerima karakter tersebut, penerima akan menampilkan tulisan “Koneksi
OK”, tetapi apabila karakter tersebut “O” tidak diterima maka pada LCD penerima akan
menampilkan karakter “Koneksi Gagal”. Pada pengujian ini dilakukan dengan 3 frekuensi
berbeda dan 3 kecepatan transfer data yang berbeda. Frekuensi yang digunakan untuk
pengujian ini adalah 432MHz, 435MHz, dan 437MHz, sedangkan kecepatan transfer data
yang digunakan adalah 1kbps, 2kbps, dan 5kbps. Hasil pengujian komunikasi RFM12-
433S 1 arah ditampilkan pada dan tabel 4.1.
Berdasarkan tabel 4.1, frekuensi yang digunakan pada 432MHz mampu mencapai
jarak maksimum pengiriman 1 byte sejauh 120 meter, sedangkan untuk frekuensi 435MHz
jarak terjauh sebesar 120 meter dan untuk frekuensi 437MHz jarah terjauh untuk
pengiriman 1 byte sebesar 122 meter. Berdasarkan tabel 4.2, jarak terjauh dapat dicapai
dengan menggunakan baudrate terkecil yaitu sebesar 1kbps, sedangkan untuk baudrate
terbesar yaitu sebesar 5kbps hanya mencapai jarak paling pendek.
Hal tersebut dikarenakan semakin besar baudrate yang digunakan atau semakin
jauh jarak jangkauan pengiriman data, maka semakin besar juga noise yang didapat,
sehingga mengakibatkan kemungkinan pembacaan data yang diterima salah.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
36
Tabel 4.1. Hasil Pengujian RFM12-433S 1 Arah
No. Frekuensi
(MHz)
Kecepatan
(kbps)
Jarak
maksimum
(m)
1 432 1 122
2 432 2 120
3 432 5 118
4 435 1 120
5 435 2 115
6 435 5 110
7 437 1 122
8 437 2 119
9 437 5 118
Berikut gambar pengaruh baudrate dengan sinyal yang diterima ditampilkan pada
gambar 4.7 – 4.9 dengan jarak pengiriman sejauh 40 meter, sedangkan pengaruh jarak
pengiriman data dengan sinyal yang diterima ditampilkan pada gambar 4.10 - 4.13 yang
menggukan pengaturan frekuensi 432MHz dan baudrate 5kbps.
Gambar 4.7. Sinyal Diterima Central Unit Untuk Pengiriman 1 Byte dengan Baudrate
1kbps
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
37
Gambar 4.8. Sinyal Diterima Central Unit Untuk Pengiriman 1 Byte dengan Baudrate
2kbps
Gambar 4.9. Sinyal Diterima Central Unit Untuk Pengiriman 1 Byte dengan Baudrate
5kbps
Gambar 4.10. Sinyal Diterima Central Unit Dengan Jarak Pengujian 1 Meter
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
38
Gambar 4.11. Sinyal Diterima Central Unit Dengan Jarak Pengujian 10 Meter
Gambar 4.12. Sinyal Diterima Central Unit Dengan Jarak Pengujian 20 Meter
Gambar 4.13. Sinyal Diterima Central Unit Dengan Jarak Pengujian 40 Meter
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
39
Untuk memeriksa data yang diterima sudah sesuai dengan data yang dikirim dapat
dilakukan dengan mengecek sinyal data yang diterima dan clock yang dihasilkan dari
sistem penerima, tetapi untuk pengambilan data sangat sulit untuk mensinkronkan antara
sinyal data yang diterima dengan clock yang dihasilkan, karena clock akan bergeser ke kiri
atau ke kanan.
Dalam pengambilan data ini, penulis mengambil data secara terpisah. Pertama
mengambil data sinyal yang diterima kemudian mengambil data clock yang dihasilkan.
Setelah kedua data tersebut diambil, maka penulis menyatukan kedua gambar tersebut agar
sinkron sehingga tampak seperti gambar 4.14. Dari gambar 4.14, bisa diambil nilai bit
yang diditerima setiap perubahan clock naik, sehingga didapat hasilnya adalah
1011100010101010b. Kemudian dari nilai tersebut dikonversikan menjadi bilangan heksa
dan didapat hasilnya adalah 0xB8AA. Nilai tersebut sesuai dengan yang dikirimkan dari
remote unit. Nilai “B8” merupakan alamat untuk pengiriman data, dan nilai “AA”
merupakan nilai inisialisasi sebelum atau sesudah mengirim data.
Gambar 4.14. Cara Membaca Sinyal Yang Diterima
4.2.2. Pengujian Komunikasi RFM12-433S 2 Arah Secara Bergantian
Pengujian komunikasi RFM12-433S 2 arah secara bergantian dilakukan untuk
mengetahui kestabilan modul RFM12-433S untuk berkomunikasi. Pengujian dilakukan di
ruang terbuka dengan cara mengirimkan 1 karakter dari remote unit ke central unit.
Karakter yang dikirimkan remote unit adalah karakter “p”, apabila karakter tersebut
diterima oleh central unit maka central unit mengirimkan karakter balik ke remote unit.
Karakter tersebut adalah karakter “y”, apabila karakter “y” tersebut diterima kembali oleh
remote unit, maka LCD pada remote unit akan menampilkan tulisan “Koneksi OK”, tetapi
apabila tidak LCD penerima akan menampilkan karakter “Koneksi Gagal”. Pada pengujian
ini dilakukan dengan 3 frekuensi berbeda dan 3 kecepatan transfer data yang berbeda.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
40
Frekuensi yang digunakan untuk pengujian ini adalah 432MHz, 435MHz, dan 437MHz,
sedangkan kecepatan transfer data yang digunakan adalah 1kbps, 2kbps, dan 5kbps. Hasil
pengujian komunikasi RFM12-433S 2 arah bergantian ditampilkan pada dan tabel 4.2.
Berdasarkan tabel 4.3, jarak terjauh yang mampu ditempuh sebesar 30 meter
dengan pengaturan frekuensi sebesar 435MHz dan kecepatan transfer sebesar 5kbps. Dari
tabel 4.2 apabila dibandingkan dengan tebel 4.1, hasil yang didapatkan berbeda jauh. Hal
ini disebabkan karena untuk komunikasi 2 arah secara bergantian dibutuhkan komunikasi
yang stabil, dan kestabilan dari modul RFM12-433S ini berada pada jangkauan maksimum
sebesar 30 meter.
Tabel 4.2. Hasil Pengujian Pengujian RFM12-433S 2 Arah Bergantian
No. Frekuensi
(MHz)
Kecepatan
(kbps)
Jarak
maksimum
(m)
1 432 1 30
2 432 2 22,6
3 432 5 20
4 435 1 23,1
5 435 2 24
6 435 5 15
7 437 1 24,5
8 437 2 28
9 437 5 23,8
4.2.3. Pengujian Penerimaan Paket Data ke Remote Unit
Pengujian pengiriman paket data ke central unit dilakukkan untuk mengetahui
peforma dari pemancar yang digunakan untuk mengetahui frekuensi dan kecepatan transfer
data dengan jarak terjauh dan dapat diterima dengan benar oleh central unit untuk
pengiriman paket data. Pengujian dilakukan di tempat terbuka setiap 5 meter yaitu pada
jarak 1 meter, 5 meter, 10 meter dan 15 meter.
Metode pengujian adalah dengan cara menjalankan program utama dan megatur
jadwal pengiriman paket data setiap 1 menit, sehingga setiap 1 menit alat ini akan
mengambil data dari setiap sensor dan mengirimkannya ke central unit sesuai dengan
format yang ditentukan pada bab III. Frekuensi yang digunakan untuk pengujian ini adalah
432MHz, 435MHz, dan 437MHz, sedangkan kecepatan transfer data yang digunakan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
41
adalah 1kbps, 2kbps, dan 5kbps. Hasil pengujian paket data ke central unit ditampilkan
pada dan tabel 4.3.
Tabel 4.3. Hasil Pengujian Pengiriman Paket Data
Frekuensi 432MHz 432MHz 432MHz
Baudrate 1kbps 2kbps 5kbps
Jarak (m) Keterangan Keterangan Keterangan
1 berhasil berhasil berhasil
5 berhasil berhasil berhasil
10 berhasil berhasil berhasil
15 berhasil berhasil berhasil
Frekuensi 435MHz 435MHz 435MHz
Baudrate 1kbps 2kbps 5kbps
Jarak (m) Keterangan Keterangan Keterangan
1 berhasil berhasil berhasil
5 berhasil berhasil berhasil
10 berhasil berhasil berhasil
15 berhasil berhasil berhasil
Frekuensi 437MHz 437MHz 437MHz
Baudrate 1kbps 2kbps 5kbps
Jarak (m) Keterangan Keterangan Keterangan
1 berhasil berhasil berhasil
5 berhasil berhasil berhasil
10 berhasil berhasil berhasil
15 berhasil berhasil berhasil
Berdasarkan tabel 4.3, semua data yang dikirim remote unit berhasil diterima
central unit. Walaupun semakin besar baudrate yang digunakan noise yang dihasilkan
semakin besar, tetapi untuk jarak 15 meter noise tersebut belum mengganggu proses
pengiriman paket data. Berdasarkan hal tersebut, membuktikan bahwa modul RFM12-
433S bisa digunakan untuk proses pengiriman 1 byte atau lebih.
Berikut gambar gelombang yang diterima central unit ditampilkan pada gambar
4.15 – gambar 4.17. Sama halnya dengan proses pengiriman data 1 byte, pengiriman paket
data bisa dilakukan dengan mengirim data satu per satu sampai semua data dikirim.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
42
Gambar 4.15. Sinyal Penerimaan Paket Data Dengan Baudrate 1kbps
Gambar 4.16. Sinyal Penerimaan Paket Data Dengan Baudrate 2kbps
Clock yang dihasilkan penerima
Sinyal data yang dikirim
Gambar 4.17. Sinyal Penerimaan Paket Data Dengan Baudrate 5kbps
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
43
Dari hasil pengujian ini, semakin besar baudrate yang digunakan maka semakin
besar juga noise yang dihasilkan. Tetapi pada pengujian ini jarak terjauh untuk pengujian
paket data sebesar 15 meter. Pada jarak tersebut, noise yang diterima pada central unit
tidak mempengaruhi proses pengiriman paket data karena semua data masih bisa diterima
walaupun noise tersebut cukup besar.
4.2.4. Tampilan Visual Pengguna
Pada tampilan pengguna terjadi perubahan tampilan dengan perancangan yang ada
pada BAB III. Pada tampilan, penulis menambahkan status sistem kendali untuk
menampilkan inlet, outlet dan pompa dalam kondisi tertutup atau terbuka, serta
menampilkan status dalam kondisi normal atau tidak normal. Tampilan grafik dapat lebih
mudah diamati untuk masing-masing tiap sensor. Perubahan tampilan ini dikarenakan
untuk menyesuaikan tampilan agar pengguna dapat lebih mudah dalam mengamati dan
menggunakannya. Berikut tampilan pada Visual Basic ditunjukkan pada gambar 4.18, dan
data yang disimpan dalam database ditampilkan pada gambar 4.19.
Gambar 4.18. Tampilan Pada Visual Basic
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
44
Gambar 4. 19. Tampilan data tersimpan dalam database
Dari tampilan tersebut dapat dilihat terjadi penambahan beberapa form tambahan
seperti jumlah data, data status, pemilihan port, dan status sistem kendali. Jumlah data
merupakan jumlah data yang tersimpan yang ada di database, penambahan form tersebut
untuk mempermudah minghitung jumlah data dalam membuatat grafik. Penambahan
pemilihan port agar pengguna bisa menggunakan tidak hanya di 1 tempat port saja, tetapi
bisa memilih port pada komputer / laptop lainnya yang tidak digunakan.
Data status merupakan status dari sistem kendali pada kondisi terakhir.
Penambahan form data status dimaksudkan agar pengguna juga dapat memonitoring status
sistem kendali pada kondisi terakhir. Penambahan form ini juga membuat penambahan
karakter yang dikirimkan dan diterima dari remote unit.
Remote unit menambah 1 karakter terakhir sebelum karakter untuk mengakhiri
paket data tersebut. Karakter tersebut hanya bernilai “1” atau “0”, maksudnya adalah
karakter “1” untuk status normal yang berarti pintu masuk air terbuka, pintu keluar air
tertutup dan pompa air off, sedangkan untuk karakter “0” berarti status air tidak normal
yang berarti pintu inlet tertutup, pintu keluar air terbuka dan pompa air on. Berikut format
paket data sebelum perubahan ditunjukkan pada tabel 4.4.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
45
@01#dd-MM-yyyy#HH:mm#Saaaa#Kbbbb#Hcccc#Ddddd#$
Dari format paket data tersebut bisa dijelaskan pada tabel 4.4 seperti berikut:
Tabel 4.4. Format Paket Data
Nomor
penyimpanan Tanggal Waktu Suhu Keasaman Kekeruhan DO
Jumlah
karakter 2 10 5 5 5 5 5
Sedangkan setelah terjadi perubahan, format paket datanya menjadi seperti dibawah ini dan
dijelaskan pada tabel 4.5.
@01#dd-MM-yyyy#HH:mm#Saaaa#Kbbbb#Hcccc#Ddddd#X$
Tabel 4.5. Format Paket Data
Nomor
penyimpanan Tanggal Waktu Suhu Keasaman Kekeruhan DO
Status
Kendali
Jumlah
karakter 2 10 5 5 5 5 5 1
4.3. Pembahasan Program Pengiriman Dan Penerimaan Data Dari
Remote Unit
Modul RFM12-433S sudah disediakan beberapa pengaturan yang berfungsi untuk
mempermudah dalam pengoperasiannya di dalam datasheet. Berikut listing program yang
digunakan untuk pemilihan port yang digunakan untuk modul RFM12-433S.
#define SCK 2 // SPI clock
#define SDO 0 // SPI Data output (RFM12B side) //MOSI
#define SDI 1 // SPI Data input (RFM12B side) //MISO
#define CS 3 // SPI SS (chip select)
#define NIRQ 4
#define HI(x) PORTA |= (1<<(x))
#define LO(x) PORTA &= ~(1<<(x))
#define WAIT_NIRQ_LOW() while(PINA&(1<<NIRQ))
void portInit()
HI(CS);
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
46
HI(SDI);
LO(SCK);
PORTA.0=1;
PORTA.4=1;
DDRA = (1<<CS) | (1<<SDI) | (1<<SCK);
DDRD = 0xff;
PORTD=0x00;
Dari program diatas bisa dilihat bahwa port yang digunakan untuk modul RFM12-
433S adalah port A, dengan pemilihan pada pin 0 – pin 4. Dalam pengoperasiannya, modul
RFM12-433S menggunakan komunikasi SPI berikut program SPI untuk mengaktifkan
modul RFM12-433S.
//proses SPI
unsigned int writeCmd(unsigned int cmd)
unsigned char i;
unsigned int recv;
recv = 0;
LO(SCK);
LO(CS); //aktifkan modul
for(i=0; i<16; i++)
if(cmd&0x8000) HI(SDI); else LO(SDI); //kalo nilai "cmd=1" maka tidak ada yg akan
dikirim
HI(SCK);
recv<<=1; //geser register recv ke kiri 1 kali
if( PINA&(1<<SDO) )
recv|=0x0001;
LO(SCK);
cmd<<=1; //cmd geser ke kiri 1 kali
Delay_ms(100);
HI(CS);
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
47
return recv;
//inisialisasi pemancar
void rfInit()
pilihfrek();
pilihkec();
writeCmd(0x94A0); //VDI,FAST,134kHz,0dBm,-103dBm
writeCmd(0xC2AC); //AL,!ml,DIG,DQD4
writeCmd(0xCA81); //FIFO8,SYNC,!ff,DR
writeCmd(0xCED4); //SYNC=2DD4•G
writeCmd(0xC483); //@PWR,NO RSTRIC,!st,!fi,OE,EN
writeCmd(0x9850); //!mp,90kHz,MAX OUT
writeCmd(0xCC17); //OB1•COB0, LPX,•Iddy•CDDIT•CBW0
writeCmd(0xE000); //NOT USE
writeCmd(0xC800); //NOT USE
writeCmd(0xC040); //1.66MHz,2.2V
Setiap nilai yang akan dikirimkan ke modul RFM12-433S dimasukkan terlebih
dahulu ke dalam variable “writeCmd”, karakter tersebut kemudian digerser sebanyak 16 x
untuk mengahasilkan komunikasi SPI. Pengaturan tersebut bisa dirubah sesuai dengan
yang dibutuhkan, tetapi harus disesuaikan dengan datasheet. Berikut listing program untuk
penerimaan data.
// mereset FIFO
void FIFOReset()
writeCmd(0xCA81);
writeCmd(0xCA83);
//menerima data dari pemancar
unsigned char rfRecv()
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
48
portInit();
writeCmd(0x80D7); //EL,EF,433band,12.0pF
writeCmd(0x8299); //er,!ebb,ET,ES,EX,!eb,!ew,DC //AKTIFKAN PENERIMA
rfInit();
FIFOReset();
z=0;
while(1&&z<=10000)
data = writeCmd(0x0000);
if ( (data&0x8000) )
data = writeCmd(0xB000);
return (data&0x00FF);
z++;
Setiap data yang masuk akan dimasukkan terlebih dahulu ke variabel “writeCmd”,
setelah semua terkumpul 16 bit kemudian dipindahkan ke variabel “data” untuk diolah ke
program selanjutnya. Setiap selesai menerima data dilakukan reset agar tidak terjadi
penumpukan data. Untuk listing program pengiriman data seperti berikut.
void rfSend(unsigned char data)
WAIT_NIRQ_LOW();
writeCmd(0xB800 + data);
//pengiriman data ke pemancar
void kirimdata()
portInit();
writeCmd(0x80D7); //EL,EF,433band,12.0pF
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
49
writeCmd(0x8239); //!er,!ebb,ET,ES,EX,!eb,!ew,DC // AKTIFKAN SEBAGAI
PEMANCAR
rfInit();
FIFOReset();
writeCmd(0x0000);
rfSend(0xAA); // 5 DATA AWAL
rfSend(0xAA);
rfSend(0xAA);
rfSend(0x2D);
rfSend(0xD4);
rfSend(data_rf[0]); // DATA YANG DIKIRIM
rfSend(0xAA); // DATA PENUTUP
rfSend(0xAA);
rfSend(0xAA);
delay_ms(10);
4.4. Pembahasan Program Visual Basic
Untuk komunikasi laptop ke mikrokontroler bisa dilakukan secara serial, berikut
listing program yang digunakan untuk komunikasi.
If Comm1.PortOpen = False Then
Comm1.CommPort = port
Comm1.RThreshold = 0
Comm1.InputLen = 0
Comm1.Settings = "57600,N,8,1"
Comm1.PortOpen = True
MsgBox "Port Terhubung!", vbOKOnly, "Peringatan"
Connect.Enabled = False
Do
USD = DoEvents()
Data = Comm1.Input
Text1.Text = Text1.Text + Data
Loop Until Data = Chr$(16)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
50
End If
Exit Sub
errcode:
MsgBox "Port Tidak Terhubung !", vbOKOnly, "Peringatan"
Combo4.SetFocus
Variabel “port” digunakan untuk pemilihan port yang akan digunakan, setelah
dipilih Comm1 akan membuka sambungan komunikasi serial. Jika tidak bisa terhubung
akan ada peringatan menggunakan MsgBox yang bertuliskan "Port Tidak Terhubung !",
tetapi jika bisa terhubung akan ada tampilan MsgBox yang bertuliskan "Port Terhubung!".
Selama port terhubung, data yang masuk akan ditambahkan ke dalam text1.
Untuk melakukan pemisahan paket data yang sudah diterima dilakukan dengan
menggunakan listing program sebagai berikut.
Text3.Text = Mid$(Text1.Text, 5, 10)
Text7.Text = Mid$(Text1.Text, 16, 5)
Text2.Text = Mid$(Text1.Text, 23, 4)
Text4.Text = Mid$(Text1.Text, 29, 4)
Text5.Text = Mid$(Text1.Text, 35, 4)
Text6.Text = Mid$(Text1.Text, 41, 4)
Text12.Text = Mid$(Text1.Text, 46, 1)
Program tersebut akan membaca dari text berapa, dimulai dari karakter berapa, dan
berapa karakter yang akan diambil. Seperti contoh, form tanggal berada pada text3,
dimulai dari kaakter ke 5 dari paket data, dan berjumlah 10 karaketer. Maka untuk
mengambil data tanggal menggunakan rumus:
Text3.Text = Mid$(Text1.Text, 5, 10)
Untuk menambahkan database dibutuhkan sebuah module dengan listing program
sebagai berikut:
Option Explicit
Global strCon As New ADODB.Connection
Public Sub bukaDatabase()
Dim strString As String
strString = "provider = Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & App.Path & "\DBSensor.mdb;" & _
"Persist Security Info=False; "
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
51
Set strCon = New ADODB.Connection
strCon.Open strString
strCon.CursorLocation = adUseClient
End Sub
Dari program tersebut data base disimpan dengan menggunakan nama DBSensor.mdb.
4.5. Cara Mengatur Frekuensi Dan Baudrate yang Akan Digunakan
Pada gambar 4.20 merupakan tampilan utama dari sistem penampilan frekuensi dan
baudrate yang digunaka. Ketika tombol “OK” ditekan maka akan tampil seperti pada
gambar 4.21 yang berfungsi untuk menampilkan tampilan frekuensi. Frekuensi dapat dapat
diubah dengan menekan tombol tombol “UP. Jika frekuensi yang akan digunakan sudah
dipilih maka tekan tombol “OK” untuk menetapkan frekuensi yang akan digunakan. Selain
untuk menampilkan tampilan frekuensi, tombol “OK” berfungsi juga sebagai tombol
ok/penentu pilihan. Sedangkan ketikan menekan tombol “UP” maka akan tampil seperti
pada gambar 4.22 yang berfungsi untuk menampilkan baudrate sekaligus mengubah
baudrate yang akan digunakan. Jika baudrate yang akan digunakan sudah dipilih maka
tekan tombol “OK” untuk menetapkan baudrate yang akan digunakan. Berikut fungsi
tombol ditampilkan pada tabel 4.6.
Tabel 4.6. Fungsi Tombol Dalam Program Utama
Tombol Fungsi
RESET Berfungsi untuk mengulang sistem
OK Berfungsi untuk menampilkan frekuensi dan tombol OK untuk pilihan
UP Berfungsi untuk menampilkan baudrate dan mengubah frekuensi dan baudrate
Gambar 4.20. Tampilan Utama
Gambar 4.21. Tampilan Ketika Tombol OK Ditekan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
52
Gambar 4.22. Tampilan Ketika Tombol UP Ditekan
4.6. Cara Penggunaan Sistem Secara Keseluruhan
Setelah melakukan pengaturan penggunaan frekuensi dan baudrate yang sesuai
dengan remote unit, sambungkan kabel USB yang ada pada kotak sistem ke laptop.
Kemudian run program visual basic, setelah itu pilih port yang disambungkan dengan
kabel USB yang terhubung dengan kotak sistem. Setelah itu klik “Connect”, kemudian
akan ada peringatan. Jika peringatan tersebut bertuliskan “Port Terhubung!” berarti
koneksi laptop dengan kotak sistem berhasil tetapi jika ada tulisan “Port Tidak
Terhubung!” berarti koneksi dengan kotak sistem belum berhasil hal ini biasanya
disebabkan oleh kesalahan penggunakan port yang digunakan.
Jika sambungan sudah berhasil coba cek koneksi dengan remote unit, caranya
dengan mengirimkan “ping” dari remote unit. Jika pada berhasil maka sistem ini siap
digunakan secara keseluruhan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
53
BAB V
KESIMPULAN DAN SARAN
5.1. Kesimpulan
Dari hasil pengujian dan pengambilan data pada sistem telemetri kualitas kolam air ikan
dengan RFM12-433S sebagai central unit, didapatkan kesimpulan sebagai berikut:
1. Penggunaan modul RFM12-433S dapat digunakan untuk komunikasi dengan jangkauan
jarak maksimum sejauh 30 meter di ruang terbuka.
2. Semakin besar baudrate yang digunakan atau semakin jauh jarak pengiriman data yang
dilakukan, maka semakin banyak noise yang diterima central unit.
3. Semakin besar baudrate yang digunakan, maka semakin dekat jarak jangkauan
pengiriman data.
5.2. Saran
Sistem telemetri kualitas kolam air ikan dengan RFM12-433S sebagai central unit ini
masih memiliki kekurangan. Ada beberapa saran yang diharapkan dapat mengurangi kekirangan
tersebut, antara lain :
1. Pengembangan dapat dilakukan agar sistem dapat dapat mengatasi noise agar jarakauan
penerima bisa lebih jauh.
2. Pengembangan diharapkan dapat dilengkapi dengan penggunaan alarm jika terjadi sistem
penerimaan data yang error.
3. Penampilan pada grafik sebaiknya dibatasi agar tidak terlalu banyak garis yang dihasilkan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
54
DAFTAR PUSTAKA
[1] Wilianto, C., 2014, Sistem Komunikasi Pengendalian Kualitas Air Kolam Ikan
Berbasis Atmega128, Universitas Sanata Dharma, Yogyakarta.
[2] Bambang, C., 2000, Budi Daya Ikan Air Tawar, Kanisius, Yogyakarta.
[3] http://o-fish.com/Air/temperatur.php, diakses tanggal 21 Oktober 2014.
[4] http://o-fish.com/Air/kemasaman.php, diakses tanggal 21 Oktober 2014.
[5] http://www.ujikadarair.com/parameter-kualitas-air-kolam-ikan.html, diakses
tanggal 21 Oktober 2014.
[6] https://multimeter-digital.com/cara-mengontrol-kualitas-air.html. diakses tanggal
21 Oktober 2014.
[7] ----------, 2011, Data Sheet, Atmel.
[8] Direktorat Jendral Perikanan Budidaya dan Direktorat Perbebihan., 2006, Petunjuk
Teknis Balai Benih Ikan (BBI), Balai Benih Ikan Sentral (BBIS), Balai Benih
Udang (BBU), Balai Benih Udang Galah (BBUG), dan Balai Benih Ikan Pantai
(BBIP), Direktorat Jendral Perikanan Budidaya, Jakarta.
[9] http://www.mikron123.com/index.php/Tutorial-AVR/Arsitektur-Mikrokontroler-
AVR.html, diakses tanggal 26 Oktober 2014.
[10] http://repository.usu.ac.id/bitstream/123456789/27166/4/Chapter%20II.pdf,
diakses tanggal 26 Oktober 2014.
[11] Heryanto, M. A dan Adi, P. W., 2008, Pemrograman Bahasa C Untuk
Mokrokontroler ATMEGA 8535, ANDI Yogyakarta.
[12] Hendra., Dasar Pemrograman Visual Basic,
http://aldi_tob_2000.staff.gunadarma.ac.id/Downloads/files/15631/Dasar+Pemrogr
aman+Visual+Basic.pdf, diakses Tanggal 25 November 2013.
[13] ----------, 2006, RFM12 Universal ISM Band FSK Transceiver, HOPE
MICROELECTRONICS.
[14] ----------, 2005, USB TTL Data Sheet, avitresearch
[15] Stalling William, 2002, Komunikasi Data dan Jaringan Komputer, Surabaya
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
55
LAMPIRAN
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
LAMPIRAN
PROGRAM UTAMA MIKROKONTROLER
/*****************************************************
This program was produced by the
CodeWizardAVR V2.05.3 Standard
Automatic Program Generator
© Copyright 1998-2011 Pavel Haiduc, HP InfoTech s.r.l.
http://www.hpinfotech.com
Project : PENERIMA RFM12-433S (CENTRAL UNIT)
Version :
Date : 4/28/2015
Author : CHRISTIN KARURU
Company :
Comments:
Chip type : ATmega8535
Program type : Application
AVR Core Clock frequency: 12.000000 MHz
Memory model : Small
External RAM size : 0
Data Stack size : 128
*****************************************************/
#include <mega8535.h> //insialisai mikro
#include <alcd.h> //inisialisai lcd
#include <delay.h> //inisialisai delay
#include <stdio.h> //inisialisai perhitungan matematika
//menentukan port yang digunakan pemancar===============
#define SCK 2 // SPI clock
#define SDO 0 // SPI Data output (RFM12B side) //MOSI
#define SDI 1 // SPI Data input (RFM12B side) //MISO
#define CS 3 // SPI SS (chip select)
#define NIRQ 4
#define HI(x) PORTA |= (1<<(x))
#define LO(x) PORTA &= ~(1<<(x))
#define WAIT_NIRQ_LOW() while(PINA&(1<<NIRQ))
//variabel yang digunakan================================
unsigned int data, z, i, e;
unsigned char data_rf[16], terimadata_rf[70];
eeprom unsigned char frek, kec;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
// Inisialisasi port yang digunakan pemancar
void portInit()
HI(CS);
HI(SDI);
LO(SCK);
PORTA.0=1;
PORTA.4=1;
DDRA = (1<<CS) | (1<<SDI) | (1<<SCK);
DDRD = 0xff;
PORTD=0x00;
//proses SPI
unsigned int writeCmd(unsigned int cmd)
unsigned char i;
unsigned int recv;
recv = 0;
LO(SCK);
LO(CS); //aktifkan modul
for(i=0; i<16; i++)
if(cmd&0x8000) HI(SDI); else LO(SDI); //kalo nilai "cmd=1" maka tidak ada yg akan dikirim
HI(SCK);
recv<<=1; //geser register recv ke kiri 1 kali
if( PINA&(1<<SDO) )
recv|=0x0001;
LO(SCK);
cmd<<=1; //cmd geser ke kiri 1 kali
HI(CS);
Delay_ms(100);
return recv;
//menampilkan kecepatan transfer data pemancar
void tampilkec()
switch(e)
case 1: lcd_putsf("1 kbps"); break;
case 2: lcd_putsf("2 kbps"); break;
case 3: lcd_putsf("5 kbps"); break;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
// menampilkan frekuensi yang digunakan
void tampilfrek()
switch(e)
case 1: lcd_putsf("432 MHz"); break;
case 2: lcd_putsf("435 MHz"); break;
case 3: lcd_putsf("437 MHz"); break;
// menentukan kecepatan transfer data pemancar
void pilihkec()
//kecepatan transfer (1kbps=0xC6AA ; 2kbps=0xC695; 5kbps=0xC688; 10kbps=0xC683;
20kbps=0xC681; 50kbps=0xC606)
switch(kec)
case 1: writeCmd(0xC6AA); break;
case 2: writeCmd(0xC695); break;
case 3: writeCmd(0xC688); break;
// memilih frekuensi yang digunakan
void pilihfrek()
//frequency select (432MHz=0xA320 ; 455MHz=0xA7D0 ; 437MHz=0xAAF0)
switch(frek)
case 1: writeCmd(0xA320); break;
case 2: writeCmd(0xA7D0); break;
case 3: writeCmd(0xAAF0); break;
//inisialisasi pemancar
void rfInit()
pilihfrek();
pilihkec();
writeCmd(0x94A0); //VDI,FAST,134kHz,0dBm,-103dBm
writeCmd(0xC2AC); //AL,!ml,DIG,DQD4
writeCmd(0xCA81); //FIFO8,SYNC,!ff,DR
writeCmd(0xCED4); //SYNC=2DD4•G
writeCmd(0xC483); //@PWR,NO RSTRIC,!st,!fi,OE,EN
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
writeCmd(0x9850); //!mp,90kHz,MAX OUT
writeCmd(0xCC17); //OB1•COB0, LPX,•Iddy•CDDIT•CBW0
writeCmd(0xE000); //NOT USE
writeCmd(0xC800); //NOT USE
writeCmd(0xC040); //1.66MHz,2.2V
// mereset FIFO
void FIFOReset()
writeCmd(0xCA81);
writeCmd(0xCA83);
//menerima data dari pemancar
unsigned char rfRecv()
portInit();
writeCmd(0x80D7); //EL,EF,433band,12.0pF
writeCmd(0x8299); //er,!ebb,ET,ES,EX,!eb,!ew,DC ///////////////////////////////AKTIFKAN
PENERIMA
rfInit();
FIFOReset();
z=0;
while(1&&z<=10000)
data = writeCmd(0x0000);
if ( (data&0x8000) )
data = writeCmd(0xB000);
return (data&0x00FF);
z++;
// inisialisasi pengiriman data ke pemancar
void rfSend(unsigned char data)
WAIT_NIRQ_LOW();
writeCmd(0xB800 + data);
//pengiriman data ke pemancar
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
void kirimdata()
portInit();
writeCmd(0x80D7); //EL,EF,433band,12.0pF
writeCmd(0x8239); //!er,!ebb,ET,ES,EX,!eb,!ew,DC // AKTIFKAN SEBAGAI
PEMANCAR
rfInit();
FIFOReset();
writeCmd(0x0000);
rfSend(0xAA); // 5 DATA AWAL
rfSend(0xAA);
rfSend(0xAA);
rfSend(0x2D);
rfSend(0xD4);
rfSend(data_rf[0]); // DATA YANG DIKIRIM
rfSend(0xAA); // DATA PENUTUP
rfSend(0xAA);
rfSend(0xAA);
delay_ms(10);
void editfrek()
z=0;
lcd_clear();
while (z==0)
if (PINC.0==1) z++; delay_ms(200);
if (PINC.1==1) lcd_clear(); e++; delay_ms(200);
if (e>3) e=1;
lcd_gotoxy(0,0);
lcd_puts("Frekuensi");
lcd_gotoxy(0,1);
tampilfrek();
frek=e;
lcd_clear();
void editkec()
z=0;
lcd_clear();
while (z==0)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
if (PINC.0==1) z++; delay_ms(200);
if (PINC.1==1) lcd_clear(); e++; delay_ms(200);
if (e>3) e=1;
lcd_gotoxy(0,0);
lcd_puts("Baudrate");
lcd_gotoxy(0,1);
tampilkec();
kec=e;
lcd_clear();
void main(void)
DDRC=0x00;
PORTC=0x00;
// USART initialization
// Communication Parameters: 8 Data, 1 Stop, No Parity
// USART Receiver: On
// USART Transmitter: On
// USART Mode: Asynchronous
// USART Baud Rate: 57600
UCSRA=0x00;
UCSRB=0x18;
UCSRC=0x86;
UBRRH=0x00;
UBRRL=0x0C;
lcd_init(16);
lcd_clear();
while (1)
if (PINC.0==1)
delay_ms(400);
editfrek();
if (PINC.1==1)
delay_ms(400);
editkec();
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
//terima data dari pemancar
terimadata_rf[0] = rfRecv();
//panggil reset FIFO
FIFOReset();
if (terimadata_rf[0]=='@')
//mengaktifkan port tx untuk pengiriman ke PC
UCSRB=0x08;
//delay_ms(10);
putchar('@');
//penerimaan paket dan pengiman ke PC
for (i=1; i<47; i++)
terimadata_rf[i] = rfRecv();
FIFOReset();
putchar(terimadata_rf[i]);
// matikan tx dan aktifkan rx
UCSRB=0x10;
lcd_clear();
lcd_gotoxy(0,0);
lcd_puts(terimadata_rf);
//delay_ms(10000);
if(terimadata_rf[0]=='p')
UCSRB=0x08;
//delay_ms(10);
putchar('p');
UCSRB=0x10;
//terima data dari PC
if (UCSRA.7==1)
data_rf[0]=getchar();
kirimdata();
e=frek;
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
lcd_gotoxy(0,0);
lcd_puts("Frek : ");
lcd_gotoxy(7,0);
tampilfrek();
e=kec;
lcd_gotoxy(0,1);
lcd_puts("BAUD : ");
lcd_gotoxy(7,1);
tampilkec();
PROGRAM VISUAL BASIC
Option Explicit
Dim rsData As New ADODB.Recordset
Private X(), X1(), X2(), X3(), X4() As Double
Private NumPoints As Integer
Dim cek, a, b, c, d, e, z, h, i As Byte
Dim USD As String
Dim Data As String
Dim strSql
Private Sub Combo1_Click()
'chart type -->run time.
MSChart1.chartType = Combo1.ListIndex
End Sub
Private Sub tampilgrafik()
Dim strSql
bukaDatabase
Set rsData = New ADODB.Recordset
strSql = "SELECT waktu, Suhu, keasaman, kekeruhan, kandunganoksigen FROM
DataSensor"
rsData.Open strSql, strCon
rsData.MoveLast
NumPoints = rsData.RecordCount
ReDim X(1 To NumPoints, 1 To 5)
rsData.MoveFirst
For a = 1 To NumPoints
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
X(a, 1) = rsData!waktu
X(a, 2) = rsData!Suhu
X(a, 3) = rsData!keasaman
X(a, 4) = rsData!kekeruhan
X(a, 5) = rsData!kandunganoksigen
rsData.MoveNext
Next a
MSChart1.ChartData = X
ReDim X1(1 To NumPoints, 1 To 2)
' Load the data.
rsData.MoveFirst
For b = 1 To NumPoints
X1(b, 1) = rsData!waktu
X1(b, 2) = rsData!Suhu
rsData.MoveNext
Next b
MSChart2.ChartData = X1
ReDim X2(1 To NumPoints, 1 To 2)
' Load the data.
rsData.MoveFirst
For c = 1 To NumPoints
X2(c, 1) = rsData!waktu
X2(c, 2) = rsData!keasaman
rsData.MoveNext
Next c
MSChart3.ChartData = X2
ReDim X3(1 To NumPoints, 1 To 2)
' Load the data.
rsData.MoveFirst
For d = 1 To NumPoints
X3(d, 1) = rsData!waktu
X3(d, 2) = rsData!kekeruhan
rsData.MoveNext
Next d
MSChart4.ChartData = X3
ReDim X3(1 To NumPoints, 1 To 2)
' Load the data.
rsData.MoveFirst
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
For d = 1 To NumPoints
X3(d, 1) = rsData!waktu
X3(d, 2) = rsData!kandunganoksigen
rsData.MoveNext
Next d
MSChart5.ChartData = X3
Set rsData = Nothing
strCon.Errors.Clear
strCon.Close
End Sub
Private Sub hapusdata()
bukaDatabase
Set rsData = New ADODB.Recordset
strSql = "SELECT Suhu, keasaman, kekeruhan, kandunganoksigen,inlet,outlet,pompa,status
FROM DataSensor"
rsData.Open strSql, strCon
rsData.MoveLast
NumPoints = rsData.RecordCount
For a = 1 To NumPoints - 2
Data1.Recordset.MoveFirst
Data1.Recordset.Delete
DBGrid1.Refresh
Next a
h = 2
Timer4.Enabled = True
End Sub
Private Sub Command1_Click()
Call hapusdata
End Sub
Private Sub Form_Load()
'PEMILIHAN COM YANG DIGUNAKAN
Call tampilgrafik
h = NumPoints
'List Combo: chart types
With Combo1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
.AddItem "3D Bar"
.AddItem "2D Bar"
.AddItem "3D Line"
.AddItem "2D LIne"
.AddItem "3D Area"
.AddItem "2D Area"
.AddItem "3D Step"
.AddItem "2D Step"
.AddItem "3D Combination"
.AddItem "2D Combination"
.ListIndex = 3 'default:2D Bar
End With
With Combo4
.AddItem "COM1"
.AddItem "COM2"
.AddItem "COM3"
.AddItem "COM4"
.AddItem "COM5"
.AddItem "COM6"
.AddItem "COM7"
.AddItem "COM8"
.AddItem "COM9"
.AddItem "COM10"
.AddItem "COM11"
End With
End Sub
Private Sub Selesai_Click()
End
End Sub
Private Sub form_activate()
Text2.SetFocus
End Sub
Private Sub Connect_Click()
Dim port As Integer
On Error GoTo errcode
Select Case Combo4.ListIndex
Case -1
port = 1
Case 0
port = 1
Case 1
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
port = 2
Case 2
port = 3
Case 3
port = 4
Case 4
port = 5
Case 5
port = 6
Case 6
port = 7
Case 7
port = 8
Case 8
port = 9
Case 9
port = 10
Case 10
port = 11
End Select
If Comm1.PortOpen = False Then
Comm1.CommPort = port
Comm1.RThreshold = 0
Comm1.InputLen = 0
Comm1.Settings = "57600,N,8,1"
Comm1.PortOpen = True
MsgBox "Port Terhubung!", vbOKOnly, "Peringatan"
Connect.Enabled = False
Do
USD = DoEvents()
Data = Comm1.Input
Text1.Text = Text1.Text + Data
Loop Until Data = Chr$(16)
End If
Exit Sub
errcode:
MsgBox "Port Tidak Terhubung !", vbOKOnly, "Peringatan"
Combo4.SetFocus
End Sub
Private Sub Text1_Change()
If Text1.Text = "p" Then
Comm1.Output = "y"
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Text1.Text = ""
End If
Timer1.Enabled = True
cek = InStr(Text1.Text, "$")
If cek = 47 Then
Text3.Text = Mid$(Text1.Text, 5, 10)
Text7.Text = Mid$(Text1.Text, 16, 5)
Text2.Text = Mid$(Text1.Text, 23, 4)
Text4.Text = Mid$(Text1.Text, 29, 4)
Text5.Text = Mid$(Text1.Text, 35, 4)
Text6.Text = Mid$(Text1.Text, 41, 4)
Text12.Text = Mid$(Text1.Text, 46, 1)
If Text12.Text = "1" Then
Text14.Text = "BUKA"
Text15.Text = "TUTUP"
Text16.Text = "TUTUP"
Text17.Text = "NORMAL"
End If
If Text12.Text = "0" Then
Text14.Text = "TUTUP"
Text15.Text = "BUKA"
Text16.Text = "BUKA"
Text17.Text = "TDK NORMAL"
End If
h = h + 1
'Addnew = untuk membuat atau menambah data baru
Data1.Recordset.AddNew
'perintah untuk menyimpan data yang di inputkan pada textbox ke dalam field database
Data1.Recordset!tanggal = Text3.Text
Data1.Recordset!waktu = Text7.Text
Data1.Recordset!Suhu = Text2.Text
Data1.Recordset!keasaman = Text4.Text
Data1.Recordset!kekeruhan = Text5.Text
Data1.Recordset!kandunganoksigen = Text6.Text
Data1.Recordset!inlet = Text14.Text
Data1.Recordset!outlet = Text15.Text
Data1.Recordset!pompa = Text16.Text
Data1.Recordset!Status = Text17.Text
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
'update = perintah untuk mengupdate data yang telah ditambahkan
Data1.Recordset.Update
'perintah untuk merefresh grid ketika data sudah ditambahkan
DBGrid1.Refresh
'perintah untuk mengkosongkan textbox setelah data disimpan
Comm1.Output = "y"
Text1.Text = ""
Timer1.Enabled = False
i = 0
Timer4.Enabled = True
End If
End Sub
Private Sub Timer1_Timer()
i = Val(i) + 1
If i = 100 Then
Text1.Text = ""
i = 0
Timer1.Enabled = False
End If
End Sub
Private Sub Timer2_Timer()
Label13 = Format(Date, "dd - mmmm - yyyy")
End Sub
Private Sub Timer3_Timer()
Label14 = Time
End Sub
Private Sub Timer4_Timer()
z = z + 1
If z = 5 Then
Call tampilgrafik
z = 1
Timer4.Enabled = False
End If
End Sub
Private Sub Timer5_Timer()
Text13.Text = h
End Sub
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
PROGRAM MODULE
Option Explicit
Global strCon As New ADODB.Connection
Public Sub bukaDatabase()
Dim strString As String
strString = "provider = Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & App.Path & "\DBSensor.mdb;" & _
"Persist Security Info=False; "
Set strCon = New ADODB.Connection
strCon.Open strString
strCon.CursorLocation = adUseClient
End Sub
Rangkaian Minimum Sistem Atmega 8535
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
RANGKAIAN LCD 16 X 2
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Tampilan Pada Visual Basic
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Tampilan Data Tersimpan Dalam Database
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI