Витратомір: все, що вам потрібно знати

витратомір

Виміряйте витрату або витрату рідини це важливо в деяких випадках, і для цього вам потрібен витратомір. Наприклад, якщо ви будете слідувати Формулі 1, ви будете знати, що FIA змушує команди використовувати витратомір у двигуні для виявлення витрати, яку кожна команда робить у своїх автомобілях, і таким чином уникати можливих пасток, вводячи більший потік, щоб отримати більше потужність в певні моменти або як масло використовується для спалення двигуна ...

Але поза F1 вам може бути цікаво мати один із цих пристроїв, щоб знати, яке споживання води або будь-якої іншої рідини має система, або також визначити швидкість потоку трубки, яка витягується з бака, щоб визначити, коли вона споживається, автоматизовані зрошувальні системи саду тощо. застосування цих елементів багато, ви можете встановити ліміт самостійно.

Витратомір або витратомір

Звідки ти повинен знати потік - кількість рідини або рідини, яка циркулює по трубі або заглушці за одиницю часу. Вимірюється в одиницях об’єму, поділених на одиницю часу, наприклад літр на хвилину, літр на годину, кубічний метр на годину, кубічні метри на секунду тощо. (л / хв, л / год, мXNUMX / год, ...).

Що таке витратомір?

El витратомір або лічильник рідини Саме пристрій здатний виміряти ту кількість потоку, яка проходить через трубу. Існує кілька моделей та виробників, які легко інтегрувати з Arduino. Ця швидкість потоку буде залежати від кількох факторів, таких як перетин труби та тиск подачі.

Керуючи цими двома параметрами та за допомогою витратоміра, який вимірює витрату, ви можете отримати вдосконалену систему управління рідинами. Дуже корисно для домашньої автоматизації або інших електронних і навіть промислових проектів. Для домашніх проектів виробники мають добре відомі моделі, такі як YF-S201, FS300A, FS400A, І т.д.

Типи витратомірів

На ринку ви знайдете різні типи витратомірів або витратомірів залежно від використання, яке ви використовуєте, та бюджету, який ви хочете інвестувати. Крім того, деякі з них характерні для рідини, такі як вода, паливо, масло, інші мають більшу або меншу точність, ціни варіюються від декількох євро до тисяч євро в деяких дуже просунутих на промисловому рівні:

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

Беручи до уваги, що нас цікавить електроніка, ми продовжуватимемо вивчати ці ...

Витратоміри для Arduino і де придбати

L електронні витратоміри типу, що використовуються в ArduinoЯк і YF-S201, YF-S401, FS300A та FS400A, вони мають пластиковий корпус та ротор із лопатями всередині, як я вже згадував раніше. Магніт, закріплений на роторі та його обертання, за допомогою ефекту Холла, визначатиме потік або споживання, яке він вимірює в будь-який момент часу. Виходом датчика буде квадратна хвиля з частотою, пропорційною швидкості потоку через неї.

Так званий коефіцієнт перетворення K між частотою (Гц) і витратою (л / хв) залежить від параметрів, які виробник надав датчику, отже, він не однаковий для всіх. В таблиці даних або інформація про модель ви купуєте матимуть ці значення, щоб ви могли використовувати їх у коді Arduino. Точність також не буде однаковою, хоча загалом для Arduino вони, як правило, коливаються між 10% вище або нижче щодо поточного потоку.

L рекомендовані моделі звук:

  • YF-S201: він має з’єднання для 1/4 ″ трубки для вимірювання витрати від 0.3 до 6 літрів на хвилину. Максимальний тиск, який він переносить, становить 0.8 МПа, при максимальній температурі рідини до 80 ° C. Його напруга працює між 5-18в.
  • YF-S401: у цьому випадку підключення до трубки становить 1/2 ″, хоча завжди можна використовувати перетворювачі. Потік, який він вимірює, становить від 1 до 30 л / хв, при тиску до 1.75 МПа і температурі рідини до 80 ° С. Однак його напруга все ще становить 5-18 в.
  • FS300A: така ж напруга і така ж максимальна температура, як і попередні. У цьому випадку з трубами 3/4 ″, з максимальним потоком від 1 до 60 л / хв і тиском 1.2 МПа.
  • FS400A: він також підтримує напругу та максимальну температуру по відношенню до своїх альтернатив, також максимальний потік та тиск такі ж, як і для FS300A. Єдине, що варіюється, це те, що трубка становить 1 дюйм.

Ви повинні вибрати той, який найбільше вас цікавить для вашого проекту ...

Інтеграція з Arduino: практичний приклад

Arduino підключений до витратоміра

La підключення вашого витратоміра дуже просте. Зазвичай вони мають 3 кабелі, один для збору даних про потік, а інший два для живлення. Дані можна підключити до входу Arduino, який вам найбільше підходить, а потім запрограмувати код ескізу. І ті силові, один на 5 В, а інший на 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. Права: Ви можете будь-коли обмежити, відновити та видалити свою інформацію.