Rancang Bangun Monitoring Sistem Irigasi Otomatis Berbasis GSM/GPRS

RANCANG BANGUN MONITORING SISTEM IRIGASI
OTOMATIS BERBASIS GSM/GPRS

ROCHIYAT

DEPARTEMEN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
INSTITUT PERTANIAN BOGOR
BOGOR
2012

RANCANG BANGUN MONITORING SISTEM IRIGASI
OTOMATIS BERBASIS GSM/GPRS

ROCHIYAT

Skripsi
sebagai salah satu syarat untuk memperoleh gelar
Sarjana Komputer pada
Departemen Ilmu Komputer


DEPARTEMEN ILMU KOMPUTER
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
INSTITUT PERTANIAN BOGOR
BOGOR
2012

ABSTRACT
ROCHIYAT. Design of Automatic Irrigation Monitoring System Based on GSM/GPRS. Under
the supervision of SRI WAHJUNI and SATYANTO KRIDO SAPTOMO.
Irrigation is a human attempt to irrigate farmland. Various efforts have been done to build the
concept of irrigation. However, the real implementation may create different problems. Basically,
irrigation is related with the accessibility of ground water, which gives a large contribution to
increase the agricultural production. A good irrigation system that can provide water in the correct
level, amount, and time is required. The irrigation system should be well planned, designed, and
operated efficiently to increase the agricultural production and ease of use in their operations. This
research is a part of IMHERE IPB activity on the event of strengthening agricultural research for
food security and sovereignty: advanced infrastructure for food security and sovereignty. The
focus of this research is the development of automated irrigation system for food production lan d
based on the data communication using GSM/GPRS. Arduino microcontroller was used as a client
with GSM/GPRS shield to communicate with the internet as the server. Soil moisture was used as

the sensor to detect the water content of farmland. LED was used t o represent the real actuator of
irrigation. If the water content detected by the sensor is less than 300, the actuator at the client will
be turned on. In the system, data collected by the sensor was immediately sent to the server.
Utilizing this scheme, it was found that the average time for connecting Arduino client to the
server without delay was 40 seconds. The system was also tested by giving a certain delay, where
sensor data was collected every 10, 30, and 60 seconds after the previous data from client was
received correctly by the server. The results showed that there was no data loss due to the
communication from Arduino client to the server. Furthermore, the data delivery was not affected
by the addition of delay on the system.
Keyword: GSM/GPRS, irrigation, client, server, Arduino, soil moisture, actuator.

Judul
Nama
NRP

: Rancang Bangun Monitoring Sistem Irigasi Otomatis Berbasis GSM/GPRS
: Rochiyat
: G64070021

Menyetujui:

Pembimb ing I,

Pembimbing II,

Ir. Sri Wahjuni, M.T.
NIP. 19680501 200501 2 001

Dr. Satyanto K. Saptomo, S.TP, M.Si
NIP. 19730411 200501 1 002

Mengetahui :
Ketua Departemen Ilmu Komputer

Dr. Ir. Agus Buono, M.Si, M.Kom
NIP. 19660702 199302 1 001

Tanggal Lulus :

PRAKATA
Alhamdulillahirobbil’alamin segala puji bagi Allah yang telah memberikan kenikmatan

islam, iman, dan ihsan. Shalawat serta salam penulis sampaikan kepada Nabi Muhammad
Shallallahu’alaihiwasallam, keluarganya, sahabatnya, dan para pengikutnya. Skripsi yang berjudul
“Rancang Bangun Monitoring Sistem Irigasi Otomatis Berbasis GSM/GPRS” dapat diselesaikan
karena nikmat Allah Subhanahuwata’ala berupa akal untuk berpikir, ilmu yang bermanfaat dan
hati yang tergerak untuk melakukan hal yang bermanfaat. Serta pihak-pihak yang membantu
dalam penyelesaian skripsi ini. Terima kasih kepada IPB melalui hibah penelitian IMHERE B2C
IPB pada kegiatan strengthening agricultural research for food security and sovereignty pada sub
kegiatan advanced infrastructure for food security and sovereignty atas dukungan dana dan
penyediaan alat dalam melaksanakan penelitian ini.
Penulis menyadari bahwa skripsi ini dapat diselesaikan karena dukungan dan doa dari
berbagai pihak. Pada kesempatan ini, penulis ingin mengucapkan terima kasih kepada:
1

Orang tua tercinta, Ibu Ropiah, kakak-kakak yang saya sayangi Ropiudin, S.TP, M.TP,
Rodiyah, Rosniati, dan Rosmadewi, S.P serta adik yang saya sayangi Rosnalia. Semoga Allah
Subhanahuwata’ala membalas kebaikan dan doanya.

2

Ibu Ir. Sri Wahjuni, M.T dan Bapak Dr. Satyanto K Saptomo, S.TP, M.Si selaku dosen

pembimbing tugas akhir. Terima kasih atas kesabaran, pengalaman serta ilmu yang diberikan.
Semoga Allah Subhanahuwata’ala mencatatnya sebagai amalan kebaikan yang mengalir terus
menerus.

3

Ibu Karlisa Priandana, S.T, M.Eng selaku dosen penguji pada ujian skripsi. Semoga saya dapat
memberikan yang terbaik dalam ujian.

4

Bapak Hari Agung, S.Kom, M.Si selaku dosen pembimbing akademik. Berkat bapak saya bisa
berjalan sesuai dengan arah yang benar, terutama saat mengambil mata kuliah.

5

Teman-teman satu bimbingan: Khamdan Amin Bisyri, Rendy Eka Saputra, Akbar Riyan
Nugroho, Sulma Mardiana, Zola Mukhda, dan Catur yang memberikan dorongan, semangat,
dan solusi dalam menyelesaikan tugas akhir ini. Semoga Allah Subhanahuwata’ala membalas
kebaikannya.


6

Teman-teman satu organisasi KSR PMI Unit I IPB yang telah memberikan masukan,
dorongan, dan mengingatkan baik langsung maupun tidak langsung dalam sikap menghadapi
kehidupan serta penyelesaian tugas akhir. Semoga Allah Subhanahuwata’ala membalas
kebaikannya.

7

Teman-teman satu bisnis: Irvan Nova Sagita, Seken Polansky, Andi Zulmiziar Marwandana,
Fitria Pratiwi, Maghfirah Rizki, Sri Wahyuni Muhammade, Eka, Fian, dan Neneng serta
mentor-mentor saya Ade Riswanto, Agustinus Arifin, Djulita Arifin, Chistina, Johannes, Rully
Wahab, Erna Wahab, Widyo, Tono, Robert Angkasa, Mitch Sala, dan Jim Dornan yang telah
mengajarkan kepribadian, karakter, tujuan hidup, dreams, kewirausahaan, prinsip-prinsip, dan
pola pikir sebagai bekal dalam menempuh kehidupan di dunia untuk kehidupan akhirat.

8

Seluruh staf Departemen Ilmu Komputer dan teman-teman seperjuangan IPB yang telah

banyak membantu baik selama penelitian maupun selama perkuliahan. Semoga Allah
Subhanahuwata’ala membalas kebaikannya.
Penulis meminta maaf karena menyadari bahwa dalam penulisan tugas akhir ini masih
terdapat banyak kekurangan dan kelemahan dalam berbagai hal karena keterbatasan kemampuan
penulis. Penulis berharap semoga tugas akhir ini bermanfaat dan menjadi amal yang mengalir terus
menerus sehingga dapat dibalas di akhirat.

Bogor, September 2012

Rochiyat

RIWAYAT HIDUP
Penulis dilahirkan di Desa Astanalanggar Dukuh, Kecamatan Losari, Kabupaten Cirebon,
Jawa Barat pada tanggal 1 Juni 1989. Penulis merupakan anak kelima dari enam bersaudara dari
orang tua yang luar biasa, yaitu Romli dan Ropiah. Penulis menempuh pendidikan formal di SD
Negeri 2 Astanalanggar Dukuh (1995-2000), SD Negeri 1 Losari Kidul (2001), SMP Negeri 1
Losari (2001-2004), dan SMA Negeri 5 Cirebon (2004-2007). Penulis masuk Departemen Ilmu
Komputer, Fakultas Matematika dan Ilmu Pengetahuan Alam, Institut Pertanian Bogor (IPB) pada
tahun 2007 melalui jalur Undangan Seleksi Masuk IPB.
Selama aktif sebagai mahasiswa, penulis mengikuti beberapa organisasi, yaitu Korp

Sukarela Palang Merah Indonesia Unit I Institut Pertanian Bogar (KSR PMI Unit I IPB),
Himpunan Mahasiswa Ilmu Komputer (Himalkom), Forum for Scientific Studies (FORCES),
Koperasi Mahasiswa (KOPMA), Serambi Ruhiyah FMIPA (SERUM G), dan Ikatan Kekeluargaan
Cirebon (IKC).

DAFTAR ISI
Halaman
DAFTAR TABEL ................................................................................................................................................. vi
DAFTAR GAM BAR ............................................................................................................................................ vi
DAFTAR LAMPIRAN ........................................................................................................................................ vi
PENDAHULUAN
Latar Belakang ................................................................................................................................................... 1
Tujuan Penelit ian ............................................................................................................................................... 1
Ruang Lingkup Penelitian ................................................................................................................................ 1
TINJAUAN PUSTAKA
Mikrokontroler Arduino Uno ATMega328 .................................................................................................. 1
Arduino 1.0 ......................................................................................................................................................... 1
GPRS ................................................................................................................................................................... 2
GSM/ GPRS Shield ............................................................................................................................................ 2
Sensor Kelembaban Tanah .............................................................................................................................. 2

METODE PENELITIA N
Perencanaan ........................................................................................................................................................ 3
Analisis................................................................................................................................................................ 3
Rancangan Sistem ............................................................................................................................................. 3
Implementasi ...................................................................................................................................................... 4
Pengujian............................................................................................................................................................. 4
HASIL DAN PEMBAHASAN
Perancangan Sistem .......................................................................................................................................... 4
Implementasi ...................................................................................................................................................... 6
Pengujian............................................................................................................................................................. 6
KESIMPULAN DAN SARAN
Kesimpulan ......................................................................................................................................................... 8
Saran .................................................................................................................................................................... 8
DAFTAR PUSTA KA ............................................................................................................................................ 9
LAMPIRA N .......................................................................................................................................................... 10

v

DAFTAR TABEL
Halaman

1 Perbandingan standar GSM/ GPRS ............................................................................................................ 2
2 Fungsi-fungsi pada server ........................................................................................................................... 6
3 Pengujian pengiriman data pada tampilan ................................................................................................ 8

DAFTAR GAMBAR
Halaman

1 Arduino Uno ATMega328 (Durfee 2011).............................................................................................. 1
2 Arduino 1.0 .................................................................................................................................................. 2
3 ICo msat v1.1 GSM/ GPRS Shield (ITead Studio 2011) ....................................................................... 2
4 Sensor kelembaban tanah (sumber: www.dfrobot.com) ...................................................................... 3
5 System Development Life Cycle (McLeod & Schell 2008) ................................................................. 3
6 Perencanaan arsitektur sistem................................................................................................................... 3
7 Rancangan arsitektur sistem ..................................................................................................................... 4
8 Ko munikasi GSM/ GPRS Shield dan Arduino ....................................................................................... 4
9 Ko munikasi GSM/ GPRS Shield dengan server .................................................................................... 5
10 Layout antarmuka login user .................................................................................................................... 5
11 Layout antarmuka data............................................................................................................................... 5
12 Layout antarmuka grafik ........................................................................................................................... 5
13 Flow chart sistem secara keseluruhan..................................................................................................... 6

14 Perancangan basis data .............................................................................................................................. 6
15 Kode koneksi GPRS................................................................................................................................... 6
16 Fungsi login ................................................................................................................................................. 6
17 Login berhasil .............................................................................................................................................. 7
18 Login gagal .................................................................................................................................................. 7
19 Berhasil logout ............................................................................................................................................ 7
20 Fungsi convert table to excel .................................................................................................................... 7
21 Grafik kelembaban tanah dan aktuator ................................................................................................... 7
22 Kode pengiriman data ................................................................................................................................ 7
23 Kode Arduino pada fungsi loop() ............................................................................................................ 8

DAFTAR LAMPIRAN
Halaman
1 Diagram blo k arsitektur A VR................................................................................................................... 11
2 Gambar d imensi GSM/ GPRS Shield....................................................................................................... 11
3 Kode program sketch Arduino untuk pengiriman data menggunakan GSM/ GPRS Shield ........... 12
4 Harga dan alat yang digunakan dalam penelitian .................................................................................. 13
5 Access Point Name (APN), username, dan password provider GSM ............................................... 13

vi

1

PENDAHULUAN
Latar Belakang
Irigasi merupakan upaya yang dilakukan
manusia untuk mengairi lahan pertanian.
Banyak upaya yang dilakukan dalam
melakukan irigasi, tetapi pada penerapannya
dibutuhkan cara yang berbeda. Pada dasarnya,
irigasi berhubungan dengan ketersediaan air
tanah. Air tanah telah memberikan kontribusi
yang besar bagi peningkatan produksi
pertanian. Oleh sebab itu, dibutuhkan sistem
irigasi yang dapat menyediakan air dalam
tingkat, jumlah, dan waktu yang dibutuhkan.
Sistem irigasi tersebut harus direncanakan,
dirancang, dan dioperasikan secara efisien
sehingga dapat meningkatkan produksi
pertanian dan memudahkan penggunaan
dalam pengoperasiannya.
Perencanaan sistem irigasi tersebut
merupakan bagian kegiatan IMHERE IPB
pada kegiatan strengthening agricultural
research for food security and sovereignty
pada sub kegiatan advanced infrastructure for
food security and sovereignty. Pelaksanaan
kegiatan ini akan mengkaji development of
automated irrigation system for food
production land dengan fokus penelitian pada
komunikasi data menggunakan GPRS dari
Arduino sebagai client ke internet sebagai
server.

memodelkan aktuator. Pembangunan sistem
ini pada area model.

TINJAUAN PUSTAKA
Mikrokontroler Arduino Uno ATMega328
Arduino merupakan papan rangkaian
elektronik yang bersifat open-source serta
memiliki perangkat keras dan lunak yang
mudah untuk digunakan. Arduino dapat
mengenali lingkungan sekitarnya melalui
berbagai
jenis
sensor
dan
dapat
mengendalikan lampu, motor, dan berbagai
jenis aktuator lainnya. Arduino Uno
ATMega328
mempunyai
14
digital
input/output di antaranya, 6 dapat digunakan
untuk Pulse Width Modulation (PWM)
outputs, 6 analog inputs, 16 MHz crystal
oscillator, USB connection, power jack , ICSP
header, dan reset button. Gambar Arduino
Uno ATmega328 dapat dilihat pada Gambar 1
dengan ciri-ciri sebagai berikut: operating
voltage 5V, rekomendasi input voltage 7-12
V, batas input voltage 6-20V, memiliki 14
buah digital input/output, memiliki 6 buah
analog input, DC current setiap I/O pin
sebesar 40 mA, DC current untuk 3.3 V pin
sebesar 50 mA, flash memory 32 KB, SRAM
2 KB, EEPROM 1 KB, dan clock speed 16
MHz (Durfee 2011).

Penelitian ini merupakan lanjutan dari
penelitian yang dilakukan oleh Nugroho
(2011), yaitu membangun modul akuisisi data
dari
mikrokontroler
ke
komputer
menggunakan komunikasi serial kemudian
dilanjutkan oleh Bisyri (2012), yaitu
membangun sistem komunikasi data dari
mikrokontroler ke komputer menggunakan
ZigBee IEEE 802.15.4.
Tujuan Penelitian
Penelitian ini bertujuan untuk membangun
sistem monitoring irigasi otomatis berbasis
GSM/GPRS
sehingga
sistem
dapat
mempermudah pemonitoran data dari jarak
jauh sesuai dengan jangkauan area sinyal
provider GSM yang digunakan.
Ruang Lingkup Penelitian
Penelitian
ini
difokuskan
pada
pembangunan sistem monitoring irigasi
otomatis berupa pengiriman data dari Arduino
di lapangan ke server di pusat pengontrol
menggunakan GSM/GPRS shield dan sensor
yang digunakan adalah sensor kelembaban
tanah dan Light Emitting Diode (LED) untuk

Gambar 1 Arduino Uno ATMega328
(Durfee 2011)
Arduino 1.0
Arduino 1.0 merupakan open-source
Arduino environment yang digunakan untuk
penulisan kode. Arduino 1.0 digunakan untuk
menulis kode yang akan diunggah pada board
Arduino. Penulisan kode menggunakan
Arduino
1.0
dapat
mempermudah
programmer dalam membuat program untuk
Arduino.
Software pada Gambar 2 dapat digunakan
pada platform Windows, Mac OS X, dan
Linux. Arduino environment ditulis dalam
bahasa Java didasarkan pada Processing,

