автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.07, диссертация на тему:Повышение гибкости и переносимости математического обеспечения персональных систем ЧПУ за счет включения в их архитектуру ISO-процессора

кандидата технических наук
Мартинов, Георги Мартинов
город
Москва
год
1995
специальность ВАК РФ
05.13.07
Автореферат по информатике, вычислительной технике и управлению на тему «Повышение гибкости и переносимости математического обеспечения персональных систем ЧПУ за счет включения в их архитектуру ISO-процессора»

Автореферат диссертации по теме "Повышение гибкости и переносимости математического обеспечения персональных систем ЧПУ за счет включения в их архитектуру ISO-процессора"

РГ6 ОА

2 д 1395

Комитет науки, высшей школы и технической политики Российской Федерации МОСКОВСКИЙ ОРДЕНА ТРУДОВОГО КРАСНОГО ЗНАМЕНИ ГОСУДАРСТВЕННЫЙ ТЕХНОЛОГИЧЕСКИЙ УНИВЕРСИТЕТ

"СТАНКИН"

На правах рукописи

Георги Мартинов МАРТИНОВ

УДК [(621.9.06-529):681.3.06]043.3

ПОВЫШЕНИЕ ГИБКОСТИ И ПЕРЕНОСИМОСТИ МАТЕМАТИЧЕСКОГО ОБЕСПЕЧЕНИЯ ПЕРСОНАЛЬНЫХ СИСТЕМ ЧПУ ЗА СЧЕТ ВКЛЮЧЕНИЯ В ИХ АРХИТЕКТУРУ

СОПРОЦЕССОРА

Специальность 05.13.07 - Автоматизация технологических

процессов и производств

АВТОРЕФЕРАТ

диссертации на соискание ученой степени

кандидата технических наук

Москва 1995

Работа выполнена на кафедре "Компьютерные системы управления" Московского ордена Трудового Красного Знамени государственного технологического университета "СТАНКИН"

Научный руководитель - доктор технических наук,

профессор Сосонкин В.Л.

Официальные оппоненты - доктор технических наук,

профессор Аршанский М.М.

- кандидат технических наук, доцент Лукинов А.П.

Ведущая организация - Научно-исследовательский

институт авиационной технологии, г. Москва

Защита диссертации состоится " 15 " июня 1995 г. в 12 час. на заседании специализированного Совета К 063.42.04 Московского государственного технологического университета "СТАНКИН" по адресу: 101472 г. Москва ГСП К-55, Вадковский пер., д. 3 "а".

С диссертацией можно ознакомиться в библиотеке Московского государственного технологического университета "СТАНКИН".

Афтореферат разослан " 15 " мая " 1995 г.

Ученый секретарь

специализированного Совета, кандидат технических наук, доцент

Горшков А.Ф.

Актуальность. В работе системы числового управления станка выделяют три фазы информационных преобразований и вычислений. Первая фаза состоит во вводе управляющей программы ЧПУ, а также выполнении подготовительных расчетов в машинном масштабе времени. Вторую фазу составляют вычисления, выполняемые в реальном времени. Сюда относятся: интерполяция ' (сложность которой обусловлена формой интерполируемой траектории и размерностью интерполируемого пространства); расчеты разгонов и торможений; стыковка кадров управляющей программы; анализ рабочего пространства; коррекция подачи; анализ и логическая обработка информации о состоянии цикловых механизмов станка и др. Вторая фаза насыщена большим количеством сложных и точных расчетов, повторяющихся с высокой частотой. Третью фазу составляет управление следящими приводами, осуществляемое в реальном времени. В зависимости от наполнения каждой из фаз конкретными задачами ЧПУ формируется и конкретная система управления. Окончательный вариант устройства ЧПУ определяется как выбором вычислительной архитектуры, ядром которой является универсальный или специально разработанный вычислитель, так и выбором электронной элементной базы.

Производители устройств ЧПУ заинтересованы в некоторой структурно гибкой базовой системе управления, на основе которой можно было бы строить многочисленные модификации в ответ на постоянно возникающие и меняющиеся запросы станкостроителей и конечных пользователей. Станкостроителей устраивает функционально гибкая система управления с такими возможностями, которые позволяют наиболее просто адаптировать ее к любому станку.

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

Таким образом, актуальны исследования, направленные на повышение степени гибкости систем ЧПУ с тем, чтобы в максимальной степени удовлетворить запросам производителей систем, станкостроителей и конечных пользователей при сохранении высокой эффективности всех фаз информационных преобразований и вычислений.

Цель работы.Ирпъ работы заключается в повышении гибкости и переносимости математического обеспечения систем ЧПУ, построенных на базе персональных компьютеров, - за счет привлечения новых принципов органи-

зации математического обеспечения. Эти принципы предполагают использование в архитектуре систем ЧПУ программного комплекса, названного сопроцессором, поскольку он воспринимает инструкции языка 180-7Ш, как если бы они были машинными кодами.

Методы асследовання.Диссертация построена на основе положений теории персональных систем управления, теории алгоритмов; методов структурного и объектно-ориентированного программирования. Верификация разработанного программного обеспечения осуществлялась с помощью имитационного моделирования.

Научная новизна.

1. Предложен командный процессор в составе системы ЧПУ, воспринимающий инструкции языка КО-ТЬИ как машинные коды, что позволило принципиально по-новому структурировать систему ЧПУ и повысить быстродействие подготовки и отработки кадров.

