MODUL 1
DIP SWITCH DAN DOT MATRIX
Aquarium merupakan salah satu cara untuk menambah keindahan di dalam rumah. Namun, untuk menjaga kualitas lingkungan bagi ikan, perlu dilakukan pengawasan terhadap kualitas air. Hal ini dapat dilakukan dengan menggunakan beberapa jenis sensor, seperti turbidity, water level, pH, temperature, dan LDR.
Sensor adalah perangkat yang digunakan untuk mendeteksi atau mengukur suatu fenomena fisik atau kimia dan mengubahnya menjadi sinyal listrik. Arduino adalah platform open-source yang digunakan untuk membuat berbagai macam proyek elektronik. Arduino dapat digunakan untuk mengontrol sensor dan mengambil data dari sensor tersebut.
Dalam membuat aquarium pintar, sensor-sensor tersebut dapat digunakan untuk memonitor kualitas air dan lingkungan akuarium. Arduino dapat digunakan untuk mengontrol sensor-sensor tersebut dan mengambil data dari sensor tersebut untuk mengatur kondisi lingkungan akuarium agar tetap sehat bagi ikan.
- Memahami prinsip dasar input dan output pada mikrokontroler
Alat :
1. Power Supply
Bahan :
1. Arduino Uno
Spesifikasi :
- Tegangan Operasional: 5V DC
- Arus Operasional: 40mA (MAKS)
- Waktu Respon: <500ms
- Hambatan Insulasi: 100M (Minimum)
- Metode Output:
- Output Analog: 0-4.5V
- Output Digital: Sinyal Tinggi/Rendah (Anda dapat menyesuaikan nilai ambang dengan mengatur potensiometer)
- Suhu Operasional: 5℃90℃
- Suhu Penyimpanan: -10℃90℃
- Berat: 30g
- Dimensi Adaptor: 38mm28mm10mm/1.5 inci1.1 inci0.4 inci
- Tegangan Operasional: DC5V
- Arus Kerja: Kurang dari 20mA
- Tipe Sensor: Analog
- Area Deteksi: 40mm x 16mm
- Proses Produksi: FR4 double-sided HASL (High-Quality Soldering)
- Ukuran Lubang Pemasangan: 3.0mm
- Desain Ramah Pengguna: Pegangan setengah bulan dengan depresi
- Suhu Operasional: 0°C ~ 90°C
- Kelembaban Operasional: 0% ~ 90% (non-kondensasi)
- Berat: 3g
- Dimensi Produk: 65mm x 20mm x 8mm
- Tegangan Operasional: DC5V
- Arus kerja : 5-10mA
- Rentang konsentrasi : pH 0-14
- Suhu : 0 - 60 derajat celcius
- Waktu respon : <= 5 detik
- Waktu stabilitas :<=120 detik
- Konsumsi daya : ,=0.5 W
- Ukuran : 4.mm x 32mm x 20 mm
- Berat : 25 gram
- Tegangan maksimum (DC): 150V
- Konsumsi arus maksimum: 100mW
- Tingkatan Resistansi/Tahanan : 10Ω sampai 4.100KΩ
- Puncak spektral: 540nm (ukuran gelombang cahaya)
- Waktu Respon Sensor : 20ms – 30ms Suhu operasi: -30° Celsius – 70° Celcius
- Akurasi Sensor Lokal (maksimum): 0,5, 1
- Rentang Suhu Operasional (°C): -55 hingga 150
- Tegangan Suplai (minimum) (V): 4
- Tegangan Suplai (maksimum) (V): 30
- Arus Suplai (maksimum) (µA): 114
- Tipe Antarmuka: Output Analog
- Penguatan Sensor (mV/°C): 10
- Rating: Katalog
- Fitur: Diakui oleh UL
- Faktor Skala Linear + 10-mV/°C
- Akurasi Terjamin 0,5°C (pada 25°C)
- Dinilai untuk Rentang Penuh -55°C hingga 150°C
- Cocok untuk Aplikasi Jarak Jauh
- Biaya Rendah karena Trimming pada Tingkat Wafer
- Beroperasi Mulai dari 4 V hingga 30 V
- Konsumsi Arus Kurang dari 60 µA
- Pemanasan Sendiri Rendah, 0,08°C di Udara Tenang
- Non-Linieritas Hanya ±¼°C (Tertipikal)
- Output Impedansi Rendah, 0,1 Ω untuk Beban 1 mA
7. Resistor
Spesifikasi :
8. Motor DC
- Motor DC Tipe Standar 130
- Tegangan Operasional: 4,5V hingga 9V
- Tegangan Direkomendasikan/Nilai Nila: 6V
- Arus pada Tanpa Beban: 70mA (maksimum)
- Kecepatan Tanpa Beban: 9000 rpm
- Arus dengan Beban: 250mA (sekitar)
- Beban Nilaian: 10g*cm
- Ukuran Motor: 27,5mm x 20mm x 15mm
- Berat: 17 gram
Arduino adalah kit elektronik atau papan rangkaian elektronik open source yang didalamnya terdapat utama yaitu sebuah chip mikrokontroler dengan jenis AVR dari perusahaan Atmel. Arduino yang kita gunakan dalam praktikum ini adalah Arduino Uno yang menggungakan chip AVR ATmega 328P. Dalam memprogram Arduino, kita bisa menggunakan komunikasi serial agar Arduino dapat berhubungan dengan komputer ataupun perangkat lain.
Adapun spesifikasi dari Arduino Uno ini adalah sebagai berikut :
Bagian-bagian arduino uno:
-Power USB
Digunakan untuk menghubungkan Papan Arduino dengan komputer lewat koneksi USB.
-Power jack
Supply atau sumber listrik untuk Arduino dengan tipe Jack. Input DC 5 - 12 V.
-Crystal Oscillator
Kristal ini digunakan sebagai layaknya detak jantung pada Arduino. Jumlah cetak menunjukkan 16000 atau 16000 kHz, atau 16 MHz.
-Reset
Digunakan untuk mengulang program Arduino dari awal atau Reset.
-Digital Pins I / O
Papan Arduino UNO memiliki 14 Digital Pin. Berfungsi untuk memberikan nilai logika (0 atau 1). Pin berlabel " ~ " adalah pin-pin PWM ( Pulse Width Modulation ) yang dapat digunakan untuk menghasilkan PWM.
-Analog Pins
Papan Arduino UNO memiliki 6 pin analog A0. Digunakan untuk membaca sinyal atau sensor analog seperti sensor jarak, suhu, dsb, dan mengubahnya menjadi nilai digital.
-LED Power Indicator
Lampu ini akan menyala dan menandakan Papan Arduino mendapatkan supply listrik dengan baik.
Bagian - bagian pendukung:
-RAM
RAM (Random Access Memory) adalah tempat penyimpanan sementara pada komputer yang isinya dapat diakses dalam waktu yang tetap, tidak memperdulikan letak data tersebut dalam memori atau acak. Secara umum ada 2 jenis RAM yaitu SRAM (Static Random Acces Memory) dan DRAM (Dynamic Random Acces Memory).
-ROM
ROM (Read-only Memory) adalah perangkat keras pada computer yang dapat menyimpan data secara permanen tanpa harus memperhatikan adanya sumber listrik. ROM terdiri dari Mask ROM, PROM, EPROM, EEPROM.
Block Diagram Mikrokontroler ATMega 328P pada Arduino UNO
Adapun block diagram mikrokontroler ATMega 328P dapat dilihat pada gambar berikut:
3. Turbidity Sensor
Sensor gravitasi Turbidity mendeteksi kualitas air dengan mengukur tingkat kekeruhannya. Ia menggunakan cahaya untuk mendeteksi partikel tersuspensi dalam air dengan mengukur transmisi cahaya dan laju hamburan, yang berubah seiring dengan jumlah total padatan tersuspensi (TSS) dalam air. Semakin besar TTS maka tingkat kekeruhan cairan semakin meningkat.
Konstruksi & sirkuit
1. Sensor front-end
Sensor front-end adalah perangkat optik yang terdiri dari LED (pengirim cahaya) dan fototransistor (penerima cahaya). Skema papan bagian dalam Sensor Turbiditas diberikan di bawah ini. Ini memiliki antarmuka tiga kabel: VCC (+5 V), GND (0 V) & OUT/SIGNAL.
2. papan konektor sinyal
Sensor Water Level adalah sensor ketinggian air yang murah dan mudah digunakan. Sensor ini terdiri sejumlah garis yang disusun paralel untuk menentukan ketinggian permukaan air atau bisa dibilang Ada LED Daya di papan, yang akan menyala saat papan diberi daya.. Nilai konversi ketinggian air ke sinyal analog yang dihasilkan dapat langsung dibaca board Arduino.
Cara Kerja Water Sensor
- Semakin banyak air yang direndam sensor, semakin baik konduktivitasnya dan semakin rendah resistansinya.
- Semakin sedikit air yang direndam dalam sensor, semakin buruk konduktivitasnya dan semakin tinggi resistansinya.
Sensor menghasilkan tegangan keluaran sebanding dengan resistansi; dengan mengukur tegangan ini, ketinggian air dapat ditentukan.
Pinout Sensor
- S( Sinyal ) adalah pin keluaran analog yang akan dihubungkan ke salah satu masukan analog Arduino Anda.
- +VCC pin memberikan daya ke sensor. Disarankan agar sensor diberi daya dari 3.3V hingga 5V. Harap diingat bahwa keluaran analog akan bervariasi tergantung pada tegangan yang disuplai ke sensor.
- -GND adalah ground
Pengukur pH analog V2 dirancang khusus untuk mengukur pH larutan dan mencerminkan keasaman atau alkalinitas . Sebagai versi yang ditingkatkan dari pengukur pH V1, sensor ini sangat meningkatkan presisi dan pengalaman pengguna. Chip pengatur tegangan bawaan mendukung pasokan tegangan lebar 3.3~5.5V . Sinyal keluaran yang disaring oleh perangkat keras memiliki jitter yang rendah . Dengan Sensor Ph ini , Anda dapat dengan cepat membuat pengukur pH untuk mengukur nilai Ph berbagai larutan berair .
Spesifikasi
Kit Sensor Ph memiliki Papan Konversi Sinyal (Pemancar) V2 dan juga Probe pH . Keduanya saling terhubung satu sama lain. Ciri-ciri kedua bagian tersebut adalah sebagai berikut.
Papan Konversi Sinyal (Pemancar) V2
- Tegangan Pasokan: 3.3~5.5V
- Tegangan Keluaran: 0~3.0V
- Konektor Pemeriksaan: BNC
- Konektor Sinyal: PH2.0-3P
- Akurasi Pengukuran: ±0,1@25℃
- Dimensi: 42mm 32mm/1,66 1,26 inci
Pemeriksaan pH
- Jenis Probe: Kelas Laboratorium
- Rentang Deteksi: 0~14
- Kisaran Suhu: 5~60°C
- Titik Nol: 7±0,5
- Waktu Respons: <2 menit
- Resistansi Internal: <250MΩ
- Masa Pakai Probe: >0,5 tahun (tergantung frekuensi penggunaan)
- Panjang Kabel: 100cm
- Kalibrasi dalam satuan derajat Celsius.
- Linearitas +10 mV/ º C.
- Akurasi 0,5 º C pada suhu ruang.
- Range +2 º C – 150 º C.
- Dioperasikan pada catu daya 4 V – 30 V.
- Arus yang mengalir kurang dari 60 μ A.
a. Prosedur [Kembali]
- Prosedur percobaan:
- Siapakan komponen yang dibutuhkan
- Susun rangkaian sebagaimana yang
dibutuhkan
- Inputkan codingan Arduino
- Jalankan rangkaian
- Lakukan koreksi jika terjadi error, jika tidak terjadi error maka rangkaian berhasil dan selesai.
b. Hardware dan Diagram Blok [Kembali]
- Hardware
- Arduino Uno
- Turbidity sensor
- Water sensor
- Ph Sensor
- Temperature sensor
- LDR sensor
- Motor DC
- Diagram Blok
- Rangkaian Simulasi
- Prinsip Kerja
c. Rangkaian Simulasi dan Prinsip Kerja [Kembali]
d. Flowchart dan Listing Program [Kembali]
- Flowchart
- Listing Program
#include
<LiquidCrystal.h>
#define water1 A1
#define water2 A2
#define turbidity
A0
#define ph A3
#define uv A5
#define suhu A4
#define a 13
#define b 12
#define pupuk 11
#define kipas 10
#define heater 9
#define lampu 8
LiquidCrystal
lcd(7,6,5,4,3,2);
void setup() {
lcd.begin(16,1);
Serial.begin(9600);
pinMode (water1, INPUT);
pinMode (water2, INPUT);
pinMode (turbidity, INPUT);
pinMode (ph, INPUT);
pinMode (uv, INPUT);
pinMode (suhu, INPUT);
pinMode (a, OUTPUT);
pinMode (b, OUTPUT);
pinMode (pupuk, OUTPUT);
pinMode (kipas, OUTPUT);
pinMode (heater, OUTPUT);
pinMode (lampu, OUTPUT);
}
void loop() {
int sturbidity = analogRead(turbidity);
int swater1 = analogRead(water1);
int swater2 = analogRead(water2);
int sph = analogRead(ph);
int ssuhu = analogRead(suhu);
int suv = analogRead(uv);
Serial.println(swater2);
if (sturbidity > 1000 || sph > 670){
lcd.clear();
lcd.println("air: Keruh");
delay(100);
lcd.clear();
lcd.print("air: terkuras");
delay(100);
digitalWrite(a, 1);
}
else{
lcd.clear();
lcd.print("air: normal ");
delay(100);
digitalWrite(a, 0);
}
if (swater2 == 0){
if (swater1 < 615){
digitalWrite(b, 1);
}
}
else if(swater2 == 1019){
if(swater1 > 615){
digitalWrite(b, 0);
}}
if (sph < 506){
lcd.clear();
lcd.print("ph: kurang");
delay(100);
digitalWrite(pupuk, 1);
}
else if (sph > 506 && sph <
670){
lcd.clear();
lcd.print("ph: normal ");
delay(100);
digitalWrite(pupuk, 0);
}
else if (sph > 670){
lcd.clear();
lcd.print("ph: berlebih");
delay(100);
digitalWrite(a, 1);
}
if(ssuhu < 50){
lcd.clear();
lcd.print("suhu: dingin");
delay(100);
digitalWrite(kipas, 0);
digitalWrite(heater, 1);
}
else if(ssuhu > 60){
lcd.clear();
lcd.print("suhu: panas");
delay(100);
digitalWrite(kipas, 1);
digitalWrite(heater, 0);
}
else{
lcd.clear();
lcd.print("suhu: normal");
delay(100);
digitalWrite(kipas, 0);
digitalWrite(heater, 0);
}
if (suv < 500){
digitalWrite(lampu, 1);
}
else{
digitalWrite(lampu, 0);
}
}
- File HTML [klik]
- File Rangkaian Proteus [klik]
- Code Arduino [klik]
- Video Prinsip Kerja Rangkaian [klik]
- Datasheet Arduino Uno [klik]
- Datasheet Turbidity Sensor [klik]
- Datasheet Water sensor [klik]
- Datasheet Resistor [klik]
- Datasheet Ph Sensor [klik]
- Datasheet Temperature Sensor [klik]
- Datasheet LDR Sensor [klik]
Tidak ada komentar:
Posting Komentar