Показване на всички статии

Използване на макропрограмиране за създаване на управляващи програми за повтарящи се цикли на пробиване

TRASA3 Blog

G-code Публикувано: 2026-09-22 Автор: trasa3 4 прегледа
Използване на макропрограмиране за създаване на управляващи програми за повтарящи се цикли на пробиване

Повтарящите се отвори рядко изискват дълга управляваща програма. Ако координатите образуват прост ред, задачата често се решава с помощта на стандартен цикъл G81, инкрементно позициониране G91 и брой повторения L. Но при работа с правоъгълна мрежа от отвори, няколко размера на детайла или често променящо се разстояние между отворите, ръчното редактиране на всеки код става бавно и податливо на грешки. Тук макропрограмирането е полезно: постоянната последователност от действия се запазва в подпрограма, а размерите и броят отвори се подават като параметри.

По-долу е разгледан пример за фрезова машина с управление Haas с опция за макроси. Синтаксисът на променливите, цикли и извикване на подпрограми зависи от системата за управление с ЦПУ и активираните опции. Преди стартиране е важно да се провери ръководството за конкретната система, да се направи графична проверка и първо изпълнение над заготовката.

Кога стандартният цикъл е достатъчен

G81 премахва голяма част от повтарящия се код при пробиване. След активиране на цикъла, системата пробива на всяка нова позиция по X и Y, докато не се анулира с команда G80. В документацията на Haas е показан пример, при който инкрементното движение по X и параметърът L създават ред равномерно разположени отвори:

G90 G54 X10. Y20.
G43 H01 Z50.
G99 G81 Z-12. R2. F120.
G91 X25. L4
G80
G90

Това е удобен вариант за един прав ред. Важно е да се има предвид, че първият отвор се пробива в точката, където е активиран G81, а редът с G91 X25. L4 добавя още четири позиции. Грешка в броенето лесно води до излишен отвор или изместване на целия модел.

Стандартните цикли предлагат и други възможности. G82 добавя пауза на дъното, G83 се използва за пробиване с периодично изваждане на свредлото, а G98 и G99 определят нивото на връщане. Изборът на цикъл трябва да съответства на инструмента, дълбочината, материала и условията за отвеждане на стружките. Макросът управлява геометрията и повторението; той не замества правилно избраната технология на пробиване.

Какво добавя параметричният макрос

За правоъгълна мрежа са достатъчни девет стойности: координати на първия отвор, стъпка по двете оси, брой колони и редове, дълбочина, равнина R и подаване. Операторът променя само един ред с извикване, а вложените цикли изчисляват координатите на всяка точка.

В следващото извикване X и Y задават началото на мрежата, I и J — стъпката, A и B — броя колони и редове:

G65 P9010 X10. Y20. I25. J20. A4. B3. Z-12. R2. F120.

При Haas аргументите на G65 се записват в локални променливи на макропрограмата. В този пример X съответства на #24, Y — на #25, I — на #4, J — на #5, A — на #1, B — на #2, Z — на #26, R — на #18, F — на #9. При всяко извикване на G65 системата предоставя нов набор локални променливи, затова един и същ код може да се използва с различни параметри.

Макропрограма за правоъгълна мрежа

O09010 (DRILL RECTANGULAR PATTERN)

#30 = 0 (ROW INDEX)

WHILE [#30 LT #2] DO1
  #31 = 0 (COLUMN INDEX)

  WHILE [#31 LT #1] DO2
    #32 = [#24 + #31 * #4] (CURRENT X)
    #33 = [#25 + #30 * #5] (CURRENT Y)

    G90 G00 X#32 Y#33
    G81 Z#26 R#18 F#9
    G80

    #31 = #31 + 1
  END2

  #30 = #30 + 1
END1

M99

Външният цикъл брои редовете, а вътрешният — колоните. Текущата координата се изчислява чрез добавяне към началната точка на произведението от индекса на позицията и стъпката. При A4 и B3 програмата пробива дванадесет отвора: четири в три реда.

В този учебен пример G81 се активира и анулира за всяка точка. Това добавя малко време за изпълнение, но състоянието на цикъла е ясно ограничено до една операция. В производствен вариант цикълът може да се поддържа активен между позициите, като се контролира внимателно първото изпълнение, модалното състояние и анулирането с G80.

Главна програма и безопасни състояния

Макросът не трябва сам да определя номера на инструмента, коректора на дължина, оборотите или работното смещение. Тези данни е по-добре да се зададат в главната програма, за да е по-лесно проверяването на подготовката на операцията.

O01000
G90 G17 G40 G49 G80 G94
G54
T1 M06
S1800 M03
G00 X10. Y20.
G43 H01 Z50.
M08

G65 P9010 X10. Y20. I25. J20. A4. B3. Z-12. R2. F120.

G80
G00 Z50.
M09
M05
G53 G00 Z0.
M30

Тук преди извикването са зададени равнината G17, абсолютното програмиране G90, работната координатна система G54 и компенсацията на дължината на инструмента G43 H01. Конкретните безопасни височини, връщането в машинния нулев пункт и последователността на включване на оборудването трябва да съответстват на машината и одобрения на предприятието шаблон.

Проверки, които са задължителни в производствен макрос

Параметричният код намалява ръчното редактиране, но една грешна променлива може да промени целия модел на отворите. Производственият макрос трябва да проверява входните данни. Броят редове и колони трябва да са положителни цели числа, равнината R да е от безопасната страна на повърхността, а изчислените X и Y да остават в границите на заготовката и обхвата на машината.

  • Проверете съответствието на буквите на аргументите с локалните променливи за конкретната система за управление.
  • Уверете се, че номерата на DO и END образуват правилни двойки във вложените цикли.
  • Предварително изчислете крайната точка: X + (A − 1) × I и Y + (B − 1) × J.
  • Проверете знака на Z, положението на равнината R и режима на връщане G98 или G99.
  • Пуснете първо графична симулация, след това изпълнение на един блок с намалена скорост на бързите придвижвания.
  • При наличие на менгемета или прижимни устройства проверете не само точките за пробиване, но и траекториите на преместване.

Полезна е и защита срещу пропуснати аргументи. При системи, където незададена локална променлива има празна стойност, макросът може да изведе аварийно съобщение преди да започне движение. Конкретният синтаксис за проверка на празна променлива и генериране на авария трябва да се вземе от ръководството на системата за управление.

Кога макросът наистина улеснява работата

За единична детайл с пет известни отвора обикновено е по-лесно да се използва прост цикъл G81 и списък с координати. Макросът е оправдан, когато моделът се променя по ясни правила: правоъгълни и кръгови масиви, няколко размера на една и съща детайл, повтарящи се отвори при различни работни смещения или семейство изделия с обща технология на пробиване.

Добре поддържан макрос има ясна задача и интерфейс. Назначението на всеки аргумент се фиксира в коментари към програмата или в отделна карта за настройка, а пример за правилно извикване се съхранява заедно с програмата. Така настройващият може да променя размерите на мрежата и режимите на обработка, без да редактира формули и броячи.

Официалната документация на Haas описва отделно подаването на аргументи чрез G65 и локалните променливи, както и работата на стандартните цикли за пробиване. Тези раздели трябва да се използват като отправна точка и да се сверяват с версията на софтуера на конкретната машина.

Използване на макропрограмиране за създаване на управляващи програми за повтарящи се цикли на пробиване

Тази статия е достъпна на следните езици: