G99 fanuc токарный станок

Коды G98 и G99 изменяют способ выполнения стандартного цикла В случае активности кода G98 ось Z будет возвращаться в исходное положение после све

Коды G98 и G99 изменяют способ выполнения стандартного цикла. В случае активности кода G98 ось Z будет возвращаться в исходное положение после сверления каждого отверстия, определенного стандартным циклом. Такая процедура позволяет перемещать зажимы и прихваты по детали. В случае активности кода G99, ось Z будет возвращаться в плоскость R (ускоренный отвод) после сверления каждого отверстия, определенного стандартным циклом, обеспечивая зазор для перемещения к следующей точке XY. После запуска стандартного цикла можно изменить выбор кодов G98/G99, который вступит в силу при выполнении последующих циклов. В некоторых стандартных циклах в качестве дополнительной команды используется адрес Р. В этом случае при достижении дна отверстия будет выполнена пауза, позволяющая улучшить удаление стружки, повысить качество поверхности и снизить силу резания, что в конечном счете повышает точность обработки. Имейте в виду, что если для одного стандартного цикла введено значение для P, оно будет использоваться и в других, если его не отменить (G00, G01, G80 или кнопка Reset (сброс)). Команду S (скорость шпинделя) следует определять в строке программы, содержащей G-код, или до нее. Нарезание резьбы с помощью стандартного цикла требует расчета скорости подачи. Формула расчета подачи: Скорость шпинделя, деленная на Количество витков на дюйм = Подача в дюймах в минуту. В использовании стандартных циклов может помочь Настройка 57. При установке ее значения в «ON» между ускоренными перемещениями производятся остановы. С помощью такой процедуры можно предотвратить образование зазубрин на дне отверстий. Примечание: Адреса Z, R и F обязательны для всех стандартных циклов. Отмена стандартного цикла Код G80 используется для отмены всех стандартных циклов, имейте в виду, что код G00 или G01 также отменяют стандартный цикл. Выбранный стандартный цикл действует до его отмены кодами G80, G00 или G01. 166 96-0117 ред. AL 07-2011

Читайте также:  Ножи для строгальных станков в иркутске

Источник

G-коды для системы ЧПУ FANUC – 0i Model D

(М серия) фрезерный обрабатывающий центр.

Группа G-код Функция
G00 позиционирование
G01 линейная интерполяция
G02 круговая интерполяция/ винтовая (по часовой стрелке)
G03 круговая интерполяция/ винтовая (против часовой стрелки)
G04 выдержка времени
G09 точный останов
G10 настройка данных
G11 отмена режима настройки данных
G17 выбор плоскости XY
G18 выбор плоскости XZ
G19 выбор плоскости YZ
G20 ввод данных в дюймовой системе
G21 ввод данных в метрической системе
G22 включение функции проверки запрограммированного хода
G23 отключение функции проверки запрограммированного хода
G27 проверка возврата на ноль
G28 возврат на ноль
G30 возврат ко второй исходной точке
G31 функция пропуска фрагмента
G33 нарезание резьбы
G37 автоматическая коррекция на инструмент ось Z
G39 круговая интерполяция углового смещения
G40 отмена коррекции на радиус инструмента
G41 коррекция на радиус инструмента – слева
G42 Коррекция на радиус инструмента — справа
G43 Коррекция на длину инструмента
G49 отмена коррекции на длину инструмента
G50 включение масштабирования
G51 выключение масштабирования
G52 установка локальной системы координат
G54 Система координат заготовки 1
G55 Система координат заготовки 2
G56 Система координат заготовки 3
G57 Система координат заготовки 4
G58 Система координат заготовки 5
G59 Система координат заготовки 6
G60 позиционирование в одном направлении
G61 режим точной остановки
G62 автоматическая коррекция угла
G63 режим нарезания резьбы метчиком
G64 режим обработки резанием
G65 вызов простой макропрограммы
G66 вызов модальной макропрограммы
G67 отмена вызова макропрограммы
G68 включение вращения координат
G69 выключение вращения координат
G73 цикл высокоскоростного глубокого сверления
G74 цикл левостороннего нарезания резьбы метчиком
G76 цикл чистового растачивания
G80 отмена цикла
G81 цикл сверления
G82 цикл сверления
G83 цикл глубокого сверления
G84 цикл правостороннего нарезания резьбы метчиком
G85 цикл расточки (растачивания)
G86 цикл расточки (растачивания)
G87 цикл обратной расточки
G88 цикл расточки с ручным отводом
G89 цикл расточки (растачивания)
G90 режим абсолютного позиционирования
G91 режим относительного позиционирования
G92 смещение координат / ограничение постоянной скорости вращения
G94 скорость подачи мм/мин.
G95 скорость подачи мм/об.
G96 поддержание постоянной скорости резания
G97 скорость шпинделя
G98 перемещение инструмента в начальную точку в циклах
G99 перемещение инструмента в точку возврата в циклах
Читайте также:  Электрическая схема шлифовального станка 3е710в
М-код Функция
М00 остановка программы
М01 вспомогательная остановка
М02 конец программы
М03 вращение шпинделя по ЧС
М04 вращение шпинделя против ЧС
М05 остановка вращения шпинделя
М06 автоматическая смена инструмента
М08 включение насоса подачи СОЖ
М09 выключение насоса подачи СОЖ
М10 зажимание поворотного стола (опционально)
М11 разжимание поворотного стола (опционально)
М13 вращение шпинделя по ЧС / включение насоса подачи СОЖ
М14 вращение шпинделя против ЧС / включение насоса подачи СОЖ
М15 остановка вращения шпинделя/ выключение насоса подачи СОЖ
М19 ориентирование шпинделя
М20 отмена ориентирования
М21 зеркальное отображение по оси Х
М22 зеркальное отображение по оси Y
М23 отмена зеркального отображения
М29 режим жесткого нарезания резьбы метчиком
М30 конец программы
М98 вызов подпрограммы
М99 конец подпрограммы

