0 BEGIN PGM 30851_NL MM 1 ;NC-programma voor de berekeningen en de 2 ;baanbewegingen om een concaaf boogelement 3 ;te maken. 4 FN 0: Q46 =+0 ;Teller sneden 5 FN 0: Q52 =+0 ;Startpunt op de Y-as 6 FN 1: Q53 =+Q3 + +Q23 ;Z-coördinaat inclusief overmaat 7 FN 0: Q56 =+Q6 ;Actuele radius 8 FN 0: Q57 =+Q7 ;Actuele hoek profielsnede 9 FN 0: Q58 =+Q8 ;Actuele hoek in het vlak 10 FN 2: Q77 =+Q17 - +Q7 ;Openingshoek in het X/Z-vlak 11 FN 4: Q77 =+Q77 DIV +Q27 ;Hoekstap in het X/Z-vlak 12 FN 3: Q77 =+Q77 * +Q29 ;Hoekstap vermenigvuldigd met voorbewerkingsfactor 13 FN 2: Q78 =+Q18 - +Q8 ;Openingshoek in het X/Y-vlak 14 FN 4: Q78 =+Q78 DIV +Q26 ;Hoekstap in het X/Y-vlak 15 FN 3: Q78 =+Q78 * +Q29 ;Hoekstap vermenigvuldigd met voorbewerkingsfactor 16 FN 2: Q76 =+Q16 - +Q6 ;Radiuswijziging 17 FN 4: Q76 =+Q76 DIV +Q26 ;Radiuswijziging per snede 18 FN 3: Q76 =+Q76 * +Q29 ;Radiuswijziging vermenigvuldigd met voorbewerkingsfactor 19 ;Nulpunt naar het middelpunt en op het oppervlak van de bewerking schuiven 20 CYCL DEF 7.0 NULPUNT 21 CYCL DEF 7.1 X+Q1 22 CYCL DEF 7.2 Y+Q2 23 CYCL DEF 7.3 Z+Q53 24 ; 25 LBL 1 26 ;Rotatie op de actuele hoek in het vlak 27 CYCL DEF 10.0 ROTATIE 28 CYCL DEF 10.1 ROT+Q58 29 FN 0: Q57 =+Q7 ;Actuele hoek gelijk aan starthoek 30 L X+Q10 R0 FMAX ;Voorpositioneren 31 CC Z+0 X+Q10 ;Middelpunt voor profielsnede 32 LP PR+Q56 PA+Q57 FQ22 ;Naar startpunt verplaatsen 33 L Y+Q52 FQ22 ;Op de Y-as naar het startpunt verplaatsen 34 LBL 3 ;Beweging naar eindhoek 35 FN 1: Q57 =+Q57 + +Q77 ;Actuele hoek stapsgewijs verder verplaatsen 36 FN 11: IF +Q57 GT +Q17 GOTO LBL 4 ;Controleren of eindhoek bereikt is 37 LP PR+Q56 PA+Q57 R0 FQ21 ;Nieuwe hoek naderen 38 FN 12: IF +Q57 LT +Q17 GOTO LBL 3 ;Sprong voor volgende lineaire element 39 LBL 4 40 LP PR+Q56 PA+Q17 FQ20 ;Verplaatsen naar eindhoek 41 FN 1: Q46 =+Q46 + +Q29 ;Teller verder rekenen 42 FN 1: Q56 =+Q56 + +Q76 ;Radius actualiseren 43 FN 1: Q58 =+Q58 + +Q78 ;Hoek van de rotatie actualiseren 44 FN 11: IF +Q46 GT +Q26 GOTO LBL 99 ;Controleren of het aantal sneden is bereikt 45 LBL 5 46 ; 47 ;Roteren op nieuwe hoek 48 CYCL DEF 10.0 ROTATIE 49 CYCL DEF 10.1 ROT+Q58 50 FN 0: Q57 =+Q17 ;Actuele hoek is gelijk aan eindhoek 51 CC Z+0 X+Q10 ;Middelpunt voor profielsnede 52 LP PR+Q56 PA+Q57 FQ22 ;Startpunt benaderen 53 L Y+Q52 FQ22 ;Y-startpunt naderen 54 ; 55 LBL 7 ;Beweging naar starthoek 56 FN 2: Q57 =+Q57 - +Q77 ;Hoek actualiseren 57 FN 12: IF +Q57 LT +Q7 GOTO LBL 8 ;Controleren of de actuele hoek kleiner is dan de starthoek 58 LP PR+Q56 PA+Q57 R0 FQ21 ;Actuele hoek naderen 59 FN 11: IF +Q57 GT +Q7 GOTO LBL 7 ;Controleren of de starthoek is bereikt 60 LBL 8 61 LP PR+Q56 PA+Q7 FQ20 ;Starthoek naderen 62 FN 1: Q46 =+Q46 + +Q29 ;Teller verder rekenen 63 FN 1: Q56 =+Q56 + +Q76 ;Radius actualiseren 64 FN 1: Q58 =+Q58 + +Q78 ;Hoek van de rotatie actualiseren 65 FN 9: IF +Q46 EQU +Q26 GOTO LBL 1 ;Controleren of het aantal sneden is bereikt 66 FN 12: IF +Q46 LT +Q26 GOTO LBL 1 ;Controleren of het aantal sneden is bereikt 67 LBL 99 68 ;Rotatie terugzetten 69 CYCL DEF 10.0 ROTATIE 70 CYCL DEF 10.1 ROT+0 71 ;Nulpuntverschuiving terugzetten 72 CYCL DEF 7.0 NULPUNT 73 CYCL DEF 7.1 X+0 74 CYCL DEF 7.2 Y+0 75 CYCL DEF 7.3 Z+0 76 ; 77 ;Vrijzetten 78 L Z+Q25 R0 F9999 79 END PGM 30851_NL MM