Haas Фрезерный станок. Руководство оператора (96-0117 ред. AL Июль 2011) - часть 7

 

  Главная      Книги - Разные     Haas Фрезерный станок. Руководство оператора (96-0117 ред. AL Июль 2011)

 

поиск по сайту            правообладателям  

 

   

 

   

 

содержание      ..     5      6      7      8     ..

 

 

 

Haas Фрезерный станок. Руководство оператора (96-0117 ред. AL Июль 2011) - часть 7

 

 

96

п

рограммирование

Редактирование позволяет пользователю редактировать программы при помощи всплывающих меню.
Нажмите клавишу EDIT (редактирования) для входа в режим редактирования.  Имеются два окна 

редактирования: окно активной программы и окно неактивной программы. Переключение между двумя 

окнами осуществляется нажатием клавиши EDIT (редактирование). 
Для редактирования программы введите имя программы (Onnnnn) и нажмите клавишу SELECT PROG 

(выбор программы), программа откроется в активном окне. Нажатие клавиши F4 открывает копию 

программы в окне неактивной программы, если в нем нет другой программы. Дополнительно можно 

выбрать другую программу в панели неактивной программы, нажав SELECT PROG (выбор программы) 

из панели неактивной программы, и выбрав программу из списка. Нажмите F4 для обмена программ 

между двумя окнами (сделайте активную программу неактивной и наоборот). Для перемещений по 

тексту программы используйте рукоятку ручного управления и клавиши со стрелками вверх/вниз. 

.

ACTIVE PROGRAM - Onnnnn

(CYCLE START TO SIMULATE)

INACTIVE PROGRAM - Onnnnn

EDIT: EDIT

EDITOR HELP (PRESS F1 TO NAVIGATE)

CLIPBOARD

Всплы-

вающие 

меню

Окно активной программы

Сообщения контекстно-

зависимой справки

Буфер обмена

Окно неактивной программы

Принципиальная схема режима редактирования

Нажмите F1 для осуществления доступа к Popup Menu (всплывающее меню). Используйте левую 

и правую клавиши курсора для выбора темы меню (HELP (справка), MODIFY (изменить), SEARCH 

(поиск), EDIT (редактирование), PROGRAM (программа)), и используте стрелки курсора вверх/вниз 

или ручку толчковой передачи для выбора функции. Нажмите Enter (ввод) для выполнения команд 

меню. Окно контекстно зависимого меню в нижней левой части предоставляет информацию о текущей 

выбранной функции. Для перемещения по сообщению меню используйте клавиши Page Up/Down 

(предыдущая страница/следующая страница). Это сообщение также включает список горячих клавиш, 

которые можно использовать для некоторых функций.

м

еню

 "P

RogRaM

" (

программа

)

Create New Program (Новая программа) 

Этот пункт меню создает новую программу. Для создания новой программы введите имя программы 

(Onnnnn) (несуществующей в каталоге программ) и нажмите клавишу ENTER (ввод). "Горячая" 

клавиша - Select Prog (выбор программы)

Select Program From List (Выбор программы из списка)

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

помощью клавиш курсора и рукояткой ручного управления. Нажатие клавиши ENTER (ввод) или SE

-

LECT PROG (выбрать программу) осуществляет выбор выделенной программы и ее отображение на 

дисплее вместо списка программ. Горячая клавиша - Select Prog (выбор программы)

97

Duplicate Active Program (Копировать активную программу)

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

ввести номер (Onnnnn) для копии программы. 

Delete Program From List (Удалить программу из списка)

Этот пункт меню предназначен для удаления программы из программной памяти. Горячая клавиша - 

Erase Prog (удаление программы)

Обмен местами программ редактора

Помещает активную программу в окно неактивной программы, а неактивную программу - в окно 

активной программы. 
Горячая клавиша -F4

Switch To Left Or Right Side (Переключиться на левую / правую сторону)

Осуществляется переключение между активной и неактивной программой для редактирования. 

Неактивная и активная программы остаются в своих окнах. Горячая клавиша - Edit (редактирование)

м

еню

 "e

dit

" (

редакТироваТь

)

Undo (Отменить)

Отменяет до 9 последних изменений. Горячая клавиша - Undo (отменить предыдущее действие)

Select Text (Выделить текст)

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

с помощью клавиш со стрелками, начала, конца, пред./след. стр. или рукоятки толчковой подачи 

к последней выделяемой строке и нажмите клавишу F2 или клавишу Write/Enter (запись/ввод). 

Выбранный текст будет выделен. Для отмены выделения блока нажмите клавишу UNDO (отменить). 

Горячая клавиша - F2 для начала выделения, F2 или Write (запись) для окончания выделения

Move Selected Text (Переместить текст)

