PDA

Просмотр полной версии : Расчет расхода воды



Scream
26.04.2014, 07:06
Добрый день.
На дискретный вход плк подсоединен геркон со счетчика 1 импульс на литр.
Нужно вывести расход воды в кубах\час.

Вопрос вот в чем.

Как посчитать время в миллисекундах от импульса до импульса?
Какие блоки использовать?
Знаю что TON,TOF умеют считать время в мс, но не то. Есть ли для этого специальные блоки или решения?
Спасибо.

capzap
26.04.2014, 07:16
функция TIME() и библиотека ОСКАТ в помощь

Василий Кашуба
26.04.2014, 09:53
Добрый день.
На дискретный вход плк подсоединен геркон со счетчика 1 импульс на литр.
Нужно вывести расход воды в кубах\час.

Вопрос вот в чем.

Как посчитать время в миллисекундах от импульса до импульса?
Какие блоки использовать?
Знаю что TON,TOF умеют считать время в мс, но не то. Есть ли для этого специальные блоки или решения?
Спасибо.
Возьмите генератор, с нужной вам частотой, и считайте импульсы, между импульсами с водомерного счётчика.

Вольд
26.04.2014, 11:52
Добрый день.
На дискретный вход плк подсоединен геркон со счетчика 1 импульс на литр.
Нужно вывести расход воды в кубах\час.

Вопрос вот в чем.

Как посчитать время в миллисекундах от импульса до импульса?
Какие блоки использовать?
Знаю что TON,TOF умеют считать время в мс, но не то. Есть ли для этого специальные блоки или решения?

Спасибо.
Тебе надо не период следования импульсов мерить, а считать количество импульсов за фиксированный интервал времени. Далее можно делать пересчет в куб/час. Если частота следования импульсов невысокая, то можно использовать обычный дискретный вход ПЛК или ПР.

Scream
26.04.2014, 12:23
функция TIME() и библиотека ОСКАТ в помощь

Не нашел этой функции. У меня Oscat311 и oscat320.

Scream
26.04.2014, 12:37
Тебе надо не период следования импульсов мерить, а считать количество импульсов за фиксированный интервал времени. Далее можно делать пересчет в куб/час. Если частота следования импульсов невысокая, то можно использовать обычный дискретный вход ПЛК или ПР.

Фиксированный интервал времени не хотелось бы. Если он равен 1 минуте, то обновление редкое, хочется чем быстрее, тем лучше.
Если взять допустим 30сек, то шаг будет в 120 литров!
Если этот интервал = 10сек, то шаг будет в 360 литров!
Чем больше интервал, тем меньше погрешность, но я хочу максимально маленький интервал обновления данных и максимально маленькую погрешность.
Поэтому если считать время, между импульсами, то не плохо вышло б, но функц-го блока для этого не знаю.

ASo
26.04.2014, 12:46
Не нашел этой функции. У меня Oscat311 и oscat320.
Смотрите временные функции КДС.

Вольд
26.04.2014, 13:43
Фиксированный интервал времени не хотелось бы. Если он равен 1 минуте, то обновление редкое, хочется чем быстрее, тем лучше.
Если взять допустим 30сек, то шаг будет в 120 литров!
Если этот интервал = 10сек, то шаг будет в 360 литров!
Чем больше интервал, тем меньше погрешность, но я хочу максимально маленький интервал обновления данных и максимально маленькую погрешность.
Поэтому если считать время, между импульсами, то не плохо вышло б, но функц-го блока для этого не знаю.
Чего ты сказки рассказываешь ? У тебя написано, что цена одного импульса - 1 литр/импульс. Это с какой частотой должен щелкать геркон, чтобы за 10 сек. набралось 360 литров ? Получается 36 раз в секунду. Бред какой-то.

capzap
26.04.2014, 14:12
Не нашел этой функции. У меня Oscat311 и oscat320.

в каком то ОСКАТе, вроде билдер, есть ФБ подсчета импульсов или мгновенного расхода и перевода их в литраж, а тайм это стандартная функция

BETEP
26.04.2014, 14:54
Как посчитать время в миллисекундах от импульса до импульса?
можно и в микросекундах
Запустите программу прерывания по скоростному таймеру, и считайте количество циклов этой программы между фронтами с геркона.
пересчёт количества циклов в литры делайте в основной программе, чтобы прогу прерывания не перегружать

Вольд
26.04.2014, 15:02
Дело плевое. Запусти любой таймер. например TON (у таймера есть выход ET, на который выводится прошедшее время в мс, уставку таймера PT сделай несколько часов, чтобы таймер долго не срабатывал) и считай сколько времени прошло между соседними импульсами, далее делай пересчет в литр/час. Если цикл программы будет, например 2 мс, то погрешность измерения временных интервалов не будет превышать это значение (2 мс).

Василий Кашуба
26.04.2014, 17:55
Фиксированный интервал времени не хотелось бы. Если он равен 1 минуте, то обновление редкое, хочется чем быстрее, тем лучше.
Если взять допустим 30сек, то шаг будет в 120 литров!
Если этот интервал = 10сек, то шаг будет в 360 литров!
Чем больше интервал, тем меньше погрешность, но я хочу максимально маленький интервал обновления данных и максимально маленькую погрешность.
Поэтому если считать время, между импульсами, то не плохо вышло б, но функц-го блока для этого не знаю.
Какой вам ещё ФБ нужен? Я же вам сказал, на счётчик подавайте частоту, хотя бы 100 герц и сбрасывайте показания счётчика импульсами с водомера, а перед сбросом записывайте показания счётчика в буфер и потом уже с этими показаниями выполняйте любые математические операции.

melky
26.04.2014, 21:16
Почему бы не считать кубометры ? и потом обрабатывать время....
пока отсчитаются очередные 1000 импульсов, столько можно обработать без всяких погрешностей.

