Страница 4 из 5 ПерваяПервая ... 2345 ПоследняяПоследняя
Показано с 31 по 40 из 48

Тема: CODESYS 2.3 Помогите очень нужно СЧЕТЧИК ВОДЫ

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Пользователь
    Регистрация
    22.03.2011
    Адрес
    Ивановская обл, Родники
    Сообщений
    145

    По умолчанию

    FREQ_MEASURE
    Данный функциональный блок измеряет (усредненную) частоту (в Герцах) входного сигнала типа BOOL. Вы можете задать количество периодов для усреднения. Под периодом понимается время между двумя передними фронтами сигнала.
    А Уж частоту перасчитываем в объём от веса импульса.

  2. #2

    По умолчанию

    Так как же всетаки все это можн оприменить в CFC?

  3. #3
    Пользователь
    Регистрация
    23.09.2008
    Адрес
    Центророссийск
    Сообщений
    3,050

    По умолчанию

    Цитата Сообщение от Сергей Мих Посмотреть сообщение
    ...
    Ну вот, здравые голоса. С ключевыми словами
    время между... фронтами сигнала
    Цитата Сообщение от vovtrof Посмотреть сообщение
    Так как же всетаки все это можн оприменить в CFC?
    Так же как и в ST. Вызвать с передачей параметров.

  4. #4

    По умолчанию

    Цитата Сообщение от Сергей Мих Посмотреть сообщение
    FREQ_MEASURE
    Данный функциональный блок измеряет (усредненную) частоту (в Герцах) входного сигнала типа BOOL
    Вы его код видели?
    Как думаете для чего у FREQ_MEASURE выход VALID?

    И знаете, что если между двумя импульсами будет "очень большая задержка", то блок просто перейдёт в VALID=FALSE состояние и значение OUT вообще меняться перестанет.
    А после этого блок опять станет копить "нужное количество импульсов" для усреднения.

    Посмотрел проект -- там вообще PERIODS==1.
    Т.е. использовать блок FREQ_MEASURE для того, чтобы вычислить 1/интервал_между_двумя_импульсами это сильно.

    В проекте "Объём прогозируемый за час" это "текущая скорость * 3600с".
    Понимаете чем это отличается от "средний расход за последний час"?

    Цитата Сообщение от Валенок Посмотреть сообщение
    Просто - есть.
    И какой же ваш простой способ?
    Я смотрел на код freq_measure, и понял, что он может иметь смысл только для каких-то специфических требований. А если "просто посчитать частоту", он непригоден.

    Цитата Сообщение от vovtrof Посмотреть сообщение
    Так как же всетаки все это можн оприменить в CFC?
    В чём вопрос?
    Создаёшь program и task для вычисления средних (см мой код или приложенный проект).
    Результат используешь как averages.last1m в том месте, где нужно. Хоть в cfc, хоть где.

  5. #5
    Пользователь
    Регистрация
    22.03.2011
    Адрес
    Ивановская обл, Родники
    Сообщений
    145

    По умолчанию

    Цитата Сообщение от vladimirisitnikov Посмотреть сообщение
    Вы его код видели?
    Как думаете для чего у FREQ_MEASURE выход VALID?

    И знаете, что если между двумя импульсами будет "очень большая задержка", то блок просто перейдёт в VALID=FALSE состояние и значение OUT вообще меняться перестанет.
    А после этого блок опять станет копить "нужное количество импульсов" для усреднения.

    Посмотрел проект -- там вообще PERIODS==1.
    Т.е. использовать блок FREQ_MEASURE для того, чтобы вычислить 1/интервал_между_двумя_импульсами это сильно.

    .
    Это стандартно.
    Если- Расхода нет? Вы идеалист . Но конечно, Freq_measure выходит на максимум-65535, которые я отсекаю в Скаде. А в качестве показометра текущего расхода его хватает. Узел учета- не комерческий. Для ответственных дел- ВКТ-шки, Питерфлоу...

  6. #6

    По умолчанию

    Цитата Сообщение от Сергей Мих Посмотреть сообщение
    Если- Расхода нет? Вы идеалист . Но конечно, Freq_measure выходит на максимум-65535
    Я программист. Если что-то плохое может случиться, то оно обязательно случается.

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

  7. #7
    Пользователь
    Регистрация
    23.09.2008
    Адрес
    Центророссийск
    Сообщений
    3,050

    По умолчанию

    Цитата Сообщение от vladimirisitnikov Посмотреть сообщение
    Т.е. использовать блок FREQ_MEASURE для того, чтобы вычислить 1/интервал_между_двумя_импульсами это сильно.
    Это не сильно. Это максимально точное получение мгновенного расхода в общем случае.
    А для некоторых частных - есть еще там PERIODS. А совсем узкие (высокочастотные) задачи - решаются другим железом (например модули с 10кГц) или аппаратно (см. быстрые di)

    Как думаете для чего у FREQ_MEASURE выход VALID?
    1. До второго импульса - расход не валид. Абсолютно правильно.
    2. Нет импульсов в течении 3периодов. Это да - не гибко. Ну так и свет клином на freq_measure не сошелся. Все мы тут - программисты. Или Вы думали что форум проктологов ?

    А если "просто посчитать частоту", он непригоден
    Боюсь сказать - Ваш способ не то чтобы не пригоден, вообще непонятно что касаемо мгн.расхода. В отличие от адекватных, в определенных пределах, показаний freq_measure.

    Почему не понятно ? Так определитесь с размерностью Вашего результата.
    Последний раз редактировалось Валенок; 11.01.2016 в 00:00.

  8. #8

    По умолчанию ??

    Господа споры спорами а до дела так и не дошло ни у кого. Дайте же уже кто нибудь кусок кода cfc для счетчикаи не замудреного для чайника!! либо чтоза библиотека где этот блок лежит

  9. #9

    По умолчанию

    Цитата Сообщение от vovtrof Посмотреть сообщение
    Дайте же уже кто нибудь кусок кода cfc для счетчикаи не замудреного для чайника!!
    Зачем CFC-то? Есть пример ST кода. Чем он не подходит?

    Уточню: никто не запрещает на ST иметь одну-единственную программу именно для "вычисления средних", а всё остальное делать на CFC.
    В чём необходимость усреднять именно на CFC?

  10. #10

    По умолчанию

    Цитата Сообщение от Валенок Посмотреть сообщение
    Это не сильно. Это максимально точное получение мгновенного расхода в общем случае.
    Можно ссылку на источник информации о "максимальной точности"?

    Я приводил пример, когда:
    Цитата Сообщение от IIeroniux Посмотреть сообщение
    что при обнулении количества импульсов (а происходит это раз в 30 секунд) частота плавает в диапазоне +/- 30% первые 3 секунды, пока не наберется достаточно количество импульсов для точного подсчета.
    И где хвалёная "точность" по всего двум импульсам? Там человеку 3 секунд не хватает. А тут предлагается "по двум точкам оценивать скорость".

    Цитата Сообщение от Валенок Посмотреть сообщение
    Боюсь сказать - Ваш способ не то чтобы не пригоден
    А чего же этот способ везде используют?
    https://en.wikipedia.org/wiki/Exponential_smoothing

    Exponential smoothing is a rule of thumb technique for smoothing time series data, particularly for recursively applying as many as three low-pass filters with exponential window functions. Such techniques have broad application that is not intended to be strictly accurate or reliable for every situation. It is an easily learned and easily applied procedure for approximately calculating or recalling some value, or for making some determination based on prior assumptions by the user, such as seasonality...
    Переводить слова "rule of thumb" нужно?
    А теперь давайте поищем в wikipedia что-нибудь на тему freq_measure?

    Цитата Сообщение от Валенок Посмотреть сообщение
    Почему не понятно ? Так определитесь с размерностью Вашего результата.
    Размерность результата -- "импульсы/сек".
    У всех трёх переменных last1m, last1h, last1d одинаковая размерность.
    Чего тут неопределённого-то?

    Если расход стабилен, то все три переменные будут одинаковые.
    Если прорвало трубу, то показатель "last1m" быстро поползёт вверх, а last1d будет какое-то время на старом значении.

Страница 4 из 5 ПерваяПервая ... 2345 ПоследняяПоследняя

Похожие темы

  1. Ответов: 9
    Последнее сообщение: 07.07.2015, 19:37
  2. Ответов: 23
    Последнее сообщение: 21.02.2015, 04:32
  3. Счетчик воды РСЦ
    от mib_z в разделе Master SCADA 3
    Ответов: 1
    Последнее сообщение: 14.03.2013, 07:55
  4. Датчики бесконтактные. Очень помогите!!!
    от Антон ТТС в разделе Трёп (Курилка)
    Ответов: 1
    Последнее сообщение: 05.09.2007, 14:59

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •