SINUMERIK 840D sl. Программирование ЧПУ. Руководство по программированию (2021 год) - часть 6

 

  Главная      Книги - Разные     SINUMERIK 840D sl. Программирование ЧПУ. Руководство по программированию (2021 год)

 

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

 

   

 

   

 

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

 

 

 

SINUMERIK 840D sl. Программирование ЧПУ. Руководство по программированию (2021 год) - часть 6

 

 

Основная информация
3.13 Вывод вспомогательных функций
Свойства
Важные свойства вспомогательных функций приведены в следующей обзорной таблице:
Функция
Расширение адреса
Значение
Объяснения
Макс. кол-
во на кадр
Объясне-
Диапа-
Диапазон
Тип
Объясне-
ние
зон
ние
M
-
0
0 ... 99
INT
Функция
Для диапазона значений
5
между 0 и 99 расширение
(не явно)
адреса 0.
Принудительно без расши-
рения адреса:
M0, M1, M2, M17, M30
№ шпинде-
1 ... 12
1 ... 99
INT
Функция
M3, M4, M5, M19, M70 с
ля
расширением адреса
шпиндель № (напри-
мер, M2=5 ; останов шпин-
деля для шпинделя 2).
Без Nr. шпинделя функция
действует для мастер-
шпинделя.
Любое
0 - 99
100 ...
INT
Функция
Функция М пользователя*
2147483647
S
№ шпинде-
1 ... 12
0 ... ± 1,8*10308
REAL
Скорость
Без Nr. шпинделя функция
3
ля
действует для мастер-
шпинделя.
H
Любое
0 - 99
0 ...
Любое
Функции не действуют в
3
ЧПУ, реализуются только
± 2147483647
INT
через PLC.*
± 1,8*10308
REAL
T
Номер
1 ... 12
0 - 32000
INT
Выбор ин-
Имена инструмента не пе-
1
шпинделя
(и имена ин-
струмента
редаются на интерфейс
струмента при
PLC.
(при актив-
активном упра-
ном упра-
влении инстру-
влении ин-
ментом)
струмен-
том)
D
-
-
0 - 12
INT
Выбор кор-
D0: Отмена
1
рекции ин-
Предустановка: D1
струмента
DL
Зависящая
1 - 6
0 ... ± 1,8*10308
REAL
Выбор кор-
Относится к выбранному
1
от места
рекции ин-
до этого номеру D
коррекция
струмента
точной
F
-
-
0,001 -
REAL
Подача по
6
999 999,999
траектории
FA
Номер оси
1 - 31
0,001 -
REAL
Осевая по-
999 999,999
дача
* Значение функций определяется изготовителем станка (см. Указания изготовителя станка!).
Программирование ЧПУ
352
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Основная информация
3.13 Вывод вспомогательных функций
Дополнительная информация
Количество выводимых функций на кадр ЧПУ
В одном кадре ЧПУ может быть запрограммировано максимум 10 выводов функций.
Вспомогательные функции могут выводиться и из компонента действия синхронных
действий.
Группировка
Названные функции могут объединяться в группы. Для некоторых команд М
подразделение групп уже задано. С помощью группировки может устанавливаться
характеристика квитирования.
Быстрый вывод функций (QU)
Функции, не сконфигурированные для быстрого вывода, могут быть определены для
отдельных выводов с помощью кодового слова QU в качестве быстрого вывода.
Выполнение программы продолжается без ожидания квитирования исполнения
дополнительной функции (ожидание квитирования передачи осуществляется).
Благодаря этому удается избежать ненужных точек остановки и прерываний движений
перемещения.
Примечание
Для функции "Быстрые выводы функций" должны быть установлены соответствующие
машинные данные (→ Изготовитель станка!).
Вывод функций при движениях перемещения
Передача информации и ожидание соответствующих реакций занимает время, влияя
тем самым на движения перемещения.
Быстрое квитирование без задержки смены кадров
Управление поведением при смене кадров возможно через машинные данные. При
установке "без задержки смены кадров" получаются следующие параметры для быстрых
вспомогательных функций:
Вывод вспомогатель-
Поведение
ной функции
Перед движением
Переход кадров между кадрами с быстрыми вспомогательными функ-
циями осуществляется без прерывания и без уменьшения скорости.
Вывод вспомогательных функций осуществляется в первом такте ин-
терполятора кадра. Последующий кадр выполняется без задержки
квитирования.
При движении
Переход кадров между кадрами с быстрыми вспомогательными функ-
циями осуществляется без прерывания и без уменьшения скорости.
Вывод вспомогательных функций осуществляется в ходе кадра. По-
следующий кадр выполняется без задержки квитирования.
После движения
Движение останавливается в конце кадра. Вывод вспомогательных
функций осуществляется в конце кадра. Последующий кадр выполн-
яется без задержки квитирования.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
353
Основная информация
3.13 Вывод вспомогательных функций
ОСТОРОЖНО
Вывод функций в режиме управления траекторией
Вывод функций перед движениями перемещения прерывает режим управления
траекторией (G64 / G641) и вызывает точный останов для предыдущего кадра.
Вывод функций после движений перемещения прерывает режим управления
траекторией (G64 / G641) и создает точный останов для текущего кадра.
Важно: Ожидание необходимого сигнала квитирования от PLC также может привести к
прерыванию режима управления траекторией, к примеру, цепочки команд М в кадрах
с очень короткими длинами ходами траектории.
3.13.1
Функции M
С помощью функций М запускаются действия по переключению, например, "ВКЛ/ВЫКЛ
СОЖ" и прочие функции на станке.
Синтаксис
M<значение>
M[<расширение адреса>]=<значение>
Объяснение
M :
Адрес для программирования функций M
<расширение адреса>:
Для некоторых функций М действует расширенное написание
адреса (например, указание номера шпинделя для функций
шпинделя).
<значение>:
Посредством присваивания значения (номер функции М) осу-
ществляется согласование с определенной функцией станка.
Тип:
INT
Диапазон значе-
0 ... 2147483647 (макс. значение INT)
ний:
Предопределенные функции M
Некоторым важным для выполнения программы функциям М в стандартном
исполнении СЧПУ уже присвоены значения:
Функция M
Объяснение
M0*
Запрограммированная остановка
M1*
Остановка по выбору
M2*
Конец главной программы (как M30)
M3
Правое вращение шпинделя
M4
Левое вращение шпинделя
Программирование ЧПУ
354
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Основная информация
3.13 Вывод вспомогательных функций
Функция M
Объяснение
M5
Остановка шпинделя
M6
Смена инструмента (стандартная настройка)
M17*
Конец подпрограммы
M19
Позиционировать шпиндель
M30*
Конец главной программы (как M2)
M40
Автоматическое переключение редуктора
M41
Ступень редуктора 1
M42
Ступень редуктора 2
M43
Ступень редуктора 3
M44
Ступень редуктора 4
M45
Ступень редуктора 5
M70
Шпиндель переключается в осевой режим
Примечание
Для функций, обозначенных *, расширенное написание адреса не допускается.
Функции M0, M1, M2, M17 и M30 всегда запускаются после движения перемещения.
Определенные изготовителем станка функции М
Все свободные номера функций М могут быть заняты изготовителем станка, например,
функциями переключения для управления зажимными приспособлениями или для
включения/выключения других функций станка.
Примечание
Назначенные свободным номерам функций М функциональности являются спец. для
станка. Поэтому определенная функция М может иметь различную функциональность
на различных станках.
Доступные на станке функции М и их функциональность см. Данные изготовителя станка.
Примеры
Пример 1: Макс. число функций М в кадре
Программный код
Комментарий
N10 S...
N20 X... M3
; M-функция в кадре с движением оси,
; шпиндель разгоняется до движения оси X.
N180 M789 M1767 M100 M102
; Макс. 5 M-функций в кадре.
M376
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
355
Основная информация
3.13 Вывод вспомогательных функций
Пример 2: Функция M как быстрый вывод
Программный код
Комментарий
N10 H=QU(735)
; Быстрый вывод для H735.
N10 G1 F300 X10 Y20 G64
N20 X8 Y90 M=QU(7)
; Быстрый вывод для M7.
M7 была запрограммирована как быстрый вывод, поэтому режим управления
траекторией (G64) не прерывается.
Примечание
Использовать эту функцию только в отдельных случаях, так как при взаимодействии с
выводом других функций изменяется временное согласование.
Дополнительная информация по предопределенным командам М
Запрограммированная остановка: M0
В кадре ЧПУ с M0 обработка останавливается. Теперь, к примеру, можно удалить стружку,
осуществить дополнительное измерение и т.д.
Запрограммированная остановка 1 - остановка по выбору: M1
M1 может быть установлена через:
• HMI/диалог "Управление программой"
или
• Интерфейс ЧПУ/PLC
Обработка программы ЧПУ останавливается на запрограммированных кадрах.
Запрограммированная остановка 2 - ассоциированная с M1 вспомогательная
функция с остановом в ходе программы
Запрограммированная остановка 2 может быть установлена через HMI/диалог
"Управление программой" и позволяет прерывать технологические процессы в любое
время на конце обрабатываемого сегмента. Тем самым оператор может вмешиваться в
текущее производство, к примеру, для удаления сливной стружки.
Конец программы: M2, M17, M30
Программа завершается с M2, M17 или M30. Если главная программа вызывается из
другой программы (как подпрограмма), то M2 / M30 действует как M17 и наоборот, т. е.
M17 действует в главной программе как M2 / M30.
Функции шпинделя: M3, M4, M5, M19, M70
Для всех функцией шпинделя действует расширенное написание адреса с указанием
номера шпинделя.
Программирование ЧПУ
356
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Основная информация
3.14 Дополнительные команды
Пример:
Программный код
Комментарий
M2=3
; Правое вращение для второго шпинделя
Если расширение адреса не запрограммировано, то функция действует для мастер-
шпинделя.
3.14
Дополнительные команды
3.14.1
Сообщения (MSG)
С помощью команды MSG() любая строка символов может быть выведена как
сообщение для оператора из программы обработки детали.
Синтаксис
MSG("<текст сообщения>"[,<исполнение>])
MSG ()
Объяснение
MSG:
Предопределенный вызов подпрограммы для вывода сообщения
<текст сообщения>:
Любая строка символов для индикации в качестве сообщения
Тип:
STRING
Максимальная дли-
124 символов; двухстрочная индикация (2*62 сим-
на:
волов)
В тексте сообщения благодаря использованию связывающего оператора
"<<" могут выводиться и переменные.
<исполнение>:
Параметр для установки момента времени для записи сообщения (оп-
ция)
Тип:
INT
Значе-
0 (первичная
Отдельный кадр главного хода для записи со-
ние:
установка)
общения не создается. Она выполняется в
следующем исполняемом кадре ЧПУ. Актив-
ный режим управления траекторией не пре-
рывается.
1
Создается отдельный кадр главного хода для
записи сообщения. Активный режим управле-
ния траекторией прерывается.
MSG():
Посредством программирования MSG() без текста сообщения, актуаль-
ное сообщение снова удаляется. Без удавления индикация сохраняется
до появления следующего сообщения.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
357
Основная информация
3.14 Дополнительные команды
Примечание
Если сообщение должно быть выведено на активном языке интерфейса, то
пользователю необходима информация о текущем установленном на HMI языке. Эта
информация запрашивается в программе обработки детали и в синхронных действиях
через системную переменную $AN_LANGUAGE_ON_HMI (Страница 1364).
Примеры
Пример 1: Вывести / удалить сообщение
Программный код
Комментарий
N10 G91 G64 F100
; режим управления траекторией
N20 X1 Y1
N... X... Y...
N20 MSG ("Обработка Часть 1")
; Сообщение выводится только с N30.
; Режим управления траекторией сохраняется.
N30 X... Y...
N... X... Y...
N400 X1 Y1
N410 MSG ("Обработка Часть 2",1)
; Сообщение выводится с N410.
; Режим управления траекторией прерывается.
N420 X1 Y1
N... X... Y...
N900 MSG ()
; Удалить сообщение.
Пример 2: Текст сообщения с переменной
Программный код
Комментарий
N10 R12=$AA_IW[X]
; Актуальная позиция оси Х в R12.
N20 MSG("Проверить позицию оси X"<<R12<<"")
; Вывести сообщение с переменной R12.
N90 MSG ()
; Удалить сообщение из N20.
3.14.2
Запись строки символов в переменную BTSS (WRTPR)
С помощью функции WRTPR() можно записать любую строку символов из программы
обработки детали в переменную BTSS progProtText.
Синтаксис
WRTPR(<строка>[,<ExecTime>])
Программирование ЧПУ
358
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Основная информация
3.14 Дополнительные команды
Значение
WRTPR:
вызов функции для вывода строки символов.
<строка>:
Любая строка символов, записываемая в переменную BTSS progProtText.
Тип:
String
Максимальная
128 символов
длина:
<ExecTime>:
опциональный параметр для установки момента времени записи строки
символов.
Тип:
INT
Диапазон значе-
0, 1
ний:
0 (по умол-
Для записи строки символов отдель-
чанию)
ный кадр главного хода не создается.
Она выполняется в следующем испол-
няемом кадре ЧПУ. Активный режим
управления траекторией не преры-
вается.
1
Для записи строки символов создается
отдельный кадр главного хода. Актив-
ный режим управления траекторией
прерывается.
Примеры
Программный код
Комментарий
N10 G91 G64 F100
; режим управления траекторией
N20 X1 Y1
N30 WRTPR("N30")
; Строка символов «N30» записывается только в N40.
; Режим управления траекторией сохраняется.
N40 X1 Y1
N50 WRTPR("N50",1)
; Строка символов «N50» записывается в N50.
; Режим управления траекторией прерывается.
N60 X1 Y1
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
359
Основная информация
3.14 Дополнительные команды
3.14.3
Ограничение рабочего поля
3.14.3.1
Ограничение рабочего поля в BKS (G25/G26, WALIMON, WALIMOF)
С помощью G25/G26 можно ограничить рабочее пространство (рабочее поле, рабочую
зону), в котором должен перемещаться инструмент, во всех осях канала. Области вне
определенных с помощью G25/G26 границ рабочего поля заблокированы для движений
инструмента.
;
̮͕͔͇ ͎͇͠͏͙͢
̷͇͈͕͌͌͞ ͖͕͙͇͔͙͉͕͗͗͘͘
0
:
=
Указания координат для отдельных осей действуют в базовой кинематической системе:
=
<
̨͇͎͕͉͇ͦ
͑͏͔͓͇͙͌͏͇͌͑ͦ͘͞
͘͏͙͓͇͌͘
;
Ограничение рабочего поля для всех установленных действующими осей должно быть
запрограммировано с помощью команды WALMON. WALIMOF делает ограничение
рабочего поля не действительным. WALIMON это стандартная установка, поэтому
программирование необходимо только в том случае, если до этого ограничение
рабочего поля было выключено.
Программирование ЧПУ
360
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Основная информация
3.14 Дополнительные команды
Синтаксис
G25 X…Y…Z…
G26 X… Y… Z…
WALIMON
WALIMOF
Значение
G25:
Нижнее ограничение рабочего поля
Присваивание значений в осях канала в базовой кинематической системе
G26:
Верхнее ограничение рабочего поля
Присваивание значений в осях канала в базовой кинематической системе
X… Y… Z…:
Нижние или верхние границы рабочего поля для отдельных осей канала
Данные относятся к базовой кинематической системе.
WALIMON:
Включить ограничение рабочего поля для всех осей
WALIMOF:
Выключить ограничение рабочего поля для всех осей
Наряду с программируемым вводом значений через G25/G26 возможен и ввод через
спец. для оси установочные данные:
SD43420 $SA_WORKAREA_LIMIT_PLUS (ограничение рабочего поля плюс)
SD43430 $SA_WORKAREA_LIMIT_MINUS (ограничение рабочего поля минус)
Активация и деактивация спараметрированного через SD43420 и SD43430 ограничения
рабочего поля осуществляется спец. для направления через начинающие действовать
сразу же спец. для оси установочные данные:
SD43400 $SA_WORKAREA_PLUS_ENABLE (ограничение рабочего поля в положительном
направлении активно)
SD43410 $SA_WORKAREA_MINUS_ENABLE (ограничение рабочего поля в отрицательном
направлении активно)
Посредством спец. для направления активации/деактивации можно ограничить
рабочую зону для оси только в одном направлении.
Примечание
Запрограммированное с G25/G26 ограничение рабочего поля имеет приоритет и
переписывает введенные в SD43420 и SD43430 значения.
Примечание
С помощью G25/G26 по адресу S могут быть запрограммированы и предельные значения
для скорости шпинделя. Подробности об этом см. " Программируемое ограничение
числа оборотов шпинделя (G25, G26) (Страница 109) ".
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
361
Основная информация
3.14 Дополнительные команды
Пример
Посредством ограничения рабочего
;%
̮͕͔͇ ͎͇͠͏͙͢
поля с G25/26 рабочее пространство
токарного станка ограничивается та-
̷͇͈͕͌͌͞ ͖͕͙͇͔͙͉͕͗͗͘͘
ким образом, что окружающие ус-
;
тройства, как то револьвер, измери-
тельная станция и т.д. защищены от
повреждений.
Основная установка: WALIMON
0
:
=%
;
Программный код
Комментарий
N10 G0 G90 F0.5 T1
N20 G25 X-80 Z30
; Определение нижнего ограничения для отдельных осей координат
N30 G26 X80 Z330
; Определение верхнего ограничения
N40 L22
; Программа обработки резаньем
N50 G0 G90 Z102 T2
; К точке смены инструмента
N60 X0
N70 WALIMOF
; Выключение ограничения рабочего поля
N80 G1 Z-2 F0.5
; Сверление
N90 G0 Z200
; Назад
N100 WALIMON
; Включение ограничения рабочего поля
N110 X70 M30
; конец программы
Дополнительная информация
Опорная точка на инструменте
При активной коррекции длин инструмента в качестве исходной точки контролируется
острие инструмента, в иных случаях исходная точка инструментального суппорта.
Учет радиуса инструмента должен быть активирован отдельно. Это осуществляется через
спец. для канала машинные данные:
MD21020 $MC_WORKAREA_WITH_TOOL_RADIUS
Программирование ЧПУ
362
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Основная информация
3.14 Дополнительные команды
Если исходная точка инструмента находится вне определенного через ограничение
рабочего поля рабочего пространства или выходит из этой зоны, то выполнение
программы останавливается.
Примечание
Если активны трансформации, то учет данных инструмента (длина инструмента и радиус
инструмента) может отличаться от описанного поведения.
Программируемое ограничение рабочего поля, G25/G26
Для каждой оси можно установить верхнее (G26) и нижнее (G25) ограничение рабочего
поля. Эти значения начинают действовать сразу же и сохраняются при соответствующей
установке MD (→ MD10710 $MN_PROG_SD_RESET_SAVE_TAB) после RESET и повторного
включения.
Примечание
С помощью предопределенной функции CALCPOSI (Страница 602) перед движениями
перемещения можно проверить, будет ли предусмотренный путь пройден с учетом
ограничений рабочего поля и/или защищенных областей.
3.14.3.2
Ограничение рабочего поля в WCS/ENS (WALCS0 ... WALCS10)
«Ограничение рабочего поля в WCS/ENS» обеспечивает гибкое, специфическое для
детали ограничение диапазона перемещения осей канала в системе координат детали
(WCS) или настраиваемой системе нулевой точки (ENS). Оно предназначено главным
образом для применения в сфере обычных токарных станков.
Условие
Оси канала должны быть реферированы.
Группа ограничений рабочего поля
Чтобы при переключении согласований осей, например при включении/выключении
трансформаций или активного фрейма, не потребовалось заново записывать
специфические для оси границы рабочего поля для всех осей канала, предусмотрены
группы ограничений рабочего поля.
Группа ограничений рабочего поля включает в себя следующие данные:
• Границы рабочего поля для всех осей канала
• Базовая система ограничения рабочего поля
Синтаксис
$P_WORKAREA_CS_COORD_SYSTEM[<WALimNo>]=<Value>
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
363
Основная информация
3.14 Дополнительные команды
$P_WORKAREA_CS_PLUS_ENABLE[<WALimNo>,<Ax>]=<Value>
$P_WORKAREA_CS_LIMIT_PLUS[<WALimNo>,<Ax>]=<Value>
$P_WORKAREA_CS_MINUS_ENABLE[<WALimNo>,<Ax>]=<Value>
$P_WORKAREA_CS_LIMIT_MINUS[<WALimNo>,<Ax>]=<Value>
WALCS<n>
WALCS0
Значение
$P_WORKAREA_CS_COORD_SYSTEM[<WALimNo>]=<Value>
Система координат, к которой относится ограничение рабочего поля какой-либо группы
<WALimNo>:
Группа ограничений рабочего поля
Тип:
INT
Диапазон зна-
0 (группа 1) ... 9 (группа 10)
чений:
<VALUE>:
Значение типа INT
1
Система координат детали (WCS)
3
Настраиваемая система нулевой точки (ENS)
$$P_WORKAREA_CS_PLUS_ENABLE[<WALimNo>,<Ax>]=<Value>
Разрешить ограничение рабочего поля в положительном направлении оси для указанной оси
канала
<WALimNo>:
Группа ограничений рабочего поля
Тип:
INT
Диапазон зна-
0 (группа 1) ... 9 (группа 10)
чений:
<Ax>:
имя оси канала
<VALUE>:
Значение типа BOOL
0 (FALSE)
Нет разрешения
1 (TRUE)
Разрешение
$P_WORKAREA_CS_MINUS_ENABLE[<WALimNo>,<Ax>]=<Value>
Разрешить ограничение рабочего поля в отрицательном направлении оси для указанной оси
канала
<WALimNo>:
Группа ограничений рабочего поля
Тип:
INT
Диапазон зна-
0 (группа 1) ... 9 (группа 10)
чений:
<Ax>:
имя оси канала
<VALUE>:
Значение типа BOOL
0 (FALSE)
Нет разрешения
1 (TRUE)
Разрешение
Программирование ЧПУ
364
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Основная информация
3.14 Дополнительные команды
$P_WORKAREA_CS_LIMIT_PLUS[<WALimNo>,<Ax>]=<Value>
Ограничение рабочего поля в положительном направлении указанной оси канала
<WALimNo>:
Группа ограничений рабочего поля
Тип:
INT
Диапазон зна-
0 (группа 1) ... 9 (группа 10)
чений:
<Ax>:
имя оси канала
<VALUE>:
Значение типа REAL
$P_WORKAREA_CS_LIMIT_MINUS[<WALimNo>,<Ax>]=<Value>
Ограничение рабочего поля в отрицательном направлении указанной оси канала
<WALimNo>:
Группа ограничений рабочего поля
Тип:
INT
Диапазон
0 (группа 1) ... 9 (группа 10)
значений:
<Ax>:
имя оси канала
<VALUE>:
Значение типа REAL
WALCS<n>:
Включение ограничений рабочего поля из группы ограничений рабочего поля
<n>:
номер группы ограничений рабочего поля
Диапазон
1 ... 10
значений:
WALCS0:
Выключение активных в канале ограничений рабочего поля
Примечание
Фактически доступное число групп ограничений рабочего поля зависит от
конфигурирования (→ см. данные изготовителя станка).
Пример
В канале определено 3 оси: X, Y и Z
Необходимо определить и после активировать группу ограничений рабочего поля Nr. 2,
в которой оси в WCS ограничиваются по следующим параметрам:
• Ось X в плюсовом направлении: 10 мм
• Ось X в минусовом направлении: нет ограничения
• Ось Y в плюсовом направлении: 34 мм
• Ось Y в минусовом направлении: -25 мм
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
365
Основная информация
3.14 Дополнительные команды
• Ось Z в плюсовом направлении: нет ограничения
• Ось Z в минусовом направлении: -600 мм
Программный код
Комментарий
N51 $P_WORKAREA_CS_COORD_SYSTEM[1]=1
; Ограничение рабочего поля группы ог-
раничений рабочего поля 2 действует в
WCS.
N60 $P_WORKAREA_CS_PLUS_ENABLE[1,X]=TRUE
N61 $P_WORKAREA_CS_LIMIT_PLUS[1,X]=10
N62 $P_WORKAREA_CS_MINUS_ENABLE[1,X]=FALSE
N70 $P_WORKAREA_CS_PLUS_ENABLE[1,Y]=TRUE
N73 $P_WORKAREA_CS_LIMIT_PLUS[1,Y]=34
N72 $P_WORKAREA_CS_MINUS_ENABLE[1,Y]=TRUE
N73 $P_WORKAREA_CS_LIMIT_MINUS[1,Y]=-25
N80 $P_WORKAREA_CS_PLUS_ENABLE[1,Z]=FALSE
N82 $P_WORKAREA_CS_MINUS_ENABLE[1,Z]=TRUE
N83 $P_WORKAREA_CS_LIMIT_PLUS[1,Z]=-600
N90 WALCS2
; Включение группы ограничений рабоче-
го поля 2.
Дополнительная информация
Активность
Ограничение рабочего поля с WALCS1 - WALCS10 действует независимо от ограничения
рабочего поля с WALIMON. Если активны обе функции, то действует первое ограничение
на пути движения оси.
Исходная точка на инструменте
Учет данных инструмента (длина инструмента и радиус инструмента) и тем самым
исходной точки на инструменте при контроле ограничения рабочего поля соответствует
поведению при ограничении рабочего поля с WALIMON.
3.14.4
Реферирование (G74)
После включения станка все осевые салазки (при использовании инкрементной
системы измерения перемещения) должны быть перемещены на свою референтную
метку. Лишь после этого могут программироваться движения перемещения.
С помощью G74 можно выполнить реферирование в программе ЧПУ.
Синтаксис
G74 X1=0 Y1=0 Z1=0 A1=0 … ; Программирование в своем кадре ЧПУ
Программирование ЧПУ
366
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Основная информация
3.14 Дополнительные команды
Объяснение
G74:
Вызов G-команд: реферирование
X1=0 Y1=0 Z1=0 … :
Указанный адрес оси станка X1, Y1, Z1 … для линейных осейпере-
мещается в референтную точку
A1=0 B1=0 C1=0 … :
Указанный адрес оси станка A1, B1, C1 … для круговых осейпере-
мещается в референтную точку
Примечание
Перед реферированием нельзя программировать трансформацию для оси, которая
должна с помощью G74 должна быть перемещена на референтную метку.
Трансформация выключается командой TRAFOOF.
Пример
При смене измерительной системы осуществляется переход к референтной точке и
устанавливается нулевая точка детали.
Программный код
Комментарий
N10 SPOS=0
; Шпиндель в режиме управления по положению
N20 G74 X1=0 Y1=0 Z1=0 C1=0
; Реферирование для линейных и круговых осей
N30 G54
; Смещение нулевой точки
N40 L47
; Программа обработки резаньем
N50 M30
; конец программы
3.14.5
Движение к фиксированной точке (G75)
С помощью действующей не модально команды G75 оси по отдельности и независимо
друг от друга могут перемещаться на базисные точки в станочной области, к примеру, на
точки смены инструмента, точки загрузки, точки автоматической смены палет и т.д.
Фиксированные точки это позиции в системе координат станка, сохраненные в
машинных данных (MD30600 $MA_FIX_POINT_POS[n]). На ось может быть определено
макс. 4 фиксированные точки.
Подвод к фиксированным точкам может быть осуществлен из любой программы ЧПУ,
независимо от актуальной позиции инструмента или детали. Перед движением осей
выполняется внутренняя остановка предварительной обработки.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
367
Основная информация
3.14 Дополнительные команды
;
̻͏͑͘͏͕͉͇͔͗
͔͇ͦ ͙͕͇͑͞
=
Условия
Для перехода к фиксированным точка с G75 должны быть выполнены следующие
условия:
• Координаты фиксированных точек должны быть точно определены и зафиксированы
в машинных данных.
• Фиксированные точки должны находится в пределах действующего диапазона
перемещения (→ Соблюдать границы программных конечных выключателей!)
• Перемещаемые оси должны быть реферированы.
• Не должно быть активной коррекции радиуса инструмента.
• Не должно быть активной кинематической трансформации.
• Перемещаемые оси не должны участвовать в активной трансформации.
• Ни одна из перемещаемых осей не может быть ведомой осью активного соединения.
• Ни одна из перемещаемых осей не может быть осью структуры Gantry.
• Компилируемые циклы не могут подключить компонент движения.
Синтаксис
G75 <имя оси><позиция оси> ... FP=<n>
Объяснение
G75:
Подвод к фиксированной точке
<имя оси>:
Имя оси станка, которые должны быть перемещены к фиксированной
точке
Допускаются все идентификаторы осей.
Программирование ЧПУ
368
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Основная информация
3.14 Дополнительные команды
<позиция оси>:
Значение позиции не важно. Поэтому, как правило, указывается зна-
чение "0".
FP=:
Фиксированная точка, к которой должен быть выполнен подвод
<n>:
Номер фиксированной точки
Диапазон значе-
1, 2, 3, 4
ний:
Примечание:
Если FP=<n> или номер фиксированной точки не запрограммирова-
ны или если запрограммировано FP=0, то это интерпретируется
как FP=1 и выполняется подвод к фиксированной точке 1.
Примечание
В одном кадре G75 может быть запрограммировано и несколько осей. В этом случае оси
перемещаются к указанной фиксированной точке одновременно.
Примечание
Значение адреса FP не должно превышать число определенных фиксированных точек
для каждой запрограммированной оси (MD30610 $MA_NUM_FIX_POINT_POS).
Пример
Для смены инструмента оси X (= AX1) и Z (= AX3) должны быть перемещены на
фиксированную позицию осей станка 1 с X = 151,6 и Z = -17,3.
Машинные данные:
• MD30600 $MA_FIX_POINT_POS[AX1,0] = 151.6
• MD30600 $MA_FIX_POINT[AX3,0] = 17.3
Программа ЧПУ:
Программный код
Комментарий
…
N100 G55
; Активация настраиваемого смещения нулевой точки.
N110 X10 Y30 Z40
; Подвод к позиции в WCS.
N120 G75 X0 Z0 FP=1 M0
; Ось X движется на 151,6
; и ось Z движется на 17,3 (в MCS).
; Каждая ось движется со своей макс. скоростью.
; В этом кадре не должно быть активных дополнительных движений.
; Что и после достижения конечных позиций
; дополнительные движения также не выполнялись,
; здесь вставлен Стоп.
N130 X10 Y30 Z40
; Снова выполняется подвод к позиции из N110.
; Смещение нулевой точки снова активно.
…
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
369
Основная информация
3.14 Дополнительные команды
Примечание
Если функция "Управление инструментом с магазинами" активна, то вспомогательной
функции T… или M... (обычно M6) не достаточно для инициирования блокировки смены
кадра на конце движения G75.
Причина: При установке "Управление инструментом с магазинами активно"
вспомогательные функции для смены инструмента не выводятся на PLC.
Дополнительная информация
G75
Оси перемещаются как оси станка ускоренным ходом. Выполняется внутренняя
эмуляция движения через функции "SUPA" (подавление всех фреймов) и "G0 RTLIOF"
(движение ускоренного хода с интерполяцией отдельной оси).
Если условия для "RTLIOF" (интерполяция отдельной оси) не выполнены, то подвод к
фиксированной точке выполняется как траектория.
При достижении фиксированной точки оси останавливаются в пределах окна допуска
"Точный останов точный".
Параметрируемая динамика для G75
Для движений позиционирования на фиксированные позиции (G75) через следующие
машинные данные можно установить требуемый динамический режим:
MD18960 $MN_POS_DYN_MODE (тип динамики позиционирующей оси)
Осевые дополнительные движения
Следующие осевые доп. движения учитываются на момент интерпретации кадра G75:
• внешнее смещение нулевой точки
• DRF
• смещение синхронизации ($AA_OFF)
После этого доп. движения осей не могут изменяться до достижения конца движения
перемещения кадром G75.
Доп. движения после интерпретации кадра G75 ведут к соответствующему смещению
фиксированной точки подвода.
Следующие дополнительные движения не учитываются независимо от момента
интерпретации и приводят к соответствующему смещению заданного конечного
положения:
• Коррекция инструмента Online
• Дополнительные движения из компилируемых циклов в BKS как MCS
Активные фреймы
Все активные фреймы игнорируются. Перемещение выполняется в системе координат
станка.
Программирование ЧПУ
370
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Основная информация
3.14 Дополнительные команды
Ограничение рабочего поля в WCS/ENS
Ограничение рабочего поля, спец. для системы координат (WALCS0 ... WALCS10) не
действует в кадре с G75. Заданная точка контролируется как стартовая точка следующего
кадра.
Движения осей/шпинделей с POSA/SPOSA
Если запрограммированные оси/шпиндели перемещались прежде с POSA или SPOSA, то
перед подводом к фиксированной точке эти движения сначала доводятся до конца.
Функции шпинделя в кадре G75
Если шпиндель исключен из "Подвода к фиксированной точке", то в кадре G75 могут быть
дополнительно запрограммированы функции шпинделя (например, позиционирование
с SPOS/SPOSA).
Оси модуло
У осей модуло подвод к фиксированной точке выполняется по кратчайшему пути.
3.14.6
Наезд на жесткий упор (FXS, FXST, FXSW)
Функция
С помощью функции "Наезд на жесткий упор" можно создать определенные усилия для
зажима деталей, которые необходимы, к примеру, для задних бабок, пинолей и
захватов. Кроме этого с помощью функции можно переходить к механическим
референтным точкам.
̻͇͙͑͏͇͌͑ͦ͘͞
͖͕͎͏͝͏ͦ ͖͕͒͌͘
͔͇͎͇͌͋ ͔͇ ͍͙͌͑͘͏͐ ͚͖͕͗
̵͔͕͑ ͕͔͙͕͑͗͒ͦ
͍͙͕͕͌͑͊͘ ͚͖͕͇͗
̮͇͖͕͇͓͓͗͊͗͏
͕͉͇͔͔͇͗ͦ
͕͔͔͇͑͌ͦ͞
̸͙͇͙͕͉͇͗ͦ
͖͕͎͏͝͏ͦ
͖͕͎͏͝͏ͦ
При достаточно уменьшенном моменте возможны и простые процессы измерения без
обязательного подключения щупа. Функция "Наезд на жесткий упор" может
использоваться для осей и перемещаемых в качестве осей шпинделей.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
371
Основная информация
3.14 Дополнительные команды
Синтаксис
FXS[<ось>]=…
FXST[<ось>]=…
FXSW[<ось>]=…
FXS[<ось>]=… FXST[<ось>]=…
FXS[<ось>]=… FXST[<ось>]=… FXSW[<ось>]=…
Объяснение
FXS:
Команда для включения и выключения функции "Наезд на жесткий упор"
FXS[<ось>]=1:
Включить функцию
FXS=[<ось>]=0:
Выключить функцию
FXST:
Опционная команда для установки зажимного момента
Данные в % от максимального момента привода.
FXSW:
Опционная команда для установки ширины окна для контроля жесткого
упора
Данные в мм, дюймах или градусах.
<ось>:
Имена осей станка
Программируются оси станка (X1, Y1, Z1 и т.д.).
Примечание
Команды FXS, FXST и FXSW действуют модально.
Программирование FXST и FXSW является опционным: если данные отсутствуют, то
действует последнее запрограммированное значение или установленное в
соответствующих машинных данных значение.
Активировать наезд на жесткий упор: FXS[<ось>] = 1
Движение к заданной точке может быть описано как движение траекторных или
позиционирующих осей. Для позиционирующих осей функция возможна и за границы
кадра.
Наезд на жесткий упор может осуществляться и для нескольких осей одновременно и
параллельно движению других осей. Жесткий упор должен находиться между стартовой
позицией и заданным конечным положением.
ВНИМАНИЕ
Опасность столкновений
Сразу же после активации функции "Наезд на жесткий упор" для оси/шпинделя более
нельзя запрограммировать новую позицию для этой оси.
Перед выбором функции шпиндели должны быть переведены в режим управления
положением.
Программирование ЧПУ
372
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Основная информация
3.14 Дополнительные команды
Пример:
Программный код
Комментарий
X250 Y100 F100 FXS[X1]=1 FXST[X1]=12.3 FXSW[X1]=2
; Ось X1 движется с подачей F100 (не
обязательные данные) на заданную
позицию X=250 мм.
Зажимной момент составляет 12.3% от
максимального движущего момента,
контроль осуществляется в окне шири-
ной 2 мм.
Деактивировать наезд на жесткий упор: FXS[<ось>] = 0
Выключение функции вызывает остановку предварительной обработки.
В кадре с FXS[<ось>]=0 могут и должны стоять движения перемещения.
ВНИМАНИЕ
Опасность столкновений
Движения перемещения на позицию отвода должны осуществляться от жесткого
упора, в ином случае возможны повреждения упора или станка.
Смена кадра осуществляется после достижения позиции отвода. Если позиция отвода
не указана, то смена кадра осуществляется сразу же после отключения ограничения
моментов.
Пример:
Программный код
Комментарий
X200 Y400 G01 G94 F2000 FXS[X1]=0
; Ось X1 отводится от жесткого упора на позицию
X=200 мм. Все другие данные являются опционны-
ми.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
373
Основная информация
3.14 Дополнительные команды
Зажимной момент (FXST) и окно контроля (FXSW)
Запрограммированное ограничение моментов FXST действует с начала кадра, т.е. и
наезд на упор осуществляется с уменьшенным моментом. FXST и FXSW могут быть
запрограммированы или изменены в любой момент времени в программе обработки
деталей. Изменения начинают действовать перед движениями перемещения, стоящими
в том же кадре.
ВНИМАНИЕ
Опасность столкновений
Если программируется новое окно контроля жесткого упора, то изменяется не только
ширина окна, но и исходная точка для центра окна, если ось до этого двигалась.
Фактическая позиция оси станка при изменении окна является новым центром окна.
Окно должно быть выбрано таким образом, чтобы только наезд на упор приводил к
срабатыванию контроля жесткого упора.
Дополнительная информация
Рампа нарастания
Через машинные данные можно определить рампу нарастания для новой границы
момента, чтобы предотвратить скачкообразную установку границы момента (например,
при зажиме детали пинолью).
Подавление ошибок
В приложениях ошибка упора может быть подавлена из программы обработки деталей,
при этом в машинных данных создается маска ошибки и новая настройка MD
активируется с помощью NEW_CONF.
Активация
Команды для наезда на жесткий упор могут вызываться из синхронных действий/
технологических циклов. Активация может осуществляться и без движения,
ограничение момента осуществляется сразу же. Как только ось начинает двигаться со
стороны заданного значения, выполняется контроль упора.
Активация из синхронных действий
Пример:
Если ожидаемое событие ($R1) наступает, а наезд на жесткий упор еще не выполняется,
то необходимо активировать FXS для оси Y. Момент должен составлять 10 %
номинального момента. Для ширины окна контроля действует значение
предварительной установки.
Программный код
N10 IDS=1 WHENEVER (($R1=1) AND ($AA_FXS[Y]==0)) DO $R1=0 FXS[Y]=1
FXST[Y]=10
Обычная программа обработки деталей должна обеспечить установку $R1 к желаемому
моменту времени.
Программирование ЧПУ
374
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Основная информация
3.14 Дополнительные команды
Деактивация из синхронных действий
Пример:
Если имеется ожидаемое событие ($R3) и существует состояние "Наезд на упор"
(системная переменная $AA_FXS), то FXS должна быть отключена.
Программный код
IDS=4 WHENEVER (($R3==1) AND ($AA_FXS[Y]==1)) DO FXS[Y]=0
FA[Y]=1000 POS[Y]=0
Жесткий упор был достигнут
После достижения жесткого упора:
• остаточный путь удаляется, и отслеживается заданное значение положения.
• Движущий момент возрастает до запрограммированного предельного
значения FXSW и после этого остается постоянным.
• Контроль жесткого упора активируется в пределах указанной ширины окна.
Граничные условия
• Измерение со стиранием остатка пути
”Измерение со стиранием остаточного пути” (команда MEAS) и ”Наезд на жесткий
упор” не могут одновременно программироваться в одном кадре.
Исключение: Одна функция воздействует на траекторную ось, а другая - на
позиционирующую ось, или обе воздействуют на позиционирующие оси.
• Контроль контура
При активной функции "Наезд на жесткий упор" контроль контура не осуществляется.
• Позиционирующие оси
При "Наезде на жесткий упор" с позиционирующими осями смена кадров
осуществляется независимо от движения наезда на жесткий упор.
• Оси Link и оси контейнера
Наезд на жесткий упор допускается и для осей Link и осей контейнера.
Состояние зависимой оси станка сохраняется и после вращений контейнера. Это же
относится и к модальному ограничению моментов с FOCON.
• Наезд на жесткий упор невозможен:
- для осей Gantry
- Для конкурирующих позиционирующих осей, управляемых исключительно с PLC
(выбор FXS должен осуществляться из программы ЧПУ).
• Если граница моментов слишком уменьшается, то ось более не может следовать
установке заданного значения, регулятор положения переходит в ограничение и
увеличивается погрешность контура. В этом рабочем состоянии при увеличении
границы моментов могут возникнуть толчкообразные движения. Для обеспечения
следования оси необходимо контролировать, чтобы погрешность контура не была бы
больше, чем при неограниченном моменте.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
375
Основная информация
3.14 Дополнительные команды
3.14.7
Время ожидания (G4)
Команда G4 в кадре программирует время (задержку), отсчитываемое с момента
обработки кадра в главном ходе. Смена кадров происходит в следующем кадре, после
полного истечения времени.
Примечание
G4 прерывает режим управления траекторией.
Синтаксис
G4 F<Time>
G4 S<NumSpi>
G4 S<n> = <NumSpi>
Значение
G4:
Активировать время ожидания
Автономно в ка-
да
дре:
F<Time>:
По адресу F задается задержка <Time> в секундах.
S<NumSpi>:
По адресу S задается задержка в оборотах шпинделя <NumSpi> относительно
текущего главного шпинделя.
S<n>=NumSpi>:
По адресу S задается задержка в оборотах шпинделя <NumSpi> относительно
шпинделя с расширением адреса <n>.
Примечание
Используемые в кадре задержки G4 для указания времени адреса F и S не влияют на
подачу F... и частоту вращения шпинделя S... программы.
Граничные условия
Синхронные действия
Два синхронных действия запрограммированы в программе таким образом, чтобы
следующий кадр выполнялся с задержкой относительно кадра действия, в котором
выполняются синхронные действия. Одно синхронное действие представляет собой
модальное синхронное действие. Другое синхронное действие представляет собой
покадровое синхронное действие. Если нужно чтобы покадровое синхронное действие
влияло на модальное синхронное действие, например, разрешало обработку через
UNLOCK, то в качестве действующей задержки должны быть предусмотрены, по
меньшей мере, два такта интерполятора например, G4 F<такт интерполятора * 2>.
Программирование ЧПУ
376
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Основная информация
3.14 Дополнительные команды
Действующая задержка зависит от настроенной машинной даты MD10280
$MN_PROG_FUNCTION_MASK, бит 4 = <значение>
Вели-
Значение
чина
0
Действующая задержка равна запрограммированной задержке
1
Действующая задержка равна запрограммированной задержке, округленной до бли-
жайшего (в сторону увеличения) кратного такта интерполятора (MD10071
$MN_IPO_CYCLE_TIME)
Пример программы:
• MD10071 $MN_IPO_CYCLE_TIME == 8 мс
• MD10280 $MN_PROG_FUNCTION_MASK, бит 4 = 1
Программный код
Комментарий
N10 WHEN TRUE DO LOCK(1)
; покадровый SynAct: LOCK
; модальный SynAct. ID=1
N20 G4 F2
; кадр действия для SynAct из N10
N30 WHEN TRUE DO UNLOCK(1)
; покадровый SynAct: UNLOCK
; модальный SynAct. ID=1
N40 ID=1 WHENEVER TRUE DO $R0=1 RDISABLE
; модальный SynAct ID=1
; R-параметр R0=1
; установка блокировки загрузки
N50 G4 F0.012
; кадр действия для SynAct из N40 и N50
; см. ниже абзац «Описание»
N60 G4 F10
Описание
Цель заключается в том, чтобы покадровое синхронное действие из N30 отменяло
активную блокировку (LOCK) модального синхронного действия с ID=1 из N40 и, тем
самым, в N50 записывался R-параметр и включалась блокировка загрузки. Эта цель
может быть достигнута только в том случае, если длительность действующей задержки
составляет, по меньшей мере, два такта интерполятора.
Действующая задержка складывается из запрограммированной задержки, такта
интерполятора и значения параметра MD10280 $MN_PROG_FUNCTION_MASK, бит 4.
Чтобы длительность действующей задержки составляла, по меньшей мере, два такта
интерполятора, необходимо запрограммировать следующую задержку:
• бит 4 == 0: запрограммированная задержка ≥ 2 * такта интерполятора
• бит 4 == 1: запрограммированная задержка ≥ 1,5 * такта интерполятора
Если действующая задержка меньше двух тактов интерполятора, запись R-параметра и
блокировка загрузки будут выполнены только в кадре N60.
Пример
Программный код
Комментарий
N10 G1 F200 Z-5 S300 M3
; подача F, скорость шпинделя S
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
377
Основная информация
3.15 Прочая информация
Программный код
Комментарий
N20 G4 F3
; Время ожидания: 3с
N30 X40 Y10
N40 G4 S30
; Ожидать 30 оборотов шпинделя (соответствует при S=300 об/мин
и процентовке скорости 100 %: t = 0,1 мин).
N50 X...
; Запрограммированная в N10 подача и скорость шпинделя про-
должают действовать.
3.14.8
Внутренняя остановка предварительной обработки
Функция
При обращении к данным состояния станка ($A…) СЧПУ осуществляет внутреннюю
остановку предварительной обработки. Следующий кадр выполняется только тогда,
когда все подготовленные и сохраненные прежде кадры полностью выполнены.
Предыдущий кадр останавливается с точным остановом (как G9).
Пример
Программный код
Комментарий
N40 POSA[X]=100
N50 IF $AA_IM[X]==R100 GOTOF MARKE1
; Обращение к данным состояния станка ($A…),
СЧПУ осуществляет внутреннюю остановку пред-
варительной обработки.
N60 G0 Y100
N70 WAITP(X)
N80 MARKE1:
3.15
Прочая информация
3.15.1
Оси
Типы осей
В рамках программирования различают следующие типы осей:
• Главные оси / гео-оси
• Дополнительные оси
• Главный шпиндель, мастер-шпиндель
Программирование ЧПУ
378
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Основная информация
3.15 Прочая информация
• Оси станка
• Оси канала
• Траекторные оси
• Позиционирующие оси
• Синхронные оси
• Командные оси
• Оси PLC / конкурирующие позиционирующие оси
• Link-оси
• Оси Lead-Link
̵͘͏ ͇͔͇͇͑͒
̪͕͓͙͌͌͗͏͌͑͘͞͏͌ ͕͘͏
̫͕͖͕͔͒͏͙͔͌͒ͣ͌͢ ͕͘͏
̹͇͙͕͔͗͌͑͗͌͢ ͕͘͏
̱͕͓͇͔͔͋͌͢ ͕͘͏
̸͏͔͕͔͔͗͌͜͢ ͕͘͏
̶͕͎͏͝͏͕͔͏͚͗ͥ͠͏͌ ͕͘͏
̵͘͏ 3/&
̱͏͔͓͇͙͌͏͇͌͑ͦ͘͞ ͙͇͔͕͓͇͗͛͗͘͝͏ͦ
̵͘͏ ͙͇͔͇͑͘
3.15.1.1
Главные оси/геометрические оси
Главные оси определяют прямоугольную, правовращающуюся систему координат. В
этой системе координат программируются движения инструмента.
В технике ЧПУ главные оси обозначаются как геометрические оси. В данном руководстве
по программированию также будет использоваться это понятие.
Переключаемые гео-оси
С помощью функции "Переключаемые геометрические оси" (см. описание функций
"Расширенное программирование") можно изменять сконфигурированное через
машинные данные соединение геометрических осей из программы обработки деталей.
При этом одна из определенных в качестве синхронной дополнительной оси ось канала
может заменять любую геометрическую ось.
Идентификатор оси
Имя/идентификатор гео-оси можно задавать через следующие машинные данные:
MD20060 $MC_AXCONF_GEOAX_NAME_TAB (имя гео-оси в канале)
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
379
Основная информация
3.15 Прочая информация
Стандартное обозначение на токарных станках:
1. Гео-ось: X
2. Гео-ось: Z
̷͉͕͉͔͇͌͒ͣ͌͗ͦ ͖͕͉͕͕͙͔͇͗ͦ ͕ͣ͘
̯͔͙͚͓͔͙͗͌͘͢
̫͕͖͕͔͒͏͙͔͌͒ͣ͐͢ ͖͟͏͔͋͌͒ͣ
;
=
̪͇͉͔͒͐͢ ͖͟͏͔͋͌͒ͣ
̫͕͖͕͔͒͏͙͔͇͌͒ͣͦ ͕ͣ͘
͓͇͙͌͗͘ ͖͟͏͔͋͌͒ͣ
̮͇͔͋ͦͦ ͈͇͈͇͑
̵ͣ͘b&
̪͕͌ ͕͘͏
Стандартное обозначение на фрезерных станках:
1. Гео-ось: X
2. Гео-ось: Y
3. Гео-ось: Z
Дополнительная информация
Для программирования фреймов и геометрии детали (контура) используются максимум
три геометрические оси.
Идентификаторы для геометрических осей и осей канала могут быть одинаковыми, если
возможно отображение.
Имена гео-осей и осей канала могут быть одинаковыми во всех каналах. Таким образом,
любая программа может обрабатываться в любом канале.
3.15.1.2
Дополнительные оси
В отличие от геометрических осей, для дополнительных осей не определено
геометрической связи между осями.
Типичными дополнительными осями являются:
• оси револьверной головки
• оси поворотного стола
• оси качающейся головки
• оси загрузчика
Программирование ЧПУ
380
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Основная информация
3.15 Прочая информация
Идентификатор оси
У токарного станка с поворотным магазином, к примеру,:
• Позиция револьверной головки U
• Задняя бабка V
Пример программирования
Программный код
Комментарий
N10 G1 X100 Y20 Z30 A40 F300
; Движения траекторных осей.
N20 POS[U]=10POS[X]=20 FA[U]=200 FA[X]=350
; Движения позиционирующих осей.
N30 G1 X500 Y80 POS[U]=150FA[U]=300 F550
; Траекторная и позиционирующая ось.
N40 G74 X1=0 Z1=0
; Подвод в референтную точку.
3.15.1.3
Главный шпиндель, мастер-шпиндель
Какой из шпинделей является главным, определяется кинематикой станка. Этот
шпиндель, как правило, через машинные данные назначается мастер-шпинделем.
Это соответствие может быть изменено программной командой SETMS(<номер
шпинделя>). С помощью SETMS без указания номера шпинделя можно вернуться к
определенному в машинных данных мастер-шпинделю.
Для мастер-шпинделя действуют специальные функции, к примеру, резьбонарезание.
Идентификатор шпинделя
S или S0
3.15.1.4
Оси станка
Оси станка это физически имеющиеся на станке оси.
Запрограммированное движение траекторной или дополнительной оси может через
активную в канале трансформацию (TRANSMIT, TRACYL или TRAORI) действовать на
несколько осей станка.
Оси станка запрашиваются прямо в программе только в особых случаях (например, при
реферировании или движении в фиксированную точку).
Идентификатор оси
Имя/идентификатор оси станка можно задавать через следующие спец. для ЧПУ
машинные данные:
MD10000 $MN_AXCONF_MACHAX_NAME_TAB (имя оси станка)
Установка по умолчанию: X1, Y1, Z1, A1, B1, C1, U1, V1
Кроме того, оси станка имеют фиксированные идентификаторы осей, которые всегда
можно использовать независимо от имен, установленных в машинных данных:
AX1, AX2, …, AX<n>
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
381
Основная информация
3.15 Прочая информация
3.15.1.5
Оси канала
Осями канала называются все геометрические, дополнительные оси и оси станка,
назначенные каналу.
Идентификатор оси
Спец. для канала имя/идентификатор одной из геометрических и дополнительных осей
можно задавать через следующие машинные данные:
MD20080 $MC_AXCONF_CHANAX_NAME_TAB (имя оси канала)
Установка по умолчанию: X, Y, Z, A, B, C, U, V
Сопоставление, на какую ось станка будет отображаться та или иная гео-ось или
дополнительная ось в канале, задается в следующих машинных данных:
MD20070 $MC_AXCONF_MACHAX_USED (используемые оси станка)
3.15.1.6
Траекторные оси
Траекторные оси описывают ход траектории и тем самым движение инструмента в
пространстве.
Запрограммированная подача действует вдоль этой траектории. Участвующие в этой
траектории оси достигают своих позиций одновременно. Как правило, это
геометрические оси.
Какие оси являются траекторными осями и тем самым определяют скорость, задается
через предварительные установки.
В программе ЧПУ траекторные оси могут указываться с помощью FGROUP.
Дополнительную информацию по FGROUP см. "Подача (G93, G94, G95, F, FGROUP, FL,
FGREF) (Страница 110)".
3.15.1.7
Позиционирующие оси
Позиционирующие оси интерполируются раздельно, т. е. каждая позиционирующая ось
имеет свой осевой интерполятор и свою подачу. Позиционирующие оси не
интерполируют с траекторными осями.
Позиционирующие оси перемещаются из программы ЧПУ или с PLC. Если одна ось
одновременно должна перемещаться и программой ЧПУ, и PLC, то появляется
сообщение об ошибке.
Типичными позиционирующими осями являются:
• загрузчик для транспортировки детали
• загрузчик для отгрузки детали
• инструментальный магазин/револьвер
Типы
Различаются позиционирующие оси с синхронизацией к концу кадра или через
несколько кадров.
Программирование ЧПУ
382
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Основная информация
3.15 Прочая информация
Оси POS
Смена кадра осуществляется к концу кадра, если все запрограммированные в этом
кадре траекторные и позиционирующие оси достигли своей запрограммированной
конечной точки.
Оси POSA
Движения этих позиционирующих осей могут осуществляться через несколько кадров.
Оси POSP
Движение этих позиционирующих осей для подвода к конечной позиции
осуществляется поэтапно.
Примечание
Позиционирующие оси становятся синхронными осями, если они перемещаются без
особой идентификации POS/POSA.
Режим управления траекторией (G64) для траекторных осей возможен только тогда,
когда позиционирующие оси (POS) достигли своей конечной позиции перед
траекторными осями.
Траекторные оси, программируемые с помощью POS/POSA, для этого кадра изымаются
из соединения траекторных осей.
Дополнительную информацию по POS, POSA и POSP см. "Перемещение
позиционирующих осей (POS, POSA, POSP, FA, WAITP, WAITMC) (Страница 118)".
3.15.1.8
Синхронные оси
Синхронные оси движутся синхронно с ходом траектории от начальной к
запрограммированной конечной позиции.
Запрограммированная в F подача действует для всех запрограммированных в кадре
траекторных осей, но не для синхронных осей. Для хода синхронных осей требуется то же
время, что и для траекторных осей.
Синхронной осью может быть, к примеру, круговая ось, перемещаемая синхронно с
траекторной интерполяцией.
3.15.1.9
Командные оси
Командные оси запускаются из синхронных действий на основе события (команды). Они
могут позиционироваться, запускаться и останавливаться полностью асинхронно с
программой обработки деталей. Ось не может приводиться в движение одновременно
из программы обработки деталей и из синхронных действий.
Командные оси интерполируются раздельно, т.е. каждая командная ось имеет свой
осевой интерполятор и свою подачу.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
383
Основная информация
3.15 Прочая информация
3.15.1.10
Оси PLC
Оси PLC перемещаются с PLC через специальные функциональные блоки в главной
программе и могут двигаться асинхронно со всеми прочими осями. Движения
перемещения запускаются траекторными и синхронными движениями.
3.15.1.11
Оси Link
Link-оси это оси, физически подключенные к другому NCU и подчиняющиеся его
управлению по положению. Link-оси могут быть динамически согласованы с
каналами другого NCU. С точки зрения определенного NCU, Link-оси это не локальные
оси.
̶͗͏͉͕͔͇͋ͦ
̶͗͏͉͕͔͇͋ͦ
1&8
͘͏͙͓͇͌͘b
1&8
͘͏͙͓͇͌͘b
̱͇͔͇͒b
̱͇͔͇͒b
%
$
̱͇͔͇͒
$
%
$
̳͕͚͋͒ͣ /LQN +:
̳͕͚͋͒ͣ /LQN +:
/LQN ͕͓͓͚͔͑͏͇͑͝͏ͦ
Для динамического изменения согласования с NCU служит концепция осевого
контейнера. Переход осей с GET и RELEASE из программы обработки детали для Link-
осей не доступен.
Дополнительная информация
Условия
• Участвующие NCU1 и NCU2 должны быть соединены через Link-модуль с быстрой Link-
коммуникацией.
• Ось должна быть соответственно сконфигурирована через машинные данные.
• Необходимо наличие опции "Link-ось".
Описание
Управление по положению осуществляется на NCU, на котором ось физически
соединена с приводом. Там находится соответствующий осевой интерфейс VDI.
Программирование ЧПУ
384
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Основная информация
3.15 Прочая информация
Заданные значения положения создаются для Link-осей на другом NCU и коммуникация
осуществляется через NCU-Link.
Link-коммуникация должна отвечать за синхронизацию между интерполяторами и
регулятором положения или интерфейсом PLC. Вычисленные интерполяторами
заданные значения должны быть переданы на контур управления положением на
основном NCU, или фактические значения должны быть снова переданы обратно.
Осевой контейнер
Осевой контейнер - это структура данных кольцевого буфера, в которой
осуществляется согласование локальных осей и/или Link-осей с каналами. Записи в
кольцевом буфере могут иметь циклическое смещение.
Конфигурация Link-осей допускает в логическом образе осей станка наряду с прямой
ссылкой на локальные оси или Link-оси ссылку на осевой контейнер. Такая ссылка
состоит из:
• номера контейнера и
• слота (место в кольцевом буфере внутри соответствующего контейнера)
В качестве элемента на месте в кольцевом буфере стоит:
• локальная ось или
• Link-ось
Элементы в осевом контейнере содержат локальные оси станка или Link-оси с точки
зрения отдельного NCU. Элементы в логическом образе осей станка
(MD10002 $MN_AXCONF_LOGIC_MACHAX_TAB) отдельного NCU являются
фиксированными.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
385
Основная информация
3.15 Прочая информация
3.15.1.12
Оси Lead-Link
Lead-Link-ось это ось, которая интерполируется NCU и используется одним или
несколькими другими NCU в качестве ведущей оси для управления ведомыми осями.
̳͕͚͋͒ͣ 1&8 /LQN
1&8
1&8
1&8 Q
̮͇͇͔͔͋͌͢ ͎͔͇͞
͔͌͏ͦ $
̩͒͏͔ͦ͏͌ ͉͕͌͋
̯͔͙͖͕͙͕͌͗͒ͦ͗
̯͔͙͖͕͙͕͌͗͒ͦ͗
͓͕͐ ͕͘͏
͕͌͐͘
̻͇͙͑͏͌͑͘͞͏͌ ͎͔
̸͉͕͌͗
̸͉͕͌͗
͇͔͌͞͏ͦ $
̶͗͏͉͕͔͇͋ͦ
̶͗͏͉͕͔͇͋ͦ
͘͏͙͓͇͌͘b
͘͏͙͓͇͌͘b
$
%
%
Осевая ошибка регулятора положения передается на все другие NCU, которые через
Lead-Link-ось имеют отношение к затронутой оси.
Зависимые от Lead-Link-оси NCU могут использовать следующие соединения с Lead-Link-
осью:
• главное значение(заданное, фактическое, симулированное главное значение)
• буксировка
• тангенциальное слежение
• электронный редуктор (ELG)
• синхронный шпиндель
Программирование
Главный NCU:
Только NCU, с которым физически согласована ось главного значения, может
программировать движения перемещения для этой оси. Исходя из этого
программирование не должно учитывать особенностей.
NCU ведомых осей:
Программирование на NCU ведомых осей не может содержать команд перемещения
для Lead-Link-оси (ось главного значения). Нарушения этого правила вызывают ошибку.
Программирование ЧПУ
386
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Основная информация
3.15 Прочая информация
Обращение к Lead-Link-оси осуществляется через идентификатор осей канала обычным
способом. Доступ к состояниям Lead-Link-оси возможен через выбранные системные
переменные.
Дополнительная информация
Условия
• Участвующие NCU1 до NCU<n> (<n> макс. 8) должны быть соединены через Link-
модуль с быстрой Link-коммуникацией.
Литература:
Справочник по оборудованию "Проектирование NCU"
• Ось должна быть соответственно сконфигурирована через машинные данные.
• Необходимо наличие опции "Link-ось".
• Для всех участвующих NCU должен быть сконфигурирован идентичный такт
интерполятора.
Ограничения
• Ведущая ось в качестве Lead-Link-оси не может быть Link-осью, т. е. перемещаться
другим NCU как основным NCU.
• Ведущая ось в качестве Lead-Link-оси не может быть осью контейнера, т. е. осью, к
которой попеременно обращаются различные NCU.
• Lead-Link-ось не может быть запрограммированной ведущей осью соединения Gantry.
• Соединения с Lead-Link-осями не могут иметь многоступенчатого последовательного
включения (каскадирование).
• Переход оси возможен только внутри основного NCU Lead-Link-оси.
Системные переменные
Следующие системные переменные могут использоваться с идентификатором осей
канала Lead-Link-оси:
Системная переменная Объяснение
$AA_LEAD_SP
Симулированное главное значение - позиция
$AA_LEAD_SV
Симулированное главное значение - скорость
Если эти системные переменные актуализируются через NCU ведущей оси, то новые
значения передаются и на NCU, которые хотят перемещать ведомые оси в зависимости
от этой ведущей оси.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
387
Основная информация
3.15 Прочая информация
3.15.2
От команды движения до движения станка
Связь между запрограммированными движениями осей (командами движения) и
следующими из них движениями станка должен пояснить рисунок ниже:
̫͉͏͍͔͌͏͌ ͕͘͏ ͎͇͖͕͇͓͓͗͊͗͏͕͉͇͔͔͕͗͌ ͉ ͘͏͙͓͌͌͘ ͕͕͑͗͋͏͔͇͙ ͙͇͋͌͒͏
̵͖͏͇͔͘͏͌
͕͓͙͊͌͌͗͏͏ ͙͇͋͌͒͏ ͎͌͗͌͞ ͕͊͌ ͕͘͏
͔͇͖͗͏͓͌͗ ; < =
̻͓͗͌͐ ͉͢͞͏͔͒͌͘͏͌
͓͔͌͌͘͠͏͌ 75$16
̵͙͇͉͘͟͏͌ͦ͘ ͕͖͇͙͕͌͗͗͢
̵͖͏͇͔͘͏͌ ͕͗͏͔͙͇͌͝͏͏
͉͇͔͗͌͠͏͌ 527
͖͓͔͌͗͌͌͌͠͏ͦ ͋͒ͦ ͙ b͔
͏͔͙͚͓͔͙͇͗͌͘ ͎͌͗͌͞ ͉͙͕͌͑͗
͓͇͙͇͈͘͟͏͕͉͇͔͗͏͌ 6&$/(
͕͖͕͔͋͒͏͙͔͌͒ͣ͢͜ ͕͌͐͘
͕͗͏͔͙͇͌͝͏͏b ͚͕͊͒ ͇̈́͐͒͌͗
͔͇͖͗͏͓͌͗ & 8 9
̱͕͔͙͚͗ ͉ ͇͙͕͉͕͋͌͑͗͐
͘͏͙͓͌͌͘ ͕͕͑͗͋͏͔͇͙
͇͔͇͇͑͒ %&6
̻͓͗͌͐ ͉͢͞͏͔͒͌͘͏͌
̱͕͗͗͌͑͝͏ͦ ͔͇ ͇͗͋͏͚͘ ͏͔͙͚͓͔͙͇͗͌͘
͓͔͌͌͘͠͏͌
̫͉͏͍͔͌͏͌
͓͇͙͇͈͘͟͏͕͉͇͔͗͏͌
͔͚͉͕͒͌͐ ͙͕͑͞͏ ͏͔͙͚͓͔͙͇͗͌͘
͉ %&6
̱͚͕͉͗͊͌͢ ͕͘͏ ͋͒ͦ
̱͕͗͗͌͑͝͏ͦ ͔͇ ͋͒͏͔͚ ͏͔͙͚͓͔͙͇͗͌͘
͕͉͕͌͐͘ ͙͇͔͕͓͗͛͗͘
̱͏͔͓͇͙͌͏͇͌͑ͦ͘͞ ͙͇͔͕͓͇͗͛͗͘͝͏ͦ ͌͒͘͏
͇͝͏͏
͇͙͑͏͉͔͇
̫͉͏͍͔͌͏͌ ͕͌͐͘ ͙͇͔͇͑͘ ͇͔͇͇͑͒ DEF
3.15.3
Вычисление хода
Вычисление хода получает участок перемещения, который должен быть пройден в
одном кадре, с учетом всех смещений и коррекций.
Общее правило:
Ход =
заданное значение - фактическое значение + смещение нулевой точки (ZO) + коррекция
инструмента (WK)
;
7
0
:
=
̮͇͇͔͔͋
͕͌ ͎͔͇͞
19
͔͌͏͌
:.
̧͈͕͙͔͇͒ͥͦ͘ ͖͕͎͏͝͏ͦ
Программирование ЧПУ
388
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Основная информация
3.15 Прочая информация
Если в новом программном кадре программируется новое смещение нулевой точки и
новая коррекция инструмента, то:
• при вводе исходного размера:
Ход = (исходный размер P2 - исходный размер P1) + (NV P2 - NV P1) + (WK P2 - WK P1).
• при вводе составного размера:
Ход = составной размер + (NV P2 - NV P1) + (WK P2 - WK P1).
193
̯͕͔͋͐͘͜͢ ͇͎͓͗͌͗ ͎͇͇͔͔͕͋͌ ͎͔͇͔͌͞͏͌ ͋͒ͦ 3
:. 3
̯͕͔͋͐͘͜͢ ͇͎͓͗͌͗
193
:. 3
̶͚͙ͣ
͎͇͇͔͔͕͋͌ ͎͔͇͔͌͞͏͌
͋͒ͦ 3
0
:
3
̫͉͏͍͔͌͏͌
3
̻͇͙͑͏͕͌͑͌͘͞ ͎͔͇͔͌͞͏͌b
̻͇͙͑͏͕͌͑͌͘͞ ͎͔͇͔͌͞͏͌b
3.15.4
Адреса
Постоянные адреса
Эти адреса установлены фиксировано, т. е. символы адреса изменить невозможно.
Перечень представлен в таблице "Постоянные адреса (Страница 1290)".
Настраиваемые адреса
Этим адресам изготовитель станка через машинные данные может присвоить другое
имя.
Примечание
Настраиваемые адреса должны быть однозначными в СЧПУ, т. е. нельзя использовать
одно и то же имя адреса для адресов разного типа (значения осей и конечные точки,
ориентация инструмента, параметры интерполяции, ...).
Перечень представлен в таблице "Устанавливаемые адреса (Страница 1296)".
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
389
Основная информация
3.15 Прочая информация
Адреса, действующие модально/покадрово
Модально действующие адреса сохраняют свою значимость с запрограммированным
значением до тех пор (во всех последующих кадрах), пока по тому же адресу не будет
запрограммировано новое значение.
Действующие покадрово адреса сохраняют свою значимость только в том кадре, в
котором они были запрограммированы.
Пример:
Программный код
Комментарий
N10 G01 F500 X10
N20 X10
; Подача F из N10 действует до ввода новой подачи.
Адреса с осевым расширением
У адресов с осевым расширением имя оси стоит в квадратных скобках после адреса,
который устанавливает соответствие осям.
Пример:
Программный код
Комментарий
FA[U]=400
; Специфическая подача для оси U.
См. также таблицу "Постоянные адреса (Страница 1290)".
Расширенное написание адреса
Расширенное написание адресов позволяет систематизировать большее количество
осей и шпинделей.
Расширенный адрес состоит из числового расширения и присвоенного посредством
символа "=" арифметического выражения. Цифровое расширение имеет одну или две
позиции и всегда является положительным.
Расширенное написание адреса допускается только для следующих простых адресов:
Адрес
Объяснение
X,Y,Z,…
Адреса осей
I, J, K
Параметры интерполяции
S
Число оборотов шпинделя
SPOS, SPOSA
Позиция шпинделя
M
Дополнительные функции
H
Вспомогательные функции
T
Номер инструмента
F
Подача
Программирование ЧПУ
390
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Основная информация
3.15 Прочая информация
Примеры:
Программный код
Комментарий
X7
; "=" не требуется; 7 это значение; но символ "=" возможен и здесь
X4=20
; Ось X4; "=" требуется
CR=7.3
; 2 буквы; "=" требуется
S1=470
; скорость 1-го шпинделя: 470 об/мин
M3=5
; остановка 3-го шпинделя
Для адресов M, H, S а также для SPOS и SPOSA, числовое расширение может быть
заменено на переменную. При этом идентификатор переменных стоит в квадратных
скобках.
Примеры:
Программный код
Комментарий
S[SPINU]=470
; Число оборотов для шпинделя, номер которого зафиксирован в переменной
SPINU
M[SPINU]=3
; Правое вращение для шпинделя, номер которого зафиксирован в переменной
SPINU
T[SPINU]=7
; Предварительный выбор инструмента для шпинделя, номер которого зафиксиро-
ван в переменной SPINU
3.15.5
Имя
Команды согласно DIN 66025 дополняются на высокоуровневом языке
программирования ЧПУ, среди прочего, названными объектами.
Названными объектами могут быть, например:
• системные переменные
• определяемые пользователем переменные
• оси / шпиндели
• подпрограммы
• кодовые слова
• метки перехода
• макросы
Примечание
Идентификаторы должны быть однозначными. Один и тот же идентификатор не может
использоваться для различных объектов.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
391
Основная информация
3.15 Прочая информация
Правила именования
Имя можно выбирать произвольно, соблюдая следующие правила:
• Разрешенные символы:
- Буквы: A ... Z, a ... z
- Цифры: 0 ... 9
- Знак подчеркивания: _
• Первыми двумя символами должны быть буквы или символы подчеркивания.
• Максимальная длина:
- Имя программы (Страница 46): 24 символа
- Имена осей: 8 символов
- Имена переменных: 31 символ
Примечание
Зарезервированные кодовые слова запрещено использовать в качестве
идентификаторов.
Циклы
Во избежание конфликтов именования рекомендуется учитывать следующие правила
присваивания имен циклам пользователя:
Строка
Зарезервировано для имен
• CYCLE
Циклы SIEMENS
• CUST_
• GROUP_
•
_
• S_
• E_
• F_
• CCS_
Компилируемые циклы SIEMENS
• CC_
Компилируемые циклы пользователя
Циклы пользователя
Имена циклов пользователя рекомендуется начинать с "U_".
Переменные
Информация именования переменных представлена в следующих главах:
• Системные данные (Страница 400)
• Определение переменных пользователя (DEF) (Страница 408)
Программирование ЧПУ
392
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Основная информация
3.15 Прочая информация
3.15.6
Постоянные
Постоянная (общ.)
Постоянная это элемент данных, значение которого не изменяется при выполнении
программы, к примеру, присваивание значения адресу.
Десятичная постоянная
Числовое значение десятичной постоянной отображается в десятичной систем.
Постоянная INTEGER
Постоянная INTEGER это целое значение, т. е. последовательность цифр без десятичной
точки с или без знака.
Примеры:
X10
Присваивание значения +10 адресу X
X-35
Присваивание значения -35 адресу X
X0
Присваивание значения 0 адресу X
Примечание:
(X0 нельзя заменить на X)
Постоянная REAL
Постоянная REAL это последовательность цифр с десятичной точкой с или без знака, а
также с или без экспоненты.
Примеры:
X10.25
Присваивание значения +10.25 адресу X
X-10.25
Присваивание значения -10.25 адресу X
X0.25
Присваивание значения +0.25 адресу X
X.25
Присваивание значения +0.25 адресу X, без вводного "0"
X=-.1EX-3
Присваивание значения -0,1*10-3 адресу X
Примечание
Если для адреса с допустимым вводом десятичной точки после десятичной точки
записано больше мест, чем предусмотрено для этого адреса, то он округляется до
предусмотренного числа мест.
Шестнадцатеричная постоянная
Также возможны постоянные, интерпретируемые шестнадцатерично. При этом буквы
"A" до "F" служат шестнадцатеричными цифрами с десятичными значениями 10 до 15.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
393
Основная информация
3.15 Прочая информация
Шестнадцатеричные постоянные заключаются между двумя апострофами и начинаются
с буквы "H" с последующим шестнадцатеричным значением. Разрешаются
разделительные символы между буквами и цифрами.
Пример:
Программный код
Комментарий
$MC_TOOL_MANAGEMENT_MASK='H7F'
; Через присвоение шестн. постоянной в машинных
данных устанавливается бит 0-7.
Примечание
Максимальное количество символов ограничивается диапазоном значений
целочисленного типа данных.
Двоичная постоянная
Возможны и постоянные, которые интерпретируются двоично. При этом используются
только цифры "0" и "1".
Двоичные постоянные заключаются между апострофами и начинаются с буквы "B" с
последующим двоичным значением. Разделительные символы между цифрами
разрешаются.
Пример:
Программный код
Комментарий
$MN_AUXFU_GROUP_SPEC='B10000001'
; Через присвоение двоичной постоянной в машин-
ных данных устанавливается бит 0 и бит 7.
Примечание
Максимальное количество символов ограничивается диапазоном значений
целочисленного типа данных.
3.15.7
Операторы и функции вычисления
Операторы
Операторы вычисления
Системные переменные типа REAL или INT могут быть связаны следующими
операторами:
Оператор
Объяснение
+
Сложение
-
Вычитание
*
Умножение
Программирование ЧПУ
394
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Основная информация
3.15 Прочая информация
Оператор
Объяснение
/
• Деление в синхронных действиях INT / INT ⇒ INT
• Деление в синхронных действиях с результатом REAL посредством использо-
вания функции ITOR():
ITOR( INT ) / ITOR( INT ) ⇒ REAL
• Деление в программах ЧПУ: INT / INT ⇒ REAL
DIV
Целочисленное деление: INT / INT ⇒ INT
MOD
Выделение дробной части (только для типа INT) выводит остаток деления INT
Пример: 3 MOD 4 = 3
Примечание
Можно соединять только переменные одного типа.
Операторы сравнения
Оператор
Объяснение
==
равно
>
не равно
<
меньше
>
больше
<=
меньше или равно
>=
больше или равно
Логические операторы
Оператор
Объяснение
NOT
НЕТ
AND
И
OR
ИЛИ
XOR
Исключающее ИЛИ
Побитовые логические операторы
Оператор
Объяснение
B_OR
побитовое ИЛИ
B_AND
побитовое И
B_XOR
побитовое исключающее ИЛИ
B_NOT
побитовое отрицание
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
395
Основная информация
3.15 Прочая информация
Приоритет операторов
При выполнении в синхронном действии у операторов следующий приоритет (самый
высокий приоритет: 1):
Прио.
Операторы
Объяснение
1
NOT, B_NOT
Отрицание, побитовое отрицание
2
*, /, DIV, MOD
Умножение, деление
3
+, -
Сложение, вычитание
4
B_AND
побитовое И
5
B_XOR
побитовое исключающее ИЛИ
6
B_OR
побитовое ИЛИ
7
AND
И
8
XOR
исключающее ИЛИ
9
OR
ИЛИ
10
<<
Соединение строк, тип результата STRING
11
==, <>, <, >, >=, <=
Операторы сравнения
Примечание
При использовании нескольких операторов в одном выражении настоятельно
рекомендуется устанавливать однозначный приоритет отдельных операторов
посредством расстановки скобок "( … )".
Пример условия в одном выражении с несколькими операторами:
Программный код
... WHEN ($AA_IM[X] > WERT) AND ($AA_IM[Y] > WERT1) DO ...
Функции вычисления
Оператор
Объяснение
SIN()
Синус
COS()
Косинус
TAN()
Тангенс
ASIN()
Арксинус
ACOS()
Арккосинус
ATAN2(,)
Арктангенс2
SQRT()
Квадратный корень
ABS()
Величина
POT()
2-я степень (квадрат)
TRUNC()
Целочисленная часть
Настраиваемая точность для команд сравнения с TRUNC
ROUND ()
Округление до целого числа
LN()
натуральный логарифм
EXP()
Показательная функция (экспонента)
Программирование ЧПУ
396
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Основная информация
3.15 Прочая информация
Индексирование
В свою очередь, индекс системных переменных типа "Поле …" также может быть
системной переменной. При этом индекс также обрабатывается в главном ходе в такте
интерполяции.
Пример
Программный код
... WHEN ... DO $AC_PARAM[ $AC_MARKER[1] ] = 3
Ограничения
• Вложения индексирования другими системными переменными запрещены.
• Индекс запрещено образовывать через переменные предварительной обработки.
Следовательно, следующий пример не разрешен, поскольку $P_EP - переменная
предварительной обработки:
$AC_PARAM[ 1 ] = $P_EP[ $AC_MARKER[ 0 ] ]
См. также
Функции вычисления (Страница 454)
Операции (Страница 454)
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
397
Основная информация
3.15 Прочая информация
Программирование ЧПУ
398
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4
4.1
Гибкое программирование ЧПУ
4.1.1
Переменные
Благодаря использованию переменных, относящихся к системным и пользовательским
данным, в первую очередь в комбинации с функциями вычисления и управляющими
структурами, можно гибко оформлять программы ЧПУ и циклы.
ПРЕДУПРЕЖДЕНИЕ
Опасность для персонала и оборудования из-за изменения переменных
При использовании переменных в программе ЧПУ необходимо учитывать, что
операторы станков или неуполномоченные лица могут при наличии соответствующего
права доступа изменить переменные и тем самым повлиять на выполнение
программы. Это может стать причиной травм персонала и материального ущерба.
• Во избежание негативного влияния изменения переменных на выполнение
программы необходимо предусмотреть в программе ЧПУ соответствующие
проверки данных ("Input validation").
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
399
Расширенное программирование
4.1 Гибкое программирование ЧПУ
• Системные данные
К системным данным относятся переменные, предопределенные в системе. Эти
переменные имеют определенное значение. Они используются системными
программами в первую очередь. Пользователь может считывать и записывать эти
переменные в программах ЧПУ и циклах. Пример: Характеристики машины,
настройки, системные переменные .
Хотя значение системной даты не может редактироваться, пользователь может в
известной мере изменить свойства путем переопределения.
См. "Переопределение системных данных, пользовательских данных и языковых
команд ЧПУ (REDEF) (Страница 414)"
• Данные пользователя
К пользовательским данным относятся определенные пользователем переменные,
значение которых задается исключительно пользователем. Система не анализирует
эти переменные.
Пользовательские данные делятся на:
- Предопределенные переменные пользователя
Предопределенные переменные пользователя представляют собой уже
определенные в системе переменные, количество которых параметрировано в
характеристиках машины. Свойства этих переменных могут настраиваться
пользователем.
См. "Переопределение системных данных, пользовательских данных и языковых
команд ЧПУ (REDEF) (Страница 414)".
- Определенных пользователем переменных
Определенные пользователем переменные представляют собой переменные,
определенные пользователем и создаваемые системой для рабочего цикла. Их
число, тип данных, видимость и все другие свойства устанавливаются только
пользователем.
См. "Определение переменных пользователя (DEF) (Страница 408)"
4.1.1.1
Системные данные
Системные данные содержат предопределенные в системе переменные,
обеспечивающие в программах ЦПУ и циклах доступ к текущему параметрированию
СЧПУ, а также состояниям станка, СЧПУ и процессов.
Переменные предварительной обработки
Переменные предварительной обработки представляют собой системные данные,
которые считываются и записываются в контексте предварительной обработки, т. е. на
момент интерпретации кадра, в котором запрограммирована переменная. Переменная
предварительной обработки не создает остановки предварительной обработки.
Программирование ЧПУ
400
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.1 Гибкое программирование ЧПУ
Переменные главного хода
Переменные главного хода представляют собой системные данные, которые
считываются и записываются в контексте главного хода, т. е. на момент исполнения
кадра, в котором запрограммирована переменная. Переменными главного хода
являются:
• Переменные, которые могут быть запрограммированы в синхронных действиях
(чтение/запись)
• Переменные, которые могут быть запрограммированы в программе ЧПУ и вызывают
остановку предварительной обработки (чтение/запись)
• Переменные, которые могут быть запрограммированы в программе ЧПУ и получают
значение при предварительной обработке, но записываются только на главном ходе
(синхронно с главным ходом: только запись)
Систематика префиксов
Для особого обозначения системных данных, перед именем обычно стоит префикс,
состоящий из символа $, одной или двух букв и символа подчеркивания:
$ + 1. Буква
Объяснение: Тип данных
Данные предварительной обработки (системные данные, считываемые / записываемые при
предварительной обработке)
$M
Машинные данные 1)
$S
Установочные данные, защищенные области 1)
$T
Данные управления инструментом
$P
Запрограммированные значения
$C
Переменные оболочек циклов ISO
$O
Опциональные данные
R
R-параметры (параметры для расчета) 2)
Данные главного хода (системные данные, считываемые / записываемые при главном ходе)
$$M
Машинные данные 1)
$$S
Установочные данные 1)
$A
Текущие данные главного хода
$V
Данные регулятора положения
$R
R-параметры (параметры для расчета) 2)
1) Будут ли машинные и установочные данные обрабатываться как переменные предварительной
обработки или переменные главного хода, зависит от того, записываются ли они с одним или
двумя символами $. Форма записи может выбираться свободно в зависимости от приложения.
2) При использовании R-параметра в программе обработки детали / цикле как переменной пред-
варительной обработки, префикс не записывается, например, R10. При использовании в син-
хронном действии как переменной главного хода в качестве префикса записывается символ $,
например, $R10.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
401
Расширенное программирование
4.1 Гибкое программирование ЧПУ
2-ая буква
Объяснение: Видимость
N
Глобальная переменная NC (NC)
C
Спец. для канала переменные (Channel)
A
Спец. для оси переменные (Axis)
Граничные условия
Исключение в систематике префиксов
Следующие системные переменные отличаются от в.н. систематики префиксов:
• $TC_...: 2-ая буква C ссылается не на специфические для канала, а на специфические
для зажима инструмента системные переменные (TC = Tool Carrier)
• $P_ ...: Спец. для канала системные переменные
Использование машинных и установочных данных в синхронных действиях
При использовании машинных и установочных данных в синхронных действиях через
префикс можно определить, будут ли машинные или установочные данные считываться/
записываться синхронно с предварительной обработкой или главным ходом.
Если данные при обработке не изменяются, то возможно считывание синхронно с
предварительной обработкой. Для этого префикс машинных или установочных данных
записывается с символом $:
ID=1 WHENEVER $AA_IM[z] < $SA_OSCILL_REVERSE_POS2[Z]-6 DO $AA_OVR[X]=0
Если данные при обработке изменяются, то считывание/запись должны выполняться
синхронно с главным ходом. Для этого префикс машинных или установочных данных
записывается с двумя символами $:
ID=1 WHENEVER $AA_IM[z] < $$SA_OSCILL_REVERSE_POS2[Z]-6 DO $AA_OVR[X]=0
Примечание
Запись машинных и установочных данных
При записи машинных или установочных данных следить за тем, чтобы активный
уровень доступа при выполнении программы обработки детали / цикла разрешал бы
доступ по записи и чтобы активность данных была бы "IMMEDIATE".
См. также
Переменные (Страница 399)
Программирование ЧПУ
402
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.1 Гибкое программирование ЧПУ
4.1.1.2
Предопределенные переменные пользователя: Специфические для канала R-
параметры (R)
Спец. для канала R-параметры это предопределенные переменные пользователя с
обозначением R, определенные как поле типа данных REAL. Традиционно для R-
параметров наряду с написанием с индексом поля, например, R[10], разрешено и
написание без индекса поля, например, R10.
При использовании в синхронных действиях должна быть предустановленна буква $,
например, $R10.
Синтаксис
При использовании в качестве переменной предварительной обработки:
R<n>
R[<выражение>]
При использовании в качестве переменной главного хода:
$R<n>
$R[<выражение>]
Объяснение
R:
Идентификатор при использовании в качестве переменной предваритель-
ной обработки, например, в программе обработки детали
$R:
Идентификатор при использовании в качестве переменной главного хода,
например, в синхронных действиях
Тип:
REAL
Диапазон зна-
При не экспоненциальном представлении:
чений:
± (0.000 0001 ... 9999 9999)
Примечание:
Разрешено макс. 8 десятичных разрядов
При экспоненциальном представлении:
± (1*10-300 ... 1*10+300)
Примечание:
• Форма записи: <Mantisse>EX<Exponent>, например,
8.2EX-3
• Разрешено макс. 10 символов, включая знак и десятич-
ную запятую.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
403
Расширенное программирование
4.1 Гибкое программирование ЧПУ
<n>:
Номер R-параметра
Тип:
INT
Диапазон зна-
0 - MAX_INDEX
чений:
Указание
MAX_INDEX получается из спараметрированного числа R-
параметров:
MAX_INDEX = (MD28050 $MN_MM_NUM_R_PARAM) - 1
<выражение>:
Индекс поля
В качестве индекса поля может быть выведено любое выражение, пока ре-
зультат выражения может быть преобразован в тип данных INT (INT, REAL,
BOOL, CHAR)
Пример
Присваивания R-параметрам и использование R-параметров в математических
функциях:
Программный код
Комментарий
R0=3.5678
; Присваивание при предварительной обработке
R[1]=-37.3
; Присваивание при предварительной обработке
R3=-7
; Присваивание при предварительной обработке
$R4=-0.1EX-5
; Присваивание при главном ходе: R4 = -0.1 * 10^-5
$R[6]=1.874EX8
; Присваивание при главном ходе: R6 = 1.874 * 10^8
R7=SIN(25.3)
; Присваивание при предварительной обработке
R[R2]=R10
; Косвенная адресация через R-параметры
R[(R1+R2)*R3]=5
; Косвенная адресация через матем. выражение
X=(R1+R2)
; Переместить ось X на позицию, получаемую из суммы R1 и R2
Z=SQRT(R1*R1+R2*R2)
; Переместить ось Z на позицию квадратного корня(R1^2 + R2^2)
См. также
Переменные (Страница 399)
4.1.1.3
Предопределенные переменные пользователя: Глобальные R-параметры (RG)
Функция
Наряду со специфическими для канала R-параметрами пользователю доступны и
глобальные R-параметры. Они существуют внутри СЧПУ однократно и могут считываться/
записываться из всех каналов.
Глобальные R-параметры используются, например, для получения информации из
одного канала в следующий. Другой пример - глобальные настройки, которые должны
обрабатываться для всех каналов, например вылет заготовки из шпинделя.
Программирование ЧПУ
404
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.1 Гибкое программирование ЧПУ
Считывание и запись глобальных R-параметров осуществляется через пользовательский
интерфейс или в программе ЧПУ при предварительной обработке. Использование в
синхронных действиях или технологических циклах невозможно.
Примечание
При считывании и записи глобальных R-параметров синхронизация между каналами не
осуществляется.
Поскольку считывание и запись осуществляются при предварительной обработке,
момент времени, в который записанное значение из одного канала активируется в
другом канале, не определен.
Пример:
В канале 1 цикл с одним глобальным R-параметром выполняется как счетчик циклов.
Канал 2 записывает в этот глобальный R-параметр значение, которое приводит к отмене
цикла в канале 1. Однако все циклы, интерпретированные к этому моменту в канале 1
при предварительной обработке, еще выполняются. Число таких циклов не определено
и зависит среди прочего от загрузки канала.
Синхронизацию между каналами пользователь должен реализовать самостоятельно на
прикладном уровне, например, с помощью меток WAIT!
Синтаксис
Запись в программе ЧПУ
RG[<n>]=<значение>
RG[<выражение>]=<значение>
Чтение в программе ЧПУ
R...=RG[<n>]
R...=RG[<выражение>]
Объяснение
RG:
Стандартное имя адреса ЧПУ для глобальных R-параметров
Примечание:
Имя адреса ЧПУ можно настраивать через MD15800
$MN_R_PARAM_NCK_NAME
<n>:
Номер глобального R-параметра
Тип:
INT
Диапазон значе-
0 ... MAX_INDEX
ний:
Примечание
MAX_INDEX получается из спараметрированного числа
глобальных R-параметров:
MAX_INDEX = (MD18156 $MN_MM_NUM_R_PARAM_NCK) -
1
<выражение>:
В качестве индекса поля может быть выведено любое выражение, пока
результат выражения может быть преобразован в тип данных INT (INT, REAL,
BOOL, CHAR)
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
405
Расширенное программирование
4.1 Гибкое программирование ЧПУ
<значение>:
Значение глобального R-параметра
Тип:
REAL
Диапазон значе-
При не экспоненциальном представлении:
ний:
± (0.000 0001 ... 9999 9999)
Примечание:
Разрешено макс. 8 десятичных разрядов
При экспоненциальном представлении:
± (1*10-300 ... 1*10+300)
Примечание:
• Форма записи: <мантисса>EX<показатель степени>,
например 8.2EX-3
• Разрешено макс. 10 символов, включая знак и деся-
тичную запятую.
4.1.1.4
Предопределенные переменные пользователя: Link-переменные
Через Link-переменные в рамках функции "NCU-Link" возможен обмен циклическими
данными между NCU, соединенными друг с другом в одной сети. При этом они
обеспечивают спец. для формата данных доступ к памяти Link-переменных. Как размер,
так и структура данных память Link-переменных, определяется пользователем /
изготовителем станка спец. для установки.
Link-переменные это глобальные системные переменные пользователя, которые при
сконфигурированной Link-коммуникации могут считываться и записываться всеми NCU
структуры связи в программах обработки деталей и циклах. В отличие от глобальных
переменных пользователя (GUD), Link-переменные могут использоваться и в
синхронных действиях.
На установках без активных NCU-Link, Link-переменные могут использоваться локально
для СЧПУ наряду с глобальными переменными пользователя (GUD), как дополнительные
глобальные переменные пользователя.
Синтаксис
$A_DLB[<индекс>]
$A_DLW[<индекс>]
$A_DLD[<индекс>]
$A_DLR[<индекс>]
Объяснение
$A_DLB:
Link-переменная для формата данных BYTE (1 байт)
Тип данных:
UINT
Диапазон зна-
0 ... 255
чений:
$A_DLW:
Link-переменная для формата данных WORD (2 байта)
Тип данных:
INT
Диапазон зна-
-32768 ... 32767
чений:
Программирование ЧПУ
406
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.1 Гибкое программирование ЧПУ
$A_DLD:
Link-переменная для формата данных DWORD (4 байта)
Тип данных:
INT
Диапазон зна-
-2147483648 ... 2147483647
чений:
$A_DLR:
Link-переменная для формата данных REAL (8 байт)
Тип данных:
REAL
Диапазон зна-
±(2,2*10-308 … 1,8*10+308)
чений:
<индекс>:
Индекс адреса в байтах, рассчитанный от начала памяти Link-переменных
Тип данных:
INT
Диапазон зна-
0 - MAX_INDEX
чений:
Указание
• MAX_INDEX получается из спараметрированного размера
памяти Link-переменных: MAX_INDEX = (MD18700
$MN_MM_SIZEOF_LINKVAR_DATA) - 1
• Могут программироваться только индексы, чтобы адресо-
ванные в памяти Link-переменных байты лежали бы в гра-
ницах одного формата данных ⇒
Индекс = n * байт, где n = 0, 1, 2, ...
- $A_DLB[i]: i = 0, 1, 2, ...
- $A_DLW[i]: i = 0, 2, 4, ...
- $A_DLD[i]: i = 0, 4, 8, ...
- $A_DLR[i]: i = 0, 8, 16, ...
Пример
В системе автоматики имеется 2 NCU (NCU1 и NCU2). К NCU1 подключена ось станка AX2,
которая перемещается как Link-ось NCU2.
NCU1 циклически записывает фактическое значение тока ($VA_CURR) оси AX2 в память
Link-переменных. NCU2 циклически считывает переданное через Link-коммуникацию
фактическое значение тока и при превышении предельного значения выводит ошибку
61000.
Структура данных в памяти Link-переменных представлена на следующем рисунке.
Фактическое значение тока передается через значение REAL.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
407
Расширенное программирование
4.1 Гибкое программирование ЧПУ
̶͇͓͙ͦͣ ͖͓͔͔͌͗͌͌͢͜ /LQN
0'
01B00B6,=(2)B/,1.9$5B'$7$
,QGH[
%<7(
%<7(
:25'
':25'
':25'
':25'
5(
$/
УЧПУ1
NCU1 циклически записывает в статическом синхронном действии в такте IPO
фактическое значение тока оси AX2 через Link-переменную $A_DLR[ 16 ] в память Link-
переменных.
Программный код
N111 IDS=1 WHENEVER TRUE DO $A_DLR[16]=$VA_CURR[AX2]
УЧПУ2
NCU2 циклически считывает в статическом синхронном действии в такте IPO
фактическое значение тока оси AX2 через Link-переменную $A_DLR[ 16 ] из памяти Link-
переменных. Если фактическое значение тока больше 23.0 A, то отображается ошибка
61000.
Программный код
N222 IDS=1 WHEN $A_DLR[16] > 23.0 DO SETAL(61000)
4.1.1.5
Определение переменных пользователя (DEF)
Команда DEF позволяет определять пользовательские переменные (User Data), и
присваивать им значения.
Программирование ЧПУ
408
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.1 Гибкое программирование ЧПУ
Согласно области действия, т. е. области, в которой переменная отображается,
существуют следующие категории переменных пользователя:
• Локальные переменные пользователя (LUD)
Локальные переменные пользователя (LUD) - переменные, определенные в
программе ЧПУ, которая на момент выполнения не является главной программой.
Они создаются при вызове программы ЧПУ и удаляются при сбросе (Reset) конца
программы или следующем запуске СЧПУ. Обращение к LUD возможно только внутри
программы ЧПУ, в которой они определены.
• Глобальные программные переменные пользователя (PUD)
Глобальные программные переменные пользователя (PUD) - переменные
пользователя, определенные в используемой в качестве главной программы
программе ЧПУ. Они создаются при вызове программы ЧПУ и удаляются при сбросе
(Reset) конца программы или следующем запуске СЧПУ. Обращение к PUD возможно
в главной программе и во всех подпрограммах.
Примечание
Доступность глобальных программных переменных пользователя (PUD)
Определенные в главной программе глобальные программные переменные
пользователя (PUD) доступны в подпрограммах только при следующих
установленных машинных данных:
MD11120 $MN_LUD_EXTENDED_SCOPE = 1
При MD11120 = 0 определенные в главной программе глобальные программные
переменные пользователя доступны только в главной программе.
• Глобальные переменные пользователя (GUD)
Глобальные переменные пользователя (GUD) - это спец. для ЧПУ или канала
глобальные переменные, определенные в блоке данных (SGUD, MGUD, UGUD, GUD4 ...
GUD9) и сохраняющиеся после сброса (Reset) конца программы или следующего
запуска СЧПУ. Обращение к GUD возможно во всех программах ЧПУ.
Переменные пользователя перед их использованием (чтение / запись) должны быть
определены. Соблюдать следующие правила:
• GUD должны быть определены в файле определений, например, _N_DEF_DIR/
_N_UGUD_DEF.
• PUD и LUD должны быть определены в разделе описаний программы ЧПУ.
• Определение данных должно выполняться в отдельном кадре.
• Для описания данных может использоваться только один тип данных.
• Для описания данных может быть определено несколько переменных одного типа
данных.
Синтаксис
LUD и PUD
DEF <тип> <физ_единица> <предельные значения> <имя>[<значение_1>,
<значение_2>, <значение_3>]=<иниц_значение>
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
409
Расширенное программирование
4.1 Гибкое программирование ЧПУ
GUD
DEF <область> <остановка предварительной обработки> <права доступа> <класс
данных> <тип> <физ_единица> <предельные значения> <имя>[<значение_1>,
<значение_2>, <значение_3>]=<иниц_значение>
Объяснение
DEF:
Команда определения переменных пользователя GUD, PUD, LUD
<область>:
Область действия, релевантно только для GUD:
ЧПУ:
Глобальная для ЧПУ переменная пользователя
CHAN:
Глобальная для канала переменная пользователя
<остановка
Остановка предварительной обработки, релевантно только для GUD
предварительной
(опция)
обработки>:
SYNR:
Остановка предварительной обработки при чтении
SYNW:
Остановка предварительной обработки при записи
SYNRW:
Остановка предварительной обработки при чтении/
записи
<права доступа>:
Степень защиты для чтения/записи GUD через программу ЧПУ или
BTSS (опция)
APRP <степень защи-
Чтение: Программа ЧПУ
ты>:
APWP <степень защи-
Запись: Программа ЧПУ
ты>:
APRB <степень защи-
Чтение: BTSS
ты>:
APWB <степень защи-
Запись: BTSS
ты>:
<степень защиты>:
Диапазон значений: 0 ... 7
См. "Атрибут: Права доступа (APR, APW, APRP, APWP, APRB, APWB)
(Страница 425)"
<класс данных>:
Назначение класса данных (только SINUMERIK 828D!)
DCM:
класс данных M (= Manufacturer)
DCI:
класс данных I (= Individual)
DCU:
класс данных U (= User)
<тип>:
Тип данных:
INT:
Целочисленное значение со знаком
REAL:
Действительное число (LONG REAL по
IEEE)
BOOL:
Значение истинности TRUE (1) / FALSE (0)
CHAR:
Символы ASCII
STRING[<макс.длина>]:
Строка символов определенной длины
AXIS:
Идентификатор оси/шпинделя
FRAME:
Геометрические данные для статиче-
ской трансформации координат
См. "Типы данных (Страница 437)"
Программирование ЧПУ
410
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.1 Гибкое программирование ЧПУ
<физическая единица>:
Физическая единица (опция)
PHU <едини-
физическая единица
ца>:
См. "Атрибут: Физическая единица (PHU) (Страница 422)"
<предельные значения>:
нижнее / верхнее предельное значение (опция)
LLI <предель-
Нижнее предельное значение (lower limit)
ное значение>:
ULI <предель-
Верхнее предельное значение (upper limit)
ное значение>:
См. "Атрибут: предельные значения (LLI, ULI) (Страница 421)"
<имя>:
Имя переменной
Указание
• Макс. 31 символ
• Первыми двумя символами должны быть буква и/или символ
подчеркивания.
• Символ "$" зарезервирован для системных переменных и не мо-
жет использоваться.
[<значение_1>,
Указание размеров поля для 1- до макс. 3-мерных переменных поля
<значение_2>,
(опция)
<значение_3>]:
По инициализации переменных поля см. "Определение и инициали-
зация переменных поля (DEF, SET, REP) (Страница 431)"
<иниц_значение>:
Инициализирующее значение (опция)
См. "Атрибут: Инициализирующее значение (Страница 418)"
По инициализации переменных поля см. "Определение и инициали-
зация переменных поля (DEF, SET, REP) (Страница 431)"
Примеры
Пример 1: Определения переменных пользователя в блоке данных для
изготовителя станка
Программный код
Комментарий
%_N_MGUD_DEF
; GUD-блок: Изготовитель станка
$PATH=/_N_DEF_DIR
DEF CHAN REAL PHU 24 LLI 0 ULI 10 STROM_1, STROM_2
; Описание
; Определение двух GUD: STROM_1, STROM_2
; Область действия: в канале
; Тип данных: REAL
; Остановка предварительной обработки: не запрограммировано => значение по умолчанию = нет остановки предварительной
обработки
; Физ. Единица: 24 = [A]
; Предельные значения: Low = 0.0, High = 10.0
; Права доступа: не запрограммировано => значение по умолчанию = 7 = положение кодового переключателя 0
; Значение инициализации: не запрограммировано => значение по умолчанию = 0.0
DEF NCK REAL PHU 13 LLI 10 APWP 3 APRP 3 APWB 0 APRB 2 ZEIT_1=12, ZEIT_2=45
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
411
Расширенное программирование
4.1 Гибкое программирование ЧПУ
Программный код
Комментарий
; Описание
; Определение двух GUD: ZEIT_1, ZEIT_2
; Область действия: по ЧПУ
; Тип данных: REAL
; Остановка предварительной обработки: не запрограммировано => значение по умолчанию = нет остановки предварительной
обработки
; Физ. Единица: 13 = [сек]
; Предельные значения: Low = 10.0, High = не запрограммировано => верхняя граница области определения
; Права доступа:
; программа ЧПУ: Запись/чтение = 3 = пользователь
; BTSS: Запись = 0 = Siemens, чтение = 3 = пользователь
; Значение инициализации: ZEIT_1 = 12.0, ZEIT_2 = 45.0
DEF NCK APWP 3 APRP 3 APWB 0 APRB 3 STRING[5] GUD5_NAME = "COUNTER"
; Описание
; Определение одной GUD: GUD5_NAME
; Область действия: по ЧПУ
; Тип данных: STRING, макс. 5 символов
; Остановка предварительной обработки: не запрограммировано => значение по умолчанию = нет остановки предварительной
обработки
; Физ. Единица: не запрограммировано => значение по умолчанию = 0 = нет физической единицы
; Предельные значения: не запрограммировано => границы области определения: Low = 0, High = 255
; Права доступа:
; программа ЧПУ: Запись/чтение = 3 = пользователь
; BTSS: Запись = 0 = Siemens, чтение = 3 = пользователь
; Значение инициализации: "COUNTER"
M30
Пример 2: Глобальные и локальные программные переменные пользователя (PUD /
LUD)
Программный код
Комментарий
PROC MAIN
; Главная программа
DEF INT VAR1
; PUD-определение
SUB2
; Вызов подпрограммы
M30
Программный код
Комментарий
PROC SUB2
; Подпрограмма SUB2
DEF INT VAR2
; LUD-ОПРЕДЕЛЕНИЕ
IF (VAR1==1)
; Чтение PUD
VAR1=VAR1+1
; Чтение и запись PUD
Программирование ЧПУ
412
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.1 Гибкое программирование ЧПУ
Программный код
Комментарий
VAR2=1
; Запись LUD
ENDIF
SUB3
; Вызов подпрограммы
M17
Программный код
Комментарий
PROC SUB3
; Подпрограмма SUB3
IF (VAR1==1)
; Чтение PUD
VAR1=VAR1+1
; Чтение и запись PUD
VAR2=1
; Ошибка: LUD из SUB2 не известна
ENDIF
M17
Пример 3: Определение и использование переменных пользователя типа данных
AXIS
Программный код
Комментарий
DEF AXIS ABSZISSE
; 1-я Гео-ось
DEF AXIS SPINDLE
; Шпиндель
IF ISAXIS(1) == FALSE GOTOF WEITER
ABSZISSE = $P_AXN1
WEITER:
SPINDLE=(S1)
; 1-я Шпиндель
OVRA[SPINDLE]=80
; Процентовка шпинделя = 80 %
SPINDLE=(S3)
; 3-й шпиндель
Граничные условия
Глобальные переменные пользователя (GUD)
В рамках определения глобальных переменных пользователя (GUD) должны быть
учтены следующие машинные данные:
№
Идентификатор: $MN_
Объяснение
11140
GUD_AREA_ SAVE_TAB
Дополнительная резервная копия для блоков
GUD
18118 1)
MM_NUM_GUD_MODULES
Число файлов GUD в активной файловой си-
стеме
18120 1)
MM_NUM_GUD_NAMES_NCK
Число глобальных имен GUD
18130 1)
MM_NUM_GUD_NAMES_CHAN
Число спец. для канала имен GUD
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
413
Расширенное программирование
4.1 Гибкое программирование ЧПУ
№
Идентификатор: $MN_
Объяснение
18150 1)
MM_GUD_VALUES_MEM
Место в памяти для глобальных значений
GUD
18660 1)
MM_NUM_SYNACT_GUD_REAL
Число конфигурируемых GUD тип данных
REAL
18661 1)
MM_NUM_SYNACT_GUD_INT
Число конфигурируемых GUD тип данных INT
18662 1)
MM_NUM_SYNACT_GUD_BOOL
Число конфигурируемых GUD тип данных
BOOL
18663 1)
MM_NUM_SYNACT_GUD_AXIS
Число конфигурируемых GUD тип данных
AXIS
18664 1)
MM_NUM_SYNACT_GUD_CHAR
Число конфигурируемых GUD тип данных
CHAR
18665 1)
MM_NUM_SYNACT_GUD_STRING
Число конфигурируемых GUD тип данных
STRING
1)
MD у SINUMERIK 828D только для чтения!
Выходящее за рамки канала использование глобальной переменной пользователя
ЧПУ типа данных AXIS
Глобальная переменная пользователя ЧПУ типа данных AXIS, инициализированная при
определении в блоке данных с идентификатором оси, может использоваться в
различных каналах ЧПУ, только если ось в этих каналах имеет тот же номер оси канала.
Если это не так, то необходимо загрузить переменную в начале программы ЧПУ или, как
в примере ниже, использовать функцию AXNAME(...) (см. "Осевые функции (AXNAME,
AX, SPI, AXTOSPI, ISAXIS, AXSTRING, MODAXVAL) (Страница 914)").
Программный код
Комментарий
DEF NCK STRING[5] ACHSE="X"
; Определение в блоке данных
N100 AX[AXNAME(ACHSE)]=111 G00
; использование в программе ЧПУ
4.1.1.6
Переопределение системных данных, пользовательских данных и языковых
команд ЧПУ (REDEF)
С помощью команды REDEF можно изменять атрибуты системных данных,
пользовательских данных и языковых команд ЧПУ. Базовым условием для
переопределения является выполнение по времени после соответствующего
определения.
Одновременное изменение нескольких атрибутов при переопределении невозможно.
Для каждого изменяемого атрибута должен быть запрограммирован отдельный
оператор REDEF.
Если программируется несколько конкурирующих изменений атрибутов, то всегда
активируется последнее изменение.
Программирование ЧПУ
414
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.1 Гибкое программирование ЧПУ
Сброс величин атрибутов
Измененные с REDEF атрибуты для прав доступа и момент инициализации через
повторное программирование REDEF с последующим именем переменной или
языковой команды ЧПУ могут быть сброшены на свое значение по умолчанию:
• Права доступа: Степень защиты 7
• Момент инициализации: нет инициализации или сохранение текущего значения
Переопределяемые атрибуты
См. "Обзор определяемых и переопределяемых атрибутов (Страница 429)".
Локальные переменные пользователя (PUD / LUD)
Переопределения для локальных переменных пользователя (PUD / LUD) невозможны.
Синтаксис
REDEF <имя> <остановка предварительной обработки>
REDEF <имя> <физическая единица>
REDEF <имя> <предельные значения>
REDEF <имя> <права доступа>
REDEF <имя> <момент инициализации>
REDEF <имя> <момент инициализации> <иниц_значение>
REDEF <имя> <класс данных>
REDEF <имя>
Объяснение
REDEF:
Команда для переопределения определенного атрибута
или сброса атрибута "Права доступа" и/или "Момент ини-
циализации" системных переменных, переменных пользо-
вателя и языковых команд ЧПУ
<имя>:
Имя уже определенной переменной или языковой коман-
ды ЧПУ
<VL-Stop>:
Остановка предварительной обработки
SYNR:
Остановка предварительной обработки
при чтении
SYNW:
Остановка предварительной обработки
при записи
SYNRW:
Остановка предварительной обработки
при чтении/записи
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
415
Расширенное программирование
4.1 Гибкое программирование ЧПУ
<физическая единица>:
Физическая единица
PHU <единица>:
физическая единица
См. "Атрибут: Физическая единица (PHU) (Страница 422)".
Указание
Переопределение невозможно для:
• Системные переменные
• Глобальные данные пользователя (GUD) типов дан-
ных: BOOL, AXIS, STRING, FRAME
<предельные значения>:
нижнее /верхнее предельное значение
LLI <предельное значение>:
Нижнее предельное значе-
ние (lower limit)
ULI <предельное значение>:
Верхнее предельное значе-
ние (upper limit)
См. "Атрибут: предельные значения (LLI, ULI) (Страни-
ца 421)".
Указание
Переопределение невозможно для:
• Системные переменные
• Глобальные данные пользователя (GUD) типов дан-
ных: BOOL, AXIS, STRING, FRAME
<права доступа>:
Права доступа для чтения / записи через программу обра-
ботки детали или BTSS
APX <степень защиты>:
Выполнение: Языковой
элемент ЧПУ
APRP <степень защиты>:
Чтение: Программа обра-
ботки детали
APWP <степень защиты>:
Запись: Программа обра-
ботки детали
APRB <степень защиты>:
Чтение: OPI
APWB <степень защиты>:
Запись: OPI
<степень защиты>:
Диапазон значений: 0 ... 7
См. "Атрибут: Права доступа (APR, APW, APRP, APWP, APRB,
APWB) (Страница 425)".
<момент инициализации>:
Момент времени повторной инициализации переменной
INIPO:
Power On
INIRE:
Конец главной программы, NC-Reset или
Power On
INICF:
NEWCONF или конец главной програм-
мы, сброс ЧПУ или Power On
PRLOC:
Конец главной программы, NC-Reset по-
сле локального изменения или Power On
См. "Атрибут: Инициализирующее значение (Страни-
ца 418)".
Программирование ЧПУ
416
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.1 Гибкое программирование ЧПУ
<иниц_значение>:
Инициализирующее значение
При переопределении инициализирующего значения все-
гда должен быть указан и момент инициализации (см. <мо-
мент инициализации>).
См. "Атрибут: Инициализирующее значение (Страни-
ца 418)".
По инициализации переменных поля см. "Определение и
инициализация переменных поля (DEF, SET, REP) (Страни-
ца 431)".
Указание
Переопределение невозможно для системных перемен-
ных, кроме установочных данных.
<класс данных>:
Назначение класса данных (только SINUMERIK 828D!)
DCM:
класс данных M (= Manufacturer)
DCI:
класс данных I (= Individual)
DCU:
класс данных U (= User)
Пример
Переопределение системной переменной $TC_DPCx в блоке данных для
изготовителя станка
Программный код
%_N_MGUD_DEF
; GUD-блок: Изготовитель станка
N100 REDEF $TC_DPC1 APWB 2 APWP 3
N200 REDEF $TC_DPC2 PHU 21
N300 REDEF $TC_DPC3 LLI 0 ULI 200
N400 REDEF $TC_DPC4 INIPO (100, 101, 102, 103)
N800 REDEF $TC_DPC1
N900 REDEF $TC_DPC4
M30
к N100: Право доступа по записи: BTSS = степень защиты 2, программа обработки де-
тали = степень защиты 3
к N200: Физическая единица [ % ]
к N300: нижнее предельное значение = 0, верхнее предельное значение = 200
к N400: Переменная поля инициализируется при PowerOn с четырьмя значениями.
к N800 / Сброс величин атрибута "Права доступа" и/или "Момент инициализации"
N900
Примечание
Использование файлов ACCESS
При использовании файлов ACCESS переопределение прав доступа должно быть
передано из _N_MGUD_DEF в _N_MACCESS_DEF.
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
417
Расширенное программирование
4.1 Гибкое программирование ЧПУ
Граничные условия
Гранулярность
Переопределение всегда относится к целой, однозначно обозначенной своим именем
переменной. Невозможно, например, присваивать отдельным элементам поля
переменных поля различные значения атрибутов.
4.1.1.7
Атрибут: Инициализирующее значение
Определение (DEF) переменных пользователя
При определении для следующих переменных пользователя может быть задано
инициализирующее значение:
• Глобальные переменные пользователя (GUD)
• Глобальные программные переменные пользователя (PUD)
• Локальные переменные пользователя (LUD)
Переопределение (REDEF) системных переменных и переменных пользователя
При переопределении для следующих переменных может быть задано
инициализирующее значение:
• Системные данные
- Установочные данные
• Данные пользователя
- R-параметры
- Переменные синхронных действий ($AC_MARKER, $AC_PARAM, $AC_TIMER)
- GUD синхронных действий (SYG_xy[ ], где x=R, I, B, A, C, S и y=S, M, U, 4, ..., 9)
- Параметры EPS
- Данные инструмента OEM
- Данные магазина OEM
- Глобальные переменные пользователя (GUD)
Момент реинициализации
При переопределении можно задать момент времени, когда переменная должна быть
реинициализирована, т. е. снова установлена на инициализирующее значение:
• INIPO (Power On)
Реинициализация переменной при PowerOn.
• INIRE (Reset)
Реинициализация переменной при NC-Reset, ГРР-Reset, завершении программы
обработки детали (M02 / M30) или Power On.
Программирование ЧПУ
418
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
Расширенное программирование
4.1 Гибкое программирование ЧПУ
• INICF (NEWCONF)
Реинициализация переменной выполняется при функции "Активация машинных
данных" через HMI, команду программы обработки детали NEWCONF или сброс ЧПУ,
сброс ГРР, завершении программы обработки детали (M02 / M30) или Power On.
• PRLOC (локальное программное изменение)
Реинициализация переменной при NC-Reset, ГРР-Reset или завершении программы
обработки детали (M02 / M30) только в том случае, если она изменена в рамках
текущей программы обработки детали.
Атрибут PRLOC может использоваться только в комбинации с программируемыми
установочными данными (см. таблицу ниже).
Таблица 4-1 Программируемые установочные данные
Номер
Идентификатор
G-команда 1)
42000
$SC_THREAD_START_ANGLE
SF
42010
$SC_THREAD_RAMP_DISP
DITS / DITE
42400
$SA_PUNCH_DWELLTIME
PDELAYON
42800
$SA_SPIND_ASSIGN_TAB
SETMS
43210
$SA_SPIND_MIN_VELO_G25
G25
43220
$SA_SPIND_MAX_VELO_G26
G26
43230
$SA_SPIND_MAX_VELO_LIMS
LIMS
43300
$SA_ASSIGN_FEED_PER_REV_SOURCE
FPRAON
43420
$SA_WORKAREA_LIMIT_PLUS
G26
43430
$SA_WORKAREA_LIMIT_MINUS
G25
43510
$SA_FIXED_STOP_TORQUE
FXST
43520
$SA_FIXED_STOP_WINDOW
FXSW
43700
$SA_OSCILL_REVERSE_POS1
OSP1
43710
$SA_OSCILL_REVERSE_POS2
OSP2
43720
$SA_OSCILL_DWELL_TIME1
OST1
43730
$SA_OSCILL_DWELL_TIME2
OST2
43740
$SA_OSCILL_VELO
FA
43750
$SA_OSCILL_NUM_SPARK_CYCLES
OSNSC
43760
$SA_OSCILL_END_POS
OSE
43770
$SA_OSCILL_CTRL_MASK
OSCTRL
43780
$SA_OSCILL_IS_ACTIVE
OS
43790
$SA_OSCILL_START_POS
OSB
1) С этой G-командой происходит обращение к установочным данным
Программирование ЧПУ
Руководство по программированию, 07/2021, 6FC5398-2EP40-0PA2
419

 

 

 

 

 

 

 

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