Teknik Elektro

Modul 4 uP&uC


 

Sistem otomatisasi budidaya gurame




1. Pendahuluan [back]

       Budidaya ikan gurame merupakan salah satu sektor perikanan yang sangat potensial di Indonesia, mengingat tingginya permintaan pasar dan nilai ekonomis ikan ini. Meskipun demikian, budidaya gurame sering menghadapi berbagai tantangan seperti pengendalian kualitas air, pemberian pakan yang tepat waktu, dan pemantauan kondisi lingkungan kolam. Tantangan-tantangan ini dapat menghambat produktivitas dan efisiensi budidaya jika tidak dikelola dengan baik. 

    Untuk mengatasi masalah tersebut, pengembangan sistem otomatisasi budidaya gurame menjadi sangat penting. Sistem ini dirancang untuk mengotomatiskan berbagai aspek manajemen kolam ikan, mulai dari pengaturan kualitas air, kontrol ketinggian air, penerangan kolam, hingga pemberian pakan secara otomatis. Dengan menggunakan berbagai jenis sensor dan teknologi canggih, sistem otomatisasi ini dapat memantau dan mengendalikan kondisi kolam secara real-time, sehingga menciptakan lingkungan yang optimal bagi pertumbuhan dan kesehatan ikan gurame.



2. Tujuan 
[back]

a. Mengetahui Rangkaian Simulasi Aplikasi Kontrol Otomatis Budidaya Gurame Menggunakan Mikrokontroller Arduino Uno dan Berbagai Sensor
Mengembangkan rangkaian simulasi yang mengintegrasikan mikrokontroller Arduino Uno dengan berbagai sensor seperti rain sensor, ultrasonic sensor, sensor cahaya (LDR), infrared sensor, dan pH sensor untuk mengontrol berbagai aspek dalam budidaya gurame secara otomatis.

b. Mengetahui Rangkaian Simulasi Kontrol Otomatis Budidaya Gurame Menggunakan Software Proteus
Melakukan simulasi rangkaian kontrol otomatis budidaya gurame dengan menggunakan software Proteus untuk memastikan desain dan fungsionalitas sistem berjalan sesuai dengan yang diharapkan sebelum implementasi nyata.

c. Memenuhi Project Demo Modul 4 Praktikum Mikroprosesor dan Mikrokontroller
    Menyelesaikan tugas praktikum modul 4 dengan melakukan demonstrasi sistem otomatisasi budidaya gurame, menunjukkan aplikasi praktis penggunaan mikrokontroller dan sensor dalam meningkatkan efisiensi dan efektivitas budidaya.

3. Alat dan Bahan  [back]

A. Alat 

1. Mikrokontroller (Arduino Uno)
Spesifikasi :

Microcontroller                                          ATmega328P

Operating Voltage                                      5 V

Input Voltage (recommended)                   7 – 12 V

Input Voltage (limit)                                  6 – 20 V

Digital I/O Pins                                         14 (of which 6 provide PWM output)

PWM Digital I/O Pins                               6

Analog Input Pins                                      6

DC Current per I/O Pin                             20 mA

DC Current for 3.3V Pin                           50 mA

Flash Memory                                            32 KB of which 0.5 KB used by bootloader

SRAM                                                        2 KB

EEPROM                                                   1 KB

Clock Speed                                               16 MHz


2. Baterai 

Spesifikasi :

Model Number

1222 SW1 Kotak

Unit

1pc

Classification

Super Heavy Duty

Color

Hitam

Chemistry

Zinc Carbon

Battery Capacity

400 mAh

Battery Terminal Type

Button Top

Packaging Quantity

Bulk 2 pcs

Berat (Kg)

0.1



3. LCD (Liquid Crystal Display)
Spesifikasi :

·       Tegangan pengoperasian layar ini berkisar antara 4,7V hingga 5,3V

·       Bezel layarnya berukuran 72 x 25 mm

·       Arus operasi adalah 1mA tanpa lampu latar

·       Ukuran PCB modul adalah 80L x 36W x 10H mm

·       pengontrol HD47780

·       Warna LED untuk lampu latar adalah hijau atau biru

·       Jumlah kolom – 16

·       Jumlah baris – 2

·       Jumlah pin LCD – 16

·       Karakter – 32

·       Ia bekerja dalam mode 4-bit dan 8-bit

·       Kotak piksel setiap karakter berukuran 5x8 piksel

·       Ukuran font karakter adalah 0,125 Lebar x 0,200 tinggi


4. Adaptor 12V 2A

Spefisikasi

·                12Volt / 2Amp switching power supply (UL)

·                Input voltage: 100-240V AC 50/60Hz

·                Output voltage: 12v DC 2Amp

·                Connector: 5.5mm OD, 2.1mm ID, 10mm Long

·                Cord length: 1.5m


5. Micro Water Pump 12V (Pompa Air)

Spesifikasi Micro Water Pump 365B-7:

· Tegangan Kerja: 12V DC, yang biasanya dapat dihubungkan ke sumber daya seperti baterai 12V atau adaptor DC

· Desain Kecil: Memiliki desain yang kecil dan ringkas, sehingga mudah diintegrasikan dalam proyek-proyek miniatur atau aplikasi portabel.

·    Material: Umumnya terbuat dari bahan tahan korosi untuk keamanan dan keawetan pompa.

·  Kinerja: Meskipun ukurannya kecil, pompa ini dapat memberikan aliran air yang cukup untuk aplikasi kecil hingga menengah.

·  Kabel dan Konektor: Dilengkapi dengan kabel dan konektor untuk memudahkan penghubungan ke sumber daya atau kontroler

6. Motor Servo

Spesifikasi




B. Bahan
  1. Ultrasonic Sensor
  2. pH Sensor
  3. Rain Sensor
  4. Infrared Sensor
  5. LDR Sensor (Light Dependent Resistor)
  6. LED (merah)
  7. IC PCF8574
  8. Resistor 220 Ω
  9. Resistor 1000 Ω
  10. Jumper Cable
  11. Breadboard
1. Ultrasonic Sensor

Spesifikasi :

Operating Voltage

DC 5V

Operating Cuurent Standby

<2 mA

Operating Current

15 mA

Operating Frequency

40 KHz

Maximum Range

400 cm (4 m)

Minimun Range

2 cm

Ranging Accuracy

3mm

Measuring Angel

15 degree

Trigger Input Signal

10 mikroSecond TTL pulse

Dimension

45 x 20 x 15 mm




2. pH Sensor

Spesifikasi

PH Probe Sensor Pinout

TO – Temperature output

DO – 3.3V pH limit trigger

PO – PH analog output

Gnd – Gnd for PH probe

Gnd – Gnd for board

VCC – 5V DC

POT 1 – Analog reading offset (Nearest to BNC connector)

POT 2 – PH limit setting

3. Rain Sensor

Spesifikasi :

·       Modul sensor ini menggunakan bahan dua sisi berkualitas baik.

·       Anti-konduktivitas & oksidasi dengan penggunaan jangka panjang

·       Luas sensor ini berukuran 5cm x 4cm dan dapat dibuat dengan pelat nikel di bagian sampingnya

·       Sensitivitasnya dapat diatur dengan potensiometer

·       Tegangan yang dibutuhkan adalah 5V

·       Ukuran PCB kecil adalah 3,2cm x 1,4cm

·       Untuk memudahkan pemasangan, menggunakan lubang baut

·       Ia menggunakan komparator LM393 dengan tegangan lebar

·       Output dari komparator adalah bentuk gelombang bersih dan kapasitas penggerak di atas 15mA

4. Infrared Sensor


Nama

Sensor Infrared Proximity

Tipe

Module Sensor

Banyak Pin

3 Pin

Tegangan Masukan

3-5 Volt

Konsumsi Arus

23 mA saat 3.0V dan 43 mA saat 5.0V

Jarak pembacaan

2 - 30 cm (diatur dengan potensiometer)

Keluaran Sensor

Digital LOW

Lampu LED indikator

Ada


5. LDR Sensor


·       Supply : 3.3 V – 5 V (arduino available)

·        Output Type: Digital Output (0 and 1) 

·       Inverse output

