Датчик расхода воды

Необходимые компоненты

  1. Плата Arduino Uno (купить на AliExpress).
  2. Датчик расхода воды (water flow sensor) YF-S201 (купить на AliExpress).
  3. ЖК дисплей 16х2 (купить на AliExpress).
  4. Потенциометр 10 кОм (купить на AliExpress).
  5. Соединительные провода.
  6. Водопроводная труба.

Датчик расхода воды YF-S201

Как показано на рисунке, датчик YF-S201 имеет три провода: красный, желтый и черный. Красный провод используется для подачи питающего напряжения, которое может составлять от 5V до 18V, а черный провод подключается к земле (GND). Через желтый провод осуществляется передача выходных импульсов датчика, которые могут быть считаны микроконтроллером. Измеряющим элементом датчика является вихревое колесо (pinwheel), которое измеряет количество жидкости, прошедшее через него.

Внешний вид датчика YF-S201 с подсоединенными коннекторами

Принцип работы датчика расхода воды YF-S201 основан на эффекте Холла, который заключается в появлении разности потенциалов в электрическом проводнике под действием магнитного поля, приложенного перпендикулярно протекающему через проводник току. Датчик расхода воды YF-S201 включает датчик Холла, который генерирует электрический импульс с каждым вращением (оборотом) колеса, измеряющего поток воды. При этом датчик Холла надежно запаян и непосредственно не контактирует с водой, что позволяет ему всегда оставаться сухим и готовым к работе. Внешний вид датчика расхода воды YF-S201 показан на следующем рисунке.

Внешний вид датчика расхода воды YF-S201

Для соединения датчика YF-S201 с водопроводной трубой мы использовали два коннектора с внутренней резьбой, показанные на следующем рисунке.

Коннекторы, которые мы использовали для соединения датчика YF-S201 с водопроводной трубой

В соответствии со спецификацией на датчик YFS201 максимальный потребляемый ток при питающем напряжении 5V составляет 15mA. При этом измеряемая им скорость потока воды составляет от 1 до 30 литров в минуту. Когда через датчик протекает поток воды, он контактирует с лопатками турбины (колеса), расположенного на пути потока воды. Ось турбины соединена с датчиком Холла, поэтому всегда, когда через датчик протекает поток воды, датчик Холла генерирует электрические импульсы. Все что нам нужно сделать для измерения скорости потока воды – это измерять время между этими импульсами или подсчитывать количество этих импульсов за 1 секунду. С помощью этих данных затем мы можем рассчитать скорость потока воды в литрах в минуту (L/Hr – liter per hour) и далее с помощью простой формулы найти объем воды, который прошел (протек) через трубу. Для подсчета количества импульсов от датчика расходы воды мы будем использовать плату Arduino Uno.

Схема проекта

Схема подключения датчика расхода воды к плате Arduino Uno представлена на следующем рисунке.

Схема подключения датчика расхода воды к плате Arduino Uno

Соединения между платой Arduino, ЖК дисплеем 16×2 и датчиком расхода воды представлены в следующих таблицах ниже. Потенциометр подключен к контактам 5V и GND, а его средний контакт подключен к контакту V0 ЖК дисплея.

Датчик расхода водыПлата Arduino
красный провод5V
черный проводGND
желтый провод2
ЖК дисплейПлата Arduino
VssGND (ground rail of breadboard)
VDD5V (Positive rail of the breadboard)
V0к потенциометру
RS12
RWGND
E11
D79
D6 to D33 to 5

После сборки проекта на макетной плате у нас получилась конструкция следующего вида:

Внешний вид конструкции проекта

Полный код программы приведен в конце статьи, здесь же мы кратко рассмотрим его основные фрагменты.

В начале программы необходимо подключить библиотеку для работы с ЖК дисплеем, а также указать плате Arduino, к каким ее контактам подключен ЖК дисплей, в нашем случае это контакты 12, 11, 5, 4, 3, 9. Выходной контакт датчика расходы воды подключен к контакту 2 платы Arduino UNO.

