tugas akhir sistem telemetri kualitas air kolam ikan

advertisement
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
TUGAS AKHIR
SISTEM TELEMETRI KUALITAS AIR KOLAM IKAN
MENGGUNAKAN TX02-433D DAN RX01-433D
SEBAGAI TERMINAL UNIT
Diajukan Untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Teknik
Program Studi Teknik Elektro
Oleh :
JOHN FISHER JEFFERSON PAKPAHAN
NIM : 115114010
PROGRAM STUDI TEKNIK ELEKTRO
JURUSAN TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2015
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
TUGAS AKHIR
SISTEM TELEMETRI KUALITAS AIR KOLAM IKAN
MENGGUNAKAN TX02-433D DAN RX01-433D
SEBAGAI TERMINAL UNIT
Diajukan Untuk Memenuhi Salah Satu Syarat
Memperoleh Gelar Sarjana Teknik
Program Studi Teknik Elektro
Oleh :
JOHN FISHER JEFFERSON PAKPAHAN
NIM : 115114010
PROGRAM STUDI TEKNIK ELEKTRO
JURUSAN TEKNIK ELEKTRO
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA
YOGYAKARTA
2015
i
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
FINAL PROJECT
THE TELEMETRY SYSTEM OF FISH POND WATER
QUALITY USING TX02-433D AND RX01-433D
AS A TERMINAL UNIT
Presented As Partial Fulfillment Of The Requirements
To Obtain The Sarjana Teknik Degree
In Electrical Engineering Study Program
By:
JOHN FISHER JEFFERSON PAKPAHAN
NIM : 115114010
ELECTRICAL ENGINEERING STUDY PROGRAM
ELECTRICAL ENGINEERING DEPARTMENT
SCIENCE AND TECHNOLOGY FACULTY
SANATA DHARMA UNIVERSITY
YOGYAKARTA
2015
ii
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
HALAMAN PERSEMBAHAN DAN MOTO HIDUP
MOTTO :
Hidup itu adalah pilihan yang berat
Jadi hadapi hidup dengan penuh senyuman
Skripsi ini kepersembahkan untuk…..
Yesus Kristus,Bunda Maria,Saint Yohannes Fisher Pelindungku
Bapak Thomas Pakpahan dan Ibu Alquirina yang aku banggakan
Teman dan Sahabat yang ada pada saat proses skripsi ini berlangsung
Elektro 2011 atas bantuan candaan dan kenangan indah
vi
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
INTISARI
Kualitas air kolam ikan harus terjaga untuk menjamin kelangsungan hidup ikan. Air
sungai yang masuk ke kolam menentukan kualitas air kolam. Kualitas air kolam tersebut dapat
diukur dengan bantuan sensor seperti suhu, oksigen, keasaman, kekeruhan air serta
konduktivitas. Permasalahan yang ada pemilik kolam perlu sering meninjau kondisi kolam.
Penelitian ini bertujuan membuat sistem telemetri antara bagian pengukur sensor serta bagian
penampil untuk mempermudah pemilik kolam dalam menjaga kualitas air kolam.
Sistem telemetri dilakukan dengan cara modul terminal unit melakukan pengukuran
parameter kualitas air kolam serta menentukan posisi buka-tutup pintu air kolam. Informasi
tersebut kemudian dikirimkan ke modul sentral unit yang bertugas sebagai penampil secara
telemetri menggunakan modul RX01-433D dan RX02-433D. Mikrokontroler Atmega128
pada modul terminal unit digunakan untuk mengambil data-data pada sensor yang kemudian
dikumpulkan menjadi satu paket data dan dikirimkan ke sentral unit. Terminal unit ini juga
melakukan kendali dari nilai sensor yang didapat dan dibandingkan dengan batasan sensor
yang telah ditentukan.
Pengiriman paket data dapat menempuh jarak lebih dari sama dengan 20 meter. Modul
terminal unit telah berhasil menerima data sensor, terima data dan pengiriman data dari sentral
unit serta terminal unit telah berhasil melakukan pengendalian sesuai perancangan. Pegiriman
paket data dari terminal unit ke sentral unit telah bekerja sesuai dengan waktu yang
ditentukan.
Kata kunci : kualitas air, parameter, sistem telemetri.
viii
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
ABSTRACT
Fish pond water quality must be maintained to ensure the survival of fish. Water is the
most important thing of that. The quality can be measurement with the sensor of temperature,
oxygen, pH, turbidy and conductivity. The problem is the owners should frequently review to
his fish pond. This study has the objective to make a telemetry system between the sensor and
the screen to make the owners more easier in maintaining the quality of his fish pond water.
Telemetry system can be done by means of a terminal unit measuring the quality of the
pool water and determine the position of opening and closing the door of the pool water. Data
from the measurement will be sent to the central units that has the task of monitoring telemetry
using TX02-433D and RX1-433D module. Microcontroller Atmega128 in the terminal units is
used to retrieve the data from the sensor. Data that have been taken are collected into one data
packet and sent to the central units. Terminal units will doing controlling by comparing the
sensor value obtained and compared with a predetermined limit sensor.
Transmission of data packets can travel a distance equal to more than 20 meters.
Terminal module unit has successfully send data from the sensors, receive data and
transmission data from the central control unit and controlling. Data packets can be sent from
the terminal unit to the central unit has been working with the specified time.
Keyword : quality of the water, parameter, telemetry system.
ix
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
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 .............................................................................................. xvi
DAFTAR TABEL ................................................................................................... xxi
BAB I : PENDAHULUAN
1.1.
Latar Belakang ................................................................................................... 1
1.2.
Tujuan dan Manfaat Penelitian ........................................................................... 2
1.3.
Batasan Masalah................................................................................................. 2
1.4.
Metodologi Penelitian ........................................................................................ 3
BAB II : DASAR TEORI
2.1.
State of The Art................................................................................................... 4
2.1.1.
Pengendalian Temperatur Air ............................................................... 5
2.1.2.
Pengendalian Derajat Keasaman Air .................................................... 5
2.1.3.
Pengendalian Derajat Kekeruhan ......................................................... 7
2.1.4.
Pengendalian Kandungan Oksigen ....................................................... 8
2.1.5.
Pengendalian Konduktivitas Air ........................................................... 8
2.1.6.
Pengambilan Data Sensor..................................................................... 9
xi
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
2.1.7.
Aksi Pengendalian ............................................................................... 11
2.2.
Dummy Data ...................................................................................................... 12
2.3.
Mikrokontroler AVR .......................................................................................... 13
2.3.1.
Port Input/Output ................................................................................. 14
2.3.2.
– Two-Wire Serial Communication ................................................ 14
2.3.3.
USART (Universal Synchronous and Asynchronou serial Receiver
and Transmitter) .................................................................................. 15
2.4.
2.3.4.
Serial Peripheral Interface (SPI).......................................................... 16
2.3.5.
External Interupt .................................................................................. 18
2.3.5.
EEPROM (Electrical Erasable Programmable Read-Only Memory) ..... 19
Modul Pemancar ................................................................................................ 20
2.4.1.
RX01 - 433D ....................................................................................... 20
2.4.2.
TX02 - 433D........................................................................................ 22
2.5.
LCD 16x2 .......................................................................................................... 23
2.6.
IC DS1307 – Real Time Clock (RTC) ................................................................ 24
2.7.
Push Button ........................................................................................................ 26
2.8.
LED (Light-Emitting Diode) .............................................................................. 26
BAB III : PERANCANGAN PENELITIAN
3.1.
3.2.
Perancangan Perangkat Keras ............................................................................. 30
3.1.1.
Rangkaian Minimum System ATmega128 ........................................... 30
3.1.2.
Rangkaian RTC – IC DS1307 .............................................................. 30
3.1.3.
Rangkaian LCD ................................................................................... 31
3.1.4.
Rangkaian Sistem Pengendali .............................................................. 32
3.1.5.
Modul Pemancar .................................................................................. 32
Perancangan Perangkat Lunak ............................................................................ 33
3.2.1.
Diagram Alir Program Utama .............................................................. 33
3.2.2.
Diagram Alir Setting Waktu Pengiriman Data ...................................... 37
3.2.3.
Diagram Alir Nilai Data Sensor ........................................................... 38
3.2.4.
Diagram Alir Single Data Sensor ......................................................... 39
3.2.5.
Diagram Alir Subrutin Menu................................................................ 40
3.2.6.
Diagram Alir Pengambilan Data .......................................................... 40
xii
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
3.2.7.
Diagram Alir Subrutin Kontrol Sistem ................................................. 43
3.2.8.
Diagram Alir Subrutin Aksi ................................................................ 43
3.2.9.
Diagram Alir Aksi Pengendalian .......................................................... 44
3.2.10.
Diagram Alir Pengiriman Data ............................................................. 45
BAB IV HASIL DAN PEMBAHASAN
4.1.
Mekanik Kotak Sistem ....................................................................................... 47
4.2.
Subsistem Elektronik .......................................................................................... 49
4.3.
4.2.1.
Rangkaian LCD 16x2........................................................................... 50
4.2.2.
Rangkaian TX02-433D dan RX01-433D.............................................. 50
4.2.3.
Rangkaian Mikrokontroler ................................................................... 51
Cara Penggunaan Alat ........................................................................................ 51
4.3.1.
Pengaturan waktu RTC ........................................................................ 52
4.3.2.
Pengaturan jadwal pengiriman ............................................................. 53
4.3.3.
Menu pengambilan salah satu data sensor ............................................ 53
4.3.3.1. Pengambilan Data Suhu ....................................................... 53
4.3.3.2. Pengambilan data keasaman ................................................. 54
4.3.3.3. Pengambilan data oksigen .................................................... 54
4.3.3.4. Pengambilan data kekeruhan ................................................ 55
4.3.3.5. Pengambilan data konduktivitas ........................................... 56
4.3.4.
Menu ambil paket data ........................................................................ 56
4.3.5.
Menu reset batasan kendali ................................................................. 57
4.3.6.
Menu Metode Kendali ........................................................................ 57
4.3.7.
Pengaturan Kendali Manual ................................................................ 59
4.3.7.1.
Pengendalian pintu masuk .................................................. 59
4.3.7.2.
Pengendalian pintu keluar .................................................. 59
4.3.7.3. Pengendalian pompa air ....................................................... 60
4.3.7.4. Pengendalian pompa aerator ................................................. 61
4.4.
4.3.8.
Pengaturan Kendali Otomatis .............................................................. 62
4.3.9.
Tampilan Batasan Sensor .................................................................... 62
Pengujian Sistem ................................................................................................ 63
4.4.1.
Pengujian Minimum Sistem Dan LCD 16x2 ........................................ 63
4.4.2.
Pengujian TX02-433D dan RX01-433D ............................................... 63
xiii
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
4.5.
Pengujian Software............................................................................................. 66
4.5.1.
4.6.
Perubahan Perancangan Perangkat Lunak ............................................ 66
4.5.1.1.
Diagram Alir Utama ......................................................... 66
4.5.1.2.
Diagram Alir Subrutin Data Masuk .................................. 68
4.5.1.3.
Diagram Alir Subrutin Menu ............................................ 70
4.5.1.4.
Diagram Alir Subrutin Kendali Manual ............................ 71
4.5.1.5.
Diagram Alir Subrutin Pengiriman Data ........................... 73
4.5.2.
Pengujian Pengambilan Data Sensor .................................................... 74
4.5.3.
Pengujian Kendali ................................................................................ 76
4.5.3.1.
Kendali Manual ................................................................ 76
4.5.3.2.
Kendali Otomatis .............................................................. 78
4.5.4.
Pengujian Kirim Paket Data Ke Sentral Unit ........................................ 81
4.5.5.
Pengujian Terima Paket Data dari Sentral Unit..................................... 83
4.5.5.1.
Pengaturan Jadwal Pengiriman ......................................... 84
4.5.5.2.
Pengaturan Batasan Sensor ............................................... 85
4.5.5.3.
Pengiriman Salah Satu Sensor .......................................... 87
Pengujian Alat Terminal Unit ............................................................................. 91
4.6.1.
Pengujian Tombol ................................................................................ 91
4.6.2.
Pengujian waktu RTC .......................................................................... 95
4.6.3.
Pengujian Jadwal Kirim ....................................................................... 97
4.6.4.
Pengujian Reset Batasan Kendali ......................................................... 98
BAB V : KESIMPULAN DAN SARAN
5.1.
Kesimpulan ....................................................................................................... 101
5.2.
Saran…… ......................................................................................................... 101
DAFTAR PUSTAKA
LAMPIRAN
LAMPIRAN A Perancangan Keseluruhan Elektronik Sistem Pengendali ....................... L1
LAMPIRAN B Listing Program Utama Mikrokontroler 8535 ........................................ L2
LAMPIRAN C Listing Program Utama Visual Basic ..................................................... L4
LAMPIRAN D Lembar Pengujian Modul Sentral Unit .................................................. L20
xiv
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
LAMPIRAN E Lembar Pengujian Modul Sentral Unit ................................................... L25
LAMPIRAN F Lembar Pengujian Modul Sentral Unit ................................................... L26
LAMPIRAN G Lembar Pengujian Modul Sentral Unit .................................................. L27
LAMPIRAN H Lembar Pengujian Modul Sentral Unit .................................................. L28
LAMPIRAN I Lembar Pengujian Modul Sentral Unit .................................................... L29
LAMPIRAN J Lembar Pengujian Modul Sentral Unit .................................................... L31
LAMPIRAN K Lembar Pengujian Modul Sentral Unit .................................................. L32
LAMPIRAN L Lembar Pengujian Modul Sentral Unit ................................................... L33
LAMPIRAN M Lembar Pengujian Modul Sentral Unit .................................................. L34
xv
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
DAFTAR GAMBAR
Hal
Gambar 2.1.
Gambar plan pengendalian air kolam ....................................................... 4
Gambar 2.2.
Sensor Suhu ............................................................................................. 5
Gambar 2.3.
Sensor Keasaman ..................................................................................... 6
Gambar 2.4.
PCB Sensor keasaman ............................................................................. 6
Gambar 2.5.
Sensor Cahaya ......................................................................................... 7
Gambar 2.6.
Konstruksi Ketinggian Sensor Konduktivitas ........................................... 8
Gambar 2.7.
Sensor Konduktivitas ............................................................................... 9
Gambar 2.8.
Konstruksi Bagian Master ........................................................................ 10
Gambar 2.9.
Hasil Pengujian ........................................................................................ 10
Gambar 2.10. Gambar konfigurasi pin ATmega 128 ...................................................... 13
Gambar 2.11. Register TWCR ....................................................................................... 15
Gambar 2.12. USART Data Register.............................................................................. 16
Gambar 2.13. Hubungan antara Master-Slave dengan SPI .............................................. 16
Gambar 2.14. SPI control register.................................................................................. 17
Gambar 2.15. SPI Data Register..................................................................................... 18
Gambar 2.16. Register EICRA ....................................................................................... 18
Gambar 2.17. Register EICRB ....................................................................................... 19
Gambar 2.18. Register EIMSK ...................................................................................... 19
Gambar 2.19. Konfigurasi Pin IC RX01-433D ............................................................... 20
Gambar 2.20. Schematic Pin RX01-433D ...................................................................... 20
Gambar 2.21. Konfigurasi Pin IC TX02-433D ............................................................... 22
Gambar 2.22. Schematic Pin TX02-433D....................................................................... 23
Gambar 2.23. LCD 16x2 ................................................................................................ 24
Gambar 2.24. Rangkaian umum dari IC DS1307 ............................................................ 25
Gambar 2.25. Register Control IC DS1307 .................................................................... 26
Gambar 2.26. Gambar Push Button ................................................................................ 26
Gambar 2.27. Konfigurasi LED ..................................................................................... 27
Gambar 2.28. Rangkaian indikator LED......................................................................... 27
Gambar 3.1.
Konsep perancangan ................................................................................ 29
xvi
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
Gambar 3.2.
Rangkaian RTC ....................................................................................... 31
Gambar 3.3.
Rangkaian LCD 16x2 .............................................................................. 31
Gambar 3.4.
Rangkaian Sistem Pengendali .................................................................. 32
Gambar 3.5.
Rangkaian Modul Pemancar .................................................................... 32
Gambar 3.6.
Diagram Alir Utama ................................................................................ 34
Gambar 3.7.
Diagram Alir Setting Waktu Pengiriman Data .......................................... 37
Gambar 3.8.
Diagram Alir Setting nilai data sensor ...................................................... 38
Gambar 3.9.
Diagram Alir Single Data Sensor ............................................................. 39
Gambar 3.10. Diagram Alir Subrutin Menu ................................................................... 40
Gambar 3.11. Diagram Alir Subrutin Pengambilan Data Suhu dan pH ........................... 41
Gambar 3.12. Diagram Alir Subrutin Pengambilan Data DO dan Kekeruhan ................. 42
Gambar 3.13. Diagram Alir Subrutin Data Koduktivitas dan semua sensor .................... 42
Gambar 3.14. Diagram Alir Kontrol Sistem ................................................................... 43
Gambar 3.15. Diagram Alir Subrutin Aksi ..................................................................... 44
Gambar 3.16. Diagram Alir Aksi Pengendalian .............................................................. 44
Gambar 3.17. Diagram Alir Subrutin Kirim Data ........................................................... 45
Gambar 4.1.
Mekanik kotak sistem tampak depan ........................................................ 46
Gambar 4.2.
Mekanik kotak sistem tampak samping kanan .......................................... 47
Gambar 4.3.
Mekanik kotak sistem tampak samping kiri .............................................. 47
Gambar 4.4.
Mekanik kotak sistem tampak belakang ................................................... 47
Gambar 4.5.
Rangkaian LCD 16x2 .............................................................................. 48
Gambar 4.6.
Rangkaian TX02-433D dan RX01-433D.................................................. 48
Gambar 4.7.
Rangkaian mikrokontroler........................................................................ 49
Gambar 4.8.
Tampilan Awal Alat Terminal Unit .......................................................... 50
Gambar 4.9.
Tampilan menu RTC................................................................................ 50
Gambar 4.10. Tampilan menu jadwal pengiriman paket data .......................................... 51
Gambar 4.11. Tampilan menu ambil data suhu ............................................................... 54
Gambar 4.12. Tampilan menu ambil data Keasaman ...................................................... 54
Gambar 4.13. Tampilan menu ambil data oksigen .......................................................... 55
Gambar 4.14. Tampilan menu ambil data kekeruhan ...................................................... 55
Gambar 4.15. Tampilan menu ambil data konduktivitas ................................................. 56
Gambar 4.16. Tampilan menu ambil semua data sensor .................................................. 57
Gambar 4.17. Tampilan menu reset batasan kendali ....................................................... 57
xvii
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
Gambar 4.18. Tampilan menu pilihan kendali manual .................................................... 58
Gambar 4.19. Tampilan menu pilihan kendali otomatis .................................................. 58
Gambar 4.20. Tampilan kendali pintu air masuk tertutup................................................. 59
Gambar 4.21. Tampilan kendali pintu air masuk terbuka ................................................. 59
Gambar 4.22. Tampilan kendali pintu air keluar tertutup ................................................. 60
Gambar 4.23. Tampilan kendali pintu air keluar terbuka ................................................. 60
Gambar 4.24. Tampilan kendali pompa air keadaan mati................................................. 60
Gambar 4.25. Tampilan kendali pompa air keadaan hidup ............................................... 61
Gambar 4.26. Tampilan kendali pompa aerator keadaan mati .......................................... 61
Gambar 4.27. Tampilan kendali pompa aerator keadaan hidup ........................................ 61
Gambar 4.28. Tampilan akses ditolak pada kendali otomatis ........................................... 62
Gambar 4.29. Tampilan batasan sensor suhu dan keasaman ............................................ 62
Gambar 4.30. Tampilan batasan sensor kekeruhan, konduktivitas dan oksigen ................ 62
Gambar 4.31. Tampilan LCD 16x2 ................................................................................. 63
Gambar 4.31. Tampilan LCD 16x2 kirim karakter .......................................................... 64
Gambar 4.32. Tampilan LCD 16x2 terima karakter ......................................................... 64
Gambar 4.33. Tampilan LCD 16x2 tidak terima data ...................................................... 64
Gambar 4.34. Diagram alir utama(1) ............................................................................... 67
Gambar 4.34. Diagram alir utama(2) ............................................................................... 68
Gambar 4.35. Diagram alir subrutin data masuk(1) ......................................................... 68
Gambar 4.35. Diagram alir subrutin data masuk(2) ......................................................... 69
Gambar 4.36. Diagram alir subrutin menu(1) .................................................................. 70
Gambar 4.36. Diagram alir subrutin menu(2) .................................................................. 71
Gambar 4.37. Diagram alir subrutin kendali manual ........................................................ 72
Gambar 4.38. Diagram alir subrutin pengiriman data ...................................................... 73
Gambar 4.39. Tampilan LCD 16x2 dummy sensor .......................................................... 74
Gambar 4.40. Tampilan LCD 16x2 data suhu .................................................................. 74
Gambar 4.41. Tampilan LCD 16x2 tidak terima data suhu .............................................. 75
Gambar 4.42. Program Pengambilan data sensor ............................................................. 75
Gambar 4.43. Tampilan awal kendali LCD ..................................................................... 76
Gambar 4.44. Tampilan awal kendali LED ...................................................................... 76
Gambar 4.45. Tampilan LCD kendali pintu masuk keadaan hidup................................... 77
Gambar 4.46. Tampilan LED kendali pintu masuk keadaan hidup ................................... 77
xviii
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
Gambar 4.47. Program tampil status kendali pada LCD .................................................. 77
Gambar 4.48. Tampilan status kendali pada LED ............................................................ 78
Gambar 4.49. Nilai sensor sebelum percobaan kendali otomatis ...................................... 79
Gambar 4.50. Kendali sebelum percobaan kendali otomatis ............................................ 79
Gambar 4.51. Status kendali sebelum percobaan kendali otomatis ................................... 79
Gambar 4.52. Nilai sensor yang telah diubah kendali otomatis ........................................ 79
Gambar 4.53. Status kendali telah berubah pada kendali otomatis ................................... 80
Gambar 4.54. Status kendali telah berubah pada kendali otomatis ................................... 80
Gambar 4.55. Program kendali otomatis .......................................................................... 80
Gambar 4.56. LCD 16x2 terima paket data di sentral unit ............................................... 82
Gambar 4.57. LCD 16x2 data dummy sensor yang dikirim ke sentral unit ....................... 82
Gambar 4.58. Program paket data yang dikirim(1) .......................................................... 82
Gambar 4.58. Program paket data yang dikirim(2) .......................................................... 83
Gambar 4.59. Program penerimaan karakter dari sentral unit........................................... 83
Gambar 4.60. Tampilan LCD 16x2 terima data waktu kirim paket data ........................... 84
Gambar 4.61. Tampilan LCD 16x2 jadwal waktu pengiriman paket data......................... 84
Gambar 4.62. Program terima karakter J dari sentral unit ................................................ 84
Gambar 4.63. Tampilan LCD 16x2 terima setting batasan suhu terminal unit .................. 85
Gambar 4.64. Tampilan LCD 16x2 terima setting batasan keasaman terminal unit .......... 86
Gambar 4.65. Tampilan LCD 16x2 batasan suhu dan keasaman di terminal unit ............. 86
Gambar 4.66. Tampilan LCD 16x2 terima setting batasan oksigen terminal unit ............. 86
Gambar 4.67. Tampilan LCD 16x2 terima setting batasan kekeruhan terminal unit ......... 86
Gambar 4.68. Tampilan LCD 16x2 terima setting batasan konduktivitas terminal unit .... 86
Gambar 4.69. Tampilan LCD 16x2 batasan kekeruhan, konduktivitas dan oksigen.......... 87
Gambar 4.70. Program terima batasan sensor oksigen, kekeruhan dan konduktivitas ....... 87
Gambar 4.71. Tampilan LCD 16x2 terima karakter sensor suhu ...................................... 88
Gambar 4.72. Tampilan LCD 16x2 nilai suhu pada dummy sensor .................................. 89
Gambar 4.73. Tampilan LCD 16x2 kirim data suhu ke sentral unit .................................. 89
Gambar 4.74. Tampilan LCD 16x2 terima data suhu dari terminal unit ........................... 89
Gambar 4.75. Program pengiriman salah satu sensor ke sentral unit(1)............................ 90
Gambar 4.75. Program pengiriman salah satu sensor ke sentral unit(2)............................ 91
Gambar 4.77. Tampilan awal waktu RTC pada pengujian ............................................... 95
Gambar 4.78. Tampilan atur waktu RTC pada mode menu .............................................. 95
xix
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
Gambar 4.79. Tampilan atur jam RTC ............................................................................ 95
Gambar 4.80. Tampilan atur menit RTC ......................................................................... 96
Gambar 4.81. Tampilan atur tanggal RTC ....................................................................... 96
Gambar 4.82. Tampilan atur bulan RTC .......................................................................... 96
Gambar 4.83. Tampilan atur tahun RTC .......................................................................... 96
Gambar 4.84. Tampilan waktu RTC berhasil diubah ....................................................... 97
Gambar 4.85. Tampilan awal waktu RTC yang telah diubah ........................................... 97
Gambar 4.86. Tampilan waktu sebelum pengiriman paket data ....................................... 98
Gambar 4.87. Tampilan waktu jadwal pengiriman paket data .......................................... 98
Gambar 4.88. Tampilan kirim paket data dari terminal unit ............................................. 98
Gambar 4.89. Tampilan kirim paket data dari terminal unit ............................................. 98
Gambar 4.90. Tampilan batasan suhu dan keasaman diubah sentral unit .......................... 99
Gambar 4.91. Batasan kekeruhan, konduktivitas dan oksigen diubah sentral unit ............ 99
Gambar 4.92. Tampilan berhasil reset batasan kendali .................................................... 99
Gambar 4.93. Batasan suhu dan keasaman setelah melakukan reset ................................ 99
Gambar 4.94. Batasan kekeruhan, konduktivitas dan oksigen setelah melakukan reset ... 100
xx
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
DAFTAR TABEL
Hal
Tabel.2.1. Aksi pengendalian ...................................................................................... 11
Tabel.2.2. Pengaturan Bit ISCn1 dan ISCn0 ............................................................... 18
Tabel.2.3. Fungsi Pin RX01-433D .............................................................................. 21
Tabel.2.4. Fungsi Pin TX02-433D .............................................................................. 23
Tabel.2.5. Tabel Konfigurasi PIN LCD 16x2 .............................................................. 24
Tabel.2.6. Memori IC DS1307 .................................................................................... 25
Tabel.3.1. Tabel karakter Perintah dari sentral unit ..................................................... 35
Tabel.3.2. Tabel Karakter Data(1) ............................................................................... 35
Tabel.3.2. Tabel Karakter Data(2) ............................................................................... 36
Tabel.3.3. Format Data ............................................................................................... 36
Tabel.4.1. Pengujian komunikasi frekuensi 434Mhz ................................................... 65
Tabel.4.2. Pengujian komunikasi frekuensi 435Mhz ................................................... 65
Tabel.4.3. Contoh pengambilan data sensor ................................................................ 74
Tabel.4.4. Contoh paket data yang dikirim .................................................................. 81
Tabel.4.5. Pengujian kirim paket data ......................................................................... 81
Tabel.4.6. Contoh terima data batasan sensor .............................................................. 85
Tabel.4.7. Contoh paket data ambil salah satu sensor .................................................. 88
Tabel.4.8. Pengujian tombol pada tampilan awal ........................................................ 92
Tabel.4.9. Pengujian tombol pada menu RTC ............................................................. 92
Tabel.4.10. Pengujian tombol pada jadwal kirim........................................................... 93
Tabel.4.11. Pengujian tombol pada menu pengambilan data sensor ............................... 93
Tabel.4.12. Pengujian tombol pada menu reset batasan kendali .................................... 94
Tabel.4.13. Pengujian tombol pada menu metode kendali ............................................. 94
Tabel.4.14. Hasil Pengujian waktu RTC........................................................................ 97
xxi
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
BAB I
PENDAHULUAN
1.1.
Latar Belakang
Tidak dapat dipungkiri bahwa penggunaan bibit dan induk yang unggul akan
meningkatkan produksi dan keuntungan budidaya ikan air tawar. Direktorat Jenderal
Perikanan Budidaya Kementerian Kelautan dan Perikanan menyebutkan bahwa, produksi
perikanan budidaya terus mengalami peningkatan dari tahun ke tahun. Selama periode 2010 –
2013, produksi perikanan budidaya meningkat sekitar 28,64% per tahun, yaitu 6,28 juta ton
pada tahun 2010 dan mencapai 13,31 juta ton pada tahun 2013 (data sementara). Sedangkan
nilai produksinya mengalami kenaikan sekitar 22,51 % per tahun dalam kurun waktu yang
sama. Capaian peningkatan yang signifikan selain dari rumput laut, juga dari peningkatan jenis
ikan air tawar, utamanya ikan nila, mas, dan lele. Ketiga jenis ikan tersebut semakin
diandalkan, baik untuk mendukung pertumbuhan ekonomi dan perolehan devisa Negara,
menyediakan lapangan kerja di pedesaan dan juga dapat dilakukan berkesinambungan dengan
menerapkan budidaya ramah lingkungan [1].
Peningkatan produksi budidaya air tawar yang sangat signifikan ini merupakan hasil
dari penggunaan induk dan benih unggul, pakan yang sesuai dan efisien, penerapan teknologi
yang aplikatif dan inovatif serta intensifikasi budidaya yang ramah lingkungan dan ini
merupakan bagian dari Total Akuakultur [1]. Hal penting lain adalah pengelolaan air kolam.
Untuk mendapatkan hasil maksimal kualitas dan kuantitas air harus tetap terjaga. Kesesuaian
lingkungan hidup untuk setiap ikan berbeda tergantung pada jenis ikan. Jenis ikan tertentu
yang sesuai dengan kondisi lingkungannya dapat bertumbuh dan berkembang. Sebaliknya jika
keadaan tidak sesuai akan menghambat pertumbuhan dan perkembangannya. Suhu, pH dan
oksigen merupakan faktor yang paling sering ditemukan dalam khasus kematian ikan.
Dalam penelitian Payara, dkk (2014) telah berhasil dibuat alat untuk mengendalikan
kualitas air kolam dengan parameter yang dikendalikan meliputi suhu, kandungan oksigen ,
pH, kekeruhan air serta konduktivitas air kolam. Sistem pengendalian kualitar air terdiri dari
pengendalian pintu inlet, pengendalian pintu outlet, pengendalian aerator, dan penjernihan air.
Sistem tersebut memiliki komunikasi jarak dekat yang dilengkapi dengan mikrokontroler
dalam menentukan aksi yang akan dilakukan berdasarkan masukan hasil pengukuran [2]. Dari
1
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
2
hasil survey yang didapatkan, kebutuhan para petani kolam ikan ini ialah pengendalian dan
monitoring jarak jauh dikarenakan keberadaan kolam ikan yang jauh sehingga dapat
mempermudah para petani ikan memonitoring dan mengendalikan air kolam ikan dari jarak
jauh tanpa harus melihat langsung kolam ikan tersebut.
Berdasarkan hal tersebut peneliti ingin mengembangkan penelitian tersebut dengan
sistem telemetri antara pengendali utama sistem tersebut atau sebagai sentral unit dengan
terminal unit yang bertugas mengumpulkan data-data dari sensor yang ada. Pada sistem ini
penulis akan lebih berkonsentrasi pada bagian terminal unit, dimana tugas dari terminal unit
ini sendiri adalah mengumpulkan data dari setiap sensor yang ada, kemudian data-data ini
akan dijadikan satu paket data yang siap dikirimkan ke sentral unit. Bila parameter-parameter
tersebut berada di luar standar maka secara otomatis terminal unit akan melakukan beberapa
pengendalian atau aksi, antara lain : menutup saluran masuk air, mengurangi air kolam dengan
membuka saluran air kolam ke pembuangan, menarik air dari sumber lain untuk
mengendalikan kualitas air, mengaktifkan aerator saat DO berada di bawah standar.
Pengendalian ini juga dapat dilakukan secara manual dari sentral unit ketika data yang di
terima tidak sesuai dengan yang diinginkan.
1.2.
Tujuan dan Manfaat Penelitian
Tujuan dilakukan penelitian ini adalah Membuat alat monitoring dan kontrol sistem
komunikasi yang dapat memudahkan dalam proses monitoring kualitas air pada kolam ikan
sehingga dapat dikendalikan dari jarak jauh.
Manfaat dilakukan penelitian ini adalah:
1. Menjaga kualitas air kolam ikan untuk menghasilkan kualiatas ikan yang baik.
2. Mendukung pembudidayaan ikan.
3. Membantu peternak ikan air tawar memonitoring kolam ikan dari jarak jauh.
1.3.
Batasan Masalah
Batasan masalah dalam penelitian ini berisikan tentang batasan komponen yang akan
digunakan:
1. Menggunakan ATMega128 sebagai mikrokontroler.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
3
2. LCD 16X2 sebagai penampil menu dan waktu RTC.
3. Proses pengiriman perintah dan pengambilan paket data dilakukan secara
bergantian atau half duplex.
4. Komunikasi antara terminal unit dengan dummy sensor menggunakan komunikasi
USART sedangkan komunikasi TX02-433D dan RX01-433D menggunakan SPI.
5. Data dari setiap sensor memiliki karakter khusus yang mewakili sensor tersebut.
6. TX02-433D sebagai pengirim paket data ke sentral unit dan RX01-433D sebagai
penerima intruksi dari sentral unit.
7. Pada proses percobaan kendali menggunakan LED, dengan push button sebagai
masukan pengaturan kendali.
1.4.
Metodologi Penelitian
Metode penulisan yang digunakan adalah :
1. Studi lineatur berupa pengumpulan referensi buku, internet, jurnal dan artikel.
2. Studi kasus terhadap alat yang sudah dibuat sebelumnya. Tahap ini dilakukan untuk
memahami prinsip kerja dari alat yang telah dibuat sebelumnya.
3. Perancangan sistem hardware dan software. Tahap ini bertujuan mencari bentuk
model yang optimal dari sistem yang dibuat dengan mempertimbangkan dari
berbagai factor permasalahan dan kebutuhan yang telah ditentukan.
4. Pembuatan sistem hardware dan software. Sistem bekerja apabila, Terminal unit
dapat menerima data dari dummy sensor yang telah disediakan dan melakukan aksi
pengendalian dari hasil data sensor yang didapatkan. Kemudian data dari dummy
sensor ini dikumpulkan menjadi satu paket data yang siap dikirimkan ke sentral
unit sesuai jadwal waktu yang telah ditentukan. Paket data ini akan dikirimkan dua
kali ke sentral unit.
5. Pengujian alat menggunakan LED sebagai keluaran kendali dan push button
sebagai masukan, dimana hasil yang didapatkan menggunakan dummy variable.
6. Analisa dan pengambilan kesimpulan dilakukan dengan membandingkan data yang
dikirim Terminal Unit dengan hasil yang diterima pada sentral Unit.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
BAB II
DASAR TEORI
2.1.
State of The Art
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[3]. Sebaliknya, jika keadaan tidak sesuai akan menghambat pertumbuhan dan
perkembangannya.
Pada penelitian [11] yang sudah ada telah berhasil dibuat prototype model kolam ikan.
Gambar 2.1. Model Kolam Ikan
Pada gambar 2.1. ukuran bak prototype yang digunakan ialah ; panjang bak 51,5cm,
lebar bak 36cm dan tinggi bak 31,5cm, dengan keterangan gambar; (1) bak sumber, (2) boks
elektronik, (3) bak kolam, (4) penampang aerator, (5) bak pembuangan, (6) bak sumur
(sumber lain).
Pengujian pengendalian air merupakan pengujian yang dilakukan untuk mengendalikan
kualitas air pada bak kolam. Pengujian dilakukan dengan menambahkan 1cm air ke bak kolam
pada ketinggian minimum, penambahan air dilakukan sampai air keluar melalui jalur inlet.
4
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
5
2.1.1. Pengendalian Temperatur Air
Temperatur air sangat berpengaruh pada pertumbuhan dan perkembangan ikan.
Temperatur air yang tidak cocok, misalnya terlalu tinggi atau terlalu rendah dapat
menyebabkan ikan tidak dapat bertumbuh dengan baik. 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[3]. Sensor suhu terdiri dari dua bagian yaitu bagian kerangka sensor dan sensor LM35.
Sensor LM35 terletak di ujung kerangka sensor dan mengalami kontak langsung dengan
sampel air seperti pada gambar 2.2.
Gambar 2.2. Sensor Suhu[4]
2.1.2. Pengendalian Derajat Keasaman Air
Derajat keasaman 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[3].
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 akan berkurang).
Pengujian pengendalian keasaman air dibagi menjadi 2 yaitu pengujian pengendalian
potential of Hydrogen (pH) asam (dari pH di bawah normal ke normal), dan pengendalian pH
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
6
basa (dari pH di atas normal ke normal). Pengendalian pH asam dilakukan dengan
mencampurkan air kolam dengan air sumur, air kolam yang memiliki pH 4,6 telah kurang dari
batas normal pH air untuk ikan. Untuk mengendalikan pH air kolam maka dicampurkan
dengan air sumur yang memiliki pH 6,3 untuk mendapatkan pH kurang dari 5. Pengendalian
pH basa dilakukan dengan air kolam yang memiliki 8,7 telah kurang dari batas normal pH air
untuk ikan maka air kolam dicampurkan dengan air sumur yang memiliki pH sebesar 6,3.
Untuk mendapatkan pH yang lebih dari 8,7.
Gambar 2.3. Sensor pH
Mekanik sensor dapat dilihat dari gambar 2.4. dalam kotak mekanik sensor ini terdapat
beberapa bagian (1) kipas DC, (2) rangkaian driver motor, (3) rangkaian sisterm
mikrokontroler dan LCD, (4) rangkaian catu daya, (5) trafo 1 A.
Gambar 2.4. PCB Sensor pH5]
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
7
2.1.3. Pengendalian 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[3]. 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.
Standar kekeruhan air yang baik bagi ikan harus kurang dari 400 NTU[6], bila kekeruhan
berada di atas 400 NTU maka akan mengganggu pertumbuhan ikan.
Dalam pengujian pengendalian kekeruhan air dilakukan dengan mencampurkan air
sumur dengan air kolam. Air kolam yang dibuat keruh (434 NTU) dikendalikan dengan air
sumur yang memiliki kekeruhan sebesar 104 NTU. Pada pengendalian ini menggunakan
sensor cahaya untuk mendeteksi apakah air di dalam kolam berada pada kondisi keruh atau
jernih, berikut adalah rangkaian sensor cahaya terdapat pada Fototransistor dalam pengujian
derajat kekeruhan.
Gambar 2.5. Sensor Cahaya[7]
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
8
2.1.4. Pengendalian 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 per liter air)[3]. Pengaliran air yang baik dan
permukaan kolam yang selalu terbuka dapat meningkatkan kadar oksigen dalam air.
Peningkatan nilai kandungan oksigen dapat ditingkatkan dengan menggunakan
aerator. Peningkatan kandungan oksigen dikarenakan kontak yang terjadi antara air dan udara,
sehingga oksigen dalam air meningkat dari sebelumnya 0.07339% menjadi 0.33763%.
Gambar 2.6. Konstruksi Ketinggian Sensor Konduktivitas[8]
2.1.5. Pengendalian Konduktivitas Air
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 di dalam menghantarkan arus listrik. Standar
konduktivitas yang baik bagi ikan ialah kurang dari 5000μS (mikro simens) dengan suhu 25
ºC [9]. Bila konduktivitas berada di atas 5000μS maka akan mengganggu kehidupan ikan.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
9
Pengendalian konduktivitas dilakukan dengan mencampurkan air kolam dengan air
sumur. Air kolam yang memiliki konduktivitas 5548 uS/cm dengan suhu sebesar 250C, telah
melewati batas normal konduktivitas air untuk ikan maka harus dikendalikan. Untuk
mengendalikan konduktivitas air kolam, maka air kolam dicampurkan dengan air sumur yang
memiliki konduktivitas sebesar 543 uS/cm. Untuk mendapatkan konduktivitas yang lebih dari
500uS/cm maka air kolam dicampurkan dengan garam.
Gambar 2.7. Sensor Konduktivitas[4]
2.1.6. Pengambilan Data Sensor
Pengambilan data dari sensor dilakukan menggunakan ATMega128, dimana master
akan mengirimkan karakter ke slave (sensor), jika dapat diterima oleh slave, maka slave akan
membalas kiriman tersebut dengan data. Pengambilan data dari sensor dilakukan secara
bergantian dengan master mengirimkan karakter satu per satu ke setiap sensornya. Lalu data
dari sensor tersebut dikumpulkan menjadi satu paket data yang akan siap dikirimkan ke
komputer yang akan ditampilkan dalam bentuk grafik, namun telah disediakan tabel untuk
mempermudah pengguna dalam melihat data. Berikut adalah gambar konstruksi bagian dari
master.[3]
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
Gambar 2.8. Konstruksi Bagian Master
Gambar 2.9. Hasil Pengujian[10]
10
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
11
2.1.7. Aksi Pengendalian
Pada sistem ini digunakan beberapa aktuator yang diaktifkan berdasarkan data input
bagian monitoring, aktuator yang digunakan adalah pintu inlet, pintu outlet, pompa sumur dan
pompa aerator. Salah satu output diaktifkan berdasarkan perbandingan hasil pengukuran dari
bagian monitoring dan standar yang telah ditentukan. Karena adanya perbedaan standar
kualitas air untuk tiap jenis ikan, maka ditetapkan standar air yang dikendalikan sistem. Hal ini
ditetapkan agar sistem dapat digunakan untuk semua jenis ikan seperti pada tabel 2.1. Pada
tabel tersebut juga ditentukan aksi pengendalian berdasarkan standar yang ditentukan;
Tabel 2.1. Aksi Pengendalian[11]
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
2.2.
12
Dummy Data
Data dummy adalah data yang menyerupai data aslinya tetapi tidak memiliki fungsi
aslinya. Data ini akan digunakan untuk menggantikan data setiap sensor dalam pengujian dan
pengambilan data. Data yang digunakan disimpan pada eeprom setiap mikro untuk
menggantikan sensor. Sensor suhu untuk kualitas kolam batas pengukurannya adalah 15ºC 39ºC dengan perbedaan data setiap 1,5ºC, untuk sensor keasaman batas pengukurannya adalah
4 pH – 10,5 pH dengan perbedaan data setiap 0,5 pH, sensor kekeruhan memiliki batas
pengukuran sebesar 25 NTU – 475 NTU dengan perbedaan data sebesar 25 NTU, dan sensor
DO memiliki batas pengukuran 3 ppm – 9,5 ppm dengan perbedaan data setiap 0,5 ppm [10].
Setiap sensor memiliki waktu pengukuran yang berbeda. Sensor kekeruhan, dan keasaman
waktu yang dibutuhkan untuk mendapatkan data yang valid selama 5 setik [5]. Untuk sensor
kadar oksigen waktu yang dibutuhkan untuk mendapatkan data yang valid sekitar 20 menit
[8].
Dalam pengujian, data yang digunakan mengikuti data yang sudah pernah didapat dari
tugas akhir Charles Wilianto yang berjudul Sistem Komunikasi Pengendalian Kualitas Air
Kolam Ikan Berbasis Atmega128. Setiap mikro mewakili 1 sensor yang memiliki jumlah data
yang berbeda. Mikro yang mewakili sensor suhu memiliki 17 data dari 15ºC - 39ºC dengan
perbedaan data setiap 1,5º, untuk mikro yang mewakili sensor keasaman memiliki 14 data dari
4 pH – 10,5 pH dengan perbedaan data setiap 0,5 pH, sedangkan mikro yang mewakili sensor
kekeruhan mimiliki 19 data dari 25 NTU – 475 NTU dengan perbedaan data sebesar 25 NTU,
dan untuk mikro yang mewakili sensor DO memiliki 14 data dari 3 ppm – 9,5 ppm dengan
perbedaan data setiap 0,5 ppm.
Setiap mikro menampilkan data yang sudah disimpan di eeprom ke LCD yang
terhubung ke mikro tersebut. Mikro yang mewakili sensor kekeruhan dan keasaman data yang
ditampilkan berubah setiap 5 detik, untuk mikro yang mewakili sensor DO datanya berubah
setiap 20 menit. Waktu tersebut mengikuti waktu sebenarnya yang diperlukan sensor untuk
mendapatkan data yang valid. Untuk mikro yang mewakili sensor suhu, data yang ditampilkan
berubah setiap 5 detik mengikuti waktu dari sensor kekeruhan dan keasaman karena tidak ada
referensi yang menunjukan waktu untuk mendapatkan data yang valid.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
2.3.
13
Mikrokontroler ATmega 128[12]
ATmega128 merupakan sebuah mikrokontroler CMOS 8-bit berdaya rendah yang
berdasarkan arsitektur AVR RISC (Reduced Instruction Set Computing). Mikrokontroler
ATmega 128 merupakan mikrokontroler buatan Atmel Corporation yang memiliki 53 pin
dengan catu daya tunggal 4,5 – 5,5 volt..
a)
Saluran I/O sebanyak 53 buah, yaitu Port A, Port B, Port C, Port D, Port E, Port F dan
Port G.
b)
ADC 10 bit sebanyak 8 saluran.
c)
Internal SRAM sebesar 4 kbyte.
d)
Memori flash sebesar 128 kBytes.
e)
Interupsi Eksternal.
f)
Port antarmuka SPI.
g)
EEPROM sebesar 4 kbyte.
h)
Dua buah port USART untuk komunikasi serial.
Gambar 2.10. Gambar konfigurasi pin ATmega 128
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
14
2.2.1. Port Input/Output
ATmega128 mempunyai 53 pin I/O yang terbagi menjadi tujuh port dan mampu
difungsikan sebagai masukan atau keluaran. Setiap pin I/O mempunyai tiga register yaitu
DDRxn, PORTxn dan PINxn yang nilainya tergantung dari aplikasi pin I/O itu sendiri. Huruf
“x” mewakili Port I/O tersebut, sedangkan huruf “n” mewakili nomor pin I/O yang dituju.
Untuk mengatur sebuah pin I/O menjadi sebuah keluaran maka register DDR pada pin tersebut
harus diberi logika tinggi, sedangkan agar berfungsi sebagai masukan, maka DDR pada pin
tersebut diberi logika rendah [13].
Saat berfungsi sebagai pin masukan, maka register PINxn digunakan untuk membaca
nilai pada pin tersebut. Sedangkan saat berfungsi sebagai sebuah pin keluaran, register
PORTxn digunakan untuk mengatur nilai keluaran pin I/O tersebut.
2.2.2.
– Two-Wire Serial Communication
Two-wire serial communication (TWI) adalah salah satu fitur yang sering dipakai pada
aplikasi mikrokontroler. TWI memungkinkan pengguna untuk terhubung dengan 128
perangkat yang berbeda dengan hanya menggunakan dua jalur data, SCL sebagai pengatur
clock dan SDA sebagai jalur utama.
Terdapat lima register yang digunakan untuk mengatur penggunaan TWI, yaitu TWI
Bit Rate Register (TWBR), TWI Control Register (TWCR), TWI Status Register (TWSR),
TWI Data Register (TWDR), dan TWI (Slave) Address Register (TWAR).
Register TWBR digunakan sebagai pengatur bit rate dari komunikasi serial. Nilai
TWBR dapat dihitung dari rumus:
(2.4)
Register TWCR digunaakn sebagai pengatur operasi TWI. Register ini terdiri dari 8-bit
data seperti ditunjukkan gambar 2.11.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
15
Gambar 2.11. Register TWCR
Memberi logika high pada bit TWSTA membuat perangkat menjadi master device
pada jalur data. Perangkat akan mendeteksi keberadaan jalur data, apabila jalur data tersedia,
maka perangkat akan menginisialisai kondisi START. Apabila jalur data sedang digunakan
oleh perangkat lain, maka perangkat akan menunggu sampai terdeteksi kondisi STOP
kemudian menginisialisasi kondisi START dan mengambil alih jalur data.
Sedangkan bit TWSTA digunakan untuk menginisialisasi kondisi STOP pada jalur
data. Apabila perangkat diatur sebagai slave device, maka bit ini dapat digunakan untuk
memulihkan kondisi eror.
Bit TWEN digunakan untuk mengaktifkan antarmuka TWI, saat TWEN bernilai 1,
maka antarmuka TWI akan mengambil alih pin I/O SDA dan SCL dan menggunakannya
sebagai jalur data.
2.2.3. Universal Synchronous and Asynchronous serial Receiver and
Transmitter (USART)
Universal Synchronous and Asynchronous Serial Receiver and Transmitter (USART)
merupakan salah satu mode komunikasi serial yang dimiliki ATmega128. USART merupakan
komunikasi yang memiliki fleksibilitas tinggi yang dapat digunakan untuk melakukan transfer
data baik antara mikrokontroler maupun dengan modul modul eksternal termasuk PC yang
mempunyai fitur UART.
USART memungkinkan transmisi data baik secara synchronous maupun asynchronous
sehingga USART kompatibel dengan UART. Pada ATmega128 umumnya pengaturan mode
komunikasi baik synchronous maupun asynchronous adalah sama. Perbedaannya terletak pada
sumber clocknya. Pada mode synchronous mempunyai sumber clock sendiri sedangkan pada
asynchronous menggunakan satu sumber clock secara bersamaan. Mode asynchronous secara
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
16
hardware hanya membutuhkan dua pin yaitu TXD dan RXD sedangkan untuk mode
synchronous membutuhkan 3 pin yaitu RXD, TXD, dan SCK. Register yang digunakan adalah
USART Data Register (UDR). Meskipun register UDR hanya menempati satu lokasi memori
yaitu 0x0C (0x02C) tetapi sebenarnya register UDR mempunyai dua register I/O yaitu RXB
sebagai buffer untuk menyimpan data yang diterima dan TXB sebagai buffer untuk
menyimpan data yang dikirim. Bagan UDR dapat dilihat pada gambar 2.12.
Gambar 2.12. USART Data Register
2.2.4. Serial Peripheral Interface (SPI)
Transfer data pada SPI digunakan antara master dan slave dalam jarak dekat dengan
kecepatan cukup tinggi. Terdapat empat buah pin yang mengatur komunikasi serial antara
master dan slave yaitu:
1.
SCLK dari master ke slave yang berfungsi sebagai clock.
2.
MOSI jalur data dari master yang masuk ke dalam slave.
3.
MISO jalur data keluar dari slave dan masuk kedalam master.
4.
SS (Slave Select) merupakan pin yang berfungsi mengaktifkan slave.
Gambar 2.13. Hubungan antara Master-Slave dengan SPI
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
17
Setiap bit dari register yang berhubungan dengan SPI mempunyai fungsinya masing-masing.
Dan untuk mengaktifkan SPI. Pada gambar 2.14. menunjukan register yang berhubungan
dengan SPI.
Gambar 2.14. SPI control register
a)
Bit 7 – SPIE: SPI Interrupt Enable. SPIE digunakan untuk mengaktifkan interupsi
SPI.
b)
Bit-6 SPE (SPI Enable). SPE digunakan untuk mengaktifkan dan menonaktifkan
komunikasi SPI dimana jika SPI bernilai 1 maka komunikasi SPI aktif sedangkan jika
bernilai 0 maka komunikasi SPI tidak aktif.
c)
Bit 5 – DORD: Data Order. DORD digunakan untuk memilih urutan pengiriman
data, dari LSB atau MSB terlebih dahulu. Nilai satu untuk LSB dan nilai nol untuk
MSB.
d)
Bit-4 MSTR (Master or Slave Select). MSTR digunakan untuk mengkonfigurasi
sebagai master atau slave secara software dimana jika MSTR bernilai 1 maka
terkonfigurasi sebagai master sedangkan MSTR bernilai 0 maka terkonfigurasi sebagai
slave. Pengaturan bit MSTR ini tidak akan bisa dilakukan jika pin SS dikonfigurasi
sebagai input karena jika pin SS dikonfigurasi sebagai input maka penentuan master
atau slavenya otomatis dilakukan secara hardware yaitu dengan membaca level
tegangan pada SS.
e)
Bit-3 CPOL dan Bit-2 CPHA digunakan untuk pengaturan polaritas dan fasa dari
clock.
f)
Bit-1 SPR1/0 (SPI Clock Rate Select) SPR1 dan SPR0 digunakan untuk menentukan
kecepatan clock yang digunakan dalam komunikasi SPI.
SPIF (SPI Interrupt Flag) SPIF digunakan untuk mengetahui bahwa proses pengiriman data
satu byte sudah selesai. Jika proses pengiriman data sudah selesai maka SPIF akan bernilai
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
18
satu (high). SPIF ini berada dalam SPI Status Register (SPSR). SPI Data Register (SPDR)
SPDR merupakan register yang digunakan untuk menyimpan data yang akan dikirim atau
diterima pada komunikasi SPI.
Gambar 2.15. SPI Data Register
2.2.5. External Interupt
Mikrokontroler ATmega128 mempunyai delapan buah pin yang dapat digunakan
sebagai external interupt. Empat register utama digunakan sebagai pengatur kerja external
interupt.
Gambar 2.16. Register EICRA
Register EICRA digunakan untuk mengatur kerja pin INT0 sampai INT3. Bit ISCn1
dan ISCn0 digunakan sebagai pengatur sinyal yang dapat digunakan sebagai perintah interupsi
pada mikrokontroler, dengan huruf “n” menyatakan pin interupsi yang dituju.
Tabel 2.2. Pengaturan Bit ISCn1 dan ISCn0
ISCn1
0
0
ISCn0
0
1
1
0
1
1
Keterangan
Logika rendah pada pin INTn menyatakan interupsi
Reserved
Perubahan logika tinggi ke rendah pada pin INTn
menyatakan interupsi
Perubahan logika rendah ke tinggi pada pin INTn
menyatakan interupsi
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
19
Gambar 2.17. Register EICRB
Register EICRB digunakan untuk mengatur kerja pin INT4 sampai INT7. Bit ISCn1
dan ISCn0 digunakan sebagai pengatur sinyal yang dapat digunakan sebagai perintah interupsi
pada mikrokontroler, dengan huruf “n” menyatakan pin interupsi yang dituju. Sinyal pada pin
INTn akan diambil contohnya (sampling) sebelum dilakukan pengambilan keputusan
interupsi. Sinyal yang panjangnya lebih besar dari sumber detak mikrokontroler akan
digunakan sebagai sumber interupsi.
Gambar 2.18. Register EIMSK
Register EIMSK digunakan untuk mengaktifkan fungsi interupsi pada pin INTn.
Apabila bit INTn pada register ini bernilai satu, maka pin INT pada mikrokontroler akan
berfungsi sebagai sumber interupsi program.
2.2.6. EEPROM (Electrical Erasable Programmable Read-Only Memory)
Mikrokontroler ATmega128 mempunyai memori EEPROM sebesar 4 kBytes. Memori
ini dapat dibaca dan ditulis melalui program dan data yang tersimpan tidak akan hilang
walaupun mikrokontroler kehilangan catu daya. Alamat memori yang dituju oleh program
sebelum membaca atau menulis data pada EEPROM ditunjukan oleh register EEARH dan
EEARL. Register ini adalah register 11-bit yang menyimpan alamat EEPROM dari alamat 0
sampai alamat 4095. Register EEDR digunakan untuk membaca dan menulis data pada alamat
yang ditunjukan oleh register EEAR.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
2.4.
20
Modul Pemancar
2.3.1 RX01 - 433D
RX01-433D merupakan modul receiver dimana modul tersebut bekerja menggunakan
modulasi Frequency Shift Keying (FSK) dengan menggunakan frekuensi kerja 433 Mhz[14].
Untuk konfigurasi pin IC RX01-433D dapat dilihat pada gambar 2.19. sedangkan Schematic
pin dapat dilihat pada gambar 2.20. Fungsi setiap pinnya dapat dilihat pada table 2.3.
Gambar 2.19. Konfigurasi Pin IC RX01-433D
Gambar 2.20. Schematic Pin RX01-433D
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
21
Tabel 2.3. Fungsi Pin RX01-433D
Pin Nama
Tipe
Fungsi
1
VDI
DO
Valid Data Indicator output
2
SDI
DI
Data input of serial control interface
3
nSEL
DI
Chip select input of three-wire control interface (active low)
4
NRES
DO
Reset output (active low)
5
nIRQ
DO
Interrupt request output, (active low)
6
FFIT
DO
FIFP IT (active low) FIFO empety function can be achieved
when FIFO IT level is set to one
7
VDD
S
Digital VDD (connect to VDD)
8
SCK
DI
Clock input of serial control interface
9
SDO
DO
FIFO IT (active low) or serial data out for Status Read
Command. Tristate with bushold cell if nSEL = H
10
VSS
S
Digital VSS (connect to VSS)
11
nFFS
DI
FIFO select input
12
CLK
DO
Clock output for the microcontroller
RX01-433D memiliki spesifikasi, diantaranya sebagai berikut[14]:
a.
Tidak membutuhkan tuning pada frekuensi.
b.
Menggunakan teknologi PLL.
c.
Bit rate sampai 115.2 kbps saat mode digital dan 256 kbps saat mode analog.
d.
Differential antenna.
e.
Tuning antena otomatis dilakukan oleh modul.
f.
Tegangan Supply 2.2 V sampai 5.4 V.
g.
Bandwidth dapat diatur antara 67 KHz sampai 400 KHz.
h.
Automatic Frequency Control dan Data Quality Detection.
i.
Menggunakan Antarmuka SPI.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
22
2.3.2 TX02 - 433D
TX02-433D
merupakan
modul
transmitter
dimana
modul tersebut
bekerja
menggunakan modulasi Frequency Shift Keying (FSK) dengan menggunakan frekuensi kerja
433 Mhz[10]. Untuk konfigurasi pin IC TX02-433D dapat dilihat pada gambar 2.21. serta
schematic pin pada TX02-433D dapat dilihat pada gambar 2.22. Fungsi setiap pinnya dapat
dilihat pada table 2.4. TX02-433D memiliki spesifikasi, diantaranya sebagai berikut[15]:
a. Tidak membutuhkan tuning pada frekuensi.
b. Menggunakan teknologi PLL.
c. Menggunakan modulasi FSK yang stabil dan akurat.
d. Differential antenna.
e. Tuning antena otomatis dilakukan oleh modul.
f. Tegangan Supply 2.2 V sampai 5.4 V.
g. Menggunakan Antarmuka SPI.
Gambar 2.21. Konfigurasi Pin IC TX02-433D
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
23
Gambar 2.22. Schematic Pin TX02-433D
Tabel 2.4. Fungsi Pin TX02-433D[15]
Pin Nama
Tipe Fungsi
1
FSK
DI
Serial data input for FSK modulation
2
VDD
S
Digital VDD (Connect to VDD)
3
SDI
DI
Data input of serial control interface
4
VSS
S
Digital VSS (Connect to VSS)
5
CLK
DO
Microcontroller clock (1 MHz-10 MHz)
6
NIRQ
DO
Interrupt request output for microcontroller (active low) and status
read output
7
SCK
DI
Clock input of serial control interface
8
NSEL
DI
Chip select input of serial control interface (active Low)
2.5.
LCD 16x2
Display elektronik adalah salah satu komponen elektronika yang berfungsi sebagai
tampilan suatu data, baik karakter, huruf ataupun grafik. LCD tipe ini memiliki 2 baris dimana
masing-masing baris memiliki 16 karakter. LCD yang digunakan dapat dilihat pada gambar
2.23
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
24
Gambar 2.23. LCD 16x2
Terdapat tiga register utama pada modul LCD karakter 16x2 yaitu register DDRAM
(Display Data Random Access Memory), register CGRAM (Character Generator Random
Access Memory), register CGROM (Character Generator Read Only Memory). Register
DDRAM merupakan memori tempat karakter yang akan dikirimkan / ditampilkan. Register
CGROM merupakan memori untuk menggambarkan sebuah karakter dimana bentuk dari
karakter dapat diubah-ubah sesuai dengan keinginan..[16]
Tabel 2.5. Tabel Konfigurasi PIN LCD 16x2 [17]
2.6.
IC DS1307 – Real Time Clock (RTC)
IC DS1307 bekerja dengan menggunakan komunikasi serial I 2C yang dapat digunakan
untuk menyimpan waktu, mulai dari detik, menit, jam, tanggal, hingga hari, bulan, tahun.
Ketika catu utama tidak aktif maka IC ini secara otomatis akan berpindah ke catu dari baterai
3,2 V.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
25
Gambar 2.24. Rangkaian umum dari IC DS1307 [18]
Pertukaran data menggunakan antarmuka
, yang setiap memulai pertukaran data,
master device harus mengisialisai keadaan START dan diakhiri dengan keadaan STOP.
Keadaan START terjadi apabila pin SDA berubah dari logika satu ke logika nol saat pin SCL
berada pada logika satu.
Tabel 2.6. Memori IC DS1307 [18]
Alamat
00h
01h
Bit 7 Bit 6 Bit 5
Bit 4 Bit 3 Bit 2 Bit 1 Bit 0
CH
10 detik
detik
0
10 menit
menit
02h
12
02h
03h
04h
10 jam 10 jam
05h
0
0
0
0
10 tanggal
10
Rentang
00-59
00-59
1-12
jam
Jam
jam
Jam
hari
tanggal
Hari
Tanggal
01-07
00-23
01-31
bulan
Bulan
01-12
Tahun
Kontrol
00-99
-
RAM 56x8
00h-FFh
+AM/PM
1-12
00-23
24 AM/ PM 10 jam
0
0
Fungsi
Detik
Menit
0
+AM/PM
Bulan
06h
07h
08h-3Fh
Out
10 tahun
0
0
SQWE
0
tahun
0 RS1 RS0
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
26
Gambar 2.25. Register Control IC DS1307
Bit ini mengontrol tingkat output dari bit SQW / OUT ketika gelombang output
dinonaktifkan. Jika bit SQW sama dengan satu maka tingkat logika pada bit SQW / OUT juga
bernilai satu sedangkan jika bit SQW bernilai nol maka SQW / OUT juga bernilai nol. [18]
2.7.
Push Button
Push Button adalah saklar tekan yang berfungsi untuk menghubungkan atau
memisahkan bagian – bagian dari suatu instalasi listrik satu sama lain (suatu sistem saklar
tekan push button terdiri dari saklar tekan start. Stop reset dan saklar tekan untuk emergency.
Push button memiliki kontak NC (normally close) dan NO (normally open). Push button ini
digunakan sebagai tombol menu dan pengaturan pada sistem. Push button dapat dilihat pada
gambar 2.26.
Gambar 2.26. Gambar Push Button [19]
2.8.
LED (Light-Emitting Diode)
LED adalah komponen elektronika yang terbuat dari bahan semi konduktor jenis dioda
yang mampu memancarkan cahaya. LED mampu menghasilkan cahaya yang berbeda menurut
semi konduktor yang digunakan dan jenis bahan semi konduktor tersebut akan menghasilkan
panjang gelombang yang berbeda sehingga cahaya yang dihasilkan berbeda pula. LED adalah
salah satu jenis dioda, maka LED memiliki 2 kutub yaitu anoda dan katoda. Dalam hal ini
LED akan menyala bila ada arus listrik mengalir dari anoda menuju katoda.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
27
Pemasangan kutub LED tidak boleh terbalik karena apabila terbalik kutubnya maka
LED tersebut tidak akan menyala. LED memiliki karakteristik berbeda-beda menurut warna
yang dihasilkan. Semakin tinggi arus yang mengalir pada LED maka semakin terang pula
cahaya yang dihasilkan, namun perlu diperhatikan bahwa arus yang diperbolehkan 10mA20mA dan pada tegangan 1,6V-3,5V menurut karakter warna yang dihasilkan. Apabila arus
yang mengalir lebih dari 20mA, maka LED akan terbakar. Untuk menjaga agar LED tidak
terbakar perlu digunakan resistor sebagai penghambat arus. LED ditunjukkan pada gambar
2.27.
Gambar 2.27. Konfigurasi LED
Berdasarkan gambar 2.28, persamaan untuk mencari nilai tegangan menggunakan
hokum ohm adalah V = I.R, sehingga persamaan untuk mencari nilai resistor yang digunakan
sebagai indikator adalah :
(2.7)
Gambar 2.28. Rangkaian indikator LED
Dimana :
V
= Tegangan
I
= Arus Listrik
R
= Resistor
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
Vs
28
= Tegangan sumber
= Tegangan LED
Tegangan kerja pada sebuah LED menurut warna yang dihasilkan [20]:
1. Merah
: 1,8 V – 2,1 V
2. Biru
: 3,0 V – 3,5 V
3. Putih
: 3,0 V – 3,6 V
Pada umumnya tegangan yang digunakan pada perancangan adalah tegangan minimal LED
(
), tegangan minimal LED adalah sebesar 1,5 V.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
BAB III
RANCANGAN PENELITIAN
Perancangan sistem telemetri kualitas kolam air ikan ini dibagi menjadi menjadi dua
bagian utama, yaitu:
1.
Perancangan hardware yang terdiri dari mikrokontroler dan perangkat pendukung,
RX01-433D dan TX02-433D, IC RTC DS1307, push button dan LCD. Gambar 3.1.
menunjukkan blok diagram sistem yang akan dibuat.
2.
Perancangan software yang terdiri dari pemograman utama, dan subrutin – subrutinnya
seperti, IC RTC, dan LCD
Gambar 3.1. Konsep Perancangan
Berikut merupakan keterangan cara kerja sistem yang ditunjukan pada gambar 3.1.
1.
RX01-433D dan TX02-433D digunakan untuk komunikasi pengiriman data antara
sentral unit dan terminal unit, dimana terminal unit akan mengambil data dari sensor
29
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
30
yang telah ditentukan kemudian dijadikan dalam satu paket data dan dalam jangka
waktu yang telah ditentukan data-data dari sensor akan dikirimkan ke sentral unit
dengan dua kali pengiriman data yang sama. Sentral unit akan memproses dan
menyesuaikan kedua paket data yang telah diterima, jika sesuai maka data-data
tersebut akan langsung ditampilkan pada komputer, namun jika kedua data yang
diterima sentral unit tidak sama, maka sentral unit akan mengirimkan perintah kepada
terminal unit untuk mengirimkan data lagi. Jika sampai lima kali pengiriman data dan
tidak sesuai, maka data kelima yang akan digunakan.
2.
Push Button digunakan untuk memberikan masukan berupa pengaturan dari pengguna.
Pengaturan ini memungkinkan pengguna untuk mengubah konfigurasi dan mode –
mode pengendalian yang dilakukan sistem.
3.
IC RTC DS1307 digunakan sebagai penjaga waktu mikrokontroler, sehingga
pengiriman paket data bisa disesuaikan sesuai keinginan pengguna.
4.
Mikrokontroler akan mengambil data dari setiap sensor yang kemudian di tampilkan di
LCD sekaligus diubah menjadi paket data yang siap untuk dikirim ke Cental Unit.
3.1.
Perancangan Perangkat Keras
3.1.1. Rangkaian Minimum System ATmega128
Minimum system merupakan pusat kontrol dan pengolahan data. Gambar 3.2.
merupakan minimum sistem dengan IC mikrokontroler ATMEGA128 CPU sebagai
komponen utama. Setiap pin dalam ATmega128 ini telah dihubungkan dengan konektor
female yang terpasang di dalam board pcb, sehingga memudahkan dalam pemakaiannya.
3.1.2. Rangkaian RTC – IC DS1307
Pada datasheet IC DS1307 telah terdapat rangkaian standar IC ini. Rangkaian IC
DS1307 ini menggunakan protokol I2C untuk berkomunikasi dengan mikrokontroller dan
menggunakan input 5v. Pull up resistor yang digunakan 4.7K atau 10K agar tidak mengurangi
masa pemakaian baterai. Kristal oscillator yang digunakan adalah Kristal yang memiliki
frekuensi 32,768 kHz. Baterai menggunakan tipe CR2032 untuk sumber daya ketika catu
utama tidak aktif. Berikut gambar rangkaian RTC dengan IC DS1307:
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
31
Gambar 3.3. Rangkaian RTC
3.1.3. Rangkaian LCD
LCD merupakan perangkat interface yang menampilkan data-data dari sensor yang
telah dikumpulkan dan aksi yang akan dilakukan, LCD yang digunakan dalam perancangan ini
adalah LCD 16x2. LCD ini memiliki lampu latar yang dapat dinyalakan dengan tegangan
4,2V pada pin A dan menyambungkan pin K pada jalur ground, namun tegangan kontras
maksimum pada LCD ini adalah 5V sehingga diberikan variable resistor sebesar 10K agar
lampu latar belakang LCD tidak menyala terlalu terang.
Gambar 3.4. Rangkaian LCD 16x2
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
32
3.1.4. Rangkaian Sistem Pengendali
Rangkaian sistem pengendali ini dapat digunakan oleh pengguna dari terminal unit.
Pada sistem pengendali ini menggunakan tombol sebagai masukan dan lampu sebagai
keluarannya, satu tombol digunakan untuk satu aksi pengendalian dimana pengendalian yang
dapat dilakukan terdiri dari pintu inlet, pintu outlet, pompa sumur dan pompa aerator. LED
yang digunakan untuk pintu inlet yaitu merah, pintu outlet yaitu biru, pompa sumur yaitu
hijau, pompa aerator yaitu putih. Resistor yang digunakan untuk LED sendiri menggunakan
nilai 330ohm.
Gambar 3.7. Rangkaian Sistem Pengendali
3.1.5. Modul Pemancar
Modul pemancar ini digunakan sebagai komunikasi dari sentral dan terminal unit,
modul pemancar ini menggunakan RX01 dan TX02 yang bekerja pada frekuensi 433MHz.
Gambar 3.8. Rangkaian Modul Pemancar
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
3.2.
33
Perancangan Perangkat Lunak
3.2.1. Diagram Alir Program Utama
Pada program utama ini terdapat dua masukan, yaitu setting pengguna dari sentral unit
dan setting pengguna dari terminal unit. Setting waktu pengiriman data merupakan setting
pengguna dari sentral unit, pada setting ini sentral unit dapat mengatur waktu pengiriman
paket data yang akan dikirimkan dari terminal unit ke sentral unit. Setting parameter baru
merupakan setting pengguna dari sentral unit, pada setting ini sentral unit akan mengganti
nilai-nilai parameter yang sudah ditentukan sebelumnya. Subrutin pengiriman satu data
merupakan setting pengguna dari sentral unit, pada setting ini sentral unit akan meminta data
single dari terminal unit. Setting Menu, pada setting ini terdapat dua pilihan diantaranya
setting RTC dan setting sistem pengendalian. Setting RTC dilakukan untuk mengatur
pewaktuan dan tanggal untuk pewaktuan dalam pengiriman data dari terminal unit ke sentral
unit. Pada sistem pengendalian digunakan agar pengguna dapat mengatur pintu inlet outlet,
pompa sumur, dan aerator dari terminal unit secara manual untuk menentukan apakah akan
dibuka atau ditutup, Subrutin ambil data dari sensor, pada subrutin ini terminal unit akan
mengambil data dari setiap sensor dan data-data tersebut dikumpulkan menjadi satu paket data
yang siap dikirimkan ke sentral unit. Subrutin kontrol sistem, pada kontrol sistem ini adalah
aksi yang akan dilakukan jika data yang didapatkan dari sensor tidak sesuai dengan nilai yang
telah ditetapkan maka sistem pengendali akan melakukan aksi seperti yang telah ditentukan.
Subrutin kirim data, pada subrutin ini terminal unit akan mengirimkan paket data yang telah
dikumpulkan dari sensor ke sentral unit, paket data akan dikirimkan sebanyak dua kali secara
berurutan dan dua paket data yang telah dikirimkan ke sentral unit akan dibandingkan oleh
sentral unit apakah sesuai atau tidak. Jika paket data yang dikirimkan tidak sesuai maka sentral
unit akan mengirimkan perintah ke terminal unit untuk mengirim ulang paket data tersebut,
jika paket data tersebut tidak sesuai hingga liman kali pengiriman paket data, maka paket data
terakir yang akan digunakan atau disimpan oleh sentral unit
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
34
Gambar 3.9. Program Utama
Berikut adalah table karakter perintah yang akan digunakan dalam komunikasi sentral
dan terminal unit, terminal unit dan sensor. Terdapat juga tabel karakter data dan format
pengiriman data yang akan digunakan
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
35
Tabel 3.1. Tabel karakter Perintah
Karakter
Keterangan
A
Perintah dari sentral unit ke terminal unit untuk mengirimkan data Suhu
B
Perintah dari sentral unit ke terminal unit untuk mengirimkan data pH
C
Perintah dari sentral unit ke terminal unit untuk mengirimkan data DO
D
Perintah dari sentral unit ke terminal unit untuk mengirimkan data Kekeruhan
E
Perintah dari sentral unit ke terminal unit untuk mengirimkan data Kondukttivitas
J
Perintah dari sentral unit ke terminal unit untuk mengubah waktu pengriman data
U
Perintah dari sentral unit ke terminal unit untuk mengirimkan ulang paket data
V
Perintah dari sentral unit ke terminal unit untuk mengubah nilai batasan Suhu
W
Perintah dari sentral unit ke terminal unit untuk mengubah nilai batasan DO
X
Perintah dari sentral unit ke terminal unit untuk mengubah nilai batasan pH
Y
Perintah dari sentral unit ke terminal unit untuk mengubah nilai batasan Kekeruhan
Z
Perintah dari sentral unit ke terminal unit untuk mengubah nilai batasan
Konduktivitas
a
Perintah dari terminal unit ke sensor untuk mengambil data Suhu
b
Perintah dari terminal unit ke sensor untuk mengambil data pH
c
Perintah dari terminal unit ke sensor untuk mengambil data DO
d
Perintah dari terminal unit ke sensor untuk mengambil data Kekeruhan
e
Perintah dari terminal unit ke sensor untuk mengambil data Konduktivitas
Tabel 3.2. Tabel Karakter Data
Karakter
Keterangan
S
Karakter yang menunjukkan parameter Suhu
P
Karakter yang menunjukkan parameter pH
D
Karakter yang menunjukkan parameter DO
H
Karakter yang menunjukkan parameter Kekeruhan
O
Karakter yang menunjukkan parameter Konduktivitas
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
Tabel 3.2. Tabel Karakter Data (lanjutan)
K
Karakter yang menunjukkan pintu inlet
L
Karakter yang menunjukkan pintu outlet
M
Karakter yang menunjukkan pompa sumur
N
Karakter yang menunjukkan pompa aerator
Tabel 3.3. Format Data
Format Data
Keterangan
“S”;”aaaa”;”#”
Sensor Suhu
“P”;”bbbb”;”#”
Sensor pH
“D”;”cccc”;”#”
Sensor Do
“H”;”dddd”;”#”
Sensor Kekeruhan
“O”;”eeee”;”#”
Sensor Konduktivitas
“J”;”ff”;”#”
Mengubah waktu pengiriman data
“V”;”gggg”;”hhhh”;”#”
Mengubah parameter suhu
“W”;”gggg”;”hhhh”;”#”
Mengubah parameter DO
“X”;”kkkk”;”#”
Mengubah parameter pH
“Y”;”kkkk”;”#”
Mengubah parameter Kekeruhan
“Z”;”kkkk”;”#”
Mengubah parameter Konduktivitas
“K”;”0”;”#”
Pintu Inlet dalam keadaan mati
“K”;”1”;”#”
Pintu Inlet dalam keadaan Hidup
“L”;”0”;”#”
Pintu Outlet dalam keadaan mati
“L”;”1”;”#”
Pintu Outlet dalam keadaan hidup
“M”;”0”;”#”
Pompa Sumur dalam keadaan mati
“M”;”1”;”#”
Pompa Sumur dalam keadaan hidup
“N”;”0”;”#”
Pompa Aerator dalam keadaan mati
“N”;”1”;”#”
Pompa Aerator dalam keadaan hidup
36
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
37
Setiap siklus program utama dilakukan proses pengambilan data waktu dari RTC, dan
pengambilan data sensor selalu dilakukan berulang – ulang selama sistem berjalan, dan
pengiriman data akan dilakukan sesuai jadwal yang sudah ditentukan (default) kecuali ada
perubahan jadwal pengiriman dari user sentral unit. Nilai pada parameter-parameter sudah
ditentukan dari awal dan akan dikirimkan dalam bentuk satu paket data, namun user dapat
mengubah nilai parameter sesuai dengan keinginan user, dan pada subrutin single data sendiri
user dapat mengambil parameter satu per satu dan tidak dalam bentuk paket data.
Dalam diagram alir ini terdapat beberapa karakter yang akan digunakan untuk
berkomunikasi antara sentral unit dan terminal unit, terdapat karakter perintah dan karakter
yang menunjukan data. Dimana karakter perintah adalah karakter yang akan dikirimkan
sentral unit ke sentral unit untuk meminta data satu per satu, perintah untuk mengubah nilai
parameter yang ada, terdapat juga karakter perintah dari terminal unit untuk mengambil paket
data dari sensor. Sedangkan untuk karakter data adalah karakter yang menunjukkan bahwa
data tersebut suhu, pH, DO, kekeruhan dan konduktivitas, selain itu terdapat pula karakter
yang menunjukkan pintu inlet, pintu outlet, pompa sumur dan pompa aerator.
3.2.2. Diagram Alir Setting Waktu Pengiriman Data
Waktu pengiriman data dapat diatur oleh pengguna dari sentral unit setiap beberapa
menit atau beberapa jam sekali, namun jika pengguna tidak mengatur waktu pengiriman data,
maka pengiriman data tersebut akan menggunakan default yang telah ditentukan. Diagram alir
setting waktu pengiriman data ditunjukan pada gambar 3.10.
Gambar 3.10. Diagram Alir Setting Waktu Pengiriman Data
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
38
3.2.3. Diagram Alir Nilai Data Sensor
Gambar 3.11. Diagram Alir Setting nilai data sensor
Pada gambar 3.11. menunjukan cara kerja dalam mengubah setting nilai untuk yang
ada. Dimana pengguna dari sentral unit dapat merubah nilai sensor yang telah ditentukan,
namun jika pengguna dari sentral unit tidak memberikan nilai untuk sensor ini maka nilai
yang akan digunakan adalah nilai awal (default).
Parameter tersebut antara lain Suhu, Do, Ph, Kekeruhan, dan Konduktifitas. Saat
melakukan perubahan batasan nilai pada sensor terdapat karakter yang membedakan antara
sensor yang ada. “V” perintah untuk mengubah nilai batasan pada Suhu. “W” perintah untuk
mengubah nilai batasan pada DO. “X” perintah untuk mengubah nilai batasan pada pH. “Y”
perintah untuk mengubah nilai batasan pada Kekeruhan. “Z” perintah untuk mengubah nilai
batasan pada Konduktifitas
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
39
3.2.4. Diagram Alir Single Data Sensor
Gambar 3.12. Diagram Alir Single Data Sensor
Pada gambar 3.12. merupakan penjelasan diagram alir saat user menginginkan
pengambilan data pada salah satu sensor. Dalam pemilihan sensor terdapat instruksi yang
diawali dengan beberapa karakter. “A” berarti data yang akan dikirim ke sentral unit adalah
sensor Suhu. “B” berarti data yang akan dikirim ke sentral unit adalah sensor Do. “C” berarti
data yang akan dikirim ke sentral unit adalah sensor Ph. “D” berarti data yang akan dikirim ke
sentral unit adalah sensor Kekeruhan. “E” berarti data yang akan dikirim ke sentral unit adalah
sensor Konduktivitas. Data yang dikirimkan ke sentral unit sejumlah dua kali pengiriman data
yang sama. Kemudian data tersebut akan dibandingkan dimana bila data tersebut sama akan
disimpan dan bila berbeda maka sentral unit akan meminta instruksi ulang untuk mengirim
kembali. Jika terdapat lima kali perulangan dikarenakan data pertama dan kedua berbeda maka
akan disimpan data yang terakhir.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
40
3.2.5. Diagram Alir Subrutin Menu
Gambar 3.13. Diagram Alir Subrutin Menu
Pada gambar 3.13. merupakan penjelasan dari subrutin menu. Dimana didalam
subrutin menu ini terdapat dua masukan yaitu setting RTC dan setting sistem pengendalian.
3.2.6. Diagram Alir Pengambilan Data
Pengambilan data sensor dilakukan dengan mengirimkan karakter ke slave
yang
mewakili sensor. Format data setiap 1 sensor yang dikirim sebanyak 8 karakter. Format data
yang dikirim dari slave sebagai berikut: “S”0015”#”. Karakter pertama mewakili inisial
sensor, karakter ke 3 sampai ke 6 adalah data sensor yang dikirimkan, dan karakter ke-8
adalah karakter pagar “#”. Sensor termperatur diwakili dengan karakter “S”, sensor pH
diwakili dengan karakter “P”, sensor DO diwakili dengan karakter “D”, sensor kekeruhan
diwakili dengan karakter “H”, dan sensor konduktivitas diwakili dengan karakter “O”.
Kecepatan transfer data yang digunakan untuk komunikasi USART sebesar 9600 bps [21].
Dalam komunikasi data, 1 byte = 10 bit, karena terdiri dari 8 bit data dan 1 bit untuk start dan
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
41
1 bit untuk stop. Untuk mengirimkan 1 data sensor memerlukan waktu 6,25 milli second dan
dibulatkan menjadi 8 ms, dihitung dari:
1 byte = 10 bit
6 karakter = 6 byte
6 karakter = 60 bit
Jika tidak ada data yang dikirimkan 7 ms, data yang ditampilkan adalah 0000. Berikut
diagram alir subrutin pengambilan data sensor ditunjukkan gambar 3.14 dan 3.15, sedangkan
subrutin pengambilan data setiap sensor ditunjukkan pada gambar 3.16.
Gambar 3.14. Diagram Alir Subrutin Pengambilan Data Suhu dan pH
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
42
Gambar 3.15. Diagram Alir Subrutin Pengambilan Data DO dan Kekeruhan
Gambar 3.16. Diagram Alir Subrutin Pengambilan Data Koduktivitas dan semua sensor
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
43
3.2.7. Diagram Alir Subrutin Kontrol Sistem
Gambar 3.17. Diagram Alir Kontrol Sistem
Pada gambar 3.17. dijelaskan nilai parameter pada batas atas dan batas bawah untuk
parameter kualitas kolam air ikan yang digunakan dalam mengontrol sistem yang ada, dimana
jika data yang didapatkan dari sensor tidak sesuai dengan nilai parameter yang ada, maka
kontrol sistem akan melakukan aksi. Namun pada parameter DO, jika nilai tidak sesuai maka
sistem akan menghidupkan pompa aerator.
3.2.8. Diagram Alir Subrutin Aksi
Aksi yang akan dilakukan dari kontrol sistem, dimana aksi ini akan bekerja jika data
yang diterima dari sensor tidak sesuai dengan nilai parameter yang telah ditentukan. Aksi ini
akan mematikan motor inlet, menghidupkan motor outlet dan pompa sumur jika nilai
parameter Suhu, pH, DO, Kekeruhan dan Konduktivitas tidak sesuai dengan nilai yang telah
ditentukan. Berikut adalah gambar aksi yang dilakukan.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
Gambar 3.18. Diagram Alir Subrutin Aksi
3.2.9. Diagram Alir Aksi Pengendalian
Gambar 3.19. Diagram Alir Aksi Pengendalian
44
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
45
Pada subrutin ini user dapat melakukan aksi pengendalian melalui terminal unit,
dimana aksi pengendalian ini menggunakan push button untuk membuka pintu inlet, pintu
outlet, pompa sumur dan pompa aerator. Aksi pengendalian ini sama dengan aksi pintu inlet
dan outlet yang dikendalikan dari sentral unit, namun aksi pengendalian dari terminal unit ini
lebih dominan dari aksi yang diperintahkan dari sentral unit. Pada aksi pengendalian ini juga
menggunakan karakter untuk menentukan kondisi yang sedang berjalan, karakter yang
digunakan adalah “K” sebagai pintu inlet, “L” sebagai pintu outlet, “M” sebagai pompa
sumur, dan “N” sebagai pompa aerator. Dan karakter “0” untuk menentukan tidak aktif dan
karakter “1” untuk menentukan aktif.
3.2.10. Diagram Alir Pengiriman Data
Gambar 3.20. Diagram Alir Subrutin Kirim Data
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
46
Pada gambar 3.20 merupakan penjelasan pengiriman data dari terminal unit ke sentral
unit, pengiriman data ini dalam bentuk (paket data = paket 1 paket 2), yang akan dikirimkan
dua kali dengan jeda antara pengiriman paket 1 dan paket 2. setelah paket data dikirimkan
maka sentral unit akan membandingkan apakah data dari paket 1 dan paket 2 sesuai, jika tidak
sesuai maka sentral unit akan mengirimkan perintah untuk mengirim ulang paket data.
Dimana
format
paket
data
yang
akan
dikirimkan
ke
sentral
unit
adalah
(“S”;”aaaa”;”#”;”P”;”bbbb”;”#”;”D”;”cccc”;”#”;”H”;”dddd”;”#”;”O”;”eeee”;”#”;”K”;”0”;”#”
;”L”;”0”;”#”;”M”;”0””#”;”N”;”0”;”#”). Format data yang dikirimkan meliputi data suhu, DO,
pH, kekeruhan, konduktivitas serta status aksi pengendalian yang ada saat paket data
dikirimkan ke sentral unit.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
BAB IV
HASIL DAN PEMBAHASAN
Bab ini berisi gambar fisik hardware yang dibuat, pembahasan tentang perbagian
hardware, hasil pengujian hardware, hasil pengujian rangkaian, hasil pengambilan data,
pembahasan tentang data yang diperoleh, dan pembahasan tentang program yang digunakan di
mikrokontroler. Data yang akan dibahas terdiri atas pengambilan data dari terminal unit ke
sensor dan paket data dari terminal unit ke sentral unit dan sebaliknya dengan komunikasi
serial, serta pengujian tiap bagian hardware. Hasil pengujian berupa data-data yang diperoleh
untuk 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.
Mekanik Kotak Sistem
Pada bagian ini, kotak sistem dirancang agar melindungi komponen yang ada di
dalamnya serta dapat disusun secara rapi. Desain kotak sistem disesuaikan dengan banyaknya
komponen yang ada di dalamnya serta memudahkan peneliti dalam memindahkan komponen
tersebut. Pada mekanik kotak sistem terdapat beberapa bagian. Bagian atas terdiri dari LCD,
dan tombol-tombol untuk pengoperasian alat terminal unit dimana tombol-tombol tersebut
terdiri dari tombol MENU yang dapat digunakan untuk masuk ke bagian menu. Tombol OK
digunakan untuk memilih menu yang diinginkan. Tombol BACK digunakan untuk kembali
ke tampilan awal dan untuk mengganti sistem kendali pada saat sistem kendali dalam keadaan
manual. Tombol UP digunakan untuk memilih menu selanjutnya pada saat keadaan menu.
Tombol DOWN digunakan untuk memilih menu sebelumnya pada saat keadaan menu, tombol
DOWN juga dapat digunakan untuk melihat batasan-batasan sensor jika tampilan LCD pada
tampilan awal. Tombol RESET digunakan untuk kembali ke tampilan awal. Pada alat terminal
unit ini juga terdapat LED atau lampu sebagai pengujian sistem kendali. K sebagai pintu
masuk, L sebagai pintu keluar, M sebagai pompa air dan N sebagai pompa aerator. Bagian atas
alat terminal unit ini dapat dilihat pada gambar 4.1.
47
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
48
Gambar 4.1. Mekanik kotak sistem tampak depan
Bagian kanan alat terminal unit. Pada bagian kanan alat terminal unit ini terdapat kabel RX
dan TX yang digunakan sebagai komunikasi ke dummy sensor. Kabel berwarna biru adalah
TX dan kabel berwarna ungu adalah RX. Bagian kiri alat terminal unit ini dapat dilihat pada
gambar 4.2.
Gambar 4.2. Mekanik kotak sistem tampak samping kanan
Bagian Kiri alat terminal unit. Pada bagian kiri alat terminal unit ini terdapat antenna RX01433D dan TX02-433D. Antena ini digunakan sebagai komunikasi antara terminal unit dan
sentral unit. Antena TX digunakan untuk mengirimkan data dari terminal unit dan antenna RX
digunakan untuk menerima data dari terminal unit. Bagian kiri alat terminal unit dapat dilihat
pada gambar 4.3.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
49
Gambar 4.3. Mekanik kotak sistem tampak samping kiri
Bagian belakang alat terminal unit. Pada bagian belakang alat terminal unit ini terdapat socket
power yang digunakan untuk daya pada alat terminal unit ini. Daya yang dibutuhkan untuk
alat terminal unit ini adalah 5V. Bagian belakang alat terminal unit ini dapat dilihat pada
gambar 4.4.
Gambar 4.4. Mekanik kotak sistem tampak belakang
4.2.
Subsistem Elektronik
Subsistem elektronik alat terdiri atas rangkaian rangkaian sistem mikrokontroler, LCD
16x2, TX02-433D dan RX01-433D. Penulis membuat rangkaian sistem mikrokontroler dalam
satu PCB serta rangkaian TX02-433D dan RX01-433D juga dalam satu PCB.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
50
4.2.1. Rangkaian LCD 16x2
Rangkaian LCD 16x2 merupakan rangkaian yang digunakan untuk menghubungkan
LCD 16x2 dengan minimum sistem serta pengaturan tingkat kecerahan LCD 16x2. Rangkaian
LCD 16x2 dapat dilihat pada gambar 4.5.
Gambar 4.5. Rangkaian LCD 16x2
Keterangan Gambar 4.5.:
1. Input 5V
4. RW
7. D5
2. Ground
5. E
8. D6
3. RS
6. D4
9. D7
4.2.2. Rangkaian TX02-433D dan RX01-433D
Rangkaian TX02-433D dan RX01-433D merupakan rangkaian pemancar berupa
transmitter atau pengirim data serta receiver atau penerima data. rangkaian TX dan RX dapat
dilihat pada gambar 4.6.
Gambar 4.6. Rangkaian TX02-433D dan RX01-433D
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
51
Rangkaian tersebut dilengkapi juga dengan dua buah antena 433 Mhz yang berfungsi sebagai
penguat TX02-433D dan RX01-433D dalam menerima ataupun mengirimkan data:
Keterangan Gambar 4.6.:
1.
Port untuk bagian TX02-433D
4. Input 5V dan Ground
2.
Modul TX02-433D
5. Port untuk bagian RX01-433D
3.
Modul RX01-433D
4.2.3. Rangkaian Mikrokontroler
Rangkaian sistem mikrokontroler merupakan rangkaian yang digunakan untuk
menjalankan ATMega128. Rangkaian ATMega128 dapat dilihat pada gambar 4.7.
Gambar 4.7. Rangkaian mikrokontroler
Keterangan Gambar 4.7.:
1. Input 5V dan Ground
5. Port Rx01-433D dan Tx02-433D
2. Port Push Button
6. Port ATmega 128
3. Rangkaian RTC
7. Port LCD
4. Port Rx Tx sensor
8. Output 5V untuk modul RX dan TX
4.3.
Cara Penggunaan Alat
Untuk menggunakan alat ini, user harus memasangkan kabel power sebagai daya dan
memasang kabel RX TX ke dummy sensor. Prinsip kerja sistem telemetri modul terminal unit
ini pada dasarnya bekerja dengan mengambil data dari dummy sensor dan disimpan di array
terminal unit. Data yang telah disimpan tersebut akan dikirimkan dari terminal unit ke sentral
unit yang berisikan paket data yang dipancarkan sebanyak dua kali. Namun jika terdapat
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
52
perintah dari sentral unit untuk mengirim ulang paket data, maka terminal unit akan
mengirimkan paket data kembali dan dipancarkan sebanyak dua kali sampai terminal unit
tidak menerima perintah kirim ulang data. Selain itu, alat ini juga dapat menerima perintah
lain dari sentral unit, seperti pengaturan jadwal pengiriman data, batasan untuk masing-masing
sensor, pengambilan salah satu sensor, dan reset untuk batasan masing-masing sensor. Dalam
alat terminal unit juga terdapat menu yang dapat digunakan untuk mengatur waktu RTC,
pengaturan jadwal pengiriman paket data, pengaturan untuk kendali pintu air apakah manual
atau otomatis, reset batasan masing-masing sensor dan pengecekan data sensor. Gambar 4.8.
merupakan tampilan awal alat terminal unit. Pada tampilan ini LCD 16x2 menampilkan jam,
menit, detik, tanggal, bulan, tahun dan kendali yang sedang terjadi. K L M N merupakan
kendali yang ada, dimana K adalah pintu air masuk, L pintu air keluar, M pompa sumur, N
pompa aerator. 0 dan 1 merupakan status kendali, dimana 0 adalah tertutup dan 1 adalah
terbuka.
Gambar 4.8. Tampilan Awal Alat Terminal Unit
4.3.1.Pengaturan waktu RTC.
Pada menu RTC ini digunakan untuk mengatur waktu sesuai dengan yang diinginkan.
Waktu yang dapat diatur terdiri dari jam, menit, tanggal, bulan dan tahun. Untuk melakukan
pengaturan waktu RTC, pada saat tampilan awal user dapat menekan tombol MENU dan akan
muncul tampilan di LCD “Atur Jam?” kemudian tekan OK dan user dapat mengatur jam
sesuai dengan yang diinginkan dengan menekan tombol UP untuk menambah waktu dan
DOWN untuk mengurangi waktu kemudian tekan OK. Setelah itu akan muncul tampilan
“Atur Menit?” kemudian tekan OK dan lakukan cara seperti pengaturan jam. Cara tersebut
dilakukan sampai pengaturan tahun dan jika sudah selesai maka LCD akan menampilkan “Jam
berhasil diubah”. Tampilan menu RTC dapat dilihat pada gambar 4.9.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
53
Gambar 4.9. Tampilan menu RTC
4.3.2.Pengaturan jadwal pengiriman.
Pada jadwal pengiriman paket data ini user dapat mengatur waktu pengiriman paket
data dari terminal unit ke sentral unit sesuai dengan keinginan user. Pengaturan jadwal ini
dapat dilakukan dengan menekan tombol UP pada saat tampilan atur jam, maka akan muncul
“edit jadwal?”. Jika ingin mengubah jadwal pengiriman user dapat menekan tombol OK dan
tombol UP untuk menambah waktu dan DOWN untuk mengurangi jadwal pengiriman.
Tampilan menu edit jadwal dapat dilihat pada gambar 4.10.
Gambar 4.10. Tampilan menu jadwal pengiriman paket data
4.3.3.Menu Pengambilan Salah Satu Data Sensor
4.3.3.1. Pengambilan Data Suhu
Pada menu ini user dapat mengambil data sensor suhu dari dummy sensor.
Pengambilan data sensor ini dapat dilakukan dengan menekan tombol MENU saat tampilan
awal kemudian tekan tombol UP sampai LCD menampilkan “ambil data suhu?’. Setelah itu
user dapat menekan tombol OK untuk mengambil nilai suhu. Maka LCD akan menampilkan
nilai suhu dari dummy sensor, user juga dapat mengulang pengambilan data suhu dengan
menekan tombol OK. Tampilan menu ambil data suhu dapat dilihat pada gambar 4.11
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
54
Gambar 4.11. Tampilan menu ambil data suhu
4.3.3.2. Pengambilan data keasaman
Pada menu ini, user dapat mengambil data sensor keasaman dari dummy sensor.
Pengambilan data sensor keasaman ini dapat dilakukan dengan menekan tombol UP setelah
pengambilan data sensor suhu atau menekan tombol MENU pada tampilan awal dan menekan
tombol UP sampai LCD menampilkan “ambil data keasaman?”. Setelah pada tampilan ambil
data keasaman, user dapat menekan tombol OK untuk mengambil data sensor keasaman.
Setelah mendapatkan data sensor keasaman, user dapat menekan tombol OK untuk mengulang
pengambilan data sensor keasaman atau dapat menekan tombol UP untuk menu selanjutnya,
tombol BACK untuk menu sebelumnya atau tombol BACK untuk kembali ke tampilan awal
alat terminal unit. Tampilan menu ambil data keasaman dapat dilihat pada gambar 4.12.
Gambar 4.12. Tampilan menu ambil data Keasaman
4.3.3.3. Pengambilan data oksigen
Pada menu ini, user dapat mengambil data sensor oksigen dari dummy sensor.
Pengambilan data sensor oksigen ini dapat dilakukan dengan menekan tombol UP setelah
pengambilan data sensor keasaman atau menekan tombol MENU pada tampilan awal dan
menekan tombol UP sampai LCD menampilkan “ambil data oksigen?”. Setelah pada tampilan
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
55
ambil data oksigen, user dapat menekan tombol OK untuk mengambil data sensor oksigen.
Setelah mendapatkan data sensor oksigen, user dapat menekan tombol OK untuk mengulang
pengambilan data sensor oksigen atau dapat menekan tombol UP untuk menu selanjutnya,
tombol BACK untuk menu sebelumnya atau tombol BACK untuk kembali ke tampilan awal
alat terminal unit. Tampilan menu ambil data oksigen dapat dilihat pada gambar 4.13.
Gambar 4.13. Tampilan menu ambil data oksigen
4.3.3.4. Pengambilan data kekeruhan
Pada menu ini, user dapat mengambil data sensor kekeruhan dari dummy sensor.
Pengambilan data sensor kekeruhan ini dapat dilakukan dengan menekan tombol UP setelah
pengambilan data sensor oksigen atau menekan tombol MENU pada tampilan awal dan
menekan tombol UP sampai LCD menampilkan “ambil data kekeruhan?”. Setelah pada
tampilan ambil data kekeruhan, user dapat menekan tombol OK untuk mengambil data sensor
kekeruhan. Setelah mendapatkan data sensor kekeruhan, user dapat menekan tombol OK
untuk mengulang pengambilan data sensor kekeruhan atau dapat menekan tombol UP untuk
menu selanjutnya, tombol BACK untuk menu sebelumnya atau tombol BACK untuk kembali
ke tampilan awal alat terminal unit. Tampilan menu ambil data kekeruhan dapat dilihat pada
gambar 4.14.
Gambar 4.14. Tampilan menu ambil data kekeruhan
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
56
4.3.3.5. Pengambilan data konduktivitas
Pada menu ini, user dapat mengambil data sensor konduktivitas dari dummy sensor.
Pengambilan data sensor konduktivitas ini dapat dilakukan dengan menekan tombol UP
setelah pengambilan data sensor kekeruhan atau menekan tombol MENU pada tampilan awal
dan menekan tombol UP sampai LCD menampilkan “ambil data konduktivitas?”. Setelah pada
tampilan ambil data konduktivitas, user dapat menekan tombol OK untuk mengambil data
sensor konduktivitas. Setelah mendapatkan data sensor konduktivitas, user dapat menekan
tombol OK untuk mengulang pengambilan data sensor konduktivitas atau dapat menekan
tombol UP untuk menu selanjutnya, tombol BACK untuk menu sebelumnya atau tombol
BACK untuk kembali ke tampilan awal alat terminal unit. Tampilan menu ambil data
konduktivitas dapat dilihat pada gambar 4.15.
Gambar 4.15. Tampilan menu ambil data konduktivitas
4.3.4.Menu ambil paket data
Pada menu pengambilan semua data sensor ini, user dapat melakukan pengambilan
semua data dari dummy sensor. Pada prinsipnya hal ini sama dengan pengambilan salah satu
sensor, namun pada menu ini user dapat langsung melihat nilai semua data sensor yang
diterima di terminal unit. Menu ini dapat dilakukan dengan menekan tombol UP setelah
pengambilan data konduktivitas atau menekan tombol MENU pada tampilan awal dan
menekan tombol UP atau DOWN sampai LCD menampilkan “ambil paket data?”. Setelah itu
tekan tombol OK dan LCD akan menampilkan semua data sensor yang telah di ambil dari
dummy sensor. Jika LCD menampilkan nilai 0000 maka dapat dilihat kembali apakah kabel
RX dan TX antara terminal unit dan dummy sensor sudah terhubung dengan baik. Tampilan
menu ambil paket data dapat dilihat pada gambar 4.16
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
57
Gambar 4.16. Tampilan menu ambil semua data sensor
4.3.5.Menu reset batasan kendali
Pada menu reset batasan kendali ini dapat digunakan untuk mengembalikan batasan
masing-masing sensor yang ada di terminal unit ke default, suhu bawah 18 ºC, suhu atas 28
ºC, keasaman bawah 5 pH, keasaman atas 8 pH, kekeruhan 380 NTU, konduktivitas 4800
uS/cm, oksigen 5 ppm. Reset batasan kendali ini digunakan ketika batasan masing-masing
sensor diubah dari sentral unit, maka batasan kendali dapat diubah menjadi default dari
terminal unit, namun sentral unit juga dapat me-reset batasan kendali sesuai default. Batasan
kendali yang ada ini digunakan sebagai batasan untuk kendali pintu air, pompa air dan pompa
aerator bekerja. Untuk melakukan reset batasan kendali ini user dapat menekan tombol UP
setelah pengambilan semua data sensor atau dengan menekan tombol MENU dan menekan
tombol UP atau DOWN sampai LCD menampilkan tulisan “Reset Batasan Kendali?” seperti
pada gambar 4.17. Kemudian user dapat menekan tombol OK dan LCD akan menampilkan
“Berhasil Reset”.
Gambar 4.17. Tampilan menu reset batasan kendali
4.3.6.Menu Metode Kendali
Pada menu pilihan kendali ini user dapat memilih untuk menggunakan kendali
otomatis atau manual. Pada pilihan kendali otomatis maka kendali akan bekerja sesuai dengan
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
58
nilai sensor yang didapatkan terminal unit. Nilai sensor yang didapatkan terminal unit akan
dibandingkan dengan batasan yang ada, setelah dibandingkan maka kendali akan berkerja.
Pada pilihan kendali manual ini user dapat mengatur sendiri apakah kendali akan dibuka atau
ditutup dan kendali tidak akan bekerja walaupun nilai sensor yang didapat oleh terminal unit
tidak sesuai dengan batasan yang ada. Pilihan kendali ini dapat dilakukan dengan cara
menekan tombol UP setealh melakukan reset batasan kendali atau menekan tombol MENU
pada tampilan awal kemudian menekan tombol UP atau DOWN samapi LCD menampilkan
”Metode Kendali?”. Kemudian user dapat menekan tombol OK untuk memilih apakah metode
kendali menggunakan otomatis atau manual. Metode kendali ini menggunakan default manual.
Pada pilihan manual ini user dapat mengganti kendalinya dengan menekan tombol BACK
pada tampilan awal kemudian akan muncul pengaturan kendali yang ingin diubah. Namun jika
metode kendali otomatis dan pada menu awal tombol BACK di tekan maka akan muncul
peringatan “akses ditolak”. Metode kendali dalam kondisi manual dapat dilihat manual dapat
dilihat pada gambar 4.18 dan metode kendali dalam kondisi otomatis dapat dilihat pada
gambar 4.19
Gambar 4.18. Tampilan menu pilihan kendali manual
Gambar 4.19. Tampilan menu pilihan kendali otomatis
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
59
4.3.7.Pengaturan Kendali Manual
4.3.7.1. Pengendalian pintu masuk
Pada pengaturan kendali ini user dapat mengatur pengendalian yang ada, apakah
kendali tersebut akan ditutup atau dibuka. Penggunaan kendali ini harus pada metode manual
dimana user dapat menggantinya dalam menu. Setelah metode kendali pada kondisi manual,
user dapat menekan tombol BACK sampai LCD tampil kondisi awal alat terminal unit.
Setelah kondisi LCD berada di tampilan awal, user dapat menekan tombol BACK untuk
mengatur kendali. Tampilan pengaturan pintu masuk dapat dilihat pada gambar 4.20.
Gambar 4.20. Tampilan kendali pintu air masuk tertutup.
Pada gambar 4.20. kendali pintu air masuk pada keadaan tertutup. Jika user ingin
mengubah menjadi terbuka, maka user dapat menekan tombol OK dan pintu air masuk akan
berubah menjadi sepert pada gambar 4.21
Gambar 4.21. Tampilan kendali pintu air masuk terbuka
4.3.7.2. Pengendalian pintu keluar
Pengendalian pintu keluar air ini dapat dilakukan dengan menekan tombol UP setelah
melakukan pengendalian pintu masuk air dan akan tampil seperti gambar 4.22.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
60
Gambar 4.22. Tampilan kendali pintu air keluar tertutup
Pada gambar 4.22. pintu air keluar berada dalam kondisi tertutup. Untuk membuka
pintu keluar user dapat menekan tombol OK dan pintu keluar air menjadi terbuka dan seperti
pada gambar 4.23.
Gambar 4.23. Tampilan kendali pintu air keluar terbuka
4.3.7.3. Pengendalian pompa air
Pengendalian pompa air dapat dilakukan dengan menekan tombol UP setelah
pengendalian pintu keluar air dan LCD akan tampil seperti pada gambar 4.24.
Gambar 4.24. Tampilan kendali pompa air keadaan mati
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
61
Pada gambar 4.24. pompa air sumur dalam keadaan mati. Untuk menghidupkan pompa
air sumur user dapat menekan tombol OK dan pompa air sumur menjadi hidup seperti pada
gambar 4.25.
Gambar 4.25. Tampilan kendali pompa air keadaan hidup
4.3.7.4. Pengendalian pompa aerator
Pengendalian pompa aerator dapat dilakukan dengan menekan tombol UP setelah
pengendalian pompa air dan LCD akan tampil seperti pada gambar 4.26.
Gambar 4.26. Tampilan kendali pompa aerator keadaan mati
Pada gambar 4.26. pompa aerator dalam keadaan mati. Untuk menghidupkan pompa
aerator user dapat menekan tombol OK dan pompa aerator menjadi hidup seperti pada gambar
4.27.
Gambar 4.27. Tampilan kendali pompa aerator keadaan hidup
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
62
4.3.8.Pengaturan Kendali Otomatis
Jika pada menu metode kendali dalam keadaan otomatis dan tombol BACK di tekan
pada saat menu utama maka LCD akan menampilkan akses ditolak seperti gambar 4.28.
Gambar 4.28. Tampilan akses ditolak pada kendali otomatis.
4.3.9.Tampilan Batasan Sensor
Tampilan batasan masing-masing sensor dapat dilihat dengan cara menekan tombol
DOWN pada tampilan utama. Batasan tersebut terdiri dari suhu atas, suhu bawah, keasaman
atas, keasaman bawah, kekeruhan, konduktivitas dan oksigen. Tampilan suhu atas ditandai
dengan “SA”, suhu bawah ditandai dengan “SB” dan keasaman atas ditandai “AA”, keasaman
bawah ditandai “AB” (lihat pada gambar 4.29.) Tampilan kekeruhan ditandai dengan “BK”,
konduktivitas ditandai dengan “BD” dan oksigen ditandai dengan “BO” (lihat pada gambar
4.30).
Gambar 4.29. Tampilan batasan sensor suhu dan keasaman
Gambar 4.30. Tampilan batasan sensor kekeruhan, konduktivitas dan oksigen
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
4.4.
63
Pengujian Sistem
4.4.1.Pengujian Minimum Sistem Dan LCD 16x2
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 16x2 dan men-download program tersebut
pada mikrokontroler AVR ATMega128. PORTC dijadikan sebagai output untuk menampilkan
tulisan ke LCD 16x2 dan secara bergantian diujikan ke PORTA, PORTB, PORTD, PORTE
dan PORTF dengan mengganti program untuk masing-masing port yang digunakan untuk
menguji pada masing-masing port.
Pengujian dilakukan dengan mencoba menulis karakter “SELAMAT DATANG” pada
baris pertama dan “TERIMA KASIH” pada baris kedua ke LCD 16x2. Hasil pengujian dapat
dilihat pada gambar 4.31.
Gambar 4.31. Tampilan LCD 16x2
4.4.2.Pengujian TX02-433D dan RX01-433D
Pengujian TX02-433D dan RX01-433D ini dilakukan untuk mengetahui bahwa
komunikasi antara terminal unit dengan sentral unit sudah bekerja dengan baik atau tidak serta
jarak yang dapat digunakan dalam pengiriman data.
Pengujian dilakukan dengan membuat program pengiriman satu karakter yaitu “C”
dengan nilai heksa dalam ASCII adalah 43h dan men-download program tersebut pada
mikrokontroler AVR ATMega128. Data yang dikirim dan diterima akan ditampilkan pada
LCD 16x2.
Pengiriman data tersebut dilakukan dengan cara mengirim data menggunakan TX02433D dari terminal unit ke RX01-433D sentral unit dengan frekuensi 434Mhz pengujian ini
dilakukan sebanyak enam kali dengan jarak sampai 60 meter. Data yang diterima kemudian
dikirimkan kembali menggunakan TX02-433D dari sentral unit ke RX01-433D terminal unit
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
64
dengan frekuensi 435Mhz. Pada bagian terminal unit TX02-433D dihubungkan ke port B dan
RX01-433D dihubungkan ke port A minimum sistem terminal unit sedangkan bagian sentral
unit TX02-433D dihungkan ke port A dan RX01-433D dihubungkan ke port B minimum
sistem sentral unit. LCD 16x2 bertulisan “Data Loss” bila data yang dikirim tidak dapat
diterima baik pada terminal maupun sentral unit. Tampilan pengiriman karakter “C” dapat
dilihat pada gambar 4.31 serta tampilan penerimaan karakter “C” dapat dilihat pada gambar
4.32.
Gambar 4.31. Tampilan LCD 16x2 kirim karakter
Gambar 4.32. Tampilan LCD 16x2 terima karakter
Pada pengiriman karakter “C” terdapat beberapa pengiriman yang tidak sesuai atau
data yang dikirimkan tidak dapat diterima. Jika data yang dikirimkan tidak dapat diterima
maka LCD akan menampilkan seperti gambar 4.33.
Gambar 4.33. Tampilan LCD 16x2 tidak terima data
Pengujian jarak dengan pengiriman karakter “C” secara open air atau tanpa
penghalang dengan frequency deviation +/-90kHz. Tabel pengujian komunikasi pada frekuensi
434 Mhz dapat dilihat pada tabel 4.1. dan pengujian pada frekuensi 435Mhz pada tabel 4.2.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
65
Tabel 4.1. Pengujian komunikasi frekuensi 434Mhz
Jarak
(m)
Pengujian ke-
% error
1
2
3
4
5
6
5
Terima C
Terima C
Terima C
Terima C
Terima C
Terima C
0%
10
Terima C
Terima C
Terima C
Terima C
Terima C
Terima C
0%
15
Terima C
Terima C
Terima C
Terima C
Terima C
Terima C
0%
20
Terima C
Terima C
Terima C
Terima C
Terima C
Terima C
0%
25
Terima C
Terima C
Terima C
Terima C
Terima C
Terima C
0%
30
Terima C
Terima C
Terima C
Terima C
Terima C
Terima C
0%
35
Terima C
Terima C
Terima C
Terima C
Terima C
Terima C
0%
40
Terima C
Terima C
Terima C
Data loss
Terima C
Data loss
16.6%
45
Terima C
Data loss
Terima C
Terima C
Data loss
Data loss
50%
50
Data loss
Terima C
Terima C
Data loss
Data loss
Data loss
66.6%
55
Data loss
Terima C
Data loss
Data loss
Data loss
Data loss
83.3%
60
Data loss
Data loss
Data loss
Data loss
Data loss
Data loss
100%
Tabel 4.2. Pengujian komunikasi frekuensi 435Mhz
Jarak
(m)
Pengujian ke-
% error
1
2
3
4
5
6
5
Terima C
Terima C
Terima C
Terima C
Terima C
Terima C
0%
10
Terima C
Terima C
Terima C
Terima C
Terima C
Terima C
0%
15
Terima C
Terima C
Terima C
Terima C
Terima C
Terima C
0%
20
Terima C
Terima C
Terima C
Terima C
Terima C
Terima C
0%
25
Terima C
Terima C
Terima C
Terima C
Terima C
Terima C
0%
30
Terima C
Terima C
Terima C
Terima C
Terima C
Terima C
0%
35
Terima C
Terima C
Terima C
Terima C
Terima C
Terima C
0%
40
Terima C
Terima C
Terima C
Terima C
Data loss
Terima C
16.6%
45
Terima C
Data loss
Data loss
Terima C
Terima C
Terima C
33.3%
50
Terima C
Data loss
Data loss
Terima C
Data loss
Data loss
66.6%
55
Data loss
Data loss
Data loss
Data loss
Data loss
Data loss
100%
60
Data loss
Data loss
Data loss
Data loss
Data loss
Data loss
100%
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
66
Pada pengujian tersebut dapat dilihat bahwa pada jarak 5 sampai 35 meter data yang
dikirimkan masih baik atau data dapat selalu diterima. Terima C artinya data berhasil dikirim
dan diterima, pada data loss data tidak dapat diterima.
Berdasarkan pengujian tersebut saat pengiriman data menggunakan 434Mhz maupun
435Mhz, pada jarak 40 meter sudah tidak dapat berjalan dengan baik. Perbedaan frekuensi
tidak mempengaruhi jarak komunikasi yang terjadi. Oleh sebab itu komunikasi yang
sebaiknya digunakan pada jarak kurang dari 40 meter. Namun pengujian masih pengujian
pengiriman data tunggal.
4.5.
Pengujian Software
Pengujian untuk mengukur tingkat keberhasilan alat ini dibagi menjadi 4 bagian.
Pengujian pertama pengambilan data sensor dari dummy sensor. Pada pengujian kedua
terdapat pengujian kendali, kendali dalam metode manual dan kendali dalam metode otomatis.
Pada pengujian ketiga, Pengiriman paket data ke sentral unit. Data sensor yang telah di ambil
dari dummy sensor dikirimkan dalam bentuk paket data ke sentral unit. Pengujian ini
dilakukan dengan merubah jarak antara terminal unit serta sentral unit dengan beberapa jarak.
Pengujian dilakukan sebanyak 20 kali untuk masing-masing jarak. Pengujian keempat sentral
unit akan mengirimkan paket data ke terminal unit dengan jarak yang ditentukan sama seperti
pengujian ketiga. Pada pengujian software ini juga terdapat perubahan perancangan perangkat
lunak. Perubahan ini dilakukan karena terdapat perbedaan antara perancangan perangkat lunak
yang telah dibuat dengan pembuatan software. Sehingga pada pengujian software ini
dimasukan perancangan perangkat lunak yang baru.
4.5.1.Perubahan Perancangan Perangkat Lunak
4.5.1.1.Diagram Alir Utama
Pada diagram alir utama ini terdapat terima perintah dari sentral unit, menu, pengaturan
kendali menu, batasan tiap sensor, reset sistem dan pengiriman paket data ke sentral unit.
Diagram alir utama dapat dilihat pada gambar 4.34.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
Gambar 4.34. Diagram alir utama
67
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
68
Gambar 4.34.(lanjutan) Diagram alir utama
4.5.1.2.Diagram Alir Subrutin Data Masuk
Pada subrutin ini, terminal unit mengolah data masuk dari sentral unit. Karakter yang
diterima terminal unit dapat dilihat pada tabel 3.1. Diagram alir subrutin data masuk dapat
dilihat pada gambar 4.35.
Gambar 4.35. Diagram alir subrutin data masuk
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
Gambar 4.35. (lanjutan) Diagram alir subrutin data masuk
69
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
70
4.5.1.3.Diagram Alir Subrutin Menu
Pada diagram alir subrutin menu ini terdapat pengaturan waktu RTC, pengaturan waktu
jadwal pengiriman paket data, pengujian salah satu sensor, pengujian semua sensor, reset
batasan kendali dan metode kendali. Diagram alir subrutin menu dapat dilihat pada gambar
4.36.
Gambar 4.36. Diagram alir subrutin menu
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
71
Gambar 4.36. (lanjutan) Diagram alir subrutin menu
4.5.1.4.Diagram Alir Subrutin Kendali Manual
Diagram alir subrutin kendali manual ini merupakan perancangan kendali pada metode
manual. Diagram alir subrutin kendali manual ini dapat dilihat pada gambar 4.37.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
Gambar 4.37. Diagram alir subrutin kendali manual
72
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
73
4.5.1.5.Diagram Alir Subrutin Pengiriman Data
Diagram alir ini merupakan perancangan pengiriman ke sentral unit, data yang telah
ditentukan akan dikirimkan ke sentral unit. Diagram alir subrutin kirim data dapat dilihat pada
gambar 4.38.
Gambar 4.38. Diagram alir subrutin pengiriman data
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
74
4.5.2.Pengujian Pengambilan Data Sensor
Pengujian pengambilan data dari dummy sensor ini dilakukan untuk mengetahui
apakah komunikasi antara terminal unit dan dummy sensor telah dapat bekerja sesuai dengan
perancangan. Pengujian ini terdiri dari pengambilan sensor suhu, keasaman, oksigen,
kekeruhan, konduktivitas serta pengambilan semua data sensor. Untuk pengujian ini, penulis
hanya melakukan pengujian satu kali untuk setiap sensornya. Data yang diambil dari dummy
sensor dapat dilihat pada tabel 4.3 dan Gambar 4.39. Pengambilan data suhu dapat dilihat pada
gambar 4.40.
Tabel 4.3. Contoh data yang diambil
Parameter
Nilai
Suhu
33.0
Keasaman
9.0
Oksigen
6.5
Kekeruhan
475
Konduktivtas
5800
Gambar 4.39. Tampilan LCD 16x2 dummy sensor
Keterangan Gambar 4.39.
S = Suhu
D = Oksigen
P = Keasaman
H = Kekeruhan
O = Oksigen
Gambar 4.40. Tampilan LCD 16x2 data suhu
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
75
Pada gambar 4.39 dan gambar 4.40 dapat dilihat bahwa pengambilan data sensor suhu
yang diterima terminal unit sesuai dengan data suhu pada dummy sensor. Jika terminal unit
tidak bisa melakukan komunikasi dengan dummy sensor maka pengambilan data akan seperti
gambar 4.41.Untuk gambar pengambilan data sensor yang lain dapat dilihat pada lampiran.
Program pengambilan data sensor dari dummy sensor dapat dilihat pada gambar 4.42.
Gambar 4.41. Tampilan LCD 16x2 tidak terima data suhu
Gambar 4.42. Program Pengambilan data sensor
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
76
4.5.3. Pengujian Kendali
Pengujian kendali ini dilakukan untuk membuktikan bahwa kendali dapat berjalan
sesuai dengan semestinya. Kendali ini terdapat dua metode yaitu manual dan otomatis, kendali
manual dapat diatur melalui alat terminal unit dan kendali otomatis diatur sesuai dengan
batasan sensor yang ada.
4.5.3.1.Kendali Manual
Pada pengujian kendali ini tidak menggunakan kendali asli, sehingga untuk pengujian
kendali ini, user menggunakan LED sebagai kendali. Pada LCD juga terdapat status kendali
yang dapat dilihat. Pada pengujian kendali manual ini, penulis mencoba menjalankan kendali
dengan membuat kondisi awal semua kendali dalam keadaan mati dan mencoba
menghidupkan satu per satu kendali sampai semua kendali dalam keadaan hidup. Tampilan
awal kendali LCD dapat dilihat pada gambar 4.43 dan tampilan awal kendali LED dapat
dilihat pada gambar 4.44.
Gambar 4.43. Tampilan awal kendali LCD
Gambar 4.44. Tampilan awal kendali LED
Keterangan Gambar 4.44.
K = Pintu Masuk
M = Pompa Air
L = Pintu Keluar
N = Pompa Aerator
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
77
Pada gambar 4.44. dapat dilihat bahwa semua kendali dalam kondisi mati. Pada
percobaan yang pertama penulis mencoba menghidupkan pintu masuk air, cara menghidupkan
pintu masuk dari keadaan mati menjadi keadaan hidup (lihat gambar 4.20 dan 4.21). Kendali
pintu masuk dalam kondisi hidup dapat dilihat pada gambar 4.45 untuk LCD dan gambar 4.46
untuk LED.
Gambar 4.45. Tampilan LCD kendali pintu masuk keadaan hidup
Gambar 4.46. Tampilan LED kendali pintu masuk keadaan hidup
Pada gambar 4.46 dapat dilihat bahwa LED “K” hidup atau kendali pintu masuk air
dalam kondisi hidup. Untuk percobaan kendali pintu keluar air, pompa air dan pompa aerator
dapat dilihat pada lampiran. Program status kendali manual untuk LCD dapat dilihat pada
gambar 4.47 dan untuk LED dapat dilihat pada gambar 4.48.
Gambar 4.47. Program tampil status kendali pada LCD
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
78
Gambar 4.48. Tampilan status kendali pada LED
4.5.3.2.Kendali Otomatis
Pengujian kendali otomatis ini dapat bekerja dari data sensor yang didapatkan dari
dummy sensor kemudian dibandingkan dengan batasan sensor yang ada (default) (lihat tabel
2.1). Pada kendali otomatis ini juga hanya terdiri dari dua keadaan, dimana jika terdapat salah
satu dari sensor suhu, keasaman, kekeruhan dan konduktivitas yang berada diluar batasan
sensor maka keadaan kendali tidak normal. Keadaan kendali tidak normal ini ditandai dengan
pintu masuk air mati, pintu keluar air hidup dan pompa air hidup atau “K0, L1, M1”. Jika
sensor berada dalam batasan sensor maka kendali dalam keadaan normal. Keadaan normal
ditandai dengan “K1, L0, M0”. Pada sensor oksigen yang akan bekerja adalah pompa aerator,
sehingga jika sensor oksigen diluar batasan sensor, maka pompa aerator dalam keadaan hidup
“N1” begitu juga sebaliknya. Pada metode kendali otomatis ini tidak dapat masuk kedalam
menu kendali manual, jika pada metode kendali otomatis dan menu kendali manual ditekan,
maka akan muncul peringatan (lihat gambar 4.28). Nilai awal pada percobaan kendali otomatis
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
79
ini dapat dilihat pada gambar 4.49 dan status kendali awal dapat dilihat pada gambar 4.50 dan
4.51.
Gambar 4.49. Nilai sensor sebelum percobaan
Gambar 4.50. Kendali sebelum percobaan
Gambar 4.51. Status kendali sebelum percobaan
Pada gambar 4.49 dapat dilihat bahwa semua nilai sensor sesuai dengan batasan sensor
yang ada, sehingga pada gambar 4.50 dapat dilihat bahwa kendali pada keadaan normal serta
pompa aerator dalam keadaan normal. Percobaan ini dilakukan dengan mengubah nilai suhu
dan oksigen menjadi tidak normal. Nilai sensor yang telah diubah dapat dilihat pada gambar
4.52 dan status kendali dapat dilihat pada gambar 4.53 dan gambar 4.54.
Gambar 4.52. Nilai sensor yang telah diubah
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
80
Gambar 4.53. Status kendali telah berubah
Gambar 4.54. Status kendali telah berubah
Pada gambar 4.53 dan gambar 4.54 dapat dilihat bahwa status kendali telah berubah
menjadi tidak normal setelah nilai suhu dan oksigen diubah menjadi tidak normal. Begitu juga
dengan pompa aerator menjadi hidup. Pengujian keadaan tidak normal jika sensor keasaman,
kekeruhan dan konduktivitas berada diluar batasan, dapat dilihat pada lampiran. Program
kendali otomatis dapat dilihat pada gambar 4.55.
Gambar 4.55. Program kendali otomatis
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
81
4.5.4.Pengujian Kirim Paket Data Ke Sentral Unit
Pengujian ini dilakukan sebanyak 20 kali untuk setiap jarak yang berbeda. Paket data
yang dikirim dari terminal unit akan diterima di sentral unit dan dapat dilihat di LCD 16x2,
lalu paket data yang diterima sentral unit dapat dibandingkan dengan dummy sensor untuk
mengetahui apakah paket data yang dikirim dari terminal unit sudah sesuai dengan paket data
yang diterima sentral unit. Pengujian paket data dapat dilihat pada tabel 4.4 serta paket data
yang dikirim dapat dilihat pada tabel 4.5.
Tabel 4.4. Contoh paket data yang dikirim
Karakter
S
P
D
H
O
K
L
M
N
Data
33.0
9.0
6.5
475
5800
0
1
1
1
Keterangan
Sensor Suhu = 33,0 ºC
Sensor pH = 9,0pH
Sensor DO = 6,5ppm
Sensor Kekeruhan = 475NTU
Sensor Konduktifitas = 5800uS/cm
Pintu Inlet Tertutup
Pintu Outlet Terbuka
Pompa Sumur ON
Pompa Aerator ON
Tabel 4.5. Pengujian kirim paket data
Jarak
(m)
Pengujian Ke1
2
9
10
11
12
13
14
15
16
17
18
19
20
1
√ √ √ √ √ √ √ √ √
√
√
√
√
√
√
√
√
√
√
√
5
√ √ √ √ √ √ √ √ √
√
√
√
√
√
√
√
√
√
√
√
10
√ √ √ √ √ √ √ √ √
√
√
√
√
√
√
√
√
√
√
√
15
√ √ √ √ √ √ √ √ √
√
√
√
√
√
√
√
√
√
√
√
20
√ √ √ √ √ √ √ √ √
√
√
√
√
√
√
√
√
√
√
√
25
√ √ √ √ x
x √ x √
√
x
√
x
x
x
√
x
x
x
x
30
x
x
x
x
x
x
x
x
x
x
x
x
x
x
Keterangan: - √
- x
3
x
4
x
5
x
6
7
x
8
x
x
= Berhasil kirim data
= Tidak terima data
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
82
Berdasarkan tabel tersebut maka paket data yang dikirim dari terminal unit adalah :
@S33.0#P9.0#D6.5#H475#O5800#K0#L1#M1#N1#$ kondisi kendali yang menunjukkan
bahwa kondisi tidak normal. Jumlah karakter dalam paket data tersebut adalah 41 karakter.
Karakter ke-33 sampai 41 tidak tertampil pada LCD 16x2 namu data ke-33 sampai 41 tetap
terkirim. Data yang diterima sentral unit dapat dilihat pada gambar 4.56 dan data pada dummy
sensor dapat dilihat pada gambar 4.57 serta program kirim paket data dapat dilihat pada
gambar 4.58.
Gambar 4.56. LCD 16x2 terima paket data di sentral unit
Gambar 4.57. LCD 16x2 data dummy sensor
Gambar 4.58. Program paket data yang dikirim
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
83
Gambar 4.58. (lanjutan) Program paket data yang dikirim
4.5.5.Pengujian Terima Paket Data dari Sentral Unit
Pengujian terima paket data dari sentral unit terdapat beberapa pengaturan. Terdapat
waktu pengiriman paket data dari terminal unit ke sentral unit, batasan masing-masing sensor,
permintaan salah satu sensor serta reset batasan-batasan sensor sesuai dengan batasan awal.
Program penerimaan karakter dari sentral unit dapat dilihat pada gambar 4.59.
Gambar 4.59. Program penerimaan karakter dari sentral unit
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
84
4.5.5.1. Pengaturan Jadwal Pengiriman
Pengaturan waktu pengiriman data merupakan pengaturan untuk waktu pengiriman
paket data dari terminal unit yang berisi informasi masing-masing sensor serta kondisi
aktuator. Waktu yang dapat diatur dari sentral unit sejumlah dua buah karakter yang berarti
dari 10 sampai 99 menit. Sebagai contoh saat sentral unit menginginkan pengiriman setiap 10
menit maka pada LCD16x2 terminal unit akan tampil @J10# yang artinya terminal unit akan
mengganti waktu jadwal pengiriman paket data setiap 10 menit sekali dan waktu jadwal
pengiriman ini akan disimpan di eeprom. Terima data waktu pengiriman paket dapat dilihat
pada gambar 4.60 dan perubahan jadwal pada terminal unit dapat dilihat pada gambar 4.61.
Gambar 4.60. Tampilan LCD 16x2 terima data waktu kirim paket data
Gambar 4.61. Tampilan LCD 16x2 jadwal waktu pengiriman paket data
Program terima karakter “J” atau pengaturan jadwal waktu pengiriman dari sentral unit
ke terminal unit dapat dilihat pada gambar 4.62.
Gambar 4.62. Program terima karakter J dari sentral unit
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
85
4.5.5.2.Pengaturan Batasan Sensor
Pengaturan batasan masing-masing sensor merupakan pengaturan dari user sentral unit
untuk mengubah batasan masing-masing sensor yang sebelumnya sudah ditentukan dan
disimpan di dalam eeprom terminal unit, batasan masing-masing sensor ini digunakan untuk
mengatur sistem kendali pintu air, pompa air dan pompa aerator. Batasan awal sensor atau
default (lihat gambar 4.29 dan 4.30).
Batasan yang dapat diatur oleh user adalah sebagai berikut. Batasan suhu yang dapat
diatur antara 18 ºC-28 ºC, batasan keasaman adalah 5-8 pH, batasan oksigen yang dapat diatur
antara 3-7 ppm, batasan kekeruhan adalah 100-380 NTU dan batasan konduktivitas adalah
1000-4800 uS/cm. Pada batasan suhu dan keasaman terdapat dua batasan yaitu batas atas dan
batas bawah.
Tabel 4.6. Contoh terima data batasan sensor
Parameter
Batasan
Terima Data
Batas Bawah
Batas Atas
Suhu
20
25
@V20,25#
Keasaman
6
7
@W6,7#
Oksigen
4
@X4#
Kekeruhan
370
@Y370#
Konduktivas
4600
@Z4600#
Terima batasan sensor suhu dan sensor keasaman dapat dilihat pada gambar 4.63 dan
gambar 4.64. Perubahan batasan di terminal unit dapat dilihat pada gambar 4.65.
Gambar 4.63. Tampilan LCD 16x2 terima setting batasan suhu terminal unit
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
86
Gambar 4.64. Tampilan LCD 16x2 terima setting batasan keasaman terminal unit
Gambar 4.65. Tampilan LCD 16x2 batasan suhu dan keasaman di terminal unit
Penerimaan karakter oksigen, kekeruhan dan konduktivitas dapat dilihat pada gambar
4.66 sampai gambar 4.68.
Gambar 4.66. Tampilan LCD 16x2 terima setting batasan oksigen terminal unit
Gambar 4.67. Tampilan LCD 16x2 terima setting batasan kekeruhan terminal unit
Gambar 4.68. Tampilan LCD 16x2 terima setting batasan konduktivitas terminal unit
Setelah terima karakter dan nilai batasan sensor, terminal unit langsung menyimpan
batasan tersebut dalam EEPROM. Batasan sensor yang telah diterima dapat dilihat pada
gambar 4.69 serta program terima batasan sensor dari sentral unit dapat dilihat pada gambar
4.70.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
87
Gambar 4.69. Tampilan LCD 16x2 batasan kekeruhan, konduktivitas dan oksigen
Gambar 4.70. Program terima batasan sensor oksigen, kekeruhan dan konduktivitas
4.5.5.3.Pengiriman Salah Satu Sensor
Pada menu pengiriman salah satu sensor, sentral unit akan mengirimkan karakter ke
terminal unit untuk mengirimkan salah satu sensor seperti yang diminta sentral unit. Terdapat
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
88
lima pilihan sensor yaitu sensor suhu, keasaman, oksigen, kekeruhan dan konduktivitas.
Terminal unit kemudian mengirimkan paket data yang berisi data salah satu sensor sesuai
dengan permintaan sentral unit. Paket data yang dikirim dari sentral unit serta terima paket
data di terminal unit dengan salah satu sensor dapat dilihat pada tabel 4.7.
Tabel 4.7. Contoh paket data ambil salah satu sensor
Sensor
Terima
Kirim
Keterangan
Suhu
@A#
@AS15.0#$
Sensor Suhu = 15,0ºC
Keasaman
@B#
@BP6.0#$
Sensor Keasaman = 6,0pH
Oksigen
@C#
@CD6#$
Sensor Oksigen = 6ppm
Kekeruhan
@D#
@DH275#$
Sensor Kekeruhan = 275NTU
Konduktivitas
@E#
@EO4050#$
Sensor Konduktivitas = 4050uS/cm
Seperti pada penjelasan, dalam tabel 4.7 ini sentral unit mengirimkan karakter A ke
terminal unit. Ketika terminal unit membaca karakter A maka terminal unit langsung
melakukan komunikasi dengan dummy sensor untuk mengirimkan data suhu. Setelah data
suhu diterima terminal unit maka terminal unit akan langsung mengirimkan data suhu tersebut
ke sentral unit dengan format @AS15.0#$, begitu juga untuk sensor yang lainnya. Karakter @
hanya sebagai header data saat dikirimkan dari terminal unit maupun ke terminal unit.
Karakter $ adalah sebagai karakter pengakhir bahwa paket data telah dikirim. Untuk gambar
ambil paket data yang lainnya dapat dilihat pada lampiran. Terima karakter “A” dari sentral
unit dapat dilihat pada gambar 4.71.
Gambar 4.71. Tampilan LCD 16x2 terima karakter sensor suhu
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
89
Seperti pada penjelasan, setelah terminal unit menerima karakter “A” maka terminal
unit akan mengambil data suhu dari dummy sensor. Data suhu pada dummy sensor dapat
dilihat pada gambar 4.72 yang ditandai dengan karakter “S” di awalnya. Setelah terminal unit
menerima data suhu dari dummy sensor maka data tersebut akan dikirimkan ke sentral unit.
Data suhu yang didapatkan terminal unit tidak ditampilkan pada LCD 16x2 sehingga pada
terminal unit hanya menampilkan “Kirim data suhu” seperti pada gambar 4.73. Data yang
diterima sentral unit dapat dilihat pada gambar 4.74.
.
Gambar 4.72. Tampilan LCD 16x2 nilai suhu pada dummy sensor
Gambar 4.73. Tampilan LCD 16x2 kirim data suhu ke sentral unit
Gambar 4.74. Tampilan LCD 16x2 terima data suhu dari terminal unit
Pengiriman paket data dari sentral unit ke terminal unit dikirimkan hanya sekali saja
sesuai dengan perancangan yang ada. Program permintaan salah satu sensor dari sentral unit
dapat dilihat pada gambar 4.75. Dalam program ini juga terdapat terima karakter “U” atau
permintaan kirim ulang paket data, permintaan kirim ulang paket data ini dilakukan jika paket
data yang dikirimkan terminal unit tidak dapat diterima sentral unit. Namun pada percobaan
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
90
yang dilakukan, pengiriman selalu berhasil sehingga penulis tidak bisa memasukan gambar
permintaan kirim ulang paket data.
Gambar 4.75. Program pengiriman salah satu sensor ke sentral unit
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
91
Gambar 4.75. (lanjutan) Program pengiriman salah satu sensor ke sentral unit
4.6.
Pengujian Alat Terminal Unit
Pengujian alat terminal unit ini dilakukan untuk melihat apakah fitur-fitur pada
terminal sudah dapat digunakan seperti perancangannya. Pada pengujian ini terdapat
pengujian pengaturan waktu RTC, pengujian jadwal pengiriman paket data, reset batasan
kendali, metode kendali, Pada pengujian alat terminal unit ini, dilakukan dua kali pengujian
yang digunakan sebagai pembanding antara pengujian pertama dan pengujian kedua.
4.6.1. Pengujian Tombol
Pada pengujian tombol ini, penulis mencoba untuk menguji apakah tombol yang ada
pada alat terminal unit dapat bekerja seperti pada perancangan. Pengujian ini dibuat dalam
bentuk tabel untuk melihat keberhasilan pengujian tombol.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
92
1. Pengujian Tombol Pada Tampilan Awal
Pada pengujian ini, tombol-tombol akan diuji apakah dalam tampilan awal, tombol
dapat digunakan sesuai dengan yang diharapkan. Pengujian dapat dilihat pada tabel 4.8.
Tabel 4.8. Pengujian tombol pada tampilan awal
Skenario Pengujian
Hasil Pengujian
Menekan tombol UP
Tidak ada aksi
Menekan tombol DOWN
Melihat batasan kendali
Menekan tombol OK
Tidak ada aksi
Menekan tombol RESET
Memulai ulang sistem
terminal unit
Mengatur kendali pada
metode manual
Menekan tombol BACK
Keterangan
[√] Berhasil
[√] Berhasil
[√] Berhasil
[√] Berhasil
[√] Berhasil
2. Pengujian Tombol Pada Menu RTC
Pada pengujian ini, tombol-tombol akan diuji apakah dalam mode menu RTC ini,
tombol dapat digunakan sesuai dengan yang diharapkan. Pengujian dapat dilihat pada tabel
4.9.
Tabel 4.9. Pengujian tombol pada menu RTC
Skenario Pengujian
Menekan tombol UP
Menekan tombol DOWN
Menekan tombol OK
Menekan tombol RESET
Menekan tombol BACK
Hasil Pengujian
Menambah angka pada
pengaturan RTC
Mengurangi angka pada
pengaturan RTC
Memilih waktu RTC yang
telah ditentukan
Memulai ulang sistem
terminal unit
Tidak ada aksi
Keterangan
[√] Berhasil
[√] Berhasil
[√] Berhasil
[√] Berhasil
[√] Berhasil
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
93
3. Pengujian Tombol Pada Menu Pengaturan Jadwal Kirim
Pada pengujian ini, tombol-tombol akan diuji apakah dalam mode menu jadwal kirim
ini, tombol dapat digunakan sesuai dengan yang diharapkan. Pengujian dapat dilihat pada tabel
4.10.
Tabel 4.10. Pengujian tombol pada jadwal kirim
Skenario Pengujian
Menekan tombol UP
Menekan tombol DOWN
Menekan tombol OK
Menekan tombol RESET
Menekan tombol BACK
Hasil Pengujian
Menambah angka pada
pengaturan jadwal
Mengurangi angka pada
pengaturan jadwal
Memilih waktu jadwal yang
telah ditentukan
Memulai ulang sistem
terminal unit
Kembali ke menu awal
Keterangan
[√] Berhasil
[√] Berhasil
[√] Berhasil
[√] Berhasil
[√] Berhasil
4. Pengujian tombol pada menu pengambilan data sensor
Pada pengujian ini, tombol-tombol akan diuji apakah dalam mode menu data sensor
ini, tombol dapat digunakan sesuai dengan yang diharapkan. Pada pengujian pengambilan data
sensor, terdapat beberapa menu. Namun pada pengujian hanya dilakukan satu kali dikarenakan
semua pengujian mendapatkan hasil yang sama. Pengujian dapat dilihat pada tabel 4.11.
Tabel 4.11. Pengujian tombol pada menu pengambilan data sensor
Skenario Pengujian
Menekan tombol UP
Menekan tombol DOWN
Hasil Pengujian
Melanjutkan ke menu reset
batasan kendali
Kembali ke menu jadwal
kirim
Menekan tombol OK
Mengambil data sensor
Menekan tombol RESET
Memulai ulang sistem
terminal unit
Menekan tombol BACK
Kembali ke menu awal
Keterangan
[√] Berhasil
[√] Berhasil
[√] Berhasil
[√] Berhasil
[√] Berhasil
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
94
5. Pengujian tombol pada menu reset batasan kendali
Pada pengujian ini, tombol-tombol akan diuji apakah dalam mode menu reset batasan
kendali ini, tombol dapat digunakan sesuai dengan yang diharapkan. Pengujian dapat dilihat
pada tabel 4.12.
Tabel 4.12. Pengujian tombol pada menu reset batasan kendali
Skenario Pengujian
Menekan tombol UP
Menekan tombol DOWN
Menekan tombol OK
Menekan tombol RESET
Menekan tombol BACK
Hasil Pengujian
Melanjutkan ke menu
metode kendali
Kembali ke menu
pengambilan data sensor
Melakukan reset batasan
kendali
Memulai ulang sistem
terminal unit
Kembali ke menu awal
Keterangan
[√] Berhasil
[√] Berhasil
[√] Berhasil
[√] Berhasil
[√] Berhasil
6. Pengujian tombol pada menu metode kendali
Pada pengujian ini, tombol-tombol akan diuji apakah dalam mode menu metode
kendali ini, tombol dapat digunakan sesuai dengan yang diharapkan. Pengujian dapat dilihat
pada tabel 4.13.
Tabel 4.13. Pengujian tombol pada menu metode kendali
Skenario Pengujian
Menekan tombol UP
Menekan tombol DOWN
Menekan tombol OK
Menekan tombol RESET
Menekan tombol BACK
Hasil Pengujian
Melanjutkan ke menu atur
jam
Kembali ke menu reset
batasan kendali
Memilih metode kendali
manual atau otomatis
Memulai ulang sistem
terminal unit
Kembali ke menu awal
Keterangan
[√] Berhasil
[√] Berhasil
[√] Berhasil
[√] Berhasil
[√] Berhasil
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
95
4.6.2. Pengujian waktu RTC
Pada pengujian waktu RTC ini, penulis mencoba mengatur waktu RTC diantaranya
pengaturan jam, menit, tanggal, bulan dan tahun kemudian dari pengaturan tersebut akan
dilihat pada tampilan awal apakah waktu RTC yang telah di atur tersebut sudah sesuai.
Pengaturan waktu RTC merupakan pengaturan di dalam mode menu. Pada pengujian waktu
RTC ini, penulis melakukan dua kali pengujian yang digunakan sebagai pembanding antara
pengujian yang pertama dan kedua. Pengujian kedua dapat dilihat pada lampiran. Tampilan
waktu RTC sebelum melakukan pengujian dapat dilihat pada gambar 4.77.
Gambar 4.77. Tampilan awal waktu RTC
Pada menu awal ini user dapat menekan tombol menu untuk mengubah waktu RTC.
Setelah menekan tombol menu, maka akan muncul tampilan seperti gambar 4.78.
Gambar 4.78. Tampilan atur waktu RTC pada mode menu
Pada pengujian waktu RTC, penulis melakukan pengujian dengan merubah jam, menit,
tanggal, bulan dan tahun. Pengaturan untuk pengujian dapat dilihat pada gambar 4.79 sampai
4.83.
Gambar 4.79. Tampilan atur jam RTC
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
96
Gambar 4.80. Tampilan atur menit RTC
Gambar 4.81. Tampilan atur tanggal RTC
Gambar 4.82. Tampilan atur bulan RTC
Gambar 4.83. Tampilan atur tahun RTC
Setelah melakukan semua pengaturan waktu RTC, maka LCD akan tampil seperti
gambar 4.84 dan hasil pengujian waktu RTC yang telah diubah dapat dilihat pada gambar
4.85.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
97
Gambar 4.84. Tampilan waktu RTC berhasil diubah
Gambar 4.85. Tampilan awal waktu RTC yang telah diubah
Pada gambar 4.85 dapat dilihat bahwa hasil waktu RTC pada tampilan awal telah
berubah sesuai dengan waktu yang di atur dalam menu. Hasil pengujian waktu RTC dapat
dilihat pada tabel 4.14.
Tabel 4.14. Hasil Pengujian waktu RTC
Pengujian
Waktu
Hasil Pengujian
Pertama
Kedua
Jam
16
20
Menit
33
30
Tanggal
19
25
Bulan
11
04
Tahun
2015
2020
Pertama
Kedua
19-11-15
25-4-20
16:33:50
20:30:4
Keterangan
Berhasil
4.6.3. Pengujian Jadwal Kirim
Pengujian jadwal kirim ini dilakukan untuk mengetahui apakah jadwal kirim paket data
yang telah ditentukan sesuai dengan pengiriman paket data. Pengujian ini dilakukan sebanyak
dua kali. Pengujian pertama dilakukan pengaturan waktu pengiriman paket data selama 10
menit. Tampilan dapat dilihat pada gambar 4.86 sampai gambar 4.89 dan pengujian kedua
dapat dilihat dalam lampiran
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
98
Gambar 4.86. Tampilan waktu sebelum pengiriman paket data
Gambar 4.87. Tampilan waktu jadwal pengiriman paket data
Gambar 4.88. Tampilan waktu setelah 10 menit
Gambar 4.89. Tampilan kirim paket data dari terminal unit
Pada gambar 8.86 sampai gambar 8.89 dapat dilihat bahwa pengaturan jadwal kirim
sudah sesuai dengan pengaturan yang telah ditentukan.
4.6.4. Pengujian Reset Batasan Kendali
Pengujian reset batasan kendali ini dilakukan untuk mengetahui apakah batasan
kendali yang telah diubah sentral unit dapat dikembalikan seperti pengaturan awal. Pengujian
ini dilakukan dengan mengganti batasan kendali dari sentral unit kemudian melakukan reset
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
99
batasan kendali dari menu terminal unit. Pengujian ini dilakukan dua kali. Batasan kendali
yang telah diubah sentral unit dapat dilihat pada gambar 4.90 dan gambar 4.91.
Gambar 4.90. Tampilan batasan suhu dan keasaman yang telah diubah sentral unit
Gambar 4.91. Batasan kekeruhan, konduktivitas dan oksigen yang telah diubah sentral unit
Setelah batasan diubah dari sentral unit, maka pengujian reset batasan kendali dapat
dilakukan. Pengaturan reset batasan kendali dapat dilihat pada gambar 4.17 dan tampilan
berhasil reset dilihat pada gambar 4.92. Setelah melakukan reset batasan kendali, hasil reset
dapat dilihat pada gambar 4.93 dan gambar 4.94.
Gambar 4.92. Tampilan berhasil reset batasan kendali
Gambar 4.93. Batasan suhu dan keasaman setelah melakukan reset
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
100
Gambar 4.94. Batasan kekeruhan, konduktivitas dan oksigen setelah melakukan reset
Pada gambar 4.93 dan gambar 4.94 dapat dilihat batasan kendali berhasil diubah
menjadi batasan awal yang telah ditentukan. Untuk pengujian yang kedua dapat dilihat pada
lampiran.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
BAB V
KESIMPULAN DAN SARAN
5.1
KESIMPULAN
Berdasarkan analisis terhadap data yang diperoleh dari hasil penelitian sistem telemetri
modul terminal unit dalam mengatur kualitas air kolam ikan, maka dapat disimpulkan:
1. Komunikasi antara terminal unit dan dummy sensor dapat dilakukan dan data dari
dummy sensor dapat diterima pada terminal unit sesuai dengan pengujian.
2. Terminal unit telah berhasil melakukan kendali, baik kendali dalam metode manual
atau kendali dalam metode otomatis.
3. Komunikasi antara terminal unit dan sentral unit dengan sistem telemetri dapat
dilakukan sampai dengan jarak 20 m.
4. Tombol pada terminal unit dapat digunakan sesuai dengan perancangan, baik dalam
mode menu, pengaturan kendali manual.
5. Jadwal pengiriman dapat bekerja sesuai dengan pengaturan yang telah ditentukan.
5.2.
SARAN
Sistem telemetri ini masih terdapat banyak kekurangan, sehingga perlu pengembangan
lebih lanjut. Saran bagi pengembangan sistem ini selanjutnya ialah; Sistem harus bisa
mengirimkan paket data dengan jarak yang lebih jauh serta akurat sehingga keandala dalam
pengiriman paket data menjadi lebih optimal.
101
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
DAFTAR PUSTAKA
[1]
http://www.bibitikan.net/bibit-dan-induk-unggulan-tingkatkan-produksi-ikan-airtawar/#more, diakses tanggal 9 february 2015
[2]
http://alamtani.com/budidaya-ikan-lele.html, diakses tanggal 9 february 2015
[3]
Bambang, C., 2000, Budi Daya Ikan Air Tawar , Kanisius, Yogyakarta.
[4]
Uniplaita, M.K.T., 2014, Sistem Pengukuran Konduktivitas Air Kolam Ikan, Universitas
Sanata Dharma, Yogyakarta.
[5]
Saputri, D., 2014,Alat Ukur Kadar Keasaman Pada Sistem Monitoring Kualitas Air
Kolam Ikan, Universitas Sanata Dharma, Yogyakarta.
[6]
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
[7]
Wijaya, I., 2014,Monitoring Kekeruhan Air Pada Sistem Monitoring Kualitas Air Kolam
Ikan, Universitas Sanata Dharma, Yogyakarta.
[8]
Wijatmika,H.S., 2014,Alat Ukur Kadar Oksigen Terlarut Dengan Metode Elektrolisis
Berbasis ATmega8535, Universitas Sanata Dharma, Yogyakarta.
[9]
Radiometer Analitic SAS., 2004, Conductivity Theory and Practice, Villleurbnne Cedex,
France
[10]
Wilianto, C., 2014, Sistem Komunikasi Pengendalian Kualitas Air Kolam Ikan Berbasis
Atmega128, Skripsi, Universitas Sanata Dharma, Yogyakarta.
[11]
Payara, F. M., 2014, Rancang Bangun Pengendalian Kualitas Air pada Sistem
Monitoring Kualitas Air Kolam Ikan, Universitas Sanata Dharma, Yogyakarta.
[12]
----------, 2011, Data Sheet Microcontroller ATmega128, Atmel.
[13]
Alim, A. T. S., 2013, Aquarium Controller Berbasis ATmega128 Sebagai Penjaga
Stabilitas Sistem Akuarium Lau, Universitas Sanata Dharma, Yogyakarta.
[14]
----------, 2006, Data Sheet RX01
[15]
----------, 2006, Data Sheet TX02
102
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
[16]
http://elektronika-dasar.web.id/teori-elektronika/lcd-liquid-cristal-display/, diakses
tanggal 28 februari 2015
[17]
http://www.bagusprehan.com/2013/12/konfigurasi-pin-lcd-16x2.html, diakses tanggal 28
februari 2015
[18]
----------, 2008, Data Sheet DS1307, Maxim.
[19]
http://elektronika-dasar.web.id/teori-elektronika/pengertian-dan-jenis-jenis-modulasidigital/, diakses 5 maret 2015
[20]
http://muapmuap.blogspot.com/2013/12/makalah-push-button.html, diakses25 maret
2015
[21]
https://www.led-tech.de/en/3mm-LEDs_DB-3.pdf, diakses 25 Mei 2015.
103
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
LAMPIRAN
104
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
Lampiran A
Data pada dummy sensor dari Penelitian yang Sudah Ada
No
Suhu
pH
Kekeruhan
Kandungan
Konduktivitas
Oksigen
1
15.0
4.0
25
3.0
200
2
16.5
4.5
50
3.5
550
3
18.0
5.0
75
4.0
900
4
19.5
5.5
100
4.5
1250
5
21.0
6.0
125
5.0
1600
6
22.5
6.5
150
5.5
1950
7
24.0
7.0
175
6.0
2300
8
25.5
7.5
200
6.5
2650
9
27.0
8.0
225
7.0
3000
10
28.5
8.5
250
7.5
3350
11
30.0
9.0
275
8.0
3700
12
31.5
9.5
300
8.5
4050
13
33.0
10.0
325
9.0
4400
14
34.5
10.5
350
9.5
4750
15
36.0
375
5100
16
37.5
400
5450
17
39.0
425
5800
18
450
19
475
L1
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
Lampiran B
Rangkaian Keseluruhan Perancangan
L2
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
Rangkaian Dummy Sensor
L3
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
L4
LAMPIRAN C
Listing Program Utama Mikrokontroler128
34. #define NIRQ 4 // (PORTD)
1.
2.
3.
4.
5.
6.
/**********************************
*******************
This program was produced by the
CodeWizardAVR V2.05.3 Standard
Automatic Program Generator
© Copyright 1998-2011 Pavel Haiduc, HP
InfoTech s.r.l.
http://www.hpinfotech.com
7.
Project : Sistem Telemetri Kualitas Air
Kolam Ikan Dengan RX01-433D dan
TX02-433D sebagai terminal unit
8. Version :
9. Date : 5/11/2015
10. Author : John Fisher Jefferson
11. Company : Universitas Sanata Dharma
12. Comments:
13. Chip type
: ATmega128
14. Program type
: Application
15. AVR Core Clock frequency: 8.000000
MHz
16. Memory model
: Small
17. External RAM size
:0
18. Data Stack size
: 1024
19. **********************************
*******************/
20. #include <mega128.h>
21. // I2C Bus functions
22. #include <i2c.h>
23. // DS1307 Real Time Clock functions
24. #include <ds1307.h>
25.
26.
27.
28.
29.
// Alphanumeric LCD functions
#include <alcd.h>
#include <stdio.h>
#include <delay.h>
#include <stdlib.h>
30. #define SCK 2 // SPI clock
31. #define SDO 0 // SPI Data output
(RFM12B side) //MOSI
32. #define SDI 1 // SPI Data input
(RFM12B side) //MISO
33. #define CS 3 // SPI SS (chip select)
35. #define HI(x) PORTA |= (1<<(x))
36. #define LO(x) PORTA &= ~(1<<(x))
37. #define WAIT_NIRQ_LOW()
while(PINA&(1<<NIRQ))
38.
39.
40.
41.
42.
43.
44.
#define level_rendah PINF.0
#define level_normal PINF.1
#define level_tinggi PINF.2
#define kirim_data PIND.0
unsigned char total,ttotal;
unsigned int z,x;
bit airmasuk,airkeluar, pompa, aerator,
keputusan,
logika,kond_kendali,kond_oksigen,k_kend
ali,k_oksigen;
45.
46.
47.
48.
// Declare your global variables here
unsigned char a, b, xx, yy, e, f, g, aa;
unsigned char h, m, s, w, d, mo, y, mm;
unsigned char temp[60], tampildata[32],
waktu[16],tanggal[16], data_rf[70];
unsigned char suhu[5], keasaman[5],
kekeruhan[5], konduktivitas[5],
oksigen[5], buff[20];
int ssuhu, skeasaman, skekeruhan,
skonduktivitas, soksigen;
unsigned char tsuhu[5], tkeasaman[5],
tkekeruhan[5], tkonduktivitas[5],
toksigen[5];
unsigned char RF_RXBUF[20], DATA[5];
49.
50.
51.
52.
53. unsigned char i,jam[2];
54.
55.
56.
57.
/*
h=hour, m=minute, s=second
d=day, mo=month, y=year
*/
58. int c, j;
59. eeprom unsigned char jadwal;
60. eeprom unsigned char pintumasuk,
pintukeluar, pompaair, pompaaerator;
61. eeprom unsigned char suhu_atas,
suhu_bawah, asam_atas, asam_bawah,
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
batas_keruh,batas_konduktivitas,
batas_oksigen;
62. int count;
63. // Timer1 overflow interrupt service
routine
64. interrupt [TIM1_OVF] void
timer1_ovf_isr(void)
65. {
66. // Reinitialize Timer1 value
67. TCNT1H=0xE17B >> 8;
68. TCNT1L=0xE17B & 0xff;
69. // Place your code here
70. count++;
71. }
72. //=============================
==============================
======
73. /****************Setting Kirim
434Mhz*************/
74. #define DDR_IN 0
75. #define DDR_OUT 1
76. #define PORT_SEL PORTB
77. #define PIN_SEL PINB
78. #define DDR_SEL DDRB
79. #define PORT_SDI PORTB
80. #define PIN_SDI PINB
81. #define DDR_SDI DDRB
82. #define PORT_SCK PORTB
83. #define PIN_SCK PINB
84. #define DDR_SCK DDRB
85. #define PORT_SDO PORTB
86. #define PIN_SDO PINB
87. #define DDR_SDO DDRB
88.
89.
90.
91.
92.
#define RFXX_SCK 6// |
#define RFXX_SDO 7// |RF_PORT
#define RFXX_SDI 4// |
#define RFXX_SEL 5// |
#define RFXX_DATA 3// |
93. #define SEL_OUTPUT() DDR_SEL |=
(1<<RFXX_SEL)
94. #define HI_SEL() PORT_SEL|=
(1<<RFXX_SEL)
95. #define LOW_SEL()
PORT_SEL&=~(1<<RFXX_SEL)
L5
96. #define SDI_OUTPUT() DDR_SDI |=
(1<<RFXX_SDI)
97. #define HI_SDI() PORT_SDI|=
(1<<RFXX_SDI)
98. #define LOW_SDI()
PORT_SDI&=~(1<<RFXX_SDI)
99. #define SDO_INPUT() DDR_SDO&=
~(1<<RFXX_SDO)
100. #define SDO_HI()
PIN_SDO&(1<<RFXX_SDO)
101. #define SCK_OUTPUT() DDR_SCK |=
(1<<RFXX_SCK)
102. #define HI_SCK() PORT_SCK|=
(1<<RFXX_SCK)
103. #define LOW_SCK()
PORT_SCK&=~(1<<RFXX_SCK)
104. void RFXX_PORT_INIT(void)
105. {
106. HI_SEL();
107. HI_SDI();
108. LOW_SCK();
109. SEL_OUTPUT();
110. SDI_OUTPUT();
111. SDO_INPUT();
112. SCK_OUTPUT();
113. }
114. unsigned int RFXX_WRT_CMD(unsigned
int aCmd)
115. {
116. unsigned char i;
117. unsigned int temp=0;
118. LOW_SCK();
119. LOW_SEL();
120. for(i=0;i<16;i++)
121. {
122. temp<<=1;
123. if(SDO_HI())
124. {
125. temp|=0x0001;
126. }
127. LOW_SCK();
128. if(aCmd&0x8000)
129. {
130. HI_SDI();
131. }
132. else
133. {
134. LOW_SDI();
135. }
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
136. HI_SCK();
137. aCmd<<=1;
138. };
139. LOW_SCK();
140. HI_SEL();
141. return(temp);
142. }
178. #define PORT_SDI1 PORTE
179. #define PIN_SDI1 PINE
180. #define DDR_SDI1 DDRE
143. void RF02B_SEND(unsigned char aByte)
144. {
145. unsigned char i;
146. for(i=0;i<8;i++)
147. {
148. while(PINB&(1<<RFXX_SDO));//Polling
nIRQ
149. while(!(PINB&(1<<RFXX_SDO)));
150. if(aByte&0x80)
151. {
152. PORTB|=(1<<RFXX_DATA);
153. }
154. else
155. {
156. PORTB&=~(1<<RFXX_DATA);
157. }
158. aByte<<=1;
159. }
160. }
184. #define PORT_SDO1 PORTE
185. #define PIN_SDO1 PINE
186. #define DDR_SDO1 DDRE
161. void askirim_data()
162. {
163. RFXX_PORT_INIT();
164. RFXX_WRT_CMD(0xCC00);
165. RFXX_WRT_CMD(0x8B61);//433BAND
,+/-90kHz
166. RFXX_WRT_CMD(0xA640);//434MHz
167. RFXX_WRT_CMD(0xD040);//RATE/2
168. RFXX_WRT_CMD(0xC823);//4.8kbps
169. RFXX_WRT_CMD(0xC220);//ENABLE
BIT SYNC
170. RFXX_WRT_CMD(0xC001);//CLOSE
ALL
171. }
172. /****************Setting Terima
435Mhz*************/
173. #define DDR_IN1 0
174. #define DDR_OUT1 1
175. #define PORT_SEL1 PORTE
176. #define PIN_SEL1 PINE
177. #define DDR_SEL1 DDRE
L6
181. #define PORT_SCK1 PORTE
182. #define PIN_SCK1 PINE
183. #define DDR_SCK1 DDRE
187. #define RFXX1_SCK 7// |
188. #define RFXX1_SDO 6// |RF_PORT
189. #define RFXX1_SDI 5// |
190. #define RFXX1_SEL 4// |
191. //#define RFXX1_DATA 1// |
192. #define SEL1_OUTPUT() DDR_SEL1 |=
(1<<RFXX1_SEL)
193. #define HI_SEL1() PORT_SEL1|=
(1<<RFXX1_SEL)
194. #define LOW_SEL1()
PORT_SEL1&=~(1<<RFXX1_SEL)
195. #define SDI1_OUTPUT() DDR_SDI1 |=
(1<<RFXX1_SDI)
196. #define HI_SDI1() PORT_SDI1|=
(1<<RFXX1_SDI)
197. #define LOW_SDI1()
PORT_SDI1&=~(1<<RFXX1_SDI)
198. #define SDO1_INPUT() DDR_SDO1&=
~(1<<RFXX1_SDO)
199. #define SDO1_HI()
PIN_SDO1&(1<<RFXX1_SDO)
200. #define SCK1_OUTPUT() DDR_SCK1 |=
(1<<RFXX1_SCK)
201. #define HI_SCK1()
PORT_SCK1|= (1<<RFXX1_SCK)
202. #define LOW_SCK1()
PORT_SCK1&=~(1<<RFXX1_SCK)
203. void RFXX1_PORT_INIT(void)
204. {
205. HI_SEL1();
206. HI_SDI1();
207. LOW_SCK1();
208. SEL1_OUTPUT();
209. SDI1_OUTPUT();
210. SDO1_INPUT();
211. SCK1_OUTPUT();
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
212. }
213. unsigned int
RFXX1_WRT_CMD(unsigned int aCmd1)
214. {
215. unsigned char i1;
216. unsigned int temp1=0;
217. LOW_SCK1();
218. LOW_SEL1();
219. for(i1=0;i1<16;i1++)
220. {
221. temp1<<=1;
222. if(SDO1_HI())
223. {
224. temp1|=0x0001;
225. }
226. LOW_SCK1();
227. if(aCmd1&0x8000)
228. {
229. HI_SDI1();
230. }
231. else
232. {
233. LOW_SDI1();
234. }
235. HI_SCK1();
236. aCmd1<<=1;
237. };
238. LOW_SCK1();
239. HI_SEL1();
240. return(temp1);
241. }
242. unsigned char RF01_RDFIFO(void)
243. {
244. unsigned char i1,Result1;
245. LOW_SCK1();
246. LOW_SDI1();
247. LOW_SEL1();
248. for(i1=0;i1<16;i1++)
249. {//skip status bits
250. HI_SCK1();
251. HI_SCK1();
252. LOW_SCK1();
253. LOW_SCK1();
254. }
255. Result1=0;
256. for(i1=0;i1<8;i1++)
257. {//read fifo data byte
258. Result1<<=1;
259. if(SDO1_HI())
260. {
261. Result1|=1;
L7
262. }
263. HI_SCK1();
264. HI_SCK1();
265. LOW_SCK1();
266. LOW_SCK1();
267. };
268. HI_SEL1();
269. return(Result1);
270. }
271. void terima_data()
272. {
273. RFXX1_PORT_INIT();
274. RFXX1_WRT_CMD(0x0000);
275. RFXX1_WRT_CMD(0x898A);//433BAN
D,134kHz
276. RFXX1_WRT_CMD(0xA7D0);//435MHz
277. RFXX1_WRT_CMD(0xC847);//4.8kbps
278. RFXX1_WRT_CMD(0xC69B);//AFC
setting
279. RFXX1_WRT_CMD(0xC42A);//Clock
recovery manual control,Digital
filter,DQD=4
280. RFXX1_WRT_CMD(0xC240);//output
1.66MHz
281. RFXX1_WRT_CMD(0xC080);
282. RFXX1_WRT_CMD(0xCE88);//use FIFO
283. RFXX1_WRT_CMD(0xCE8B);
284. RFXX1_WRT_CMD(0xC081);//OPEN
RX
285. }
286. //=============================
==============================
==========
287. void cekkendali()
288. {
289. if
((pintumasuk==1)&&(pintukeluar==1)&&
(pompaair==1))
290. {
291. PORTF=0x70;
292. }
293. else if
((pintumasuk==1)&&(pintukeluar==1)&&
(pompaair==0))
294. {
295. PORTF=0x60;
296. }
297. else if
((pintumasuk==1)&&(pintukeluar==0)&&
(pompaair==1))
298. {
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
299. PORTF=0x50;
300. }
301. else if
((pintumasuk==1)&&(pintukeluar==0)&&
(pompaair==0))
302. {
303. PORTF=0x40;
304. }
305. else if
((pintumasuk==0)&&(pintukeluar==1)&&
(pompaair==1))
306. {
307. PORTF=0x30;
308. }
309. else if
((pintumasuk==0)&&(pintukeluar==1)&&
(pompaair==0))
310. {
311. PORTF=0x20;
312. }
313. else if
((pintumasuk==0)&&(pintukeluar==0)&&
(pompaair==1))
314. {
315. PORTF=0x10;
316. }
317. else
318. {
319. PORTF=0x00;
320. }
321. }
322. void kendali()
323. {
324. if((ssuhu>suhu_atas)||(ssuhu<suhu_bawah)
||(skeasaman>asam_atas)||(skeasaman<asa
m_bawah)||(skekeruhan>batas_keruh*10)||
(skonduktivitas>batas_konduktivitas*100))
325. {
326. pintumasuk=0;
327. pintukeluar=1;
328. pompaair=1;
329. kond_kendali=0;
330. }
331. else
332. {
333. pintumasuk=1;
334. pintukeluar=0;
335. pompaair=0;
336. kond_kendali=1;
337. }
338. if(soksigen<=batas_oksigen)
339. { pompaaerator=1; kond_oksigen=1; }
340. if(soksigen>batas_oksigen)
341. { pompaaerator=0; kond_oksigen=0; }
342. }
343. // PENGATURAN JAM
344. void ubahjam()
345. {
346. delay_ms(200);
347. z=0;
348. lcd_clear();
349. while (z==0)
350. {
351. if (PINF.0==1) { z++; delay_ms(200);}
352. if (PINF.1==1) { lcd_clear(); h++;
delay_ms(200);}
353. if (PINF.2==1) { lcd_clear(); h--;
delay_ms(200);}
354. if (PINF.3==1) { z=5; delay_ms(200);}
355. if (h>24) {h=0; lcd_clear();}
356. lcd_gotoxy(0,0);
357. sprintf(temp,"Jam : %d",h);
358. lcd_puts(temp);
359. }
360. lcd_clear();
361. while (z==1)
362. {
363. if (PINF.0==1) { z++; delay_ms(200);}
364. if (PINF.1==1) { lcd_clear(); m++;
delay_ms(200);}
365. if (PINF.2==1) { lcd_clear(); m--;
delay_ms(200);}
366. if (PINF.3==1) { z=5; delay_ms(200);}
367. if (m>60) {m=0; lcd_clear();}
368. lcd_gotoxy(0,0);
369. sprintf(temp,"Menit : %d",m);
370. lcd_puts(temp);
371. }
372. while (z==2)
373. {
374. if (PINF.0==1) { z++; delay_ms(200);}
375. if (PINF.1==1) { lcd_clear(); d++;
delay_ms(200);}
376. if (PINF.2==1) { lcd_clear(); d--;
delay_ms(200);}
377. if (PINF.3==1) { z=5; delay_ms(200);}
378. if (d>31) {d=0; lcd_clear();}
379. lcd_gotoxy(0,0);
380. sprintf(temp,"Tanggal : %d",d);
381. lcd_puts(temp);
382. }
383. lcd_clear();
L8
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
384. while (z==3)
385. {
386. if (PINF.0==1) { z++; delay_ms(200);}
387. if (PINF.1==1) { lcd_clear(); mo++;
delay_ms(200);}
388. if (PINF.2==1) { lcd_clear(); mo--;
delay_ms(200);}
389. if (PINF.3==1) { z=5; delay_ms(200);}
390. if (mo>12) {mo=0; lcd_clear();}
391. lcd_gotoxy(0,0);
392. sprintf(temp,"Bulan : %d",mo);
393. lcd_puts(temp);
394. }
395. while (z==4)
396. {
397. if (PINF.0==1) { z++; delay_ms(200);}
398. if (PINF.1==1) { lcd_clear(); y++;
delay_ms(200);}
399. if (PINF.2==1) { lcd_clear(); y--;
delay_ms(200);}
400. if (PINF.3==1) { y=15;
lcd_clear();delay_ms(200);}
401. lcd_gotoxy(0,0);
402. sprintf(temp,"Tahun : %d",y);
403. lcd_puts(temp);
404. }
405. rtc_set_time(h,m,d);
406. rtc_set_date(w,d,mo,y);
407. lcd_clear();
408. lcd_gotoxy(1,0);
409. lcd_putsf("Jam Berhasil");
410. lcd_gotoxy(5,1);
411. lcd_putsf("Dirubah");
412. delay_ms(1000);
413. lcd_clear();
414. }
415. void tampiljam()
416. {
417. if (m!=mm) {lcd_clear(); total++;}
418. lcd_gotoxy(0,1);
419. sprintf(waktu,"%d:%d:%d",h,m,s);
420. lcd_puts(waktu);
421. lcd_gotoxy(0,0);
422. sprintf(tanggal,"%d-%d-%d",d,mo,y);
423. lcd_puts(tanggal);
424. mm=m;
425. }
426. void jadwalkirim()
427. {
L9
428. delay_ms(400);
429. z=0;
430. lcd_clear();
431. while (z==0)
432. {
433. if (PINF.0==1) { z++; delay_ms(200);}
434. if (PINF.1==1) { lcd_clear(); e++;
delay_ms(200);}
435. if (PINF.2==1) { lcd_clear(); e--;
delay_ms(200);}
436. if (PINF.3==1) { lcd_clear(); e=30;
delay_ms(200);}
437. lcd_gotoxy(0,0);
438. lcd_putsf("Jadwal");
439. lcd_gotoxy(0,1);
440. sprintf(temp,"%d menit",e);
441. lcd_puts(temp);
442. }
443. jadwal=e;
444. total=0;
445. lcd_clear();
446. }
447. void ambildata()
448. {
449. UCSR0B=0x10; //matikan tx nyalakan rx
450. PORTE.2=0;
451. c=0;
452. i=0;
453. while ((i<=5)&&(c<=10000))
454. {
455. while ((!(UCSR0A &
(1<<RXC0)))&&(c<=10000))
456. {
457. c++;
458. }
459. while ((UCSR0A & (1<<RXC0)))
460. {
461. buff[i]=getchar(); c=0;
462. i++;
463. }
464. }
465. for (i=0; i<=3; i++)
466. {
467. switch(f)
468. {
469. case 1: suhu[i]= buff[i+1]; break;
470. case 2: keasaman[i]= buff[i+1]; break;
471. case 4: kekeruhan[i]= buff[i+1]; break;
472. case 3: oksigen[i]= buff[i+1]; break;
473. case 5: konduktivitas[i]=buff[i+1]; break;
474. }
475. }
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
476. delay_ms(10);
477. if ((c>10000)||(buff[5]!='#'))
478. {
479. if (f==1){ sprintf(tsuhu,"0000");ssuhu=0;}
480. if (f==2){
sprintf(tkeasaman,"0000");skeasaman=0;}
481. if(f==3){sprintf(tkekeruhan,"0000");skeker
uhan=0;}
482. if(f==4){sprintf(tkonduktivitas,"0000");sk
onduktivitas=0;}
483. if(f==5){sprintf(toksigen,"0000");soksigen
=0;}
484. }
485. UCSR0B=0x08; //matikan rx dan
nyalakan tx
486. PORTE.2=1;
487. };
488. void datasuhu()
489. {
490. aa=0;
491. while(aa<3)
492. {
493. f=1;
494. printf("a");
495. ambildata();
496. if (buff[5]=='#')
497. {
498. aa=4;
499. ssuhu=atof(suhu);
500. sprintf(tsuhu,"%s",suhu);
501. sprintf(buff,"0");
502. }
503. else {aa++; delay_ms(10);}
504. }
505. }
506. void datakeasaman()
507. {
508. aa=0;
509. while(aa<3)
510. {
511. f=2;
512. printf("b");
513. ambildata();
514. if (buff[5]=='#')
515. {
516. aa=4;
517. skeasaman=atof(keasaman);
518. sprintf(tkeasaman,"%s",keasaman);
519. sprintf(buff,"0");
520. }
521. else {aa++; delay_ms(10);}
522. }
523. }
L10
524. void dataoksigen()
525. {
526. aa=0;
527. while(aa<3)
528. {
529. f=3;
530. printf("c");
531. ambildata();
532. if (buff[5]=='#')
533. {
534. aa=4;
535. soksigen=atof(oksigen);
536. sprintf(toksigen,"%s",oksigen);
537. sprintf(buff,"0");
538. }
539. else {aa++; delay_ms(10);}
540. }
541. }
542. void datakekeruhan()
543. {
544. aa=0;
545. while(aa<3)
546. {
547. f=4;
548. printf("d");
549. ambildata();
550. if (buff[5]=='#')
551. {
552. aa=4;
553. skekeruhan=atof(kekeruhan);
554. sprintf(tkekeruhan,"%s",kekeruhan);
555. sprintf(buff,"0");
556. }
557. else {aa++; delay_ms(10);}
558. }
559. }
560. void datakonduktivitas()
561. {
562. aa=0;
563. while(aa<3)
564. {
565. f=5;
566. printf("e");
567. ambildata();
568. if (buff[5]=='#')
569. {
570. aa=4;
571. skonduktivitas=atof(konduktivitas);
572. sprintf(tkonduktivitas,"%s",konduktivitas);
573. sprintf(buff,"0");
574. }
575. else {aa++; delay_ms(10);}
576. }
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
577. }
578. void paketdata()
579. {
580. datasuhu(); delay_ms(100);
581. datakeasaman(); delay_ms(100);
582. datakekeruhan(); delay_ms(100);
583. datakonduktivitas(); delay_ms(100);
584. dataoksigen(); delay_ms(100);
585. }
586. void atursistemkendali()
587. {
588. delay_ms(400);
589. z=0; g=0;
590. while(z==0)
591. {
592. cekkendali();
593. delay_ms(400);
594. lcd_clear();
595. while(g==0)
596. {
597. if(airmasuk==1)
598. {
599. lcd_gotoxy(0,0);
600. lcd_putsf("Pintu Masuk Air Terbuka,
Tutup?");
601. }
602. else
603. {
604. lcd_gotoxy(0,0);
605. lcd_putsf("Pintu Masuk Air Tertutup,
Buka?");
606. }
607. if(PINF.0==1)
608. {
609. delay_ms(400);
610. airmasuk=logika^airmasuk;
611. pintumasuk=airmasuk;
612. lcd_clear();
613. }
614. cekkendali();
615. if(PINF.1==1) {g++;}
616. if(PINF.3==1) {z++;g=4;}
617. }
618. lcd_clear();
619. delay_ms(400);
620. airkeluar=pintukeluar;
621. while(g==1)
622. {
623. if(airkeluar==1)
624. {
625. lcd_gotoxy(0,0);
626. lcd_putsf("Pintu Keluar AirTerbuka,
Tutup?");
627. }
628. else
629. {
630. lcd_gotoxy(0,0);
631. lcd_putsf("Pintu Keluar AirTertutup,
Buka?");
632. }
633. if(PINF.0==1)
634. {
635. delay_ms(400);
636. airkeluar=logika^airkeluar;
637. lcd_clear();
638. pintukeluar=airkeluar;
639. }
640. cekkendali();
641. if(PINF.1==1) {g++;}
642. if(PINF.3==1) {z++;g=4;}
643. }
644. lcd_clear();
645. delay_ms(400);
646. pompa=pompaair;
647. while(g==2)
648. {
649. if(pompa==1)
650. {
651. lcd_gotoxy(0,0);
652. lcd_putsf("Pompa Air ON,");
653. lcd_gotoxy(0,1);
654. lcd_putsf("OFF?");
655. }
656. else
657. {
658. lcd_gotoxy(0,0);
659. lcd_putsf("Pompa Air OFF,");
660. lcd_gotoxy(0,1);
661. lcd_putsf("ON?");
662. }
663. if(PINF.0==1)
664. {
665. delay_ms(400);
666. pompa=logika^pompa;
667. lcd_clear();
668. pompaair=pompa;
669. }
670. cekkendali();
671. if(PINF.1==1) {g++;}
672. if(PINF.3==1) {z++;g=4;}
673. }
674. lcd_clear();
675. delay_ms(400);
676. aerator=pompaaerator;
677. while(g==3)
678. {
L11
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
679. if(aerator==1)
680. {
681. lcd_gotoxy(0,0);
682. lcd_putsf("Pompa Aerator ON, OFF?");
683. }
684. else
685. {
686. lcd_gotoxy(0,0);
687. lcd_putsf("Pompa Aerator OFF, ON?");
688. }
689. if(PINF.0==1)
690. {
691. delay_ms(400);
692. aerator=logika^aerator;
693. lcd_clear();
694. pompaaerator=aerator;
695. }
696. cekkendali();
697. if(PINF.1==1) {g=0;}
698. if(PINF.3==1) {z++;g=4;}
699. }
700. }
701. }
702. void reset_batas_kendali()
703. {
704. lcd_clear(); delay_ms(200);
705. suhu_atas=28;
706. suhu_bawah=18;
707. asam_atas=8;
708. asam_bawah=5;
709. batas_keruh=38;
710. batas_konduktivitas=48;
711. batas_oksigen=5;
712. lcd_gotoxy(0,0);
713. lcd_putsf("Berhasil Reset");
714. }
715. void menu()
716. {
717. a=0; b=0;
718. while (b==0)
719. {
720. lcd_clear();
721. //delay_ms(200);
722. while (a==0)
723. {
724. lcd_gotoxy(0,0);
725. lcd_putsf("Atur Jam?");
726. delay_ms(200);
727. if (PINF.0==1) { ubahjam(); }
728. if (PINF.1==1) { a++; delay_ms(200);}
729. if (PINF.2==1) { a=9; delay_ms(200);}
730. if (PINF.3==1) { a=30; b=1;
delay_ms(200);}
L12
731. }
732. lcd_clear();
733. //delay_ms(200);
734. while (a==1)
735. {
736. lcd_gotoxy(0,0);
737. lcd_putsf("Edit Jadwal?");
738. e=jadwal;
739. lcd_gotoxy(0,1);
740. sprintf(temp,"%d menit",e);
741. lcd_puts(temp);
742. if (PINF.0==1) { jadwalkirim();}
743. if (PINF.1==1) { a++; delay_ms(200);}
744. if (PINF.2==1) { a--; delay_ms(200);}
745. if (PINF.3==1) { a=30; b=1;
delay_ms(200);}
746. }
747. lcd_clear();
748. //delay_ms(200);
749. lcd_gotoxy(0,0);
750. lcd_putsf("Ambil Data Suhu?");
751. while (a==2)
752. {
753. if (PINF.0==1)
754. {
755. lcd_clear(); delay_ms(200);
756. datasuhu();
757. lcd_gotoxy(0,0);
758. sprintf(tampildata,"Suhu = %s",tsuhu);
759. lcd_puts(tampildata);
760. lcd_gotoxy(11,1);
761. lcd_putsf("Lagi?");
762. }
763. if (PINF.1==1) { a++; delay_ms(200);}
764. if (PINF.2==1) { a--; delay_ms(200);}
765. if (PINF.3==1) { a=30; b=1;
delay_ms(200);}
766. }
767. lcd_clear();
768. //delay_ms(200);
769. lcd_gotoxy(0,0);
770. lcd_putsf("Ambil Data");
771. lcd_gotoxy(0,1);
772. lcd_putsf("Keasaman?");
773. while (a==3)
774. {
775. if (PINF.0==1)
776. {
777. lcd_clear(); delay_ms(200);
778. datakeasaman();
779. lcd_gotoxy(0,0);
780. sprintf(tampildata,"Keasaman =
%s",tkeasaman);
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
781. lcd_puts(tampildata);
782. lcd_gotoxy(11,1);
783. lcd_putsf("Lagi?");
784. }
785. if (PINF.1==1) { a++; delay_ms(200);}
786. if (PINF.2==1) { a--; delay_ms(200);}
787. if (PINF.3==1) { a=30; b=1;
delay_ms(200);}
788. }
789. lcd_clear();
790. //delay_ms(200);
791. lcd_gotoxy(0,0);
792. lcd_putsf("Ambil Data");
793. lcd_gotoxy(0,1);
794. lcd_putsf("Oksigen?");
795. while (a==4)
796. {
797. if (PINF.0==1)
798. {
799. lcd_clear(); delay_ms(200);
800. dataoksigen();
801. lcd_gotoxy(0,0);
802. sprintf(tampildata,"Oksigen =
%s",toksigen);
803. lcd_puts(tampildata);
804. lcd_gotoxy(11,1);
805. lcd_putsf("Lagi?");
806. }
807. if (PINF.1==1) { a++; delay_ms(200);}
808. if (PINF.2==1) { a--; delay_ms(200);}
809. if (PINF.3==1) { a=30; b=1;
delay_ms(200);}
810. }
811. lcd_clear();
812. //delay_ms(200);
813. lcd_gotoxy(0,0);
814. lcd_putsf("Ambil Data");
815. lcd_gotoxy(0,1);
816. lcd_putsf("Kekeruhan?");
817. while (a==5)
818. {
819. if (PINF.0==1)
820. {
821. lcd_clear(); delay_ms(200);
822. datakekeruhan();
823. lcd_gotoxy(0,0);
824. sprintf(tampildata,"Kekeruhan =
%s",tkekeruhan);
825. lcd_puts(tampildata);
826. lcd_gotoxy(11,1);
827. lcd_putsf("Lagi?");
828. }
829. if (PINF.1==1) { a++; delay_ms(200);}
L13
830. if (PINF.2==1) { a--; delay_ms(200);}
831. if (PINF.3==1) { a=30; b=1;
delay_ms(200);}
832. }
833. lcd_clear();
834. //delay_ms(200);
835. lcd_gotoxy(0,0);
836. lcd_putsf("Ambil Data");
837. lcd_gotoxy(0,1);
838. lcd_putsf("Konduktivitas?");
839. while (a==6)
840. {
841. if (PINF.0==1)
842. {
843. lcd_clear(); delay_ms(200);
844. datakonduktivitas();
845. lcd_gotoxy(0,0);
846. sprintf(tampildata,"konduktivitas =
%s",tkonduktivitas);
847. lcd_puts(tampildata);
848. lcd_gotoxy(11,1);
849. lcd_putsf("Lagi?");
850. }
851. if (PINF.1==1) { a++; delay_ms(200);}
852. if (PINF.2==1) { a--; delay_ms(200);}
853. if (PINF.3==1) { a=30; b=1;
delay_ms(200);}
854. }
855. lcd_clear();
856. //delay_ms(200);
857. lcd_gotoxy(0,0);
858. lcd_putsf("Ambil Paket");
859. lcd_gotoxy(0,1);
860. lcd_putsf("Data?");
861. while (a==7)
862. {
863. if (PINF.0==1)
864. {
865. lcd_clear(); delay_ms(200);
866. paketdata();
867. lcd_gotoxy(0,0);
868. sprintf(tampildata,"S%s P%s D%s H%s
O%s",tsuhu,tkeasaman,toksigen,tkekeruha
n,tkonduktivitas);
869. lcd_puts(tampildata);
870. lcd_gotoxy(11,1);
871. lcd_putsf("Lagi?");
872. }
873. if (PINF.1==1) { a++; delay_ms(200);}
874. if (PINF.2==1) { a--; delay_ms(200);}
875. if (PINF.3==1) { a=30; b=1;
delay_ms(200);}
876. }
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
877. lcd_clear();
878. //delay_ms(200);
879. lcd_gotoxy(0,0);
880. lcd_putsf("Reset Batasan ");
881. lcd_gotoxy(0,1);
882. lcd_putsf("Kendali?");
883. while (a==8)
884. {
885. if (PINF.0==1)
886. {
887. reset_batas_kendali();
888. }
889. if (PINF.1==1) { a++; delay_ms(200);}
890. if (PINF.2==1) { a--; delay_ms(200);}
891. if (PINF.3==1) { a=30; b=1;
delay_ms(200);}
892. }
893. lcd_clear();
894. //delay_ms(200);
895. while (a==9)
896. {
897. lcd_gotoxy(0,0);
898. lcd_putsf("METODE KENDALI?");
899. if(keputusan==1)
900. {
901. lcd_gotoxy(0,1);
902. lcd_putsf("OTOMATIS");
903. }
904. else
905. {
906. lcd_gotoxy(0,1);
907. lcd_putsf("MANUAL");
908. }
909. if (PINF.0==1) {
keputusan=keputusan^logika; lcd_clear();
delay_ms(200);}
910. if (PINF.1==1) { a=0; delay_ms(200);}
911. if (PINF.2==1) { a--; delay_ms(200);}
912. if (PINF.3==1) { a=30; b=1;
delay_ms(200);}
913. }
914. }
915. lcd_clear();
916. }
917. void tampilstatus()
918. {
919. lcd_gotoxy(9,0);
920. lcd_putsf("K L M N");
921. lcd_gotoxy(9,1);
922. sprintf(temp,"%d %d %d %d",pintumasuk,
pintukeluar, pompaair, pompaaerator);
923. lcd_puts(temp);
924. }
L14
925. // External Interrupt 0 service routine
926. interrupt [EXT_INT0] void
ext_int0_isr(void)
927. {
928. lcd_clear();
929. menu();
930. lcd_clear();
931. }
932. void kirim()
933. {
934. yy=0;
935. for (a=0;a<2;a++)
936. {
937. xx=45;
938. for (i=0;i<xx;i++)
939. {
940. RFXX_WRT_CMD(0xC039);//START
TX
941. RF02B_SEND(0xAA);//PREAMBLE
942. RF02B_SEND(0xAA);//PREAMBLE
943. RF02B_SEND(0xAA);//PREAMBLE
944. RF02B_SEND(0x2D);//HEAD HI BYTE
945. RF02B_SEND(0xD4);//HEAD LOW
BYTE
946. RF02B_SEND(data_rf[i]);//Kirim Data 0
947. RF02B_SEND(0xAA);//DUMMY BYTE
948. RF02B_SEND(0xAA);//DUMMY BYTE
949. RF02B_SEND(0xAA);//DUMMY BYTE
950. RFXX_WRT_CMD(0xC001);//CLOSE
TX
951. delay_ms(10);
952. if (data_rf[i]=='$')
953. {
954. xx=i+1;
955. yy=yy+1;
956. }
957. }
958. delay_ms(3000);
959. data_rf[0]='2';
960. if(yy==1)
961. {
962. lcd_clear();
963. lcd_gotoxy(0,0);
964. lcd_putsf(" Kirim Paket 1");
965. delay_ms(700);
966. lcd_clear();
967. }
968. };
969. if(yy==2)
970. {
971. lcd_clear();
972. lcd_gotoxy(0,0);
973. lcd_putsf(" Kirim Paket 2");
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
974. delay_ms(700);
975. lcd_clear();
976. }
977. }
978. // Declare your global variables here
979. void main(void)
980. {
981. // Declare your local variables here
982. // Input/Output Ports initialization
983. // Port A initialization
984. // Func7=In Func6=In Func5=In Func4=In
Func3=In Func2=In Func1=In Func0=In
985. // State7=T State6=T State5=T State4=T
State3=T State2=T State1=T State0=T
986. PORTA=0x00;
987. DDRA=0x00;
988. // Port B initialization
989. // Func7=In Func6=In Func5=In Func4=In
Func3=In Func2=In Func1=In Func0=In
990. // State7=T State6=T State5=T State4=T
State3=T State2=T State1=T State0=T
991. PORTB=0x00;
992. DDRB=0x00;
993. // Port C initialization
994. // Func7=In Func6=In Func5=In Func4=In
Func3=In Func2=In Func1=In Func0=In
995. // State7=T State6=T State5=T State4=T
State3=T State2=T State1=T State0=T
996. PORTC=0x00;
997. DDRC=0x00;
998. // Port D initialization
999. // Func7=In Func6=In Func5=In Func4=In
Func3=In Func2=In Func1=In Func0=In
1000.
// State7=T State6=T State5=T
State4=T State3=T State2=T State1=T
State0=T
1001.
PORTD=0x00;
1002.
DDRD=0x00;
1003.
// Port E initialization
1004.
// Func7=In Func6=In Func5=In
Func4=In Func3=In Func2=In Func1=In
Func0=In
1005.
// State7=T State6=T State5=T
State4=T State3=T State2=T State1=T
State0=T
1006.
PORTE=0x00;
1007.
DDRE=0xFF;
1008.
// Port F initialization
L15
1009.
// Func7=In Func6=In Func5=In
Func4=In Func3=In Func2=In Func1=In
Func0=In
1010.
// State7=T State6=T State5=T
State4=T State3=T State2=T State1=T
State0=T
1011.
PORTF=0x00;
1012.
DDRF=0xF0;
1013.
// Port G initialization
1014.
// Func4=In Func3=In Func2=In
Func1=In Func0=In
1015.
// State4=T State3=T State2=T
State1=T State0=T
1016.
PORTG=0x00;
1017.
DDRG=0x00;
1018.
1019.
1020.
1021.
1022.
1023.
1024.
1025.
1026.
1027.
1028.
1029.
1030.
1031.
1032.
1033.
1034.
1035.
1036.
1037.
1038.
1039.
Off
1040.
Off
1041.
Off
1042.
1043.
1044.
1045.
1046.
1047.
1048.
1049.
1050.
// Timer/Counter 0 initialization
// Clock source: System Clock
// Clock value: Timer 0 Stopped
// Mode: Normal top=0xFF
// OC0 output: Disconnected
ASSR=0x00;
TCCR0=0x00;
TCNT0=0x00;
OCR0=0x00;
/*
// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: 7.813 kHz
// Mode: Normal top=0xFFFF
// OC1A output: Discon.
// OC1B output: Discon.
// OC1C output: Discon.
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer1 Overflow Interrupt: On
// Input Capture Interrupt: Off
// Compare A Match Interrupt:
// Compare B Match Interrupt:
// Compare C Match Interrupt:
TCCR1A=0x00;
TCCR1B=0x05;
TCNT1H=0xE1;
TCNT1L=0x7B;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
1051.
OCR1BL=0x00;
1052.
OCR1CH=0x00;
1053.
OCR1CL=0x00;
1054.
*/
1055.
// Timer/Counter 2 initialization
1056.
// Clock source: System Clock
1057.
// Clock value: Timer2 Stopped
1058.
// Mode: Normal top=0xFF
1059.
// OC2 output: Disconnected
1060.
TCCR2=0x00;
1061.
TCNT2=0x00;
1062.
OCR2=0x00;
1063.
// Timer/Counter 3 initialization
1064.
// Clock source: System Clock
1065.
// Clock value: Timer3 Stopped
1066.
// Mode: Normal top=0xFFFF
1067.
// OC3A output: Discon.
1068.
// OC3B output: Discon.
1069.
// OC3C output: Discon.
1070.
// Noise Canceler: Off
1071.
// Input Capture on Falling Edge
1072.
// Timer3 Overflow Interrupt: Off
1073.
// Input Capture Interrupt: Off
1074.
// Compare A Match Interrupt:
Off
1075.
// Compare B Match Interrupt:
Off
1076.
// Compare C Match Interrupt:
Off
1077.
TCCR3A=0x00;
1078.
TCCR3B=0x00;
1079.
TCNT3H=0x00;
1080.
TCNT3L=0x00;
1081.
ICR3H=0x00;
1082.
ICR3L=0x00;
1083.
OCR3AH=0x00;
1084.
OCR3AL=0x00;
1085.
OCR3BH=0x00;
1086.
OCR3BL=0x00;
1087.
OCR3CH=0x00;
1088.
OCR3CL=0x00;
1089.
// External Interrupt(s)
initialization
1090.
// INT0: On
1091.
// INT0 Mode: Falling Edge
1092.
// INT1: Off
1093.
// INT2: Off
1094.
// INT3: Off
1095.
// INT4: Off
1096.
// INT5: Off
1097.
// INT6: Off
1098.
// INT7: Off
1099.
EICRA=0x02;
L16
1100.
EICRB=0x00;
1101.
EIMSK=0x01;
1102.
EIFR=0x01;
1103.
// Timer(s)/Counter(s) Interrupt(s)
initialization
1104.
TIMSK=0x00;
1105.
ETIMSK=0x00;
1106.
// USART0 initialization
1107.
// Communication Parameters: 8
Data, 1 Stop, No Parity
1108.
// USART0 Receiver: Off
1109.
// USART0 Transmitter: On
1110.
// USART0 Mode: Asynchronous
1111.
// USART0 Baud Rate: 9600
1112.
UCSR0A=0x00;
1113.
UCSR0B=0x08;
1114.
UCSR0C=0x06;
1115.
UBRR0H=0x00;
1116.
UBRR0L=0x33;
1117.
// USART1 initialization
1118.
// USART1 disabled
1119.
UCSR1B=0x00;
1120.
// Analog Comparator
initialization
1121.
// Analog Comparator: Off
1122.
// Analog Comparator Input
Capture by Timer/Counter 1: Off
1123.
ACSR=0x80;
1124.
SFIOR=0x00;
1125.
// ADC initialization
1126.
// ADC disabled
1127.
ADCSRA=0x00;
1128.
// SPI initialization
1129.
// SPI disabled
1130.
SPCR=0x00;
1131.
// TWI initialization
1132.
// TWI disabled
1133.
TWCR=0x00;
1134.
// I2C Bus initialization
1135.
// I2C Port: PORTB
1136.
// I2C SDA bit: 0
1137.
// I2C SCL bit: 1
1138.
// Bit Rate: 100 kHz
1139.
// Note: I2C settings are specified
in the
1140.
// Project|Configure|C
Compiler|Libraries|I2C menu.
1141.
i2c_init();
1142.
// DS1307 Real Time Clock
initialization
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
1143.
// Square wave output on pin
SQW/OUT: Off
1144.
// SQW/OUT pin state: 0
1145.
rtc_init(0,0,0);
1146.
// Alphanumeric LCD
initialization
1147.
// Connections are specified in the
1148.
// Project|Configure|C
Compiler|Libraries|Alphanumeric LCD
menu:
1149.
// RS - PORTC Bit 0
1150.
// RD - PORTC Bit 1
1151.
// EN - PORTC Bit 2
1152.
// D4 - PORTC Bit 4
1153.
// D5 - PORTC Bit 5
1154.
// D6 - PORTC Bit 6
1155.
// D7 - PORTC Bit 7
1156.
// Characters/line: 16
1157.
lcd_init(16);
1158.
logika=1;
1159.
total=0;
1160.
cekkendali();
1161.
rtc_get_time(&h,&m,&s);
1162.
mm=m;
1163.
askirim_data();
1164.
PORTB|=(1<<RFXX_DATA);
1165.
DDRB|=(1<<RFXX_DATA);//SE
T DATA OUTPUT
1166.
PORTF=0x00;
1167.
terima_data();
1168.
DDRE&=~(1<<3);
1169.
// Global enable interrupts
1170.
#asm("sei")
1171.
k_kendali=kond_kendali=1;
1172.
k_oksigen=kond_oksigen=1;
1173.
while (1)
1174.
{
1175.
rtc_get_time(&h,&m,&s); //
mengakses jam
1176.
rtc_get_date(&w,&d,&mo,&y);
//mengakses tanggal
1177.
tampiljam();
1178.
if(total!=ttotal)
1179.
{
1180.
paketdata();
1181.
}
1182.
ttotal=total;
1183.
if(keputusan==1)
1184.
{
1185.
kendali();
1186.
}
L17
1187.
cekkendali();
1188.
tampilstatus();
1189.
if
((total==jadwal)||(kond_kendali!=k_kendal
i)||(kond_oksigen!=k_oksigen))
1190.
{
1191.
paketdata();
1192.
lcd_clear();
1193.
sprintf(data_rf,"1@S%s#P%s#D
%s#H%s#O%s#K%d#L%d#M%d#N%d#$
",tsuhu,tkeasaman,toksigen,tkekeruhan,tko
nduktivitas,pintumasuk, pintukeluar,
pompaair, pompaaerator);
1194.
lcd_gotoxy(0,0);
1195.
lcd_putsf(" Kirim Paket ");
1196.
lcd_gotoxy(0,1);
1197.
lcd_putsf(" DATA ");
1198.
delay_ms(2000);
1199.
lcd_clear();
1200.
kirim();
1201.
total=0;
1202.
}
1203.
k_kendali=kond_kendali;
1204.
k_oksigen=kond_oksigen;
1205.
//Terima Data dari Sentral unit
1206.
while(!(PINE&(1<<3))) //polling
the nIRQ
1207.
{
1208.
DATA[0]=RF01_RDFIFO();
//read FIFO data
1209.
RFXX1_WRT_CMD(0xCE88);
//reset FIFO for next frame recognition
1210.
RFXX1_WRT_CMD(0xCE8B);
1211.
if(DATA[0]=='@')
1212.
{
1213.
i=1;
1214.
x=10;
1215.
while(i<x)
1216.
{
1217.
RF_RXBUF[0]=DATA[0];
1218.
while(!(PINE&(1<<3))) //polling
the nIRQ data
1219.
{
1220.
RF_RXBUF[i]=RF01_RDFIFO();
//read FIFO data
1221.
RFXX1_WRT_CMD(0xCE88);
//reset FIFO for next frame recognition
1222.
RFXX1_WRT_CMD(0xCE8B);
1223.
i++;
1224.
}
1225.
if(RF_RXBUF[1]=='J') {x=5;}
1226.
if(RF_RXBUF[1]=='V') {x=8;}
1227.
if(RF_RXBUF[1]=='W') {x=6;}
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
1228.
if(RF_RXBUF[1]=='X') {x=4;}
1229.
if(RF_RXBUF[1]=='Y') {x=6;}
1230.
if(RF_RXBUF[1]=='Z') {x=7;}
1231.
if(RF_RXBUF[1]=='R') {x=3;}
1232.
if((RF_RXBUF[1]=='A')||(RF_R
XBUF[1]=='B')||(RF_RXBUF[1]=='C')||(R
F_RXBUF[1]=='D')||(RF_RXBUF[1]=='E'
)||(RF_RXBUF[1]=='U')) {x=3;}
1233.
}
1234.
if(RF_RXBUF[1]=='J')
1235.
{
1236.
sprintf(jam,"%c%c",RF_RXBUF[
2],RF_RXBUF[3]);
1237.
j=atoi(jam);
1238.
jadwal=j;
1239.
}
1240.
if(RF_RXBUF[1]=='V')
1241.
{
1242.
sprintf(buff,"%c%c",RF_RXBUF
[2],RF_RXBUF[3]);
1243.
j=atoi(buff);
1244.
suhu_bawah=j;
1245.
sprintf(buff,"%c%c",RF_RXBUF
[5],RF_RXBUF[6]);
1246.
j=atoi(buff);
1247.
suhu_atas=j;
1248.
}
1249.
if(RF_RXBUF[1]=='W')
1250.
{
1251.
sprintf(buff,"%c",RF_RXBUF[2])
;
1252.
j=atoi(buff);
1253.
asam_bawah=j;
1254.
sprintf(buff,"%c",RF_RXBUF[4])
;
1255.
j=atoi(buff);
1256.
asam_atas=j;
1257.
}
1258.
if(RF_RXBUF[1]=='X')
1259.
{
1260.
sprintf(buff,"%c%c",RF_RXBUF
[2],RF_RXBUF[3]);
1261.
j=atoi(buff);
1262.
batas_oksigen=j;
1263.
}
1264.
if(RF_RXBUF[1]=='Y')
1265.
{
1266.
sprintf(buff,"%c%c",RF_RXBUF
[2],RF_RXBUF[3]);
1267.
j=atoi(buff);
1268.
batas_keruh=j;
1269.
}
1270.
if(RF_RXBUF[1]=='Z')
L18
1271.
{
1272.
sprintf(buff,"%c%c",RF_RXBUF
[2],RF_RXBUF[3]);
1273.
j=atoi(buff);
1274.
batas_konduktivitas=j;
1275.
}
1276.
lcd_clear();
1277.
lcd_gotoxy(0,0);
1278.
lcd_puts(RF_RXBUF);
1279.
delay_ms(2000);
1280.
lcd_clear();
1281.
if((RF_RXBUF[1]=='A')||(RF_R
XBUF[1]=='B')||(RF_RXBUF[1]=='C')||(R
F_RXBUF[1]=='D')||(RF_RXBUF[1]=='E'
)||(RF_RXBUF[1]=='U'))
1282.
{
1283.
if(RF_RXBUF[1]=='A')
1284.
{
1285.
datasuhu();
1286.
lcd_clear();
1287.
sprintf(data_rf,"1@AS%s#$",tsuh
u);
1288.
lcd_gotoxy(0,0);
1289.
lcd_putsf(" Kirim Data ");
1290.
lcd_gotoxy(0,1);
1291.
lcd_putsf(" Suhu ");
1292.
delay_ms(2000);lcd_clear();
1293.
kirim();
1294.
}
1295.
if(RF_RXBUF[1]=='B')
1296.
{
1297.
datakeasaman();
1298.
lcd_clear();
1299.
sprintf(data_rf,"1@BP%s#$",tkea
saman);
1300.
lcd_gotoxy(0,0);
1301.
lcd_putsf(" Kirim Data ");
1302.
lcd_gotoxy(0,1);
1303.
lcd_putsf(" Keasaman ");
1304.
delay_ms(2000);
1305.
lcd_clear();
1306.
kirim();
1307.
}
1308.
if(RF_RXBUF[1]=='C')
1309.
{
1310.
dataoksigen();
1311.
lcd_clear();
1312.
sprintf(data_rf,"1@CD%s#$",toks
igen);
1313.
lcd_gotoxy(0,0);
1314.
lcd_putsf(" Kirim Data ");
1315.
lcd_gotoxy(0,1);
1316.
lcd_putsf(" Oksigen ");
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
1317.
delay_ms(2000);
1318.
lcd_clear();
1319.
kirim();
1320.
}
1321.
if(RF_RXBUF[1]=='D')
1322.
{
1323.
datakekeruhan();
1324.
lcd_clear();
1325.
sprintf(data_rf,"1@DH%s#$",tke
keruhan);
1326.
lcd_gotoxy(0,0);
1327.
lcd_putsf(" Kirim Data ");
1328.
lcd_gotoxy(0,1);
1329.
lcd_putsf(" Kekeruhan ");
1330.
delay_ms(2000);
1331.
lcd_clear();
1332.
kirim();
1333.
}
1334.
if(RF_RXBUF[1]=='E')
1335.
{
1336.
datakonduktivitas();
1337.
lcd_clear();
1338.
sprintf(data_rf,"1@EO%s#$",tko
nduktivitas);
1339.
lcd_gotoxy(0,0);
1340.
lcd_putsf(" Kirim Data ");
1341.
lcd_gotoxy(0,1);
1342.
lcd_putsf(" Konduktivitas ");
1343.
delay_ms(2000);
1344.
lcd_clear();
1345.
kirim();
1346.
}
1347.
if(RF_RXBUF[1]=='U')
1348.
{
1349.
lcd_clear();
1350.
sprintf(data_rf,"1@S%s#P%s#D
%s#H%s#O%s#K%d#L%d#M%d#N%d#$
",tsuhu,tkeasaman,toksigen,tkekeruhan,tko
nduktivitas,pintumasuk, pintukeluar,
pompaair, pompaaerator);
1351.
lcd_gotoxy(0,0);
1352.
lcd_putsf(" Kirim Ulang ");
1353.
lcd_gotoxy(0,1);
1354.
lcd_putsf(" Paket Data ");
1355.
delay_ms(4000);
1356.
lcd_clear();
1357.
kirim();
1358.
total=0;
1359.
}
1360.
}
1361.
if(RF_RXBUF[1]=='R')
1362.
{
1363.
reset_batas_kendali();
L19
1364.
1365.
1366.
1367.
}
sprintf(RF_RXBUF,"
}
}
1368.
1369.
1370.
1371.
1372.
1373.
1374.
1375.
1376.
1377.
1378.
1379.
");
1380.
1381.
1382.
1383.
while(PINF.3==1)
{
if (keputusan==0)
{
lcd_clear();
atursistemkendali();
}
if(keputusan==1)
{
lcd_clear();
lcd_gotoxy(0,0);
lcd_putsf(" AKSES DITOLAK!
");
delay_ms(2000);
lcd_clear();
}
}
1384.
while(PINF.2==1)
1385.
{
1386.
lcd_clear();
1387.
lcd_gotoxy(0,0);
1388.
sprintf(temp,"SB=%d
SA=%d",suhu_bawah,suhu_atas);
1389.
lcd_puts(temp);
1390.
lcd_gotoxy(0,1);
1391.
sprintf(temp,"AB=%d
AA=%d,",asam_bawah,asam_atas);
1392.
lcd_puts(temp);
1393.
delay_ms(3000);
1394.
lcd_clear();
1395.
lcd_gotoxy(0,0);
1396.
sprintf(temp,"BK=%d
BD=%d",batas_keruh*10,batas_konduktiv
itas*100);
1397.
lcd_puts(temp);
1398.
lcd_gotoxy(0,1);
1399.
sprintf(temp,"BO=%d",batas_oksi
gen);
1400.
lcd_puts(temp);
1401.
delay_ms(3000);
1402.
lcd_clear();
1403.
}
1404.
}
1405.
}
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
L20
LAMPIRAN D
Listing Program Sensor
1. /******************************
***********************
2. This program was produced by the
3. CodeWizardAVR V2.05.3 Standard
4. Automatic Program Generator
5. © Copyright 1998-2011 Pavel Haiduc,
HP InfoTech s.r.l.
6. http://www.hpinfotech.com
28. int ssensor1, ssensor2, ssensor3,
ssensor4, ssensor5;
29.
30.
31.
32.
bit logika, keadaan;
eeprom unsigned int simpankeadaan;
int second, second1, second2, input, i;
char a1, a2, a3, a4, a5, z1, z2, z3, z4,
z5;
13. Chip type
: ATmega32
14. Program type
: Application
15. AVR Core Clock frequency: 12.000000
MHz
16. Memory model
: Small
17. External RAM size
:0
18. Data Stack size
: 512
19. *******************************
**********************/
33. int
data1[]={15,0,16,5,18,0,19,5,21,0,22,5
,24,0,25,5,27,0,28,5,30,0,31,5,33,0,34,
5,36,0,37,5,39,0};
34. int
data2[]={4,0,4,5,5,0,5,5,6,0,6,5,7,0,7,5
,8,0,8,5,9,0,9,5,10,0,10,5};
35. int
data3[]={3,0,3,5,4,0,4,5,5,0,5,5,6,0,6,5
,7,0,7,5,8,0,8,5,9,0,9,5};
36. int
data4[]={2,5,5,0,7,5,10,0,12,5,15,0,17,
5,20,0,22,5,25,0,27,5,30,0,32,5,35,0,3
7,5,40,0,42,5,45,0,47,5};
37. int
data5[]={2,0,5,5,9,0,12,5,16,0,19,5,23,
0,26,5,30,0,33,5,37,0,40,5,44,0,47,5,5
1,0,54,5,58,0};
20. #include <mega32.h>
38. #define ADC_VREF_TYPE 0x20
21. // Alphanumeric LCD functions
22. #include <alcd.h>
39. // Read the 8 most significant bits
40. // of the AD conversion result
41. unsigned char read_adc(unsigned char
adc_input)
42. {
43. ADMUX=adc_input | (ADC_VREF_TYPE
& 0xff);
44. // Delay needed for the stabilization of
the ADC input voltage
45. delay_us(10);
46. // Start the AD conversion
47. ADCSRA|=0x40;
7.
8.
9.
10.
11.
12.
Project :
Version :
Date : 8/10/2015
Author : jeff
Company :
Comments:
23. #include <stdlib.h>
24. #include <delay.h>
25. #include <stdio.h>
26. unsigned char
temp1[5],temp2[5],temp3[5],temp4[5
],temp5[5], tampilkeadaan[3];
27. int sensor1, sensor2, sensor3, sensor4,
sensor5;
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
48. // Wait for the AD conversion to
complete
49. while ((ADCSRA & 0x10)==0);
50. ADCSRA|=0x10;
51. return ADCH;
52. }
53. // Timer 1 overflow interrupt service
routine
54. interrupt [TIM1_OVF] void
timer1_ovf_isr(void)
55. {
56. TCNT1H=0xD23A >> 8;
57. TCNT1L=0xD23A & 0xff;
58. second++; //setelah 1 detik
increament data
59. second1++;
60. second2++;
61. }
62. // Declare your global variables here
63.
64.
65.
66.
67.
void tampildata()
{
sprintf(tampilkeadaan,"%d",keadaan);
lcd_gotoxy(15,1);
lcd_puts(tampilkeadaan);
68. if(PINA.7==1)
69. {
a. delay_ms(400);
b. keadaan=logika^keadaan;
c. lcd_clear();
d. simpankeadaan=keadaan;
70. }
L21
80. if(sensor1>17){sensor1=17;}
81. if(sensor1<1){sensor1=1;}
82. if(sensor2>14){sensor2=14;}
83. if(sensor2<1){sensor2=1;}
84. if(sensor3>14){sensor3=14;}
85. if(sensor3<1){sensor3=1;}
86. if(sensor4>19){sensor4=19;}
87. if(sensor4<1){sensor4=1;}
88. if(sensor5>17){sensor5=17;}
89. if(sensor5<1){sensor5=1;}
90. }
91.
92.
93.
94.
else if (keadaan==0)
{
if(second==5)
{
a. sensor1++; sensor2++;
sensor5++; second=0;
95. }
96. if(second1==7)
97. {
a. sensor3++; second1=0;
98. }
99. if(second2==9)
100.
{
a. sensor4++; second2=0;
101.
}
a. TIMSK=0x04;
71.
72.
73.
74.
75.
76.
77.
if (keadaan==1)
{
sensor1=read_adc(0)/10;
sensor2=read_adc(1)/10;
sensor3=read_adc(2)/10;
sensor4=read_adc(3)/10;
sensor5=read_adc(4)/10;
78. second=0;
79. TIMSK=0x00;
b. if(sensor1>17){sensor1=1;lcd_
clear();}
c. if(sensor2>14){sensor2=1;lcd_
clear();}
d. if(sensor3>14){sensor3=1;lcd_
clear();}
e. if(sensor4>19){sensor4=1;lcd_
clear();}
f. if(sensor5>17){sensor5=1;lcd_
clear();}
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
102.
}
103.
z1=0; for (a1=1; a1<sensor1;
a1++) { z1=z1+2; }
104.
z2=0; for (a2=1; a2<sensor2;
a2++) { z2=z2+2; }
105.
z3=0; for (a3=1; a3<sensor3;
a3++) { z3=z3+2; }
106.
z4=0; for (a4=1; a4<sensor4;
a4++) { z4=z4+2; }
107.
z5=0; for (a5=1; a5<sensor5;
a5++) { z5=z5+2; }
108.
sprintf(temp1,"S%d.%d",data1
[z1],data1[z1+1]);
109.
lcd_gotoxy(0,0) ;
110.
lcd_puts(temp1);
111.
sprintf(temp2,"P%d.%d",data2
[z2],data2[z2+1]);
112.
lcd_gotoxy(6,0) ;
113.
lcd_puts(temp2);
114.
sprintf(temp3,"D%d.%d",data
3[z3],data3[z3+1]);
115.
lcd_gotoxy(12,0) ;
116.
lcd_puts(temp3);
117.
sprintf(temp4,"H%d%d",data4
[z4],data4[z4+1]);
118.
lcd_gotoxy(2,1) ;
119.
lcd_puts(temp4);
120.
sprintf(temp5,"O%d%d0",data
5[z5],data5[z5+1]);
121.
lcd_gotoxy(8,1) ;
122.
lcd_puts(temp5);
123.
if((ssensor1!=sensor1)||(ssens
or2!=sensor2)||(ssensor3!=sensor3)||
(ssensor4!=sensor4)||(ssensor5!=sens
or5))
124.
{lcd_clear();}
125.
ssensor1=sensor1;
126.
ssensor2=sensor2;
127.
ssensor3=sensor3;
128.
129.
130.
ssensor4=sensor4;
ssensor5=sensor5;
}
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
void ambil()
{
input = getchar();
if(input=='a')
{
UCSRB=0x08;
delay_ms(10);
for(i=0;i<=4;i++)
{putchar(temp1[i]);}
putchar('#');
UCSRB=0x10;
}
if(input=='b')
{
UCSRB=0x08;
delay_ms(10);
for(i=0;i<=4;i++)
{putchar(temp2[i]);}
putchar('#');
UCSRB=0x10;
}
if(input=='c')
{
UCSRB=0x08;
delay_ms(10);
for(i=0;i<=4;i++)
{putchar(temp3[i]);}
putchar('#');
UCSRB=0x10;
}
if(input=='d')
{
UCSRB=0x08;
delay_ms(10);
for(i=0;i<=4;i++)
{putchar(temp4[i]);}
putchar('#');
UCSRB=0x10;
}
if(input=='e')
{
UCSRB=0x08;
L22
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
173.
174.
175.
176.
177.
178.
delay_ms(10);
for(i=0;i<=4;i++)
{putchar(temp5[i]);}
putchar('#');
UCSRB=0x10;
}
179.
}
180.
181.
void main(void)
{
182.
DDRA=0x80;
183.
DDRD=0x04;
184.
// ADC initialization
185.
// ADC Clock frequency:
750.000 kHz
186.
// ADC Voltage Reference:
AREF pin
187.
// Only the 8 most significant
bits of
188.
// the AD conversion result
are used
189.
ADMUX=ADC_VREF_TYPE &
0xff;
190.
ADCSRA=0x84;
191.
// Timer/Counter 1
initialization
192.
// Clock source: System Clock
193.
// Clock value: 11.719 kHz
194.
// Mode: Normal top=FFFFh
195.
// OC1A output: Discon.
196.
// OC1B output: Discon.
197.
// Noise Canceler: Off
198.
// Input Capture on Falling
Edge
199.
// Timer 1 Overflow Interrupt:
On
200.
// Input Capture Interrupt: Off
201.
// Compare A Match Interrupt:
Off
202.
Off
203.
204.
205.
206.
207.
208.
209.
210.
211.
212.
L23
// Compare B Match Interrupt:
TCCR1A=0x00;
TCCR1B=0x05;
TCNT1H=0xD2;
TCNT1L=0x3A;
ICR1H=0x00;
ICR1L=0x00;
OCR1AH=0x00;
OCR1AL=0x00;
OCR1BH=0x00;
OCR1BL=0x00;
213.
// Timer(s)/Counter(s)
Interrupt(s) initialization
214.
TIMSK=0x04;
215.
// USART initialization
216.
// Communication
Parameters: 8 Data, 1 Stop, No Parity
217.
// USART Receiver: On
218.
// USART Transmitter: Off
219.
// USART Mode:
Asynchronous
220.
// USART Baud Rate: 9600
221.
UCSRA=0x00;
222.
UCSRB=0x10;
223.
UCSRC=0x86;
224.
UBRRH=0x00;
225.
UBRRL=0x4D;
226.
// Alphanumeric LCD
initialization
227.
// Connections are specified in
the
228.
// Project|Configure|C
Compiler|Libraries|Alphanumeric LCD
menu:
229.
// RS - PORTC Bit 0
230.
// RD - PORTC Bit 1
231.
// EN - PORTC Bit 2
232.
// D4 - PORTC Bit 4
233.
// D5 - PORTC Bit 5
234.
// D6 - PORTC Bit 6
235.
// D7 - PORTC Bit 7
236.
// Characters/line: 16
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
237.
lcd_init(16);
238.
239.
// Global enable interrupts
#asm("sei")
240.
sensor1=sensor2=sensor3=sen
sor4=sensor5=1;
241.
logika=1;
242.
keadaan=simpankeadaan;
243.
244.
245.
while (1)
{
tampildata();
246.
247.
248.
249.
250.
251.
if (UCSRA.7==1)
{
ambil();
}
}
}
L24
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
LAMPIRAN E
Pengujian Pengambilan Data Sensor
Pengambilan data Keasaman
Tidak terima data keasaman
Pengambilan data Oksigen
Tidak terima data Oksigen
Pengambilan data Kekeruhan
Tidak terima data Kekeruhan
Pengambilan data Konduktivitas
Tidak terima data Konduktivitas
Pengambilan semua sensor
Tidak terima data
L25
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
L26
Lampiran F
Pengiriman Salah Satu Sensor
Terima Karakter Keasaman:
Terima Karakter Oksigen:
Kirim Data Keasaman:
Kirim Data Keasaman:
Terima Data Keasaman di Sentral Unit:
Terima Data Oksigen di Sentral Unit:
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
Terima Karakter Kekeruhan:
Kirim Data Keasaman:
Terima Data Kekeruhan di Sentral Unit:
L27
Terima Karakter Konduktivitas:
Kirim Data Konduktivitas:
Terima Data Konduktivitas di Sentral Unit:
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
L27
LAMPIRAN G
Pengujian Kedua Waktu RTC
Pengaturan Jam
Pengaturan Menit
Pengaturan Tanggal
Pengaturan Bulan
Pengaturan Tahun
Hasil Waktu RTC yang telah diubah
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
Lampiran H
Pengujian Pengendalian metode manual
Kendali pintu keluar air terbuka
Status kendali pintu air terbuka
Kendali pompa air terbuka
Status kendali pompa air terbuka
Kendali pompa aerator terbuka
Semua kendali terbuka
Status kendali pompa aerator terbuka
Semua status kendali terbuka
L28
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
L29
Lampiran I
Pengujian Kendali Otomatis
Data Sensor Keasaman dalam
Data Sensor kekeruhan dan
keadaan tidak normal
oskigen dalam keadaan tidak normal
Status Kendali tidak normal
Status Kendali dan pompa
Aerator tidak normal
Kendali pada keadaan tidak normal
Kendali dan Pompa Aerator
Dalam keadaan tidak normal
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
Data Sensor Konduktivitas dalam
keadaan tidak normal
Status Kendali tidak normal
Kendali pada keadaan tidak normal
L30
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
Lampiran J
Pengujian Kedua Jadwal Kirim
Tampilan waktu sebelum
Tampilan waktu jadwal
Pengiriman paket data
Pengiriman paket data
Tampilan waktu setelah 10 menit
Tampilan kirim paket data
L31
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
Lampiran K
Pengujian Reset Batasan Kendali
Tampilan batasan suhu dan keasaman
Yang telah diubah sentral unit
Batasan kekeruhan, konduktivitas dan
Oksigen yang telah diubah sentral unit
Tampilan berhasil reset batasan kendali
Batasan suhu dan keasaman setelah
melakukan reset
Batasan kekeruhan, konduktivitas dan
Oksigen setelah melakukan reset
L32
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
L33
LAMPIRAN L
Cara Penggunaan Alat
1. Pasang Adaptor ke 220V atau listrik rumah.
2. Pasang kabel Adaptor ke socket sensor.
3. Pasang kabel power dari sensor ke terminal unit .
4. Sambungkan kabel RX dan TX terminal unit dan sensor.
5. Tekan tombol menu dan atur waktu RTC
6. Tekan tombol up, pada pilihan edit jadwal tekan OK dan tentukan waktu
pengiriman.
7. Tekan tombol up dan tekan OK untuk melihat apakah terminal unit sudah bisa
mengambil data dari sensor.
8. Tekan tombol UP sampai pilihan ambil semua data sensor, kemudia tekan OK
untuk melihat apakah paket data bisa di ambil dari sensor.
9. Tekan Up dan OK untuk me-reset batasan kendali.
10. Tekan tombol UP dan OK untuk mengubah kendali menjadi otomatis.
11. Tekan tombol BACK sampai kembali ke tampilan utama.
12. Jika kendali manual maka pada tampilan untuk tekan tombol BACK untuk
mengubah kendali yang ada.
13. Pada menu utama tekan tombol DOWN untuk melihat batasan masing-masing
sensor.
14. Pengiriman paket data akan dikirimkan secara otomatis sesuai dengan waktu jadwal
yang ditentukan, jika paket data tidak terkirim maka sentral unit akan mengirimkan
perintah kirim ulang paket data dan secara otomatis terminal unit akan mengirim
ulang paket data.
15. Pada bagian modul sensor terdapat push button untuk mengubah mode otomatis
atau manual, jika 1 maka sensor pada mode manual. Jika pada mode manual, user
dapat mengubahnya dengan memutar potensio yang telah disediakan. Namun jika 0
maka sensor pada mode otomatis dan sensor akan berubah secara otomatis. Pada
mede otomatis ini potensio tidak bekerja.
PLAGIAT
PLAGIATMERUPAKAN
MERUPAKANTINDAKAN
TINDAKANTIDAK
TIDAKTERPUJI
TERPUJI
LAMPIRAN F
Proses Pengambilan Data
L34
Download