arcs in 4 axis mode
- foam man
- Offline
- Senior Member
-
Less
More
- Posts: 65
- Thank you received: 5
10 Oct 2022 13:23 #253881
by foam man
arcs in 4 axis mode was created by foam man
I realized too late though that I can't use the I J or R command to make circles when in 4 axis mode XYZA
is it possible to do this?
is it possible to do this?
Please Log in or Create an account to join the conversation.
- Henk
- Offline
- Platinum Member
-
Less
More
- Posts: 408
- Thank you received: 92
11 Oct 2022 04:25 #253929
by Henk
Replied by Henk on topic arcs in 4 axis mode
You can program arcs with any config as long as the linear axes support the plane that your arc is in.
So with a xyza machine you can program arcs in g17,g18,or g19 planes.
Arc moves cannot ontain A axis words.
So with a xyza machine you can program arcs in g17,g18,or g19 planes.
Arc moves cannot ontain A axis words.
Please Log in or Create an account to join the conversation.
- foam man
- Offline
- Senior Member
-
Less
More
- Posts: 65
- Thank you received: 5
11 Oct 2022 13:44 #253964
by foam man
Replied by foam man on topic arcs in 4 axis mode
so I would almost have to write the code for a circle using xz ya
this machine is a 4 axis hot wire for cutting foam and has 2 operating modes
I'd like to use 2 axis mode because I can use g2 g3 for quick circles, but because z slaves to x and a to y, z and a don't use their own calibration number. they use their masters number. Even though the difference is not a lot, it makes for an inaccurate machine
hence using 4 axis mode, but then I can't use g2 g3 for arcs plus having to use 2 separate buttons to jog basically one axis
I figured maybe it would be possible to tell the machine toslave z to x, and a to y
but use their own calibration number. so far no luck
this machine is a 4 axis hot wire for cutting foam and has 2 operating modes
I'd like to use 2 axis mode because I can use g2 g3 for quick circles, but because z slaves to x and a to y, z and a don't use their own calibration number. they use their masters number. Even though the difference is not a lot, it makes for an inaccurate machine
hence using 4 axis mode, but then I can't use g2 g3 for arcs plus having to use 2 separate buttons to jog basically one axis
I figured maybe it would be possible to tell the machine toslave z to x, and a to y
but use their own calibration number. so far no luck
Please Log in or Create an account to join the conversation.
- foam man
- Offline
- Senior Member
-
Less
More
- Posts: 65
- Thank you received: 5
04 Jul 2026 23:08 #347523
by foam man
Replied by foam man on topic arcs in 4 axis mode
hi I know its been a while for this post, but I'm wondering if this makes sense for, essentially moving U and V with X and Y commands.
The Fix:
How to make UV emulate XY while keeping their own step calibrations.
To force U and V to mirror X and Y while preserving their independent step calibrations, you must link the signals before the math calculates the motor steps.
In LinuxCNC, you do this by linking the motion controller outputs to both sets of joints, rather than linking the step generators directly.
Open your machine's main .hal file and look for the lines connecting motion.coordinate-system to your joints. Change them to route like this
:hal# Force Joint 2 (U) to listen to the X-axis motion command
net x-output motion.coordinate-system.0.pos-cmd => joint.0.motor-pos-cmd joint.2.motor-pos-cmd
# Force Joint 3 (V) to listen to the Y-axis motion command
net y-output motion.coordinate-system.1.pos-cmd => joint.1.motor-pos-cmd joint.3.motor-pos-cmd
Use code with caution.Why this fixes the calibration issue:
The Signal: LinuxCNC outputs a raw request in millimeters (e.g., "Move X to 50.0mm").The Split: The HAL lines above take that 50.0mm request and send it to both Joint 0 (X) and Joint 2 (U) simultaneously.The Calibration: Joint 0 looks at its own SCALE setting in the .ini file to convert 50.0mm into steps for the X motor. Joint 2 looks at its own independent SCALE setting in the .ini file to convert 50.0mm into steps for the U motor.
The Fix:
How to make UV emulate XY while keeping their own step calibrations.
To force U and V to mirror X and Y while preserving their independent step calibrations, you must link the signals before the math calculates the motor steps.
In LinuxCNC, you do this by linking the motion controller outputs to both sets of joints, rather than linking the step generators directly.
Open your machine's main .hal file and look for the lines connecting motion.coordinate-system to your joints. Change them to route like this
:hal# Force Joint 2 (U) to listen to the X-axis motion command
net x-output motion.coordinate-system.0.pos-cmd => joint.0.motor-pos-cmd joint.2.motor-pos-cmd
# Force Joint 3 (V) to listen to the Y-axis motion command
net y-output motion.coordinate-system.1.pos-cmd => joint.1.motor-pos-cmd joint.3.motor-pos-cmd
Use code with caution.Why this fixes the calibration issue:
The Signal: LinuxCNC outputs a raw request in millimeters (e.g., "Move X to 50.0mm").The Split: The HAL lines above take that 50.0mm request and send it to both Joint 0 (X) and Joint 2 (U) simultaneously.The Calibration: Joint 0 looks at its own SCALE setting in the .ini file to convert 50.0mm into steps for the X motor. Joint 2 looks at its own independent SCALE setting in the .ini file to convert 50.0mm into steps for the U motor.
The following user(s) said Thank You: tommylight
Please Log in or Create an account to join the conversation.
- Todd Zuercher
-
- Away
- Platinum Member
-
Less
More
- Posts: 4759
- Thank you received: 1461
14 Jul 2026 16:26 - 14 Jul 2026 16:26 #347769
by Todd Zuercher
Replied by Todd Zuercher on topic arcs in 4 axis mode
I've never worked with a wire foam cutter, but I have made some Linuxcnc configurations that can use some custom M-code commands that will temporarily slave two axis together such that one will move with the commands of the other. The machines I was using this on were routers with two spindles each mounted on their own axis and configured XYZW. I had ran these for years just using XYZW g-code, but when the multi-line look ahead planer was first introduced in Linuxcnc, it only supported XYZ moves, any moves with a W command reverted to the old single line tool planner, and significantly slowed the wood carving we did with these. So I built my config with an M-code that slaved the W axis to the Z at their current positions when the command was issued. The W would then follow the Z until I issued the M-code command that released the W. (This had to be done when Z and W were commanded to be at the same positions relative to the position they were slaved at, or the W would give a following error.) Maybe this technique could be useful for you? Here is a copy of one of my configurations.
Attachments:
Last edit: 14 Jul 2026 16:26 by Todd Zuercher.
The following user(s) said Thank You: foam man
Please Log in or Create an account to join the conversation.
- tuxcnc
- Offline
- Elite Member
-
Less
More
- Posts: 169
- Thank you received: 24
14 Jul 2026 18:37 #347770
by tuxcnc
Replied by tuxcnc on topic arcs in 4 axis mode
I have build foam cutter a few years ago and not remember details, but I think it was as follows:
There are two possibily configurations:
1. XY with master-slave axes - no cones, but you can use G2/G3.
2. XYUV independent axes - can cut cones, but can't use G2/G3.
When you use XYUV you must convert circles to strings of short lines in your CAD/CAM.
There are two possibily configurations:
1. XY with master-slave axes - no cones, but you can use G2/G3.
2. XYUV independent axes - can cut cones, but can't use G2/G3.
When you use XYUV you must convert circles to strings of short lines in your CAD/CAM.
Please Log in or Create an account to join the conversation.
- foam man
- Offline
- Senior Member
-
Less
More
- Posts: 65
- Thank you received: 5
17 Jul 2026 14:07 #347815
by foam man
Replied by foam man on topic arcs in 4 axis mode
I use DeskCNC for toolpathing, and it does do that for circles, but I do so many repetetive shapes, although not necessarily the same amount each time, that I simply write my own code I can reuse just by changing the number of repeats. I love it this way cause i can change stuff in seconds, but when it comes to circles in 4-axis mode, it's tougher
The following user(s) said Thank You: tommylight
Please Log in or Create an account to join the conversation.
Time to create page: 0.110 seconds