Методические указания
к лабораторному практикуму «ПТК АСУТП АЭС»
Лабораторная работа №2
Тема: Знакомство с САПР ТПТС – GET-R
Цель работы
Знакомство со средой программирования контроллеров ТПТС - GET-R.
Знакомство со средством отладки программ контроллеров - STRUK.
Научиться конфигурировать программу контроллера на GET - станции.
Используемое оборудование
- Графический редактор RtSvgDraw;
- САПР GET-R;
- Приборная стойка ТПТС.
Введение
В системе GET-R используется язык программирования, описывающий технологические алгоритмы в виде графических функциональных диаграмм, привычных для технологов. В результате трансляции образуется текст прикладного алгоритма на языке STEP и загрузочный модуль, который записывается в память функционального модуля. Одновременно автоматически получается технологическая документация.
Графический язык GET-R системы позволяет задать требуемую конфигурацию модуля в виде простой схемы из базовых функций, образы и логика которых хранятся в библиотеках и вызываются на экран из соответствующих меню, имеющихся для каждого функционального модуля. Такой способ создания конфигурации является весьма наглядным и позволяет быстро и с малой вероятностью ошибки задать нужный алгоритм функционирования модуля.
В результате конфигурирования формируется три вида информации:
- графическое представление прикладного алгоритма в виде схемы соединения базовых функций;
- таблица соединения и параметрирования базовых функций (таблица конфигурации) в бинарном представлении;
- текстовое представление таблицы конфигурации базовых функций.
Таблица конфигурации заносится в EEPROM (ППЗУ) модуля и сохраняется сколь угодно долго при отключенном питании и всех условиях хранения и эксплуатации. Отличие от базовых функций заключается в том, что конфигурация модуля может быть изменена потребителем при помощи той же системы конфигурирования GET-R, которая поставляются вместе с системой автоматизации, а базовые функции для изменения потребителем недоступны.
Система конфигурирования GET-R имеет встроенные средства проверки правильности разработанной конфигурации модуля, которые не позволяют сформировать загружаемый в модуль код, в котором имеются ошибки.
Модуль можно конфигурировать как изолированно, так и в составе уже работающей системы автоматизации. Для этого к системе автоматизации через шину процесса подключается инженерная станция с установленной системой конфигурирования GET-R и проектом системы автоматизации.
С более подробным описанием системы автоматизации на базе ТПТС можно ознакомиться в Разделе 7 – Методических указаний.
Описание этапов программирования в редакторе GET-R.
1. Реализация графики функциональной схемы в графическом редакторе GET-R.
Функциональная схема создается с помощью меню графического редактора «Загрузить схему» (пункт 6.4.1 Раздела 8 – Методических указаний).
Функциональная схема реализуется в графическом редакторе GET-R в графическом виде, путем выбора необходимых функциональных блоков из меню функциональных блоков (пункт 6.1.1 Раздела 8 – Методических указаний). (См. Рис.1 и 2)
Типы некоторых функциональных блоков и описание их работы приведены в Разделе 7 – Методических указаний. (стр. 98 «Библиотека базовых функций GET-R»).
Выбранные функциональные блоки соединяются соединительными линиями (пункт 6.6.2 Раздела 8 – Методических указаний).
После каждого функционального блока необходимо поставить графическое отображение маркера. Выбирается из меню функциональных блоков обозначение ZUW.
Маркер – идентификатор, используемый для доступа к значениям входов, выходов и внутренних переменных функционального модуля. Маркеру соответствует поименованная область оперативной памяти (RAM) функционального модуля, в которой содержится значение этого маркера. В зависимости от назначения маркеры могут быть аналоговыми и дискретными.
Для работы с графическим редактором необходимо ознакомится с Методическими указаниями Программно-технические средства лабораторного практикума «ПТК АСУТП АЭС» - Раздел 8.
Рисунок 1 – Функциональная схема управления задвижкой
Рисунок 2 – Функциональная схема обработки аналоговой величины
2. Расстановка типа цикла обработки и последовательности обработки.
После реализации графики необходимо расставить циклы, в которых будет обрабатываться пользовательская структура, и задать последовательность этой обработки.(См. рис 1 и 2)
Пользовательская структура состоит из трех секций (рисунок 3):
- секции запуска (А - цикл);
- секция быстрого цикла (SZYK);
- cекция медленного цикла (LZYK).
Примечание - Cекция запуска выполняется только один раз при запуске структуры. Циклическая часть структуры, состоящая из секций быстрого и медленного цикла, выполняется бесконечно до поступления команды.
AS,215 SP,87 | Идентификация структуры пользователя |
Секция запуска | |
SZYK | Секция быстрого цикла (цикл 23.3 с) |
LZYK | Секция медленного цикла |
ENDE |
Рисунок 3 - Структура пользователя
Секция запуска
Выполняется один раз после запуска модуля или любого изменения структуры. В этой секции производится определение, используемых в структуре, аналоговых и дискретных входов и выходов. Кроме того, производится запись (присвоение значений) для аналоговых и двоичных маркеров, которые использованы в пользовательской структуре.
Таким образом, основная задача секции запуска - подготовка условий и данных, которые необходимы для выполнения циклической части структуры.
Эта программная секция обрабатывается в течение фиксированного интервала цикла, равного, например, 23,3 мс. Входные и выходные каналы обрабатываются автоматически через электрический разъем Х2 модуля ТПТС и блок драйверов. Кроме того, в быстром цикле обрабатывается часть структуры пользователя, требующая максимально быстрого выполнения. Секция быстрого цикла имеет более высокий приоритет выполнения по сравнению с секцией медленного цикла.
Эта программная секция выполняется циклически в качестве фоновой программы, в течение оставшегося времени в интервале обработки быстрого цикла. Имеет самый низкий приоритет выполнения.
Циклы расставляются с помощью меню графического редактора «Задать цикл» (пункт 6.11.9 Раздела 8 – Методических указаний).
Последовательность обработки в функциональном модуле спроектированных на функциональной схеме функций расставляется с помощью меню графического редактора «Задать номер функц. блока» (пункт 6.11.8 Раздела 8 – Методических указаний).
3. Распределение операндов (маркеров) и параметризация функциональных блоков.
Распределение операндов также может производиться с помощью меню графического редактора «Распределение операндов» (Пункт 6.11.7 Раздела 8 – Методических указаний).
4. Проверка графики и конвертация схемы.
4.1 Пункт «Проверка и конвертация схемы» (пункт 5.10.4 Раздела 8 – Методических указаний).
Процедура «Проверка и конвертация схемы» позволяет проверить и подготовить к генерации кода (конвертация) функциональных схем, относящихся к заданному функциональному модулю.
Для этого в маске процедуры нужно выбрать модуль и нажать кнопку
.4.2 Пункт «Генерация кода» (пункт 5.10.5 Раздела 8 – Методических указаний).
Процедура «Генерация кода» служит для формирования кода из функциональных схем, относящихся к заданному функциональному модулю.
Корректное формирование кода возможно только после выполнения процедуры преобразования.
-«С передачей» - с передачей в ФМ ТПТС;
-«Без передачи» - без передачи в ФМ ТПТС.
Нужно выбрать пункт -«Без передачи».
При генерации кода протокол формирования не создается, а выводится на экран по мере выполнения процедуры.
5. Программа на языке контроллера в STEP коде.
После генерации кода функциональная схема преобразуется в программу на языке STEP, которая представляет собой последовательный набор инструкций языка STEP.
Язык STEP - язык программирования интерпретирующего типа для формирования и обработки структуры пользователя.
Инструкции языка STEP M(BG) - это законченные функции. Последовательность инструкций определяет прикладной алгоритм (прикладную программу).
Инструкции состоят из двух частей: операций и операндов (маркеров). Операции включают одну или более ссылок на операнды (маркеры), которые должны быть созданы. Если инструкция включает более одного операнда (маркера), они обозначаются последовательными номерами в порядке возрастания.