ГлавнаяКарта сайтаПечатьE-mail
КонтрАвт
Увлекая к успеху
Поиск продукции КонтрАвт
Поиск по сайту
Подписка
формаКаталог по почте
Оформите подписку и получайте по почте Каталог продукции и буклеты о Новинках


Automation Studio для распределенных систем


Дмитрий Громов, Главный инженер
Алексей Дементьев, начальник Сектора рекламы

Введение

В прошлом выпуске (№2 за 2006 год) мы начали разговор о распределённых системах. Предложенная нами схема основывается на четырёх основных компонентах:

  • Power Panel – встраиваемые PC-совместимые управляющие и регистрирующие устройства с развитыми средствами визуализации и интерфейсом оператора (производство австрийской компании Bernecker & Rainer);
  • сеть локальных регуляторов МЕТАКОН (производство НПФ КонтрАвт);
  • MDS-модули (Modules for Distributed Systems) – модули удаленного ввода-вывода (часто называют Устройства Сопряжения с Объектом) (производство НПФ КонтрАвт);
  • Automation Studio™ – ПО для управления коммуникационными, регистрирующими функциями и реализации интерфейса оператора (Copyright Bernecker & Rainer – в дальнейшем B&R).

Распределенная система АСУТП

Система необязательно должна содержать все компоненты.

Рассмотрим два крайних варианта:

  • система состоит из панельных компьютеров Power Panel и модулей удаленного ввода-вывода MDS;
  • система состоит из панельных компьютеров Power Panel и локальных регуляторов МЕТАКОН.

В первом случае MDS-модули осуществляют сбор и первичную обработку информации. Панельные компьютеры Power Panel в этом случае  осуществляют функции сбора данных и их обработки, и управления функционированием исполнительных устройств при помощи модулей ввода-вывода. Вся логика работы системы автоматизации полностью лежит на программном обеспечении, выполняемом на Power Panel.

Во втором случае управление исполнительными устройствами и механизмами возложено на локальные регуляторы МЕТАКОН. Панельный компьютер Power Panel осуществляет функции сбора данных и их обработки. Алгоритмы управления объектами автоматизации могут исполняться локальными регуляторами. Плюс к этому в системе возникает дополнительная возможность согласованного управления несколькими регуляторами, что не реализуемо при локальном регулировании без внешней диспетчеризации.

И в том, и в другом, и в комбинированных вариантах построения АСУ ТП программное обеспечение, исполняемое на компьютерах Power Panel  должно уметь выполнять функции:

  • визуализация данных и процессов;
  • контроль процессов в режиме реального времени;
  • человеко-машинный интерфейс;
  • связь с подсетями, работающими на разных промышленных протоколах;
  • архивирование данных;
  • взаимодействие с другими контроллерами или панельными компьютерами;
  • обмен данными с системой управления производством верхнего уровня.

Стоит также заметить, что многие технологические процессы в системах автоматизации должны быть четко согласованы по времени. Поэтому в таких случаях программное обеспечение контроллера системы должно исполняться в режиме реального времени. Компьютеры Power Panel оснащены специальными аппаратными средствами для поддержания ОС реального времени (RTOS).

Для разработки программ, исполняемых на Power Panel и позволяющих реализовывать все вышеперечисленные функции, фирма B&R создала очень удобный и универсальный инструмент – Automation Studio™ (в дальнейшем – AS).

Automation Studio™

Automation Studio™ – мощный инструмент, который позволяет реализовывать все стадии разработки ПО, начиная с планирования проекта и заканчивая отладкой программных модулей.

Рассмотрим составные части Automation Studio™:

  • Менеджер проектов
  • Редакторы кода и компиляторы
  • Визуальный редактор
  • Средства отладки
  • Менеджер библиотек

Менеджер проектов

При разработке приложений для Power Panel потребуется работать с множеством файлов разных типов. Это текстовые файлы с кодом, написанном на каком-либо языке программирования. Это и бинарные файлы  библиотечных функций, и графические файлы для создания визуальной части приложения, и многое другое. Для удобства работы с таким разнообразием файлов они объединены в одну структуру – проект. Он также включает в себя файлы с различными настройками для редакторов, интерфейсов, целевых устройств. Размещается проект в одной папке, которая называется именем проекта. Таким образом, перенос проекта с одного компьютера на другой, архивация проектов может быть выполнена очень легко – надо всего лишь скопировать папку с проектом туда, куда необходимо. Чтобы подготовить проект к загрузке в целевую панель, нужно лишь его открыть и скомпилировать. При этом совершенно не важно где, по какому пути проект находится.

Для эффективного управления проектом предназначен Менеджер проектов. Вот основные его возможности:

  • Конфигурирование целевого устройства (устройства, для которого и пишется проект).
  • Изменение состава целевого устройства, например, добавление или удаление плат расширения.
  • Добавление файлов в проект и удаление файлов из проекта.
  • Распределение задач по классам задач.
  • Определение свойств программных объектов.

На Рис. 1 представлен фрагмент окна Менеджера проектов.

Менеджер проектов

Левую часть окна занимает древовидная структура, которая изображает аппаратную часть или «железо», для которой пишется программа (в терминологии AS – целевое устройство). Корень дерева – имя проекта. В нашем примере «METALINK». Затем ветка – имя целевого устройства. В данном примере целевое устройство – Power Panel 4PP220 1043-75. Весь состав устройства с точки зрения программиста отображен в виде дерева с целевым устройством в корне.

В правой части окна можно получить более подробную информацию об устройствах, выбранных в левой части окна. На Рис. 1 в левой части выбрано целевое устройство, а в правой части отображается дерево проекта, предназначенного для загрузки в целевое устройство.

Древовидная форма проекта – это очень удобное классическое представление проекта. Корень дерева – CPU. Первый уровень иерархии – классы задач. Класс задач – совокупность программных модулей, на исполнение которой отводится один промежуток времени. Следующий уровень иерархии – программные модули. Программный модуль – часть программного обеспечения, предназначенная для решения какой-либо своей задачи и написанная на одном языке программирования. Еще ниже – файлы, из которых при компиляции получается программный модуль.

Редакторы кода и копмиляторы

Automation Studio™ позволяет разработчику писать программы на 6 различных языках программирования:

  • список инструкций (почти ассемблер);
  • структурированный текст (напоминает Паскаль);
  • язык релейно-контактных схем;
  • язык функционально-блоковых диаграмм;
  • ANSI C;
  • Automation BASIC.

Причем, каждый из программных модулей проекта может быть написан на своем языке, совершенно независимо от других модулей.

Для каждого языка программирования предусмотрен свой редактор. Редакторы текстовых языков поддерживают подсветку синтаксиса и минимальный набор инструментов, присущий любому текстовому редактору. На Рис. 2 представлен фрагмент окна встроенного редактора для написания программ на языках «структурированный текст», «список инструкций» и Automation BASIC. Фрагмент кода на Рис. 2 написан на Automation BASIC.

встроенный редактор для написания программ на языках «структурированный текст», «список инструкций» и Automation BASIC

 

На самой нижней панели инструментов можно увидеть 3 кнопки, расположенные слева: вставка операции, вставка переменной, и вставка функции. Это очень удобно, так как не приходится запоминать ни имен переменных, ни синтаксиса операций и функций. На Рис. 3 представлен фрагмент окна редактора для разработки программ на языке ANSI C.

окна редактора для разработки программ на языке ANSI C

Необходимо отметить, что для разработки программ на текстовых языках можно использовать внешние текстовые редакторы, например UltraEdit. Редакторы языков релейно-контакных схем и функционально-блоковых диаграмм предоставляют программисту набор инструментов - блоков, из которых, как из кубиков, составляется программа. На Рис. 4 совмещены фрагменты окон редакторов, предназначенных для разработки программ на языках функционально-блоковых диаграмм (слева) и релейно-контактных схем.

фрагменты окон редакторов 

На любом этапе создания программы ее можно попытаться скомпилировать. Список ошибок и предупреждений, полученный в процессе  компиляции программы, будет выведен в отдельном окне. Двойной щелчок мыши по любой ошибке или предупреждению перенесёт курсор на то место в программе, где ошибка была обнаружена.

Визуальный редактор

Визуальные приложения в пакете Automation Studio™ разрабатываются средствами визуального редактора. Окно визуального редактора представлено на Рис. 5.

Визуальные приложения в пакете Automation Studio™

В визуальном редакторе есть инструменты для рисования линий, эллипсов, прямоугольников, различных кнопок, строковых текстовых и числовых сообщений, различных цветовых индикаторов. Можно также использовать картинку в формате bmp, gif, jpg, нарисованную в других редакторах. С этими инструментами создание визуального приложения становится простым, удобным и быстрым. Например, чтобы на  сенсорном экране определить кнопку, необходимо лишь выбрать инструмент «кнопка», нарисовать границы кнопки на экране и выбрать из списка действие, которое эта кнопка должна делать. То есть, используя терминологию Automation Studio™, сопоставить реальной кнопке виртуальную.

