heres a picture of one of the problem areas in the program.
so, mach's cv mode is causing me grief. on my milling machines, which are slow moving, it works great in general, however on my router which is capable of a much higher speed and acceleration im getting very odd effects.
when i set the motor tuning, my system is quite capable of 400ipm and 60 for acceleration. these are conservative safe settings ive been using.
in running a program like a pocket or a circle in exact stop mode, its all fine. in cv mode with all options turned off its usually fine as well.
when i run 3d contouring im seeing my issues. my program for today is about 100000 lines making up a waterline type contour. most of the g1 segments are only a mm long or so, some less. when the program gets to the end of the waterline it wants to transition down to the next. on some levels the transition is very sharp, like 150-170 degrees. its these sports the machine will stall. for any given mach setup or feed rate, the stall will be 100% consistent. also if i interupt these corners with a go retract they are fine.
occasionally it will also stall on the retract out of the part, or a goto zero command from the ui.
yesterday i tried alot of settings, and they all seem to have an effect, but no complete cure. high acceleration doesnt help. lower speed somewhat helps as you might expect, but that gets counter productive in a hurry. i also tried motor settings, pulse timing, various cv options, kernel speeds, etc. they all have an effect of some sort, changing the stall point, but no cure.
the closest thing to fixing it i found was lowering the accelleration to 25, leaving everything else as it was. while it no longer stalls in that program, this made a very audible diagnosis of the issue.
a straight line point to point, and most other transitions are smooth, since the acceleration is now so low, it doesnt jerk the lightweight machine around. on some corners though you still get a hard jerk. these as it turns out are the ones it was prone to stalling at. its almost as if its not decellerating properly, or cant manage to round the corner correctly and overloading the motors if the acceleration was too high.
so the question is why? i have only one theory at the moment hinging on the fact it only fails in complex short segment contouring. the theory is that the rounding radius is actually bigger than the motion segment its trying to round. this could be confusing the look ahead and not giving it time to slow down for the corner. lowering my accelration may not be fixing it at the root, but might be giving my motors enough overhead that they wont stall. when i break the corner with a g0, it would negate the need for rounding, so it doesnt stall.
so anyone every get an issue like this or have any thoughts?
heres a picture of one of the problem areas in the program.
A year or two ago someone reported a bug in CV that sounds similar, as it occurred when all 3 axis were involved. I'm not sure if it was ever fixed, due to the complexity involved. Have you tried using the CV angle setting? Set it at an angle to force Exact Stop in those situations.
If you're stalling on a Goto Zero, sounds like the accel is set too high.
Mach3 2010 Screenset
(Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)
today it stalled on a pocket which had all rounded corners at only 100ipm. i raised the acceleration back up to 60 and it didnt stall again on *that* program. this it wearing me out and ruining expensive pieces of wood. im going to try EMC2 next week if i cant get this reliable.
Was this issue resolved? I have similar problems at the moment.
i ran a 5 hour program on my big mill at 150ipm yesterday. stalled twice. i tweaked accelerations and speeds until it was stall free. now *that* program wont stall again on that machine, but for the next program the game starts all over again. i cant run emc on that machine for now, cause i cant get the spindle controlled. once thats figured out, ill abandon mach. its a shame, because if not for that issue, its pretty ideal.
How is your spindle controlled? What have you tried in emc?
i dont really remember, but i tried everything on the cnc4pc guide. the spindle would turn on, but only at a low speed and with no control otherwsie. my spindle is step and direction under mach. other people with the same machine but a pwm spindle control have made it work. (its a novakon nm200).
ill revisit it at some point. i may be getting a new machine at the end of this month that will get converted. ill use emc for that likely. it will be 3kw ac servos and a 15hp induction motor for the spindle though, so ill be trying mach3 as well.
mach has far superior contouring control - when it works.
Remember when you try emc2 again - read the G64 section
P - motion blending tolerance
Q - naive came tolerance
G64 - best possible speed.
blending with tolerance.
G64 - without P means to keep the best speed possible, no matter how far away from the programmed point you end up.
G64 P- Q- - is a way to fine tune your system for best compromise between speed and accuracy. The P- tolerance means that the actual path will be no more than P- away from the programmed endpoint. The velocity will be reduced if needed to maintain the path. In addition, when you activate G64 P- Q- it turns on the naive cam detector; when there are a series of linear XYZ feed moves at the same feed rate that are less than Q- away from being collinear, they are collapsed into a single linear move. On G2/G3 moves in the G17 (XY) plane when the maximum deviation of an arc from a straight line is less than the G64 P- tolerance the arc is broken into two lines (from start of arc to midpoint, and from midpoint to end). those lines are then subject to the naive cam algorithm for lines. Thus, line-arc, arc-arc, and arc-line cases as well as line-line benefit from the naive cam detector. This improves contouring performance by simplifying the path. It is OK to program for the mode that is already active. See also the Path Control Mode Section and Trajectory Control Section for more information on these modes. If Q is not specified then it will have the same behavior as before and use the value of P-.
ive read it, it is very poor at maintaining a constant speed. if you set the program to cut at say, 400ipm, it hovers between 100 and 300. all while giving poor tracking accuracy (even with the P setting at 0.001"). with p set high or left out, it FACETS the models curves, and wanders off long straight lines making it virtually useless.
mach3 on the other hand with maintain 400ipm smoothly and accuractly follow the path except for subtle rounding in corners based on the cv settings. of course, you get the corner stall once in a while which can be tuned out if you want to chase it like i did on this last program (which i need to run 10 or 15 times in the next few weeks).
emc's contouring control needs a total rethink. it doesnt stall, thats its only saving grace and the only reason ill use it.
yup, its a very serious bug, and it will prevent me from using on the new machine it perhaps, but emc2's contouring control is still beyond terrible, and no amount of suggesting mach's is worse will fix it