Если обработка по одной и той же схеме ведется в разных частях программы, то для такой схемы создается отдельная программа. Эта программа называется подпрограммой. С другой стороны, исходная программа называется основной. Если во время выполнения основной программы появляется команда M98 – вызова подпрограммы, то выполняются команды этой подпрограммы. По завершении выполнения подпрограммы последовательность возвращается в основную программу. Такие программы следует использовать при черновом фрезеровании за несколько проходов, обработки одинаковых контуров и в других случаях. Этот метод позволяет существенно сократить текст управляющей программы и сделать ее более понятной.
Программировать следует в относительной системе координат. Подпрограммы начинаются и пишутся точно так же, как и основная программа, а заканчивается командой М99. При необходимости в одну подпрограмму может быть вложена одна или несколько подпрограмм. Такое вложение называется многоуровневым, максимальное число уровней – четыре.
|
|
Формат:
М98 Р000000;
P- первые два разряда количество повторов, последние четыре номер подпрограммы.
Пример:
O0001; O1000; O2000; O3000;
... ... ... ...
M98 P1000; M98 P2000; M98 P63000; M99;
... ... ...
M30; M99; M99;
Функция зеркальной отработки
При обработке симметричной детали можно существенно сократить время написания управляющей программы, применяя функцию зеркальной отработки программы.
Формат команды:
G51.1 X… Y… Z…; Функция зеркальной отработки программы включена. XYZ – координаты оси симметрии
G50.1; Отмена зеркальной отработки
При написании программ с применением функции зеркального отображения следует помнить, что система ЧПУ самостоятельно пересчитывает все размеры, и изменяет все направления движений на противоположенные. Следовательно, если в подпрограмме написано G2, отработано будет G3, по аналогии вместо G41 – G42.
Недостатком такого программирования является смена типа фрезерования. Если до функции G51.1 фрезерование велось попутное, то после введения функции фрезерование изменится на встречное. После еще одного введения опять станет попутным и так далее. Следовательно, качество получаемых поверхностей бучет различным. Поэтому данную функцию рекомендуется применять только при черновой обработке.
|
|
Функция поворота системы координат.
При программировании фрезерной обработки часто возникает необходимость запуска подпрограммы несколько раз вокруг базовой точки под определенным углом. Например, расфрезеровать пять карманов под углом 72° вокруг центра детали (см. рис).
Рис. Матрица.
Для упрощения программирования таких операций существует функция поворота текущей системы координат G68 и соответственно отмена поворота функция G69.
Формат команды:
G68 X… Y… R…;
G69;
,где
XY – координаты базовой точки
R – угол поворота
Для выше предложенного примера подпрограмма будет выглядеть следующим образом:
O0111; основная программа
T1 M6; фреза диаметром 5мм
M3 S4000;
G0 G90 X0 Y50; позиционирование за заготовкой
G43 H1 Z1; позиционирование за 1мм над заготовкой
M98 P51111; вызов пять раз подпрограммы №1111
G69; отмена поворота системы координат
G28 Z100 Y50; отвод инструмента
M5;
M30;
O1111; подпрограмма обработки кармана
G90 G0 X0 Y11.5; позиционирование в крайней точке над карманом
G91 G1 Y-4.5 Z-3; врезание и обработка первого угла кармана
X-2.6 Y4.5; обработка второго угла кармана
X5.2; обработка третьего угла кармана
X-2.6 Y-4.5;
G0 Z3; выход из заготовки
G68 X0 Y0 R72; поворот текущей системы координат на 72° вокруг нуля системы координат
M99; возврат в основную программу