Эта функция работает совместно с функцией «выделить текст». Для перемещения выделенного текста 

в новое положение установите курсор в нужное место и нажмите клавишу WRITE/ENTER (ввод). 

Выделенный текст будет перемещен в позицию после курсора (>). 

Copy Selected Text (Копировать текст)

Выделите часть текста, как это описано выше, и нажмите клавишу WRITE/ENTER (ввод). Выбранный 

текст будет выделен. Переместите курсор в позицию вставки копии текста. Нажмите клавишу F2 или 

клавишу Write/Enter (запись/ввод) для вставки выбранного текста в позицию после курсора (>). Горячая 

клавиша - Выберите текст, наведите курсор и нажмите Write (запись)

Delete Selected Text (Удалить текст)

Выделите часть текста, как это описано выше, и нажмите клавишу WRITE/ENTER (ввод). Выбранный 

текст будет выделен. Нажмите клавишу WRITE/ENTER (ввод) для удаления выделенного текста. Если 

блок не выбран, будет удален выделенный элемент.

Cut Selection To Clipboard (Вырезать в буфер обмена)

Перемещает весь выделенный текст из текущей программы в новую программу, называемую буфером 

обмена. Текст, находившийся до этого в буфере обмена, удаляется.

Copy Selection To Clipboard (Копировать в буфер обмена)

Копирует весь выделенный текст из текущей программы в новую программу, называемую буфером 

обмена. Текст, находившийся до этого в буфере обмена, удаляется. 

Paste From Clipboard (Вставить из буфера обмена)

Содержимое буфера обмена вставляется в текущую программу в строке, следующей за курсором.

98

м

еню

 "s

eaRCH

" (

поиск

)

Find Text (Найти текст)

Этот пункт меню предназначен для поиска текста или программного кода в текущей программе. 

Find Again (Найти далее)

Этот пункт меню предназначен поиска следующего вхождения этого же текста или программного кода. 

Find And Replace Text (Найти и заменить текст)

Этот пункт меню предназначен для поиска в текущей программе конкретного текста или программного 

кода с предоставлением возможности замены каждого вхождения (или сразу всех) другим G-кодом.

м

еню

 "M

odiFy

" (

измениТь

)

Remove All Line Numbers (Удалить номера строк)

Этот пункт меню автоматически удаляет из текущей программы все N-коды (номера строк). При 

выделении группы строк удаление номеров производится только у выделенных строк.

Renumber All Lines (Перенумеровать строки)

Этот пункт меню перенумеровывает все выделенные блоки программы или, в случае выделения 

группы строк, перенумеровывает выделенные строки.

Renumber By Tool (Перенумеровать по инструментам)

Этот пункт меню производит поиск Т-кодов (инструмент), выделяет блок программы до следующего 

Т-кода, и перенумеровывает N-коды (номера строк) в пределах выделения.

Reverse + & - Signs (Замена "+" и "-")

Этот пункт меню производит замену знака числовых значений на противоположный. Для запуска 

процесса нажмите клавишу ENTER (ввод) и укажите ось (X, Y, Z и т.д.) в отношении которой следует 

выполнить замену знаков. При использовании этой функции будьте внимательны, если ваша 

программа содержит G10 или G92 (смотрите описание в разделе о G кодах).

Reverse X & Y (Заменить X и Y)

Эта функция производит замену кодов адреса Х на коды адреса Y, а Y - на X. 

д

ругие

 

клавиши

INSERT

Клавиша INSERT (вставить) может использоваться для копирования 

выделенного текста в позицию после курсора.

ALTER

Клавишу ALTER (изменить) можно использовать для перемещения 

выделенного текста в программе в строку в позиции после стрелки 

курсора.

DELETE

Клавиша DELETE (удалить) может использоваться для удаления 

выделенного текста.

UNDO

Если был выбран блок, при нажатии UNDO (отмена) просто 

произойдет выход из режима определения блока.

99

к

оррекция

 

на

 

режущий

 

инсТруменТ

Коррекция на инструмент – это способ сдвига траектории инструмента таким образом, чтобы 

действительная осевая линия инструмента сместилась влево или вправо от запрограммированной 

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

управлять размером элемента. Дисплей коррекций используется для ввода величины, на которую 

смещается инструмент. Коррекцию можно вводить, как значение диаметра или радиуса, в зависимости 

от настройки 40, как для значений износа, так и геометрии. Если указан диаметр, величина сдвига 

равна половине введенного значения. Эффективные значения коррекции – это сумма значений 

износа и геометрии. Коррекция на инструмент имеется только для оси X и оси Y при 2-хкоординатной 

обработке (G17). При 3-хкоординотной обработке коррекция на инструмент имеется для оси X, оси Y и 

оси Z (G141).

о

бщее

 

описание

 

коррекции

 