·       Include IC LM393 voltage comparator

·       Sensitivitasnya dapat diatur 

·       Dimensi PCB size: 3.2 cm x 1.4 cm

·       Input Voltage: DC 3.3V - 5V

·       Output: Digital - Sensitivitas bisa diatur, dan analog

·       Ukuran PCB : 33 mm x 15 mm 


6. LED


Tegangan kerja / jatuh tegangan pada sebuah menurut warna yang dihasilkan:
  1. Infra merah : 1,6 V
  2. Merah : 1,8 V – 2,1 V
  3. Oranye : 2,2 V
  4. Kuning : 2,4 V
  5. Hijau : 2,6 V
  6. Biru : 3,0 V – 3,5 V
  7. Putih : 3,0 – 3,6 V
  8. Ultraviolet : 3,5 V

7. IC PCF8574




9. Resistor 220 ohm dan 1K ohm


Tegangan kerja / jatuh tegangan pada sebuah menurut warna yang dihasilkan:
  1. Infra merah : 1,6 V
  2. Merah : 1,8 V – 2,1 V
  3. Oranye : 2,2 V
  4. Kuning : 2,4 V
  5. Hijau : 2,6 V
  6. Biru : 3,0 V – 3,5 V
  7. Putih : 3,0 – 3,6 V
  8. Ultraviolet : 3,5 V

10. Jumper Cable



Spesifikasi

·       Length: 20cm

·       Male to female socket, male to male, and female to female

·       5 different colors:

o   Red

o   Yellow

o   Green

o   White

o   Black

·       Jumpers are made from 26 AWG wires

·       Material: Plastic


12. Relay

Relay sebagai pengatur otomatis untuk mengubung atau memutus rangkaian

Spesifikasi :

- Trigger Voltage (Voltage across coil) : 5V DC

- Trigger Current (Nominal current) : 70mA

- Maximum AC load current: 10A @ 250/125V AC

- Maximum DC load current: 10A @ 30/28V DC

- Compact 5-pin configuration with plastic moulding

- Operating time: 10msec Release time: 5msec

- Maximum switching: 300 operating/minute (mechanically)


4. Dasar Teori [back]

PWM (Pulse Width Modulation)

PWM (Pulse Width Modulation) adalah salah satu teknik modulasi dengan mengubah lebar pulsa (duty cylce) dengan nilai amplitudo dan frekuensi yang tetap. Satu siklus pulsa merupakan kondisi high kemudian berada di zona transisi ke kondisi low. Lebar pulsa PWM berbanding lurus dengan amplitudo sinyal asli yang belum termodulasi. 

Duty Cycle adalah perbandingan antara waktu ON (lebar pulsa High) dengan perioda. Duty Cycle biasanya dinyatakan dalam bentuk persen (%). 



Gambar 1. Duty Cycle

·       Duty Cycle = tON / ttotal

·       tON = Waktu ON atau Waktu dimana tegangan keluaran berada pada posisi tinggi (high atau 1) 

·       tOFF = Waktu OFF atau Waktu dimana tegangan keluaran berada pada posisi rendah (low atau 0) 

·       ttotal = Waktu satu siklus atau penjumlahan antara tON dengan tOFF atau disebut juga dengan “periode satu gelombang” 

Pada board Arduino Uno, pin yang bisa dimanfaatkan untuk PWM adalah pin yang diberi tanda tilde (~), yaitu pin 3, 5, 6, 9, 10, dan pin 11. Pin-pin tersebut merupakan pin yang bisa difungsikan untuk input analog atau output analog. Oleh sebab itu, jika akan menggunakan PWM pada pin ini, bisa dilakukan dengan perintah analogWrite();

PWM pada arduino bekerja pada frekuensi 500Hz, artinya 500 siklus/ketukan dalam satu detik. Untuk setiap siklus, kita bisa memberi nilai dari 0 hingga 255. Ketika kita memberikan angka 0, berarti pada pin tersebut tidak akan pernah bernilai 5 volt (pin selalu bernilai 0 volt). Sedangkan jika kita memberikan nilai 255, maka sepanjang siklus akan bernilai 5 volt (tidak pernah 0 volt). Jika kita memberikan nilai 127 (kita anggap setengah dari 0 hingga 255, atau 50% dari 255), maka setengah siklus akan bernilai 5 volt, dan setengah siklus lagi akan bernilai 0 volt. Sedangkan jika jika memberikan 25% dari 255 (1/4 * 255 atau 64), maka 1/4 siklus akan bernilai 5 volt, dan 3/4 sisanya akan bernilai 0 volt, dan ini akan terjadi 500 kali dalam 1 detik.


Gambar 2. Siklus Sinyal PWM pada Arduino

ADC (Analog Digital Converter)

ADC atau Analog to Digital Converter merupakan salah satu perangkat elektronika yang digunakan sebagai penghubung dalam pemrosesan sinyal analog oleh sistem digital. Fungsi utama dari fitur ini adalah mengubah sinyal masukan yang masih dalam bentuk sinyal analog menjadi sinyal digital dengan bentuk kode-kode digital. Ada 2 faktor yang perlu diperhatikan pada proses kerja ADC yaitu kecepatan sampling dan resolusi.

Kecepatan sampling menyatakan seberapa sering perangkat mampu mengkonversi sinyal analog ke dalam bentuk sinyal digital dalam selang waktu yang tertentu. Biasa dinyatakan dalam sample per second (SPS). Sementara Resolusi menyatakan tingkat ketelitian yang dimilliki. Pada Arduino, resolusi yang dimiliki adalah 10 bit atau rentang nilai digital antara 0 - 1023. Dan pada Arduino tegangan referensi yang digunakan adalah 5 volt, hal ini berarti ADC pada Arduino mampu menangani sinyal analog dengan tegangan 0 - 5 volt. Pada Arduino, menggunakan pin analog input yang diawali dengan kode A (A0- A5 pada Arduino Uno). Fungsi untuk mengambil data sinyal input analog menggunakan analogRead(pin);

 INTERUPT

Interupsi adalah proses dalam sistem mikrokontroler yang menghentikan prosea program utama akibat terjadinya pemicu tertentu dari suatu sumber interupsi dan memaksa sistem mikrokontroler untuk mengeksekusi blok program layanan interupsi. Bila terjadi interupsi, mikroprosesor akan menghentikan dahulu apa yang sedang dikerjakannya dan mengerjakan permintaan khusus tersebut.

 Microcontroller Arduino Uno

Arduino Uno adalah salah satu papan mikrokontroller yang paling populer dan banyak digunakan dalam komunitas elektronika dan pemrograman. Dikembangkan berdasarkan platform open-source, Arduino Uno dirancang untuk memudahkan pengembangan berbagai proyek elektronika. Berikut merupakan gambar konfigurasi pin beserta penjelasan Arduino Uno :


1)    Power USB, fungsi dari power usb pada modul Arduino adalah sebagai berikut:

-       Media pemberi tegangan listrik ke Arduino

-       Media tempat memasukkan program dari komputer ke Arduino

-       Sebagai media untuk komunikasi serial antara komputer dan Arduino R3 maupun sebaliknya.

2)    Crystal Oscillator, fungsi crystal oscillator adalah sebagai jantung Arduino yang membuat dan mengirimkan detak ke mikrokontroler agar beroperasi setiap detaknya.

3)    Voltage Regulator, berfungsi menstabilkan tegangan listrik yang masuk ke Arduino.

4)    Power Jack, fungsi dari power jack pada modul Arduino adalah sebagai media pemberi tegangan listrik ke Arduino apabila tak ingin menggunakan Power USB.

5)    Pin Reset, berfungsi untuk mereset Arduino agar program dimulai dari awal. Cara penggunannya yaitu dengan menghubungkan pin reset ini langsung ke ground.

6)    Pin Tegangan 3,3 Volt, berfungsi sebagai pin positif untuk komponen yang menggunakan tegangan 3,3 volt.

7)    Pin Tegangan 5 Volt, berfungsi sebagai pin positif untuk komponen yang menggunakan tegangan 5 volt. Pin 5 volt sering juga disebut pin VCC.

