Machsupport Forum

Mach Discussion => General Mach Discussion => Topic started by: BClemens on April 04, 2009, 07:28:44 AM

Title: Which first - part or program?
Post by: BClemens on April 04, 2009, 07:28:44 AM
I had some problems when setting up a part - the program would not zero on the part zero. Even though the tool was sitting right on all zeroed axis, the screen showed it off zero in X and Y. The program had to be started and halted before Z lowered into the work, then the part could be correctly zeroed. I know this is basic but somehow I'm taking some steps in the wrong direction here. The proper sequence is to zero the part, then load the program or should it matter?

I've had some other quarks with Mach 3 as well. I edited a program to add a line to put the tool at X, Y zero at the beginning and the toolpath screen went blank on the 'program run' and 'toolpath' screens. Had to restart Mach 3 to recover the screens and re-home, and this happened several times. Also found that the zeroed X and Y were moving around - how can that be?

Bill C.
Title: Re: Which first - part or program?
Post by: Graham Waterworth on April 05, 2009, 04:56:30 AM
Lets start at the beginning,

what version of Mach are you running?

What is your machine?

How are you creating the g-code?

Graham
 
Title: Re: Which first - part or program?
Post by: BClemens on April 05, 2009, 05:20:24 AM
Running .022 on a dedicated book sized computer, machine is a converted knee mill with Bob Campbell BOB and G320's - US Digital encoders. Using KeyCreator NC. Once we get started, we do just fine - it's this zeroing that seems to keep muffing up. I run a Mazak at work once in a while and never have any trouble - but then this machine didn't cost that much!

This last episode, I left the computer running until the next evening to continue machining and still had a shift of X axis of .0230", which on this part didn't matter but this will not do for some future parts. Having to re-zero after every tool change is getting tedious then a restart once in a while as well....? Doesn't make much sense; during the run nothing is lost at all - radial finish cuts end without a blemish where they started even at .33 degree increments in 5 inch diameter. It's at the beginning that this happens especially if the program is already loaded before zeroing or re-zeroing the part. Doesn't seem to stay where it was zeroed.

Thanks,
Bill C.
Title: Re: Which first - part or program?
Post by: Graham Waterworth on April 05, 2009, 05:31:13 AM
What are you using for homing switches?

At the end of every run is the machine sent back to the home position?

Graham
Title: Re: Which first - part or program?
Post by: BClemens on April 05, 2009, 05:51:00 AM
Homing/limit switches at the home end of each axis with opposite limits as well. If changing to another set-up for another part, the machine is usually homed again and this is because of this problem since an initial homing is all that should be necessary. No, the machine is not sent home after the run.

The switches are mechanical micro roller switches. They're not super precision switches and will probably replace them in the near future but they are adequate for now - they work.

Bill C.
Title: Re: Which first - part or program?
Post by: ger21 on April 05, 2009, 07:43:06 AM
It sounds like the 0,0 point in your code is not where it's supposed to be, or not where you think it is??
Title: Re: Which first - part or program?
Post by: BClemens on April 05, 2009, 10:40:01 AM
That could be and I have changed the PP to put a 0,0 at the very beginning of the program hence forth. Will edit the older/new ones as well. Hope that's all it is - probably is....silly stuff that is easily forgotten. The clue may be that once the program starts, then X,Y are able to be zeroed...

Bill C.

Of all the things that I miss the most in getting older is my memory....can't remember the rest.
Title: Re: Which first - part or program?
Post by: vmax549 on April 05, 2009, 09:44:27 PM
Maker sure that you have turned off all offsets, tool and work. These can hid in the on state and get you every time.

Here I can set o,o anytime anywhere. Turn off the computer and come back next week and they are still correct.

It may be the way you have some settings in config concerning startup???

Just a thought, (;-) TP
Title: Re: Which first - part or program?
Post by: BClemens on April 06, 2009, 05:14:01 AM
Thanks, that's a good one and I'll check on it. Sounds very probable because as I remember the offset in X was the same number every time....

Bill C.
Title: Re: Which first - part or program?
Post by: jimpinder on April 08, 2009, 04:24:07 AM
Bill - I'll put my pennyworth in here - I don't know how relevant it is (or, to be fair, how much you already know of it, so forgive me if I repeat a lot you already know), but it might jog you memory.

The machine keeps it's position in Machine Co-ordinates. The only way this cam be altered is by homing you axis, which I think Graham  and others have mentioned.To this the machine adds (or subtracts) various offsets for programs, tools etc.but the display is always in the "raw" machine position.

This is no good for machining, and difficult for us to understand, because it contains data we do not need to know, therefore you then jog your machine to the position where you wish to start your program (usually the 0.0.0 position of the program) and then you zero the X Y and Z of the axis in Program Co-ordinates

The two sets of DRO's are the same DRO's, they just change function as you press the machine co-ords button. If you are saying you cannot zero your DRO's. you are probably looking at the Machine Co-ords (which you cannot zero except as in para 2) and not the program co-ords, (which you can). I have altered the display on my machine. The main display shows Program Co-ordinates, and underneath, I have put a small second set of DRO.s which display Machine Co-ordinates, so I do not need to swap between the two.

Once you have zeroed the program co-ords, the "offset" between the machine position and the program position is recorded. The default offset is G54
, and if you check the fixtures list (Config/fixtures), you will find that G54 now shows the difference between the program co-ords and the machine co-ords. If you are to use this offset in a program, then you should select a different  offset, before you zero the program co-ords DRO's - e.g. G56. If you then enter this in your program at the begining, the machine will always to to the correct start point for that program.

E.G. G56
G0 X0 Y0 Z0

The way to start is then "home the machine" which sets the machine co-ords at their zero position, and then run the program. The G56 runs in the correct offset and the G0 move moves the axis to the correct 0.0.0 position for that program.

(The co-ordinates shown in your program are always "Program Co-ordinates" unles they are particularly specified to be absolute co-ordinates, for example, tool change positions for automatic tool changers)

In this way, each program can have it's correct offset programmed in (there are 256 to choose from). If for instance, you use some form of workpiece holder, then one offset might suffice for several different programs.

Running the program without homing will not make any difference (providing the home position has not slipped) since the last offset the machine enters is the one it follows.











 




Title: Re: Which first - part or program?
Post by: BClemens on April 08, 2009, 05:34:34 AM
jimpinder,

I basically have no need for offsets since 99% of what I do is one-offs. I use two different computers to write my code and try to maintain the same (modified or evolved) post processor but found on close scrutiny that I have been using two different PP's for code. The one that threw me had a G58 X (   ) Y (    ) that I wasn't aware of. So, the offset was there as it was supposed to be but in the wrong place. I have 'standardized' these PP's and just locate the program at 0,0 at the beginning and again at the end.

All I needed to do was lean back so these bi-foculs were being utilized.

Thanks very much for the explanation, and help. Much appreciated!

Bill C.