
- •Устройства программного управления
- •Глава 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.5.2. Информационные технологии, используемые при создании удаленного терминала
Рассмотрим некоторые информационныетехнологии, которые наиболее удобно применять для решения поставленной задачи.
Во-первых, нас интересует технология «тонкий клиент/сервер», которая предполагает, что запуск и работа приложения, а также управление приложением происходят на сервере (в нашем случае это устройство ЧПУ) [36]. Эта модель использует многопользовательскую операционную систему и технологию передачи полного пользовательского интерфейса на удаленное устройство пользователя. Высокоэффективный протокол «представления Windows» отделяет работу приложений от удаленного терминала и посылает по сети только события клавиатуры и мыши, а также обновления изображений на экране.
Во-вторых, нас интересует объектно-ориентированный язык Java компании «Sun Microsystems)), который уже изначально располагал высокой степенью переносимости при разработке распределенных сетевых приложений. Переносимость достигается использованием виртуальных машин, интерпретирующих байт-коды на разных аппаратных платформах и в разных операционных системах. Апплеты Java служат разновидностью приложений, интерпретируемых виртуальной Java-машиной, встроенной в среду Java-совместимых браузеров. Поскольку web-браузеры разрабатывались для отображения HTML-документов, работа апплетов Java в среде браузера предполагает использование HTML-тэга <APPLET>, вызывающего апплеты.
Схема функционирования апплета выглядит так. Апплеты сохраняются на Интернет-сервере; они загружаются на разные клиентские платформы и выполняются браузером клиентской машины. Загрузка и исполнение осуществляются под надзором системы безопасности, которая защищает от выполнения недопустимых операций. Если браузер обнаруживает HTML-страницу с апплетом, он запускает Java-машину и передает ей информацию <APPLET> тэга. Загрузчик, находящийся внутри Java, отыскивает необходимые классы для выполнения апплета. Как часть процесса загрузки запускается верификатор, проверяющий корректность класса и надежность его кода.
Апплеты позволяют выполнять сложную обработку данных, полученных от сервера. Из соображений безопасности апплеты не имеют доступа к файловой системе локального компьютера. Данные поступают только от сервера. Для повышения производительности Java-приложений в современных браузерах используют компиляцию «на лету» (Just-In-Time compilation, JIT).
При первой загрузке код апплета транслируется в исполняемую программу, которая сохраняется на диске. Таким образом, ЛТ-компилятор преобразует байт-коды в команды процессора целевой машины непосредственно перед выполнением. В результате скорость апплета увеличивается в несколько раз [35].
Высказанные соображения были положены в основу разработки удаленного терминала. На рис. 56 представлена принципиальная схема его подключения. Для связи удаленного терминала с системой ЧПУ использовано стандартное Интернет-соединение. В сравнении страдиционным ин-
т
ерфейсом
оператора, удаленный терминал
предоставляет несколько облегченную
информацию об объекте управления (см.
ниже).
Удаленный терминал выполнен по типу «тонкого клиента». На его экране видна работа апплета Java. Web-сервер, поставляющий данные удаленному терминалу для отображения, интегрирован в систему ЧПУ. Программное обеспечение терминала имеет модульную структуру, причем сами модули реализованы в виде библиотеки.