Jogging at a certain angle (lathe mode)?
02 Oct 2022 11:55 - 02 Oct 2022 11:56 #253246
by Aciera
Replied by Aciera on topic Jogging at a certain angle (lathe mode)?
I know some people will likely be rolling their eyes but a custom kinematic might be a solution for this.
Last edit: 02 Oct 2022 11:56 by Aciera. Reason: change wording
Please Log in or Create an account to join the conversation.
02 Oct 2022 11:55 #253247
by arvidb
Replied by arvidb on topic Jogging at a certain angle (lathe mode)?
If you are okay with stopping completely between each new jog target position, then yes, they are very similar. But think about jogging with an MPG. You really need to be able to "pick up" the current motion and continue to a new target.The two jobs are not that far apart. setting an MDI G1 X1 f1 and then aborting is very similar to a keyboard jog.
Please Log in or Create an account to join the conversation.
02 Oct 2022 12:02 #253248
by arvidb
Replied by arvidb on topic Jogging at a certain angle (lathe mode)?
Is this what is being done with the W axis in the 5 axis tilted drilling thread? While reading that thread I though it might be applicable to this topic, but I'm not exactly clear on what exactly is being done there, how the W axis works.I know some people will likely be rolling their eyes but a custom kinematic might be a solution for this.
Please Log in or Create an account to join the conversation.
02 Oct 2022 12:40 #253249
by Aciera
Replied by Aciera on topic Jogging at a certain angle (lathe mode)?
It's what many custom kinematics do. Including "5axiskins" it uses an angle value (usually A B and/or C axis) angles to transform a movement in X,Y and/or Z to the joints (ie motors).
The following user(s) said Thank You: arvidb
Please Log in or Create an account to join the conversation.
02 Oct 2022 14:16 - 02 Oct 2022 14:16 #253252
by dgarrett
Replied by dgarrett on topic Jogging at a certain angle (lathe mode)?
branch available for test: dgarr/anglejog
sim config: configs/sim/axis/anglejog/anglejog.ini
Ref:
github.com/LinuxCNC/linuxcnc/commits/dgarr/anglejog
github.com/LinuxCNC/linuxcnc/commit/f186826988
see man page for usage info: $ man anglejog
sim config: configs/sim/axis/anglejog/anglejog.ini
Ref:
github.com/LinuxCNC/linuxcnc/commits/dgarr/anglejog
github.com/LinuxCNC/linuxcnc/commit/f186826988
see man page for usage info: $ man anglejog
Last edit: 02 Oct 2022 14:16 by dgarrett.
Please Log in or Create an account to join the conversation.
02 Oct 2022 14:59 - 02 Oct 2022 18:45 #253255
by arvidb
I'm not able to test this at the moment, but looking at the code I'm wondering if it would be a good idea to decouple the input jog scale (anglejog.scale-in) from the axis & joint jog scales, and instead use a very fine-grained scale for the latter. E.g. fix those at 1 µm/count and do the appropriate scale conversion in anglejog. I'm imagining a rather horrible stair-step "line" to be the result of not doing this if using a coarser jog scale (say 1 mm/count). (Maybe I'm missing something though, from only reading the code.)
Replied by arvidb on topic Jogging at a certain angle (lathe mode)?
Very cool!branch available for test: dgarr/anglejog
I'm not able to test this at the moment, but looking at the code I'm wondering if it would be a good idea to decouple the input jog scale (anglejog.scale-in) from the axis & joint jog scales, and instead use a very fine-grained scale for the latter. E.g. fix those at 1 µm/count and do the appropriate scale conversion in anglejog. I'm imagining a rather horrible stair-step "line" to be the result of not doing this if using a coarser jog scale (say 1 mm/count). (Maybe I'm missing something though, from only reading the code.)
Last edit: 02 Oct 2022 18:45 by arvidb. Reason: spelling
Please Log in or Create an account to join the conversation.
06 Oct 2022 01:57 #253582
by dgarrett
Replied by dgarrett on topic Jogging at a certain angle (lathe mode)?
> I'm wondering if it would be a good idea to decouple the input jog scale
yes --
The original sim config addressed stairstepping by incrementing
MPG counts by 100 units so that a scale of .00001 would
correspond to .001 units. This type of s32 count-multiplication
is typically required when using an integer lowpass filter ($ man
ilowpass) on axis.N.counts and reduces stair-steps due to integer
counts handling at useful scales.
The updated branch includes a pin iscale-factor (default=10000),
and multiplies counts-in internally by the factor, divides the
current scale in-use by the factor, and outputs a corresponding
output pin current-scale-out for connection to axis.*.jog-scale.
The updated sim config increments counts-in by 1.
The branch update also provides for a jog-accel-fraction input pin
and scaled output pins cos-accel-fraction, sin-accel-fraction for
connection to axis.[NM].jog-accel-fraction pins. This facility is
useful in reducing shake for fine positioning (single count unit)
moves and often eliminates the need for filtering counts from an
MPG.
ref: github.com/LinuxCNC/linuxcnc/commit/d69b15cfe1ce40
yes --
The original sim config addressed stairstepping by incrementing
MPG counts by 100 units so that a scale of .00001 would
correspond to .001 units. This type of s32 count-multiplication
is typically required when using an integer lowpass filter ($ man
ilowpass) on axis.N.counts and reduces stair-steps due to integer
counts handling at useful scales.
The updated branch includes a pin iscale-factor (default=10000),
and multiplies counts-in internally by the factor, divides the
current scale in-use by the factor, and outputs a corresponding
output pin current-scale-out for connection to axis.*.jog-scale.
The updated sim config increments counts-in by 1.
The branch update also provides for a jog-accel-fraction input pin
and scaled output pins cos-accel-fraction, sin-accel-fraction for
connection to axis.[NM].jog-accel-fraction pins. This facility is
useful in reducing shake for fine positioning (single count unit)
moves and often eliminates the need for filtering counts from an
MPG.
ref: github.com/LinuxCNC/linuxcnc/commit/d69b15cfe1ce40
The following user(s) said Thank You: arvidb
Please Log in or Create an account to join the conversation.
06 Oct 2022 03:48 #253587
by JPL
It is the 5 axis bridgemill demo which appear to do exactly that. Meaning that the W axis is actually moving the tool along its rotational axis. Also mentioned on this thread: forum.linuxcnc.org/38-general-linuxcnc-q...ted-drilling?start=0
I'm far from being an expert but maybe this worth investigating the kinematics allowing this.
Replied by JPL on topic Jogging at a certain angle (lathe mode)?
Just saw this:
I know some people will likely be rolling their eyes but a custom kinematic might be a solution for this.
Is this what is being done with the W axis in the 5 axis tilted drilling thread? While reading that thread I though it might be applicable to this topic, but I'm not exactly clear on what exactly is being done there, how the W axis works.
It is the 5 axis bridgemill demo which appear to do exactly that. Meaning that the W axis is actually moving the tool along its rotational axis. Also mentioned on this thread: forum.linuxcnc.org/38-general-linuxcnc-q...ted-drilling?start=0
I'm far from being an expert but maybe this worth investigating the kinematics allowing this.
Please Log in or Create an account to join the conversation.
12 Oct 2022 11:35 #254016
by MRx
Replied by MRx on topic Jogging at a certain angle (lathe mode)?
@dgarret thank you for your work, I will test it within the next days!
Please Log in or Create an account to join the conversation.
04 Jun 2023 20:20 #272907
by vmihalca
Replied by vmihalca on topic Jogging at a certain angle (lathe mode)?
I tried the approach of executing an MDI command then aborting, the problem is that it kills the spindle too. Since I have physical joystick, when I return to the neutral position, I do the following: feed-inhibit = true, switch from MDI to manual, feed-inhibit=false.
This way I am not turning off the spindle with abort.
This way I am not turning off the spindle with abort.
Please Log in or Create an account to join the conversation.
Time to create page: 0.842 seconds