на

 

инсТруменТ

G41 включает коррекцию на инструмент влево, то есть сдвигает инструмент влево от 

запрограммированной траектории для коррекции на величину, введенную на странице коррекции (см. 

настройку 40). G42 выбирает коррекцию на инструмент вправо, которая смещает инструмент право от 

запрограммированной траектории. При помощи G41 или G42 необходимо также запрограммировать 

Dnnn, для выбора правильного числового значения коррекции из столбца коррекции по радиусу или 

диаметру. Если коррекция содержит отрицательное число, коррекция на режущий инструмент будет 

работать так, словно был введен противоположный G код. Например, отрицательное число, введенное 

для G41, даст такой же результат, как введенное для G42 положительное число. Кроме того, если 

выбрана коррекция на инструмент (G41 или G42) для кругового движения может использоваться 

только плоскость X-Y (G17). Коррекция на инструмент ограничена компенсацией только в плоскости 

X-Y.
Код G40 отменяет коррекцию на инструмент и является состоянием по умолчанию на момент 

включения станка. При отмене запрограммированная траектория совпадает с траекторией центра 

режущего инструмента. Невозможно закончить программу (M30, M00, M01 или M02) с включенной 

коррекцией на инструмент.
Система управления выполняет один блок перемещения одновременно. Однако она будет выполнять 

опережающий просмотр, чтобы проверить следующие два блока, содержащие перемещения X или 

Y. На этих трех блоках данных выполняется контроль столкновений. Настройка 58 определяет, как 

работает эта часть коррекции на инструмент. Ее можно установить на Fanuc или Yasnac.
При выборе Yasnac для Параметра настройки 58 система управления должна иметь возможность 

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

двух последовательных движений. Круговое движение соединяет все внешние углы.
При выборе Fanuc для настройки 58 система управления не требует помещения режущей кромки 

инструмента вдоль всех кромок запрограммированного контура, что предотвращает перерез. Однако 

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

перереза невозможно избежать. Внешние углы 270 градусов или менее соединяются под острым 

углом, а внешние углы более 270 градусов соединятся дополнительным линейным перемещением (см. 

схемы ниже).
На следующих схемах показано, как работает коррекция на инструмент для двух возможных значений 

настройки 58.
 Имейте в виду, что маленький проход менее радиуса инструмента под прямым углом к предыдущему 

перемещению возможен только с настройкой Fanuc.

100

S

S

S

S

Коррекция на инструмент - (стиль YASNAC)

Коррекция на инструмент - (стиль YASNAC)

Коррекция на инструмент - (стиль FANUC)

Коррекция на инструмент - (стиль FANUC)

Факт. центр траектории 

инструмента

G40 

в этом блоке

G40 в 

этом 

блоке

G40 в этом блоке

G40 или G42 в 

этом блоке

G41 или 42 в 

этом блоке

G41 или 

G42 в 

этом блоке

G41 с положительным 

диаметром инструмента 

или G42 с отрицательным 

диаметром инструмента

G42 с положительным 

диаметром инструмента 

или G41 с отрицательным 

диаметром инструмента

G41 с положительным 

диаметром инструмента 

или G42 с отрицательным 

диаметром инструмента

G42 с положительным 

диаметром инструмента 

или G41 с отрицательным 

диаметром инструмента

G41 или G42 

в этом блоке

G41 или 42 в этом блоке

Факт. центр траекто-

рии инструмента

Факт. центр траек-

тории инструмента

Факт. центр траекто-

рии инструмента

Программируемая 

траектория

Программируемая 

траектория

Программируемая 

траектория

Программируемая 

траектория

Радиус

Радиус

Дополнитель-

ное пере-

мещение

Дополнитель-

ное пере-

мещение

.

в

ход

 

и

 

выход

 

из

 

режима

 

коррекции

 

на

 

режущий

 

инсТруменТ

При входе и выходе из коррекции на инструмент или при переходе коррекции с левой на правую 

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

во время ни одного из этих перемещений. Для включения коррекции на инструмент, код D, отличный 

от нуля, должен быть определен с помощью или G41, или G42, а также в строке, которая отменит 

коррекцию на инструмент, необходимо указать G40. В блоке, который включает коррекцию на 

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

положение будет с учетом коррекции влево или вправо от запрограммированной траектории, на 

величину, введенную в столбце коррекции по радиусу/диаметру. В блоке, выключающем коррекцию 

на режущий инструмент исходная точка скорректирована, а конечная точка не скорректирована. 

Аналогично, при переходе от коррекции левой стороны к коррекции правой стороны или от правой 

к левой, исходная точка перемещения, необходимого для изменения направления коррекции на 

режущий инструмент, будет скорректирована в одну сторону от программируемой траектории, а 

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