2

AVR-GCC, dan open source software lainnya.
Bahasa pemrograman Arduino didasarkan
pada bahasa pemrograman C/C++ serta
terhubung dengan AVR Libc sehingga dapat
menggunakan fungsi-fungsi yang terdapat
pada AVR Libc. AVR Libc berisi fungsifungsi yang digunakan untuk menggunakan
AVR, seperti pengaturan register. Apabila
pada penulisan program membutuhkan AVR
Libc tertentu, header dapat ditambahkan pada
kode program tersebut (Reas & Fry 2010).

Tabel 1 Perbandingan standar GSM/GPRS
Standard
Aplikasi

ZigBee
802.15.4

Bluetooth
Wi-Fi
GSM/
802.15.1.4 802.11b GPRS
web,
WAN,
monitoring pengganti
video,
voice/
dan kontrol
kabel
e-mail
data
4kb-32kb
250kb+
1Mb+
16Mb+

Resource
Daya tahan
baterai
100-1000+
(hari)
Bandwidth
20-250
(kbps)
Jangkauan
1-75+
(m)
handal,
hemat
Kelebihan
daya,
murah

1-7

0,1-5

1-7

720

11000+

64-128

1-10+

1-100

1000+

murah

fleksibi- jangkaulitas,kean,
cepatan kualitas

GSM/GPRS Shield

Gambar 2 Arduino 1.0.
GPRS
General Packet Radio Service (GPRS)
adalah layanan komunikasi nirkabel berbasis
paket data yang dikirimkan sebagai overlay
jaringan untuk jaringan GSM, CDMA, dan
TDMA
(ANSI-I36). GPRS menerapkan
prinsip radio paket untuk mentransfer paket
data pengguna secara efisien dan jaringan
paket data eksternal. Arduino akan
mengirimkan data berupa paket data kepada
server. Paket swichting sebagai tempat data
dibagi menjadi paket-paket yang dikirimkan
secara terpisah kemudian dipasang kembali
pada penerima. GPRS juga memberikan
koneksi dial-up yang terkoneksi ke internet.
Selain GPRS terdapat komunikasi ZigBee
802.15.4, Bluetooth 802.15.4, dan Wi-Fi
802.11b yang dapat digunakan pada Arduino.
Menurut Safaric & Malaric pada tahun 2006,
perbandingan komunikasi tersebut dapat
dilihat pada Tabel 1.

GSM/GPRS Shield merupakan perangkat
tambahan untuk mendukung kinerja Arduino
pada komunikasi GSM/GPRS yang dapat
berupa SMS, call, GPRS, TCP/IP, tweet,
email, dan lain sebagainya. GSM/GPRS
Shield dapat dilihat pada Gambar 3.
GSM/GPRS Shield menggunakan modul
SIM900 quad-band GSM/GPRS. Modul ini
dapat dikendalikan menggunakan perintah AT
Command berupa GSM 07.07, 07.05 dan
perintah AT SIMCOM yang sudah
ditingkatkan
(ITead
Studio
2011).
GSM/GPRS ini berfungsi untuk mengirim
data dari Arduino ke server. Pengiriman ini
berupa paket data yang dikirimkan pada
selang waktu tertentu sehingga data dapat
dimonitor dari server.

Gambar 3 IComsat v1.1 GSM/GPRS Shield
(ITead Studio 2011)
Sensor Kelembaban Tanah
Sensor kelembaban tanah yang dapat
dilihat
pada
Gambar
4
berfungsi
mengukur kadar
air dalam tanah. Sensor
kelembaban tanah dapat digunakan untuk
mengukur kapasitansi dan kelembaban

3

neutron dengan memanfaatkan sifat air dalam
tanah. Penggunaan sensor ini didasarkan pada
dua elektroda yang mengukur resistansi
tanah. Sensor
ini
bekerja
dengan
menggunakan dua probe untuk melewati arus
yang melalui tanah kemudian membaca
resistensi untuk
mendapatkan tingkat
kelembaban. Jika tanah basah, tanah mudah
menghantarkan listrik (resistensi rendah),
sedangkan jika tanah kering, tanah susah
menghantarkan listrik (resistensi tinggi).

Internet
Internet

Mikrokontrol
er Arduino
Uno
dan GSM/
GPRS Shield

BTS
BTS

Solar cell

Sensor

Aktuator

Gambar 6 Perencanaan arsitektur sistem.

Analisis

Gambar 4 Sensor kelembaban tanah
(sumber: www.dfrobot.com).

METODE PENELITIAN
Tahapan
pembangunan
sistem ini
mengikuti standar metode pengembangan
System Development Life Cycle (SDLC).
Adapun fase-fase yang terdapat pada SDLC
meliputi fase perencanaan (planning), fase
analisis (analysis), fase perancangan (design),
fase implementasi (implementation), dan fase
penggunaan (McLeod & Schell 2008), seperti
yang terlihat pada Gambar 5.

Gambar 5 System Development Life Cycle
(McLeod & Schell 2008).

Proses analisis sistem dilakukan untuk
mengetahui kebutuhan sistem yang akan
dibangun. Analisis ini dilakukan terhadap
sistem irigasi yang sudah ada di Departemen
Teknik Sipil dan Lingkungan (SIL) dan alat
monitoring pertanian dari decagon device.
Penelitian sebelumnya yang dikerjakan oleh
Nugroho (2011), mencakup controller di
lapangan, penyimpanan data pada SD card,
dan komunikasi data menggunakan kabel
serial. Sistem irigasi pada penelitian ini
memanfaatkan
GPRS
sebagai
media
komunikasi
data
untuk
memudahkan
monitoring dari jarak jauh.
Decagon device menggunakan komunikasi
GPRS, media penyimpanan, mikrokontroler,
dan sensor yang embedded pada satu sistem
tetapi membutuhkan biaya yang besar
dibandingkan membangun sendiri. Pada
penelitian ini merupakan bagian dari fungsi
alat pada decagon device yaitu komunikasi
GPRS. Sistem komunikasi GPRS dipilih
karena jangkauan sinyal GPRS luas mengikuti
sinyal GSM provider tertentu pada suatu
wilayah
sehingga
biaya
maintenance
komunikasi lebih murah, hanya memerlukan
biaya paket internet.

