Your shopping cart is empty or products are not available any more.
A flow sensor is a device which measures the rate at which a fluid is passing through a pipe, they have many diverse applications, and are used whenever one needs to keep track of amounts of fluid entering or leaving a chamber.
There are many different types of flow meters but a schematic of a simple and common type, a paddle flow meter, is shown below. Fluid flows through the pipe at the bottom, the faster the Figure 1: Paddle flow meter.fluid flows, the faster the turbine wheel rotates. Each time the turbine wheel rotates, a magnet passes the Hall sensor and registers a pulse, from the pulse rate the turbine speed, and thus the volumetric flow rate can be determined.
The flow meter featured in this tutorial is shown below. It has .5” male input and output
Figure 2: .5" plastic flow meter #828threads, the sensor will return 450 pulses per liter of fluid, or equivalently, the flow rate in l/min = frequency of pulses in Hz / 7.5.
The connections for the #828 flowmeter are shown below in figure 3. The yellow wire, the sensor output should be connected to analog in, the red and black wires should be connected to 5v and ground respectively. Figure 3: Arduino to #828 flowmeter connection.
This code will return flow rate data at a rate of 2 Hz, this can be adjusted by changing the delay(5); command in the code below, however if it is made too small the accuracy will decrease.
void setup(){ // put your setup code here, to run once: Serial.begin(9600); // to view data}float pulses = 0; // counter for number of pulsesint i = 0; // counter for sensor readingsint data[100] = {}; // array to hold sensor outputfloat to = millis(); // starting time of data collection intervalfloat t; // ending time of data collection intervalfloat dt; // length of data collection intervalfloat freq; // frequency of pulsesfloat V; // flow rate in l/minvoid loop(){ // put your main code here, to run repeatedly: data[i] = analogRead(A0); // read sensor delay(5); // wait 5 ms for stability // check for pulse after 2nd sensor reading if(i >= 1) { if( (data[i] >= 1000 && data[i-1] <= 100) || (data[i-1] >= 1000 && data[i] <= 100)) { pulses++; } } // if 100 readings have been taken if(i == 99) { t = millis(); // time at end of data collection interval dt = (t-to)/1000; // length of data collection interval in seconds freq = pulses/dt; // frequency of pulses in interval V = freq/7.5; // volumetric flow rate in liters per min Serial.println(V,5); // display data // reset for next interval i = 0; to = t; pulses = 0; } else { i++; }}
Start your robotics journey with ideaBot, unlock your mind.
Measure and detect acceleration and movement,practical guide
A sensor to detect applied force.
All you need to start using IdeaLink's 3D printing service.
A step by step guide to start programming Arduino.
All you need to start using IdeaLinks laser cutting service.
How to install Arduino IDE and drivers.
A sensor for detecting lines and colors.
We ship to the GCC and MENA regions.
Reliable and fast shipping to your door, quality assured.
Find us on Instagram
Just type @idea_link