8)    Pin Ground (GND), fungsi pin GND adalah sebagai pin negatif pada tiap komponen yang dihubungkan ke Arduino.

9)    Pin Penambah Tegangan (VIN), berfungsi sebagai media pemasok listrik tambahan dari luar sebesar 5 volt bila tak ingin menggunakan Power USB atau Power Jack.

10) Pin Analog, berfungsi membaca tegangan dan sinyal analog dari berbagai jenis sensor untuk diubah ke nilai digital.

11) Main Microcontroller, berfungsi sebagai otak yang mengatur pin-pin pada Arduino.

12) Tombol Reset, komponen pendukung Arduino yang berfungsi untuk mengulang program dari awal dengan cara menekan tombol.

13) Pin ICSP (In-Circuit Serial Programming), berfungsi untuk memprogram mikrokontroler seperti Atmega328 melalui jalur USB Atmega16U2.

14) Lampu Indikator Power, berfungsi sebagai indikator bahwa Arduino sudah mendapatkan suplai tegangan listrik yang baik.

15) Lampu TX (transmit), berfungsi sebagai penanda bahwa sedang terjadi pengiriman data dalam komunikasi serial.

16) Lampu RX (receive), berfungsi sebagai penanda bahwa sedang terjadi penerimaan data dalam komunikasi serial

17) Pin Input/Output Digital, berfungsi untuk membaca nilai logika 1 dan 0 atau mengendalikan komponen output lain seperti LED, relay, atau sejenisnya. Pin ini termasuk paling banyak digunakan saat membuat rangkaian.

Untuk pin yang berlambang “~” artinya dapat digunakan untuk membangkitkan PWM (Pulse With Modulation) yang fungsinya bisa mengatur tegangan output. Biasanya digunakan untuk mengatur kecepatan kipas atau mengatur terangnya cahaya lampu.

18) Pin AREF (Analog Reference), fungsi pin Arduino Uno yang satu ini untuk mengatur tegangan referensi eksternal yang biasanya berada di kisaran 0 sampai 5 volt.

19) Pin SDA (Serial Data), berfungsi untuk menghantarkan data dari modul I2C atau yang sejenisnya.

20) Pin SCL (Serial Clock), berfungsi untuk menghantarkan sinyal waktu (clock) dari modul I2C ke Arduino.

   

KOMUNIKASI ARDUINO

1 1)  Universal Asynchronous Receiver Transmitter (UART)

UART (Universal Asynchronous Receiver-Transmitter) adalah bagian perangkat keras komputer yang menerjemahkan antara bit-bit paralel data dan bit-bit serial. UART biasanya berupa sirkuit terintegrasi yang digunakan untuk komunikasi serial pada komputer atau port serial perangkat periperal.


Data dikirimkan secara paralel dari data bus ke UART1. Pada UART1 ditambahkan start bit, parity bit, dan stop bit kemudian dimuat dalam satu paket data. Paket data ditransmisikan secara serial dari Tx UART1 ke Rx UART2. UART2 mengkonversikan data dan menghapus bit tambahan, kemudia di transfer secara parallel ke data bus penerima.

 

2 2) Serial Peripheral Interface (SPI)

Serial Peripheral Interface (SPI) merupakan salah satu mode komunikasi serial synchrounous kecepatan tinggi yang dimiliki oleh ATmega 328. Komunikasi SPI membutuhkan 3 jalur yaitu MOSI, MISO, dan SCK. Melalui komunikasi ini data dapat saling dikirimkan baik antara mikrokontroller maupun antara mikrokontroller dengan peripheral lain di luar mikrokontroler.

·       MOSI : Master Output Slave Input Artinya jika dikonfigurasi sebagai master maka pin MOSI sebagai output tetapi jika dikonfigurasi sebagai slave maka pin MOSI sebagai input.

·       MISO : Master Input Slave Output Artinya jika dikonfigurasi sebagai master maka pin MISO sebagai input tetapi jika dikonfigurasi sebagai slave maka pin MISO sebagai output.

·       SCLK : Clock Jika dikonfigurasi sebagai master maka pin CLK berlaku sebagai output tetapi jika dikonfigurasi sebagai slave maka pin CLK berlaku sebagai input.

·       SS/CS : Slave Select/ Chip Select adalah jalur master memilih slave mana yang akan dikirimkan data.

Cara Kerja Komunikasi SPI :


Sinyal clock dialirkan dari master ke slave yang berfungsi untuk sinkronisasi. Master dapat memilih slave mana yang akan dikirimkan data melalui slave select, kemudian data dikirimkan dari master ke slave melalui MOSI. Jika master butuh respon data maka slave akan mentransfer data ke master melalui MISO

 

3 3) Inter Integrated Circuit (I2C)

Inter Integrated Circuit atau sering disebut I2C adalah standar komunikasi serial dua arah menggunakan dua saluran yang didisain khusus untuk mengirim maupun menerima data. Sistem I2C terdiri dari saluran SCL (Serial Clock) dan SDA (Serial Data) yang membawa informasi data antara I2C dengan pengontrolnya.

Cara Kerja Komunikasi I2C :


Pada I2C, data ditransfer dalam bentuk message yang terdiri dari kondisi start, Address Frame, R/W bit, ACK/NACK bit, Data Frame 1, Data Frame 2,  dan kondisi Stop.

·  Kondisi start dimana saat pada SDA beralih dari logika high ke low sebelum SCL.

· Kondisi stop dimana saat pada SDA beralih dari logika low ke high sebelum SCL.

·   R/W bit berfungsi untuk menentukan apakah master mengirim data ke slave atau meminta data dari slave. (logika 0 = mengirim data ke slave, logika 1 = meminta data dari slave)

·       ACK/NACK bit berfungsi sebagai pemberi kabar jika data frame ataupun address frame telah diterima receiver.


INFARARED SENSOR

Sensor IR adalah perangkat elektronik yang mendeteksi radiasi IR yang menimpanya. Sensor jarak(digunakan pada ponsel layar sentuh dan robot penghindar tepi), sensor kontras (digunakan pada robot yang mengikuti garis), dan penghitung/sensor penghalang (digunakan untuk menghitung barang dan alarm pencuri) adalah beberapa aplikasi yang melibatkan sensor IR.

Cara Kerja Infrared Sensor

Konsep dasar dari sensor IR yang digunakan untuk mendeteksi suatu benda adalah dengan cara mentrasmisikan sinyal infrared (IR trasmiter) kemudian sinyal inframerah ini dipantulkan oleh permukaan suatu objek dan sinyal diterima oleh penerima infrared (IR recevier).

Warna Hitam dan Putih yang digunakan sebagai IR trasmiter dan IR recevier adalah warna universal bahwa warna hitam menyerap atau menerima inframerah dan warna putih mencerminkan keseluruhan insiden radiasi di atasnya. Berdasarkan prinsip ini, posisi kedua dari kedua LED IR dan fotodioda ditempatkan berdampingan. Ketika IR trasmiter memancarkan radiasi inframerah, karena tidak ada pembatas antara trasmiter dan recevier, radiasi yang dipancarkan harus dipantulkan kembali ke fotodioda setelah menabrak objek apa pun. Permukaan benda dapat dibagi menjadi dua jenis: permukaan reflektif dan permukaan non-reflektif. Jika permukaan objek bersifat reflektif, yaitu putih atau warna terang lainnya, sebagian besar radiasi infrared akan dipantulkan kembali dan mencapai fotodioda. Tergantung pada intensitas radiasi yang dipantulkan kembali, kemudian arus mengalir di fotodioda.

Jika permukaan objek tidak bersifat reflektif, yaitu hitam atau warna gelap lainnya, ia menyerap hampir semua radiasi inframah yang dipancarkan IR LED. Karena tidak ada radiasi yang dipantulkan, tidak ada insiden radiasi pada fotodioda dan ketahanan fotodioda tetap lebih tinggi sehingga tidak ada arus mengalir. Situasi ini mirip dengan tidak ada objek sama sekali.


Konfigurasi Pin

 


Konfigurasi pin infra red (IR) receiver atau penerima infra merah tipe TSOP adalah output (Out), Vs (VCC +5 volt DC), dan Ground (GND). Sensor penerima inframerah TSOP ( TEMIC Semiconductors Optoelectronics Photomodules ) memiliki fitur-fitur utama yaitu fotodiode dan penguat dalam satu chip, keluaran aktif rendah, konsumsi daya rendah, dan mendukung logika TTL dan CMOS.

 Detektor infra merah atau sensor inframerah jenis TSOP (TEMIC Semiconductors Optoelectronics Photomodules) adalah penerima inframerah yang telah dilengkapi filter frekuensi 30-56 kHz, sehingga penerima langsung mengubah frekuensi tersebut menjadi logika 0 dan 1. Jika detektor inframerah (TSOP) menerima frekuensi carrier tersebut, maka pin keluarannya akan berlogika 0. Sebaliknya, jika tidak menerima frekuensi carrier tersebut, maka keluaran detektor inframerah (TSOP) akan berlogika.

Grafik Respon Infrared Sensor



         RAIN SENSOR

Sensor hujan adalah salah satu jenis perangkat switching yang digunakan untuk mendeteksi curah hujan. Cara kerjanya seperti saklar dan prinsip kerja sensor ini adalah, setiap kali terjadi hujan maka saklar akan tertutup normal. Modul sensor hujan mencangkup garis berlapis nikel dan bekerja berdasarkan prinsip resistensi. Modul sensor ini memungkinkan untuk mengukur kelembapan melalui pin keluaran analog & memberikan keluaran digital saat ambang batas kelembapan terlampaui.




   Cara Kerja Rain Sensor :

          Modul ini mirip dengan IC LM393 karena didalamnya terdapat modul elektronik dan juga PCB. Di sini PCB digunakan untuk mengumpulkan tetesan air hujan. Ketika hujan turun di papan, maka itu menciptakan jalur resistansi paralel untuk dihitung melalui penguat operational. Sensor ini merupakan dipol resistif, dan berdasarkan kelembapan saja sensor ini menunjukkan resistansi. Misalnya, ketahanannya lebih besar saat kering dan ketahanannya lebih kecil saat basah.

          Sensor ini jika terkena air pada papan sensornya maka resistansinya akan berubah, semakin banyak semakin kecil dan sebaliknya. Pada sensor ini, terdapat integrated circuit atau IC (komponen dasar yang terdiri dari resistor, transistor, dan lain-lain) komparator yang berfungsi memberikan sinyal berupa logika ‘on’ dan ‘off’.

Konfigurasi Pin :


Konfigurasi pin sensor ini ditunjukkan di bawah ini. Sensor ini mencakup empat pin yang meliputi berikut ini

·       Pin1 (VCC): Ini adalah pin 5V DC

·       Pin2 (GND): ini adalah pin GND (ground).

·       Pin3 (DO): Ini adalah pin keluaran rendah/tinggi

·       Pin4 (AO): Ini adalah pin keluaran analog

Grafik Respon Sensor Hujan :





                     WATER PH SENSOR

Senso     Sensor pH merupakan salah satu alat yang penting untuk mengukur pH dan biasa digunakan dalam pemantauan kualitas air. Sensor jenis ini mampu mengukur alkalinitas dan keasaman dalam air dan larutan lainnya. Jika digunakan dengan benar, sensor pH dapat menjamin keamanan dan kualitas produk dan proses yang terjadi di air limbah atau pabrik.

Cara Kerja Water pH Sensor

Cara bekerja dari sensor pH air yang utama berada di bagian sensor probe dengan material terbuat dari elektroda kaca, dimana pada elektroda kaca tersebut terdapat larutan HCL yang terdapat pada bagian ujung sensor probe, sensor probe tersebit akan mengukur besaran nilai ion H3O + pada suatu larutan sehingga dapat mengetahui kadar PH pada suatu larutan/cairan Elektroda sensor pada sensor PH air terbentuk dari bahan lapisan kaca yang sensitif dengan impendasi yang kecil oleh sebab itu dapat mendapatkan hasil pembacaaan dan penilaian yang stabil dan cepat pada suhu cairan/larutan tinggi maupun rendah. Hasil dari pembacaan nilai sensor PH bisa didapatkan oleh mikrokontroler dengan menggunakan antarmuka PH 2.0 yang sudah ada pada modul sensor PH air. Sensor PH air ini sangat baik untuk digunakan dalam melakukan pembacaan kadar PH cairan dengan interval waktu yang lama.

Konfigurasi Pin

Grafik Respon Sensor



ULTRASONIC SENSOR

Sensor ultrasonik merupakan sensor yang menggunakan gelombang ultrasonik. Gelombang ultrasonik yaitu gelombang yang umum digunakan untuk mendeteksi keberadaan suatu benda dengan memperkirakan jarak antara sensor dan benda tersebut. Sensor ini berfungsi untuk mengubah besaran fisis (bunyi) menjadi besaran listrik begitu pula sebaliknya.


Sensor ultrasonik HC-SR04 merupakan sensor siap pakai yang berfungsi sebagai pengirim, penerima dan pengontrol gelombang ultrasonik. Sensor ini bisa digunakan untuk mengukur jarak benda dari 2 cm – 4 m dengan akurasi 3 mm. Sensor ultrasonik memiliki 4 pin, pin Vcc, Gnd, Trigger, dan Echo. Pin Vcc digunakan sebagai listrik positif dan Gnd sebagai ground. Pin Trigger digunakan untuk trigger keluarnya sinyal dari sensor dan pin Echo untuk menangkap sinyal pantul dari benda.

Cara menggunakan sensor ini yaitu ketika diberikan tegangan positif pada pin Trigger selama 10uS, maka sensor akan mengirimkan 8 step sinyal ultrasonik dengan frekuensi 40 kHz. Selanjutnya, sinyal akan diterima pada pin Echo. Untuk mengukur jarak benda yang memantulkan sinyal tersebut, maka selisih waktu ketika mengirim dan menerima sinyal digunakan untuk menentukan jarak benda tersebut.

Konfigurasi Pin

Grafk HC SR-04 Ultrasonic Sensor


 

LDR SENSOR

Sensor Cahaya LDR (Light Dependent Resistor) adalah salah satu jenis resistor yang dapat mengalami perubahan resistansinya apabila mengalami perubahan penerimaan cahaya. Modul sensor cahaya bekerja manghasilkan output yang mendeteksi nilai intensitas cahaya. Perangkat ini sangat cocok digunakan untuk project yang berhubungan dengan cahaya seperti nyala mati lampu.

Cara Kerja

LDR dapat dipasang pada aneka rangkaian elektronika untuk memutuskan dan menyambungkan aliran listrik berdasarkan cahaya. Semakin banyak cahaya yang mengenai LDR, maka nilai resistansinya akan menurun. Semakin sedikit cahaya yang mengenai LDR, maka nilai resistansinya akan meningkat.

Konfigurasi Pin

·       VCC: Tegangan 3.3V-5V eksternal (dapat langsung dihubungkan ke 5V MCU dan 3.3V MCU)

·       GND: GND Eksternal

·       D0 TTL : antarmuka output papan digital kecil (0 dan 1)

·       VCC Light : lampu indikator sensor aktif

·       D0 Output light : lampu indikator ketika ouput signal LOW/HIGH

·       Potensio : menaikkan atau menurunkan sensifitas sensor

Grafik Respon Sensor

1

 MOTOR SERVO

Motor servo adalah jenis motor DC dengan sistem umpan balik tertutup yang terdiri dari sebuah motor DC, serangkaian gear, rangkaian kontrol, dan juga potensiometer. Jadi motor servo sebenarnya tak berdiri sendiri, melainkan didukung oleh komponen-komponen lain yang berada dalam satu paket.


Berikut ini beberapa kelebihan dan kekurangan motor servo.

1.  Kelebihan Motor Servo

a.  Daya yang dihasilkan sebanding dengan berat atau ukuran motor.

b.  Penggunaan arus listrik sebanding dengan beban.

c.  Tidak bergetar saat digunakan.

d.  Tidak mengeluarkan suara berisik saat dalam kecepatan tinggi.

e.  Resolusi dan akurasi dapat diubah dengan mudah.