Scream
29.04.2014, 11:52
Чего ты сказки рассказываешь ? У тебя написано, что цена одного импульса - 1 литр/импульс. Это с какой частотой должен щелкать геркон, чтобы за 10 сек. набралось 360 литров ? Получается 36 раз в секунду. Бред какой-то.
Уважаемый, вы не поняли суть проблемы.
360 литров за час при 3 литрах за 30 секунд, А ШАГ БУДЕТ В 120 ЛИТРОВ, тоесть при 4 литрах за 30 секунд = 480 литров в час. Так, на пальцах понятно?


Дело плевое. Запусти любой таймер. например TON (у таймера есть выход ET, на который выводится прошедшее время в мс, уставку таймера PT сделай несколько часов, чтобы таймер долго не срабатывал) и считай сколько времени прошло между соседними импульсами, далее делай пересчет в литр/час. Если цикл программы будет, например 2 мс, то погрешность измерения временных интервалов не будет превышать это значение (2 мс).

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


Какой вам ещё ФБ нужен? Я же вам сказал, на счётчик подавайте частоту, хотя бы 100 герц и сбрасывайте показания счётчика импульсами с водомера, а перед сбросом записывайте показания счётчика в буфер и потом уже с этими показаниями выполняйте любые математические операции.

И я же вам написал, что может есть готовые блоки? Считаю это тоже костылем.


Почему бы не считать кубометры ? и потом обрабатывать время....
пока отсчитаются очередные 1000 импульсов, столько можно обработать без всяких погрешностей.

Это я могу дополнительно считать, для проверки данных и т.п., но не то.
Вы не поняли суть проблемы. Нужно считать максимально быстро и максимально точно. Я считаю максимально быстрым - это время от импульса до импульса, быстрее расчитать не получится. Или я не прав?


Так пойдет ?


FUNCTION_BLOCK flow
(*
Для обычных импульсных счетчиков с частотой < 50..100Гц.
Для вменяемых пользователей с рабочим циклом 0..3мс (Гражданин помни : эмуляция - десятки мс)
(C) Валенок, апрель 2014
Люблю печенки
*)
VAR_INPUT
impulse : BOOL;
tmax : TIME; (*для обрыва асимптоты. Больше время - выше чуйствительность, но хуже ловля закрытия кранчиков*)
k : REAL; (*л/имп*)
END_VAR
VAR_OUTPUT
q : REAL; (*м3/ч*)
END_VAR
VAR_IN_OUT
liters : DWORD; (*наработка целых литров, из внешнего ретайна*)
END_VAR
VAR
fix : R_TRIG; (*ловим кокой-нить фронт импульса*)
period, (*последний законченный межимпульсный интервал*)
peri, (*текущий незаконч..*)
t : TIME; (*временная отметка*)
c : BYTE; (*на подумать самому*)
rem : REAL; (*k - real, liters - dword, нам пох*)
END_VAR


(*порядок выполнения выделенных групп особого значения не имеет*)

peri := TIME() - t;
c := SEL(peri > tmax, c, 0); (*самореинициализация, если чо*)


fix(clk := impulse);
IF fix.q THEN
period := peri;
t := TIME();
c := MIN(2,c + 1);
rem := rem + k;
liters := liters + REAL_TO_DWORD(rem); (*расчет редкий, промежуточное сохранение не нужно*)
rem := rem - REAL_TO_DWORD(rem);
END_IF


IF c = 2 THEN
IF peri >= period THEN
q := k * 3600 / TIME_TO_DWORD(peri); (*расчет делается только по необходимости - импульс и асимптота*)
END_IF
ELSE
q := 0;
END_IF


PS
Вот почему тут TAB'ы не любят ?

Вам отдельное спасибо, буду разбираться в коде.

Василий Кашуба
29.04.2014, 18:10
...И я же вам написал, что может есть готовые блоки? Считаю это тоже костылем...
Я вам подсказал идею, как реализовать вашу задачу. Валенок дал вам готовый код. Если вы не хотите сами писать программу и вам нужны только готовые решения, то так и напишите. Костыли нужны ФБ не имеющим нужных вам свойств, я вам никаких ФБ не предлагал.

AVF
30.04.2014, 09:24
Я считаю максимально быстрым - это время от импульса до импульса
--- можно в два раза быстрее - между фронтами импульса ... может быть ещё быстрее - зависит от скважности импульса с датчика ;)

Вольд
30.04.2014, 10:30
--- можно в два раза быстрее - между фронтами импульса ...
Это же надо такое написать. Каждый импульс имеет фиксированный вес - N литров/импульс. Приход каждого импульса означает, что за интервал времени между предыдущим и текущим импульсами расход составил N литров. Т.е. для того чтобы сделать пересчет в м куб./час над мерить не длительность импульса (погрешность будет высокая), а интервал времени между двумя соседними импульсами. А вот интервал времени между двумя соседними импульсами есть величина переменная и является функцией расхода.

Василий Кашуба
30.04.2014, 10:42
Это же надо такую глупость написать. Каждый импульс имеет фиксированный вес - N литров/импульс. Приход каждого импульса означает, что за интервал времени между предыдущим и текущим импульсом расход составил фиксированную величину N литров. Т.е. для того чтобы сделать пересчет в м куб./час над мерить не длительность импульса, а интервал времени между двумя соседними импульсами. А вот интервал времени между двумя соседними импульсами величина переменная.
Совершенно верно и делить 1 час на полученный интервал времени, тогда получим расход л/час.
Быстрее не получится.

Вольд
30.04.2014, 10:47
Совершенно верно и делить 1 час на полученный интервал времени, тогда получим расход л/час.
Быстрее не получится.
Не просто поделить, а еще умножить на цену импульса.

Василий Кашуба
30.04.2014, 10:50
Не просто поделить, а еще умножить на цену импульса.
В первом посте указана цена 1 литр/импульс.

Вольд
30.04.2014, 10:58
В первом посте указана цена 1 литр/импульс.
Это он (Scream) глупость написал. У автора темы "каша в голове", по этой причине и не может решить эту простую задачу. Сказано же: "Кто ясно мыслит, тот ясно излагает".

and909
30.04.2014, 12:33
...над мерить не длительность импульса (длительность импульса величина постоянная)...

