-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
Warn users that spindle is too fast in G33 / G95 #167
Comments
I have a fix in progress here: https://github.com/robEllenberg/linuxcnc-mirror/tree/feature/nominal-vel-during-sync It does two things:
It's not ideal because the warning only appears right before the cut starts, but at least the user will have some feedback this way. |
Nice, the above-linked branch passes my regression test by scaling spindle speed. See the top commit in this branch. |
Updated branch here with some fixes:
|
@robEllenberg, I took your new branch for a little spin (no pun intended). The warning message looks great. My branch has been rebased onto yours with some updates. The unit test is cleaned up and uses your modified Between your branch and mine, the checks are implemented as described in that discussion, except no warning is raised when the spindle never reaches speed, which isn't important to me. Thanks for the great work, Rob! |
Actually, I think the warning "Reducing spindle speed from XXXX to YYYY for synched motion" Rob added is even better than my proposal to raise a warning when the target spindle speed is never reached, since it's enough information for users with fixed-speed spindle to figure out the reason for the hang, and it's more straightforward. Nice work! |
In a spindle-synched G33 move, it is possible to specify a feed per revolution and spindle speed that requires linear motion exceeding axis velocity limits. This test sets up this kind of condition and measures actual pitch during the motion, failing if pitch is not within an epsilon value. See LCNC machinekit#167 for more discussion. LinuxCNC#167 Signed-off-by: John Morris <[email protected]>
Is this merged? Can it be closed? |
This hasn't been merged, and is in limbo until someone decides whether to merge the change or not. |
I came across this problem today (current Master branch) when using G76. I was getting inconsistent thread pitches on a lathe I just retrofitted. Eventually slowed my spindle speed right down and the thread worked. I then deduced that my commanded RPM x thread pitch (the required axis movement speed) was greater than my axis maximum velocity (which I had set somewhat low for initial testing). I would have expected a warning. This situation is likely to be encountered when constant surface speed (G96) is in effect, as the RPMs are set based on work diameter. A warning would have saved quite a bit of time! Fortunately I was just doing test parts. |
any reason this is not merged? |
Is there a PR that combines @robEllenberg's fix with @zultron's test? |
@SebKuzminsky I sure don't see a PR anywhere. This might've been back when PRs were new (at least to me) for LCNC coming from glo, and the work is still only in personal github repos. Unless someone else wants to put together a PR first, it'll probably be a while before I can really sit down with this (and state tags), but it'll definitely go onto the list. |
A PR against 2.7 is in #479. I didn't repeat any review as @robEllenberg and I did in 2017-03, but the patch still merges cleanly, and the regression test still passes on Travis CI. |
During a spindle-synched move, too high a spindle speed may require an axis to move faster than it is able. This patch looks for that situation using programmed spindle speed and INI per-axis max velocity settings. See LinuxCNC issue LinuxCNC#167 for more information. Signed-off-by: John Morris <[email protected]> NOTE: Slight adjustments were made to rebase onto LinuxCNC 2.7 (mostly due to incompatibilities w/ state tags) Signed-off-by: Robert W. Ellenberg <[email protected]>
Here are the steps I follow to reproduce the issue:
This is what I expected to happen:
Some form of warning that the machine can't reach the required feed rate. To execute that motion properly, the Z axis needs to move at 1000 rpm * 0.1 in / rev = 100 ipm (greater than my example limit of 60 ipm).
This is what happened instead:
The cut proceeds without complaint, and cuts the wrong thread pitch.
It worked properly before this:
Probably never, but this seems to have been an issue with 2.6.x as well.
Information about my hardware and software:
Use a simulation config with a slow Z axis (the stock axis simulator will work).
The text was updated successfully, but these errors were encountered: