Разходомер: всичко, което трябва да знаете

разходомер

Измерете потока или разхода на течност важно е в някои случаи и за това се нуждаете от разходомер. Например, ако следвате Формула 1, ще знаете, че FIA принуждава екипите да използват разходомер в двигателя, за да открият разхода, който всеки отбор прави в автомобилите си и по този начин да избегне възможни капани, като инжектира по-голям поток, за да получи повече мощност на моменти или как маслото се използва за изгаряне на двигателя ...

Но извън F1, може да ви е интересно да имате едно от тези устройства, за да знаете каква консумация на вода или друга течност има една система, или също така да определите скоростта на потока на тръба, която се изтегля от резервоара, за да определите кога се консумира, автоматизирани напоителни системи за градини и др. The приложенията на тези елементи са много, можете сами да зададете лимита.

Разходомер или разходомер

Откъде трябва да знаете потока е количеството течност или течност, които циркулират през тръба или втулка за единица време. Измерва се в единици за обем, разделени на единица време, като литър в минута, литър в час, кубичен метър в час, кубически метри в секунда и т.н. (l / min, l / h, m³ / h, ...).

Какво е разходомер?

El разходомер или разходомер Устройството е способно да измери това количество поток, което преминава през тръба. Има няколко модела и производители, които могат лесно да бъдат интегрирани с Arduino. Този дебит ще зависи от няколко фактора, като сечението на тръбата и подаващото налягане.

Чрез контролиране на тези два параметъра и с разходомер, който измерва потока, можете да имате усъвършенствана система за контрол на флуидите. Много полезно за домашна автоматизация или други електронни и дори индустриални проекти. За домашни проекти производителите имат добре познати модели като YF-S201, FS300A, FS400AИ др

Типове разходомери

На пазара ще намерите различни видове на разходомери или разходомери в зависимост от употребата, която му давате, и бюджета, който искате да инвестирате. В допълнение, някои от тях са специфични за флуид, като вода, гориво, масло, други имат по-голяма или по-малка точност, като цените варират от няколко евро до хиляди евро в някои много напреднали на индустриално ниво:

  • Механичен разходомер: това е много типичен метър, който всеки има в къщата, за да измери водата, която консумира в своите метри. Потокът превръща турбина, която движи вал, който е свързан с механичен брояч, който натрупва показанията. Тъй като е механичен, в този случай той не може да бъде интегриран с Arduino.
  • Ултразвуков разходомер- Широко използвани в индустрията, но изключително скъпи за домашна употреба. Можете да измерите скоростта на потока по времето, необходимо на ултразвука да премине през измерваната течност.
  • Електромагнитен разходомер: Те също често се използват в индустрията за тръби до 40 инча и високо налягане. Те струват много скъпо и използват електромагнитна система за измерване.
  • Електронен турбинен разходомер: ниска цена и много точна. Това са тези, които можете лесно да интегрирате с вашия Arduino и се използват и за домашната среда. Те използват турбина с лопатки, която се завърта при преминаване на потока от течност през нея и сензор за ефект на Хол ще изчисли потока според оборотите в минута, които достига в завоя. Проблемът е, че като се натрапват, те имат голям спад на налягането и страдат от влошаване на частите си, така че няма да издържат дълго ...

Като се има предвид, че се интересуваме от електрониката, ще продължим да изучаваме тези ...

Разходомери за Arduino и къде да купя

Лос електронни тип разходомери, използвани в ArduinoПодобно на YF-S201, YF-S401, FS300A и FS400A, те имат пластмасов корпус и ротор с лопатки вътре, както вече споменах. Магнит, фиксиран към ротора и неговото въртене, чрез ефекта на Хол, ще определи потока или консумацията, които той измерва през цялото време. Изходът на сензора ще бъде квадратна вълна с честота, пропорционална на потока през него.

Така нареченият коефициент на преобразуване K между честотата (Hz) и потока (l / min) зависи от параметрите, които производителят е дал на сензора, следователно, той не е еднакъв за всички. В таблици с данни или информация за модел които купувате, ще имат тези стойности, за да можете да ги използвате в кода на Arduino. Нито прецизността няма да бъде еднаква, въпреки че като цяло тези за Arduino обикновено варират между 10% отгоре или отдолу по отношение на текущия поток.

Лос препоръчани модели звук:

  • YF-S201: има връзка за 1/4 ″ тръба, за измерване на дебита между 0.3 до 6 литра в минута. Максималното налягане, което толерира, е 0.8 MPa, с максимални температури на течността до 80 ° C. Напрежението му работи между 5-18v.
  • YF-S401: в този случай връзката с тръбата е 1/2 ″, въпреки че винаги можете да използвате преобразуватели. Дебитът, който измерва, е от 1 до 30 l / min, с налягане до 1.75 MPa и температура на флуида до 80 ° C. Напрежението му обаче все още е 5-18v.
  • FS300A: същото напрежение и същата максимална температура като предишните. В този случай с 3/4 ″ тръби, с максимален дебит от 1 до 60 l / min и налягане от 1.2 MPa.
  • Няма намерени продукти: той също така поддържа напрежение и максимална температура по отношение на своите алтернативи, също максималният поток и налягане са същите като при FS300A. Единственото нещо, което варира, е, че тръбата е 1 инч.

Трябва да изберете този, който ви интересува най-много за вашия проект ...

Интеграция с Arduino: практически пример

Arduino свързан към разходомера

La свързването на вашия разходомер е много просто. Те обикновено имат 3 кабела, един за събиране на данни за потока и друг два за захранване. Данните могат да бъдат свързани към входа на Arduino, който ви подхожда най-добре и след това да програмирате кода на скицата. И тези мощности, един към 5V и друг към GND, и това би било достатъчно, за да започне да работи.

Но за да има някаква функция, първо трябва да създадете код в IDE на Arduino. Начините за използване на този датчик за потока са много, както и начините за програмирането му, въпреки че тук имате практичен и прост пример така че можете да започнете да виждате как работи:

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

И ако искате получи консумация, тогава можете да използвате този друг код или да комбинирате и двата, за да имате и двата ... За консумация постигнатият поток трябва да бъде интегриран по отношение на времето:

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

Вече знаете, че в зависимост от това, от което се нуждаете, трябва да промените този код, освен това е много важно да го поставите коефициентът К на модела, който сте закупили, или няма да вземе реални измервания. Не забравяй!


Бъдете първите, които коментират

Оставете вашия коментар

Вашият имейл адрес няма да бъде публикуван. Задължителните полета са отбелязани с *

*

*

  1. Отговорен за данните: Мигел Анхел Гатон
  2. Предназначение на данните: Контрол на СПАМ, управление на коментари.
  3. Легитимация: Вашето съгласие
  4. Съобщаване на данните: Данните няма да бъдат съобщени на трети страни, освен по законово задължение.
  5. Съхранение на данни: База данни, хоствана от Occentus Networks (ЕС)
  6. Права: По всяко време можете да ограничите, възстановите и изтриете информацията си.