Absolute encoders

More
01 Aug 2015 03:20 #61078 by bobobo
Absolute encoders was created by bobobo
I have fitted absolute rotary encoders on the ballscrews for a VMC I'm retrofitting.

I have managed to read the encoders with hostmot2 driver with correct scaling.
I have connected the encoder values in HAL with:
net motor.00.pos-fb hm2_7i80.0.ssi.00.position => pid.0.feedback
net motor.00.pos-fb => joint.0.motor-pos-fb #push copy back to Axis GUI
# type errors may be present since I don't sit at the linuxcnc machine now...

I can jog the machine without following errors, and the position display updates correctly.

SO now, how should I set the homing procedure settings in linuxcnc? I don't actually want any homing at all...the machine should preferrably be ready to go as soon as it is powered up. I read something about "immediate" homing, but is the position set to zero at the actual position then?
What I would like to do is to set a constant offset to the machine coordinate system to have the 0-point in a decent place. I found the HAL Component "offset" that I guess could be used to adjust the encoder value with a hard-coded constant before I feed it to motor.pos-fb?

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

More
01 Aug 2015 05:00 #61083 by andypugh
Replied by andypugh on topic Absolute encoders

SO now, how should I set the homing procedure settings in linuxcnc?

At the very bottom of here: www.linuxcnc.org/docs/html/config/ini_ho...homing-configuration

What I would like to do is to set a constant offset to the machine coordinate system to have the 0-point in a decent place.

That is handled by the standard working coordinate systems (G54, G55, etc). You set their offsets with "touch off"

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

More
01 Aug 2015 05:15 #61084 by bobobo
Replied by bobobo on topic Absolute encoders
Thank you
So you say immediate homing is the correct config for a machine with absolute encoders?

For the offsets, I would like G53 x0 y0 z0 to be in one end or mid-travel of the axis. Without any offsets the encoders nog reports like x2300 y-25000 z-12000 when I'm mid travel (600 x 400mm machine).
Ofcourse I could unmount the encoders from ballscrews and offset them by rotating with the cordless drill, but...

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

More
01 Aug 2015 06:01 #61085 by andypugh
Replied by andypugh on topic Absolute encoders

So you say immediate homing is the correct config for a machine with absolute encoders?

I think so. You could consider wiring halui.home-all to halui.machine-is-on to save a button press.

Of course I could unmount the encoders from ballscrews and offset them by rotating with the cordless drill, but...

I would imagine that there is a way to zero the encoders. Even if it is just disconnecting the batteries.
Otherwise the drill isn't a 100% stupid idea.

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

More
03 Aug 2015 02:03 - 03 Aug 2015 02:04 #61125 by bobobo
Replied by bobobo on topic Absolute encoders
I made a few tests today.

If i configure immediate homing and press "home all", the coordinates of all axes is changed to zero at the point where I am. I would like the coordinates to stay, just change state to homed.

Wiring "offset" component in HAL works to move the 0-point, and in combination with No_Force_homing, it works the way I want as long as machine is NOT homed. BUT if I (accidently) press the homing button the machine will change the coordinate system, which is not good.

For the moment I have made a "standard" config with wired homing switches. When I start the machine it displays the encoder coordinates (x2300, y-25000, z-12000). I run honimg to the switches and machine coordinate system (g53) sets x0 y0 z0 at the switches position.

What i would like to achieve is that the "machine offset" that is calculated when i do standard homing should be saved persistently and machine should be in homed state when i start linuxcnc. The absolute encoders will then take care of if the table moves when the machine is turned off.
I think I have read somewhere that it is possible to configure so, intended for big heavy machines that was hard to home and unlikly to move powerd off, but i can't find where i may have read it...

There is no battery in the encoders to zero them, they work by a mechanical gearbox to give absolute position over the full 4096 turns range.
The "drill" method won't work good either because it's hard to fit the encoders to the same position again if the needs to be removed at any time, and I still have the same problem as with offset in HAL above, if I press "Home all" the machine coordinate system move away.
Last edit: 03 Aug 2015 02:04 by bobobo.

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

More
03 Aug 2015 02:55 - 03 Aug 2015 02:57 #61126 by PCW
Replied by PCW on topic Absolute encoders
Sounds like home all needs to be disabled in the absolute encoder case

(I dont think linuxncncs motion module or GUIs have even considered absolute
encoder systems)
Last edit: 03 Aug 2015 02:57 by PCW.

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

More
03 Aug 2015 06:37 #61134 by andypugh
Replied by andypugh on topic Absolute encoders
Sorry to be suggesting experiments rather than answers, but is home-sequence of -1 and NO_FORCE_HOMING = 1 in the INI closer to what you want (still with your offsets)

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

Time to create page: 0.082 seconds
Powered by Kunena Forum