Я думаю, в некоторых случаях, это не совсем так:rolleyes:

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

Scream
30.04.2014, 12:34
--- можно в два раза быстрее - между фронтами импульса ... может быть ещё быстрее - зависит от скважности импульса с датчика ;)

Ну само собой я имел в виду брать сигнал по переднему фронту с входа к которому подключен датчик.

Scream
30.04.2014, 12:42
Это он (Scream) глупость написал. У автора темы "каша в голове", по этой причине и не может решить эту простую задачу. Сказано же: "Кто ясно мыслит, тот ясно излагает".
Мне такого никто не говорил)))
Может я задачу описал не правильно. Всё действительно просто, но я зашел услышать есть ли еще решения. Я хочу делать всё максимально просто и удобно.
Проблема вовсе не в том что я тупой, коим тут меня вы выставили, а в том что я хочу сделать это хорошо.
Вот что было до создания темы у меня

PROGRAM LPM
VAR
r1: R_TRIG;
ton1: TON;
one: BOOL;
t1: TIME;
END_VAR
VAR_OUTPUT
O_DW: DWORD;
END_VAR

ton1(pt:=t#1m);

r1(clk:=i1);
IF r1.Q THEN
IF one=FALSE
THEN
one:=TRUE;
ton1(in:=TRUE);
ELSE
t1:=ton1.ET;
one:=FALSE;
ton1(in:=FALSE);
END_IF
END_IF
O_DW:=3600000/TIME_TO_DWORD(t1);


Вот теперь


PROGRAM LPH
VAR
r1: R_TRIG;
one: BOOL;
t1,t2: TIME;
END_VAR
VAR_OUTPUT
liters: WORD;
END_VAR

r1(clk:=i8);
IF r1.Q THEN
IF one=FALSE
THEN
one:=TRUE;
t1:=TIME();
ELSE
t2:=TIME()-t1;
one:=FALSE;
END_IF
END_IF
Liters:=DWORD_TO_WORD(3600000/TIME_TO_DWORD(t2));



Валенок разъяснил всё очень хорошо, за что ему спасибо.
В общем всем спасибо, что я хотел, я узнал.

AVF
30.04.2014, 13:33
Это же надо такое написать.
--- Зуб свой гнилой даёшь, что длительность импульса с водосчётчика постоянна и не зависит от расхода? - ты головёнкой то своей подумай, прежде, чем очередную нетленку запускать ... или погляди, как работает счётчик воды, если с мышлением туговато ;)
Вернее, как генерируется импульс. Расковыряй и посмотри ... что там стоит обычный геркон, а отнюдь не одновибратор. Теоретиков полно - практиков коты наплакали.

AVF
30.04.2014, 13:38
Я думаю, в некоторых случаях, это не совсем так:rolleyes:
--- в большинстве ... я бы сказал ;)


Длительность импульса-это время прохода магнита (электронные приборы исключаем) в области срабатывания геркона. Время это можно засечь (скажем с миллисекундной точностью), ну или посчитать импульсы (генератора ПЛК) за время нахождения контакта во включенном состоянии (между передним и задним фронтами).
--- абсолютно в дырдочку! Если хватит быстродействия прибора, то мгновенный расход можно измерить очень быстро, не дожидаясь переднего фронта следующего импульса!
Можно инверсно попробовать измерять время между задним предыдущего и передним последующего импульсов счётчика.

AVF
30.04.2014, 13:40
Проблема вовсе не в том что я тупой, коим тут меня вы выставили, а в том что я хочу сделать это хорошо.

--- на некоторых самовлюблённых недоученых индивидов надо меньше обращать внимание ... быть проще ... воспринимать его, как клоуна - экономия времени и денег на цирк , Однако;)

Вольд
30.04.2014, 14:05
--- Зуб свой гнилой даёшь, что длительность импульса с водосчётчика постоянна и не зависит от расхода? - ты головёнкой то своей подумай, прежде, чем очередную нетленку запускать ... или погляди, как работает счётчик воды, если с мышлением туговато ;)
Вернее, как генерируется импульс. Расковыряй и посмотри ... что там стоит обычный геркон, а отнюдь не одновибратор. Теоретиков полно - практиков коты наплакали.
Кончай слюной брызгать. Мозги надо иметь и элементарные знания, тогда ковырять ничего не придется. В прикрепленном файле приведена таблица из РЭ на подобный счетчик (http://kobold-rus.ru/products/rashodomery_indikatory/rashodomery/id-173/). Из этой таблицы следует:
1) цена импульса - величина постоянная (см. столбец 5);
2) период следования импульсов - величина переменная (см. столбец 3).

Вольд
30.04.2014, 14:38
--- на некоторых самовлюблённых недоученых индивидов надо меньше обращать внимание ... быть проще ... воспринимать его, как клоуна - экономия времени и денег на цирк , Однако;)
Если мне не веришь, обратись к своему земляку Ryzhij , он мужик весьма просвещенный и враз тебя вразумит по этой теме.

and909
30.04.2014, 15:01
На дискретный вход плк подсоединен геркон со счетчика 1 импульс на литр.
Автор писал про геркон.

Вот это:

1) цена импульса - величина постоянная (см. столбец 5);
2) период следования импульсов - величина переменная (см. столбец 3).
нисколько не противоречит этому:

Длительность импульса-это время прохода магнита (электронные приборы исключаем) в области срабатывания геркона.

А значит это применимо:

Время это можно засечь (скажем с миллисекундной точностью), ну или посчитать импульсы (генератора ПЛК) за время нахождения контакта во включенном состоянии (между передним и задним фронтами).

Спор теоретиков с практиками;)
Одни о теплом, другие о мягком.

Вольд
30.04.2014, 15:16
Автор писал про геркон.

Вот это:

нисколько не противоречит этому:


А значит это применимо:


Спор теоретиков с практиками;)
Одни о теплом, другие о мягком.

Еще один (and909) плохо просвещенный, вероятно, и не теоретик и не практик. А значит надо "Учиться, учиться и учиться", как завещал В.И.Ленин.

