Опыт работы ПО PI System позволил специалистам компании «ИндаСофт» разработать портальное решение в качестве универсального инструмента представления информации конечному пользователю. Рассмотрены архитектура и возможности портального решения.
Ключевые слова: программное обеспечение, портальное решение, Web-сервис, «тонкие» и «толстые» мнемосхемы, отчеты.
Авторы: Эрнест СЮЧ, директор по развитию бизнеса ООО «ИндаСофт», Павел ГРИНЕВИЧ, канд. техн. наук, начальник Департамента разработки ПО
Источник: Журнал «Автоматизация в промышленности», №10 2014
C 2000 г. компания «ИндаСофт» внедряет ПО PI System компании OSIsoft [1, 2]. Большой опыт реализации проектов на базе PI System позволил специалистам «ИндаСофт» выработать комплексный подход к автоматизации процессов оперативного управления производством, интегрируя ПО PI System и собственные программные продукты для решения конкретных функциональных задач, чтобы максимально удовлетворять запросы заказчиков.
Обобщение и осмысление методологических подходов «ИндаСофт» привело к:
— выделению единой системной платформы IDS/P, в которой содержатся системные и прикладные сервисы, используемые в большинстве программных продуктов «ИндаСофт»;
— выделению универсальных рабочих мест, функциональность которых гибко настраивается и определяется автоматизируемыми рабочими процессами в конкретном решении;
— разработке портального решения как универсального способа представления информации конечному пользователю.
Портальное решение очень индивидуально для каждого проекта, и говорить о нем целесообразно в разрезе инструментов, используемых при конкретной реализации.
На рис. 1 представлена структура платформы «ИндаСофт», желтой рамкой выделены ключевые компоненты, реализующие портальное решение.
Платформа использует PI Server как источник данных реального времени, PI AF для хранения модели производства и разнообразных прикладных настроек, PI Event Frames для хранения событий. Базовые сервисы платформы решают в первую очередь инфраструктурные задачи и предоставляют системный функционал, используемый всеми прикладными сервисами. Прикладные сервисы решают конкретные функциональные задачи. Сервис публикации организует доступ Web-приложению (обозначенному на схеме как «Портал») к данным и функциям, предоставляемым базовыми и прикладными сервисами платформы.
Портальное решение «ИндаСофт» — это сложное Web-приложение, которое может быть развернуто как самостоятельный сайт под управлением Web-сервера IIS, так и в составе решения на базе портала SharePoint 2010/2013 (начиная с версии Foundation).
В состав портального решения входят следующие компоненты:
— проводник документов;
— анализ технологических параметров;
— аварийный журнал;
— диспетчерские журналы.
Компонент портала «Проводник документов» предназначен для отображения технологических мнемосхем и отчетов. Общий вид интерфейса пользователя представлен на рис. 2.
Интерфейс пользователя проводника документов состоит из трех областей (рис. 3):
Проводником документов поддерживаются следующие типы содержимого:
Рис. 3. Структура интерфейса проводника документов | Рис. 4. Структура "тонкой" мнемосхемы |
Термин «тонкие» возник по причине того, что для отображения таких мнемосхем не требуется установки на клиентские рабочие места никакого дополнительного ПО, достаточно функциональности Internet-браузера. Для отображения «тонких» мнемосхем используются возможности тега <SVG> стандарта HTML 5. Схематично структура «тонкой» мнемосхемы показана на рис. 4.
Графическая часть схемы расположена в разделе <SVG>…</SVG>, там же с использованием специализированных атрибутов расположены активные элементы схемы, связанные с данными. «Движок» тонкой мнемосхемы, реализованный на Java Script, находит все связанные с данными элементы, формирует запросы на сервер к сервису публикации, входящему в состав платформы и визуализирует полученные с сервера данные с помощью активных элементов схемы.
Основное преимущество использования «тонких» мнемосхем заключается в том, что просматривать такие мнемосхемы можно на любых устройствах, на которых работают браузеры с поддержкой стандарта HTML 5 (iOS, Android, Windows Phone устройства).
Для разработки «тонких» мнемосхем используется продукт Microsoft Visio и специализированный add-in «ИндаСофт», расширяющий функциональность Visio. На рис. 5 представлена панель инструментов add-in «ИндаСофт», набор активных элементов для разработки «тонких» мнемосхем и пример разработанной мнемосхемы.
Во время разработки мнемосхемы у пользователя есть возможность открыть разработанную мнемосхему в режиме предпросмотра в браузере и оценить работу активных элементов «в живую», как если бы мнемосхема уже была опубликована на портале. После завершения разработки в Visio окончательный вариант «тонкой» мнемосхемы публикуется на портале в проводнике документов.
Еще одна функциональная возможность «тонких» мнемосхем, заслуживающая отдельного упоминания, — «виджеты». Это самостоятельная «тонкая» мнемосхема, у которой активные элементы связаны с атрибутами шаблона элемента. Таким образом, виджет может быть использован для визуализации любого элемента модели, созданного по связанному с виджетом шаблону элемента. Базовый функционал «тонкой» мнемосхемы визуализирует виджеты в виде всплывающих областей (popup) при клике на элементе схемы, для которого настроен виджет. Если виджетов несколько, то организуется возможность перелистывания виджетов. Пример отображения виджета приведен на рис. 6.
С помощью механизма виджетов реализуется отображение детальной информации, необходимость в которой возникает непостоянно, а от случая к случаю, по требованию пользователя. Таким образом, удается достигнуть баланса между информативностью мнемосхемы и ее насыщенностью элементами, то есть удобством восприятия схемы пользователем.
Независимо от активных элементов, использованных при разработке «тонкой» мнемосхемы, каждая «тонкая» мнемосхема обладает следующими функциональными возможностями: масштабирование, режим просмотра истории, возможность воспроизведения исторических данных с ускоренным до 32 раз временем, отображение трендов по любому выбранному на схеме значению за настраиваемый период времени.
Доступ к большинству перечисленных функций осуществляется с помощью команд панели инструментов «тонкой» мнемосхемы. Этот базовый для всех «тонких» мнемосхем функционал реализуется движком «тонких» мнемосхем, специализированной кроссбраузерной клиентской библиотекой, написанной на JavaScript.
«Толстые» мнемосхемы — это классические мнемосхемы, разрабатываемые в PI ProcessBook, для отображения которых требуется установка на компьютере клиента самого PI ProcessBook или установка PI ActiveView для просмотра в браузере Internet Explorer.
Поддержка «толстых» мнемосхем важна для переходного периода, когда на портале одновременно опубликованы и просматриваются пользователями мнемосхемы, выполненные с использованием обеих технологий.
Также возможны ситуации, когда довольно трудозатратно переработать мнемосхемы из «толстых» в «тонкие», особенно в случае большого объема логики мнемосхемы, реализованной с использованием кода VBA. В таких случаях может оказаться целесообразным не перерабатывать мнемосхемы, а продолжить их использовать «как есть».
Проводник документов интегрирован с встроенным в платформу сервером отчетов и позволяет отображать любые отчеты, формируемые при помощи сервера отчетов (Рис. 7).
Компонент портала«Анализ технологических параметров» (АТП) предназначен для построения трендов технологических параметров за произвольные промежутки времени, отображения исторических данных в виде таблиц, расчета агрегатных функций по историческим данным за требуемый период, построения графиков зависимости значений одного технологического параметра от другого (рис. 8).
Интерфейс пользователя разделен на три области: структуры производства, рабочих наборов, просмотра результатов.
Область структуры производства содержит элементы модели структуры производства, в которой пользователю необходимо выбрать анализируемые атрибуты и сформировать из них рабочий набор.
Далее в области рабочего набора для выбранных атрибутов настраиваются параметры отображения:
Рабочие наборы анализируемых атрибутов, сформированные пользователем, могут быть сохранены для последующего использования. Поддерживаются как приватные наборы, доступные только для создавшего их пользователя, так и публичные наборы, доступные для всех пользователей.
В области просмотра результатов размещено несколько закладок. Закладка «График» (рис. 8) содержит представление в виде графиков. Закладка «Таблица» содержит табличное представление данных в формате: метка времени – значение. Закладка «Статистика» содержит таблицу с результатами расчета агрегатных функций: минимум и максимум за анализируемый период. Закладка «График относительной зависимости» позволяет визуально проанализировать наличие зависимости между значениями двух атрибутов за указанный период.
Аварийный журнал – компонент портала, предназначенный для формирования и отображения технологических событий и аварий.
Аварийный журнал спроектирован с учетом ряда требований.
Структурная схема модулей, входящих в состав аварийного журнала, представлена на рис. 9.
Рис. 9. Структурная схема модулей аварийного журнала |
Аварийный журнал строится на следующих продуктах компании OSIsoft:
Специалистами «ИндаСофт» разработаны сервисы конфигурирования правил, сервисы представления событий и Web-приложение, реализующее интерфейс администрирования и просмотра.
Интерфейс пользователя для просмотра событий аварийного журнала представлен на рис. 10.
По каждому событию доступна детальная информация, возможен просмотр трендов для атрибутов, участвующих в формировании события. Пользователь может указывать комментарии к каждому возникшему событию или аварии. Все изменения, выполненные пользователем, сохраняются в истории изменений.
Компонент портала «Диспетчерские журналы» предназначен для регистрации диспетчерской активности: сообщения, команды, нештатные и аварийные ситуации.
Диспетчерские журналы построены на базе списков Microsoft SharePoint и могут быть развернуты только в портальных решениях на платформе Microsoft SharePoint. Основной интерфейс работы с журналом — форма просмотра списка (рис. 11), содержащая настраиваемый перечень колонок. Диспетчер с помощью панели инструментов в верхней части окна может регистрировать различные типы записей в журнале.
В зависимости от типа регистрируемой активности диспетчеру предлагается к заполнению разный набор информационных полей. На рис. 12 приведен пример диалога регистрации нештатной или аварийной ситуации.
Приведен краткий обзор возможностей компонентов, входящих в портальное решение компании «ИндаСофт» (рис. 13), позволяющих реализовать функционально насыщенные портальные решения и легко адаптировать их под изменяющиеся требования конкретных прикладных задач.
Дальнейшие планы развития портального решения предполагают его функциональное обогащение дополнительными компонентами, а также более тесную интеграцию с прикладными системами автоматизации бизнес-процессов оперативного управления производством — планирования, диспетчеризации, производственного учета и т. д.