Сосонкин_Системы_ЧПУ (1087166), страница 29
Текст из файла (страница 29)
Сосонкин, Г.М. Мартинов. Системы числового программного управленияГоворя о редакторе, необходимо затронуть проблему представления управляющих программ в коде ISO-7bit. Стандарт этого кода, принятый в1970-х годах, практически не перетерпел изменений и тормозит использование сложных алгоритмов интерполяции (таких, как сплайновая интерполяция в реальном времени), управление лазерной и электроэррозионной обработкой и др. По этой причине производители систем ЧПУ используют собственные версии кода IS0-7bit в соответствии с потребностямисвоего круга пользователей. Многие версии не имеют четкой структуры, аих синтаксис базируется скорее на исключениях, чем правилах, посколькуверсии создавались без общей концепции и расширялись стихийно.
Темне менее код IS0-7bit остается действующим стандартом и ни одна система ЧПУ не может его игнорировать. Заметим также, что все CAD-CAMсистемы генерируют выходной файл в формате ISO-7bit. В этой связи существует потребность в редакторе, конфигурируемом под конкретную версию кода ISO-7bit.Конфигуратор формализует код ISO7-bit путем выделения в нем нескольких уровней абстракции.
На первом уровне определяется системакоманд (G-функций) и параметры каждой команды. Следующий уровеньразбивает систему команд на группы по функциональному назначениюG-функций и формирует G-вектор активных команд. Последний уровеньабстракции назначает списки разделителей, комментариев, имен осей иадресов, имен G-функций. Подобным способом удается формализовать любую версию кода ISO7-bit и соответствующим способом сконфигурировать редактор.Основной принцип реализации редактора состоит в его модульности(рис.
99), которая позволяет применить стандартные Windows-решения(механизм «документ-представление», ActiveX-элементы в интерфейсе оператора, концентрацию ресурсов в ресурсных библиотеках для локализации на разных языках), использовать объектно-ориентированный подход,при котором каждому компоненту структуры редактора сопоставлен свойсобственный набор объектов.Первый модуль представляет собой клиентскую часть, определяющую,будет ли редактор независимым приложением или «встроенным» в режимсистемы ЧПУ. Второй, серверный модуль, выполненный в виде DLL-библиотеки, предлагает клиентской части полный набор сервисных функцийи «скрывает» от клиентской части наличие других модулей. ВиртуальнаяISO-машина, построенная в виде DLL-библиотеки, выполняет такие операции над кадрами, как синтаксический и семантический контроль, конвертацию и интерпретацию кадра, вычисление G-вектора и т.д.
Компоненты графического моделирования траектории инструмента также выделены в набор модулей и реализованы в виде ActiveX-элементов.163iveXГлава 3. Задачи управленияXX-Ос_S. Q 5Оо О %о п по1ОююпXXXXXXп• 1 •е« . Q8.оо0)XXП Компо ос1оXграфикщОсмохоI•8II164В.Л. Сосонкин, Г.М. Мартинов. Системы числового программного управленияВиртуальная ISO-машина считывает конфигурационный файл (*.cfg) инастраивается на текущую версию кода ISO-7bit. Документ управляющейпрограммы серверного модуля осуществляет работу с файлами управляющей программы.
Файл загружается в документ и отображается (представляется) по-разному в зависимости от текущего режима редактора. Так, однии те же данные могут быть представлены в виде панели адресов, в текстовом или графическом формате или в виде графической модели траектоНезависимое приложениеИнтерфейс операторасистемы ЧПУ3D симуляцияна базе OpenGLРис. 100.
Версии ActiveX-управляющих элементовдля системы графического моделирования траектории инструментаГлава 3. Задачи управления-| 0 5рии. Для интерпретации и конвертации кадра документ обращается к виртуальной ISO-машине. После интерпретации кадров виртуальная ISO-машина генерирует входной код интерполятора, IPD-код (Interpolator Data) исохраняет его в файле.
IPD-файлы считываются IPD-документом, которыйотображается в представление графического моделирования.Клиентская часть генерирует функциональную клавиатуру, которая позволяет управлять редактором, а также окно статуса, где в процессе работы отображается контекстно-зависимая информация.Редактор управляющих программ имеет архитектуру, открытую дляконечных пользователей, разработчиков самого редактора, внешних приложений. Для конечных пользователей это прежде всего означает возможность конфигурации на различные версии языка ISO-7bit с помощьюконфигурационного файла, имеющего текстовый формат.
Далее существует возможность конфигурировать интерфейс пользователя, включая систему контекстных подсказок и систему помощи, используя текстовыйфайл инициализации и соответствующие динамические библиотеки ресурсов.Разработчикам редактора предлагается архитектура, открытая для интеграции и компоновки.
Так, редактор может быть интегрирован в существующий интерфейс системы ЧПУ или работать в качестве независимогоприложения в технологическом отделе подготовки управляющих программ.Редактор предусматривает различные компоновки с ActiveX-элементамидля графического моделирования траектории инструмента. На рис. 100 показаны 2D, 3D и OpenGL версии ActiveX-элементов, которые позволяютвыбирать отображаемые оси, настраивать координатную систему и областьпросмотра, выбирать оптимальные значения, фильтровать набор переменных для просмотра их значений (текущих координат, имен инструментов,активных М- и G-функций и т.д.).Архитектура, открытая для внешних приложений, поддерживается интерфейсом OLE IdataObject, с помощью которого осуществляется передача данных через «clipboard» - стандартный Windows-механизм для обмена данными между приложениями.3.4.3. Редактор-отладчик управляющих программ на языкевысокого уровня (в составе терминальной задачи)В числе языков высокого уровня управляющих программ можно упомянуть AnlogC (фирма Andron, Германия), CPL (фирма Bosch, Германия)и множество других.
Независимо от версии структуры всех языков однотипны: имеется основная программа и некоторый набор вызываемых подпрограмм. В теле программы представлен список переменных, которые походу реализации программы меняют значения. Процесс выполнения со-166В.Л. Сосонкин, Г.М. Мартинов.
Системы числового программного управленияпровождается информационными сообщениями, предупреждениями, сообщениями об ошибках.На рис. 101 показан экран редактора-отладчика. В окне программы отображается ее текст; здесь же можно расставить точки останова (breakpoints),осуществить пошаговый или автоматический запуск программы. Переменные (или массивы переменных) представлены в отдельном окне в виде«дерева», которое позволяет выбрать те из них, за значениями которых необходимо следить. Текущие значения выбранных переменных (или массивов) демонстрируются в другом окне, причем значения эти можно редактировать.Иерархия вызываемых подпрограмм показана в виде «дерева» в отдельном окне. В окне стека представлены подпрограммы, вызванные к текущему моменту.
Окно OutputWin используется для вывода информации, типкоторой определяется неким набором пиктограмм. Пиктограммы предназначены также для отображения свойств файлов вызываемых подпрограмм.Указанные окна относятся к числу базовых и постоянно присутствуютна экране. Окна со вспомогательной информацией (например, списком точек останова) реализованы как всплывающие. Основные и вспомогательные окна редактора-отладчика образуют ActiveX-управляющий элемент.: %'Л Зад. Перманш jjj@_raooaИ@_RES_DOt@_RES_DOUBLE>@_RES_6WORO%Оaоо12i5 МАЯКЕ! N 1 0 GO XO YO ZO M3 S1OO0>№O G1 X1O F20000;N15X40Z22.11|N3OG3X21 Y5R100:.- JN40O1 Y70?.-:JNS0X4OY190S5O0,-феО 02 XO R-70(6мб5 G2 X40 R-705JN66 02 XO R-70eN70G1 X19Y70CjNeO Y5 M4 ZSOJEM9OG3X0Y0R100RN100G1 X40-^JN110 G37 X40 YO" !N120G38XO.eY0.8R-30Рис.
101. Окно редактора-отладчика167Глава 3. Задачи управленияlUnknownOLEконтейнерПриложениередактора отладчикаАбстракция на уровнеСОМ-сервераАбстракция на ActiveXРис. 102. Архитектура редактора-отладчикаАрхитектура редактора-отладчика включает СОМ-сервер, ActiveX-управляющий элемент, приложение (рис. 102). В этой архитектуре выделеныдва абстрактных уровня. На первом уровне поддерживается работа с различными языками управляющих программ, причем для каждого языка необходимо разработать его собственный СОМ-сервер. Любой СОМ-сервер,однако, должен располагать неизменным набором интерфейсов для работы с переменными, точками останова, буферизованными файлами и сообщениями.
В этом случае ActiveX-управляющий элемент со всеми своимиосновными и вспомогательными окнами способен работать с любой версией языка высокого уровня управляющих программ.Второй уровень абстракции развязывает ActiveX-элемент и механизмуправления им. Это позволяет использовать ActiveX или в составе терминальной задачи системы ЧПУ, или в отдельном приложении на персональном компьютере.ЗаключениеТерминальная задача относится к числу наиболее сложных и наиболееответственных разделов системы ЧПУ при управлении мехатронными системами.
Ее «скелетом» служит интерпретатор диалога оператора вWindows-интерфейсе, для разработки которого использована формальнаяметодика, поддержанная оригинальной инструментальной системой. Дляредактирования, отладки и моделирования управляющих программ применяют два типа конфигурируемых приложений для управляющих программ низкого и высокого уровня соответственно.1ggВ. Л. Сосонкин, Г.М. Мартинов. Системы числового программного управления3.5. Реализация диагностической задачиуправленияСовременные системы ЧПУрасполагают определенными свободными ресурсами вычислительной мощности, которыми необходимо эффективно воспользоваться. Наиболее перспективный способ использования этих ресурсов состоит в создании и развитииподсистемы диагностики, которая в существующих системахпредставлена весьма слабо. В первую очередь следует диагностировать логическую и геометрическую задачи управления.
Представлена концепция виртуальных приборов, построенных по типуActiveX-элементов, которые позволяют использовать разработанные средства диагностики в различных приложениях, представляющих наибольший интерес для конечных пользователей.Особенности использованного далее СОМ-подхода и СОМ-технологии таковы, что разработанные диагностические системымогут быть применены в любых устройствах ЧПУ.Наиболее совершенные системы ЧПУ располагают отдельным режимом диагностики, который реализован в виде программно-аппаратного комплекса и ориентирован на тестирование и глубокое исследование логической и геометрической задач управления.
Диагностика, как правило, выполняется «вне реального времени», что означает- измерения сохраняютсяв памяти, а затем анализируются. Подсистема диагностики способна конфигурировать измерения, считывать измеряемые сигналы, запоминать результаты измерений вместе с результатами конфигурации измерений, распечатывать осциллограммы измерений, считывать файлы с результатамиизмерений и результатами конфигурации измерений, выполнять разнообразные операции над измеренными сигналами. Для диагностики логической задачи управления служит логический анализатор, а для диагностикигеометрической задачи предназначен осциллограф.3.5.1. Понятийный аппарат диагностического процессаК числу важнейших в практике диагностических измерений относятсятакие понятия, как триггер, точка измерения, сигнал, состояние процессаизмерения, виртуальный прибор диагностики.Триггеры используют для формирования события, устанавливающегограницы измерительного горизонта.