2. Предложена поддержка команд системы ЧПУ на основе методов объектно-ориентированного программирования, что позволило кардинально повысить степень гибкости системы и обеспечить переносимость ее математического обеспечения.

3. Предложена организация кольцевого стекового буфера на уровне подготовки кадров управляющей программы, что позволило кардинально расширить возможности эквидистантной коррекции, в том числе обеспечить такие возможности, которыми не располагают современные устройства ЧПУ.

4. Предложена методика построения продвинутой системы ЧПУ, в которой есть предпосылки системы ЧПУ следующего поколения.

Реализация работы.Результаты работы были приняты к внедрению на фирме М^ГОЛОИ (Германия) для системы ЧПУ АМгошс 400.

Апробация работы. Результаты работы докладывались и были одобрены на заседании кафедры "Компьютерные системы управления" Московского государственного технологического университета "Станкин" и на фирме АМ-БШЖ (Германия). По теме диссертации опубликованы 2 работы.

Объем работы. Работа состоит из введения, пяти глав, общих выводов и списка литературы. Работа изложена на 71 страницах машинописного текста, содержит 33 рисунков, 4 таблиц, список литературы из 30 наименований. Общий объем работы 9В страниц.

ГЛАВА 1. СОВРЕЛШЩ0Е. СОСТОЯН ИЕ. ВОН РОСА. ЦЕЛЬ И ЗАДАЧИ

ИССЛЕДОВАНИЯ

Накопление арсенала модульного программно-аппаратного оснащения пер-

сонального компьютера для решения задач реального времени - создает предпосылки для превращения персонального компьютера в универсальную систему управления. Речь идет о построении такого же "мета-инструмента" для задач управления, каким в свое время стал персональный компьютер для решения задач общеинженерного характера. Отсюда возникают предпосылки к созданию концепции персональной системы управления PCS (Personal Control Sistem).

Управляемый объект (процесс) существует в многомерном фазовом пространстве, координатам которого, сопоставлены свойства, состояние, выходные переменные объекта и параметры его жизненного цикла. Технологическая машина привносит в это пространство свои ограничения.

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

Урезание исходного фазового пространства снижает общую эффективность работы оборудования с ЧПУ. Это обстоятельство выдвигает определенные требования к персональной системе управления PCS. Во-первых, система PCS должна вносить минимум собственных ограничений в допустимых фазовых пространствах объекта (процесса) и технологической (или другой машины). Во-вторых, система PCS должна предоставлять оператору ресурсы, которые позволили бы в максимальной степени локализовать его деятельность, избегая, по возможности, привлечения внешних структур, дополнительного персонала и дополнительных вычислительных ресурсов. В-третьих, система PCS должна быть эргономичной, дружелюбной и располагать тремя рабочими модами - информационной, инструментальной и собственно модой управления; причем каждая мода должна иметь интеллектуальную поддержку.

"Виртуальная модель" станка с персональной системой ЧПУ представляет собой многоуровневую иерархическую систему, каждый уровень которой отражает последовательное преобразование исходной машины в машину пользователя, т.е. в виртуальную машину. Технологические функции станка определены процессом резания (нижний уровень иерархии). Параметры процесса образуют многомерное фазовое пространство. Исполнительные органы станка (второй уровень иерархии) материализуют это фазовое пространство. Третий уровень - следящие приводы подачи в системе SERCOS и приводы в системе LONWorks - воспроизводит в заданном пространстве допустимые фазовые тра-

ектории и поддерживает работу цикловой автоматики. Сопроцессор реального времени (четвертый уровень иерархии) формирует программы следящим приводам и приводам цикловой автоматики.

В последнее время в целях завоевания рынка ведутся разработки международных проектов по развитию компьютерных технологий. Намечается тенденция к интеграции платформ, к созданию условий переносимости программного обеспечения, вплоть до полной совместимости, что создает благоприятные условия для эволюции систем управления.

Тенденции развития компыотгрного рынка не могут не оказывать своего влияния на производителей устройств ЧПУ. Создание довольно универсальной ISO-машины (ядра устройства ЧПУ) со своей операционной системой, позволяющей не только решать задачи управления, но и расширять круг решаемых задач; переносимой на различные платформы без изменения самой сути исходной модели, - все это и составляет основу концепции ISO-процессора. Такой подход позволит своевременно реагировать на изменения платформ и запросы на выпуск разных модификаций, использовать различное оборудование независимых поставщиков (OEM), применять версии ЧПУ разных станков по заказам конечных пользователей и др.

В качестве базовых версий . в работе рассмотрены две платформы систем CNC:

- Sinumerik FM-NC, Sinumerik 8400D фирмы SIEMENS, утвердившиеся в качестве неформального стандарта для широкого круга задач;

- Andronic 300/400 фирмы ANDRON, предназначенные для решения особо сложных задач управления, потребляющих огромные вычислительные ресурсы.

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

Для решения этих проблем и создания широко универсальной системы управления необходимо решить следующие задачи:

-разработать гибкую систему,- способную перенастраиваться на различные системы команд и различные вычислительные платформы; -увеличить быстродействие и надежность системы ЧПУ; -обеспечить использование новых алгоритмов интерполяции для обработки сложных поверхностей свободной формы;

-разработать концепцию продвинутой системы ЧПУ.

Подобный набор требований определяет архитектуру системы и влияет на выбор платформы реализации. Это подвинуло на выделение в архитектуре системы ЧПУ ISO-процессора, призванного решать такой комплекс задач:

- обеспечение подготовки геометрически заданной поверхности в реальном времени;

- передача управления процедурам и возврат из них с целью достижения модульности управляющей программы;

- выделение логически независимых задач управления в процессах с целью повышения защиты и надежности;

- использование аппаратных решений для алгоритмов, критичных ко времени исполнения (таких, как алгоритмы интерполяции);

- изменение (вплоть до полной замены) версии языка ISO-7bit;

- подключение различных устройств ввода-вывода, устройства внешней памяти, использование внешних процессоров для обеспечения временного перекрытия при обработке и вводе-выводе;

- увеличение скорости вычисления при использовании длительных процессов с большим объемом данных, доступ к которым осуществляется быстрее за счет использования виртуальной памяти и механизмов хеширования.

ГЛАВА 2. КОНЦЕПЦИЯ ГЕОМЕТРИЧЕСКОГО ISO-ПРОЦЕССОРА ДЛЯ ПОСТРОЕНИЯ УСТРОЙСТВ ЧПУ

В целях удовлетворения противоречивых требований гибкости и быстродействия систем ЧПУ стремятся к разумному сочетанию программных и аппаратных решений. Наилучшую основу-для этого создает модульная архитектура, в которой стандартизованы как отдельные модули, так и их интерфейсы. Декомпозиция на модули позволяет выделить глобальные задачи управления (геометрическую, логическую, технологическую, терминальную и др.). Более глубокая декомпозиция требует структуризации самих задач управления. В работе наиболее подробно этот процесс рассмотрен применительно к наиболее сложной геометрической задаче. Именно здесь увеличение резервов гибкости и ресурсов быстродействия немедленно сказывается на потребительских качествах системы управления в целом.

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

Согласно первому принципу ISO-процессор должен быть построен таким

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

Структура ISO-процессора представляет собой многопроцессорную систему, процессоры которой могут быть реализованы аппаратно, программно или смешанным образом (рис. 1.). Выделены четыре параллельно работающих процессора:

- интерпретации, - предварительная подготовка кадров управляющей программы;

- смежной коррекции, - коррекция существующих кадров или синтез дополнительных кадров при расчете эквидистантных контуров;

- интерполяции, - интерполяция заданного контура;

- диспетчеризации, - управление взаимодействием процессов в реальном времени и разделением между ними общих системных ресурсов.

Система команд является машинным языком ISO-процессора. Для формирования системы команд ISO-процессора используем операторы языка ISO-7bit управляющей программы ЧПУ в ее традиционном виде; однако информацию управляющей программы трактуем иным образом.

Кадр управляющей программы на языке ISO-7bit несет информацию о заявленных алгоритмах и структурах данных. Алгоритмы представлены подготовительными функциями (G-функциями). Структуру данных составляют функции размерных перемещений (X, Y, Z, I, J, К, R), функция подачи (F), функция скорости главного движения (S). Функции структур данных рассматриваем как параметры G- функций, а сами G-функции как системы команд ISO-npo-цессора.

Все команды разбили на несколько групп, определяющих их функциональное назначение. Установили следующие наименования и назначения групп: Condition - организация перехода к следующему кадру; Plane - выбор координатной плоскости и переход к относительной системе координат; Dimension - преобразование размерности к форме, используемой в алгоритмах интерполяции; Correction - расчет эквидистантной траектории; Acceleration - расчеты траекторий на участках разгонов и торможений; TimeDelay - задание выдержки времени; Interpolation - выбор алгоритмов интерполяции.

Активные в данный момент подготовительные функции (команды) образуют G-вектор, размерность которого определяется количеством ортогональных (взаимоисключающих) подгрупп, а следовательно, зависит от конкретной

Интерпретатор

1 ск> ниш кадр

Очередь исходных кадров

Смежный корректор

Текущий кадр1

Очередь кадров для смежной коррекции

Интерполятор

Текущий к.ир

Очередь подготовленных кадров

Диспетчер

Рис. 1. Блок-схема геометрического ГБО-процессора

Рис. 2. Иерархия объектов системы команд 18О-процессора

версии языка.

Структура системы команд предопределяет структуру процессора интерпретации. Интерпретация кадра для каждой группы осуществляется независимо, в связи с этим по числу функциональных групп выделено семь групповых интерпретаторов.

В разных версиях языка 180-7Ьй обозначения подготовительных функций и их алгоритмическое наполнение не совпадают, и это вызывает определенные затруднения у разработчиков систем управления. I

Особенности предлагаемого подхода состоят в том, что функциональное наполнение алгоритмов связано с конкретными подготовительными функциями, т.е. сама структура системы команд отображается в ресурсах системы управления. Такая схема обеспечивает гибкость, поскольку функциональное назначение и возможности системы определяются множеством выбранных (отобранных) подготовительных функций.

Использование подобной схемы означает, что одно и то же устройство ЧПУ может использовать различные системы команд.

В соответствии с используемым объектно-ориентированным подходом каждой команде КО-процессора сопоставлен свой объект. Иерархия объектов системы команд КО-процессора представлена на рис. 2.

В основе иерархии объектов (см. рис. 2) лежит' ТОвуей - абстрактный тип, позволяющий порождать объекты и встраивать все производные от него объекты в коллекции с тем, чтобы производить над ними операции, в том числе и итерационные, как над элементами очереди.

