Can't SIM programs with spindle speed over 12500rpm
- macsddau@linuxcnc
-
Topic Author
- Offline
- Premium Member
-
Less
More
- Posts: 148
- Thank you received: 29
17 May 2026 02:19 #346450
by macsddau@linuxcnc
Can't SIM programs with spindle speed over 12500rpm was created by macsddau@linuxcnc
Hi,From few month program SIM (not on the CNC) are stucking before controled movement (not G0). By chance, I have fond that reducing spindle speed unlock the program.
I take a look a the HAL configuration and check some values with HalShow. Starting from spindle-speed-cmd to spindle-at-speed, There is a calculation error between sim_encoder_0.speed input pin and encoder_0.velocity output pin.
Attached a calc file with some values of tested values
Version info : LCNC 2.9.8 Run In Place SIM on LinuxMint 22.3 (6.8.0-117-generic
I take a look a the HAL configuration and check some values with HalShow. Starting from spindle-speed-cmd to spindle-at-speed, There is a calculation error between sim_encoder_0.speed input pin and encoder_0.velocity output pin.
Attached a calc file with some values of tested values
Version info : LCNC 2.9.8 Run In Place SIM on LinuxMint 22.3 (6.8.0-117-generic
Please Log in or Create an account to join the conversation.
- tommylight
-
- Away
- Moderator
-
Less
More
- Posts: 21902
- Thank you received: 7465
22 May 2026 02:07 #346548
by tommylight
Replied by tommylight on topic Can't SIM programs with spindle speed over 12500rpm
Did you try editing the ini file for the sim?
The following user(s) said Thank You: macsddau@linuxcnc
Please Log in or Create an account to join the conversation.
- macsddau@linuxcnc
-
Topic Author
- Offline
- Premium Member
-
Less
More
- Posts: 148
- Thank you received: 29
22 May 2026 04:56 #346553
by macsddau@linuxcnc
Replied by macsddau@linuxcnc on topic Can't SIM programs with spindle speed over 12500rpm
Yes
The ini file is from gmoccapy sim sample
Only adjusted machine size and speeds according to real cnc.
The ini file is from gmoccapy sim sample
Only adjusted machine size and speeds according to real cnc.
Please Log in or Create an account to join the conversation.
- HansU
-
- Offline
- Platinum Member
-
Less
More
- Posts: 723
- Thank you received: 217
29 May 2026 21:04 #346748
by HansU
Replied by HansU on topic Can't SIM programs with spindle speed over 12500rpm
The BASE_PERIOD in the sim config is too low for that spindle speed so the sim_encoder component cannot calculate the speed correctly.
Setting a lower BASE_PERIOD in the gmoccapy.ini increases the possible maximum spindle speed
Setting a lower BASE_PERIOD in the gmoccapy.ini increases the possible maximum spindle speed
The following user(s) said Thank You: macsddau@linuxcnc
Please Log in or Create an account to join the conversation.
- macsddau@linuxcnc
-
Topic Author
- Offline
- Premium Member
-
Less
More
- Posts: 148
- Thank you received: 29
30 May 2026 06:29 #346763
by macsddau@linuxcnc
Replied by macsddau@linuxcnc on topic Can't SIM programs with spindle speed over 12500rpm
Very nice
Set BASE_PERIOD to 5000. spindle_at_speed works correctly.
Thanks for help !
Set BASE_PERIOD to 5000. spindle_at_speed works correctly.
Thanks for help !
Please Log in or Create an account to join the conversation.
- tommylight
-
- Away
- Moderator
-
Less
More
- Posts: 21902
- Thank you received: 7465
30 May 2026 15:00 #346772
by tommylight
Replied by tommylight on topic Can't SIM programs with spindle speed over 12500rpm
50000
The following user(s) said Thank You: macsddau@linuxcnc
Please Log in or Create an account to join the conversation.
- macsddau@linuxcnc
-
Topic Author
- Offline
- Premium Member
-
Less
More
- Posts: 148
- Thank you received: 29
30 May 2026 17:01 #346774
by macsddau@linuxcnc
Replied by macsddau@linuxcnc on topic Can't SIM programs with spindle speed over 12500rpm
Yes 50000
The following user(s) said Thank You: tommylight
Please Log in or Create an account to join the conversation.
- DauntlessA
- Offline
- Junior Member
-
Less
More
- Posts: 24
- Thank you received: 5
22 Sep 2026 22:41 - 22 Sep 2026 23:30 #349793
by DauntlessA
Replied by DauntlessA on topic Can't SIM programs with spindle speed over 12500rpm
I came across this issue in QtPyVCP/Probe Basic because they share the same spindle_sim.hal as Gmoccapy.
It's really not ideal to have a simulated config be non-functional for spindle speeds ≥12500rpm at the default base period of 100000ns, I know it can be 'fixed', but ideally it should work by default, high speed spindles are not rare now.
Is there a reason why instead of modifying the base period, the value of sim_encoder_0.ppr (and therefore also encoder_0.position.scale) can't be decreased?
Is there actually a reason to sample this frequently in a simulated config?
I'm naively assuming that it is because this logic predates high speed spindles being easy to get hold of, so it wasn't seen as an issue at the time?
It's really not ideal to have a simulated config be non-functional for spindle speeds ≥12500rpm at the default base period of 100000ns, I know it can be 'fixed', but ideally it should work by default, high speed spindles are not rare now.
Is there a reason why instead of modifying the base period, the value of sim_encoder_0.ppr (and therefore also encoder_0.position.scale) can't be decreased?
Is there actually a reason to sample this frequently in a simulated config?
I'm naively assuming that it is because this logic predates high speed spindles being easy to get hold of, so it wasn't seen as an issue at the time?
Last edit: 22 Sep 2026 23:30 by DauntlessA.
Please Log in or Create an account to join the conversation.
Time to create page: 0.144 seconds