## PENYIRAMAN TANAMAN SECARA OTOMATIS MENGGUNAKAN SENSOR SUHU DAN KELEMBABAN BERBASIS MICROCONTROLER
Surianto Sitepu
Dosen Fakultas Ilmu Komputer Universitas Methodist Indonesia surintositepu69@gmail.com

## ABSTRACT
Has designed a tool that serves to maintain the plant to grow well. Plants that grow well in need of treatment were quite good, especially in maintaining soil moisture. So that the land remains under inert conditions in accordance  with  the  standard  requirements  necessary  plants  enough  water.  For  that  need  attention regularly for watering plants. Automatic Plant Watering prototype uses temperature sensors and inertial- based  Microcontroller Arduino Uno  can be used in the treatment plant without the need to set watering schedules.  In  order  for  watering  is  not  carried  out  during  the  day  or  during  the  scorching  sun,  the temperature sensor is used. Arduino microcontroller pin which has 14 digital input / output, which serves as the center of the brain process or the automatic sprinklers. The system was designed using a motor driver to drive the motor to pump water watering. Watering can prototype uses temperature sensors and inertial- based microcontroller arduino uno to move in automation tools for soil moisture has not been reached. If the soil moisture has been reached then the pump will stop watering the plants.
Keywords: Microcontroller, air temperature, soil moisture.

## I. PENDAHULUAN
Dengan adanya program Pemerintah untuk penghijaun Go  Green  di  hutan  Indonesia,  maka  di  harapkan masyarakat  juga  dapat  ikut  serta  dalam  mewujudkan program Pemerintah, dengan cara menanam tumbuhan sendiri  di  rumah  baik  tanaman  hias  maupun  tanaman yang  menghasilkan  buah.  Sedangkan  untuk  merawat tanaman  tidaklah  semudah  yang  dibayangkan  dimana dibutuhkan keterampilan, ketelatenan, waktu dan biaya yang memadai agar tumbuhan dapat bertumbuh dengan baik.  Seiring  dengan  kemajuan  teknologi  dibidang elektronika dan digital seperti komponen, microcontroller mengalami perkembangan yang sangat cepat, penggunaan yang mudah, fungsi yang kompleks sangat  membantu  untuk  perancangan  system  secara otomatis. Untuk mendeteksi keadaan banyak komponen  yang  dapat  digunakan  salah  satu  adalah sensor. Sensor digunakan untuk mendeteksi kelembaban  tanah  disekitar  tanaman.  Mikrokontroller dapat  digunakan  sebagai  pusat  pengendali  yang menerima  masukan  dari  sensor.  Komponen  – komponen tersebut dapat    diterapkan untuk mengatasi permasalahan  tersebut  karena  beberapa  jenis  sensor yang digunakan dapat mendeteksi tingkat kelembaban serta  suhu  di  sekitar  tanah  tanaman  sekaligus  tingkat
kelembaban  di  dalam  tanah  tanaman,  dalam  hal  ini diharapkan  dapat  mempermudah  dalam  perawatan tanaman. Penelitian ini bertujuan untuk merancang alat penyiram  tanaman  otomatis  menggunakan  sensor kelembaban berbasis microcontroler ATMega 328, dan mengimplementasikan  cara  kerja  sensor  kelembaban pada Microcontroler ATMega 328. Manfaat yang ingin dicapai  dari  penelitian  untuk  dapat  membantu pekerjaan  manusia  dalam  menyiram  tanaman  dan Efisiensi waktu dan biaya dalam perawatan tanaman.

## II. TIJAUAN PUSTAKA Microcontroller
Microcontroller  merupakan  sebuah  prosesor  yang digunakan  khusus  untuk  kepentingan  pengontrolan, meskipun mempunyai bentuk lebih kecil dari komputer pribadi  dan  mainframe,  microcontroller  dibangun dengan  elemen-elemen  yang  sama.  Microcontroller adalah alat  yang  mengerjakan  instruksi-instruksi yang diberikan,  artinya  bagian  utama  dari  suatu  sistem otomatis/terkomputerisasi adalah program di dalamnya yang dibuat oleh programmer. Program menginstruksikan  microcontroller  untuk  melakukan jalinan  yang  panjang  dari  aksi-aksi  sederhana  untuk melakukan tugas yang lebih kompleks sesuai keinginan
programmer. Pada  Microcontroller  perbandingan antara  RAM  dan  ROM-nya  besar,  sedangkan  pada sistem komputer juga besar. Microcontroller merupakan  sebuah  chip  yang  dapat  menyimpan program  yang  fungsinya  sebagi  pengontrol  rangkaian elektronik.  Berbeda  dengan  mikroprosesor  yang merupakan Central  Processing  Unit (CPU)  dimana memori  dan  I/O  pendukung  komputer  terpisah,  pada microcontroller  memori  dan  I/O  pendukung  lainya terkemas  dalam  sebuah  chip  tersebut,  Sehingga kelebihan  utama  microcontroller  menjadi  sangat ringkas. Microcontroller jenis MCS51 sudah mencapai 25  tahun,  jenis  microcontroller  ini  pertama  kali dikembangkan pada tahun 70-an oleh Intel Coorporatioan.  Microcontroller  MCS51  merupakan keluarga yang masih banyak dikembang oleh produsen seperti  Atmel  corps, Philips  Semicunduktors,  Cygnal Intergrated product inc dan Winbond Elektronics Corp. Microcontroller jenis MCS51 terdiri dari beberapa tipe diantaranya  AT89LS53,  AT89S51,  AT89S53  dan AT89S8252  dan  salah  satu  yang  banyak  digunakan pada  saat  ini  adalah  jenis  ATMega  328,  pada pembuatan  alat  ini  microcontroller  yang  akan digunakan  adalah  microcontroller  ATMega  328, (Sudrajat Asep, 2005:3).

## ATMega 328
ATMega  328  adalah  microcontroller  keluaran  dari atmel  yang  mempunyai  arsitektur  RISC  ( Reduce Instruction  Set  Computer )  yang  dimana  setiap  proses eksekusi  data  lebih  cepat  dari  pada  arsitektur  CISC ( Completed Instruction Set Computer ).
Microcontroller  ATMega  328  memiliki  arsitektur Harvard,  yaitu  memisahkan  memori  untuk  kode program  dan  memori  untuk  data  sehingga  dapat memaksimalkan  kerja  dan parallelism. 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.

## Konfigurasi PIN ATMega 328
ATMega 328 memiliki 28 pin, yang masing-masing pin nya  memiliki  fungsi  yang  berbeda-beda  baik  sebagai port maupun fungsi yang lainnya. Gambar 1 merupakan deskripsi Pin Mikrokontroller.

## Gambar 1 Konfigurasi Pin ATMega 328
Fungsi dari masing-masing kaki ATMega 328.
1. VCC
Merupakan supply tegangan digital.
2. GND Merupakan  ground  untuk  semua  komponen  yang membutuhkan grounding.
3. Port B (PB7...PB0) Didalam Port B terdapat XTAL1, XTAL2, TOSC1,
TOSC2.  Jumlah  port  B  adalah  8  buah  pin,  mulai dari  pin  B.0  sampai  dengan  B.7.  Tiap  pin  dapat digunakan  sebagai input maupun output .  Port  B merupakan  sebuah  8-bit bi-directional I/O  dengan internal  pull-up  resistor.  Sebagai input, pin-pin yang  terdapat  pada  port  B  yang  secara  eksternal diturunkan, maka akan mengeluarkan arus jika pull- up resistor diaktifkan. Khusus PB6 dapat digunakan sebagai input kristal ( inverting oscillator amplifier ) dan input kerangkaian clock internal,  bergantung pada  pengaturan Fuse  bit yang  digunakan  untuk
memilih sumber clock . Sedangkan untuk PB7 dapat digunakan sebagai output kristal ( output oscillator amplifier )  bergantung  pada  pengaturan Fuse  bit yang digunakan untuk memilih sumber clock . Jika sumber  clock  yang  dipilih  dari oscillator  internal , PB7 dan PB6 dapat digunakan sebagai I/O atau jika menggunakan Asyncronous  Timer/Counter2 maka PB6  dan  PB7  (TOSC2  dan  TOSC1)  digunakan untuk saluran input timer . 4. Port C (PC5…PC0) Port  C  merupakan  sebuah  7- bit  bi-directional I/O port  yang  di  dalam  masing-  masing  pin  terdapat pull-up resistor. Jumlah pin nya hanya 7 buah mulai dari pin C.0  sampai  dengan pin C.6.  Sebagai keluaran/ output port C memiliki karakteristik yang sama  dalam  hal  menyerap  arus  ( sink )  ataupun mengeluarkan arus (source ).
5. RESET/PC6
Jika  RSTDISBL Fuse diprogram,  maka  PC6  akan berfungsi  sebagai pin I/O. Pin ini  memiliki karakteristik  yang  berbeda  dengan pin-pin yang terdapat  pada port C  lainnya.  Namun  jika RSTDISBL Fuse tidak  diprogram,  maka  pin  ini akan  berfungsi  sebagai  input  reset.  Dan  jika level tegangan  yang  masuk  ke  pin  ini  rendah  dan  pulsa yang ada  lebih pendek dari pulsa  minimum,  maka akan  menghasilkan  suatu  kondisi  reset  meskipun clock -nya tidak bekerja.
6. Port D (PD7…PD0)
Port  D  merupakan  8- bit  bi-directional I/O  dengan internal pull-up resistor.  Fungsi  dari  port  ini  sama dengan port-port yang lain. Hanya saja pada port ini tidak terdapat kegunaan-kegunaan  yang  lain. Pada port ini  hanya  berfungsi  sebagai  masukan  dan keluaran saja atau biasa disebut dengan I/O.
7. Avcc
Pin  ini  berfungsi  sebagai supply tegangan  untuk ADC.  Untuk pin ini  harus  dihubungkan  secara terpisah  dengan  VCC  karena pin ini  digunakan untuk  analog  saja.  Bahkan  jika  ADC  pada  AVR tidak  digunakan  tetap  saja  disarankan  untuk menghubungkannya  secara  terpisah  dengan  VCC. Jika ADC digunakan, maka AVcc harus dihubungkan ke VCC melalui low pass filter .
8. ARef Merupakan pin referensi jika menggunakan ADC.