Исходя из того, что все команды 180-7Ы1 подразделяются в системе команд КО-процессора на в-функции и их параметры, строятся частные объекты. Конкретные экземпляры создаются при каждом появлении соответствующих функций (перемещений, подачи и пр.) в исходном коде управляющей программы ЧПУ.

Работа конкретных процессов в КО-процессоре показана на примере интерпретаторов. Сформирована объектная модель интерпретатора. При обработке кадра выполняется попеременный вызов интерпретаторов, ориентированных на свою группу команд. При этом предварительное формирование текущего в-вектора осуществляется О-интерпретатором, который вызывается в первую очередь.

Обращение к алгоритмическим процессам с помощью самих методов делает систему команд независимой от конкретной реализации процессов в системе.

Анализ современных интерполяторов показывает, что под каждый тип ин-

терполяции используют свой алгоритм, несмотря на сходство с другими алгоритмами интерполяции. Добавление нового типа интерполяции влечет за собой создание нового (соответственно добавленному типу) алгоритма интерполяции, перестраивание работы интерполятора в целом.

В работе предложена модель системы, позволяющей максимально использовать ранее отлаженные алгоритмы и с минимальными затратами производить расширение системы. Применение открытой архитектуры в интерполяторе подразумевает добавление и комбинирование новых алгоритмов интерполяции без изменения иринципа работы интерполятора.

Интерполятор должен располагать основными видами интерполяции, а кроме того обладать возможностью осуществлять линейную их комбинацию. Данный подход реализован на базе алгоритмов интерполяции, использующих постоянную несущую частоту.

В составе интерполятора выделены два блока:

- расчета некоторых параметров интерполяции (длины пути, угла поворота и др.);

- циклического расчета координат соответственно частоте интерполяции (при этом число итераций определяется числом дискрет).

Линейная комбинация нескольких алгоритмов подразумевает их параллельное функционирование, при этом возникает проблема синхронизации, для решения которой необходимо, чтобы:

- число итераций в цикле расчета координат было одинаковым и определялось ведущим алгоритмом;

- в конце тела цикла происходила передача управления следующему алгоритму, т.е. чтобы каждый алгоритм интерполяции получал управление по выходе из тела цикла.

Такое построение интерполятора позволяет не только использовать любую комбинацию из существующих алгоритмов, но и работать с вновь добавляемыми алгоритмами без изменения системы работы интерполятора.

В работе предложена аппаратная реализация 150-процессора. Прообразом реализации послужила объектно-ориентированная архитектура (по типу системы ¡АХР- 432). Выделены два блока: блок аппаратной поддержки объектов и загружаемый в ОЗУ (ППЗУ) программный блок.

Аппаратный блок осуществляет поддержку абстрактных данных на трех уровнях. Первый уровень играет роль менеджера объектов. На этом уровне реализуются, в частности, следующие функции: диспетчеризация виртуальных методов; определение типа объекта; распределение и освобождение динамических переменных объектного типа; проверка правильности распределения памяти

под объект при вызове его конструктора.

На втором уровне реализованы базовые объектные типы, которые находятся в основах иерархий (см., например, рис. 2), поскольку методы этих типов наиболее часто используются в процессе выполнения программ. На третьем уровне реализованы системные объекты, такие, как процессы и порты диспетчеризации, - для аппаратной поддержки диспетчерских функций операционной системы реального времени (ОСРВ).

Дополнительно в блок аппаратной поддержки входит модуль аппаратно реализованных стандартных алгоритмов (например, интерполяции). Модуль обеспечивает работу методов О-функций при интерполяции, интерпретации и смежной коррекции кадров управляющей программы.

Программный блок включает в себя модуль системы команд и модуль основных процессов КО-процессора. Система команд определяется версией кода 150-7Ьи, а к основным процессам относятся интерполяция, интерпретация и смежная коррекция.

Идея применения генератора КО-процессора заключается в возможности изменения пользователем:- системы команд КО-процессора и генерации под измененную систему команд соответствующей структуры КО-процессора.

Данный подход позволяет пользователю работать с управляющими программами других систем ЧПУ, избегая привлечения бесконечного количества постпроцессоров и трансляторов; а также и расширять язык 180-7Ы1 под нужды конечного пользователя.

Рассмотрены два метода реализации гибкости КО-процессора, реализуемые на разных уровнях:

- первый метод состоит в обеспечении выбора из жесткого набора системы команд КО-процессора (набор определяется разработчиком);

- второй метод основывается на возможности переопределения и генерации программных модулей КО-процессора конечным пользователем.

ГЛАВА 3. МАТЕМАТИЧЕСКИЙ БАЗИС БЕЗЭКВИДИСТАНТНОГО ПРОГРАММИРОВАНИЯ СО ПРОЦЕССОРА

Основу математического базиса составляют алгоритмы эквидистантной коррекции и алгоритмы интерполяции. Эффективность этих алгоритмов определяет эффективность работы и самого устройства ЧПУ. Проблемы эквидистантной коррекции и интерполяции для устройства ЧПУ не новы, однако концепция ГЗО-процессора привносит в эту область дополнительные оттенки.

Коррекция, как известно, служит целям обработки одной детали с помощью одной УП инструментами различных размеров. Коррекция на инструмент пред-

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

