0 BEGIN PGM 5090_IT MM 1 ;In questo programma vengono lavorate su un 2 ;piano ruotato un'isola e una tasca rettangolari 3 ;e successivamente con un utensile inclinato 4 ;viene fresato uno smusso sul perimetro dei 5 ;profili. I profili si programmano con cicli. 6 ;Per gli smussi è necessario definire i parametri 7 ;sulla base dei quali il controllo numerico 8 ;calcola le traiettorie utensile. 9 ; 10 BLK FORM 0.1 Z X-50 Y-50 Z-40 11 BLK FORM 0.2 X+50 Y+50 Z+10 12 TOOL CALL 8 Z S12000 F5000 ;Fresa D16 13 ;Reset 14 M129 15 CYCL DEF 7.0 PUNTO ZERO 16 CYCL DEF 7.1 X+0 17 CYCL DEF 7.2 Y+0 18 CYCL DEF 7.3 Z+0 19 PLANE RESET STAY 20 M3 21 ;Rotazione piano di lavoro 22 PLANE SPATIAL SPA+15 SPB+0 SPC+0 TURN MB100 FMAX 23 CYCL DEF 232 FRESATURA A SPIANARE ~ Q389=+2 ;STRATEGIA ~ Q225=-50 ;PUNTO PART. 1. ASSE ~ Q226=-60 ;PUNTO PART. 2. ASSE ~ Q227=+20 ;PUNTO PART. 3. ASSE ~ Q386=+0 ;PUNTO FINALE 3. ASSE ~ Q218=+100 ;LUNGHEZZA 1. LATO ~ Q219=+120 ;LUNGHEZZA 2. LATO ~ Q202=+20 ;PROF. AVANZ. MAX. ~ Q369=+0 ;PROFONDITA' CONSEN. ~ Q370=+1 ;SOVRAPPOSIZIONE MAX. ~ Q207= AUTO ;AVANZAM. FRESATURA ~ Q385= AUTO ;AVANZAMENTO FINITURA ~ Q253= MAX ;AVANZ. AVVICINAMENTO ~ Q200=+2 ;DISTANZA SICUREZZA ~ Q357=+2 ;DIST. SICUR LATERALE ~ Q204=+50 ;2. DIST. SICUREZZA 24 L X+0 Y+0 Z+100 R0 FMAX M3 M99 25 CYCL DEF 251 TASCA RETTANGOLARE ~ Q215=+0 ;TIPO LAVORAZIONE ~ Q218=+60 ;LUNGHEZZA 1. LATO ~ Q219=+50 ;LUNGHEZZA 2. LATO ~ Q220=+10 ;RAGGIO DELL'ANGOLO ~ Q368=+0 ;QUOTA LATERALE CONS. ~ Q224=+0 ;ANGOLO DI ROTAZIONE ~ Q367=+0 ;POSIZIONE TASCA ~ Q207= AUTO ;AVANZAM. FRESATURA ~ Q351=+1 ;MODO FRESATURA ~ Q201=-10 ;PROFONDITA ~ Q202=+10 ;PROF. INCREMENTO ~ Q369=+0 ;PROFONDITA' CONSEN. ~ Q206= AUTO ;AVANZ. INCREMENTO ~ Q338=+0 ;INCREMENTO FINITURA ~ Q200=+2 ;DISTANZA SICUREZZA ~ Q203=+0 ;COORD. SUPERFICIE ~ Q204=+50 ;2. DIST. SICUREZZA ~ Q370=+1 ;SOVRAPP.TRAIET.UT. ~ Q366=+1 ;PENETRAZIONE ~ Q385=+500 ;AVANZAMENTO FINITURA 26 L X+0 Y+0 R0 FMAX M3 M99 27 CYCL DEF 256 ISOLA RETTANGOLARE ~ Q218=+80 ;LUNGHEZZA 1. LATO ~ Q424=+100 ;QUOTA PEZZO GREZZO 1 ~ Q219=+65 ;LUNGHEZZA 2. LATO ~ Q425=+120 ;QUOTA PEZZO GREZZO 2 ~ Q220=+10 ;RAGGIO / SMUSSO ~ Q368=+0 ;QUOTA LATERALE CONS. ~ Q224=+0 ;ANGOLO DI ROTAZIONE ~ Q367=+0 ;POSIZIONE ISOLA ~ Q207= AUTO ;AVANZAM. FRESATURA ~ Q351=+1 ;MODO FRESATURA ~ Q201=-10 ;PROFONDITA ~ Q202=+10 ;PROF. INCREMENTO ~ Q206=+3000 ;AVANZ. INCREMENTO ~ Q200=+2 ;DISTANZA SICUREZZA ~ Q203=+0 ;COORD. SUPERFICIE ~ Q204=+50 ;2. DIST. SICUREZZA ~ Q370=+1 ;SOVRAPP.TRAIET.UT. ~ Q437=+0 ;POSIZIONE DI AVVICINAMENTO 28 L X+0 Y+0 R0 FMAX M3 M99 29 ; 30 ;Parametri smusso 31 Q1 = 2 ;LUNGHEZZA SMUSSO 32 Q2 = 30 ;ANGOLO SMUSSO 33 Q13 = 60 ;LUNGHEZZA X 34 Q3 = 50 ;LARGHEZZA Y 35 Q5 = 10 ;RAGGIO 36 Q4 = 1 ;LAVORAZIONE 1=INTERNA 2=ESTERNA 37 TOOL CALL DL-0.5 ;Extracorsa per ottenere bordo inferiore pulito dello smusso 38 CALL LBL "fase" 39 ; 40 ;Parametri smusso 41 Q1 = 2 ;LUNGHEZZA SMUSSO 42 Q2 = 30 ;ANGOLO SMUSSO 43 Q13 = 80 ;LUNGHEZZA X 44 Q3 = 65 ;LARGHEZZA Y 45 Q5 = 10 ;RAGGIO 46 Q4 = 2 ;LAVORAZIONE 1=INTERNA 2=ESTERNA 47 TOOL CALL DL-0.5 ;Extracorsa per ottenere bordo inferiore pulito dello smusso 48 CALL LBL "fase" 49 ; 50 FUNCTION RESET TCPM 51 ;Raggiungimento della posizione di sicurezza 52 L Z+500 R0 FMAX M91 53 L X+800 Y+600 R0 FMAX M91 54 ;Riposizionamento piano di lavoro 55 PLANE RESET TURN FMAX 56 ;Fine programma 57 M30 58 ;Sottoprogrammi 59 LBL "fase" 60 ;Richiesta se esterna o interna 61 FN 9: IF +Q4 EQU +1 GOTO LBL "inside" 62 FN 9: IF +Q4 EQU +2 GOTO LBL "outside" 63 STOP 64 ;Selezione per Q4 se esterna o interna 65 ; 66 LBL "inside" 67 FUNCTION TCPM F TCP AXIS SPAT PATHCTRL VECTOR 68 FN 11: IF +Q5 GT +0 GOTO LBL "radius" 69 Q5 = Q108 70 LBL "radius" 71 Q10 = Q108 * ( COS Q2 ) ;Calcolo raggio compensazione utensile 72 Q11 = ( Q3 / 2 ) - Q10 ;Larghezza Y - raggio compensazione utensile 73 QL11 = Q5 - Q10 74 Q21 = ( Q3 / 2 ) - Q5 ;Centro CC Y 75 Q31 = ( Q13 / 2 ) - Q5 ;Centro CC X 76 Q12 = ( Q1 / TAN Q2 ) - ( SIN Q2 * Q108 ) ;Compensazione utensile Z 77 QL13 = Q11 - Q108 ;Posizione avvicinamento Y 78 QL12 = Q12 - 2 ;Posizione avvicinamento Z 79 L X-Q108 Y-QL13 Z+50 R0 FMAX 80 L A+Q2 B+0 C+0 R0 FMAX ;Importante: tutti i tre assi circolari per TCPM ... AXIS SPAT 81 L Z-QL12 R0 F AUTO 82 CC X+0 Y-QL13 83 CP PA-90 Z-Q12 DR+ 84 L X+Q31 85 ; 86 QL1 = 270 87 LBL 1 88 QL1 = QL1 + 1 89 QL2 = QL11 * COS QL1 90 QL3 = QL11 * SIN QL1 91 QL2 = Q31 + QL2 92 QL3 = Q21 - QL3 93 L X+QL2 Y-QL3 IC+1 94 CALL LBL 1 REP89 95 L Y+Q21 96 QL1 = 0 97 LBL 2 98 QL1 = QL1 + 1 99 QL2 = QL11 * COS QL1 100 QL3 = QL11 * SIN QL1 101 QL2 = Q31 + QL2 102 QL3 = Q21 + QL3 103 L X+QL2 Y+QL3 IC+1 104 CALL LBL 2 REP89 105 L X-Q31 106 QL1 = 90 107 LBL 3 108 QL1 = QL1 + 1 109 QL2 = QL11 * COS QL1 110 QL3 = QL11 * SIN QL1 111 QL2 = Q31 - QL2 112 QL3 = Q21 + QL3 113 L X-QL2 Y+QL3 IC+1 114 CALL LBL 3 REP89 115 L Y-Q21 116 QL1 = 180 117 LBL 4 118 QL1 = QL1 + 1 119 QL2 = QL11 * COS QL1 120 QL3 = QL11 * SIN QL1 121 QL2 = Q31 - QL2 122 QL3 = Q21 - QL3 123 L X-QL2 Y-QL3 IC+1 124 CALL LBL 4 REP89 125 L X+0 126 CC X+0 Y-QL13 127 CP PA+0 Z-QL12 DR+ 128 L Z+15 R0 FMAX 129 M140 MB+50 130 M129 131 ; 132 FN 9: IF +0 EQU +0 GOTO LBL "end" 133 ; 134 LBL "outside" 135 FUNCTION TCPM F TCP AXIS SPAT PATHCTRL VECTOR 136 Q10 = Q108 * ( COS Q2 ) ;Calcolo raggio compensazione utensile 137 Q11 = ( Q3 / 2 ) + Q10 ;Larghezza Y + raggio compensazione utensile 138 QL11 = Q5 + Q10 139 Q12 = ( Q1 / TAN Q2 ) - ( SIN Q2 * Q108 ) ;Compensazione utensile Z 140 Q21 = ( Q3 / 2 ) - Q5 ;Centro CC Y 141 Q31 = ( Q13 / 2 ) - Q5 ;Centro CC X 142 QL13 = Q11 + Q108 ;Posizione avvicinamento Y 143 QL12 = Q12 - 2 ;Posizione avvicinamento Z 144 L X+Q108 Y-QL13 Z+50 R0 FMAX 145 L A-Q2 B+0 C+0 R0 FMAX ;Importante: tutti i tre assi circolari per TCPM ... AXIS SPAT 146 L Z-QL12 R0 F AUTO 147 CC X+0 Y-QL13 148 CP IPA+90 Z-Q12 DR+ 149 L X-Q31 150 ; 151 QL1 = 270 152 LBL 10 153 QL1 = QL1 - 1 154 QL2 = QL11 * COS QL1 155 QL3 = QL11 * SIN QL1 156 QL2 = Q31 - QL2 157 QL3 = Q21 - QL3 158 L X-QL2 Y-QL3 IC-1 159 CALL LBL 10 REP89 160 L Y+Q21 161 QL1 = 180 162 LBL 20 163 QL1 = QL1 - 1 164 QL2 = QL11 * COS QL1 165 QL3 = QL11 * SIN QL1 166 QL2 = Q31 - QL2 167 QL3 = Q21 + QL3 168 L X-QL2 Y+QL3 IC-1 169 CALL LBL 20 REP89 170 L X+Q31 171 QL1 = 90 172 LBL 30 173 QL1 = QL1 - 1 174 QL2 = QL11 * COS QL1 175 QL3 = QL11 * SIN QL1 176 QL2 = Q31 + QL2 177 QL3 = Q21 + QL3 178 L X+QL2 Y+QL3 IC-1 179 CALL LBL 30 REP89 180 L Y-Q21 181 QL1 = 0 182 LBL 40 183 QL1 = QL1 - 1 184 QL2 = QL11 * COS QL1 185 QL3 = QL11 * SIN QL1 186 QL2 = Q31 + QL2 187 QL3 = Q21 - QL3 188 L X+QL2 Y-QL3 IC-1 189 CALL LBL 40 REP89 190 L X+0 191 CC X+0 Y-QL13 192 CP PA+180 Z-QL12 DR+ 193 L Z+15 R0 FMAX 194 M140 MB+50 195 M129 196 ; 197 LBL "end" 198 LBL 0 199 END PGM 5090_IT MM