Mengukur Debit dan Volume Air dengan Flow Meter dan Arduino

Flow meter adalah alat yang digunakan untuk mengukur aliran suatu zat (air atau gas) dalam luasan penampang tertentu. Pengukuran dengan flow meter akan menghasilkan sebuah nilai yang disebut ‘flow rate’ atau dalam bahasa kita disebut ‘debit’ dengan satuan L/h (Liter per hours). Satuan ini kemudian bisa diturunkan menjadi L/m (Liter per minutes) atau L/s (liter per second) sesuai kebutuhan. Dari besaran flow rate/debit ini jika dikalikan dengan waktu, akan menghasilkan nilai volume dalam ‘liter’ dengan rumus

[alert-announce]V = Q x t[/alert-announce]

dengan V adalah volume (L), Q adalah debit air (L/s) dan t adalah satuan waktu dalam detik

Pada tutorial kali ini, saya akan mendemonstrasikan bagaimana mengukur debit dan volume air menggunakan flow meter dan Arduino sebagai kontrollernya. Di pasaran, tersedia sebuah flow meter yang relatif murah yang dapat kita manfaatkan. Kurang lebih begini penampakannya

flow sensor

Flow meter ini memiliki spesifikasi sebagai berikut :
– tegangan : 5 – 24 VDC
– konsumsi arus : 15 mA
– bekerja pada tekanan air < 1,75 MPa
– range debit air : 1 – 30 L/menit
– luas penampang : ½ inci

Buat yang butuh flow meter / flow sensor ini bisa dibeli di sini

Prinsip kerja dari sensor flow meter ini adalah mengukur aliran air dengan cara mengitung putaran sebuah kincir air di dalam flow meter ini yang otomatis berputar jika ada aliran air yang melewatinya. Dalam kincir air disematkan sebuah rotor yang memiliki magnet dan ketika berputar akan menghasilkan medan magnet berdasarkan prinsip ‘Hall effect’. Dari event ‘ada medan magnet’ dan ‘tidak ada medan magnet’ yang berulang-ulang saat kincir air berputar akan menghasilkan output berupa gelombang kotak. Signal inilah yang nantinya akan kita hitung untuk menghasilkan nilai debit dan volume air yang melewati flow meter ini.

yf-s201-water-flow-sensor

Sensor output ini memiliki tiga kabel yang berwarna merah, hitam dan kuning (ada produk lain yang berwarna biru/putih). Untuk warna merah dan hitam sudah jelas peruntukkannya yakni untuk tegangan 5V dan Ground, sedangkan untuk warna kuning adalah output dari sensor. Untuk mencoba menangani sensor flow meter ini, susunlah gambar rangkaian sebagai berikut :

flow meter arduino

Berikutnya isikan dan upload sketch di bawah ini ke dalam Arduino Anda:

byte indikator = 13;

byte sensorInt = 0; 
byte flowsensor = 2;

float konstanta = 4.5; //konstanta flow meter

volatile byte pulseCount;

float debit;
unsigned int flowmlt;
unsigned long totalmlt;

unsigned long oldTime;

void setup()
{

// Inisialisasi port serial
Serial.begin(9600);

pinMode(indikator, OUTPUT);
digitalWrite(indikator, HIGH); 

pinMode(flowsensor, INPUT);
digitalWrite(flowsensor, HIGH);

pulseCount = 0;
debit = 0.0;
flowmlt = 0;
totalmlt = 0;
oldTime = 0;

attachInterrupt(sensorInt, pulseCounter, FALLING);
}


void loop()
{

if((millis() - oldTime) > 1000) 
{ 
detachInterrupt(sensorInt);
debit = ((1000.0 / (millis() - oldTime)) * pulseCount) / konstanta;
oldTime = millis();
flowmlt = (debit / 60) * 1000;
totalmlt += flowmlt;

unsigned int frac;

Serial.print("Debit air: ");
Serial.print(int(debit));
Serial.print("L/min");
Serial.print("\t");

Serial.print("Volume: "); 
Serial.print(totalmlt);
Serial.println("mL"); 

pulseCount = 0;

attachInterrupt(sensorInt, pulseCounter, FALLING);
}
}


