Httpplanetacam rucollegelearn12 Основы числового программного управления Автоматическое управление
Скачать 4.32 Mb.
|
Таблица 10.3. Соответствие адресов локальным переменным
Теперь можно приступить к созданию несложной, но очень полезной параметрической программы. Довольно часто возникает необходимость в обработке нескольких отверстий, находящихся на некотором радиусе и следующих через определенный угол (рис. 10.7). Чтобы освободить программиста от утомительного переделывания программы в случае изменения радиуса, угла или количества отверстий, создадим такую программу обработки, которая позволит оператору вводить значения радиуса и угла и выполнять операцию сверления по окружности с любыми размерами. Для сверления отверстий будем использовать стандартный цикл G81. Угол, на котором находятся отверстия, отсчитывается от оси X против часовой стрелки (положительный угол). Необходимо задать: радиус окружности, на которой находятся отверстия; начальный угол (угол, на котором находится первое отверстие); относительный угол (угол, через который следуют остальные отверстия); общее количество отверстий. Все эти данные должны быть представлены в параметрическом виде, то есть при помощи переменных. Пусть #100= радиус окружности, на которой находятся отверстия; #101= начальный угол; #102= относительный угол; #103= общее количество отверстий. Рис. 10.7. Создадим параметрическую программу для обработки детали с неизвестными размерами Для того чтобы создать параметрическую программу, необходимо придумать алгоритм, позволяющий изменять поведение программы обработки в зависимости от значений указанных переменных. В нашем случае основой УП является стандартный цикл сверления G81. Остается найти закон, по которому описываются координаты центров отверстий при любых первоначальных значениях радиуса, углов и произвольном количестве отверстий. % О2000 N10 G21 G90 G80 G54 G40 G49 G00 N20 G17 Первые кадры программы будут стандартными. Это номер программы, строка безопасности и код G17 выбора плоскости XY. N30 G16 Так как координаты центров отверстий задаются с помощью радиуса и угла, то есть в полярной системе координат, то в кадре N30 укажем код G16. Далее следуют вызов инструмента (сверла), компенсация его длины и включение оборотов шпинделя. N40 Т1 М6 N45 G43 HI Z100 N50 S1000 M03 #120=0 В кадр N60 поставим цикл сверления G81 и координаты центра первого отверстия. Как вы помните, в случае работы с полярными координатами X обозначает радиус, a Y определяет угол. Значения радиуса и начального угла известны, они устанавливаются переменными #100 (радиус) и #101 (начальный угол). Вводится некоторая переменная #120 с нулевым значением. Эта переменная представляет собой счетчик. Чуть позже вы поймете назначение данной переменной. N60 G98 G81 Х#100 Y#101 Z-5 R0.5 F50 Переменная #103 отвечает за общее количество отверстий. Так как первое отверстие мы уже просверлили, то уменьшим #103 на 1. Таким образом, кадр N70 обеспечивает подсчет оставшихся отверстий. А кадр N75 увеличивает значение переменной #120 на 1. N70 #103=#103-1 N75 #120=#120+1 Если количество отверстий, которые осталось просверлить, равно нулю, то следует отменить цикл сверления, выключить обороты шпинделя и завершить программу. N80 IF [#103 EQ 0] GOTO 120 В кадре N80 происходит сравнение значения переменной #103 с нулем. Если переменная #103 равна нулю, то управление передается кадру N120 в конце программы. Если же переменная #103 не равна нулю, то выполняется следующий кадр. N90 #130=#102*#120 N95#110=#101+#130 Кадр N90 предназначен для определения углового приращения. Новая переменная #110 является суммой #101 (начального угла) и #130 (углового приращения). Кадр N95 обеспечивает расчет угла последующего отверстия. Затем указывается новый угол для сверления, и управление передается кадру N70. N100 Y#110 N110 GOTO 70 При помощи кадра N70 образуется замкнутый цикл, который обеспечивает расчет координат центров отверстий и сверление до тех пор, пока значение переменной #103 не будет равно нулю. Если значение #103 станет равным нулю, то управление будет передано кадру N120. N120 G80 N125 М05 N130 G15 N140 М30 % Заключительные кадры программы предназначены для отмены постоянного цикла (G80), выключения оборотов шпинделя (М05), выключения режима полярных координат (G15) и завершения программы (М30).
Любая параметрическая программа должна быть тщательно проверена, прежде чем она попадет на станок. Скорее всего, у вас не получится проверить такую программу при помощи редактора УП и бэкплота, так как в ней присутствуют переменные. Самая надежная проверка в данном случае – это подстановка значений для входных переменных и «раскручивание» алгоритма уже с конкретными числами. Предположим, что оператор станка получил чертеж детали (рис. 10.8) для обработки отверстий. Он должен установить нулевую точку G54 в центр детали, замерить длину сверла и установить его в шпиндель. Затем следует войти в область переменных MACRO и ввести следующие числовые значения:
Рис. 10.8. Вместо переменных на чертеже стоят конкретные размеры и известно количество отверстий Для проверки созданной параметрической программы достаточно подставить конкретные значения переменных и, «прокручивая» алгоритм, получить обычную программу.
Эту же программу можно записать и в привычном виде:
Теперь попробуем создать макропрограмму, которая будет функционировать аналогично постоянному циклу. Для обработки детали, показанной на рис. 10.8, оператор станка должен ввести и отработать следующую команду: G65 P9010 I12.5 A45 B20 H4 При этом наша параметрическая программа (с новым номером О9010) уже должна находиться в памяти СЧПУ. Как правило, макропрограммы имеют номера с 9000 и выше, недоступны для свободного редактирования. Команда G65 предназначена для немодального вызова макропрограммы. При этом адреса I, А, В, Н в кадре с G65 передают свои числовые значения определенным локальным переменным. Для нахождения соответствия адресов локальным переменным можно воспользоваться табл. 10.3. Можно подстроить переменные в нашей программе, вставив следующие строки в программу: #100=#4 #101=#1 #102=#2 #103=#11 В результате получаем макропрограмму:
Хотя созданная нами параметрическая программа и не является оптимальной, однако она наглядно демонстрирует широкие возможности этого метода по созданию эффективных УП и различных станочных циклов Примеры управляющих программ Программирование в ISO Пример №1. Контурная обработка Необходимо создать УП для обработки наружного контура детали (рис. 11.1) фрезой диаметром 5 мм без коррекции на радиус инструмента. Глубина фрезерования – 4 мм. Подвод к контуру осуществляется по прямолинейному участку.
Пример №2. Контурная обработка с коррекцией на радиус инструмента Необходимо создать УП для обработки наружного контура детали (рис. 11.2) фрезой диаметром 5 мм с коррекцией на радиус инструмента. Глубина фрезерования – 4 мм. Подвод к контуру осуществляется по касательной.
Пример №3. Контурная обработка Необходимо создать УП для чистовой обработки кармана (рис. 11.3) без коррекции на радиус инструмента фрезой диаметром 5 мм. Глубина фрезерования – 2 мм. Подвод к контуру осуществляется по касательной.
|