книги / Основы САПР. CAD CAM CAE
.pdf
|
|
342 |
|
|
|
|
|
|
|
Глава 11. Числовое программное управление |
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Код |
Функция |
Пояснения |
|
|||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
m13 |
Шпиндель по часовой |
Объединенная команда на включение вращения шпин- |
|
|
||||||||||||
|
|
|
|
|||||||||||||||
|
|
|
|
|
|
стрелке, охл~ение |
|
деля и подачи охлад11тсля |
|
|
||||||||
|
|
|
|
|
|
включить |
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
m14 |
|
Шпиндель против ча- |
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
совой стрелки, охлаж- |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
дение включить |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
m15 |
|
|
Движение+ |
|
|
|
Быстрое персмещение или подача в положительном или |
|
|
|||||||
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
отрицательном направлениях |
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
m16 |
|
Движение- |
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
m19 |
|
Остановка шпинделя |
|
|
|
Остановка шпинделя в заранее заданном угловом поло- |
|
|
||||||||
|
|
|
|
|
|
с ориентацией |
|
|
|
ЖCHHII |
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
Аналог m02 за тем исключением, что эта команда требу- |
|
|
||||||
|
|
тЗО |
|
|
Конец ленты |
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
ет обязательной перемотки ленты на символ конца пере- |
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
мотки, что подготавливает систему к обработке |
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
следующей детали |
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
m31 |
|
|
Обход блокировки |
|
|
Временно отключает нормальные блокировки |
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
||||||||||
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
m32- |
|
|
Постоянная скорость |
|
|
|
Контроллер поддерживает постоянную скорость реза- |
|
|
|
||||||
|
|
|
|
|
|
|
|
|||||||||||
|
|
m35 |
|
|
|
резания |
|
|
|
ния, изменяя скорость вращения детали обратно про- |
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
порционалыю расстоянию от кончика резца до оси |
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|||||||
|
|
|
|
|
|
|
|
|
|
вращения. Обычно используется на токарных станках |
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
m40- |
|
|
Переключеине передач |
|
|
|
|
|
|
|
|
|
|
|||
|
|
т50 |
|
|
или коды не использу- |
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
ются |
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11.6. Составпение программ вручную
Составление программы вручную подразумевает, что программист без велкой
помощи со стороны компьютера записывает блоки программы на рукописном
бланке (рис. 11.9). Затем с помощью флексорайтера (Flexowгiteг) из этого блан
ка одновременно получают набранный текст и перфоленту. Каждая строка Руко писного бланка эквивалентна блоку перфоленты и заканчивается символом ~еон
ца блока (ЕОВ).
Сложность программирования вручную заключается в том, что программа оnи
сывает траекторию движения инструмента, а не геометрию детали. В контурliом
регулировании это означает, что координаты задают положение центра peзtta, а
не положение точек реального контура детали. Программист может воспо.~tЪзо
ваться функцией коррекции ua режущий иистру.меит (cиtter compensation), что
позволит ему не вычислять координаты положения центра резца. Однако ему
все равно придется добавить дополнительные точки, соединяющие расче1'1fые траектории. Пример 11.1 иллюстрирует процесс составления прогрэммы (}бра
ботки детали для станка с контурным регулированием.
344 |
Глава 11. Числовое программное управление |
DСкорость шпинделя задается трехзначным «магическим~ кодом. В этом при мере она будет составлять 1740 обjмин (соответствующее магическое чис
ло - 717). Вычисление магического нода по заданной скорости приводится
в работе [91].
Решение
Обработка будет осуществляться резцом диаметром 10 мм. Изначально резец ус
тановлен в начальной точке. Перемещение резца по пунктирным линиям в на
правлениях, указанных стрелками, описывается следующими блоками команд.
1.Выбор режима относительных координат (а не абсолютных):
NOOl G91 ЕОВ
2.Выбор метрических единиц:
N002 G71 ЕОВ
3. Установка резца диаметром 10 мм на 40 мм выше начальной точки:
NООЗ GOO ХО.О УО.О Z40.0 TOl МОб ЕОВ
Обратите внимание, что здесь не используются базовые единиць1 длины.
4.Перемещение из начальной точки в Р1 программируется двумя блоками. Первый блок описывает ускорение до скорости подачи 950 ммjмин. Во вто ром блоке резец приближается к точке Р1 со скоростью подачи 350 м·м;мин.
В конце второго блока центр резца оказывается в точке Р1. Программа долж
на также учесть необходимое перемещение по оси z, чтобы резец опустился
в нужном месте.
N004 GOl Хб5.0 УО.О Z-40.0 F950 5717 МОЗ ЕОВ
N005 GOl XlO.O F350 МОВ ВОВ
Команда МОЗ запускает вращение шпинделя, а МОВ включает охлаждение.
5. Следующие два блока перемешают резец из Р1 в Р3 через Р2:
NООб GOl XllO.O ЕОВ N007 GOl У70.0 ЕОВ
6.Координаты Р4 и Р5 вычисляются по рис. 11.11. Обозначив эти координаты (Х4, У4) и (Xs, Ys) соответственно, мы получим следующие соотношения:
Х4 -Х3 =-(55 -...f15 2 -5 2 )= -40,86;
у4 -Уз =0;
Х5 :....Х4 = -2...f15 2 -5 2 = -28,28;
У5 -У4 =0;
1 = ...f15 2 -5 2 = 14,14;
}=5.
В приведенных выше уравнениях Х3 и У3 - координаты точки Р3, а 1 и]- ко
ординаты центра интерполируемой дуги (рис. 11.11 ).
346 |
Глава 11. Числовое программное управление |
сегментов в тех случаях, когда участки траектории, построенные с учетом от
ступов, не пересекаются. Добавление кривой демонстрирует рис. 11.12, а, до бавление отрезка прямойрис. 11.12, б, а удлинение сегментов кривых рис. 11.12, в. Однако эти функции работают эффективно только с деталями
относительно простой геометрии.
|
.... |
-/ |
.. |
~ |
|
·····.......··" \•'. |
||
•' |
...........·.... |
|
~~
а |
б |
в |
Рис. 11 .12. Достраивание траектории
оТиповые операции обработки, содержащие повторяющиеся операции, хра
нят~я в виде фиксированных циклов, которые при необходимости могут вы зываться программой обработки детали. В некотором смысле эти циклы эк
вивалентны библиотекам стандартных подпрограмм в обычных языках
программирования.
оКроме фиксированных циклов поддерживаются также определяемые пользо вателем последовательности команд, называемые макросами. Эти последова
тельности могут циклически вызываться из программы, причем допускается
также изменение параметров, через которое макросам передаются численные
данные.
Совершенно очевидно, что для всех деталей, за исключением самых простых, ав
томатизация могла бы значительно облегчить труд программиста по сравнению
стем, который требуется при составлении программ обработки вручную.
11.7.Автоматизированное составление программ
Одной из альтернатив составлению программ обработки вручную является
использование языков программирования высокого уровня вместо кодоn, не
удобных для запоминания. Языки высокого уровня основаны на обычных анг лоязычных командах и удобных математических символах. Они могут интерпре тироваться переанальными компьютерами. Программист, работающий с таким языком, должен решать две задачи. Во-первых, он должен определить геометрию
детали в терминах базовых геометрических элементов, таких как точки, Лliнии,
окружности и т. п. Во-вторых, он должен составить программу обработки детали по этим элементам. Отступ автоматически вычисляется самой системой, причем
делается это гораздо эффективнее, чем в ранних системах. |
· |
1. Программист определяет геометрию детали, общую траекторию движениsr рез
ца, скорости подачи и вращения, а также параметры режущего инстру!'.tента.
2.Программист кодирует геометрию детали, траекторию движения резца и об
щие инструкции станку на языке программирования. Получающийся в ре
зультате код называется исходным (soиrce). Одним из наиболее популярных
11.7. Автоматизированное составление программ |
347 |
языков высокого уровня является язык АРТ (Aиtoтatically Prograттed Tools),
подробный рассказ о котором вы найдете в следующем разделе.
3. Исходный код компилируется в машинно-независимый список элементарных перемещений режущего инструмента и вспомогательных сведений об управ
лении станком. Этот список называется файлом координат резца (cиtter location - CL data file). СL-файл имеет двоичный формат, но чаще всего
сопровождается эквивалентной текстовой версией. В этом файле содержатся
сведения о перемещениях режущего инструмента, представленные либо через
абсолютные линейные перемещения GOTO, либо через относительные пере
мещения GODLTA1, вперемешку с которыми располагаются команды управле
ния шпинделем, охлаждением, подачей и т. п. Формат СL-файла определен Международной организацией по стандартизации (lnternational Organization
for StandardizationISO).
4.СL-файл обрабатывается постпроцессором, в результате чего получаются ко
манды, предназначенные для управления конкретным станком. Они имеют
тот же формат, что и блоки ЧПУ, которые записывались на перфоленту,
когда программы составлялись вручную. Поскольку разные контроллеры не только используют файлы разных форматов, но и по-разному интерпретируют
некоторые коды G и М, постпроцессарами традиционно явлЯлись специали зированные программы, рассчитанные на работу с конкретной комбинацией
контроллера и станка. Впрочем, форматы СL-файлов у разных языков про
граммирования тоже разные.
Хотя автоматизированный подход к составлению программ обработки деталей
все еще используется на производстве, кодирование геометрии детали и траекто
рии движения образца на языке высокого уровня в настоящее время постепенно заменяется генерацией СL-файла непосредственно по модели CAD. Этот новей ший подход описан в разделе 11.8.
11.7.1. Язык АРТ
Языков высокого уровня, предназначенных для программирования станков с
ЧПУ, было разработано великое множество, но наиболее удобным и широко ис
пользуемым оказался язык АРТ (Autoтatically Prograттed Tool - Автоматически
проzра.м.мируе.мый иистру.меит). Первый прототип системы АРТ был разрабо
тан в Массачусетском Технологическом институте (МIТ) в 1956 г. В дальней шем программа развивалась совместными усилиями 21 компании, причем фи нансировались эти разработки Ассоциацией аэрокосмической промышленности
(Аегоsрасе Industries AssociationAIA). В результате в 1958 г. была создана сис
тема АРТ 11, а в 1961 г. ее сменила более эффективная АРТ 111. Институт техно
логических исследований штата Иллинойс (Illinois Institute of Technology Research Institute - IITRI) стал направлять дальнейшее развитие программы. Возможности АРТ непрерывно расширялись. Современные версии этого языка
могут управлять станками, имеющими до пяти степеней свободы. За долгие годы
своего существования язык АРТ породил множеспю производных языков.
1 GOTO и GODLTA- команды языка АРТ, означающие перемещение режущего инстру
мента по отрезку прямой. Эти команды оnисаны в разделе 11.7.1.
348 |
Глава 11. Числовое программное управление |
Программа на АРТ состоит из операторов, которые объединяются в пять групп:
Оидентифицирующие операторы, задающие название детали и имя конкретно
го постпроцессора;
Огеометрические операторы, определяющие существенные для операций ма
шинной обработки геометрические особенности детали;
Ооператоры перемещений, управляющие движением режущего инструмента
относительно геометрии детали;
О операторы постпроцессора, задающие параметры обработки, такие как ско
рость подачи, скорость вращения, включение или выключение охлаждения.
Эти параметры передаются в СL-файл в неизменном виде и интерпретируют
ся постпроцессором;
Одополнительные операторы, управляющие дополнительными функциями станка, такими как выбор инструмента, установка допуска и т. п.
В последующих разделах мы расскажем о геометрических операторах и операто рах перемещений и приведем соответствующие примеры. Мы также рассмотрим
важные операторы других типов и изучим программирование макросов на АРТ.
Геометрические операторы Общая форма геометрического оператора выглядит следующим образом:
символ - геометрия 1 описание
СИМ8ол - это название геометрического элемента, играющее ту же роль, что и имя
переменной в других языках высокого уровня. Название может быть длиной до
6 знаков и должно начинаться с буквы. Геометрия - слово, характеризующее тип
объекта (точка, отрезок, плоскость, окружность, конус, сфера, линейчатая поверх
ность, табулираванный цилиндр). Onucauue- численные данные, определяющие
данный объект. Эти данные могут ссылаться на названия других объектов или
включать слова низших уровней (в нижеследующем примере- INTOF), которые указывают тип геометрического определения. В приведеином коде показано, каки
ми способами определяются типичные геометрические слова. В этом и последую щих примерах будут использоваться только точки, отрезки, окружности и плос
кости. Полное описание геометрических операторов можно найти в работе [15].
Существует много способов определить точку (рис. 11.13). В приведеином ниже
коде комментарии даются после точки с запятой; в реальных программах на АРТ
они не используются.
Pl • POINT/X. У. Z
Р2 • POINT/Ll. L2: точка nересечения ранее оnределенных отрезков
РЗ • POINT/CENTER. Cl; центр окружности
Р4 ~ POINT/YLARGE. INTOF. Ll. Cl; точка nересечения nрямой и окружности (выбирается точка
с большей координатой у)
Р5 = POINT/XLARGE. INTOF. Ll. Cl; точка nересечения nрямой и окружности (выбирается точка
с большей координатой х)
Рб ~ |
POINT/YLARGE. |
INTOF |
Cl. С2: |
точка |
nересечения |
двух |
окружностей |
Сс |
большей |
|
координатой у) |
|
|
|
|
|
|
|
|
|
|
Р7 ~ |
POINT/XLARGE. |
INTOF |
Cl. С2: |
точка |
nересечения |
двух |
окружностей |
Сс |
большей |
|
координатой х) |
|
|
|
|
|
|
|
|
|
|
Показанные на рис. 11.14 отрезки определяются следующим образом: |
||||||||||
LI ~ |
LINE/Xl. Yl. Zl. Х2. |
У2. l2; |
отрезок. соединяющий точки (Xl. |
Yl. |
Zl) и СХ2. У2. l2) |
|||||
L2 ~ |
LINE/Pl. Р2: |
отрезок |
между оnределенными ранее |
точками Pl и |
Р2 |
|
|
.1.7. Автоматизированное составление программ |
|
|
|
|
349 |
||
LЗ • LINE/Pl. PARLEL. LO: отрезок. nроходящий |
через точку Pl и nараллельный отрезку LO |
||||||
L4 • LINE/Pl. PERPTO. LO: отрезок. nроходящий |
через точку |
Р2 и nараллельный |
отрезку LO |
||||
L5 |
• LINE/Pl. LEFT. TANTO. Cl: отрезок. nроходящий через |
точку Pl и |
касательный |
|
|||
к окружности Cl (nроходит слева от центра окружности. если смотреть |
из Pl) |
|
|
||||
Lб |
• LINE/Pl. RIGHT. TANTO. Cl: отрезок. nроходящий через |
точку Pl и |
касательный |
|
|||
к окружности Cl (сnрава. если смотреть из Pl) |
|
|
|
|
|
||
L7 |
• LINE/LEFT. TANTO. Cl. LEFT. TANTO. С2: отрезок. касательный слева к окружности Cl |
||||||
и |
слева же к окружности С2. если смотреть от |
Cl к С2 |
|
|
|
Cl |
|
LB |
• LINE/LEFT. TANTO. Cl. RIGHT. TANTO. С2: |
отрезок. касательный слева к окружности |
|||||
и |
сnрава к окружности С2. если смотреть от |
Cl |
к С2 |
|
|
|
Cl |
L9 |
= LINE/RIGHT. TANTO. Cl. LEFT. TANTO. С2: |
отрезок. касательный сnрава к |
окружности |
||||
и |
слева к С2. если смотреть от Cl к С.2 |
|
|
|
|
|
|
LlO = LINE/RIGHT. TANTO. Cl. RIGHT. TANTO. |
С2: отрезок. касательный |
сnрава |
к окружности |
||||
Cl |
и сnрава же к С2. если смотреть от Cl к |
С2 |
|
|
|
|
|
Lll - LINE/Pl. ATANGL. Degree. LO: отрезок. nроходящий через току Pl и составляющий угол
Degree с nрямой LO. Угол отсчитывается nротив часовой стрелки
L1 L2 р4 |
ёР96 2.С |
||
Р1(•Х,У.~ С1 |
~Р5 |
С1 . |
Р7 |
~ |
\!:_}'L1 |
|
Рис. 11.1 З. Задание точек
7Р1
L6
L9
Рис. 11.14. Задание отрезков
Окружности на рис. 11.15 были получены следующими командами:
Cl. CIRCLE/X. У. z. R: окружность |
с центрон в точке (Х. У. ZJ радиуса R |
|||||
С2- CIRCLE/CENTER. PI. RADIUS. R: |
окружность |
с |
центрон в |
Pl |
радиуса R |
|
СЗ- CIRCLE/CENTER. PI. TANTO. LO: |
окружность |
с |
центрон |
в |
Pl. |
касательная к LO |
С4 = CIRCLE/Pl. Р2. РЗ: окружность. |
nроходящая |
|
через три |
|
заданные точки |
11.7. АвтоматизирОванное составление программ |
351 |
Как и геометрические объекты, плоскости тоже могут определяться множеством
способов. Мы приведем лишь два примера:
PL1 - PLANE/P1. Р2. РЗ |
три точки. не лежащие |
на одной прямой. определяют плоскость |
PL2PLANE/PARLEL. PLO. {XLARGE}. D плоскость. |
параллельная PLO и лежащая |
|
XSМALL |
на расстоянии Dот нее: модификатор |
|
YLARGE |
позволяет выбрать одну из двух |
|
YSМALL |
получающихся плоскостей |
|
ZLARGE |
|
|
ZSMALL |
|
|
Операторыперемещений
После определения геометрии детали nрограммист должен описать переме
щение режущего инструмента при nомощи операторов перемещений. Каждый
такой оператор осуществляет nеремещение инструмента в новое положение в пространстве или на плоскости. Операторы nеремещений для систем с позици онным и контурным регулированием отличаются друг от друга и образуют две
большие группы.
В позиционном регулировании используются три оnератора, nозволяющих уста
новить инструмент в заданную точку:
FRОМ/координдты точки
GОТО/координаты точки
GODLTA/6X. дУ. dг
Координаты точки могут задаваться непосредственно или через символ объекта, определенного ранее при помощи одноrо из геометрических операторов. Оnера тор FROM задает начальное положение, то есть точку, из которой начинается движение. Оператор GOTO осуществляет быстрое nеремещение инструмента по nрямой линии из его текущего положения в точку, координаты которой указьша ются в этом операторе. Оператор GODLTA смещает инструмент на заданные прира
щения относительно текущего положения. Этот оnератор очень полезен для смеще
ния инструмента вдоль одной из осей, что часто используется при сверлении.
Пример 11.2
Написать на языке АРТ nрограмму сверления двух отверстий диаметром
0,2 дюйма. Отверстия продельшаются в nластине, изображенной на рис. 11.17.
Начальная точка РО имеет координату О,1 по оси z, благодаря чему между свер лом и деталью в начальный момент имеется некоторый зазор. По той же nричи
не значения z-координат центральных точек отверстий должны быть равны 0,1.
Верхняя плоскость детали имеет координату z = 0,0.
Решение
РО • POINT/0.0. 3.0. 0.1 Р1 - POINT/1.0. 1.0.0.1 Р2 - POINT/2.0. 1.0.0.1 FROM/PO
GOTO/P1
GODLTA/0. О. -0.7
GODLTA/0. О. 0.7 GOTO/P2 GODLTA/0.0. -0.7 GODLTA/0. О. 0.7
GОТО/РО