## Arduino
Arduino  didefinisikan  sebagai  sebuah platform elektronik  yang open  source ,  berbasis  pada software dan hardware yang  fleksibel  dan  mudah  digunakan yang  ditujukan  untuk  seniman,  desainer,  hobbies  dan setiap  orang  yang  tertarik  dalam  membuat objek  atau lingkungan  yang  interaktif.  Arduino  sebagai  sebuah platform komputasi  fisik  ( Physical  Computing )  yang open  source pada board  input  ouput sederhana,  yang dimaksud  dengan platform komputasi  fisik  disini adalah  sebuah  sistem  fisik  yang  interaktif  dengan penggunaan software dan hardware yang  dapat mendeteksi dan  merespons situasi dan kondisi.
Kelebihan arduino dari platform hardware microcontroller lain adalah:
1. IDE  Arduino  merupakan  multiplatform,  yang dapat dijalankan di berbagai sistem operasi, seperti Windows, Macintosh dan Linux.
2. IDE  arduino  dibuat  berdasarkan  pada  IDE Processing ,  yang  sederhana  sehingga  mudah digunakan.
3. Pemrograman  arduino  menggunakan  kabel  yang terhubung  dengan  port  USB,  bukan  port  serial. Fitur  ini  berguna  karena  banyak  komputer  yang saat ini tidak memiliki port serial.
4. Arduino  adalah  hardware  dan  software  open source,  software  dan  gambar  rangkaian  arduino dapat  di  download  tanpa  harus  membayar  ke pembuat arduino.
5. Biaya hardware cukup  murah,  sehingga  tidak terlalu menakutkan untuk membuat kesalahan.
6. Proyek arduino ini dikembangkan dalam lingkungan pendidikan sehingga bagi pemula akan lebih cepat dan mudah mempelajarinya.
7. Memiliki begitu banyak pengguna dan komunitas di  internet  dapat  membantu  setiap  kesulitan  yang dihadapi.

## Perangkat  Arduino
Papan arduino merupakan papan microcontroller yang berukuran kecil atau dapat diartikan juga dengan suatu rangkaian  berukuran  kecil  yang  didalamnya  terdapat komputer berbentuk suatu chip yang kecil.
Pada  Gambar  2  dapat  dilihat  sebuah  papan  arduino dengan beberapa bagian komponen didalamnya.

## Gambar 2 Hardware Arduino Uno
Pada hardware arduino  uno  terdiri  dari  20  pin  yang meliputi:
a. 14 Pin IO digital (pin 0–13) Pin  digital  dengan  nomor  0–13  yang  dapat dijadikan input atau output yang diatur dengan cara membuat programnya pada IDE.
b. 6 Pin input analog (pin 0–5) Pin  analog  dengan  nomor  0–5  yang  dapat digunakan  untuk  membaca  nilai  input  yang memiliki nilai analog dan mengubahnya ke dalam angka antara 0 dan 1023.
c. 6 Pin output analog (pin 3, 5, 6, 9, 10 dan 11) Pin yang sebenarnya merupakan pin digital tetapi pin tersebut dapat diprogram kembali menjadi pin output  analog  dengan  cara  membuat  programnya pada IDE.

## Software Arduino
Software Arduino  yang  digunakan  adalah  driver  dan IDE, walaupun masih ada beberapa software lain yang sangat  berguna  selama  pengembangan  arduino.  IDE atau Integrated  Development  Environment suatu program  khusus  untuk  suatu  komputer  agar  dapat membuat  suatu  rancangan  atau  sketsa  program  untuk papan arduino. IDE Arduino merupakan software yang sangat canggih ditulis dengan menggunakan java. IDE Arduino terdiri dari:
a. Editor Program
Sebuah window yang  memungkinkan  pengguna menulis  dan  mengedit  program  dalam  bahasa processing b. Compiler Sebuah  modul  yang  mengubah  kode  program menjadi kode biner bagaimanapun sebuah microcontroller tidak akan bisa  memahami  bahasa processing. c. Uploader
Sebuah  modul  yang  memuat  kode  biner  dari komputer ke dalam memory di dalam papan arduino dalam bahasa pemrograman arduino ada tiga bagian utama yaitu struktur, variabel dan fungsi :
Struktur program arduino Kerangka program arduino sangat sederhana, yaitu terdiri  atas  dua  blok.  Blok  pertama  adalah void setup () dan blok kedua adalah void loop.
1) Blok Void setup () Berisi  kode  program  yang  hanya  dijalankan sekali  sesaat setelah arduino dihidupkan atau di-reset.  Merupakan  bagian  persiapan  atau instalasi program.
2) Blok void loop ()
Berisi  kode  program  yang  akan  dijalankan terus  menerus.  Merupakan  tempat  untuk program utama.
Sintaks Program
Baik  blok  void setup  loop ()  maupun  blok function  harus  diberi  tanda  kurung  kurawal buka “{“ sebagai tanda awal program di blok itu  dan  kurung  kurawal  tutup  “}”  sebagai tanda akhir program.

## Variabel
Sebuah program secara garis besar dapat didefinisikan sebagai  instruksi  untuk  memindahkan  angka  dengan cara  yang  cerdas  dengan  menggunakan  sebuah variabel.