Perencanaan

Rancangan Sistem

Pada tahap ini dilakukan proses deskripsi
ide pembangunan yang akan diterapkan pada
sistem. Ide tersebut mencakup beberapa
rangkaian dan fungsi. Perancangan sistem
dapat dilihat pada Gambar 6.

Rancangan sistem yang dilakukan pada
penelitian ini terdiri atas beberapa sub
pekerjaan, yaitu:
Rancangan Arsitektur Sistem
Rancangan arsitektur sistem bertujuan
menentukan bentuk sistem komunikasi pada
mikrokontroler yang akan diterapkan dalam
sistem yang akan dibangun.

4

Rancangan Komunikasi Data

Rancangan Arsitektur Sistem

Komunikasi serial digunakan antara
sensor, aktuator, Arduino Uno, dan
GSM/GPRS Shield. Komunikasi serial ini
terjadi dua arah (double duplex). Serial port
merupakan hal yang terpenting dalam Arduino
karena serial port memudahkan hubungan
Arduino dengan GSM/GPRS Shield.

Rancangan arsitektur sistem dapat
dilihat pada Gambar 7.
Field Controller
(Client)

Main Controller
(Server)
Internet

GPRS

Rancangan Antarmuka Server
Tahapan ini dilakukan untuk menentukan
rancangan
antarmuka
yang
dapat
mempermudah manajemen sistem monitoring
data sensor dan pengelolaan server.
Perancangan antarmuka lebih fokus pada
antarmuka server secara keseluruhan. Aplikasi
server
dibuat
menggunakan
bahasa
pemrograman PHP.
Rancangan Diagram Alir Sistem
Perancangan diagram alir sistem dilakukan
untuk memberikan gambaran tentang skenario
alur proses kerja sistem, pengambilan data dan
pengiriman data melalui komunikasi GPRS.
Perancangan Basis Data
Perancangan basis data meliputi penentuan
tabel-tabel yang digunakan sistem untuk
menyimpan data-data yang dibutuhkan, basis
data ini ada pada server.
Implementasi
Rancangan ini dilakukan pada lingkungan
model. Tahap awal perancangan sistem
dengan memasang Arduino Uno dan
GSM/GPRS Shield yang telah terpasang kartu
GSM. Kemudian Arduino disambungkan
dengan
sensor
dan aktuator untuk
pengambilan data dan kontrol sistem pada
lingkungan. Aktuator menggunakan LED
sebagai indikator. Setelah semua terpasang,
upload program pada Arduino. Sensor akan
membaca kemudian dikirim ke server selama
10, 30, atau 60 detik.

Mikro
kontroller

Aktuator

Gambar 7 Rancangan arsitektur sistem.
Sistem ini dibagi menjadi dua bagian yaitu
field controller (client) dan main controller
(server).
Pada
sisi
client
terdapat
mikrokontroler Arduino Uno, sensor, aktuator,
dan GSM/GPRS Shield. Bagian kedua adalah
server yang menerima data dari client.
Rancangan Komunikasi Data
Komunikasi data dibagi menjadi dua
bagian yaitu komunikasi Arduino dengan
GSM/GPRS Shield dan GSM/GPRS Shield
dengan server. Bagian pertama adalah
komunikasi GSM/GPRS Shield dengan
Arduino. Serial port pada Arduino terdiri atas
dua pin yaitu RDX dan TDX, RDX berfungsi
untuk menerima data dari GSM/GPRS Shield,
sedangkan TDX berfungsi untuk mengirim
data ke GSM/GPRS Shield.
Port
RXD
GSM/GPRS
Shield
dihubungkan
dengan
RXD
Arduino,
sedangkan port TXD GSM/GPRS Shield
dihubungkan dengan TXD pada Arduino.
Pada Arduino, port RXD mewakili pin 0
digital dan port TXD, mewakili pin 1 digital.
Pada GSM/GPRS Shield, port RXD mewakili
jumper 2, dan port TXD mewakili jumper 3.
Komunikasi GSM/GPRS Shield dan Arduino
dapat dilihat pada Gambar 8.
RXD

Pengujian
Tahapan pengujian yang dilakukan terdiri
atas pengujian koneksi GPRS, fungsi-fungsi
pada server, dan pengiriman data ke server.

HASIL DAN PEMBAHASAN

Sensor

ATMega328P
TXD

TXD

SIM900
RXD

Arduino
Uno
GSM/GPRS
Shield

Perancangan Sistem
Rancangan sistem yang dilakukan pada
penelitian ini terdiri atas beberapa sub
pekerjaan, yaitu:

Gambar 8 Komunikasi GSM/GPRS Shield
dan Arduino
Bagian kedua adalah komunikasi antara
GSM/GPRS Shield dan server. Komunikasi

5

memerlukan sinyal GPRS agar dapat
mengirimkan data. Sinyal GPRS disediakan
oleh provider GSM yang digunakan pada
sistem. Data-data akan dikirim berupa paket
data setiap 10, 30, atau 60 detik sekali. Datadata yang dikirimkan akan disimpan pada
basis data kemudian ditampilkan pada server.
Basis data pada server menggunakan MySQL
dan antarmuka server menggunakan bahasa
pemrograman PHP. Komunikasi GSM/GPRS
Shield dan server dapat dilihat pada Gambar
9.