void pulseCounter()
{
// Increment the pulse counter
pulseCount++;
}

Untuk mengetahui hasil pengukuran, bukalah jendela Serial Monitor melalui menu Tools-Serial Monitor. Seharusnya Anda akan melihat tampilan seperti gambar di bawah:

hasil pengukuran debit dan volume air dengan flow meter dan arduino

Selamat, Anda sudah berhasil membuat sebuah meteran air digital sederhana. Untuk pengembangannya dapat Anda tambahkan display untuk menampilkan data pengukuran dalam bentuk seven segment atau LCD. Aplikasi di atas dapat pula dikembangkan untuk membuat sebuah counter PERTAMINI yang sekarang ini menjamur di jalan-jalan :).

Berikut ini adalah contoh implementasi rangkaian di atas (flow meter) ditambahkan dengan solenoid valve untuk membuat alat pengisi botol air otomatis, Bisa juga diimplementasikan untuk galon air yang lebih besar atau kemasan air/minyak dengan volume tertentu (untuk mempercepat proses pengepakan). Silahkan lihat video di bawah ini

Dan terakhir, dengan menambahkan teknologi IoT (Internet of Things), Anda dapat mengaplikasikan pengukuran debit dan volume air ini secara jarak jauh (remote monitoring) untuk mendukung program Smart City yang sedang digalakkan pemerintah saat ini. Kapan-kapan akan saya tulis tutorial tentang IoT ini, stay tune on my blog ya …

4.7 3 votes
Article Rating

Leave a Reply

400 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Lisin

Blognya keren. Ijin menimba ilmu di Blog Njengan mas…

alman faluthi

Selamat pagi mas

Markus

Bro bisa minta tutorial flow meter air digital dgn arduino untuk air minum isi ulang 19 ltr
Matur nuwun

asep wawan

pakai algoritma kah??

yanur efendi

gan
saya yanur efendi
tolong dong bikinin sofware tentang pertamini…yang bisa di setting…

yanur efendi

Gan… Itu bisa di setting ga, supaya bisa di setting ukuran liter nya kalo kurang atau kelebihan

hartono

mas bro tolong contoh speed flow tersbut aku mau jadikan saklar untuk buzzer tp aku blm berhasil

Alif

Selamat malam mas saptaji, saya mau nanya perihal fungsi if, saya sudah membuat logika if, agar if bisa jalan untuk membaca jumlah total mililiter yang ngalir bagaimana ya?

Saya sedang membuat mini token gan, untuk if yang saya buat seperti ini, tapi dengan coding ini, ketika mililiter yang saya batasi (disitu 1000ml /1Liter) servo valve gamau nutup gan.

if {key == ‘1’}{
serial.println{“token berhasil”};
if(totalmlt >= 0){
cobaservo.write(60);
pulseCount++;
}
else if (totalmlt >= 1000){
cobaservo.write(180);
totalmlt = 0;
pulseCount++;
}

Alif

tetep gamau nutup ya pas 1000mlnya? pas nekan opsi keypad tombol angka ‘1’ bisa. tapi gabisa ngedetek 1000ml nya

Indra

hallo pak.. keren progrmanya, sudah saya coba. kesimpulannya kekuatan motor/tekanan air akan berdampak pada hasil akhir perhitungan ya? jadi kalo mau membaut alat ukur volume air tekanan air harus konstan ya?

Ririz

terimakasih kak, berguna sekali :’)

Yodi Adityatama

gan, kalo mau gunain 2 flow sensor sekaligus gmana caranya dalam satu arduino gan??

Asrul

