Современные технологии автоматизации» («СТА») —  журнал для квалифицированных специалистов по промышленной автоматизации Форум СТА — современные технологии автоматизации Домашняя страница
Домашняя страница форума CTA Домашняя страница форума CTA > II. АСУТП и SCADA > Архив
  Активные темы Активные темы
  FAQ FAQ  Искать в форуме   Зарегистрироваться Зарегистрироваться  Вход в систему Вход в систему

расчет расхода в Genesis

 Ответить Ответить
Автор
Сообщение
Smarty Смотреть выпадающим
Новичок
Новичок


Присоединился: 19 Январь 2005
Online Status: Offline
Публикации: 18
Свойства публикации Свойства публикации   Ответить, цитируя автора - Smarty Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Тема сообщения: расчет расхода в Genesis
    Опубликовано: 14 Март 2005 20:10

Проблема в следующем!

Имеется датчик расхода который выдает весовые импульсы (к примеру 1 имп = 1 кубометр воды). Так вот с OPC - сервера ко мне приходит состояние счетчика, который считает эти самые импульсы. Как заставить Genesis подсчитать количество этих импульсов пришедших за единицу времени (расход в единицу времени)?

Наверх
Максим Ананских Смотреть выпадающим
Действительный член
Действительный член
Аватар

Присоединился: 14 Май 2003
Online Status: Offline
Публикации: 770
Свойства публикации Свойства публикации   Ответить, цитируя автора - Максим Ананских Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 14 Март 2005 20:32

Первоначально опубликовано Smarty

Как заставить Genesis подсчитать количество этих импульсов пришедших за единицу времени (расход в единицу времени)?

Если я правильно понимаю, со счетчика Вы получаете накопленное итоговое значение расхода. Тогда ответ очевиден: через некоторые интервалы времени вычитать из текущего значения счетчика предыдущее значение и затем делить на интервал времени.

Инженер-системотехник
+7 (916) 477 3925
Наверх
Smarty Смотреть выпадающим
Новичок
Новичок


Присоединился: 19 Январь 2005
Online Status: Offline
Публикации: 18
Свойства публикации Свойства публикации   Ответить, цитируя автора - Smarty Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 14 Март 2005 23:12

[/QUOTE]

Тогда ответ очевиден: через некоторые интервалы времени вычитать из текущего значения счетчика предыдущее значение и затем делить на интервал времени.

[/QUOTE]

Для меня этот ответ тоже вполне очевиден...а вот как например в DataWorX-e сделать это? как запомнить предыдущее значение?

Наверх
Vall Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 19 Май 2004
Категория: Zimbabwe
Online Status: Offline
Публикации: 108
Свойства публикации Свойства публикации   Ответить, цитируя автора - Vall Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 15 Март 2005 12:07
Первоначально опубликовано Smarty

...а вот как например в DataWorX-e сделать это? как запомнить предыдущее значение?

...а если собирать один и тот же параметр с разными интервалами времени, напр. 0.5 и 1 с, затем логику с математикой использовать.

Наверх
Сергей Гусев Смотреть выпадающим
Действительный член
Действительный член


Присоединился: 16 Апрель 2003
Online Status: Offline
Публикации: 126
Свойства публикации Свойства публикации   Ответить, цитируя автора - Сергей Гусев Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 15 Март 2005 13:41

Это делается с помощью периодического скрипта ScriptWorX (не требует лицензирования).

1. Сначала создаете в DATAWORX два регистра - например, "Х", для хренения последнего значения вашего счетчика, и "Delta" - для искомой расчетной величины (разницы между предудущим и текущим значениями счетчика).

2. Создаете с помошью мастера ScriptWorX четыре стандартных скрипта и один собственный:

- чтение ОРС тега текущего значения счетчика;

- чтение значения регистра "Х";

- запись значения в регистр "Х";

- запись значения в регистр "Delta"

- основной скрипт, который считывет значение из регистра ОРС счетчика (вызовом первого скрипта), затем - читает последнее сохраненное значение регистра Х (вызовом второго) скрипта, вычислает их разность и записывает это значение в регист "Delta" (вызовом червертого скрипта), и, наконец, переписывает последнее значение в регистре "X" (вызовом третьего скрипта)

3. Создаете триттер (периодический), по которому запустаете основной (пятый) скрипт с нужным Вам периодом.

Все! В регистре Delta - всегда текущее значение расхода (в еденицу времени, соответствующую периоду триггера).

При некоторм навыке все это, конечно, можно написать и одним скриптом, но предложенный вариант ВООБЩЕ не требует умения программирования кроме единственной операции вычитания в скрипте №5...

Если у Вас нет лицензии Dataworx, то требуемые регистры можно создать и в бесплатном "Iconics OPC Simulator":)

Сергей Гусев
"Первая Миля", Authorized ICONICS Systems Integrator
Наверх
Smarty Смотреть выпадающим
Новичок
Новичок


Присоединился: 19 Январь 2005
Online Status: Offline
Публикации: 18
Свойства публикации Свойства публикации   Ответить, цитируя автора - Smarty Ответить, цитируя автора -  ОтветитьОтвет Прямая ссылка на эту публикацию Опубликовано: 15 Март 2005 14:16
Спасибо! Чесно говоря, я до конца надеялся что это можно сделать стандартными средствами, не лазая в скрипты :)
Наверх
 Ответить Ответить

Переход на форум Права доступа на форуме Смотреть выпадающим

Bulletin Board Software by Web Wiz Forums® version 9.64
Powered by Web Wiz Forums Free Express Edition
Copyright ©2001-2009 Web Wiz