Dengan berkembangnya teknologi IOT, banyak hal-hal baru yang bisa kita kembangkan untuk aplikasi kebutuhan sehari-hari dengan harga yang relatif murah dan komponen yang mudah didapat. Pada tulisan sebelumnya, saya telah membagikan cara untuk membuat sensor ketinggian/level air toren. Pada tulisan kali ini saya mencoba untuk membagikan cara untuk membuat sendiri modul pengukur kecepatan aliran air toren (inlet) menggunakan water flow sensor dan Arduino.
Prinsip Kerja Water Flow Sensor
Sebuah water flow sensor terdiri dari input valve dimana air masuk, rotor dan fan yang akan berputar ketika air mengalir dan hall effect sensor. Hall effect sensor akan mendeteksi perubahan kutub magnet yang menempel pada rotor (utara/selatan) dan mengkonversinya menjadi voltase yang berubah-ubah sesuai kutub mana dari magnet rotor yang dideteksi oleh hall effect sensor.
Hall effect sensor merupakan otak dari sensor ini. Pada umumnya hall effect sensor tipe digital dan bipolar yang digunakan. Pada tipe bipolar, kedua kutub , utara dan selatan masing-masing digunakan untuk menaikkan dan menurunkan voltase. Misalnya saat hall effect sensor mendeteksi medan magnet positf (kutub selatan), voltase akan naik menjadi 5V dan ketika mendeteksi medan magnet negatif (kutub utara), voltase akan turun ke 0V. Perubahan voltasie High/Low ini akan menghasilkan pulse yang akan dihitung oleh Arduino melalui interrupt pin.
Ok, setelah membahas prinsip kerja water flow sensor diatas, kita lanjut ke aplikasinya pada pengukuran kecepatan aliran air inlet toren. Water flow sensor ini akan dipasang pada inlet toren yang akan terhubung dengan pelampung toren.
Berikut adalah komponen-komponen yang diperlukan
Komponen pipa untuk water flow sensor:
- Water flow sensor 3/4″
- Knee drat dalam 3/4″ (1)
- Sok drat dalam 3/4″ (2)
- Sambungan pipa / socket reducer 3/4″ ke 1/2″ (1)
- Pipa 3/4″ 1m
- Pipa 1/2″ 1m
Komponen modul
- Arduino Pro Mini 3.3v (bisa diganti jenis lain)
- Resistor 10K (1)
- Kabel isi 3 (panjang disesuaikan).
Notes: Ukuran sensor bisa ukuran 1/2″. Jika mengguanakan ukuran 1/2″, knee, sok drat dalam dan pelampung toren pun harus ukuran 1/2″ dan socket reducer tidak diperlukan.
Berikut adalah gambar design pembutan modul water flow sensor:
Keterangan:
- K = Knee drat dalam
- S1, S2 = Sok drat dalam
Langkah-langkah perakitan:
- Hubungkan masing-masing ujung water flow sensor ke knee drat dalam (K) dan sok drat dalam (S2).
- Sambung sok drat dalam S1 dan S2. Ampelas terlebih dahulu pipa yang digunakan untuk sambungan dan gunakan lem pipa untuk menyambungnya.
- Seal sambungan kedua sok tersebut dengan lem pipa.
- Jika menggunakan sensor ukuran 3/4″, sambung ujung knee (K) dengan socket reducer. Lubang inlet toren umumnya menggunaakan ukuran 1/2″ oleh karena itu kita membutuhkan socket reducer. Skip langkah ini jika menggunakan sensor ukuran 1/2″
Langkah-langkah pemasangan pada toren
- Sambung pipa inlet toren dengan ujung knee drat dalam (K) dari sensor yang berada di dalam toren.(untuk 1/2″) atau
- Sambung pipa inlet toren ke socket reducer yang terhubung dengan knee (K) (untuk 3/4″)
- Gunakan lem pipa untuk sambungan di atas.
- Hubungkan pelampung toren dengan ujung sok drat dalam (S1).
- Sambung ketiga helai kabel sensor (merah,hitam dan kuning) dan tarik keluar dari lubang inlet toren yang lain. Saya menggunakan tutup inlet toren yang dibor sebagai jalur keluar kabel.
- Sambungkan kabel sensor ke input pin modul Arduino.
Berikut adalah hasil akhir sensor yang telah terpasang dalam toren
Merangkai Modul Arduino
Modul yang saya gunakan yaitu modul Arduino Pro Mini 3.3v namun anda bisa menggantikannya dengan modul Arduino lain. Schematicnya adalah seperti gambar di bawah:
Hubungkan ketiga kabel dari sensor ke Arduino sbb:
- Hubungkan kabel hitam atau negatif (ground) dari sensor ke input pin GND Arduino
- Hubungkan kabel merah atau positf (arus) dari sensor ke input pin 5V Arduino
- Hubungkan kabel data ke pull up resistor R1 (10K) dan kemudian ke input pin D2. Gunakan interrupt pin untuk menghitung pulse dari sensor. Untuk daftar interrupt pin pada board Arduino bisa dilihat disini.
- Hubungkan ujung resistor R1 satunya lagi ke input pin 5V Arduino
Ketika rotor berputar karena ada aliran air yang mendorong fan yang terhubung ke rotor, hall effect sensor akan mendeteksi perubahan medan magnetic dan mengkonversikannya menjadi sinyal digital yang ditangkap sebagai pulse oleh interrupt pin Arduino. Perubahan pulse ini kemudian digunakan untuk menghitung volum liter air yang mengalir per menitnya sesuai dengan spesifikasi frekuensi sensor (Hz) tersebut. Untuk sensor yang saya gunakan, spesifikasi frekuensi sensornya adalah 5.5Hz. Artinya dengan untuk tiap liter air yang mengalir per menit, sensor tersebut menghasilkan 5.5 pulse. Dengan demikian untuk mendapatkan kecepatan aliran air, tinggal membagikan jumlah pulse dengan 5.5.
Rumusnya sbb:
Pulse(Hz) = 5.5 * Q(Flow rate, L/min)
Q(Flow rate, L/min) = Pulse(Hz) / 5.5
Berikut adalah source code untuk menghitung kecepatan aliran air yang mengalir:
volatile int pulse;
int dataPin = 2;
unsigned long lastCountMilis = 0;
void setup() {
Serial.begin(9600);
pinMode(dataPin, INPUT);
attachInterrupt(digitalPinToInterrupt(dataPin), countPulse, RISING);
}
void countPulse() {
pulse++;
}
void loop() {
if (millis() - lastCountMilis > 1000) {
detachInterrupt(digitalPinToInterrupt(dataPin));
int flow = pulse / 5.5;
Serial.print(flow, DEC);
Serial.println(" L/minute");
lastCountMilis = millis();
pulse = 0;
attachInterrupt(digitalPinToInterrupt(dataPin), countPulse, RISING);
}
}
Dari code diatas kita bisa menentukan kecepatan aliran air yang mengalir ke dalam toren, dengan memodifikasi rumus diatas, kita juga bisa menghitung volum air yang mengalir selama periode waktu tertentu. Berikut adalah contoh tampilan smarthome Openhab yang terintegrasi dengan sensor kecepatan aliran air, suhu serta ketinggian/level air toren di rumah saya..
Dan says
Selamat siang bang Lorenz,
Info yang sangat menarik dan saya ingin punya water system diatas
Kira2 untuk buat system seperti diatas habis dana berapa yaa bang,,,?
Atau kira2 abang bisa bantu buatkan sehingga saya tinggal pasang,,,?
Terima kasih bang Lorenz,
God Bless you
lorenz says
Halo selamat siang mas Dan,
Sistemnya untuk apa? apakah untuk sekedar mendapatkan informasi water flow saja atau bagaimana? Kalau sesuai tutorial di atas, paling sekitar 80-90rb untuk water flow sensornya. Pipa2nya paling habis 10-20rb. Untuk pcb boardnya kebetulan saya pake board khusus yang bisa integrasi dgn mysensors. Untuk arduinonya dan partnya sekitar 50rb.
Bisa sy bantu, paling sy harus tau dulu spek sistemnya seperti apa
Salam.
God Bless
galih says
halo gan,
sangat tertarik dengan artikelnya, pengen buat semua alat sudah ada tapi masih bingung hehe
lorenz says
halo mas Galih, bingung dimananya mas
Arda Paitama says
Halo bang lorenz, izin bertanya di alat ini apakah bisa di berikan kontrol PID untuk mengontrol aliran air pada sensor Water flow sensornya
lorenz says
gak bisa mas, itu water flow sensornya hanya untuk read status flow nya aja