Mas Ajie Terima kasih atas sharing ilmunya.
Mau nanya kalau untuk aliran gas pipa apa juga bisa ya sensor di atas? mas aji apa ada sensor yg cocok untuk gas ?

dias

bisa untuk bahan bakar kah kak?

Ratna

Assalamualaikum mas aji, terimakasih ya artikelnya sangat bermanfaat..

Ratna

Flow meter t cara kerjanya gmna ?
,Trs outputnya flow meter buat ngasih sinyal ke arduino bhwa air t udh mencukupi berupa apa outputnya kak

adi

bang boleh minta alamat emailnya saya mau sharing, kalau boleh bisa chat ke email saya adipradipta93@gmail.com

Wita

Apakah ada contoh untuk penggunaan di raspberry? Berhubung sy menggunakan raspberry.

Hardi

Minta contacknya bro

achmad

makasih ilmunya mas. cukup jelas unt pemula seperti saya. matur nuwun. semoga selalu bermanfaat.

rizky

bro kalau di pake untuk menghitung perliter buat dispenser bisa gak kodiangan nya?

bani

blogger nya sangat bermanfaat untuk saya
saya ingin bertanya mas,saya ingin membuat sensor untuk mengukur debit air di bak mandi saya, kira2 alat apa saja yang saya butuhkan ? maaf masih newbie 🙁
terimakasih sebelumnya

nn

Terimakasih informasinya sangat membantu. Saya mau bertanya
1. bagaimana jika pengukurannya akan diubah ke L/hour atau L/second?
2. nilai konstanta 4.5 itu apa dan didapat dari mana, saya menggunakan waterflow YF-S201 apa nilai konstantanya juga sama?

Faja

mas kalo boleh tau websiteny jurnal tentang flow meter ini dari mana aja ya mas, soalny buat daftar pusataka LA nih, akan sangat membantu bila tau wibsiteny. hatur nungun mas sebelumnya hehe..

Muhammad tamjidi

Bang mau nanya mohon pencerahan nya 🙂
Kalo udah dapat kan data debit air nya seperti contoh diatas , data nya bisa di apakan yaa bang ? Ada contoh gak ? Mohon di share bang

Muhammad tamjidi

Mksd nya bukan gitu bang yg saya mksd adalah gini itukan diatas setelah semua jalan n hasil nya kan tampil seperti foto diatas , perliter nya brapa volume nya berapa nah data itu nya bisa diolah atau dilakukan perhitungan apa yaa bang ? Data nya itu digunakan buat apa lagi selanjut nya ?

Muhammad tamjidi

saya kan mau di gunakan untuk pengukuran debit air di irigasi pertanian, jd setelah di lakukan pemasangan n data pervolume nya udah didapat brapa . Selnjutnya data nya itu bisa saya gunakan buat apa yaa ? ( setahu mas buat apa)

Muhammad tamjidi

Bisa minta nomer tlpon bang biar jelasin nya enak ?

Muhammad tamjidi

Saya buat sistem irigasi itu yaaa sama seperti aplikasi mas yg diatas untuk pencatatan perdetik pervolume. Nah setelah itu saya mau nanya mas stelah itu terbuatkan n tercatat mas tau gak data nya itu bisa diapakan ? Bisa gak data nya diambil gak cuma hnya tampil tapi diambil ? Dan saya mau tanya lagi mas tau metode buat hitung rata2 debit air mas jd dari data yg keluar itu saya mau cari rata2 nya tp pakai metode gitu tp ada gak metode nya ? Mohon di jawab mas maaf merepotkan n bikin kesel 😃

joro

blog nya keren sangat bermanfaat. bisa minta kontak atau emailnya mas? biar sharing nya lebih enak. tolong di resp ya mas. terima kasih

r m.a

Bermanfaat kang, wabilkhusus untuk siswa SMK. Terima kasih artikelnya.

Cici

