problem with post processor....i think

hi! so i have a problem i believe is with my post processor. i have a free float head with only 1 switch for the probe and it is working perfect…here is what happens. i get x and y zeroed out where i want…no problems with them it is only the z axis…z goes and finds zero with the probe, then it zooms up around an inch and sets zero with a g92 …then it raises the tool height of 0.06 and reads this on the dro but in settings the g92 collum has numbers…so all in all i cant cut anything with the torch 1+" above the material.

here is my pp:

function OnAbout(event)
ctrl = event:GetTextCtrl()
ctrl:AppendText(“plasma AVHC10 post processor\n”)
ctrl:AppendText(“\n”)
ctrl:AppendText(“Modal G-codes and coordinates\n”)
ctrl:AppendText(“Comments enclosed with ( and )\n”)
ctrl:AppendText(“M03/M05 turn the torch on/off\n”)
ctrl:AppendText(“Incremental IJ\n”)
ctrl:AppendText(“The torch is referenced at cut start and every 500mm of movement thereafter\n”)
ctrl:AppendText(“Designed for use with Mach3 and PriceCNC AVHC10\n”)
ctrl:AppendText(“Post variables:\n”)
ctrl:AppendText(“refdistance - set the distance between each reference\n”)
end



– revision 3/2/07
– Removed final safety move. This is now done in SheetCam

– revision 7/10/05
– Added new arc handling

– created 27/10/04
– Based on plasma1.post



function OnInit()

post.SetCommentChars (“()”, “”) --make sure ( and ) characters do not appear in system text
post.Text (" (Filename: “, fileName, “)\n”)
post.Text (” (Post processor: “, postName, “)\n”)
post.Text (” (Date: “, date, “)\n”)
if(scale == metric) then
post.Text (” G21 (Units: Metric)\n") --metric mode
else
post.Text (" G20 (Units: Inches)\n") --inch mode
end
post.Text (" G53 G90 G40\n F1\n S500\n")


switchoffset = 0.7
bigarcs = 1 --stitch arc segments together
minArcSize = 0.05 --arcs smaller than this are converted to moves
end

function OnNewLine()
post.Text (“N”)
post.Number (lineNumber, “0000”)
lineNumber = lineNumber + 10
end


function OnFinish()
post.Text (" M05 M30\n")
end

function OnRapid()
if(math.hypot(endX-currentX , endY-currentY) < 0.001 and endZ < currentZ) then return end
post.ModalText (" G00")
post.ModalNumber (" X", endX * scale, “0.0000”)
post.ModalNumber (" Y", endY * scale, “0.0000”)
post.ModalNumber (" Z", endZ * scale, “0.0000”)
post.Eol()
end

function OnMove()
post.ModalText (" G01")
post.ModalNumber (" X", endX * scale, “0.0000”)
post.ModalNumber (" Y", endY * scale, “0.0000”)
post.ModalNumber (" Z", endZ * scale, “0.0000”)
post.ModalNumber (" F", feedRate * scale, “0.0###”)
post.Eol()
end

function OnArc()
if(arcAngle <0) then
post.ModalText (" G03")
else
post.ModalText (" G02")
end
post.NonModalNumber (" X", endX * scale, “0.0000”)
post.NonModalNumber (" Y", endY * scale, “0.0000”)
post.ModalNumber (" Z", endZ * scale, “0.0000”)
post.Text (" I")
post.Number ((arcCentreX - currentX) * scale, “0.0000”)
post.Text (" J")
post.Number ((arcCentreY - currentY) * scale, “0.0000”)
post.ModalNumber (" F", feedRate * scale, “0.0###”)
post.Eol()
end


function OnPenDown()

post.ModalText(" G31 Z -100")
post.ModalNumber (" F", 500 * scale, “0.0###”)
post.Eol()
post.ModalText(" G92 Z0.0\n")
post.ModalText (" G00")
post.ModalNumber(" Z", switchoffset, “0.0000”)
post.Eol()
post.ModalText(" G92 Z0.0\n")
post.CancelModalNumbers()
post.ModalText (" G00")
post.ModalNumber (" X", endX * scale, “0.0000”)
post.ModalNumber (" Y", endY * scale, “0.0000”)
post.ModalNumber (" Z", pierceHeight * scale, “0.0000”)
post.Eol()

post.Text (“\n M03\n”)

end


function OnPenUp()
post.Text (" M05\n")
if (endDelay > 0) then
post.Text (" G04 P")
post.Number (endDelay,“0.###”)
post.Eol()
end
end


function OnNewOperation()
post.Text (" (Process: ", operationName, “)\n”)
end

function OnComment()
post.Text(" (“,commentText,”)\n")
end

function OnToolChange()
post.Text (" M06 T")
post.Number (tool, “0”)
post.Text (" (", toolName, “)\n”)
end

function OnNewPart()
post.Text(" (Part: “,partName,”)\n");
end

function OnDrill()
OnRapid()
OnPenDown()
endZ = drillZ
OnMove()
OnPenUp()
endZ = safeZ
OnRapid()
end


no idea how to add a pic maybe im doing that wrong too :frowning:

hi email me at xtreme.eng@btconnect.com
i will send you the post we use on the pricecnc thc
here is my product http://www.r-techwelding.co.uk/r-tech-cnc-plasma-cutting-machine-system-4ft-x-4ft/

This line is the problem:

switchoffset = 0.7

. Place a sheet of metal on the table then put a sheet of paper on top. Slowly jog the torch down onto the paper until the touch-off switch operates. Zero the Z axis then slowly jog up while gently pulling on the paper. Stop when the paper slides out. The Z axis dro will show the correct switch offset.