and909
30.04.2014, 15:46
Блин, не поленился, нарисовал диаграмму.

Специально для Вольда отметил длительность импульса, которую можно измерить.

12809

Надеюсь, так понятнее, о чем речь?

Это своеобразный лайфхак, и теоретики об этом не подозревают, тыкая мануалами (а в них про это и нетути).


Еще один (and909) плохо просвещенный, вероятно, и не теоретик и не практик.

А Вольд один Дартаньян;)

Ща Рыжего позовём, раз его слово весомее.

Вольд
30.04.2014, 15:58
Блин, не поленился, нарисовал диаграмму.

Специально для Вольда отметил длительность импульса, которую можно измерить.

12809

Надеюсь, так понятнее, о чем речь?

Это своеобразный лайфхак, и теоретики об этом не подозревают, тыкая мануалами (а в них про это и нетути). Вот

А Вольд один Дартаньян;)

Ща Рыжего позовём, раз его слово весомее.
Какой бред приходится читать. И такой "спец" тусуется на техническом форуме. AVF, кажется, уже понял как он был глубоко не прав и успокоился, а до тебя все еще не дошло.

and909
30.04.2014, 16:09
Ну опровергните моё утверждение, пожалуйста.
На этом и строится вся наука.

Пока вижу только эмоции, а доводов о несостоятельности идеи ноль.

Вольд
30.04.2014, 16:14
Ну опровергните моё утверждение, пожалуйста.
На этом и строится вся наука.

Пока вижу только эмоции, а доводов о несостоятельности идеи ноль.
Да ты прочитай как устроен расходомер с импульсным выходом и все сам поймешь. А меня уволь, вразумлять таких непонятливых как ты надо только за деньги.

AVF
30.04.2014, 16:44
клоун не угомонится никак ... хоть повеcелил чутка перед праздником ... правда, низкосортно, как-то ...

AVF
30.04.2014, 16:46
Ну опровергните моё утверждение, пожалуйста.

--- отсутствие существенных доводов - лучший факт подтверждения правоты. Чудак прибор-то видел только на картинках в букваре ... и что такое "геркон" - для него вообще абракадабра :)))

Асутупист
30.04.2014, 17:01
Не понял, какую шкуру делим, но строил такой расходомер на ПР110 и СМИ1.
Даже не расходомер, а регулятор расхода, поскольку уставку задаем со СМИ1, а кран с электропириводом в течение некоторго времени приводит расход к заданию с некоторой точностью.
Для счетчиков разных производителей приходится по-разному настраивать фильтры, ибо дребезг присутствует.
При цене импульса в 10 литров (отдел закупок не то купил) и времени ожидания аварии до 10 минут, - минимальный достижимый расход около 100 литров в час, если уменьшать длину импульса включения ИМ, то можно точнее. Максимальный - 1 л/с=3,6 куба в час, что для наших условий не достижимо :-)
Т.к. тема про ПЛК, то интересующихся прошу в личку.

AVF
30.04.2014, 17:05
Не шкуру делим, а разъясняем реалии аппаратного обоеспечения оставшемуся невминдосу.
Автор темы уже разобрался с вопросом ;)

and909
30.04.2014, 17:23
Да ты прочитай как устроен расходомер с импульсным выходом
Сильный посыл.

Если что, я эти расходомеры по винтикам разбирал и цену импульса менял, как мне нужно, а не какую производитель поставил.


Чудак прибор-то видел только на картинках в букваре ... и что такое "геркон" - для него вообще абракадабра
+++

Теоретик.

alexx751
30.04.2014, 18:08
Сомневаюсь что геометрия магнита, от которого зависит ширина импульса, как-то нормируется

and909
30.04.2014, 18:28
От геометрии магнита ширина импульса напрямую не зависит.

Ширина зависит от напряженности и конфигурации магнитного поля, создаваемого магнитом.

С точки зрения выдачи импульсов по барабану их длительность в конкретной модели, лишь бы были фронты. :)

Нормироваться должна минимальная ширина импульса, чтобы электроника успела зафиксировать.

Я думаю, что идеальная скважность импульсов = 0,5, практически синусоида.

and909
30.04.2014, 19:05
Ну вот не лень мне было набросать графическую иллюстрацию срабатывания геркона для интересующихся.

12810

Мы, хоть и практики с вечно грязными руками, но кое-что и в теории могём!

Сорри за графику, набросал в том, что было под рукой.

А, да, забыл уточнить для въедливых: передний фронт импульса называется просто "фронт", а задний фронт по научному - "спад".

alexx751
30.04.2014, 19:09
Какая синусоида? Даже в пределах одной партии геометрия, напряженность и т.д. будет разная, и использовать длительность импульса для учета нельзя.
Для регулятора расхода - другое дело, но и там придется коэффициенты подбирать.
P.S. Вы зачем эти рисунки рисуете:)

and909
30.04.2014, 19:31
Даже в пределах одной партии геометрия, напряженность и т.д. будет разная, и использовать длительность импульса для учета нельзя.
Все особенности конкретной модели можно замерить за несколько оборотов колеса.

Если вспомнить старттопик, то автор жаловался, что на коротком начальном промежутке времени показания неточны.
Было выражено мнение, что для уточнения расчетов на начальном этапе можно использовать более быстротекущие процессы, а в дальнейшем, при накоплении данных, использовать стандартную схему. В общем, полёт мысли.:rolleyes:
На то и форум.


Вы зачем эти рисунки рисуете
"Книга без картинок ... не интересна" Льюис Кэролл.:cool:

alexx751
30.04.2014, 20:07
Было выражено мнение, что для уточнения расчетов на начальном этапе можно использовать более быстротекущие процессы, а в дальнейшем, при накоплении данных, использовать стандартную схему.

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

Вольд
30.04.2014, 20:09
Ну вот не лень мне было набросать графическую иллюстрацию срабатывания геркона для интересующихся.

12810

Мы, хоть и практики с вечно грязными руками, но кое-что и в теории могём!


