Изучение SCADA-системы InTouch 10 (на примере разработки верхнего уровня АСУ ТП выпаривания метанола в водном реакторе), страница 28

6 На данном этапе в интерфейс добавляются объекты анимации. Разместите на «полу» под верхним концом «прокалочной печи» объект … Motors → Motor 4 . Выделите вставленный объект мышью. Выполните последовательно команды панели управления (или через меню Arrange) Break Cell, Break Symbol (если доступно) Make Symbol. Проведенные операции позволят преобразовать объект класса Symbol Factory в обычный объект класса Symbol. Преобразование выполнено целью расширения возможностей анимации объекта. Такой прием применения ресурсов программы не описан в справочном руководстве InTouch. Однако он может быть полезен при разработке приложений. Рекомендуется при пользовании любым программным обеспечением опытным путем устанавливать возможности программ по базовым функциям. То, чего не дается в стандартных справочных материалах, может представлять собой как весьма очевидные и полезные приемы и возможности программы, так и ее ошибки. Чем раньше Вы о них узнаете, тем больше сможете облегчить себе работу. После преобразования объекта. Нажмите правой кнопкой мыши на двигателе и нажмите Animation Links…. В появившемся окне нажмите Orientation. Откроется окно настройки анимации вращения объекта. Введите настройки параметров анимации в соответствии с рисунком Б4.10.

Рисунок Б4.10 – Настройки анимации двигателя

В поле Expression (выражение) введена математическая формула, аргументом в которой является системная переменная  $Msec. Системные переменные – особый класс переменных, по умолчанию доступных в любом создаваемом приложении. Переменная $Msec возвращает целое число от 0 до 999. Значение $Msec равномерно нарастает от 0 до 999 за время 1 с, или 1000 мс, а затем сбрасывается на 0. Данный двигатель будет совершать периодические повороты вокруг своей центральной точки на угол 3 градуса в обоих направлениях 3 раза за секунду. Добавьте в окно изображения передач …Machining → Gear (animation frame 1 и 2) . Изучите, как выполнена анимация зубчатых колес и какой это дает визуальный эффект. Примечание: анимация маленьких колес – вертикальное положение и вращение. Анимация больших колес – Visible, в которой колеса попеременно появляются и исчезают. Для придания перспективы колесам применены стандартные настройки объекта класса Symbol Factory из меню Options. Часть колес преобразована в обычные символы.

7 Анимация потока угля. Для создания потока угля применены объекты …→ Mining → Coal Pipe 1 . Произвольно измените размеры и форму объекта. Не переделывайте его в обычный объект. Анимация реализована следующим образом: с определенной периодичностью на экране последовательно появляются разные куски угля, остальные при этом исчезают. Анимация организована по принципу мультфильма. Изображения разных кусков угля поочередно появляются на экране в разных его местах, тем самым создается эффект потока. Подобная анимация применена в ставшем уже легендарном учебном примере приложения, предложенного разработчиками InTouch, который называется Reactor.

Порядок создания объекта следующий. Разместите в рабочем окне 4 куска угля и добавьте в библиотеку тегов 4 дискретных тега CoilStepХ. Где Х – номер тега от 1 до 4. В InTouch допускается объявлять теги непосредственно из редактора анимации. Для этого достаточно в строке Expression ввести имя нового тега и нажать ОК. Не покидая редактора Symbol Factory нажмите кнопку Animation… Введите имя нового тега в поле Expression, например Coil_Step1. При этом программа предложит объявить новый тег, появится сообщение – см рисунок Б4.11.

Рисунок Б4.11 – Пример незапланированного объявления тега

Нажмите ОК, откроется словарь тегов. Для создаваемых тегов задайте тип Memory Discrete и группу алармов CoilCoke. Разместите над конвейером 4 куска угля, назначьте им анимацию Visible по разным дискретным тегам CoilStepХ. Разместите куски угля в одну линию так, чтобы порядковый номер Х возрастал слева направо. Откройте редактор сценариев Application Script. Для этого либо воспользуйтесь менеджером приложений в правой части окна, либо строкой меню: Special → Scripts → Application Scripts… В появившемся окне вводятся сценарии и тексты небольших программ  для работы InTouch. В поле Condition Type выберите While Running. Задайте время 100 мс. Введите следующий текст: