- Posts: 2180
- Thank you received: 905
caxis.comp status
2 years 9 months ago #291861
by spumco
Replied by spumco on topic caxis.comp - problems
I think I figured it out, and this might be an LCNC bug. Probably me though.
I think AXIS GUI is clamping the rotary axis speed.
No amount of fiddling with the [AXIS], [JOINT], or [TRAJ] values would have an effect on G0/G1 command speeds. Even had the [DISPLAY] MAX_ANGULAR_VELOCITY = 3600.
I used PNCconf to cook up a quick config and compared the values to my own. I had my axis/joint values set too low, but even after adjusting them up something was still clamping.
I then spotted this in [DISPLAY]:
MAX_LINEAR_VELOCITY = 3
Hmm... that's not sus at all.
Changed it to MAX_LINEAR_VELOCITY = 6, and now the rotary axis PID output is 6 during a G0. Still too slow, but I think AXIS GUI is the culprit.
So why is AXIS GUI using MAX_LINEAR_VELOCITY value instead of MAX_ANGULAR_VELOCITY?
And maybe the C-axis isn't being clamped because...reasons?
I think AXIS GUI is clamping the rotary axis speed.
No amount of fiddling with the [AXIS], [JOINT], or [TRAJ] values would have an effect on G0/G1 command speeds. Even had the [DISPLAY] MAX_ANGULAR_VELOCITY = 3600.
I used PNCconf to cook up a quick config and compared the values to my own. I had my axis/joint values set too low, but even after adjusting them up something was still clamping.
I then spotted this in [DISPLAY]:
MAX_LINEAR_VELOCITY = 3
Hmm... that's not sus at all.
Changed it to MAX_LINEAR_VELOCITY = 6, and now the rotary axis PID output is 6 during a G0. Still too slow, but I think AXIS GUI is the culprit.
So why is AXIS GUI using MAX_LINEAR_VELOCITY value instead of MAX_ANGULAR_VELOCITY?
And maybe the C-axis isn't being clamped because...reasons?
Please Log in or Create an account to join the conversation.
2 years 9 months ago #291866
by spumco
Replied by spumco on topic caxis.comp - problems
Interesting development.
If I change the subspindle from W-axis to B-axis, LCNC stops using MAX_LINEAR velocity and starts using MAX_ANGULAR velocity.
Doesn't matter if the INI [JOINT] TYPE = ANGULAR. If the axis is named anything other than A/B/C, either LCNC or AXIS GUI considers it a linear axis and applies the linear max vel ceiling.
Bug or feature?
AXIS or LCNC?
I don't feel like going through setting up a different GUI just to test.
So now I think I can clean things up and re-visit caxis.comp and see if I can get it sorted out.
If I change the subspindle from W-axis to B-axis, LCNC stops using MAX_LINEAR velocity and starts using MAX_ANGULAR velocity.
Doesn't matter if the INI [JOINT] TYPE = ANGULAR. If the axis is named anything other than A/B/C, either LCNC or AXIS GUI considers it a linear axis and applies the linear max vel ceiling.
Bug or feature?
AXIS or LCNC?
I don't feel like going through setting up a different GUI just to test.
So now I think I can clean things up and re-visit caxis.comp and see if I can get it sorted out.
Please Log in or Create an account to join the conversation.
2 years 9 months ago #291867
by phillc54
Replied by phillc54 on topic caxis.comp - problems
It may be worth adding TYPE = ANGULAR to the [AXIS_<letter>] section.
Warning: Spoiler!
Code:
axis_type = [None] * linuxcnc.MAX_AXIS
for a in range(linuxcnc.MAX_AXIS):
# supply defaults, supersede with INI [AXIS_*]TYPE
letter = "xyzabcuvw"[a]
if not (letter in trajcoordinates): continue
if letter in "abc":
axis_type[a] = "ANGULAR"
else:
axis_type[a] = "LINEAR"
section = "AXIS_%s" % letter.upper()
initype = inifile.find(section, "TYPE")
if initype is None: continue # use default
axis_type[a] = initype
The following user(s) said Thank You: spumco
Please Log in or Create an account to join the conversation.
2 years 9 months ago - 2 years 9 months ago #291869
by spumco
Replied by spumco on topic caxis.comp - problems
Thanks Phill, that would save me some time editing a new config.
This appears not to be in the LCNC manual config/ini section?
EDIT - I wonder if there's a reasonLCNC shouldn't default to the [JOINT] TYPE = N if the [AXIS] TYPE is not specified.
EDIT 2 - Now that I searched the code on GH, I see that this is an AXIS GUI thing and not LCNC.
Thx again
This appears not to be in the LCNC manual config/ini section?
EDIT - I wonder if there's a reason
EDIT 2 - Now that I searched the code on GH, I see that this is an AXIS GUI thing and not LCNC.
Thx again
Last edit: 2 years 9 months ago by spumco.
Please Log in or Create an account to join the conversation.
2 years 9 months ago #291870
by phillc54
Replied by phillc54 on topic caxis.comp - problems
It sure looks like an oversight. I will have a crack at adding something.This appears not to be in the LCNC manual config/ini section?
I am not sure if that would cause issues for non trivial kinematics, although it wouldn't be too difficult to do that only for trivkins configs.I wonder if there's a reason LCNC shouldn't default to the [JOINT] TYPE = N if the [AXIS] TYPE is not specified.
Yes it is, I am not sure how other GUI's behave.Now that I searched the code on GH, I see that this is an AXIS GUI thing and not LCNC.
Please Log in or Create an account to join the conversation.
2 years 9 months ago #291883
by spumco
I didn't do an exhaustive search on GH, but axis.py was the only file I found with similar max_vel settings based on [AXIS] TYPE.
PNCconf & Stepconf don't include an [AXIS] TYPE line in generated INI files.
Replied by spumco on topic caxis.comp - problems
I didn't do an exhaustive search on GH, but axis.py was the only file I found with similar max_vel settings based on [AXIS] TYPE.
PNCconf & Stepconf don't include an [AXIS] TYPE line in generated INI files.
Please Log in or Create an account to join the conversation.
Time to create page: 0.067 seconds