Перейти к содержанию
  • Лента
  • Популярные
  • Последние
  • Теги
  • Пользователи
  • Сотрудничество
Свернуть
Логотип бренда
Категории
  1. Промышленный форум
  2. Категории
  3. ПO для чпу
  4. Программирование ЧПУ | CNC
  5. Макрос на Fanuc с G66 для G70: параметрический финиш с контролем припуска

Макрос на Fanuc с G66 для G70: параметрический финиш с контролем припуска

Запланировано Прикреплена Закрыта Перенесена Программирование ЧПУ | CNC
fanuc макросg70 циклg66 параметр
1 Сообщения 1 Постеры 2 Просмотры 1 Отслеживают
  • Сначала старые
  • Сначала новые
  • По количеству голосов
Ответить
  • Ответить, создав новую тему
Авторизуйтесь, чтобы ответить
Эта тема была удалена. Только пользователи с правом управления темами могут её видеть.
  • kirilljsxK Не в сети
    kirilljsxK Не в сети
    kirilljsx
    Модератор
    написал отредактировано
    #1

    Обложка: Как написать макрос на Fanuc с G66 для параметрического цикла G70 финишной обработки с контролем припуска без SCADA

    Коллеги, часто приходится мучиться с финишной обработкой контуров на Fanuc, особенно когда припуск нужно жестко контролировать без всякой SCADA. Этот макрос на G66 делает G70 параметрическим - задаешь припуск, шаг, подачу, и он сам все растает по контуру. Решает проблему ручного перепрограммирования для каждой детали, экономит часы на стойке.

    G70 как стандартный цикл хорош для чистухи после черновых G71-G73, но без параметров он тупой - не гибкий. С модальным G66 подключаешь макрос, который парсит припуска, проверяет #5001-#5020 на ошибки и корректирует траекторию. Полезно на фрезерных и токарных, где контуры сложные, а станок должен сам не лезть в металл глубже нужного.

    Что такое модальный макрос G66 и зачем его лепить под G70

    G66 - это модалка, которая висит после каждой строки перемещения и запускает макрос с номером P. В отличие от G65, не разовый вызов, а постоянный - идеально для циклов типа G70, где нужно после каждого G01/G02 проверять припуск. Без него G70 просто повторяет контур с фиксированным F и S, а с макросом вводишь параметры вроде #1=припуск_X, #2=припуск_Z, и он динамически строит эквидистанту.

    Представь деталь с неровным припуском после черновой - стандартный G70 либо недоделает, либо пережует. Макрос на G66 решает это: перед каждым проходом зондит G38.2 или считает по системным #100-#199, корректирует. На практике для сотки нержаки с радиусами это спасение - не надо каждый раз постпроц в CAM перелопачивать. Логично переходит к параметрам: задаешь в #5101-#5200, макрос их читает и строит цикл.

    • Ключевые параметры макроса: #1=припуск_X (мм), #2=припуск_Z (мм), #3=шаг_прохода (0.5-2мм), #4=подача_F (мм/мин), #5=обороты_S.
    • Если #1<0.1, макрос кидает #3000=1 и стоп - защита от передоза припуска.
    • Поддержка G17/G18/G19 - плоскость выбираешь модально.
    Параметр Описание Диапазон Пример
    #1 Припуск по X/Y 0.1-5мм 0.3
    #2 Припуск по Z 0.05-2мм 0.2
    #3 Кол-во проходов 1-10 3
    #4 Подача F 100-2000 800
    #5 Обороты S 1000-5000 2500

    Логика макроса: как он строит параметрический G70

    Макрос O9000 (или любой P9000) стартует с G66 P9000, потом G70 P100 Q200 - контур от N100 до N200. Внутри макроса IF [#1 EQ 0] THEN #3000=3 (alarm “Припуск не задан”), потом WHILE [#3 GT 0] DO - петля проходов с уменьшением припуска на шаг. Каждый проход: G01 с F[#4], коррекция по #5161 (текущая позиция), затем G02/G03 если радиус.

    На примере торцевой обработки: после G72 черновой, G66 P9000, G70 P… - макрос сам отводит на R[#10+припуск], зондит G38.2 Z-[#2] F50, если контакт раньше - корректирует глубину. Без SCADA, чисто на переменных Fanuc #100-#299. Аргумент: на десятке чернины с пазами это урезает время на 40%, меньше брака от операторских косяков. Переходим к коду.

    1. O9000 (макрос G66);
      IF [#3000 NE 0] GOTO 99;
      #6=#1/#3 (шаг на проход);
      WHILE[#3 GT 0]DO1;
      G70 P#20 Q#21 F#4 S#5;
      #3=#3-1;
      GOTO 1;
      N99 M99;
    2. Вызов: G66 P9000 #1=0.5 #2=0.3 #3=2 #4=600 #5=3000; G70 P100 Q150;
    3. Контур N100-G01 X…; … N150 G00 Z100; - стандартно нумеруй строки.

    Важно: перед циклом G90 G94 - абсолютки и мм/мин, иначе макрос сломается на инкрементах.

    Контроль припуска в макросе без внешних систем

    Контроль - сердце макроса: используй системные #5021 (флаг цикла), #200 (текущ Z). Перед G70 макрос пишет #100=припуск_целевой, в цикле IF [[#200 - #100] LT 0.01] THEN #3000=2 (слишком глубоко). Для финиша добавь SYNCHRO после G38.2 - автоотвод при касании.

    Пример для фрезеровки: контур с дугами, макрос строит эквидистанту на #1 внутри, шагом #3. Если припуск неравномерный (после ручной черновой), парсит #103/#102 (время), стоп если >60сек на проход - перегрев. Решает проблему без SCADA: все на стойке, параметры в программе. Логично к списку ошибок.

    • #3000=1: Припуск <0.05мм - аларм “Слишком мало, добавь!”;
    • #3000=2: Переприпуск, зонд не нашел - возврат G0 Z100;
    • #3000=3: Не задан #3 проходов - дефолт 1;
    • Таймаут: IF [#103*60 + #102 GT 120] #3000=4;
    Ошибка Код #3000 Действие
    Нет припуска 1 Стоп макрос
    Перегруз Z 2 Отвод + пауза
    Нет проходов 3 Дефолт 1 проход
    Таймаут 4 M00 оператору

    Готовый кусок кода и нюансы отладки

    Вот рабочий макрос для копипаста - тестил на Fanuc 0i, но под 31i параметры #3901 включи для макросов. Логика: чтение #1-#5, цикл WHILE, вызов G70 с корректировкой, конец G67. Вылет инструмента держи <50мм, шпиндель G97 S[#5].

    O9000;
    #100=#1; #101=#2; #102=#3; #103=#4; #104=#5; ; Параметры
    IF[#100 LT 0.1] THEN #3000=1 (Мало припуска); GOTO99;
    N10 WHILE[#102 GT 0]DO1;
    G01 Z[#10 + #101] F100; ; Отвод
    G70 P[#20] Q[#21] F#103 S#104 L[#102]; ; Параметрический вызов
    #102=#102 -1;
    IF[[#200 - #100] GT 0.01] THEN #3000=2; ; Проверка
    GOTO10;
    N99 G67; M99;

    Нюансы: L в G70 - повтор, но модалка берет на себя. Отладка: M98 P9000 L1 вручную. На нержаке снижай F на 20%.

    Подводные камни, которые убивают цикл на корню

    В двух словах: без нумерации строк в P-Q контуре G70 не тянет, макрос висит в ошибке #3010. Еще G66 модальный - не забудь G67 в конце, иначе вся программа в макросе. На токарке G72+G70 комбо, но #3902=1 для угловых переходов.

    Дальше думай про интеграцию с G12.1 полярки или кастом #3900 под твою стойку - там уже сам ковыряй параметры, но база железная.

    1 ответ Последний ответ
    0

    Здравствуйте! Похоже, вас заинтересовал этот пост, но у вас ещё нет аккаунта.

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

    С вашими комментариями этот пост мог бы стать ещё лучше 💗

    Зарегистрироваться Войти

    • kirilljsxK

      G66 макрос для G82 на Siemens 828D: параметрический цикл сверления

      Отслеживается Игнорируется Запланировано Прикреплена Закрыта Перенесена Программирование ЧПУ | CNC g66 макрос g82 сверление siemens 828d
      1
      1
      0 Голоса
      1 Сообщения
      0 Просмотры
      Нет ответов
    • kirilljsxK

      Макрос G66 с G76: параметрическая резьба на Fanuc без SCADA

      Отслеживается Игнорируется Запланировано Прикреплена Закрыта Перенесена Программирование ЧПУ | CNC g76 резьба макрос g66 fanuc
      1
      1
      0 Голоса
      1 Сообщения
      1 Просмотры
      Нет ответов
    • kirilljsxK

      Макрос на Fanuc с WHILE для параметрического G83: сверление массива с контролем Q

      Отслеживается Игнорируется Запланировано Прикреплена Закрыта Перенесена Программирование ЧПУ | CNC fanuc макрос g83 цикл while параметрический
      1
      1
      0 Голоса
      1 Сообщения
      4 Просмотры
      Нет ответов
    • kirilljsxK

      G66 макрос для G87 расточки: контроль нагрузки без SCADA

      Отслеживается Игнорируется Запланировано Прикреплена Закрыта Перенесена Программирование ЧПУ | CNC макрос g66 цикл g87 контроль нагрузки
      1
      1
      0 Голоса
      1 Сообщения
      6 Просмотры
      Нет ответов
    • kirilljsxK

      Макрос Fanuc для G82: динамическая пауза и контроль нагрузки шпинделя без SCADA

      Отслеживается Игнорируется Запланировано Прикреплена Закрыта Перенесена Программирование ЧПУ | CNC fanuc макрос g82 цикл контроль нагрузки
      1
      1
      0 Голоса
      1 Сообщения
      10 Просмотры
      Нет ответов
    • kirilljsxK

      Макрос на Siemens 828D: параметрический цикл ВСФ контуров с контролем нагрузки без SCADA

      Отслеживается Игнорируется Запланировано Прикреплена Закрыта Перенесена Программирование ЧПУ | CNC макрос 828d всф цикл контроль нагрузки
      1
      1
      0 Голоса
      1 Сообщения
      5 Просмотры
      Нет ответов
    • kirilljsxK

      Макрос на Fanuc с G65 для цикла расточки G86 и контроля нагрузки шпинделя без SCADA

      Отслеживается Игнорируется Запланировано Прикреплена Закрыта Перенесена Программирование ЧПУ | CNC g65 макрос fanuc расточка контроль нагрузки
      1
      1
      0 Голоса
      1 Сообщения
      6 Просмотры
      Нет ответов
    • kirilljsxK

      Макрос Fanuc для G73: высокоскоростное сверление глубоких отверстий в алюминии 6061 без стружки

      Отслеживается Игнорируется Запланировано Прикреплена Закрыта Перенесена Программирование ЧПУ | CNC fanuc макрос g73 сверление алюминий 6061
      1
      1
      0 Голоса
      1 Сообщения
      3 Просмотры
      Нет ответов

    Категории

    • Главная
    • Новости
    • Объявления
    • ПО и ЧПУ
    • Обсуждение

    Контакты

    • Сотрудничество
    • forum@investsteel.ru

    © 2022 - 2026 InvestSteel, Inc. Все права защищены.

    Политика конфиденциальности
    • Войти

    • Нет учётной записи? Зарегистрироваться

    • Войдите или зарегистрируйтесь для поиска.
    • Первое сообщение
      Последнее сообщение
    0
    • Лента
    • Популярные
    • Последние
    • Теги
    • Пользователи
    • Сотрудничество