
- •Устройства программного управления
- •Глава 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.3. Библиотеки классов Java, используемые при создании апплетов
В языке Java все классы производим от класса Object и организованы в библиотеки. Библиотеки классов делятся на встроенные, подключаемые автоматически, например Java, lang, и внешние, подключаемые с помощью оператора import.
На
рис. 57
показана
схема подключения библиотек, используемых
при создании удаленного терминала.
Библиотека JavaNcsCL
поддерживает базовые функции работы
с данными системы ЧПУ, такие как функции
работающие с программируемым
контроллером, управляющие формообразованием,
отслеживающие статус технологического
процесса и системы управления в целом.
BH6nnoTeKyjava.awt
(Abstract
Window
Toolkit,
инст
ру.ментарий абстрактных окон) использовали для создания интерфейса оператора; с классами этой библиотеки работают апплеты Java. С ее помощью можно создавать обычные окна и диалоговые панели, кнопки, переключатели, списки, меню, полосы просмотра, одно- и многострочные поля для ввода текстовой информации. Управляющие элементы библиотеки позволяют создавать интерфейс оператора, не задумываясь о платформе, на которой выполняется апплет Java. Библиотека классов java.applet инкапсулирует базовое поведение апплетов Java. При создании апплета необходимо унаследовать его от класса Applet из библиотеки java.applet. Эта библиотека устанавливает также интерфейсы для подключения апплетов к их документам и классы для работы с мультимедиа.
Мы определились в выборе языка Java при реализации удаленного терминала, но теперь возникает проблема взаимодействия с ядром системы ЧПУ, написанном на С или С++, через TCP/IP канал. Данные, передаваемые в канале, ориентированы на C/C++ приложения оператора. Библиотека Java_NC_CL содержи! классы, обеспечивающие конвертирование структур данных в пространстве между удаленным терминалом Java и C/C+ + ядром системы ЧПУ. Структура трехуровневой библиотеки приведена на рис. 58.
Уровень, отвечающий за связь с ядром системы ЧПУ, реализует классы сокетов и класс таймера в механизме «time-out». Классы SynchronSocket и AsynchronSocket, унаследованные от стандартного класса Socket, обеспечивают синхронный и асинхронный способы обращения к серверу на базе
п
ротокола
TCP,
а класс EmergencySocket,
унаследованный от стандартного
класса DatagramSocket,
осуществляет контроль соединения на
базе протокола UDP.
Следующий уровень реализует базовые
типы запросов (синхронный, асинхронный,
по событию) и механизм уведомления
зарегистрированных клиентов после
обновления данных. Классы последнего
уровня запаковывают отправляемые
данные и распаковывают получаемые.
Утилита Javadoc позволяет создавать интерактивный «help» с описаниями классов в формате HTML и методов (рис. 59), что помогает разрабатывать апплеты удаленного терминала.
2.5.4. Инструментарий разработки удаленного терминала
Р
азработка
программного обеспечения удаленного
терминала наиболее эффективна при
комбинации CASE-системы
(Computer-Aided
Software
Engineering)
Rational
Rose
(фирмы Rational)
со средой JBuilder
(фирмы Borland).
С помощью Rational
Rose
осуществляют проектирование удаленного
терминала, построение диаграммы классов,
состояния, взаимодействия (рис. 60),
реинжениринг модели из исходного кода
[37] и т.д.Среда JBuilder
предлагает профессиональные средства
разработки, такие как: набор «Wizards»
для создания каркасов приложений,
интегрированный браузер Application
Browser
для управления проектом, визуальные
дизайнеры, поддерживающие drag-and-drop
механизмы, графический отладчик,
высокоскоростной компилятор, системы
визуализации UML-кода
и управления конфигурациями, средства
тестирования приложений и т.д. (рис.
61).