Проблема эквидистантной коррекции включает: подавление элементов контура, вход в эквидистантный контур и выход из него, коррекцию подачи. Эквидистантная коррекция состоит в расчете координат эквидистантного контура, в определении координат точек пересечения экидистант на стыке двух кадров, в синтезе связующих эквидистантных кадров.

При безэквидистантном программировании удается избежать внешних расчетов относительной траектории детали и инструмента, однако эти расчеты должно взять на себя устройство ЧПУ. Задача разработки соответствующего математического обеспечения возникает как при создании устройства ЧПУ для фрезерных станков, так и при моделировании работы устройства.

Все задачи, возникающие в связи с эквидистантной коррекцией, требуют предварительного доопределения способа получения заданной формы детали и являются частью геометрической задачи устройств ЧПУ. Причем эквидистантная коррекция должна быть осуществлена еще на стадии подготовки буферного кадра. Согласно анализу бывает необходим расчет двух последовательных буферных кадров одновременно, что необходимо учитывать при разработке программно-математического обеспечения устройства ЧПУ.

В работе предлагается контурный подход при эквидистантной коррекции, который подразумевает выделение контура и программирование процесса его обработки при активной коррекции на радиус инструмента. Задача КО-про-цессора заключается в отслеживании корректности обработки и, в частности, в ' выявлении ситуации необходимости подавления элемента контура на протяжении всего запрограммированного контура. Этот подход позволяет применять одну и ту же управляющую программу для чистовой и черновой обработки, используя при этом разные инструменты.

Количество кадров, образующих контур, определяет дополнительное число буферизованных кадров, к которым должны быть добавлены сгенерированные дополнительные кадры. Максимальное количество буферизованных кадров закладывается на этапе компиляции исполняемого кода и определяется конкретной системой ЧПУ и управляемым объектом. Это количество соответствует компромиссу между расширением возможностей сопроцессора и ограничением на использование ресурсов системы, в частности, памяти.

Идея алгоритма, реализующего контурный подход при эквидистантной коррекции, заключается в кольцевой стековой организации буферных кадров

по принципу FIFO (First In First Out), показанной на рис. 3. Выделены три режима работы этого кольцевого буфера, имеющие свою специфику: режим заполнения буфера, рабочий режим и режим упразднения буфера. Режим заполнения буфера начинается при активизации эквидистантной коррекции и заканчивается при заполнении кольцевого стека. В рабочем режиме текущий кадр вставляется в конец кольцевого стека, а из начала стека выталкивается откорректированный первый кадр, который становится текущим. Режим упразднения буфера начинается при отмене эквидистантной коррекции и заключается в постепенном выталкивании буферизованных и "откорректирован -ных кадров из кольцевого стека. При попадании кадра в стек производится эквидистантная коррекция смежных кадров, при выталкивании кадра из стека производится проверка на подавление элемента контура.

ГЛАВА 4. МАТЕМАТИЧЕСКИЙ БАЗИС И ОБЪЕКТНО-

ОРИЕНТИРОВАННАЯ МОДЕЛЬ ИНТЕРПОЛЯЦИИ СЛОЖНЫХ ПРОСТРАНСТВЕННЫХ КОНТУРОВ

Одним из основных требований, предъявляемых к устройствам ЧПУ, является возможность отработки сложных пространственных контуров в реальном времени. Поставленная задача выходит за рамки Традиционной аппроксимации при помощи прямых и дуг окружностей и требует применения новейших алгоритмов интерполяции с привлечением соответствующих вычислительных мощностей.

Алгоритмы интерполяции по точным данным, определенным на дискретном множестве точек, как правило, основаны на использовании интерполяционных многочленов Лагранжа. При этом относительно интерполируемой функции вводится предположение, что она обладает производными до некоторого порядка.

Практическое значение для техники ЧПУ имеют интерполяционные кривые класса С2 (обладающие непрерывными производными до второго порядка включительно).

. Интерполяция с помощью сплайнов и кривых Bezier используется некоторыми передовыми фирмами, выпускающими устройства ЧПУ (системы Ап-dronic 300/400, ориентированные на управление обработкой скульптурных поверхностей, используют кубические сплайны класса С2, система Sinumeric 800D фирмы SIEMENS применяет В-сплайны), что и определяет тенденции в этой области.

Сплайновая интерполяция опирается на хорошо формализованные модели, и это обеспечивает ей широкое применение не только в вычислительной

с.

3.

технике, но и в перспективной технике ЧПУ. Привлекательность сплайнов объясняется гладким характером интерполируемых кривых (непрерывность дифференцирования), хорошей алгоритмизацией вычислительных процессов, отсутствием ограничений на сложность пространственных контуров.

В работе рассмотрены некоторые алгоритмы сплайновой интерполяции, применение которых в системах ЧПУ и рекомендовано (параметрический кубический сплайн класса С2, эмпирические сплайны).

Кроме того, рассмотрен способ гладкого восполнения сеточных функций (интерполяция Рябенкова), который несколько отличен от методов теории сплайн-функций, однако весьма эффективен с алгоритмической точки зрения. По сравнению со сплайновой. интерполяцией этот метод не имеет широкого применения, но его достоинства позволяют говорить о перспективности для в техники ЧПУ. Алгоритм позволяет строить интерполируемую функцию без решения линейной алгебраической системы.

