Cómo utilizar programas macro para procesar elipses en tornos CNCProgramación de macros y variables de mecanizado ordinarias especifican directamente códigos G y distancias de movimiento con valores numéricos, como GO1 y X100.0. Cuando utiliza un programa de macro de usuario, puede especificar un valor directamente o utilizar una variable para especificar un valor. Cuando se trabaja con variables, el valor de la variable se puede cambiar a través del programa u operaciones en el panel MDI. #1 = #2 + 100G01 Las variables están representadas por el símbolo de variable (#) seguido del número de variable. Por ejemplo, puede utilizar la expresión #1 para especificar un número de variable. En este caso, la expresión debe estar entre paréntesis. Por ejemplo #Tipo de variable Según el número de variable, las variables se pueden dividir en cuatro tipos: Número de variable Tipo de variable Función #0 Variable vacía Las variables siempre están vacías y no se les puede asignar un valor. #Variables locales Las variables locales solo se pueden utilizar en programas macro para almacenar datos, como resultados de operaciones. Cuando se apaga la energía, las variables locales se inicializan para vaciarlas. Al llamar a un programa macro, la variable independiente asignará un valor a la variable local #100-#199 #500-#999 VARIABLE PRIVADA VARIABLE PRIVADA La VARIABLE PRIVADA tiene el mismo significado en diferentes programas de macro. Cuando se apaga la alimentación, las variables #100-#199 se inicializan para vaciarlas. Las variables #500-#999 se almacenan y no se perderán incluso si se apaga la alimentación. #Las variables del sistema se utilizan para leer y escribir varios cambios de datos durante la operación del CNC, como la posición actual y el valor de compensación de la herramienta. Rango de valores de variable Local y público**** El valor de una variable puede ser 0 o un valor dentro del siguiente rango: - Si el resultado del cálculo está fuera del rango válido, se emitirá la alarma P/S NO.111. punto decimal al definir el valor de la variable en el programa, se puede omitir el punto decimal. Por ejemplo, cuando se define #1 = 123, el valor real de la variable #1 es 123.000. Se utiliza una referencia de variable para utilizar un valor de variable en un programa especificando la dirección después del número de variable. Al especificar una variable con una expresión, la expresión debe estar entre paréntesis. Por ejemplo: G01X[#1+#2]F#3; el valor de la variable de referencia se redondeará automáticamente según la unidad mínima de configuración de la dirección. Por ejemplo, al ejecutar G00X#/; en unidades de 1/1000 mm, el CNC asigna 123456 a la variable #1 y el valor de comando real es G00X12346. Para cambiar el signo de un valor de variable referenciado, preceda # con un signo menos (-). Por ejemplo, cuando G00X-#1 hace referencia a una variable no definida, se ignorarán tanto la variable como la dirección. Por ejemplo, cuando el valor de la variable #1 es 0 y el valor de la variable #2 está vacío, el resultado de ejecutar G00X#1 Y#2 es G00X0. Variables comunes para vías duales (control de vía dual) Para el control de vía dual, el sistema proporciona variables macro separadas para cada vía; sin embargo, dependiendo de la configuración de los parámetros N0.6036 y 6037, algunas variables comunes * Las variables se pueden usar para ambas trayectorias; al mismo tiempo. Variable indefinida Cuando el valor de una variable no está definido, la variable se convierte en una variable vacía. La variable número 0 es siempre una variable vacía. No se puede escribir en él, sólo leerlo. Referencias Cuando se hace referencia a una variable indefinida, se ignora la dirección misma. Cuando #1= #1 = 0G90 X100 Y#1G90 X100G90 X100 Y#1G90 X100 Y0 (b) Operación Igual que 0 excepto por la asignación. Cuando #1= Cuando #1 = 0 #2 = #1 #2 = #1 #2 = 0 #2 = #*5 #2 = 0 #2 = #*5 #2 = 0 #2 = #1 + # 1 #2 = 0 #2 = #1 + #1 #2 = 0 (c) La expresión condicional es diferente de 0 en EQ y NE. #1 = 0 cuando #1= #1EQ #0 Crear #1EQ#0 No reservado #1 NE #0 Crear #1 NE #0 No reservado #1 GE #0 Reservado #1 GE #0 No reservado #1 GT # 0 No reservado #1 GT #0 No reservado El número de programa, el número de secuencia y el número de salto de sección opcional no pueden utilizar variables.
Por ejemplo, las variables no se pueden utilizar en los siguientes casos: 0#1; /#2G00X100.0;N#3Y200.0; II Operaciones aritméticas y lógicas Las operaciones enumeradas en la siguiente tabla se pueden realizar en variables. La expresión del lado derecho del operador puede contener constantes y variables que constan de funciones u operadores. Las variables #j y #k en expresiones se pueden asignar a constantes. A la variable en el lado izquierdo de la expresión también se le puede asignar un valor usando una expresión. Descripción Las funciones de unidades angulares SIN, COS, ASIN, ACOS, TAN y ATAN tienen unidades angulares en grados. Por ejemplo, 90°30' significa 90,5 grados. ARCSIN # i= ASIN[#j] (1) El rango de valores es el siguiente: cuando el parámetro (NO.6004#0) el bit NAT se establece en 0, 270° a 90° Cuando el parámetro (NO.6004#0 ) El bit NAT se establece en Cuando 1, -90° a 90° (2) Cuando #j excede el rango de -1 a 1, el valor es -90° a 90° (2) Cuando #j excede el rango de - 1 a 1, el valor es - 90° a 90°. Cuando #j excede el rango de -1 a 1, se emite la alarma P/S NO.111. (3) Variable reemplazable constante #jARCCOS #i = ACOS[#j] El rango de valores es de 180° a 0° Cuando #j excede el rango de -1 a 1, se emite la alarma P/S NO.111. La constante puede reemplazar a la variable #j III Ejemplo de programa Elipse de fresado: Trayectoria: El código del programa de elipse es el siguiente: N10 G54 G90 G0 S1500 M03N12 X0 Y0 Z20.N14 G0 Z1N16 G1 Z-5.F150.N18 G41 D1N20 #1=0N22 # 2=34N24 #3=24N26 #4=#2*cos[#1]N28 #5=#3*sen[#1] N30 #10=#4*cos[45]-#5*SEN[45]N32 #11= #4*SIN[45]+#5*COS[45]N34 G1 X#10 Y#11 N36 #1=#1+1N38 IF [#1 LT 370] GOTO26N40 G40 G1 B programa macro. Debido a limitaciones de software, como el sistema GNU 980, las macros tipo B no se pueden utilizar, por lo que se deben cambiar a macros tipo A. Tenga en cuenta que está bien si no hay errores en el formato.