Basis data

Server
Internet
Internet

Webpage

Data Grafik Logout

Data Sensor
No.

Sensor

Aktuator

Waktu

next
xls

Gambar 11 Layout antarmuka data.
Client

Data Grafik Logout
BTS
BTS
Mikrokontroler
Arduino Uno
dan GSM/GPRS

Grafik

Gambar 9 Komunikasi GSM/GPRS Shield
dengan server.
Rancangan Antarmuka Server
Antarmuka server memudahkan pengguna
dalam mengakses dan memonitor data dari
lapangan. Pertama, user harus melakukan
login seperti yang dapat dilihat pada Gambar
10. Halaman login user bertujuan untuk
mengamankan data dari user yang tidak
terdaftar. Kemudian akan diperlihatkan
halaman data dan grafik. Antarmuka data pada
Gambar 11 untuk memudahkan pemonitoran
data dari lapangan, sedangkan antarmuka
grafik pada Gambar 12 digunakan untuk
memudahkan user secara visualisasi data dari
lapangan.

Login User
Username
Password
Login

Gambar 10 Layout antarmuka login user.

Nilai Sensor

Aktuator

Sensor

Shield

Waktu

Gambar 12 Layout antarmuka grafik.
Rancangan Diagram Alir Sistem
Rancangan diagram alir sistem dibagi
menjadi dua bagian, yaitu pembacaan data dan
pengiriman data. Bagian pertama adalah
pembacaan data dari sensor kelembaban tanah
pada lingkungan, yang berulang setiap waktu
pengujian. Bagian kedua adalah pengiriman
data. Data yang didapat dari sensor kemudian
dikirim menggunakan GPRS ke server,
kemudian ditambahkan delay sesuai dengan
pengujian, yaitu 10, 30, atau 60 detik. Setelah
itu, sistem akan membaca sensor kembali dan
seterusnya. Secara keseluruhan sistem ini
digambarkan pada Gambar 13.

6

Mulai

Baca
Sensor

Aktuator
Mati

Tidak

Kelembaban
Tanah < 300

Ya

Aktuator
Menyala

Pengiriman
Data

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

#include "SIM900.h"
#include "SoftwareSerial.h"
#include "inetGSM.h"
void setup () {
...
}
void loop () {
...
// koneksi GPRS dengan kartu GSM,
if(inet.attachGPRS("www.xlgprs.net","",
""))
Serial.println("status=ATTACHED");
else
Serial.println("status=ERROR");
delay(1000);
...
}

Gambar 15 Kode koneksi GPRS.

Ya

Delay

Gambar 13 Flow chart sistem secara
keseluruhan.
Perancangan Basis Data
Pada Gambar 14, tabel-tabel tersebut
meliputi user dan sensor yang terdapat pada
server.

Pada baris 11 dan 12, fungsi
inet.attachGPRS() merupakan fungsi untuk
autentikasi pada provider GSM untuk
melakukan permintaan koneksi jaringan
GPRS.
Fungsi
inet.attachGPRS()
membutuhkan parameter Access Point Name
(APN), username, dan password.
Fungsi-Fungsi Server
Fungsi-fungsi yang ada dalam server
adalah login, logout, convert table to xls, dan
grafik yang dapat dilihat pada Tabel 2.
Tabel 2 Fungsi-fungsi pada server
No.

Fungsi

Keterangan

1

Login

Sukses

2

Logout

Sukses

Implementasi

3

Convert table to excel

Sukses

Sensor yang Digunakan

4

Grafik

Sukses

Gambar 14 Perancangan basis data.

Sensor yang digunakan adalah sensor
kelembaban tanah untuk mengukur kadar air
dalam tanah.
Sistem Monitoring
Sistem monitoring irigasi dalam penelitian
ini menggunakan satu sensor di lapangan.
Sensor akan mengambil data dari lingkungan
kemudian data dikirim setiap 10, 30, atau 60
detik sekali untuk keperluan monitoring pada
server.

Fungsi login merupakan fungsi untuk
autentikasi user yang diperbolehkan masuk ke
server. Jika user yang dimasukkan sesuai
dengan data pada basis data server, user
tersebut akan masuk dalam sistem. Tampilan
fungsi login dapat dilihat pada Gambar 16.

Pengujian
Koneksi GPRS
Komunikasi GPRS sesuai dengan sinyal
provider yang digunakan. Dalam penelitian
ini menggunakan kartu provider XL.
Pengujian koneksi dengan menggunakan
library yang disediakan pengembang dapat
dilihat pada Gambar 15.

Gambar 16 Fungsi login.
Apabila berhasil masuk akan muncul
tulisan seperti pada Gambar 17, sedangkan

7

apabila tidak berhasil maka akan muncul
tulisan seperti pada Gambar 18.

Gambar 17 Login berhasil.

Gambar 18 Login gagal.
Fungsi logout adalah fungsi permintaan
user untuk keluar dari server. User akan
keluar sistem dengan tampilan seperti pada
Gambar 19.

Gambar 20 Fungsi convert table to excel.

