0  BEGIN PGM SL2_276 MM 
1  FN 22: FUNCT Q0 FNR1 PIN0 PIN1 ;INIT KONTURBEARBEITUNG
2  FN 9: IF +Q0 EQU +0 GOTO LBL 1
3  FN 14: ERROR= 1015
4  FN 9: IF +0 EQU +0 GOTO LBL 254
5  LBL 1
6  FN 22: FUNCT Q0 FNR121 PIN0 PIN0 PIN35 ;SAVE Q0-Q35
7  FN 17: SYSWRITE ID 30 NR10 =+Q12 ;VORSCHUB FRAESEN
8  FN 18: SYSREAD Q0 = ID31 NR31 IDX0 ;LABELNUMMER
9  FN 22: FUNCT Q0 FNR3 PINQ0 PIN0 PIN1 ;OFFENE KONTUR LESEN
10 FN 22: FUNCT Q0 FNR4 PIN0 PIN1027 ; PROGRAMMIERTE KONTUR ABSPEICHERN
11 FN 18: SYSREAD Q30 = ID212
12 FN 9: IF +Q0 EQU +0 GOTO LBL 2
13 FN 14: ERROR= 1015
14 FN 9: IF +0 EQU +0 GOTO LBL 253
15 LBL 2
16 FN 18: SYSREAD Q24 = ID20 NR3 ;WZ-Achse
17 FN 1: Q24 =+Q24 + +1 ; wg. x==1
18 FN 18: SYSREAD Q22 = ID220 NR2 IDXQ24 ;VERSCHIEBUNG
19 FN 18: SYSREAD Q23 = ID210 NR4 IDXQ24 ;SKALIERUNG
20 FN 0: Q17 =+Q7
21 Q7 = Q23 * Q7 + Q22 ;RZG-HOEHE ; TRANSFORMATION
22 Q1 = Q23 * Q1 ; TIEFE SKALIEREN
23 FN 17: SYSWRITE ID 31 NR21 =+0 ;PENDELVORSCHUB
24 FN 17: SYSWRITE ID 31 NR18 =+0 ; UEBERGANGSRADIUS
25 FN 17: SYSWRITE ID 31 NR22 =+Q7 ;SICHERE HOEHE
26 FN 17: SYSWRITE ID 30 NR1 =+0 ;SICHERHEITSABSTAND
27 Q10 = ABS Q10
28 Q24 = ABS Q1
29 FN 11: IF +Q24 GT +Q10 GOTO LBL 14
30 FN 0: Q10 =+Q24 ;
31 LBL 14
32 FN 17: SYSWRITE ID 31 NR17 =+Q3 ;SCHLICHTAUFMASS
33 FN 17: SYSWRITE ID 30 NR3 =+Q10 ;ZUSTELLTIEFE
34 FN 17: SYSWRITE ID 30 NR4 =+Q11 ;VORSCHUB TIEFE
35 FN 17: SYSWRITE ID 212 =+3
36 FN 18: SYSREAD Q35 = ID1000 NR7483 ;MP7483: Werkzeugname/nummer erlaubt
37 FN 18: SYSREAD Q33 = ID30 NR52 IDX18 ;ABFRAGE, OB TOOLNAME PROGR. IST
38 FN 9: IF +Q33 EQU +0 GOTO LBL 45
39 FN 10: IF +Q35 NE +2 GOTO LBL 46
40 FN 14: ERROR= 1094 ;Toolnamen nicht erlaubt
41 LBL 46
42 FN 18: SYSREAD Q18 = ID990 NR10 IDX18 ;ZUM TOOLNAMEN EINE NUMMER SUCHEN
43 FN 10: IF +Q18 NE -1 GOTO LBL 34
44 FN 14: ERROR= 1092 ;ES KONNTE KEINE NUMMER GEFUNDEN WERDEN
45 LBL 45
46 FN 10: IF +Q35 NE +1 GOTO LBL 34
47 FN 9: IF +Q18 EQU +0 GOTO LBL 34 ;TOOLNR 0 immer erlaubt
48 FN 14: ERROR= 1093 ;Toolnummern nicht erlaubt
49 LBL 34
50 FN 11: IF +Q18 GT +0 GOTO LBL 25
51 FN 0: Q24 =+0 ;AKT. ZUSTELLTIEFE
52 FN 0: Q26 =+0 ;AKTUELLE ZUSTELLUNG
53 FN 18: SYSREAD Q23 = ID200 NR0 IDX0 ;RADIUS AKT.WERKZEUG
54 FN 1: Q23 =+Q23 + +Q3
55 LBL 5 ; KONTURZUG
56 FN 22: FUNCT Q0 FNR30 PEX+Q23 ;KONTUR KORRIGIEREN
57 FN 22: FUNCT Q0 FNR112 PIN0 PIN0 PIN1027 PEX+Q23 ; APPR- DEPA -AN~
 KORR.KONTUR
