Programmierbeispiel

Programmierbeispiel

prg_example

Ebene ausrichten

; touchprobe activtion

T1 D1

 

; deactivation of the zero offset

G53

 

; positioning to the starting point

G00 G90 X1400 Y-65 Z735

 

#VAR

  ; input parameters:

  V.L.MeasDistZ  =  40

  V.L.NumberCS   =   2

  V.L.PrePosX1   =  30

  V.L.PrePosY1   =  30

  V.L.PrePosX2   =  40

  V.L.PrePosX3   =  60

  V.L.PrePosY3   =  50

 

  ; output variables:

  V.CYC.SysRetX

  V.CYC.SysRetY

  V.CYC.SysRetZ

  V.CYC.SysRetA

  V.CYC.SysRetB

  V.CYC.SysRetC

#ENDVAR

 

L CYCLE [NAME=SysMeasCs4.ecy  @P6=V.L.MeasDistZ @P17=V.L.PrePosX1 \

                              @P18=V.L.PrePosY1 @P39=V.L.NumberCS \

                              @P41=V.L.PrePosX2 @P42=V.L.PrePosX3 \

                              @P44=V.L.PrePosY3]

 

; print result

#FILE NAME [MSG="SysMeaCsResult.txt"]

#MSG SAVE ["V.CYC.SysRetX =%f", V.CYC.SysRetX]

#MSG SAVE ["V.CYC.SysRetY =%f", V.CYC.SysRetY]

#MSG SAVE ["V.CYC.SysRetZ =%f", V.CYC.SysRetZ]

#MSG SAVE ["V.CYC.SysRetA =%f", V.CYC.SysRetA]

#MSG SAVE ["V.CYC.SysRetB =%f", V.CYC.SysRetB]

#MSG SAVE ["V.CYC.SysRetC =%f", V.CYC.SysRetC]

 

; calling the #CS by the soubroutine written in the cycle

L CS_BASE_2.bcs

; ... machining workpiece with measured coordinate system ....

#CS OFF

 

M30

Beispiel eines erzeugten Programms:

%CS_BASE_2.bcs

#COMMENT BEGIN

CS X = 1430

CS Y = -35

CS Z = 734.992

CS A = 0

CS B = 0

CS C = -0.0222

#COMMENT END

#CS DEF [2][1430,-35,734.992,0,0,0]

#CS ON [2]

M17

Ein weiteres Beispiel zur Handhabung der SysMeasCs-Zyklen ist im Übersichtskapitel im Unterpunkt Programmierung zu finden.