В визуальном редакторе также есть два таких очень полезных инструмента, как тревоги и пароли. С помощью инструмента «тревоги» можно без единой строчки кода создать систему тревожной сигнализации. Все тревожные сообщения будут архивироваться, отклик оператора на  них настраивается в виде параметров. Например, одни тревожные сообщения могут не требовать подтверждения, другим оно необходимо.

С помощью инструмента «пароли» можно без единой строчки кода ограничить доступ к некоторым пунктам меню, кнопкам, информации и т. д. Доступ можно сделать многоуровневым. Например, есть три категории персонала: администраторы, наладчики и операторы. Администраторы должны иметь полный доступ ко всем пунктам меню и органам управления, наладчики могут смотреть всё, но пользоваться органами управления могут только в инженерном меню. А операторы могут видеть и использовать органы управления только в основном меню. При помощи инструмента «пароли» надо создать 3 уровня безопасности, каждый со своим паролем. И для каждого уровня указать список недоступных для него органов управления. И эта задача реализуется только средствами визуального редактора, она не требует написания кода.

Средства отладки

Ни для кого не секрет, что отладка приложения может занимать до 80 % от общего времени разработки. Инструменты отладки приложений, предоставляемые Automation Studio™, позволяют сократить время отладки программы до минимума.

Набор средств отладки состоит из четырех инструментов: наблюдатель (Watcher), трассировщик (Tracer), профилер (Profiler) и отладчик (Debugger). Остановимся на этих инструментах поподробнее.

  • Watcher. Позволяет видеть текущие значения переменных, читая эти значения непосредственно из панели в процессе исполнения на ней программы. Также при помощи этого инструмента можно записать любые значения в переменные. Это очень удобно при отладке программы.
  • Tracer. Позволяет следить за состоянием переменных в течение некоторого времени, а затем выводить на экран графики зависимости этих переменных от времени.
  • Profiler. Этот компонент позволяет увидеть графики использования процессорного времени. По этим графикам можно понять, в течение какого времени исполняется ваше приложение, как много оно требует процессорного времени, не прерывает ли что его исполнение, если прерывает, то что, почему и т.д.
  • Debugger. Позволяет расставлять по ходу программы точки останова и исполнять программу от точки останова до точки останова, при каждом шаге контролируя текущее состояние переменных и прочие параметры.

Менеджер бибилиотек

Разработка приложений для Power panel обязательно потребует использования библиотечных функций. Некоторые ресурсы панели доступны только через использование библиотечных функций (наподобие функций API в Windows). Примером таких ресурсов могут послужить  интерфейсы, часы реального времени и т.п. В виде библиотечных функций также реализованы такие рутинные процедуры, как работа со строками, преобразование типов и т.д. Подобные библиотеки созданы для облегчения труда разработчика и сокращения времени разработки.

Для работы с библиотеками, включения библиотек в свой проект, создания собственных библиотек Automation Studio предоставляет удобный инструмент, называемый Менеджер библиотек. Ниже перечислены основные возможности Менеджера.

  • Включение существующих библиотек в свой проект, для того, чтобы можно было использовать библиотечные функции в своих программах.
  • Создание собственных библиотек на одном из выбранных языков программирования.
  • Модернизация библиотек, добавление функций в уже существующие собственные библиотеки.
  • Генерация заголовочных файлов библиотек на основе настроек, выполненных при конфигурировании библиотеки.
  • Описание и предоставление информации обо всех переменных и функциях, входящих в библиотеку.

Итак, Automation Studio™ – это интегрированная среда, которая сочетает в себе средства для управления проектом, редакторы для написания кода, визуальный редактор, средства для управления библиотеками функций, отладчик программ, инструмент контроля процессорного времени, наблюдатель и трассировщик переменных. В результате того, что один программный пакет обеспечивает выполнение всех фаз разработки проекта, достигается значительное сокращение трудозатрат на разработку проекта, сокращение сроков, и повышение качества программного обеспечения.

 

 




Copyright © 2003-2016 КонтрАвт
Телефон: +7 (831) 260-13-08 (многоканальный)
Почта: sales@contravt.ru



Powered by TreeGraph (Graphit Ltd.)