2.  Kekurangan Motor Servo

a.  Harga relatif lebih mahal dibanding motor DC lainnya.

b.  Bentuknya cukup besar karena satu paket.

Prinsip Kerja Motor Servo

Sebenarnya prinsip kerja dari motor servo tak jauh berbeda dibanding dengan motor DC yang lain. Hanya saja motor ini dapat bekerja searah maupun berlawanan jarum jam. Derajat putaran dari motor servo juga dapat dikontrol dengan mengatur pulsa yang masuk ke dalam motor tersebut.

Motor servo akan bekerja dengan baik bila pin kontrolnya diberikan sinyal PWM dengan frekuensi 50 Hz. Frekuensi tersebut dapat diperoleh ketika kondisi Ton duty cycle berada di angka 1,5 ms. Dalam posisi tersebut rotor dari motor berhenti tepat di tengah-tengah alias sudut nol derajat atau netral.

Pada saat kondisi Ton duty cycle kurang dari angka 1,5 ms, maka rotor akan berputar berlawanan arah jarum jam. Sebaliknya pada saat kondisi Ton duty cycle lebih dari angka 1,5 ms, maka rotor akan berputar searah jarum jam. Berikut ini adalah gambar atau skema pulsa kendali motor servo.


MICRO WATER PUMP 12V 

Micro water pump 365B-7 adalah pompa air kecil yang beroperasi pada tegangan 12V. Ini adalah pompa air elektrik yang dirancang untuk aplikasi yang memerlukan sirkulasi atau pemompaan cairan. Berikut adalah beberapa informasi umum tentang micro water pump 365B-7.

Cara Penggunaan

·     Hubungkan Kabel: Hubungkan kabel pompa ke sumber daya 12V DC yang sesuai.

·    Letakkan dalam Cairan: Tempatkan pompa dalam cairan yang ingin dipompa, seperti dalam wadah air atau proyek sirkulasi air.

·     Kontrol Aliran (Opsional):

Jika diperlukan, gunakan katup atau pengatur aliran untuk mengontrol laju aliran air. 

LCD (LIQUID CRYSTAL DISPLAY)

LCD atau Liquid Crystal Display adalah suatu jenis media display (tampilan) yang menggunakan kristal cair (liquid crystal) untuk menghasilkan gambar yang terlihat. Teknologi Liquid Crystal Display (LCD) atau Penampil Kristal Cair sudah banyak digunakan pada produk-produk seperti layar Laptop, layar Ponsel, layar Kalkulator, layar Jam Digital, layar Multimeter, Monitor Komputer, Televisi, layar Game portabel, layar Thermometer Digital dan produk-produk elektronik lainnya.


Teknologi Display LCD ini memungkinkan produk-produk elektronik dibuat menjadi jauh lebih tipis jika dibanding dengan teknologi Tabung Sinar Katoda (Cathode Ray Tube atau CRT). Jika dibandingkan dengan teknologi CRT, LCD juga jauh lebih hemat dalam mengkonsumsi daya karena LCD bekerja berdasarkan prinsip pemblokiran cahaya sedangkan CRT berdasarkan prinsip pemancaran cahaya. Namun LCD membutuhkan lampu backlight (cahaya latar belakang) sebagai cahaya pendukung karena LCD sendiri tidak memancarkan cahaya. Beberapa jenis backlight yang umum digunakan untuk LCD diantaranya adalah backlight CCFL (Cold cathode fluorescent lamps) dan backlight LED (Light-emitting diodes). Berikut merupakan tabel internal pin connection dari LED:

Konfigurasi Pin


LCD memiliki 16 pin (kaki) yaitu :

§  VSS, dihubungkan ke ground

§  VCC, dihubungkan pada tegangan sumber 5 volt, karena LCD bekerja pada tegangan 5 volt.

§  VEE, dihubungkan ke potensiometer atau trimpot untuk mengatur gelap terangnya layar LCD. Pin ini disambungkan ke ground jika menginginkan layar LCD terang maksimal.

§  Register Select(RS), dihubungkan ke mikrokontroler berfungsi mengontrol mode LCD. Jika RS diberikan logika 0 artinya LCD disetting untuk menerima perintah. Jika RS diberikan logika 1 artinya LCD disetting untuk menerima data.

§  Read/Write(RW), dihubungkan ke mikrokontroler berfungsi mengontrol mode LCD. Jika RW diberikan logika 1 mikrokontroler akan membaca data pada memori LCD. Jika RW diberikan logika 0, mikrokontroler akan menuliskan data pada LCD. Pin RW seringkali digroundkan untuk memberikan nilai 0, jika difungsikan sebagai display saja.

§  Enable, dihubungkan dengan mikrokontroler sebagai toggle pengiriman data dan perintah ke LCD

§  Pin D0 – D7, merupakan pin data, untuk mengirimkan data yang akan ditampilkan pada LCD. Tedapat dua mode penyambungan LCD berkaitan dengan pin ini. Mode 8 bit, menggunakan keseluruhan pin data. Mode 4 bit, menggunakan 4 pin data saja yaitu: D4, D5, D6 dan D7.

§  LED, untuk backlight. Jika diinginkan menyalakan backlight maka LED+ dihubungkan ke tegangan 5 Volt dan LED- dihubungkan ke ground.

Cara Kerja

Prinsip kerja dasar LCD adalah meneruskan cahaya dari lapisan ke lapisan melalui modul. Modul-modul ini akan bergetar & menyejajarkan posisinya pada 90 o yang memungkinkan lembaran terpolarisasi memungkinkan cahaya melewatinya. Molekul-molekul ini bertanggung jawab untuk melihat data pada setiap piksel. Setiap piksel menggunakan metode penyerapan cahaya untuk menggambarkan angka tersebut. Untuk menampilkan nilainya, posisi molekul harus diubah sesuai sudut cahaya.

Jadi pembelokan cahaya ini akan membuat mata manusia memperhatikan data yang akan menjadi bahan dimanapun cahaya tersebut diserap. Di sini, data ini akan disalurkan ke molekul & akan tetap berada di sana hingga molekul tersebut berubah.

BATERAI

Baterai (Battery) adalah sebuah alat yang dapat merubah energi kimia yang disimpannya menjadi energi Listrik yang dapat digunakan oleh suatu perangkat Elektronik. Hampir semua perangkat elektronik yang portabel seperti Handphone, Laptop, Senter, ataupun Remote Control menggunakan Baterai sebagai sumber listriknya. Dengan adanya Baterai, kita tidak perlu menyambungkan kabel listrik untuk dapat mengaktifkan perangkat elektronik kita sehingga dapat dengan mudah dibawa kemana-mana. Dalam kehidupan kita sehari-hari, kita dapat menemui dua jenis Baterai yaitu Baterai yang hanya dapat dipakai sekali saja (Single Use) dan Baterai yang dapat di isi ulang (Rechargeable).


Baterai dalam sistem PV mengalami berulang kali siklus pengisian dan pengosongan selama umur pakainya. Siklus hidup (cycle life) baterai adalah banyaknya pengisian dan pengosongan hingga kapasitas baterai turun (melemah) dan tersisa 80% dari kapasitas nominalnya. Pabrik baterai biasanya mencantumkan siklus hidup pada spesifikasi teknis baterai. Mencantumkan satu nilai siklus hidup (cycle life) sebenarnya terlalu menyederhanakan informasi, karena siklus hidup baterai juga tergantung pada suhu baterai.

Dari grafik di atas, terlihat pada suhu operasional baterai yang lebih rendah, siklus hidup baterai lebih lama. Siklus hidup baterai juga tergantung dari DoD, artinya baterai yang dikosongkan hanya 50% dari kapasitasnya, berumur lebih lama jika dikosongkan hingga 80%, namun membuat sistem menjadi lebih mahal, karena membutuhkan kapasitas baterai lebih besar untuk mengakomodasi kebutuhan yang sama.

 

IC PCF8574 

Merupakan modul expansion board untuk mengatur hingga 8 pin I/O. menggunakan komunikasi secara I2C, artinya dengan 2 pin (SDA/SCL) maka kita dapat mengatur hingga 8 pin yg dapat dijadikan input output. modul ini juga dapat di cascade, hingga 8 modul atau hingga 64 pin input output..

Konfigurasi Pin 



1.       Pin 16 IC ini berupa VCC yang dapat beroperasi pada tegangan 2.5V hingga 6V

2.       Pin 8 adalah GND

3.       Pin 4~7 dan 9~12 adalah pin I/O P0 hingga P7 8-Paralel (artinya Anda dapat menggunakan semua 8 pin sekaligus). Masing-masing pin I/O dua arah ini dapat digunakan sebagai input atau output tanpa menggunakan sinyal kontrol arah data. Saat dihidupkan, semua pin I/O ini berada pada kondisi HIGH.

4.       Pin 15 untuk input atau output data serial I2C (Hubungkan ke VCC melalui resistor pull-up) dan

5.       Pin 14 untuk input jam I2C (Hubungkan ke VCC melalui resistor pull-up)

6.       Pin 1, 2, dan 3 atau A0, A1 dan A2 memungkinkan kita menentukan alamat kemunculan PCF8574 pada bus I2C dengan mengubahnya menjadi TINGGI. Alamat defaultnya adalah 0x20. Secara default semua pin ini di-ground atau LOW. Resistor pull-up tidak diperlukan untuk pin ini.

7.       Pin 13 untuk Output Interupsi. Hubungkan ke VCC menggunakan resistor pull-up.

·         IC ini memiliki Konsumsi "Arus Siaga Rendah" yang sangat hanya 10μA.

·         SDA, SLC dan pin Interrupt semuanya harus ditarik menggunakan resistor pull-up

·         Ada varian kedua dari IC ini yang tersedia di pasaran yang disebut PCF8574A. Perbedaan utamanya adalah skema pengalamatannya. Empat bit pertama dari alamat 7-bit PCF8574 adalah 0100, dan untuk PCF8574A adalah 0111. Tiga bit terbawah adalah pengaturan pada pin perangkat A2, A1, dan A0.

·         PCF8574 dan PCF8574A memiliki arus tenggelam maksimum 25mA. Dalam aplikasi yang memerlukan drive tambahan, dua pin port dapat dihubungkan bersama untuk menyerap arus hingga 50mA.

ADAPTOR 12V 2 A DC

Adaptor adalah sebuah perangkat berupa rangkaian elektronika untuk mengubah tegangan listrik yang besar menjadi tegangan listrik lebih kecil, atau rangkaian untuk mengubah arus bolak-balik (arus AC) menjadi arus searah (arus DC). Adaptor / power supplay merupakan komponen inti dari peralatan elektronik. Adaptor digunakan untuk menurunkan tegangan AC 22 Volt menjadi kecil antara 3 volt sampai 12 volt sesuai kebutuhan alat elektronika. 

Komponen  

    
RELAY


Relay adalah Saklar (Switch) yang dioperasikan secara listrik dan merupakan komponen Electromechanical (Elektromekanikal) yang terdiri dari 2 bagian utama yakni Elektromagnet (Coil) dan Mekanikal (seperangkat Kontak Saklar/Switch). Relay menggunakan Prinsip Elektromagnetik untuk menggerakkan Kontak Saklar sehingga dengan arus listrik yang kecil (low power) dapat menghantarkan listrik yang bertegangan lebih tinggi. Sebagai contoh, dengan Relay yang menggunakan Elektromagnet 5V dan 50 mA mampu menggerakan Armature Relay (yang berfungsi sebagai saklarnya) untuk menghantarkan listrik 220V 2A.


Konfigurasi Pin


- Coil End 1 : Used to trigger(On/Off) the Relay, Normally one end is connected to 5V and the other        end to ground.

- Coil End 2 : Used to trigger(On/Off) the Relay, Normally one end is connected to 5V and the other        end to ground.

- Common (COM) : Common is connected to one End of the Load that is to be controlled.

- Normally Close (NC) : The other end of the load is either connected to NO or NC. If connected to NC    the load remains connected before trigger.

- Normally Open (NO) : The other end of the load is either connected to NO or NC. If connected to NO    the load remains disconnected before trigger.

Berikut merupakan grafik pengukuran tegangan pada driver relay kondisi sensor aktif:

    
RESISTOR

Resistor merupakan salah satu komponen yang digunakan dalam sebuah sirkuit atau rangkaian elektronik. Resistor berfungsi sebagai resistansi/ hambatan yang mampu mengatur atau mengendalikan tegangan dan arus listrik rangkaian. Resistor mempunyai nilai resistansi (tahanan) tertentu yang dapat memproduksi tegangan listrik di antara kedua pin dimana nilai tegangan terhadap resistansi tersebut berbanding lurus dengan arus yang mengalir, berdasarkan persamaan hukum Ohm : 


V = I.R

R = V/R




BATERAI 9V

Baterai kotak, atau sеring disеbut batеrai 9V adalah jеnis batеrai yang umum digunakan dalam bеrbagai pеrangkat еlеktronik, tеrmasuk rеmotе control, alarm, mainan, dan instrumеn musik. Batеrai ini mеnghasilkan tеgangan 9 volt, yang mеmbuatnya idеal untuk pеrangkat yang mеmbutuhkan daya yang cukup bеsar.  

Cara Kerja

Batеrai kotak 9V adalah batеrai voltasе tеtap, yang bеrarti bahwa tеgangannya tidak bеrubah sеiring waktu. Batеrai ini tеrdiri dari еnam sеl voltasе kеcil yang dihubungkan sеcara sеri. Sеtiap sеl mеnghasilkan tеgangan 1,5 volt, sеhingga batеrai kotak 9V mеnghasilkan tеgangan total 9 volt.

Batеrai kotak 9V bеkеrja dеngan mеmanfaatkan rеaksi kimia antara logam dan еlеktrolit. Dalam batеrai alkalinе, logam yang digunakan adalah sеng, sеdangkan еlеktrolitnya adalah campuran air dan amonium klorida. Dalam batеrai karbon-zinc, logam yang digunakan adalah karbon, sеdangkan еlеktrolitnya adalah campuran air dan amonium klorida.

Proses Pengisian: Proses pengubahan energi listrik menjadi energi kimia

Jika baterai dihubungkan dengan beban maka, elektronnya akan mengalir ke elektroda positif (PbO2) dengan melalui beban dari elektroda negatif (Pb), kemudian ion-ion negatifnya akan mengalir ke elektroda positif serta ion-ion positifnya akan mengalir ke elektroda negatif. Arus listrik juga dapat mengalir disebabkan adanya elektron yang kemudian bergerak ke serta atau dari elektroda sel dengan melalui reaksi ion antara molekul elektroda dengan molekul elektrolit sehingga memberikan jalan bagi elektron untuk mengalir.

Proses Pengosongan : Proses pengubahan energi kimia menjadi energi listrik

Proses ini merupakan proses kebalikan dari proses pengosongan dimana arus listrik dialirkan yang arahnya berlawanan dengan arus yang terjadi pada saat pengosongan. Pada proses ini, kemudian setiap molekul air akan terurai. Ion oksigen yang bebas bersatu dengan tiap atom Pb pada plat positif ini kemudian akan membentuk timah peroxida (PbO2).

5. Percobaan  [back]
 
     a.) Prosedur  [back]

    1. Siapkan semua alat dan bahan yang diperlukan
    2. Disarankan agar membaca datasheet setiap komponen
    3. Cari kompnen yang diperlukan di library proteus
    4. Pasang dan simulasikan rangkaian tersebut

Pada rangkaian Sistem Otomatisasi Budaya Gurame ini, untuk komunikasi arduino Master dan Slave menggunakan komunikasi UART menggunakan pin Rx dan Tx untuk transfer data, dimana pin Tx Master dihubungkan dengan Rx Slave dan Rx Master dihubungkan dengan Tx Slave. Kemudian pin sensor sebagai inputan dihubungkan dengan pin pada arduiono master dan output dihubungkan pada pin arduino slave seperti yang di deklarasikan pada program.

Pada Arduino Master masing-masing sensor sebagai inputan, outputnya dihubungkan pada pin yang ada pada arduino yaitu, untuk LDR Sensor dihubungkan pada pin A0 Master, pH Sensor dihubungkan pada pin A2 Master, IR Sensor dihubungkan pada pin P2 Master, Ultrasonic Sensor dihubungkan pada pin P11 trigger dan P12 Echo master, Rain sensor dihubungkan pada pin P10 master. 

Pada Arduino Slave masing-masing pin dihubungkan dengan outputan sistem otomatisasi kolam gurame dan indicator lain seperti LED, motor servo, LED, Pompa dan LCD dengan I2C. Masing-masing output pada pin digital arduino master yaitu, LED merah untuk output dari LDR Sensor. Motor servo untuk output dari sensor pH di pin P9 motor cairan asam dan pin P10 motor cairan basa master. Motor servo sebagai output dari sensor infarred terhubung sebagai motor pakan di pin 3 arduino. Lalu sensor rain juga mengalurkan output berupa motor servo yang terhubung pada pin 7 master.  Sedangkan ultrasonic akan mengelurkan output berupa pompa yang tersambung pada motor drain di pin 6 arduino master. Selanjutnya LCD dengan I2C dihubungkan dengan pin SCL dan SDA pada masing-masing pin arduino slave.

Setelah itu dilakukan perakitan dan penguploadan program pada mikrokontroller sesuai dengan kondisi yang sudah ditentukan sebelumnya untuk project Smar Garage System ini.


     b.) Hardware [back]

  • Arduino Uno
  • IR Sensor
  • Rain Sensor
  • pH Sensor
  • Ultrasonic Sensor
  • LDR Sensor
  • Motor Servo
  • Water Pump 12V
  • LED
  • LCD (Liquid Crystal Display)
  • Baterai
  • Relay

Prototype


Percobaan Sensor Ultrasonic

Kalibrasi Sensor pH

Asistensi 1 percobaan IR, LDR, dan Rain Sensor



     c.) Rangkaian Simulasi dan Prinsip Kerja  [back]
  • Rangkaian Simulasi :
  • Prinsip Kerja:

Sistem otomatisasi budidaya gurame ini dirancang untuk mengoptimalkan pemeliharaan kolam melalui penggunaan berbagai sensor yang bekerja secara harmonis untuk memantau dan mengontrol kondisi lingkungan secara real-time. Sensor hujan berperan penting dalam mendeteksi kondisi cuaca untuk pengaturan atap kolam. Ketika sensor ini mendeteksi hujan, motor servo segera menutup atap kolam untuk mencegah air hujan masuk, menjaga stabilitas kondisi kolam. Sebaliknya, ketika cuaca kembali cerah dan tidak ada hujan yang terdeteksi, motor servo akan membuka atap kolam, memungkinkan sirkulasi udara dan sinar matahari yang dibutuhkan oleh ikan.

Pengukuran ketinggian air dalam kolam dilakukan oleh sensor ultrasonik. Sensor ini secara kontinu mengukur jarak antara permukaan air dan sensor. Jika jarak yang terukur melebihi 5 cm, hal ini menunjukkan bahwa ketinggian air berkurang, sehingga pompa air akan diaktifkan untuk menambah air ke dalam kolam hingga mencapai ketinggian optimal yang diinginkan. Ketika ketinggian air telah kembali ke batas yang ditetapkan (kurang dari 5 cm), pompa air akan dimatikan untuk menghindari pengisian berlebihan yang dapat mengganggu kondisi kolam.

Sensor cahaya (LDR) digunakan untuk mengatur sistem penerangan kolam. Sensor ini mendeteksi intensitas cahaya di sekitar kolam. Ketika intensitas cahaya rendah (≤ 500), sensor akan mengaktifkan LED untuk memberikan pencahayaan tambahan yang membantu aktivitas ikan, terutama pada malam hari atau kondisi cuaca mendung. Sebaliknya, jika intensitas cahaya tinggi (> 500), LED akan dimatikan untuk menghemat energi.

Sensor infrared memiliki fungsi khusus untuk mendeteksi gerakan ikan di kolam. Ketika ikan mendekati sensor, gerakan ini terdeteksi dan motor servo akan diaktifkan untuk menaburkan pakan secara otomatis. Hal ini memastikan ikan mendapatkan pakan secara teratur dan sesuai kebutuhan tanpa keterlibatan manusia secara langsung, meningkatkan efisiensi pemeliharaan.

Sensor pH digunakan untuk memonitor dan mengontrol tingkat keasaman air dalam kolam. Keasaman air yang optimal sangat penting untuk kesehatan ikan gurame. Sensor ini terus-menerus memantau pH air. Jika nilai pH terdeteksi rendah (≤ 6.5), motor servo akan menambahkan cairan basa untuk meningkatkan pH. Jika pH terdeteksi tinggi (≥ 7.5), motor servo lainnya akan menambahkan cairan asam untuk menurunkan pH. Sistem ini memastikan bahwa pH air tetap berada dalam rentang yang optimal untuk kesehatan ikan.

Seluruh sistem sensor dan aktuator ini bekerja secara sinergis dan otomatis untuk memastikan kondisi kolam budidaya gurame selalu dalam keadaan optimal. Penggunaan teknologi otomatisasi ini tidak hanya meningkatkan efisiensi dan efektivitas dalam pengelolaan kolam, tetapi juga memastikan kesejahteraan ikan gurame melalui pemantauan dan penyesuaian kondisi lingkungan secara terus-menerus. Dengan demikian, budidaya gurame menjadi lebih mudah, terkontrol, dan produktif.


     d.) Flowchart dan Listing Program  [back]

Flowchart:

A. Master


B. Slave



Listing Program:

- MASTER
#include <Servo.h>

#define IR_SENSOR_PIN 2 // Ubah pin sensor infrared sesuai dengan yang Anda gunakan
#define LDR_SENSOR_PIN A0 // Pin untuk sensor LDR
#define LED_PIN 4 // Pin untuk output LED

#define PH_SENSOR_PIN A2
#define ULTRASONIC_TRIGGER_PIN 11
#define ULTRASONIC_ECHO_PIN 12

#define MOTOR_DRAIN_PIN 6
#define MOTOR_FAN_PIN 5
#define MOTOR_ACID_PIN 9
#define MOTOR_BASE_PIN 8
#define FEEDER_MOTOR_PIN 3

#define RAIN_SENSOR_PIN 10 // Pin untuk sensor hujan
#define RAIN_MOTOR_PIN 7   // Pin untuk motor yang dikendalikan oleh sensor hujan
#define ATAP_KOLAM_PIN 7   // Pin untuk motor servo Atap Kolam

Servo atapKolam; // Buat objek Servo untuk mengendalikan motor servo Atap Kolam
Servo feederMotor; // Buat objek Servo untuk mengendalikan motor servo Feeder

int lastRainValue = LOW; // Menyimpan nilai terakhir dari sensor hujan

void setup() {
  pinMode(IR_SENSOR_PIN, INPUT_PULLUP); // Menggunakan INPUT_PULLUP untuk mengaktifkan resistor pull-up internal
  pinMode(LDR_SENSOR_PIN, INPUT); // Set pin LDR sebagai input
  pinMode(LED_PIN, OUTPUT); // Set pin LED sebagai output
  pinMode(PH_SENSOR_PIN, INPUT);
  pinMode(ULTRASONIC_TRIGGER_PIN, OUTPUT);
  pinMode(ULTRASONIC_ECHO_PIN, INPUT);
 
  pinMode(MOTOR_DRAIN_PIN, OUTPUT);
  pinMode(MOTOR_FAN_PIN, OUTPUT);
  pinMode(MOTOR_ACID_PIN, OUTPUT);
  pinMode(MOTOR_BASE_PIN, OUTPUT);
 
  pinMode(RAIN_SENSOR_PIN, INPUT); // Set pin sensor hujan sebagai input
  pinMode(RAIN_MOTOR_PIN, OUTPUT); // Set pin motor hujan sebagai output

  atapKolam.attach(ATAP_KOLAM_PIN); // Menghubungkan motor servo ke pin Atap Kolam
  feederMotor.attach(FEEDER_MOTOR_PIN); // Menghubungkan motor servo ke pin Feeder

  Serial.begin(9600);
}

