0 BEGIN PGM 82601_NL MM 1 ;NC-programma om de tolerantiewaarden van een 2 ;passing te bepalen. Vervolgens voert de 3 ;besturing een meetcyclus uit. Daarna verwerkt 4 ;zij het meetresultaat en bepaalt zij of de 5 ;gemeten passing binnen de gedefinieerde 6 ;tolerantie ligt. Daarna worden de status, het 7 ;meetresultaat en de grensmaten op het 8 ;beeldscherm weergegeven. 9 ;De definitie van alle noodzakelijke parameters 10 ;vindt plaats in het NC-programma 8255_nl.h. 11 ;Wanneer u alle benodigde bestanden in dezelfde 12 ;directory hebt opgeslagen, hoeft u niets aan dit 13 ;NC-programma aan te passen. 14 ;Als de bestanden in verschillende directory's 15 ;zijn opgeslagen, moet u de paden in de 16 ;bestandsdefinities aanpassen. 17 ; QS2 = "a" ;Kleine letter ter controle definiren 18 ; 19 ;Controleren of er sprake is van een eenheidsboring of een eenheidsas Q2 = STRCOMP( SRC_QS1 SEA_QS2 ) 20 ; 21 ;Tabel voor eenheidsboring openen 22 FN 26: TABOPEN Hole_82603.TAB 23 ; 24 ;Indien boring, spring naar LBL1 25 FN 9: IF +Q2 EQU -1 GOTO LBL 1 26 ; 27 ;Tabel voor eenheidsas openen 28 FN 26: TABOPEN Shaft_82603.TAB 29 ; 30 ;Spronglabel LBL1 31 LBL 1 32 ; Q22 = 0 ;Teller regelnummer 33 ; 34 ;Waarde uit regel 0 kolom "BEREICH" van de tabel lezen 35 FN 28: TABREAD Q3 =Q22 /"BEREICH" 36 ; 37 ;Spronglabel LBL11 38 LBL 11 39 ; 40 ;Controleren of de gedefinieerde passing binnen het bereik ligt 41 FN 11: IF +Q1 GT +Q3 GOTO LBL 12 42 ; 43 ;Maximale grensmaat uit de tabel lezen 44 FN 28: TABREAD Q4 =Q22 / QS1 45 ; 46 ;Regelnummer met n verhogen Q22 = Q22 + 1 47 ; 48 ;Minimale grensmaat uit de tabel lezen 49 FN 28: TABREAD Q5 =Q22 / QS1 50 ; 51 ;Spring naar LBL99 52 FN 9: IF +1 EQU +1 GOTO LBL 99 53 ; 54 ;Spronglabel LBL12 55 LBL 12 56 ;Regelnummer met twee verhogen Q22 = Q22 + 2 57 ; 58 ;Waarde uit regel Q2 kolom "BEREICH" van de tabel lezen 59 FN 28: TABREAD Q3 =Q22 /"BEREICH" 60 ; 61 ;Spring naar LBL11 62 FN 9: IF +1 EQU +1 GOTO LBL 11 63 ; 64 ;Spronglabel LBL99 65 LBL 99 66 ; 67 ;Maximale maat in mm berekenen Q23 = Q1 + ( Q4 / 1000 ) 68 ; 69 ;Minimale maat in mm berekenen Q33 = Q1 + ( Q5 / 1000 ) 70 ; 71 ;Gereedschapsoproep 3D-taster 72 TOOL CALL "TOUCH_PROBE" Z S50 73 ;Voorpositioneren 74 L Z+100 R0 FMAX 75 L X+Q11 Y+Q21 R0 FMAX 76 ; 77 ;Sprong naar het meten 78 ;Indien boring, sprong naar LBL 14 79 FN 9: IF +Q2 EQU -1 GOTO LBL 14 80 ;Indien as, sprong naar LBL 15 81 FN 11: IF +Q2 GT -1 GOTO LBL 15 82 ; 83 ;Boring meten 84 LBL 14 85 TCH PROBE 421 METEN BORING ~ Q273=+Q11 ;MIDDEN 1E AS ~ Q274=+Q21 ;MIDDEN 2E AS ~ Q262=+Q1 ;NOMINALE DIAMETER ~ Q325=+Q41 ;STARTHOEK ~ Q247=+90 ;HOEKSTAP ~ Q261=+Q31 ;MEETHOOGTE ~ Q320=+Q51 ;VEILIGHEIDSAFSTAND ~ Q260=+100 ;VEILIGE HOOGTE ~ Q301=+1 ;VERPL.VEILIGH.HOOGTE ~ Q275=+Q23 ;MAXIMALE MAAT ~ Q276=+Q33 ;MINIMALE MAAT ~ Q279=+0 ;TOLERANTIE 1E MIDD. ~ Q280=+0 ;TOLERANTIE 2E MIDD. ~ Q281=+0 ;MEETPROTOCOL ~ Q309=+0 ;PGM-STOP BIJ FOUT ~ Q330=+0 ;GEREEDSCHAP ~ Q423=+4 ;AANTAL KEREN TASTEN ~ Q365=+1 ;TYPE VERPLAATSING 86 M140 MB MAX F9999 87 ;Sprong naar statusbepaling 88 FN 9: IF +1 EQU +1 GOTO LBL 16 89 ; 90 ;As meten 91 LBL 15 92 TCH PROBE 422 MET. CIRKEL BUITEN ~ Q273=+Q11 ;MIDDEN 1E AS ~ Q274=+Q21 ;MIDDEN 2E AS ~ Q262=+Q1 ;NOMINALE DIAMETER ~ Q325=+Q41 ;STARTHOEK ~ Q247=+90 ;HOEKSTAP ~ Q261=+Q31 ;MEETHOOGTE ~ Q320=+Q51 ;VEILIGHEIDSAFSTAND ~ Q260=+100 ;VEILIGE HOOGTE ~ Q301=+1 ;VERPL.VEILIGH.HOOGTE ~ Q277=+Q23 ;MAXIMALE MAAT ~ Q278=+Q33 ;MINIMALE MAAT ~ Q279=+0 ;TOLERANTIE 1E MIDD. ~ Q280=+0 ;TOLERANTIE 2E MIDD. ~ Q281=+0 ;MEETPROTOCOL ~ Q309=+0 ;PGM-STOP BIJ FOUT ~ Q330=+0 ;GEREEDSCHAP ~ Q423=+4 ;AANTAL KEREN TASTEN ~ Q365=+1 ;TYPE VERPLAATSING 93 M140 MB MAX F9999 94 ;Sprong naar statusbepaling 95 FN 9: IF +1 EQU +1 GOTO LBL 16 96 ; 97 LBL 16 98 ;Status bepalen 99 FN 9: IF +Q180 EQU +1 GOTO LBL 20 100 FN 9: IF +Q181 EQU +1 GOTO LBL 21 101 FN 9: IF +Q182 EQU +1 GOTO LBL 22 102 ; 103 LBL 20 QS3 = "GOED" 104 FN 9: IF +1 EQU +1 GOTO LBL 23 105 ; 106 LBL 21 QS3 = "NABEWERKING" 107 FN 9: IF +1 EQU +1 GOTO LBL 23 108 ; 109 LBL 22 QS3 = "AFGEKEURD" 110 FN 9: IF +1 EQU +1 GOTO LBL 23 111 ; 112 LBL 23 113 ;Tekst voor passing samenstellen QS2 = TOCHAR( DAT+Q1 DECIMALS0 ) || QS1 114 ; 115 ;Inhoud van het maskerbestand 82602_de.a op het beeldscherm weergeven 116 FN 16: F-PRINT 82602_nl.A / SCREEN: 117 ; 118 ;Einde van programma 119 END PGM 82601_NL MM