Selamat siang Pak
Saya ingin menanyakan bagaimana caranya menghubungkan water flow sensor dengan lcd 16×2 I2C? Mohon bantuannya pak, terima kasih sebelumnya.

Amin

Naro codingannya dimana mas?

Firdaus

mas saya sudah coba tapi yg tampil malah kaya tulisan cina gitu tapi di port serialnya normal tampil mohon pencerahanya untuk koding supaya tampil ke monitor status debit dan volume air

Galuh Nur B

Gan mau nanya sy mau pakai flowmeter debit 0,15 – 1,5 L/menit. Yang perlu dirubah diprogramnya apa saja ya gan? Thanks

Galuh Nur Budiandono

blog sangat membantu. kalo sy pake flowmeter dengan debit 0,15 – 1,5 L/menit apa saja yang perlu dirubah gan? terimakasih

Galuh Nur B

Brti perlu dihitung manual ya mas?

Galuh Nur B

Brti perlu dihitung manual ya mas? Di keterangan flowmeternya ada keterangan formula, F=76Q. Itu mksdnya apa ya mas?

Amin

Mas, aku dah keluar di serial Monitor. Tapi tampilannya kesamping, engga kebawah. biar hasilnya kebawah gimana ya?
sama ada program buat data yg di serial monitor ke lcd ada ga? ata tinggal tambahin apa?
Suwun mas

Amin

eh udah bisa kebawah mas,
sekarang program biar tampil di lcd 16×2 nya belum dapet

Amin

Tanya nih mas, hasil yang di Serial Monitor kok ga mau berhenti ya? jalan terus walaupun flowmeternya berhenti. angka yang tampil terus sih angka yg terakhir,.
maaf tanya mulu, newbie nih. hehehe

Angger

Om izin sharing saya kan mau mengukur debit atau volume bak air kurang lebih 300 M3, kira2 alat ini bisa diaplikasikan gak yah di perindustrian?? Soalnya kalo beli sensor gelombang mahal biayanya.

Muhammad tamjidi

Maaf mas mau nanya lagi yaaa bleh kan heheh
1. Gmana cara ambil data nya mas ?
2. Data nya yg tampil itu bisa gak kita atur misal per lima hari ? Jd data nya kan bisa kita ambil lima hari lima hari buat cari rata2 nya selama 1 bulan ?
Mohon bantuan nya lagi mas

Muhammad tamjidi

Nanti saya coba mas . Mksh dlu mas.

Muhammad tamjidi

Mas saya bisa gak minta link jurnalnya atau pdf gitu yng melakukan menghitung rata rata debit air dari data yg di dapat menggunakan metode linier atau regresi seperti yang mas bilang ?? Soal nya saya cari gak dapat2 n bingung saya bagaimana penggunaan metode nya itu .terima kasih

aqil

mas mau tanya nih , untuk membuat flow meter yang hasilnya tampil di lcd , menggunakan arduino uno apa portnya cukup ???
dan apakah menggunakan rumus diatas + liquidcrystal sudah cukup untuk menampilakan hasil nya ke lcd ? thx mas

satrio

Cara ganti pin PWM nya gimana mas?

satrio

iya mas ini kan yang kabel kuning masuk pwm pin 2, kalau misal saya ingin ganti ke pin lainnya gimana? caranya?

Diky

Mas, klo saya sudah punya flowmeter air digital cuman utk ambil data angka flow meternya baiknya pakai apa? Di flow meter tersebut sudah dilengkapi connetot vcc,tx,tr,gnd… apa cukup dgn dipasang ethernet shild saja? Trimakasih

Diky

Jadi supaya saya bisa ambil data angka flowmeternya baiknya pakai apa?,
saya udah terlanjur beli arduino uno atmega 32 dan ethernet shield wiznet5100, tadinya saya pikir bisa diambil dgn dibuatkan web master. Trimakasih

Diky

