Cómo utilizar programas de macros CNC
Programa macro clase A
1) Definición y sustitución de variables #i=#j
Formato de programación G65 H01 P#i Q#j
Ejemplo G65 H01 P#101 Q1005; (#101=1005)
G65 H01 P#101 Q-#112; 2) Suma #i=#j #k
Formato de programación G65 H02 P#i Q#j R#k
Ejemplo G65 H02 P#101 Q#102 R#103; (#101=#102 #103)
3) Resta #i=#j-#k
Formato de programación G65 H03 P#i Q#j R#k
Ejemplo G65 H03 P#101 Q#102 R#103; (#101=#102-#103)
4) Multiplicación #i=#j×#k
Formato de programación G65 H04 P#i Q#j R#k
Ejemplo G65 H04 P#101 Q#102 R#103 (#101=#102×#103)
5) División #i=#j / #k
Formato de programación G65 H05 P#i Q#j R#k
Ejemplo G65 H05 P#101 Q#102 R #103; (#101=#102/#103)
6) Raíz cuadrada #i=
Formato de programación G65 H21 P#i Q#j
Ejemplo G65 H21 P#101 Q#102; (#101= )
7) Valor absoluto #i=│#j│
Formato de programación G65 H22 P#i Q# j
Ejemplo G65 H22 P#101 Q#102; (#101=│#102│)
8) Raíz cuadrada compuesta 1 #i=
Formato de programación G65 H27 P#i Q#j R#k
Ejemplo G65 H27 P#101 Q#102 R#103; (#101=
9) Raíz cuadrada compuesta 2 #i=
Formato de programación G65 H28 P#i Q#j R#k
Ejemplo G65 H28 P#101 Q#102 R#103
1 ) Lógico OR #i=#j OR #k
Formato de programación G65 H11 P#i Q#j R#k
Ejemplo G65 H11 P#101 Q#102 R#103 ; (# 101=#102 OR #103)
2) AND Lógico #i=#j AND #k
Formato de programación G65 H12 P#i Q#j R#k
Ejemplo G65 H12 P#101 Q#102 R#103; #101=#102 AND #103
(3) Instrucciones de función trigonométrica
1) Función seno# i=#j×SIN(#k)
Formato de programación G65 H31 P#i Q#j R#k (unidad: grado).
Ejemplo G65 H31 P #101 Q #102 R#103;(#101=#102×SIN(#103))
2) Función coseno #i=#j×COS(#k)
Formato de programación G65 H32 P#i Q#j R#k (unidad: grado)
Ejemplo G65 H32 P#101 Q#102 R#103 (#101=#102×COS(#103; ))
3) Positivo
Función tangencial #i=#j×TAN#k
Formato de programación G65 H33 P#i Q#j R#k (unidad: grado)
Ejemplo G65 H33 P#101 Q #102 R#103;(#101=#102×TAN(#103))
4) Arco tangente #i=ATAN(#j/#k)
Formato de programación G65 H34 P#i Q#j R#k (unidad: grado, 0o≤ #j ≤360o)
Ejemplo G65 H34 P#101 Q#102 R#103 (#101=ATAN(#; 102/#103)
(4) Instrucciones de control
Formato de programación G65 H80 Pn (n es el número de segmento del programa)
Ejemplo G65 H80 P120; Transferir a N120)
2) Transferencia condicional 1 #j EQ #k(=)
Formato de programación G65 H81 Pn Q#j R#k (n es el número de segmento del programa)
Ejemplo G65 H81 P1000 Q#101 R#102
Cuando #101=#102, transfiera al bloque N1000; si #101≠ #102, ejecute el siguiente bloque.
3) Transferencia condicional 2 #j NE #k (≠)
Formato de programación G65 H82 Pn Q#j R#k (n es el número de segmento del programa)
Ejemplo G65 H82 P1000 Q#101 R#102
Cuando #101≠ #102, transfiera al bloque N1000; si #101=#102, ejecute el siguiente bloque.
4) Transferencia condicional 3 #j GT #k (gt; )
Formato de programación G65 H83 Pn Q#j R#k (n es el número de segmento del programa)
Ejemplo G65 H83 P1000 Q#101 R#102
Cuando #101 gt; #102, transfiera al bloque N1000; si #101 ≤ #102, ejecute el siguiente bloque.
5) Transferencia condicional 4 #j LT #k (lt;)
Formato de programación G65 H84 Pn Q#j R#k (n es el número de segmento del programa)
Ejemplo G65 H84 P1000 Q#101 R#102
Cuando #101 lt; #102, transfiera a N1000; si #101 ≥ #102, ejecute el siguiente bloque.
6) Transferencia condicional 5 #j GE #k(≥)
Formato de programación G65 H85 Pn Q#j R#k (n es el número de segmento del programa)
Ejemplo G65 H85 P1000 Q#101 R#102
Cuando #101 ≥ #102, transfiera a N1000; si #101lt;
7) Transferencia condicional 6 #j LE #k (≤)
Formato de programación G65 H86 Pn Q#j Q#k (n es el número de segmento del programa)
Ejemplo G65 H86 P1000 Q#101 R#102
Cuando #101≤#102, transfiera a N1000; si #101gt;#102, ejecute el siguiente segmento del programa.
Programa macro clase B
1. Definición
#I=#j
2. Operaciones aritméticas
#I=#j #k (suma)
#I=#j-#k (resta)
#I=#j× #k (multiplicación)
#I=#j/#k (división)
3.1 Función booleana de función lógica
=EQ equal
≠ NE No igual a
gt; GT Mayor que
lt Menor que
≥ GE Mayor o igual a
≤LE Menor o igual
Ejemplo: #I = #j Es decir, #I EQ #J
3.2 Función binaria de función lógica
#I=#J AND # k (AND, multiplicación lógica)
#I=#J OR #k (OR, suma lógica)
#I=#J XOR # k (NO, resta lógica)
4. Funciones trigonométricas
#I=SIN[#j] seno
#I=COS[#j] coseno
#I=TAN[#j] tangente
#I=ASIN[#j]Arcseno
#I=ACOS[#j]Arccoseno#I=ATAN[#j] Arctangente
5. Función de redondeo
#I=ROUND[#j] Redondeo a entero
#I=FIX[#j] Redondeo hacia arriba
#I =FUP[# j] Redondear hacia abajo
6. Funciones auxiliares
#I=SQRT[#j] Raíz cuadrada
#I=ABS[#j ] Valor absoluto
#I= LN [#j] Logaritmo natural
#I= EXP [#j] Función exponencial
7. j] BCD→BIN (decimal a binario)
#I=BCD[#j] BIN→BCD (de binario a decimal)
8. p>1〉. Formato de transferencia incondicional: IR A 1; IR A #10;
2〉. Formato de transferencia condicional 1: IF [lt; expresión condicional gt;] GOTO n
Expresión condicional: Ejemplo: #j=#k está representado por #j EQ #k, es decir, IF[#j EQ #k] GOTO n
3〉.Transferencia condicional 2 Formato: IF[lt; expresión condicional gt;] THEN #I
Ejemplo: IF[#j EQ #k] THEN #a= #b
4〉 Formato de bucle: WHILE [lt; expresión condicional gt;] DOm, (m=1, 2, 3)
N10~~~~. ~~~ ~~
N20~~~~~~~~~~~
ENDm (los ms superior e inferior solo pueden ser 1, 2 y 3 y deben ser en fase entre sí
Igual, para que pueda formar un bucle de programa)
1. Nota 1) La unidad del ángulo es grado. Ejemplo: 90 grados y 30 minutos se dividen en 90,5 grados.
2) Las longitudes de los dos lados después de la función ATAN deben estar separadas por "1". #1=ATAN[1 ]/[-1], #1 es 35.0
3) ROUND se utiliza para la dirección en la declaración y se redondea de acuerdo con la unidad de configuración mínima de cada dirección p>
Ejemplo: Supongamos #1=1.2345, #2=2.3456, la unidad de configuración es 1μm
G91 X-#1;X-1.235X-#2 F300;X-2.346X[ #1 #2]; X3.580 no ha regresado a su posición original y debe cambiarse a Redondo
, de lo contrario es el siguiente ejemplo: suponiendo #1=1.2, #2=-1.2 si #3=FUP[#1], entonces #3=2.0 si #3=FIX[#1], entonces #3=1.0 Si #3=FUP[#2], entonces #3=-2.0 Si #3=FIX[#2], entonces #3=-1.0 p>
5) Al abreviar una función, solo puedes escribir el primeras dos letras Por ejemplo: ROUND→ROFIX→FIGOTO→GO
6) Función de prioridad→multiplicación y división (*, 1, AND)→sumar Resta ( , -, OR, : #1=SIN. [[[#2 #3]*#4 #5]*#6] (3 niveles)
Instrucciones de transferencia y bucle