************************************************************************************

        NC-Saetze der Mess-Zyklen fr Siemens840D-Steuerungen

        DATUM   :   3.5.2015
                    letzte Erweiterung:  28.7.2015

        Copyright (C) 2015  AdCAM Technologies GmbH

************************************************************************************

Parameter:
#<DIST>    : Messabstand
#<ANGLE[]> : Winkel fr Messvorgang 1...n
#<M_POS[]> : Messpositionen 1...n

#<MESS()>  : Messvorgang bei '<M_POS[]> mit #<ANGLE[]> und #<DIST>

Sprungmarken mssen 2-stellig sein

*************************************************************************************

[CYCLE977 _MVAR=xxx1]  Bohrung messen
?(M_MVAR<900) GOTO 10
G1 X#<M_POS[0].x> Y#<M_POS[0].y> F#<eilVorschub>
10:
G1 Z#<M_POS[0].z+M_ID> F#<eilVorschub>
G1 X#<M_POS[0].x> Y#<M_POS[0].y>
#<MESS(0,0)>
?(M_MVAR<900) GOTO 20
G1 Z#<M_POS[1].z>
G1 X#<M_POS[1].x> Y#<M_POS[1].y>
G1 Z#<M_POS[1].z+M_ID>
GOTO 21
20:
G1 X#<M_POS[1].x> Y#<M_POS[1].y>
21:
#<MESS(1,1)>
?(M_MVAR<900) GOTO 30
G1 Z#<M_POS[2].z>
G1 X#<M_POS[2].x> Y#<M_POS[2].y>
G1 Z#<M_POS[2].z+M_ID>
GOTO 31
30:
G1 X#<M_POS[2].x> Y#<M_POS[2].y>
31:
#<MESS(2,2)>
?(M_MVAR<900) GOTO 40
G1 Z#<M_POS[3].z>
G1 X#<M_POS[3].x> Y#<M_POS[3].y>
G1 Z#<M_POS[3].z+M_ID>
GOTO 41
40:
G1 X#<M_POS[3].x> Y#<M_POS[3].y>
41:
#<MESS(3,3)>
G1 Z#<M_POS[0].z> F#<eilVorschub>

[CYCLE977 _MVAR=xxx2]  Welle messen
G1 X#<M_POS[0].x> Y#<M_POS[0].y> F#<eilVorschub>
G1 Z#<M_POS[0].z+M_ID>
#<MESS(0,0)>
G1 Z#<M_POS[1].z>
G1 X#<M_POS[1].x> Y#<M_POS[1].y> F#<eilVorschub>
G1 Z#<M_POS[1].z+M_ID>
#<MESS(1,1)>
G1 Z#<M_POS[2].z>
G1 X#<M_POS[2].x> Y#<M_POS[2].y> F#<eilVorschub>
G1 Z#<M_POS[2].z+M_ID>
#<MESS(2,2)>
G1 Z#<M_POS[3].z>
G1 X#<M_POS[3].x> Y#<M_POS[3].y> F#<eilVorschub>
G1 Z#<M_POS[3].z+M_ID>
#<MESS(3,3)>
G1 Z#<M_POS[0].z> F#<eilVorschub>

[CYCLE977 _MVAR=xxx3]  Nut messen
G1 Z#<M_POS[0].z+M_ID> F#<eilVorschub>
G1 X#<M_POS[0].x> Y#<M_POS[0].y>
#<MESS(0,0)>
G1 X#<M_POS[1].x> Y#<M_POS[1].y>
#<MESS(1,1)>
G1 Z#<M_POS[0].z> F#<eilVorschub>

[CYCLE977 _MVAR=xxx4]  Steg messen
G1 X#<M_POS[0].x> Y#<M_POS[0].y> F#<eilVorschub>
G1 Z#<M_POS[0].z+M_ID>
#<MESS(0,0)>
G1 Z#<M_POS[1].z>
G1 X#<M_POS[1].x> Y#<M_POS[1].y>
G1 Z#<M_POS[1].z+M_ID>
#<MESS(1,1)>
G1 Z#<M_POS[1].z> F#<eilVorschub>

[CYCLE977 _MVAR=xxx5]  Rechteck innen messen
?(M_MVAR<900) GOTO 10
G1 X#<M_POS[0].x> Y#<M_POS[0].y> F#<eilVorschub>
10:
G1 Z#<M_POS[0].z+M_ID> F#<eilVorschub>
G1 X#<M_POS[0].x> Y#<M_POS[0].y>
#<MESS(0,0)>
?(M_MVAR<900) GOTO 20
G1 Z#<M_POS[1].z>
G1 X#<M_POS[1].x> Y#<M_POS[1].y>
G1 Z#<M_POS[1].z+M_ID>
GOTO 21
20:
G1 X#<M_POS[1].x> Y#<M_POS[1].y>
21:
#<MESS(1,1)>
?(M_MVAR<900) GOTO 30
G1 Z#<M_POS[2].z>
G1 X#<M_POS[2].x> Y#<M_POS[2].y>
G1 Z#<M_POS[2].z+M_ID>
GOTO 31
30:
G1 X#<M_POS[2].x> Y#<M_POS[2].y>
31:
#<MESS(2,2)>
?(M_MVAR<900) GOTO 40
G1 Z#<M_POS[3].z>
G1 X#<M_POS[3].x> Y#<M_POS[3].y>
G1 Z#<M_POS[3].z+M_ID>
GOTO 41
40:
G1 X#<M_POS[3].x> Y#<M_POS[3].y>
41:
#<MESS(3,3)>
G1 Z#<M_POS[0].z> F#<eilVorschub>

[CYCLE977 _MVAR=xxx6]  Rechteck auen messen
G1 X#<M_POS[0].x> Y#<M_POS[0].y> F#<eilVorschub>
G1 Z#<M_POS[0].z+M_ID>
#<MESS(0,0)>
G1 Z#<M_POS[1].z>
G1 X#<M_POS[1].x> Y#<M_POS[1].y> F#<eilVorschub>
G1 Z#<M_POS[1].z+M_ID>
#<MESS(1,1)>
G1 Z#<M_POS[2].z>
G1 X#<M_POS[2].x> Y#<M_POS[2].y> F#<eilVorschub>
G1 Z#<M_POS[2].z+M_ID>
#<MESS(2,2)>
G1 Z#<M_POS[3].z>
G1 X#<M_POS[3].x> Y#<M_POS[3].y> F#<eilVorschub>
G1 Z#<M_POS[3].z+M_ID>
#<MESS(3,3)>
G1 Z#<M_POS[0].z> F#<eilVorschub>

[CYCLE978]  1-Punkt-Messung oder NV-Ermittlung an Flche
?(M_MA=3) GOTO 10
G1 Y#<M_POS[0].y> F#<eilVorschub>
#<MESS(0,0)>
GOTO 20
10:
G1 Z#<M_POS[0].z> F#<eilVorschub>
G1 Z#<M_SETVAL> F#<antastVorschub>
G1 Z#<M_POS[0].z> F#<eilVorschub>
20:

[]