Maaf mas, Maksudnya web server bukan web master
(Terlalu bersemangat… hehehehe….)

Diky

Ada lagi mas, di flow meternya ada fasilitas communication rs485/232, modbus,hart
Utk outputnya :
Dc Output 0~10mA, 4~20mA, pluse 0~5kHz

Diky

Mas, punten jadi banyak nanya nih….
Klo memang harus pake converter TTL to RS232 saya mau beli. Trimakasih

Diky

Ok mas, saya coba dulu cari data sheetnya. Nuhun

Diky

mas, ammppuunn deh…. udah nyoba nyari registernya ga dapet…..
cuman sketch yg mas aji bikin udah dicoba dan jalan
wiringnya
(trx-)————–pin2
(trx+)————-tx
gnd————gnd
nilainya ada cuman tidak sama dengan angka yg diflowmeternya, sudah dicoba dirubah konstanta dan perkailannya malah angka flow meternya makin ga sama.
klo saya buka isi menu settingan diflow meter isinya:
– com.port : 0~16
– transfer speed : 600~14400
– form pulse output : frequency/pulse
– pulse unit equivalent : 0.00001~1m3
-limit of pulse output : 1~5000Hz
model flowmeternya LDY-S EMF (udah ngagoogling juga ga ketemu data sheetnya)
baiknya gimana ya mas….please…
Nuhun

Diky

mas, kelihatannya flowmeternya harus diganti aj gitu…..
mas Aji ada referensi jenis flowmeter yg bisa diambil data didalam flowmeternya secara real time lengkap dengan waktu dan tgl nya dan datanya bisa diambil dengan web server intranet. Terima kasih

Dwi Putri Nirwana

gan saya udah nyoba program nya udah bener tapi keluaran diserial monitor kok tetep 0ml terus ya padahal udah tak kasih air

Muhammad tamjidi

Mas di tampilan nya itu bisa gak di tampilin catatan waktu nya ?

Muhammad tamjidi

Mas metode untuk menghitung data rata rata yang keluar , metode apa yaa mas yang tepat ? Mohon bimbingan nya ? Karna saya mau cari data rata rata perminggu atau perbulan dari data yg keluar di tampilan ? Mohon di jawab metode apa mas ?

Muhammad tamjidi

Saya udah cari dan baca mas tentang linier & regresi seperti yang mas bilang , tp saya masih gak paham dmana hubungan nya ?

Trus untuk RTC itu gmana penggunaan nya mas ? dan RTC apa ?

Rapillo

mas, bagaimana kalau waterflow nya ada 3 buah mas? gimana rangkainnya ke arduinonya?

Rapillo

Brarti VCC dan Ground nya di satukan aja semuanya ya mas? Trus kalo di tambah lagi solenoid valve, pin arduino yang mana nanti yang dihubungkan ke solenoid nya mas?

Rapillo

Driver Solenoid valve nya bisa pakai relay aja kan mas?

alman faluthi

Mas, sy mau share….jd begini saya kan gunakan 2 set Mesin diesel ( merk tianli ) 24 PK dengan menggunakan pipa PVC sepanjang lbh kurang 1Km untuk menyedot air dr sungai hingga ke pembuangan. Masalahnya tekanan air secara kasat mata sdh bagus/kencang. Kendalanya pd flow meter cuma trbaca max 40-50 M3/hours…kira2 solusinya gmana ya mas. Krena yg sy inginkan debit airnya bisa mencapai 100-120M3 / hours krna air ini untuk kbutuhan produksi pabrik. Jadi sy ini ceritanya jual air ke perusahaan. Dengan gas mesin diesel yg diatas standar namun terbaca di flow meter sgt tdk sesuai.mhm pendapatnya. Trims

alman faluthi

Yang bagus yg bagaimana ya mas?? Bs sy order dsini

riyan

mas, cara menampilkan debit airnya ke lcd & iic itu gimana ya, dan cara manggil kondisi debitnya ke kodingan itu gimana, trimakasih