## Fungsi
Pada  bagian  ini  meliputi  fungsi  input  output  digital, input output analog, advanced I/O, fungsi waktu, fungsi matematika serta fungsi komunikasi.
Pada  proses  Uploader  dimana  pada  proses  ini mengubah  bahasa  pemrograman  yang  nantinya dicompile  oleh  avr-gcc  (avr-gcc  compiler)  yang hasilnya akan disimpan kedalam papan arduino.
Avr-gcc  compiler  merupakan  suatu  bagian  penting untuk  software  bersifat  open  source.  Dengan  adanya avr-gcc  compiler  maka  akan  membuat  bahasa pemrogaman  dapat  dimengerti  oleh  microcontroller.
Proses  terakhir  ini  sangat  penting    karena  dengan adanya  proses  ini  maka  akan  membuat  proses pemrogaman microcontroller menjadi sangat mudah. Berikut  ini  merupakan  gambaran  siklus  yang  terjadi dalam melakukan pemrogaman arduino:
1. Koneksikan  papan  arduino  dengan  komputer melalui USB port .
2. Tuliskan  sketsa  rancangan  suatu  program  yang akan dimasukkan ke dalam papan arduino.
3. Upload sketsa  program  ke  dalam  papan  arduino melalui  kabel  USB  dan  kemudian  tunggu beberapa  saat  untuk  melakukan restart pada papan arduino.
4. Papan  arduino  akan  mengeksekusi  rancangan sketsa  program  yang  telah  dibuat  dan  di- upload ke papan arduino.

## III. METODOLOGI PENELITIAN
Metodologi penelitian yang digunakan adalah :
1. Perancangan Sistem
Perancangan  alat  penyiraman  tanaman  otomatis menggunakan sensor
kelembaban
berbasis microcontroller ATMega 328 ini menerapkan langkah- langkah sebagai berikut:
2. Analisa Kebutuhan
Langkah  ini  merupakan  analisa  terhadap  kebutuhan sistem..
3. Desain Sistem
Tahapan  dimana  dilakukan  penuangan  pikiran  dan perancangan sistem terhadap solusi dari permasalahan yang  ada  dengan  menggunakan  perangkat  pemodelan sistem seperti diagram alir data ( data flow diagram ).
4. Penulisan Kode Program
Penulisan  kode  program  atau coding merupakan penerjemahan design dalam bahasa yang bisa dikenali oleh komputer.

## 5. Pengujian Program
Tahapan akhir dimana dilakukan pengkajian ulang dan perbaikan terhadap alat dan coding agar menjadi lebih baik dan sempurna.

## IV. PERANCANGAN SISTEM
Perancangan  alat  penyiraman  tanaman  otomatis menggunakan  sensor  suhu  dan  kelembaban  berbasis microcontroller ATMega 328. Dilakukan perancangan sistem  terhadap  solusi  dari  permasalahan  yang  ada dengan  menggunakan  perangkat  pemodelan  sistem seperti diagram alir data ( data flow diagram ).

## Perancangan Hardware
Untuk merancang sistem perangkat keras yang meliputi pembuatan  rangkaian  hasil  perancangan  sistem  baik rangkaian penunjang maupun rangkaian utama. Dalam hal ini terbagi dalam beberapa bagian atau blok dalam perancangan  dan  pembuatan  alat  yang  dibangun. Microcontroler  membaca  sensor  DHT  11  dan  sensor Soil Moisture yang dihubungkan pada Pin 5 pada board digital dan Pin A0 pada board analog arduino uno, yang dimaksudkan  untuk  mendapatkan  nilai  suhu  dan kelembaban tanah di sekitar tanaman, hal ini bertujuan untuk  menjaga  tingkat  kelembaban  tanah  secara otomatis.Gambar  3  adalah  block  diagram  yang menunjukkan hubungan antara Arduino Uno ATMega328  sebagai  pusat  control  dengan  peripheral lainnya.

## Gambar 3 Block Diagram Hubungan Antara Arduino Uno ATMega328 Sebagai Pusat Control
Dengan Peripheral Lainnya. Dalam hal ini pendeteksian  di  mulai  dari  Sensor  DHT  11  yang mendeteksi  Suhu  dan  kelembaban  udara  di  sekitar tanaman  kemudian  hasil  yang  di  dapat  kemudian ditampikan  ke  display,  kemudian  untuk  mendapatkan
hasil  yang  lebih  akurat  maka  di  gunakan  sensor  Soil Moisture di sekitar tanah tanaman yang berfungsi untuk memberikan sinyal Analog mengenai nilai kelembaban tanah  yang  terbaca,  jika  sinyal  digital  dari  DHT  11 terdeteksi <= 32 o C dan  sinyal analog dari sensor soil moisture terdeteksi >= 63 % maka pompa air dan servo motor  akan  mati,  jika  sinyal  digital  dari  DHT  11 terdeteksi  >  32 o C  dan    sinyal  analog  dari  sensor  soil moisture terdeteksi < 63 % maka pompa air dan servo motor akan mati .

## Rangkaian Minimum Arduino Uno
Pada  rangkaian  minimum  arduino  uno  merupakan minimum sistem dalam  bentuk skematik  yang terlihat hubungan mana saja yang dihubungkan dalam serpihan tersebut. Dalam hal ini pada pin reset terhubung sebuah resistor  yang  dikendalikan  dari  sumber  tegangan sebesar  5V  dan  terhubung  sebuah  saklar  sentuh  yang digunakan  untuk  mengulangi  kondisi  semula  yang terhubung  ke  pin  reset,  Gambar  4  Merupakan Rangkaian Minimum Arduino Uno
Gambar  4. Rangkaian Minimum Arduino Uno.
Pada  rangkaian  minimum  arduino  dapat  di  jumpai tombol reset yang ada di board arduino tersebut. Reset menandakan awal dari suatu operasi dari Microcontroler  sebelum  sumber  tegangan  menyuplai atau menuju level tegangan yang aman atau safe level . Karena  pada  pin  reset  terhubung  kapasitor  dan  kaki
yang lainnya dihubungkan ke ground. Apabila sumber tegangan  telah  menanjak  ke  keadaan threshold maka reset akan bekerja, biasanya pada saat 2V, Gambar  5. merupakan Rangkaian Reset Pada Arduino Uno.
/RESET(PC1/DW) 1 Vcc
Gambar 5. Reset Pada Arduino Uno.
Untuk  rangkaian  internal  power-on  reset  akan melakukan  pengulangan  atau  reset  sekitar  3ms  dan diikutinya penundaan waktu ( delay time ) sebesar 16ms, sebelum  Microcontroler  memulai  eksekusi  program. reset dalam rangkaian internal terdapat resistor pull-up yang digunakan sebesar 10-50 Ohm. Untuk menghasilkan  clock  diperlukan  sebuah  crystal  dan ceramic  resonator  atau  sering  disebut  juga  capasitor ceramic.  Adapun  pin  yang  terhubung  di  pin  yang bertuliskan  XTAL1  dan  XTAL2  yang  digunakan sebagai  input  dan  output,  dengan  adanya  penguat inverting  sehingga  menghasilkan  sebagai  osilator. Yang  mana  osilator  ini  yang  akan  membentuk  sinyal clock atau pulsa pada  micro  controller ATMega 328. Gambar 6 merupakan Rangkaian osilator pada Arduino
Uno. XTAL2(PC0) XTAL1 9 10 1 6 M H z 22p 22p
Gambar 6. Osilator Pada Arduino Uno.
Sensor  suhu  dan  kelembaban  DHT  11  memerlukan sinyal digital yang digunakan sebagai pembaca kondisi suhu.  Adapun  jangkauan  yang  digunakan  tidak  boleh lebih  atau  kurang  dari  yang  ditentukan  dari  pabrik semikonduktor. Jangkauan yang terdapat pada DHT 11 adalah  0 0 C  sampai  dengan  50 0 C  dengan  tingkat kesalahan  sebesar  ±  2  °C,  sedangkan  jangkauan kelembabannya  adalah  20  –  90  %  dengan  tingkat kesalahan sebesar ± 5%, untuk sumber tegangan  (Vs) yang  diperlukan  adalah  5  Volt,  Gambar  7  merupakan Hubungan DHT 11 ke Arduino Uno.
Gambar 7 Hubungan Sensor DHT 11 Ke Arduino Uno.
Cara  kerja  DHT  11  adalah  dengan  membaca  kondisi suhu  dan  kelembaban  udara  di  sekitar  tanaman kemudian memberikan sinyal ke Microcontroller yang menerima  nilai  suhu  dan  kelembaban  yang  terbaca DHT  11  dan  kemudian  ditampilkan  ke  LCD.  Sensor DHT  11  memiliki  batas  maksimum    pada  suhu  50 o C, pin-pin  yang  terhubung  yaitu  pin  2  pada  DHT  11 dihubungkan ke Pin 5 pada board digital arduino uno , sedangkan  pin  1  pada  DHT  11  dihubungkan  ke  VCC dan Pin 3 dihubungkan ke GND.

## Perancangan Sensor Soil Moisture
Sensor  kelembaban  Soil  Moisture  memerlukan  sinyal analog  yang  digunakan  sebagai  pembaca  kelembaban di  dalam  tanah.,  untuk  sumber  tegangan  (Vs)  yang diperlukan adalah 3-5 Volt DC, Gambar 8 merupakan Hubungan soil Moisture ke Arduino Uno.
Gambar 8 Hubungan Soil Moisture Ke Arduino Uno.
S inyal output yang diperoleh dari soil moisture tersebut merupakan sinyal analog sehingga pada hubungan pin yang  terhubung  ke  arduino  uno  terkoneksi  pada  pin analog. Sensor ini menggunakan dua buah probe untuk melewatkan  arus  melalui  tanah  lalu  membaca  tingkat resistansinya  untuk  mendapatkan  tingkat  kelembaban tanah. Semakin banyak air membuat tanah lebih mudah mengalirkan arus listrik (resistansi rendah), sementara tanah  kering  sulit  mengalirkan  arus  listrik  (resistansi tinggi).  Nilai  yang  terukur  oleh  sensor  soil  moisture kemudian  dikirim  ke  arduino  uno,  agar  arduino  uno dapat  membaca  dan  mengeksekusi  nilai-nilai  yang  di terima maka perlu adanya hubungan antara arduino uno dengan  soil  moisture,  Pin  A0  dihubungkan  pada  soil moisture pertama dan A1 dihubungkan ke soil moisture kedua.

