Flowmeter: alt hvad du behøver at vide

flowmåler

Mål væskestrøm eller forbrug det er vigtigt i nogle tilfælde, og til dette har du brug for en flowmåler. For eksempel, hvis du følger Formel 1, vil du vide, at FIA tvinger hold til at bruge en flowmåler i motoren til at opdage det forbrug, som hvert hold foretager i deres biler og dermed undgå mulige fælder ved at injicere større flow for at få mere til tider eller hvordan olie bruges til at brænde motoren ...

Men uden for F1 kan du være interesseret i at have en af ​​disse enheder til at vide, hvilket forbrug af vand eller anden væske et system har, eller også bestemme strømningshastigheden af ​​et rør, der trækker fra en tank for at bestemme, hvornår det forbruges, automatiserede havevandingssystemer osv. Det anvendelser af disse elementer er mange, kan du selv sætte grænsen.

Flowmeter eller flowmåler

Hvordan skal du vide det strømmen er mængden af ​​en væske eller væske, der cirkulerer gennem et rør eller en stub pr. tidsenhed. Det måles i volumenheder divideret med tidsenheder, såsom liter pr. Minut, liter pr. Time, kubikmeter pr. Time, kubikmeter pr. Sekund osv. (l / min, l / h, m³ / h, ...).

Hvad er en flowmåler?

El flowmåler eller fluidmåler Det er enheden, der er i stand til at måle den mængde strøm, der går gennem et rør. Der er flere modeller og producenter, der let kan integreres med Arduino. Denne strømningshastighed vil afhænge af flere faktorer, såsom rørets sektion og forsyningstrykket.

Ved at kontrollere disse to parametre og med en flowmåler, der måler flowet, kan du have et sofistikeret kontrolsystem til væskerne. Meget nyttigt til hjemmeautomatisering eller andre elektroniske og endda industrielle projekter. For hjemmeprojekter har producenterne gjort velkendte modeller som YF-S201, FS300A, FS400AOsv

Flowmeter-typer

På markedet finder du forskellige typer af flowmålere eller flowmålere afhængigt af den brug, du giver det, og det budget, du vil investere. Derudover er nogle af dem specifikke for en væske, såsom vand, brændstof, olie, andre har større eller mindre præcision med priser, der spænder fra et par euro til tusinder af euro i nogle meget avancerede på industrielt niveau:

  • Mekanisk flowmåler: det er en meget typisk måler, som alle har i huset til at måle det vand, de bruger i deres målere. Strømningen drejer en turbine, der bevæger en aksel, der er forbundet til en mekanisk tæller, der akkumulerer aflæsningerne. At være mekanisk kan det i dette tilfælde ikke integreres med Arduino.
  • Ultralyds flowmåler- Udbredt i industrien, men ekstremt dyrt til hjemmebrug. Du kan måle strømningshastigheden efter den tid, det tager ultralyd at passere gennem væsken, der skal måles.
  • Elektromagnetisk flowmåler: De bruges også ofte i branchen til rør op til 40 inches og høje tryk. De koster meget dyre og bruger et elektromagnetisk system til måling.
  • Elektronisk turbinestrømningsmåler: lave omkostninger og meget nøjagtige. Det er dem, du nemt kan integrere med din Arduino og også bruges til hjemmebrug. De bruger en turbine med knive, der drejer, når væskestrømmen passerer igennem den, og en Hall-effektsensor beregner strømmen i henhold til de omdrejningstal, den når i drejningen. Problemet er, at når de er påtrængende, har de et højt trykfald og lider forringelse i deres dele, så de vil ikke vare længe ...

Under hensyntagen til at vi er interesseret i elektronik, vil vi fortsætte med at studere disse ...

Flowmeters til Arduino og hvor man kan købe

masse elektroniske flowmålere, der bruges i ArduinoLigesom YF-S201, YF-S401, FS300A og FS400A har de et plastikhus og en rotor med knive indeni, som jeg nævnte før. En magnet, der er fastgjort til rotoren, og dens rotation ved Hall-effekt bestemmer det flow eller forbrug, som den til enhver tid måler. Sensorens output vil være en firkantbølge med en frekvens, der er proportional med strømningen gennem den.

Den såkaldte K-konverteringsfaktor mellem frekvens (Hz) og flow (l / min) afhænger af de parametre, som producenten har givet sensoren, derfor er den ikke den samme for alle. I datablad eller modeloplysninger du køber har disse værdier, så du kan bruge dem i Arduino-koden. Præcisionen vil heller ikke være den samme, selvom disse generelt for Arduino normalt varierer mellem 10% over eller under med hensyn til den aktuelle strømning.

