0 BEGIN PGM 2030_IT MM 1 ;Poligono regolare 2 ;Determinazione delle coordinate con seno e coseno 3 BLK FORM 0.1 Z X+0 Y+0 Z-20 4 BLK FORM 0.2 X+100 Y+100 Z+0 5 ; 6 ;Chiamata utensile fresa 7 TOOL CALL 51 Z S3000 8 ; 9 ;Immissione parametri 10 FN 0: Q1 =+50 ;CENTRO ASSE X 11 FN 0: Q2 =+50 ;CENTRO ASSE Y 12 FN 0: Q3 =-10 ;PROFONDITA' 13 FN 0: Q4 =-1 ;SENSO DI ROTAZIONE 14 ; ;-1=IN SENSO ORARIO 15 ; ;+1=IN SENSO ANTIORARIO 16 FN 0: Q5 =+6 ;NUMERO DI SPIGOLI 17 FN 0: Q6 =+45 ;RAGGIO DEL PERIMETRO 18 FN 0: Q7 =+0 ;POSIZIONE ANGOLARE PRIMO SPIGOLO 19 FN 0: Q10 =+2 ;DISTANZA DI SICUREZZA 20 FN 0: Q11 =+150 ;AVANZAMENTO IN PROFONDITA' 21 FN 0: Q12 =+300 ;AVANZAMENTO FRESATURA 22 FN 0: Q14 =+0 ;SOVRAMETALLO LATERALE 23 FN 0: Q15 =+1 ;COMPENSAZIONE RAGGIO (O=RO,1=RL,2=RR) 24 ;Fine immissione! 25 ; 26 L Z+100 R0 FMAX M3 27 ; 28 LBL 1 29 CC X+Q1 Y+Q2 ;CC su centro X e Y 30 ; 31 ;Calcoli 32 FN 0: Q27 =+0 ;Azzeramento dell'angolo corrente 33 FN 0: Q35 =+1 ;Impostazione contatore spigoli 34 FN 1: Q26 =+Q6 + +Q14 ;Raggio da produrre (raggio del perimetro+sovrametallo) 35 FN 4: Q28 =+Q108 DIV +2 ;Raggio di avvicinamento (1/2*raggio utensile) 36 FN 3: Q29 =+Q108 * +2 ;Diametro utensile (2*raggio utensile) 37 FN 1: Q29 =+Q26 + +Q29 ;Distanza per preposizionamento (raggio+diametro utensile) 38 FN 4: Q37 =+360 DIV +Q5 ;Passo angolare 39 FN 3: Q37 =+Q37 * +Q4 ;Senso di rotazione 40 FN 0: Q27 =+Q7 ;Valore corrente=valore primo spigolo 41 LP PR+Q29 PA+Q7 R0 FMAX ;Preposizionamento 42 L Z+Q10 FMAX 43 L Z+Q3 FQ11 ;Avanzamento in profondità 44 ; 45 FN 9: IF +Q15 EQU +1 GOTO LBL 11 ;Se compensazione raggio RL salto a LBL11 46 FN 9: IF +Q15 EQU +2 GOTO LBL 12 ;Se compensazione raggio RR salto a LBL12 47 ; 48 ;Raggiungimento primo spigolo con R0 49 LP PR+Q26 PA+Q7 R0 FQ12 50 RND RQ28 51 FN 9: IF +0 EQU +0 GOTO LBL 2 ;Salto a LBL2 52 ; 53 ;Raggiungimento primo spigolo con RL 54 LBL 11 55 LP PR+Q26 PA+Q7 RL FQ12 56 RND RQ28 57 FN 9: IF +0 EQU +0 GOTO LBL 2 ;Salto a LBL2 58 ; 59 ;Raggiungimento primo spigolo con RR 60 LBL 12 61 LP PR+Q26 PA+Q7 RR FQ12 62 RND RQ28 63 FN 9: IF +0 EQU +0 GOTO LBL 2 ;Salto a LBL2 64 ; 65 ; 66 LBL 2 67 FN 1: Q35 =+Q35 + +1 ;Contatore spigoli 68 FN 1: Q27 =+Q27 + +Q37 ;Nuovo angolo (angolo corrente+passo angolare) 69 ; 70 ;Calcolo nuova posizione X e Y 71 FN 6: Q22 = SIN +Q27 ;Seno dell'angolo attuale 72 FN 3: Q22 =+Q22 * +Q26 ;Seno * raggio 73 FN 1: Q22 =+Q22 + +Q2 ;Posizione Y=risultato+centro asse Y 74 FN 7: Q21 = COS +Q27 ;Coseno dell'angolo attuale 75 FN 3: Q21 =+Q21 * +Q26 ;Coseno * raggio 76 FN 1: Q21 =+Q21 + +Q1 ;Posizione X=risultato+centro asse X 77 ; 78 ;Raggiungimento della nuova posizione 79 L X+Q21 Y+Q22 FQ12 80 ; 81 FN 12: IF +Q35 LT +Q5 GOTO LBL 2 ;Se valore contatore spigoli inferiore del numero di spigoli ritorno a LBL2 82 ; 83 LP PR+Q26 PA+Q7 ;Ritorno al primo spigolo 84 RND RQ28 85 LP PR+Q29 PA+Q7 R0 ;Disimpegno 86 L Z+Q10 R0 FMAX ;Raggiungimento dell'altezza di sicurezza 87 LBL 0 88 L Z+100 R0 FMAX M2 89 ;Fine programma 90 END PGM 2030_IT MM