CHAMADA DE MACROS – MODAL

A chamada modal de uma macro, com o código G66, é utilizada para chamar a macro especificada, depois da execução de um bloco (seguido eventualmente de vários outros) em que são programados deslocamentos segundo os eixos coordenados.
Por outras palavras, a macro é chamada depois de cada bloco de posicionamento, e até ser programado o código G67, de anulação da chamada modal.Formato

G66 Pp Ll<especificação de=”” argumentos=””>
p
Número do programa a chamar
l
Número de repetições (1 por defeito)
Argumento
Valores (dados) transferidos à macro

Exemplo

O0001 O9100
: :
G66 P9100 L2 A1.0 B2.0 G00 Z-#1
G00 G90 X100. G01 Z-#2 F300
Y200. :
X150. Y300. M99
G67
:
M30

Observações

  Chamada:
  Depois do código G66, especifica-se no endereço P o número do programa de macro que se pretende chamar.
  Quando for necessário chamar repetidamente a macro, especificar no endereço L o número de repetições, no intervalo 1 a 9999. Em caso de omissão de L, é assumido o valor 1.
  Tal como na chamada simples (G65), os dados que se transferem às variáveis locais da macro, especificam-se em argumentos. A chamada modal em nada difere, neste htmecto, da chamada simples.
  Uma vez executado o código G67, a chamada modal à macro já não se faz nos blocos de posicionamento programados posteriormente.
Podem programar-se encadeamentos de chamadas até 4 níveis de “profundidade”, incluídas chamadas simples (G65) e chamadas modais (G66). Não se incluem aqui as chamadas a sub programas com o código M98.
  Pode programar-se uma chamada modal dentro de outra, utilizando outro código G66.
  Limitações:
  Num bloco com G66 não se faz a chamada da macro.
  Como foi referido, a chamada apenas se faz, após ser lido e executado um bloco de posicionamento, programado depois do bloco com G66.
  G66 tem que ser especificado antes de qualquer argumento.
  A macro não será chamada num bloco que contenha uma função auxiliar, e que não inclua um deslocamento, pelo menos num eixo.
  As variáveis locais (argumentos), apenas podem ser definidas no bloco com G66.
  Notar que as variáveis apenas se definem nesse bloco, e não em cada nova chamada, durante o período de activação de G66.