Сорри за графику, набросал в том, что было под рукой.

А, да, забыл уточнить для въедливых: передний фронт импульса называется просто "фронт", а задний фронт по научному - "спад".

Дружище-практик, а ты не подумал о том, какова будет относительная погрешность при измерении длительности импульса а следовательно и расчетного значения расхода ? Если мерить период следования импульсов (период много больше длительности импульса), то эта погрешность будет много меньше. Также подумай о том, что расход может резко меняться во времени, что в случае измерения длительности импульса будет вносить дополнительную погрешность в результат расчета расхода.

and909
30.04.2014, 20:41
Ладно, Вольд, мирдружбажевачка.
Я же говорил, полёт мысли. Теория. Есть свои сложности и они могут перевесить достоинства, не отрицаю.
У меня вот сейчас на работе расходомеры сплошь электронные, собираю данные с них в реальном времени по сетке и наблюдаю на мониторе.


Лайфхаки в системах учета - зло. Дороже выйдет
Не отрицаю и сам всячески избегаю.
Мы здесь обсуждали теоретическую возможность.

Всех с наступающими! Уношусь на пенных волнах.

Василий Кашуба
30.04.2014, 21:14
Ну вот не лень мне было набросать графическую иллюстрацию срабатывания геркона для интересующихся.

12810

Мы, хоть и практики с вечно грязными руками, но кое-что и в теории могём!

Сорри за графику, набросал в том, что было под рукой.

А, да, забыл уточнить для въедливых: передний фронт импульса называется просто "фронт", а задний фронт по научному - "спад".
У меня есть вопрос, как часто вы будете измерять длительность импульса от геркона? Если с той же частотой, что и длительность между импульсами, то я не вижу смысла, в измерении длительности импульса от геркона.

Вольд
01.05.2014, 11:27
У меня есть вопрос, как часто вы будете измерять длительность импульса от геркона? Если с той же частотой, что и длительность между импульсами, то я не вижу смысла, в измерении длительности импульса от геркона.
А быстрее и не получится. Период следования импульсов и длительность импульса можно мерить один раз за каждый оборот диска. Таким образом, период расчета расхода в обоих случаях будет совершенно одинаковый. Хотелось бы еще увидеть расчетную формулу для вычисления расхода для случая измерения длительности импульса. Итак, имеем: N[литров/импульс] - цена одного импульса, tи[мс] - длительность импульса. Требуется посчитать текущее значение расхода в [м куб./час]. AVF и and909 ваш выход.

AVF
01.05.2014, 21:57
Продолжаем клоунаду ... да мне пофиг на то, что какой-то невминдос не может сознаться в собственной несостоятельности, как инженер ;) - то есть он ещё и не мужского полу оказалсо ...
В рамках поставленной задачи есть решения! Если кто-то их не видит - то это проблемы его ... технического зрения.
Восстанавливать кому-то знания недополученные в деЦЦком возрасте - в южном направлении!

Сентенция проста - мгновенный расход можно измерить до получения следующего импульса от счётчика!
Кто не может - пусть дует за парту и пишет кАнспекты! Мы в это время будем зарабатывать денюШку ;)))

and909
01.05.2014, 22:19
- то есть он ещё и не мужского полу оказалсо ...
Я и раньше замечал женские паттерны в сообщениях нашего оппонента, да решил мало-ли, показалось, а, оказывается, не я один заметил.
А по теме и так всё разжевали, а состоятельность нашей идеи так и не опровергли.

А здесь и вообще подтвердили, что точности измерения по основным импульсам может быть недостаточна:)

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

AVF
01.05.2014, 22:39
Вообще удивительно, что у кого-то вообще сомнения возникают ... Данный фокус да-а-а-вненько используется ... И это же не мы такие ушло-умные ... это другие в школе нос ковыряли пальцем, на лекциях по ТАРу ...
Куда котитЦо асутупизм ?

Вольд
02.05.2014, 10:00
Я и раньше замечал женские паттерны в сообщениях нашего оппонента, да решил мало-ли, показалось, а, оказывается, не я один заметил.
А по теме и так всё разжевали, а состоятельность нашей идеи так и не опровергли.

А здесь и вообще подтвердили, что точности измерения по основным импульсам может быть недостаточна:)
Жду расчетную формулу. Мужик, напрягись и выдай. Для случая, когда делается замер периода следования импульсов расчетная формула ранее была приведена. К AVF вопросов больше нет, похоже, он кроме как материться и слюной брызгать ничего не умеет. Одним словом - болтун.

AVF
03.05.2014, 12:47
А сделать несколько замеров и вычислить матожидание - кто-то запрещает?
В любом случае, если нужна высокая точность, надо ставить расходомер с большим количеством импульсов на оборот турбинного колеса.
Речь не о том как возрастает погрешность, а о том, как можно производить измерение расхода, используя счётчик с герконовым импульсным выходом.

