Working with subroutines in PUMOTIX

Last modified by writer on 2023/09/08 11:45

Information

This page didn't translate yet. You can see the original page.

Error
Внимание!

G-коды, использующие параметрические команды, не поддерживают такие опции как "Быстрый запуск УП с произвольной строки" и "Продолжение выполнения УП с середины траектории (кадра)". Будьте внимательны!

В PUMOTIX есть возможность вызова подпрограмм для огранизации циклов или любых других множественных вызовов определенных алгоритмов G-кода.

Общий вид подпрограммы выглядит следующим образом:

onnn sub
   G-code
onnn endsub

где:

  • nnn - трехзначное число, означающее номер подпрограммы (необходим для дальнейшего вызова подпрограммы из G-кода, поэтому должен быть уникальным);
  • G-code - часть управляющей программы, которая будет выполняться при вызове подпрограммы.

Для правильного вызова подпрограмма должна идти перед основной управляющей программы, перед G-кодом.

Вызов подпрограммы в макросе выглядит следующим образом:

onnn call

где:

  • nnn - трехзначное число, означающее номер подпрограммы.

Функция call может принимать в себя до 30-ти аргументов (параметров), если это необходимо. Передача параметров выглядит следующим образом:

onnn call [#1] [#2] .. [#30]

где:

  • nnn - трехзначное число, означающее номер подпрограммы;
  • #1, #2, #30 - передаваемые параметры.

Пример реализации подпрограммы приведен ниже.

o100 sub
    G1 X0 Y0
    X50
    Y50
    X0
    Y0
o100 endsub

(main code)
#1 = 10
#2 = 0
G0 X0 Y0 Z0
F1000
o101 repeat [#1]
    G1 Z#2
    o100 call
   #2 = [#2 - 1]
o101 endrepeat
m30

Читайте также: Организация цикла в G-коде