Page 1
TUGAS AKHIR
SISTEM KOMUNIKASI
PENGENDALIAN KUALITAS AIR KOLAM IKAN
BERBASIS ATMEGA128
Diajukan Untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Teknik
Program Studi Teknik Elektro
Oleh:
Charles Wilianto
NIM : 105114002
PROGRAM STUDI TEKNIK ELEKTRO
JURUSAN TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2014
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 2
i
TUGAS AKHIR
SISTEM KOMUNIKASI
PENGENDALIAN KUALITAS AIR KOLAM IKAN
BERBASIS ATMEGA128
Diajukan Untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Teknik
Program Studi Teknik Elektro
Oleh:
Charles Wilianto
NIM : 105114002
PROGRAM STUDI TEKNIK ELEKTRO
JURUSAN TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2014
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 3
ii
FINAL PROJECT
COMMUNICATION SYSTEM
FOR CONTROLLING QUALITY OF POND FISH
WATER ATMEGA128-BASED
Presented As Partial Fulfillment Of The Requirements
To Obtain The Sarjana Teknik Degree
In Electrical Engineering Study Program
Oleh:
Charles Wilianto
Nim : 105114002
ELECTRICAL ENGINEERING STUDY PROGRAM
DEPARTMENT OF ELECTRICAL ENGINEERING
FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2014
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 4
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 5
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 6
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, 22 Agustus 2014
Charles Wilianto
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 7
vi
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP
MOTTO :
Hal Terbaik Untuk Memprediksi Masa Depan
Adalah Dengan Menciptakan Sendiri Masa Depan Itu
Dengan Ini Kupersembahkan Karyaku Ini Untuk Tuhan Yang Maha Esa Dan Kepada Kedua Orang Tua
Yang Tidak Pernah Berhenti Membimbingku Disetiap Waktu
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 8
vii
LEMBAR PERNYATAAN PERSETUJUAN
PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN
AKADEMIS
Yang bertanda tangan di bawah ini, saya mahasiswa Universitas Sanata Dharma :
Nama : Charles Wilianto
Nomor Mahasiswa : 105114002
Demi pengembangan ilmu pengetahuan, saya memberikan kepada perpustakaan Universitas
Sanata Dharma karya ilmiah saya yang berjudul :
SISTEM KOMUNIKASI
PENGENDALIAN KUALITAS AIR KOLAM IKAN
BERBASIS ATMEGA128
Berserta perangkat yang diperlukan (bila ada). Dengan demikian saya memberikan kepada
Perpustakaan Universitas Sanata Dharma hak untuk menyimpan, mengalihkan dalam bentuk
media lain, mengelolahnya dalam bentuk pangkalan data, mendistribusikan ssecara terbatas,
dan mempublikasikannya di internet atau media lain untuk kepentingan akademis tanpa perlu
meminta izin dari saya maupun memberikan royalti kepada saya selama tetap mencantumkan
nama saya sebagai penulis.
Demikian pernyataan ini yang saya buat dengan sebenarnya.
Yogyakarta, 22 Agustus 2014
( Charles Wilianto)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 9
viii
INTISARI
Kemajuan teknologi elektronika ini, dunia informatika sekarang telah banyak
memanfaatkan perkembangan elektronika untuk menunjang kegiatan salah satunya dalam
tahap komunikasi antar computer yang semakin berkembang sangat cepat. Sistem komunikasi
dapat dimanfaatkan dalam mengambil, mengumpulkan dan menyiapkan data, hingga
memprosesnya menjadi data yang dikehendaki.
Sistem komunikasi pengendalian kualitas air kolam ikan berbasis ATMega128 terdiri
dari dua subsistem yaitu subsistem hardware dan software. Subsistem hardware berupa
rangkaian pendukung komunikasi serial RS-485 yang menghubungkan semua slave,
sedangkan subsistem software berupa program master, slave PC dan slave sensor. Slave sensor
menyediakan data dalam bentuk data paket, master menggambil dan menggabungkan data
paket dari semua sensor dengan cara bergantian dan mengirimkan semua data paket tersebut
ke slave PC. Slave PC mengubah dan menyimpan data paket menjadi grafik pada visual basic.
Sistem komunikasi pengendalian kualitas air kolam ikan berbasis ATMega128 sudah
berhasil dibuat dan dapat bekerja dengan baik. Visual basic dapat menampilkan grafik dan
menyimpan data, rangkaian komunikasi serial RS-485 dapat bekerja dengan baik dan sistem
pengambilan data dapat bekerja dengan baik dan sesuai dengan perancangan.
Kata kunci : sistem komunikasi, RS-485, visual basic, ATMega128, data paket
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 10
ix
ABSTRACT
Advances in technology, the world of Informatics of Electronics now have many
utilize the development of electronics to support the activities of one of these in the
communication between the computer that is growing very quickly. Communication systems
can be utilized in taking, collecting and preparing the data, until it became a desired data
A communication system for controlling quality of pond fish water ATMega128-based
consists of two subsystems: subsystem hardware and software. A series of supporting
hardware subsystem communication serial RS-485 connecting all the slave, while the
subsystem software as master, slave PC and slave sensors. Slave sensors provide data in the
form of data packets, the master place and combine the data packages from all of the sensors
by means of alternating and sends all the data to the slave PC. Slave PC converting and save
the packet data into a graph in visual basic.
A communication system for controlling quality of pond fish water ATMega128-based
was successfully created and can work well. Visual basic can display graphics and save data,
set the serial communication RS-485 can work well and data capture system can work
properly and in accordance with the design.
Key words: communication system, RS-485, visual basic, ATMega128, data packages.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 11
x
KATA PENGANTAR
Bersyukur dan terima kasih kepada Tuhan Yang Maha Esa atas segala rahmat dan
karunia-Nya sehingga tugas akhir dengan judul “Sistem Komunikasi Pengendalian Kualitas
Air Kolam Ikan Berbasis ATMega128” ini dapat diselesaikan dengan baik.
Selama menulis tugas akhir ini, penulis menyadari bahwa ada begitu banyak pihak
yang telah memberikan bantuan dengan caranya masing-masing, sehingga tugas akhir ini bisa
diselesaikan. Oleh karena itu penulis ingin mengucapkan terima kasih kepada:
1. Kedua orang tua yang tercinta atas doa dan dorongan semangat yang luar biasa 2. Bapak Pius Yozy Meruchayo, ST., MT., selaku dosen pembimbing yang dengan
penuh kesabaran membimbing, memberikan saran dan kritik yang membantu
dalam meyelesaikan tulisan ini. 3. Seluruh dosen teknik elektro dan laboran yang memberikan ilmu dan pengetahuan
kepada penulis selama kuliah 4. Seluruh teman-teman teknik elektro
Dengan rendah hati penulis menyadari bahwa tugas akhir ini masih jauh dari
sempurna, oleh karena itu berbagai kritik dan saran untuk perbaikan tugas akhir ini sangat
diharapkan. Akhir kata, semoga tugas akhir ini dapat bermanfaat bagi semua pihak. Terima
kasih.
Yogyakarta, 22 Agustus 2014
Penulis
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 12
xi
DAFTAR ISI
HALAMAN JUDUL ............................................................................................ i
HALAMAN PERSETUJUAN .......................................................................... iii
HALAMAN PENGESAHAN ............................................................................ iv
PERNYATAAN KEASLIAN KARYA .......................................................... v
HALAMAN PERSEMBAHAN DAN MOTTO HIDUP ........................... vi
LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA
ILMIAH UNTUK KEPENTINGAN AKADEMIS ..................................... vii
INTISARI ............................................................................................................... viii
ABSTRACT ........................................................................................................... ix
KATA PENGANTAR ......................................................................................... x
DAFTAR ISI .......................................................................................................... xi
DAFTAR GAMBAR ............................................................................................ xiv
DAFTAR TABEL ................................................................................................. xvi
BAB I PENDAHULUAN
1.1. Latar Belakang .............................................................................................. 1
1.2. Tujuan dan Manfaat Penelitian ...................................................................... 2
1.3. Batasan Masalah ........................................................................................... 2
1.4. Metodologi Penelitian ................................................................................... 2
BAB II DASAR TEORI
2.1. Kualitas Air Kolam ikan ............................................................................... 4
2.1.1. Temperatur Air .................................................................................... 4
2.1.2. Derajat Keasaman Air (PH) ................................................................. 4
2.1.3. Derajat Kekeruhan ............................................................................... 5
2.1.4. Kandungan Oksigen ............................................................................ 5
2.1.5. Konduktivitas ...................................................................................... 5
2.2. Standart Komunikasi Serial RS-485 .............................................................. 6
2.2.1. Half Duplex RS-485 ............................................................................ 6
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 13
xii
2.2.2. Terminasi ............................................................................................ 7
2.2.3. RS-485 dan Konsep Unit Load ............................................................ 8
2.2.4. Pemberian Tegangan pada Jaringan RS-485 ........................................ 9
2.2.5. Konfigurasi Pin RS-485 ....................................................................... 10
2.3. Module K-125R ............................................................................................ 10
2.4. Komunikasi Serial Mikrokontroler AVR ATMega ......................................... 11
2.5. Catu Daya ...................................................................................................... 12
2.5.1. Filter Kapasitor ................................................................................... 12
2.6. Penampil LCD .............................................................................................. 12
2.7. Mikrokontroler AVR ..................................................................................... 14
2.7.1. Mikrokontroler ATMega 128 .............................................................. 14
2.2.3. Mikrokontroler ATMega 8 .................................................................. 15
2.8. Visual Basic ................................................................................................. 16
2.8.1. Tipe Variabel....................................................................................... 17
2.8.2. Operator pada Visual Basic dan Urutan Operasinya ............................ 17
2.8.3. Operator Like ...................................................................................... 18
2.8.4. Deklarasi Variabel ............................................................................... 18
2.8.5. Mengenal Struktur Kendali .................................................................. 19
2.8.6. Deklarasi Konstanta ............................................................................ 19
2.8.7. Struktur Pengulangan .......................................................................... 20
BAB III PERANCANGAN DAN PEMBUATAN
3.1. Arsitektur Sistem .......................................................................................... 21
3.2. Perancangan Subsistem Hardware ................................................................ 22
3.2.1. Perancangan Regulator Tegangan ........................................................ 22
3.2.2. Perancangan Multidrop Network RS-485 ............................................. 23
3.2.3. Perancangan LCD 16x2 ....................................................................... 24
3.3. Perancangan Subsistem Software .................................................................. 25
3.3.1. Perancangan Diagram Alur Program Master ........................................ 26
3.3.2. Perancangan Diagram Alur Program Slave PC..................................... 30
3.3.3. Perancangan Diagram Alur Program Slave1 (Suhu) ............................. 31
3.3.4. Perancangan Diagram Alur Program Slave2 (PH) ................................ 32
3.3.5. Perancangan Diagram Alur Program slave3 (DO) ................................ 33
3.3.6. Perancangan Diagram Alur Program slave4 (Kekeruhan) .................... 34
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 14
xiii
3.3.7. Perancangan Diagram Alur Program slave5 (Konduktivitas) ............... 35
BAB IV HASIL DAN PEMBAHASAN
4.1. Gambaran Fisik Hardware ............................................................................ 36
4.1.1. Mekanik kotak sistem ........................................................................ 36
4.1.2. Subsistem Elektronik Alat ................................................................. 37
4.2. Pengujian Alat ............................................................................................. 38
4.2.1. Pengujian Rangkaian Catu Daya ........................................................ 38
4.3. Pengujian Software ...................................................................................... 38
4.3.1. Pengujian sistem Mikrokontroler ....................................................... 38
4.3.2. Pengujian Program Pengiriman dan Penerimaan Pada Master ............ 40
4.3.3. Pengujian Panjang Kabel Pada Rangkaian Multidrop Network RS-485 46
4.3.4. Pengujian Program Penggabungan Dan Pengiriman Semua Data Paket 47
4.3.5. Pengujian Program Slave PC (Visual Basic) ...................................... 47
BAB V KESIMPULAN DAN SARAN
5.1. Kesimpulan .................................................................................................. 50
5.2. Saran ............................................................................................................ 50
DAFTAR PUSTAKA ........................................................................................... 51
LAMPIRAN ........................................................................................................... 53
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 15
xiv
DAFTAR GAMBAR
Halaman
Gambar 2.1. Konfigurasi Half-Duplex RS-485 ........................................................ 7
Gambar 2.2. Terminasi Parallel............................................................................... 7
Gambar 2.3. Terminasi AC ..................................................................................... 8
Gambar 2.4. Transceiver Dengan Resistor .............................................................. 9
Gambar 2.5. Konfigurasi Pin RS-485 ...................................................................... 10
Gambar 2.6. Module K-125R .................................................................................. 11
Gambar 2.7. Komunikasi Sinkron Dan Asinkron .................................................... 11
Gambar 2.8. Fisik LCD .......................................................................................... 13
Gambar 2.9. Konfigurasi Pin ATMega 128 ............................................................. 15
Gambar 2.10. Konfigurasi Pin ATMega 8 ................................................................. 16
Gambar 3.1. Arsitektur Umum ................................................................................ 21
Gambar 3.2. Rangkaian Regulator Tegangan .......................................................... 22
Gambar 3.3. Rangkaian Multidrop RS-485 ............................................................. 24
Gambar 3.4. Rangkaian LCD Dan Master............................................................... 25
Gambar 3.5. Perancangan Diagram Alur Program Master ....................................... 27
Gambar 3.6. Diagram Alur Program Master (Lanjutan) .......................................... 28
Gambar 3.7. Diagram Alur Program Master (Lanjutan) .......................................... 29
Gambar 3.8. Perancangan Diagram Alur Program Slave PC .................................... 30
Gambar 3.9. Perancangan Diagram Alur Program Slave1 (Suhu) ............................ 31
Gambar 3.10. Perancangan Diagram Alur Program Slave2 (PH) ............................... 32
Gambar 3.11. Perancangan Diagram Alur Program Slave3 (DO) .............................. 33
Gambar 3.12. Perancangan Diagram Alur Program Slave4 (Kekeruhan) ................... 34
Gambar 3.13. Perancangan Diagram Alur Program Slave5 (Konduktivitas) .............. 35
Gambar 4.1. Tampak Atas ...................................................................................... 36
Gambar 4.2. Tampak Samping Kiri ........................................................................ 36
Gambar 4.3. Tampak Samping Kanan ..................................................................... 37
Gambar 4.4. Tampak Bagian Dalam ....................................................................... 37
Gambar 4.5. Tampilan Ripple Pada Osiloskop ........................................................ 37
Gambar 4.6. Tampilan Osiloskop Setelah Penambahan Kapasitor ........................... 37
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 16
xv
Gambar 4.7. Regulator Tegangan Dan Multidrop RS-485 ....................................... 38
Gambar 4.8. Mikrokontroler Atmega 128 ............................................................... 39
Gambar 4.9. Rangkaian LCD 16 ............................................................................. 39
Gambar 4.10. Tampilan LCD Hello Selamat Datang................................................. 40
Gambar 4.11. Module Komunikasi Serial RS-485 Dengan ATMega 8 ...................... 40
Gambar 4.12. Kirim A .............................................................................................. 41
Gambar 4.13. Terima Data Suhu ............................................................................... 41
Gambar 4.14. Kirim B .............................................................................................. 42
Gambar 4.15. Terima Data PH .................................................................................. 42
Gambar 4.16. Kirim C .............................................................................................. 43
Gambar 4.17. Terima Data DO ................................................................................. 43
Gambar 4.18. Kirim D .............................................................................................. 44
Gambar 4.19. Terima Data Kekeruhan ...................................................................... 44
Gambar 4.20. Kirim E .............................................................................................. 45
Gambar 4.21. Terima Data Konduktivitas ................................................................. 45
Gambar 4.22. Kondisi Awal Penampilan Data Terima Pada Master .......................... 46
Gambar 4.23. Penggabungan Data Paket .................................................................. 47
Gambar 4.24. Kondisi Awal Pengabungan Data Paket .............................................. 47
Gambar 4.25. Module K-125R .................................................................................. 47
Gambar 4.26. Tampilan Pada Visual Basic 6.0 .......................................................... 48
Gambar 4.27. Tampilan Error Pada Visual Basic6.0 ................................................. 48
Gambar 4.28. Lokasi Penyimpanan Data .................................................................. 49
Gambar 4.29. Data Yang Berhasil Disimpan Pada Notpad ........................................ 49
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 17
xvi
DAFTAR TABEL
Halaman
Tabel 2.1. Diskripsi Pin RS-485 .............................................................................. 10
Tabel 2.2. Konfigurasi Pin LCD M1632 .................................................................. 13
Tabel 2.3. Tipe variabel, pemakaian storage dan jangkauan masing-masing ............ 17
Tabel 2.4. Operator pada Visual Basic dan urutan operasi dari atas ke bawah .......... 18
Tabel 2.5. Karakter Dalam Pencocokan Pola Pada Operator Like ............................ 18
Tabel 4.1. Contoh Data Suhu ................................................................................... 41
Tabel 4.2. Contoh Data PH ...................................................................................... 42
Tabel 4.3. Contoh Data DO ..................................................................................... 43
Tabel 4.4. Contoh Data Kekeruhan .......................................................................... 44
Tabel 4.5. Contoh Data Konduktivitas ..................................................................... 45
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 18
1
BAB I
PENDAHULUAN
1.1. Latar Belakang
Kemajuan-kemajuan dalam bidang teknologi elektronika yang menuju ke arah
sistem digital serta rangkaian terpadu telah mendorong terciptanya komponen IC-IC
yang semakin cepat dengan kemampuan proses yang tinggi dan akurat serta bentuk
yang semakin kecil, tetapi dengan kemampuan yang lebih besar[1]. Dengan kemajuan
teknologi elektronika ini, dunia informatika sekarang telah banyak memanfaatkan
perkembangan elektronika untuk menunjang kegiatan salah satunya dalam tahap
komunikasi antar computer yang semakin berkembang sangat cepat[1] .
Komunikasi serial banyak sekali digunakan komputer ataupun mikrokontroler
dengan menggunakan sistem RS-232 dan RS-485. Komunikasi serial dengan sistem
RS-232 hanya dapat berhubungan dengan satu komunikasi serial, sedangkan
komunikasi serial dengan sistem RS-485 dapat berhubungan dengan beberapa
komunikasi serial. Sistem komunikasi dapat dimanfaatkan dalam mengambil,
mengumpulkan dan menyiapkan data, hingga memprosesnya menjadi data yang
dikehendaki. Sistem komunikasi ini digunakan untuk memonitoring kualitas air kolam
ikan, sistem akuisisi data ini terdiri dari sensor (yang mengubah besaran fisik menjadi
besaran listrik) dan sistem mikrokontroler yang mengolah besaran listrik menjadi
kuantitas yang terukur yang berbentuk data digital yang siap diolah atau dianalisis[2].
Berdasarkan hal di atas, penulis ingin membuat suatu sistem komunikasi serial
untuk pengendalian kualitas air, khususnya pada kolam ikan. Sistem ini menggunakan
software visual basic pada komputer, mikrokontroler dan sistem multidrop network
pada RS-485. Sistem ini dikembangkan dari sistem yang telah ada sebelumnya, yakni
akuisisi data pengawasan kualitas air sungai untuk perikanan[3].
Sistem yang dibuat menggunakan mikrokontroler dengan komunikasi USART
(universal synchronous asynchronous receiver / transmitter), sistem komunikasi ini,
memiliki beberapa sistem alat ukur yaitu PH, kekeruhan, DO (Dissolved Oxygen),
temperatur dan konduktivitas. Alat ukur PH, kekeruhan, DO (Dissolved Oxygen),
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 19
2
temperatur dan konduktivitas yang telah dilengkapi dengan mikrokontroler.
Mikrokontroler pada alat ukur tersebut, melakukan pengolahan data sesuai dengan
interupsi. Dalam melakukan pengukuran kadar air pada kolam ikan dan mengirimkan
data hasil dari pengukuran kadar air melalui komunikasi serial antar mikrokontroler
dan mikrokontroler ke PC (Personal Computer).
1.2. Tujuan dan Manfaat Penelitian
Tujuan penelitian ini adalah menghasilkan suatu sistem komunikasi yang dapat
mengolah data menjadi data grafik dan ditampilkan ke PC (Personal Computer) untuk
mempermudah monitoring kualitas air kolam ikan.
Manfaat dari penelitian ini adalah untuk mendukung pembudidayakan ikan,
dengan air yang memiliki kualitas yang baik dan dapat menjamin keselamatan ikan.
1.3. Batasan Masalah
Batasan masalah dalam penelitian ini adalah :
a. Menampilkan data dalam LCD 16x2
b. Data yang ditampilkan dalam LCD 16x2 maksimal sebanyak lima karakter
setiap slave
c. Menggunakan mikrokontroler keluarga AVR ATMega128
d. Menggunakan sistem multidrop network yang terdapat pada RS-485
e. Menggunakan module K-125R untuk menghubungkan PC (Personal
Computer) dengan mikrokontroler.
f. Menampilkan data dalam bentuk grafik pada visual basic
g. Menggunakan komunikasi serial untuk melakukan pengumpulan,
pengiriman dan penerimaan data.
h. Proses pengambilan semua data slave secara bergantian
1.4. Metodologi Penelitian
Penulisan skripsi ini menggunakan metode :
a. Pengumpulan bahan-bahan referensi berupa buku-buku dan jurnal-jurnal.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 20
3
b. Perancangan subsistem hardware dan software. Tahap ini bertujuan untuk
mencari bentuk model yang optimal dari sistem yang dibuat dengan
mempertimbangkan dari berbagai faktor-faktor permasalahan dan
kebutuhan yang telah ditentukan.
c. Pembuatan subsistem hardware dan software. Rangkaian bekerja apabila
mikrokontroler (slave) mengirimkan data melalui RS-485 sebagai
komunikasi serial ke mikrokontroler (master). Mikrokontroler (master)
menampilkan data dari mikrokontroler (slave) menggunakan LCD 16x2 dan
mengirimkan data dari mikrokontroler (slave) ke PC. PC mengolah data
dari mikrokontroler (master) sesuai dengan urutan yang telah ditentukan.
Pengolahan data oleh PC menggunakan software VB (visual basic).
d. Proses pengambilan data. Teknik pengambilan data dilakukan oleh
mikrokontroler (master) dengan cara mengirimkan perintah ke semua
mikrokontroler (slave). Mikrokontroler (slave) yang ditunjuk oleh
mikrokontroler (master) menerima perintah untuk mengirimkan data dari
sensor mikrokontroler (slave) tersebut. Setelah data yang diminta
mikrokontroler (master) diterima, maka mikrokontroler (master)
mengirimkan data tersebut ke PC. Data yang ditampilkan oleh PC
merupakan informasi kualitas air kolam.
e. Analisa dan penyimpulkan hasil percobaan. Analisa data dilakukan dengan
mengecek semua data yang dikirim mikrokontroler dapat diterima oleh PC
(Personal Computer), dari data yang diterima oleh PC (Personal Computer)
dapat dibuat dalam bentuk grafik.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 21
4
BAB II
DASAR TEORI
2.1. Kualitas Air Kolam Ikan
Faktor lingkungan seperti air, temperatur, derajat keasaman (pH), kandungan oksigen
(DO), dan lain-lain sangat diperlukan untuk biota air tawar (ikan, plankton, ganggang,
zooplankton, dll). Kesesuaian lingkungan hidup untuk setiap ikan berbeda tergantung pada
jenis ikan, jenis ikan tertentu yang sesuai dengan kondisi lingkungannya dapat bertumbuh dan
berkembang[4]. Sebaliknya, jika keadaan tidak sesuai dapat menghambat pertumbuhan dan
perkembangannya.
2.1.1. Temperatur Air[4]
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. Temperatur yang cocok untuk
pertumbuhan ikan adalah berkisar antara 15ºC - 30ºC dan perbedaan suhu antara siang dan
malam kurang dari 5ºC. Perubahan suhu yang mendadak berpengaruh buruk pada kehidupan
ikan karena ikan tidak dapat hidup dengan baik pada suhu yang telalu dingin atau terlalu
panas.
2.1.2. Derajat Keasaman Air (pH)
Derajat keasaman (pH) air dapat berpengaruh terhadap pertumbuhan ikan. Derajat
keasaman air yang sangat rendah atau sangat asam dapat menyebabkan kematian ikan dengan
gejala gerakannya tidak teratur, tutup insang bergerak sangat aktif, dan berenang sangat cepat
pada permukaan air. Keadaan air yang sangat basa juga dapat menyebabkan pertumbuhan ikan
terhambat. Kisaran derajat keasaman air cocok untuk budidaya ikan gurami adalah 6,5 – 8,0
dan untuk ikan nila 7 – 8. Namun, ikan nila masih dapat hidup pada pH air antara 5 – 11[4].
Sedangkan pH air yang cocok untuk ikan mas berkisar 7,5 – 8,5. Perairan yang asam juga
sangat berpengaruh terhadap nafsu makan ikan (selera makan menjadi berkurang).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 22
5
2.1.3. Derajat Kekeruhan
Air yang terlalu keruh dapat menyebabkan ikan mengalami gangguan pernafasan (sulit
bernafas) karena insangnya terganggu oleh kotoran. Di samping itu juga air keruh dapat
menurunkan atau dapat melenyapkan selera makan karena daya penglihatan ikan terganggu.
Batas kekeruhan dapat diukur dengan memasukan benda yang terang (berwarna putih) sampai
kedalaman 40cm[4]. Jika masih kelihatan, maka kekeruhan air masih belum mengganggu
kehidupan ikan.
Satuan yang biasa dipakai dalam kekeruhan ialah NTU (Nephelometric Turbidity
Units). Kekeruahan juga sering diGambarkan dengan dalam satuan TSS (Total Suspended
Solids) atau mg/l (miligram per liter). Air murni memiliki NTU kurang dari 1 atau 0 mg/l[5].
Standart kekeruhan air yang baik bagi ikan harus kurang dari 500 NTU[5], bila kekeruhan
berada di atas 500 NTU dapat mengganggu pertumbuhan ikan.
2.1.4. Kandungan Oksigen
Oksigen sangat diperlukan untuk pernapasan dan metabolisme ikan serta jasad – jasad
renik dalam air. Kandungan oksigen yang tidak mencukupi kebutuhan ikan dan biota lainya
dapat menyebabkan penurunan daya hidup ikan. Kandungan oksigen terlarut dalam air cocok
untuk kehidupan dan pertumbuhan ikan gurami sebesar 5ppm, untuk ikan nila lebih dari
3ppm, dan ikan mas berkisar 5 – 7ppm (5 – 7cc /liter air)[4]. Pengaliran air yang baik dan
permukaan kolam yang selalu terbuka dapat meningkatkan kadar oksigen dalam air.
2.1.5. Konduktivitas
Nilai konduktivitas merupakan ukuran terhadap konsentrasi total elektrolit di dalam
air. Kandungan elektrolit yang pada prinsipnya merupakan garam-garam yang terlarut dalam
air, berkaitan dengan kemampuan air didalam menghantarkan arus listrik. Standar
konduktivitas yang baik bagi ikan ialah kurang dari 5000µS/cm dengan suhu 25ºC[6]. Bila
konduktivitas berada diatas 5000µS/cm maka akan mengganggu kehidupan ikan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 23
6
2.2. Standart Komunikasi Serial RS-485[1]
IC RS485 adalah IC yang digunakan untuk teknik komunikasi data serial. Sistem
komunikasi dengan menggunakan RS485 mulai dikembangkan pada tahun 1983 dimana
dengan teknik ini, komunikasi data dapat dilakukan pada jarak yang cukup jauh yaitu 1,2 Km.
Selain dapat digunakan untuk jarak yang jauh teknik ini juga dapat digunakan untuk
menghubungkan 32 unit beban sekaligus hanya dengan menggunakan dua buah kabel saja
tanpa memerlukan referensi ground yang sama antara unit yang satu dengan unit lainnya.
RS-485 merupakan standar komunikasi serial yang bersifat multidrop/multi-point.
Dalam sistem multi-point ini transfer data dapat dilakukan dari satu transmitter ke beberapa
receiver sekaligus, atau dengan kata lain membentuk suatu jaringan komputer. Dalam RS- 485
terdapat sebuah transmitter (disebut juga driver) dan sebuah receiver.
Keistimewaan RS-485 ini antara lain terletak pada transmisi diferensialnya (sering
disebut juga sebagai balanced transmission). Dalam transmisi diferensial ini level tegangan
TTL diterjemahkan menjadi selisih tegangan antara output A dan B. Dengan demikian efek
dari noise dapat diminimalkan, karena interferensi noise akan terjadi sekaligus pada jalur
output (A) dan jalur complementary output (B) sehingga selisih tegangan antara output A dan
B tetap.
2.2.1. Half-Duplex RS-485[7]
Jaringan half-duplex RS-485 memiliki beberapa transmitter dan receiver pada jalur
sinyal yang sama. Proses pengiriman data pada RS-485 dapat terjadi apabila salah satu dari
transmitter / receiver diaktifkan. Gambar 2.1 merupakan konfigurasi half-duplex bus.
Konfigurasi ini juga dikenal sebagai jaringan dua kawat. RS-485 termasuk dalam konfigurasi
multipoint dan memungkinkan untuk transmisi data dalam dua arah dengan cara bergantian.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 24
7
Gambar 2.1. Konfigurasi Half-Duplex RS-485
2.2.2. Terminasi[7]
Dalam saluran transmisi memiliki dua kabel. Kabel yang pertama berguna untuk
transmitter dan kabel yang kedua berguna untuk receiver. RS-485 merupakan penghubung
yang sedikit lebih rumit dalam komunikasi serial karena RS-485 memiliki dua kabel sinyal
yang berbagi terminasi serta jalur kembali ke ground.
a. Terminasi Paralel
Ketika dua atau lebih transmitter berbagi sepasang kabel, setiap akhir link memiliki
resistor terminasi yang sama dengan impedansi karakteristik kabel dan tidak boleh ada dua
resistor dalam mengakhiri jaringan terlepas dari berapa banyak node yang terhubung[7].
Penambahan resistor yang dipasang paralel antara terminal A dan B ditunjukkan pada Gambar
2.2. terminasi paralel.
Gambar 2.2. Terminasi Paralel
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 25
8
b. Terminasi AC
Terminasi AC digunakan untuk mengurangi konsumsi daya link menganggur serta
mengurangi tegangan dering. Meskipun efek negatifnya adalah pengurangan panjang kabel dan
bit rate[7]. Sebuah resistor dan kapasitor dapat ditempatkan secara seri di bus (antara A dan B)
seperti yang ditunjukkan pada Gambar 2.3. terminasi AC dipilih dengan menggunakan rumus
berikut:
𝐶𝑡(𝑝𝐹) >2 (𝑠𝑢𝑎𝑡𝑢 𝑝𝑒𝑛𝑢𝑛𝑑𝑎𝑎𝑛 𝑘𝑎𝑏𝑒𝑙 (𝑃𝑠))
𝑘𝑎𝑟𝑎𝑘𝑡𝑒𝑟𝑖𝑠𝑖𝑘 𝑖𝑚𝑝𝑒𝑑𝑎𝑛𝑠𝑖 (Ω)……………………………………………...(2.1)
Gambar 2.3. Terminasi AC
2.2.3. RS-485 dan Konsep Unit Load[7]
Pemberian input impedansi RS-485 ditetapkan sebesar ±12 kΩ. Impedansi ini
didefinisikan untuk satu unit load (UL). Spesifikasi RS-485 memiliki kemampuan untuk
mempertahankan 32 ULS.
Sebuah sistem RS-485 memiliki driver yang dapat terputus dari saluran transmisi
ketika sebuah node tertentu tidak melakukan transmisi. DE (RTS) pin pada RS-485 digunakan
untuk mengontrol pengiriman data ketika DE (DE = 1) atau berlogika high. Ketika DE (DE =
0) atau berlogika low maka pengiriman berada pada kondisi tristate. Dengan adanya
pemutusan pengiriman memungkinkan node lain untuk melakukan pengirimaan melalui dua
kabel yang sama.
RS-485 transceiver juga memiliki pin RE yang digunakan untuk menonaktifkan
penerima. Kombinasi DE dan pin RE memungkinkan beberapa RS-485 transceiver mampu
dimasukkan ke dalam mode shutdown daya rendah. Hal ini penting untuk aplikasi bertenaga
baterai.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 26
9
2.2.4. Pemberian Tegangan pada Jaringan RS-485[8]
Dalam komunikasi serial multidrop pada RS-485 memerlukan hambatan pada setiap
node yang terhubung dengan jaringan multidrop tersebut. Tujuannya adalah untuk
mempertahankan tegangan jaringan data dalam keadaan kosong idle (no data being
transmitted) maka perlu dipasang resistor yang dirangkai pullup dengan saluran data A
terhadap VCC (umumnya bernilai +5 Volt) dan resistor pulldown pada saluran B terhadap
ground. Gambar 2.4. memperlihatkan rangkaian transceiver dengan resistor.
Gambar 2.4. Transceiver Dengan Resistor.
Bias resistor dapat ditempatkan di manapun dalam jaringan, atau dapat dibagi menjadi
beberapa node. Sebenarnya hambatan bias merupakan kombinasi paralel dari semua resistor
bias dalam sistem. Resistans paralel setara dihitung dengan menggunakan rumus:
Untuk dua resistor:
𝑅𝑡 =(𝑅1 𝑥 𝑅2)
(𝑅1+𝑅2) ..................................................................................................... (2.1)
Untuk resistor lebih dari dua:
1
𝑅𝑡=
1
𝑅1+
1
𝑅2+
1
𝑅3+ ⋯ +
1
𝑅𝑛 ............................................................................... (2.2)
2.2.5. Konfigurasi Pin RS-485
RS-485 memiliki beberapa pin dengan fungsi yang berbeda-beda. Gambar 2.5.
menunjukkan tata letak pin pada IC RS-485, sedangkan Tabel 2.1. menjelaskan cara
penggunaan pin IC RS-485 tesebut.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 27
10
Gambar 2.5. Konfigurasi Pin RS-485[9].
Tabel 2.1. Diskripsi Pin RS-485[9].
Pin Symbol Function
1 RO Receiver Output
2 RE Receiver Output Enable
3 DE Drive Output Enable
4 DI Drive Input
5 GND Ground
6 A Non-Inverting Receiver Input and Non-Inverting Driver Output
7 B Inverting Receiver Input and Inverting Drive Output
8 Vcc Supply Volltage
2.3. Module K-125R
Module K-125R memiliki Spesifikasi:
a. Format file yang didukunng adalah *.hex
b. Target In system Programmer (ISP)
c. Kompatibel dengan Windows XP, Windows Vista dan Windows 7
d. Didukung oleh software CodeVision AVR Evaluasi, AVR OSP II dan AVR
Studio4
e. Tidak membutuhkan catu daya tambahan dari luar
f. Terdapat selector jumper untuk power board mikrokontroler AVR jika
membutuhkan power dari USB untuk mendownload.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 28
11
Gambar 2.6. Module K-125R
2.4. Komunikasi Serial Mikrokontroler AVR ATMega[10]
Dalam komunikasi serial dikenal 2 cara pengiriman yaitu secara sinkron dan asinkron.
Pada transmisi data secara sinkron, sinyal clock diperlukan oleh penerima data untuk
mengetahui adanya pengiriman setiap bit data. Data akan dikirim dan diterima dengan
kecepatan yang sama. Sedangkan pada transmisi data secara sinkron tidak memerlukan sinyal
clock sebagai sinkronisasi, namun pengiriman data harus diawali dengan start bit dan diakhiri
dengan stop bit. Jadi data bisa dikirimkan kapan saja. Penerima hanya perlu mendeteksi
adanya start bit sebagai awal pengiriman data, dan menunggu adanya stop bit sebagai tanda
bahwa data telah dikirim.
Gambar 2.7. Komunikasi Sinkron Dan Asinkron
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 29
12
2.5. Catu Daya[10]
Catu daya merupakan suatu rangkaian yang paling penting bagi sistem elektronika.
Rangkaian catu daya DC dapat diperoleh dari penyearahan tegangan AC yang disusun dari
transformator, penyearah, dan regulator tegangan.
Tegangan AC dari jala-jala PLN diturunkan nilainya oleh transformator step down dan
kemudian disearahkan dengan dioda bridge. Keluaran dari dioda bridge diratakan dengan
rangkaian filter untuk memperkecil tegangan ripple. Kemudian digunakan regulator untuk
menstabilkan tegangan yang keluar.
2.5.1. Filter Kapasitor
Filter dalam rangkaian penyearah digunakan untuk memperkecil tegangan ripple,
sehingga dapat diperoleh tegangan keluaran yang lebih rata, dengan memanfaatkan proses
pengisian dan pengosongan muatan kapasitor [11]. Harga kapasitansi kapasitor ditentukan
dengan persamaan berikut :
Vr rms =Vr (p−p)
2 3=
IDc
4 3×f ×C………………………………………………………(2.3)
Vr p − p = Vm − VDCmin……………………..…………………………………(2.4)
Dengan IDC adalah arus maksimal penyearah (ampere), C adalah kapasitor yang
digunakan sebagai filter (Farad). VM adalah tegangan arus bolak balik, Vr(PP) tegangan ripple
puncak ke puncak dan Vr(rms) adalah tegangan ripple efektif. VDC MIN adalah tegangan minimal
yang dibutuhkan oleh IC regulator.
2.6. Penampil LCD
LCD (liquid cell display) merupakan salah satu alat komponen elektronika yang
berfungsi untuk menampilkan data berupa karakter[12]. LCD yang digunakan adalah tipe
M1632 yang ditunjukkan pada Gambar 2.8.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 30
13
Gambar 2.8. Fisik LCD
LCD tipe ini memiliki 2 baris dimana masing-masing baris memuat 16 karakter. Selain
sangat mudah dioperasikan, kebutuhan daya LCD ini sangat rendah[12]. Konfigurasi pin LCD
M1632 dapat dilihat pada Tabel 2.2.
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 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 TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 31
14
2.7. Mirokontroler AVR
Mikrokontroler merupakan suatu alat elektronika digital yang mempunyai kemampuan
untuk mengendalikan masukan dan keluaran alat elektronika digital lainnya dengan
mengunakan program. Mikrokontroler AVR memiliiki arsitektur RISC (reduced instruction
set computing) 8 bit, semua instruksi dalam 1 siklus clock. Mikrokontroler AVR
dikelompokkan menjadi 4 kelas, yaitu keluarga ATtiny, keluarga AT90Sxx, keluarga ATMega
dan keluarga AT86RFxx. Pada dasarnya, yang membedakan masing-masing kelas adalah
memori, peripheral dan fungsinya[10]. Untuk mengetahui tingkat keberhasilan pengiriman
dan penerimaan pada komunikasi serial mikrokontroler maka digunakan persamaan 2.5.
Tingkat keberhasilan =jumlah data yang diterima /dikirim
banyaknya datax100%...............................(2.5)
Dalam penelitian ini, penulis akan menggunakan mikrokontroler ATMega128 dan
ATMega8.
2.7.1. Mikrokontroler ATMega128[12]
Mirokontroler ATMega128 ini dipilih karena memiliki dua komunikasi USART
(Universal Synchronous and Asynchronous Serial Receiver and Transmitter) dan memiliki
memori yang cukup besar. Konfigurasi pin IC ATMega128 dapat dilihat pada Gambar 2.9.
Fungsi pin pada mikrokontroler ATMega128 adalah:
a. Pin 21 dan 52, berfungsi sebagai pin masukan catu daya / VCC
b. Pin 22, 53 dan 63, berfungsi sebagai ground
c. Pin 20, berfungsi sebagai reset mikrokontroler.
d. Pin 62, AREF merupakan pin masukan tegangan referensi ADC
e. Pin 64, AVCC merupakan pin masukan tegangan untuk ADC
f. Pin 1, PEN merupakan pin SPI (Serial Programming mode)
g. Pin 23 (XTAL 2) adalah pin masukkan ke rangkaian osilator internal. Sebuah
osilator kristal atau sumber osilator luar dapat digunakan.
h. Pin 24 (XTAL 1) adalah pin keluaran ke rangkaian osilator internal. Pin ini dipakai
bila menggunakan osilator kristal.
i. Pin 44 sampai 51 adalah Port A yang berfungsi sebagai I/O (bi-directional) dan
AD
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 32
15
j. Pin 10 sampai 17 adalah Port B yang berfungsi sebagai I/O (bi-directional),
timer/counter, komparator analog, SPI dan PWM
k. Pin 35 sampai 42 adalah Port C yang berfungsi sebagai I/O (bi-directional).
l. Pin 25 sampai 32 adalah Port D yang berfungsi sebagai I/O (bi-directional),
interupsi eksternal, komunikasi serial, timer/counter dan TWI
m. Pin 2 sampai 9 adalah Port E yang berfungsi sebagai I/O (bi-directional), PWM,
interupsi eksternal, komunikasi serial, timer/counter dan komparator analog
n. Pin 61 sampai 54 adalah Port F yang berfungsi sebagai I/O (bi-directional) dan
ADC
o. Pin 34, 33, 43, 19 dan 18 adalah Port G yang berfungsi sebagai I/O (bi-directional),
timer oscillator, ALE, RD dan WR
Gambar 2.9. Konfigurasi Pin ATMega128.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 33
16
2.7.2. Mikrokontroler ATMega8[14]
Mikrokontroler ATMega8 ini dipilih karena memiliki komunikasi USART (Universal
Synchronous and Asynchronous Serial Receiver and Transmitter) dan memiliki memori yang
cukup besar. Konfigurasi pin IC ATMega8 dapat dilihat pada Gambar 2.10. Fungsi pin pada
mikrokontroler ATMega8 adalah:
a. Pin 7 berfungsi sebagai pin masukan catu daya / VCC
b. Pin 8 dan 22 berfungsi sebagai ground
c. Pin 9 dan 10 adalah pin keluaran ke rangkaian osilator internal. Pin ini dipakai bila
menggunakan osilator kristal.
p. Pin 21 AREF merupakan pin masukan tegangan referensi ADC
q. Pin 20 AVCC merupakan pin masukan tegangan untuk ADC
r. Pin 1 berfungsi sebagai reset mikrokontroler.
d. Pin 14 sampai 19, Port B yang berfungsi sebagai I/O (bi-directional),
timer/counter, komparator analog dan SPI.
e. Pin 23 sampai 28, Port C yang berfungsi sebagai I/O (bi-directional) dan ADC
f. Pin 2 sampai 13 adalah Port D yang berfungsi sebagai I/O (bi-directional),
interupsi eksternal, komunikasi serial dan timer/counter
Gambar 2.10. Konfigurasi Pin ATMega8
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 34
17
2.8. Visual Basic[15]
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.8.1. Tipe Variabel[15]
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.
Tabel 2.3. Tipe variabel, pemakaian storage dan jangkauan masing-masing
2.8.2. Operator pada Visual Basic dan Urutan Operasinya[15]
Visual basic meyediakan operator aritmatika, komparasi dan logika, salah satu hal
yang harus dipahami oleh programmer adalah tata urutan operasi dari masing-masing operator
Type Data Ukuran Storage Jangkuan
Byte 1 byte 0 s/d 255
Boolean 2 byte True atau False
Integer 2 byte -32,768 s/d 32767
Long 4 byte -2,147,483,648 s/d 2,147,483,647
-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,950,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
Single 4 byte
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 35
18
tersebut sehingga mampu membuat ekspresi yang akan menghasilkan nilai yang benar, Tabel
2.4. menunjukkan operator dan urutan operasinya dari atas kebawah.
Tabel 2.4. Operator pada Visual Basic dan urutan operasi dari atas ke bawah
2.8.3. Operator Like[15]
Salah satu operator yang menarik untuk dibahas adalah operator like, karena operator
ini tidak tersedia pada bahasa BASIC. Operator digunakan untuk operasi pencocokan pola
pada string yang akan sangat membantu programmer. Table 2.5.menunjukan karakter dalam
pencocokan pola pada operator like.
Tabel 2.5. Karakter Dalam Pencocokan Pola Pada Operator Like
2.8.4. Deklarasi Variabel[15]
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.
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
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
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 36
19
2.8.5. Mengenal Struktur Kendali[15]
Struktur kendali memungkinkan anda untuk mengatur jalannya program anda, Jika
membiarkan tanpa di periksa oleh statement control-flow, suatu logika program akan 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 False sebagai 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.8.6. Deklarasi Konstanta[15]
Dalam hal ini anda dapat membuat code anda menjadi lebih mudah dibaca-lebih
mudah ditangani-dengan menggunakan suatu konstanta. 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).
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 37
20
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
e. Membuat suatu konstanta berlaku pada semua aplikasi, deklarasikan dia dengan
keyword Public sebelum kata Const.
2.8.7. Struktur Pengulangan[15]
Struktur loop memperbolehkan anda untuk melaksanakan sekelompok baris lebih dari
satu kali:
a. Do…Loop
Ketika Visual menjalankan Do loop ini, pertama kali akan di coba kondisinya, jika
kondisi False (zero), 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.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 38
21
BAB III
PERANCANGAN DAN PEMBUATAN
3.1. Arsitektur Sistem
Sistem ini terdiri dari dua subsistem, yaitu subsistem hardware (mikrokontroler, LCD
16x2, multidrop network RS-485, module K-125R, regulator voltage dan personal computer)
dan subsistem software (PC). Arsitektur umum sistem ini ditunjukkan pada Gambar 3.1.
Gambar 3.1. Arsitektur Umum
Sistem ini berkerja apabila mikrokontroler (master) mengirimkan perintah kepada
mikrokontroler (slave) yang ingin diambil datanya, mikrokontroler (slave) yang ditunjuk
mikrokontroler (master) mengirimkan data yang diminta oleh mikrokontroler (master). Dalam
proses pengiriman dan penerimaan data mikrokontroler (slave) dan mikrokontroler (master)
menggunakan multidrop network RS-485. Data yang telah diterima oleh mikrokontroler
(master) ditampilkan ke dalam LCD 16x2 yang berguna untuk memonitoring data dari
mikrokontroler (slave), mikrokontroler (master) juga mengirimkan hasil pengumpulan data
yang terima dari berbagai mikrokontroler (slave) ke PC (personal computer). Dalam proses
pengiriman data dari mikrokontroler (master) ke PC mengunakan module K-125R. Module K-
125R mampu berkomunikasi dengan PC sehingga user dapat dengan mudah memonitoring
kualitas air kolam ikan.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 39
22
3.2. Perancangan Subsistem Hardware
3.2.1. Perancangan Regulator Tegangan
Sistem ini harus beroperasi terus, karena sistem ini berfungsi untuk mengumpulkan
data yang di monitoring oleh user. Sistem ini membutuhkan sebuah regulator tegangan untuk
menyesuaikan tegangan sumber listrik dengan mikrokontroler, LCD 16x2, multidrop network
RS-485 yaitu sebesar 5V. Rangkaian regulator tegangan dapat dilihat pada Gambar 3.2.
Gambar 3.2. Rangkaian Regulator Tegangan
Gambar 3.2. merupakan rangkaian regulator tegangan yang menggunakan komponen
7805 yang dapat meregulasi tegangan output. Berdasarkan datasheet, komponen 7805
memiliki arus output atau Io sebesar 500mA. Nilai kapasitor C2 dan C3 sesuai dengan
datasheet 7805 agar tegangan output lebih stabil. Perhitungan nilai kapasitor C1 untuk
penyearah 5VDC, dilakukan seperti persamaan 2.4 dengan nilai tegangan output trafo diketahui
sebesar 12VAC (VM), arus maksimal yang diinginkan sebesar 1A dan tegangan input minimal
IC regulator sebesar 7,5VDC (VMIN), sehingga diperoleh nilai minimal kapasitor C1 sebagai
berikut :
Vm = 12 2 − 1,4 = 15,57V
Vr = Vm − Vmin = 15,57 − 7,5 = 8.07V
Vr rms =Vr p − p
2 3= 2,3296V
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 40
23
Vr rms =IDC
4 3 × C1 × f
2,3296 =1
4 3 × 50 × C1
C1 =1
4 3 × 50 × 2,3296
C1=1,2391 x10-3 F
C1=1239 uF
Pada perhitungan nilai minimal C1 diperoleh sebesar 1239µF, nilai tersebut tidak
terdapat di pasaran sehingga digunakan nilai kapasitor C1 sebesar 2200µF yang mendekati
nilai perhitungan dan terdapat di pasaran. Pemilihan nilai C1 sebesar 2200µF berdampak
memperkecil ripple.
3.2.2. Perancangan Multidrop Network RS-485
Perancanganan multidrop ini mengunakan enam IC RS-485 yang saling terhubung
secara paralel, Seperti yang telah diketahui bahwa impedansi dari RS-485 adalah ± 12 kΩ.
untuk menghitung besarnya resistor yang dipakai pada rangkaian multidrop network RS-485
dapat menggunakan persamaan 2.2.
1
𝑅𝑇=
1
12𝑘+
1
12𝑘+
1
12𝑘+
1
12𝑘+
1
12𝑘+
1
12𝑘
𝑅𝑇 =12𝑘
6
𝑅𝑇 = 2𝑘
Menggunakan resistor 120 Ω untuk terminasi paralel dan Resistor 120 Ω digunakan
untuk mencocokkan karakteristik impedansi sebuah kabel komunikasi (nilai yang umum
digunakan oleh produsen kabel adalah 120 Ω)
Dengan adanya nilai resistor terminasi paralel, maka nilai resistor pull-up dan pull-
down dapat dicari yaitu:
𝑛𝑖𝑙𝑎𝑖 resistor 𝑝𝑢𝑙𝑙 − 𝑢𝑝 dan 𝑝𝑢𝑙𝑙 − 𝑑𝑜𝑤𝑛 = 2𝑘 − 120
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 41
24
𝑛𝑖𝑙𝑎𝑖 resistor 𝑝𝑢𝑙𝑙 − 𝑢𝑝 dan 𝑝𝑢𝑙𝑙 − 𝑑𝑜𝑤𝑛 = 1880 Ω
𝑛𝑖𝑙𝑎𝑖 resistor 𝑝𝑢𝑙𝑙 − 𝑢𝑝 dan 𝑝𝑢𝑙𝑙 − 𝑑𝑜𝑤𝑛 =1880
2
𝑛𝑖𝑙𝑎𝑖 resistor 𝑝𝑢𝑙𝑙 − 𝑢𝑝 dan 𝑝𝑢𝑙𝑙 − 𝑑𝑜𝑤𝑛 = 940 Ω
Jadi nilai resistor pull-up dan pull-down adalah 940 Ω. Rangkaian multidrop RS-485
dapat dilihat pada Gambar 3.3.
Gambar 3.3. Rangkaian Multidrop RS-485
3.2.3. Perancangan LCD 16x2
Perancangan LCD 16x2 ini berguna untuk menampilkan data sebanyak 2 kolom x 16
baris sehingga banyak karakter yang dapat ditampilkan adalah 32 karakter.
Gambar perancangan LCD 16x2 dapat pada mikrokontroler ATMega128 ditunjukkan
pada Gambar 3.4. rangkaian LCD 16x2. Pin LCD 16x2 yang digunakan adalah DB4 yang
dihugunkan dengan pin C.4, DB5 yang dihubungkan dengan pin C.5, DB6 yang dihubungkan
dengan pin C.6, DB7 yang dihubungkan dengan pin C.7, RS dihubungkan dengan pin C.0,
RW dihubungkan dengan ground, Vss dihubungkan dengan Vcc dan terimpot yang bertujuan
mengatur cahaya dari LCD, VDD dihubungkan dengan trimpot dan Vee dihubungkan dengan
trimpot dan ground
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 42
25
Gambar 3.4. Rangkaian LCD dan Master
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 43
26
3.3. Perancangan Subsistem Software
Langkah awal yang dilakukan dalam perancangan subsistem software adalah dengan
cara membuat diagram alur program terlebih dahulu.
3.3.1. Perancangan Diagram Alur Program Master
Gambar 3.5. perancangan diagram alur program master. Perancangan ini meliputi
inisialisasi program seperti: LCD 16x2 dan RS-485. Penginisialisai ini digunakan untuk
mempersiapkan komponen-komponen pendukung tersebut dalam kondisi siap menjalankan
perintah dengan cara mengatur register-register yang ditulis dengan mengunakan software
(bahasa pemprograman). Mikrokontroler master mengirimkan karakter tertentu lalu slave yang
ditentukan menerima karakter tersebut dan membalasnya dengan mengirimkan data kepada
mirokontroler master kembali. Mikrokontroler master menampilkan semua data ke LCD 16x2
yang didapat dari semua slave yang digunakan, setelah menampilkan data tersebut
mikrokontroler master mengirimkan data dari semua slave dalam betuk satu paket ke slave PC
yang berguna untuk memonitoring.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 44
27
Gambar 3.5. Perancangan Diagram Alur Program Master
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 45
28
Gambar 3.6. Diagram Alur Program Master (Lanjutan)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 46
29
Gambar 3.7. Diagram Alur Program Master (Lanjutan)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 47
30
3.3.2. Perancangan Diagram Alur Program Slave PC
Gambar 3.8. perancangan diagram alur program slave PC. Perancangan ini
menggunakan inisialisansi yang berguna untuk meminta data paket kepada mikrokontroler
master dan lalu menapilkannya dalam bentuk grafik dengan menggunakan software visual
basic.
Gambar 3.8. Perancangan Diagram Alur Program Slave PC
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 48
31
3.3.3. Perancangan Diagram Alur Program Slave1 (Suhu)
Gambar 3.9. perancangan diagram alur program slave1 (suhu). Perancangan ini
menggunakan inisialisai data yang berguna untuk menerima perintah yang diberikan oleh
mikrokontroler master. Mikrokontroler slave1 mengirimkan data suhu kepada mikrokontroler
master.
Gambar 3.9. Perancangan Diagram Alur Program Slave1 (Suhu)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 49
32
3.3.4. Perancangan Diagram Alur Program Slave2 (pH)
Gambar 3.10. perancangan diagram alur program slave2 (pH). Perancangan ini
menggunakan inisialisai data yang berguna untuk menerima perintah yang diberikan oleh
mikrokontroler master. Mikrokontroler slave2 mengirimkan data pH kepada mikrokontroler
master.
Gambar 3.10. Perancangan Diagram Alur Program Slave2 (pH)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 50
33
3.3.5. Perancangan Diagram Alur Program Slave3 (DO)
Gambar 3.11. perancangan diagram alur program slave3 (DO). Perancangan ini
menggunakan inisialisai data yang berguna untuk menerima perintah yang diberikan oleh
mikrokontroler master. Mikrokontroler slave3 mengirimkan data DO kepada mikrokontroler
master.
Gambar 3.11. Perancangan Diagram Alur Program Slave3 (DO)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 51
34
3.3.6. Perancangan Diagram Alur Program Slave4 (Kekeruhan)
Gambar 3.12. perancangan diagram alur program slave4 (kekeruhan). Perancangan ini
menggunakan inisialisai data yang berguna untuk menerima perintah yang diberikan oleh
mikrokontroler master. Mikrokontroler slave4 mengirimkan data kekeruhan kepada
mikrokontroler master.
Gambar 3.12. Perancangan Diagram Alur Program Slave4 (Kekeruhan)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 52
35
3.3.7. Perancangan Diagram Alur Program Slave5 (Konduktivitas)
Gambar 3.13. perancangan diagram alur program slave5 (konduktivitas). Perancangan
ini menggunakan inisialisai data yang berguna untuk menerima perintah yang diberikan oleh
mikrokontroler master. Mikrokontroler slave5 mengirimkan data konduktivitas kepada
mikrokontroler master.
Gambar 3.13. Perancangan Diagram Alur Program Slave5 (Konduktivitas)
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 53
36
BAB IV
HASIL DAN PEMBAHASAN
Bab ini berisi Gambar fisik hardware yang dibuat, pembahasan tentang perbagian
hardware, hasil pengujian rangkaian, hasil komunikasi serial, pembahasan tentang program
visual basic yang menampilkan grafik dan pembahasan tentang program yang digunakan di
mikrokontroler. Data yang akan dibahas terdiri dari data paket komunikasi serial,
menampilkan data serial dalam bentuk grafik di visual basic dan pengujian tiap bagian
hardware. 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. Gambaran Fisik Hardware
Subsistem alat dibagi menjadi dua bagian. Pertama bagian mekanik kotak sistem dan
kedua bagian subsistem elektronik alat.
4.1.1. Mekanik Kotak Sistem
Perancangan mekanik kotak sistem dibuat untuk melindungi dan merapikan subsitem
elektronika.
Gambar 4.1. Tampak Atas
Gambar 4.2. Tampak Samping Kiri
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 54
37
Gambar 4.3. Tampak Samping
Kanan
Gambar 4.4. Tampak Bagian Dalam
4.1.2. Subsistem Elekronik Alat
Pada perancangan regulator tegangan terdapat penambahan kapasitor, hal ini dilakukan
untuk mengurangi ripple yang menganggu hardware lain. Gambar 4.5 menunjukan tampilan
ripple pada regulator tegangan sebelum dilakukan penambahan kapasitor, sedangkan Gambar
pada 4.6 merupakan regulator tegangan yang telah ditambahkan kapasitor.
Gambar 4.5. Tampilan Ripple Pada
Osiloskop
Gambar 4.6. Tampilan Osiloskop
Setelah Penambahan Kapasitor
Nilai ripple yang diperoleh pada Gambar 4.5 yaitu 1,4 Vp-p x 5 mV = 7 mV. Setelah
dilakukan penambahan kapasitor pada rangkaian regulator tegangan maka didapat hasil seperti
Gambar 4.6. Dari hasil penambahan kapasitor membuat rangkaian regulator sudah dapat
memberikan tegangan kepada hardware lain tanpa menggangu sistem kerja hardware lain.
Gambar 4.7. merupakan rangkaian regulator tegangan dan rangkaian multidrop RS-485.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 55
38
Gambar 4.7. Regulator Tegangan Dan Multidrop RS-485
4.2. Pengujian Alat
4.2.1. Pengujian Rangkaian Catu Daya
Pengujian rangkaian catu daya ini bertujuan untuk mengetahui tegangan keluaran yang
dihasilkan dan rangkaian sudah bekerja dengan baik atau belum. Pengujian dilakukan dengan
cara mengukur tegangan keluaran pada pin out IC LM7805, kemudian dibandingkan dengan
nilai tegangan pada datasheet.
Pada pengujian rangkaian catu daya mendapatkan output tegangan sebesar 4,93 Volt,
sedangkan output IC LM7805 pada datasheet 4,75-5,25 Volt. Pengujian catu daya dapat
bekerja dengan baik.
4.3. Pengujian Software
Pengujian software ini bertujuan untuk memastikan program yang telah dibuat dapat
bekerja sesuai dengan yang telah direncanakan pada bab III. Setelah data serial diterima dan
ditampilkan pada LCD character.
4.3.1. Pengujian Sistem Mikrokontroler
Pengujian rangkaian sistem mikrokontroler ini dilakukan untuk mengetahui
mikrokontroler sudah bekerja dengan baik atau tidak. Pengujian dilakukan dengan membuat
program untuk menampilkan tulisan pada LCD character dan mendownload program tersebut
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 56
39
pada mikrokontroler AVR ATMega128. Gambar 4.8 merupakan Gambaran fisik
mikrokontroler AVR ATmega128 yang akan diuji dengan rangkaian LCD 16x2 yang
ditujukkan pada Gambar 4.9. PORTC dijadikan sebagai output untuk menampilkan tulisan ke
LCD character. Program yang dituliskan pada software dengan bahasa C adalah sebagai
berikut:
Gambar 4.8. Mikrokontroler ATMega128
Gambar 4.9. Rangkaian LCD 16
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 57
40
Hasil pengujian ditunjukan pada Gambar 4.10.
Gambar 4.10. Tampilan LCD Hello Selamat Datang
Berdasarkan Gambar 4.10 tampak bahwa rangkaian sistem mikrokontroler dapat
bekerja dengan baik karena rangkaian ini dapat menampilkan tulisan pada LCD character
sesuai dengan yang dituliskan pada program.
4.3.2. Pengujian Program Pengiriman dan Penerimaan Pada Master
Pengujian pengiriman karakter dari master dilakukan untuk mengetahui program
pengiriman karakter dari master berhasil terkirim atau tidak. Saat pengirriman karakter dari
master berhasil terkirim maka slave yang dituju master akan membalas kiriman tersebut
dengan data paket. Pengujian ini menggunakan module komunikasi serial RS-485 dengan
ATMega8, module komunikasi serial RS-485 dengan ATMega8 ini merupakan mikrokontroler
slave. Gambar 4.11. merupakan module komunikasi serial RS-485 dengan ATMega8.
Gambar 4.11. Module Komunikasi Serial RS-485 Dengan ATMega 8
Hasil pengujian pengiriman karakter A dan hasil penerimaan data paket dari slave yang
berinisial A yaitu slave1 (Suhu). Dapat dilihat pada Gambar 4.12 dan 4.13.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 58
41
Gambar 4.12. Kirim A
Gambar 4.13. Terima Data Suhu
Berdasarkan Gambar 4.12 dan 4.13 tampak bahwa pengiriman dan penerimaan data
paket pada master dapat bekerja karena program pengiriman dan penerimaan data paket sudah
benar dan berhasil di tampilkan pada LCD. Pada Tabel 4.1 merupakan contoh data yang
dikirim dari slave1, contoh data dibuat dengan program. Data kirim pada Tabel merupakan
data yang dikirim slave1 ke master dan data terima merupakan data yang diterima master.
Tabel 4.1. Contoh Data Suhu
Suhu
No Data kirim Data terima Keterrangan
1 15.0 15.0 Berhasil
2 16.5 16.5 Berhasil
3 18.0 18.0 Berhasil
4 19.5 19.5 Berhasil
5 21.0 21.0 Berhasil
6 22.5 22.5 Berhasil
7 24.0 24.0 Berhasil
8 25.5 25.5 Berhasil
9 27.0 27.0 Berhasil
10 28.5 28.5 Berhasil
11 30.0 30.0 Berhasil
12 31.5 31.5 Berhasil
13 33.0 33.0 Berhasil
14 34.5 34.5 Berhasil
15 36.0 36.0 Berhasil
16 37.5 37.5 Berhasil
17 39.0 39.0 Berhasil
Dengan persamaan 2.5 dapat menghitung tingkat keberhasilan data pengiriman dan
penerimaan, dari hasil perhitungan dengan persamaan 2.5 bahwa tingkat keberhasilan
pengiriman dan penerimaan data slave1 (Suhu) sebesar 100%.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 59
42
Hasil pengujian pengiriman karakter B dan hasil penerimaan data paket dari slave yang
berinisial B yaitu slave2 (pH). Dapat dilihat pada Gambar 4.14 dan 4.15.
Gambar 4.14. Kirim B
Gambar 4.15. Terima Data pH
Berdasarkan Gambar 4.14 dan 4.15 tampak bahwa pengiriman dan penerimaan data
paket pada master dapat bekerja karena program pengiriman dan penerimaan data paket sudah
benar dan berhasil di tampilkan pada LCD. Pada Tabel 4.2 merupakan contoh data yang
dikirim dari slave2, contoh data dibuat dengan program. Data kirim pada Tabel merupakan
data yang dikirim slave2 ke master dan data terima merupakan data yang diterima master.
Tabel 4.2. Contoh Data pH
PH
No Data Kirim Data Terima Keterangan
1 4.0 4.0 Berhasil
2 4.5 4.5 Berhasil
3 5.0 5.0 Berhasil
4 5.5 5.5 Berhasil
5 6.0 6.0 Berhasil
6 6.5 6.5 Berhasil
7 7.0 7.0 Berhasil
8 7.5 7.5 Berhasil
9 8.0 8.0 Berhasil
10 8.5 8.5 Berhasil
11 9.0 9.0 Berhasil
12 9.5 9.5 Berhasil
13 10.0 10.0 Berhasil
14 10.5 10.5 Berhasil
Dengan persamaan 2.5 dapat menghitung tingkat keberhasilan data pengiriman dan
penerimaan, dari hasil perhitungan dengan persamaan 2.5 bahwa tingkat keberhasilan
pengiriman dan penerimaan data slave2 (pH) sebesar 100%.
Hasil pengujian pengiriman karakter C dan hasil penerimaan data paket dari slave yang
berinisial C yaitu slave3 (DO). Dapat dilihat pada Gambar 4.16 dan 4.17.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 60
43
Gambar 4.16. Kirim C
Gambar 4.17. Terima Data DO
Berdasarkan Gambar 4.16 dan 4.17 tampak bahwa pengiriman dan penerimaan data
paket pada master dapat bekerja karena program pengiriman dan penerimaan data paket sudah
benar dan berhasil di tampilkan pada LCD. Pada Tabel 4.3 merupakan contoh data yang
dikirim dari slave3, contoh data dibuat dengan program. Data kirim pada Tabel merupakan
data yang dikirim slave3 ke master dan data terima merupakan data yang diterima master.
Tabel 4.3. Contoh Data DO
DO
No Data kirim Data terima Keterangan
1 3.0 3.0 Berhasil
2 3.5 3.5 Berhasil
3 4.0 4.0 Berhasil
4 4.5 4.5 Berhasil
5 5.0 5.0 Berhasil
6 5.5 5.5 Berhasil
7 6.0 6.0 Berhasil
8 6.5 6.5 Berhasil
9 7.0 7.0 Berhasil
10 7.5 7.5 Berhasil
11 8.0 8.0 Berhasil
12 8.5 8.5 Berhasil
13 9.0 9.0 Berhasil
14 9.5 9.5 Berhasil
Dengan persamaan 2.5 dapat menghitung tingkat keberhasilan data pengiriman dan
penerimaan, dari hasil perhitungan dengan persamaan 2.5 bahwa tingkat keberhasilan
pengiriman dan penerimaan data slave3 (DO) sebesar 100%.
Hasil pengujian pengiriman karakter D dan hasil penerimaan data paket dari slave yang
berinisial D yaitu slave4 (Kekeruhan). Dapat dilihat pada Gambar 4.18 dan 4.19.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 61
44
Gambar 4.18. Kirim D
Gambar 4.19. Terima Data Kekeruhan
Berdasarkan Gambar 4.18 dan 4.19 tampak bahwa pengiriman dan penerimaan data
paket pada master dapat bekerja karena program pengiriman dan penerimaan data paket sudah
benar dan berhasil di tampilkan pada LCD. Pada Tabel 4.4 merupakan contoh data yang
dikirim dari slave4, contoh data dibuat dengan program. Data kirim pada Tabel merupakan
data yang dikirim slave4 ke master dan data terima merupakan data yang diterima master.
Tabel 4.4. Contoh Data Kekeruhan
Kekeruhan
No Data kirim Data terima Keterangan
1 25 25 Berhasil
2 50 50 Berhasil
3 75 75 Berhasil
4 100 100 Berhasil
5 125 125 Berhasil
6 150 150 Berhasil
7 175 175 Berhasil
8 200 200 Berhasil
9 225 225 Berhasil
10 250 250 Berhasil
11 275 275 Berhasil
12 300 300 Berhasil
13 325 325 Berhasil
14 350 350 Berhasil
15 375 375 Berhasil
16 400 400 Berhasil
17 425 425 Berhasil
18 450 450 Berhasil
19 475 475 Berhasil
Dengan persamaan 2.5 dapat menghitung tingkat keberhasilan data pengiriman dan
penerimaan, dari hasil perhitungan dengan persamaan 2.5 bahwa tingkat keberhasilan
pengiriman dan penerimaan data slave4 (Kekeruhan) sebesar 100%.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 62
45
Hasil pengujian pengiriman karakter E dan hasil penerimaan data paket dari slave yang
berinisial E yaitu slave5 (Konduktivitas). Dapat dilihat pada Gambar 4.20 dan 4.21.
Gambar 4.20. Kirim E
Gambar 4.21. Terima Data Konduktivitas
Berdasarkan Gambar 4.20 dan 4.21 tampak bahwa pengiriman dan penerimaan data
paket pada master dapat bekerja karena program pengiriman dan penerimaan data paket sudah
benar dan berhasil di tampilkan pada LCD. Pada Tabel 4.5 merupakan contoh data yang
dikirim dari slave5, contoh data dibuat dengan program. Data kirim pada Tabel merupakan
data yang dikirim slave5 ke master dan data terima merupakan data yang diterima master.
Tabel 4.5. Contoh Data Konduktivitas
Konduktivitas
No Data kirim Data terima Keterangan
1 200 200 Berhasil
2 550 550 Berhasil
3 900 900 Berhasil
4 1250 1250 Berhasil
5 1600 1600 Berhasil
6 1950 1950 Berhasil
7 2300 2300 Berhasil
8 2650 2650 Berhasil
9 3000 3000 Berhasil
10 3350 3350 Berhasil
11 3700 3700 Berhasil
12 4050 4050 Berhasil
13 4400 4400 Berhasil
14 4750 4750 Berhasil
Dengan persamaan 2.5 dapat menghitung tingkat keberhasilan data pengiriman dan
penerimaan, dari hasil perhitungan dengan persamaan 2.5 bahwa tingkat keberhasilan
pengiriman dan penerimaan data slave5 (Konduktivitas) sebesar 100%.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 63
46
Pada pengujian program pengiriman dan penerimaan pada master terdapat 1 kali
kesalahan pada penampil pada LCD, kesalahan ini disebut dengan kondisi awal karena terjadi
pada saat awal pengambilan data dan penampilan data pertama. Setelah kondisi awal maka
data akan selalu berhasil di tampilkan pada LCD. Kondisi awal ini hanya terjadi pada
penampilan data slave1 dan slave2. Gambar 4.22 merupakan kondisi awal penerimaan data.
Gambar 4.22. Kondisi Awal Penampilan Data Terima Pada Master
4.3.3. Pengujian Panjang Kabel Pada Rangkaian Multidrop Network RS-485
Pengujian panjang kabel pada rangkaian multidrop network RS-485 ini dilakukan
untuk mengetahui pengaruh panjang kabel pada rangkaian RS-485 dapat bekerja dengan baik
atau tidak. Pengujian ini menggunakan kabel sepanjag 2 meter, 4 meter, 6 meter, 10 meter dan
16 meter. Pada pengujian panjang kabel yang sudah ditentukan diatas tidak ada pengaruh yang
muncul pada pengiriman dan penerimaan data.
Pengujian panjang kabel ini hanya berpengaruh pada sinyal pengiriman dan sinyal
penerimaan semakin pendek kabel yang digunakan maka semakin bagus sinyal yang diperoleh
pada osiloskop sedangkan semakin panjang kabel yang digunakan maka semakin jelek sinyal
yang diperoleh pada osiloskop. Hasil pengamatan sinyal pada osiloskop dapat dilihat di
lampiran.
Hasil dari pengujian panjang kabel pada rangkaian multidrop network RS-485 dapat
dilihat pada pengujiaan program pengiriman dan penerimaan pada master. Berdasarkan dari
pengujian ini terlihat bahawa karakter yang dikirim dan data paket yang sudah diterima master
telah berhasil ditampilkan pada LCD.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 64
47
4.3.4. Pengujian Program Penggabungan dan Pengiriman Semua Data
Paket
Pengujian program penggabungan dan pengiriman semua data paket ini dilakukan
untuk mengetahui semua data paket yang terima master sudah berhasil diterima semua atau
belum. Pengujian ini dilakukan dengan membuat program penggabungan semua data yang
telah diterima master dan mengirimkan data hasil penggabungan tersebut.
Gambar 4.23. Penggabungan Data Paket
Gambar 4.24. Kondisi awal penggabungan
data paket
Hasil pengujian penggabungan dan penerimaan semua data dapat dilihat pada Gambar
4.23 dan Gambar 4.24. Pada Gambar 4.24 terjadi kesalahan penampil disaat penggabungan
dan pengiriman semua data paket pada kondisi awal penggabungan dan pengiriman data
paket, sedangkan pada Gambar 4.23 proses penggabungan dan pengiriman semua data paket
berhasil ketika selesai tahap kondisi awal penggabungan dan pengiriman semua data paket.
4.3.5. Pengujian Program Slave PC (Visual Basic)
Pengujian program slave PC ini bertujuan untuk menampilkan data serial, menyimpan
data serial dan membuat grafik dari semua data paket yang diterima. Pada pengujian ini
menggunakan module K-125R sebagai penghubung mikrokontroler (master) dengan PC
(personal computer), software yang digunakan pada PC adalah visual basic 6.0. pada Gambar
4.25. merupakan module K-125R.
Gambar 4.25. Module K-125R
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 65
48
Hasil dari pengujian program slave PC dapat dilihat pada Gambar 4.26. pada Gambar
4.26 terlihat bahwa program slave PC dapat menampilkan data grafik dari slave1 (Suhu),
slave2 (pH), slave3 (DO), slave4 (Kekeruhan) dan slave5 (Konduktivitas). Program slave PC
ini dilengkapi dengan tampilan data dalam bentuk Tabel, sehingga mempermudah dalam
melihat data semua sensor yang menggukur kualitas air kolam ikan.
Gambar 4.26. Tampilan Pada Visual Basic 6.0
Pada pengujian program slave PC ini terdapat error, hal ini dikarenakan adanya data
yang drop/hilang akibat waktu pengambilan data dan penerimaan data yang tidak sesuai.
Gambar 4.27 merupakan tampilan error dari program PC, drop/hilang data ditunjukan pada
lingkaran hitam pada Gambar 4.27.
Gambar 4.27. Tampilan Error Pada Visual Basic 6.0
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 66
49
Berdasarkan Gambar 4.28 tampak bahwa program slave PC dapat melakukan
penyimpanan data pada lokasi yang sudah ditentukan yaitu lokasi D. Pada Gambar 4.28
menunjukan nama file yang disimpan dengan format (.txt) dengan kotak hitam pada Gambar
4.28. Nama file yang di simpan adalah text2.txt.
Gambar 4.28. Lokasi Penyimpanan Data
Gambar 4.29. menunjukan hasil dari data yang telah disimpan pada text2.txt.
Penyimpanan data ini bertujuan untuk mempermudah dalam pengamatan kualitas air yang
sudah diukur.
Gambar 4.29. Data Yang Berhasil Disimpan Pada Notpad
Berdasarkan Gambar 4.26, Gambar 4.27, Gambar 4.28 dan Gambar 4.29 menunjukan
bahwa program slave PC sudah berhasil melakukan penerimaan data paket, mengubah data
menjadi data grafik dan dapat melakukan penyimpanan data.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 67
50
BAB V
KESIMPULAN DAN SARAN
5.1. Kesimpulan
Berdasarkan dari data paket komunikasi serial yang diperoleh dari tampilan LCD
character dan tampilan visual basic, maka dapat disimpulkan :
1. Mikrokontroler ATMega128 mampu melakukan komunikasi serial antar
mikrokontroler dan mikrokontroler dengan PC
2. Tingkat keberhasilan pengiriman dan penerimaan data dari mikrokontroler slave1,
slave2, slave3, slave4 dan slave5 ke mikrokontroler master sebesar 100%
3. Kelemahan sistem ini ialah waktu pengambilan data dan penerimaan data pada PC
4. Sistem ini dapat mengolah data menjadi data grafik dan menyimpan data dengan
format (.txt)
5.2. Saran
Sistem komunikasi pengendalian kualitas air kolam ikan berbasis ATMega128 ini
masih banyak kekurangan, sehingga perlu perkembangan lebih lanjut. Saran bagi pengembang
sistem komunikasi ini selanjutnya ialah ; Penerimaan dan pengiriman data masih bergantung
dengan kabel
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 68
51
DAFTAR PUSTAKA
[1] Salam, A., dkk, Rancang Bangun Sistem Jaringan Multidrop Menggunakan RS-485
Pada Aplikasi Pengontrolan Alat Penerangan Kamar Hotel, FPTK UPI, Bandung.
[2] Pratama, H., dkk, 2012, Akuisisi Data Kinerja Sensor Ultrasonik Berbasis Sistem
Komunikasi Serial Menggunakan Mikrokontroler Atmega 32, FPTK UPI, Bandung.
[3] Martanto., dkk, 2013, Akuisisi Data Pengawas Kualitas Air Sungai Untuk Perikanan,
Seminar Ritektra 2013, Universitas Sanata Dharma, Yogyakarta.
[4] Bambang, C., 2000, Budi Daya Ikan Air Tawar , Kanisius, Yogyakarta.
[5] Direktorat Jendral Perikanan Budidaya dan Direktorat Perbebihan., 2006, Petunjuk
Teknis Balai Benih Ikan (BBI), Balai Benih Ikan Sentral (BBIS), Balai Benih Udang
(BBU), Blai Benih Udang Galah (BBUG),Dan Balai Benih Ikan Pantai (BBIP),
Direktorat Jendral Perikanan Budidaya, Jakarta
[6] Radiometer Analitic SAS., 2004, Conductivity Theory and Practice, Villleurbnne
Cedex, France
[7] Marias, H., RS-485/RS-422 Circuit Implementation Guide, http://www.analog.com
[8] http://www.bb-elec.com
Diakses Tanggal 21 November 2013
[9] http://www.sena.com/download/tutorial/tech_Serial_v1r0c0.pdf,
Diakses Tanggal 21 November 2013.
[10] Wastharini, M. A., Perancangan Dan Implementasi System Telemetri Suhu Ruangan
Berbasis Mikrokontroler, ITT Bandung.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 69
52
[11] Boylestad, R., Nashelsky, L., 1996, Electronic Devices and Circuit Theory sixth
edition, New Jersey : Prentice Hall.
[12] Heryanto, M. A dan Adi, P. W., 2008, Pemrograman Bahasa C Untuk Mokrokontroler
ATMEGA 8535, ANDI Yogyakarta.
[13] ___, 2006, Data Sheet Microcontroler ATMega128, Atmel Corporation
[14] ___, 2013, Data Sheet Microcontroler ATMega8, Atmel Corporation
[15] Hendra., Dasar Pemrograman Visual Basic,
http://aldi_tob_2000.staff.gunadarma.ac.id/Downloads/files/15631/Dasar+Pemrograma
n+Visual+Basic.pdf,
Diakses Tanggal 25 November 2013.
[16] http://www.st.com
Diakses Tanggal 25 November 2013
[17] ___, 2003, Data sheet Regulator LM7805, Texas Instruments Incorporated
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 70
53
LAMPIRAN
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 71
L1
LISTING PROGRAM
1. Listing Program Master
1. $regfile = "m128def.dat" 'Master
2. $crystal = 16000000
3. $hwstack = 32
4. $swstack = 10
5. $framesize = 40
6. $baud = 9600
7. $baud1 = 9600
8. Dim A As Byte
9. Dim B As String * 1
10. Dim C As String * 10
11. Dim R As Byte
12. Dim Q As Integer
13. Dim Z As String * 10
'
14. Dim Dta As String * 10
15. Dim Dtb As String * 10
16. Dim Dtc As String * 10
17. Dim Dtd As String * 10
18. Dim Dte As String * 10
19. 'LCD MINSIS C
20. Config Lcdpin = Pin , Db4 = Portc.4 , Db5 = Portc.5 , Db6 = Portc.6 , Db7 =
Portc.7 , E = Portc.2 , Rs = Portc.0
21. Config Com1 = 9600 , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 ,
Clockpol = 0
22. Config Com2 = 9600 , Synchrone = 0 , Parity = None , Stopbits = 1 , Databits = 8 ,
Clockpol = 0
23. Open "com2:" For Binary As #1
24. Config Porte.2 = Output
25. Ena Alias Porte.2
26. Cls
27. Locate 1 , 6
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 72
L2
28. Lcd "HELLO"
29. Locate 2 , 1
30. Lcd "SELAMAT_DATANG"
31. Wait 2
32. Do
33. Cls
34. Lcd "KIRIM A"
35. Print "A"
36. Ena = 0
37. Wait 2
38. Gosub Trima
39. Dta = Z
40. Lcd "KIRIM B"
41. Print "B"
42. Ena = 0
43. Wait 2
44. Gosub Trima
45. Dtb = Z
46. Lcd "KIRIM C"
47. Print "C"
48. Ena = 0
49. Wait 2
50. Gosub Trima
51. Dtc = Z
52. Lcd "KIRIM D"
53. Print "D"
54. Ena = 0
55. Wait 2
56. Gosub Trima
57. Dtd = Z
58. Lcd "KIRIM E"
59. Print "E"
60. Ena = 0
61. Wait 2
62. Gosub Trima
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 73
L3
63. Dte = Z
64. Gosub Gab
65. Loop
66. End
67. Trima:
68. B = ""
69. C = ""
70. A = Ischarwaiting()
71. If A = 1 Then
72. Do
73. B = Waitkey()
74. C = C + B
75. Loop Until B = "#"
76. Q = Len(c)
77. Q= Q - 2
78. Z = Mid(c , 3 , Q)
79. C = Z
80. Locate 1 , 1
81. Lcd "TERIMA_PAKET"
82. Locate 2 , 1
83. Lcd C
84. Wait 2
85. End If
86. Cls
87. Ena = 1
88. Wait 2
89. Return
90. Gab:
91. Print #1 , Dta ; Dtb ; Dtc ; Dtd ; Dte
92. Locate 1 , 1
93. Lcd Dta ; Dtb ; Dtc
94. Locate 2 , 1
95. Lcd Dtd ; Dte
96. Wait 2
97. Return
98.
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 74
L4
2. Listing Program Slave1 (Suhu)
1. $regfile = "m8def.dat"
2. $crystal = 12000000
3. $hwstack = 32
4. $swstack = 10
5. $framesize = 40
6. $baud = 9600
7. Dim A As Byte
8. Dim B As String * 8
9. Dim C As Single '
10. Dim K As Single
11. Config Portd.2 = Output
12. Ena Alias Portd.2
13. B = ""
14. K = 1.5
15. C = 15
16. Ena = 0
17. Do
18. A = Ischarwaiting()
19. If A = 1 Then
20. B = Waitkey()
21. If B = "A" Then
22. Ena = 1
23. Wait 2
24. Print "S" ; C ; "#"
25. Wait 2
26. C = C + K
27. If C >= 40 Then
28. C = 15
29. End If
30. End If
31. 'Ena = 1
32. End If
33. Ena = 0
34. Loop
35. End
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 75
L5
3. Listing Program Slave2 (PH)
1. $regfile = "m8def.dat"
2. $crystal = 12000000
3. $hwstack = 32
4. $swstack = 10
5. $framesize = 40
6. $baud = 9600
7. Dim A As Byte
8. Dim B As String * 8
9. Dim C As Single '
10. Dim K As Single
11. Config Portd.2 = Output
12. Ena Alias Portd.2
13. B = ""
14. K = 0.5
15. C = 4
16. Ena = 0
17. Do
18. A = Ischarwaiting()
19. If A = 1 Then
20. B = Waitkey()
21. If B = "B" Then
22. Ena = 1
23. Wait 2
24. Print "P" ; C ; "#"
25. Wait 2
26. C = C + K
27. If C >= 11 Then
28. C = 4
29. End If
30. End If
31. 'Ena = 1
32. End If
33. Ena = 0
34. Loop
35. End
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 76
L6
4. Listing Program Slave3 (DO)
1. $regfile = "m8def.dat"
2. $crystal = 12000000
3. $hwstack = 32
4. $swstack = 10
5. $framesize = 40
6. $baud = 9600
7. Dim A As Byte
8. Dim B As String * 8
9. Dim C As Single '
10. Dim K As Single
11. Config Portd.2 = Output
12. Ena Alias Portd.2
13. B = ""
14. K = 0.5
15. C = 3
16. Ena = 0
17. Do
18. A = Ischarwaiting()
19. If A = 1 Then
20. B = Waitkey()
21. If B = "C" Then
22. Ena = 1
23. Wait 2
24. Print "F" ; C ; "#"
25. Wait 2
26. C = C + K
27. If C >= 10 Then
28. C = 3
29. End If
30. End If
31. 'Ena = 1
32. End If
33. Ena = 0
34. Loop
35. End
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 77
L7
5. Listing Program Slave4 (Kekeruhan)
1. $regfile = "m8def.dat"
2. $crystal = 12000000
3. $hwstack = 32
4. $swstack = 10
5. $framesize = 40
6. $baud = 9600
7. Dim A As Byte
8. Dim B As String * 8
9. Dim C As Word '
10. Dim K As Word
11. Config Portd.2 = Output
12. Ena Alias Portd.2
13. B = ""
14. K = 25
15. C = 25
16. Ena = 0
17. Do
18. A = Ischarwaiting()
19. If A = 1 Then
a. B = Waitkey()
b. If B = "D" Then
c. Ena = 1
d. Wait 2
e. Print "H" ; C ; "#"
f. Wait 2
g. C = C + K
i. If C >= 500 Then
ii. C = 25
iii. End If
h. End If
i. 'Ena = 1
20. End If
21. Ena = 0
22. Loop
23. End
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 78
L8
6. Listing Program Slave5 (Konduktivitas)
1. $regfile = "m8def.dat"
2. $crystal = 12000000
3. $hwstack = 32
4. $swstack = 10
5. $framesize = 40
6. $baud = 9600
7. Dim A As Byte
8. Dim B As String * 8
9. Dim C As Word '
10. Dim K As Word
11. Config Portd.2 = Output
12. Ena Alias Portd.2
13. B = ""
14. K = 350
15. C = 200
16. Ena = 0
17. Do
18. A = Ischarwaiting()
19. If A = 1 Then
20. B = Waitkey()
21. If B = "E" Then
22. Ena = 1
23. Wait 2
24. Print "O" ; C ; "#"
25. Wait 2
26. C = C + K
27. If C >= 5100 Then
28. C = 200
29. End If
30. End If
31. 'Ena = 1
32. End If
33. Ena = 0
34. Loop
35. End
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 79
L9
7. Listing Program Slave PC (Visual Basic)
1. Dim ping As Integer
2. Dim pjpic, tgpic, ktgpic As Single
3. Dim pjpic2, tgpic2, ktgpic2 As Single
4. Dim pjpic3, tgpic3, ktgpic3 As Single
5. Dim pjpic4, tgpic4, ktgpic4 As Single
6. Dim pjpic5, tgpic5, ktgpic5 As Single
7. Dim nw_tcr As Single
8. Dim nw_tcr2 As Single
9. Dim nw_tcr3 As Single
10. Dim nw_tcr4 As Single
11. Dim nw_tcr5 As Single
12. Dim dx, dy, y, x As Integer
13. Dim dx2, dy2, y2, x2 As Integer
14. Dim dx3, dy3, y3, x3 As Integer
15. Dim dx4, dy4, y4, x4 As Integer
16. Dim dx5, dy5, y5, x5 As Integer
17. Dim x1a, x1b, y1a, y1b As Single
18. Dim x2a, x2b, y2a, y2b As Single
19. Dim x3a, x3b, y3a, y3b As Single
20. Dim x4a, x4b, y4a, y4b As Single
21. Dim x5a, x5b, y5a, y5b As Single
22. Dim dt_a, dt_b, dt_c, dt_d, dt_e, z As String
23. Private Sub Command1_Click()
24. Dim idx As Boolean
25. If Comm1.PortOpen = True Then
26. If Timer1.Enabled = False Then
27. Timer1.Enabled = True
28. Timer1.Interval = 2000
29. Command1.Caption = "STOP"
30. Else
31. Timer1.Enabled = False
32. Command1.Caption = "START"
33. End If
34. End If
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 80
L10
35. x1a = 0
36. x1b = 0
37. y1a = tgpic
38. Picture1.Cls
39. x2a = 0
40. x2b = 0
41. y2a = tgpic
42. Picture2.Cls
43. x3a = 0
44. x3b = 0
45. y3a = tgpic
46. Picture3.Cls
47. x4a = 0
48. x4b = 0
49. y4a = tgpic
50. Picture4.Cls
51. x5a = 0
52. x5b = 0
53. y5a = tgpic
54. Picture5.Cls
55. End Sub
56. Private Sub Command2_Click()
57. End
58. End Sub
59. Private Sub Form_Load()
60. Comm1.CommPort = 5
61. Comm1.Settings = "9600,N,8,1"
62. Comm1.InputLen = 0
63. Comm1.PortOpen = True
64. With MSFlexGrid1
65. .ColWidth(0) = 400
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 81
L11
67. .ColWidth(1) = 800
68. .ColWidth(2) = 800
69. .ColWidth(3) = 1100
70. .ColWidth(4) = 1000
71. .ColWidth(5) = 1200
72. .Rows = ping + 1
73. .TextMatrix(ping, 0) = "no"
74. .TextMatrix(ping, 1) = "Suhu"
75. .TextMatrix(ping, 2) = "PH"
76. .TextMatrix(ping, 3) = "DO"
77. .TextMatrix(ping, 4) = "Kekeruhan"
78. .TextMatrix(ping, 5) = "Konduktivitas"
79. End With
80. ping = 1
81. Picture1.AutoRedraw = True
82. pjpic = Picture1.ScaleWidth
83. tgpic = Picture1.ScaleHeight
84. ktgpic = tgpic / 50#
85. x1a = 0
86. y1a = tgpic
87. Picture2.AutoRedraw = True
88. pjpic2 = Picture2.ScaleWidth
89. tgpic2 = Picture2.ScaleHeight
90. ktgpic2 = tgpic2 / 14#
91. x2a = 0
92. y2a = tgpic2
93. Picture3.AutoRedraw = True
94. pjpic3 = Picture3.ScaleWidth
95. tgpic3 = Picture3.ScaleHeight
96. ktgpic3 = tgpic3 / 10#
97. x3a = 0
98. y3a = tgpic
99. Picture4.AutoRedraw = True
100. pjpic4 = Picture4.ScaleWidth
101. tgpic4 = Picture4.ScaleHeight
102. ktgpic4 = tgpic4 / 150#
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 82
L12
103. x4a = 0
104. y4a = tgpic4
105. Picture5.AutoRedraw = True
106. pjpic5 = Picture5.ScaleWidth
107. tgpic5 = Picture5.ScaleHeight
108. ktgpic5 = tgpic5 / 6000#
109. x5a = 0
110. y5a = tgpic5
111. End Sub
112. Private Sub Timer1_Timer()
113. Dim inbuff As String
114. Dim huruf As String
115. Dim pagar As String
116. Dim jarak As Integer
117. Dim paketbaru As String
118. Dim dt_a As String
119. Dim dt_b As String
120. Dim dt_c As String
121. Dim dt_d As String
122. Dim dt_e As String
123. Dim dta As String
124. Dim dtb As String
125. Dim dtc As String
126. Dim dtd As String
127. Dim dte As String
128. Dim z As Integer, m As Integer, n As Integer, w As Integer
129. If Comm1.PortOpen = True Then
130. inbuff = Comm1.Input
131. Text1.Text = inbuff
132. Open "D:\text2.txt" For Append As #1
133. Print #1, Text2.Text '+ Chr$(13)
134. Close #1
135. If Left(inbuff, 1) = "S" Then
136. huruf = InStr(inbuff, "S")
137. pagar = InStr(inbuff, "#")
138. jarak = pagar - bintang
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 83
L13
139. dta = Mid$(inbuff, huruf, pagar)
140. 'Text2.Text = dta
141. If (jarak > 1) Then
142. dt_a = Mid$(inbuff, huruf + 1, jarak - 2)
143. End If
144. inbuff = Mid$(inbuff, pagar + 1, Len(inbuff) - pagar)
145. huruf = InStr(inbuff, "P")
146. pagar = InStr(inbuff, "#")
147. jarak = pagar - bintang
148. dtb = Mid$(inbuff, huruf, pagar)
149. 'Text2.Text = dtb
150. If (jarak > 1) Then
151. dt_b = Mid$(inbuff, huruf + 1, jarak - 2)
152. End If
153. inbuff = Mid$(inbuff, pagar + 1, Len(inbuff) - pagar)
154. huruf = InStr(inbuff, "F")
155. pagar = InStr(inbuff, "#")
156. jarak = pagar - bintang
157. dtc = Mid$(inbuff, huruf, pagar)
158. 'Text2.Text = dtc
159. If (jarak > 1) Then
160. dt_c = Mid$(inbuff, huruf + 1, jarak - 2)
161. End If
162. inbuff = Mid$(inbuff, pagar + 1, Len(inbuff) - pagar)
163. huruf = InStr(inbuff, "H")
164. pagar = InStr(inbuff, "#")
165. jarak = pagar - bintang
166. dtd = Mid$(inbuff, huruf, pagar)
167. 'Text2.Text = dtd
168. If (jarak > 1) Then
169. dt_d = Mid$(inbuff, huruf + 1, jarak - 2)
170. End If
171. inbuff = Mid$(inbuff, pagar + 1, Len(inbuff) - pagar)
172. huruf = InStr(inbuff, "O")
173. pagar = InStr(inbuff, "#")
174. jarak = pagar - bintang
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 84
L14
175. dte = Mid$(inbuff, huruf, pagar)
176. 'Text2.Text = dte
177. If (jarak > 1) Then
178. dt_e = Mid$(inbuff, huruf + 1, jarak - 2)
179. Text2.Text = "S" + dt_a + " " + "P" + dt_b + " " + "F" + dt_c + " " + "H" +
dt_d + " " + "O" + dt_e + " "
180. m = 1
181. n = 1
182. End If
183. inbuff = Mid$(inbuff, pagar + 1, Len(inbuff) - pagar)
184. End If
185. If m = 1 Then
186. With MSFlexGrid1
187. .ColWidth(0) = 400
188. .ColWidth(1) = 800
189. .ColWidth(2) = 800
190. .ColWidth(3) = 1100
191. .ColWidth(4) = 1000
192. .ColWidth(5) = 1200
193. .Rows = ping + 1
194. .TextMatrix(ping, 0) = ping
195. .TextMatrix(ping, 1) = dt_a
196. .TextMatrix(ping, 2) = dt_b
197. .TextMatrix(ping, 3) = dt_c
198. .TextMatrix(ping, 4) = dt_d.
199. TextMatrix(ping, 5) = dt_e
200. End With
201. ping = ping + 1
202. m = 0
203. End If
204. End If
205. Dim i As Integer
206. Dim i2 As Integer
207. Dim i3 As Integer
208. Dim i4 As Integer
209. Dim i5 As Integer
210. Dim sx As Single
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 85
L15
211. Dim sx2 As Single
212. Dim sx3 As Single
213. Dim sx4 As Single
214. Dim sx5 As Single
215. If n = 1 Then
216. '1
217. dy = tgpic / 10
218. sx = pjpic / 10
219. dx = pjpic / 100
220. y = tgpic - 1
221. x = pjpic - 1
222. Picture1.Refresh
223. Picture1.DrawWidth = 1
224. For i = 0 To 9
225. Picture1.Line (0, y)-(pjpic, y), vbBlue
226. y = y - dy
227. Next
228. For i = 0 To 9
229. Picture1.Line (x, 0)-(x, tgpic), vbBlue
230. x = x - sx
231. Next
232. nw_trc = Val(dt_a)
233. y1b = CInt((50# - nw_trc) * ktgpic) - 1
234. If x1a < pjpic Then
235. x1b = x1b + dx:
236. ElseIf x1a >= pjpic Then
237. x1a = 0
238. x1b = 0
239. Picture1.Cls
240. End If
241. Picture1.DrawWidth = 2
242. Picture1.Line (x1a, y1a)-(x1b, y1b), RGB(255, 0, 255)
243. x1a = x1b: y1a = y1b
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 86
L16
244. '2
245. dy2 = tgpic2 / 10
246. sx2 = pjpic2 / 10
247. dx2 = pjpic2 / 100
248. y2 = tgpic2 - 1
249. x2 = pjpic2 - 1
250. Picture2.Refresh
251. Picture2.DrawWidth = 1
252. For i2 = 0 To 9
253. Picture2.Line (0, y2)-(pjpic2, y2), vbBlue
254. y2 = y2 - dy2
255. Next
256. For i2 = 0 To 9
257. Picture2.Line (x2, 0)-(x2, tgpic2), vbBlue
258. x2 = x2 - sx2
259. Next
260. nw_trc2 = Val(dt_b)
261. y2b = CInt((14# - nw_trc2) * ktgpic2) - 1
262. If x2a < pjpic2 Then
263. x2b = x2b + dx2:
264. ElseIf x2a >= pjpic2 Then
265. x2a = 0
266. x2b = 0
267. Picture2.Cls
268. End If
269. Picture2.DrawWidth = 2
270. Picture2.Line (x2a, y2a)-(x2b, y2b), RGB(255, 0, 255)
271. x2a = x2b: y2a = y2b
272. '3
273. dy3 = tgpic3 / 10
274. sx3 = pjpic3 / 10
275. dx3 = pjpic3 / 100
276. y3 = tgpic3 - 1
277. x3 = pjpic3 - 1
278. Picture3.Refresh
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 87
L17
279. Picture3.DrawWidth = 1
280. For i3 = 0 To 9
281. Picture3.Line (0, y3)-(pjpic3, y3), vbBlue
282. y3 = y3 - dy3
283. Next
284. For i3 = 0 To 9
285. Picture3.Line (x3, 0)-(x3, tgpic3), vbBlue
286. x3 = x3 - sx3
287. Next
288. nw_trc3 = Val(dt_c)
289. y3b = CInt((10# - nw_trc3) * ktgpic3) - 1
290. If x3a < pjpic3 Then
291. x3b = x3b + dx3:
292. ElseIf x3a >= pjpic3 Then
293. x3a = 0
294. x3b = 0
295. Picture3.Cls
296. End If
297. Picture3.DrawWidth = 2
298. Picture3.Line (x3a, y3a)-(x3b, y3b), RGB(255, 0, 255)
299. x3a = x3b: y3a = y3b
300. '4
301. dy4 = tgpic4 / 10
302. sx4 = pjpic4 / 10
303. dx4 = pjpic4 / 100
304. y4 = tgpic4 - 1
305. x4 = pjpic4 - 1
306. Picture4.Refresh
307. Picture4.DrawWidth = 1
308. For i4 = 0 To 9
309. Picture4.Line (0, y4)-(pjpic4, y4), vbBlue
310. y4 = y4 - dy4
311. Next
312. For i4 = 0 To 9
313. Picture4.Line (x4, 0)-(x4, tgpic4), vbBlue
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 88
L18
314. x4 = x4 - sx4
315. Next
316. nw_trc4 = Val(dt_d)
317. y4b = CInt((150# - nw_trc4) * ktgpic4) - 1
318. If x4a < pjpic4 Then
319. x4b = x4b + dx4:
320. ElseIf x4a >= pjpic4 Then
321. x4a = 0
322. x4b = 0
323. Picture4.Cls
324. End If
325. Picture4.DrawWidth = 2
326. Picture4.Line (x4a, y4a)-(x4b, y4b), RGB(255, 0, 255)
327. x4a = x4b: y4a = y4b
328. '5
329. dy5 = tgpic5 / 10
330. sx5 = pjpic5 / 10
331. dx5 = pjpic5 / 100
332. y5 = tgpic5 - 1
333. x5 = pjpic5 - 1
334. Picture5.Refresh
335. Picture5.DrawWidth = 1
336. For i5 = 0 To 9
337. Picture5.Line (0, y5)-(pjpic5, y5), vbBlue
338. y5 = y5 - dy5
339. Next
340. For i5 = 0 To 9
341. Picture5.Line (x5, 0)-(x5, tgpic5), vbBlue
342. x5 = x5 - sx5
343. Next
344. nw_trc5 = Val(dt_e)
345. y5b = CInt((6000# - nw_trc5) * ktgpic5) - 1
346. If x5a < pjpic5 Then
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 89
L19
347. x5b = x5b + dx5:
348. ElseIf x5a >= pjpic5 Then
349. x5a = 0
350. x5b = 0
351. Picture5.Cls
352. End If
353. Picture5.DrawWidth = 2
354. Picture5.Line (x5a, y5a)-(x5b, y5b), RGB(255, 0, 255)
355. x5a = x5b: y5a = y5b
356. n = 0
357. End If
358. End Sub
8. Rangkaian Keseluruhan Mikrokontroler Master
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 90
L20
9. Gambar Pengujian Regulator Tegangan
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 91
L21
10. Gambar Pengujian Panjang Kabel Pada Rangkaian Multidrop
Network RS-485
10.1. Kabel Sepanjang 2 Meter
Jalur A
Jalur B
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 92
L22
10.2. Kabel Sepanjang 4 Meter
Jalur A
Jalur B
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 93
L23
10.3. Kabel Sepanjang 6 Meter
Jalur A
Jalur B
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 94
L24
10.4. Kabel Sepanjang 10 Meter
Jalur A
Jalur B
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 95
L25
10.5. Kabel Sepanjang 16 Meter
Jalur A
Jalur B
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI
Page 96
L26
11. Gambar Perangkat Dengan Kabel
12. Gambar Percobaan Perangkat Dengan Menggunakan Kabel
PLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJIPLAGIAT MERUPAKAN TINDAKAN TIDAK TERPUJI