инструмент будет двигаться по траектории, которая не будет совпадать с намеченной траекторией или 

направлением (см. чертеж A). Если коррекция на режущий инструмент включается или выключается 

в блоке без перемещения X-Y, никаких изменений в коррекцию на режущий инструмент не вносится, 

пока не обнаружено следующее перемещение X или Y. Для выхода из коррекции на инструмент, 

необходимо задать G40.
Необходимо всегда выключать коррекцию на инструмент в перемещении, которое отводит инструмент 

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

выдается сигнал об ошибке. Кроме того, невозможно включить или выключить коррекцию на 

инструмент во время кругового перемещения (G02 или G03); если это сделать, выдается сигнал об 

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

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

D, в то время как коррекция на инструмент уже включена, новое значение вступит в силу после 

выполняемого перемещения. Невозможно изменить значение D или поменять сторону во время блока 

кругового движения.

101

При включении коррекции на инструмент при движении, за которым следует вторе движение на 

угол менее 90 градусов, имеются два способа вычислить первое движение: коррекция на режущий 

инструмент типа A и типа B (настройка 43). Тип A – это значение по умолчанию в настройке 43, и то, 

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

прохода. Тип B используется, если требуется зазор вокруг приспособления или прихвата или в редких 

случаях, когда этого требует геометрия детали. Схемы на следующих страницах иллюстрируют 

различия между типами A и B как для параметров настройки Fanuc, так и для параметров настройки 

Yasnac (Параметр настройки 58).

Неправильное использование коррекции на режущий инструмент

Перемещение меньше коррекции на радиус

Деталь

Инструмент

Неправильное использование коррекции на режущий инструмент

.

Имейте в виду, что маленький проход менее радиуса инструмента под прямым углом к предыдущему 

перемещению возможен только с настройкой Fanuc. Если станок установлен на настройку Yasnac, 

будет выдан сигнал об ошибке по коррекции на инструмент.

р

егулировка

 

подачи

 

в

 

режиме

 

коррекции

 

на

 

режущий

 

инсТруменТ

При использовании коррекции на режущий инструмент в круговых движениях есть возможность 

введения поправок к запрограммированной скорости. Если намеченный чистовой проход выполняется 

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

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

скорость замедлена слишком сильно. По этой причине настройка 44 используется для ограничения 

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

100%. Если задано значение 100%, изменений скорости не будет. Если задано значение 1%, скорость 

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

увеличения.

102

Ввод коррекции на инструмент (Yasnac)

r

r

G42

G42

r

r

r

G42

G42

TYPE A

TYPE B

r

ТИП A

ТИП В

Програм-

мируемая 

траектория

Програм-

мируемая 

траектория

r = Радиус инструмента

Траектория центра 

инструмента

Траектория 

цен-

тра инстр

умента

Програм-

мируемая 

траектория

Програм-

мируемая 

траектория

Траектория центра 

инструмента

Траектория цен-

тра инструмента

.

Коррекция на инструмент (Fanuc )

r

r

G42

G42

r

r

r

G42

G42

TYPE A

TYPE A

TYPE B

TYPE B

r

r

r

r

r

ТИП А

ТИП В

Програм-

мируемая 

траектория

Програм-

мируемая 

траектория

r = Радиус инструмента

Траектория центра 

инструмента

Траектория 

центра ин-

струмента

Програм-

мируемая 

траектория

Програм-

мируемая 

траектория

Траектория цен-

тра инструмента

Траектория 

центра ин-

струмента

..

к

руговая

 

инТерполяция

 

и

 

коррекция

 

на

 

инсТруменТ

В настоящем разделе описывается использование G02 (круговая интерполяция по часовой стрелке), 

G03 (круговая интерполяция против часовой стрелки) и коррекция на инструмент (G41: Коррекция на 

инструмент слева, G42: Коррекция на инструмент справа) описывается.
С помощью G02 и G03 можно запрограммировать станок выполнять круговые проходы и радиусы. 

В общем, при программировании профиля или контура самый легкий способ описать радиус между 

двумя точками – с помощью R и значения. Для полных круговых перемещений (360o), необходимо 

103

определить I или J со значением. Иллюстрация раздела окружности описывает различные части 

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

инструмента на точную величину и сможет выполнить обработку профиля или контура до точных 

размеров. С помощью коррекции на инструмент время программирования и вероятность погрешности 

вычисления при программировании снижаются вследствие того, что можно запрограммировать 

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

для успешного выполнения операций обработки на станке. Всегда руководствуйтесь этими правилами 

при программировании.
1. Коррекция на инструмент должна включиться во время перемещения G01 X,Y, которое равно или

больше, чем радиус инструмента или компенсируемой величины.
2. При выполнении операции с помощью коррекции на инструмент, коррекцию на инструмент

необходимо выключать с помощью тех же правил, как в процессе включения, то есть то, что 

установили, необходимо удалить.
3. На большинстве станков во время коррекции на инструмент линейное перемещение X,Y, которое

меньшим радиуса инструмента, выполнить невозможно. (Настройка 58 - переключить на Fanuc - для 

положительных результатов.)
4. Коррекцию на инструмент невозможно включить или выключить во время перемещения по дуге G02

или G03.
5. При включенной коррекции на инструмент обработка внутренней дуги с радиусом меньше

определенного активным значением D вызовет на станке сигнал об ошибке.

104

Сечения окружности

.

На следующей иллюстрации показано, как вычисляется путь инструмента в случае коррекции на 

режущий инструмент. В разделе детали показан инструмент в начальном положении, а затем в 

корректированном положении при достижении детали фрезой.

X0. Y0.

X1. Y1.

R .375

R .5625

X0. Y0.

R .3437

R .375

R .500

G02 & G03 Круговая интерполяция

Смещенная траек-

тория инструмента

Стартовая позиция

Программируемая траектория
Центр инструмента

Примечание:  Инструмент - это концевая фреза диаметром .250"

.

Упражнение по программированию, показывающее путь инструмента.

105

В следующей программе не используется коррекция на инструмент. Путь инструмента 

запрограммирован по осевой линии фрезы. Также это является способом вычисления системой 

коррекции на режущий инструмент.
В следующей программе используется коррекция на фрезу. Путь инструмента запрограммирован 

по осевой линии фрезы. Также это является способом вычисления системой коррекции на режущий 

инструмент.

O6100

T1 M06

G00  G90  G54  X-1. Y-1.  S5000  M03

G43 H01 Z.1 M08

G01 Z-1.0 F50.

G41 G01 X0 Y0 D1. F50.

Y4.125

G02  X.250  Y4.375  R.375

G01  X1.6562

G02  X2.0  Y4.0313  R.3437

G01  Y3.125

G03  X2.375  Y2.750  R.375

G01  X3.5

G02  X4.0  Y2.25  R.5

G01  Y.4375

G02  X3.4375  Y-.125  R.5625

G01  X-.125

G40 X-1. Y-1.

G00 Z1.0 M09

G28 G91 Y0 Z0

M30

 м

акросы

в

ведение

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

стандартными G-кодами. Макрокоманды могут использоваться для работы с наборами деталей, 

пользовательскими постоянными циклами, для сложных перемещений и управления дополнительными 

устройствами. Их возможности почти безграничны.
Макрокомандой называется любая программа/подпрограмма, которую можно выполнять несколько 

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

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

повторять определенный фрагмент программы по условию. 
Вот несколько примеров применения макрокоманд.
• Инструменты для немедленного крепления на столе. Многие процедуры наладки можно частично

автоматизировать для помощи оператору. Например, предположим, что используется стандартный 

зажим с последовательностью болтовых отверстий стандартного типа. Если после наладки 

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

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

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

приспособлению.
1. Определите координаты X, Y, и Z и угол, где следует расположить зажим, переместив в станок в

предполагаемое место расположения зажима и посмотрев координаты на дисплее станка.
2. Выполните следующую команду в режиме MDI:

106

G65 P2000 X??? Y??? Z??? A??? ;

Где «???» - это величины, определенные в Шаге 1.

Здесь макрокоманда 2000 (p2000) выполняет работу, так как она предназначена для сверления 

последовательности болтовых отверстий зажима под заданным углом A. По сути оператор создал 

специализированный стандартный цикл.

Простые повторяющиеся последовательности

 Последовательности, которые постоянно

повторяются, можно определить при помощи макросов и сохранить. Например:
1. Схемы отверстия под болт
2. Шлицевание
3. Угловые схемы, любое количество отверстий, под любым углом, с любыми промежутками
4. Специальная обработка, такая как мягкие кулачки
5. Матричные схемы (например, 12 поперек и 15 вниз)
6. Обработка поверхности летучей фрезой (например, 12 дюймов на 5 дюймов при помощи

3-дюймовой летучей фрезы)

Автоматическая настройка коррекции на основании программы

 С помощью макросов можно

задавать коррекцию координат в каждой программе, что облегчает процедуру наладки и позволяет 

