Anda di halaman 1dari 11

P-ISSN : 2303-3142 E-ISSN : 2548-8570 Vol. 6, No.

1, April 2017

SISTEM INSTALASI AIR RUMAH TERKOMPUTERISASI BERBASIS


MIKROKONTROLER DENGAN PERINTAH SMS

I D.M.B.A.Darmawan1), I K.A. Mogi2), I W. Santiyasa3)


1,2,3
Program Studi Teknik Informatika, Universitas Udayana
Jimbaran, Indonesia

e-mail: dewabayu@cs.unud.ac.id, arimogi@cs.unud.ac.id, santiyasa@cs.unud.ac.id

Abstrak
Penelitian ini berangkat dari permasalahan yang dialami masyarakat Jimbaran dalam mengelola instalasi
air karena permasalahan distribusi air yang sering bermasalah. Masyarakat pada kawasan tersebut pada
umumnya memiliki dua buah tandon air, tandon tertanam dan tandon atas. Suplai air didapatkan dari
perusahaan air minum daerah yang sering kali mengalami permasalahan dalam distribusinya. Pihak ketiga
penyedia air bersih digunakan sebagai alternatif untuk memenuhi kebutuhan air bersih. Permasalahan
tersebut mengharuskan pemilik rumah harus mengetahui kondisi tandon air bawah tanah dan atas sebelum
memutuskan untuk membeli air bersih di pihak ketiga. Hal tersebut relatif sulit dilakukan dengan
pengamatan langsung. Sistem mikrokontroler digunakan sebagai solusi untuk permasalahan tersebut.
Sistem yang dibangun memungkinkan pengguna dalam mengontrol instalasi air. Fitur yang dibangun
meliputi, notifikasi kapasitas air di setiap tandon air, mengontrol secara otomatis pompa air untuk mengisi
tandon atas, mengontrol secara otomatis keran PDAM. Fitur tersebut didukung dengan layanan SMS.
Sehingga pemilik rumah dapat mengontrol dan monitoring instalasi air rumah menggunakan layanan SMS.

Kata kunci: mikrokontroler, instalasi air, tandon air, sms, ultrasonic

Abstract
This study departs from the problems experienced by the people in Jimbaran that manage their water
installations. People in the region generally has two water tanks, ground water tank and elevated water
tank. The water supply is obtained from local water companies (PDAM) that often had problems in their
distribution. The third-party providers of clean water is used as an alternative source of clean water. These
problems require that homeowners should know the condition of the water tanks before deciding to buy
clean water from a third party. It is relatively difficult to do direct observation. Microcontroller system is used
as a solution to these problems. The system allows user to control the water installation. Features built
include, notifications of water capacity from each water tank, automatically control the water pump to fill the
elevated water tank, automatic controls the PDAM water valve. The feature is supported with SMS services.
So homeowners can control and monitor their water installation use SMS service.

Keywords : microcontroller, water installation, water tanks, sms, ultrasonic

cukup kuat untuk mengisi tangki air jika


PENDAHULUAN ditempatkan pada lokasi yang tinggi. Oleh
Beberapa daerah di Bali tidak dapat karena itu, masyarakat membangun tangki
membangun sumur sebagai sumber air air bawah tanah. Tangki air ini dibuat
bersih untuk kebutuhan sehari-hari. Air permanen, yang biasanya ditempatkan di
bersih didapatkan melalui perusahaan air halaman rumah. Beberapa rumah
minun daerah (PDAM). Namun demikin, menerapkan sistem tangki air ganda.
berdasarkan pengamatan yang dilakukan, Sebuah tangki ditempatkan di bawah tanah,
beberapa daerah seperti Jimbaran, Badung lainnya ditempatkan di lokasi yang tinggi.
tidak mendapatkan distribusi PDAM dengan Tangki pertama digunakan untuk
baik. Oleh karena itu, masyarakat daerah menampung air sementara dari PDAM atau
tersebut membangun tangki penampungan sumber lainnya. Tangki kedua ini digunakan
air. Selain itu, air dari saluran PDAM tidak untuk distribusi kebutuhan rumah. Pompa air

Jurnal Sains dan Teknologi | 82


P-ISSN : 2303-3142 E-ISSN : 2548-8570 Vol. 6, No. 1, April 2017

digunakan untuk mendorong air dari tangki sebagai antar muka sistem menggunakan
bawah menuju tangki atas. jaringan wireless.