## Perancangan Display LCD HD44780
LCD merupakan media display yang digunakan untuk menampilkan  nilai  yang  terbaca  dari  sensor  suhu  dan kelembaban  dimana  LCD  membutuhkan  sumber tegangan  sebesar  5  Volt  D.    Untuk  menampilan  nilai suhu dan kelembaban dengan menggunakan LCD, ada beberapa  pin  yang  terhubung  ke  LCD  dari  arduino. Gambar  9  merupakan  hubungan  Pin  LCD  dengan Arduino.
DIGITAL (~PWM) ANALOG IN A T ME GA 32 8P -P U 1 1 21 ~ ~ ~ ~ ~ ~ TX R X P D 0/ R X D 0 P D 1/ TX D 1 P D 2/ IN T0 2 P D 3/ IN T1 3 P D 4/ T0 /X C K 4 P D 5/ T1 5 P D 6/ A IN 0 6 P D 7/ A IN 1 7 P B 0/ IC P 1/ C LK O 8 P B 1/ O C 1A 9 P B 2/ S S /O C 1B 10 P B 3/ M O S I/O C 2A 11 P B 4/ M IS O 12 P B 5/ S C K 13 A R E F P C 5/ A D C 5/ S C L A 5 P C 4/ A D C 4/ S D A A 4 P C 3/ A D C 3 A 3 P C 2/ A D C 2 A 2 P C 1/ A D C 1 A 1 P C 0/ A D C 0 A 0 R E S E T ARD1 ARDUINO UNO R3 88 30 %RH > °C DATA 2 VDD 1 GND 4 U1 DHT11 DIGITAL (~PWM) ANALOG IN A TM EG A32 8P -P U 112 1 ~ ~ ~ ~ ~ ~ T X R X P D 0 /R X D 0 P D 1 /T X D 1 P D 2 /I N T 0 2 P D 3 /I N T 1 3 P D 4 /T 0 /X C K 4 P D 5 /T 1 5 P D 6 /A IN 0 6 P D 7 /A IN 1 7 P B 0 /I C P 1 /C L K O 8 P B 1 /O C 1 A 9 P B 2 /S S /O C 1 B 1 0 P B 3 /M O S I/ O C 2 A 1 1 P B 4 /M IS O 1 2 P B 5 /S C K 1 3 A R E F P C 5 /A D C 5 /S C L A 5 P C 4 /A D C 4 /S D A A 4 P C 3 /A D C 3 A 3 P C 2 /A D C 2 A 2 P C 1 /A D C 1 A 1 P C 0 /A D C 0 A 0 R E S E T ARD1 ARDUINO UNO R3

## Gambar 9 Hubungan Pin LCD Dengan Arduino Uno.
Dalam  hal  ini,  LCD  yang  digunakan  untuk menampilkan  nilai  pengukuranan  atau  terbaca  dari sensor  DHT11,  adapun  nilai  –  nilai  yang  ditampilkan adalah  nilai  suhu  dan  kelembaban  dari  sekitar  tanah tanaman adapun hubungan LCD dengan arduino yaitu pin  Vss  dihubungkan  terhadap  Ground  begitu  juga dengan  pin  Vee  serta  R/W.  dalam  hal  ini  R/W dihubungkan  ke  ground  karena  digunakan  sebagai penampilan  nilai  ke  LCD  sehingga  di  beri  sumber  ke ground.  Untuk  pin  RS  terhubung  ke  pin  13  pada arduino dan pin E dihubungkan ke pin 12 pada arduino. Sedangkan  untuk  data  bus  dalam  hal  ini  digunakan mode nible yang hanya digunakan 4 bit saja yaitu pada D4,  D5,  D6,  dan  D7  dimana  masing  –  masing terhubung ke pin 11,10,9, dan 8 pada arduino.

## Perancangan Servo Motor
Pengunaan  servo  motor  adalah  untuk  mengatur  arah pancuran  air  melalui  selang  yang  dipompa  dengan pompa  air  sesuai  dengan  arah  yang  telah  ditetapkan, servo  motor  memerlukan  sinyal  digital  dari  arduino dimana  sumber  tegangan  yang  di  perlukan  adalah  5 Volt DC, Gambar 10 merupakan Hubungan Pin arduino Uno dengan Servo Motor.
Gambar 10 Hubungan Pin Arduino Uno Dengan Servo Motor .
Dari gambar 10 dimana Pin 6 dan 7 pada board digital arduino  uno  di  hubungkan  ke  bagian  control  servo motor (warna orange), sedangkan kabel (warna merah) dihubungkan  ke  VCC  dan  kabel  (warna  coklat) dihubungkan ke GND.Servo motor akan mengarah ke tanah  yang  apabila  pembacaan  dari  soil  moisture tersebut merujuk ke nilai kelembaban yang ditentukan. Pada  servo  1  dan  servo  2  digunakan  untuk mengarahkan dari pembacaan soil moisture.

