Modul 4 : Laporan Demo Projek
Kontrol smart greenhouse
Operating Voltage | 5V |
Input Voltage (recommended) | 7 - 12V |
Input Voltage (batas) | 6-20 V |
Digital I/O Pins | 14 ( 6 sebagai output PWM) |
Analog Input Pins | 6 |
DC Current per I/O pin | 40 mA |
DC Current untuk 3.3 V pin | 50 mA |
Spesifikasi dari sensor flame :
· Tegangan operasi : 5V untuk analog, 3.3V untuk digital
· Pin keluaran digital dan analog
· Sensitifnya dapat disesuaikan
· Deteksi panjang gelombang IR : 760nm – 1100nm
· Ukuran : 30 x 15mm
· Berat : 3g
Pinout dari sensor flame :
Pin | Deskripsi |
A0 | Pin output analog, mengeluarkan sinyal tegangan output real-time pada resistansi termal. Dengan pin Analog Output bisa diperkirakan letak api karena pembacaan sensor ini yaitu 60 derajat. Dengan memasang sensor secara parallel, dapat diperkirakan kira – kira posisi api dimana, meskipun tidak terlalu akurat. |
D0 | Pin output digital, mengeluarkan sinyal rendah atau tinggi saat suhu mencapai ambang tertentu yang disesuaikan melalui potensiometer. Dengan pin Digital Output dapat diketahui ada api atau tidak namun tidak dapat mengetahui letak api. |
+ | Power (5V untuk analog, 3.3V untuk digital) |
G | Ground |
Spesifikasi dari sensor soil moisture :
· Supply : 3.3V atau 5V
· Sinyal tegangan keluaran : 0 – 4.2V
· Arus : 35mA
· Definisi pin : a. Keluaran analog (kabel biru)
b. GND (kabel hitam)
c. Daya (kabel merah)
· Ukuran: 60 x 20 x 5mm
· Kisaran nilai : a. 0 – 300 : tanah kering
b. 300 – 700 : tanah lembab
c. 700 – 950 : dalam air
Pinout dari sensor soil moisture :
Pin | Deskripsi |
A0 | (Keluaran Analog) dihubungkan ke Pin Analog |
D0 | (Keluaran Digital) dihubungkan ke Pin Digital |
VCC | Disarankan untuk menyalakan sensor dengan tegangan antara 3.3V – 5V |
GND | Ground |
Spesifikasi dari sensor dht11 :
· Tegangan operasi : 3.5V hingga 5.5V
· Arus : 0.3mA (mengukur) 60uA (siaga)
· Keluaran : data serial
· Kisaran suhu: 0°C hingga 50°C
· Kisaran kelembaban: 20% hingga 90%
· Resolusi: suhu dan kelembaban keduanya 16-bit
· Akurasi: ±1°C dan ±1%
Pinout dari sensor dht11 :
Pin | Deskripsi |
VCC | Supply 3.5V hingga 5.5V |
Data | Menampilkan suhu dan kelembaban melalui data serial |
NC | Tidak ada koneksi dan karenanya tidak digunakan |
GND | Terhubung ke ground sirkuit |
Spesifikasi :
· Format tampilan : 16 x 2 karakter
· Pengontrol bawaan : ST 7066 (atau setara)
· Siklus kerja : 1/16
· 5 x 8 titik termasuk kursor
· Supply + 5 V (juga tersedia untuk + 3 V)
· LED dapat digerakkan oleh pin 1, pin 2, pin 15, pin 16 atau A dan K
· N.V. opsional untuk supply + 3 V
Spesifikasi :
· Tegangan Input : 3.2V - 40V
· Driver : Driver Motor L298N Dual H Bridge DC
· Supply : 5V
· Arus puncak : 2A
· Kisaran operasi : 0 - 36 mA
· Konsumsi daya maksimum : 20W (ketika suhu 75 ℃)
· Suhu penyimpanan : -25 ℃ ~ +130 ℃
· Keluaran pin 10 (sumber tegangan IC) jika berfungsi sebagai pin output : 5V
· Ukuran : 3.4cm x 4.3cm x 2.7cm
11. motor pump
Spesifikasi :
· Nilai Tegangan : DC 12V
· Beban : Air
· Penyerapan air : 1L – 1.2L/min
· Arus (dengan beban) : Kurang dari 320mA
· Arus : 2.0LPM
· Ukuran total : D27 x 75mm
· Diameter lubang air : 6.5mm
· Tekanan maksimum : Lebih dari 360mmHg
· Kebisingan : Kurang dari <60dB
Spesifikasi :
· Kapasitas nominal : 2200mAh (0.2Ca, debit)
· Kapasitas minimum : 2100mAh (0.2Ca, debit)
· Tegangan nominal : 3.7V
· Metode pengisian : CC – CV (tegangan konstan dengan arus terbatas)
· Pengisian arus : a. Biaya standar : 1300mA
b. Pengisian cepat : 2600mA
· Waktu pengisian daya : a. Biaya standar : 3jam
b. Pengisian cepat : 2.5jam
· Maks. mengisi arus : 2600mA
· Maks. debit saat ini : 5200mA
· Tegangan cut-off discharge : 2.75V
· Berat sel : maks. 47.0g
· Dimensi sel : a. Diameter (maks.) : 18.40mm
b. Tinggi (maks.) : 65.00mm
Spesifikasi :
· Nilai tegangan : 6V DC
· Tegangan pengoperasian : 4 hingga 8V DC
· Arus : ≤30mA
· Keluaran suara pada 10cm : ≥85dB
· Frekuensi resonansi : 2300 ±300Hz
· Nada : Berkelanjutan
· Suhu operasional : -25°C hingga +80°C
· Suhu penyimpanan : -30°C hingga +85°C
· Berat : 2g
1.
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 (%).
· 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 x 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.
2.
ADC
(Analog to 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);.
3.
Mikrokontroler
Arduino Uno adalah board
mikrokontroler berbasis ATmega328 (datasheet). Memiliki 14 pin input dari
output digital dimana 6 pin input tersebut dapat digunakan sebagai output PWM
dan 6 pin input analog, 16 MHz osilator kristal, koneksi USB, jack power, ICSP
header, serta tombol reset. Untuk mendukung mikrokontroler agar dapat
digunakan, cukup hanya menghubungkan Board Arduino Uno ke komputer dengan menggunakan
kabel USB atau listrik dengan AC yang ke adaptor DC atau baterai untuk
menjalankannya.
Setiap 14 pin digital pada arduino
uno dapat digunakan sebagai input dan output, menggunakan fungsi pinMode(),
digitalWrite(), dan digitalRead(). Fungsi – fungsi tersebut beroperasi di
tegangan 5 volt. Setiap pin dapat memberikan atau menerima suatu arus maksimum
40 mA dan mempunyai sebuah resistor pull-up (terputus secara default) 20-50
kOhm.
4.
Komunikasi
4.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.
Cara
Kerja Komunikasi UART :
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, kemudian ditransfer secara parallel ke data bus penerima.
5.
Sensor
5.1. Sensor Flame
Flame Sensor adalah komponen
elektronika yang memiliki fungsi dapat mendeteksi nyala api dengan panjang
gelombang 760nm – 1100nm. Sensor nyala api ini mempunyai sudut pembacaan 60
derajat, dan beroperasi pada suhu -25 derajat -85 derajat. Dan jarak pembacaan
antara sensor dan objek yang dideteksi tidak boleh terlalu dekat, untuk
menghindari kerusakan sensor.
5.2.
Sensor
Soil Moisture
Soil Moisture Sensor adalah sebuah
jenis sensor yang fungsinya adalah untuk mengukur kelembaban tanah. Prinsip
operasinya adalah mendeteksi kelembaban di sekitar tanah, meskipun secara
teknis sensor ini tidak dapat mendeteksi kelembaban tanah.
Sensor mengenakan dua konduktor yang
di buat untuk mengalirkan arus melalui tanah yang di ukur kelembabanya dan
kemudian sensor mulai membaca nilai resistansi untuk menentukan tingkat
kelembabanpada tanah. Semakin banyak air dalam tanah berarti konduktivitas yang
lebih baik dan akan menghasilkan resistansi yang lebih rendah. Semakin sedikit
air dalam tanah berarti konduktivitas yang buruk dan akan menghasilkan
resistansi yang lebih tinggi.
5.3.
Sensor
DHT11
Sensor DHT11 merupakan sensor yang
berfungsi untuk mengukur suhu dan kelembaban udara sekaligus yang di dalamnya
terdapat thermistor tipe NTC (Negative Temperature Coefficient) untuk mengukur
suhu, sebuah sensor kelembapan dengan karkteristik resistif terhadap perubahan
kadar air di udara serta terdapat chip yang di dalamnya melakukan beberapa
konversi analog ke digital dan mengeluarkan output dengan format single-wire
bi-directional (kabel tunggal dua arah).
6. LCD
LCD (Liquid-Crystal Display) atau Penampil Kristal Cair adalah layar panel datar atau perangkat optik elektronik termodulasi yang menggunakan sifat modulasi cahaya dari kristal cair (liquid crystal) yang dikombinasikan dengan polarizer. Kristal cair tidak memancarkan cahaya secara langsung, melainkan menggunakan lampu latar atau reflektor untuk menghasilkan gambar berwarna atau monokrom.
7.
Buzzer
Buzzer adalah sebuah komponen elektronika yang dapat menghasilkan getaran suara berupa gelombang bunyi. Buzzer akan menghasilkan getaran suara ketika diberikan sejumlah tegangan listrik dengan taraf tertentu sesuai dengan spesifikasi bentuk dan ukuran buzzer itu sendiri. Pada umumnya, buzzer ini sering digunakan sebagai alarm karena penggunaannya yang cukup mudah yaitu dengan memberikan tegangan input maka buzzer akan menghasilkan getaran suara berupa gelombang bunyi yang dapat didengar.
8. Baterai
Baterai merupakan alat listrik-kimiawi yang menyimpan energi serta mengeluarkan tenaganya dalam bentuk listrik. Baterai ialah perangkat yang mampu menghasilkan tegangan DC, yaitu dengan cara mengubah energi kimia yang terkandung di dalamnya menjadi energi listrik melalui suatu reaksi elektrokimia, Redoks (Reduksi – Oksidasi). Baterai yang biasa dijual (disposable/sekali pakai) ini mempunyai tegangan listrik 1,5 volt. Baterai ada yang berbentuk tabung ataupun kotak.
9. Motor driver
Motor driver adalah sebuah modul yang sering sekali digunakan untuk mengendalikan motor DC. Dengan menggunakan motor driver dapat dengan mudah mengendalikan baik itu kecepatan maupun arah rotasi 2 motor sekaligus. Motor driver dirancang menggunakan IC L298 Dual H-Bridge Motor Driver berisikan gerbang gerbang logika yang sudah sangat populer dalam dunia elektronika sebagai pengendali motor.
10.
Motor
Pump
Motor pump / pompa air adalah alat untuk menggerakan air dari tempat bertekanan rendah ke tempat bertekanan yang lebih tinggi. Pada dasarnya motor pump sama dengan motor DC pada umumnya, hanya saja sudah di-packing sedemikian rupa sehingga dapat digunakan di dalam air.
4. Listing Program [Kembali]MASTER
#include
<LiquidCrystal.h> |
LiquidCrystal lcd (8,
7, 6, 5, 4, 3); |
#include <Adafruit_Sensor.h> |
#include
"DHT.h" |
#define DHTPIN A5 |
#define DHTTYPE DHT11 |
DHT dht(DHTPIN,
DHTTYPE); |
#define out 13 |
int SensorSoil = A0; |
int flame_sensor = 12
; |
|
void setup() |
{ |
Serial.begin(115200); |
pinMode(flame_sensor, INPUT); |
pinMode(SensorSoil, INPUT); |
pinMode(out, OUTPUT); |
dht.begin(); |
lcd.begin(16, 2); |
lcd.setCursor(0,0); |
lcd.print(" Status "); |
delay(500); |
lcd.clear(); |
} |
void loop() { |
////flame |
int flame_detected =
digitalRead(flame_sensor) ; |
if (flame_detected == 1) { |
digitalWrite(out, HIGH); |
} |
else { |
digitalWrite(out, LOW); |
} |
delay(100); |
|
////DHT 11 |
float t = dht.readTemperature(); |
float h = dht.readHumidity(); |
lcd.setCursor(0, 0); |
lcd.print("t="); |
lcd.setCursor(2, 0); |
lcd.print(t); |
lcd.setCursor(7, 0); |
lcd.print("|H="); |
lcd.setCursor(10, 0); |
lcd.print(h); |
|
////Sensor Soil moisture |
int SoilValue = analogRead(SensorSoil); |
lcd.setCursor(0, 1); |
if ( SoilValue < 700 ) { |
Serial.println('1'); |
lcd.print("kelembapanT
>70"); |
} |
else { |
Serial.println('2'); |
lcd.print("kelembapanT
<70"); |
} |
delay(100); |
} |
SLAVE
#define in3 10 |
#define in4 11 |
|
void setup() |
{ |
Serial.begin(115200); |
pinMode(in3,OUTPUT); |
pinMode(in4,OUTPUT); |
} |
|
void loop() |
{ |
if ((Serial.available()
> 0)) |
{ |
int data =
Serial.read(); |
if(data == '1'){ |
digitalWrite(in3,LOW); |
digitalWrite(in4,LOW); |
delay(10); |
} |
else if(data ==
'2'){ |
digitalWrite(in3,HIGH); |
digitalWrite(in4,LOW); |
delay(10); |
} |
} |
} |
7. Hardware dan vidio [Kembali]
9. Kesimpulan [Kembali]