Gambar 19 Berhasil logout.
Convert table to excel merupakan konversi
dari tabel sensor dan aktuator yang dapat
diunduh dalam format excel sehingga
memudahkan user. Nama file hasil convert
ialah “datasensor.xls”.
Tabel yang dapat dilihat pada Gambar 20
merupakan tampilan dari data yang diterima
server. Pada kolom sensor dapat disisipkan
nilai sensor lain dengan menambahkan kolom
sebelah kanan. Pada penelitian ini, saya
membatasi masukan dari satu sensor. Nilai
aktuator ditentukan oleh nilai kelembaban
tanah yang terbaca oleh sensor. Jika kondisi
kelembaban tanah kurang dari 300 maka
aktuator akan menyala. Selain itu aktuator
akan mati. Nilai 1000 mewakili kondisi
aktuator menyala dan nilai 0 mewakili kondisi
aktuator mati. Nilai 1000 dipilih untuk
memudahkan dalam tampilan pada grafik
untuk menggabungkan nilai kelembaban tanah
dan aktuator. Kolom waktu yang ditampilkan
merupakan hasil dari waktu server yang
disesuaikan dengan waktu Indonesia.
Grafik yang ditunjukkan pada Gambar 21
merupakan visualisasi dari data yang diterima
server dari client. Grafik tersebut meliputi
data sensor pada sumbu y dan waktu pada
sumbu x. Grafik yang digunakan ialah grafik
garis untuk sensor kelembaban tanah dan
grafik batang untuk aktuator.

Gambar 21 Grafik kelembaban tanah dan
aktuator.
Pengiriman Data
Pengiriman data pada penelitian ini
menggunakan layanan GPRS. Data kemudian
disimpan pada server. Pengiriman data
dibandingkan dengan menggunakan serial
monitor pada client yang terhubung dengan
komputer dan data yang tersimpan di basis
data
pada server. Perbandingan ini
menandakan akurasi keberhasilan pengiriman
data dari client ke server sehingga
menghasilkan data yang akurat. Gambar 22
adalah kode pengiriman data.
1
2
3
4
5
6
7
8
9
10
11
12
13