Описание кодов G и М.

Любой программный блок (строка программы) может содержать G – коды, принадлежащие к различным группам. Если G – коды из одной группы специфицированы в одной строке программы, выполняется последний по порядку G – код. Если G – код группы 01 запрограммирован в одной строке с фиксированным циклом обработки деталей, этот цикл отменяется. Строка программы также может содержать несколько совместимых М – кодов. Все G – коды, за исключением однократных, являются модальными.

Модальные коды

Модальные коды действуют до тех пор, пока не будет введен другой код из той же группы, например, G0 (перемещение на холостом ходу).

Однократные G – коды

Однократные G – коды действуют только в том программном блоке, в котором они запрограммированы, например, G4 (выдержка времени).

Начало кадра

Некоторые М – коды активируются до начала перемещения по любой координате, например, M8 (включение подачи СОЖ).

Конец кадра

Некоторые М – коды активируются после прекращения перемещения по любой координате, например, М5 (остановка вращения шпинделя, прекращение подачи СОЖ)

Источник

g99 Fanuc

Купить g99 Fanuc в компании Олниса можно оптом или в розницу. Доставим g99 Fanuc в любой регион России. Можем предложить точный аналог. Работаем напрямую с производителем, не используя посредников.

Компания Fanuc выпускает различное оборудование с числовым программным управлением (ЧПУ), а также дополнительное программное обеспечение. В процессе запуска устройств в эксплуатацию используют специальные «G-коды», которые значительно упрощают ручное написание программ. Ведь японские инженеры позаботились о том, чтобы оператор не тратил лишнего времени на прописывание одних и тех же траекторий.

Основные циклы для токарных и фрезерных станков с ЧПУ.

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

Цикл нарезания резьбы G92 Fanuc.

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

Этот цикл имеет следующие достоинства:

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

Цикл торцевой обработки G94 Fanuc.

Этот цикл поперечной первичной обработки чаще всего используется в случае проточки небольших участков конструкций в виде цилиндра с разницей в диаметрах. Если сказать иначе – это обработка торцов. При необходимости оператор может использовать функцию конического торцевания.

Этот цикл имеет следующие достоинства:

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

Цикл постоянного вращения шпинделя G97 Fanuc.

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

Коды G98 Fanuc и G99 Fanuc для изменения стандартного цикла

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

При использовании кода G99 будет наблюдаться возвращение оси Z в ускоренный отвод после сверления отверстий. Таким образом, обеспечивается зазор для перемещения к новой точке.

Условия покупки.

Приобрести любое оборудование для автоматизации производства, а также дополнительное программное обеспечение можно в компании «Олниса». Мы поставляем технику и компоненты только от ведущих импортных производителей, отправляем товары во все города России и страны СНГ. Кроме того, на продукцию предоставляется долгосрочная гарантия.