Muhammad tamjidi

Satu putaran rotor yang terdapat pada flow meter itu hitungan nya brapa yaaa mas ?

beni

mas kalo progam yg pake codevisioAVR, ATmega16 bisa engga mas, gimana progamnya mas

beni

tolong ajarin dong mas

Ni Nyoman Sri Nyoman Sulistiyawati

Selamat siang mas, maaf mengganggu. Saya mau bertanya. Saya coba sensor water flow seperti yang mas gunakan. Awal saya coba nilai flow dan volumenya mau tertampil. Tetapi waktu saya coba lagi, nilai keluaran bukan berupa angka mas, melainkan tulisan “inf”. Saya kira saya ada merubah wiringnya, ternyata tidak ada. Saya coba compile lagi, tetapi nilai pembacaan sensor hanya tertampil “0.00”, tidak ada penghitungan sama sekali oleh sensor. Apakah mas pernah mengalami hal serupa? Kalau iya, boleh tolong di share cara menanganinya, mas. terima kasih sebelumnya.

Muhammad tamjidi

Mas bisa saya pesan disini gak arduino uno n flow meter nya ?

Yosh

Mas mau tanya:
1. cara melihat output flowmeter berupa pulsa gimana ya?
2. kenapa hasil volume di serial monitor sama pake tempat ngukur air manual ( blender ) beda ? Misal, di serial monitor arduino 2453ml, sedangkan di tempat pengukuran air manual ( blender ) cuma 1500ml.

Yosh

kalibrasinya gimana ya mas?

firmansyah

mas saya mau nanya kok kalo saya compile di node Mcu sensor gak jalan ya? prograamnya gaada yang error cuma pas di liat di serial monitor terus dialirin air dia ga berubah kenapa ya?

Ikhsan

Mas, mau nanya kalo flo meter yang untuk mengukur penggunaan steam boiler pake apa ya?
Suhunya sekitar 200 drajat celcius.
Nanti datanya bisa langsung kesimpan ke database.
Terima kasih.

Maswuri

Permisi mas..
Mau tanya, kalau kita mau mengukur volume udara/tekanan udara pake sensor apa ya?

Muhammad tamjidi

Mas saya kan mau menghasilkan data yng bervariasi ? Apa perlu saya membeli flow meter dengan ukuran yg bervariasi juga atau cukup pipa untuk mengalirkan air nya saja dengan ukuran bervariasi ?

Yosh

Mas cara menghitung putaran yg ada pada flow water gimana ya? Pake manual apa pake program diarduino?

servinta

Mas kalo keluaran air pada flow itu naik, Misal 200mL,400ML apakah tegangan juga berubah-ubah ?

rahmad prambudi

Mas klau di pakek buat kran otomatis untuk pengisian galon bisa gk mas yang ditambahin apa nya ia mas

Amin

Saya udah buat program itu, dan bisa mas ajie.
Pertanyaan saya, klo mau hitung mundur gimana ya?
misal dimulai dari 1000L nanti pas di 20L kerannya nutup.
ditunggu jawabannya, Terima Kasih.

Amin

maksud saya codingannya bagaimana ya mas?
masih coba-coba belum bisa-bisa

Amin

Dah bisa mas Counter downnya. Codingan di atas kan masih mL ya, klo mau jadi liter codingan ini kah yg harus di ubah?
flowmlt = (debit/60)*1000; jadi flowmlt = (debit/60)*1000000

Amin

mas biar satuannya liter bagian mana yang diganti. totalmlt sudah saya bagi 1000 volumenya ga bertambah tetep 0 terus.
maaf mas nanya mulu

Amin

ngga jadi mas, sudah bisa. Ternyata tipe datanya diganti jadi float

tegar

Terimakasih, semoga berkah

400
0
Would love your thoughts, please comment.x
()
x