0 BEGIN PGM 8210_NL MM 1 ;NC-programma om op meerdere punten de 2 ;Z-coördinaat te meten en de 3 ;coördinaten van het hoogste punt in 4 ;een flag te schrijven. Vervolgens 5 ;benadert de besturing de X/Y-positie 6 ;van het hoogste punt en stelt daar het 7 ;Z-referentiepunt in. 8 ;De posities waarop de besturing de 9 ;Z-coördinaat moet meten, definieert u 10 ;in een tabel. Aan het begin van het 11 ;programma moet u een aantal parameters 12 ;definiëren. 13 ; 14 BLK FORM 0.1 Z X+0 Y+0 Z-50 15 BLK FORM 0.2 X+100 Y+100 Z+0 16 ; 17 ;Invoer 18 QL1 = 9 ;AANTAL MEETPUNTEN 19 QL2 = 0 ;Z-STARTPUNT VOOR METING 20 QL3 = 0.5 ;Z-REFERENTIEPUNT DAT OP DE HOOGSTE POSITIE 21 ; ;MOET WORDEN INGESTELD 22 QL4 = 5 ;VEILIGHEIDSAFSTAND 23 QL5 = 0 ;EERSTE REGEL VAN DE TABEL WAARUIT WORDT 24 ; ;GELEZEN 25 ; 26 ;Gereedschapsoproep taster 27 TOOL CALL 500 Z 28 ; 29 ;Vrijzetten 30 L Z+100 R0 FMAX 31 ; 32 ;Berekeningen 33 QL11 = QL1 - 1 ;Aantal herhalingen 34 QL42 = - 999999999 ;Referentie voor de eerste vergelijking 35 ; 36 ;Tabel openen waarin de meetposities zijn gedefinieerd 37 FN 26: TABOPEN 82101_nl.tab 38 ; 39 ;Lus 40 LBL 1 41 ; 42 ;Coördinaten X en Y uit de tabel lezen 43 FN 28: TABREAD QL30 =QL5 /"X,Y" 44 ; 45 ;Meetpunt benaderen 46 L X+QL30 Y+QL31 R0 FMAX 47 ; 48 ;Z-coördinaat meten 49 TCH PROBE 427 METEN COORDINATEN ~ Q263=+QL30 ;1E PUNT 1E AS ~ Q264=+QL31 ;1E PUNT IN 2E AS ~ Q261=+QL2 ;MEETHOOGTE ~ Q320=+QL4 ;VEILIGHEIDSAFSTAND ~ Q272=+3 ;MEETASSEN ~ Q267=-1 ;VERPL. RICHTING ~ Q260=+50 ;VEILIGE HOOGTE ~ Q281=+0 ;MEETPROTOCOL ~ Q288=+0 ;MAXIMALE MAAT ~ Q289=+0 ;MINIMALE MAAT ~ Q309=+0 ;PGM-STOP BIJ FOUT ~ Q330=+0 ;GEREEDSCHAP 50 ; 51 ;Vergelijking of het meetresultaat groter is dan de 52 ;tot nu toe grootste waarde 53 FN 11: IF +Q160 GT +QL42 GOTO LBL 2 54 ; 55 ;Sprongmerkteken 56 LBL 3 57 ; 58 QL5 = QL5 + 1 ;Tabelregel verder tellen 59 ; 60 CALL LBL 1 REPQL11 ;Lus herhalen 61 ; 62 ;X/Y-positie vanaf het hoogste punt benaderen 63 L X+QL40 Y+QL41 R0 FMAX 64 ; 65 ;Op het hoogste punt het Z-referentiepunt vastleggen 66 TCH PROBE 417 NULPUNT IN TS-AS ~ Q263=+QL40 ;1E PUNT 1E AS ~ Q264=+QL41 ;1E PUNT IN 2E AS ~ Q294=+QL42 ;1E MEETPUNT 3E AS ~ Q320=+QL4 ;VEILIGHEIDSAFSTAND ~ Q260=+100 ;VEILIGE HOOGTE ~ Q305=+0 ;NUMMER IN TABEL ~ Q333=+QL3 ;REFERENTIEPUNT ~ Q303=+1 ;MEETWAARDE OVERDR. 67 ; 68 ;Referentiepunt activeren 69 CYCL DEF 247 REF.PUNT VASTL. ~ Q339=+0 ;REF.PUNT-NUMMER 70 ; 71 ;Vrijzetten en programma-einde 72 L Z+100 R0 FMAX M30 73 ; 74 LBL 2 75 ;Coördinaten voor het hoogste punt in flag schrijven 76 QL40 = QL30 ;X-coördinaat op het hoogste punt 77 QL41 = QL31 ;Y-coördinaat op het hoogste punt 78 QL42 = Q160 ;Z-coördinaat op het hoogste punt 79 ;Terugsprong naar de lus 80 FN 9: IF +0 EQU +0 GOTO LBL 3 81 END PGM 8210_NL MM