CNC AXIS IN PARKING MODE
- papagno-source
- Offline
- Premium Member
-
Less
More
- Posts: 110
- Thank you received: 6
20 Nov 2025 19:01 #338821
by papagno-source
CNC AXIS IN PARKING MODE was created by papagno-source
Good morning everyone.
I need to replace an old Siemens CNC.
I'd like to try Linux CNC, but the machine is a boring machine with a Z-axis that can be controlled manually or via CNC.
Let me explain. The Z-axis performs normal axis reference and moves in jog+ and jog- directions, with the position controlled by an optical scale.
However, the operator can press a mechanical selector, which allows the axis to be moved with a mechanical handwheel and, when desired, re-engage the axis in the CNC.
Clearly, the current CNC disables the axis drive when the mechanical handwheel is selected.
The axis on the current CNC goes into park mode, meaning the commanded position follows the feedback position, and when the mechanical handwheel is disengaged, the CNC does not enter a following error.
With Linux CNC, I could disable the drive and move the axis with the mechanical handwheel, but as soon as I disable the handwheel and enable the drive again, the CNC displays the following error because the commanded position doesn't follow the feedback position.
Is there a way to mimic the behavior of the Siemens CNC?
Thanks for support
I need to replace an old Siemens CNC.
I'd like to try Linux CNC, but the machine is a boring machine with a Z-axis that can be controlled manually or via CNC.
Let me explain. The Z-axis performs normal axis reference and moves in jog+ and jog- directions, with the position controlled by an optical scale.
However, the operator can press a mechanical selector, which allows the axis to be moved with a mechanical handwheel and, when desired, re-engage the axis in the CNC.
Clearly, the current CNC disables the axis drive when the mechanical handwheel is selected.
The axis on the current CNC goes into park mode, meaning the commanded position follows the feedback position, and when the mechanical handwheel is disengaged, the CNC does not enter a following error.
With Linux CNC, I could disable the drive and move the axis with the mechanical handwheel, but as soon as I disable the handwheel and enable the drive again, the CNC displays the following error because the commanded position doesn't follow the feedback position.
Is there a way to mimic the behavior of the Siemens CNC?
Thanks for support
Please Log in or Create an account to join the conversation.
- langdons
-
- Offline
- Platinum Member
-
Less
More
- Posts: 761
- Thank you received: 85
20 Nov 2025 22:47 #338837
by langdons
Replied by langdons on topic CNC AXIS IN PARKING MODE
A picture might help.
Why do you need to use a manual handwheel?
Wouldn't it be possible to move the axis solely via CNC control?
What is "The following error"? You don't print any error message after that statement.
An idea:
You could connect a rotary encoder wheel and configure LinuxCNC so it behaves exactly like the handwheel, but drives the axis via the motors and CNC, without directly, physically moving the axis itself. It'll also save your shoulder from the strain of turning the handwheel and allow ultra-precise movement too.
I'm sure that the functionality you describe is possible, but I'm sure there must be some easier workaround for this problem.
Why do you need to use a manual handwheel?
Wouldn't it be possible to move the axis solely via CNC control?
What is "The following error"? You don't print any error message after that statement.
An idea:
You could connect a rotary encoder wheel and configure LinuxCNC so it behaves exactly like the handwheel, but drives the axis via the motors and CNC, without directly, physically moving the axis itself. It'll also save your shoulder from the strain of turning the handwheel and allow ultra-precise movement too.
I'm sure that the functionality you describe is possible, but I'm sure there must be some easier workaround for this problem.
Please Log in or Create an account to join the conversation.
- Hakan
- Offline
- Platinum Member
-
Less
More
- Posts: 1056
- Thank you received: 354
20 Nov 2025 23:04 #338839
by Hakan
Replied by Hakan on topic CNC AXIS IN PARKING MODE
Just to come up with something, doesn't necessarily mean it is practical
- set f-error-limit to a lot
- get feedback position
- fast forward to feedback position (servo off)
- reset f-error-lim and re-engage the servo
Maybe this can be done in a g-code macro.
- set f-error-limit to a lot
- get feedback position
- fast forward to feedback position (servo off)
- reset f-error-lim and re-engage the servo
Maybe this can be done in a g-code macro.
The following user(s) said Thank You: tommylight, langdons
Please Log in or Create an account to join the conversation.
- rodw
-
- Away
- Platinum Member
-
Less
More
- Posts: 11516
- Thank you received: 3859
21 Nov 2025 04:02 #338849
by rodw
Replied by rodw on topic CNC AXIS IN PARKING MODE
You should be able to create component that sets feedback = commanded pos when the handwheel is engaged. the cia402 component does this...
Please Log in or Create an account to join the conversation.
- papagno-source
- Offline
- Premium Member
-
Less
More
- Posts: 110
- Thank you received: 6
21 Nov 2025 18:51 #338915
by papagno-source
Replied by papagno-source on topic CNC AXIS IN PARKING MODE
Thanks for the replies.
The solution of increasing the tracking value and resetting the axis is impractical and technically incorrect.
The servos are analog and controlled by Mesa boards.
Isn't there a component that creates the command position = position read by the transducer?
Or is there a way to modify the Trivkins kinematics?
The solution of increasing the tracking value and resetting the axis is impractical and technically incorrect.
The servos are analog and controlled by Mesa boards.
Isn't there a component that creates the command position = position read by the transducer?
Or is there a way to modify the Trivkins kinematics?
Please Log in or Create an account to join the conversation.
- langdons
-
- Offline
- Platinum Member
-
Less
More
- Posts: 761
- Thank you received: 85
21 Nov 2025 21:38 #338924
by langdons
Replied by langdons on topic CNC AXIS IN PARKING MODE
Why do you need to manaully move the axis?
Why does jogging the axis via LinuxCNC not suffice.
There is a myriad of configuration options available in the config files.
Why does jogging the axis via LinuxCNC not suffice.
There is a myriad of configuration options available in the config files.
Please Log in or Create an account to join the conversation.
- PCW
-
- Away
- Moderator
-
Less
More
- Posts: 17432
- Thank you received: 5082
21 Nov 2025 21:49 #338927
by PCW
Replied by PCW on topic CNC AXIS IN PARKING MODE
Isn't there a component that creates the command position = position read by the transducer?
LinuxCNC does this (sets commanded position to actual position) when motion is disabled, but it's global (all joints)
It might require a modification of LinuxCNCs motion component to do this correctly on a joint by joint basis
LinuxCNC does this (sets commanded position to actual position) when motion is disabled, but it's global (all joints)
It might require a modification of LinuxCNCs motion component to do this correctly on a joint by joint basis
The following user(s) said Thank You: langdons
Please Log in or Create an account to join the conversation.
- langdons
-
- Offline
- Platinum Member
-
Less
More
- Posts: 761
- Thank you received: 85
21 Nov 2025 23:22 #338930
by langdons
Replied by langdons on topic CNC AXIS IN PARKING MODE
OP: Is this a one axis machine?
Please Log in or Create an account to join the conversation.
- rodw
-
- Away
- Platinum Member
-
Less
More
- Posts: 11516
- Thank you received: 3859
22 Nov 2025 02:07 #338944
by rodw
Replied by rodw on topic CNC AXIS IN PARKING MODE
Try the attached component
Untested. Probably has some typos but the logic should be sound.
sudo apt install linuxcnc-uspace-dev
sudo halcompile freewheel.compUntested. Probably has some typos but the logic should be sound.
Please Log in or Create an account to join the conversation.
- rodw
-
- Away
- Platinum Member
-
Less
More
- Posts: 11516
- Thank you received: 3859
22 Nov 2025 02:21 #338946
by rodw
Replied by rodw on topic CNC AXIS IN PARKING MODE
Ooops, I did not set pos_cmd_out but its not needed and could be removed from the component
component freewheel "Allows moving a joint by hand if a pin is enabled"
pin in float pos_cmd_in "pos command in (joint.N.pos_cmd)" ;
pin in float pos_fb_in "feedback command in (joint.N.pos_fb)";
pin in bit isfreewheeling "set to true to enable freewheeling";
pin out float pos_fb_out "modified feedback command out";
function _;
license "GPL";
author "Rod Webster";
;;
FUNCTION(_) {
if(isfreewheeling)
pos_fb_out = pos_cmd_in;
else
pos_fb_out = pos_fb_in;
}Please Log in or Create an account to join the conversation.
Time to create page: 0.095 seconds