Macros
B
Estructuras IF/THEN/GOTO
Control de flujo y decisiones en Macros B
IF/THEN Básico
Sintaxis
IF[condición] THEN acción
; Ejemplos:
IF[#1 GT 0] THEN G01 X#1 F500
IF[#2 EQ #0] THEN #2 = 100
IF[#1 LT 0] THEN #3000 = 1 (VALOR NEGATIVO)
GOTO: Salto Incondicional
GOTO n ; Salta a línea N
; Ejemplo combinado:
IF[#24 EQ #0] THEN GOTO 900
; ... código normal ...
GOTO 999
N900 #3000 = 1 (ERROR - FALTA X)
N999 M99
Patrones Comunes
Validación de Parámetros
IF[#24 EQ #0] THEN GOTO 901
IF[#25 EQ #0] THEN GOTO 902
IF[#26 GE 0] THEN GOTO 903
; ... código principal ...
GOTO 999
N901 #3000 = 1 (FALTA X)
N902 #3000 = 2 (FALTA Y)
N903 #3000 = 3 (Z DEBE SER NEGATIVO)
N999 M99
Múltiples Casos (SWITCH)
IF[#1 EQ 1] THEN GOTO 100
IF[#1 EQ 2] THEN GOTO 200
IF[#1 EQ 3] THEN GOTO 300
GOTO 900 ; Default
N100 ; Caso 1
GOTO 999
N200 ; Caso 2
GOTO 999
N300 ; Caso 3
GOTO 999
N900 #3000 = 1 (OPCION NO VALIDA)
N999 M99
Importante: Siempre usar corchetes: IF[condición] no
IF condición