What is the "proper" zero origin

More
11 Aug 2023 02:46 - 11 Aug 2023 02:51 #277590 by blazini36
What is the "proper" zero origin was created by blazini36
I'm not asking about how to setup the ini for the soft limits and home offset and all of that stuff or where "home" is, I've got that under control, I'm talking specifically about machine coordinates. I've never really been concerned about what "zero" actually is since you're usually working under offsets, but I'm working on my a PnP machine that's running OpenPnP on top of LinuxCNC and since OpenPnP has it's own idea of how everything is supposed to go I wanna make sure I'm "right" in LinuxCNC.

The Z on this machine is weird, it's a see-saw and zero on this Z is the absolute center. I'm not concerned about the Z on this machine but for arguments sake on a mill I would expect to call Z-0 the topmost point it can reach inside of soft limits, or basically the Maximum soft limit. So the Z in machine coordinates will never travel positive of 0, it will always be negative or 0.

The X positive direction is to the right of the operator, the Y positive direction is away from the operator. So X0 Y0 in machine coordinates should be the corner to the left and toward the operator and all travel should be called positive or basically the minimum soft limit.

"Home" is just some arbitrary point where I like everything to be after it's done it's thing.

I realize that specific cartesian machines might have some reason to be slightly negative in XY or positive in Z but in general is the above correct or is the machine zero origin supposed to be the absolute center or something? Like if you went out and purchased a VMC, how would it be set?



 
Last edit: 11 Aug 2023 02:51 by blazini36.

Please Log in or Create an account to join the conversation.

More
11 Aug 2023 04:07 #277594 by spumco
Replied by spumco on topic What is the "proper" zero origin

Like if you went out and purchased a VMC, how would it be set?

 


Depends on the manufacturer, but generally the homing switch is at the top...so machine Z-zero is at the top.  My LCNC-brained mill has the home switch at the top, and Z-zero about .125" below the end of the ballscrew travel.

One I've used has the home switch close to the top, but about an inch below the top limit switch.  The control still sets machine Z-zero just before the limit switch (above the home switch).

Another one has an ATC like a Robodrill or Brother Speedio - those have mechanical drawbar releases that use the Z-axis to lever the tool clamp open.  Machine Z-zero is just below the point where the drawbar mechanism is engaged.  So there is another 3"(ish) of available travel in Z, but you couldn't use it without dropping the tool.

And the two I've watched (but not operated) with absolute encoders still have machine Z-zero at the top.  No home switch, but they've been programmed to search for the absolute position at the top.

In your case, the see-saw means you are never going to use (or care about) any Z-distance above the halfway point.  If you tried to grab a tall component and move it across a tall PCB assembly (using space above the halfway point), the other side of the Z-slide might drag on something.

Please Log in or Create an account to join the conversation.

More
11 Aug 2023 04:20 #277597 by spumco
Replied by spumco on topic What is the "proper" zero origin
Forgot to mention the X/Y positions...

Every machine I've used where the table moves (mill) has machine zero with the table at the front left.  So all machine X/Y/Z values are negative: Z-zero is tool at top and at the back right (table at front left).

The gantry types (router, plasma) are usually set up 'oddball'.  The gantry moves away from the operator during homing (depending on where the operator is supposed to stand).  Some set machine X/Y zero at the back left (where the homing finishes), and some offset it so machine zero is at the front left - but don't move the head/gantry when homing is done.

I think gantry machines are set up like this for safety so if the operator forgets what's supposed to happen during homing its less likely they'll have something big and nasty moving towards them.

I've not used a fixed gantry machine, and lathes are simple: move the tool as far away from the spindle as possible and set X/Z (and maybe Y) zero.

Please Log in or Create an account to join the conversation.

More
11 Aug 2023 05:29 - 11 Aug 2023 05:38 #277602 by blazini36
Replied by blazini36 on topic What is the "proper" zero origin
So I think you're mostly saying that "zero" is arbitrary, but zero is generally where the home switches are?

I never use home switches, I generally don't see the point. I've always homed to a limit and called "home" some place relative to that.

This PnP is a "gantry" machine and I like home at the rear left. That's where I get confused being used to a mill.

What I call 0 and the limit switches my machine homes against are the left-front. Home is something like X=10mm Y=400mm which is to the back left close to limit switches, but not at soft limits. I think that's actually wrong, I'll have to redo the directions.

I confused the above a bit because on a mill you move the work, on a gantry you move the head so now that I think about it on a gantry when the head is at rear right it would be the same as a mill table being in the front left? So "0" on this thing should actually be the back right?
Last edit: 11 Aug 2023 05:38 by blazini36.

Please Log in or Create an account to join the conversation.

  • tommylight
  • tommylight's Avatar
  • Away
  • Moderator
  • Moderator
More
11 Aug 2023 10:03 #277627 by tommylight
Replied by tommylight on topic What is the "proper" zero origin
Just to add to confusion, some old mill had 0 in the middle of the table, so everything in gcode had to be for example -50 to 50 for a 100mm line.
I still wonder who was the genious that came with that idea. :)
The following user(s) said Thank You: spumco

Please Log in or Create an account to join the conversation.

More
11 Aug 2023 11:38 #277631 by spumco
Replied by spumco on topic What is the "proper" zero origin

So I think you're mostly saying that "zero" is arbitrary, but zero is generally where the home switches are?


I confused the above a bit because on a mill you move the work, on a gantry you move the head so now that I think about it on a gantry when the head is at rear right it would be the same as a mill table being in the front left? So "0" on this thing should actually be the back right?
 


Yes.  Zero is arbitrary, but tends to follow what I outlined.  And as Tommy mentioned there are always exceptions.