#include "SIM900.h"
#include "SoftwareSerial.h"
#include "inetGSM.h"
void setup () {
...
}
void loop () {
...
// pengiriman data dengan httpGET
inet.httpGET("www.datalogger.comli.
com", 80, data, msg, 50);
...
}

Gambar 22 Kode pengiriman data.

8

Pada
Baris
program “inet.httpGET
("www.datalogger.comli.com", 80, data, msg,
50)” merupakan alamat server untuk
mengirimkan data dari client. Sedangkan pada
fungsi loop terdapat pembacaan sensor,
connection(), SendData(), inisialisasi path,
dan software_reset(). Fungsi connection()
merupakan komunikasi serial antara Arduino
dan GSM/GPRS Shield sehingga GSM/GPRS
Shield siap untuk melakukan koneksi ke
internet. Fungsi SendData() merupakan fungsi
untuk mengirim data sensor ke server.
Inisialisasi path ini meliputi penamaan path
awal dan pembacaan sensor kemudian
digabung menggunakan fungsi strcat()
sehingga membentuk suatu string pointer.
Kode tersebut dapat dilihat pada Gambar 23
dan hasil pengujian pada Tabel 3.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27

#include "SIM900.h"
#include "SoftwareSerial.h"
#include "inetGSM.h"
void setup () {
...
}
void loop () {
SM = analogRead(0);
itoa(SM, inSMStr, 10);
if (SM < 300){
digitalWrite(13, HIGH);
Serial.println("Nyala");
}
else {
digitalWrite(13, LOW);
Serial.println("Mati");
}
//menggabungkan data
data =
"/readData4.php?inSMStr=";
strcat(data, inSMStr);
connection();
SendData();
char *data = NULL;
software_Reset();
delay(600000);
}

rata 40 detik. Setiap kali mengirimkan data
loss, Arduino akan reset. Tabel 3 merupakan
pengujian pengiriman data dengan delay 10,
30, atau 60 detik.
Pengujian dilakukan pada Media Center
Fakultas Pertanian Institut Pertanian Bogor
menggunakan kartu GSM XL. Hasil yang
diperoleh pada delay 10, 30, dan 60 detik
tidak terdapat data loss. Ini menandakan
bahwa pengujian menambahkan delay tidak
mempengaruhi pengiriman data dari Arduino
ke server.

KESIMPULAN DAN SARAN
Kesimpulan
Penelitian ini telah dapat melakukan
komunikasi data dengan menggunakan
GSM/GPRS Shield pada Arduino Uno. GPRS
memudahkan dalam komunikasi dalam jarak
jauh karena kita menggunakan fasilitas dari
penyedia layanan GSM yang tersedia.
GSM/GPRS Shield dapat mengirimkan data
apabila masih dalam jangkauan sinyal
provider GSM yang digunakan.
Pada
server
terdapat
antarmuka
menggunakan PHP yang membantu pengguna
dalam memonitor client seperti nilai sensor,
status aktuator, dan waktu penerimaan. Selain
itu, dalam server terdapat fungsi tabel, grafik,
dan convert xls untuk memudahkan pengguna.
Hasil dari penelitian ini pada penembahan
delay 10 detik, 30 detik, dan 60 detik sebelum
pengiriman data tidak terdapat data loss. Ini
menandakan bahwa penambahan delay tidak
mempengaruhi pengiriman data dari Arduino
ke server.
Saran

Gambar 23 Kode Arduino pada fungsi
loop ().
Tabel 3 Pengujian pengiriman data pada
tampilan serial monitor dan server
Delay
(detik)

Serial
Monitor

Server

Selisih

Data
Loss
(%)

10

22

22

0

0

30

23

23

0

0

60

25

25

0

0

Pada penelitian ini, penulis menggunakan
delay 10, 30, dan 60 detik untuk mengirimkan
data. waktu koneksi GPRS dari Arduino rata-

Pada penelitian ini masih terdapat
kekurangan. Pada pengontrolan client oleh
server. Pengontrolan ini sangat bermanfaat
untuk
memudahkan
pengguna
dalam
menentukan waktu pengambilan data oleh
sensor. Pada grafik juga masih terdapat
kekurangan hasil pembacaan sensor sesuai
dengan tanggal yang bertumpuk-tumpuk. Pada
penelitian ini masih belum dilakukan
perhitungan checksum dan faktor keamanan
client dan server.
Penelitian selanjutnya dapat meneruskan
penelitian ini dengan menambah jumlah
sensor
yang
dipakai.
Menambahkan
penyimpanan data menggunakan SD card.
Analisis tegangan sumber daya yang
digunakan di lapangan. Alternatif dengan

9

menggunakan
modem
lain
kemudian
menyimpan data dalam 30 detik kemudian
kirim dalam 1 jam.
Penelitian selanjutnya diharapkan dapat
mengatasi beberapa kekurangan pada
penelitian ini agar sistem monitoring irigasi
berbasis
GSM/GPRS lebih baik dari
sebelumnya.

DAFTAR PUSTAKA
Bisyri KA.
2012.
Rancang
Bangun
Komunikasi Data Wireless Mikrokontroler
Menggunakan Modul XBee ZigBe (IEEE
802.15.4).
[Skripsi].
Bogor: Institut
Pertanian Bogor.
Durfee W. 2011. Arduino Microcontroller
Guide.
Minnesota: University
of
Minnesota.
http://www.me.umn.edu/
courses/me2011/arduino/arduinoGuide.pd
f. [27 September 2012].

[ITead
Studio]. 2011. IComsat v1.1.
http://iteadstudio.com/store/images/produc
e/Shield/IComSat/icomsat_DS1.2.pdf. [27
September 2012].
McLeod R Jr, Schell GP. 2008. Sistem
Informasi Manajemen, Edisi 10. Jakarta:
Salemba Empat.
Nugroho AR. 2011. Rancang Bangun Modul
Akuisisi Data Untuk Sistem Irigasi
Otomatis Berbasis Mikrokontroler Arduino
Duemilanove. [Skripsi]. Bogor: Institut
Pertanian Bogor.
Reas C, Fry B. 2010. Getting Started with
Processing. Sebastopol: O’Reilly Media.
Stanislav S, Kresimir M. 2006. ZigBee
wireless standard. 48 th Internasional
Symposium
ELMAR-2006.
https://coefs.uncc.
edu/
jmconrad/files/2012/04/IEEE_ZigBee.pdf
[27 September 2012].

LAMPIRAN

11

Lampiran 1 Diagram blok arsitektur AVR 8 bit

http://www.digikey.com/Web%20Export/techzone/microcontroller/article2011november-arduino-open-source-fig2.jpg)

(Sumber:

Lampiran 2 Gambar dimensi GSM/GPRS Shield

(Sumber: ITead Studio 2011)

12

Lampiran 3

Kode program sketch Arduino untuk pengiriman data menggunakan GSM/GPRS
Shield

1 #include "SIM900.h"
2 #include "SoftwareSerial.h"
3 #include "inetGSM.h"
4
5 InetGSM inet;
6
7 char *data;
8 boolean started=false;
9
10 int SM = 0;
11 char inSMStr[8];
12
13 void connection(){
14
if (gsm.begin(2400)){
15
Serial.println("\nstatus=READY");
16
started=true;
17
}
18
else Serial.println("\nstatus=IDLE");
19 }
20
21 void SendData(){
22
if(started){
23
if (inet.attachGPRS("www.xlgprs.net", "", ""))
24
Serial.println("status=ATTACHED");
25
else Serial.println("status=ERROR");
26
delay(1000);
27
28
//Read IP address.
29
gsm.SimpleWriteln("AT+CIFSR");
30
delay(1000);
31
32
//Read until serial buffer is empty.
33
gsm.WhileSimpleRead();
34
Serial.println(data);
35
//TCP Client GET, send a GET request to the server and
36
//save the reply.
37
//inet.httpGET("www.datalogger.16mb.com", 80, data, msg, 50);
38
inet.httpGET("www.datalogger.comli.com", 80, data, inSMStr, 50);
39
Serial.println("Done.");
40
}
41
else Serial.println("\nstatus=Error Send Data");
42 }
43
44 void software_Reset()
45 {
46
asm volatile ("jmp 0");
47 }
48
49 void setup()
50 {
51
//Serial connection.
52
Serial.begin(9600);
53
pinMode(13, OUTPUT);
54
Serial.println("...GSM/GPRS Shield Connecting...");
55 }
56
57 void loop()
58 {
59
SM = analogRead(0);
60
itoa(SM, inSMStr, 10);
61
Serial.println(SM);
62
if (SM < 300){
63
digitalWrite(13, HIGH);
64
Serial.println("Nyala");
65
}
66
else {
67
digitalWrite(13, LOW);
68
Serial.println("Mati");
69
}
70

13

71
72
73
74
75
76
77
78
79
80
81
82
83 }

//append data in char pointer
data = "/readData4.php?inSMStr=";
strcat(data, inSMStr);
connection();
SendData();
char *data = NULL;
delay(30000);
software_Reset() ;

Lampiran 4 Harga dan alat yang digunakan dalam penelitian
No

Alat

Jumlah

Harga Satuan (Rp)

Total Harga (Rp)

1

Arduino Uno

1

289.000

289.000

2

Sensor Kelembaban Tanah

1

35.000

35.000

3

Adaptor

1

30.000

30.000

4

GSM/GPRS Shield v1.1

1

569.000

569.000

5

Kartu GSM XL

1

5000

5000

6

LED

1

8.000

8.000

Total

Lampiran 5 Access Point Name (APN), username, dan password provider GSM
Provider

Parameter

Three

"3data", "3data", "3data"

Indosat

"indosatgprs", "indosat", "indosat"

Telkomsel

"telkomsel", "wap", "wap123"

XL

"www.xlgprs.net", "", ""

AXIS

“AXIS”,”axis”,”123456”

936.000