Разделы
Главная Сапромат Моделирование Взаимодействие Методы Инновации Индукция Исследования Факторизация Частоты
Популярное
Как составляется проект слаботочных сетей? Как защитить объект? Слаботочные системы в проекте «Умный дом» Какой дом надежнее: каркасный или брусовой? Как правильно создавать слаботочные системы? Что такое энергоэффективные дома?
Главная »  Сапромат 

1 ... 17 18 19 20 21 22 23 ... 29

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


а б в

Рис. 11.12. Достраивание траектории

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

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

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

11.7. Автоматизированное составление программ

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

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

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

языков высокого уровня является язык APT (Automatically Programmed Tools), подробныйрассказ о котором вы найдете в следующем разделе.

3. Исходный код компилируется в машинно-независимый список элементарных перемещений режущего инструмента и вспомогательных сведений об управлении станком. Этот список называется файлом координат резца (cutter location - CL data file). CL-файл имеет двоичный формат, но чаще всего сопровождается эквивалентной текстовой версией. В этом файле содержатся сведения о перемещениях режущего инструмента, представленные либо через абсолютные линейные перемещения GOTO, либо через относительные перемещения GODLTA1, вперемешку с которыми располагаются команды управления шпинделем, охлаждением, подачей и т. п. Формат CL-файла определен Международной организацией по стандартизации (International Organization for Standardization - ISO).

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

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

11.7.1. Язык APT

Языков высокого уровня, предназначенных для программирования станков с ЧПУ, было разработано великое множество, но наиболее удобным и широко используемым оказался язык APT (Automatically Pmgrammed Tool - Автоматически программируемый инструмент). Первый прототип системы APT был разработан в Массачусетском Технологическом институте (MIT) в 1956 г. В дальнейшем программа развивалась совместными усилиями 21 компании, причем финансировались эти разработки Ассоциацией аэрокосмической промышленности (Aerospace Industries Association - AIA). В результате в 1958 г. была создана система APT II, а в 1961 г. ее сменила более эффективная APT III. Институт технологических исследований штата Иллинойс (Illinois Institute of Technology Research Institute - IITRI) стал направлять дальнейшее развитие программы. Возможности APT непрерывно расширялись. Современные версии этого языка могут управлять станками, имеющими до пяти степеней свободы. За долгие годы своего существования язык APT породил множество производных языков.

1 GOTO и GODLTA - команды языка APT, означающие перемещение режущего инструмента по отрезку прямой. Эти команды описаны в разделе 11.7.1.



Программа на APT состоит из операторов, которые объединяются в пять групп:

□ идентифицирующие операторы, задающие название детали и имя конкретного постпроцессора;

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

□ операторы перемещений, управляющие движением режущего инструмента относительно геометрии детали;

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

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

В последующих разделах мы расскажем о геометрических операторах и операторах перемещений и приведем соответствующие примеры. Мы также рассмотрим важные операторы других типов и изучим программирование макросов на APT.

Геометрические операторы

Общая форма геометрического оператора выглядит следующим образом: символ = геометрия I описание

Символ - это название геометрического элемента, играющее ту же роль, что и имя переменной в других языках высокого уровня. Название может быть длиной до 6 знаков и должно начинаться с буквы. Геометрия - слово, характеризующее тип объекта (точка, отрезок, плоскость, окружность, конус, сфера, линейчатая поверхность, табулированный цилиндр). Описание - численные данные, определяющие данный объект. Эти данные могут ссылаться на названия других объектов или включать слова низших уровней (в нижеследующем примере - INTOF), которые указывают тип геометрического определения. В приведенном коде показано, какими способами определяются типичные геометрические слова. В этом и последующих примерах будут использоваться только точки, отрезки, окружности и плоскости. Полное описание геометрических операторов можно найти в работе [15].

Существует много способов определить точку (рис. 11.13). В приведенном ниже коде комментарии даются после точки с запятой; в реальных программах на APT они не используются. PI - POINT/A. Y. I

Р2 = POINT/LI. L2: точка пересечения ранее определенных отрезков РЗ = POINT/CENTER. С1: центр окружности

Р4 = POINT/YLARGE. INTOF. LI. С1: точка пересечения прямой и окружности (выбирается точка с большей координатой у)

