On Sun, Aug 22, 2021 at 5:15 PM John Dammeyer <jo...@autoartisans.com>
wrote:

>
>
> What's the goal?  To traverse the path as accurately as possible or to
> reduce the shaking from sudden speed changes (the jerk)?
>

"jerk" is not a chance in speed.  Jerk is change in acceleration.
 Planning an optimum jerk limited curved path in n-dimension has no closed
form solution.  I think you only option is to do a simulation out to some
future time horizon.   Actually for a machine tool, why not run the
simulation off-line and use as much time and computer power as it takes.

What is the goal?  Usually it is a complex compromise of time and accuracy.
  It could even be a different compromise at different locations on the part


> Mostly just confused.
> John
>
>
>
>
>
> > -----Original Message-----
> > From: Curtis Dutton [mailto:curtd...@gmail.com]
> > Sent: August-22-21 11:48 AM
> > To: Enhanced Machine Controller (EMC)
> > Subject: Re: [Emc-users] jerk control
> >
> > I have a desire to implement this.
> >
> >  My business is in need of another cnc router and I will be building as
> > high speed of a machine as I can afford. It is going to be a dual table
> but
> > a horizontal spindle. 1m x 1m working envelope. I plan on using linear
> > motors.
> >
> > It will require jerk limiting to really get the value out of the machine.
> >
> > I have been working on bits and pieces in my spare time but I have very
> > little time right now.
> >
> >
> > My main approach so far is....
> >
> >
> >  The realtime motion component will be enhanced so as to interpolate
> nurbs
> > curves. Those curves need be in a specific form of parameterization.
> (coord
> > length parameterized)
> >
> >
> > The other part is in user space and it is the hard part. To perform
> > blending of line segments it converts segments to nurbs curves, and
> blends
> > them together by fitting a segment of a clothoid (euler spirals) in
> between
> > them. It must do all of this while fitting within all of the velocity,
> > accel, jerk and limit constraints. Then it reparameterizes these curves
> for
> > consumption by the motion component.
> >
> > This is essentially plotting a reasonable driving path on an N
> dimensional
> > race track.
> >
> >  From some of the papers that I have read it looks like it will involve
> > numerical integration and/or linear programming. Adding jerk equations
> into
> > standard physics makes it very much harder to solve. Closed form
> equations
> > don't really seem to exist. (If you have experience with this I could
> > sorely use pointers, links, papers)
> >
> >
> > Ultimately this is a very difficult task. Building a stripped down
> version
> > of a jerk controlled motion planner is what many people have done to
> earn a
> > PHD.
> >
> >
> > I would be happy to join up with anyone else that is interested in
> working
> > on this. Even ideas, papers, demos is very helpful. Timeline for this...
> > sadly a few years at best before completion.
> >
> >
> > Thanks,
> >     Curt
> >
> > On Tue, Aug 17, 2021, 10:10 PM andrew beck <andrewbeck0...@gmail.com>
> wrote:
> >
> > > Here is the text from your link sam
> > >
> > >
> > > Ramped velocity in this case just means constant acceleration over the
> > > whole segment. This is less optimal than a trapezoidal velocity
> profile,
> > > since the acceleration is not maximized. However, if the segment is
> short
> > > enough, there isn�t enough time to accelerate much before we hit the
> next
> > > segment. Recall the short line segments from the previous example.
> Since
> > > they�re lines, there�s no cornering acceleration, so we�re free to
> > > accelerate up to the requested speed. However, if this line is between
> two
> > > arcs, then it will have to quickly decelerate again to be within the
> > > maximum speed of the next segment. This means that we have a spike of
> > > acceleration, then a spike of deceleration, causing a large jerk, for
> very
> > > little performance gain. This setting is a way to eliminate this jerk
> for
> > > short segments.
> > >
> > > Basically, if a segment will complete in less time than 1 /
> > > ARC_BLEND_RAMP_FREQ, we don�t bother with a trapezoidal velocity
> profile on
> > > that segment, and use constant acceleration. (Setting
> ARC_BLEND_RAMP_FREQ =
> > > 1000 is equivalent to always using trapezoidal acceleration, if the
> servo
> > > loop is 1kHz).
> > >
> > > You can characterize the worst-case loss of performance by comparing
> the
> > > velocity that a trapezoidal profile reaches vs. the ramp:
> > >
> > > # v_ripple = a_max / (4.0 * f) # where: # v_ripple = average velocity
> > > "loss" due to ramping # a_max = max axis acceleration # f = cutoff
> > > frequency from INI
> > >
> > > For the aforementioned machine, the ripple for a 20Hz cutoff frequency
> is
> > > 100 / (4 * 20) = 1.25 IPS. This seems high, but keep in mind that it is
> > > only a worst-case estimate. In reality , the trapezoidal motion
> profile is
> > > limited by other factors, such as normal acceleration or requested
> > > velocity, and so the actual performance loss should be much smaller.
> > > Increasing the cutoff frequency can squeeze out more performance, but
> make
> > > the motion rougher due to acceleration discontinuities. A value in the
> > > range 20Hz to 200Hz should be reasonable to start.
> > >
> > > Finally, no amount of tweaking will speed up a toolpath with lots of
> small,
> > > tight corners, since you�re limited by cornering acceleration.
> > >
> > > On Wed, Aug 18, 2021, 2:06 PM John Dammeyer <jo...@autoartisans.com>
> > > wrote:
> > >
> > > > This is what we're talking about right?
> > > > Ramping acceleration?
> > > > https://www.mmsonline.com/articles/understanding-jerk-control
> > > >
> > > > John
> > > >
> > > >
> > > > > -----Original Message-----
> > > > > From: Feral Engineer [mailto:theferalengin...@gmail.com]
> > > > > Sent: August-17-21 6:46 PM
> > > > > To: Enhanced Machine Controller (EMC)
> > > > > Subject: Re: [Emc-users] jerk control
> > > > >
> > > > > I'm curious what the current level of block lookahead is on lcnc
> > > compared
> > > > > to commercial controls. Anyone know the amount of data buffering
> that
> > > it
> > > > > can handle?
> > > > >
> > > > > Phil T.
> > > > > The Feral Engineer
> > > > >
> > > > > Check out my LinuxCNC tutorials, machine builds and other antics at
> > > > > www.youtube.com/c/theferalengineer
> > > > >
> > > > > Help support my channel efforts and coffee addiction:
> > > > > www.patreon.com/theferalengineer
> > > > >
> > > > > On Tue, Aug 17, 2021, 9:36 PM Sam Sokolik <samco...@gmail.com>
> wrote:
> > > > >
> > > > > > It would be the same setup...  Just using servo amps..
>  Velocity out
> > > > of
> > > > > > the pid - position back from the encoders.
> > > > > >
> > > > > > On Tue, Aug 17, 2021, 8:14 PM andrew beck <
> andrewbeck0...@gmail.com>
> > > > > > wrote:
> > > > > >
> > > > > > > Not sure Sam.
> > > > > > >
> > > > > > > I have a 7i77 on this mill though also.  So analog control
> > > > > > >
> > > > > > > On Wed, Aug 18, 2021, 12:51 PM Sam Sokolik <samco...@gmail.com
> >
> > > > wrote:
> > > > > > >
> > > > > > > > I am going to ask a stuid question..  If you have a velocity
> run
> > > > step
> > > > > > gen
> > > > > > > > with pid.   Couldn't you hook a limit3 between the pid and
> > > steghen.
> > > > > > > > Because the input is velocity instead of position - wouldn't
> the
> > > > > > > > acceleration limit in the limit3 be jerk instead of
> acceleration?
> > > >  I
> > > > > > am
> > > > > > > > sure it doesn't work that way.. I was just thinking you have
> > > moved
> > > > the
> > > > > > > > derivatives up one..
> > > > > > > >
> > > > > > > > (I can tell you it doesn't seem to work in practice -
> probably
> > > > because
> > > > > > > the
> > > > > > > > pid will always try to correct the error.  Like maybe you
> would
> > > > need to
> > > > > > > > negate the limit3 amount on the feedback side..)
> > > > > > > >
> > > > > > > > On Tue, Aug 17, 2021 at 1:28 PM Scott Harwell via Emc-users <
> > > > > > > > emc-users@lists.sourceforge.net> wrote:
> > > > > > > >
> > > > > > > > >  I haven't tried it yet, but this looks promising.
> > > > > > > > > LinuxCNC S-Curve Accelerations
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > Scott H
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >     On Tuesday, August 17, 2021, 12:57:06 PM CDT, Ralph
> > > Stirling
> > > > <
> > > > > > > > > ralph.stirl...@wallawalla.edu> wrote:
> > > > > > > > >
> > > > > > > > >  I've also been hoping to see this appear in a Linuxcnc
> update,
> > > > > > > > > as it has been worked on by a number of people for years.
> > > > > > > > > Here are the most recent threads about jerk-limited
> trajectory
> > > > > > > planning:
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > >
> > >
> https://forum.linuxcnc.org/24-hal-components/40152-jerk-limited-trajectory-planner-hal-component
> > > > > > > > >
> > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > >
> > >
> https://forum.linuxcnc.org/38-general-linuxcnc-questions/34666-c2-smooth-velocity-profile?start=0
> > > > > > > > >
> > > > > > > > > -- Ralph
> > > > > > > > > ________________________________________
> > > > > > > > > From: David Berndt [ber...@uberwin.com]
> > > > > > > > > Sent: Tuesday, August 17, 2021 9:01 AM
> > > > > > > > > To: Enhanced Machine Controller (EMC); andrew beck
> > > > > > > > > Subject: Re: [Emc-users] jerk control
> > > > > > > > >
> > > > > > > > > CAUTION: This email originated from outside the Walla Walla
> > > > > > University
> > > > > > > > > email system.
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > I don't have a great need for it with my machines, or the
> > > > time/brains
> > > > > > > to
> > > > > > > > > implement it. It just seems like a feature we really should
> > > have.
> > > > > > > > >
> > > > > > > > >   I'd be willing to participate monetarily in some sort of
> > > > system to
> > > > > > > > > incentivize the inclusion of jerk control. Perhaps an
> > > open-source
> > > > > > > feature
> > > > > > > > > bounty? Does the community want to consider that sort of
> thing?
> > > > > > > > >
> > > > > > > > > -Dave
> > > > > > > > >
> > > > > > > > > On Mon, 16 Aug 2021 23:06:05 -0400, andrew beck <
> > > > > > > > andrewbeck0...@gmail.com>
> > > > > > > > > wrote:
> > > > > > > > >
> > > > > > > > > > hey guys
> > > > > > > > > >
> > > > > > > > > > I am sitting here watching my cnc mill atm its shaking
> quite
> > > a
> > > > bit
> > > > > > > > > > acceleration is 600mm/sec2  which is not that high i
> think.
> > > > > > compared
> > > > > > > > to
> > > > > > > > > > every other cnc mill i have used with a commercial
> > > controller.
> > > > > > they
> > > > > > > > have
> > > > > > > > > > jerk control and work much better.  so looking forward to
> > > when
> > > > we
> > > > > > get
> > > > > > > > > > jerk
> > > > > > > > > > control here on linuxcnc!
> > > > > > > > > >
> > > > > > > > > > but in the mean time i need a poor mans jerk control and
> > > > thinking
> > > > > > of
> > > > > > > a
> > > > > > > > > > limit on the pid output to chop down the initial
> acceleration
> > > > for
> > > > > > the
> > > > > > > > > > first
> > > > > > > > > > moment in time just so little moves don't shake it to
> death
> > > > > > > > > >
> > > > > > > > > > andy mentioned that I could maybe use a limit component
> to
> > > > limit
> > > > > > the
> > > > > > > > > > initial acceleration for the first tiny moment in time
> to cut
> > > > down
> > > > > > on
> > > > > > > > the
> > > > > > > > > > vibrations.
> > > > > > > > > >
> > > > > > > > > > how do you guys think that could work?
> > > > > > > > > >
> > > > > > > > > > Regards
> > > > > > > > > >
> > > > > > > > > > Andrew
> > > > > > > > > >
> > > > > > > > > > _______________________________________________
> > > > > > > > > > Emc-users mailing list
> > > > > > > > > > Emc-users@lists.sourceforge.net
> > > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > >
> > >
> https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.sourceforge.net%2Flists%2Flistinfo%2Femc-
> > > > > users&data=04%7C01%7Cralph.stirling%40wallawalla.edu
> > > > %7C7457b9607a2d4747a1e508d961a1b508%7Cd958f048e43142779c8de
> > > > >
> > > >
> > >
> >
> bfb75e7aa64%7C0%7C0%7C637648169423748846%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJB
> > > > >
> > > >
> > >
> TiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=ue%2BwIaVhfay08NBevlCAvyOoNp0qVz9ojUuigRuCOOs%3D&reserved=0
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > _______________________________________________
> > > > > > > > > Emc-users mailing list
> > > > > > > > > Emc-users@lists.sourceforge.net
> > > > > > > > >
> > > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > >
> > > >
> > >
> https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Flists.sourceforge.net%2Flists%2Flistinfo%2Femc-
> > > > > users&data=04%7C01%7Cralph.stirling%40wallawalla.edu
> > > > %7C7457b9607a2d4747a1e508d961a1b508%7Cd958f048e43142779c8de
> > > > >
> > > >
> > >
> >
> bfb75e7aa64%7C0%7C0%7C637648169423748846%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJB
> > > > >
> > > >
> > >
> TiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=ue%2BwIaVhfay08NBevlCAvyOoNp0qVz9ojUuigRuCOOs%3D&reserved=0
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > _______________________________________________
> > > > > > > > > Emc-users mailing list
> > > > > > > > > Emc-users@lists.sourceforge.net
> > > > > > > > > https://lists.sourceforge.net/lists/listinfo/emc-users
> > > > > > > > >
> > > > > > > > > _______________________________________________
> > > > > > > > > Emc-users mailing list
> > > > > > > > > Emc-users@lists.sourceforge.net
> > > > > > > > > https://lists.sourceforge.net/lists/listinfo/emc-users
> > > > > > > > >
> > > > > > > >
> > > > > > > > _______________________________________________
> > > > > > > > Emc-users mailing list
> > > > > > > > Emc-users@lists.sourceforge.net
> > > > > > > > https://lists.sourceforge.net/lists/listinfo/emc-users
> > > > > > > >
> > > > > > >
> > > > > > > _______________________________________________
> > > > > > > Emc-users mailing list
> > > > > > > Emc-users@lists.sourceforge.net
> > > > > > > https://lists.sourceforge.net/lists/listinfo/emc-users
> > > > > > >
> > > > > >
> > > > > > _______________________________________________
> > > > > > Emc-users mailing list
> > > > > > Emc-users@lists.sourceforge.net
> > > > > > https://lists.sourceforge.net/lists/listinfo/emc-users
> > > > > >
> > > > >
> > > > > _______________________________________________
> > > > > Emc-users mailing list
> > > > > Emc-users@lists.sourceforge.net
> > > > > https://lists.sourceforge.net/lists/listinfo/emc-users
> > > >
> > > >
> > > >
> > > > _______________________________________________
> > > > Emc-users mailing list
> > > > Emc-users@lists.sourceforge.net
> > > > https://lists.sourceforge.net/lists/listinfo/emc-users
> > > >
> > >
> > > _______________________________________________
> > > Emc-users mailing list
> > > Emc-users@lists.sourceforge.net
> > > https://lists.sourceforge.net/lists/listinfo/emc-users
> > >
> >
> > _______________________________________________
> > Emc-users mailing list
> > Emc-users@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/emc-users
>
>
>
> _______________________________________________
> Emc-users mailing list
> Emc-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-users
>


-- 

Chris Albertson
Redondo Beach, California

_______________________________________________
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users

Reply via email to