## Perancangan Relay
Rangkaian driver relay digunakan untuk mengaktifkan pompa air, dapat juga digunakan untuk mengnonaktifkan  pompa  air  tergantung  dari  sinyal masukan yang di berikan oleh microcontroller, Gambar 11  merupakan  hubungan  Pin  relay  dengan  board arduino uno.
Gambar 11 hubungan Pin relay dengan board Arduino uno.
DIGITAL (~PWM) ANALOG IN A T M E GA 32 8P -P U 1 1 21 ~ ~ ~ ~ ~ ~ TX RX PD 0/R XD 0 PD 1/T XD 1 PD 2/I NT 0 2 PD 3/I NT 1 3 PD 4/T 0/X CK 4 PD 5/T 1 5 PD 6/A IN 0 6 PD 7/A IN 1 7 PB 0/I CP 1/C LK O 8 PB 1/O C1 A 9 PB 2/S S/ OC 1B 10 PB 3/M OS I/O C2 A 11 PB 4/M ISO 12 PB 5/S CK 13 AR EF PC 5/A DC 5/S CL A5 PC 4/A DC 4/S DA A4 PC 3/A DC 3 A3 PC 2/A DC 2 A2 PC 1/A DC 1 A1 PC 0/A DC 0 A0 RE SE T ARD1 ARDUINO UNO R3 D7 14 D6 13 D5 12 D4 11 D3 10 D2 9 D1 8 D0 7 E 6 RW 5 RS 4 VS S 1 VD D 2 VE E 3 LCD1 DIGITAL (~PWM) ANALOG IN A T M E GA 32 8P -P U 1 1 21 ~ ~ ~ ~ ~ ~ TX RX PD 0/ RX D 0 PD 1/ TX D 1 PD 2/ IN T0 2 PD 3/ IN T1 3 PD 4/ T0 /X CK 4 PD 5/ T1 5 PD 6/ AI N0 6 PD 7/ AI N1 7 PB 0/ IC P1 /C LK O 8 PB 1/ OC 1A 9 PB 2/ SS /O C1 B 10 PB 3/ M OS I/O C2 A 11 PB 4/ M IS O 12 PB 5/ SC K 13 AR EF PC 5/ AD C5 /S CL A5 PC 4/ AD C4 /S DA A4 PC 3/ AD C3 A3 PC 2/ AD C2 A2 PC 1/ AD C1 A1 PC 0/ AD C0 A0 RE SE T ARD1 ARDUINO UNO R3 +88.8 +88.8 DIGITAL (~PWM) ANALOG IN A T ME GA 32 8P -P U 1 1 21 ~ ~ ~ ~ ~ ~ TX R X P D 0/ R X D 0 P D 1/ TX D 1 P D 2/ IN T0 2 P D 3/ IN T1 3 P D 4/ T0 /X C K 4 P D 5/ T1 5 P D 6/ A IN 0 6 P D 7/ A IN 1 7 P B 0/ IC P 1/ C LK O 8 P B 1/ O C 1A 9 P B 2/ S S /O C 1B 10 P B 3/ M O S I/O C 2A 11 P B 4/ M IS O 12 P B 5/ S C K 13 A R E F P C 5/ A D C 5/ S C L A 5 P C 4/ A D C 4/ S D A A 4 P C 3/ A D C 3 A 3 P C 2/ A D C 2 A 2 P C 1/ A D C 1 A 1 P C 0/ A D C 0 A 0 R E S E T ARD1 ARDUINO UNO R3 Q1 NPN RL1 5V
Dari  Gambar  11  relay  dihubungkan  pada  Pin  3  pada board  digital  arduino  uno.  Dari  rangkai  relay menggunakan  transistor  dalam  hal  ini  transistor diterapkan seperti menggunakan rangkaian switch pada transistor.  Saat  diberi  tegangan  input tinggi transistor akan  mengalami saturasi maka  pompa  air    tidak menyala  dan  bila  diberi  tegangan  input  rendah transistor akan tersumbat (cutoff) maka pompa air akan menyala.

## Perancangan Perangkat lunak
Pada  perancangan  perangkat  lunak  yang  diperlukan adalah penulisan kode. Dalam penulisan kode-kode ini akan di kompilasi dan hasil kompilasi akan menuju ke arduino  board.  Sebelum  melakukan  pemrograman dibutuhkan  flowchart  agar  mempermudah  dalam melakukan  pemrograman  dan  selanjutnya  listing program dengan menggunakan program IDE Arduino.

## Penyusunan Diagram Alur (Flowchart)
Dalam hal ini pada saat dimulai (start) atau dinyalakan, sensor  DHT  11  akan  bekerja  membaca  suhu  dan kelembaban udara di sekitar tanah tanaman. Dan sensor soil  moisture  mendeteksi  kelembaban  tanah  tanaman. Apabila resistansi rendah maka terdeteksi kelembaban tanah  tanaman  >=  63%  dan  sinyal  digital  yang terdeteksi  <=  32 o C  maka  servo  motor  dan  pompa  air akan  mati.  Jika  resistansi  tinggi  maka  terdeteksi kelembaban  tanah  tanaman  <  63%  dan  sinyal  digital yang terdeteksi > 32 o C  maka servo  motor dan pompa air akan  hidup. Untuk mempermudah  memahami  alur program kerja dari alat ini maka dibutuhkan flowchart, Gambar  12  merupakan  flow  chart  program  Arduino IDE.
Start Baca Sensor Suhu Kelembaman Suhu <= 32 C & Kelembaban >=63% Servo Motor & Pompa Air  Hidup Menyiram Tanaman Servo Motor & Pompa Air Mati End Ya Tidak Gambar 12 Flow chart program Arduino.

## V. HASIL DAN PEMBAHASAN

## Pengujian Sensor DHT 11
Pengujian  ini  untuk  melihat  fungsi  sensor  DHT  11 dalam alat penyiraman tanaman otomatis mengunakan sensor  kelembaban  berbasis  microcontroller  ATMega 328.  Gambar  20  dan  21  Merupakan  Suhu  dan Kelembaban Yang Terbaca Oleh DHT 11. Gambar 13 Suhu  Dan  Kelembaban  Yang  Terbaca  DHT  11 Dibawah  32 o C.Gambar  14  Suhu  Dan  Kelembaban Yang Terbaca DHT 11 Diatas 32 o C.
Gambar 13 menunjukan suhu dan kelembaban
Gambar  13  dan  menunjukan  suhu  dan  kelembaban yang  terbaca  oleh  sensor  DHT  11  yang  di  tampilkan melalui  display  suhu  dan  kelembaban  yang  di  baca merupakan nilai suhu dan kelembaban di sekitar tanah tanaman.

## Pengujian Sensor Soil Moisture
Pengujian ini untuk melihat fungsi sensor Soil Moisture dalam alat penyiraman tanaman otomatis mengunakan sensor  kelembaban  berbasis  microcontroller  ATMega 328. Gambar 14 dan 15 merupakan kondisi tanah saat pengujian.

## Gambar 14 Pengujian Pada Saat Kondisi Tanah Pada Salah Satu Pot Kering
Gambar  15 Pengujian Pada Saat Kondisi Tanah Pada Kedua Pot Basah
Gambar 14 Pengujian Pada Saat  Kondisi Tanah Pada  Salah Satu  Pot  Kering.  Gambar    15  Pengujian  Pada  Saat  Kondisi Tanah Pada Kedua Pot Basah.
Gambar 15 merupakan hasil pengujian yang dilakukan  salah satu probe soil moisture keadaan tanahny kering atau  < 63% dan  nilai  digital  sensor  DHT  11  >32 o C  maka  servo  motor akan  bergerak  kearah  pot  yang  kering  kemudian  pompa  air akan hidup sampai tanah dalam pot menjadi basah.Gambar 16 merupakan hasil pengujian  yang  dilakukan apabila  keadaan tanah pada kedua-dua pot basah maka servo motor dan pompa air akan dalam kondisi mati sampai tanah dalam pot menjadi kering kemudian pompa air dan servo motor dapat hidup.

## 5.3 Pengujian Alat Secara Keseluruhan
Pengujian  alat  secara  keseluruhan  bertujuan  untuk mengetahui  kerja  alat  penyiraman  tanaman  otomatis mengunakan  sensor  kelembaban  berbasis  microcontroller ATMega  328  apakah  telah  sesuai  dengan  yang  diharapkan, Gambar 16 merupakan pengujian alat secara keseluruhan.
Gambar 16 Pengujian Alat Secara Keseluruhan.
Dalam hal ini sensor kelembaban Soil Moisture memberikan sinyal analog antara 0-179 ke  microcontroller nilai di  dapat berdasarkan kelembaban yang terbaca oleh kedua probe yang di tancapkan ke tanah tanaman nilai yang terbaca apabila di atas 120 atau di  >= 63% dan nilai digital dari sensor DHT 11 terdeteksi < 32 o C maka pompa air dan servo motor akan mati. Jika nilai analog sensor soil terdeteksi <63% dan nilai digital dari sensor DHT 11 terdeteksi >= 32 o C maka pompa air dan servo motor akan hidup.

## Tabel 1.  Hasil Pengujian Alat Secara Keseluruhan
NO Nilai Sinyal Analog Nilai Kelembaban (%) Nilai DHT 11 ( o C) Tanah Pot 1 (%) Tanah Pot 2 (%) Kondisi Pompa Air Kondisi Servo Motor 1 0-17 1-10 % 33 o C 5 % 7 % ON ON 2 18-35 11-20 % 34 o C 12 % 10 % ON ON 3 36-53 21-30 % 35 o C 23 % 21 % ON ON 4 54-71 31-40 % 31 o C 37 % 23 % OFF OFF 5 72-89 41-50 % 32 o C 43 % 33 % OFF OFF 6 90-107 51-60 % 33 o C 52 % 43 % ON ON 7 108-125 61-70 % 33 o C 65 % 55 % ON ON 8 126-143 71-80 % 35 o C 76 % 70 % OFF OFF 9 144-161 81-90 % 31 o C 87 % 75 % OFF OFF 10 162-179 91-100 % 33 o C 90 % 88 % OFF OFF

## V. KESIMPULAN
Setelah  menyelesaikan  perancangan  sistem  dan  telah melakukan analisis terhadap alat penyiraman tanaman otomatis  mengunakan  sensor  suhu  dan    kelembaban berbasis  microcontroller ATMega 328,  maka dapat di simpulkan sebagai berikut.
1. Sensor DHT 11 mendeteksi suhu dan kelembaban udara di sekitar tanah tanaman
2. Dengan baik dan Sensor Soil Moisture mendeteksi kelembaban di dalam tanah tanaman.
3. Servo  motor  dan  pompa  air  akan  hidup  apabila salah satu probe sensor Soil Moisture mendeteksi kelembaban  tanah  tanaman  di  <  63%  dan  suhu DHT 11 >=32 o C pompa air dan servo motor akan mati  apabila  kedua  probe  sensor  soil  moisture mendeteksi kelembaban tanah di >= 63% dan suhu DHT 11 <32 o C.

## DAFTAR PUSTAKA
[1] Budiharto,  Widodo,  2009, Membuat  Robot  Cerdas  , Jakarta , Elex Media Komputindo
[2] Datasheet, AT89S51 [Online], Available:
http://search.datasheetcatalog.net/key/AT89S51 [  17
April 2011]
[3] Datasheet,  Sensor Ultrasonic  Distance  SensorI
[Online], Availble: http://www.parallax.com/28015-
[17 April 2013]
[4] Hartono,  Slamet.  2006. Simulasi  Pengisian  Bak  Air Menggunakan  3  Pompa  Dengan  Mikrokontroler AT89S51. Semarang : Universitas Semarang.
[5] InTech,  Robotic  Systems  –  Applications,  Control  and Programming, 2012, http://www.intechopen.com/books/robotic-systems- applications-control-and-programming
[6] Online],  Availble: http://www.parallax.com/28015-
[17 April 2013]
[7] Pitowarno, 2007, Robotika Desain dan Kontrol , Andi Offset Yogyakarta.
[8] Teguh  Wiguna,  2005.  ‘Pengukuran  Volume  Zat  Cair Menggunakan Gelombang Ultrasonik Berbasis Mikrokontroller AT89S51’[Online], Available: http://eprints.undip.ac.id/25351/1/ML2F000642.pdf
[20 Mei 2011]