Thanks for the fantastic advice!  I feel embarrassed about the 10% now - it
never bit me but I'm just an amateur. :)

I'm not interested in eking out the last mm/s2 of acceleration - I just
want smooth curves. The 2500mm/s is driven by the application notes for the
material I'm cutting rather than a need for speed.  (The material is a
plastic called cellulose acetate.)

I'll implement some of the stuff you've outlined here, and report the
results for future internet searches.


On Sat, Apr 12, 2014 at 9:18 AM, Philipp Burch <[email protected]> wrote:

> Hi Rod!
>
> On 04/12/2014 02:28 PM, Rod Fitzsimmons Frey wrote:
> > Turns out that when I actually CUT something other than air, using the
> > loose tolerances (even 0.02) gives me unacceptable faceting.  I don't
> need
> > *accuracy* per se, but I do need smoothness.
> >
> > I don't think I'm trying to operate at outrageous speeds - about
> > 2500mm/min.  Maybe my acceleration is set too low?  Or too high? I didn't
>
> Is this 2.5m/min your actual cutting speed? If so, then your problem
> might just as well be the update rate of the motion planner and/or the
> position controller. This is 41.7mm/s or 0.042mm/ms, so if your servo
> thread runs with the default 1kHz, the position deviation can be more
> than your set tolerance after half an update cycle already.
>
> What happens if you do a straight cut (one single G1 move) over, say,
> 30mm (just long enough to make sure that you reach the programmed feed)?
> If everything is fine, then I would try to lower the servo thread period
> and/or using the new TP. If it is only fine when just a single joint is
> moving but bad if you do a diagonal cut, then the problem may be the
> position controller. If you don't get a good result either way, then
> there could be a problem with the drives, a badly tuned
> position/velocity controller, time jitter, or something else.
>
> > give too much thought to the acceleration limits - I didn't know how to
> > determine it for a servo system.  (On stepper systems I just increased it
> > until I lost steps, then backed off 10% or so -- scientific, hey?)
> >
>
> Wow, going to 10% below stall acceleration on a stepper system sounds
> quite adventurous to me. Anyway, figuring out the maximum with a servo
> system should be easier, at least if your hardware can handle the
> maximum torque of the drives. Just set the acceleration limit to some
> insanely large value (100'000mm/s^2 or so) and then do a G0 move with
> one joint at a time while logging the encoder feedback with halscope.
> You'll probably need to temporarily raise your FERROR and MIN_FERROR to
> about the magnitude of the move for this. What I would expect on the
> scope then is the typical response of a PT2 system (like this one, with
> or without the overshoot: http://buchholz.hs-bremen.de/rtfr/rtfr.htm).
> The slope of the first (rising) part of the curve is then your maximum
> acceleration. Lower it by a few percent and you should have a good value
> for the parameter.
>
> But remember that this is tough for your hardware, so if you are not
> sure if the drivers and the mechanics can handle the maximum current and
> torque of the motor, then you should be a bit more careful with the set
> acceleration value. A safer approach would be to start with a low value
> for the acceleration limit and increase it until you get a noticeable
> deviation from the programmed path at the start and end of the motion.
>
> Happy tuning!
>
> Regards,
> Philipp
>
> >
> >
> >
> > On Fri, Apr 11, 2014 at 4:48 PM, Robert Ellenberg <[email protected]>
> wrote:
> >
> >> Hi Rod,
> >>
> >> This is actually a good example of why G64 is a bit confusing at first.
> >> Since you haven't specified a Q word, G64 with a P tolerance by default
> >> uses the same tolerance for the  naive cam detector. What that means is
> >> that your command here:
> >>
> >> G64 P0.05
> >>
> >> Is interpreted by LinuxCNC to mean this:
> >>
> >> G64 P0.05 Q0.05
> >>
> >> I'd be willing to bet that if you used this setting instead, it would
> >> revert to the "ugly" behavior:
> >>
> >> G64 P0.05 Q0.0
> >>
> >> -Rob
> >>
> >>
> >>
> >>
> >> On Fri, Apr 11, 2014 at 4:19 PM, Rod Fitzsimmons Frey <
> [email protected]
> >>> wrote:
> >>
> >>> G0 P0.05 worked like a charm!  Thanks Viesturs. I'll have to go read
> the
> >>> code to understand the behaviour.
> >>>
> >>>
> >>> On Fri, Apr 11, 2014 at 4:16 PM, Rod Fitzsimmons Frey <
> [email protected]
> >>>> wrote:
> >>>
> >>>> Perhaps I'm confused about G64?  From the docs:
> >>>>
> >>>> G64 is just blending and the naive cam detector is not enabled.  G64
> >> and
> >>>> G64 P0 tell the planner to sacrifice path following accuracy in order
> >> to
> >>>> keep the feed rate up.  ...  G64 P0 has the same effect as G64 alone
> >>>> (above), which is necessary for backward compatibility for old G Code
> >>>> programs.
> >>>>
> >>>> I'll try the small value for G64 instead.  I'm not concerned about
> >>>> accuracy in this application - .005" would be fine.
> >>>>
> >>>> I'll definitely have a look at the new trajectory planner too!
> >>>>
> >>>>
> >>>> On Fri, Apr 11, 2014 at 3:28 PM, Viesturs Lācis <
> >>> [email protected]>wrote:
> >>>>
> >>>>> 2014-04-11 22:15 GMT+03:00 Rod Fitzsimmons Frey <[email protected]>:
> >>>>>
> >>>>>> I've set G64 P0, which I think should eliminate motion mode
> >> concerns?
> >>>>>
> >>>>>
> >>>>> P0 means that max allowed deviation from defined path in order to
> >>> maintain
> >>>>> velocity is equal to as much as total zero, so it really eliminates
> >> not
> >>>>> only concerns about motion mode, but also any options to try to
> >> maintain
> >>>>> the velocity. Try increasing it to something like 0,02 and see, if it
> >> is
> >>>>> better.
> >>>>>
> >>>>> I would say that this particular case is a perfect guinea pig for the
> >>> new
> >>>>> trajectory planner :)
> >>>>>
> >>>>> Viesturs
> >>>>>
> >>>>>
> >>>
> >>
> ------------------------------------------------------------------------------
> >>>>> Put Bad Developers to Shame
> >>>>> Dominate Development with Jenkins Continuous Integration
> >>>>> Continuously Automate Build, Test & Deployment
> >>>>> Start a new project now. Try Jenkins in the cloud.
> >>>>> http://p.sf.net/sfu/13600_Cloudbees
> >>>>> _______________________________________________
> >>>>> Emc-users mailing list
> >>>>> [email protected]
> >>>>> https://lists.sourceforge.net/lists/listinfo/emc-users
> >>>>>
> >>>>
> >>>>
> >>>
> >>>
> >>
> ------------------------------------------------------------------------------
> >>> Put Bad Developers to Shame
> >>> Dominate Development with Jenkins Continuous Integration
> >>> Continuously Automate Build, Test & Deployment
> >>> Start a new project now. Try Jenkins in the cloud.
> >>> http://p.sf.net/sfu/13600_Cloudbees
> >>> _______________________________________________
> >>> Emc-users mailing list
> >>> [email protected]
> >>> https://lists.sourceforge.net/lists/listinfo/emc-users
> >>>
> >>
> >>
> ------------------------------------------------------------------------------
> >> Put Bad Developers to Shame
> >> Dominate Development with Jenkins Continuous Integration
> >> Continuously Automate Build, Test & Deployment
> >> Start a new project now. Try Jenkins in the cloud.
> >> http://p.sf.net/sfu/13600_Cloudbees
> >> _______________________________________________
> >> Emc-users mailing list
> >> [email protected]
> >> https://lists.sourceforge.net/lists/listinfo/emc-users
> >>
> >
> ------------------------------------------------------------------------------
> > Put Bad Developers to Shame
> > Dominate Development with Jenkins Continuous Integration
> > Continuously Automate Build, Test & Deployment
> > Start a new project now. Try Jenkins in the cloud.
> > http://p.sf.net/sfu/13600_Cloudbees
> > _______________________________________________
> > Emc-users mailing list
> > [email protected]
> > https://lists.sourceforge.net/lists/listinfo/emc-users
> >
>
>
>
> ------------------------------------------------------------------------------
> Put Bad Developers to Shame
> Dominate Development with Jenkins Continuous Integration
> Continuously Automate Build, Test & Deployment
> Start a new project now. Try Jenkins in the cloud.
> http://p.sf.net/sfu/13600_Cloudbees
> _______________________________________________
> Emc-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/emc-users
>
>
------------------------------------------------------------------------------
Put Bad Developers to Shame
Dominate Development with Jenkins Continuous Integration
Continuously Automate Build, Test & Deployment 
Start a new project now. Try Jenkins in the cloud.
http://p.sf.net/sfu/13600_Cloudbees
_______________________________________________
Emc-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to