Operación lógica del programa macro del programa CNC
Macro G65 puede realizar funciones macro ricas, incluidas operaciones aritméticas, operaciones lógicas y otras funciones de procesamiento.
Forma general: G65 Hm P#i Q#j R#k
En la fórmula:
m--Función de programa macro, rango de valores 01~ 99 ;
#i--El nombre de la variable donde se almacena el resultado de la operación;
#j--La primera variable a operar, que también puede ser una constante;
#k--La segunda variable que se opera también puede ser una constante.
Por ejemplo, cuando la función del programa es suma:
Programa P#100 Q#101 R#102... El significado es #100=#101+#102
Programa P#100 Q-#101 R#102... El significado es #100=-#101+#102
Programa P#100 Q#101 R15.. .... El significado es #100=#101+15
1. Instrucciones de función macro
(1) Instrucciones de operación aritmética (Tabla 4.4)
Tabla 4.4 Operación aritmética instrucciones
Definición de función de código G código H
Definición de G65 H01, reemplazar # i=# j
G65 H02 agregar # i=# j+# k < / p>
G65 H03 Restar # i=# j-# k
G65 H04 Multiplicar # i=# j × # k
G65 H05 Dividir # i=# j / # k
G65 H21 Raíz cuadrada# i=√# j
G65 H22 Valor absoluto# i=|# j|p>
G65 H23 Encontrar el resto# i =# j-trunc﹙# j/# k﹚· # k
Trunc; descartar la fracción menor que 1
G65 H24 Código BCD→Código binario# i=BIN﹙# j﹚
G65 H25 código binario→código BCD# i=BCD﹙# j﹚
G65 H26 multiplicación/división compuesta# i=﹙# i × # j﹚÷# k
G65 H27 raíz cuadrada compuesta 1 # i=√# j2+# k2
G65 H28 raíz cuadrada compuesta 2 # i=√# j2-# k2
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) p>
G65 H01 P#101 Q-#112; (#101=-#112)
2) Suma #i=#j+#k
Programación formato 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= ) p>
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(#101=
(2) Instrucciones de operación lógica (Tabla 4.5)
Tabla 4.5 Instrucciones de operación lógica
Definición de función de código G código H
G65 H11 lógico "OR " # i=# j · OR · # k
G65 H12 Lógico "AND" # i=# j · AND · # k
G65 H13 Exclusivo OR # i=# j · XOR · # k
1) OR lógico #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 Y #103)
( 3) Instrucciones de funciones trigonométricas (Tabla 4.6)
Tabla 4.6 Instrucciones de funciones trigonométricas
Definición de función de código G código H
G65 H31 Seno # i=# j · SIN ﹙# k﹚
G65 H32 Coseno# i=# j · COS ﹙# k﹚
G65 H33 Tangente# i=# j · TAN﹙# k﹚ p >
G65 H34 arco tangente #i=ATAN﹙# j/# k﹚
1) Función seno #i=#j×SIN(#k)
Programación formato 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) Función tangente #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 (Tabla 4.7)
Tabla 4.7 Instrucciones de control
Definición de función de código G código H
G65 H80 transferencia incondicional IR A n
G65 H81 transferencia condicional 1 IF # j=# k, GOTOn
G65 H82 transferencia condicional 2 IF # j≠# k, GOTOn
G65 H83 transferencia condicional 3 SI#j>#k, GOTOn
G6
5 H84 transferencia condicional 4 IF # j<# k, GOTOn
G65 H85 transferencia condicional 5 IF # j≥# k, GOTOn
G65 H86 transferencia condicional 6 IF # j≤# k, GOTOn
G65 H99 genera alarma PS y aparece el número de alarma PS 50n
1) Transferencia incondicional
Formato de programación G65 H80 Pn (n es el número de segmento de programa)
Ejemplo G65 H80 P120; (Transferencia 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 bloque)
Ejemplo G65 H81 P1000 Q#101 R#102
Cuando #101=#102, transfiera a N1000 bloquear; si #101≠ #102, ejecute el siguiente segmento del programa.
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 (> )
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 > #102, transfiera al bloque N1000; si #101 ≤ #102, ejecute el siguiente bloque.
5) Transferencia condicional 4 #j LT #k (<)
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 < #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 #101<#102, ejecute el siguiente bloque.
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 #101>#102, ejecute el siguiente bloque.
2. Notas sobre el uso
Para garantizar el funcionamiento normal de los programas de macros, debe prestar atención a los siguientes puntos cuando utilice programas de macros de usuario;
>(1 ) El código H especificado por G65 no afecta ninguna selección de compensación;
(2) Si no se especifica Q o R utilizado para cada operación aritmética, se trata como 0;
(3) En la dirección de destino de la transferencia de rama, si el número de secuencia es un valor positivo, el proceso de recuperación es buscar primero el número de programa grande; si el número de secuencia es un valor negativo, el proceso de recuperación es buscar; primero el número de programa pequeño.
(4) El número de secuencia del objetivo de transferencia puede ser una variable. [em24][em27][em24] Tengo miedo de dañar a Banxiang