![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
В расчетах SPC важно знать, какие отсчеты и измерения вы хотите включить в расчеты.
Для этой цели мы создадим два расчетных тега, один для счетчика, т.е. каждое изменение исходного значения увеличивает счетчик, а после достижения счетчиком заданного числа измерений счетчик будет сброшен, в нашем случае сброс будет происходить после 5 измерений. Другой счетчик будет считать количество отсчетов, которые будут увеличиваться через каждые 5 измерений.
Так как расчетные теги вычисляются на основе триггера, то также будут определены триггеры.
Триггер данных измерений
1. Щелкните правой кнопкой мыши на папке Calculation Triggers (Триггеры вычислений) в Hyper Historian и выберите Data Trigger.
2. Измените имя на Measurement и установите тип запуска на Any Data Point Change (Любое изменение точки данных).
3. Нажмите на кнопку с многоточием рядом с полем Data Point, чтобы открыть браузер тегов, как показано на рисунке.
4. Выберите тег Source.
Рисунок – Браузер тегов
Счетчик измерения
Создадим тег вычисления на основе триггера счетчика измерения
1. Щелкните правой кнопкой мыши на элементе дерева Data Collections и выберите Calculated Tag.
2. Введите название на MeasurementCounter.
3. Щелкните в пустом поле в столбце Name (Имя) в секции Triggers и введите букву " D ", что будет означать имя триггера. Имя триггера полезно, когда различные части выражения должны выполняться в зависимости от триггера, являющегося причиной перерасчета тега вычисления.
4. Нажмите на кнопку выбора триггеров для открытия браузера триггеров, как показано на рисунке.
Рисунок – Выбор триггера измерения
5. Выберите ранее созданный триггер измерения.
6. Выберите в поле In Group PerfCalc.
7. Щелкните на вкладке Expression (Выражения) и введите следующее выражение (после знака ┘ начинайте новую строку):
IF isgood(trgcur()) ┘
THEN ┘
IF isgood(tagprev({{calc:MeasurementCounter}}, now())) ┘
THEN (val(tagprev({{calc:MeasurementCounter}}, now()))+ 1) % 5 ┘
ELSE 1 ┘
ELSE nologval() ┘
Первый оператор IF проверяет, является ли полученное обновление хорошего качества, если никакого значения не будет зарегистрировано. Второй оператор (используется только при хорошем качестве) проверяет, имело ли ранее зарегистрированное значение хорошее качество, и если да, то увеличит значение на 1 и с помощью модуля функции (%) счетчик будет сбрасываться через каждые 5 значений, если нет предыдущего значения, то счетчик начнет со значения 1.
Trgcur () возвращает объект данных с именем, значением и качеством по триггеру.
Isgood () возвращает True или False в зависимости от качества указанного объекта данных.
Tagprev () берет два параметра, первый это имя тега, а второй – значение времени, функция находит предыдущее значение до указанного времени.
Nologval () является специальной инструкцией для Hyper Historian, чтобы убедиться, что он не регистрирует новое значение.
Триггеры данных
При размещении счетчика измерения на месте, может быть реализован триггер для счетчика отсчета. Триггер будет выполняться только тогда, когда получены новые измерения.
1. Щелкните правой кнопкой мыши на папке Calculation Triggers в Hyper Historian и выберите Data Trigger.
2. Измените имя на Sample и установите тип запуска на Any Data Point Change (Любое изменение точки данных).
3. Нажмите на кнопку с многоточием рядом с полем Data Point (Точка данных), чтобы открыть браузер тегов, как показано на рисунке.
4. Выберите тег MeasurementCounter из дерева.
Рисунок Выбор счетчика измерения
Дата публикования: 2015-01-04; Прочитано: 414 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!