Pemantauan kapasitas air yang Kumar (2014) membangun sistem


tersedia di penampungan air bawah sulit smart home dengan menggunakan Arduino.
diamati. Hal ini karena penampungan air Arduino dipilih karena dapat menghemat
tersebut dipendamkan di bawah tanah. biaya jika dibandingkan dengan
Pemilik rumah sering kali tidak ingat untuk penggunaan PC. Kumar (2014)
mengontrol ketinggian air tersebut, sehingga menggunakan Rest Full webservice untuk
tidak tahu kapan dan berapa banyak harus membangun micro-webserver dan aplikasi
mengisi air melalui saluran PDAM. Belum Android sebagai aplikasi penggunanya. Fitur
lagi, saluran PDAM yang sering kali tidak dari smart home yang dibangun meliputi
dapat mendistribusikan air pada wilayah pintu elektrik, pendingin ruangan,
tersebut, menyebabkan pemilik rumah harus pencahayaan, kipas angin, penguncian
lebih sering mengontrol kondisi pintu, pengamanan dalam hal penyusup,
penampungan air yang dimiliki. Pemilik suhu dam kelembaban lingkungan, dan
rumah dapat menghubungi penyedia air sensor gas dan asap. Informasi berbahaya
bersih melalui pihak ketiga. akan dikirimkan melalui email yang dapat
diakses menggunakan Internet dan juga
Sulitnya melalakukan monitoring dan akan menghidupkan alaram rumah.
kontrol terhadap kondisi penampungan air Kemudian Chattoraj (2015) mencoba
tersebut menjadi latar belakang mengintegrasikan otomatisasi rumah dan
dibangunnya sistem instalasi air rumah sistem keamanan. Implementasi Chattoraj
terkomputerisasi. Sistem yang dibangun menambahkan fitur pengenalan suara.
berusaha untuk mempermudah masyarakat Perintah suara dapat digunakan untuk
memantau kondisi penampungan air yang mengendalikan perangkat elektronik yang
dimiliki. Sistem dibangun dengan ada di lingkungan rumah tersebut, oleh
menggunakan mikrokontroler arduino yang karena itu sangat cocok digunakan untuk
terintegrasi dengan jaringan GSM. rumah yang dihuni oleh usia lanjut.
Beberapa penelitian telah dilakukan Terdapat beberapa penelitian yang
berkaitan terhadap smart home berkaitan terhadap pemanfaatan
menggunakan mikrokontroler. Dalam mikrokontroler dalam kaitannya dengan
penelitiannya yang dilakukan oleh Lin pengukuran ketinggian air dengan sensor
(2013), smart home dibangun menggunakan ultrasonik. Dalam skripsi-nya (Fuadi, 2012),
mikrokontroler Arduino. Implementasi membangun sistem monitoring tinggi muka
dengan produk proprietary memiliki air tandon berbasis sensor ultrasonic. Fuadi
beberapa isu, antara lain: membutuhkan (2012) membangun mikrokontroler dengan
dukungan dalam jangka waktu yang memanfaatkan sensor ultrasonic untuk
panjang, kompatibilitas sistem dalam mengetahui level air pada tandon dan
kaitannya dengan gabungan beberapa menampilkan informasinya melalui LCD.
komponen dengan perangkat dari platform Hariyanto dan Cuswanto (2010)
yang berbeda, dan biaya. Platform open membangun Otomatisasi Pengisian
source arduno dapat digunakan sebagai Penampung Air Berbasis Mikrokontroler
alternatif pembangunan sistem smart home. AT8535. Sedangkan, sistem yang diusulkan
Penelitian lainnya dilakukan oleh (Piyare & pada tulisan ini adalah membangun sistem
Lee, 2013), sistem kontrol dan monitoring instalasi air terkomputerisasi dengan
rumah dengan biaya murah dibangun menggunakan mikrokontroler arduino
dengan memanfaatkan micro-web server. sebagai pengendali dan komunikasi
Mereka menggunakan Arduino sebagai dilakukan menggunakan layanan sms.
mikrocontroler yang mengontrol listrik,
temperature, pintu, dan lampu pada suatu Tulisan ini dibagi menjadi beberapa
rumah. Perangkat android digunakan bagian. Bagian pertama akan menjelaskan
mengenai metode yang digunakan dalam

Jurnal Sains dan Teknologi | 83


P-ISSN : 2303-3142 E-ISSN : 2548-8570 Vol. 6, No. 1, April 2017

penelitian ini. Kemudian dilanjutkan dengan tidak bertambah pada kurun waktu tertentu
pembahasan rancangan perangkat keras, pesan akan dikirimkan kembali, yang
rancangan perangkat lunak, sampai pada menandakan PDAM dalam keadaan tidak
akhir pembahasan meliputi implementasi mengalir. Informasi ini dibutuhkan oleh
sistem pada arduino. pemilik rumah untuk memesan air dari pihak
ketiga. Fitur lainnya adalah mengaktifkan
METODE pompa air untuk mengisi penampungan air
Tahap penelitian yang dilakukan atas. Pompa air akan diaktifkan apabila air
ditunjukkan pada Gambar 1. pada penampungan air atas habis dan
tersedia air yang cukup pada penampungan
mulai air bawah. Hal ini akan menghindari pompa
air yang aktif terus menerus ketika air tidak
tersedia di penampungan air bawah. Selain
Analisis itu, fitur-fitur tersebut juga dapat dikontrol
kebutuhan menggunakan perintah SMS.

Persiapan Alat dan Bahan


Persiapan alat Pada penelitian ini menggunakan beberapa
dan bahan alat meliputi mikrokontroler, khususnya
Arduino dan sensor yang digunakan untuk
mengukur ketinggian air, menggunakan
Perancangan sensor ultrasonic, dan keran solenoid.

Mikrokontroler
Implementasi Mikrokontroler merupakan teknologi
semikonduktor yang terdiri dari rangkaian
transistor dengan ukuran yang kecil.
Pengujian Mikrokontroler diproduksi secara masal
sehingga dapat menekan biaya
tidak pengadaannya. Mikrokontroler dapat
Uji digunakan secara fleksibel dan efektif dalam
mengontrol berbagai peralatan elektronik.
memenuhi
Arduino
Selesai Arduino Uno adalah salah satu produk
berlabel Arduino yang sebenarnya adalah
suatu papan elektronik yang mengandung
Gambar 1. Tahapan Penelitian mikrokontroler Atmega328 (Kadir, 2013).
Atmega328 adalah sebuah keping yang
secara fungsional bertindak seperti sebuah
komputer. Arduino merupakan perangkat
Analisis Kebutuhan
mikrokontroler open source yang
Pada tahap ini dilakukan analisis menggunakan bahasa pemrograman C.
kebutuhan untuk mengetahui ruang lingkup Konfigurasi dilakukan dengan mudah
penyelesaian masalah dari sistem instalasi dengan menggunakan komputer yang
air terkomputerisasi. dikoneksikan dengan kabel USB. Arduino
Sistem yang diimplementasikan memiliki beberapa pin input dan output,
memiliki beberapa kemampuan antara lain yaitu: 14 pin input/output, dimana 6 pin
melakukan peringatan terhadap level air digunakan untuk output pwm, 6 input analog
melalui SMS apabila level air telah dibawah seperti yang diperlihatkan pada Gambar 2.
ambang batas minimum. Selain itu, kondisi
tersebut akan mengaktifkan pengisian air
melalui saluran PDAM secara otomatis.
Namun apabila penampungan air bawah

Jurnal Sains dan Teknologi | 84


P-ISSN : 2303-3142 E-ISSN : 2548-8570 Vol. 6, No. 1, April 2017

dapat digerakan oleh arus AC maupun DC,


