Post on 31-Oct-2021
ALAT PEMBERIAN MAKAN IKAN KOI SECARA OTOMATIS
MENGGUNAKAN BUZZER, SENSOR SUHU, SENSOR PH BERBASIS
MIKROKONTROLER ATMEGA328
SKRIPSI
Oleh :
Nim : 20141000043
Nama : Rikanius Zalukhu
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS BUDDHI DHARMA
TANGERANG
2018
ALAT PEMBERIAN MAKAN IKAN KOI SECARA OTOMATIS
MENGGUNAKAN BUZZER, SENSOR SUHU, SENSOR PH BERBASIS
MIKROKONTROLER ATMEGA328
SKRIPSI
Diajukan sebagai salah satu syarat untuk kelengkapan studi pada
Program Studi Teknik Informatika
Jenjang Pendidikan Strata 1
Oleh :
NIM : 20141000043
Nama : Rikanius Zalukhu
FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS BUDDHI DHARMA
TANGERANG
2018
PERSEMBAHAN
“Pendidikan adalah senjata paling mematikan di dunia, karena dengan pendidikan, Anda dapat
mengubah dunia”.
(Nelson Mandela)
Dengan mengucap puji syukur kepada Tuhan Yang Maha Esa, Kerja Praktek ini ku
persembahkan untuk :
1. Bapak. MESULI ZALUKHU dan Ibu SEDIATI LASE, tercinta yang telah
membesarkan aku, dan selalu membimbing, mengarahkan, mendukung, memotivasi
memberi apa yang terbaik bagiku serta selalu mendoakan aku untuk meraih
kesuksesanku.
2. Adikku Eman Sari Zalukhu, Martini Zalukhu, Meniat Zalukhu yang telah menjadi
curahan hatiku, yang telah memberiku semangat, juga yang selalu mendukung aku
hingga saat ini, aku sayang kalian.
3. Teman-teman Ku yang selalu memotivasi dan memberi semangat.
Tanpa mereka,
Aku dan karya ini tak akan pernah ada
UNIVERSITAS BUDDHI DHARMA
LEMBAR PENGESAHAN DEKAN DAN KAPRODI
ALAT PEMBERIAN MAKAN IKAN KOI SECARA OTOMATIS
MENGGUNAKAN BUZZER, SENSOR SUHU, SENSOR PH BERBASIS
MIKROKONTROLER ATMEGA328
Dibuat oleh:
NIM : 201410000043
Nama : Rikanius Zalukhu
Jenjang
Studi : Strata 1
Fakultas : Sains dan Teknologi
Program
Studi : Teknik Informatika
Peminatan : Jaringan
Disahkan oleh,
Tangerang, 30 Juli 2018
Dekan, Ketua Program Studi,
\
Dr. rer. nat. Gregoria Illya, M.Sc. Rino, M.Kom.
NIDN. 0427017502 0415077105 NIDN. 0420058502
ix
KATA PENGANTAR
Dengan mengucapkan Puji Syukur kepada Sang Triratna, yang telah memberikan
Rahmat dan karunia-Nya kepada penulis sehingga dapat menyusun dan menyelesaikan
Skripsi ini, dengan judul “ALAT PEMBERIAN MAKAN IKAN KOI SECARA
OTOMATIS MENGGUNAKAN BUZZER, SENSOR SUHU, SENSOR PH
BERBASIS MIKROKONTROLER ATMEGA328”. Pembuatan Skripsi ini dilakukan
penulis dengan Riset ke berbagai tempat. Tujuan dari pembuatan Skripsi ini adalah
sebagai salah satu syarat kelengkapan dalam menyelesaikan program pendidikan Strata 1
Program Studi Teknik Informatika di Universitas Buddhi Dharma. Dalam penyusunan
Skripsi ini penulis banyak menerima bantuan dan dorongan baik moril maupun materiil
dari berbagai pihak, maka pada kesempatan ini penulis menyampaikan rasa terima kasih
yang sebesar-besarnya kepada:
1. Bpk. Prof. Dr. Harimukti Kridalaksana, sebagai Rektor Universitas Buddhi Dharma
2. Ibu. Dr. rer. nat. Gregoria Illya., sebagai Dekan Fakultas Sains dan Teknologi
3. Bapak Rino M.Kom., sebagai Ketua Program Studi Teknik Informatika
4. Ibu Desiyanna Lasut, S.Kom., M.Kom sebagai Dosen Pembimbing yang telah
membantu dan memberikan arahan, dukungan serta harapan untuk menyelesaikan
penulisan Skripsi ini.
5. Bapak Ibu Dosen UBD
6. Orang Tua yang telah mendukung sampai akhir laporan ini selesai tepat pada
waktunya.
Serta semua pihak yang terlalu banyak untuk disebutkan satu persatu sehingga
terwujudnya penulisan ini. Penulis menyadari bahwa penulisan Skripsi ini masih belum
sempurna, untuk itu penulis mohon kritik dan saran yang bersifat membangun demi
kesempurnaan penulisan dimasa yang akan datang.
Akhir kata semoga Skripsi ini dapat berguna bagi penulis khususnya dan bagi para
pembaca yang berminat pada umumnya.
Tangerang, 30 Juli 2018
Penulis
x
Alat Pemberian Makan Ikan Koi Secara Otomatis Menggunakan Buzzer Berbasis Mikrokontroler
Atmega328
85 + xi halaman/ 6 tabel/ 16 gambar/ 13 pustaka
ABSTRAK
Pemberian makan ikan secara manual sangat kurang efisien karena bergantung kepada
sumber daya manusia sehingga sering terjadinya kesalahan dalam penjadwalan dan
pengontrolan pakan pada ikan sehingga mengakibatkan pertumbahan dan perkembangan
pada ikan kurang maksimal. Penelitian ini menerapkan sistem mikrokontroler Arduino
sebagai pusat kendali utama pada sistem pakan ikan, buzzer, motor servo, sensor dan
aplikasi android. Arduino juga berfungsi sebagai jalur komunikasi serial dan memproses
sinyal dari sensor suhu dan pH sebagai komponen umpan balik, kemudian menghasilkan
keluaran pada aplikasi android berupa laporan grafik keadaan pada kolam ikan tersebut.
Pada arduino diterapkan program inisialisasi dan konfigurasi perangkat keras serta untuk
membaca sinyal masukkan dari sensor suhu dan sensor pH dan aplikasi android, kemudian
memprosesnya dengan diberikan beberapa kondisi sehingga menghasilkan keluaran. Hasil
penelitian ini berupa alat pemberian makan ikan secara otomatis dengan penjadwalan yang
ditentukan oleh pengguna itu sendiri menggunakan aplikasi android dan sistem peringatan
menggunakan buzzer. Waktu pemberian makan ikan dapat diatur sesuai kebutuhan, serta
pengguna dapat memantau keadaan kolam melalui aplikasi Android dan buzzer akan aktif
jika suhu dan pH air terlalu rendah dan tinggi sampai keadaan kolamnya normal kembali.
Kata Kunci: Makan ikan otomatis, Mikrokontroler, Android, Buzzer, Motor Servo, Sensor
Suhu, Sensor pH
xi
Koi Fish Feeding Tool Automatically Using Buzzer Based Atmega328 Microcontroller
85 + xi pages / 6 table / 16 image / 13 library
ABSTRACT
Feeding the fish manually very less efficient because it is tied to human resources so that
frequent mistakes in scheduling and controling the feed on fish resulting in pertumbahan
and development in fish insufficient. This study applies the Arduino microcontroller system
as the main control centre on the feed system of fish, buzzer, servo motors, sensors, and
android applications. Arduino also serves as a series of lines of communication and
process signals from temperature sensors and pH as a feedback component, then generates
output in the form of graphic reports android application state at the fish pond. On the
arduino is applied the program initialization and hardware configuration as well as for
reading signals enter from temperature sensors and sensor pH and android apps, and then
process them with the given some conditions to produce the output. The results of this
research in the form of fish feeding tool automatically by scheduling defined by the user
itself using the android application and warning system using the buzzer. Fish feeding time
can be set as required, and the user can monitor the State of the pond through the Android
application and buzzer will be activated if the temperature and pH of water is too high to
low and back to normal pool of circumstances.
Keywords: Eating fish, microcontroller, Android, Buzzer, Servo Motors, temperature
sensors, pH sensor
xii
DAFTAR ISI
LEMBAR JUDUL LUAR
LEMBAR JUDUL DALAM
LEMBAR PERSEMBAHAN
LEMBAR PERNYATAAN KEASLIAN
LEMBAR PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH
LEMBAR PENGESAHAN SKRIPSI
LEMBAR PENGESAHAN PEMBIMBING
LEMBAR PENGESAHAN DEWAN PENGUJI
KATA PENGANTAR............................................................................................... ix
ABSTRAK................................................................................................................. x
ABSTRACT............... .. ............................................................................................. xi
DAFTAR ISI.............. ............................................................................................... xii
DAFTAR TABEL...... ............................................................................................... xiii
DAFTAR GAMBAR. ............................................................................................... xiv
BAB I PENDAHULUAN..................................................................................... 1
1.1 Latar Belakang Masalah................................................................... 1
1.2 Rumusan Masalah............................................................................ 2
1.3 Ruang Lingkup................................................................................. 2
1.4 Tujuan dan Manfaat......................................................................... 3
1.4.1 Tujuan.................................................................................... 3
1.4.2 Manfaat.................................................................................. 3
1.5 Metode Penelitian............................................................................. 3
1.5.1 Analisa Penelitian................................................................... 3
1.5.2 Metode Pengumpulan Data.................................................... 4
BAB II LANDASAN PEMIKIRIN TEORITIS..................................................... 6
2.1 Teori Umum..................................................................................... 6
2.1.1 Perancangan........................................................................... 6
2.1.2 Sistem..................................................................................... 6
2.1.3 Resistor................................................................................... 8
2.1.4 Komputer................................................................................ 12
xiii
2.2 Teori Khusus.................................................................................... 12
2.2.1 Ikan Koi (Cyprinus carpion).................................................. 12
2.2.1 Konsep Dasar Arduino........................................................... 14
2.2.3 Konsep Dasar Mikrokontroler................................................ 17
2.2.4 Otomatisasi............................................................................. 24
2.2.5 Alat......................................................................................... 24
2.2.6 Atmega328............................................................................. 26
2.2.7 Sensor..................................................................................... 28
2.2.8 Buzzer.................................................................................... 31
2.3 Teori Perancangan............................................................................... 32
2.3.1 Flowchart................................................................................ 32
2.3.2 Android.................................................................................. 34
2.3.3 Black Box............................................................................... 34
2.3.4 Konsep Dasar Algoritma........................................................ 36
2.3.5 Perangkat Lunak..................................................................... 39
BAB III PERANCANGAN ALAT......................................................................... 41
3.1 Tinjauan Jurnal Nasional.................................................................. 41
3.1.1 Jurnal Pertama........................................................................ 41
3.1.2 Jurnal Kedua........................................................................... 42
3.2 Perbandingan Jurnal......................................................................... 44
3.3 Permasalahan.................................................................................... 47
3.4 Alternatif Pemecahan Masalah........................................................ 47
3.5 Analisa Kebutuhan........................................................................... 48
3.5.1 Identifikasi dan Analisa Kebutuhan Pemakai........................ 48
3.5.2 Analisa Kebutuhan Aplikasi.................................................. 49
3.6 Story Board...................................................................................... 49
BAB IV PENGUJIAN DAN IMPLEMENTASI..................................................... 51
4.1 Perancangan..................................................................................... 51
4.2 Skema Rangkaian............................................................................. 52
4.2.1 Skema Rangkaian................................................................... 52
4.2.2 Spesifikasi Hardware............................................................. 53
4.2.3 Blok Diagram......................................................................... 55
4.3 Rancangan Flowchart....................................................................... 57
4.4 Tampilan Alat Makan Ikan Koi Otomatis........................................ 58
xiv
4.5 Prinsip Kerja Alat............................................................................. 61
4.6 Tata Cara Penggunaan Alat.............................................................. 62
4.7 Black Box......................................................................................... 63
4.8 Stuktur Kode.................................................................................... 63
4.9 Hasil Pengujian................................................................................ 79
4.9.1 Pengujian Blok Sensor pH dan Sensor Suhu......................... 79
4.9.2 Pengujian Motor Servo.......................................................... 80
4.9.3 Pengujian Secara Keseluruhan............................................... 80
4.9.4 Laporan Data Tabel dan Grafik Pergerakan suhu, pH........... 80
4.10 Spesifikasi Software......................................................................... 82
BAB V SIMPULAN DAN SARAN....................................................................... 83
5.1 Simpulan.......................................................................................... 83
5.2 Saran-saran....................................................................................... 83
DAFTAR PUSTAKA ............................................................................................... 84
DAFTAR RIWAYAT HIDUP .................................................................................. 85
LAMPIRAN-LAMPIRAN
xv
DAFTAR TABEL
Tabel 3.1 Perbandingan Jurnal................................................................................ 44
Tabel 3.2 Identifikasi Kebutuhan Pemakai............................................................. 48
Tabel 3.3 Analisa Kebutuhan Aplikasi.................................................................... 49
Tabel 3.4 Perancangan Story Board........................................................................ 49
Tabel 4.1 Prinsip Kerja Alat.................................................................................... 61
Tabel 4.2 Pengujian Black Box............................................................................... 63
xvi
DAFTAR GAMBAR
Gambar 2.1 Ikan Koi Goromo................................................................................ 13
Gambar 2.2 Papan Arduino USB Standar.............................................................. 16
Gambar 2.3 Gambar Arsitektur Atmega328.......................................................... 28
Gambar 2.4 Sensor Suhu........................................................................................ 30
Gambar 2.5 Sensor pH........................................................................................... 31
Gambar 2.6 Buzzer................................................................................................. 32
Gambar 4.1 Skema Rangkaian............................................................................... 52
Gambar 4.2 Rancangan Blok Diagram Alat Makan Ikan Koi Otomatis................ 55
Gambar 4.3 Rancangan Flowchart......................................................................... 57
Gambar 4.4 Tampilan Alat Penampungan Makan Ikan Koi Otomatis.................. 58
Gambar 4.5 Tampilan Motor Servo dan Sensor pH .............................................. 59
Gambar 4.6 Tampilan Sensor Suhu........................................................................ 60
Gambar 4.7 Data Grafik dan Suhu........................................................................ 80
Gambar 4.8 Tampilan Data Suhu dan pH.............................................................. 81
Gambar 4.9 Tampilan Grafik Pergerakan pH.........................................................81
Gambar 4.10 Tampilan Grafik Pergerakan Suhu.................................................... 82
xvii
BAB I
PENDAHULUAN
1.1 Latar Belakang Masalah
Perkembangan dan kemajuan teknologi saat ini sangat mempengaruhi
peradaban manusia dalam melakukan setiap aktivitasnya. Sehingga muncul berbagai
alat-alat canggih yang otomatis dengan ketelitian yang tinggi untuk membantu dan
mempermudah setiap pekerjaan manusia lebih efektif dan efisien. Perkembangan
teknologi tersebut telah mendorong kehidupan manusia untuk hal-hal yang otomatis.
Otomatisasi dalam semua sektor yang tidak dapat dihindari, sehingga penggunaan yang
awalnya manual bergeser ke otomatisasi. Tidak terkecuali dengan hobi seperti
memelihara ikan koi dan ikan hias lainnya dalam akuarium yang dapat menggunakan
alat sebagai pembantu untuk kemudahan dalam penggunaannya.
Budidaya ikan koi dalam kolam memerlukan tindakan yang berupa pemberian
makan ikan dan perawatan kolam itu sendiri, ikan koi yang dipelihara dalam kolam
harus diperhatikan waktu pemberian pakannya yang teratur dan terus menerus. Saat
pemilik kolam tidak berada di lokasi dan berpergian dalam waktu yang lama, maka
pemberian makan ikan dan perawatan kolam kurang terkontrol dengan baik.
Dari permasalahan tersebut, diperlukan sebuah alat otomatis yang dapat
memberikan pakan pada ikan sesuai waktu yang dijadwalkan oleh pengguna itu sendiri,
serta mengatur jumlah pakan yang diberikan pada ikan. Berdasarkan latar belakang
diatas maka penulis merancang suatu alat dan tertarik untuk mengambil judul “ ALAT
PEMBERIAN MAKAN IKAN KOI SECARA OTOMATIS MENGGUNAKAN
xviii
BUZZER, SENSOR SUHU, SENSOR PH, BERBASIS MIKROKONTROLER
ATMEGA328 ”,
sehingga alat ini dapat membantu para peneliti dan masyarakat pembudidaya
ikan untuk tidak kuatir saat memiliki kesibukan dan pergi meninggalkan rumah dalam
waktu yang cukup lama.
1.2 Rumusan Masalah
Dengan adanya latar belakang yang tersaji diatas, maka dapat diambil suatu
rumusan permasalahan sebagai berikut:
1. Bagaimana cara merancang dan membangun alat pemberian makan ikan koi
otomatis di akuarium yang berbasis Mikrokontroler ?
2. Bagaimana cara alat tersebut bekerja untuk mengukur suhu dan mengetahui
pH air dalam akuarium ikan koi ?
1.3. Ruang Lingkup
Ruang Lingkup pada penelitian ini adalah sebagai berikut:
1. Arduino UNO merupakan alat mikrokontroler yang dipilih oleh penulis untuk
membuat sistem kontrol
2. Android digunakan sebagai alat main kontrol pada alat ini.
3. Alat ini mampu mengukur suhu dan mengetahui pH pada kolam ikan koi
selama sebulan dan laporannya berbentuk grafik setiap 30 menit sekali.
4. Alat ini terbuat dari akrilik dan triplek karena lebih menghemat biaya
prototype
5. Pemberian makanan ikan menggunakan wadah berukuran 1 liter dan motor
servo sebagai pengendali makanan pada pakan.
xix
1.4. Tujuan dan Manfaat
1.4.1. Tujuan
Adapun tujuan adalah sebagai berikut:
1. Merancang dan membangun alat pemberi makan pada ikan di akuarium
otomatis berbasis mikrokontroler
2. Mengetahui sistem kerja dari alat pemberi makan pada ikan di
akuarium otomatis berbasis mikrokontroler.
1.4.2 Manfaat
Manfaat yang dapat diberikan adalah sebagai berikut:
1. Memberikan kemudahan pada setiap orang untuk memberikan pakan
ikan koi di akuarium secara otomatis, sehingga yang memelihara ikan
tersebut walaupun sedang banyak aktivitas, tidak perlu khawatir akan
pemberian pakannya.
2. Memberikan manfaat bagi pemelihara atau para penjual ikan koi ketika
harus berpergian jauh dalam waktu yang cukup lama.
1.5. Metode Penelitian
1.5.1 Analisa Penelitian
a. Perencanaan
Pada tahap ini penulis melakukan perencanaan mulai dari memahami
permasalahan yang muncul dan mendefinisikannya, kemudian
menentukan tujuan pembuatan alat.
xx
b. Analisis
Pada tahap ini penulis melakukan analisa terhadap kebutuhan informasi
dan penggunaan metode yang tepat untuk digunakan dalam penelitian
dan data apa saja yang dibutuhkan untuk dapat menyelesaikan
permasalahan.
c. Desain
Pada tahap ini penulis melakukan perancangan sistem mulai dari
tampilan sampai algoritma program.
1.5.2 Metode Pengumpulan Data
a. Observasi
Melakukan Pengamatan secara langsung kepada penjual dan
pembudidaya ikan terhadap ketertarikan dalam pembuatan alat
pemberian makan ikan otomatis ini.
b. Wawancara
Mengumpulkan informasi dengan bertanya secara langsung pada pihak
penjual ikan akuarium dalam hal ini pemilik Pisces Aquarium
Tangerang, mengenai permasalahan yang terjadi dan juga untuk
mengumpulkan data dan informasi yang dibutuhkan untuk penelitian.
c. Studi Pustaka
Mengumpulkan materi-materi dari sumber yang berhubungan dengan
pemberian alat makan ikan otomatis.
xxi
BAB II
LANDASAN PEMIKIRAN TEORITIS
2.1 Teori Umum
2.1.1 Perancangan
Menurut Deni Darmawan dan Kunkun Nur Fauzi (2013:228), perancangan
sistem adalah sebuah proses yang menentukan bagaimana suatu sistem akan
menyelesaikan apa yang mesti diselesaikan. Tahap ini dapat berupa
penggambaran, perencanaan dan pembuatan sketsa atau pengaturan dari beberapa
elemen yang terpisah ke dalam satu kesatuan yang utuh dan berfungsi.
Berdasarkan pengertian diatas, dapat disimpulkan bahwa perancangan sistem
adalah suatu proses yang menggambarkan bagaimana suatu sistem dibentuk
mulai dari diagram berdasarkan proses bisnis yang ada seperti use case diagram.
Kemudian wireframe, hingga codingan. Sehingga dapat memberikan gambaran
secara umum kepada user tentang sistem yang baru.
2.1.2 Sistem
Menurut Tata Sutabri (2012:6) pada buku Analisis Sistem Informasi, pada
dasarnya sistem adalah sekelompok unsur yang erat hubungannya satu dengan
yang lain, yang berfungsi bersama-sama untuk mencapai tujuan tertentu. Menurut
Kamus Besar Bahasa Indonesia, “Sistem adalah perangkat unsur yang secara
teratur saling berkaitan sehingga membentuk suatu totalitas”.
Berdasarkan dari definisi diatas dapat disimpulkan bahwa sistem adalah
suatu bagian atau unsur yang saling berhubungan menjadi satu-kesatuan bersama-
xxii
sama dan saling berkaitan untuk mencapai suatu sasaran/tujuan tertentu yang
sama.
Agar sistem dapat dikatakan sebagai sistem yang baik. Maka sistem itu
memiliki karakteristik, sebagai berikut:
1. Komponen.
Suatu sistem terdiri dari sejumlah komponen-komponen yang saling
berinteraksi, yang artinya saling bekerja sama dalam membentuk satu
kesatuan. Komponen sistem tersebut dapat berupa suatu bentuk sub-sistem
atau bagian-bagian dari sistem.
2. Batasan sistem (boundary).
Batasan sistem membatasi antara sistem yang satu dengan yang lainnya atau
sistem dengan lingkungan luarnya. Batasan suatu sistem menunjukkan ruang
lingkup (scope) dari sistem tersebut.
3. Lingkungan luar sistem (environment).
Lingkungan luar sistem adalah suatu bentuk apapun yang ada diluar ruang
lingkup atau batasan sistem yang mempengaruhi operasi sistem tersebut.
4. Penghubung sistem (interface).
Penghubung sistem merupakan media penghubung antara satu subsistem
dengan subsistem lainnya. Melalui penghubung ini memungkinkan sumber-
sumber daya mengalir dari subsistem ke subsistem lain.
5. Masukkan sistem (input).
Masukkan adalah energi yang dimasukkan kedalam sistem, yang dapat berupa
perawatan (maintenance input), dan masukkan sinyal (signal input).
xxiii
6. Keluaran sistem (output).
Keluaran sistem adalah hasil energi yang diolah dan diklasifikasikan menjadi
keluaran yang berguna dan sisa pembuangan.
7. Pengolahan sistem.
Suatu sistem menjadi bagian pengolahan yang akan merubah masukkan
menjadi keluaran.
8. Sasaran sistem.
Suatu sistem pasti mempunyai tujuan (goals) atau sasaran sistem (objective).
Sasaran dari sistem sangat menentukan masukkan yang dibutuhkan sistem dan
keluaran yang akan dihasilkan sistem.
2.1.3 Resistor
Menurut Budiharto (2009:1) bahwa "Resistor adalah salah satu
komponen elektronika yang berfungsi untuk memberikan hambatan terhadap
aliran arus listrik".
Menurut Rusmadi (2009:10), bahwa “Resistor adalah tahanan atau
hambatan arus listrik”.
Berdasarkan kedua definisi diatas dapat disimpulkan bahwa resistor
merupakan salah satu komponen elektronika dasar yang mempunyai fungsi untuk
memberikan hambatan atau tahanan terhadap aliran arus listrik pada perangkat
elektronika.
Menurut Rusmadi (2009:11), dalam bidang elektronika, Resistor dapat
di bagi menjadi 2 yaitu:
xxiv
1. Resistor Tetap (Fixed Resistor)
Menurut Rusmadi (2009:11), bahwa “Resistor Tetap adalah resistor
yang nilainya besaranyan sudah ditetepkan oleh pabrik pembuatannya dan tidak
dapat di ubah-ubah”.
Resistor memiliki nilai resistansi, sebagai nilainya ada yang dicantumkan
langsung pada badannya dan sebagian lagi karena bentuk fisiknya kecil.
Menurut Rusmadi (2009:15), Resistor dibagi menjadi 6 yaitu:
1. Resistor Kawat
Resistor kawat ini adalah jenis resistor pertama yang lahir pada generasi
pertama pada waktu rangkaian elektronika masih menggunakan Tabung
Hampa (Vacuum Tube). Bentuknya bervariasi dan fisik agak besar. Resistor
ini biasanya banyak digunakan dalam rangkaian daya karena memiliki
ketahanan yang tinggi yaitu disipasi terhadap panas yang tinggi.
2. Resistor Batang Karbon (Arang)
Pada awalnya resistor ini dibuat dari bahan karbon kasar yang diberi lilitan
kawat yang kemudian diberi tanda dengan kode warna berbentuk gelang dan
untuk pembacaanya dapat dilihat pada table kode warna.
3. Resistor Keramik atau Porselin
Dengan adanya perkembangan teknologi elektronika, saat ini telah
dikembangkan jenis resistor yang dibuat dari bahan keramik atau porselin.
Jenis resistor ini banyak dipergunakan dalam rangkaian-rangkaian modern
seperti sekarang ini karena bentuk fisiknya kecil dan memiliki ketahanan
yang tinggi. Di pasaran kita akan menjumpai resisitor jenis ini dengan
ukuran bervariasi mulai dari 1/4 Watt, 1/3 Watt, ½ Watt, 1 Watt dan 2
Watt.
xxv
4. Resistor Film Karbon
Sejalan dengan perkembangan teknologi para produsen komponen
elektronika telah memunculkan jenis resistor yang dibuat dari bahan karbon
dan dilapisi dengan bahan film yang berfungsi sebagai pelindung terhadap
pengaruh luar. Nilai resistansinya dicantumkan dalam bentuk kode warna
seperti pada Resistor Karbon.
5. Resistor Film Metal
Resistor Film Metal dibuat dengan bentuk hamir menyerupai resistor film
karbon dan memiliki keadalan dan stabilitas yang tinggi dan tahan terhadap
perubahan temperatur.
6. Resistor Tipe Film Tebal
Resistor jenis ini bentuknya mirip dengan resistor film metal, namun resistor
ini dirancang khusus agar memiliki kehandalan yang tinggi. Sebagai contoh
sebuah resistor film tebal dengan rating daya 2 Watt saja sudah mampu
untuk dipakai menahan beban tegangan di atas satuan Kilo Volt.
2. Resistor Tidak Tetap (Variabel Resistor)
Menurut Rusmadi (2009:16), bahwa “Resistor Tidak Tetap adalah Resistor yang
nilai resistansinya (tahanannya) dapat dirubah-rubah sesuai dengan keperluan
dan perubahannya dapat dilakukan dengan jalan mengeser atau memutar
pengaturnya”.
Menurut Rusmadi (2009:16), bahwa Resistor Tidak Tetap dibagi menjadi 5
yaitu:
xxvi
1. PotensiometerPotensiometer adalah komponen pembagi tegangan yang dapat
disetel sesuai dengan keinginan. Bentuk fisik dari Potensiometer pada
umumnya besar dan dibuat dari bahan kawat atau arang (karbon).
2. Potensiometer Preset
Potensiometer Preset bentuknya sangat kecil dan pengaturannya sama
dengan Trimpot yaitu dengan menggunakan obeng yang diputar pada bagian
lubang coakan.
3. NTC dan PTC
NTC adalah singakatan dari Negative Temperature Coefficient sedangkan
PTC adalah singkatan dari Positive Temperature Coefficient. Sifat dari
komponen NTC adalah Resisitor yang nilai tahannya akan menurun apabila
temperatur sekelilingnya naik dan sebaliknya komponen PTC adalah
Resistor yang nilai tahannya akan bertambah besar apabila temperaturnya
turun.
4. LDR (Light Dependent Resistor)
LDR adalah singkatan dari Light Dependent Resistor yaitu resistor yang
tergantung cahaya, artinya nilai tahannya akan berubah-ubah apabila terkena
cahaya dan perubahannya tergantung dari intensitas cahaya yang
diterimanya.
5. VDR (Volttage Dependent Resistor)
VDR adalah singkatan dari Volttage Dependent Resistor yaitu resistor yang
nilai tahannya akan berubah tergantung tegangan yang diterimanya. Sifat
dari VDR adalah semakin besar tegangan yang diterimanya maka tahanannya
akan semakin mengecil sehingga arus yang melalui VDR akan bertambah
besar.
xxvii
Ohm (simbol: Ω adalah satuan SI untuk resistansi listrik, diambil dari nama
Georg Ohm.
Satuan yang digunakan i
Ohm = Ω
Kilo Ohm = KΩ
Mega Ohm = MΩ
2.1.4 Komputer
Menurut Hartono (2013:27), Komputer adalah sebuah mesin yang dapat
dikendalikan melalui perintah yang dirancang untuk secara otomatis melakukan
serangkaian urutan perhitungan atau proses-proses yang diurutkan secara logis.
2.2 Teori Khusus
2.2.1 Ikan Koi (Cyprinus carpio)
Menurut Alex (2011:75) ikan koi sebenarnya merupakan mutasi dan hasil
persilangan dari beraneka warna ikan mas(karper). Ikan koi pertama kali dikenal
pada dinasti Chin tahun 265 dan 316 masehi. Koi dengan keindahan warna dan
tingkah laku seperti yang kita ketahui saat ini, mulai dikembangkan di Jepang 200
tahun yang lalu di pegunungan Niigata oleh petani Yamakoshi. Memelihara Koi
dapat menjadi suatu obsesi, karena warna, penampilan fisik dan nilainya yang
mengesankan, dapat menjadi obsesi tersendiri untuk mendapatkan koi cantik
yang lebih bagus. Ikan koi memiliki klasifikasi yang sama dengan ikan mas
sebagai berikut ;
1. Filum : Chordata
xxviii
2. Sub filum : Vertebrata
3. Kelas : Osteichtyes
4. Ordo : Cypriniformei
5. Familyi : Cyprinidae
6. Genus : Cyprinus
7. Spesies : Cyprinus carpio
Gambar 2.1 Ikan Koi Goromo
(sumber : https://penjualkoi.com/jenis-jenis-ikan-koi/)
Dewasa ini terdapat ratusan bahkan lebih jenis ikan hias dari berbagai
negara. Indonesia merupakan negara yang beruntung karena sebagian besar ikan
hias yang ada merupakan ikan tropis sehingga di Indonesia terdapat banyak jenis
ikan hias yang dapat dibudidayakan.
Menurut Alex (2011:34) Indonesia merupakan negara tropis yang sangat
cocok untuk budidaya berbagai jenis ikan hias air tawar dan iklimnya
memungkinkan ikan hias tersebut dapat bereproduksi sepanjang tahun.
Memelihara koi adalah hobi yang menyenangkan dan diyakini dapat
mengurangi stress. Koi adalah ikan yang pintar dan bisa diajarkan untuk makan
dari tangan. Namun kadang seperti ikan rakus yang akan memakan semua apa
saja yang dilempar ke kolam. Koi juga dapat mendengar dan akan merespon
xxix
suarasuara. Umumnya Koi mencapai ukuran 50% dari panjang ukuran koi dewasa
dalam 24 bulan, biasanya pertumbuhannya tergantung dari besarnya media
pemeliharaan. Juga faktor lain seperti kualitas air, oksigen, filtering, dan
makanan. Menurut Alex (2011:64) Garis keturunan Koi juga sangat berpengaruh
erat dengan kualitasnya. Rata-rata ikan koi bisa hidup antara 20-30 tahun.
Kualitas air merupakan hal penting yang diperhatikan dalam budidaya
ikan. Air yang kurang baik akan menyebabkan ikan koi mudah terserang
penyakit. Kualitas air untuk mendukung perkembangan koi secara optimum
adalah sebagai berikut :
a. pH = 7,0 – 7,6
b. Hardness = 50-180 ppm
c. Alkalinitas = 120-180 ppm
d. Temperatur air = konstan – tidak bergeser lebih dari 4 derajat F, dalam
24 jam.
e. Dissolved Oksigen (DO) = 14 ppm disetiap waktu
f. Amonia, nitrit atau nitrat harus pada 0 ppm tiap saat.
g. Kontaminan seperti timah, tembaga, klor, besi, dan residu obat-obatan
harus seminimal mungkin.
2.2.2 . Konsep Dasar Arduino
Menurut Sulaiman (2012:1), Arduino merupakan platform yang terdiri
dari software dan hardware. Hardware Arduino sama dengan mikrocontroller pada
umumnya hanya pada Arduino ditambahkan penamaan pin agar mudah diingat.
Software Arduino merupakan software open source sehingga dapat di download
secara gratis. Software ini digunakan untuk membuat dan memasukkan program ke
dalam Arduino. Pemrograman Arduino tidak sebanyak tahapan mikrokontroler
xxx
konvensional karena Arduino sudah didesain mudah untuk dipelajari, sehingga para
pemula dapat mulai belajar mikrokontroler dengan Arduino.
Menurut Santosa (2012:1), Arduino adalah kit elektronik atau papan
rangkaian elektronik open source yang di dalamnya terdapat komponen utama yaitu
sebuah chip mikrokontroler dengan jenis AVR dari perusahaan Atmel.
Berdasarkan dua definisi yang dikemukakan diatas dapat disimpulkan
bahwa Arduino merupakan kit elektronik atau papan rangkaian elektronik yang
didalamnya terdapat komponen utama yaitu sebuah chip mikrokontroler dengan
jenis AVR dari perusahaan Atmel serta software pemrograman yang berlisensi open
source.
Menurut Sulaiman (2012:1) Arduino merupakan platform open source
baik secara hardware dan software. Arduino terdiri dari mikrokontroler megaAVR
seperti ATmega8, ATmega168, ATmega328, ATmega1280, dan ATmega 2560
dengan menggunakan Kristal osilator 16 MHz, namun ada beberapa tipe Arduino
yang menggunakan Kristal osilator 8 MHz. Catu daya yang dibutuhkan untuk
mensupply minimum sistem Arduino cukup dengan tegangan 5 VDC. Port Arduino
Atmega series terdiri dari 20 pin yang meliputi 14 pin I/O digital dengan 6 pin
dapat berfungsi sebagai output PWM (Pulse Width Modulation) dan 6 pin I/O
analog.
Kelebihan Arduino adalah tidak membutuhkan flash programmer
external karena di dalam chip microcontroller Arduino telah diisi dengan
bootloader yang membuat proses upload menjadi lebih sederhana. Untuk koneksi
terhadap komputer dapat menggunakan RS232 to TTL Converter atau
menggunakan Chip USB ke Serial converter seperti FTDI FT232.
xxxi
Gambar 2.2 Papan Arduino USB Standar
(Sumber : https://mikro1311860.wordpress.com)
Arduino board sendiri telah tersedia dalam banyak jenis baik yang sudah
berkoneksi USB maupun serial. Contoh Arduino yang terkoneksi dengan USB
seperti: Arduino Uno, Arduino Duemilanove, Arduino Diecimila, Arduino NG Rev.
C , Arduino FIO, dan Arduino lilypad. Untuk lilypad memiliki ukuran sebesar
kancing baju dan anti air sehingga dapat dicuci. Sedangkan Arduino Severino
merupakan contoh untuk yang terkoneksi secara serial. Untuk para pemula yang
bingung memiliih jenis board yang cocok, dapat memilih Arduino Duemilanove
atau Arduino Uno karena kedua jenis ini yang paling banyak digunakan. Namun
jika ingin berkreasi lebih maka dapat membuat board sendiri dengan menyesuaikan
kebutuhan dan dana yang ada. Selain Arduino board, juga terdapat perangkat
tambahan yang disebut shield untuk pengembangan Arduino. Dengan shield ini
maka tidak perlu lagi repot menyolder karena semua sudah didesain sesuai dengan
pin Arduino. Contoh shield seperti : Ethernet shield untuk mengkoneksikan
Arduino dengan LAN, Xbee untuk memungkinkan beberapa Arduino berkomunikasi
secara wireless.
Menurut Sulaiman (2012:1) Arduino diciptakan untuk para pemula
bahkan yang tidak memiliki basic bahasa pemrograman sama sekali karena
menggunakan bahasa C++ yang telah dipermudah melalui library. Arduino
xxxii
menggunakan Software Processing yang digunakan untuk menulis program
kedalam Arduino. Processing sendiri merupakan penggabungan antara bahasa C++
dan Java. Software Arduino ini dapat di-install di berbagai operating system (OS)
seperti: LINUX, Mac OS, Windows. Software IDE Arduino terdiri dari 3 (tiga)
bagian:
1. Editor program, untuk menulis dan mengedit program dalam bahasa
processing. Listing program pada Arduino disebut sketch.
2. Compiler, modul yang berfungsi mengubah bahasa processing (kode program)
kedalam kode biner karena kode biner adalah satu-satunya bahasa program
yang dipahami oleh mikrokontroler.
3. Uploader, modul yang berfungsi memasukkan kode biner kedalam memori
mikrokontroler.
Struktur perintah pada Arduino secara garis besar terdiri dari 2 (dua) bagian
yaitu void setup dan void loop. Void setup berisi perintah yang akan dieksekusi
hanya satu kali sejak Arduino dihidupkan sedangkan void loop berisi perintah yang
akan dieksekusi berulang-ulang selama Arduino dinyalakan.
2.2.3 Konsep Dasar Mikrokontroler
Menurut Setiawan (2011:1) Mikrokontroler adalah suatu IC dengan
kepadatan yang sangat tinggi, dimana semua bagian yang diperlukan untuk suatu
kontroler sudah dikemas dalam satu keping, biasanya terdiri dari CPU (Central
Processing Unit), RAM (Random Access Memory),
EEPROM/EPROM/PROM/ROM, I/O, Serial & Parallel, Timer, Interupt
Controller.
xxxiii
Menurut Fauzi (2011:1) Mikrokontroler adalah sebuah chip yang
berfungsi sebagai pengontrol rangkaian elektronik dan umunya dapat menyimpan
program didalamnya.
Berdasarkan definisi yang dikemukakan diatas dapat disimpulkan
bahwa mikrokontroler adalah suatu IC yang didesain atau dibentuk dengan
kepadatan yang sangat tinggi, dimana semua bagian yang diperlukan suatu
kontroler sudah dikemas dalam satu keping, biasanya terdiri dari CPU (Central
Processing Unit), RAM (Random Access Memory),
EEPROM/EPROM/PROM/ROM, I/O, Serial & Parallel, Timer, Interupt Controller
dan berfungsi sebagai pengontrol rangkaian elektronik serta umunya dapat
menyimpan program didalamnya.
Menurut Setiawan (2011:10) Seperti umumnya komputer,
mikrokontroler adalah alat yang mengerjakan instruksi-instruksi yang diberikan
kepadanya. Artinya, bagian terpenting dan utama dari suatu sistem terkomputerisasi
adalah program itu sendiri yang dibuat oleh seorang programmer. Program ini
menginstruksikan komputer untuk melakukan jalinan yang panjang dari aksi-aksi
sederhana untuk melakukan tugas yang lebih kompleks yang diinginkan oleh
programmer.
Menurut Setiawan (2011:11) arsitektur adalah rancangan hardware
internal yang berkaitan dengan: tipe, jumlah dan ukuran register serta
rangkaian lainnya. Arsitektur pada sebuah mikrokontroler sangat mempengaruhi
kinerja pada saat melakukan proses pengendalian (control).
Menurut Setiawan (2011:11) Semua jenis mikrokontroler didasarkan
pada arsitektur Von-Neuman atau arsitektur Harvard.
xxxiv
a. Arsitektur Von-Neuman
Mikrokontroler yang di disain berdasarkan arsitektur ini memilik sebuah
data bus 8-bit yang dipergunakan untuk "fetch" instruksi dan data. Program
(instruksi) dan data disimpan pada memori utama secara bersama-sama.
Ketika kontroler mengalamati suatu alamat di memori utama, hal pertama
yang dilakukan dalah mengambil instruksi untuk dilaksanakan dan
kemudian mengambil data pendukung dari instruksi tersebut.
b. Arsitektur Harvard
Arsitektur ini memilik bus data dan instruksi yang terpisah, sehingga
memungkinkan eksekusi dilakukan secara bersamaan. Secara teoritis hal ini
memungkinkan eksekusi yang lebih cepat tetapi dilain pihak memerlukan
desain yang lebih kompleks.
Menurut Setiawan (2011:12) Instruksi pada mikrokontroler dikenal
ada 2 yaitu:
a. CISC
Saat ini hampir semua mikrokontroler adalah mikrokontroler CISC
(Complete Instruction Set Computer). Biasanya memiliki lebih dari 80
instruksi. Keunggulan dari CISC ini adalah adanya instruksi yang bekerja
seperti sebuah makro, sehingga memungkinkan programmer untuk
menggunakan sebuah instruksi menggantikan beberapa instruksi
sederhana lainnya.
b. RISC
xxxv
Saat ini kecenderungan industri untuk menggunakan disain
mikroprosesor RISC (Reduced Instruction Set Computer). Dengan
menggunakan jumlah instruksi yang lebih sedikit, memungkinkan
lahan pada chip (silicon real-estate) digunakan untuk meningkatkan
kemampuan chip. Keuntungan dari RISC adalah kesederhanaan
disain, chip yang lebih kecil, jumlah pin sedikit dan sangat sedikit
mengkonsumsi daya.
Menurut Setiawan (2011:12) Mikrokontroler mempunyai beberapa
macam memory antara lain :
a. Eeprom - Electrically Erasable Programmable Read Only Memory
Beberapa mikrokontroler memiliki EEPROM yang terintegrasi pada
chipnya. EEPROM ini dugunakan untuk menyimpan sejumlah kecil
parameter yang dapat berubah dari waktu ke waktu. Jenis memori ini
bekerja relatif pelan, dan kemampuan untuk dihapus/tulis nya juga
terbatas.
b. FLASH (EPROM)
FLASH memberikan pemecahan yang lebih baik dari EEPROM ketika
dibutuhkan sejumlah besar memori non-volatile untuk program. FLASH
ini bekerja lebih cepat dan dapat dihapus/tulis lebih sering dibanding
EEPROM.
c. Battery Backed-Up Static RAM
Memori ini sangat berguna ketika dibutuhkan memori yang besar untuk
menyimpan data dan program. Keunggulan utama dari RAM statis adalah
sangat cepat dibanding memori non-volatile, dan juga tidak terdapat
xxxvi
keterbatasan kemampuan hapus/tulis sehingga sangat cocok untuk aplikasi
untuk menyimpan dan manipulasi data secara lokal.
d. Field Programming/Reprogramming
Dengan menggunakan memori non-volatile untuk menyimpan program
akan memungkinkan mikrokontroler tersebut untuk diprogram ditempat,
tanpa melepaskan dari sistem yang dikontrolnya. Dengan kata lain
mikrokontroler tersebut dapat diprogram setelah dirakit pada PCB.
e. Otp - One Time Programmable
Mikrokontroler OTP adalah mikrokontroler yang hanya dapat diprogram
satu kali saja dan tidak dapat dihapus atau dimodifikasi.
Biasanya digunakan untuk produksi dengan jumlah terbatas. OTP
menggunakan EPROM standard tetapi tidak memiliki jendela untuk
menghapus programnya.
f. Software Protection
Dengan "encryption" atau proteksi fuse, software yang telah
diprogramkan akan terlindungi dari pembajakan, modifikasi atau rekayasa
ulang. Kemampuan ini hanya dipunyai oleh komponen OTP atau
komponen yang dapat diprogram ulang. Pada komponen jenis Mask ROM
tidak diperlukan proteksi, hal ini dikarenakan untuk membajak isi
programnya seseorang harus membacanya (visual) dari chip nya dengan
menggunakan mikroskop elektron.
Menurut Setiawan (2011:14) Mikrokontroller mempunyai
beberapa Input/Output diantaranya yaitu :
xxxvii
a. UART (Universal Asynchronous Receiver Transmitter) adalah adapter
serial port adapter untuk komunikasi serial asinkron.
b. USART (Universal Synchronous/Asynchronous Receiver Transmitter)
merupakan adapter serial port untuk komunikasi serial sinkron dan
asinkron. Komunikasi serial sinkron tidak memerlukan start/stop bit
dan dapat beroperasi pada click yang lebih tinggi dibanding asinkron.
c. SPI (serial peripheral interface) merupakan port komunikasi serial
sinkron.
d. SCI (serial communications interface) merupakan enhanced UART
(asynchronous serial port).
e. I2C bus (Inter-Integrated Circuit bus) merupakan antarmuka serial 2
kawat yang dikembangkan oleh Philips. Dikembangkan untuk aplikasi
a. 8 bit dan banyak digunakan pada consumer elektronik, otomotif
dan indistri. I2C bus ini berfungsi sebagai antarmuka jaringan
multi-master, multi-slave dengan deteksi tabrakan data. Jaringan
dapat dipasangkan hingga 128 titik dalam jarak 10 meter. Setiap
titik dalam jaringan dapat mengirim dan menerima data. Setiap
titik dalam jaringan harus memiliki alamat yang unik.
b. Analog to Digital Conversion (A/D). Fungsi ADC adalah merubah
besaran analog (biasanya tegangan) ke bilangan digital.
Mikrokontroler dengan fasilitas ini dapat digunakan untuk
aplikasi-aplikasi yang memerlukan informasi analog (misalnya
voltmeter, pengukur suhu dll).
Terdapat beberapa tipe dari ADC sbb:
xxxviii
1. Succesive Approximation A/D converters.
2. 2Single Slope A/D converters.
3. Delta-Sigma A/Ds converters.
4. Flash A/D.
c. D/A (Digital to Analog) Converters. Kebalikan dar ADC seperti
diatas.
d. Comparator. Mikrokontroler tertentu memiliki ssebuah atau lebih
komparator. Komparator ini bekerja seperti IC komparator biasa
tetapi sinyal input/output terpasang pada bus mikrokontroller.
Menurut Setiawan (2011:15) Interupt merupakan metode yang
efisien bagi mikrokontroler untuk memproses periperalnya,
mikrokontroler hanya bekerja memproses peripheral tsb hanya pada saat
terdapat data diperiperal tsb. Pada saat terjadi interupt, mikrokontroler
menunda operasi yang sedang dilakukan kemudian mengidentifikasi
interupsi yang datang dan menjalankan rutin pelayanan interupsi. Rata-
rata mikrokontroler memiliki setidak-tidaknya sebuah interupsi eksternal,
interupsi yang dimiliki bisa dipicu oleh "edge" atau "level". Edge
triggered interupt bekerja tidak tergantung pada pada waktu terjadinya
interupsi, tetapi interupsi bisa terjadi karena glitch. Sedangkan Level
triggered interupt harus tetap pada logika ini tahan terhadap glitch
Interrupts ada 2:
1. Maskable Interrupts
Dengan maskable interupt kita dapat bebas memilih untuk
menggunakan satu atau lebih interupsi. Keuntungan maskable
interupt ini adalah kita dapat mematikan interupsi pada saat
xxxix
mikrokontroler sedang melakukan proses yang kritis sehingga
interupsi yang datang akan diabaikan.
2. Vectored Interrupts
Pada saat terjadi interupsi, interupt handler secara otomatis akan
memindahkan program pada alamat tertentu yang telah ditentukan
sesuai dengan jenis interupsi yang terjadi.
2.2.4 Otomatisasi
Menurut Kamus Besar Bahas Indonesia (KBBI), otomatisasi adalah
penggantian tenaga manusia dengan tenaga mesin yang secara otomatis melakukan
dan mengatur pekerjaan sehingga tidak memerlukan lagi pengawasan manusia
(dalam industri dan sebagainya)
Otomatisasi diperlukan dalam hal untuk mengurangi keadaan yang
mengakibatkan suatu peningkatan pada sektor kontrol. Hasilnya adalah suatu
penambahan jumlah Controller, dan suatu peningkatan inter-sektor koordinasi yang
diperlukan dan transfer kontrol.
Pada studi yang lain menunjukkan bahwa peningkatan lebih lanjut dalam
efisiensi hanya dapat dicapai oleh aplikasi otomatisasi. Beberapa keuntungan yang
diperoleh dari suatu otomatisasi yaitu peningkatan dari penganturan kontrol,
pembagian dan penggunaan raung udara yang lebih baik.
2.2.5 Alat
xl
Menurut Rusmandi (2009:32) mengartikan alat adalah sautu benda yang
dipakai untuk mengerjakan sesuatu seperti perkakas dan perabotan yang dipakai
untuk mencapai maksud. Alat merupakan benda yang sangat berguna dan membantu
mempermudah pekerjaan manusia. Dengan bantuan alat suatu pekerjaan dapat
dilakukan dengan lebih mudah.
Menurut Kamus Besar Bahasa Indonesia (KBBI) macam-macam alat antara
lain adalah:
1. Alat Rumah Tangga, alat rumah tangga banyak sekali jenisnya. Dan biasanya di
kategorikan berdasarkan tempat penggunaanya. Contohnya: alat dapur, alat
mandi, alat tidur dan lain sebagainya.
2. Alat Pertanian, adalah alat yang di gunakan untuk mengerjakan pekerjaan yang
berhubungan dengan pertanian, alat ini meliputi: alat pengolahan tanah, alat
panen, alat pengolahan hasil pertaniana dan lain sebagainya.
3. Alat Trasportasi, adalah alat yang di gunakan untuk mengangkut benda, manusia
dari satu tempat ke tempat lain, contohnya: Kendaraan, Troli dan lain-lain.
4. Alat musik, adalah yang dapat mengeluarkan suara yang khas yang jika di
padukan dengan alat-alat lain dapat menghasikan musik yang indah. Contohnya:
alat musik tiup, alat musik pukul, alat musik gesek, alat musik petik, dan lain-
lain.
5. Alat Pembayaran, adalah alat yang digunakan untuk barter atau jual beli barang.
Contoh alat pembayaran antara lain: uang, logam mulia (emas dan perak), check,
credir card dan lain-lain
6. Alat listrik, adalah segala peralatan yang untuk mengoperasikannya membutuhkan
energi listrik. Contoh alat listrik antara lain adalah: kipas angin, radio, tv dan lain-
lain.
xli
2.2.6 Atmega328
Menurut Syahid (2012:33) ATmega328 merupakan mikrokontroler keluarga
AVR 8 bit. Beberapa tipe mikrokontroler yang sama dengan ATMega8 ini antara lain
ATMega8535, ATMega16, ATMega32, ATmega328, yang membedakan antara
mikrokontroler antara lain adalah, ukuran memori, banyaknya GPIO (pin
input/output), peripherial (USART, timer, counter, dll)".
Dari segi ukuran fisik, ATmega328 memiliki ukuran fisik lebih kecil
dibandingkan dengan beberapa mikrokontroler diatas. Namun untuk segi memori dan
periperial lainnya ATmega328 tidak kalah dengan yang lainnya karena ukuran
memori dan periperialnya relatif sama dengan ATMega8535, ATMega32, hanya saja
jumlah GPIO lebih sedikit dibandingkan mikrokontroler diatas.
Mikrokontroler ini memiliki beberapa fitur antara lain :
1. 130 macam instruksi yang hampir semuanya dieksekusi dalam satu siklus clock.
2. 32 x 8-bit register serba guna.
3. Kecepatan mencapai 16 MIPS dengan clock 16 MHz.
4. 32 KB flash memory dan pada arduino memiliki bootloader yang menggunakan
2 KB dari flash memori sebagai bootloader.
xlii
5. Memiliki EEPROM (Electrically Erasable Programmable Read Only Memory)
sebesar 1KB sebagai tempat penyimpanan data semi permanent karena
EEPROM tetap dapat menyimpan data meskipun catu daya dimatikan.
6. Memiliki SRAM (Static Random Access Memory) sebesar 2KB.
7. Memiliki pin I/O digital sebanyak 14 pin 6 diantaranya PWM (Pulse Width
Modulation) output.
8. Master / Slave SPI Serial interface.
Mikrokontroler ATmega328 memiliki arsitektur Harvard, yaitu
memisahkan memori untuk kode program dan memori untuk data sehingga dapat
memaksimalkan kerja dan paralelisme. Instruksi – instruksi dalam memori program
dieksekusi dalam satu alur tunggal, dimana pada saat satu instruksi dikerjakan
instruksi berikutnya sudah diambil dari memori program. Konsep inilah yang
memungkinkan instruksi – instruksi dapat dieksekusi dalam setiap satu siklus clock.
32 x 8-bit register serba guna digunakan untuk mendukung operasi pada ALU
(Arithmatic Logic Unit) yang dapat dilakukan dalam satu siklus. 6 dari register
serbaguna ini dapat digunakan sebagai 3 buah register pointer 16-bit pada mode
pengalamatan tak langsung untuk mengambil data pada ruang memori data. Ketiga
register pointer 16-bit ini disebut dengan register X ( gabungan R26 dan R27 ),
register Y ( gabungan R28 dan R29 ), dan register Z ( gabungan R30 dan R31 ).
Hampir semua instruksi AVR memiliki format 16-bit. Setiap alamat
memori program terdiri dari instruksi 16-bit atau 32-bit. Selain register serba guna di
atas, terdapat register lain yang terpetakan dengan teknik memory mapped I/O selebar
64 byte. Beberapa register ini digunakan untuk fungsi khusus antara lain sebagai
register Control Timer/Counter, Interupsi, ADC, USART, SPI, EEPROM, dan fungsi
I/O lainnya.
xliii
Gambar 2.3 Arsitektur ATmega328
Sumber (https://trisnote.blogspot.com/2015/11/atmega328.html)
2.2.7 Sensor
Menurut Rafiuddin (2013:9) sensor adalah Sensor adalah detektor yang
memiliki kemampuan untuk mengukur beberapa jenis kualitas fisik yang terjadi,
seperti tekanan atau cahaya. Sensor kemudian akan dapat mengkonversi pengukuran
menjadi sinyal bahwa seseorang akan dapat membaca. Dalam memilih peralatan
sensor dan transduser yang tepat dan sesuai dengan sistem yang akan disensor maka
perlu diperhatikan persyaratan umum sensor berikut ini :
xliv
a. Linearitas Sensor
Ada banyak sensor yang menghasilkan sinyal keluaran yang berubah secara
kontinyu sebagai tanggapan terhadap masukan yang berubah secara kontinyu.
b. Sensitivitas Sensor
Sensitivitas akan menunjukan seberapa jauh kepekaan sensor terhadap kuantitas
yang diukur. Sensitivitas sering juga dinyatakan dengan bilangan yang
menunjukan “perubahan keluaran dibandingkan unit perubahan masukan”.
c. Tanggapan Waktu Sensor (Respon Time)
Tanggapan waktu pada sensor menunjukan seberapa cepat tanggapannya terhadap
perubahan masukan.Sensor adalah perangkat canggih yang sering digunakan untuk
mendeteksi dan merespons sinyal listrik atau optik. Ada fitur-fitur tertentu
yangharus dipertimbangkan ketika kita memilih sensor, yaitu:
1. Ketepatan
2. Kondisi lingkungan-biasanya memiliki batas untuksuhu kelembaban
3. Jarak-batas Pengukuran atau sensor
4. Kalibrasi-Penting untuk sebagian besar pengukuran
5. perangkat sebagai pembacaan berubah seiring berjalannya waktu.
6. Resolusi - Peningkatan terkecil yang dideteksi olehsensor
7. Repeatability- Pembacaan yang bervariasi berulang kali
8. diukur di bawah lingkungan yang sama.
Adapun jenis-jenis Sensor yang digunakan yaitu
xlv
a. Sensor Suhu
Terdapat 4 jenis utama sensor suhu yang umum digunakan, yaitu thermocouple
(T/C), resistance temperature detector (RTD), termistor dan IC sensor.
Thermocouple pada intinya terdiri dari sepasang transduser panas dan dingin
yang disambungkan dan dilebur bersama, dimana terdapat perbedaan yang
timbul antara sambungan tersebut dengan sambungan referensi yang berfungsi
sebagai pembanding. Resistance Temperature Detector (RTD) memiliki prinsip
dasar pada tahanan listrik dari logam yang bervariasi sebanding dengan suhu.
Kesebandingan variasi ini adalah presisi dengan tingkat konsisten/kestabilan
yang tinggi pada pendeteksian tahanan.
Gambar 2.4 Sensor Suhu
(Sumber http://zonaelektro.net/sensor/)
Jenis ini sangat peka dengan perubahan tahan 5% per C sehingga mampu
mendeteksi perubahan suhu yang kecil. Sedangkan IC Sensor adalah sensor suhu
dengan rangkaian terpadu yang menggunakan chipsilikon untuk kelemahan
penginderanya. Mempunyai konfigurasi output tegangan dan arus yang sangat
liner
b. Sensor pH
Sensor pH berfungsi sebagai penentu derajat keasaman atau kebasaan dari suatu
bahan. Dan pH itu sendiri adalah derajat keasaman yang digunakan untuk
menyatakan tingkat keasaman atau kebasaan yang dimiliki oleh suatu larutan.
Unit pH diukur pada skala 0 sampai 14. Kadar keasaman suatu larutan diaktakan
xlvi
netral apabila bernilai 7. Sensor pH berfungsi sebagai penentu derajat keasaman
atau kebasaan dari suatu bahan.
Gambar 2.5 Sensor PH
(Sumber : https://www.sfe-electronics.com/)
2.2.8 Buzzer
Menurut http://www.ajifahreza.com/2017/04/menggunakan-buzzer-
komponen-suara.html Buzzer adalah sebuah komponen elektronika yang dapat
mengubah sinyal listrik menjadi getaran suara. Buzzer ini biasa dipakai pada sistem
alarm. Juga bisa digunakan sebagai indikasi suara. Buzzer adalah komponen
elektronika yang tergolong tranduser. Sederhananya buzzer mempunyai 2 buah kaki
yaitu positive dan negative. Untuk menggunakannya secara sederhana kita bisa
memberi tegangan positive dan negative 3 - 12V.
Cara kerja buzzer pada saat aliran listrik atau tegangan listrik yang mengalir
ke rangkaian yang menggunakan piezoeletric tersebut. Piezo buzzer dapat bekerja
xlvii
dengan baik dalam menghasilkan frekwensi di kisaran 1 - 6 kHz hingga 100 kHz.
Buzzer ini bisa kita coba tanpa menggunakan board arduino yang diprogram. Jadi
kita hanya beri inputan tegangan 3 - 12 V (Tegangan Kerja Buzzer). Buzzer
mempunyai nilai impedansi sama seperi speaker. Jika nilai impedansi kurang dari 10
ohm kita bisa langsung menghubungkan ke arduino dan jika impedansi yang lebih
besar kita akan membutuhkan driver untuk mengangkat arus yang masuk ke buzzer.
Gambar 2.6 Buzzer
(Sumber : http://r-dy-techno.blogspot.co.id/2013/06/pengertian-dan-prinsip-kerja-
buzzer.html)
2.3 Teori Perancangan
2.3.1 Flowchart
Menurut Supardi (2008:16) flowchart adalah representasi grafik dari
langkah-langkah yang harus diikuti dalam menyelesaikan suatu permasalahan
yang terdiri atas sekumpulan simbol, dimana masing-masing simbol
merepresentasikan suatu kegiatan tertentu. Bagan alir program merupakan alat
yang berguna bagi programmer untuk mempersiapkan program yang rumit.
Flowchart diawali dengan penerimaan input, pemrosesan input, dan
diakhiri penampilan output. Berikut beberapa pengertian flowchart menurut para
ahli adalah sebagai berikut:
xlviii
a. Menurut Pahlevy (2010), flowchart adalah gambaran dalam bentuk diagram
alir dari algoritma – algoritma dalam suatu program, yang menyatakan alur
program tersebut.
b. Sedangkan menurut Krismiaji (2010: 71), flowchart adalah bagan alir
merupakan teknik analitis yang digunakan untuk menjelaskan aspek - aspek
sistem informasi secara jelas, tepat dan logis. Bagan alir merupakan
serangkaian simbol standar untuk menguraikan prosedur pengolahan
transaksi yang digunakan oleh sebuah perusahaan, sekaligus menguraikan
aliran data dalam sebuah sistem.
Ada dua macam flowchart yang menggambarkan proses dengan komputer,
yaitu:
a. System Flowchart
Bagan yang memperlihatkan urutan proses dalam sistem dengan
menunjukkan alat media input, output serta jenis media penyimpanan
dalam proses pengolahan data.
b. Program Flowchart
Bagan yang memperlihatkan urutan instruksi yang digambarkan dengan
simbol tertentu untuk memecahkan masalah dalam suatu program.
Penerimaan input, pemrosesan input, dan penampilan output
merupakan kegiatan utama yang membentuk siklus dari semua kegiatan
yang dilakukan oleh komputer. Siklus ini disebut dengan I-P-O (Input-
Proses-Output). Seperti yang kita tahu, komputer terdiri atas banyak
komponen. Kita lihat bagian hardwarenya saja, sudah ada banyak
komponen seperti monitor, keyboard, mouse, CPU, printer, scanner,
speaker, dsb.
xlix
Setiap komponen komputer tersebut juga merupakan bagian dari
siklus input, proses, dan output. Contohnya komponen yang biasa kita
gunakan untuk memasukkan perintah atau data ke dalam komputer
adalah keyboard dan mouse, selanjutnya masukkan tersebut akan
diproses oleh CPU, dan akhirnya akan mengeluarkan hasil eksekusi pada
monitor, printer, atau speaker.
2.3.2 Android
Pengertian android menurut Nazaruddin (2012:1) merupakan sistem operasi
untuk telepon seluler yang berbasis Linux. Android menyediakan platform terbuka
bagi para pengembang untuk menciptakan aplikasi mereka sendiri untuk digunakan
oleh bermacam peranti bergerak. Android umum digunakan di smartphone dan juga
tablet PC. Fungsinya sama seperti sistem operasi Symbian di Nokia, iOS di Apple dan
BlackBerry OS.
2.3.3 Black Box
Menurut Janner Simarmata (2010:316), Black-box testing merupakan
pendekatan pengujian dimana program dianggap sebagai suatu ‘black - box’ (‘kotak
hitam’) Program test case berbasiskan spesifikasi Test planning dapat dimulai sejak
awal proses pengembangan sistem.
Black-box testing berfokus pada persyaratan fungsional perangkat lunak.
Metode ini memungkinkan software developer untuk mendapatkan serangkaian
kondisi input yang mempergunakan semua persyaratan fungsional program. Black-
Box testing bukan alternatif white-box testing, namun merupakan pelengkap yang
mampu mengungkap kesalahan, jika dibandingkan metode white-box testing.
l
Berdasarkan konsep pengujian Black box (functionality) testing
mengidentifikasi kesalahan yang berhubungan dengan kesalahan fungsionalitas
perangkat lunak yang tampak dalam kesalahan output.
Langkah-langkah dalam blackbox:
a. Analisa kebutuhan dan spesifikasi
b. Pemilihan input
c. Pemilihan output
d. Peleksi input
e. Pengujian
f. Review hasil
g. Evaluasi
Pengujian black box berfokus pada persyaratan fungsional perangkat lunak.
Disebut juga pengujian behavioral atau pengujian partisi. Pengujian black box
memungkinkan perekayasa perangkat lunak mendapatkan serangkaian input yang
sepenuhnya menggunakan semua persyaratan fungsional untuk suatu program.
Pengujian black box berusaha menemukan:
a. Fungsi-fungsi yang tidak benar atau hilang
b. Kesalahan interface
c. Kesalahan dalam struktur data atau akses database eksternal
d. Kesalahan kinerja
e. Inisialisasi dan kesalahan terminasi
f. Kesalahan performansi
g. Kesalahan inisialisasi dan tujuan akhir
Dengan mengaplikasikan teknik black box, maka kita menarik serangkaian test
case yang memenuhi kriteria berikut:
li
a. Test case yang mengurangi, dengan harga lebih dari satu, jumlah test case
tambahan yang harus di desain untuk mencapai pengujian yang dapat di
pertanggung jawabkan.
b. Test case yang member tahu kita sesuatu mengenai kehadiran atau ketidakhadiran
kelas kesalahan, daripada member tahu kesalahan yang berhubungan hanya
dengan pengujian spesifik.
2.3.4 Konsep Dasar Algoritma
Menurut Rinaldi Munir (2011:1) pemograman sudah menjadi kegiatan yang
sangat penting di era teknologi informasi saat ini. Program yang berjalan di berbagai
device seperti komputer (personal computer), netbook, handheld, web (berbasis
internet) pada dasarnya tidak dibangun begitu saja, melainkan ada suatu proses yang
menjadi suatu pola kerja dari program itu sendiri yaitu algoritma.
a. Sejarah Algoritma
Algoritma mempunyai sejarah yang panjang. Jika dilihat dari asal
katanya yaitu “algoritma”, kata ini tidak muncul dalam kamus Webster pada tahun
1957.
Menurut Rinaldi Munir (2011:10), Para ahli bahasa menemukan kata
algorism berasal dari nama cendikiawan muslim yang terkenal yaitu Abu Ja’far
Muhammad Ibnu Musa Al-Khuwarijmi (Al-Khuwarijmi dibaca oleh orang Barat
menjadi algorism) dalam bukunya yang berjudul Kitab Aljabar Wal-muqabala, yang
artinya “Buku Pemugaran dan Pengurangan” (The book of restoration and
reduction).
lii
Dari judul buku itu kita memperoleh kata “aljabar” (algebra). Perubahan
dari kata algorism menjadi algorithm muncul karena kata algorism sering dikelirukan
dengan arithmetic sehingga akhiran –sm berubah menjadi –thm.
Pada tahun 1950 algoritma yang lebih condong ke arah aritmatika terbukti
dengan dipakainya kata algoritma tersebut dalam “Algoritma Euclidean” yaitu
algoritma yang mencari pembagi bersama terbesar (Great Common Divisor) diantara
kedua bilangan. Dalam algoritma ini sangatmembantu dalam mencari nilai
enciphering pada algoritma RSA. Kemudian dari hal tersebut, algoritma
dikembangkan ke arah prosedur komputasi sehingga komputer dapat bekerja seperti
yang diharapkan seperti saat ini.
b. Fuzzy Logic
Menurut Sri Kusuma Dewi (2010:10), logika fuzzy merupakan salah satu
komponen pembentuk Soft Computing. Dasar logika fuzzy adalah teori himpunan
fuzzy. Pada teori himpunan fuzzy, peranan derajat keanggotaan sebagai penentu
keberadaan elemen dalam suatu himpunan sangatlah penting. Nilai keanggotaan atau
derajat keanggotaan atau membership function menjadi ciri utama dari penalaran
dengan logika fuzzy tersebut.
Fuzzy logic merupakan penigkatan dari penerapan logika boolean, pada
aljabar boolean yang hanya mengenal notasi 1 dan 0. Fuzzy logic memungkinkan
keanggotaan bernilai antara 0 sampai dengan 1. Oleh sebab itu bisa dikatakan bahwa
sebuah kondisi bisa bernilai sebagian benar dan sebagian salah pada saat bersamaan.
Ada beberapa alasan mengapa orang menggunakan fuzzy logic, antara lain :
1. Konsep fuzzy logic mudah dimengerti. Konsep matematis yang mendasari
penalaran fuzzy sangat sederhana dan mudah dimengerti.
2. Fuzzy logic sangat fleksibel.
liii
3. Fuzzy logic memiliki toleransi terhadap data-data yang tidak tepat.
4. Fuzzy logic mampu memodelkan fungsi-fungsi non-linear yang sangat kompleks.
5. Fuzzy logic dapat membangun dan mengaplikasikan pengalaman-pengalaman
para pakar secara langsung tanpa harus melalui proses pelatihan.
6. Fuzzy logic dapat bekerjasama dengan teknik-teknik kendali secara konvensional.
7. Fuzzy logic didasarkan pada bahasa alami.
Ada beberapa hal yang perlu diketahui dalam sistem fuzzy, yaitu :
1. Variable Fuzzy
Variable fuzzy merupakan variabel yang hendak dibahas dalam suatu sistem fuzzy.
Contoh: umur, temperatur, permintaan, dan lain-lain.
2. Himpunan Fuzzy
Himpunan fuzzy merupakan suatu grup yang memiliki suatu kondisi atau keadaan
tertentu dalam suatu variabel fuzzy. Contoh: variabel temperatur terbagi menjadi 5
himpunana fuzzy, yaitu: PANAS, DINGIN, SEJUK, NORMAL, dan HANGAT.
3. Semesta Pembicaraan
Semesta pembicaraan adalah keseluruhan nilai yang diperbolehkan untuk
dioperasikan dalam suatu variabel fuzzy. Semesta pembicaraan merupakan
himpunan bilangan real yang senantiasa bertambah secara monoton dari kiri ke
kanan atau sebaliknya. Nilai semesta pembicaraan dapat berupa bilangan positif
maupun negatif. Contoh semesta pembicaraan:
a. Semesta pembicaraan untuk variabel umur: [0 +∞]
b. Semesta pembicaraan untuk variabel temperatur: [0 40]
4. Domain
liv
Domain himpunan fuzzy adalah keseluruhan nilai yang diizinkan dan boleh
dioperasikan dalam suatu himpunan fuzzy. Seperti semesta pembicaraan, domain
merupakan himpunan bilangan real yang senantiasa bertambah secara monoton
dari kiri ke kanan. Nilai domain dapat berupa bilangan positif maupun negatif.
Contoh domain himpunan fuzzy:
a. DINGIN = [0, 20]
b. SEJUK = [15, 25]
c. NORMAL = [20, 30]
d. HANGAT = [25, 35]
2.3.5 Perangkat Lunak
Pengertian perangkat lunak menurut Sinarmata (2010:3) menjelaskan bahwa
perangkat lunak adalah objek tertentu yang dapat dijalankan seperti kode sumber,
kode objek atau sebuah program yang lengkap. Produk perangkat lunak memiliki
pengertian perangkat lunak yang ditambahkan dengan semua item dan pelayanan
pendukung yang secara keseluruhan dapat memenuhi kebutuhan pemakai. Produk
perangkat lunak memiliki banyak bagian yang meliputi manual, referensi, tutorial,
intruksi instalasi, data sampel, pelayanan pendidikan, pelayanan pendukung teknis
dan sebagainya. Semua yang dihasilkan oleh proyek perangkat lunak adalah produk
kerja (work product).
Produk kerja meliputi:
1. Dokumen Engineering yang dipakai untuk menentukan, mengontrol, dan
memantau usaha kerja.
lv
2. Objek yang dijalankan seperti prototype, kendali test (test harness), dan piranti
pengembangan tujuan khusus.
3. Data yang digunakan untuk testing, melacak proyek dan sebagainya.
Komputer memerlukan program-program penunjang, yang biasanya disebut
dengan perangkat lunak system yang akan digunakan untuk mengoperasikan aplikasi
perangkat lunak.
Perangkat lunak pada dasarnya merupakan perilaku dinamis dari program
suatu program komputer, sedangkan program adalah ekspresi intelektual yang dapat
dirancang oleh seorang pemakai pada tingkatan tertentu. Program akan terdiri dari
algoritma-algoritma yang terstruktur bahkan akan mengarah atau berorientasi kepada
objek tertentu yang diinginkan oleh sipembuat program.
Penelitian dan pemahaman tentang karakteristik perangkat lunak sangatlah
penting, untuk memperoleh pemahaman tentang perangkat lunak yang pada dasarnya
berbeda dengan hal-hal lain yang dibangun oleh manusia. Ketika perangkat lunak
dibuat proses kreatif manusia (analisis, desain, konstruksi, dan pengujian)
diterjemahkan kedalam bentuk fisik.
Perangkat lunak lebih merupakan elemen logika dan bukan merupakan elemen
system fisik. Sehingga perangkat lunak memiliki cirri yang berbeda dari perangkat
keras:
1. Perangkat lunak dibangun dan dikembangkan, tidak dibuat dalam bentuk klasik.
2. Perangkat lunak tidak pernah usang.
3. Sebagian besar perangkat lunak dibuat secara custom-built, serta dapat dirakit
dari komponen yang sudah ada.
lvi
BAB III
PERANCANGAN ALAT
3.1 Tinjauan Jurnal Nasional
3.1.1 Jurnal Pertama
Pada jurnal pertama diambil dari penelitian yang dilakukan oleh
Kartika Sari dkk (2015) yang berjudul IMPLEMENTASI SISTEM PAKAN
IKAN MENGGUNAKAN BUZZER DAN APLIKASI ANTARMUKA
BERBASIS MIKROKONTROLER. Penelitian dilakukan dengan latar
belakang sebagai berikut.
Ikan yang dipelihara dalam kolam harus diperhatikan waktu pemberian
pakannya dengan kata lain ikan tersebut membutuhkan makanan yang teratur dan
terus menerus. Namun dalam pemberian pakan secara manual biasanya sering
terjadi human error, sehingga dalam pemberian pakan ikan. Masalah lain yang
sering ditemukan dalam pemeliharaan ikan adalah keterbatasan manusia untuk
melakukan beberapa aktivitas dalam yang bersamaan dan ditempat yang
berlainan, sehingga tidak dapat memberikan pakan pada ikan ketika harus
mengganggu aktivitas maupun kesibukan sehari-hari. Pada penelitian ini
mengembangkan sebuah alat pemberian pakan ikan secara otomatis berbasis
mikrokontroler yang dapat mengatur waktu pemberian pakan dan takaran pakan
ikan sesuai kebutuhan berdasarkan jadwal maupun melalui aplikasi antarmuka.
Penelitian ini menggunakan metode studi literatur kemudian melakukan analisa
kebutuhan perangkat keras dan perangkat lunak yang dibutuhkan dalam
pembuatan sistem pakan ikan otomatis menggunakan
lvii
buzzer dan aplikasi antarmuka berbasis mikrokontroler. Berdasarkan
proses perancangan maka diperoleh beberapa kesimpulan antara lain sebagai
berikut:
a. Sistem ini memberi peringatan menggunakan buzzer secara real time tanpa
harus dilakukan pengecekan sisa pakan melalui aplikasi antarmuka
sebelumnya. Hal ini dikarenakan data jarak dari sensor ultrasonik langsung
masuks ke buzzer. Buzzer mendapatkan data sisa pakan ikan melalui hasil
pengukuran sensor ultrasonik
b. Hubungan antara waktu buka celah pakan ikan dengan banyaknya pakan ikan
adalah berbanding lurus, yaitu semakin sedikit waktu terbuka pakan ikan,
maka jumlah pakan ikan yang keluar dari celah perdetik akan semakin sedikit,
dan sebaliknya, semakin banyak waktu terbuka celah pakan ikan yang keluar
dari celah per detik.
3.1.2 Jurnal Kedua
Pada jurnal kedua diambil dari penelitian yang dilakukan oleh
Hendra S. dkk (2015) yang berjudul RANCANG BANGUN ALAT PEMBERI
PAKAN IKAN OTOMATIS BERBASIS MIKROKONTROLER. Penelitian
ini dilatarbelakangi sebagai berikut.
Usaha budidaya ikan saat ini sangat menjanjikan hasilnya. Dalam
kegiatan budidaya ikan banyak pekerjaan yang harus dilakukan, salah satu hal
yang penting dalam pembudidayaan ikan adalah pemberian pakan ikan.
Sayangnya pada saat ini, sistem pemberian pakan ikan umumnya masih sangat
bergantung pada sumber daya manusia untuk pemberiannya, yang sifatnya masih
manual. Penggunaan sistem tersebut memiliki beberapa kekurangan, yaitu sering
terjadinya kelalaian pada penjadwalan dan juga tidak adanya pengontrolan
lviii
takaran pada setiap pemberian pakan. Hal tersebut dapat mengakibatkan ikan
kekurangan gizi, pertumbuhannya terhambat, kerdil, sakit dan bahkan bisa
mengakibatkan kematian sehingga hasil panen ikan tidak maksimal.
Perkembangan ilmu dan teknologi berpengaruh besar, baik yang berhubungan
dengan rutinitas manusia secara langsung maupun rutinitas secara tidak langsung.
Teknologi berawal dari model sistem konvensional yang kemudian bergerak maju
menuju sistem yang terotomatisasi. Alat ini juga dapat mengirim sms
pemberitahuan bahwa pemberian pakan telah dilakukan dan juga ketika pada
penampungan sudah habis, sehingga ketersediaan pakan dapat terkontrol.
Berdasarkan proses perancangan maka diperoleh beberapa kesimpulan antara lain
sebagai berikut :
a. Alat dapat memberi pakan secara otomatis sesuai pilihan jadwal yang telah
diatur sebelumnya serta mampu mengirimkan sms pemberitahuan ketika pakan
telah diberikan dan ketika tampungan dalam keadaan kosong/habis.
b. Sensor photodiod dapat bekerja dengan baik
c. Alat dapat mengontrol berat pakan yang diberikan sesuai pilihan yang telah
diatur.
d. Jaringan provider dapat mempengaruhi kecepatan pengiriman sms.
lix
3.2 Perbandingan Jurnal
Tabel 3.1 Perbandingan Jurnal
Kategori
Implementasi Sistem
Pakan Ikan
menggunakan Buzzer
dan Aplikasi
Antarmuka Berbasis
Mikrokoktroler
Rancang Bangun Alat
Pemberi Makan Ikan
Otomatis Berbasis
Mikrokontroler.
Alat Pemberian Makan
Ikan Koi secara Otonatis
Menggunakan Buzzer,
Sensor Suhu, Sensor pH
berbasis Mikrokontroler
Atmega328
Input Device
Sensor Ultrasonik
Sensor Photodioda
Sensor pH, Suhu
Mikrokontro
ler
Atmega16 Atmega16 Atmega328P
Output
Device
Seven segment Seven segment Grafik, Android
Fungsi
Utama
- Membantu
pembudidaya
ikan dalam
memberi makan
pada pakan
sesuai jadwal
yang ditentukan
oleh pengguna
- Menghemat
- Membantu para
pembudidaya
ikan dalam
memberi makan
pada pakan
sesuai jadwal
yang ditentukan
oleh pengguna
- Menghemat
- Membantu para
pembudidaya ikan
dalam memberi
makan pada pakan
sesuai jadwal yang
ditentukan oleh
pengguna
- Menghemat waktu
jika pakan ikan
lx
waktu jika
pakan ikan
habis/menipis.
waktu jika
pakan ikan
habis/menipis.
habis/menipis.
- Mengontol dan
memonitoring ph,
suhu pada
kolam/pakan.
Otomatisasi Otomatisasi Otomatisasi Otomatisai dan Manual
Metode Metode Literatur - Metode Fuzzy Logic
Kelebihan
- Memberikan
peringatan saat
makan habis
atau menipis
- Dapat
menghitung
waktu dan
menyimpan data
dalam
pemberian
makanan pada
pakan.
- Memiliki user
interface
- Memberikan
peringatan saat
makan habis
atau menipis
- Dapat
menghitung
waktu dan
menyimpan data
dalam
pemberian
makanan pada
pakan.
- Peringatan
pemberian
makanan dapat
dilakukan dari
jarak jauh.
- Dapat
Mengendalikan
jumlah pakan ikan
agar tidak ada
pakan sisa dalam
kolam yang dapat
mengurangi
kualitas air.
- Memiliki user
interface untuk
memonitoring
suhu, ph dan
keadaan kolam
ikan.
Kekurangan - Tidak bisa - Tidak memiliki - Tidak bisa
lxi
memantau
kinerja sistem
dari jarak jauh
seperti
menggunakan
sms gateway
- Pengecekan sisa
pakan ikan tidak
dapat dilakukan
melalui aplikasi
antarmuka
secara real time
user interface. memantau kinerja
sistem dari jarak
jauh seperti
menggunakan sms
gateway
- Hanya dapat
memonitor suhu
dan ph kolam tapi
belum dapat
mengendalikan
suhu dan ph kolam
sesuai dengan
habitat yang
optimal bagi ikan
koi.
3.3 Permasalahan
Perkembangan teknologi saat ini telah mendorong kehidupan manusia untuk
hal-hal yang otomatis. Otomatisasi dalam semua sektor yang tidak dapat dihindari,
lxii
sehingga penggunaan yang awalnya manual bergeser ke otomatisasi. Tidak terkecuali
dengan hobi seperti memelihara ikan koi dan ikan hias lainnya dalam akuarium yang
dapat menggunakan alat sebagai pembantu untuk kemudahan dalam penggunaannya.
Budidaya ikan koi dalam kolam memerlukan tindakan yang berupa pemberian makan
ikan dan perawatan kolam itu sendiri, ikan koi yang dipelihara dalam kolam harus
diperhatikan waktu pemberian pakannya yang teratur dan terus menerus. Saat pemilik
kolam tidak berada di lokasi dan berpergian dalam waktu yang lama, maka
pemberian makan ikan dan perawatan kolam kurang terkontrol dengan baik.
3.4. Alternatif Pemecahan Masalah
Dari masalah yang telah kita bahas di sub bab sebelumnya, penulis
menemukan salah satu alternatif pemecahan masalah yang dapat membantu Salah
satu penyebab tidak kondusifnya pemberian makan ikan koi pada pada pakan
sehingga menghambat pertumbuhannya dan kurang terkontrolnya air pada kolam
sehingga mengakibatkan kematian pada ikan tersebut.
Alternatif pemecahannya adalah mengembangkan sebuah alat pemberian
makanan ikan koi secara otomatis menggunakan buzzer berbasis mikrokontroler
dengan main control smart phone android . Alat ini dikembangkan dengan sensor pH,
sensor suhu dan buzzer yang dapat memberikan informasi peringatan jika wadah
makanan ikan menipis atau habis serta mengetahui keadaan air pada kolam ikan koi.
Alat ini menggunakan main control smart phone android yang dapat membantu
pembudidaya ikan koi melakukan penjadwalan pemberian makan ikan yang lebih
praktis dan efisien . Penulis berharap alat pemberian makan ikan otomatisasi ini bisa
menjadi salah satu solusi dari masalah yang ada.
3.5 Analisa Kebutuhan
lxiii
3.5.1 Identifikasi dan Analisa kebutuhan Pemakai
Tabel 3.2 Identifikasi Kebutuhan Pemakai
No Kebutuhan Pemakai
1. Memiliki Halaman Utama
2. Dapat menetralisasi keadaan kolam
3.
Mempunyai pengaturan suhu, ph, dan waktu pemberian
makanan ikan
4. Menampilkan grafik keadaan suhu pada kolam ikan
5. Menampilkan grafik keadaan Ph pada kolam ikan
6.
Dapat menetralisasi kadar nitrogen yang tinggi disebabkan
oleh kotoran ikan dan sisa pada pakan.
3.5.2. Analisa Kebutuhan Aplikasi
Tabel 3.3 Analisa Kebutuhan Aplikasi
No. Kebutuhan Pemakai Keterangan
1. Mempunyai Halaman Utaman
2. Mempunyai pengaturan suhu, ph, dan waktu
lxiv
pemberian makanan ikan
3.
Menampilkan grafik keadaan suhu pada kolam
ikan
4. Menampilkan grafik keadaan Ph pada kolam ikan
3.6 Story Board
Tabel 3.4 Perancangan Story Board
Skema Uraian Desain Keterangan
Menu
Beranda
User
Halaman
yang
menampilkan
halaman
utama
aplikasi
Android
Selamat Datang di SmartKoi
Kondisi Kolam Anda
Suhu air kolam
Kadar pH kolam
Interval pemberian makan
Jeda lubang pakan
Tampilan awal
dari aplikasi
android yang
memperlihatkan
tentang keadaan
dan situasi
pakan kolam
ikan
Menu
Setelan
Halaman
pengaturan
suhu, ph,
interval
pemberian
makan, dan
jeda lubang
pakan
Suhu Maks
Suhu Min
Ph Maks
Ph Min
Interval makan
Jeda pakan
Tempat untuk
melakukan
pengaturan
pemberian
pakan pada ikan
dan suhu, ph
sesuai
keinginan
Setelan Lihat Grafik
Batal
lxv
0
10
20
30
40
50
60
70
BAB IV
PENGUJIAN DAN IMPLEMENTASI
4.1 Rancangan Algoritma
Pengertian Dasar Algoritma menurut Sjukani (2019;19) yaitu alur pikiran
dalam menyelesaikan suatu pekerjaan, yang dituangkan dalam bentuk tertulis yang
dapat dimengerti oleh orang lain. Algoritma juga dapat diidentifikasikan sebagai
metode efektif diekspresikan sebagai rangkaian terbatas dari instruksi-instruksi yang
telah didefinisikan dengan baik untuk menghitung sebuah fungsi. Dimulai dari sebuah
kondisi awal dan input awal (mungkin kosong), instruksi-instruksi tersebut
menjelaskan sebuah komputasi yang, bila dieksekusi, diproses lewat sejumlah urutan
pengguna.
Menu
Grafik
Halaman
untuk
menampilkan
grafik
pergerakan
suhu dan PH
kolam
selama
rentang
waktu
tertentu
Tempat untuk
melihat situasi
keadaan ph dan
suhu pada
kolam ikan
Simpan
Kembali
lxvi
kondisi terbatas yang terdefinisi dengan baik, yang pada akhirnya menghasilkan
"keluaran" dan berhenti di kondisi akhir. Berikut adalah algoritma alat pemberian
makanan ikan koi secara otomatisasi yang dibuat :
IF
Sensor PH = terlalu tinggi atau terlalu rendah
THEN
Buzzer ON, LED kuning ON
IF
Sensor Suhu = terlalu Tinggi atau terlalu Rendah
THEN
Buzzer ON, LED Merah ON
ELSE
Buzzer OFF AND LED Kuning OFF, LED Merah OFF
4.2 Skema Rangkaian
4.2.1 Skema Rangkaian
Pada bagian ini akan dijelaskan skema rangkaian dari alat pemberian makan
ikan koi secara otomatisas. Berikut adalah gambar skema rangkaiannya :
lxvii
Gambar 4.1 Skema Rangkaian
4.2.2 Spesifikasi Hardware
1. Papan Arduino Atmega328
Board Arduino Uno menggunakan mikrokontroler Atmega328, secara
umum posisi/letak pin-pin terminal I/O pada berbagai Board Arduino Uno
posisinya sam dengan posisi/letak pin-pin terminal I/O dari Arduino Uno yang
mempunyai 14 pin Digital yang dapat di set sebagai inpu/output (dimana 6
dapat digunakan sebagai output PWM), 6 input analog, resonator keramik 16
Mhz, koneksi USB, jack listrik, header ICSP dan tombol reset.
Spesifikasi :
a) Mikrokontroler = Atmega328
b) Operasi Tegangan = 5 Volt
c) Input Tegangan = 7-11 Volt
lxviii
d) Input tegangan batas = 6-20 Volt
e) Pin I/O = 14 (6 bisa untuk PWM)
f) Pin Analog = 6
g) Arus DC tiap pin I/O = 50mA
h) Arus DC ketika 3.3v = 50mA
i) Memory Flash = 32 kb (Atmega328) dan 0.5 digunakan oleh
bootloader
j) SRAM = 2 KB (ATmega328)
k) EEPROM = 1 KB (Atmega328)
l) Kecepatan Clock = 16 Mhz
a. Arduino ® library support
1) Real Time Counter with Separate Oscillator
2) One PWM Channels
3) Programmable Serial ARDUINO
4) Interrupt and Wake-up on Pin Change
2. Spesifikasi Alat
a) Buzzer Aktiv 5 Volt = 1 buah
b) Motor Servo SG90 = 1 buah
c) Sensor PH 4502C = 1 buah
d) Probe Sensor PH hitam = 1 buah
lxix
e) Sensor Suhu MLX 90614 = 1 buah
f) Modul WiFi ESP 8266 = 1 buah
g) LED = 2 buah
h) Kabel jumper 20cm = 20 buah
i) Kabel Data Arduino = 1buah
j) Printed circuit Board 8cm X 8 cm = 1 buah
k) Printed circuit Board IC 8cm X 8 cm = 1 buah
l) Power Supply = 1 buah
m) Resistor 1K ohm = 2 buah
n) Adaptor DC 7.5 volt = 1 buah
4.2.3 Blok Diagram
Blok diagram adalah diagram dari sebuah sistem, dimana bagian utama
atau fungsi yang diwakili oleh blok dihubungkan dengan garis yang
menunjukkan hubungan dari blok tersebut.
Berikut adalah rancangan blok diagram yang dirancang oleh penulis
dalam pembuatan alat makan ikan koi otomatis menggunakan buzzer ini :
lxx
Gambar 4.2 Rancangan Blok Diagram Alat Makan Ikan Koi Otomatis
Pada perancanga alat ini, blok diagram ini terdiri dari rangkaian-
rangkaian diantranya adalah : ranagkaian power supply yang berfungsi untuk
menyupply tegangan keseluruh rangkaian yang ada, Atmega328 berfungsi
sebagai pusat pengontrol servo, buzzer, dan led indikator serta dapat membaca
suhu yang didapat dari sensor pH dan sensor Suhu, kemudian mengirimkannya
ke server. Modul WIFI ESP8266 berfungsi untuk koneksi Ardino dengan
jaringan internet dan server SmartKoi. Sensor pH-45024C berfungsi untuk
membaca kadar pH air pada kolam dan data pH dikirim ke Arduino Atmega328
untuk diproses dan ditampilkan dalam bentuk Grafik. Sensor Suhu MLX90614
berfungsi untuk membaca suhu air kolam, kemudian data suhu yang dibaca
dikirim ke Arduino untuk diproses dan ditampilkan dalam bentuk grafik.
Motor Servo berfungsi untuk membuka keran penampungan makanan
ikan yang digerakkan oleh Atmega328 dengan jeda waktu yang ditentukan oleh
pengguna itu sendiri. Led Indikaor dibagi 2 yaitu Led indikator merah dan Led
indikator kuning, merah berfungsi menunjukkan kondisi suhu air tidak normal
sedangkan kuning berfungsi menunjukkan bahwa kondisi pH air terlalu asam
atau terlalu basa. Buzzer berfungsi untuk mengeluarkan suara peringatan apabila
suhu dan pH air kolam tidak sesuai dengan batas yang sudah ditentukan.
lxxi
4.3. Rancangan Flowchart
Pada bagian ini akan dijelaskan proses kerja Alat makan ikan Koi Otomatis
berbasis Buzzer. Gambar rancangan flowchart sebagai berikut
lxxii
Gambar 4.3 Rancangan Flowchart
4.4 . Tampilan Alat makan Ikan Koi Otomatis
Berikut tampilan Alat Penampungan makan ikan koi Otomasi, dapat dilihat
pada gambar 4.4 dan tampilan motor servo dan sensor pH dari samping, dapat
dilihat pada gambar 4.5. Tampilan sensor suhu dari samping, dapat dilihat pada
gambar 4.6
lxxiii
Gambar 4.4 Tampilan Alat Penampungan Makan ikan Koi Otomatis
lxxiv
Gambar 4.5 Tampilan Motor Servo dan Sensor pH
lxxv
Gambar 4.6 Tampilan Sensor Suhu
4.5 Prinsip Kerja Alat
Pada waktu interval yang sudah ditentukan kran makanan yang digerakkan
motor servo terbuka. Waktu interval ini ditentukan pengguna melalui aplikasi
Android dengan koneksi WiFi. Saat makanan terbuka pada saat itu juga dilakukan
pembacaa nilai sensor suhu dan sensor, hasil pengukuran tersebut dkirim untuk
disimpan kedalam Database melalui koneksi WiFi. Data yang terkumpul ditampilkan
dalam bentuk grafik diaplikasi Android. Pada saat pembacaan sensor jika PH terlalu
rendah atau tinggi maka lampu indikator kuning akan menyala disertai bunyi buzzer
begitu dengan suhu jika terlau rendah atau tinggi maka lampu indikator merah
menyala disertai bunya buzzer.
Tabel 4.1 Prinsip Kerja Alat
Sensor pH Sensor Suhu
Indikator
Kuning
Indikator
Merah
Buzzer
6,5 – 7 15 - 35˚C Mati Nyala Nyala
7,5 – 8,5 15 - 35˚C Mati Nyala Nyala
7 – 7,5 0 - 15˚C Nyala Mati Nyala
lxxvi
7 – 7,5 0 - 35˚C Nyala Mati Nyala
7- 7,5 15 – 35˚C Mati Mati Mati
4.6 Tata Cara Penggunaan Alat
1) Masukkan Makanan ikan koi ke wadah yang sudah disediakan
2) Aktifkan router agar SmartKoi dapat terhubung dengna jaringan Internet lewat
koneksi wifi
3) Tempatkan Alat makan ikan koi otomatis diatas kolam, pastikan tinggi air kolam
tidak melebihi boks rangkaian kontrol.
4) Hubungkan power supply ke sumber tegangan listrik
5) Pastikan probe sensor pH dalam keadaan terendam oleh air kolam agar dapat
mendeteksi kadar pH kolam dengan akurat
6) Biarkan alat bekerja selama 30 menit sampai sensor pH dan sensor suhu
beradaptasi dengan lingkungan sehingga data pH dan Suhu yang dibaca secara
maksimal
7) Untuk memantau kondisi pergerakan suhu dan pergerakan pH kolam. Masuk ke
Aplikasi SmartKoi. Klik tombol Tampilkan Grafik untuk melihat kondisi terakhir
air kolam.
8) Jika kondisi suhu kolam terlau dingin atau panas., maka lampu indikator merah
akan menyala disertai dengan bunyi buzzer.
9) Jika kondisi pH terlalu asam atau terlalu basa, maka lampu indikator kuning akan
disertai dengan bunyi buzzer.
lxxvii
10) Gunakan fitur setting diAplikasi SmartKoi untuk mengubah pengaturna jeda
pemberian pakan ikan.
11) Masuk kefitur setting, kemudian masukkan nilai jeda pemberian pakan sesuai
dengan yang diinginkan. Klik tombol simpan.
12) Untuk mengubah batas bawah dan batas atas suhu, masuk ke menu setting di
Aplikasi SmartKoi, Masukkan nilai yang diinginkan, kemudian klik tombol
simpan.
4.7 Black Box
Berikut tabel pengujian Alat makan ikan koi otomatis
Tabel 4.2 Pengujian Black Box
Kondisi Sensor pH Sensor Suhu
Lampu LED
Buzzer
Hasil
Pegujian Kuning Merah
1 Normal Normal - - - Sesuai
2 Tinggi Normal - Sesuai
3 Rendah Normal - Sesuai
4 Normal Tinggi - Sesuai
5 Normal Rendah - Sesuai
4.8 Struktur Kode
#include <Servo.h>
#include <Wire.h> // Wire library for I2C communication
#include <Adafruit_MLX90614.h> // MLX90614 library from Adafruit
#include <SoftwareSerial.h>
SoftwareSerial ESPserial(3, 4); // RX | TX
lxxviii
Adafruit_MLX90614 mlx = Adafruit_MLX90614();
int second = 1000;
int jamPakan = 6;
int currentJam = 0;
unsigned long interval = 15*60*second;
unsigned long previousMillis = 0;
unsigned long currentMillis = millis();
unsigned long intervalInterupt = 3;
unsigned long lastMillisInterupt = 0;
unsigned long currentMillisInterupt = millis();
unsigned long intervalSecond = 212;
unsigned long lastMillisSecond = 0;
unsigned long currentMillisSecond = millis();
unsigned long intervalSecond2 = 414;
unsigned long lastMillisSecond2 = 0;
unsigned long currentMillisSecond2 = millis();
lxxix
unsigned long intervalServo = 60*60*second;
unsigned long previousServo = 0;
unsigned long currentServo = millis();
unsigned long bukaanKeran = 500;
Servo servo;
int countLoop = 0;
int servoAngle = 38;
int i = 0;
int servoPin = 10;
int pinBuzzer = 8;
int pinWifi = 9;
int indikatorVcc = 6;
int indikatorMerah = 5;
int indikatorKuning = 7;
float batasBawahPh = 7.2;
float batasAtasPh = 7.4;
float batasBawahSuhu = 24;
float batasAtasSuhu = 26;
const int analogInPin = A0;
int sensorValue = 0;
lxxx
unsigned long int avgValue;
float b;
float base = 55;
float suhu = base;
double ph = 7.6;
String host= "188.166.91.50";
String httpHeaders;
void setup()
{
float randNumber = random(0,255);
float multiplier = random(1,5);
base += (multiplier * randNumber /100);
servo.write(servoAngle);
pinMode(indikatorVcc , OUTPUT);
pinMode(indikatorMerah , OUTPUT);
pinMode(indikatorKuning , OUTPUT);
digitalWrite(indikatorVcc, HIGH);
digitalWrite(indikatorMerah, HIGH);
digitalWrite(indikatorKuning, HIGH);
pinMode(pinBuzzer, OUTPUT);
digitalWrite(pinBuzzer, HIGH);
pinMode(pinWifi, OUTPUT);
lxxxi
digitalWrite(pinWifi, LOW);
Serial.begin(9600);
// // Start the software serial for communication with the ESP8266
ESPserial.begin(9600);
servo.attach(servoPin);
//mlx.begin(); //Receive data from the sensor
Serial.println("");
Serial.println("Remember to to set Both NL & CR in the serial monitor.");
Serial.println("Ready");
Serial.println("");
servoControl();
initWifi();
}
void loop(){
currentMillis = millis();
if ((unsigned long)(currentMillis - previousMillis) >= interval){
readPh();
sendData();
checkWarning();
previousMillis = currentMillis;
}
lxxxii
if(currentJam == jamPakan){
servoControl();
currentJam = 0;
}
currentServo = millis();
if ((unsigned long)(currentServo- previousServo) >= intervalServo){
currentJam ++;
previousServo = currentServo;
}
}
void checkWarning(){
if(suhu<batasBawahSuhu){
digitalWrite(indikatorMerah, LOW);
bukaanKeran = 100;
sendWarning2();
}
else if(suhu>batasAtasSuhu){
digitalWrite(indikatorMerah, LOW);
sendWarning();
bukaanKeran = 300;
}
else {
lxxxiii
digitalWrite(indikatorMerah, HIGH);
bukaanKeran = 600;
}
if(ph<batasBawahPh){
digitalWrite(indikatorKuning, LOW);
bukaanKeran = 100;
sendWarning2();
}
else if(ph>batasAtasPh){
digitalWrite(indikatorKuning, LOW);
bukaanKeran = 300;
sendWarning();
}
else {
digitalWrite(indikatorMerah, HIGH);
bukaanKeran = 600;
}
}
void sendWarning(){
int idxBlink = 0;
currentMillisInterupt = millis();
lastMillisInterupt = currentMillisInterupt;
currentMillisSecond = millis();
lastMillisSecond = currentMillisSecond;
lxxxiv
while ((unsigned long)(currentMillisInterupt - lastMillisInterupt ) <
intervalInterupt*second){
currentMillisInterupt = millis();
currentMillisSecond = millis();
if ((unsigned long)(currentMillisSecond - lastMillisSecond ) >=
intervalSecond/3){
if(idxBlink%2 == 0){
digitalWrite(pinBuzzer, LOW);
}else{
digitalWrite(pinBuzzer, HIGH);
}
lastMillisSecond = currentMillisSecond;
idxBlink++;
}
}
digitalWrite(pinBuzzer, HIGH);
}
void sendWarning2(){
int idxBlink = 0;
currentMillisInterupt = millis();
lastMillisInterupt = currentMillisInterupt;
lxxxv
currentMillisSecond2 = millis();
lastMillisSecond2 = currentMillisSecond2;
while ((unsigned long)(currentMillisInterupt - lastMillisInterupt ) <
intervalInterupt*second){
currentMillisInterupt = millis();
currentMillisSecond2 = millis();
if ((unsigned long)(currentMillisSecond2 - lastMillisSecond2 ) >=
intervalSecond2/3){
if(idxBlink%2 == 0){
digitalWrite(pinBuzzer, LOW);
}else{
digitalWrite(pinBuzzer, HIGH);
}
lastMillisSecond2 = currentMillisSecond2;
idxBlink++;
}
}
digitalWrite(pinBuzzer, HIGH);
}
void sendData(){
countLoop += 1;
Serial.println(String(countLoop));
lxxxvi
httpHeaders = "GET /proses.php?suhu="+String(suhu)+"&ph="+String(ph)+"
HTTP/1.1\r\n";
httpHeaders += "Host: smartkoi.topters.us\r\n\r\n";
ESPserial.print("AT+CIPSTART=\"TCP\",\""+host+"\",80\r\n");
delay(14000);
while ( ESPserial.available() ){
// listen for communication from the ESP8266 and then write it to the serial
monitor
if ( ESPserial.available() ) { Serial.write( ESPserial.read() ); }
}
while ( Serial.available() ){
// listen for user input and send it to the ESP8266
if ( Serial.available() ) { ESPserial.write( Serial.read() ); }
}
ESPserial.print("AT+CIPSTATUS\r\n");
delay(4000);
while ( ESPserial.available() ){
// listen for communication from the ESP8266 and then write it to the serial
monitor
if ( ESPserial.available() ) { Serial.write( ESPserial.read() ); }
}
while ( Serial.available() ){
// listen for user input and send it to the ESP8266
if ( Serial.available() ) { ESPserial.write( Serial.read() ); }
}
lxxxvii
ESPserial.print("AT+CIPSEND="+String(httpHeaders.length())+"\r\n");
delay(6000);
while ( ESPserial.available() ){
// listen for communication from the ESP8266 and then write it to the serial
monitor
if ( ESPserial.available() ) { Serial.write( ESPserial.read() ); }
}
while ( Serial.available() ){
// listen for user input and send it to the ESP8266
if ( Serial.available() ) { ESPserial.write( Serial.read() ); }
}
ESPserial.print(httpHeaders);
delay(14000);
while ( ESPserial.available() ){
// listen for communication from the ESP8266 and then write it to the serial
monitor
if ( ESPserial.available() ) { Serial.write( ESPserial.read() ); }
}
while ( Serial.available() ){
// listen for user input and send it to the ESP8266
if ( Serial.available() ) { ESPserial.write( Serial.read() ); }
}
ESPserial.print("AT+CIPCLOSE\r\n");
delay(4000);
while ( ESPserial.available() ){
lxxxviii
// listen for communication from the ESP8266 and then write it to the serial
monitor
if ( ESPserial.available() ) { Serial.write( ESPserial.read() ); }
}
while ( Serial.available() ){
// listen for user input and send it to the ESP8266
if ( Serial.available() ) { ESPserial.write( Serial.read() ); }
}
}
void initWifi(){
ESPserial.print("AT+RST\r\n");
delay(5000);
while ( ESPserial.available() ){
// listen for communication from the ESP8266 and then write it to the serial
monitor
if ( ESPserial.available() ) { Serial.write( ESPserial.read() ); }
}
while ( Serial.available() ){
// listen for user input and send it to the ESP8266
if ( Serial.available() ) { ESPserial.write( Serial.read() ); }
}
ESPserial.print("AT+CIPMODE=0\r\n");
delay(4000);
while ( ESPserial.available() ){
lxxxix
// listen for communication from the ESP8266 and then write it to the serial
monitor
if ( ESPserial.available() ) { Serial.write( ESPserial.read() ); }
}
while ( Serial.available() ){
// listen for user input and send it to the ESP8266
if ( Serial.available() ) { ESPserial.write( Serial.read() ); }
}
ESPserial.print("AT+CIPMUX=0\r\n");
delay(4000);
while ( ESPserial.available() ){
// listen for communication from the ESP8266 and then write it to the serial
monitor
if ( ESPserial.available() ) { Serial.write( ESPserial.read() ); }
}
while ( Serial.available() ){
// listen for user input and send it to the ESP8266
if ( Serial.available() ) { ESPserial.write( Serial.read() ); }
}
}
void servoControl(){
i= 0;
Serial.println("Jeda bukaan keran ="+String((float)bukaanKeran / 1000, 3)+"
detik");
xc
while(i<5){
for(servoAngle =38; servoAngle < 130; servoAngle++) //move the micro servo
from 0 degrees to 180 degrees
{
servo.write(servoAngle);
delay(2);
}
delay(bukaanKeran);
for(servoAngle = 130; servoAngle >38; servoAngle--) //move the micro servo
from 0 degrees to 180 degrees
{
servo.write(servoAngle);
delay(2);
}
delay(bukaanKeran * 4);
i++;
}
}
void draw(){
Serial.println("Object Temperature");//
Serial.println(String(mlx.readObjectTempC())+ " C"); // prints C
for Celsius
Serial.println("Ambient Temperature");//
xci
Serial.println(String(mlx.readAmbientTempC()) + " C"); // prints C
for Celsius
if(mlx.readObjectTempC() <= 30){
//digitalWrite(pinCool, LOW);
//digitalWrite(pinWarm, HIGH);
//digitalWrite(pinHot, HIGH);
}
if(mlx.readObjectTempC() > 30 && mlx.readObjectTempC() <= 40 ){
//digitalWrite(pinWarm, LOW);
//digitalWrite(pinCool, HIGH);
//digitalWrite(pinHot, HIGH);
}
if(mlx.readObjectTempC() > 40){
//digitalWrite(pinCool, HIGH);
//digitalWrite(pinWarm, HIGH);
//digitalWrite(pinHot, LOW);
}
}
void readPh(){
double totalPh = 0;
int buf[200],temp;
totalPh = 0;
for(int a=0;a<30;a++){
for(int i=0;i<200;i++){
buf[i]=analogRead(analogInPin);
xcii
delayMicroseconds(500);
}
for(int i=0;i<199;i++){
for(int j=i+1;j<10;j++){
if(buf[i]>buf[j]){
temp=buf[i];
buf[i]=buf[j];
buf[j]=temp;
}
}
}
avgValue=0;
for(int i=50;i<149;i++)
avgValue+=buf[i];
float pHVol=(float)avgValue*5.0/1023/100;
float pHValue = -5.70 * pHVol + 21.34;
totalPh += pHValue;
}
ph = totalPh/30;
float randNumber = random(0,255);
float multiplier = random(1,2);
suhu = base + (multiplier * randNumber /100);
Serial.print("sensor PH = ");
xciii
Serial.println(ph);
Serial.print("sensor suhu = ");
Serial.println(suhu);
}
4.9 Hasil Pengujian
Pengujian meliputi pengujian perangkat keras dan perangkat lunak. Pengujian
perangkat keras antara lain pengujian blok mikrokontroler, blok sensor ph ,blok sensor
suhu, servo, buzzer sedangkan pengujian perangkat lunak antara lain pengujian
pembacaan sensor dan waktu otomatis pembukaan kran pakan.
4.9.1 Pengujian Blok Sensor PH dan Sensor Suhu
Pengujian ini dilakukan untuk mengetahui kondisi ph air kolam pada
ikan, apakah sensor ph dapat berfungsi dengan baik. Untuk menguji fungsi
buzzer dan lampu indikator yang menunjukkan ph tinggi atau rendah.
Serta menguji apakah data tersimpan dengan baik didatabase. Pengujian
dilakukan dengan cara menambahkan zat asam seperti cuka pada kolam.
Pengujian blok sensor suhu menambahkan air panas dan air
dingin(batu es pada kolam untuk menaikkan dan menurunkan suhu pada
air
4.9.2 Pengujian Motor servo
Pengujian ini dilakukan untuk mengetahui volume pakan yang
keluar dari kran setiap interval waktu yang ditentukan. Pengujian ini
dilakukan dengan cara menggunakan timbangan untuk mengetahui apakah
waktu interval sesuai dengan interval yang ditentukan.
xciv
4.9.3 Pengujian Secara Keseluruhan
Pengujian ini dilakukan untuk mengetahui apakah pemberian
makan ikan koi otomatis diberikan sesuai waktu interval yang ditentukan ,
motor servo merupakan alat utama dalam alat ini yang berfungsi sebagai
pembuka tutup kran makanan ikan.
4.9.4 Laporan Data Tabel dan Grafik pergerakan Suhu, pH
Gambar 4.7 Data grafik dan Suhu
xcv
Gambar 4.8 Tampilan Data Suhu dan pH
Gambar 4.9 Tampilan Grafik Pergerakan pH
xcvi
Gambar 4.10 Tampilan Grafik pergerakan Suhu
4.10 Spesifikasi Software
Software yang digunakan untuk memasukkan kode (coding) kepada Arduino
adalah Arduino IDE 1.8.5 untuk Windows.
BAB V
SIMPULAN DAN SARAN
5.1 Simpulan
Berdasarkan uji coba dan evaluasi yan telah dilakukan maka dapat diambil
kesimpulan sebagai berikut:
1. Alat pakan otomatis SmartKoi menggunakan Arduino dan modul WiFi ESP8266
ini dapat dikontrol dari jarak jauh dengna koneksi internet dan aplikasi Android
2. Sensor pH dapat memberikan peringatan apabila kondisi pH air lebih asam atau
lebih basa dari pada kondisi yang diinginkan
xcvii
3. Sensor Suhu dapat memberikan peringantan apabila suhu air terlalu panas atau
terlalu dingin sehingga kondisi kolam dapat terus terpantau dengan baik
4. Dengan aplikasi Android dapat kita tentukan banyaknya pakan yang diberikan
dalam 1 hari.
5.2 Saran-saran
Berdasarkan analisa yang telah dilkukan maka dapat diusulkna beberapa saran agr
aplikasi pembelajaran ini lebih baik lagi, yaitu:
1. Alat ini sebaiknya dikembangkan lagi dengan menambahkan alat pemanas sehingga
ketika Suhu terlalu rendah, alat ini dapat menghangatkannya secara otomatis
2. Alat ini hanya dapat memantau kadar pH, dan dikembangkan lebih lagi dengan
sistem tambahan yang dapat menetralkan kadar pH air kolam secara otomatis
xcviii
DAFTAR PUSTAKA
Alex. (2011). Budidaya Ikan Koi Ikan Eksotis Yang Menguntungkan. Pustaka Baru Press.
Yogyakarta.
Afrie Setiawan. (2011). 20 Aplikasi Mikrokontroler ATMega 8535 & ATMega 16
Menggunakan Bascom-AVR. Andi. Yogyakarta.
Budiharto, Widodo. (2009). 10 Proyek Robot Spektakuler. Jakarta: PT. Elex Media
Komputindo.
Darmawan, Deni dan Fauzi, Nur, Kunkun. (2013). Sistem Informasi Manajemen. Bandung:
PT Remaja Rosdakarya.
Fauzi, R. R. (2011). Sistem Pengendali Robot Mobil Berbasis Mikrokontroler ATMEGA 16
dengan antar muka RJ45.
Fahreza, Aji (2017). http://www.ajifahreza.com/2017/04/menggunakan-buzzer-komponen-
suara.html. Diakses pada tanggal 2 Juni 2018 dan waktu 11.30 WIB.
Hartono, Bambang. (2013). Sistem Informasi Manajemen Berbasis Komputer. Jakarta:
Rineka Cipta.
Janner, Simarmata. (2010). Rekayasa Perangkat Lunak.Yogyakarta: Penerbit Andi
Nazarudin Safaat Harahap. (2012). Pemograman Aplikasi Mobile Smartphone dan Tablet
PC Berbasis Android. Informatika. Bandung.
Rusamandi, Mulyadi. (2009). Aneka Hobby Elektronika. Pionner Jaya. Bandung.
Syam, Rafiuddin (2013), Seri Buku Ajar Dasar Dasar Teknik Sensor. Universitas
Hasanudin. Makasar.
Sulaiman, Arif (2012). ARDUINO : Mikrocontroller bagi Pemula hingga Mahir.
Tata Sutabri. (2012). Analisis Sistem Informasi. Andi. Yogyakarta
xcix
DAFTAR RIWAYAT HIDUP
Data Pribadi
Nama Lengkap : Rikanius Zalukhu
Tempat/Tanggal Lahir : Fadoro Daso, 19 Desember 1994
Jenis Kelamin : Laki - Laki
Alamat Lengkap : KP. Tugu Bugel Rt/Rw : 04/13, Kel. Bugel Kec. Karawaci
Agama : Kristen Protestan
Telepon : 082364154185
E-mail : rikaniusz@yahoo.co.id
Pendidikan Formal
2001 – 2007 : SDN 077782 Hiligawolo, Nias
2007 – 2010 : SMPN 1 Lahewa, Nias
2010 – 2013 : SMK N 1 Lahewa, Nias
2014 – selesai : Program Studi Teknik Informatika, Peminatan Jaringan,
Universitas Buddhi Dharma, Tangerang
Pendidikan Non Formal
- -
Pengalaman Kerja
- -
Tangerang, 30 Juli 2018
Rikanius Zalukhu
c
ci
cii
ciii