Plate marker post processing help

SheetCam related questions and tips can be posted here
Post Reply
222Built
1/2 Star Member
1/2 Star Member
Posts: 3
Joined: Wed Dec 11, 2019 3:53 pm

Plate marker post processing help

Post by 222Built »

Hey everyone I am in the process of building an air scribe plate marker for my table. I understand the mechanics of it the hose routing and how to wire it. I’m just having a hard time figuring out the sheetcam and Mach 3 programing part.

I am using pin 16 on my break out board to a relay to trigger the solenoid to power the air scribe. I created a new tool in sheetcam made the tool number over 100. Now I need to get into post processing and I am getting quickly over my head.

I’m using a premiere plasma table and have that selected on the post processing section. All of the research I have done everyone seems to be able to select there machine with the plate marker from the drop down menu because I’m assuming its an option with there machine.

Is there a way I can add the plate marker to the premier plasma post process I have selected?

Or can I choose a generic plasma cutter and plate marker from the drop down menu? Id assume I can’t do that because id loose all premiers settings
Les Newell
2.5 Star Member
2.5 Star Member
Posts: 179
Joined: Tue Mar 22, 2016 10:30 am

Re: Plate marker post processing help

Post by Les Newell »

I don'd have a copy of the Premier plasma post processor. Could you send me a copy. I'll take a look and see if they have implemented air scribing.
222Built
1/2 Star Member
1/2 Star Member
Posts: 3
Joined: Wed Dec 11, 2019 3:53 pm

Re: Plate marker post processing help

Post by 222Built »

Thank you I messaged you a copy also.
excuse me if I don't use the correct terminology I know nothing about post processing or g code.
again what I'm trying to do is create a plate marker tool in sheetcam that activates pin 16 through mach 3


function OnAbout(event)
ctrl = event:GetTextCtrl()
ctrl:AppendText("For use with ProTorch CNC Plasma cutting tables")

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")

dist = 9999999
refdistance = 150 * scale
switchoffset = -0.20
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
dist = dist + math.hypot(endX-currentX , endY-currentY)
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()
dist = dist + math.hypot(endX-currentX , endY-currentY)
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.###")
post.Eol()
end

function OnArc()
dist = dist + math.hypot(endX-currentX , endY-currentY)
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()
if(dist >= (refdistance/scale)) then
dist = 0
post.ModalText(" G31 Z -100")
post.ModalNumber (" F", 500 * scale, "0.0###")
post.Eol()
post.ModalText(" G92")
post.NonModalNumber(" Z", switchoffset, "0.00")
post.Eol()
post.CancelModalNumbers()
end
--[[ post.ModalText (" G00")
post.ModalNumber (" X", endX * scale, "0.0000")
post.ModalNumber (" Y", endY * scale, "0.0000")
post.Eol()]]
if (preheat > 0) then
post.ModalText (" G00")
post.ModalNumber (" Z", cutHeight * scale, "0.0000")
post.Eol()
post.Text(" M801\n G04 P 0.5\n M802\n G04 P0.1\n M902")
post.Text ("\n G04 P")
post.Number (preheat,"0.###")
post.Eol()
end
post.ModalText (" G00")
post.ModalNumber (" Z", pierceHeight * scale, "0.0000")
post.Text ("\n M03\n")
if (pierceDelay > 0) then
post.Text (" G04 P")
post.Number (pierceDelay,"0.###")
post.Eol()
end
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")
if (plungeRate <= 0) then
post.Warning("WARNING: Plunge rate is zero")
end
if (feedRate <= 0) then
post.Warning("WARNING: Feed rate is zero")
end
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
Les Newell
2.5 Star Member
2.5 Star Member
Posts: 179
Joined: Tue Mar 22, 2016 10:30 am

Re: Plate marker post processing help

Post by Les Newell »

In SheetCam go to Options->machine->post processor and select the 'Mach3 THC with scriber' post. Next click on the 'Edit post' button.
Near the start of the file are a number of configuration options. Use these settings:
useRef = true
refHome = false
refDistance = 150
refFeed = 500
switchOffset = 5.08
scriberX,scriberY,scriberZ to suit your scriber. The are the offset of the scriber from the torch tip.
scriberAxis = nil

This assumes your scriber is mounted to the Z axis on a slide that goes down when the coolant output turns on. In other words, pin 16 needs to be configured as the coolant output.
Post Reply

Return to “SheetCam”