I find that when my machine comes to a tool change, it goes up against the stops buzzes a bit, then starts to cut way off in the X and y axes. The Z axis seems Ok. Any ideas?
I find that when my machine comes to a tool change, it goes up against the stops buzzes a bit, then starts to cut way off in the X and y axes. The Z axis seems Ok. Any ideas?
Post your G-code. Most likely, the code is sending the machine to a toolchange position that is out of range. Or, if the code is doing a G53 or G28 move, and you haven't homed the machine it will also go off in left field.
Regards,
Ray L.
Hi,
i tied to post my G-code, but I got an "Invalid File" message. I don't know how to get around this. So I cut and pasted the lines around the tool change.
N137230G0Z.6
N137240M9
N137250Z.8925
N137260X-.6571Y.4806
N137270( ================= )
N137280( TOOLPATH : 2 )
N137290( STRATEGY USED : Surface_machine )
N137300( TOOLPATH WP : 1 )
N137310( ================= )
N137320G91G28Z0
N137330G49H0
N137340G28X-.6571Y.4806
N137350( TOOL TYPE : BALLNOSED )
N137360( TOOL NAME : 2 )
N137370( TOOL DIA.: 0.5 & TIP RAD.: 0.25 )
N137380T2M6
N137390G54G90
N137400S2700M3
N137410M8
N137420G0X-.6571Y.4806
Your problem is almost certainly the G28 moves in that code. How are you generating the code? What CAM and what POST are you using?
G91 G28 Z0 => Tells the machine to move the X and Y axes to their "home" position, which is normally X to its most negative position (table fully right), Y at its most negative position (table fully forward).
G28 X-.6571 Y.4806 => This is odd, because it's telling the machine to move PAST the X home position by 0.6571", and the move Y 0.4806" away from the home position.
Jusy to get going, ou can manually remove these lines, and replace them with simple rapids (G0 moves) to any safe, convenient position for doing the toolchange. For example, G0 X0 Y0 Z4. You can also replace them with a G53 move G53 G0 Z0, which will simply move the head all the way up.
You really need to get a different/better POST for your CAM.
You can post G-code here by simply changing the file extension to .txt, and any of the other extensions the uploader will accept.
Regards,
Ray L.
Hi,
Thanks for the help. I have attached the G-code and a Step file of the part I am using. As you can imagine I am having trouble getting a started with this.
I am also having a problem at the start. The tool seems to dive into the work. I don't understand the G43 code in line N370. What does the Z value mean? the tool seems to dive about 7/16", which is this Z value.
I am using PowerMill with their Fanuc post processor. I got a free demo copy of this because I teach at the local university (University of New Brunswick) part time. I think it may be too complex and problematic. What CAM program do you use?
G43 applies tool length compensation. It tells Mach3 that the current tool is 7/16" long, which shifts the Z axis down by that distance. If you're new to this, you're better off setting all tool lengths to zero, and simply zeroing each tool to your Z reference surface when you load the tool.
I'm now using Solidworks and HSMXpress, but PowerMmill should work fine, once you get a more appropriate POST. Look for either a Mach2/Mach3 post, or a very basic post with no frills, manual toolchanges, etc. I'm sure there's a PowerMill forum in the CAM forums section here, and someone there could help you pick a better post. Or go to the ArtSoft forum (Newfangled Solutions » CNC Software Home of Mach3) and somewhere there will likely know.
Regards,
Ray L.
Does Mach3 handle g28 incorrectly? an XY location output with g91/g28 should be applied as an incremental intermediate position, prior to a move to the home position. I.E, that move should cause an incremental move from the existing position by X-.651 Y+.4806, THEN a move directly to the home position. It's often misunderstood that that move would cause a single move to an offset position FROM the G28 position, so I wouldnt be surprised if Mach got it wrong..
Understanding G27, G28, G29 and G30 : Modern Machine Shop
You are correct, but.... Note that the move in question is the SECOND G28 move, so it is executed when the X axis is ALREADY at its home position. So the second G28 sends the X axis beyond the home position by >5/8".
I don't know if Mach3 handles G28 correctly or not, I've never used it. I just use G53 instead.
Regards,
Ray L.
I didn't actually read the code or anything, now that I look at it, its definitely incorrect and is certainly the issue. Rather than g28, that line should occur after the work offset is applied, and definitely not with a G28
I've never had a problem with mach g28. Seems like it just a static position it goes to whenever its called.
"For example, G0 X0 Y0 Z4."
Just a quick question/concern about this: Won't this move the machine directly to the 0, 0, 0 point or will it lift the head first? It it doesn't lift the head first it would be better to do it as two separate moves...
G0 Z0
G0 X0 Y0
No biggie, just thought I'd throw that out there.
If you have a safe Z setting in Mach, I'm pretty sure any first move takes the Z there, then proceeds to X and Y moves.
Lee
I think I found the problem. The code has a G91/G28 command. During the next few lines it seems to get lost on the X and Y axes, then there is a G90 Command. If I put a G90 command line right after the G91/G28, it works fine.
I wouldn't do it that way, that creates a g90/g28 a few lines later. The second instance of g28 simply SHOULD NOT be present, and the X,Y move that occurs with it should be occur after the work offset is called up.
It might work fine as is when executed completely and from the start, but code should be structured to allow mid-program starts from at least a few logical places (typically tool changes) without having loud noises followed by empty pockets.