Вольд
03.05.2014, 14:57
А сделать несколько замеров и вычислить матожидание - кто-то запрещает?
В любом случае, если нужна высокая точность, надо ставить расходомер с большим количеством импульсов на оборот турбинного колеса.
Речь не о том как возрастает погрешность, а о том, как можно производить измерение расхода, используя счётчик с герконовым импульсным выходом.
Совсем мужик запутался и изоврался. То предлагал быстрый способ вычисления расхода (см. пост #18), а теперь пишет совсем другое. А сколько визга было в твоих многочисленных и пустых постах. Самый простой и надежный способ вычисления расхода для прибора с герконовым датчиком – это мерить период следования импульсов. За один оборот турбины все само собой усреднится, расчетная формула получается простая и понятная. Точность результата будет вполне приемлемая.

AVF
03.05.2014, 19:08
А кто гарантирует постоянный расход на протяжении полного импульса при этих замерах ?
--- исходить из реального процесса, требуемой точности и частоты опроса


или 2 датчика давления - из бернулль выковыривать расход.
--- бюджет сильно завысится.Смысл платить десятки тысяч рублей, когда можно вполне обойтись одной?
Вон, пустоголовая тявкалка ссыль кидала на коболдовский, который стоит, как чугунный мост через Волгу и ... к тому же ... не позволяет прокрутить фокус с возможностью два раза измерить расход в промежутке между соседними импульсами!

ASo
03.05.2014, 20:20
Какже упал технический уровень!
Ну неужели никто некогда не пользовался электронно-счетным частотометром? И не понимал, когда его надо было использовать, как частотометр, а когда - как периодометр. Даже во времена жесткой логики, когда его показания пересчитывались на калькуляторе.

Вольд
04.05.2014, 12:54
Куда котитЦо асутупизм ?
Точно. Автор темы задал вопрос из разряда "сколько будет 2 x 2" и толпа спецов уже который день жует это. Срамота.

Сергей Мих
05.05.2014, 23:06
Уважаемым Спецам форума дам пример, поднятый ещё в 9-м году. Правда пример сей по частотомеру, но для себя, я перелопатил его для измерения расхода вода с водосчётчиков http://www.owen.ru/forum/showthread.php?t=6044&highlight=%F7%E0%F1%F2%EE%F2%EE%EC%E5%F0[/URL]
Используется ФБ "FREQ_MEASURE" из стандартной библ. Util.

Scream
06.05.2014, 19:08
Точно. Автор темы задал вопрос из разряда "сколько будет 2 x 2" и толпа спецов уже который день жует это. Срамота.
Вы лично можете не отвечать в этой теме если для вас это слишком просто, лично вас ниочем не просил.
Я уже сомневаюсь что вы знаете ответ на "сколько будет 2 x 2".
Обратился посмотреть на подобные решения и меня интересовало не просто ответ "4", а кто как считал.
2 умножал на 2?
2 складывал с 2мя?
Или считал на счетных палочках?
Плевать мне как там крутятся шестеренки.
Интересовал подход к решению этой задачи КОДОМ, и глупым оказался здесь вовсе не я....
Считаю нужно прекратить этот бессмысленный выпендреж и закрыть тему.
Всем спасибо.

nensist
23.09.2017, 05:55
Чем все таки закончилась история с вычислением мгновенного расхода? Мне вот тоже надо брать импульс с расходомеров "Питерфлоу" и вывести на панель мгновенный расход в м3/ч. И чтоб этот расход был идентичен расходу который отображается на дисплее самого расходомера.
Как все таки вычислять? Время между импульсов? Длину импульсов все таки надо как то учитывать?

Сергей Мих
23.09.2017, 09:53
А у "Питерфлоу" нет возможности с последовательного порта считать значение расхода? Я просто не помню. Документация на него на работе. А так: подсчёт кол-ва импульсов за период времени, или измерение времени между импульсами, мат. обработкой дают примерно одинаковое значение расхода.
Но для комерческого учёта эти значения использовать нельзя- только для ознакомительного .

Eugene.A
23.09.2017, 09:59
А токового выхода, как у ПРЭМ, у них нет?

nensist
24.09.2017, 05:40
У "Питерфлоу" на борту есть импульсные выходы и есть еще интерфейс LIN.
Чтобы считать значения с применением какого либо интерфейса требуется Расходомер сначала подключить к "АДИ" Подключение к "АДИ" идет посредством интерфейса LIN. Далее уже с "АДИ" можно взять или modbus или сигнал 4..20.
Стоимость "АДИ" порядка 6000 руб. Смысла нет его применять лучше уж программу обработки импульсов сделать, да и места в шкафу под него нет.
Задача стоит чтоб ПЛК управлял частотником насоса на поддержание заданного расхода в контуре.
Как организована обработка импульсов в тепловычислителях типа СПТ, ТВ7. Может в курсе кто? Там при подключении расходомеров "Питерфлоу" значения мгновенного расхода что на тепловычислителе, что на самом расходомере всегда одинаковые.
В "Термотронике" мне так на этот вопрос и не ответили, видимо не очень хотят выдавать эту информацию
И еще вопрос:
Как определять что расход равен 0? Если Qmin расходомера 0,192 м3/ч а вес импульса равен 1,25 л/имп. По моим подсчетам один импульс на минимально поддерживаемом расходе проходит с периодичностью 20-25 секунд. Тоесть чтоб определить что расход равен 0 надо делать какой-то таймер на период 25 секунд, и если за это время не придет импульса устанавливать значение расхода в 0. Долго как-то ждать придется при определении нулевого расхода. На тепловычислителях эта информация гораздо быстрее обновляется.
Может я чего то не так делаю, поправьте пожалуйста.

Eugene.A
24.09.2017, 07:19
Я знаю одно - в электромагнитном расходомере первичным является аналоговый сигнал мгновенного расхода. Уже потом его преобразуют в импульсный, частотный, модбасы, лины и кто во что горазд. Преобразовывать его обратно нудно и хлопотно, да и небыстро при малых расходах. Не проще ли взять расходомер с 4-20 на борту?
А вам действительно нужно точно поддерживать именно расход? Может, устроит поддержание заданного перепада давления? Если гидравлическое сопротивление неизменно, перепад давления пропорционален расходу.

nensist
24.09.2017, 07:31
Я знаю одно - в электромагнитном расходомере первичным является аналоговый сигнал мгновенного расхода. Уже потом его преобразуют в импульсный, частотный, модбасы, лины и кто во что горазд. Преобразовывать его обратно нудно и хлопотно, да и небыстро при малых расходах. Не проще ли взять расходомер с 4-20 на борту?
А вам действительно нужно точно поддерживать именно расход? Может, устроит поддержание заданного перепада давления? Если гидравлическое сопротивление неизменно, перепад давления пропорционален расходу.

Именно нужно поддерживать расход в контуре. Перепада давления не хватит.
По расходу помимо управления частотником, ПЛК должен будет расчитывать мгновенную тепловую мощность.
Расходомеры с токовым выходом на борту без применения промежуточных приборов очень дороги.
Мы давно применяем "Питерфлоу" в разных процессах, и в принципе довольны расходомером за эти деньги.
Но вот ставить "АДИ" между расходомером и ПЛК очень не хочется, хочется все таки обойтись програмным решением по обработке импульсов.
Кстати я предлагал Термотронику написать ФБ в Codesys для их расходомеров - они отказались:)

