tugas
DESCRIPTION
pingTRANSCRIPT
-
1
Makalah Seminar Kerja Praktek
SENSOR ULTRASONIK UNTUK DETEKSI KETINGGIAN AIR BERBASIS
MIKROKONTROLLER ARDUINO PADA PT.ANGKASA PURA I (PERSERO)
BANDARA AHMAD YANI SEMARANG
Ganjar Winasis.1, Ajub Ajulian Z., ST. MT.2 1Mahasiswa dan
2Dosen Jurusan Teknik Elektro, Fakultas Teknik, Universitas Diponegoro
Jl. Prof. Sudharto, Tembalang, Semarang, Indonesia
Email : [email protected]
Abstrak
Sistem sensor deteksi ketinggian air mempunyau banyak metode yang berbeda-beda dari zaman ke
zaman. Di era yang modern ini, sensor deteksi ketinggian air dapat dilakukan tanpa harus kontak langsung
dengan objek yang diinginkan. Sensor deteksi ketinggian air dapat menggunakan teknologi sensor ultrasonik.
Dengan adanya sistem sensor ultrasonic untuk deteksi ketinggian air ini diharapkan dapat membantu
engineer dalam mengontrol ketinggian tanpa harus mengkhawatirkan masalah keropos pada alat. Sensor
ultrasonik juga tergolong sensor yang simple dan akurat.
Pada makalah kerja praktek ini akan dibahas bagaimana cara perancangan dan pembuatan sistem
sensor ultrasonic untuk deteksi ketinggian air dengan komponen mikrokontroller arduino dan sensor HC-SR04.
Kata Kunci : water level sensor, sensor, arduino, HC-SR04
I. PENDAHULUAN
1.1 Latar Belakang
Dalam dunia jasa pelayanan transportasi
udara Bandara merupakan salah satu aspek dalam
menunjang kemajuan dunia penerbangan. Dengan
berkembangnya teknologi pesawat yang semakin
canggih, bandara pun juga dituntut untuk terus
berkembang. Pengembangan bandara sendiri dapat
dilakukan pada aspek teknologi, pelayanan, maupun
kenyamanan pada landasan pesawat.
Pada umumnya, di Indonesia, seluruh
bandara sudah dilakukan pembanguan yang lebih
lanjut untuk melayani kebutuhan penerbangan. Di
kota Semarang, Bandara Ahmad Yani juga tidak
mau ketinggalan untuk mengembangkan
bandaranya. Salah satunya dengan mengembangkan
konsep floating airport pertama di Indonesia.
Floating Airport merupakan pembangunan bandara
diatas permukaan air laut. Konsep ini sendiri
digunakan karena letak geografis bandara Ahmad
Yani bersebelahan dengan laut.
Dengan konsep yang akan diterapkan
tersebut, terdapat beberapa kendala yang harus
diantisipasi dengan cepat dan tepat. Salah satu
kendala adalah masuknya air laut ke dalam landasan
pesawat. Masuknya air laut ini dapat dikarenakan
angin laut. Jika dibiarkan, air laut akan menggenangi
landasan. Kondisi ini dapat diperparah jika terjadi
hujan. Saat hujan, landasan bias tergenang air dan
pesawat tidak dapat beroperasi.
Untuk mengantisipasi kondisi banjir,
pengelola bandara Ahmad Yani telah menyediakan
pompa air dan beberapa tangki penampungan untuk
air laut dan air hujan di landasan. Berdasarkan
kondisi tersebut, dalam laporan ini penulis akan
membuat sistem otomasi untuk tangki penampungan
air. Sistem yang dimaksut adalah penggunaan sensor
ultrasonik untuk deteksi ketinggian level air.
1.2 Tujuan
Tujuan penulisan makalah kerja praktek ini
adalah untuk mempelajari proses dalam
mendesain sebuah sensor ultrasonik untuk deteksi
ketinggian air.
1.3 Batasan Masalah
Makalah ini dibatasi hanya pada
perencanaan software dan hardware dengan
menggunakan mikrokontroller arduino.
II. DASAR TEORI
Sensor ultrasonik dalam perencanaanya
digunakan untuk mendeteksi ketinggian air dalam
sebuah penampungan air. Dengan perancangan ini,
diharapkan dapat memudahkan dalam memantau
ketinggian air tersebut. Dalam perancangannya,
-
2
sensor ini memerlukan beberapa komponen penting.
Berikut adalah komponen penyusun sensor
ultrasonik sebagai deteksi ketinggian air : a. Mikrokontroler
Mikrokontroler adalah salah satu dari bagian
dasar dari suatu sistem komputer. Meskipun
mempunyai bentuk yang jauh lebih kecil dari suatu
komputer pribadi dan komputer mainframe,
mikrokontroler dibangun dari elemen-elemen dasar
yang sama. Secara sederhana, komputer akan
menghasilkan output spesifik berdasarkan inputan
yang diterima dan program yang dikerjakan. Seperti
umumnya komputer, mikrokontroler adalah alat yang
mengerjakan instruksi-instruksi yang diberikan
kepadanya. Artinya, bagian terpenting dan utama
dari suatu sistem terkomputerisasi adalah program
itu sendiri yang dibuat oleh seorang programmer.
Program ini menginstruksikan komputer untuk
melakukan jalinan yang panjang dari aksi-aksi
sederhana untuk melakukan tugas yang lebih
kompleks yang diinginkan oleh programmer.
Gambar 1. Tampilan Arduino Mega 2560
Untuk komponen mikrokontroller, penulis
menggunakan Arduino Mega 2560. Arduino Mega
2560 adalah board berbasis mikrokontroller
Atmega2560. Board ini memiliki 54 digital I/O pin
(15 pin dapat digunakan sebagai ouput PWM), 16
input analog, 4 UARTs, koneksi USB, power jack,
dan tombol reset.
b. Sensor HC-SR04
Sensor HC-SR04 merupakan sensor
ultrasonik yang berfungsi untuk melakukan deteksi
dengan parameter jarak. Sensor ini memiliki daerah
kerja antara 2cm hingga 400cm dalam kondisi tanpa
terjadi kontak langsung dengan objek. HC-SR04
meliputi ultrasonic transmitters, receiver, dan
rangkaian kontrol. Sensor ini menggunakan
gelombang ultrasonik untuk menentukan jarak dari
benda yang berada di depannya. Cara kerjanya mirip
dengan lumba-lumba atau kelelawar saat melakukan
navigasi.
Gambar 2. Modul Sensor HC-SR04
HC-SR04 memiliki kinerja yang baik dalam
mendeteksi jarak, dengan tingkat akurasi yang tinggi
serta deteksi yang stabil. Penggunaannya pun sangat
mudah, misalnya pada Arduino cukup hubungkan
keluaran dari modul sensor ini dengan pin masukan
digital dari papan pengembang ini. Hitung waktu
antara saat pengiriman signal dengan saat signal
pantulan diterima, bagi dengan dua kali kecepatan
suara, maka jarak yang terdeteksi akan segera
didapatkan.
c. Software Arduino ISE
Arduino IDE adalah sebuah editor yang
digunakan untuk menulis program, mengcompile
ke mikrokontroler keluarga AVR. Program ini
memungkinkan penggunanya memprogram AVR
dengan bahasa C/C++ yang relatif lebih familiar
dibandingkan bahasa pemrograman lainnya.
Dalam penggunaan, arduino hanya perlu
mendefinisikan dua fungsi untuk membuat
program runable, yaitu:
1. Setup () :fungsi dijalankan sekali pada awal
program yang dapat
menginisialisasi pengaturan.
2. Loop () :fungsi yang disebut berulang-ulang
sampai mikrokontoler off.
Arduino IDE menggunakan GNU toolchain
dan AVR libc untuk mengkompilasi program-
program dan AVR dude untuk upload program.
-
3
Gambar 3. Tampilan Arduino ISE
Terlihat dari gambar 3 Arduino IDE memiliki
beberapa beberapa komponen dasar yang penting
seperti workspace, status eror, toolbar menu.
1. Workspace digunakan untuk menulis
sintakssintaks program
2. Eror status digunakan untuk mengecek
status eror dari program
3. Toolbar menu digunakan untuk
menggunakan fungsi fungsi yang berada
pada suatu menu tersebut.
Berikut dapat dilihat pada tabel 2.1 beberapa
instruksi-instruksi dasar yang dapat digunakan pada
mikrokontroler ATmega32.
Tabel 1. Perintah dasar pemrograman Arduino
III. PEMBAHASAN dan PENGUJIAN
a. Perancangan Umum
Suara yang dipancarkan transmitter sensor
ultrasonik dapat dipantulkan oleh berbagai bidang.
Begitu juga pada zat cair, suara ultrasonik dapat
dipantulkan ke receiver dengan baik. Suara
ultrasonik tersebut merupakan parameter utama
yang digunakan untuk melakukan pengukuran
ketinggian air. Data yang diterima receiver akan
diteruskan ke mikrokontroller untuk melakukan
perintah output yang diinginkan.
Dalam penerapannya disebuah penampungan
air, sensor ultrasonik di letakkan pada ujung atas dan
menghadap ke bawah secara tegak lurus.
Transmitter dan receiver harus langsung berhadapan
dengan permukaan air. Apabila ada benda asing
yang menghalangi, sensor tidak akan mendeteksi
permukaan air melainkan mendeteksi benda asing
tersebut. Kondisi tersebut dapat mengakibatkan
kesalahan dalam mendapatkan data yang diinginkan.
sinyalkeluaran
gelombangultrasonik
fluida
sensorultrasonik
sinyalkeluaran
gelombangultrasonik
fluida
sensorultrasonik sinyal
keluaran
gelombangultrasonik
fluida
sensorultrasonik
bendaasing
(a) (b) (c)
Gambar 4. Penempatan posisi sensor ultrasonik
Pada gambar 4 (a) dapat kita lihat bagaimana
penempatan sensor ultrasonik yang benar.
Sedangkan pada gambar 4 (b) dan (c) merupakan
penempatan sensor ultrasonik yang salah dan tidak
dapat berfungsi sesuai dengan kontrol yang
diberikan.
-
4
Diagram Alir Program
Berikut adalah gambaran dari diagram alir
yang mendasari sistem dari sensor ultrasonik untuk
deteksi ketinggian air :
Gambar 5. Diagram Alir Program
Perancangan Hardware
Dalam mendesain perangkat sensor deteksi
ketinggian permukaan air, penulis menggunakan
beberapa komponen utama. Dalam tabel 3.1 berikut,
dapat dilihat daftar singkat komponen-komponen
utama yang digunakan :
Tabel 2. Komponen komponen utama
No Komponen Kegunaan
1 Arduino Mega 2560 Mikrokontroller sensor
2 HC-SR04 Sensor ultrasonik
3 LED Hijau Indikator ON/OFF pompa air
4 LED Merah Indikator ketinggian permukaan
air
Rangkaian sensor deteksi ketinggian
permukaan air ini sebenarnya dapat bekerja dengan
koneksi langsung pada pompa air. Namun dalam
melakukan penelitian ini, penulis hanya
menggunakan led hijau sebagai indikator mati atau
nyalanya pompa air. Nantinya rangkaian sensor ini
akan dikembangkan lagi dan langsung dikoneksikan
ke pompa air.
Gambar 5. Rangkaian sensor ultrasonik
Dilihat pada gambar 5, sensor HC-SR04
langsung dikoneksikan pada Arduino Mega.
Terdapat 4 pin pada HC-SR04, yaitu : pin vcc, pin
ground, pin echo, dan pin trig. Pin trig terhubung
pada pin digital 12. Pin trig berfungsi sebagai input
dan mengirimkan sinyal suara ultrasonik untuk
dipantulkan pada permukaan air. Sedangkan pin
echo terkoneksi dengan pin digital 13. Pin echo
berfungsi sebagai output. Pin ini menunggu sinyal
suara ultrasonik yang telah dipantulkan dan
langsung melakukan pengukuran ketinggian air.
Sinyal keluaran dari sensor HC-SR04 berupa sinyal
high atau sinyal low.
Dalam perangkat sensor yang dibuat dalam
laporan ini, sensor diletakkan pada atas permukaan
dan menghadap ke bawah secara tegak lurus.
Sehingga dalam melakukan pengkodean, perlu
diperhatikan range jarak yang diinginkan dari
sensor. Dalam penelitian ini, digunakan media
ember sebagai alat bantu pengganti tandon
penampungan air. Ember yang digunakan memiliki
ketinggian 32cm.
Terdapat 4 buah led pada rangkaian sensor. 3
buah led merah masing-masing terkoneksi dengan
arduino pada pin 4, pin 5, dan pin 6. Sedangkan 1
buah led hijau terkoneksi dengan arduino pada pin 3.
Arduino mega 2560 bekerja dengan tegangan
sebesar 5 VDC. Begitu pula dengan sensor HC-
SR04 yang bekerja dengan vcc sebesar 5 VDC. LED
merah memerlukan tegangan sekitar 1,8 V-2,1 V
dan LED hijau memerlukan tegangan 2,6 V. Untuk
menunjang keseluruhan sistem maka digunakan
baterai sebesar 9 V.
-
5
Perancangan Software
Perancangan softaware dilakukan dengan
menggunakan software Arduino ISE. Software yang
dimaksut merupakan listing program untuk
mengatur miktrokontroller yang digunakan. Berikut
listing program dan penjelasanya:
const int pingPin = 13; //deklarasi pin echo pada pin
13
int inPin = 12; //deklarasi pin echo pada pin 12
int greenLed = 3; //led hijau pada pin 3
int redLed = 4; //led merah pada pin 4
int redLed_2 = 5; //led merah_2 pada pin 5
int redLed_3 = 6; //led merah_3 pada pin 6
int maximum_range = 28; //menentukan range
maksimum sebesar 28 cm
int minimum_range = 5; //menentukan range
minimum sebesar 5 cm
void setup() {
Serial.begin(9600); //menentukan baud rate sebesar
9600
}
void loop()
//siklus trigpin/echopin digunakan untuk
menghitung jarak dengan mengirimkan sinyal
ultrasonik
{
long duration, tinggi; //deklarasi tinggi merupakan
variabel dari long duration
pinMode(pingPin, OUTPUT); //pinPin sebagai
output
pinMode(greenLed, OUTPUT); //greenLed sebagai
output
pinMode(redLed, OUTPUT); //redLed sebagai
output
pinMode(redLed_2, OUTPUT); //redLed_2 sebagai
output
pinMode(redLed_3, OUTPUT); //redLed_3 sebagai
output
digitalWrite(pingPin, LOW); //set pingPin on ketika
low
delayMicroseconds(2); //delay
digitalWrite(pingPin, HIGH); //set pingPin off
ketika high
delayMicroseconds(5); //delay
digitalWrite(pingPin, LOW);
pinMode(inPin, INPUT); //set inPin sebagai input
duration = pulseIn(inPin, HIGH);
tinggi =
microsecondsToCentimeters(duration); //merubah
waktu ke jarak
//* kode untuk mengatur on/off sanyo (led hijau) *//
if (tinggi >= maximum_range)
//jika tinggi permukaan lebih dari sama dengan max
range (air habis)
{
digitalWrite(greenLed, HIGH); //greenLed nyala
}
else if (tinggi = 27) //jika tinggi lebih dari sama dengan
27 cm
{
digitalWrite (redLed, LOW); //redLed mati
-
6
digitalWrite (redLed_2, LOW); //redLed_2 mati
digitalWrite (redLed_3, HIGH); //redLed_3 nyala
}
else if ( tinggi = 15.5 )
//jika tinggi kurang dari sama dengan 16,5 cm dan
lebih besar sama dengan 15,5 cm
{
digitalWrite (redLed, LOW); //redLed mati
digitalWrite (redLed_2, HIGH); //redLed_2 nyala
digitalWrite (redLed_3, HIGH); //redLed_3 nyala
}
else if (tinggi
-
7
led hijau dan ketiga led merah saat permukaan air
mencapai level LOW, MEDIUM, dan HIGH.
Pengujian juga dilaksanakan dalam dua proses, yaitu
proses pengisian air dan pembuangan air.
Gambar 7. Kondisi ketika proses pengisian air dan
permukaan air masih pada level LOW
Gambar 8. Kondisi ketika proses pengisian air dan
permukaan air masih pada level MEDIUM
Gambar 9. Kondisi ketika proses pengisian air dan
permukaan air masih pada level HIGH
Dari hasil pengujian sistem, hasil data yang
didapat dalam kondisi pengisian air adalah sebagai
berikut :
Tabel 3. Tabel hasil pengamatan level air saat pengisian
air
No Level air
Level air
sebenarnya
(cm)
Led
hijau
Led
merah
Led
merah_2
Led
merah_3
1 LOW 0,5 Nyala Mati Mati Nyala
2 MEDIUM 17 Nyala Mati Nyala Nyala
3 HIGH 28,5 Nyala Nyala Nyala Nyala
Gambar 10. Kondisi ketika proses pembuangan air
dan permukaan air masih pada level HIGH
Gambar 11. Kondisi ketika proses pembuangan air
dan permukaan air masih pada level MEDIUM
-
8
Gambar 12. Kondisi ketika proses pengisian air dan
permukaan air masih pada level LOW
Dari hasil pengujian sistem, hasil data yang
didapat dalam kondisi pengisian air adalah sebagai
berikut :
Tabel 4. Tabel hasil pengamatan level air saat
pembuangan air
No Level air
Level air
sebenarnya
(cm)
Led
hijau
Led
merah
Led
merah_2
Led
merah_3
1 HIGH 28,3 Nyala Nyala Nyala Nyala
2 MEDIUM 17,1 Nyala Mati Nyala Nyala
3 LOW 0,54 Nyala Mati Mati Nyala
Kondisi nyala led sudah sesuai dengan source
code yang diberikan pada mikrokontroller. Namun
kondisi ketinggian permukaan air berbeda dengan
source code yang diberikan. Pada proses pengisian
air, kondisi sebenarnya saat permukaan air pertama
kali menyentuh level yang ditentukan, yaitu :
LOW=0,5 cm ; MEDIUM=17 cm ; dan HIGH=28,5
cm. Dan saat proses pembuangan air, kondisi
sebenarnya saat permukaan air menyentuh level
yang ditentukan, yaitu : HIGH=28,3 cm ;
MEDIUM=17,1 cm ; dan LOW=0,54 cm.
Sedangkan pada kode yang diberikan seharusnya,
yaitu : LOW=0cm ; MEDIUM=16cm ; dan
HIGH=27cm. Perbedaan yang terjadi ini
dikarenakan dimensi ember yang mengerucut dan
tidak rata. Sehingga saat melakukan penandaan level
air tidak presisi.
IV. KESIMPULAN
5.1 Kesimpulan
Dari beberapa pemaparan yang telah diulas
sebelumnya, maka dapat kita Tarik kesimpulan
sebagai berikut :
1. Pembuatan sistem sensor level air telah mencapai spesifikasi yang diinginkan.
2. Sensor HC-SR04 merupakan sensor ultrasonik yang dapat mengukur jarak
sebuah objek. Sensor ini memiliki 2
komponen utama untuk mendukung
kinerjanya, yaitu transmitter dan receiver.
3. Sensor HC-SR04 dapat diatur jarak pendeteksiannya sesuai dengan indikator
level air yang diinginkan.
4. Sensor HC-SR04 dapat melakukan deteksi dengan jarak maksimum 4 m.
5. Terdapat 3 level air yang digunakan dalam percobaan, yaitu : low, medium, dan high.
6. Arduino Mega 2560 dan sensor HC-SR04 bekerja dengan tegangan sebesar 5VDC.
5.2 Saran
Dalam pembuatan sistem sensor level air
yang dilakukan oleh penulis, masih banyak memiliki
kekurangan. Saat melakukan uji coba, hasil yang
didapat kurang maksimal. Hal tersebut disebabkan
karena media uji coba berupa ember. Ada baiknya
apabila uji coba dapat dilaksanakan langsung
dilingkungan lapangan di Bandara Ahmad Yani
Semarang.
DAFTAR PUSTAKA
1. ,http://www.angkasapura1.co.id/sejarah.
Angkasa Pura Airports. Sejarah, 2013.
2., http://achmadyani-airport.com/sejarah. Bandar
Udara Ahmad Yani Semarang. Sejarah, 2013.
3., http://komponenelektronika.biz/sensor-
ultrasonik.html. Komponen Elektronika. Sensor
Ultrasonik, 2013.
4.Kadir, Abdul. Panduan Praktis Mempelajari
Aplikasi Mikrokontroller dan Pemrogramanya
menggunakan Arduino. Penerbit Andi, 2013.
5.,http://arduino.cc/en/Main/ArduinoBoardMega2
560. Arduino, 2014.
-
9
BIODATA PENULIS
Ganjar Winasis, lahir di
kota Bandung pada tanggal
15 Juni 1993. Penulis
mengawali pendidikanya di
TK IT Assalamah Ungaran
kemudian melanjutkan di
SD IT Assalamah Ungaran
selama 6 tahun. Setelah itu
melanjutkan ke SMPN 21 Semarang selama 3
tahun, berikutnya melanjutkan pendidikan di
SMAN 4 Semarang dan sekarang penulis
melanjutkan studi di Fakultas Teknik Elektro
Universitas Diponegoro dengan konsentrasi yang
diminati adalah Elektronika.
Semarang, 20 November 2014
Mengetahui, Dosen
Ajub Ajulian Z., ST. MT
NIP. 197107191998022001