rotary vs motion : velocity
- djdelorie
- Offline
- Junior Member
-
Less
More
- Posts: 24
- Thank you received: 4
05 May 2025 01:21 #327724
by djdelorie
rotary vs motion : velocity was created by djdelorie
I have a cnc router with a laser and a rotary axis. I modulate the laser output (using the laserpower HAL) according to motion's requested vs current velocity, so the laser power is reduced during starts and stops. Works fine for XY work. For XA work, I'm running into the "which F" problem. I'm using inverse time mode for the gcode but... how do I get inverse speed for the laser modulation? motion.current-vel follows the F rule - it's inch/min if there's linear moves, else it's degrees/min. If you do a coordinated move, you lose the angular velocity info.
In my case, I know the Z value will be "accurate" as far as "how far from the rotary axis are you" *in this case*.
Is there a way to do this in HAL? Preferably without writing my own laserpower module
Or is there a better way to modulate laser power with a rotary axis?
Or should I just assume "it will work out" because the acceleration for X and A is synchronized, so reading either velocity fraction would suffice?
In my case, I know the Z value will be "accurate" as far as "how far from the rotary axis are you" *in this case*.
Is there a way to do this in HAL? Preferably without writing my own laserpower module

Or is there a better way to modulate laser power with a rotary axis?
Or should I just assume "it will work out" because the acceleration for X and A is synchronized, so reading either velocity fraction would suffice?
Please Log in or Create an account to join the conversation.
- tommylight
-
- Online
- Moderator
-
Less
More
- Posts: 20268
- Thank you received: 6894
05 May 2025 01:48 #327728
by tommylight
Replied by tommylight on topic rotary vs motion : velocity
The thing is, a round 20mm tube is roughly 63mm in perimeter (or in this case the distance the machine must move) while a 100 round tube is 314.15mm in perimeter, so if you have the same rotation speed, the 100mm will travel much faster under the spindle.
The easy way to avoid any of this is to have multiple normal configurations for each diameter, and use Y as rotary but in hal it remains linear. Not using A.
I have several rotary plasma machine in use with this type of configuration, so normal 2D CAM (Inkscape with gcoodetools), and just run the configuration for the diameter being cut.
The easy way to avoid any of this is to have multiple normal configurations for each diameter, and use Y as rotary but in hal it remains linear. Not using A.
I have several rotary plasma machine in use with this type of configuration, so normal 2D CAM (Inkscape with gcoodetools), and just run the configuration for the diameter being cut.
Please Log in or Create an account to join the conversation.
- djdelorie
- Offline
- Junior Member
-
Less
More
- Posts: 24
- Thank you received: 4
05 May 2025 18:49 #327775
by djdelorie
Replied by djdelorie on topic rotary vs motion : velocity
As I noted, in my case the Z value is accurate for the diameter, so I *do* know the rotational-tangential speed, or at least, could compute it. There just doesn't seem to be a HAL way to get both linear speed and angular speed at the same time.
I don't want to have an Y-is-A configuration as that breaks my toolchanger (rack along the back edge).
I've been solving most of these problems with software that wraps Y to A and adjusts everything to inverse time mode, but the gcode doesn't have control over the laserpower HAL component.
I don't want to have an Y-is-A configuration as that breaks my toolchanger (rack along the back edge).
I've been solving most of these problems with software that wraps Y to A and adjusts everything to inverse time mode, but the gcode doesn't have control over the laserpower HAL component.
Please Log in or Create an account to join the conversation.
Time to create page: 0.061 seconds