masse anbefalede modeller lyd:

  • YF-S201: den har en forbindelse til et 1/4 ″ rør til måling af flow mellem 0.3 og 6 liter pr. minut. Det maksimale tryk, den tåler, er 0.8 MPa med en maksimal væsketemperatur på op til 80 ° C. Dens spænding fungerer mellem 5-18v.
  • YF-S401: i dette tilfælde er forbindelsen til røret 1/2 ″, selvom du altid kan bruge omformere. Den gennemstrømning, den måler, er fra 1 til 30 l / min med tryk på op til 1.75 MPa og væsketemperaturer på op til 80 ° C. Dens spænding er dog stadig 5-18v.
  • FS300A: samme spænding og samme maksimale temperatur som de foregående. I dette tilfælde med 3/4 ″ rør, med et maksimalt flow på 1 til 60 l / min og tryk på 1.2 MPa.
  • Ingen produkter fundet.: det opretholder også spænding og maksimal temperatur i forhold til dets alternativer, også det maksimale flow og tryk er de samme som for FS300A. Det eneste der varierer er, at røret er 1 tomme.

Du skal vælge den, der interesserer dig mest for dit projekt ...

Integration med Arduino: et praktisk eksempel

Arduino tilsluttet flowmåler

La tilslutning af din flowmåler er meget enkel. De har normalt 3 kabler, et til dataindsamling på strømmen og de to andre til strøm. Dataene kan tilsluttes den Arduino-indgang, der passer dig bedst, og programmer derefter skitskoden. Og strømforsyningen, en til 5V og en anden til GND, og ​​det ville være nok til at det begynder at arbejde.

Men for at den skal have en slags funktion, skal du først oprette kode i Arduino IDE. Måderne til at bruge denne strømningssensor er mange, og også måderne at programmere den på, selvom her har du det et praktisk og simpelt eksempel så du kan begynde at se, hvordan det fungerer:

const int sensorPin = 2;
const int measureInterval = 2500;
volatile int pulseConter;
 
// Si vas a usar el YF-S201, como en este caso, es 7.5.
//Pero si vas a usar otro como el FS300A debes sustituir el valor por 5.5, o 3.5 en el FS400A, etc.
const float factorK = 7.5;
 
void ISRCountPulse()
{
   pulseConter++;
}
 
float GetFrequency()
{
   pulseConter = 0;
 
   interrupts();
   delay(measureInterval);
   noInterrupts();
 
   return (float)pulseConter * 1000 / measureInterval;
}
 
void setup()
{
   Serial.begin(9600);
   attachInterrupt(digitalPinToInterrupt(sensorPin), ISRCountPulse, RISING);
}
 
void loop()
{
   // Con esto se obtiene la frecuencia en Hz
   float frequency = GetFrequency();
 
   // Y con esto se calcula el caudal en litros por minuto
   float flow_Lmin = frequency / factorK;
 
   Serial.print("Frecuencia obtenida: ");
   Serial.print(frequency, 0);
   Serial.print(" (Hz)\tCaudal: ");
   Serial.print(flow_Lmin, 3);
   Serial.println(" (l/min)");
}

Og hvis du vil få forbrug, så kan du bruge denne anden kode eller kombinere begge for at have begge ... For forbrug skal det opnåede flow integreres med hensyn til tid:

const int sensorPin = 2;
const int measureInterval = 2500;
volatile int pulseConter;
 
//Para el YF-S201 es 7.5, pero recuerda que lo debes modificar al factor k de tu modelo
const float factorK = 7.5;
 
float volume = 0;
long t0 = 0;
 
 
void ISRCountPulse()
{
   pulseConter++;
}
 
float GetFrequency()
{
   pulseConter = 0;
 
   interrupts();
   delay(measureInterval);
   noInterrupts();
 
   return (float)pulseConter * 1000 / measureInterval;
}
 
void SumVolume(float dV)
{
   volume += dV / 60 * (millis() - t0) / 1000.0;
   t0 = millis();
}
 
void setup()
{
   Serial.begin(9600);
   attachInterrupt(digitalPinToInterrupt(sensorPin), ISRCountPulse, RISING);
   t0 = millis();
}
 
void loop()
{
   // Obtención del afrecuencia
   float frequency = GetFrequency();
 
   //Calcular el caudal en litros por minuto
   float flow_Lmin = frequency / factorK;
   SumVolume(flow_Lmin);
 
   Serial.print(" El caudal es de: ");
   Serial.print(flow_Lmin, 3);
   Serial.print(" (l/min)\tConsumo:");
   Serial.print(volume, 1);
   Serial.println(" (L)");
}

Du ved allerede, at afhængigt af hvad du har brug for, skal du ændre denne kode, desuden er det meget vigtigt at sætte K-faktoren af den model, du har købt, eller den tager ikke faktiske målinger. Glem ikke!


Vær den første til at kommentere

Efterlad din kommentar

Din e-mailadresse vil ikke blive offentliggjort. Obligatoriske felter er markeret med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Control SPAM, management af kommentarer.
  3. Legitimering: Dit samtykke
  4. Kommunikation af dataene: Dataene vil ikke blive kommunikeret til tredjemand, undtagen ved juridisk forpligtelse.
  5. Datalagring: Database hostet af Occentus Networks (EU)
  6. Rettigheder: Du kan til enhver tid begrænse, gendanne og slette dine oplysninger.