Главная Книги - Разные SINUMERIK 840D sl. Программирование ЧПУ. Руководство по программированию (2021 год)
поиск по сайту правообладателям
|
|
содержание .. 11 12 13 14 ..
Расширенное программирование
4.13 Коррекции инструмента
В кадрах N220 или N270 активируется коррекция на радиус инструмента (КРИ).
Различное положение резцов в обеих отрезках программы не влияет на конечные
позиции кадров, в которых активна КРИ, поэтому соответствующие позиции идентичны.
Только в кадрах сброса N260 или N300 различные положения резцов снова сказываются.
4.13.13
Работа с инструментальным окружением
Обзор функций
• Сохранение инструментального окружения (TOOLENV) (Страница 838)
• Удаление инструментального окружения (DELTOOLENV) (Страница 841)
• Чтение номеров T, D и DL (GETTENV) (Страница 842)
• Считывание компонентов длины инструмента или компонентов длины (GETTCOR)
(Страница 844)
• Изменение компонентов инструмента (SETTCOR) (Страница 850)
Обзор системных переменных
• Считывание данных сохраняемого инструментального окружения ($P_TOOLENVN,
($P_TOOLENV) (Страница 843)
4.13.13.1
Сохранение инструментального окружения (TOOLENV)
Функция TOOLENV служит для сохранения всех текущих состояний, имеющих значение
для нормирования находящихся в памяти данных инструмента.
По отдельности это следующие данные:
• Активная G-команда группы:
-
6 (G17, G18, G19)
–
56 (TOWSTD, TOWMCS, TOWWCS, TOWBCS, TOWTCS, TOWKCS)
• Активная поперечная ось
• Машинные данные:
- MD18112 $MN_MM_KIND_OF_SUMCORR (свойства суммарных коррекций в области
TO)
- MD20360 $MC_TOOL_PARAMETER_DEF_MASK (определение параметров
инструмента)
Программирование ЧПУ
838
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.13 Коррекции инструмента
•
Установочные данные:
- SD42900 $SC_MIRROR_TOOL_LENGTH (смена знака длины инструмента при
отражении)
- SD42910 $SC_MIRROR_TOOL_WEAR (смена знака износа инструмента при
отражении)
- SD42920 $SC_WEAR_SIGN_CUTPOS (знак износа у инструментов с системами
резцов)
- SD42930 $SC_WEAR_SIGN (знак износа)
- SD42935 $SC_WEAR_TRANSFORM (трансформации для компонентов инструмента)
- SD42940 $SC_LENGTH_CONST (смена компонентов длин инструмента при смене
плоскости)
- SD42942 $SC_TOOL_LENGTH_CONST_T (смена компонентов длин инструмента для
токарных инструментов при смене плоскости)
- SD42950 $SC_TOOL_LENGTH_TYPE (соотнесение компонентов длин инструмента
независимо от типа инструмента)
- SD42954 $SC_TOOL_ORI_CONST_M (смена компонентов ориентации инструмента
для фрезерных инструментов при смене плоскости)
- SD42956 $SC_TOOL_ORI_CONST_T (смена компонентов ориентации инструмента
для токарных инструментов при смене плоскости)
•
Компонент ориентации текущего общего фрейма (вращения и отражения, не
смещения нулевой точки или отражения)
•
Компонент ориентации и результирующая длина активного ориентируемого
инструментального суппорта
•
Компонент ориентации и результирующая длина активной трансформации
Кроме названных данных, описывающих окружение инструмента, сохраняются и
номера T, номера D и номера DL активного инструмента, чтобы после можно было
обратиться к этому инструменту в том же окружении, что и при вызове TOOLENV без
повторного обозначения инструмента.
Синтаксис
<состояние> = TOOLENV(<имя>)
Объяснение
TOOLENV(...):
Предопределенная функция сохранения инструментального окружения
Автономно в
да
кадре:
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
839
Расширенное программирование
4.13 Коррекции инструмента
<состояние>:
Возвращаемое значение функции. Отрицательные значения показывают со-
стояния ошибки.
Тип данных:
INT
Значе-
0
Функция OK
ние:
-1
не зарезервировано места в памяти для инструментально-
го окружения:
MD18116 $MN_MM_NUM_TOOL_ENV = 0
Т. е. функциональность "Инструментальные окружения" от-
сутствует.
-2
более нет свободного места для инструментальных окру-
жений в памяти.
-3
нулевая строка как имя инструментального окружения не
допускается.
-4
Параметр (<имя>) не указан.
Параметры
1
<имя>:
Имя, под которым необходимо сохранять текущий блок данных.
Если блок данных с тем же именем уже имеется, то он заменяется. В этом
случае состояние 0.
Тип данных:
STRING
Дополнительная информация
Базовый размер / размер адаптера - коррекция на длину инструмента
Входит ли длина адаптера или базовый размер (спец. для резца параметры $TC_DP21,
$TC_DP22, $TC_DP23) в вычисление длины инструмента, определяется при активном
управлении магазином инструментов (доступно только с опцией "Магазин
инструментов"!) по значению в машинных данных:
MD18104 $MN_MM_NUM_TOOL_ADAPTER (адаптер инструмента в области ТО)
Поскольку изменение этих машинных данных может начать действовать только запуске
СЧПУ, оно в инструментальном окружении не сохраняется.
Результирующая длина ориентируемых инструментальных суппортов и
трансформаций
Примечание
Как при ориентируемых инструментальных суппортах, так и при трансформациях,
существуют системные переменные или машинные данные, которые действуют как
дополнительные компоненты длин инструмента, и которые полностью или частично
подвержены этим исполняемым вращениям. Дополнительные компоненты длин
инструмента, получаемые вследствие этого, должны также быть сохранены при вызове
TOOLENV, т. к. они являются частью окружения, в котором используется инструмент.
Трансформация адаптера
Трансформация адаптера это свойство адаптера инструмента и тем самым всего
инструмента. Поэтому она не является составной частью инструментального окружения,
которая может быть применена к другому инструменту.
Программирование ЧПУ
840
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.13 Коррекции инструмента
Посредством сохранения всех необходимых для определения общей длины инструмента
данных позднее можно вычислить эффективную длину инструмента, даже если на этот
момент он более не активен или если условия окружения (например, G-команды или
установочные данные) изменились. Также можно вычислить эффективную длину
другого инструмента с допущением, что он использовался в тех же условиях, что и
инструмент, для которого было сохранено состояние.
Макс. число наборов данных для инструментальных окружений
Машинный параметр MD18116 $MN_MM_NUM_TOOL_ENV определяет, какое
максимальное количество блоков данных можно сохранить для описания
инструментальных окружений. Данные находятся в диапазоне TOA. Они сохраняются и
после отключения СЧПУ.
Сохранение данных невозможно. Это означает, что эти данные невозможно передать на
другую систему управления.
4.13.13.2
Удаление инструментального окружения (DELTOOLENV)
С помощью функции DELTOOLENV блоки данных описания инструментальных
окружений можно удалить. Удаление означает, что обращение к сохраненному под
определенным именем блоку данных более невозможно (попытка обращения приводит
к аварийному сообщению).
Примечание
Блоки данных можно удалять только функцией DELTOOLENV, через загрузку INITIAL.INI
или через холодный пуск (запуск ЧПУ со стандартными машинными данными). Других
автоматических процессов удаления нет.
Синтаксис
<состояние> = DELTOOLENV(<имя>)
<состояние> = DELTOOLENV()
Объяснение
DELTOOLENV(...):
Предопределенная функция удаления инструментального окружения
Автономно в
да
кадре:
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
841
Расширенное программирование
4.13 Коррекции инструмента
<состояние>:
Возвращаемое значение функции. Отрицательные значения показывают
состояния ошибки.
Тип данных:
INT
Значе-
0
Функция OK
ние:
-1
не зарезервировано места в памяти для инструменталь-
ного окружения:
MD18116 $MN_MM_NUM_TOOL_ENV = 0
Т. е. функциональность "Инструментальные окружения"
отсутствует.
-2
инструментальное окружение с указанными именем не
существует.
Параметры
1
<имя>:
Имя удаляемого блока данных
Тип данных:
STRING
DELTOOLENV():
DELTOOLENV() без указания имени удаляет все блоки данных описания
инструментального окружения
4.13.13.3
Чтение номеров T, D и DL (GETTENV)
Функция GETTENV служит для чтения сохраненных в инструментальном окружении
номеров T, D и DL.
Синтаксис
<состояние> = GETTENV(<Name>, <TDDL>)
Объяснение
GETTENV(...):
Предопределенная функция чтения номеров T, D, DL в блоке данных описа-
ния инструментального окружения
Автономно в
да
кадре:
<состояние>:
Возвращаемое значение функции. Отрицательные значения показывают со-
стояния ошибки.
Тип данных:
INT
Значе-
0
Функция OK
ние:
-1
не зарезервировано места в памяти для инструментального
окружения:
MD18116 $MN_MM_NUM_TOOL_ENV = 0
Т. е. функциональность "Инструментальные окружения" от-
сутствует.
-2
инструментальное окружение с указанными именем не су-
ществует.
Параметры
1
<имя>:
Имя блока данных, из которого необходимо считывать номера T, D, DL.
Тип данных:
STRING
Программирование ЧПУ
842
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.13 Коррекции инструмента
2
<TDDL>:
В поле этого параметра результата содержатся номера T, D, DL инструмента,
инструментальное окружение которого сохранено в указанном блоке дан-
ных:
• <TDDL> [0]: номер Т
• <TDDL> [1]: номер D
• <TDDL> [2]: номер DL
Тип данных:
INT[3]
GETTENV(,<TDDL>),
Допускается пропустить при вызове функции GETTENV первый па-
GETTENV("",<TDDL>):
раметр или передать в качестве первого параметра нулевую стро-
ку. В обоих этих специальных случаях в <TDDL> возвращаются
номера T, D, DL активного инструмента.
4.13.13.4
Считывание данных сохраняемого инструментального окружения
($P_TOOLENVN, ($P_TOOLENV)
Данные сохраняемого инструментального окружения считываются по следующим
системным переменным:
$P_TOOLENVN:
Выводит количество определенных с помощью TOOLENV (и еще не удален-
ных) блоков данных для описания инструментальных окружений.
Синтаксис:
<n> = $P_TOOLENVN
Объяснение:
<n>:
Количество определенных блоков данных
Тип данных:
INT
Диапазон зна-
0 ... MD18116
чений:
$MN_MM_NUM_TOOL_ENV
Обращение к этой системной переменной возможен и тогда, когда инстру-
ментальные окружения невозможны (MD18116 = 0). В этом случае возвра-
щаемое значение - "0".
$P_TOOLENV:
Выводит имя i-го блока данных описания инструментального окружения.
Синтаксис:
<Name> = $P_TOOLENV[<i>]
Объяснение:
<имя>:
Имя блока данных с номером <i>.
Тип данных:
STRING
<i>:
Номер блока данных
Тип данных:
INT
Диапазон зна-
1 ... $P_TOOLENVN
чений:
Согласование номеров с блоками данных не является фиксированным, а
может изменяться через удаление и повторное создание блоков данных. Ну-
мерация блоков данных является внутренней.
Если <i> ссылается на не определенный блок данных, возвращается нулевая
строка.
Если индекс <i> недействителен, т. е. <i> меньше 1 или больше значения
максимального количества блоков данных для инструментальных окруже-
ний (MD18116 $MN_MM_NUM_TOOLENV), выводится следующее аварийное
сообщение:
Аварийное сообщение "17020 (неразрешенный индекс массива1)"
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
843
Расширенное программирование
4.13 Коррекции инструмента
4.13.13.5
Считывание компонентов длины инструмента или компонентов длины
(GETTCOR)
Функция GETTCOR служит для считывания длин инструмента или компонентов длин
инструмента.
При этом посредством параметрирования можно указать, какие компоненты
необходимо учесть, и при каких условиях использования необходимо рассматривать
инструмент.
Синтаксис
<состояние> = GETTCOR(<Len>[, <Comp>, <Stat>, <T>, <D>, <DL>])
Объяснение
GETTCOR(...):
Предопределенная функция чтения длин инструмента или компонентов
длин инструмента
Автономно в
да
кадре:
<состояние>:
Возвращаемое значение функции. Отрицательные значения показывают со-
стояния ошибки.
Тип данных:
INT
Значе-
0
Функция OK
ние:
-1
не зарезервировано места в памяти для инструментального
окружения:
MD18116 $MN_MM_NUM_TOOL_ENV = 0
Т. е. функциональность "Инструментальные окружения" от-
сутствует.
-2
Инструментальное окружение с указанным в <Stat> именем
не существует.
-3
Недействительная строка в параметре <Comp>.
Причиной этой ошибки могут быть недействительные или
запрограммированные дважды символы.
-4
недействительный номер Т
-5
недействительный номер D
-6
недействительный номер DL
-7
Попытка обращения к отсутствующему модулю памяти
-8
Попытка обращения к отсутствующей опции (например,
программируемая ориентация инструмента, управление
инструментом)
-9
Строка <Comp> содержит двоеточие (идентификатор специ-
фикаций системы координат), но за ним не следует дей-
ствительный символ обозначения требуемой системы коор-
динат.
Параметры
Программирование ЧПУ
844
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.13 Коррекции инструмента
1
<Len>:
Результирующий вектор
Тип данных:
REAL[11]
Компоненты вектора расположены в следующей последовательности:
• <Len> [0]: Тип инструмента
• <Len> [1]: Положение резцов
• <Len> [2]: Абсцисса
• <Len> [3]: Ордината
• <Len> [4]: Аппликата
• <Len> [5]: Радиус инструмента
Исходной системой координат для компонентов длин является определен-
ная в <Comp> и <Stat> система координат. Если в <Comp> система координат
не определена, то длины инструмента отображаются в системе координат
станка.
Соотнесение абсциссы, ординаты и аппликаты с гео-осями зависит от актив-
ной плоскости в используемом инструментальном окружении. Т. е. при G17
абсцисса параллельна Х, при G18 - Z и т. д.
Компоненты с <Len>[6] по <Len>[10] содержат дополнительные параметры,
которые могут быть указаны для описания геометрии инструмента (напри-
мер, с $TC_DP7 по $TC_DP11 для геометрии или соответствующие компонен-
ты для износа или суммарной и отладочной коррекции).
Эти 5 дополнительных элементов и радиус инструмента определены только
для компонентов E, G, S и W. Их нормирование не зависит от <Stat>. Соответ-
ствующие значения в компонентах с <Len>[6] по <Len>[10] могут отличаться
от нуля, только если в вычислении длин инструмента участвует, по меньшей
мере, один из четырех названных компонентов. Прочие компоненты на ре-
зультат не влияют. Данные размеров относятся к основной системе СЧПУ
(дюймовая или метрическая).
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
845
Расширенное программирование
4.13 Коррекции инструмента
2
<Comp>:
Компоненты длин инструмента (опционально)
Тип данных:
STRING
Эта цепочка символов состоит из двух частей, разделенных двоеточием.
Общая форма: "<SubStr_1> [: <SubStr_2]"
<SubStr_1>:
Первая часть строки обозначает компоненты длин инстру-
мента, которые необходимо учитывать при вычислении
длин инструмента.
Последовательность символов в части строки и их написа-
ние (прописное или строчное) - произвольные. Между
символами можно вставлять любое число пробелов или
символов табулятора (white spaces).
Указание:
Двойное программирование символов в части строки не
допускается.
Символ:
-
знак минус (допустим только как первый
символ!)
Вычисляется вся длина инструмента, за ис-
ключением компонентов, указанных в сле-
дующей строке.
C
размер адаптера или базовый размер (один
из двух существующих как альтернатива
компонентов, который активен для исполь-
зуемого инструмента)
E
отладочные коррекции
G
геометрия
K
Кинематическая трансформация (обраба-
тывается только при базовой 3-, 4- и 5-ос-
евой трансформации)
S
Суммарные коррекции
T
Ориентируемый инструментальный суп-
порт
W
Износ
Если первая часть строки (за исключением white spaces) пу-
стая, то это означает, что всю длину инструмента необходи-
мо вычислять с учетом всех компонентов. То же действи-
тельно, и если параметр <Comp> не указывается.
<Substr_2>:
Опциональная вторая часть строки обозначает систему
координат, в которой должна выводиться длина инструмен-
та.
Вторая часть строки состоит только из одного релевантного
символа.
Символ:
A
Настраиваемая система координат (ACS)
B
Базовая кинематическая система (BKS)
K
Система координат инструмента кинемати-
ческой трансформации (KCS)
M
Система координат станка (MСS)
T
Система координат инструмента (TCS)
W
Система координат детали (WСS)
Программирование ЧПУ
846
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.13 Коррекции инструмента
Если система координат не указывается, то нормирование
выполняется в системе координат станка (MСS). Учитывае-
мые при необходимости вращения устанавливаются через
определенное в <Stat> инструментальное окружение.
3
<_Stat>:
Имя блока данных для описания инструментального окружения (опциональ-
но)
Тип данных:
STRING
Если значение этого параметра нулевая строка ("") или оно не указывается, то
используется текущее состояние. Если инструмент не задан, используется
текущий инструмент.
4
<T>:
Внутренний номер Т инструмента (опционально)
Тип данных:
INT
Если этот параметр не указан или если его значение 0, то используется со-
храненный в <Stat> инструмент.
Если значение этого параметра "-1", то используется номер Т активного ин-
струмента. Допускается явное указание номера активного инструмента.
Указание:
Если <Stat> не указана, то в качестве инструментального окружения исполь-
зуется текущее состояние. Поскольку с <T> = 0 выполняется ссылка на сохра-
ненный в инструментальном окружении номер Т, в нем используется актив-
ный инструмент, т. е. данные <T> = 0 и <T> = -1 в этом особом случае равноз-
начны.
5
<D>:
Номер резца инструмента (опционально)
Тип данных:
INT
Если этот параметр не указан или его значение 0, то используемый номер D
зависит от источника номера Т. Если используется номер Т из инструмен-
тального окружения, то считывается и номер D инструментального окруже-
ния, в ином случае таковой текущего активного инструмента.
6
<DL>:
Номер зависящей от места коррекции (опционально)
Тип данных:
INT
Если этот параметр не указан, то используемый номер DL зависит от источ-
ника номера Т. Если используется номер Т из инструментального окружения,
то считывается и номер D инструментального окружения, в ином случае та-
ковой текущего активного инструмента.
Примеры
GETTCOR(_LEN)
Вычисляет длину текущего активного инстру-
мента в системе координат станка с учетом
всех компонентов.
GETTCOR(_LEN,"CGW:W")
Вычисляется длина инструмента, состоящая из
размера адаптера или базового размера, гео-
метрия и износ для активного инструмента.
Прочие компоненты, например, ориентируе-
мый инструментальный суппорт или кинемати-
ческие трансформации, не учитываются. Вы-
вод выполняется в системе координат детали.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
847
Расширенное программирование
4.13 Коррекции инструмента
GETTCOR (_LEN,"-K:B")
Вычисляется общая длина активного инстру-
мента без учета компонентов длин возможно
активной кинематической трансформации. Вы-
вод в базовой кинематической системе.
GETTCOR (_LEN,":M","Testenv1",,3)
Вычисляется общая длина инструмента для со-
храненного в инструментальном окружении
под именем "Testenv1" инструмента в системе
координат станка. Но вычисление выполняется
независимо от сохраненного номера резца для
номера резца D3.
Дополнительная информация
Трансформация адаптера / ориентируемые инструментальные суппорты /
кинематическая трансформация
Вращения и смены компонентов, которые в некоторых случаях выполняются
трансформацией адаптера, ориентируемым инструментальным суппортом и
кинематической трансформацией, являются составной частью инструментального
окружения. Поэтому они выполняются всегда, и тогда, когда соответствующий
компонент длины не должен учитываться. Если это нежелательно, то необходимо
определить инструментальные окружения, в которых соответствующие трансформации
не активны. Во многих случаях (а именно всегда, когда на станке не используются
трансформации или ориентируемые инструментальные суппорты), сохраненные блоки
данных для инструментального окружения выполняют эти условия автоматически,
поэтому отдельного рассмотрения их пользователем не требуется.
Токарные и шлифовальные инструменты: Вычисление длины инструмента в
зависимости от MD20360 $MC_TOOL_PARAMETER_DEF_MASK
В машинных данных определяется, как у токарного и шлифовального инструмента
следует нормировать износ или длину инструмента в, возможно, имеющейся оси
диаметра.
MD20360 $MC_TOOL_PARAMETER_DEF_MASK (определение параметров инструмента)
Бит
Значение
0
В случае токарного и шлифовального инструмента параметр износа поперечной оси
учитывается при вычислении как значение диаметра:
= 0 (по умол-
нет
чанию)
=1
да
1
В случае токарного и шлифовального инструмента компонент длины инструмента по-
перечной оси учитывается при вычислении как значение диаметра:
= 0 (по умол-
нет
чанию)
=1
да
Если соответствующие биты установлены, то соответствующая строка нормируется с
коэффициентом 0.5. Такое нормирование отражается и в возвращенной GETTCOR длине
инструмента.
Пример:
Программирование ЧПУ
848
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.13 Коррекции инструмента
MD20360 $MC_TOOL_PARAMETER_DEF_MASK = 3
MD20100 $MC_DIAMETER_AX_DEF (гео-ось с функцией поперечной оси) = "X"
X - это ось диаметра (стандартная конфигурация токарных станков)
Программный код
Комментарий
N30 $TC_DP1[1,1]=500
N40 $TC_DP2[1,1]=2
N50 $TC_DP3[1,1]=3.0
; геометрия L1
N60 $TC_DP4[1,1]=4.0
N70 $TC_DP5[1,1]=5.0
N80 $TC_DP12[1,1]=12.0
; износ L1
N90 $TC_DP13[1,1]=13.0
N100 $TC_DP14[1,1]=14.0
N110 T1 D1 G18
N120 R1=GETTCOR(_LEN,"GW")
N130 R3=_LEN[2]
; 17.0 (= 4.0 + 13.0)
N140 R4=_LEN[3]
; 7.5 (= 0.5 * 3.0 + 0.5 * 12.0)
N150 R5=_LEN[4]
; 19.0 (= 5.0 + 14.0)
N160 M30
Компоненты длины кинематической трансформации и ориентируемого
инструментального суппорта
Если при вычислении длин инструмента учитывается ориентируемый
инструментальный суппорт, то следующие векторы включаются в вычисление длин
инструмента:
Тип
Векторы
M
l1 и l2
T
l1, l2 и l3
P
Ориентируемый инструментальный суппорт не влияет на длину инструмента.
При базовой 5-осевой трансформации при типах трансформации 24 и 56 следующие
машинные данные включаются в вычисление длин инструмента:
Тип транс-
Машинные данные
формации
24
MD24550/24650 $MC_TRAFO5_BASE_TOOL_1/2
MD24560/24660 $MC_TRAFO5_JOINT_OFFSET_1/2
MD24558/24658 $MC_TRAFO5_PART_OFFSET_1/2
56
MD24550/24650 $MC_TRAFO5_BASE_TOOL_1/2
MD24560/24660 $MC_TRAFO5_JOINT_OFFSET_1/2
Тип трансформации 56 (подвижный инструмент и подвижная деталь) соответствует типу
М для ориентируемого инструментального суппорта.
При этой 5-осевой трансформации в прежних версиях ПО вектор MD24560/24660
$MC_TRAFO5_JOINT_OFFSET_1/2 (вектор кинематического смещения 1-ой/2-ой 5-осевой
трансформации в канале) соответствует сумме обоих векторов l1 и l3 у ориентируемого
инструментального суппорта типа M:
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
849
Расширенное программирование
4.13 Коррекции инструмента
В обоих случаях для трансформации важна только сумма. Тип структуры из двух
отдельных компонентов не имеет значения. Но при вычислении длины инструмента
имеет значение, какой компонент согласован с инструментом, а какой - с
инструментальным столом. Поэтому были введены машинные данные MD24558/24658
$MC_TRAFO5_JOINT_OFFSET_PART_1/2 (вектор кинематического смещения в столе). Он
соответствует вектору l3. Теперь машинные данные MD24560/24660
$MC_TRAFO5_JOINT_OFFSET_1/2 больше не соответствуют сумме l1 и l3, а соответствуют
только вектору l1. Если машинные данные MD24558/24658
$MC_TRAFO5_JOINT_OFFSET_PART_1/2 равны нулю, то поведение идентично прежнему.
Совместимость
Функция GETTCOR в комбинации с функциями TOOLENV и SETTCOR служит, среди
прочего, для замены частей функциональности, прежде реализованных отдельно в
измерительных циклах.
В измерительных циклах обрабатывалась только часть параметров, которые в конечном
итоге определяют эффективную длину инструмента. Названные функции можно
спараметрировать так, что появляется возможность воспроизвести поведение
измерительных циклов в отношении вычисления длин инструмента.
4.13.13.6
Изменение компонентов инструмента (SETTCOR)
Функция SETTCOR изменяет компоненты инструмента с учетом всех граничных условий,
входящих в нормирование отдельных компонентов.
Примечание
Терминология: Если далее в связи с длиной инструмента речь идет о компонентах
инструмента, то подразумеваются компоненты, рассматриваемые в векторной форме,
из которых состоит полная длина инструмента (например, геометрия или износ). Такой
компонент состоит из трех отдельных значений (L1, L2, L3), обозначаемых далее
"значения координат".
Компонент инструмента "геометрия" состоит, например, из трех значений координат от
$TC_DP3 до $TC_DP5.
Синтаксис
<состояние> = SETTCOR(<CorVal>, <Comp>, [<CorComp>, <CorMode>,
<GeoAx>, <Stat>, <T>, <D>, <DL>])
Объяснение
SETTCOR(...):
Предопределенная функция изменения компонентов инструмента
Автономно в
да
кадре:
Программирование ЧПУ
850
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.13 Коррекции инструмента
<состояние>:
Возвращаемое значение функции. Отрицательные значения показывают со-
стояния ошибки.
Тип данных:
INT
Значе-
0
Функция OK
ние:
-1
Не зарезервировано места в памяти для инструментально-
го окружения:
MD18116 $MN_MM_NUM_TOOL_ENV = 0
Т. е. функциональность "Инструментальные окружения" от-
сутствует.
-2
Инструментальное окружение с указанным в <Stat> именем
не существует.
-3
Недействительная строка в параметре <Comp>.
Причиной этой ошибки могут быть недействительные или
запрограммированные дважды символы.
-4
Недействительный номер Т
-5
Недействительный номер D
-6
Недействительный номер DL
-7
Попытка обращения к отсутствующему модулю памяти
-8
Попытка обращения к отсутствующей опции (например,
программируемая ориентация инструмента, управление
инструментом)
-9
Недопустимое числовое значение параметра <CorComp>.
-10
Недопустимое числовое значение параметра <CorMode>.
-11
Содержание параметров <Comp> и <CorComp> противоре-
чиво.
-12
Содержание параметров <Comp> и <CorMode> противоре-
чиво.
-13
Содержание параметра <GeoAx> не обозначает гео-ось.
-14
Попытка записи на отсутствующую отладочную коррекцию
Параметры
1
<CorVal>:
Вектор коррекции
В определенной в <Stat> системе координат детали (WСS) действует следую-
щее соотнесение:
• <CorVal> [0]: Абсцисса
• <CorVal> [1]: Ордината
• <CorVal> [2]: Аппликата
Ели необходимо исправить только один компонент инструмента (например,
невекторная коррекция, см. параметр <CorMode>), то значение коррекции
всегда находится в <CorVal>[0] независимо от того, для какой оси но дей-
ствует. При этом содержание двух остальных компонентов не обрабатывает-
ся.
Если <CorVal> или компонент <CorVal> относится к поперечной оси, то дан-
ные нормируются как размер радиуса. Это означает, что инструмент удлин-
яется, например, на заданный размер, и это ведет, соответственно, к двой-
ному увеличению диаметра детали.
Данные размеров относятся к основной системе СЧПУ (дюймовая или мет-
рическая).
Тип данных:
REAL[3]
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
851
Расширенное программирование
4.13 Коррекции инструмента
2
<Comp>:
Компонент(ы) инструмента
Тип данных:
STRING
Эта цепочка символов состоит из двух частей, разделенных двоеточием.
Общая форма: "<SubStr_1> [: <SubStr_2]"
<SubStr_1>:
Первая часть строки всегда должна быть в наличии и мо-
жет состоять из одного или из двух символов. При этом пер-
вый или единственный символ обозначает 1-й компонент
(Val1), а второй символ - 2-й компонент (Val2), обрабаты-
ваемые в соответствии со следующими параметрами
<CorComp> и <CorMode>.
Символ:
C
размер адаптера или базовый размер
(один из двух существующих как альтер-
натива компонентов, который активен
для используемого инструмента)
E
отладочные коррекции
G
геометрия
S
суммарные коррекции
W
износ
<Substr_2>:
Вторая часть строки опциональна. Она может состоять на
выбор из (единственной) буквы "W" или "T".
Символ:
W
Если вторая часть строки пустая или со-
держит букву "W", то значения коррек-
ции вычисляются так, как если бы их за-
меряли в системе координат
детали (WСS).
T
Если вторая часть строки содержит букву
"T", то то значения коррекции вычи-
сляются так, как если бы их замеряли
в системе координат инструмента (Tool
Coordinate System, TCS).
Написание символов в строке (прописное или строчное) является произ-
вольным. Можно вставлять любое число пробелов или символов табулятора
(white spaces).
Программирование ЧПУ
852
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.13 Коррекции инструмента
3
<CorComp>:
Задает компонент(ы) блока данных инструмента, которые необходимо опи-
сать (опционально)
Тип данных:
INT
Значе-
0
Значение коррекции <CorVal>[0] относится к гео-оси, опре-
ние:
деленной в параметре <GeoAx>, в системе координат дета-
ли или в системе координат инструмента (см. описание
параметра <Comp>). Это означает, что значение коррекции
должно быть так учтено в обозначенных компонентах ин-
струмента, что с учетом всех параметров, способных повли-
ять на вычисление длин инструмента, результатом оказы-
вается изменение всей длины инструмента в указанном ос-
евом направлении на заданное значение.
Такое изменение можно получить коррекцией указанных в
<Comp> компонентов и указанного в <CorMode> правила
вычисления символов (см. следующий параметр). Поэтому
получившаяся коррекция может сказываться на всех трех
компонентах оси.
1
Как "0", но векторн. Содержание вектора <CorVal> относится
к абсциссе, ординате и аппликате в системе координат де-
тали или в системе координат инструмента (см. описание
параметра <Comp>).
Следующий параметр <GeoAx> не обрабатывается.
2
Векторная коррекция, т.е., L1, L2, L3 можно изменять одно-
временно.
Однако в отличие от вариантов "0" и "1" содержащиеся в
<CorVal> значения коррекции относятся к координатам
компонента Val1 (см. следующий параметр <CorMode>) ин-
струмента.
Возможное наклонное положение инструмента относитель-
но системы координат детали на коррекцию не влияет.
3 - 5
Коррекция значений длины инструмента с L1 по L3 (с
$TC_DP3 по $TC_DP5) или соответствующих значений для
коррекции на износ, отладочной коррекции или суммарной
коррекции.
Значение коррекции содержится в <CorVal>[0]. Оно изме-
рено в координатах компонента Val1 (см. следующий
параметр <CorMode>). Возможное наклонное положение
инструмента относительно системы координат детали на
коррекцию не влияет.
6
Коррекция значения радиуса инструмента ($TC_DP6) или
соответствующих значений для коррекции на износ, отла-
дочной коррекции или суммарной коррекции. Учитывают-
ся биты 10 и 11 (нормирование указания диаметра или из-
носа диаметра на выбор как указание радиуса или диамет-
ра) в машинных данных
MD20360 $MC_TOOL_PARAMETER_DEF_MASK.
7
Коррекция с $TC_DP7 по $TC_DP11 или соответствующих
– 11
значений для коррекции на износ, отладочной коррекции
или суммарной коррекции. Эти параметры обрабатываются
как радиус инструмента.
Если этот параметр не указан, его значение - "0".
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
853
Расширенное программирование
4.13 Коррекции инструмента
4
<CorMode>:
Задает тип выполняемой операции записи (опционально)
Тип данных:
INT
Значе-
0
Val1neu = <CorVal>
ние:
1
Val1neu = Val1alt + <CorVal>
2
Val1neu = <CorVal>
Val2neu = 0
3
Val1neu = Val1alt + Val2alt + <CorVal>
Val2neu = 0
Форму записи Val1alt + Val2alt следует понимать как символическую. Если оба
компонента (на основании состояния <_Stat>) нормированы различно, т. е.
если между обоими компонентами действует вращение, то перед сложением
Val2alt преобразуется таким образом, что получающаяся длина инструмента
после удаления Val2neu и перед сложением <CorVal> остается неизменной.
<CorVal> всегда относится к Val1. <CorVal> - это значение, измеряемое в за-
висимости от второй части параметра <Comp> в системе координат детали
(WСS) или в системе координат инструмента (TCS). Поэтому по отношению к
компоненту инструмента, для которого его необходимо учесть, оно в соот-
ветствующих случаях уже преобразовано. Поэтому его невозможно вычи-
слить с сохраненным значением: перед сложением необходимо предпри-
нять обратное преобразование в значение Val1 или Val2. Это может привести
к тому, что коррекция сказывается на другой оси, а не оси, определенной
посредством <CorComp>, или на нескольких осях.
Если <CorComp> = 0, т. е., если <CorVal> содержит не вектор, а лишь отдельное
значение, описанные операции выполняются в координатах замера <CorVal>
(WCS / TCS). В частности, это действительно для установления на нуль Val2neu в
вариантах 2 и 3. Затем этот результат преобразуется обратно в координаты
инструмента. Это может привести к тому, что ни одно из установленных на
нуль значений координат (L1, L2, L3) не равно нулю, или к тому, что значения
координат, которые ранее были равны нулю, теперь отличны от нуля. Однако
если соответствующие операции выполняются последовательно для всех
трех гео-осей, есть гарантия того, что все три значения координат удаляемого
компонента будут равны нулю. Если инструмент не повернут по отношению
к системе координат детали или повернут так, что все компоненты инстру-
мента остаются параллельными к осям координат (перестановки осей), есть
гарантия того, что изменяется соответственно только одна координата ин-
струмента.
Последовательное выполнение одинаковой операции (<CorMode>) при
<CorComp> = 0 для всех трех осей координат в произвольной последователь-
ности идентично однократному выполнению одинаковой операции при
<CorComp>=1.
Для значений параметров "0" и "1" параметр <Comp> должен содержать один
символ, для значений параметров "2" и "3" - два символа.
Пример:
<Comp> содержит строку "ES", <CorMode> содержит значение "2"
⇒ отладочная коррекциянов = <CorVal>, суммарная коррекциянов = 0
Если параметр <CorMode> не указан, его значение - "0".
Программирование ЧПУ
854
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.13 Коррекции инструмента
5
<GeoAx>:
Указывает индекс гео-оси, в который измерялось значение коррекции
<CorVal>[0] (опционально)
Тип данных:
INT
Диапазон зна-
0 ... 2
чений:
Индексы от 0 до 2 относятся к абсциссе, ординате и аппликате в действующей
плоскости (G17/G18/G19) текущего инструментального окружения.
Содержание этого параметра обрабатывается, только если параметр
<CorComp> имеет значение "0".
6
<Stat>:
Имя блока данных для описания инструментального окружения (опциональ-
но)
Тип данных:
STRING
Если значение этого параметра нулевая строка ("") или оно не указывается, то
используется текущее состояние. Если инструмент не задан, используется
текущий инструмент.
7
<T>:
Внутренний номер Т инструмента (опционально)
Тип данных:
INT
Если этот параметр не указан, или если его значение 0, то используется со-
храненный в <Stat> инструмент.
Если значение этого параметра "-1", то используется номер Т активного ин-
струмента. Допускается явное указание номера активного инструмента.
Указание:
Если <Stat> не указана, то в качестве инструментального окружения исполь-
зуется текущее состояние. Поскольку с <T> = 0 выполняется ссылка на сохра-
ненный в инструментальном окружении номер Т, в нем используется актив-
ный инструмент, т. е. данные <T> = 0 и <T> = -1 в этом особом случае равноз-
начны.
8
<D>:
Номер резца инструмента (опционально)
Тип данных:
INT
Если этот параметр не указан или его значение 0, то используемый номер D
зависит от источника номера Т. Если используется номер Т из инструмен-
тального окружения, то считывается и номер D инструментального окруже-
ния, в ином случае таковой текущего активного инструмента.
9
<TL>:
Номер зависящей от места коррекции (опционально)
Тип данных:
INT
Если этот параметр не указан, то используемый номер DL зависит от источ-
ника номера Т. Если используется номер Т из инструментального окружения,
то считывается и номер D инструментального окружения, в ином случае та-
ковой текущего активного инструмента. Если T, D, DL задают инструмент без
зависящих от местоположения коррекций, то в параметре <Comp> не дол-
жны задаваться суммарные или отладочные коррекции (код ошибки в
<Status>).
Примечание
Не все возможные сочетания трех параметров <Comp>, <CorComp> и <CorMode> имеют
смысл. Например, правило вычисления 3 требует в <CorComp> указания двух знаков в
<Comp>. Если указывается недопустимое сочетание параметров, в <Status>
возвращается соответствующий код ошибки.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
855
Расширенное программирование
4.13 Коррекции инструмента
Примеры
Пример 1
Программный код
Комментарий
N10 DEF REAL _CORVAL[3]
N20 $TC_DP1[1,1]=120
; фрезерный инструмент
N30 $TC_DP3[1,1]=10.0
; геометрия L1
N40 $TC_DP12[1,1]=1.0
; износ L1
N50 _CORVAL[0]=0.333
N60 T1 D1 G17 G0
N70 R1=SETTCOR(_CORVAL,"G",0,0,2)
N80 T1 D1 X0 Y0 Z0
; ==> позиция MCS X0.000 Y0.000 Z1.333
N90 M30
<CorComp> = "0", поэтому действующее в направлении Z значение координаты
геометрического компонента заменяется на значение коррекции 0,333.
Таким образом, результирующая общая длина инструмента: L1 = 0,333 + 1,000 = 1,333
Пример 2
Программный код
Комментарий
N10 DEF REAL _CORVAL[3]
N20 $TC_DP1[1,1]=120
; фрезерный инструмент
N30 $TC_DP3[1,1]=10.0
; геометрия L1
N40 $TC_DP12[1,1]=1.0
; износ L1
N50 _CORVAL[0]=0.333
N60 T1 D1 G17 G0
N70 R1=SETTCOR(_CORVAL,"W",0,1,2)
N80 T1 D1 X0 Y0 Z0
; ==> позиция MCS X0.000 Y0.000 Z11.333
N90 M30
<CorComp> = "1", поэтому действующее в направлении Z значение коррекции 0,333
прибавляется к значению износа 1,0.
Таким образом, результирующая общая длина инструмента: L1 = 10,0 + 1,333 = 11,333
Пример 3
Программный код
Комментарий
N10 DEF REAL _CORVAL[3]
N20 $TC_DP1[1,1]=120
; фрезерный инструмент
N30 $TC_DP3[1,1]=10.0
; геометрия L1
N40 $TC_DP12[1,1]=1.0
; износ L1
N50 _CORVAL[0]=0.333
N60 T1 D1 G17 G0
N70 R1=SETTCOR(_CORVAL,"GW",0,2,2)
N80 T1 D1 X0 Y0 Z0
; ==> позиция MCS X0.000 Y0.000 Z0.333
N90 M30
Программирование ЧПУ
856
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.13 Коррекции инструмента
<CorComp> = 2, поэтому действующая в направлении Z коррекция вносится в
геометрический компонент (старое значение заменяется), и значение износа удаляется.
Таким образом, результирующая общая длина инструмента: L1 = 0,333 + 0,0 = 0,333
Пример 4
Программный код
Комментарий
N10 DEF REAL _CORVAL[3]
N20 $TC_DP1[1,1]=120
; фрезерный инструмент
N30 $TC_DP3[1,1]=10.0
; геометрия L1
N40 $TC_DP12[1,1]=1.0
; износ L1
N50 _CORVAL[0]=0.333
N60 T1 D1 G17 G0
N70 R1=SETTCOR(_CORVAL,"GW",0,3,2)
N80 T1 D1 X0 Y0 Z0
; ==> позиция MCS X0.000 Y0.000 Z11.333
N90 M30
<CorComp> = 3, поэтому значение износа и значение коррекции прибавляется к
геометрическому компоненту, и компонент износа удаляется.
Таким образом, результирующая общая длина инструмента: L1 = 11,333 + 0,0 = 11,333.
Пример 5
Программный код
Комментарий
N10 DEF REAL _CORVAL[3]
N20 $TC_DP1[1,1]=120
; фрезерный инструмент
N30 $TC_DP3[1,1]=10.0
; геометрия L1
N40 $TC_DP12[1,1]=1.0
; износ L1
N50 _CORVAL[0]=0.333
N60 T1 D1 G17 G0
N70 R1=SETTCOR(_CORVAL,"GW",0,3,0)
N80 T1 D1 X0 Y0 Z0
; ==> позиция MCS X0.333 Y0.000 Z11.000
N90 M30
<CorComp> = 3, как в предыдущем примере, но теперь коррекция действует на гео-ось с
индексом "0" (ось X), с которой из-за G17 у фрезерного инструмента соотнесен
компонент инструмента L3. Поэтому вызов SETTCOR не влияет на параметры
инструмента $TC_DP3 и $TC_DP12. Вместо этого значение коррекции вносится в $TC_DP5.
Пример 6
Программный код
Комментарий
N10 DEF REAL _CORVAL[3]
N20 $TC_DP1[1,1]=500
; токарный инструмент
N30 $TC_DP3[1,1]=10.0
; геометрия L1
N40 $TC_DP4[1,1]=15.0
; геометрия L2
N50 $TC_DP12[1,1]=10.0
; износ L1
N60 $TC_DP13[1,1]=0.0
; износ L2
N70 _CORVAL[0]=5.0
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
857
Расширенное программирование
4.13 Коррекции инструмента
Программный код
Комментарий
N80 ROT Y-30
N90 T1 D1 G18 G0
N100 R1=SETTCOR(_CORVAL,"GW",0,3,1)
N110 T1 D1 X0 Y0 Z0
; ==> позиция MCS X24.330 Y0.000 Z17.500
N120 M30
Инструмент - это токарный инструмент. В кадре N80 активируется вращение фрейма,
поэтому базовая кинематическая система (BCS) повернута по отношению к системе
координат детали (WСS). Значение коррекции (N70) воздействует в WСS на гео-ось с
индексом "1", т. е., поскольку G18 активна, на ось Х. Поскольку <CorMode> = 3, износ
инструмента в направлении оси Х WCS после выполнения N100 должен стать равным
нулю.
Поэтому содержание релевантных параметров инструмента в конце программы:
$TC_DP3[1,1] : 21.830 ; геометрия L1
$TC_DP4[1,1] : 21.830 ; геометрия L2
$TC_DP12[1,1] : 2.500 ; износ L1
$TC_DP13[1,1] : -4.330 ; износ L2
Геометрические соотношения представлены на следующем изображении. Весь износ,
включая _CORVAL, проецируется на направление X' в WСS. Это дает точку P2. Координаты
этой точки (измерены в координатах X-Y) вносятся в геометрический компонент
инструмента. В износе остается дифф. вектор P2 - P1. Тем самым у износа больше нет
компонента в направлении _CORVAL.
͖͉͕͔͇͇͔͇͌͗͒ͣͦ͞ ͋͒
͏͔͇ ͏͔͙͚͓͔͙͇͗͌͘
[
[
3
B&259$/
͙͉͚͙͋͌͐͌͘ ͉ ͔͇͖͇͉͔͗͒͌͏͏ ;
̯͎͔͕͘ /
/
̪͕͓͙͌͌͗͏ͦ /
/
]
Если иллюстративная программа продолжается после N110 со следующими
операторами, то оставшийся износ полностью передается в геометрию, поэтому
коррекция теперь действует в оси Z' (параметр <GeoAx> = 0).
N120 _CORVAL[0]=0.0
N130 R1=SETTCOR(_CORVAL,"GW",0,3,0)
Программирование ЧПУ
858
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.13 Коррекции инструмента
N140 T1 D1 X0 Y0 Z0 ; ==> позиция MCS X24.330 Y0.000 Z17.500
Поскольку новое значение коррекции равно 0, изменение общей длины инструмента и
тем самым позиции подвода в N140 запрещено. Если бы _CORVAL в N120 была отлична от
0, то получилась бы новая общая длина инструмента, и тем самым и измененная позиция
в N140, но компонент износа длины инструмента был бы в любом случае равен нулю, т. е.
общая длина инструмента в результате в любом случае содержится в геометрическом
компоненте инструмента.
Результат, идентичный двукратному вызову функции SETTCOR с параметром <CorComp>
= 0, достигается и посредством однократного вызова с <CorComp> = 1 (векторная
коррекция):
Программный код
Комментарий
N10 DEF REAL _CORVAL[3]
N20 $TC_DP1[1,1]=500
; токарный инструмент
N30 $TC_DP3[1,1]=10.0
; геометрия L1
N40 $TC_DP4[1,1]=15.0
; геометрия L2
N50 $TC_DP12[1,1]=10.0
; износ L1
N60 $TC_DP13[1,1]=0.0
; износ L2
N70 _CORVAL[0]=0.0
N71 _CORVAL[1]=5.0
N72 _CORVAL[2]=0.0
N80 ROT Y-30
N90 T1 D1 G18 G0
N100 R1=SETTCOR(_CORVAL,"GW",1,3,1)
N110 T1 D1 X0 Y0 Z0
; ==> позиция MCS X24.330 Y0.000 Z17.500
N120 M30
В этом случае все компоненты износа инструмента сразу же после первого вызова
SETTCOR в N100 равны нулю.
Пример 7
Программный код
Комментарий
N10 DEF REAL _CORVAL[3]
N20 $TC_DP1[1,1]=500
; токарный инструмент
N30 $TC_DP3[1,1]=10.0
; геометрия L1
N40 $TC_DP4[1,1]=15.0
; геометрия L2
N50 $TC_DP12[1,1]=10.0
; износ L1
N60 $TC_DP13[1,1]=0.0
; износ L2
N70 _CORVAL[0]=5.0
N80 ROT Y-30
N90 T1 D1 G18 G0
N100 R1=SETTCOR(_CORVAL,"GW",3,3)
N110 T1 D1 X0 Y0 Z0
; ==> позиция MCS X25.000 Y0.000 Z15.000
N120 M30
По сравнению с примером 6 здесь параметр <CorComp> = 3, поэтому можно не указывать
параметр <GeoAx>. Теперь содержащееся в _CORVAL[0] значение действует
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
859
Расширенное программирование
4.13 Коррекции инструмента
непосредственно на компонент инструмента L1, вращение в N80 не влияет на результат,
компоненты износа в $TC_DP12 передаются вместе с _CORVAL[0] в геометрический
компонент, поэтому из-за $TC_DP13 вся длина инструмента уже после первого вызова
SETTCOR в N100 стоит в геометрическом компоненте инструмента.
Пример 8
Программный код
Комментарий
N10 DEF REAL _CORVAL[3]
N20 $TC_DP1[1,1]=500
; токарный инструмент
N30 $TC_DP3[1,1]=10.0
; геометрия L1
N40 $TC_DP4[1,1]=15.0
; геометрия L2
N50 $TC_DP5[1,1]=20.0
; геометрия L3
N60 $TC_DP12[1,1]=10.0
; износ L1
N70 $TC_DP13[1,1]=0.0
; износ L2
N80 $TC_DP14[1,1]=0.0
; износ L3
N90 $SC_WEAR_SIGN=TRUE
N100 _CORVAL[0]=10.0
N110 _CORVAL[1]=15.0
N120 _CORVAL[2]=5.0
N130 ROT Y-30
N140 T1 D1 G18 G0
N150 R1=SETTCOR(_CORVAL,"W",1,1)
N160 T1 D1 X0 Y0 Z0
; ==> позиция MCS X7.990 Y25.000 Z31.160
N170 M30
В N90 устанавливается SD42930 $SC_WEAR_SIGN, т. е. износ должен быть нормирован
отрицательным знаком. Коррекция является векторной (<CorComp> = 1), и вектор
коррекции необходимо прибавить к износу (<CorMode> = 1). Геометрические отношения
в плоскости Z-X представлены на следующем изображении:
;
;
̷͎͚͙͌͒ͣ͏͚͇͗ͥͦ͠ ͕͋͒ͦ ͏͎͔͕͇͘
̪͕͓͙͌͌͗͏ͦ
/
/
3
3
B&259$/ <
;
=
3
=
̯͎͔͕͘ /
/
͖͉͕͔͇͇͔͇͌͗͒ͣͦ͞ ͋͒͏͔͇ ͏͔͙͚͓͔͙͇͗͌͘
͕͙͗͏͇͙͔͌͒ͣ͌͢͝ ͎͔͇͔͌͞͏ͦ
=
Программирование ЧПУ
860
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.13 Коррекции инструмента
Из-за <CorMode> = 1 геометрический компонент инструмента остается неизменным.
Определенный в WСS (вращение вокруг оси y) вектор коррекции должен быть передан в
компонент износа так, чтобы общая длина инструмента на рис. 3 ссылалась на точку P2.
Поэтому результирующий компонент износа инструмента задан через расстояние между
точками P1 и P2.
Но поскольку износ из-за установочных данных SD42930 $SC_WEAR_SIGN нормируется
отрицательно, полученная таким образом коррекция должна быть внесена в память
коррекций с отрицательным знаком. Поэтому содержание релевантных параметров
инструмента в конце программы:
$TC_DP3[1,1] : 10.000 ; геометрия L1 (без изменений)
$TC_DP4[1,1] : 15.000 ; геометрия L2 (без изменений)
$TC_DP5[1,1] : 10.000 ; геометрия L3 (без изменений)
$TC_DP12[1,1] : 2.010 ; износ L1 (= 10 - 15 * cos(30) + 10 * sin(30))
$TC_DP13[1,1] : -16.160 ; износ L2 (= -15 * sin(30) - 10 * cos(30))
$TC_DP14[1,1] : -5.000 ; износ L3
По компоненту L3 в направлении Y можно определить действие установочных данных
SD42930 $SC_WEAR_SIGN без дополнительного усложнения вращением фрейма.
Дополнительная информация
Токарный и шлифовальный инструмент Вычисление длины инструмента в
зависимости от MD20360 $MC_TOOL_PARAMETER_DEF_MASK
В машинных данных определяется, как у токарного или шлифовального инструмента
следует нормировать износ или длину инструмента в оси диаметра (если имеется).
MD20360 $MC_TOOL_PARAMETER_DEF_MASK.<Bit> = <значение>
<Bit>
<значе-
Объяснение
ние>
0
0
В случае токарного и шлифовального инструмента параметр износа попе-
речной оси учитывается при вычислении значения радиуса:
1
В случае токарного и шлифовального инструмента параметр износа попе-
речной оси учитывается при вычислении как значение диаметра:
1
0
В случае токарного и шлифовального инструмента компонент длины
инструмента поперечной оси учитывается при вычислении как значение
радиуса:
1
В случае токарного и шлифовального инструмента компонент длины
инструмента поперечной оси учитывается при вычислении как значение
диаметра:
Если соответствующие биты установлены, то соответствующая строка нормируется с
коэффициентом 0.5. Коррекция посредством SETTCOR выполняется таким образом, что
все эффективное изменение длины инструмента равно указанному в <CorVal>
значению. Если при расчете длины длина нормируется на основании машинных данных
MD20360 $MC_TOOL_PARAMETER_DEF_MASK с коэффициентом 0,5, то коррекция этого
компонента должна выполняться с двойным указанным значением.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
861
Расширенное программирование
4.13 Коррекции инструмента
Пример
MD20360 $MC_TOOL_PARAMETER_DEF_MASK = 2 (длина инструмента должна быть
нормирована в оси диаметра с коэффициентом 0.5)
Ось X - ось диаметра.
Программный код
Комментарий
N10 DEF REAL _LEN[11]
N20 DEF REAL _CORVAL[3]
N30 $TC_DP1[1,1]=500
; Тип инструмента
N40 $TC_DP2[1,1]=2
; Положение резцов
N50 $TC_DP3[1,1]=3.
; Геометрия - длина 1
N60 $TC_DP4[1,1]=4.
; Геометрия - длина 2
N70 $TC_DP5[1,1]=5.
; Геометрия - длина 3
N80 _CORVAL[0]=1.
N90 _CORVAL[1]=1.
N100 _CORVAL[2]=1.
N110 T1 D1 G18 G0 X0 Y0 Z0
; ==> позиция MCS X1.5 Y5 Z4
N120 R1=SETTCOR(_CORVAL,"G",1,1)
N130 T1 D1 X0 Y0 Z0
; ==> позиция MCS X2.5 Y6 Z5
N140 R3=$TC_DP3[1,1]
; = 5. = (3.000 + 2.*1.000)
N150 R4=$TC_DP4[1,1]
; = 5. = (4.000 + 1.000)
N160 R5=$TC_DP5[1,1]
; = 6. = (5.000 + 1.000)
N170 M30
Коррекция длины инструмента должна составлять 1 мм в каждой оси (с N80 по N100).
Поэтому в длинах L2 и L3 к исходной длине прибавляется 1 мм. И наоборот, к исходной
длине инструмента в L1 прибавляется двойное значение коррекции (2 мм), чтобы общая
длина инструмента изменилась, как и требуется, на 1 мм. При сравнении с позициями
подвода в кадрах N110 и N130 видно, что каждая позиция оси изменилась на 1 мм.
4.13.14
Считывание соотнесения длин инструмента L1, L2, L3 с осями координат
(LENTOAX)
Функция LENTOAX выводит информацию по соотнесению длин инструмента L1, L2 и
L3 активного инструмента с абсциссой, ординатой и аппликатой. Управление
соотнесением абсциссы, ординаты и аппликаты с гео-осями осуществляется через
фреймы и активную плоскость (G17 - G19).
При этом рассматривается только геометрический компонент инструмента (от
$TC_DP3[<t>,<d>] до $TC_DP5[<t>,<d>]), т. е. возможное отличное от данного
соотнесение осей других компонентов (например, износ) на результат не влияет.
Синтаксис
<состояние> = LENTOAX(<AxInd>, <Matrix>[, <Coord>])
Программирование ЧПУ
862
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.13 Коррекции инструмента
Принцип
LENTOAX(...):
Предопределенная функция выведения информации по соотнесению длин
инструмента L1, L2 и L3 активного инструмента с осями координат
Автономно в ка-
да
дре:
<состояние>:
Возвращаемое значение функции. Отрицательные значения показывают со-
стояния ошибки.
Тип данных:
INT
Значе-
0
Функция OK
ние:
Информации в <AxInd> для описания достаточно (все
компоненты длин инструмента параллельны гео-осям).
1
Функция ОК, но для правильного описания необходимо
обработать содержание <Matrix> (компоненты длин ин-
струмента не параллельны гео-осям).
-1
Недействительная строка в параметре <Coord>.
-2
нет активного инструмента.
Параметры
1
<AxInd>:
Если компоненты длин инструмента параллельны гео-осям, то индексы ос-
ей, соотнесенных с компонентами длин с L1 по L3, возвращаются в
поле <AxInd>.
• <AxInd> [0]: Абсцисса
• <AxInd> [1]: Ордината
• <AxInd> [2]: Аппликата
Тип данных:
INT[3]
Значе-
0
Соотнесение отсутствует (ось не существует)
ние:
1 ... 3
номер длины, действующей в соответствующей оси
координат.
или
Знак является отрицательным, если компонент длины
-1 ... -3
инструмента указывает в отрицательном направлении
координат.
Если не все компоненты длин параллельны или встречно-параллельны гео-
осям, то в <AxInd> возвращается индекс оси, содержащий самую большую
долю компонента длин инструмента. В этом случае (если только функция не
выводит ошибку по иной причине) возвращаемое значение <Status> = 1.
Тогда отображение компонентов длин инструмента с L1 по L3 на гео-осях с 1-
ой по 3-ю полностью описывается содержанием 2-го параметра <Matrix>.
2
<Matrix>:
Матрица, отображающая вектор длин инструмента (L1=1, L2=1, L3=1) в век-
тор осей координат (абсцисса, ордината, аппликата), т. е. столбцам присвое-
ны компоненты длин инструмента в последовательности L1, L2, L3, строкам
- оси в последовательности: абсцисса, ордината, аппликата.
Тип данных:
REAL
В матрице всегда действительны все элементы, в т. ч., если относящаяся к
оси координат гео-ось отсутствует, т. е. если соответствующий элемент в
<AxInd> = 0.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
863
Расширенное программирование
4.13 Коррекции инструмента
3
<Coord>:
Система координат, для которой действует соотнесение (опционально)
Тип данных:
STRING
Сим-
MCS
Отображение длины инструмента в систему координат
вол:
станка
M
BCS
Отображение длины инструмента в базовую кинемати-
ческую систему
B
WCS
Отображение длины инструмента в систему координат
инструмента (по умолчанию)
W
KCS
Отображение длины инструмента в систему координат
инструмента кинематической трансформации
K
TCS
Отображение длины инструмента в систему координат
инструмента
T
Написание символов в строке (прописное или строчное) является произ-
вольным.
Если параметр <Coord> не указывается, используется WСS (по умолчанию).
Примечание
В TCS всегда все компоненты длин инструмента параллельны или встречно-параллельны
осям.
Встречно-параллельными компоненты могут быть только тогда, когда активно
отражение и установлены следующие установочные данные:
SD42900 $SC_MIRROR_TOOL_LENGTH (смена знака длины инструмента при отражении)
Пример
Стандартный случай: фрезерный инструмент при G17.
L1 действует в Z (аппликата), L2 действует в Y (ордината), L3 действует в X (абсцисса).
Вызов функции в форме:
<состояние>=LENTOAX(<AxInd>,<Matrix>,"WCS")
В этом случае параметр результата <AxInd> содержит значения:
<AxInd>[0] = 3
<AxInd>[1] = 2
<AxInd>[2] = 1
или кратко: ( 3, 2, 1)
Соответствующая матрица (<Matrix>) в этом случае:
0DWUL[!
Переключение с G17 на G18 или G19 ничего не меняет в результате, т. к. соотнесение
компонентов длин с гео-осями изменяется также, как и соотнесение абсциссы, ординаты
и аппликаты.
Программирование ЧПУ
864
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.14 Параметры траектории
Теперь при активной G17 программируется вращение фрейма вокруг Z на 60 градусов,
например,
ROT Z60
Направление аппликаты (направление Z) остается неизменным, основной компонент L2
теперь лежит в направлении новой оси Х, основной компонент L1 в отрицательном
направлении оси Y. Поэтому возвращаемое значение <Status>) = 1, <AxInd> содержит
значения (2, -3, 1).
Соответствующая матрица (<Matrix>) в этом случае:
VLQ r FRV r
0DWUL[!
FRV r
VLQ r
4.14
Параметры траектории
4.14.1
Характеристика подачи (FNORM, FLIN, FCUB, FPO)
Для более гибкой задачи характеристики подачи программирование подачи по DIN
66025 дополнено линейными и кубическими характеристиками.
Кубические характеристики могут программироваться напрямую или как
интерполирующие сплайны. Благодаря этому возможно, в зависимости от изгиба
обрабатываемой детали, непрерывное программирование ровных характеристик
скоростей.
Эти характеристики скорости обеспечивают изменения ускорения без рывков и тем
самым изготовление равномерных поверхностей детали.
Синтаксис
F… FNORM
F… FLIN
F… FCUB
F=FPO(…,…,…)
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
865
Расширенное программирование
4.14 Параметры траектории
Значение
FNORM
Обычная подача по DIN66025 (первичная установка)
Значение подачи задается через ход траектории кадра и после
действует как модальное значение.
FLIN
Линейный профиль скорости движения по траектории
Значение подачи линейно выводится от актуального значения
в начале кадра до конца кадра через ход траектории и после
действует как модальное значение.
Характеристика подачи FLIN и FCUB действует с G93, G94 и
G95, не действует с G96/G961 и G97/G971.
При G95 и изменяемой через процентовку или синхронное
действие скорости шпинделя возможна некоторая задержка
синхронизации.
FCUB
Кубический профиль скорости движения по траектории
Запрограммированные покадрово значения F соединяются
относительно конечной точки кадра через сплайн. Сплайн на-
чинается и заканчивается по касательной к предшествующе-
му и последующему заданному значению подачи. Если адрес
F отсутствует в кадре, то для этого используется последнее за-
программированное значение F.
Характеристика подачи FCUB действует с G93 и G94, не дей-
ствует с G95, G96/G961 и G97/G971.
F=FPO(...,...,...)
Профиль скорости движения по траектории через полином
Адрес F обозначает характеристику подачи через полином от
актуального значения до конца кадра. После конечное значе-
ние считается модальным значением.
Независимо от запрограммированной характеристики подачи действуют функции для
программирования параметров движения по траектории.
Запрограммированная характеристика подачи всегда действует абсолютно, независимо
от G90 или G91.
Примечание
Оптимизация подачи на изогнутых участках траектории
Полином подачи F=FPO() и сплайн подачи FCUB всегда должны проходиться с постоянной
подачей по контуру CFC . Благодаря этому возможно создание постоянного по
ускорению профиля заданной подачи.
Программирование ЧПУ
866
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.14 Параметры траектории
Пример: Различные профили подачи
ȼɛɑɍɤɍ
/
/
/
/
/
/
/
/
/
/
/
/
/
/
/
ɂɛɑ ɟɝɍɒ
ɗɟɛɝɕɕ
Программный код
Комментарий
N1 F1000 FNORM G1 X8 G91 G64
; Постоянный профиль подачи, указание составного раз-
мера
N2 F2000 X7
; Скачкообразное изменение заданной скорости
N3 F=FPO(4000, 6000, -4000)
; Профиль подачи через полином с подачей 4000 на конце
кадра.
N4 X6
; Полиномиальная подача 4000 действует как модальное
значение.
N5 F3000 FLIN X5
; Линейный профиль подачи
N6 F2000 X8
; Линейный профиль подачи
N7 X5
; Линейная подача действует как модальное значение
N8 F1000 FNORM X5
; Постоянный профиль подачи со скачкообразным изме-
нением ускорения.
N9 F1400 FCUB X8
; Все последующие покадрово запрограммированные
значения F соединяются сплайнами.
N10 F2200 X6
N11 F3900 X7
N12 F4600 X7
N13 F4900 X5
; Отключить профиль сплайна.
N14 FNORM X5
N15 X20
Дополнительная информация
FNORM
Адрес подачи F обозначает подачу по траектории как постоянное значение по DIN 66025.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
867
Расширенное программирование
4.14 Параметры траектории
ȼɛɑɍɤɍ
/
/
/
ɂɛɑ ɟɝɍɒɗɟɛɝɕɕ
FLIN
Характеристика подачи выводится линейно от актуального значения подачи к
запрограммированному значению F до конца кадра.
ȼɛɑɍɤɍ
/
/
/
ɂɛɑ ɟɝɍɒɗɟɛɝɕɕ
FCUB
Подача выводится от актуального значения подачи к запрограммированному значению
F до конца кадра по кубической характеристике. СЧПУ соединяет все
запрограммированные покадрово с активной FCUB значения подачи через сплайны.
Значения подачи служат здесь как опорные точки для вычисления сплайн-интерполяции.
ȼɛɑɍɤɍ
/
/
/
/
/
/
ɂɛɑ ɟɝɍɒɗɟɛɝɕɕ
Программирование ЧПУ
868
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.14 Параметры траектории
F=FPO(… , … , …)
Характеристика подачи программируется напрямую через полином. Указание
коэффициентов полинома выполняется аналогично полиномиальной интерполяции.
Пример:
F=FPO(endfeed,quadf,cubf)
endfeed, quadf и cubf - это заранее определенные переменные.
endfeed
подача на конце кадра
quadf
квадратный коэффициент полинома
cubf
кубический коэффициент полинома
При активной FCUB сплайн в начале и в конце кадра тангенциально примыкает к
установленной через FPO характеристике.
ȼɛɑɍɤɍ
/
/
/
ɂɛɑ ɟɝɍɒɗɟɛɝɕɕ
Поведение при активной функции компрессора
При активной функции компрессора (COMP...) и объединении нескольких кадров в
сегмент сплайна действительно следующее:
FNORM:
Для сегмента сплайна действует слово F последнего соответствующего
кадра.
FLIN:
Для сегмента сплайна действует слово F последнего соответствующего
кадра.
Запрограммированное значение F действует к концу сегмента и после
выполняется линейный подвод.
FCUB:
Созданный сплайн подачи отклоняется макс. на определенное в машин-
ных данных MD20172 $MC_COMPRESS_VELO_TOL значение от запрограм-
мированных конечных точек.
F=FPO(…, …, …):
Эти кадры не сжимаются.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
869
Расширенное программирование
4.14 Параметры траектории
4.14.2
Динамические характеристики
4.14.2.1
Режим ускорения (BRISK, BRISKA, SOFT, SOFTA, DRIVE, DRIVEA)
Для программирования режима ускорения имеются следующие команды программы
обработки детали:
• "BRISK, BRISKA"
Отдельные оси или траекторные оси движутся с макс. ускорением до достижения
запрограммированной скорости подачи (Ускорение без ограничения рывка).
• "SOFT, SOFTA"
Отдельные оси или траекторные оси движутся с постоянным ускорением до
достижения запрограммированной скорости подачи (Ускорение с ограничением
рывка).
• "DRIVE, DRIVEA"
Отдельные оси или траекторные оси движутся с макс. ускорением до
сконфигурированной границы скорости (установка MD!). После этого
осуществляется уменьшение ускорения (установка MD!) до достижения
запрограммированной скорости подачи.
̮͇͇͔͔͕͋͌ ͎͔͇͔͌͞͏͌
%5,6.
62)7
͕͖͙͏͓͇͔͕͒ͣ͌
͇͋ͦ͌͌͠͠ ͋͒ͦ
͖͕ ͉͓͔͗͌͌͏
͓͇͔͌͜͏͑͏
̩͓͗͌ͦ
Рисунок 4-13
Характеристика скорости движения по траектории при BRISK и SOFT
Программирование ЧПУ
870
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.14 Параметры траектории
̮͇͇͔͔͕͋͌ ͎͔͇͔͌͞͏͌
̪͇͔͗͏͇͝
͖͕͙͕͔͔͕͕ͦ͊͘
͚͕͔͑͗͌͘͏ͦ
̩͓͗͌ͦ
Рисунок 4-14
Характеристика скорости движения по траектории при DRIVE
Синтаксис
BRISK
BRISKA(<ось1>,<ось2>,…)
SOFT
SOFTA(<ось1>,<ось2>,…)
DRIVE
DRIVEA(<ось1>,<ось2>,…)
Объяснение
BRISK:
Команда для включения "Ускорения без ограничения рывка"
для траекторных осей.
BRISKA:
Команда для включения "Ускорения без ограничения рывка"
для движений отдельных осей (JOG, JOG/INC, позиционирую-
щая ось, качающаяся ось, и т.д.).
SOFT:
Команда для включения "Ускорения с ограничением рывка"
для траекторных осей.
SOFTA:
Команда для включения "Ускорения с ограничением рывка"
для движений отдельных осей (JOG, JOG/INC, позиционирую-
щая ось, качающаяся ось, и т.д.).
DRIVE:
Команда для включения уменьшенного ускорения выше
сконфигурированной границы скорости
(MD35220 $MA_ACCEL_REDUCTION_SPEED_POINT) для траек-
торных осей.
DRIVEA:
Команда для включения уменьшенного ускорения выше
сконфигурированной границы скорости
(MD35220 $MA_ACCEL_REDUCTION_SPEED_POINT) для движе-
ний отдельных осей (JOG, JOG/INC, позиционирующая ось,
качающаяся ось, и т.д.).
(<ось1>,<ось2>,…):
Отдельные оси, для которых должен действовать вызванный
режим ускорения.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
871
Расширенное программирование
4.14 Параметры траектории
Граничные условия
Смена режима ускорения при обработке
Если в программе обработки детали режим ускорения изменяется при обработке (BRISK
↔ SOFT), то и в режиме управления траекторией на переходе выполняется смена кадра
с точным остановом на конце кадра.
Примеры
Пример 1: SOFT и BRISKA
Программный код
N10 G1 X… Y… F900 SOFT
N20 BRISKA(AX5,AX6)
Пример 2: DRIVE и DRIVEA
Программный код
N05 DRIVE
N10 G1 X… Y… F1000
N20 DRIVEA (AX4, AX6)
4.14.2.2
Управление ускорением для ведомых осей (VELOLIMA, ACCLIMA, JERKLIMA)
В соединениях осей (Страница 932) (тангенциальное слежение, буксировка,
соединение по главному значению, электронный редуктор) ведомые оси/шпиндели
перемещаются в зависимости от одной или нескольких ведущих осей/шпинделей.
Управление динамическими ограничениями ведомых осей/шпинделей возможно с
помощью функций VELOLIMA, ACCLIMA и JERKLIMA из программы обработки детали или
из синхронных действий, и при уже активированном соединении осей.
Примечание
Функция JERKLIMA доступна не для всех типов соединений.
• ACCLIMA и VELOLIMA воздействуют в шпиндельном режиме на общее движение
шпинделя, в том числе в случае без сопряжения. В переменных
$AC_SMAXACC_INFO или $AC_SMAXVELO_INFO ограничение отображается
посредством идентификатора 22.
• В шпиндельном режиме значение VELOLIMA ограничено до 100 процентов.
• В отношении разрешенной скорости для соединений шпинделя действует следующее:
Если движение соединения уже исчерпывает максимальное число оборотов, и тем
самым запрограммированное основное движение останавливается, то отображается
аварийное сообщение 22015 "Ведомый шпиндель не имеет динамики для
дополнительного движения".
Программирование ЧПУ
872
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.14 Параметры траектории
Синтаксис
VELOLIMA(<ось>)=<значение>
ACCLIMA(<ось>)=<значение>
JERKLIMA(<ось>)=<значение>
Объяснение
VELOLIMA:
Команда для коррекции спараметрированной максимальной скорости
ACCLIMA:
Команда для коррекции спараметрированного максимального ускорения
JERKLIMA:
Команда для коррекции спараметрированного максимального рывка
<ось>:
Ведомая ось, динамические ограничения которой должны быть исправлены
<значение>:
Процентная поправка
Примеры
Пример 1: Коррекция динамических ограничений для ведомой оси (AX4)
Программный код
Комментарий
VELOLIMA[AX4]=75
; Коррекция ограничения до 75 % зафиксированной в машинных данных
макс. осевой скорости.
ACCLIMA[AX4]=50
; Коррекция ограничения до 50 % зафиксированного в машинных данных
макс. осевого ускорения.
JERKLIMA[AX4]=50
; Коррекция ограничения до 50 % зафиксированного в машинных данных
макс. осевого рывка при движении по траектории.
Пример 2: Электронный редуктор
Ось 4 через соединение "Электронный редуктор" соединена с осью Х. Приемистость
ведомой оси ограничивается до 70 % макс. ускорения. Макс. допустимая скорость
ограничивается до 50 % макс. скорости. После успешного включения соединения макс.
допустимая скорость снова устанавливается на 100 %.
Программный код
Комментарий
N120 ACCLIMA[AX4]=70
; Уменьшенное макс. ускорение.
N130 VELOLIMA[AX4]=50
; Уменьшенная макс. скорость.
N150 EGON(AX4,"FINE",X,1,2)
; Включение соединения электронного редуктора.
N200 VELOLIMA[AX4]=100
; Полная макс. скорость.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
873
Расширенное программирование
4.14 Параметры траектории
Пример 3: Управления соединением по главному значению через статическое
синхронное действие
Ось 4 через соединение по главному значению соединяется с осью Х. Динамическая
характеристика через статическое синхронное действие 2 от позиции 100
ограничивается до 80 %.
Программный код
Комментарий
N120 IDS=2 WHENEVER $AA_IM[AX4] >
; Синхронное действие
100 DO ACCLIMA[AX4]=80
N130 LEADON(AX4, X, 2)
; Соединение по главному значению вкл
4.14.2.3
Активация спец. для технологии динамических значений (DYNNORM, DYNPOS,
DYNROUGH, DYNSEMIFIN, DYNFINISH, DYNPREC)
С помощью команд G-группы 59 "Динамический режим для интерполяции траектории"
для различных технологических этапов обработки можно активировать подходящую
динамику.
Динамические значения и G-команды могут конфигурироваться и поэтому зависят от
установок машинных данных.
Дополнительная информация: Описание функций - Основные функции
Синтаксис
Активация динамический значений:
DYNNORM/DYNPOS/DYNROUGH/DYNSEMIFIN/DYNFINISH/DYNPREC
Примечание
Динамические значения активируются уже в том кадре, в котором программируется
соответствующая G-команда. Обработка не останавливается.
Запись или чтение определенного элемента поля:
R<m>=$MA...[n,X]
$MA...[n,X]=<значение>
Объяснение
DYNNORM:
Активировать обычную динамику
DYNPOS:
Активировать динамику для режима позиционирования, нарезания внут-
ренней резьбы
DYNROUGH:
Активировать динамику для черновой обработки
DYNSEMIFIN:
Активировать динамику для предварительной чистовой обработки
DYNFINISH:
Активировать динамику для чистовой обработки
DYNPREC:
Активировать динамику для точной чистовой обработки
Программирование ЧПУ
874
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.14 Параметры траектории
R<m>:
R-параметр с номером <m>
$MA...[n,X]:
Машинные данные с определяющим динамику элементом поля
<n>:
Индекс поля
Диапазон значе-
0 ... 5
ний:
0
Обычная динамика (DYNNORM)
1
Динамика для режима позиционирования (DYNPOS)
2
Динамика для черновой обработки (DYNROUGH)
3
Динамика для предварительной чистовой обработки (DYNSEMIFIN)
4
Динамика для чистовой обработки (DYNFINISH)
5
Динамика для точной чистовой обработки (DYNPREC)
<X>:
Адрес оси
<значение>:
Динамическое значение
Примеры
Пример 1: Активация динамических значений
Программный код
Комментарий
DYNNORM G1 X10
; Первичная установка
DYNPOS G1 X10 Y20 Z30 F…
; Режим позиционирования, нарезание внутренней резь-
бы
DYNROUGH G1 X10 Y20 Z30 F10000
; Черновая обработка
DYNSEMIFIN G1 X10 Y20 Z30 F2000
; Предварительная чистовая обработка
DYNFINISH G1 X10 Y20 Z30 F1000
; Чистовая обработка
DYNPREC G1 X10 Y20 Z30 F600
; Точная чистовая обработка
Пример 2: Запись или чтение определенного элемента поля
Макс. ускорение для черновой обработки, ось X.
Программный код
Комментарий
R1=$MA_MAX_AX_ACCEL[2,X]
; Чтение
$MA_MAX_AX_ACCEL[2,X]=5
; Запись
4.14.3
Движение с предуправлением (FFWON, FFWOF)
Благодаря предуправлению зависящий от скорости путь выбега уменьшается
практически до нуля. Движение с предуправлением способствует более высокой
точности контура и тем самым лучшим производственным результатам.
Синтаксис
FFWON
FFWOF
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
875
Расширенное программирование
4.14 Параметры траектории
Значение
FFWON:
Команда для включения предуправления
FFWOF:
Команда для выключения предуправления
Примечание
Через машинные данные устанавливается тип предуправления и то, какие траекторные
оси должны перемещаться через предуправление.
Стандарт: зависящее от скорости предуправление
Опция: зависящее от ускорения предуправление
Пример
Программный код
N10 FFWON
N20 G1 X… Y… F900 SOFT
4.14.4
Программирование допуска контура/ориентации (CTOL, OTOL, ATOL)
Адресами CTOL, OTOL, ATOL можно подбирать определенные в машинных и
установочных данных допуски на обработку для функций компрессора, перешлифовку
и сглаживание ориентации в программе обработки детали.
Запрограммированные значения допуска действуют до их повторного
программирования или удаления через присваивание отрицательного значения. Кроме
этого, они удаляются при завершении программы или сбросе (Reset). После удаления
снова действуют установленные в параметрах значения допусков.
Синтаксис
CTOL=<Value>
OTOL=<Value>
ATOL[<Axis>]=<Value>
Программирование ЧПУ
876
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.14 Параметры траектории
Объяснение
CTOL:
Адрес программирования допуска контура
Сфера применения:
• всех функций компрессора
• всех типов перешлифовки кроме G641 и G644
Остановка предвари-
нет
тельной обработки:
Активность:
модально
<Value>:
Значение для допуска контура это линейные данные.
Тип:
REAL
Единица:
дюйм/мм (в зависимости от текущей настрой-
ки указания размеров)
Диапазон зна-
≥ 0:
Значение допуска
чений:
< 0:
Удаление запрограммированного зна-
чения допуска
⇒ Снова действует значение допуска,
установленное в параметрах машин-
ных или установочных данных.
OTOL:
Адрес программирования допуска ориентации
Сфера применения:
• всех функций компрессора
• сглаживания ориентации ORISON
• всех типов перешлифовки, кроме G641, G644, OSD
Остановка предвари-
нет
тельной обработки:
Активность:
модально
<Value>:
Значение для допуска ориентации это угловые данные.
Тип:
REAL
Единица:
Градус
Диапазон зна-
≥ 0:
Значение допуска
чений:
< 0:
Удаление запрограммированного зна-
чения допуска
⇒ Снова действует значение допуска,
установленное в параметрах машин-
ных или установочных данных.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
877
Расширенное программирование
4.14 Параметры траектории
ATOL:
Адрес программирования спец. для оси допуска
Сфера применения:
• всех функций компрессора
• сглаживания ориентации ORISON
• всех типов перешлифовки, кроме G641, G644, OSD
Остановка предвари-
нет
тельной обработки:
Активность:
модально
<Axis>:
Имя оси канала, для которой должен действовать запрограм-
мированный допуск
<Value>:
Значение для осевого допуска, в зависимости от типа оси (ли-
нейная или круговая ось) это линейные или угловые данные.
Тип:
REAL
Единица:
для линейных ос-
дюйм/мм (в зависимости
ей:
от текущей настройки
указания размеров)
для круговых ос-
Градус
ей:
Диапазон зна-
≥ 0:
Значение допуска
чений:
< 0:
Удаление запрограммированного зна-
чения допуска
⇒ Снова действует значение допуска,
установленное в параметрах машин-
ных или установочных данных.
Примечание
Приоритет запрограммированных посредством CTOL и OTOL спец. для канала значений
допуска выше, чем у запрограммированных посредством ATOL спец. для оси значений
допуска.
Примечание
Масштабирующие фреймы
Масштабирующие фреймы действуют на запрограммированные допуски так же, как и
на позиции осей, т. е. относительный допуск остается тем же.
Пример
Программный код
Комментарий
COMPCAD G645 G1 F10000
; Активировать функцию компрессора COMPCAD.
X... Y... Z...
; Здесь действуют машинные и установочные данные.
X... Y... Z...
X... Y... Z...
CTOL=0.02
; С этого места действует допуск контура в 0,02 мм.
X... Y... Z...
X... Y... Z...
X... Y... Z...
Программирование ЧПУ
878
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.14 Параметры траектории
Программный код
Комментарий
ASCALE X0.25 Y0.25 Z0.25
; С этого места действует допуск контура в 0,005 мм.
X... Y... Z...
X... Y... Z...
X... Y... Z...
CTOL=-1
; С этого места снова действуют машинные и установочные дан-
ные.
X... Y... Z...
X... Y... Z...
X... Y... Z...
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
879
Расширенное программирование
4.14 Параметры траектории
Дополнительная информация
Системные переменные
Через следующие системные переменные могут считываться действующие на
соответствующий момент допуски:
•
Чтение с остановкой предварительной обработки (в программе обработки детали и
синхронном действии)
- $AC_CTOL
Спец. для канала допуск контура, который действовал при подготовке текущего
кадра главного хода
Если действующего допуска контура нет, то $AC_CTOL выводит корень из суммы
квадратов допусков гео-осей.
- $AC_OTOL
Спец. для канала допуск ориентации, который действовал при подготовке
текущего кадра главного хода.
Если действующего допуска ориентации нет, то $AC_OTOL выводит во время
текущей трансформации ориентации корень от суммы квадратов допусков осей
ориентации, в иных случаях - значение "-1".
- $AA_ATOL[<ось>]
Спец. для оси допуск контура, который действовал при подготовке текущего кадра
главного хода.
Если допуск контура активен, то $AA_ATOL[<гео-ось>] выводит допуск контура,
деленный на корень из количества гео-осей.
Если допуск ориентации и трансформация ориентации активны, то $AA_ATOL[<ось
ориентации>] выводит допуск ориентации, деленный на корень из количества
осей ориентации.
Примечание
Если значения допуска не были запрограммированы, то переменные $A не являются
достаточно дифференцированными для различения допусков отдельных функций.
Такие случаи возможны, если машинные и установочные данные устанавливают
различные допуски для функций компрессора, перешлифовки и сглаживания
ориентации. В этом случае системные переменные выводят наибольшее значение,
встречающееся в активных на настоящий момент функциях. Если, например,
активны функция компрессора с допуском ориентации 0,1° и сглаживание
ориентации ORISON с 1°, то $AC_OTOL выводит значение "1". Если сглаживание
ориентации отключается, то $AC_OTOL выводит значение "0,1"
•
Чтение без остановки предварительной обработки (только в программе обработки
детали)
- $P_CTOL
Действующий на соответствующий момент спец. для канала допуск контура
- $P_OTOL
Действующий на соответствующий момент спец. для канала допуск ориентации
- $PA_ATOL
Действующий на соответствующий момент спец. для оси допуск контура
Программирование ЧПУ
880
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.14 Параметры траектории
Граничные условия
Запрограммированные посредством CTOL, OTOL, ATOL допуски действуют и для
функций, косвенно зависящих от этих допусков:
• Ограничение ошибки хорды при расчете заданного значения
• Основные функции режима поверхностей произвольной формы
Программирование CTOL, OTOL, ATOL не затрагивает следующие функции
перешлифовки:
• перешлифовка ориентации с OSD
OSD использует не допуск, а расстояние до перехода кадра.
• перешлифовка с G644
G644 служит не для обработки, а для оптимизации смен инструмента и других
движений без обработки.
• перешлифовка с G645
G645 практически всегда ведет себя как G642 и тем самым использует
запрограммированные допуски. Только на переходах (с постоянным касанием)
между кадрами с перепадом кривизны, например, на тангенциальном переходе
окружность - прямая, используется значение допуска из машинных данных
MD33120 $MA_PATH_TRANS_POS_TOL. Путь перешлифовки в таких местах может
проходить и по внешней стороне запрограммированного контура, что не в полной
мере поддерживается многими приложениями. Кроме этого, как правило, для
компенсации изменений кривизны достаточно небольшого постоянного допуска,
который не является проблемой для программиста ЧПУ.
4.14.5
Включение/выключение программируемой точности контура (CPRECON,
CPRECOF)
Функция "Программируемая точность контура" сокращает погрешности траектории на
изогнутых контурах за счет автоматической адаптации скорости.
Она включается и выключается модально действующими командами G-группы 39
(программируемая точность контура).
Синтаксис
CPRECON
CPRECOF
Значение
CPRECON:
включить функцию "Программируемая точность контура"
CPRECOF:
выключить функцию "Программируемая точность контура"
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
881
Расширенное программирование
4.14 Параметры траектории
Пример
Программный код
Комментарий
N10 G0 X0 Y0
N20 CPRECON
; Включение "Программируемой точности контура".
N30 G1 G64 X100 F10000
; Обработка с 10 м/мин в режиме управления траекторией.
N40 G3 Y20 J10
; Автоматическое ограничение подачи в круговом кадре.
N50 G1 X0
; Подача снова без ограничения (10 м/мин).
N100 CPRECOF
; Выключение "Программируемой точности контура".
N110 G0 ...
См. также
Программирование допуска контура/ориентации (CTOL, OTOL, ATOL) (Страница 876)
Дополнительная информация
Точность контура
Соблюдаемая точность контура задается в зависимости от конфигурации станка
(MD20470 $MC_MC_CPREC_WITH_FFW; см. данные изготовителя станка) либо через
установочные данные SD42450$SC_CONTPREC, либо через запрограммированный
допуск контура CTOL. Чем меньше значение и чем меньше коэффициент KV гео-осей, тем
сильнее уменьшается подача по траектории на изогнутых контурах.
Точность контура при движениях ускоренного хода
При обработке деталей с изогнутым контуром и активной функцией "Программируемая
точность контура" с целью поддержания заданной точности контура скорость движения
по траектории ограничивается и при движениях инструмента ускоренным ходом, напр.,
на углах и в кадрах перехода при обходе детали. Для минимизации снижения скорости
движения по траектории при движениях ускоренного хода, для функции
"Программируемая точность контура" может быть установлена отличная от обработки
детали точность контура ускоренного хода:
SD42451 $SC_CONTPREC_G00_ABS (точность контура при ускоренном ходе)
При SD42451 = 0 для движений ускоренного хода действует установленная в
$SC_CONTPREC[DYNNORM] точность контура.
Мин. подача по траектории
Через следующие установочные данные пользователь может задать мин. подачу по
траектории для функции "Программируемая точность контура":
SD42460 $SC_MINFEED (мин. подача по траектории при CPRECON)
Подача не ограничивается этим значением, разве что было запрограммировано более
низкое F-значение или динамические ограничения осей вызывают более низкую
скорость движения по траектории.
Программирование ЧПУ
882
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.14 Параметры траектории
Отсутствие влияния на позиционирующие оси.
Функция "Программируемая точность контура" рассматривает только гео-оси контура.
Она не влияет на скорости позиционирующих осей.
Поведение при запуске программы обработки детали и после сброса канала или
сброса конца программы
При запуске программы обработки детали и после сброса канала или сброса конца
программы включается определенная для группы G-функций 39 первичная установка
СЧПУ (см. информацию изготовителя станка).
4.14.6
Включение/выключение автоматического переключения фильтров
(AFISON, AFISOF)
С помощью функции "Автоматическое переключение фильтров" пользователь может
отмечать области в программе ЧПУ, в которых все разрешенные для этой функции оси
при движениях G0 автоматически будут переключаться на 2-ю цепочку фильтров. Если
параметры 2-й цепочки фильтров настроены таким образом, что происходит усиленное
гашение вибраций, то рывок для движений G0 может быть увеличен. Благодаря этому
скорость движения по траектории для движений G0, напр., на углах, снижается не так
сильно, что способствует сокращению времени выполнения программы.
Синтаксис
Для языковых команд включения и выключения функции требуется отдельный кадр.
AFISON
AFISOF
Значение
AFISON
Включить функцию "Автоматическое переключение фильтров"
AFISOF
Выключить функцию "Автоматическое переключение фильтров"
Пример
Программный код
Комментарий
N390 G1 X1100
; цепочка фильтров 1 активна
; останов на X=1100
N400 AFISON
; автоматическое переключение на цепочку фильтров 2
N410 G0 X1150
; останов на X=1150
N420 G1 X1200
; автоматическое переключение на цепочку фильтров 1
N430 AFISOF
N440 G0 X1300
; цепочка фильтров 1 активна и в кадре G0
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
883
Расширенное программирование
4.14 Параметры траектории
Программный код
Комментарий
N450 G1 X1400
N460 AFISON
N470 G1 X1450
N480 G1 X1500
N490 AFISOF
N500 G1 X1600
N510 G0 X1700
; цепочка фильтров 1 активна и в кадре G0
N520 AFISON
N530 G1 X1750
; останов на X=1750
; автоматическое переключение на цепочку фильтров 2
N540 G0 X1800
; останов на X=1800
; автоматическое переключение на цепочку фильтров 1
N550 AFISOF
N560 G1 X1900
N570 G0 X2000
; цепочка фильтров 1 активна и в кадре G0
; останов на X=2100
N580 AFISON
; автоматическое переключение на цепочку фильтров 2
N590 G0 X2050
N600 G0 X2100
; останов на X=2100
; автоматическое переключение на цепочку фильтров 1
N610 AFISOF
N620 G0 X2200
; цепочка фильтров 1 активна и в кадре G0
Дополнительная информация
Условия
Для использования функции "Автоматическое переключение фильтров" должны быть
выполнены следующие условия:
• Должна быть установлена подлежащая лицензированию опция "Адаптация рывка":
MD19321 $ON_TECHNO_FUNCTION_MASK_1, бит 22 = 1
• Функция должна быть разрешена для канала:
MD20630 $MC_AFIS_MODE = 1
• Функция должна быть разрешена для каждой предусмотренной для автоматического
переключения фильтров оси:
MD32332 $MD_AFIS_ENABLE = 1
• Во всех разрешенных для функции осях:
- должно быть активным ограничение рывка:
MD32400 $MA_AX_JERK_ENABLE = 1
- должны быть выбраны и установлены два типа фильтров рывка (→ MD32402
$MA_AX_JERK_MODE).
Если условия не выполнены, то появляется аварийное сообщение 14782 или 26380.
Программирование ЧПУ
884
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.14 Параметры траектории
Останов при включении/выключении
Останов движения по траектории при включении и выключении функции выполняется
только тогда, когда требуется переключение цепочки фильтров заданного значения
положения.
Перешлифовка
Если при активной перешлифовке (G64x) при смене кадра происходит останов и
автоматическое переключение цепочки фильтров, то это не влияет на контур
перешлифовки.
Пример:
N100 G642 F1000 CTOL=10 CTOLG0=10
N110 G0 X0 Y0
N120 AFISON
N130 G1 X100 Y0
N140 G0 X100 Y100
1
1
① Запрограммированная траектория
② Контур перешлифовки
③ Останов и переключение на 2-ю цепочку фильтров
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
885
Расширенное программирование
4.14 Параметры траектории
4.14.7
Выполнение программы с памятью предварительной обработки
(STOPFIFO, STARTFIFO, FIFOCTRL, STOPRE)
В зависимости от конфигурации, СЧПУ имеет определенное число памятей
предварительной обработки, которые сохраняют подготовленные кадры перед
выполнением и выводят их в процессе производства как быстрые последовательности
кадров. Благодаря этому возможно прохождение коротких путей с высокими
скоростями. Если это допускает остаточное время СЧПУ, память предварительной
обработки всегда заполняется.
̶͇͓͙ͦͣ
̶͕͇͓͓͇͗͊͗
͖͉͇͗͌͋͗͏͙͔͕͌͒ͣ͐
̶̺̾
͕͈͇͈͕͙͗͑͏
̶͕͗͌͘͘͝ ͏͎͕͙͕͉͔͊͒͌͏ͦ
͈͙͗͌͘͢͢ ͖͕͕͉͇͙͔͕͙͒͌͋͌͒ͣ͘͘͏ ͇͕͉͑͋͗
Обозначить участок обработки
Участок обработки, который должен быть буферизирован в память предварительной
обработки, обозначается в программе обработки детали в начале с "STOPFIFO" и на конце
с "STARTFIFO". Выполнение подготовленных и буферизированных кадров начинается
только после команды "STARTFIFO" или заполнения памяти предварительной обработки.
Автоматическое управление памятью предварительной обработки
Автоматическое управление памятью предварительной обработки вызывается
командой "FIFOCTRL". "FIFOCTRL" сначала действует идентично "STOPFIFO". При каждом
программировании ожидается заполнение памяти предварительной обработки и после
начинается выполнение. Разница состоит в поведении при опустошении памяти
предварительной: С "FIFOCTRL" начиная с уровня заполнения в 2/3 скорость движения по
траектории значительно уменьшается, чтобы не допустить полного опустошения и
торможения до состояния покоя.
Остановка предварительной обработки
Подготовка и буферизация кадров останавливается, если в кадре запрограммирована
команда "STOPRE". Следующий кадр выполняется только тогда, когда все подготовленные
Программирование ЧПУ
886
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.14 Параметры траектории
и сохраненные прежде кадры полностью выполнены. Предыдущий кадр
останавливается с точным остановом (как G9).
ВНИМАНИЕ
Отмена программы
При включенной коррекция инструмента и при сплайн-интерполяциях нельзя
программировать "STOPRE", т. к. в этом случае будут прерваны связанные
последовательности кадров.
Синтаксис
Таблица 4-3 Обозначить участок обработки:
STOPFIFO
STARTFIFO
Таблица 4-4 Автоматическое управление памятью предварительной обработки:
FIFOCTRL
Таблица 4-5 Остановка предварительной обработки:
stopre
Примечание
Команды "STOPFIFO", "STARTFIFO", "FIFOCTRL" и "STOPRE" должны программироваться в
отдельном кадре.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
887
Расширенное программирование
4.14 Параметры траектории
Значение
STOPFIFO:
"STOPFIFO" обозначает начало участка обработки, который должен быть по-
мещен в память предварительной обработки. С "STOPFIFO" обработка остана-
вливается и память предварительной обработки заполняется:
• до определения "STARTFIFO" или "STOPRE"
или
• до заполнения памяти предварительной обработки
или
• до достижения конца программы.
STARTFIFO:
С "STARTFIFO" запускается быстрое выполнение участка обработки, парал-
лельно с этим осуществляется заполнение памяти предварительной обработ-
ки
FIFOCTRL:
Включение автоматического управления памятью предварительной обработ-
ки
STOPRE:
Остановить предварительную обработку
Примечание
Заполнение памяти предварительной обработки не выполняется или прерывается, если
участок обработки содержит команды, вызывающие режим без буферизации
(реферирование, измерительные функции, …).
Примечание
При обращении к данным состояния станка ($SA...), СЧПУ создает внутреннюю
остановку предварительной обработки.
Пример: Остановить предварительную обработку
Программный код
Комментарий
N30 MEAW=1 G1 F1000 X100 Y100 Z50
; Кадр измерения со щупом первого измеритель-
ного входа и линейная интерполяция.
N40 STOPRE
; Остановка предварительной обработки.
4.14.8
Определение областей задержки останова (DELAYFSTON, DELAYFSTOF)
Для определения условно прерываемой области задержки останова в программе
обработки детали служат предварительно определенные процедуры DELAYFSTON и
DELAYFSTOF.
Примечание
В синхронных действиях использование DELAYFSTON и DELAYFSTOF не допускается!
Программирование ЧПУ
888
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.14 Параметры траектории
Синтаксис
DELAYFSTON
DELAYFSTOF
Объяснение
DELAYFSTON:
Определение начала области задержки останова
Автономно в ка-
да
дре:
DELAYFSTOF:
Определить конец области задержки останова
Автономно в ка-
да
дре:
Пример программирования
Циклично повторяется следующий программный блок:
Программный код
N99 MY_LOOP:
N100 G0 Z200
N200 G0 X0 Z200
N300 DELAYFSTON
N400 G33 Z5 K2 M3 S1000
N500 G33 Z0 X5 K3
N600 G0 X100
N700 DELAYFSTOF
N800 GOTOB MY_LOOP
На следующем изображении видно, что пользователь нажимает на Стоп в области
задержки останова, а ЧПУ начинает процесс торможения вне области задержки
останова, т. е. в кадре N100. Тем самым ЧПУ останавливается в передней области N100.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
889
Расширенное программирование
4.14 Параметры траектории
̶̺̾ F͙͕͖
1
* =
1
* ;
1
* ; =
1
*
=
;
1
*
=
;
̱͇͉͒͏͇͟ ̸͙͕͖
̱͇͉͒͏͇͟ ̸͙͕͖ ͉͕ ͉͓͗͌ͦ ͕͈͇͈͗
=
͕͙͑͏ *
Дополнительная информация
Конец подпрограммы
При завершении подпрограммы, в которой была вызвана DELAYFSTON, не явно
активируется DELAYFSTOF.
Вложенность
Если подпрограмм 1 в области задержки останова вызывает подпрограмму 2, то вся
подпрограмма 2 это область задержки останова. В частности, DELAYFSTOF не действует в
подпрограмме 2.
Пример:
Программный код
Комментарий
N10010 DELAYFSTON
; Кадры с N10xxx программный уровень 1.
N10020 R1 = R1 + 1
N10030 G4 F1
; Область задержки останова начинается.
N10040 подпрограмма2
; Интерпретация подпрограммы 2.
N20010 DELAYFSTON
; Не действует, повторное начало, 2-й уровень.
N20020 DELAYFSTOF
; Не действует, завершение на другом уровне.
N20030 RET
N10050 DELAYFSTOF
; Конец области задержки останова в той же плоскости.
N10060 R2 = R2 + 2
N10070 G4 F1
; Область задержки останова завершается. Остановы действуют с этого
места сразу же.
Программирование ЧПУ
890
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.14 Параметры траектории
Системные переменные
О нахождении этапа программы обработки детали в данный момент времени в области
задержки останова можно судить по следующим системным переменным:
• в программе обработки детали - $P_DELAYFST
• в синхронных действиях с $AC_DELAYFST
Значение
Объяснение
0
Область задержки останова не активна
1
Область задержки останова активна
4.14.9
Пропуск места в программе для SERUPRO (IPTRLOCK, IPTRUNLOCK)
Для определенных сложных механических ситуаций на станке необходимо
недопущение поиска кадра SERUPRO.
С помощью программируемого указателя прерываний существует возможность
вмешательства для установа при "Поиске на месте прерывания" перед непригодным для
поиска местом.
Могут быть также определены непригодные для поиска области в областях программы
обработки детали, повторный вход ЧПУ в которые невозможен. При отмене программы
ЧПУ отмечает последний обработанный кадр, поиск которого возможен через
интерфейс пользователя HMI.
Синтаксис
IPTRLOCK
IPTRUNLOCK
Команды стоят отдельно в одной строке программы обработки детали и обеспечивают
возможность программируемого указателя прерываний.
Объяснение
IPTRLOCK:
Начало непригодного для поиска сегмента программы
IPTRUNLOCK:
Конец непригодного для поиска сегмента программы
Обе команды допускаются только в программах обработки детали, но не в синхронных
действиях.
Пример
Вложение непригодных для поиска сегментов программы на двух программных уровнях
с не явной "IPTRUNLOCK". Не явная "IPTRUNLOCK" в подпрограмме 1 завершает
непригодную для поиска область.
Программный код
Комментарий
N10010 IPTRLOCK()
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
891
Расширенное программирование
4.14 Параметры траектории
Программный код
Комментарий
N10020 R1 = R1 + 1
N10030 G4 F1
; Кадр останова, начинающий непригодный для поиска сегмент
программы.
N10040 подпрограмма2
; Интерпретация подпрограммы 2.
N20010 IPTRLOCK ()
; Не действует, повторное начало.
N20020 IPTRUNLOCK ()
; Не действует, завершение на другом уровне.
N20030 RET
N10060 R2 = R2 + 2
N10070 RET
; Конец непригодного для поиска сегмента программы.
N100 G4 F2
; Главная программа продолжается.
После прерывание на 100 снова выводит указатель прерываний.
Дополнительная информация
Регистрация и поиск непригодных для поиска областей
Непригодные для поиска сегменты программы обозначаются с помощью языковых
команд "IPTRLOCK" и "IPTRUNLOCK".
Команда "IPTRLOCK" фиксирует указатель прерываний на исполняемом в главном ходе
отдельном кадре (SB1). Этот кадр в дальнейшем обозначается как кадр останова. Если
после "IPTRLOCK" возникает отмена программы, то на интерфейсе пользователя HMI
можно искать этот так называемый кадр останова.
Повторный установ на актуальный кадр
Указатель прерываний с помощью "IPTRUNLOCK" для следующего сегмента программы
будет установлен на актуальный на момент прерывания кадр.
После найденной цели поиска с тем же кадром останова можно повторить новую цель
поиска.
Отредактированный пользователем указатель прерываний снова должен быть удален
через HMI.
Правила вложенности
Следующие моменты регулируют взаимодействие языковых команд "IPTRLOCK" и
"IPTRUNLOCK" со вложенностями и концом программы обработки детали:
1. При завершении подпрограммы, в которой была вызвана "IPTRLOCK", , не явно
активируется "IPTRUNLOCK".
2. "IPTRLOCK" в непригодной для поиска области не действует.
3. Если подпрограмма 1 вызывает в непригодной для поиска области подпрограмму 2,
то вся подпрограмма 2 остается непригодной для поиска. В частности, "IPTRUNLOCK"
не действует в подпрограмме 2.
Программирование ЧПУ
892
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.14 Параметры траектории
Дополнительная информация: Описание функций - Основные функции
Системная переменная
Непригодная для поиска область может быть распознана в программе обработки детали
с помощью "$P_IPTRLOCK".
Автоматический указатель прерываний
Функция автоматического указателя прерываний автоматически устанавливается
определенный ранее тип связи как непригодный для поиска. Посредством машинных
данных автоматический указатель прерываний активируется для
• электронного редуктора при "EGON",
• осевого соединения по главному значению при "LEADON".
При пересечении запрограммированного и активируемого через машинные данные
автоматического указателя прерываний, создается макс. возможная непригодная для
поиска область.
4.14.10
Повторный подвод к контуру (REPOSA, REPOSL, REPOSQ, REPOSQA,
REPOSH, REPOSHA, DISR, DISPR, RMIBL, RMBBL, RMEBL, RMNBL)
Если при обработке текущая программа прерывается и выполняется отвод инструмента
- к примеру, из-за поломки инструмента или для измерения детали - то затем можно
выполнить повторный подвод к контуру в выбранной точке, используя программное
управление.
Команда REPOS действует в ASUP, как возврат из подпрограммы (например, M17).
Последующие кадры больше не исполняются. По прерыванию выполнения программы
см. также "Обработчик прерываний (ASUP) (Страница 559)".
REPOS
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
893
Расширенное программирование
4.14 Параметры траектории
Синтаксис
REPOSA RMIBL DISPR=…
REPOSA RMBBL
REPOSA RMEBL
REPOSA RMNBL
REPOSL RMIBL DISPR=…
REPOSL RMBBL
REPOSL RMEBL
REPOSL RMNBL
REPOSQ RMIBL DISPR=… DISR=…
REPOSQ RMBBL DISR=…
REPOSQ RMEBL DISR=…
REPOSQA DISR=…
REPOSH RMIBL DISPR=… DISR=…
REPOSH RMBBL DISR=…
REPOSH RMEBL DISR=…
REPOSHA DISR=…
Значение
Выбор пути подвода
REPOSA:
Повторный подвод к контуру с геометрическими осями на одной
прямой.
Все прочие оси канала также повторно позиционируются.
REPOSL:
Повторный подвод к контуру с геометрическими осями на одной
прямой.
Все прочие оси канала должны быть явно запрограммированы.
REPOSQ DISR=… :
Повторный подвод к контуру с геометрическими осями на четверти
окружности с радиусом DISR.
Все прочие оси канала должны быть явно запрограммированы.
REPOSQA DISR=… :
Повторный подвод к контуру с геометрическими осями на четверти
окружности с радиусом DISR.
Все прочие оси канала также повторно позиционируются.
REPOSH DISR=… :
Повторный подвод к контуру с геометрическими осями на полуо-
кружности с диаметром DISR.
Все прочие оси канала должны быть явно запрограммированы.
REPOSHA DISR=… :
Повторный подвод к контуру с геометрическими осями на полуо-
кружности с радиусом DISR.
Все прочие оси канала также повторно позиционируются.
Выбор точки повторного подвода
RMIBL:
Подвод к точке прерывания
RMIBL DISPR=…:
Точка входа на расстоянии DISPR в мм/дюймах перед точкой преры-
вания
RMBBL:
Подвод к начальной точке кадра
RMEBL:
Подвод к конечной точке кадра
Программирование ЧПУ
894
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.14 Параметры траектории
RMEBL DISPR=… :
Подвод к конечной точке кадра на расстоянии DISPR перед конечной
точкой
RMNBL:
Подвод к ближайшей точке траектории
A0 B0 C0 :
Оси, в которых должен выполняться подвод
Примечание
Совместимость
Для обеспечения совместимости с прежними версиями ПО, можно продолжать
программировать режим подвода REPOS через модальные команды RMI, RMB, RME
и RMN. При использовании внутри ASUP эту подпрограмму нужно снабдить
атрибутом SAVE в операторе PROC. В противном случае используемый в ASUP модальный
режим подвода REPOS, если он отклоняется от предустановки RMI, действует и для
последующих процессов REPOS.
Повторный подвод к контуру на прямой, REPOSA, REPOSL
Инструмент движется к точке повторного подвода по прямой.
Пример
REPOSL RMIBL DISPR=6 F400
<
̹͕͇͑͞ ͖͉͇͔͗͌͗͢͏ͦ
5(326/
̹͕͇͑͞ ͖͕͉͙͕͔͕͕͗͊
͖͕͉͕͇͋͋
;
Повторный подвод к контуру по четверти окружности, REPOSQ, REPOSQA
Инструмент движется к точке повторного подвода по четверти круга с
радиусом DISR=
Необходимую промежуточная точку между стартовой точкой и
точкой повторного подвода СЧПУ вычисляет автоматически.
Пример
REPOSQ RMIBL DISR=10 F400
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
895
Расширенное программирование
4.14 Параметры траектории
<
̶͕͓͍͚͙͕͔͇͗͌ͦ͞
͙͕͇͑͞
4
(32 6
5
̹͕͇͑͞ ͖͕͉͙͕͔͕͕͗͊
͖͕͉͕͇͋͋
̸͙͇͙͕͉͇͗ͦ ͙͕͇͑͞
;
Повторный подвод к контуру по полукругу, REPOSH, REPOSHA
Инструмент движется к точке повторного подвода по полукругу с диаметром DISR=
Необходимую промежуточная точку между стартовой точкой и точкой повторного
подвода СЧПУ вычисляет автоматически.
Пример
REPOSH RMIBL DISR=20 F400
̶͕͓͍͚͙͕͔͇͗͌ͦ͞
<
͙͕͇͑͞
̸͙͇͙͕͉͇͗ͦ ͙͕͇͑͞
̹͕͇͑͞ ͖͕͉͙͕͔͕͕͗͊
͖͕͉͕͇͋͋
;
Программирование ЧПУ
896
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.14 Параметры траектории
Определение точки повторного подвода (не для подвода SERUPRO с RMNBL)
Относительно кадра ЧПУ, в котором выполнение программы было прервано, можно
выбирать между тремя точками повторного подвода:
• RMIBL, точка прерывания
• RMBBL, начальная точка кадра или последняя конечная точка
• RMEBL, конечная точка кадра
<
̱͕͔͔͇͌ͦ͞ ͙͕͇͑͞ ͇͇͑͋͗
̹͕͇͑͞ ͖͉͇͔͗͌͗͢͏ͦ
50(%/
̴͇͇͔͇͒ͣͦ͞ ͙͕͇͑͞
50,%/
͇͇͑͋͗
50%%/
;
С RMIBL DISPR=... или с RMEBL DISPR=... можно определить точку повторного подвода,
лежащую перед точкой прерывания или перед конечной точкой кадра.
С DISPR=... описывается путь контура в мм/дюймах, на который точка повторного
подвода удалена от точки прерывания или конечной точки. Эта точка может и для
больших по величине значений лежать макс. в начальной точке кадра.
Если DISPR=... не программируется, то действует DISPR=0 и тем самым точка прерывания
(для RMIBL) или конечная точка кадра (для RMEBL).
Знак DISPR
Знак DISPR обрабатывается. При положительном знаке сохраняется прежнее поведение.
При отрицательном знаке продолжение за точкой прерывания или при RMBBL за
стартовой точкой.
Расстояние м/у точкой прерывания и точкой возобновления получается из величины
DISPR. Эта точка может и для больших по величине значений лежать макс. в конечной
точке кадра.
Пример использования:
Датчик определяет приближение к прихвату. Запускается ASUP, с которой выполняется
обход прихвата.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
897
Расширенное программирование
4.14 Параметры траектории
После с отрицательной DISPR выполняется репозиционирование на точку за прихватом и
программа продолжается.
Подвод SERUPRO с RMNBL
Если при обработке в любом месте инициируется отмена, то при подводе SERUPRO с
RMNBL выполняется переход кратчайшего пути от места отмены, чтобы после лишь
обработать остаточный путь. Для этого пользователь запускает процесс SERUPRO на кадр
прерывания и выполняет позиционирование с помощью клавиш JOG на позицию перед
поврежденным местом конечного кадра.
<
̱͕͔͔͇͌ͦ͞ ͙͕͇͑͞ ͇͇͑͋͗
̻͇͙͑͏͇͌͑ͦ͘͞ ͖͕͎͏͝͏ͦ ͖͗͏ ͖͕͏͑͌͘ ͇͇͑͋͗
̫͕͙͘͏͔͚͙͇͊ͦ ͇͉͑͒͏͇͓͟͏
-2*
͖͕͎͏͝͏ͦ
50(%/
̶͕͉͕͋͋ 6(58352
501%/
̴͇͇͔͇͒ͣͦ͞ ͙͕͇͑͞
͇͇͑͋͗
50,%/
50%%/
;
Примечание
SERUPRO
Для SERUPRO RMIBL и RMBBL идентичны. RMNBL ограничивается не только SERUPRO, но
имеет общее действие.
Программирование ЧПУ
898
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.14 Параметры траектории
Подвод к ближайшей точке траектории RMNBL
На момент интерполяции REPOSA после прерывания кадр повторного подвода с RMNBL
не начинается заново, а лишь обрабатывается остаточный путь. Выполняется подвод к
ближайшей точке траектории прерванного кадра.
<
̱͕͔͔͇͌ͦ͞ ͙͕͇͑͞ ͇͇͑͋͗
50(%/
̶͕͉͙͕͔͗͐͢ ͖͕͉͕͋͋
$683
501%/
̴͇͇͔͇͒ͣͦ͞ ͙͕͇͑͞
50,%/
͇͇͑͋͗
50%%/
;
Состояние для действительного режима REPOS
Действительный режим REPOS прерванного кадра может быть считан через синхронные
действия с переменной $AC_REPOS_PATH_MODE:
0
подвод не определен
1
RMBBL: подвод к началу
2
RMIBL: подвод к точке прерывания
3
RMEBL: подвод к конечной точке кадра
4
RMNBL: подвод к ближайшей точке траектории прерванного кадра
Подвод с новым инструментом
Если выполнение программы было остановлено из-за поломки инструмента:
При программировании нового номера D программа продолжается с точки повторного
подвода с измененными значениями коррекции инструмента.
При изменении значений коррекции инструмента может случиться, что подвод к точке
прерывания будет более невозможен. В этом случае выполняется подвод к ближайшей
от точки прерывания точке на новом контуре (возможно измененной на DISPR).
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
899
Расширенное программирование
4.14 Параметры траектории
Y
X
Подвод к контуру
Движение, с которым инструмент снова подводится к контуру, может быть
запрограммировано. Адреса перемещаемых осей указываются со значением ноль.
С помощью команд REPOSA, REPOSQA и REPOSHA выполняется автоматическое
репозиционирование всех осей. Указание оси не требуется.
При программировании REPOSL, REPOSQ и REPOSH все гео-оси выполняют подвод
автоматически, т. е. и без указания в команде. Все другие оси должны быть указаны в
команде.
Для круговых движений REPOSH и REPOSQ действует:
Окружность проходится в указанной рабочей плоскости G17 до G19.
Если в кадре подвода указывается третья гео-ось (направление подачи), то подвод к
точке повторного подвода в том случае, когда позиция инструмента и
запрограммированная позиция в направлении подачи не совпадают, выполняется по
спирали.
Программирование ЧПУ
900
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.14 Параметры траектории
В следующих случаях происходит автоматическое переключение на линейный подвод
REPOSL:
• Значение для DISR не указано.
• Определенного направления подвода не существует (прерывание программы в
кадре без информации перемещения).
• При направлении подвода вертикально к актуальной рабочей плоскости.
4.14.11
Воздействие на управление движением
4.14.11.1
Коррекция максимальной скорости оси или частоты вращения шпинделя
(VELOLIM)
С помощью команды VELOLIM в программе обработки детали можно уменьшить
установленную через машинные данные макс. возможную скорость оси или макс.
возможную, зависящую от ступени редуктора частоту вращения шпинделя.
Активность
VELOLIM действует:
• в автоматических режимах работы.
• на траекторные и позиционирующие оси.
• на шпиндели в шпиндельном/осевом режиме
Синтаксис
VELOLIM[<Ax>]=<Value>
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
901
Расширенное программирование
4.14 Параметры траектории
Объяснение
VELOLIM:
Коррекция значения скорости или частоты вращения
<Ax>:
Ось или шпиндель, предельное значение скорости или частоты вращения
которых необходимо настроить.
Через MD30455 $MA_MISC_FUNCTION_MASK, бит 6 можно установить, дей-
ствует ли VELOLIM независимо от текущего использования как шпиндель или
ось (бит 6 = 1) или должна программироваться отдельно для каждого режима
работы (бит 6 = 0). Если сконфигурировано раздельное действие, то выбор
осуществляется через идентификатор при программировании:
• Идентификатор шпинделя для режимов работы шпинделя: S<n>
• Идентификатор оси для осевого режима, например, C
<Value>:
Процентная поправка
В случае осей или шпинделей в осевом режиме с настройкой MD30455
бит 6 = 0 поправка относится к сконфигурированной максимальной скорости
оси (MD32000 $MA_MAX_AX_VELO).
В случае шпинделей в шпиндельном или осевом режиме с настройкой
MD30455 бит 6 = 1 поправка относится к максимальной частоте вращения
активной ступени редуктора
(MD35130 $MA_GEAR_STEP_MAX_VELO_LIMIT[<n>]).
Диапазон значе-
1 ... 100
ний:
Значение 100 не вызывает управления скоростью или частотой вращения.
Примечание
Поведение при завершении программы обработки детали и сбросе канала
Поведение VELOLIM при завершении программы обработки детали и сбросе канала
зависит от настройки бита 0 в машинных данных MD32320 $MA_DYN_LIMIT_RESET_MASK.
Примечание
Ограничение частоты вращения в шпиндельном режиме
Ограничение частоты вращения через VELOLIM (меньше 100 %) в шпиндельном режиме
можно узнать через следующую системную переменную:
• $AC_SMAXVELO (макс. возможная частота вращения шпинделя)
• $AC_SMAXVELO_INFO (идентификатор для причины ограничения частоты вращения)
Примеры
Пример 1: Ограничение скорости оси станка
Программный код
Комментарий
N70 VELOLIM[X]=80
; Осевые салазки в направлении Х должны перемещаться только макс. с
80 % от допустимой для оси скорости.
Программирование ЧПУ
902
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.14 Параметры траектории
Пример 2: Ограничение частоты вращения, шпиндель 1 (AX5)
Конфигурация:
• MD35130 $MA_GEAR_STEP_MAX_VELO_LIMIT[ 1, AX5 ] = 1000
(Максимальная частота вращения ступени редуктора 1 = 1000 об/мин)
• MD30455 $MA_MISC_FUNCTION_MASK[ AX5 ], бит 6 = 1
(Программирование VELOLIM действует совместно для шпиндельного и осевого
режима независимо от запрограммированного идентификатора).
Программирование:
Программный код
Комментарий
N05 VELOLIM[S1]=90
; Ограничение максимальной частоты вращения шпинделя 1 до 90 % от
1000 об/мин.
N50 VELOLIM[C]=45
; Ограничение максимальной частоты вращения шпинделя 1 до 45 % от
1000 об/мин, C означает идентификатор оси S1.
4.14.11.2
Коррекция максимального рывка оси (JERKLIM)
С помощью команды JERKLIM установленный через машинные данные макс. возможный
рывок оси при движении по траектории в критических сегментах программы может быть
уменьшен или увеличен в программе обработки детали.
Условие
Режим ускорения SOFT должен быть активен.
Активность
JERKLIM действует:
• в автоматических режимах работы.
• только на траекторные оси.
Синтаксис
JERKLIM[<Ax>]=<Value>
Объяснение
JERKLIM:
Настроить предельное значение рывка
<Ax>:
Ось станка, предельное значение рывка которой необходимо настроить.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
903
Расширенное программирование
4.14 Параметры траектории
<значение>:
Процентная поправка
Поправка относится к сконфигурированному макс. рывку оси при движении
по траектории (MD32431 $MA_MAX_AX_JERK).
Диапазон значе-
1 ... 200
ний:
Значение 100 не вызывает управления рывком.
Примечание
Поведение при завершении программы обработки детали и сбросе канала
Поведение JERKLIM при завершении программы обработки детали и сбросе канала
зависит от настройки бита 0 в машинных данных MD32320 $MA_DYN_LIMIT_RESET_MASK.
Пример
Программный код
Комментарий
N1000 G0 X0 Y0 F10000 SOFT G64
N1100 G1 X20 RNDM=5 ACC[X]=20 ACC[Y]=30
N1200 G1 Y20 JERKLIM[Y]=200
; Осевые салазки в направлении Y должны ускорять-
ся/замедляться макс. с 200 % от допустимого для оси
рывка.
N1300 G1 X0 JERKLIM[X]=2
; Осевые салазки в направлении Х должны ускорять-
ся/замедляться макс. с 2 % от допустимого для оси
рывка.
N1400 G1 Y0
M30
4.14.11.3
Коррекция максимальной скорости движения по траектории (FLIM)
Функция "Коррекция максимальной скорости движения по траектории" позволяет
ограничить или снизить на критических участках программы обработки детали скорость
движения по траектории, результирующую из значений ограничения оси. Значение
скорости, до которого необходимо ограничить максимальную скорость движения по
траектории, программируется через адрес FLIM. Запрограммированное значение
действует всегда только до ближайшего сброса ЧПУ или конца программы обработки
детали.
Процентовка действует и далее на подачу по траектории, ограниченную посредством
FLIM Поэтому при помощи переключателя процентовки можно умеренно превысить
FLIM.
Активность
Функция действует:
• в автоматических режимах работы.
• только на траекторные оси.
Программирование ЧПУ
904
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.14 Параметры траектории
• только для G94
• не на ускоренном ходу
Примечание
Функция "Коррекция максимальной скорости движения по траектории" действует только
в сочетании с линейной подачей G94. В сочетании с подачей других типов (G93, G931,
G95, G96, G97, G971, G972) эта функция неприменима.
Синтаксис
FLIM=<значение>
FLIM=-1
Объяснение
FLIM
Адрес для коррекции максимальной скорости движения по траектории
<значение>
Значение скорости, на которое необходимо ограничить максимальную ско-
рость движения по траектории
Тип данных:
REAL
Диапазон значе-
1,0 * 10-6 ... 1,0 * 1038
ний:
Единица:
мм/мин или дюймов/мин (в зависимости от активной си-
стемы единиц измерения)
FLIM=-1
Снова снимает ограничение, запрограммированное посред-
ством FLIM=<значение>.
Пример
Программный код
Комментарий
N1000 G0 X0 Y0 F10000 G64 G710
N1100 G1 X20 RNDM=5
N1200 G1 Y20 FLIM=5000
; Салазки оси в направлении Y: скорость движения макс.
5 м/мин.
N1300 G1 X0 Y40
; Движение салазок оси по траектории в направлении X и
направлении Y: скорость движения макс. 5 м/мин.
N1400 G1 Y0 FLIM=-1
; Салазки оси в направлении Y: скорость движения 10 м/
мин.
M30
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
905
Расширенное программирование
4.14 Параметры траектории
4.14.11.4
Коррекция максимального ускорения по траектории (PACCLIM)
Функция "Коррекция максимального ускорения по траектории" позволяет снизить на
критических участках программы обработки детали ускорение движения по траектории,
результирующее из значений ограничения оси. Значение ускорения, до которого
необходимо снизить максимальное ускорение движения по траектории,
программируется через адрес PACCLIM. Запрограммированное значение действует
всегда только до ближайшего сброса ЧПУ или конца программы обработки детали.
Условия
Лицензирование
Функция является лицензируемой опцией ("Ограничение ускорения движения по
траектории"; № артикула: 6FC5800-0xP26-0YB0); № артикула необходимо присвоить
аппаратному обеспечению через менеджер лицензий.
Активность
Функция действует:
• в автоматических режимах работы.
• только на траекторные оси.
Синтаксис
PACCLIM=<значение>
PACCLIM=-1
Объяснение
PACCLIM
Адрес для коррекции максимального ускорения движения по траектории
<значение>
Значение ускорения, до которого необходимо снизить максимальное уско-
рение движения по траектории
Тип данных:
REAL
Диапазон значе-
1,0 * 10-6 ... 1,0 * 1038
ний:
Единица:
м/сек2 или дюймов/сек2 (в зависимости от активной си-
стемы единиц измерения)
PACCLIM=-1
Снова снимает ограничение, запрограммированное посред-
ством PACCLIM=<значение>.
Программирование ЧПУ
906
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.14 Параметры траектории
Примечание
По своему действию PACCLIM схожа с установочными данными SD42500
$SC_SD_MAX_PATH_ACCEL (максимальное ускорение движения по траектории). Однако в
отличие от SD42500 PACCLIM работает синхронно в кадре.
Примечание
При вычислении значения ограничения значение SD42500 $SC_SD_MAX_PATH_ACCEL
учитывается, только если SD42502 $SC_IS_SD_MAX_PATH_ACCEL установлено на TRUE.
Если активны и PACCLIM, и SD42500 $SC_SD_MAX_PATH_ACCEL, то действует меньшее из
двух значений ограничения.
Пример
Программный код
Комментарий
N1000 G0 X0 Y0 F10000 G64 G710
N1100 G1 X20 RNDM=5
N1200 G1 Y20 PACCLIM=0.5
; Салазки оси в направлении Y: ускорение/замедле-
ние движения макс. 0,5 м/сек.
N1300 G1 X0 Y40
; Движение салазок оси по траектории в
направлении X и направлении Y: ускорение/
замедление движения макс. 0,5 м/сек.
N1400 G1 Y0
M30
4.14.12
Параметры смены кадров при активном соединении (CPBC)
С помощью команды CPBC задается критерий смены кадров, который должен быть
выполнен, чтобы в программе обработки детали при активном соединении была
выполнена смена кадров.
Синтаксис
CPBC[<ведомая ось>] = <критерий>
Объяснение
CPBC:
Критерий смены кадров при активном соединении
<ведомая ось>:
идентификатор ведомой оси
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
907
содержание .. 11 12 13 14 ..
|
||
|
|
|