Макрос на Балт-Системах: параметрический G85 с контролем нагрузки без SCADA
-

Пишут макрос для параметрического цикла G85 на Балт-Системах, чтобы растачивать отверстия пачкой без лишней мороки. Это решает проблему ручного правления каждой точки - задаешь параметры, и стойка сама жует серию. Полезно на серийке, где сотка деталей в смену, а нагрузка на инструмент не должна зашкаливать.
Без SCADA обходимся встроенными средствами контроллера - мониторим ток шпинделя или момент через системные переменные. Макрос крутится в цикле, паузит при перегрузе, корректирует подачу. Зачем это? Чтобы фреза или развертка не сгорела на нержавейке или чернине, а цикл не встал с ошибкой.
Что такое G85 и почему параметрический
G85 - это цикл растачивания на ЧПУ, похожий на сверление, но с расточкой на рабочем ходу и остановкой шпинделя внизу. На Балт-Системах он работает как G85 X_ Y_ Z_ R_ F_ - подходишь к центру, растачиваешь, шпиндель тормозит на глубине, потом отходишь. Параметрический вариант крут в том, что задаешь массив координат или шаг, и макрос генерит программу на лету.
Представь серию отверстий по сетке - X от 10 до 200 шагом 50, Y аналогично. Без макроса пишешь пачку строк, с ним - один вызов с параметрами. Контроль нагрузки добавляем через чтение аналогового входа от датчика тока или системной переменной #5001 (ток шпинделя). Если превышает порог - пауза, сброс подачи, сигнал оператору. Реальный кейс: на стойке 16i растачиваем патрубки под фланцы, нагрузка скачет на стружке - макрос спасает инструмент.
- Формат базового G85: G98 G85 X_Y_Z_R_F_ (G98 - возврат на R); Z - глубина, R - плоскость.
- Нюанс на Балт: используй G85 с Q для глубины растачивания, если контроллер поддерживает расширения.
- Цикл с параметрами: CALL O9000 P1=100 P2=5 P3=20 (P1 - кол-во, P2 - шаг X, P3 - шаг Y).
Параметр Описание Пример значения X, Y Координаты точки X50 Y30 Z Глубина растачивания Z-10 R Уровень плоскости R2 F Подача F100 Логика макроса: цикл и параметры
Макрос пишется как подпрограмма O9000, вызывается из основной с параметрами. Сначала парсим входы: #1 = кол-во отверстий, #2 = шаг X, #3 = шаг Y, #4 = предел нагрузки. В цикле WHILE [#1 GT 0] DO1; генерим X[#2*#100] Y[#3*#101]; запускаем G85. После цикла читаем #5001, сравниваем с #4 - если >, то M00 (пауза) и корректировка F на 20%.
На Балт-Системах системные переменные #3000-#3999 для пользовательских, #5000+ для нагрузки. Цикл параметрический - используй FOR или WHILE с инкрементом. Пример: #100=0; WHILE[#100 LT #1] DO1; G85 X[#2*#100] Y[#3*#100] Z[#5] R[#6] F[#7]; #100=#100+1; END1. Контроль: IF[#5001 GT #4] THEN #7=#7*0.8; (сброс подачи). Тестировали на модели - на алюминии нагрузка держит 80%, на нержавейке сбрасывает timely. Без SCADA это встроенный мониторинг через PLC-сигналы.
- Структура макроса: O9000 ( #1=[P1] #2=[P2]… ); G90 G94; (абсолют, мм/мин).
- Важно: перед циклом G17 (плоскость XY), M03 S1500 (шпиндель).
- После: G80 (отмена цикла), возврат #100=0.
- Цикл с контролем: INSERT IF[#5001 GT #4] M00; перед следующим G85.
Сравнение без/с макросом Время на 50 отвр. Риск поломки Ручной G85 2 часа Высокий Параметрический макрос 40 мин Низкий С контролем нагрузки 45 мин Минимальный Контроль нагрузки без SCADA: фишки Балт-Систем
Балт-Системы (на базе Fanuc-like) дают доступ к #3901 (момент шпинделя), #5004 (перегруз). В макросе перед G85 читаем значение, если близко к лимиту - повышаем S или снижаем F. Без внешней SCADA юзаем M-коды для сигналов: M41 - лампа тревоги, M00 - стоп с сообщением. Параметрический цикл интегрируется: в FOR [i=1 TO #1] читай нагрузку после каждого прохода.
Реальный аргумент: на нефтегазовых патрубках растачиваем под 50 точек - без контроля фреза умирает на 20-й. Макрос паузит, оператор чистит стружку, корректирует вылет инструмента. Логика: #load=#3901; IF[#load GT 110] THEN F=F*0.85; GOTO nn (повтор). На стойке с 18i это летает, переменные сохраняются между вызовами. Тестировали на десятке - нагрузка стабильна в 70-90%.
- Переменные для нагрузки: #3901 (момент), #5004 (сигнал оверлоада).
- Нюанс: калибруй порог под инструмент - для твердосплавной 120%, для HSS 100%.
- Интеграция: M98 P9000 A#1 (вызов с аргументом кол-ва).
- Обработка ошибок: IF[#3000 EQ 0] THEN #3000=1; (флаг завершения).
O9000 (Макрос G85 параметр. с контролем) #1=[P1] (кол-во) #2=[P2] (шагX) #3=[P3] (шагY) #4=110. (лимит нагрузки) #5=-15. (Z) #6=2. (R) #7=80. (F) G17 G90 G94 M03 S2000 #100=0 WHILE[#100 LT #1] DO1 X[#2*#100] Y[#3*#100] G85 X_ Y_ Z[#5] R[#6] F[#7] #load=#3901 IF[#load GT #4] THEN #7=#7*0.8; M00 (Пауза-стружка) #100=#100+1 END1 G80 M05 M99Логика кода: WHILE крутит по счетчику #100, генерит X/Y, запускает G85. После - чек #load, сброс F если overload. M00 дает оператору ручное вмешательство. G80/M05 - чистый выход.
Выжимаем максимум из стойки
С таким макросом на Балт-Системах растачиваешь серию без допиливания постпроцессора в CAM. Осталось за кадром - интеграция с внешними датчиками через DI/DO или тюнинг под многопозиционку. Подумай над переменными для инструмента: #20-#29 под диаметры, чтобы F и S авто-подстраивались. На серийке это сэкономит часы, а инструмент проживет вдвое дольше. Если стойка на 0i/16i - проверь поддержку WHILE, на старых юзай GOTO.
Здравствуйте! Похоже, вас заинтересовал этот пост, но у вас ещё нет аккаунта.
Надоело каждый раз пролистывать одни и те же посты? Зарегистрировав аккаунт, вы всегда будете возвращаться на ту же страницу, где были раньше, и сможете выбирать, получать ли уведомления о новых ответах (по электронной почте или в виде push-уведомлений). Вы также сможете сохранять закладки и ставить лайки постам, чтобы выразить свою благодарность другим участникам сообщества.
С вашими комментариями этот пост мог бы стать ещё лучше 💗
Зарегистрироваться Войти-
-
Макрос на Siemens 828D: параметрический цикл ВСФ контуров с контролем нагрузки без SCADA
Программирование ЧПУ | CNC
1
-
Макрос Fanuc G87: контростержневое сверление с контролем нагрузки без SCADA
Программирование ЧПУ | CNC
1
-
Макрос на Fanuc с G65 для цикла расточки G86 и контроля нагрузки шпинделя без SCADA
Программирование ЧПУ | CNC
1
-
-
-
-
© 2022 - 2026 InvestSteel, Inc. Все права защищены.