New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
G93 rotary moves with a very small linear move run too fast. #2410
Comments
Is this the same as #1738 ? |
Some pointers from Rob Ellenberg: I think it's possible to fix it in linuxcnc by checking that the "tiny" distance cutoff matches in interp, canon, and motion for computing feed rates, it should be something like 1e-7. Another complication is that interp works in progam units, so if interp uses a constant, that threshold is effectively smaller for mm than inches. The "tiny" distance cutoff should ideally be based on user units and then converted to canon / program units for use in canon / interp respectively. |
@robEllenberg The fix to this one seems too simple. So I am wondering what I am missing. Relevant code: https://github.com/LinuxCNC/linuxcnc/blob/2.8/src/emc/rs274ngc/interp_convert.cc#L4442 Which actually happens here:
In this case, with a linear move of 0.002mm and a feed of 5, the rate is calculated as 0.1 instead of .001, and the move runs at 0.006 linear speed (limited by the rotary joint max speed of 90 deg/sec)[1] So, the fix seems to be a little more intelligent about how we handle a zero-length segment. The good news is that we don't care how wrong the feed rate is on a zero-length segment. [1]Massively increasing the rotary axis accel and speed was enough to get the programmed linear velocity of 0.1 |
Fixed via b244b37 |
* origin/2.9: document the `homed` field of the `linuxcnc` python module Remove feral debug print Fix for #2410 mesa_modbus: Only wait between packets that cause a write
Reported on the Forum: https://forum.linuxcnc.org/20-g-code/48607-g93-strange-behavior#267629
This G-code works properly, lines N30 and N40 both run at 14.9 deg/sec
This code does not work properly,
N30 runs at 14.9 deg/sec but N40 runs at the A axis velocity limit. The difference is the very small Z axis move of 0.0002 units.
This can be easily reproduced in the sim-axis-axis9axis configuration. Reported in 2.9 on Debian 12 and tested on 2.8.4 Buster.
@robEllenberg Have you seen this?
The text was updated successfully, but these errors were encountered: