Коротко
Когда повторяющуюся последовательность лучше вынести в подпрограмму и какие риски создаёт вложенность.
Назначение
Подпрограмма уменьшает дублирование кода для повторяющихся отверстий, контуров или технологических действий.
Вызов и возврат
Конкретные M/G-коды вызова и возврата зависят от контроллера. Также различаются способы передачи числа повторов и локальных параметров.
Риски
Глубокая вложенность усложняет отладку. Перед запуском проверяют точки входа/выхода, модальные состояния и систему координат.
Ключевые параметры
| Параметр | Назначение |
|---|---|
| Вызов | переход в подпрограмму |
| Повтор | циклическое выполнение |
| Возврат | продолжение основной программы |
Таблицу можно прокручивать по горизонтали →
Проверка перед использованием
- Определить контроллер и конфигурацию станка.
- Проверить активную систему координат, единицы и модальные состояния.
- Сверить синтаксис команды с официальным руководством.
- Проверить траекторию в симуляции и затем в безопасном режиме на станке.
- Только после этого разрешать рабочие подачи и обороты.
Первичная техническая база
Повторение элементов подпрограммой
Устройство и инженерный смысл
Подпрограммы позволяют повторно использовать фрагмент траектории, но формат вызова, повторов и возврата зависит от стойки. Состояние модальных команд может сохраняться после возврата.
Расчётный пример
Если один повторяемый фрагмент занимает 18 с и вызывается 6 раз, чистое время движения составит 108 с без холостых переходов.
Контроль режима и безопасность
Перед запуском проверяют глубину вложенности, координатную систему и отсутствие неограниченной рекурсии.
Контракт повторяемого фрагмента
Подпрограмму можно рассматривать как операцию с входными условиями и выходным состоянием. Входные условия задают инструмент, рабочую систему, начальную точку и режим координат. Выходные описывают конечное положение и модальные изменения. Если фрагмент оставляет включённую компенсацию или меняет режим подачи, следующий вызов может перестать быть геометрически эквивалентным предыдущему.
Полезный расчёт учитывает не только время внутри фрагмента, но и переход между его копиями. Для повторяемого отверстия переход зависит от порядка обхода точек, высоты отвода и ускорения осей. Поэтому сокращение длины переходов иногда даёт большую экономию, чем сокращение самого рабочего движения, особенно при небольшом объёме снимаемого материала.
Рассмотрим восемь одинаковых операций с рабочим временем 11 секунд. В первом варианте каждый переход занимает 4 секунды, во втором — 2 секунды. Для сравнения считаем семь переходов между восемью позициями; начальный подход и заключительный отвод вынесены за пределы модели.
| Вариант | Рабочее время | Переходы | Сумма |
|---|---|---|---|
| Исходный | 88 с | 28 с | 116 с |
| Короткий обход | 88 с | 14 с | 102 с |
Таблицу можно прокручивать по горизонтали →
Модель пригодна для оценки повторения отверстий, карманов и одинаковых участков профиля. Она предполагает одинаковые условия резания во всех позициях. Если меняются припуск, зажим или доступность инструмента, время каждого вызова оценивают отдельно. Проверку начинают с одного вызова, затем проверяют границы всего массива и только после этого рассматривают вложенное повторение.