58 FN 0: QL15 =+Q15
59 FN 9: IF +QL15 EQU +0 GOTO LBL 12
60 FN 18: SYSREAD Q32 = ID410 NR7
61 FN 10: IF +Q32 NE +2 GOTO LBL 98
62 QL15 = NEG QL15
63 LBL 98
64 FN 10: IF +Q110 NE +1 GOTO LBL 99
65 QL15 = NEG QL15
66 LBL 99
67 FN 11: IF +QL15 GT -1 GOTO LBL 7
68 FN 22: FUNCT Q0 FNR11 ;KONTUR UMKEHREN
69 LBL 7 ; KONTURZUG IN EINER RICHTUNG
70 CALL LBL 8
71 FN 10: IF +Q24 NE +Q1 GOTO LBL 7
72 FN 9: IF +0 EQU +0 GOTO LBL 253
73 LBL 12 ; KONTURZUG HIN UND HER
74 CALL LBL 8
75 FN 22: FUNCT Q0 FNR11
76 FN 1: Q25 =+Q5 + +Q24 ;AKT.BEARBEITUNGSHOEHE
77 FN 10: IF +Q24 NE +Q1 GOTO LBL 12
78 FN 9: IF +0 EQU +0 GOTO LBL 253
79 LBL 8
80 CALL LBL 9
81 L FQ12 ;
82 FN 17: SYSWRITE ID 31 NR46 =+Q24 ; AKTUELLE GESAMTZUSTELLUNG
83 FN 22: FUNCT Q0 FNR40 PIN0 ;KONTUR FRAESEN
84 CALL LBL 10
85 LBL 0
86 LBL 9
87 FN 0: Q26 =+Q24 ;
88 Q28 = SGN Q1 * Q10
89 Q24 = Q24 + Q28
90 Q31 = ABS Q24
91 Q29 = ABS Q1
92 FN 12: IF +Q31 LT +Q29 GOTO LBL 11
93 FN 0: Q24 =+Q1 ;LETZE ZUSTELLUNG
94 Q28 = Q24 - Q26
95 LBL 11
96 FN 17: SYSWRITE ID 30 NR2 =+Q28 ;AKT.FRAESZUSTELLUNG
97 LBL 0
98 LBL 10
99 FN 18: SYSREAD Q27 = ID270 NR1 IDX1 ; BEZUGS POSITION X
100 FN 18: SYSREAD Q28 = ID270 NR1 IDX2 ; BEZUGS POSITION Y
101 FN 18: SYSREAD Q29 = ID270 NR1 IDX3 ; BEZUGS POSITION Z
102 L  Z+Q29 FQ11 ; DUMMY BEZUG Z AN GEO
103 L  X+Q27  Y+Q28 FQ12 ; DUMMY BEZUG X,Y AN GEO
104 FN 10: IF +Q24 NE +Q1 GOTO LBL 97
105 L  Z+Q17 FMAX ; IM EINGABESYSTEM
106 LBL 97
107 LBL 0
108 LBL 25
109 FN 11: IF +Q446 GT +0 GOTO LBL 26
110 FN 0: Q446 =+0.001
111 LBL 26
112 FN 17: SYSWRITE ID 31 NR48 =+Q446
113 FN 17: SYSWRITE ID 31 NR49 =+Q447
114 FN 17: SYSWRITE ID 31 NR50 =+Q448
115 Q35 = FRAC Q18 * 10
116 Q18 = INT Q18
117 FN 18: SYSREAD Q16 = ID200 NR6 IDXQ18 .Q35 ; RADIUS RW.
118 FN 18: SYSREAD Q25 = ID200 NR1 IDX0 ;  WERKZEUGRADIUS PLUS DR
119 FN 1: Q34 =+Q25 + +Q3 ; PLUS AUFMASS
120 FN 22: FUNCT Q0 FNR30 PIN0 PIN1025 PEX+Q34 ; KORR. MIT WERKZEUGRADIUS
121 FN 18: SYSREAD Q0 = ID410 NR6 IDX1025 ; GIBT ES ERGEBNIS ?
122 FN 9: IF +Q0 EQU +0 GOTO LBL 30
123 FN 1: Q28 =+Q16 + +Q3 ; RAEUM.RADIUS + AUFMASS
124 FN 22: FUNCT Q0 FNR30 PIN0 PIN1026 PEX+Q28 ; KORR. MIT VORAEUMRADIUS
125 FN 18: SYSREAD Q0 = ID410 NR6 IDX1026 ; GIBT ES ERGEBNIS ?
126 FN 9: IF +Q0 EQU +0 GOTO LBL 30
127 FN 2: Q28 =+Q28 - +Q25
128 FN 1: Q28 =-Q28 + -0.001 ; RADIUS + 1u
129 FN 22: FUNCT Q0 FNR4 PIN1026 PIN0 ; TASCHE IN INSEL LOC(258)
130 FN 22: FUNCT Q0 FNR30 PIN0 PIN1026 PIN1 PEX+Q28 ; INSEL KORRIGIEREN
131 Q28 = 0 - Q16 - Q3 - Q446
132 FN 22: FUNCT Q0 FNR30 PIN0 PIN1028 PIN1 PEX+Q28 ; INSEL KORRIGIEREN
133 FN 22: FUNCT Q0 FNR4 PIN1025 PIN1026 PIN2 ; KONTUREN IN ARBEITSBEREICH
134 FN 22: FUNCT Q0 FNR5 PIN1025 ; SPEICHER FREIGEBEN
135 FN 22: FUNCT Q0 FNR5 PIN1026 ; SPEICHER FREIGEBEN
136 FN 22: FUNCT Q0 FNR5 ; GARBAGE - COLLECTION
137 FN 22: FUNCT Q0 FNR33 PIN0 PIN0 PIN1027 ; KONTUREN KOMB.  TASCHE-INSEL
138 FN 22: FUNCT Q0 FNR112 PIN0 PIN0 PIN1027 PEX+Q34 ; APPR- DEPA -AN~
 KORR.KONTUR
139 FN 17: SYSWRITE ID 31 NR51 =+100 ;VORSCHUBREDUKTION AUF 100 PROZENT
140 LBL 28 ; Restmaterial bearbeiten (PIN2)
141 FN 17: SYSWRITE ID 30 NR2 =+Q1 ;
142 FN 22: FUNCT Q0 FNR40 PIN0 PIN2
143 L  Z+Q17 FMAX ; IM EINGABESYSTEM
144 LBL 253
145 FN 17: SYSWRITE ID 212 =+Q30
146 FN 22: FUNCT Q0 FNR121 PIN1 PIN0 PIN35 ;RESTORE Q0-Q35
147 FN 22: FUNCT Q0 FNR2
148 LBL 254
149 END PGM SL2_276 MM 
