
- •Устройства программного управления
- •Глава 1. Классификация систем управления 17
- •Глава 2. Общие принципы построения систем чпу 55
- •Глава 3. Задачи управления 121
- •Глава 4. Технологии разработки программного обеспечения систем управления 178
- •Глава 5. Документы пользователя систем чпу 231
- •Глава 1.
- •1.1. Современный мировой уровень архитектурных решений в области чпу
- •1.1.1. Системы cnc и pcnc-1
- •1.1.2. Системы pcnc-2
- •1.1.3. Система pcnc-3
- •1.1.4. Системы pcnc-4
- •1.2. Интеграция на основе открытого управления и стандарта орс
- •1.2.1. Представление об открытом управлении
- •1 .2.2. Системы scada
- •1.2.3. Стандарт орс
- •1.3. Интеграция на основе комплекса производственных стандартов step (Standard for the Exchange of Product model data)
- •1.3.1. Обзор комплекса производственных стандартов step
- •1.3.2. Step-nc
- •1.3.3. Использование в интерфейсе систем чпу языков express и xml
- •Глава 2. Общие принципы построения систем чпу
- •2.1. Архитектура систем pcnc
- •2.1.1. Признаки нового поколения систем чпу
- •2.1.2. Модульная архитектура систем чпу на прикладном уровне
- •2.1.3. Открытая архитектура систем управления
- •2.1.4. Виртуальная модель pc-подсистемы чпу
- •2.2. Проблема реального времени в системах управления
- •2.2.1. Постановка задачи
- •2.2.2. Реальное время в системе управления
- •2.2.3. Базовые понятия операционной системы реального времени
- •2.2.4. Использование в системах управления операционной системы Windows nt
- •2.2.5. Стратегия диспетчеризации на базе расширения rtx (Real Time extension)
- •2.2.6. Принцип разбиения потоков (threads)
- •2.3. Проблемы управления электроавтоматикой
- •2.3.1. Классификация систем управления электроавтоматикой
- •2.3.2. Система понятий, используемых при организации системы управления
- •2.3.3. Структура проекта системы управления электроавтоматикой (клиентская часть)
- •2.3.4. Альтернативные структуры проекта в клиентской части
- •2 Рис. 45. Диаграмма периодической работы .3.6. Объектный подход при управлении электроавтоматикой
- •2.3.7. Особенности управления электроавтоматикой станков с чпу
- •2.4. Построение межмодульной коммуникационной среды
- •2.4.1. Базовые функции коммуникационной среды
- •2.4.2. Клиент-серверные транзакции при запросе данных
- •2.4.3. Виртуальная структура объектно-ориентированной магистрали
- •2.4.4. Организация коммуникационной среды в виде открытой модульной системы
- •2.5. Принципы построения удаленных терминалов чпу
- •2.5.1. Удаленный терминал в системе управления
- •2.5.2. Информационные технологии, используемые при создании удаленного терминала
- •2.5.3. Библиотеки классов Java, используемые при создании апплетов
- •2.5.4. Инструментарий разработки удаленного терминала
- •2 .5.5. Специфика удаленного терминала системы управления
- •2.6. Особенности архитектуры систем чпу, поддерживающих стандарт iso 14649 step-nc
- •2.6.1. Традиционное программирование станков с чпу и стандарт step-nc
- •2.6.2. Язык express
- •2.6.3. Процессы и ресурсы в step-nc
- •2.6.4. Смешанная архитектура
- •3.1. Реализация геометрической задачи
- •3.1.1. Интерпретатор управляющих программ
- •3 .1.2. Интерполятор
- •3.2. Реализация логической задачи управления
- •3.2.1. Формализм описания циклов электроавтоматики
- •3.2.2. Инструментальная поддержка визуального программирования циклов электроавтоматики
- •3.3. Управление электроавтоматикой станков с чпу по типу виртуальных контроллеров SoftPlc
- •3.3.1. Объектно-ориентированный подход при организации математического обеспечения виртуальных контроллеров
- •3.3.2. Архитектура виртуального контроллера
- •3.3.3. Программная реализация виртуального контроллера
- •3.4. Реализация терминальной задачи
- •3.4.1. Интерпретатор диалога оператора в Windows-интерфейсе
- •3.4.2. Специфика построения редактора управляющих программ в коде iso-7bit (в составе терминальной задачи)
- •3.4.3. Редактор-отладчик управляющих программ на языке высокого уровня (в составе терминальной задачи)
2.3.4. Альтернативные структуры проекта в клиентской части
Система Visual IOWorks фирмы VMIC (США) предлагает объектно-ориентированный подход при разработке программ управления электроавтоматикой. Программа визуального программирования содержит следующие ресурсы: последовательности, диаграммы, страницы, библиотечные компоненты и символы (рис. 40).
Программа или ее модули состоят из отдельных последовательностей, которые при управлении становятся независимыми потоками. Независимость последовательностей-потоков означает, что в пределах модуля они выполняются самостоятельно и тем самым управляют исполнением модуля, которому принадлежат. Любая последовательность состоит из трех секций: секции инициализации, тела и закрывающей секции, каждая из которых представлена диаграммой. Предположим, что последовательность определена или как циклическая, или как управляемая по событию.
В первом случае она будет работать непрерывно с заданной скоростью, во втором же случае последовательность будет запущена, если произойдет соответствующее событие. Множество периодических последовательностей одного и того же модуля могут быть запущены с разными скоростями.
Каждый
модуль разрабатывают в визуальной форме
с помощью Visual
IOWorks,
и все последовательности содержатся в
этом файле. Это позволяет однократно
объявить все определения и лучше
организовать всю про
грамму. В то же время каждая последовательность может быть отлажена независимо.
Visual IOWorks поддерживает графические языки стандарта IEC 61131-3. Диаграммы одной последовательности используют один из языков каждая, в пределах же файла можно использовать комбинации различных языков.
Три типа секций в последовательности означают три типа диаграмм: инициализации, тела, закрывающую. Диаграммы состоят из страниц. Ини-циализационная диаграмма выполняет функции конфигурации и инициализирует символы. Диаграммы тела описывают задачи последовательности, которые составляют ее цель. Закрывающая диаграмма деинициализирует входы-выходы, если это необходимо.
Страница представляет собой плоскость, на которой изображается графическая программа. Страницы служат для логической структуризации программы, делая ее более читаемой и сопровождаемой. Части являются графическими программными эквивалентами (в смысле IEC 61131-3) функций при С++ программировании. Каждая часть описывает специфическую задачу, выполняемую программой. Единообразные части сгруппированы в библиотеки.
Символы - это переменные. После их объявления, они приписываются входам и выходам частей для передачи значений из одной в другую. Символы могут быть глобальными в том модуле, где они используются.
Укрупненный алгоритм разработки и исполнения программы управления электроавтоматикой фирмы VMIC показан на рис. 41.
2
Рис. 41. Укрупненный алгоритм разработки и исполнения программы управления электроавтоматикой (фирма VM1C, США)
.3.5. Работа серверной части программы управления электроавтоматикойАлгоритм выполнения программы в нормальном циклическом режиме показан на рис. 42. Содержание отдельных фаз цикла состоит в следующем.
В фазе системной работы программа осуществляет мониторинг контроллера (проверяет достаточность памяти,следитзасменой RUN/STOP, контролирует системные параметры и др.), обрабатывает запросы со стороны портов программирования и расширения. В фазе чтения входов обновляется внутренняя память в соответствии со статусом физических входов (%1). В фазе исполнения выполняется программа, написанная пользователем. В фазе обновления состояния физических выходов (%Q) обновляются из выходной памяти.
Ц
икл
управления состоит в работе контроллера
(процессор управляет системой, читает
входы, выполняет программу и обновляет
выходы) или остановке контроллера
(процессор лишь управляет системой,
читает входы и обновляет таблицу образов
выходов; физические выходы не обновляются,
пока системный 6ht%S
= 0).
Время цикла контролируется сторожевым таймером и не должно превышать определенного значения, например 150 мс, иначе возникает ошибка, останавливающая контроллер. Возможны две ситуации:
Время цикла сканирования меньше или равно настройке сторожевого таймера (150 мс). Это нормальная ситуация, при которой запускается очередной цикл сканирования.
Время сканирования больше настройки сторожевого таймера. Контроллер останавливается, загорается аварийная лампочка и устанавливается системный бит %S = 1.
Диаграмма циклической работы показана на рис. 43.
Другим вариантом выполнения программы служит периодическое управление (рис. 44). В этом случае чтение состояния входов, выполнение программы, обновление выходов осуществляются периодически в соответствии с временем, установленным пользователем при конфигурации (например, от 2 до 150 мс). В начале цикла сканирования контроллера программный таймер устанавливает значение, заданное при конфигурации. Цикл сканирования должен завершиться до истечения данного времени. Если же это время превышено, системный бит %S будет установлен в 1. Время цикла контролируется сторожевым таймером и не должно превы-
ш
ать
150 мс. Иначе возникает ошибка, останавливающая
контроллер. При этом существуют три
ситуации:
Время сканирования меньше или равно периоду, заданному при конфигурации. Это нормальное управление. Следующий цикл сканирования начнется по истечении этого периода.
Время, установленное при конфигурации, меньше времени сканирования, которое в свою очередь меньше времени сторожевого таймера. Системный бит %S принимает значение 1,и пользователь ответственен за сброс его в нуль. Контроллер продолжает работать.
Время сканирования больше времени сторожевого таймера.
Контроллер останавливается, загорается аварийная лампочка, а системный бит становится равным %S = 1.
Диаграмма периодической работы показана на рис. 45.