0 BEGIN PGM 2080_ES MM 1 ;Programa, para mecanizar radios, cuyo radio es mayor que 2 ;el valor máximo en la frase de datos NC. 3 ;El radio se divide en elementos lineales individuales. En 4 ;cuantos elementos lineales se divide lo establece la División. 5 ;La cuerda del arco va desde el punto de inicio en la dirección 6 ;Y positiva, y puede girarse mediante una rotación en la 7 ;dirección deseada. 8 ;El radio se define mediante un parámetro (Q6) y un factor 9 ;(Q8). El resultado de dicha multiplicación es el radio, con 10 ;el que el control numérico calcula la trayectoria circular 11 ;linealizada. 12 ; 13 ;Introducción de parámetros 14 FN 0: Q16 =+100 ;COORDENADA DE INICIO X 15 FN 0: Q17 =+0 ;COORDENADA DE INICIO Y 16 FN 0: Q7 =+1000 ;LONGITUD DE LA CUERDA Y 17 FN 0: Q3 =-30 ;PROF. DE FRESADO 18 FN 0: Q5 =+1000 ;DIVISIÓN 19 FN 0: Q6 =+5 ;RADIO 20 FN 0: Q8 =+1000 ;FACTOR DE RADIO 21 FN 0: Q10 =+2 ;DISTANCIA DE SEGURIDAD 22 FN 0: Q11 =+500 ;AVANCE AL PROFUNDIZAR 23 FN 0: Q12 =+2000 ;AVANCE DE FRESADO 24 FN 0: Q15 =+40 ;COMPENSACIÓN DEL RADIO 25 ; ;+40=NINGUNA COMPENSACIÓN 26 ; ;+41=COMPENSACIÓN DEL RADIO IZQUIERDA 27 ; ;+42=COMPENSACIÓN DEL RADIO DERECHA 28 FN 0: Q18 =+0 ;ROTACIÓN 29 ;Fin de la introducción de parámetros 30 ; 31 BLK FORM 0.1 Z X+0 Y+0 Z-100 32 BLK FORM 0.2 X+400 Y+1000 Z+0 33 ; 34 ;Llamada a la herramienta 35 TOOL CALL 51 Z S5000 36 ; 37 ;Posicionamiento previo 38 L Z+20 R0 F9999 M3 39 ; 40 ;Desplazar el punto cero al punto de inicio 41 CYCL DEF 7.0 PUNTO CERO 42 CYCL DEF 7.1 X+Q16 43 CYCL DEF 7.2 Y+Q17 44 ;Activar la rotación 45 CYCL DEF 10.0 GIRO 46 CYCL DEF 10.1 ROT+Q18 47 ; 48 ;Llamada mecanizado 49 CALL LBL 1 50 ; 51 ;Deshacer la transformación de coordenadas 52 CYCL DEF 10.0 GIRO 53 CYCL DEF 10.1 ROT+0 54 CYCL DEF 7.0 PUNTO CERO 55 CYCL DEF 7.1 X+0 56 CYCL DEF 7.2 Y+0 57 ; 58 ;Retirar la herramienta y final del programa 59 L Z+20 R0 F9999 M2 60 ; 61 ;Mecanizado 62 LBL 1 63 ;Cálculos 64 FN 0: Q1 =+0 ;Punto de inicio X del desplazamiento del punto cero 65 FN 0: Q2 =+0 ;Punto de inicio Y del desplazamiento del punto cero 66 FN 0: Q31 =-Q7 ;Tramo de eje actual 67 FN 1: Q32 =+Q2 + +Q7 ;Final Y 68 FN 0: Q33 =+0 ;Longitud actual 69 FN 3: Q35 =+Q6 * +Q8 ;Radio Conversión 70 FN 3: Q36 =+Q35 * +Q35 ;Radio Cuadrado 71 FN 4: Q37 =+Q7 DIV +2 ;Reducir a la mitad la cuerda 72 FN 4: Q38 =+Q7 DIV +Q5 ;Amplitud del paso en Y 73 FN 3: Q30 =+Q38 * +2 ;Amplitud del paso en eje 74 CALL LBL 10 75 FN 0: Q34 =+Q25 ;Modificación X 76 FN 2: Q34 =+Q1 - +Q34 ;Desplazamiento del punto de inicio 77 FN 0: Q22 =+Q2 ;Punto de inicio Y 78 ; 79 ;Decisión de la compensación del radio y aproximación al 80 ;punto de inicio 81 FN 10: IF +Q15 NE +0 GOTO LBL Q15 82 LBL 40 ;Ninguna compensación del radio 83 L X+Q1 Y+Q2 R0 FMAX M3 ;Posición inicial 84 FN 9: IF +0 EQU +0 GOTO LBL 43 85 LBL 41 ;Compensación del radio Izquierda 86 L X+Q1 Y+Q2 RL FMAX M3 ;Posición inicial 87 FN 9: IF +0 EQU +0 GOTO LBL 43 88 LBL 42 ;Compensación del radio Derecha 89 L X+Q1 Y+Q2 RR FMAX M3 ;Posición inicial 90 LBL 43 91 L Z+Q10 FMAX ;Desplazarse a la distancia de seguridad 92 L Z+Q3 FQ11 ;Z desplazar en profundidad 93 ; 94 LBL 5 95 FN 1: Q22 =+Q22 + +Q38 ;Y actualizar 96 FN 1: Q33 =+Q33 + +Q38 ;Actualización longitud 97 FN 11: IF +Q22 GT +Q32 GOTO LBL 99 ;Y Final alcanzado? 98 FN 9: IF +Q22 EQU +Q32 GOTO LBL 99 ;Y Final alcanzado? 99 FN 1: Q31 =+Q31 + +Q30 ;Actualizar tramo de eje 100 CALL LBL 10 101 FN 1: Q21 =+Q34 + +Q25 ;Nueva coordenada X 102 L X+Q21 Y+Q22 FQ12 ;Hacer la aproximación a nuevas coordenadas X e Y 103 FN 12: IF +Q33 LT +Q32 GOTO LBL 5 ;Final no alcanzado? 104 FN 9: IF +Q33 EQU +Q32 GOTO LBL 5 105 ; 106 LBL 99 107 L X+Q1 Y+Q32 FMAX ;Hacer la aproximación a la última posición 108 L Z+Q10 FMAX ;Z Desplazar a la distancia de seguridad 109 L IX+Q108 IY+Q108 R0 ;Anular la corrección de radio 110 LBL 0 111 ; 112 LBL 10 ;X Calcular paso 113 FN 4: Q25 =+Q31 DIV +2 114 FN 3: Q25 =+Q25 * +Q25 115 FN 2: Q25 =+Q36 - +Q25 116 FN 5: Q25 = SQRT +Q25 117 FN 2: Q25 =+Q35 - +Q25 ;Modificación del eje X 118 LBL 0 119 END PGM 2080_ES MM