solenoid valve atau katup (valve) solenoida
mempunyai lubang keluaran dan lubang
masukan. Lubang masukan berfungsi
sebagai terminal / tempat cairan masuk atau
supply, lalu lubang keluaran, berfungsi
sebagai terminal atau tempat cairan keluar
yang dihubungkan ke beban. Prinsip kerja
Gambar 2. Arduino Uno Board dari solenoid valve/katup solenoid yaitu
katup listrik yang mempunyai koil sebagai
penggeraknya. Ketika koil mendapat supply
tegangan maka koil tersebut akan berubah
Sensor Ultrasonic menjadi medan magnet sehingga
Gelombang ultrasonik merupakan menggerakan piston pada bagian dalamnya.
gelombang yang memiliki frekuensi tinggi Ketika piston berpindah posisi maka pada
dari 20kHz hingga 20MHz. Oleh karena itu, lubang keluaran dari solenoid valve akan
gelombang ultrasonik tidak dapat didengar keluar cairan yang berasal dari lubang
oleh manusia. Sensor ini digunakan untuk masukan. Sebagian besar keran solenoid
pengukuran jarak terhadap suatu objek. mempunyai tegangan 100/200 VAC, namun
Sensor ultrasonic HC-SR04 yang keran yang digunakan pada penelitian ini
digunakan dalam penelitian diperlihatkan mempunyai tegangan DC.
pada Gambar 3. Sensor tersebut memiliki 4
buah pin, yang digunakan untuk Vcc (+5V
DC), Triger (TTL input), Echo (TTL output),
GND (ground). Triger digunakan untuk
memicu sinyal dengan frekuensi yang telah
ditentukan selama 10us. Sinyal dikirim
sebanyak delapan 40K gelombang digital.
Sinyal tersebut akan merambat diudara
dengan kecepatan rambatan 340m/s. Pin
Echo digunakan untuk menangkap pantulan Gambar 4. Keran Solenoid
sinyal triger yang telah dipancarkan
sebelumnya.
HASIL DAN PEMBAHASAN
Perancangan Perangkat Keras
Tahap pertama yang dilakukan dalam
penelitian ini adalah perancangan sistem
sesuai dengan kebutuhan yang telah
Gambar 3. Sensor Ultra Sonic HC-SR04 dijelaskan pada bagian pendahuluan
sebelumnya. Kondisi instalasi air rumah
Jika s adalah jarak objek, t adalah dengan sistem penampungan air ganda
waktu tempuh gelombang dari pengiriman terkomputerisasi diperlihatkan pada Gambar
sinyal sampai dengan sensor menerima 5. Pada gambar tersebut terlihat ketinggian
pantulan, dan c adalah cepat rambat penampungan air (tandon) diukur dengan
gelombang di udara. Maka jarak objek dapat menggunakan sensor ultrasonic. Ketinggian
dhitung sebagai: air diukur dengan persamaan 1. Nilai ini
(𝐭 ∗ 𝐜) (1) akan dikirimkan ke papan Arduino UNO.
𝑺= Selanjutnya akan diteruskan sesuai dengan
𝟐
Keran Solenoid logika yang diberikan pada papan arduino,
Keran Solenoid adalah katup yang seperti: mengihidupkan keran solenoid,
digerakan oleh energi listrik, mempunyai menghidupkan pompa air, dan mengirimkan
kumparan sebagai penggeraknya yang sms menggunakan Shield IComSat v1.1.
berfungsi untuk menggerakan piston yang Rancangan mikrokontroler untuk

Jurnal Sains dan Teknologi | 85


P-ISSN : 2303-3142 E-ISSN : 2548-8570 Vol. 6, No. 1, April 2017

sistem instalasi air rumah dengan SR04 digunakan untuk mengukur ketinggian
penampungan air ganda ditunjukkan pada air untuk setiap penampungan air. Kedua
Gambar 6. Dua buah sensor ultrasonik HC- sensor ultrasonic tersebut dihubungkan

Gambar 5. Gambaran Umum Instalasi Air Terkomputerisasi

dengan pin 2-5 pada arduino. Pin 6 dan 7


masing-masing digunakan untuk tx dan rx
pada shield GSM IComSat. Pin 10
terhubung dengan keran solenoid. Keran
solenoid bersifat normaly closed. Hal ini
berarti keran hanya akan terbuka jika
diberikan nilai aktif oleh arduino. Keran
solenoid akan diaktifkan ketika persentase
air penampungan bawah tanah lebih kecil
atau sama dengan 25%. Solenoid akan
dinonaktifkan ketika penampungan air
bawah tanah telah terisi penuh. Pin 11
digunakan untuk mengaktifkan relay yang
akan menghidupkan pompa air untuk
mengisi penampungan atas. Pin 11 hanya
akan bernilai aktif apabila penampungan
bawah tidak habis dan penampungan atas
habis. Kebalikannya, jika salah satu dari
kondisi tersebut tidak terpenuhi, maka nilai
yang diberikan adalah 0 atau relay tidak
akan terhubung sehingga pompa air akan
mati.
Gambar 6. Rancangan Rangkaian
Mikrokontroler Perancangan Perangkat Lunak
Beberapa kebutuhan fungsional yang
harus terpenuhi pada sistem yang dibangun
adalah:

Jurnal Sains dan Teknologi | 86


P-ISSN : 2303-3142 E-ISSN : 2548-8570 Vol. 6, No. 1, April 2017

1. Sistem harus mampu menghitung ultrasonik.


volume tandon air 4. Sistem harus mampu mengaktifkan
2. Sistem harus memberikan informasi keran PDAM secara otomatis pada
mengenai status level air kepada kondisi tertentu atau melalui perintah
pengguna atau melayani permintaan SMS yang dikirimkan oleh pengguna.
informasi dari pengguna melalui SMS 5. Sistem harus mampu memahami kondisi
3. Sistem harus mampu mengaktifkan tandon air bawah tanah ketika dalam
pompa air untuk mengisi kembali tandon keadaan kosong (tidak dapat terisi)
atas pada kondisi tertentu. Sama halnya sehingga tidak mengaktifkan pompa air
dengan tahap sebelumnya, pengaktifan yang mengalirkan aliran air ke tandon
pompa air berdasarkan indicator volume atas.
air yang dihitung menggunakan sensor

mulai

Inisialisasi no pin, ketinggian (s),


durasi (t), persentase ketinggian, no
telp

Aktifkan shield GSM

tidak
Gsm aktif stop

ya

tidak tidak
Tandon1 penuh Tandon1 kosong
(s1>=100) (s1<=25)
ya
ya

Kirim sms
Keran selenoid mati
tandon1 kosong

Keran selenoid
hidup

tidak ya tidak Kirim sms


Tandon2 penuh Tandon2 kosong
s1>=10 PDAM
(s2>=100) (s2<=25)
masalah
ya ya
tidak

pompa mati pompa hidup pompa mati

ya ya
Nomer GSM Proses
Terima SMS Input isi SMS
valid perintah sms

tidak tidak

Delay(1000ms)

Gambar 7. Diagram Alir Sistem

Jurnal Sains dan Teknologi | 87


P-ISSN : 2303-3142 E-ISSN : 2548-8570 Vol. 6, No. 1, April 2017

Alur proses sistem yang dibangun dikirimkan. Tahap pertama pada proses ini
diperlihatkan pada Gambar 7. Tahap adalah menguji apakah pesan yang diterima
pertama adalah inisialisasi. Terdapat berasal dari nomer gsm yang dikenal oleh
beberapa variabel yang diinisialisasi pada sistem. Sebelumnya, beberapa nomer gsm
tahap ini, seperti: nomer pin arduino, disimpan pada sistem mikrokontroler.
ketinggian (s), durasi (t), persentase Apabila nomer valid, maka pesan akan
ketinggian, no telp dan variabel logikal dibaca dan dibandingkan dengan perintah-
lainnya. Selanjutnya, mikrokontroler perintah yang telah ditentukan sesuai
melakukan setup awal. Pada tahap setup ini, dengan perintah yang diinginkan.
proses yang terjadi adalah mengaktifkan
shield gsm. Setelah shield gsm telah aktif, Implementasi
berikutnya dilakukan inisialisasi nomer gsm Implementasi perangkat keras sesuai
tujuan dan menentukan pin arduino yang dengan rancangan yang telah dilakukan
digunakan sebagai input dan output. sebelumnya ditunjukkan pada Gambar 8.
Tahap berikutnya adalah proses Mikrokontroler tersebut menggunakan daya
penghitungan ketinggian air yang memacu bersumber dari adapter 9V, 2A. Pengujian
proses lainnya seperti menghidupkan dilakukan dengan menghubungkan arduino
pompa air, menghidupkan keran solenoid, ke komputer untuk mendapatkan hasil
dan mengirim notifikasi sms. Selain itu ketinggian yang dihasilkan.
sistem menunggu perintah dari sms
pengguna, meliputi perintah informasi
ketinggian air dan pengrontrolan keran
solenoid. Keseluruh tahap ini akan dilakukan
secara terus menerus dengan delay 1 detik.
Pada penampungan air bawah
(tandon1), ada dua kondisi yang
diperhatikan yaitu kondisi tandon1 penuh
dan tandon1 kosong. Tandon1 berada pada
kondisi penuh apabila persentase ketinggian
air bernilai 100%, sedangkan dikatakan
habis apabila persentase ketinggiannya
sebesar lebih kecil dari 25%. Status tandon1
penuh akan mematikan keran solenoid.
Sedangkan pada status tandon1 kosong dan
keran solenoid mati maka akan dilakukan
Gambar 8. Implementasi Perangkat Keras
notifikasi melalui pengiriman sms dan
mengaktifkan keran solenoid.
Sesuai dengan kebutuhan fungsional
Penampung air atas (tandon2)
yang dijelaskan pada bagian sebelumnya,
memiliki logika yang hampir sama dengan
maka terdapat beberapa fitur yang
tandon1. Apabila tandon2 penuh maka
diimplementasikan pada sistem. Fitur
pompa air akan dimatikan. Namun, ketika
pertama yang dimiliki oleh sistem ini adalah
tandon2 kosong maka akan dihidupkan
mampu memberikan notifikasi persentase
pompa air apabila ketinggian air pada
volume air pada penampungan air.
tandon1 masih diatas 10% (masih terdapat
Persentase volume dihitung menggunakan
air). Jika tidak, maka akan dipastikan pompa
jarak antara sensor (bagian atas) terhadap
air mati. Logika ini untuk menghidari pompa
permukaan air. Semakin tinggi jarak (s)
air hidup terus menerus ketika tandon2 tidak
maka semakin kecil persentase volume yang
pernah penuh terisi karena tandon1 tidak
mengindikasikan level air pada
memiliki cukup air.
penampungan air. Untuk mengukur
Proses lainnya adalah sistem
ketinggian air tersebut menggunakan sensor
menunggu terus menerus perintah sms yang

Jurnal Sains dan Teknologi | 88


P-ISSN : 2303-3142 E-ISSN : 2548-8570 Vol. 6, No. 1, April 2017

ultrasonik, triger pada sensor ultrasonic akan isi_sms);


diaktifkan dan segera dinonaktifkan dengan delay(2000);
rentang sangat cepat yaitu 10mikrodetik. }
Waktu antara pengiriman pulsa tersebut }
sampai dengan diterima melalui pin echo
adalah waktu transmisi sinyal sampai
dengan dipantulkan (duration). Sehingga
ketinggian (s) dapat dihitung pada waktu
satu arah rambatan sinyal sebagai perkalian
waktu dengan kecepatan rambatan
(0,314detik) dibagi 2. Ketinggi air
berdasarkan jarak sensor terhadap
permukaan air dengan mempertimbangkan
tingkat toleransi yang diberikan. Fitur
tersebut diimplementasikan, seperti kode
dibawah ini.
Gambar 9. Shield GSM IComSat
void UkurContainer(){
digitalWrite(trig1,LOW);
delayMicroseconds(10); Selain mengirimkan sms sebagai
digitalWrite(trig1,HIGH); notifikasi. Sistem juga mampu menerima
delayMicroseconds(10);
perintah melalui sms yang dikirimkan oleh
digitalWrite(trig1,LOW);
pengguna. Sistem menerima sms dan hanya
akan memproses sms yang berasal dari
delayMicroseconds(10);
nomer GSM terdaftar. Terdapat beberapa
duration1 =
pulseIn(echo1,HIGH); perintah yang mampu diproses oleh sistem,
antara lain: “TURNON” untuk menghidupkan
distanceCont = (duration1 *
keran solenoid, “TURNOFF” untuk
vSuara/2); mematikan keran solenoid, “VOLUME”
persentaseCont = ((tContainer - untuk mengetahui ketinggian air pada
distanceCont) + tToleransi) / penampungan air bawah, dan “SET” untuk
tContainer * 100; mengatur ulang ukuran penampungan air.
Serial.println("Volume air Berikut adalah kode yang digunakan untuk
container: " + melakukan perintah tersebut.
String(persentaseCont) + "%");
} pos = sms.IsSMSPresent(SMS_UNREAD);