Проведена сравнительная характеристика предлагаемых алгоритмов интерполяции и раскрыт принцип их включения в 1БО-процессор. Соответственно общей концепций КО-процессора предложена модель сплайновой интерполяции в терминах объектов.

ГЛАВА 5. РЕАЛИЗАЦИЯ КО-ПРОЦЕССОРА В дИСТЕМЕ ШС

АШКОВДС

Практическая реализация КО-процессора в уже существующей системе СИ С накладывает специфические ограничения и предъявляет дополнительные требования как в отношении принципов построения, так и в отношении функциональных возможностей КО-процессора. В работе рассмотрены основные особенности КО-процессора, связанные с его разработкой и практическим применением в системах С>ГС Апс1готс 300/400 фирмы А^ТОЛОИ (Германия).

Система СЫС Апс1готс, ориентирована на производство "нетехнологичных" деталей, требующих обработки в пространстве четырех-восьми и более-координат, деталей со скульптурными поверхностями свободной формы.

Обработка нетехнологичных деталей на станках с ЧПУ имеет свою специфику операций: сложные многомерные траектории инструмента, не укладывающиеся в привычные комбинации прямых и окружностей; нетрадиционный набор переходов; рабочие процессы, требующие новейших технологий; колоссальное количество условных переходов в управляющих программах ЧПУ, определяющих стиль программирования как "условный". Все этого предполагает мощную программно-аппаратную базу реализации.

В целом архитектура системы Апс1гошс характеризуется:

- четким выделением архитектурных компонентов, связанным с разделением функций между программирующей системой, системой реального времени и системой исполнительных приводов;

- привлечением исключительно высоких вычислительных мощностей, позволяющих использовать современные высокоуровневые средства определения задания, с одной стороны, а также эффективные средства интерпретации этого задания в реальном времени, с другой стороны;

- ориентацией в системе исполнительных приводов подачи на сколь угодно сложнее многокоординатное рабочее пространство произвольно*! конфигурации;

- построением системы только из готовых компьютерных изделий.

Система CNQ Andronic поддерживает четыре режима программирования

станка с ЧПУ (моды). Конечному пользователю предоставлена возможность выбора любой из них при составлении управляющей программы.

Мода ACEDI (Andron Contour Editor) является традиционной, в ней программирование осуществляют путем последовательного ввода графических примитивов (линейных, круговых и сплайновых).

Моды Quickmode и Expertmode базируются на использовании языка Ап-logC в качестве генератора специальных CAM-систем. Они, в основном, ориентированы на работу с деталями, отвечающими принципам групповой технологии.

Мода NC-программирования использует код ISO-7bit /DIN 66025/. Она обязательна при поставке системы CNC Andronic по причине распространенности ISO-стандарта и необходимости распознавания выходного формата CAD-САМ-системы. Поэтому реализация ISO-процессора для этого режима оказалась абсолютно необходимой и вписывающейся в стратегию дальнейшего развития системы Andronic.

Концепция разработки проекта ISO-процессора для систем CNC Andronic 300/400 разрабатывалась, исходя из конкретных положений технологического задания.

ISO-процессор является составной частью программного обеспечения системы CNC Andronic и предназначен для формирования команд и данных, передаваемых IPD-интерполятору системы CNC Andronic. Входной информацией для ISO-процессора служит исходный текст управляющей программы, соответствующий стандарту DIN 66025 и версии системы CNC Andronic таким образам, что на вход ISO-процессора поступает нелинейный поток кадров, включающий условные переходы и вызовы подпрограмм.

При разработке ISO-процессора решены следующие концептуальные за-

16

дачи:

- алгоритмическое обеспечение полной подготовки всей геометрической информации для интерполятора, включая эквидистантную коррекцию, на основе исходной управляющей программы в кодах DIN 66025 версии Andronic;

- улучшение характеристик программной системы, включая повышение надежности и степени защиты данных;

- усовершенствование структурной организации системы;

- расширение функциональных возможностей существующей системы CNC, создание потенциала для будущего расширения возможностей системы управления и повышения ее гибкости при адаптации к новым типам станков.

Концепция ISO-процессора предполагала, во-первых, повышение надежности системы управления за счет совершенной структурной организации математического обеспечения; во-вторых, придание системе управления адаптивных свойств за счет возможного изменения и расширения системы команд. В конечном итоге создание ISO-процессора позволило:

- обеспечить повышенное быстродействие системы при обработке информации управляющей программы;

- упростить отработку больших управляющих программ, выполнение которых длится часами;

- повысить надежность при обработке сложных ответственных деталей;

- оптимизировать использование оперативной памяти, являющейся одним из основных критических ресурсов системы Andronic;

- усовершенствовать структуру организации сложного программного обеспечения системе CNC Andronic;

- повысить надежность системы CNC Andronic за счет опережающей обработки кадров управляющей программы и дополнительной буферизации команд и данных для IPD-интерполятора;

- обеспечить адаптацию системы CNC Andronic к синтаксису и семантике языка управляющих программ в произвольной версии, которая выбрана конечным пользователем;

- обеспечить принцип открытой архитектуры системы;

- расширить функциональные возможности текущей версии системы CNC Andronic;

- расширить сферу применения системы CNC Andronic для управления различными типами станков путем изменения Andronic-версии входного языка DIN 66025.

В работе выявлен и сформулирован набор требований, которые должны предъявляться к составу выполняемых функций, к надежности функциониро-