Eugene.A
24.09.2017, 08:04
У имульсного выхода пропорциональна расходу частота. Частоту можно измерять двумя способам - подсчитывать импульсы за заданный интервал времени и вычислять величину, обратную периоду. Очевидно, что при низкой частоте первый способ неприменим, поскольку в заданом интервале может не оказаться ни одного импульса, а изредка - один, либо интервал придется выбирать слишком большим.
Остается измерять период и вычислять обратную величину. Но с периодом 20-25 секунд это тоже слишком долго. Что все это время будет делать частотник? Такая задержка сигнала обратной связи приведет к неустойчивости регулятора, большим колебаниям оборотов насоса. Надо сильно тупить ПИД, сильно увеличивать интегральную составляющую. Все это время частотник будет пытаться добиться отклика системы, прибавляя обороты. И когда он придет, окажется, что уже перебор, надо убавлять.
А ноль таким способом не отловить никогда. Ну то есть надо ждать вечно - а вдруг все-таки не ноль?
Это ваше двойное преобразование из аналога в цифру и обратно сходно попытке фотошопом восстановить изображение с камеры с низким разрешением и сильным шумом. Без фантазии и художественного таланта не обойтись.

nensist
24.09.2017, 08:16
У имульсного выхода пропорциональна расходу частота. Частоту можно измерять двумя способам - подсчитывать импульсы за заданный интервал времени и вычислять величину, обратную периоду. Очевидно, что при низкой частоте первый способ неприменим, поскольку в заданом интервале может не оказаться ни одного импульса, а изредка - один, либо интервал придется выбирать слишком большим.
Остается измерять период и вычислять обратную величину. Но с периодом 20-25 секунд это тоже слишком долго. Что все это время будет делать частотник? Такая задержка сигнала обратной связи приведет к неустойчивости регулятора, большим колебаниям оборотов насоса. Надо сильно тупить ПИД, сильно увеличивать интегральную составляющую. Все это время частотник будет пытаться добиться отклика системы, прибавляя обороты. И когда он придет, окажется, что уже перебор, надо убавлять.
А ноль таким способом не отловить никогда. Ну то есть надо ждать вечно - а вдруг все-таки не ноль?
Это ваше двойное преобразование из аналога в цифру и обратно сходно попытке фотошопом восстановить изображение с камеры с низким разрешением и сильным шумом. Без фантазии и художественного таланта не обойтись.

Интересно как все таки в тепловычислителях все это реализовано, и ноль они ловят довольно быстро

Eugene.A
24.09.2017, 08:27
Да просто ниже нижнего считают за ноль. А вообще, как я припоминаю, ждать смены показаний иногда приходилось долго.
Кстати, что - то я большой разницы в цене расходомеров не увидел. Может быть, вы просто сравнивали в разных исполнениях с разным классом?
Насчет измерения расхода по перепаду давления вы зря пренебрегаете - до недавних пор именно так и работали все расходомеры в промышленности. Измерялось дифференциальное давление на сужающем устройстве и пересчитывалось в расход.
И еще - а зачем вы собираетесь вычислять мощность? И где именно?

nensist
24.09.2017, 08:43
Да просто ниже нижнего считают за ноль. А вообще, как я припоминаю, ждать смены показаний иногда приходилось долго.
Кстати, что - то я большой разницы в цене расходомеров не увидел. Может быть, вы просто сравнивали в разных исполнениях с разным классом?
Насчет измерения расхода по перепаду давления вы зря пренебрегаете - до недавних пор именно так и работали все расходомеры в промышленности. Измерялось дифференциальное давление на сужающем устройстве и пересчитывалось в расход.
И еще - а зачем вы собираетесь вычислять мощность? И где именно?

Это теплорегулирующий модуль для систем отопления, аналог автоматизированного ИТП.
Мощность (нагрузку информационного характера ) в гкалл
Почему именно расход - чтоб можно было понимать какой именно расход идет по системе теплоснабжения и соответственно им управлять.
У "Термотроника" нет расходомеров с аналоговым выходом на борту, только через "АДИ"
По моему были расходомеры у Теплокома ПРЭМ с аналоговым выходом, но цену нам за ду 50 мм выставили в районе 38 000 руб.
Да и "Питерфлоу" привлекает что у него голова информативная.
Кстати сейчас посмотрел на рабочий СПТ-943, прижал балансировочником трубопровод и изменение расхода СПТ показал с задержкой примерно 15 секунд.
Печаль

Eugene.A
24.09.2017, 09:09
Есть ПРЭМ ду50 класса D исполнения сэндвич за 19,5 тыс. Токовый выход, насколько помнится, надо оговаривать при заказе. Есть исполнение с индикацией. Но и цена, очевидно, будет другая.
А в чем смысл управления расходом в системе отопления? Лично мне известен только один - поддержание расчетной величины перепада температуры подача/обратка. Другие способы регулирования приведут либо к избыточной циркуляции, либо к остыванию отдаленных участков теплосети.
Регулирование по расходу я применял вынужденно только один раз - для балансировки расходов между двумя котлами разной мощности. Случай оказался сложный, большой котел задавливал маленький, и балансировочными кранами никак не удавалось выправить ситуацию. Надо было или отказываться от автоматического каскадного управления котлами, или как-то балансировать котлы. Заказчик наотрез отказывался вручную включать-выключать котлы, вот и пришлось пуститься во все тяжкие.
Однако впоследствии он каскад так и не применял, как мы заметили.
П.С.
Попался сайт с калькулятором цены для ПРЭМ
https://kommuchet.ru/rashodomer-elektromagnitnyj-prem-du-50-gs-klass-d
У меня получилось Расходомер электромагнитный ПРЭМ Ду 50 ГС класс D с токовым выходом и индикацией Без НДС: 24023 руб.

nensist
24.09.2017, 09:25
Есть ПРЭМ ду50 класса D исполнения сэндвич за 19,5 тыс. Токовый выход, насколько помнится, надо оговаривать при заказе. Есть исполнение с индикацией. Но и цена, очевидно, будет другая.
А в чем смысл управления расходом в системе отопления? Лично мне известен только один - поддержание расчетной величины перепада температуры подача/обратка. Другие способы регулирования приведут либо к избыточной циркуляции, либо к остыванию отдаленных участков теплосети.
Регулирование по расходу я применял вынужденно только один раз - для балансировки расходов между двумя котлами разной мощности. Случай оказался сложный, большой котел задавливал маленький, и балансировочными кранами никак не удавалось выправить ситуацию. Надо было или отказываться от автоматического каскадного управления котлами, или как-то балансировать котлы. Заказчик наотрез отказывался вручную включать-выключать котлы, вот и пришлось пуститься во все тяжкие.
Однако впоследствии он каскад так и не применял, как мы заметили.
П.С.
Попался сайт с калькулятором цены для ПРЭМ
https://kommuchet.ru/rashodomer-elektromagnitnyj-prem-du-50-gs-klass-d
У меня получилось Расходомер электромагнитный ПРЭМ Ду 50 ГС класс D с токовым выходом и индикацией Без НДС: 24023 руб.
Мы запрашивали у представителя в регионе, попробуем запросить на прямую
Да и сроки поговаривают у Теплокома большие стали, вроде дела у них не очень идут. (Последний раз ПРЭМЫ ставили в 2014 году на узел УТЭ, дак замучились бороться с небалансом)
Данные модули покрывают определенный диапазон тепловых нагрузок, и соответственно по разным объектам требуется разный расход теплоносителя, который и задается с панели в плк. Иногда данный расход требуется приподнять в виду загрязненности системы отопления МКЖД, чтоб концевые стояки протягивали. (много раз сталкивались с этой проблемой)
Также когда происходит подмешивание горячего теплоносителя расход начинает немного гулять, вот насос и должен это компенсировать опираясь на данные расходомера.

Eugene.A
24.09.2017, 09:36
Так вот я и думаю, что регулирование расхода по отпускаемой мощности как раз и приведут к застойным явлениям на отдельных участках теплосети. Надо все-таки контролировать температуру обратки. А так получится - отдал мощность, а там трава не расти. А греется только половина сети.
Мы последнее время настраиваем сетевые насосы просто на поддержание заданного перепада давления на насосах, и никаких проблем не возникало. Если не считать проблем у потребителя, например, полное отсутствие циркуляции вследствие забития грязевика. Но это припарками не лечится.

nensist
24.09.2017, 09:49
Модули которые мы делаем, сейчас стоят на 8 объектах в нашем регионе.
Из 8 объектов на 4 были проблемы с недостаточным расходом.
Из одного примера:
Тоесть когда дом работал на прямую от теплосети (подмес элеватора был заглушен) расход по дому был 8 м3/час (данные с тепловычислителя)
Представитили УК сказали что есть проблемы с плохим прогревом концевых стояков. (в виду убитости системы отопления)
После установки модуля решили приподнять расход внутри системы отопления до 9 м3/ч, проблема была решена, жалобы прекратились, все прогревается.
В зимний и осенне-весенний период все отработало на отлично

Вернусь к расходомеру.
Тоесть я понимаю что обработка импульсов и "ловля 0" полные танцы с бубнами и не стоит заморачиваться а использовать готовое решение от производителей расходомеров?

Eugene.A
24.09.2017, 10:22
Вернусь к расходомеру.
Тоесть я понимаю что обработка импульсов и "ловля 0" полные танцы с бубнами и не стоит заморачиваться а использовать готовое решение от производителей расходомеров?
Я бы поступил именно так, если бы возникла нужда. Но в теплосети не стал бы делать. Есть проблемные сети, где расходомеры приходится чистить не раз за сезон. Полбеды, когда просто подвирает тепловычислитель, но если вследствие этого еще и насосы начнут давить со всей дури, это совсем не дело. А нередко попадаются еще и объекты с переразмеренными насосами (устанавливали на перспективу, а ее так и не случилось), и там это просто чревато разрывами на старых сетях. Надо дополнительно использовать защиту от превышения давления, а ведь она тупо остановит насосы. Как назло, в самые холода.
И, кстати, в теплосети, как я понимаю, никогда не должно возникать ситуации ловли нулевого расхода, да и существенного его снижения. Тогда зачем заморачиваться? А для более точного измерения при малых расходах просто ставят расходомер с меньшим Ду для ускорения потока, лишь бы по верхнему пределу проходил.

nensist
24.09.2017, 10:52
С теплосетью согласен полностью.
В нашем случае это внутренняя система дома. Даже если насос выйдет на полную скорость он не создаст разрушающего давления, в виду своих гидравлических характеристик. На сетях совершенно другие мощности насосов.
Был случай у нас в регионе, на котельной при обрыве датчика давления, насосы выходили на полные обороты. Проект котельной австрийский. Один раз это случилось. Порвало все что можно, особенно на старых участках ТС.

Ettis
30.06.2020, 15:34
Вы лично можете не отвечать в этой теме если для вас это слишком просто, лично вас ниочем не просил.
Я уже сомневаюсь что вы знаете ответ на "сколько будет 2 x 2".
Обратился посмотреть на подобные решения и меня интересовало не просто ответ "4", а кто как считал.
Делали расчет для питерфлоу рс (http://www.teplocom.msk.ru/catalog/rashodomer/rashodomery-piterflou/).
2 умножал на 2?
2 складывал с 2мя?
Или считал на счетных палочках?
Плевать мне как там крутятся шестеренки.
Интересовал подход к решению этой задачи с расходомерром питерфлоу рс, и глупым оказался здесь вовсе не я....
Считаю нужно прекратить этот бессмысленный выпендреж и закрыть тему.
Всем спасибо.


нашли решение?