sms.GetSMS(pos,phone_number,20,sms_t
Fitur berikutnya adalah notifikasi level ext,20);
air melalui GSM. Sistem ini menggunakan for (i = 0; i < total_numbers; i++){
Shield GSM IcomSat seperti yang terlihat if
(String(phone_number).indexOf(number
pada Gambar 9. Implementasi kode s[i]) != -1 )
menggunakan library GSM oleh (Martines, {
2015). SMS akan dikirimkan kepada isNumberValid = true;
pengguna ketika level air telah dibawah Serial.println("Valid phone");
break;
persentase ambang batas minimum. }
Implementasi kode diperlihatkan sebagai }
berikut:
if (isNumberValid){
if
void sendSmsToMany(char* (String(sms_text).indexOf("TURNON")
isi_sms){ != -1)
int i; {
Serial.println("KERAN MENYALA");
for (i = 0; i < total_numbers;
digitalWrite(solenoidPin, HIGH);
i++){ }
sms.SendSMS(numbers[i], Else

Jurnal Sains dan Teknologi | 89


P-ISSN : 2303-3142 E-ISSN : 2548-8570 Vol. 6, No. 1, April 2017

if(String(sms_text).indexOf("TURNOFF }
") != -1) tTangki = atof(str_buffer);
{ }
Serial.println("KERAN MATI");
digitalWrite(solenoidPin, LOW);
Fitur berikutnya adalah sistem mampu
}else mengaktifkan pompa air untuk mengisi
if(String(sms_text).indexOf("VOLUME"
) != -1)
kembali tandon atas pada kondisi tertentu.
{ Pengaktifan pompa air berdasarkan
sprintf(sms_text_sim900, "Volume indikator volume air pada penampungan air
Air: %d persen", atas yang dihitung menggunakan sensor
(int)persentaseCont);
Serial.println("Volume Air: " +
ultrasonik. Pompa air hanya akan diaktifkan
String(persentaseCont) + " persen"); apabila air pada penampungan air bawah
sms.SendSMS(phone_number, tanah diatas ambang batas minimum. Hal ini
sms_text_sim900); mencegah kondisi dimana pompa air akan
aktif terus oleh karena penampungan air
} else
if(String(sms_text).indexOf("SET") != yang tidak akan pernah terisi penuh
-1) disebabkan oleh penampungan bawah tidak
{ memiliki cukup air.
setTContDanTangki();
}
// cek tangki
if(isTangkiFull()){
strncpy(sms_text, "",
if(digitalRead(relayPompaPin) ==
sizeof(sms_text));
LOW) {
strncpy(phone_number,"",
// pompa mati
sizeof(phone_number));
Serial.println("pompa mati. Tangki
isNumberValid = false;
penuh");
digitalWrite(relayPompaPin, HIGH);
}
Perintah “SET” diikuti dengan 2 nilai }else if(isTangkiEmpty()) {
if (persentaseCont >= 10) {
yang digunakan untuk memberikan nilai if (digitalRead(relayPompaPin) ==
tinggi penampung air bawah dan HIGH){
penampung air atas. Perintah ini akan // pompa hidup
memanggil fungsi setTContDanTangki() Serial.println("pompa hidup.
Tangki Kosong. Container Full");
yang bertujuan untuk membaca dua nilai digitalWrite(relayPompaPin,
yang diinputkan setelah perintah SET LOW);
tersebut dan menyimpannya pada variabel }
tinggi setiap penampung air. Kode }else{
if (digitalRead(relayPompaPin) ==
diperlihatkan sebagai berikut. LOW){
sendSmsToMany("Container
void setTContDanTangki(){ Kosong. PAM kemungkinan bermasalah");
int i = 4; Serial.println("Container
int start = 0; Kosong. PAM kemungkinan bermasalah");
while (sms_text[i] != ';'){
Serial.println("pompa mati.
str_buffer[start] = Tangki kosong, Container kosong");
sms_text[i]; digitalWrite(relayPompaPin,
i++; HIGH);
start++; }
} }
tContainer = atof(str_buffer); }
Fitur yang terakhir pada sistem ini
i++; adalah mengaktifkan secara otomatis atau
start = 0;
melalui perintah sms oleh pengguna
while (sms_text[i] != ';'){
str_buffer[start] = terhadap keran solenoid. Keran solenoid
sms_text[i]; akan diaktifkan secara otomatis apabila
i++; jumlah air pada penampungan bawah tanah
start++; telah berada pada ambang batas minimum.

Jurnal Sains dan Teknologi | 90


P-ISSN : 2303-3142 E-ISSN : 2548-8570 Vol. 6, No. 1, April 2017

Berikut ini adalah kode implementasi dari dapat terhubung ke jaringan GSM. Pada
fitur tersebut. penelitian ini menggunakan adapter listrik
tambahan dengan daya 9V 2A.
if (isContainerFull()){
if (digitalRead(solenoidPin) == SIMPULAN
HIGH) {
Sistem instalasi air terkomputerisasi
Serial.println("Volume Air
kontainer 100%"); dengan mikrokontroler menggunakan
// keran mati perintah sms dapat dibangun sesuai dengan
Serial.println("Keran mati"); kebutuhan fungsionsal yang
digitalWrite(solenoidPin, LOW); dispesifikasikan. Sistem ini mampu
} memberikan notifikasi ketika volume air
pada penampungan dibawah ambang batas
}else if(isContainerEmpty()) { minimum yang diperbolehkan. Selain itu,
if (digitalRead(solenoidPin) == LOW) sistem memungkinkan pengguna untuk
{ meminta informasi volume air pada tandon
sendSmsToMany("Volume Air dibawah air dan mengontrol keran elektrik melalui
25%");
Serial.println("Kirim SMS volume
perintah SMS. Penggunaan sms sebagai
Air kontainer dibawah 25%: "); media komunikasi sistem adalah teknologi
yang mudah dan relatif murah dalam
// keran hidup implementasi.
Serial.println("Keran hidup");
digitalWrite(solenoidPin, HIGH); UCAPAN TERIMAKASIH
} Ucapan terimakasih disampaikan
} kepada Universitas Udayana melalui
Lembaga Penelitian dan Pengabdian
Implementasi sistem dapat dilakukan Kepada Masyarakat dan Fakultas MIPA
dengan baik menggunakan sistem yang telah membiayai pelaksanaan
mikrokontroler Arduino Uno. Beberapa penelitian ini.
kendala yang terjadi pada saat implementasi
DAFTAR PUSTAKA
antara lain, keterbatasan memory 32kB
pada arduino uno menyebabkan komputasi Chattoraj, S. (2015). Smart Home
yang rumit akan mengalami masalah. Automation Based On Different
Sistem akan menjadi tidak stabil yang Sensors And Arduino As The Master
mengakibatkan nilai akurasi pengujian Controller, 5(10), 1–4.
ketinggian air menjadi bermasalah. Fuadi, M. (2012). Sistem Monitoring Tinggi
Permasalahan lainnya adalah, penggunaan Muka Air Tandon Berbasis Sensor
sensor ultrasonic HC-SR04 tidak akurat Ultrasonik. Universitas Islam Negeri
pada jarak yang pendek (kedalaman kurang Sunan Kalijaga.
dari 30 cm). Pengujian menggunakan media Hariyanto, D. P., & Cuswanto, A. (2010).
penampungan kecil menyebabkan akurasi Otomatisasi Pengisian Penampung Air
perhitungan jarak menjadi terganggu. Berbasis Mikrokontroller At8535.
Namun, pada penampungan yang lebih Sekolah Tinggi Manajemen Informatika
besar tidak lebih dari 4 meter dan jarak Dan Komputer AMIKOM Yogyakarta.
maksimal air terhadap sensor 30 cm, sistem Kadir, A. (2013). Panduan Praktis
menghasilkan hasil perhitungan sesuai Mempelajari Aplikasi Mikrokontroler
dengan yang diharapkan. Dan Pemrogramannya Menggunakan
Shield GSM membutuhkan daya yang Arduino. Yogyakarta: Andi Publisher.
stabil. Daya tidak cukup didapatkan hanya Kumar, S. (2014). Ubiquitous Smart Home
dengan menggunakan baterai 9v melalui System Using Android Application.
arduino atau daya yang didapatkan dari International Journal of Computer
kabel usb. Kekurangan daya akan Networks & Communications (IJCNC),
mengakibatkan modem tidak akan aktif atau 6(1), 33–43.
sulit mendapatkan sinyal yang cukup untuk https://doi.org/10.5121/ijcnc.2014.6103

Jurnal Sains dan Teknologi | 91


P-ISSN : 2303-3142 E-ISSN : 2548-8570 Vol. 6, No. 1, April 2017

Lin, H. (2013). Implementing Smart Homes


with Open Source Solutions 2 .
Backgrounds and Related Works.
International Journal of Smart Home,
7(4), 289–296.
Martines, M. (2015). GSM-GPRS-GPS-
Shield. Retrieved from
https://github.com/MarcoMartines/GSM
-GPRS-GPS-Shield
Piyare, R., & Lee, S. R. (2013). Smart Home-
Control and Monitoring System Using
Smart Phone, 24, 83–86.

Jurnal Sains dan Teknologi | 92

Anda mungkin juga menyukai