Tool compensation switching plane

More
06 Mar 2016 19:37 #71118 by REEEN
Hello Community,

my current project is the conversion of a big milling machine.

This machine has a hydraulic swivel head to switch from vertical to horizontal machining eg. g17 to g18.

My problem is that the tool compensation is along the z axis, which is right in g17 but when activatiing g18 my tool compensation should be along the y axis.

How can I achieve this without specifying a new tool offset ?

The offset should somehow be applied to the right axis according to the active plane.

Thank you!

Greets Rene

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

More
07 Mar 2016 13:10 #71151 by andypugh

How can I achieve this without specifying a new tool offset ?


I am pretty sure that you can't.

I see a few possible options.

1) Create a new tool table entry for each tool with an offset in Y and do a tool-change when you tilt the head.

2) If you don't tilt the head during a job then you can use an alternative INI in the same config directory that will share parameters and tool table data, but will re-assign the axes. This is what I do with my horizontal/vertical mill. But I need a hoist and tools to switch orientations.

3) configure the machine as a 4-axis and use tool-length compensation in W. This will introduce the complications of non-trivial kinematics.

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

More
07 Mar 2016 13:37 #71155 by REEEN
Okay, thats what I ecpected.

Two configs is a very bad solution for an automatic tilt head.

I think the best option is using a fake a axis to rotate the tool from vertikal to horizontal.

Now I need a special kinematic.

What do you mean with tool conpensation in w? Never heard that before.

Thanks
Greets REEEN

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

More
07 Mar 2016 13:59 #71158 by andypugh

What do you mean with tool conpensation in w? Never heard that before.


Have a look at the 5-axis sim config. (sim->axis->Vismach->5-axis)

Tool-length is stored in the W column of the tool table, and the config has a "virtual" W axis. if you jog in W then movement is along the tool axis. Which allows drilling angled holes. XYZ jogs still happen in cartesian space.

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

More
07 Mar 2016 14:55 #71162 by REEEN
Thanks Andy !

Okay, but using a fake w axis means I have to use w axis instaed of z for every operation ?

I figured out two ways to manage the problem:

1.( Iam not sure about this )
If I use a fake A axes to turn the tool in vertikal and horizontal direction, and use a special kinematic for this, wil I achieve tool center point compensation ? Such that the tool length offset ( z offset ) will be along the tool vector ?
Or isn't this possible in linuxcnc ?

2. I use a remap script to remap any free gcode as a replacement for g43 which checks the position of the head and switches tool offset from z to y axes in the tool table. Very messed up I think, and I don't like that the preview tool will point in the wrong direction which is very confusing ....


Thanks Rene

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

More
07 Mar 2016 16:21 #71169 by andypugh

Okay, but using a fake w axis means I have to use w axis instaed of z for every operation ?

No, you can still command moves in the XYZ directions. [/quote]

If I use a fake A axes to turn the tool in vertikal and horizontal direction, and use a special kinematic for this, wil I achieve tool center point compensation ? Such that the tool length offset ( z offset ) will be along the tool vector ?
Or isn't this possible in linuxcnc ?


Yes, that should be what you get. Have a play with the Vismach simulator I mentioned earlier and you will see how it works.

2. I use a remap script to remap any free gcode as a replacement for g43 which checks the position of the head and switches tool offset from z to y axes in the tool table. Very messed up I think, and I don't like that the preview tool will point in the wrong direction which is very confusing


This ought to work too.

I prefer the kinematics solution. In fact I have frequently considered doing exactly the same with my milling machine, which has a manually tiltable head.

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

More
09 Mar 2016 06:55 #71256 by REEEN
Thank you very much andy !

I will try it out and post my results here.

Greets Rene

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

More
09 Mar 2016 10:26 #71260 by andypugh
I tried to set my system up to do this a couple of days ago, for this job
However I don't think that the Touchy GUI can cope with non-trivial kinematics. I got a lot of error messages I didn't recognise and decided to just use a G1 X[40 * COS[21]] Z[40 * SIN[21]] F20 instead to get the job done.

The HAL changes are very minor indeed, replace
loadrt trivkins
with
loadrt 5axiskins
setp 5axiskins.pivot-length 213.4
and add
net dummy-B axis.4.motor-position-cmd => axis.4.motor-position-fb
In your case this dummy-axis also needs to operate the head tilt, but I would suggest still leaving the feedback short-circuited like this, and operate the head tilt actuator with simple HAL.

INI changes are a bit more complicated. You probably need AXES = 9 and COORDINATES = XYZBW.
You probably also need an [AXIS_N] section for all 9 axes. though these can be very basic, with just limits, a home-sequence and home-velocities set to zero to activate immediate homing.

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

More
09 Mar 2016 14:19 #71278 by REEEN
Thank you very much Andy :)

Iam using gmoccapy gui for all our machines, it is very important for us to use this gui, because our control panell is created directly for it.
I thought that kinematics are independant from the gui...
I hope it will work with gmoccapy.

My mill is a bit different from yours the tilt head is 45 degree to z axis so the tool will either place towards the user or vertikal.
The head only has to positions that will be hal driven.

Here is a picture:






It is a very enormous machine.

Greets Rene
Attachments:

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

More
09 Mar 2016 14:34 #71280 by andypugh

I thought that kinematics are independant from the gui...


It ought to be, but the GUI needs to be able to switch from Joint Mode to World Mode.

An easy test would be to take a sim config (sim-axis-vismach-5axis for example) and change the GUI in the INI file and see what happens.

In practice your mill has two identity-type kinematics. So it is possible that you can use a switchable trivial kinematics.

The very worst case is running two separate configs and two separate G-code files for each head position. And that probably isn't too much trouble in practice.

Is there a tool-changer?

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

Time to create page: 0.138 seconds
Powered by Kunena Forum