volatile int flow_frequency; // Measures flow sensor pulses

// Calculated litres/hour

floatvol=0.0,l_minute;

unsigned char flowsensor = 2; // Sensor Input

unsigned long currentTime;

unsigned long cloopTime;

#include <LiquidCrystal.h>

LiquidCrystal lcd(12, 11, 5, 4, 3, 9);

void flow () // Interrupt function

{

flow_frequency++;

}

В функции void setup мы зададим режим работы контакта 2 платы Arduino на ввод данных и с помощью функции attachInterrupt сконфигурируем его как контакт, на котором будет происходить обнаружение прерываний. Прерывание на этом контакте будет обнаруживаться при увеличении уровня напряжения на нем. При каждом таком случае будет вызываться функция обработки прерывания flow, в которой будет происходить инкрементирование переменной flow_frequency. Переменные current time и cloopTime используются для измерения временного промежутка длительностью 1 секунда.

void setup()

{

pinMode(flowsensor, INPUT);

digitalWrite(flowsensor,HIGH);

Serial.begin(9600);

lcd.begin(16, 2);

attachInterrupt(digitalPinToInterrupt(flowsensor), flow, RISING); // Setup Interrupt

lcd.clear();

lcd.setCursor(0,0);

lcd.print(“Water Flow Meter”);

lcd.setCursor(0,1);

lcd.print(“Circuit Digest”);

currentTime = millis();

cloopTime = currentTime;

}

Далее в функции void loop () условие if(currentTime >= (cloopTime + 1000)) гарантирует что код внутри него будет выполняться каждую секунду. Благодаря этому мы можем рассчитать количество импульсов, поступающих с датчика расхода воды за секунду. Из даташита на датчик расходы воды можно узнать, что частота импульсов в нем умножается на 7.5, поэтому чтобы найти скорость потока воды в литрах в минуту, нам в программе необходимо измеренную частоту импульсов (flow_frequency) разделить на 7.5. После нахождения скорости потока воды в литрах в минуту мы делим полученную величину на 60 чтобы определить скорость потока воды в литрах в секунду. Для расчета объема прошедшей через датчик воды значение переменной l_minute прибавляется к значению переменной vol каждую секунду.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

void loop ()

{

currentTime = millis();

// Every second, calculate and print litres/hour

if(currentTime >= (cloopTime + 1000))

{

cloopTime = currentTime; // Updates cloopTime

if(flow_frequency != 0){

// Pulse frequency (Hz) = 7.5Q, Q is flow rate in L/min.

l_minute = (flow_frequency / 7.5); // (Pulse frequency x 60 min) / 7.5Q = flowrate in L/hour

lcd.clear();

lcd.setCursor(0,0);

lcd.print(“Rate: “);

lcd.print(l_minute);

lcd.print(” L/M”);

l_minute = l_minute/60;

lcd.setCursor(0,1);

vol = vol +l_minute;

lcd.print(“Vol:”);

lcd.print(vol);

lcd.print(” L”);

flow_frequency = 0; // Reset Counter

Serial.print(l_minute, DEC); // Print litres/hour

Serial.println(” L/Sec”);

}

Далее после оператора else работает код, если за прошедшую секунду не поступало никаких импульсов от датчика расхода воды.

    else {

lcd.clear();

lcd.setCursor(0,0);

lcd.print(“Rate: “);

lcd.print( flow_frequency );

lcd.print(” L/M”);

lcd.setCursor(0,1);

lcd.print(“Vol:”);

lcd.print(vol);

lcd.print(” L”);

}

Тестирование работы проекта

В нашем проекте мы подключили датчик расхода воды к водопроводной трубе. Если по трубе не течет воды, то на выход датчика расхода воды не поступает никаких импульсов, следовательно, не регистрируется прерываний на контакте 2 платы Arduino и значение переменной flow_frequency будет равно нулю. В этом случае выполняется код основной программы, идущий после оператора else.

Тестирование работы проекта

Если по трубе протекает вода, то турбина (колесо, крыльчатка) внутри датчика расхода воды начинает вращаться, поэтому на выходе датчика расхода воды появляются электрические импульсы, генерируемые датчиком Холла. Каждый из этих импульсов вызывает срабатывание прерывания на контакте 2 платы Arduino. С каждым поступившим сигналом прерывания (rising edge – передний фронт импульса) значение переменной flow_frequency увеличивается на 1. Затем переменные current time и cloopTIme гарантируют, что значение переменной flow_frequency будет учитываться в расчетах каждую секунду. После проведения вычислений значение переменной flow_frequency устанавливается равным 0 и процесс начинается сначала.

Более подробно работу проекта вы можете посмотреть в видео, приведенном в конце статьи.

Исходный код программы (скетча)

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

/*

YF‐ S201 Water Flow Sensor

Water Flow Sensor output processed to read in litres/hour

Adaptation Courtesy: hobbytronics.co.uk

*/

volatile int flow_frequency; // с помощью этой переменной мы будем подсчитывать импульсы от датчика расходы воды

// Calculated litres/hour

floatvol=0.0,l_minute;

unsigned char flowsensor = 2; // Sensor Input

unsigned long currentTime;

unsigned long cloopTime;

#include <LiquidCrystal.h>

LiquidCrystal lcd(12, 11, 5, 4, 3, 9);

void flow () // функция обработки прерывания

{

flow_frequency++;

}

void setup()

{

pinMode(flowsensor, INPUT);

digitalWrite(flowsensor, HIGH); // Optional Internal Pull-Up

Serial.begin(9600);

lcd.begin(16, 2);

attachInterrupt(digitalPinToInterrupt(flowsensor), flow, RISING); // Setup Interrupt

lcd.clear();

lcd.setCursor(0,0);

lcd.print(“Water Flow Meter”);

lcd.setCursor(0,1);

lcd.print(“Circuit Digest”);

currentTime = millis();

cloopTime = currentTime;

}

void loop ()

{

currentTime = millis();

// каждую секунду рассчитываем и выводим на экран ЖК дисплея скорость потока воды в литрах в минуту

if(currentTime >= (cloopTime + 1000))

{

cloopTime = currentTime; // Updates cloopTime

if(flow_frequency != 0){

// Pulse frequency (Hz) = 7.5Q, Q is flow rate in L/min.

l_minute = (flow_frequency / 7.5); // (Pulse frequency x 60 min) / 7.5Q = flowrate in L/hour

lcd.clear();

lcd.setCursor(0,0);

lcd.print(“Rate: “);

lcd.print(l_minute);

lcd.print(” L/M”);

l_minute = l_minute/60;

lcd.setCursor(0,1);

vol = vol +l_minute;

lcd.print(“Vol:”);

lcd.print(vol);

lcd.print(” L”);

flow_frequency = 0; // сбрасываем счетчик

Serial.print(l_minute, DEC); // Print litres/hour

Serial.println(” L/Sec”);

}

else {

Serial.println(” flow rate = 0 “);

lcd.clear();

lcd.setCursor(0,0);

lcd.print(“Rate: “);

lcd.print( flow_frequency );

lcd.print(” L/M”);

lcd.setCursor(0,1);

lcd.print(“Vol:”);

lcd.print(vol);

lcd.print(” L”);

}

}

}

Видео, демонстрирующее работу проекта

6 699 просмотров

Про анемометры:  Квадрокоптер с камерой XIRO Xplorer Mini - купить в Москве в интернет-магазине
What is a flow meter and how does it work? Explained

 

A flow meter (or flow sensor) is an instrument used to measure linear, nonlinear, mass or volumetric flow rate of a liquid or a gas. When choosing flowmeters, one should consider such intangible factors as familiarity of plant personnel, their experience with calibration and maintenance, spare parts availability, and mean time between failure history, etc., at the particular plant site. It is also recommended that the cost of the installation be computed only after taking these steps.

One of the most common flow measurement mistakes is the reversal of this sequence: instead of selecting a sensor which will perform properly, an attempt is made to justify the use of a device because it is less expensive. Those “inexpensive” purchases can be the most costly installations. This page will help you better understand flow meters, but you can also speak to our application engineers at anytime if you have any special flow measurement challenges.

First Steps to Choose the Right Flow Meter

The first step in flow sensor selection is to determine if the flowrate information should be continuous or totalized, and whether this information is needed locally or remotely. If remotely, should the transmission be analog, digital, or shared? And, if shared, what is the required (minimum) data-update frequency? Once these questions are answered, an evaluation of the properties and flow characteristics of the process fluid, and of the piping that will accommodate the flowmeter, should take place. In order to approach this task in a systematic manner, forms have been developed, requiring that the following types of data be filled in for each application: Download the Flowmeter Evaluation Form.

Fluid and flow characteristics

The fluid and its given and its pressure, temperature, allowable pressure drop, density (or specific gravity), conductivity, viscosity (Newtonian or not?) and vapor pressure at maximum operating temperature are listed, together with an indication of how these properties might vary or interact. In addition, all safety or toxicity information should be provided, together with detailed data on the fluid’s composition, presence of bubbles, solids (abrasive or soft, size of particles, fibers), tendency to coat, and light transmission qualities (opaque, translucent or transparent?).

Pressure & Temperature Ranges

Expected minimum and maximum pressure and temperature values should be given in addition to the normal operating values when selecting flowmeters. Whether flow can reverse, whether it does not always fill the pipe, whether slug flow can develop (air-solids-liquid), whether aeration or pulsation is likely, whether sudden temperature changes can occur, or whether special precautions are needed during cleaning and maintenance, these facts, too, should be stated.

Mass flow meters

Piping and Installation Area

Concerning the piping and the area where the flowmeters are to be located, consider: For the piping, its direction (avoid downward flow in liquid applications), size, material, schedule, flange-pressure rating, accessibility, up or downstream turns, valves, regulators, and available straight-pipe run lengths. The specifying engineer must know if vibration or magnetic fields are present or possible in the area, if electric or pneumatic power is available, if the area is classified for explosion hazards, or if there are other special requirements such as compliance with sanitary or clean-in-place (CIP) regulations.

Flow rates and Accuracy

The next step is to determine the required meter range by identifying minimum and maximum flows (mass or volumetric) that will be measured. After that, the required flow measurement accuracy is determined. Typically accuracy is specified in percentage of actual reading (AR), in percentage of calibrated span (CS), or in percentage of full scale (FS) units. The accuracy requirements should be separately stated at minimum, normal, and maximum flowrates. Unless you know these requirements, your flowmeter’s performance may not be acceptable over its full range.

Accuracy vs. Repeatability

If acceptable metering performance can be obtained from two different flow meter categories and one has no moving parts, select the one without moving parts. Moving parts are a potential source of problems, not only for the obvious reasons of wear, lubrication, and sensitivity to coating, but also because moving parts require clearance spaces that sometimes introduce “slippage” into the flow being measured. Even with well maintained and calibrated meters, this unmeasured flow varies with changes in fluid viscosity and temperature. Changes in temperature also change the internal dimensions of the meter and require compensation.

Mass or Volumetric Units

Before specifying a flow meter, it is also advisable to determine whether the flow information will be more useful if presented in mass or volumetric units. When measuring the flow of compressible materials, volumetric flow is not very meaningful unless density (and sometimes also viscosity) is constant. When the velocity (volumetric flow) of incompressible liquids is measured, the presence of suspended bubbles will cause error; therefore, air and gas must be removed before the fluid reaches the meter. In other velocity sensors, pipe liners can cause problems (ultrasonic), or the meter may stop functioning if the Reynolds number is too low (in vortex shedding meters, RD > 20,000 is required).

In view of these considerations, mass flowmeters, which are insensitive to density, pressure and viscosity variations and are not affected by changes in the Reynolds number, should be kept in mind. Also underutilized in the chemical industry are the various flumes that can measure flow in partially full pipes and can pass large floating or settleable solids.

Датчик расхода воды

Choose the right Flowmeter

Rotameters

Spring and Piston Flow Meters

Spring and Piston Flow Meters
Piston-type flowmeters use an annular orifice formed by a piston and a tapered cone. The piston is held in place at the base of the cone (in the “no flow position”) by a calibrated spring. Scales are based on specific gravities of 0.84 for oil meters, and 1.0 for water meters. Their simplicity of design and the ease with which they can be equipped to transmit electrical signals has made them an economical alternative to variable area flowmeters for flowrate indication and control.
Про анемометры:  Материальные потоки

Mass Gas Flowmeters

Mass Gas Flowmeters
Thermal-type mass flow meters operate with minor dependence on density, pressure, and fluid viscosity. This style of flowmeter utilizes either a differential pressure transducer and temperature sensor or a heated sensing element and thermodynamic heat conduction principles to determine the true mass flow rate. Many of these mass flowmeters have integral displays and analog outputs for data logging. Popular applications include leak testing and low flow measurements in the milliliters per minute. A special type will be the Corioliss flow meter.

Ultrasonic Flowmeters

Ultrasonic Flowmeters
The ultrasonic doppler flow meters are commonly used in dirty applications such as wastewater and other dirty fluids and slurries which ordinarily cause damage to conventional sensors. The basic principle of operation employs the frequency shift (Doppler Effect) of an ultrasonic signal when it is reflected by suspended particles or gas bubbles (discontinuities) in motion.

Turbine Flow Meters

Turbine Flow Meters
The turbine meter can have an accuracy of 0.5% of the reading. It is a very accurate meter and can be used for clean liquids and viscous liquids up to 100 centistokes. A minimum of 10 pipe diameters of straight pipe on the inlet is required. The most common outputs are a sine wave or squarewave frequency but signal conditioners can be mounted on top for analog outputs and explosion proof classifications. This mechanical meters consists of a multi-bladed rotor mounted at right angles to the flow and suspended in the fluid stream on a free-running bearing.

Paddlewheel Sensors

Paddlewheel Sensors
One of the most popular cost effective flowmeters for water or water like fluids. Many are offered with flow fittings or insertions styles. These meters like the turbine meter require a minimum of 10 pipe diameters of straight pipe on the inlet and 5 on the outlet. Chemical compatibility should be verified when not using water. Sine wave and Squarewave pulse outputs are typical but transmitters are available for integral or panel mounting. The rotor of the paddlewheel sensor is perpendicular to the flow and contact only a limited cross section of the flow.

Positive Displacement Flowmeters

Positive Displacement Flowmeters
These meters are used for water applications when no straight pipe is available and turbine meters and paddlewheel sensor would see too much turbulence. The positive displacement flow meters are also used for viscous liquids.

Vortex Meters

Pitot Tubes

Pitot Tubes or Differential Pressure Sensor for Liquids and Gases
The pitot tubes offer the following advantages easy, low-cost installation, much lower permanent pressure loss, low maintenance and good resistance to wear. The pitot tubes do require sizing, contact our flow engineering.

RTD Probes

Magnetic Flow meters for Conductive Liquids
Available in in-line or insertion style. The magnetic flowmeters do not have any moving parts and are ideal for wastewater application or any dirty liquid which is conductive. Displays are integral or an analog output can be used for remote monitoring or data logging.

RTD Probes

Anemometers for Air Flow Measurement
Hot wire anemometers are probes with no moving parts. Airflow can be measured in pipes and ducts with a hand held or permanent mount style. Vane anemometers are also available. Vane anemometers are usually larger than a hot wire but are more rugged and economical. Models are available with temperature and humidity measurement.

HOW TO CHOOSE A FLOW METER?
There are some question that need to be answered before choosing a Flow Sensor.

  1. What is the fluid being measured?
  2. Do you require rate measurement and/or totalization?
  3. If the liquid is not water, what viscosity is the liquid?
  4. Do you require a local display on the flow meter or do you need an electronic signal output?
  5. What is the minimum and maximum flowrate?
  6. What is the minimum and maximum process pressure?
  7. What is the minimum and maximum process temperature?
  8. Is the fluid chemically compatible with the flowmeter wetted parts?
  9. If this is a process application, what is the size of the pipe??

 

Mass or Volumetric Flow Rate?

So you want to measure flow? The answer would seem to be to purchase a flowmeter. With fluid flow defined as the amount of fluid that travels past a given location, this would seem to be straightforward — any flowmeter would suffice. However, consider the following equation describing the flow of a fluid in a pipe.

Q = A x v

Q is flow rate, A is the crosssectional area of the pipe, and v is the average fluid velocity in the pipe. Putting this equation into action, the flow of a fluid traveling at an average velocity of a 1 meter per second through a pipe with a 1 square meter cross-sectional area is 1 cubic meter per second. Note that Q is a volume per unit time, so Q is commonly denoted as the “volumetric” flow rate. Now consider the following equation:

W = rho x Q

Where W is flow rate (again – read on), and rho is the fluid density. Putting this equation into action, the flow rate will be 1 kilogram per second when 1 cubic meter per second of a fluid with a density of 1 kilogram per cubic meter is flowing. (The same can be done for the commonly-used “pounds”. Without getting into details — a pound is assumed to be a mass unit.) Note that W is a mass per unit time, so W is commonly denoted as the “mass” flow rate. Now — which flow do you want to measure? Not sure? In some applications, measuring the volumetric flow is the thing to do.

Consider filling a tank. Volumetric flow may be of interest to avoid overflowing a tank where liquids of differing densities can be added. (Then again, a level transmitter and high level switch/shutoff may obviate the need for a flowmeter.) Consider controlling fluid flow into a process that can only accept a limited volume per unit time. Volumetric flow measurement would seem applicable.

In other processes, mass flow is important. Consider chemical reactions where it is desirable to react substances A, B and C. Of interest is the number of molecules present (its mass), not its volume. Similarly, when buying and selling products (custody transfer) the mass is important, not its volume.

How much maintenance does a flowmeter require?

A number of factors influence maintenance requirements and the life expectancy of flowmeters. The major factor, of course, is matching the right instrument to the particular application. Poorly selected devices invariably will cause problems at an early date. Flowmeters with no moving parts usually will require less attention than units with moving parts. But all flowmeters eventually require some kind of maintenance.



Product Info
Level Measurement

Technical Learning
Specialty Level Switches

В поисках flow meter display? Тогда вам нужно знать, что на DHgate их можно купить по оптовым ценам – совершать заказы со складов DHgate легко!На DHgate.com вы будете шокированы богатством выбора, увидев полный ассортимент модных flow meter по невероятно низким ценам с дополнительной скидкой – и вас будет не остановить.

Про анемометры:  ✅ Анемометр крановый АСЦ-3 (сигнальный, цифровой) купить по лучшей цене цена в Москве и Санкт-Петербурге ✅

Мы предлагаем вам только лучшее – по этому принципу мы нашли высоко оцененные массовые расходомеры от лучших производителей.Список товаров и отзывов – лучшее доказательство того, почему наши клиенты нам доверяют.Безопасность и комфорт обеспечены благодаря быстрой доставке модных flow meter display товаров и Службе поддержки, работающей на ваше благо 24/10Вы также можете получить дополнительную скидку к уже низкой цене на flow meter display в виде купона или акции от продавца.Вы также можете получить дополнительную скидку к уже низкой цене на flow meter display в виде купона или акции от продавца.Если вы всегда хотели иметь расходомер химического вещества, это ваш шанс! DHgate гарантирует разнообразие ассортимента и удовольствие от шоппинга.Мы даже не будем говорить о том, что заказывать массовые расходомеры на нашем сайте гораздо дешевле, чем где-либо ещё – об этом уже говорят отзывы наших клиентов.Покупая массовые расходомеры по своему вкусу в нашем магазине, вы дополнительно получите бесплатную и быструю доставку, возможность простого возврата средств.DHgate предоставляет простой, безопасный и удобный доступ к широкому ассортименту товаров, включая массовые расходомеры, и выгодным акциям.Отбросьте сомнения и начните шоппинг онлайн на DHgate – покупайте дешевые и стильные 2 расходомер для воды с безопасной оплатой и разными способами доставки.Больше нет смысла искать последние flow meter display – DHgate предлагает интересную подборку товаров в разных стилях, подходящих под все ваши нужды и вкусы.Кажется, что каждый сезон приходится на высокий сезон. Мы продолжаем добавлять его в наши магазины, потому что он быстро продается, и это даже заставило нас снизить его цену.

Рассматривается реализация дисплея данных с частотных выходов расходомеров для воды фирмы «Взлет» отечественного производства, один из которых рассчитан на условный проход 25мм, а другой на условный проход 60мм. В качестве первичного источника информации использованы частотные выходы данных расходомеров. Вывод осуществляется как мгновенного расхода в (м**3/час), так и суммарного (в М**3)расхода одновременно для обоих расходомеров. При отключении питания все выводимые данные автоматически записываются в энергонезависимую память приборы и восстанавливаются в ОЗУ микроконтроллера при повторном включении прибора. В качестве LCD индикатора для дисплея использован LCD марки WH1602D-NGG с известной системой команд от фирмы Hitachi.

Следует отметить следующие преимущества использования частотного выхода (ЧВ) расходомера перед использованием RS485 или токового выхода:

  1. Данный тип выходного сигнала имеет место практически на всех видах расходомеров, включая самые простые такие как турбинные или крыльчатые.
  2. ЧВ наименее подвержен воздействию помех и наводок от силовых цепей, поскольку потеря нескольких импульсов слабо влияет на достоверность передаваемых расходомером данных.
  3. Для частотного выхода, как правило, предусмотрена гальваническая развязка в виде встроенной оптопары, что защищает прибор от попадания посторонних напряжений и не влияет на достоверность передаваемых данных
  4. Частотный сигнал достаточно легко преобразуется в ток диапазона 4-20мА для подключения к АЦП аналогового ввода микроконтроллера или ПЛК.

Датчик расхода воды
Рис 1.

Принципиальная схема прибора показана на рис 1

По сути, данный прибор является двухканальным частотомером. Калибровочные коэффициенты для перевода значений частоты в показания расхода были получены экспериментально и занесены в программу микроконтроллера прибора. Для простоты реализации, в качестве опорного генератора секундных интервалов была использована отечественная микросхема  D3 типа КР175ИЕ5. Принцип работы этой микросхемы и схема включения подробно описаны в литературе [1]. Причиной ее использования явилось желание экономии одного из аппаратных таймеров-счетчиков микроконтроллера с целью упрощения программы.   Именно её применение делает данный прибор двухканальным частотомером, а  вырабатываемые ею кварцеванные секундные интервалы служат для подсчета импульсов с частотных выходов обоих расходомеров одновременно. Эти выходы подключены, через цепочки защитных диодов VD1—VD4, которые не допускают появления на входах PB0 и PB1  микроконтроллера ATMega8515 опасных напряжений из внешних цепей. Эти входы сконфигурированы как источники тактовых импульсов для таймеров-счетчиков микроконтроллера Т0 и Т1 соответственно. Естественно, что данные таймеры – счетчики настроены для работы от внешнего тактируемого сигнала. Их содержимое подсчитывается по прерыванию INT1, ежесекундно и обнуляется для выполнения последующих подсчетов. Далее программа выполняет коррекцию значения измеренной частоты с целью преобразования значений частоты в значения расхода и вывод  этих показаний на верхнюю строчку ЖКИ. Каждый отсчет суммируется ежесекундно со значением суммарного расхода, которое, также, подлежит сохранению в EEPROM микроконтроллера и выводу на вторую строку ЖКИ.

По сигналу прерывания INT0 (сразу по пропаданию напряжения питания 9—24В) происходит запись отображаемых на дисплее данных в энергонезависимую память микроконтроллера.

Датчик расхода воды
Фото 1

На фото 1 показан внешний вид прибора при отображении данных. В качестве корпуса для устройства применен корпус под автоматические выключатели подходящего размера.

В качестве прототипа схемы была использована плата AVR-P40B-8515 [4]  от Olimex.

На фото 2 показан вид платы со стороны установки компонентов.

Датчик расхода воды
Фото 2

На схеме (Рис. 1) не показаны те элементы платы, которые характерны для микроконтроллера типа AT90S8515 AVR, под который эта плата изначально была разработана (напр. драйвер питания). Прибор оборудован интерфейсом последовательного обмена типа RS232, который, в данном проекте не задействован, однако, обеспечивает необходимую гибкость при адаптации данного прибора под другие типы расходомеров с частотным выводом данных. Именно через него можно, достаточно оперативно, обновлять калибровочные коэффициенты, используя для этой цели даже терминальную программу на ПК. Немаловажно и то, что данные с расходомеров, по этому же каналу, могут быть доставлены, в реальном времени, на удаленный терминал.

Прошивка микроконтроллера приведена во вложении. Фьюз-биты (Fuses) оставлены заводскими.

Литература:

  1. Бирюков С.А. – Цифровые устройства на МОП интегральных микросхемах, М. :Радио и связь,1991.-184с
  2. Практическое программирование микроконтроллеров Atmel AVR на языке ассемблера. 2-е изд., испр.Автор: Ревич Ю.В.
  3. 8 bit microcontroller with 8Kb Flash Data Sheet ATMEGA8515 Atmel
  4. http://www.olimex.com/dev AVR-P40B-8515 PROTOTYPE BOARD WITH 10 PIN ICSP CONNECTOR FOR AT90S8515 AVR MICROCONTROLLERS

Автор выражает благодарность компании  ООО «ЭВС» за содействие в реализации данного проекта.

Список радиоэлементов

ОбозначениеТипНоминалКоличествоПримечаниеМагазинМой блокнот
D1МК AVR 8-битATmega85151Поиск в магазине ОтронВ блокнот
D2ИС RS-232 интерфейсаMAX2321Поиск в магазине ОтронВ блокнот
D3МикросхемаКР176ИЕ51Поиск в магазине ОтронВ блокнот
UЛинейный регуляторLM78051Поиск в магазине ОтронВ блокнот
VD1-VD4Диод4Поиск в магазине ОтронВ блокнот
VD5Стабилитрон5.1 В1Поиск в магазине ОтронВ блокнот
VD6Выпрямительный диод1N40071Поиск в магазине ОтронВ блокнот
С1Конденсатор1 мкФ1Поиск в магазине ОтронВ блокнот
С2-С5Электролитический конденсатор4.7 мкФ4Поиск в магазине ОтронВ блокнот
С6Конденсатор22 пФ1Поиск в магазине ОтронВ блокнот
С7Конденсатор62 пФ1Поиск в магазине ОтронВ блокнот
С8Электролитический конденсатор100 мкФ 16 В1Поиск в магазине ОтронВ блокнот
С9Электролитический конденсатор220 мкФ 25 В1Поиск в магазине ОтронВ блокнот
R1Подстроечный резистор10 кОм1Поиск в магазине ОтронВ блокнот
R2-R4Резистор4.7 кОм3Поиск в магазине ОтронВ блокнот
R5Резистор10 кОм1Поиск в магазине ОтронВ блокнот
R6Резистор560 кОм1Поиск в магазине ОтронВ блокнот
R7Резистор22 МОм1Поиск в магазине ОтронВ блокнот
R8Резистор47 кОм1Поиск в магазине ОтронВ блокнот
Х1Кварцевый резонатор32768 Гц1Поиск в магазине ОтронВ блокнот
JРазьем com-портаRS-2321Поиск в магазине ОтронВ блокнот
J1LCD-дисплейWH1602D-HGG1Поиск в магазине ОтронВ блокнот
J2Разьем для программатораICP1Поиск в магазине ОтронВ блокнот
Разьем для подключения блока питания1Поиск в магазине ОтронВ блокнот
Добавить все

Оцените статью
Анемометры
Добавить комментарий

Adblock
detector