Использование Historian
В классических SCADA-системах Historian является важнейшим компонентом, отвечающим за накопление, хранение и извлечение исторических данных. Эти исторические данные, которые могут включать в себя временные ряды значений от устройств, аварийные сигналы, события и другие системные журналы, необходимы для решения различных задач, включая:
Анализ тенденций: Визуализация тенденций исторических данных для выявления закономерностей и аномалий.
Составление отчетов: Создание отчетов на основе исторических данных для соблюдения нормативных требований, анализа производительности и других целей.
Устранение неполадок: Исследование прошлых событий для диагностики и устранения системных проблем.
Оптимизация: Анализ исторических данных для оптимизации процессов и повышения эффективности.
AggreGate предлагает полный набор функций, которые охватывают и расширяют основную функциональность традиционного Historianа SCADA с расширенной обработкой данных, гибкими методами агрегирования и беспроблемной интеграцией с другими модулями платформы. В следующих разделах подробно описано, как AggreGate решает ключевые аспекты Historian.
Получение и хранение данных
AggreGate получает исторические данные из различных источников:
Драйверы устройств: Драйверы устройств могут собирать данные временных рядов с подключенных устройств, сохраняя их как переменные устройства и генерируя события Change при обновлении значений. Длительность хранения этих данных настраивается с помощью параметра устройства Event Storage Period (Период хранения событий устройства).
События: Платформа генерирует события для различных действий системы, таких как вход пользователей в систему, срабатывание предупреждений, выполнение моделей и изменение контекста. Таблица Правила обработки событий обеспечивает общесистемный контроль над хранением событий, включая указание пользовательских сроков действия для различных событий в зависимости от их контекста и типа. Дальнейшая настройка хранения событий возможна с помощью таблицы Хранилища событий для определения специальных таблиц и выбора свойств событий (например, подтверждений или обогащений), которые должны быть сохранены.
Переменные модели: Модели могут накапливать и хранить исторические значения в переменных модели с помощью настроек Время хранения истории и Режим записи истории.
Агрегирование данных
Хотя необработанные исторические данные необходимы для детального анализа, агрегированные значения часто дают более удобную перспективу для выявления тенденций и аномалий. AggreGate предоставляет два гибких метода агрегирования:
База данных Round-Robin Database (RRD): Встроенная RRD агрегирует числовые данные за фиксированные периоды времени (ежеминутно, ежечасно, ежедневно и т. д.), вычисляя средние, минимальные, максимальные, итоговые, первые и последние значения. RRD обеспечивает высокопроизводительное обновление и извлечение данных, что делает его пригодным для построения трендов и графиков в режиме реального времени. Функция Статистика обеспечивает доступ к агрегированным данным в RRD, а функция Необработанная Статистика извлекает полный набор необработанных данных, собранных статистическим каналом. Конфигурация каналов статистики, включая тип канала (калибровочный, счетчик, производный, абсолютный), функции агрегирования и периоды хранения, подробно описана в разделе Статистика.
Грануляция: Механизм грануляции обеспечивает гибкое агрегирование данных за пользовательские, потенциально неравномерно разнесенные периоды времени. Он поддерживает накопление данных любого типа, а не только чисел, что позволяет выполнять сложные агрегации, такие как конкатенация строк или объединение таблиц данных. Данные накапливаются в гранулах, которые представляют собой специальные события, в таблицах данных которых хранятся агрегированные значения. Доступ к гранулам можно получить с помощью функции Get Event History. Конфигурация гранул, включая формат значений, выражения для вычисления суммарных значений и временных меток, а также периоды истечения срока действия, подробно описана в разделе Грануляция.
Получение данных
AggreGate предлагает унифицированные методы для получения как сырых, так и агрегированных исторических данных, независимо от базового хранилища. Специализированные функции способствуют эффективной загрузке данных:
Получить историю событий: Эта функция извлекает исторические события на основе таких критериев, как контекстная маска, имя события, выражение фильтра, диапазон даты/времени, порядок сортировки и максимальное количество результатов. Эта функция необходима для доступа к необработанным данным о событиях, включая гранулы, созданные механизмом грануляции.
Получить историю переменных: Эта функция загружает исторические значения контекстной переменной в виде таблицы временных меток и значений. В ней можно указать диапазон даты/времени, порядок сортировки, максимальное количество результатов, а также включить в таблицу исходные данные или только их кодированное строковое представление.
Функция сводки: Эта мощная функция выполняет "на лету" агрегирование исторических данных из нескольких источников (событий, переменных или статистических каналов) за пользовательские периоды времени и с использованием заданных пользователем методов агрегирования. Она предлагает расширенные возможности для обработки значений типа счетчика, значений, выходящих за пределы диапазона, и корректировки временных зон. Функция сводки особенно полезна для создания отчетов и построения сложных наборов данных для диаграмм.
Визуализация и анализ данных
Исторические данные, полученные с помощью этих функций, могут быть напрямую использованы различными модулями AggreGate:
Диаграммы: Построение интерактивных диаграмм, отображающих исторические тенденции на основе необработанных или агрегированных данных. Гибкие параметры конфигурации позволяют настраивать оси, легенды, всплывающие подсказки и типы серий (калибровочные, счетчики, производные, абсолютные) для эффективной визуализации данных.
Отчеты: Создавайте удобные для печати отчеты, содержащие исторические данные.
Запросы: С помощью запросов можно выполнять расширенный анализ исторических данных, фильтруя, сортируя, группируя и агрегируя полученные значения. Результаты запросов можно использовать в качестве источника данных для других контекстов, например отчетов или диаграмм.
Скрипты: Обрабатывайте исторические данные с помощью пользовательских скриптов, написанных на любом из нескольких мощных языков программирования, включая Java и Python. Это позволяет выполнять пользовательские расчеты, преобразования или сложные аналитические задачи, расширяя встроенную функциональность AggreGate.
Машинное обучение: Использование исторических данных в качестве обучающих наборов данных для моделей машинного обучения. Это позволяет проводить прогнозную аналитику, выявлять аномалии и использовать другие приложения, основанные на данных, повышая интеллектуальные и автоматические возможности вашей системы SCADA.
Использование языка выражений для расширенной обработки данных
Центральным элементом мощности и гибкости историка AggreGate является язык выражений платформы. Язык выражений обеспечивает краткий и мощный способ выполнения сложных вычислений, преобразований и анализа исторических данных, будь то поиск данных, визуализация или отчетность.
Вот как язык выражений улучшает работу с историческими данными:
Сочетая мощь и гибкость языка выражений со всеми возможностями сбора, агрегации и извлечения данных, описанными выше, AggreGate обеспечивает мощное и универсальное решение Historian, которое превосходит ограничения классических историков SCADA, позволяя вам извлекать максимальную ценность из ваших данных.
Пользовательское извлечение данных: При извлечении данных с помощью функций Get Variable History или Get Event History используйте выражения для выбора определенных полей, фильтрации строк на основе критериев и выполнения вычислений для полученных значений. Это позволяет точно извлекать данные и избегать загрузки ненужных данных в память.
Агрегирование "на лету": Функция сводки использует выражения для определения пользовательской логики агрегирования. Это выходит за рамки стандартных функций агрегирования (среднее, минимальное, максимальное и т. д.), предлагаемых RRD, позволяя выполнять такие расчеты, как средневзвешенные значения, пользовательские статистические показатели или объединение строк за произвольные периоды времени.
Преобразование и обогащение данных: Используйте функции языка выражений для преобразования типов данных, форматирования значений, создания вычисляемых полей и обогащения данных информацией из других контекстов. Это повышает аналитическую ценность данных и упрощает их интеграцию с другими системами.
Условная логика и ветвление: Реализуйте условную логику и ветвление в выражениях для обработки различных сценариев, фильтрации значений, выходящих за пределы диапазона, или выполнения пользовательских вычислений на основе определенных критериев. Это позволяет создавать гибкие и адаптивные рабочие процессы обработки данных.
Интеграция с другими модулями: Выражения связывают функциональность Historian с другими модулями AggreGate, такими как оповещения, отчеты и модели. Например, используйте выражение в триггере оповещения, чтобы подать сигнал тревоги при обнаружении определенной тенденции в исторических данных.
Was this page helpful?