Р5 = POINT/XLARGE. INTOF. LI, С1: точка пересечения прямой и окружности (выбирается точка с большей координатой х)

Рб = POINT/YLARGE. INTOF. CI. С2: точка пересечения двух окружностей (с большей координатой у)

Р7 = POINT/XLARGE, INTOF. CI. С2: точка пересечения двух окружностей (с большей координатой х)

Показанные на рис. 11.14 отрезки определяются следующим образом:

LI - LINE/M. П. Zl. Х2. Y2. 12: отрезок, соединяющий точки (XI. Yl. Z1) и (Х2. Y2. Z2) L2 = LINE/PI. Р2: отрезок между определенными ранее точками Р1 и Р2

L3 - LINE/PI. PARLEL. L0: отрезок, проходящий через точку Р1 и параллельный отрезку L0

L4 - LINE/PI. PERPTO. L0: отрезок, проходящий через точку Р2 и параллельный отрезку L0

L5 = LINE/PI. LEFT. TANTO. СЛ.: отрезок, проходящий через точку Р1 и касательный

к окружности С1 (проходит слева от центра окружности, если смотреть из Р1)

L6 = LINE/PI. RIGHT. TANTO. С1: отрезок, проходящий через точку Р1 и касательный

к окружности С1 (справа, если смотреть из Р1)

L7 = LINE/LEFT. TANTO. CI. LEFT. TANTO. C2: отрезок, касательный слева к окружности С1 и слева же к окружности С2. если смотреть от С1 к С2

L8 - LINE/LEFT. TANTO. CI. RIGHT. TANTO. C2; отрезок, касательный слева к окружности С1 и справа к окружности С2. если смотреть от С1 к С2

L9 - LINE/RIGHT. TANTO. CI. LEFT. TANTO. C2: отрезок, касательный справа к окружности С1 и слева к С2. если смотреть от С1 к С2

L10 = LINE/RIGHT. TANTO. CI. RIGHT. TANTO. C2. отрезок, касательный справа к окружности С1 и справа же к С2. если смотреть от С1 к С2

Lll - LINE/PI. ATANGL. Degree. L0: отрезок, проходящий через току Р1 и составляющий угол Degree с прямой L0. Угол отсчитывается против часовой стрелки


Рис. 11.13. Задание точек


Рис. 11.14. Задание отрезков

Окружности на рис. 11.15 были получены следующими командами:

С1 - CIRCLE/X. Y. Z. R: окружность с центром в точке (X. Y. Z) радиуса R С2 - CIRCLE/CENTER. PI. RADIUS. R: окружность с центром в Р1 радиуса R СЗ = CIRCLE/CENTER. PI. TANTO. L0: окружность с центром в Р1. касательная к LU С4 - CIRCLE/PI. Р2. РЗ; окружность, проходящая через три заданные точки



C5 = CIRCLE/{XSMALL). LI. {XSMALL}. L2 RADIUS R-XLARGE XLARGE

YSMALL YSMALL

YLARGE YLARGE


Рис. 11.15. Задание окружностей


Рис. 11.16. Действие модификаторов

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

Сб = CIRCLE/XSMALL. LI. XLARGE. L2. RADIUS. 4.0 или

Сб = CIRCLE/YLARGE. LI. YLARGE. L2. RADIUS. 4.О1

С7 = CIRCLE/YSMALL. LI. YLARGE. L2. RADIUS. 3.0

С8 - CIRCLE/YLARGE. LI. YSMALL. L2. RADIUS. 2.0

Окружность Сб можно определить еще двумя способами. Окружности С7 и С8 тоже можно определить четырьмя способами каждую.

Как и геометрические объекты, плоскости тоже могут определяться множеством способов. Мы приведем лишь два примера:

PLl = PLANE/PI. Р2. РЗ ; три точки, не лежащие на одной прямой, определяют плоскость PL2 PLANE/PARLEL. PLO. {XLARGE}. D ; плоскость, параллельная PL0 и лежащая

XSMALL на расстоянии D от нее: модификатор

YLARGE позволяет выбрать одну из двух

YSMALL получающихся плоскостей

ZLARGE

\ ZSMALL

Операторы перемещений

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

В позиционном регулировании используются три оператора, позволяющих установить инструмент в заданную точку:

FROM/координаты точки GOTO/координаты точки GODLTA/Дх. Ду. Az

Координаты точки могут задаваться непосредственно или через символ объекта, определенного ранее при помощи одного из геометрических операторов. Оператор FROM задает начальное положение, то есть точку, из которой начинается движение. Оператор GOTO осуществляет быстрое перемещение инструмента по прямой линии из его текущего положения в точку, координаты которой указываются в этом операторе. Оператор GODLTA смещает инструмент на заданные приращения относительно текущего положения. Этот оператор очень полезен для смещения инструмента вдоль одной из осей, что часто используется при сверлении.

Пример 11.2

Написать на языке APT программу сверления двух отверстий диаметром 0,2 дюйма. Отверстия проделываются в пластине, изображенной на рис. 11.17. Начальная точка РО имеет координату 0,1 по оси 2, благодаря чему между сверлом и деталью в начальный момент имеется некоторый зазор. По той же причине значения z-координат центральных точек отверстий должны быть равны 0,1. Верхняя плоскость детали имеет координату 2 = 0,0.

Решение

РО = POINT/0.0. 3.0. 0.1 PI = POINT/1.0. 1.0.0.1 Р2 = P0INT/2.0. 1.0.0.1 FROM/P0 G0T0/P1

G0DLTA/0. 0. -0.7 G0DLTA/0. 0. 0.7 G0T0/P2

GODLTA/0.0. -0.7 G0DLTA/0. 0. 0.7 GOTO/P0



P0(0, 3.0.1)

- л

0.5 I

Рис. 11.17. Обработка сверлением

Обратите внимание, что глубина сверления в нашем примере сделана равной 0,7, потому что резец начинает движение на высоте 0,1 дюйма над поверхностью и должен заканчивать его на глубине 0,1 дюйма под нижней поверхностью. Если нужно просверлить множество отверстий, а не два, как в нашем примере, те же операторы языка APT должны были бы повторяться множество раз. Использование циклов или подпрограмм позволяет значительно сократить количество повторяющихся операторов в программе. Подробное описание подпрограмм языка APT дается в работе [15].

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

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

G0/{ ТО }. пов. движения. { ТО }. пов. детали. { ТО }. контр, поверхность PAST PAST PAST

ON ON ON

TANTO

Предполагается, что все три задающие поверхности были определены до вызова оператора GO, хотя так бывает и не всегда. Модификаторы ТО, PAST, ON и TANTO указывают желаемое положение режущего инструмента по отношению к соответствующей задающей поверхности. Например, резец, движущийся к контроль-

ной поверхности (CS) вдоль поверхности движения (DS), может оказаться в трех конечных положениях (рис. 11.19).


Рис. 11.18. Задающие поверхности при контурном регулировании


ТО ON PAST

Рис. 11.19. Конечные положения для различных модификаторов

Модификатор TANTO может использоваться только применительно к контрольной поверхности. Действие этого модификатора на положение резца относительно нее показывает рис. 11.20. Положения А и В получаются в результате выполнения следующих команд:

GO/TO. LI. ТО. PS. TANTO. С1

GO/PAST. LI. ТО. PS. TANTO. С1 Пока что мы рассмотрели только задачу помещения режущего инструмента в начальное положение. Теперь займемся перемещением режущего инструмента относительно предшествующего направления движения. Для этого используются следующие операторы:

G0LFT/ влево от предшествующего направления вдоль поверхности движения G0RGT/ вправо от предшествующего направления вдоль поверхности движения G0UP/ : вверх вдоль поверхности движения (то есть от поверхности детали) G0D0WN/ вниз вдоль поверхности движения (то есть к поверхности детали) G0FWD/ ; вперед от касательного положения вдоль направления касательной G0BACK/ : назад от касательного положения вдоль направления касательной Направления движения, соответствующие выполнению каждой из этих команд, приведены на рис. 11.21.

Использование операторов контурного регулирования для решения конкретной задачи демонстрирует пример 11.3.



Начальная точка

У


Направляющая поверхность

Контрольная поверхность

Инструмент

1 -J

Поверхность детали

1 Р, S

Рис. 11.20. Действие модификатора TANT0

GOUP


GORGT

GOFWD

©GOLFT GORGT -

GOBACK Резец Резец

GODOWN

Предшествовавшее направление движения резца

Направление в командах контурного регулирования

Пример 11.3

Написать на языке APT программу, управляющую движением фрезы. Обработать фрезерованием край пластины, изображенной на рис. 11.22. Фреза должна перемещаться вдоль пунктирных линий и дуги в направлении, указанном стрелками. Обратите внимание, что деталь эта - та же самая, что и на рис. 11.1, так ito мы имеем возможность сравнить программирование на языке APT с составлением программы обработки вручную.

Рис. 11.21.


Решение

Предположим, что отрезки, окружность и начальная точка SP (рис. 11.22) уже определены соответствующими геометрическими операторами. Гипотетическая плоскость PS, соответствующая поверхности детали, лежит непосредственно под нижним краем этой детали. Поверхность эта будет ограничивать глубину перемещения фрезы, так чтобы края пластины были обработаны на всю ее глубину. Приведенная ниже последовательность операторов APT задает требуемые перемещения режущего инструмента. Обратите внимание, что операторы GO/TO и GOTO/ имеют разное значение.

FR0M/SP

GD/TO. LI. ТО. PS. ON. L4 G0RGT/L1. PAST. L2 G0L.FT/L2. PAST. L3 G0LFT/L3. PAST. CI G0LFT/C1. PAST. L3 G0LFT/L3. PAST. L4 G0LFT/L4. PAST. LI GOTO/SP

Сравнивая этот пример с примером 11.1, мы видим, что программирование на языке APT позволяет с гораздо большим удобством работать с интерполяцией окружностей, нежели программирование в G-кодах контроллеров.

Пример 11.4 демонстрирует использование модификатора TANTO. Пример 11.4

Написать на языке APT операторы перемещений, требующихся для обработки краев детали, изображенной на рис. 11.23. Считать, что геометрия детали уже определена соответствующими геометрическими операторами. Как и в примере 11.3, поверхность детали PS считается лежащей непосредственно под нижЕ1ей плоскостью детали.




Рис. 11.23. Программируемая деталь

Решение

FR0M/SP

GO/TO. 11

. ТО. PS. ТО. L6

G0RGT/L1.

ТО. L2

G0RGT/L2.

TANTO С1

GOFWD С1

TANTO. L3

G0FWD/L3.

PAST. L4

G0LFT/L4.

PAST. L5

G0LFT/L5.

PAST. L6

G0LFT/L6.

PAST. LI

G0T0/SP

Дополнительные операторы APT

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

Начнем с команд постпроцессора. Они передаются в CL-файл в неизменном виде и позднее обрабатываются постпроцессором.

□ MACHIN/

Оператор осуществляет выбор станка и соответствующего ему постпроцессора. Например,

MACHIN/DRILL, 2

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

□ COOLNT/

Оператор позволяет включать и отключать подачу охлаждающей жидкости. Используется с модификаторами ON, OFF, FLOOD, MIST и TAPKUL. Например:

COOLNT/MIST

COOLNT/FLOOD

COOLNT/OFF

□ FEDRAT/

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

FEDRAT/4.5

□ SPINDL/

Оператор включает шпиндель и позволяет указать скорость его вращения в оборотах в минуту. Например: SPINDL/ON SPINDL/1250, CCLW

□ TOOLNO/

Оператор задает номер используемого инструмента:

TOOLNO/3572, 6 обозначает инструмент № 3572 длины 6 единиц.

□ TURRET/

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

□ END

Оператор останавливает станок, после чего персонал может произвести проверку или заменить инструмент. Требования к допуску используются при аппроксимации криволинейного контурного движения последовательностями отрезков прямых. Допуск характеризуется двумя значениями: INTOL/ и OUTTOL/, соответствующими внутренней и внешней границам (рис. 11.24). Эти значения могут быть указаны, например, так:

INTOL/0.005 OUTTOL/0.003


б

Рис. 11.24. Внешний и внутренний допуски



Оператор CUTTER/ используется для задания диаметра режущего инструмента, который, в свою очередь, учитывается при компенсации. Например, команда CUTTER/0.6 означает, что диаметр резца составляет 0,6 единицы. Если же указать диаметр инструмента, отличающийся от настоящего, можно обработать поверхность с некоторым остатком материала. Это полезно для чернового прохода.

Прочие возможности APT

Подобно обычным языкам программирования высокого уровня, APT предусматривает средства для выполнения арифметических вычислений, организации циклов и вызова подпрограмм (которые в этом языке называются макросами). Повторяющиеся операции можно объединить в подпрограмму и вызывать ее из главной программы столько раз, сколько потребуется. Параметры подпрограммы могут быть обозначены как переменные, так что при вызове макроса им могут быть присвоены любые нужные значения. Идея та же, что и при использовании переменных аргументов в подпрограмме на языке FORTRAN. В качестве демонстрации возможностей макросов мы перепишем программу из примера 11.2:

РО = P01NT/0.0. 3.0. 0.1 FROM/P0

CALL/DRILL. X - 1.0. Y - 1.0. 1 = 0.1. DEPTH - 0.7 CALL/DRILL. X = 2.0. Y = 1.0. Z = 0.1. DEPTH = 0.7 GOTO/P0

Здесь макрос DRILL определен следующим образом:

DRILL = MACR0/X. Y. Z. DEPTH GOTO/X. Y. Z GODLTA/0. 0. -DEPTH GODLTA/0. 0. DEPTH TARMAC

Пример 11.5 показывает, каким образом вспомогательные операторы и макроопределения могут использоваться для решения конкретной задачи.

Пример 11.5

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

Решение

Перерисуем рис. 11.23, обозначив все необходимые точки (рис. 11.25). На рис. 11.25 также показана верхняя поверхность детали, соответствующая координате z = 0,5, тогда как z = 0 определяет плоскость, расположенную непосредственно под нижней поверхностью детали. Двухпроходную схему обработки с разными допусками мы реализуем при помощи макросов. Начнем программу с оператора PARTNO, задающего номер программы или детали. В этой же строке могут приводиться любые дополнительные сведения. Последним оператором в любой программе на APT должен быть FINI (конец программы). В реальную программу не включают ся точки с запятыми и комментарии.

Р6 (2. 7, 0.5)

Р5 (9, 7. 0.5)

Р4 (8, 5, 0.5)

РЗ (6. 4, 0.5)

У Р1 (2, 2, 0.5) Р2 (4. 2, 0.5)

SP (5. О, 1)

Рис. 11.25. Деталь со вспомогательными точками

PARTNO PART П

MACH1N/MILL. 3: выбор станка CLPRINT: распечатка CL-файла OUTTOL/0.002 SP = P01NT/5.0.1 PI = P01NT/2.2.0.5 Р2 = POINT/4.2.0.5 РЗ = POINT/6.4.0.5 Р4 = POINT/8.5.0.5 Р5 = POINT/9.7.0.5 Р6 = POINT/2.7.0.5 PL1=PLANE/P1.P2.P3 PS = PLANE/PARALEL. PL1. ZSMALL CI = CIRCLE/CENTER. P4. RADIUS. LI = LINE/P2. P3 L2 = LINE/P3. RIGHT

0.5 1.0

определение поверхности с уравнением

TANT0. CI LEFT. TANT0. CI P6 PI

L3 = LINE/P5. L4 = LINE/P5. L5 = LINE/P6. L6 = L1NE/P1.P2

MILL = MACRO/CUT. SPIN. FEED. CLNT

CUTTER/CUT

FE0RAT/FEE

SPINDL/SP1N

C00LNT/CLNT

FR0M/SP

G0/T0. LI. TO. PS. ON. L6 G0RGT/L1.T0.L2 G0RGT/L2. TANT0. CI G0FWD/C1. TANT0. L3 L4 L5 L6

G0FWD/L3. PAST. G0LFT/L4. PAST. G0LFT/L5. PAST. G0LFT/L6. PAST. LI G0T0/SP

TERMPC 1URRET/4 CALL/MILL. №0.52. TURRET/6

SPIN=600. FEED=3.0. CLNT=



CALL/MILL. CUT=0.5. SPIN-900. FEED-2.0. CLNT-ON SPINDL/0

COOLN170FF

FIN!

В этом примере для чернового прохода указывается диаметр резца, равный 0,52 дюйма, тогда как реально используется резец диаметром 0,5 дюйма. При этом остается слой толщиной 0,01 дюйма, который и снимается при завершающей обработке (рис. 11.26).


Реальный инструмент (диаметр = 0,5 дюйма)

Рис. 11.26. Задание диаметра резца для грубого прохода

11.7.2. Прочие языки программирования

Существует множество других языков программ обработки деталей, устроенных в большей или меньшей степени подобно APT. В этом разделе мы кратко расскажем о нескольких из них, получивших достаточно широкое распространение. ADAPT (адаптация APT) был первой попыткой адаптировать язык APT для небольших компьютерных систем. Он был разработан фирмой IBM по контракту с ВВС США. ADAPT имеет гибкую модульную структуру, что делает его пригодным для использования на малых и средних компьютерах благодаря возможности добавления и удаления подпрограмм. ADAPT удобен для позиционного регулирования и простейшей контурной обработки деталей в двух и трех измерениях, но непригоден для программирования станков со множеством степеней свободы.

AUTOSPOT (автоматическая система для позиционного регулирования) была разработана IBM в 1962 г. Это популярная программа для задач позиционного регулирования, подобных сверлению. Впоследствии она была объединена с ADAPT.

Язык ЕХАРТ (расширенное подмножество APT) был разработан в Германии несколькими университетами, работавшими над адаптацией APT к европейским условиям. Этот язык совместим с APT и может работать с теми же процессорами. Он существует в трех версиях: ЕХАРТ I (для станков с позиционным регулированием), ЕХАРТ II (для токарных станков) и ЕХАРТ III (для трехмерной контурной обработки).

COMPACT был разработан фирмой Manufacturing Data Systems (MDSI). Его последняя версия COMPACT II является одним из наиболее популярных языков программирования (наряду с APT). Операторы COMPACT II не слишком сильно отличаются от обычных английских терминов, используемых в станоч-

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

SPLIT (язык обработки с внутренней трансляцией) был разработан фирмой Sund-strand Corporation для станков ее собственного производства. Он может использоваться со станками, имеющими до пяти степеней свободы, и позволяет применять как позиционное, так и контурное регулирование. Постпроцессор встроен в саму программу, поэтому у каждого станка должна быть своя собственная версия SPLIT. МАРТ (микро-АРТ) представляет собой подмножество APT, предназначенное для работы на микрокомпьютерах. Ничем, кроме размера, этот язык от APT не отличается.

11.8. Программирование обработки по базе CAD

Как вы, должно быть, заметили из примеров, иллюстрировавших программирование на языке APT, большую часть программ обработки деталей составляют операторы, определяющие геометрию этих деталей. Если деталь уже спроектирована в CAD, с точки зрения программиста вполне естественно воспользоваться данными о ее геометрии, хранящимися в базе данных CAD. Даже если деталь не была спроектирована в CAD, построение ее чертежа в такой системе гораздо удобнее описания ее на языке, подобном APT, особенно если деталь имеет криволинейные границы и поверхности. Перечисленные идеи легли в основу интегрированных систем CAD/САМ. В таких системах геометрические операторы передаются из базы CAD в программу ЧПУ, а в некоторых случаях по ним автоматически составляются операторы перемещений, управляющие движением режущего инструмента. Раньше все эти задачи выполнялись программистом. Составление программы обработки деталей при помощи интегрированной системы CAD/САМ осуществляется в приведенной ниже последовательности. 1. Выделяются элементы геометрии детали, особенно важные при машинной обработке. Эти элементы могут быть выделены в отдельный слой чертежа. Геометрия детали может потребовать редактирования или расширения (с целью включения границ, определяющих движение режущего инструмента). Геометрические сведения, необходимые для составления программы обработки, зависят от того, каким методом и на каком станке производится данная деталь. Например, токарные операции (точение, подрезка торца, проточка канавок и нарезка резьбы) требуют знания двумерного профиля (рис. 11.27). Этот профиль может быть получен непосредственно из базы данных CAD, если деталь была спроектирована при помощи системы автоматизированной разработки чертежей, встроенной в интегрированную систему CAD/САМ. Правда, от пользователя может потребоваться построение профиля в отдельном слое, в противном случае программа попросит его изолировать профиль от других объектов (в частности, аннотаций, которые тоже могут находиться на чертеже). Если деталь была построена в системе объемного моделирования, входящей в состав интегрированной системы, пользователю придется проецировать объемную модель на плоскость для получения ее профиля или же искать исходный профиль, по которому эта деталь строилась. В любом случае для определения профиля может потребоваться некоторая работа в интерактивном режиме.




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

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

Если поверхности детали должны обрабатываться на трех- или иятиосевом фрезеровальном станке в режиме контурного регулирования, для составления программы потребуются геометрические сведения о поверхностях. Эти сведения могут быть перенесены в программу, если деталь была спроектирована в системе поверхностного или объемного моделирования, входящей в состав интегрированной системы CAD/САМ. В этом случае пользователю придется в интерактивном режиме указать поверхности для обработки (определив для них роль поверхностей детали), а также задать соседние с ними поверхности (которые будут играть роль поверхности движения и контрольных поверхностей). Несмотря на необходимость выполнения некоторых действий в интерактивном режиме, преимущества от использования интегрированных систем очень существенны, поскольку описать сложные криволинейные поверхности на языке, подобном APT, очень сложно, а часто оказывается практически невозможно.

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

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

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

5. Построенная траектория движения инструмента может быть проверена на графическом мониторе. Обычно при этом на экран выводится анимнрованиая



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

6. По скорректированным траекториям формируется CL-файл (с координатами точек на этих траекториях), который затем обрабатывается постпроцессором, в результате чего получается файл в машинном коде (MCD-файл). Этот файл и передается контроллеру станка.

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

11.8.1. Построение траекторий

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

Траектории при черновом проходе

Черновой проход может осуществляться по-разному. Первый подход используется в том случае, если форма заготовки изначально близка к форме готовой детали (рис. 11.29). Это бывает, если заготовка получается в результате отливки. Обрабатываемая поверхность получается отступом от конечной поверхности на некоторое расстояние, а расчет для этой поверхности производится точно так же, как и для конечной. Расчет траекторий обработки при чистовом проходе будет описан ниже.


Рис. 11.29. Грубый проход

Второй подход применяется, если заготовка имеет форму бруска, и часто используется для получения таких деталей, как формы и штампы. В этом случае при черновом проходе осуществляется послойное снятие материала в несколько заходов (рис. 11.30). Для каждого слоя рассчитывается своя траектория движения, как и для глубоких выемок (см. рис. 11.28). Граничная кривая для каждого слоя получается пересечением обрабатываемой поверхности с горизонтальной

плоскостью, соответствующей слою. После определения граничной кривой траектория обработки выемки получается отступом от внешней границы внутрь (рис 1128 а) Альтернативный вариант состоит в использовании параллельных прямолинейных траекторий, каждая из которых лежит внутри границ выемки (рис. 11.28, б). Подробное описание процедуры расчетов дается в работе [ЬЪ\.


Траектории при чистовом проходе

Чистовой проход требует аппроксимации кривых, образующих поверхность детали, отрезками прямых, вдоль которых будет перемещаться режущий инструмент. Точность обработки определяется точностью линейной аппроксимации. Она контролируется заданием допуска - максимального отклонения отрезков от соответствующих сегментов кривых. Этот допуск эквивалентен аргументам операторов OUTTOL и INTOL в языке APT.

Существует множество способов выбирать криволинейные образующие. Резец может двигаться вдоль поверхности в разных направлениях. Возможные траектории демонстрирует рис. 11.31. Кривые могут быть получены из уравнения поверхности путем присваивания одному из параметров постоянных значений из некоторого набора. Если обработка идет как в прямом направлении, так и в обратном, это называется шнуровкой (lace cutting). Если же рабочий проход делается только в одном направлении, это называется обычным фрезерованием (nonlace cutting). Режущий инструмент может также двигаться вдоль контуров поверхности или траекторий, полученных пересечением поверхности параллельными плоскостями.

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





1 ... 17 18 19 20 21 22 23 ... 29