Regarding home switches - no, I don't see the point of having separate home switches (i.e. 3 switches per axis).  But in all the cases I mentioned (except for one mill using Acramatic 2100 ) the 'home' switch mentioned isn't a separate switch.  It's just one of the limit switches acting as a reference point (home) during homing/referencing.

In your case, I think machine reference point should be with the gantry away from the operator, and the head all the way to the right. During homing both X and Y move in positive directions (Z first, then Y, then X).

I would then use LCNC's homing sequence feature to offset 'machine zero' by the travel extent.  For a 24x24 travel machine, if you press "home-all' the machine moves Z-up, then moves back in Y (pos), then the head moves to the right (X pos).  The DRO then reads X24 Y25 Z0.

That way all machine positions are positive, except Z. Leverage LCNC's ability to differentiate between machine 'Zero' and the physical reference location.

Please Log in or Create an account to join the conversation.

More
11 Aug 2023 14:09 #277641 by chris@cnc
Replied by chris@cnc on topic What is the "proper" zero origin

I would then use LCNC's homing sequence feature to offset 'machine zero' by the travel extent.  For a 24x24 travel machine, if you press "home-all' the machine moves Z-up, then moves back in Y (pos), then the head moves to the right (X pos).  The DRO then reads X24 Y25 Z0.

That way all machine positions are positive, except Z. Leverage LCNC's ability to differentiate between machine 'Zero' and the physical reference location.


 

Yes that is a good choice. Technical background is that the zero point is where it can be restored after an accident. This saves a lot of time and trouble with the next positions such as ATC or pallet changer.
Example milling. Locate the center of the table and then half to the left and forward. This is easy to see and reduces the risk of standing behind the reference switch and driving to the end. Z-axis example: constructively defined distance between the table and the spindle nose that can be measured with a gauge block. Also just before the limit switch.
Lathe X-axis, center boring tool and center spindle. However, the reference switch should be at the upper end of the axis and then enter the difference in the home offset. Z-axis constructively defined distance between turret and chuck or spindle nose that can be measured with a gauge block. Also just before the limit switch.
So no matter what happened, you can easily reset your positions. And the old offsets fit again.

Please Log in or Create an account to join the conversation.

More
11 Aug 2023 19:42 #277662 by blazini36
Replied by blazini36 on topic What is the "proper" zero origin

In your case, I think machine reference point should be with the gantry away from the operator, and the head all the way to the right. During homing both X and Y move in positive directions (Z first, then Y, then X).

I would then use LCNC's homing sequence feature to offset 'machine zero' by the travel extent.  For a 24x24 travel machine, if you press "home-all' the machine moves Z-up, then moves back in Y (pos), then the head moves to the right (X pos).  The DRO then reads X24 Y25 Z0.

Referencing to the back right (max positive X and Y) I'm not a huge fan of. In a perfect world it doesn't make a difference but I would reference to 0,0,0 (machine origin) which is the front left, then I'll travel to "home" which is somewhere in the back and it's positive of machine origin. I just personally prefer to keep the reference point = machine origin.

Referencing to the front left is what you described a factory mill as doing, the difference here is that all travel after reference on the mill is negative of 0, and in this case with a gantry head all travel after referencing to that same corner is positive of 0. Is that correct?

Please Log in or Create an account to join the conversation.

  • rodw
  • rodw's Avatar
  • Away
  • Platinum Member
  • Platinum Member
More
11 Aug 2023 21:00 #277669 by rodw
Replied by rodw on topic What is the "proper" zero origin
The Gcode X,Y space is the same as a Cartesian plane. It really does not matter about direction but the home point (0,0) defines the origin on the plane. I have not used any commercial machines but my brain gets scrambled if the axes are not laid out as per the operators view based on what I learnt in geometry all those years ago.

My theory is the front of the machine should be defined from where the operator stands. The x axis should run across your chest with the positive direction running left to right. The Y axis should run away from the operator with the positive direction running front to back.

So if you get the directions right, its time to pick a point for the origin of the absolute machine coordinates. The most obvious point is front left so that all dimensions are positive. That's how I set my mill up.

But because I had to put my Y home switch at the front of the table, the machine actually homes to the max Y position. This means I have a rather long  HOME_OFFSET to set the 0,0 to be top left.

I could have made the home position at the back left to avoid the HOME_OFFSET travel. If I did this the Y axis would always be in negative numbers. That might hurt my brain. But this is immaterial because as soon as you touch off with G54, you are moving the  origin to your part.

But then I usually touch off at the back left of the part as that's how I did it on my manual mill so I work in negative Y all the time... More recently I've thought about getting rid of the HOME_OFFSET so home is back left to avoid the time wasting traverse on homing.

Please Log in or Create an account to join the conversation.

  • tommylight
  • tommylight's Avatar
  • Away
  • Moderator
  • Moderator
More
11 Aug 2023 21:10 #277672 by tommylight
Replied by tommylight on topic What is the "proper" zero origin
Just putting this out there:
LinuxCNC can do homing in many ways, have 0 wherever is suitable, and sent axis wherever you want at the end of the homing procedure.
Some examples, besides the "normal" home switches at machine minimum and 0 at machine minimum,
-home switches at maximum travel and 0 at minimum
-home switches at maximum travel and 0 at minimum while end of homing sends the machine to maximum travel
-home switches at minimum and 0 at minimum while end of homing at maximum travel, used this a lot before PlasmaC as it would home and move the gantry away for easy loading of metal sheets on the table.
-home switches at max or min and 0 wherever is needed/required, just set the ini for positive and negative travel, and again ending up wherever needed.

Please Log in or Create an account to join the conversation.

Time to create page: 0.088 seconds
Powered by Kunena Forum