(Messe Höhendifferenz zwischen Werkstück Z-null und WL-Sensor) (und speichere das Ergebnis in der globalen Variablen #2010) (beliebiges Werkzeug einlegen und dieses Script starten) (Variable 2010 muss in der linuxcnc.var eingetragen sein, dann speichert er dauerhaft) o sub #1801=#<_ini[WERKZEUGWECHSEL]WL_POS_X> (Position Taster X) #1802=#<_ini[WERKZEUGWECHSEL]WL_POS_Y> (Position Taster Y) #1800=#<_ini[WERKZEUGWECHSEL]WL_POS_Z> (Position sicheres Z, knapp ueber dem WL Taster) #1804=#<_ini[WERKZEUGWECHSEL]WL_WEG_ZUM_SENSOR> M5 (Spindel stoppen) G54 (User Koord System auswaehlen) G90 (Absolute XYZ Werte verwenden) G0 (Eilgang) (bewege in Maschinen-Koordinaten über den WL-Sensor) G53 Z0 (erstmal in sicheres Z) G53 X#1801 Y#1802 (Taster XY Position, Z ist noch oben auf 0) G53 Z#1800 (Sichere Z Position ueber Taster) G43.1 Z0 (loesche aktuelle Tool Offsets) G91 (aktiviere inkrementellen Modus) G38.2 Z#1804 F300 (messen grob, motion.probe-input muss im HAL dem WL-Sensor-Eingang zugewiesen sein) G1 Z1.5 F100 (frei fahren) G38.2 Z-10 F25 (messen fein) (#5063 ist das getastete Z, im Werkstueck Koord.System G54) (#5063 gibt daher an um wieviel der WL Sensor zum Werkstück 0 versetzt ist) (#5223 ist der Offset vom G54 KoordSystem zum Maschinenkoord.System) #2010 = [#5063 + #5223] (WL Sensor Ansprechpunkt in Maschinen-Z speichern) G90 (wieder absolute XYZ Werte verwenden) G0 G53 Z0 (fahre Z in sichere Position) (msg, jetzt Werkstueck-Z0 ankratzen und G54-Z Nullen) o endsub M2