Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Устройства программного управления.docx
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
2.21 Mб
Скачать

3.4.2. Специфика построения редактора управляющих программ в коде iso-7bit (в составе терминальной задачи)

К редактору управляющих программ предъявляют как стандартные тре­бования, характерные для текстового редактора, так и ряд специфических требований. К стандартным требованиям относятся:

  • ввод и редактирование текста, скроллинг и перелистывание стра­ниц; операции перехода, контекстного поиска и замены;

  • блоковые операции маркировки, удаления, копирования, перемеще­ния, загрузки и добавления блоков.

К специфическим требованиям относятся:

  • перенумерация после изъятия-включения кадров;

  • изменение масштаба и размерности;

• вывод активных G-функций (G-вектора) на основе предыстории кадра;

• синтаксический и семантический контроль;

• диалоговый (графический) ввод кадра и параметров стандартных циклов (файлы графической помощи находятся в составе конфигурацион­ного файла);

• создание управляющих программ (УП) в режиме обучения [61]. Средства отладки программ включают:

  • пространственное графическое моделирование траектории инстру­мента с различением (по цвету, типу и толщине линий) быстрых и рабочих перемещений;

  • активное использование точек останова (break points), используе­мых, в том числе, для выделения фрагментов графического изображения;

• масштабирование графического изображения (zooming);

  • поддержку различных режимов изображения (пошаговый, автома­тический, между точками останова, со skip-пропуском);

  • моделирование оставшейся части программы по отношению к те­кущей позиции станка.

Подобные возможности требуют включения в состав редактора неко­торого ядра и дополнительных подсистем: интерпретатора управляющих программ (для любых версий кода ISO-7bit) и имитатора интерполятора для рисования траекторий.

Говоря о редакторе, необходимо затронуть проблему представления уп­равляющих программ в коде ISO-7bit. Стандарт этого кода, принятый в 1970-х годах, практически не перетерпел изменений и тормозит использо­вание сложных алгоритмов интерполяции (таких, как сплайновая интер­поляция в реальном времени), управление лазерной и электроэррозион-ной обработкой и др. По этой причине производители систем ЧПУ исполь­зуют собственные версии кода ISO-7bit в соответствии с потребностями своего круга пользователей. Многие версии не имеют четкой структуры, а их синтаксис базируется скорее на исключениях, чем правилах, поскольку версии создавались без общей концепции и расширялись стихийно. Тем не менее код ISO-7bit остается действующим стандартом и ни одна систе­ма ЧПУ не может его игнорировать. Заметим также, что все CAD-CAM системы генерируют выходной файл в формате ISO-7bit. В этой связи су­ществует потребность в редакторе, конфигурируемом под конкретную вер­сию кода ISO-7bit.

Конфигуратор формализует код IS07-bit путем выделения в нем не­скольких уровней абстракции. На первом уровне определяется система команд (G-функций) и параметры каждой команды. Следующий уровень разбивает систему команд на группы по функциональному назначению G-функций и формирует G-вектор активных команд. Последний уровень абстракции назначает списки разделителей, комментариев, имен осей и адресов, имен G-функций. Подобным способом удается формализовать лю­бую версию кода IS07-bit и соответствующим способом сконфигуриро­вать редактор.

Основной принцип реализации редактора состоит в его модульности (рис. 99), которая позволяет применить стандартные Windows-решения (механизм «документ-представление», ActiveX-элементы в интерфейсе опе­ратора, концентрацию ресурсов в ресурсных библиотеках для локализа­ции на разных языках), использовать объектно-ориентированный подход, при котором каждому компоненту структуры редактора сопоставлен свой собственный набор объектов.

Первый модуль представляет собой клиентскую часть, определяющую, будет ли редактор независимым приложением или «встроенным» в режим системы ЧПУ. Второй, серверный модуль, выполненный в виде DLL-биб­лиотеки, предлагает клиентской части полный набор сервисных функций и «скрывает» от клиентской части наличие других модулей. Виртуальная ISO-машина, построенная в виде DLL-библиотеки, выполняет такие опе­рации над кадрами, как синтаксический и семантический контроль, кон­вертацию и интерпретацию кадра, вычисление G-вектора и т.д. Компонен­ты графического моделирования траектории инструмента также выделе­ны в набор модулей и реализованы в виде ActiveX-элементов.

В иртуальная ISO-машина считывает конфигурационный файл (*.cfg) и настраивается на текущую версию кода ISO-7bit. Документ управляющей программы серверного модуля осуществляет работу с файлами управляю­щей программы. Файл загружается в документ и отображается (представ­ляется) по-разному в зависимости от текущего режима редактора. Так, одни и те же данные могут быть представлены в виде панели адресов, в тексто­вом или графическом формате или в виде графической модели траекто-

рии. Для интерпретации и конвертации кадра документ обращается к вир­туальной ISO-машине. После интерпретации кадров виртуальная ISO-ма­шина генерирует входной код интерполятора, IPD-код (Interpolator Data) и сохраняет его в файле. IPD-файлы считываются IPD-документом, который отображается в представление графического моделирования.

Клиентская часть генерирует функциональную клавиатуру, которая по­зволяет управлять редактором, а также окно статуса, где в процессе рабо­ты отображается контекстно-зависимая информация.

Редактор управляющих программ имеет архитектуру, открытую для конечных пользователей, разработчиков самого редактора, внешних при­ложений. Для конечных пользователей это прежде всего означает воз­можность конфигурации на различные версии языка ISO-7bit с помощью конфигурационного файла, имеющего текстовый формат. Далее существу­ет возможность конфигурировать интерфейс пользователя, включая сис­тему контекстных подсказок и систему помощи, используя текстовый файл инициализации и соответствующие динамические библиотеки ре­сурсов.

Разработчикам редактора предлагается архитектура, открытая для ин­теграции и компоновки. Так, редактор может быть интегрирован в суще­ствующий интерфейс системы ЧПУ или работать в качестве независимого приложения в технологическом отделе подготовки управляющих программ. Редактор предусматривает различные компоновки с ActiveX-элементами для графического моделирования траектории инструмента. На рис. 100 по­казаны 2D, 3D и OpenGL версии ActiveX-элементов, которые позволяют выбирать отображаемые оси, настраивать координатную систему и область просмотра, выбирать оптимальные значения, фильтровать набор перемен­ных для просмотра их значений (текущих координат, имен инструментов, активных М- и G-функций и т.д.).

Архитектура, открытая для внешних приложений, поддерживается ин­терфейсом OLE IdataObject, с помощью которого осуществляется переда­ча данных через «clipboard» - стандартный Windows-механизм для обме­на данными между приложениями.