сократить количество ошибок (макропеременные #2001-2800).

Измерение головкой

 Измерение головкой во многих отношениях расширяет возможности станка, вот

несколько примеров:
1. Профилирование детали с целью определения неизвестных размеров для последующей обработки.
2. Калибровка инструментов для учета значений коррекции и износа.
3. Обследование перед обработкой для определения припусков формовки.
4. Обследование после обработки для определения параметров параллельности и плоскости, а также

положения.

Полезные G- и М-коды

M00, M01, M30 - останов программы

G04 - Пауза

G65 Pxx - Вызов макроподпрограммы.  Допускается передача переменных.

M96 Pxx Qxx - Условный локальный переход, когда дискретный входной сигнал равен 0

M97 Pxx - Вызов локальной подпрограммы

M98 Pxx - Вызов подпрограммы

M99 - Возврат из подпрограммы или цикл

G103 - Предел опережающего просмотра блока. Компенсация на режущий инструмент не разрешена

M109 - Интерактивные данные пользователя (см. раздел «Коды М»)

Настройки

Существует 3 настройки, которые влияют на работу макропрограмм (программы серии 9000). Это - 

блокировка программ 9xxxx (#23), трассировка программ 9xxx (#74) и покадровая отработка программ 

9xxx (#75).

Опережающий просмотр

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

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

процесс обработки. Сюда входит и интерпретирование переменных макропрограммы.  Например:

107

#1101=1

G04 P1.

#1101=0

Предполагается, что эта последовательность ВКЛЮЧИТ мощность на выходе, подождет 1 секунду и 

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

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

можно использовать G103 P1. Чтобы в нашем примере программа выполнялась правильно, ее 

необходимо изменить следующим образом:

G103 P1 (дальнейшее описание G103 cм. в разделе о G-кодах).

 

;

#1101=1

G04 P1.

 

;

 

;

 

;

#1101=0

Округление

Система управления хранит десятичные числа в виде бинарных величин.  В результате значения, 

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

сохраненное в макропеременной #100, может в дальнейшем быть прочитано как 7.000001, 7.000000, 

или 6.999999.  Если оператор был «IF [#100 EQ 7]…» результатом могут быть ложные показания.  

Более надежно программа работала бы в таком виде: «IF [ROUND [#100] EQ 7]…».  Такая проблема 

обычно возникает только при сохранении в макропеременных целых чисел, при этом использование 

дробной части ожидается в последующем.

п

римечания

 

по

 

рабоТе

Сохранить или загрузить макропеременные можно через интерфейс RS-232 или порт USB, так же, как 

настройки и коррекции.

Страница отображения переменных

Переменные макропрограмм выводятся на экран и их можно изменить на экране текущих команд. 

Чтобы попасть на страницы переменных, нажмите кнопку CURNT COMDS и пролистайте кнопками 

PAGE UP и PAGE DOWN (стр.вверх/вниз).
Когда блок управления интерпретирует программу, изменения переменных показываются на экране 

переменных, где можно увидеть результаты.
Для задания макропеременной необходимо ввести значение и нажать кнопку Write/Enter (Запись/Ввод). 

Макропеременные можно удалить нажатием клавиши Origin (начало координат), при этом удаляются 

значения всех переменных.
Для поиска макропеременной введите ее номер и нажмите кнопку со стрелкой вверх/вниз.
Выводимые на экран переменные представляют собой значения переменных во время выполнения 

программы. Иногда они могут быть на расстоянии до 15 блоков вперед от фактических операций 

станка. При отладке программ бывает удобно вставить в начале программы код G103, чтобы 

ограничить буферизацию блоков, а после окончания отладки – удалить этот G103.

Аргументы макропрограмм

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

в вызванной макроподпрограмме.
В предыдущем примере 2 аргументы (значения) X и Y передаются в локальные переменные 

макроподпрограммы. Локальная переменная #24 связана с X и установлена равной 0.5. Аналогично, 

108

локальная переменная #25 связана с Y и установлена равной 0.25.
В двух следующих таблицах показано соответствие алфавитных адресных переменных и числовых 

переменных, используемое в макроподпрограмме.

Алфавитная адресация

Адрес:

Переменная:

A

1

B

2

C

3

D

7

Е

8

F

9

G

-

H

11

I

4

J

5

K

6

L

-

M

13

Адрес:

Переменная

(Нет)

-

O

-

P

-

Q

17

R

18

S

19

T

20

U

21

V

22

W

23

X

24

Y

25

Z

26

Альтернативная алфавитная адресация

 Адрес:

Переменная:

A

1

B

2

C

3

I

4

J

5

K

6

I

7

J

8

K

9

I

10

J

11

Адрес:

Переменная:

K

12

I

13

J

14

K

15

I

16

J

17

K

18

I

19

J

20

K

21

I

22

Адрес:

Переменная:

J

23

K

24

I

25

J

26

K

27

I

28

J

29

K

30

I

31

J

32

K

33

Аргументы принимают любые значения с плавающей точкой до четырех десятичных знаков. 

Если система управления работает в метрическом режиме, он принимает значения до тысячных 

долей (.000). В примере 3 локальная переменная #7 примет значение .0004. Если десятичный 

знак не включен в значение аргумента, например: G65, P9910, A1, B2, C3, значения передаются в 

макроподпрограммы в соответствии со следующей таблицей:

Передача целочисленных аргументов (без десятичной точки)

Адрес:

Переменная:

A

.001

B

.001

C

.001

D

1.

Е

1.

F

1.

G

Адрес:

Переменная

H

1.

I

.0001

J

.0001

K

.0001

L

1.

M

1.

(Нет)

-

Адрес:

Переменная:

O

-

P

-

Q

.0001

R

.0001

S

1.

T

1.

U

.0001

Адрес:

Переменная:

V

.0001

W

.0001

X

.0001

Y

.0001

Z

.0001

Всем 33 локальным макропеременным можно присвоить значения с аргументами, используя метод 

альтернативной адресации. В следующем примере показано, как можно передать две группы 

координат установки рабочего органа в макроподпрограмму. Локальным переменным от #4 до #9 будут 

присвоены значения от .0001 до .0006, соответственно.

Пример 3:

 G65 P2000 I1 J2 K3 I4 J5 K6; 

Для передачи значений в макроподпрограммы можно использовать следующие буквы: G, L, N, O или P.

Макропеременные

Существует три вида макропеременных: системная, глобальная и локальная.
Макроконстанты – это значения с плавающей точкой, помещаемые в макровыражение. Они могут 

использоваться совместно с адресами от А до Z или самостоятельно при использовании в выражении. 

Примеры констант: .0001, 5.3 или -10.

109

Локальные переменные 

Локальные переменные находятся в диапазоне от #1 до #33. Набор локальных переменных доступен 

в любое время. При выполнении вызова подпрограммы с помощью команды G65 локальные 

переменные сохраняются, и можно использовать новый набор. Это называется вложенностью 

локальных переменных. При вызове G65 все новые локальные переменные сбрасываются на 

значение «не определено», а всем локальным переменным, имеющим соответствующие адресные 

переменные в строке G65, присваиваются значения из строки G65. Ниже приводится таблица 

локальных переменных с аргументами адресных переменных, которые изменяют их.

Переменная:

Адрес:

Альтернатива:

1

A

2

B

3

C

4

I

5

J

6

K

7

D

I

8

Е

J

9

F

K

10

I

11

H

J

Переменная:

Адрес:

Альтернатива:

12

K

13

M

I

14

J

15

K

16

I

17

Q

J

18

R

K

10

S

I

20

T

J

21

U

K

22

V

I

Переменная:

Адрес:

Альтернатива:

23

W

J

24

X

K

25

Y

I

26

Z

J

27

K

28

I

29

J

30

K

31

I

32

J

33

K

Переменные 10, 12, 14-16 и 27-33 не имеют соответствующих адресных аргументов. Их можно 

задать, если использовано достаточное число аргументов I, J и K, как показано выше, в разделе об 

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

ссылаясь на них по номерам переменных от 1 до 33.
При использовании аргумента L для многократных повторов макроподпрограммы аргументы задаются 

только при первом повторе. Это означает, что если локальные переменные 1-33 изменены при 

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

значения остаются без изменений от повторения к повторению, если адрес L больше 1.
Вызов подпрограммы через М97 или М98 не приводит к вложенности локальных переменных. Любые 

локальные переменные, на которые есть ссылки в подпрограмме, вызванной с помощью М98, 

являются теми же переменными и значениями, которые существовали до вызова М97 или М98.

Глобальные переменные

Глобальными называются переменные, которые доступны всегда. Каждая глобальная переменная 

существует всего в одном экземпляре. Глобальные переменные находятся в трех диапазонах: 100-199, 

500-699 и 800-999. При выключении питания глобальные переменные сохраняются в памяти.
В отдельных случаях было написано несколько макропрограмм для заводских целей, которые 

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

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

не задействованы в другой программе станка.

Системные переменные

Системные переменные дают программисту возможность взаимодействовать с различными условиями 

функционирования. С помощью задания системной переменной можно изменить функцию управления. 

Путем чтения системной переменной программа может изменять свое поведение в зависимости от 

значения переменной. Некоторые системные переменные имеют статус "только для чтения". Это 

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

настоящее время системных переменных с описанием их использования.

ПЕРЕМЕННЫЕ

ИСПОЛЬЗОВАНИЕ

#0

Не является числом (только для чтения)

#1-#33

Аргументы вызовов макроса

#100-#199

Переменные общего назначения, сохраняемые при выключении питания

110

ПЕРЕМЕННЫЕ

ИСПОЛЬЗОВАНИЕ

#500-#699

Переменные общего назначения, сохраняемые при выключении питания

#700-#749

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

#800-#999

Переменные общего назначения, сохраняемые при выключении питания

#1000-#1063

64 дискретных входа (только для чтения)

#1064-#1068

Максимальные нагрузки оси для осей X, Y, Z, A и B соответственно

#1080-#1087

Аналого-цифровые входы для исходных данных (только для чтения)

#1090-#1098

Аналого-цифровые входы для отфильтрованных данных (только для чтения)

#1094

Уровень СОЖ

#1098

Нагрузка на шпиндель при использовании векторного привода HAAS (только для 

чтения)

#1100-#1139

40 дискретных выходных сигналов

#1140-#1155

16 дополнительных релейных выходов через мультиплексный выход

#1264-#1268

Максимальные нагрузки оси для осей C, U, V, W и T соответственно

#1601-#1800

Количество канавок инструментов с #1 до 200

#1801-#2000

Максимальная записанная вибрация инструментов от 1 до 200

#2001-#2200

Коррекции на длину инструмента

#2201-#2400

Коррекции на длину инструмента с учетом износа

#2401-#2600

Компенсации диаметра/радиуса инструмента

#2601-#2800

Износ диаметра/радиуса инструмента

#3000

Программируемое аварийное сообщение

#3001

Миллисекундный таймер

#3002

Часовой таймер

#3003

Пропуск блока

#3004

Управление обходом функций

#3006

Программируемый останов с сообщением

#3011

Год, месяц, день

ПЕРЕМЕННЫЕ

ИСПОЛЬЗОВАНИЕ

#3002

Часовой таймер

#3003

Пропуск блока

#3004

Управление обходом функций

#3006

Программируемый останов с сообщением

#3011

Год, месяц, день

#3012

Час, минута, секунда

#3020

Таймер включения (только для чтения)

#3021

Таймер запуска цикла

#3022

Таймер подачи

#3023

Таймер обрабатываемой детали

#3024

Таймер последней обработанной детали

#3025

Таймер предыдущей детали

#3026

Инструмент в шпинделе (только для чтения)

#3027

Скорость вращения шпинделя, об./мин. (только для чтения)

111

#3028

Номер спутника, загруженного на приемник

#3030

Покадровый режим

#3031

Пробный прогон

#3032

Удаления блока

#3033

Дополнительная остановка

#3201-#3400

Действительный диаметр инструментов с 1 до 200

#3401-#3600

Программируемое положение СОЖ от 1 до 200

#3901

M30 счетчик 1

#3902

M30 счетчик 2

#4000-#4021

Коды группы G-кода предыдущего блока

#4101-#4126

Адресные коды предыдущего блока

Примечание:  

Соответствие переменных от 4101 до 4126 аналогично символьной адресации в 

разделе «Аргументы макропрограмм», например, оператор x1.3 устанавливает переменную #4124 на 

1.3. Соответствие осей следующее: x=1, y=2, … b=5, например, системная переменная координаты Z 

будет #5023.

ПЕРЕМЕННЫЕ

ИСПОЛЬЗОВАНИЕ

#5001-#5005

Конечное положение предыдущего блока

#5021-#5025

Предыдущее положение координаты станка

#5041-#5045

Предыдущее положение рабочей координаты

#5061-#5069

Текущая позиция сигнала пропуска - X, Y, Z, A, B, C, U, V, W

#5081-#5085

Текущая коррекция на инструмент

#5201-#5205

Коррекция детали G52

#5221-#5225

Коррекция детали G54

#5241-#5245

Коррекция детали G55

#5261-#5265

Коррекция детали G56

#5281-#5285

Коррекция детали G57

#5301-#5305

Коррекция детали G58

#5321-#5325

Коррекция детали G59

#5401-#5500

Таймеры подачи инструмента (в секундах)

#5501-#5600

Таймеры полного времени инструмента (в секундах)

#5601-#5699

Ограничение срока службы инструмента

#5701-#5800

Счетчик срока службы инструмента

#5801-#5900

Контроль нагрузки инструмента (максимальная нагрузка, зарегистрированная до 

настоящего времени)

#5901-#6000

Ограничение срока службы инструмента

#6001-#6277

Параметры настройки (только для чтения)

#6501-#6999

Параметры (только для чтения)

Примечание:  

Младшие разряды больших значений не отображаются в переменных макросов для 

настроек и параметрах.

ПЕРЕМЕННЫЕ

ИСПОЛЬЗОВАНИЕ

#7001-#7006 (#14001-#14006)

Дополнительные рабочие компенсации G110 (G154 P1)

#7021-#7026 (#14021-#14026)

Дополнительные коррекции детали G111 (G154 P2)

#7041-#7046 (#14041-#14046)

Дополнительные коррекции детали G112 (G154 P3)

#7061-#7066 (#14061-#14066)

Дополнительные коррекции детали G113 (G154 P4)

 

 

 

 

 

 

 

содержание      ..     5      6      7      8     ..