Mjerač protoka: sve što trebate znati

mjerač protoka

Izmjerite protok ili potrošnju tečnosti to je važno u nekim slučajevima, a za to vam je potreban mjerač protoka. Na primjer, ako slijedite Formulu 1, znat ćete da FIA prisiljava timove da koriste mjerač protoka u motoru kako bi otkrili potrošnju koju svaki tim napravi u svojim automobilima i tako izbjegli moguće zamke ubrizgavanjem većeg protoka kako bi dobili više snage ponekad ili kako se ulje koristi za sagorijevanje motora ...

Ali izvan F1, možda će vas zanimati jedan od ovih uređaja koji će znati koliki je utrošak vode ili bilo koje druge tečnosti koji sistem ima, ili takođe odrediti brzinu protoka cijevi koja se izvlači iz spremnika da biste utvrdili kada se troši, automatizirani sustavi za navodnjavanje vrtova itd. The primjena ovih elemenata je mnogo, možete sami postaviti ograničenje.

Mjerač protoka ili mjerač protoka

Kako biste trebali znati protok je količina tečnosti ili tečnosti koja cirkulira kroz cijev ili klip u jedinici vremena. Mjeri se u jedinicama zapremine podijeljenim jedinicom vremena, kao što su litra u minuti, litra na sat, kubni metar na sat, kubični metri u sekundi itd. (l / min, l / h, m³ / h, ...).

Šta je merač protoka?

El merač protoka ili tečnost Uređaj je sposoban izmjeriti onu količinu protoka koja prolazi kroz cijev. Postoji nekoliko modela i proizvođača koji se lako mogu integrirati s Arduinom. Ova brzina protoka ovisit će o nekoliko čimbenika, kao što su presjek cijevi i dovodni tlak.

Kontrolom ta dva parametra i pomoću merača protoka koji meri protok, možete dobiti sofisticirani sistem upravljanja tečnostima. Vrlo korisno za automatizaciju kuće ili druge elektroničke, pa čak i industrijske projekte. Za kućne projekte proizvođači imaju dobro poznati modeli poput YF-S201, FS300A, FS400A, Itd

Vrste mjerača protoka

Na tržištu ćete pronaći razne vrste mjerača protoka ili mjerača protoka, ovisno o namjeni koju koristite i proračunu koji želite uložiti. Pored toga, neki od njih su specifični za fluid, poput vode, goriva, ulja, drugi imaju veću ili manju preciznost, s cijenama u rasponu od nekoliko eura do hiljada eura, kod nekih vrlo naprednih na industrijskom nivou:

  • Mehanički mjerač protoka: to je vrlo tipično brojilo koje svako ima u kući za mjerenje vode koju troši u svojim brojilima. Protok okreće turbinu koja pomiče osovinu koja je povezana s mehaničkim brojačem koji akumulira očitanja. Budući da je mehanički, u ovom slučaju se ne može integrirati s Arduinom.
  • Ultrazvučni merač protoka- Široko se koristi u industriji, ali je izuzetno skup za kućnu upotrebu. Možete izmjeriti brzinu protoka prema vremenu potrebnom da ultrazvuk prođe kroz tečnost koja se mjeri.
  • Elektromagnetski merač protoka: Često se koriste u industriji za cijevi do 40 inča i visoke pritiske. Koštaju vrlo skupo i za mjerenje koriste elektromagnetski sistem.
  • Elektronski mjerač protoka turbine: jeftin i vrlo precizan. To su oni koje možete lako integrirati sa svojim Arduinom, a koriste se i za kućnu upotrebu. Koriste turbinu s lopaticama koja se okreće dok protok tečnosti prolazi kroz nju, a senzor Hallovog efekta izračunava protok prema RPM-ima koje dostigne u zavoju. Problem je što su nametljivi, imaju visok pad tlaka i trpe pogoršanje dijelova, pa neće dugo potrajati ...

Uzimajući u obzir da nas zanima elektronika, nastavit ćemo proučavati ove ...

Mjerači protoka za Arduino i gdje kupiti

u elektronski mjerači protoka koji se koriste u ArduinuKao i YF-S201, YF-S401, FS300A i FS400A, oni imaju plastično kućište i rotor s lopaticama unutra, kao što sam već spomenuo. Magnet pričvršćen na rotor i njegovo okretanje, Hallovim efektom, odredit će protok ili potrošnju koju mjeri u svakom trenutku. Izlaz senzora bit će kvadratni val s frekvencijom proporcionalnom protoku kroz njega.

Takozvani K faktor konverzije između frekvencije (Hz) i protoka (l / min) ovisi o parametrima koje je proizvođač dao senzoru, stoga nije isti za sve. U tablice podataka ili informacije o modelu koju kupite imat će ove vrijednosti tako da ih možete koristiti u Arduino kodu. Niti će preciznost biti ista, iako općenito, ove vrijednosti za Arduino obično variraju između 10% iznad ili ispod s obzirom na trenutni protok.

u preporučeni modeli To su:

  • YF-S201: ima priključak za cijev od 1/4,, za mjerenje protoka između 0.3 do 6 litara u minuti. Maksimalni pritisak koji toleriše je 0.8 MPa, uz maksimalne temperature fluida do 80ºC. Njegov napon radi između 5-18v.
  • YF-S401: u ovom slučaju, veza na cijev je 1/2 ″, iako uvijek možete koristiti pretvarače. Protok koji meri je od 1 do 30 l / min, sa pritiscima do 1.75 MPa i temperaturama fluida do 80 ° C. Njegov napon je, međutim, i dalje 5-18v.
  • FS300A: isti napon i ista maksimalna temperatura kao prethodni. U ovom slučaju sa 3/4 ″ cijevima, s maksimalnim protokom od 1 do 60 l / min i pritiskom od 1.2 MPa.
  • FS400A: takođe održava napon i maksimalnu temperaturu u odnosu na svoje alternative, takođe maksimalni protok i pritisak su isti kao kod FS300A. Jedino što varira je da je cijev 1 inč.

Za svoj projekt morate odabrati onu koja vas najviše zanima ...

Integracija s Arduinom: praktični primjer

Arduino spojen na mjerač protoka

La spajanje vašeg mjerača protoka je vrlo jednostavno. Obično imaju 3 kabla, jedan za prikupljanje podataka o protoku, a druga dva za napajanje. Podaci se mogu povezati na Arduino ulaz koji vam najviše odgovara, a zatim programirati kod skice. I one za napajanje, jedno na 5V, a drugo na GND, i to bi bilo dovoljno da počne raditi.

Ali da bi imao neku funkciju, prvo morate stvoriti kod u Arduino IDE. Mnogo je načina za upotrebu ovog senzora protoka, ali i načina za njegovo programiranje, iako ovdje imate praktičan i jednostavan primjer tako da možete početi vidjeti kako to radi:

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)");
}

A ako želite dobiti potrošnju, tada možete koristiti ovaj drugi kod ili kombinirati oba da biste imali oba ... Za potrošnju, postignuti protok mora biti integriran s obzirom na vrijeme:

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)");
}

Već znate da, ovisno o tome što vam treba, morate izmijeniti ovaj kod, osim toga, vrlo je važno staviti faktor K modela koji ste kupili ili neće izvršiti stvarna mjerenja. Nemoj zaboraviti!


Budite prvi koji komentarišete

Ostavite komentar

Vaša e-mail adresa neće biti objavljena. Obavezna polja su označena sa *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.