Источник

G-код G65, M98 и M99: подпрограмма и макрос для станка с ЧПУ

Чтобы сделать g-код удобным для повторного использования, нам нужен способ централизовать его, а затем получить к нему доступ из программы детали. Язык G-Code предоставляет для этого два разных метода: подпрограмма и макрос. Думайте о каждом как о способе доступа к коду, который хранится в отдельной небольшой мини-программе. Вы «вызываете» этот код, он делает свое дело, а затем он «возвращается» в вашу основную программу, чтобы продолжить выполнение сразу после вызова.

Если у вас есть большая библиотека мощных сниппетов, у вас есть потенциал для реального повышения производительности. Даже если вы не пытаетесь повторно использовать код, использование вызовов может сделать ваш существующий код намного меньше и более легким для понимания. Рассмотрим процесс фрезерования кармана путем перехода на несколько уровней ниже и обработки той же траектории. Зачем повторять один и тот же путь для каждого уровня? GibbsCAM генерирует g-код, который генерирует путь для уровня один раз в качестве подпрограммы, а затем вызывает его несколько раз после установки z-уровня каждый раз глубже. Подходит для программ гораздо меньшего размера. Довольно крутой трюк!

G-коды M98 и M99: вызовы подпрограмм

Давайте начнем с вызовов подпрограмм, потому что они немного проще для понимания, чем вызовы макросов, хотя и менее эффективны. Вызов подпрограммы довольно прост. Сначала вставьте g-код подпрограммы под ее собственным номером подпрограммы — ее собственным номером «O». Ваша программа может выглядеть так:

Как видите, основная программа и подпрограмма имеют свой собственный номер «O». Вызов подпрограммы — «M98», который принимает параметр, сообщающий ему номер «O», где можно найти подпрограмму. Когда он достигает M98, выполнение переходит к подпрограмме. Когда он достигает «M99» в подпрограмме, это заставляет его вернуться в основную программу с того места, где она остановилась, и продолжить работу.

Подпрограмма. Синтаксис вызова

В зависимости от вашего контроллера существует ряд различных синтаксисов, доступных для вызовов подпрограмм.

Хотя существует множество разных стилей, в основном они просто немного по-разному говорят об одном и том же:

— Где мне найти подпрограмму? Чаще всего буква «P», обозначающее адрес. Этот адрес обычно представляет собой букву «O», но многие контроллеры имеют возможность искать «N», если O # не найдено.

— А как насчет повторения? Часто бывает удобно закодировать повтор подпрограммы в той же строке, используя другую букву. Например, «L» может указывать, сколько раз вызывать подпрограмму, прежде чем, наконец, перейти к следующей строке.

— Насколько глубоко я могу вложить подпрограммы и макросы? Ваша программа может вызывать подпрограмму, которая может вызывать другую подпрограмму. Сколько уровней глубины разрешено? У контроллеров есть ограничение на это.

— G-код G65 — это вызов макроса, а G-код M98 — вызов подпрограммы.

— Некоторые контроллеры позволяют G-коду M99 возвращаться к определенной строке вместо того, чтобы просто возвращаться туда, где была вызвана подпрограмма. Я не считаю это хорошей практикой, потому что это сбивает с толку. Если вы хотите «перейти» к строке, для этого есть макрос «GOTO», но он есть не у всех контроллеров.

Вот об этом. Не так уж и плохо. А пока просто сосредоточьтесь на вызове подпрограмм и возвращении из них.

Особенности специальной подпрограммы Haas

Производители контроллеров нередко имеют свои собственные функции «Special Sauce», которые делают их контроллер особенным. То же самое и с локальной подпрограммой Haas, M97. M97 — это быстрая подпрограмма, потому что вам не нужно беспокоиться о настройке чисел «O». Вы можете просто вызвать любой номер «N» с помощью M97 и «пуф», это подпрограмма. Это удобно, хотя у других контроллеров есть возможность искать букву «N», если буква «O» отсутствует, что немного ослабляет паруса быстроходного M97.

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

M97 включен в GWE по умолчанию. Если ваш контроллер не поддерживает его, перейдите в раздел «Настройка G / M-кодов» и отключите M97.

Макрос-вызовы или подпрограмма

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