17

таблжа

Грушшрование С-функщш системы Andronic 300/400

1 |)41IUfl 1 III up. 4*нимя , Параметры Ссмшпкя J

Plane 0 g17 * g18 g19 Выбор плоскости xy Выбор плоскости zx Выбор плосюэсги yz

1 g90* g91 x,y,z xy,z Выбор абсолютных размеров Выбор относигелшых размеров

2 g190 g19i I, J, К I, J, К Выбор абсолютных размеров дагя цешра окружное™ Выбор относительных размеров для центра окружносги

3 g53 * g54..g59 x,y,z Отмена смещения нуля Вшов смещения нуля

Dimension 0 g94 * F Вшов алгоритма преобразования скорости подачи, заданной в мм/мин(дкйм/мин)

1 g70 g71 * Вызов алгоритма преобразования перемещений и подачи, исчисляемых в дюймах и дюйм/мин Вшов алгоритма преобразования перемещений и подачи, исчисляемых в миллиметрах и мм/мин

Correction 0 goo* g01 x, y, z x,y,z Вариант коррекции для выхода к началу эквидисгангы Вариант коррекции для движения по экввдистанте линейного контура

g02 g03 x,y,z,i,j,k,r x,y,z,i,j,k,R Вариант коррекции для движения по эквидисганге кругового когггура по часовой стрелке Вариант коррекции для движения по эквидисганге кругового контура против часовой стрелки

1 g40 * g41 g42 g43 g44 x, y, z x, y, z Отмена коррекции траектории фрезы Коррекция траектории фрезы (инструмент слева от контура) Коррекция траектории фрезы (инструмент справа от контура) Коррекция траектории фрезы на заданную величину (инструмент слева от контура) Коррекция Траектории фрезы на заданную величину (инструмент справа от контура)

Delay g04 x, e Выдержка времени (с)

Interpolation 0 goo* g01 g02 g03 x, y, z x,y,z x,y,z,1,j,k,r x,y,z,i,j,k,r Линейная интерполяция на ускоренном ходу Линейная интерполяция Круговая интерполяция, по часовой стрелке Круговая интерполяция, против часовой стрелки

Output 0# G110 Gill 0 О Установка вывода индикации на SPS Стирание вывода на ивдикации SPS

Laser 0 goo g01 x, y, z x,y,z Установка мощности лазера как ф-ции пути (угкрр.ход) Установка мэщности лазера как ф-ции пути (лин.инг.)

1 g101 g102 g103 g104-g105 V, F, T V, F, T V, F, T T Определение нижних пределшых характеристик лазера Определение средних предельных характеристик лазера Определение верхних предельных характеристик лазера Определения времени задержки

2 # H... Установка мощности лазера

вания ISO-процессора и к контролю входной информации, к техническим средствам и используемым системным ресурсам. Этот набор был определен: с учетом существующих параметров системы CNC Andronic, новых критериев, заложенных в перспективы развития системы; с учетом соблюдения принципа универсальности в отношении управляемого объекта.

При построении ISO-процессора использован объектно-ориентированный подход в рамках возможностей С-компилятора. Это подразумевает использование объектов, включающих совокупность его параметров (данных) и функциональны;. возможностей (алгоритмов, работающих с этими данными). Такой подход позволил обеспечить структурирование ISO-процессора и, следовательно, поддержать его гибкость и адаптивные возможности.

Концепция построения архитектуры и система команд ISO-процессора состоят в следующем. ISO-процессор является составной частью системы CNC Andronic и реализован по типу программного процессора. ISO-процессор интерпретирует кадры управляющей программы с целью формирования входных данных для Интерполятора и работает с Интерполятором, как если бы Интерполятор был составным элементом ISO-процессора. ISO-процессор запускается операционной системой Andronic и читает последовательность кадров из входного буфера. ISO-процессор заканчивает работу, когда входной буфер становится пустым.

Для формирования команд используются операторы языка DIN 66025 управляющей программы ЧПУ в их традиционном виде. Однако информация управляющей программы трактуется альтернативно. Кадр управляющей программы на языке DIN 66025 несет информацию о заявленных алгоритмах и структурах данных. Алгоритмы представлены подготовительными функциями (G-функциями) и деблокирующими функциями (Н). Структуру данных составляют функции размерных Перемещений (А, В, С, X, Y, Z, I, J, К, R), функция подачи (F), функция скорости главного движения (S), функция выходной адресации (О), функция выдержки времени (Е), функция величины напряжения для запуска лазера (V), функция скорости по траектории (F), функция времени (Т). Функции структур данных можно рассматривать как параметры G-функций, а сами G-функции как инструкции системы команд ISO-процессора.

Все команды разбиты на несколько групп, определяющих их функциональное назначение. В каждой группе выделены одна или несколько подгрупп ортогональных G-функций. Активные в данный момент подготовительные функции (команды) образуют G-вектор, размерность которого определяется количеством ортогональных подгрупп, а следовательно, зависит от заданной

конечным пользователем версии языка.

Интерпретация кадра для каждой группы осуществляется независимо. Существуют семь групповых интерпретаторов: Plane, Dimension, Correction, Delay, Interpolation, Output, Laser . Для каждого интерпретатора жестко заданы подгруппы, с которыми он работает, но не определены G-функции, которые входят в каждую подгруппу. Групповой интерпретатор обращается к подготовительной функции как к соответствующей координате G-векгора и передает ей управление. Групповой интерпретатор Correction осуществляет смежную коррекцию кадров и формирует соответствующую Data Line. Необходимость в смежной коррекции возникает при расчете эквидистантных контуров. При генерации дополнительных кадров смежный корректор формирует для них Data Line. Если процесс смежной коррекции выключен, то групповой интерпретатор Correction не работает. Задача остальных групповых интерпретаторов состоит в доопределении Header Line и формировании собственных Data Line в соответствии с определенными в таблице алгоритмами.

В отличие от традиционных систем CNC, которые построены с использованием семантических анализаторов, жестко привязаны к системе команд и не предполагают их модификации, - в структурированной организации ISO-процессора изначально закладывается возможность расширения системы команд, в частности:

- добавление новых G-функций в уже существующие подгруппы;

- добавление новой подгруппы G-функций.

Такой потенциал позволяет расширять систему команд, вплоть до перехода к другой системе. Это и обеспечивает переносимость управляющих программ, написанных на языке DIN 66025. В перспективе возможно будет построить систему подготовки управляющих программ, не использующую бесконечно широкий набор постпроцессоров.

В работе приводится обобщенная функциональная структура ISO-процессора и реализованы три режима работы ISO-процессора (не включая режим ручного управления):

- рабочий режим, осуществляющий обработку исходной управляющей программы;

- режим сохранения состояния, осуществляющий сохранение текущего состояния ISO-процессора с целью возможной последующей загрузки;

- режим загрузки Состояния.

Выбор режима работы ISO-процессора может осуществляться управляющей операционной системой CNC или специальной командой, инициализируемой с пульта оператора.

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

Определено поведение ISO-процессора при нерегулярных ситуациях.

Предварительные испытания ISO-процессора в системе CNC Andronic продемонстрировали его гибкость и способность эволюционировать в отношении своих функциональных возможностей.

Основным направлением развития ISO-процессора является реализация сплайновой интерполяции с расчетом j направляющих косинусов. Это направление является новым для системы CldC Andronic, и оно не реализовано ни в одной из существующих мод.

Использование алгоритма сплайновой интерполяции с расчетом направ- ' ляющих косинусов позволяет применять современные технологии при обработке скульптурных поверхностей и сохранять перпендикулярность оси инструмента относительно обрабатываемой поверхности.

ОБЩИЕ ВЫВОДЫ ПО РАБОТЕ

1. Использование объектно-ориентированного подхода при построении геометрического ISO-процессора позволяет создать универсальную открытую модульную архитектуру широкого спектра систем ЧПУ и разрешить проблему совместимости систем ЧПУ на уровне входного языка.

2. Построение устройства ЧПУ по типу геометрического ISO-процессора раскрывает дополнительные резервы одновременного повышения быстродействия и гибкости. Повышение быстродействия обеспечивается параллелизмом обработки процессов и глубокой аппаратной поддержкой системы команд. Увеличение гибкости обусловлено высоким уровнем декомпозиции геометрической задачи ЧПУ на основе объектно-ориентированного подхода (для разработчиков устройств-ЧПУ) и возможностью загрузки нового файла системы команд (для квалифицированного конечного пользователя). Открытая модульная архитектура геометрического ISO-процессора создает широкие возможности для нового витка эволюции устройств ЧПУ. Программно-аппаратная подготовка кадров гарантирует непрерывность обработки особо сложных поверхностей.

3. Повышение удельного веса аппаратных решений одновременно способствует возрастанию быстродействия и надежности. Объектно-ориентированная модель геометрического ISO-процессора позволяет выявить алгоритмы и объекты, которые целесообразно сводить к аппаратной реализации.

4. Использование интерполяторов с открытой архитектурой позволяет добавлять новые алгоритмы интерполяции без изменения принципа работы самого интерполятора, что дополнительно увеличивает гибкость по мере развития систем

ч

ШУ.

5. Полномерное использование потребителем потенциалов гибкости, за->женных в ISO-процессоре, поддерживается Генератором ISO-процессоров.

6. При безэквидистантном программировании обработка геометрической формации возможна лишь с использованием информации предыдущего кад-I. Синтез искусственной геометрии многовариантен, выбор конкретного вари-гга зависит от поставленных целей.

Процесс входа (выхода) в эквидистантную траекторию (из эквидистантной лектории) аналогичен процессу отработки эквидистантного кадра и должен >двергаться той же проверке на стыкуемость с последующим кадром.

Проблема подавления элемента контура является подзадачей задачи от-:еживания корректности при безэквидистантном программировании контура.

7. Поскольку реализация конкретного алгоритма интерполяции поверхностей ободный формы в системе ЧПУ связана с сопутствующей системой CAD-CAM,

определяющим фактором работоспособности системы становится время рас-та координат точки на заданном интервале и расчета направляющих косину-

iB.

8. Объектная структура программного обеспечения, которая являет собой :рвый шаг к построению инструментальной системы, предназначенной для адификации и адаптации системы ЧПУ к конкретному набору команд, поз-ляет:

- унифицировать представление управляющих программы из формы исходного кета в форму, воспринимаемую Интерполятором системы ЧПУ;

- осуществлять представление этих преобразований в терминах языка вы-кого уровня;

- определить в рамках этой унификации множество объектов, отражающих ть выполняемых преобразований управляющей программы.