Hello!
I need to adjust SheetCAM postprocessor for 2 different waterjet cutting machines. I am using "EMC plasma" postprocessor as my starting point, because they run LinuxCNC. One machine has weak Z axis motor, so I need to limit the velocity for Z axis moves, which I intend to do by using G01 (and set the feedrate in postprocessor as that does not need to change), instead of G00. For the other machine I need to insert specific command, when lifting and another command, when lowering the nozzle instead of particular Z coordinate. For both of these customizations I intend to use "OnPenDown()" and "OnPenUp()" functions (I did some tests and that part seemed good). But existing config of "OnRapid()" interferes with my plan, so I have 2 questions about SheetCAM postprocessors:
1) how can I remove Z axis from "OnRapid()" function?
I tried by removing this line from "OnRapid()":
post.ModalNumber (" Z", (endZ + toolOffset) * scale, "0.0000")
But the problem with this approach is that it does leave a blank "G00 " command, when it wants to move Z axis, for example, at the very beginning, when lifting Z to rapid clearance plane etc.
2) there are "cutHeight" and "pierceHeight" variables used in postprocessor; is there such a variable for rapid clearance height? I already figured out, that "rapidHeight" does not exist
Thanks in advance!
2 questions about postprocessors - need to customize them
-
- Posts: 9
- Joined: Wed Sep 17, 2014 11:29 am
- Les Newell
- Site Admin
- Posts: 3661
- Joined: Thu May 11, 2006 8:12 pm
Re: 2 questions about postprocessors - need to customize the
It would be better to limit the motor's speed in LinuxCNC. Doing it in the post is not ideal but if you have to do it that way you can do something like this:viesturs.lacis wrote:One machine has weak Z axis motor, so I need to limit the velocity for Z axis moves, which I intend to do by using G01 (and set the feedrate in postprocessor as that does not need to change), instead of G00.
Code: Select all
if (endZ == currentZ) then --if Z axis doesn't move
post.ModalText(" G00")
else
post.ModalText(" G01")
post.ModalNumber (" F", 1000 * scale, "0.###")
end
Use this:1) how can I remove Z axis from "OnRapid()" function?
I tried by removing this line from "OnRapid()":
post.ModalNumber (" Z", (endZ + toolOffset) * scale, "0.0000")
But the problem with this approach is that it does leave a blank "G00 " command, when it wants to move Z axis, for example, at the very beginning, when lifting Z to rapid clearance plane etc.
Code: Select all
function OnRapid()
if(math.hypot(endX - currentX, endY - currentY) < 0.001) then return end
For historical reasons this variable is called safeZ.2) there are "cutHeight" and "pierceHeight" variables used in postprocessor; is there such a variable for rapid clearance height? I already figured out, that "rapidHeight" does not exist
If you go to Options->machine->post processor and click on the 'Post documentation' button you will see a list of the available functions and variables.
-
- Posts: 9
- Joined: Wed Sep 17, 2014 11:29 am
Re: 2 questions about postprocessors - need to customize the
Yes, of course, and that is what I tried. That means that maxvel and maxaccel settings for particular joint are smaller than maxvel and maxaccel in [TRAJ] section of INI file (so that it does not slow down movement in XY plane). The problem is that for some reason I do not yet know, all rapids are done at limits, specified in [TRAJ] even if it exceeds joints' limitations. So that is why I am trying doing this in postprocessor.Les Newell wrote:It would be better to limit the motor's speed in LinuxCNC.
Thank you, Les, for suggestions, I will give them a try!
-
- Posts: 1
- Joined: Wed Sep 23, 2015 7:39 pm
POS PROCESSADOR
GOSTARIA DE UMA AJUDA NA EDIÇAO DO POS;
PRECISO GERAR O CODIGO G;
INICIE COM %
FINALIZE COM #
INTERPOLAÇÃO COMO G1
G98 OXICORTE
POSSUO SOMENTE X E Y
PRECISO GERAR O CODIGO G;
INICIE COM %
FINALIZE COM #
INTERPOLAÇÃO COMO G1
G98 OXICORTE
POSSUO SOMENTE X E Y