Макро-вызовы инициируются с помощью G-кода G65 вместо G-кода M98 (или G-кода M97 на Haas). Макро-вызовы имеют так называемые «аргументы». Аргументы позволяют использовать формат словесного адреса для отправки информации в макрос. Допустим, у нас есть специальный цикл сверления глубоких отверстий, который мы создали. Мы хотим передать ему координаты X и Y, где необходимо отверстие, а также координату Z, указывающую глубину сверления. С пользовательским вызовом подпрограммы это может выглядеть так:

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

Это намного легче для глаз, не так ли? И запомнить тоже легче. Как макрос получает доступ к X, Y и Z?

Это происходит с помощью специального процесса, в котором локальные переменные # 1 .. # 33 хранятся на так называемых «уровнях». Когда я вызываю G65, текущие значения всех этих локальных переменных копируются на уровень, и любые буквы, которые я использую при вызове G65, передаются в локальные переменные. В этой таблице показано, как они отображаются в локальные переменные:

Аргумент Локальная переменная
А # 1
B # 2
C # 3
D # 7
E # 8
F №9
H # 11
I # 4
J # 5
K №6
M # 13
Q # 17
P # 18
S # 19
Т # 20
U # 21
V # 22
W # 23
X # 24
Y # 25
Z # 26

Аргументы и в какую локальную переменную они передаются

Как видите, каждое возможное слово-аргумент имеет предварительно назначенную локальную переменную. Если вы используете X, Y и Z, как в нашем примере, их значения будут перенесены в # 24, # 25 и # 26. Довольно прост в использовании и очень удобен.

А что насчет этих уровней?

Как мы уже упоминали выше, подпрограммы и макросы могут быть вложенными. Одина может вызывать другую. Каждый раз, когда вызывается макрос, его локальные переменные сохраняются на уровне. Таким образом, когда выполнение вернется к этому макросу, локальные переменные будут сохранены на уровне, и их можно будет восстановить без изменений. Несмотря на то, что другие вызовы макросов могут использовать те же аргументы слов, которые отображаются на одни и те же локальные переменные, у них есть собственная копия этих локальных переменных на их собственном уровне, поэтому они не мешают. На практике, чтобы объяснить, что происходит с уровнями, требуется больше времени, чем просто использовать аргументы макроса и не беспокоиться о том, не перезаписывается ли локальная переменная другим макросом — это не так.

Но, и это важное «но», оно может быть перезаписано вызовом подпрограммы. Ответ — просто прекратить использование вызовов подпрограмм, когда у вас есть макросы, или, по крайней мере, использовать переменные вне диапазона локальных переменных и понять, что они могут быть перезаписаны.

Примечание: многие контроллеры не имеют макросов.

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

Номера макросов и подпрограмм «O»

Первое, что нужно знать, это то, что числа «O» не должны появляться в каком-либо определенном порядке в вашем программном файле — они просто должны быть уникальными. У вас не может быть двух записей «O1000».

Во-вторых, следует отметить, что на некоторых контроллерах можно обеспечить защиту для некоторых диапазонов чисел О. Это позволяет размещать на машине стандартные макросы, которые невозможно подделать. Например, возможно, вы вложили большие средства в набор пробных макросов и не хотите, чтобы они менялись или перезаписывались. Вам нужно будет проконсультироваться с руководством к вашему контроллеру, чтобы узнать, предлагает ли он защиту, и если да, то как она работает. А пока просто предположим, что у защищенных макросов числа «O» находятся в верхнем диапазоне. Для Fanuc от O0001 до O7999 не защищены, и именно там вы должны разместить свои макросы.

Совет по преобразованию обычного G-кода в подпрограмму или макрос

Я собираюсь завершить это обсуждение советом, который поможет вам преобразовать ваш «обычный» g-код в подпрограмму или макрос.

Допустим, у вас есть g-код, который делает что-то полезное. Возможно, на нем выгравирован ваш логотип на детали. Вы сгенерировали его с помощью своего программного обеспечения CAM, и теперь вы хотите иметь подпрограмму, которая будет выгравировать логотип в любой выбранной вами координате XY. Какой самый быстрый и простой способ сделать это?

Я бы посоветовал преобразовать g-код логотипа для использования относительных координат. Кстати, в G-Wizard Editor есть команда, которая упрощает это — всего несколько шагов. В главе, посвященной кодам G91 и G90, в которой описывается, как относительные и абсолютные координаты работают в ЧПУ.

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

Заключение

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

Источник

Оцените статью