void loop() {
  // Baca nilai sensor
  int irValue = digitalRead(IR_SENSOR_PIN); // Baca nilai sensor infrared
  int ldrValue = analogRead(LDR_SENSOR_PIN); // Baca nilai sensor LDR
  float phValue = analogRead(PH_SENSOR_PIN) * 0.0136852394916911;
  int ultrasonicDistance = getUltrasonicDistance();
  int rainValue = digitalRead(RAIN_SENSOR_PIN); // Baca nilai sensor hujan

  // Kirim nilai sensor ke slave
  sendSensorDataToSlave(irValue, ldrValue, phValue, ultrasonicDistance, rainValue);

  // Kontrol motor berdasarkan nilai pH
  if (phValue <= 6.5) {
    digitalWrite(MOTOR_BASE_PIN, HIGH); // Aktifkan motor cairan basa
    digitalWrite(MOTOR_ACID_PIN, LOW);  // Matikan motor cairan asam
  }
  else if (phValue >= 7.5) {
    digitalWrite(MOTOR_BASE_PIN, LOW);  // Matikan motor cairan basa
    digitalWrite(MOTOR_ACID_PIN, HIGH); // Aktifkan motor cairan asam
  }
  else {
    digitalWrite(MOTOR_ACID_PIN, LOW);  // Matikan motor cairan asam
    digitalWrite(MOTOR_BASE_PIN, LOW);  // Matikan motor cairan basa
  }

  // Kontrol motor drain berdasarkan jarak ultrasonik
  if (ultrasonicDistance >= 5) { // Ubah kondisi menjadi >= 5 cm
    digitalWrite(MOTOR_DRAIN_PIN, HIGH); // Aktifkan motor drain jika jarak lebih besar atau sama dengan 183
  } else {
    digitalWrite(MOTOR_DRAIN_PIN, LOW); // Matikan motor drain jika jarak lebih kecil dari 183
  }

  // Kontrol motor feeder berdasarkan sensor infrared
  if (irValue == HIGH) {
    feederMotor.write(90); // Putar servo feeder ke 90 derajat
  } else {
    feederMotor.write(0); // Kembalikan servo feeder ke posisi awal (0 derajat)
  }

  // Kendalikan motor hujan berdasarkan sensor hujan
  if (rainValue == HIGH) { // Jika terdeteksi hujan
    digitalWrite(RAIN_MOTOR_PIN, HIGH);
    if (lastRainValue != HIGH) { // Jika nilai sensor hujan berubah menjadi HIGH
      atapKolam.write(90); // Putar servo untuk menutup atap kolam
    }
  } else {
    digitalWrite(RAIN_MOTOR_PIN, LOW);
    if (lastRainValue != LOW) { // Jika nilai sensor hujan berubah menjadi LOW
      atapKolam.write(0); // Putar servo untuk membuka atap kolam
    }
  }

  // Simpan nilai terakhir dari sensor hujan
  lastRainValue = rainValue;

  // Kendalikan LED berdasarkan nilai LDR
  if (ldrValue > 500) {
    digitalWrite(LED_PIN, HIGH); // Matikan LED jika nilai LDR di atas 500
  } else {
    digitalWrite(LED_PIN, LOW); // Nyalakan LED jika nilai LDR di bawah atau sama dengan 500
  }

  delay(250); // Delay untuk menghindari pembacaan yang berlebihan
}

int getUltrasonicDistance() {
  digitalWrite(ULTRASONIC_TRIGGER_PIN, LOW);
  delayMicroseconds(2);
  digitalWrite(ULTRASONIC_TRIGGER_PIN, HIGH);
  delayMicroseconds(10);
  digitalWrite(ULTRASONIC_TRIGGER_PIN, LOW);
  return pulseIn(ULTRASONIC_ECHO_PIN, HIGH) / 58;
}

void sendSensorDataToSlave(int ir, int ldr, float ph, int distance, int rain) {
  // Komunikasi UART dengan Arduino Slave
  Serial.write((uint8_t*)&ir, sizeof(ir));
  Serial.write((uint8_t*)&ldr, sizeof(ldr));
  Serial.write((uint8_t*)&ph, sizeof(ph));
  Serial.write((uint8_t*)&distance, sizeof(distance));
  Serial.write((uint8_t*)&rain, sizeof(rain));
}



- SLAVE
#include <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x27, 16, 2); // Alamat I2C LCD: 0x27, dengan ukuran 16x2
int ledPin = 13; // Pin untuk output LED, sesuaikan dengan kebutuhan

void setup() {
  lcd.init();
  lcd.backlight(); // Nyalakan backlight LCD
  pinMode(ledPin, OUTPUT); // Set pin LED sebagai output
  Serial.begin(9600);
}

void loop() {
  if (Serial.available() >= sizeof(int) * 3 + sizeof(float) + sizeof(int)) { // Pastikan sudah menerima semua data
    int ir, ldr, rain;
    float ph;
    int distance;

    Serial.readBytes((byte*)&ir, sizeof(int));
    Serial.readBytes((byte*)&ldr, sizeof(int));
    Serial.readBytes((byte*)&ph, sizeof(float));
    Serial.readBytes((byte*)&distance, sizeof(int));
    Serial.readBytes((byte*)&rain, sizeof(int));

    // Tampilkan nilai sensor pada LCD
    lcd.clear();
    lcd.setCursor(0, 0);
    lcd.print("IR: ");
    lcd.print(ir ? "Detected" : "Not Detected");
    lcd.setCursor(0, 1);
    lcd.print("pH: ");
    lcd.print(ph);
    delay(500);

    lcd.clear();
    lcd.setCursor(0, 0);
    lcd.print("LDR: ");
    lcd.print(ldr);
    lcd.setCursor(0, 1);
    lcd.print("Distance: ");
    lcd.print(distance);
    lcd.print(" cm");
    delay(1000);

    lcd.clear();
    lcd.setCursor(0, 0);
    lcd.print("Rain: ");
    lcd.print(rain ? "Yes" : "No");
    delay(1000);

    // Kendalikan LED berdasarkan nilai
    if (ldr > 500) {
      digitalWrite(ledPin, LOW); // Nyalakan LED jika nilai LDR di atas 500
    } else {
      digitalWrite(ledPin, HIGH); // Matikan LED jika nilai LDR di bawah atau sama dengan 500
    }
  }
}

     e.) Vidio demo  [back]
 


   
     f.) Download File  [back]
1. Download File Rangkaian Di sini
2. Download Video Percobaan Di Sini
3. Download Kode Program :
    - Program Master Di sini Di sini
    - Program Slave Di siniDi sini
4. Download Flowchart Di Sini Di Sini 
5. Download Datasheet LDR Sensor Di Sini
6. Download Datasheet IR Sensor Di Sini Di Sini
7. Download Datasheet pH Sensor Di SiniDi Sini
8. Download Datasheet Ultrasonic Sensor Di Sini
9. Download Datasheet Rain Sensor Di SiniDi Sini
10. Download Datasheet Arduino UNO Di Sini
11. Download Datasheet LCD LM016L Di Sini
12. Download Library LDR Sensor Di Sini
13. Download Library IR Sensor Di Sini
14. Download Library pH Sensor Di Sini
15. Download Library Ultrasonic Sensor Di SiniDi Sini
16. Download Library Rain Sensor Di SiniDi Sini
17. Download Library Arduino UNO Di Sini
18. Download Datasheet Komponen :
    - Datasheet Baterai Di Sini
    - Datasheet Relay Di Sini
    - Datasheet Resistor Di Sini
    - Datasheet Motor Di Sini
    - Datasheet Dioda Di Sini
    - Datasheet Servo Di Sini
19. Download Softcopy Laporan Di Sini Di Sini 
20. Download File HTML Di Sini

Tidak ada komentar:

Posting Komentar

Smart Smoking Room Encoder Decoder

KONTROL SMART SMOKING ROOM [KEMBALI KE MENU SEBELUMNYA] DAFTAR ISI 1. Tujuan 2. Alat dan Bahan 3. Dasar Teori 4. Percobaan ...