Re: [Emc-users] Different acceleration profiles - something that would remove the discontinuity in the first derivative of the acceleration ?

2017-03-23 Thread Nicklas Karlsson
> Hello Everybody,
> 
> what Sebastian so eloquently described is what I originally meant,
> however what the other people that replied added is also relevant I
> think. The linear velocity phase results in a constant acceleration that
> will have a Dirac delta function in its first order derivative, and that
> is not desirable, due to the frequencies introduced.

Jerk could change value instantly since it depends on voltage. There is a more 
less linear correlation between current and torque. Derivative of current 
depends on inductance and voltage.  Then jerk is integrated to acceleration it 
will be a continuous function.

These are physical limitations in an ordinary servo motor.

I brought it up because I thought to keep within physical limitations is a good 
idea.


> I must admit that my understanding of DC motor internals is somewhat
> buried, also the last time I implemented a state control is 15y ago...So
> I ll not follow up on these suggestions, although they would probably
> tackle the problem at the root.

The DC machine model is rather simple if you understand electrical circuits. 
Dynamic model will be the same after commutation for a BLDC and very similar 
after a transformation for a PMSM, size of constants may however vary.


> Many years ago I implemented a sin^2(x) acceleration profile that was
> jerk free, ...

There must be some jerk otherwise there will be neither acceleration nor 
velocity. I think a limit on the jerk will be a good solution. I wrote some 
equation earlier and jerk i limited by speed because there will be a speed 
dependent back-emf in the motor, jerk to increase speed is not possible at 
maximum speed.

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Different acceleration profiles - something that would remove the discontinuity in the first derivative of the acceleration ?

2017-03-23 Thread Gene Heskett
On Thursday 23 March 2017 07:01:19 MH wrote:

> Hello Everybody,
>
> what Sebastian so eloquently described is what I originally meant,
> however what the other people that replied added is also relevant I
> think. The linear velocity phase results in a constant acceleration
> that will have a Dirac delta function in its first order derivative,
> and that is not desirable, due to the frequencies introduced.
>
> I must admit that my understanding of DC motor internals is somewhat
> buried, also the last time I implemented a state control is 15y
> ago...So I ll not follow up on these suggestions, although they would
> probably tackle the problem at the root.
>
> Many years ago I implemented a sin^2(x) acceleration profile that was
> jerk free, I wondered if anybody else had implemented such a thing in
> the linuxcnc's TP.
>
Speaking from my electronics/broadcasting experience, where we have used 
a single sine^2(x) pulse as a general test signal for over 50 years, I 
can testify that if we had that in the tp, (and in the siggen module as 
a 4th choice of test signal shapes) it would be a most welcome addition 
to linuxcnc.  That single pulse on line 19  during the old ntsc vertical 
interval, picked out and viewed by the trained eye on an oscilloscope 
tells us everything we need to know about how well our transmitters were 
tuned. With the added advantage of being able to fine tune the 
transmitter while broadcasting a normal programming schedule.

If contributed to linuxcnc, that would be a major improvement milestone 
for linuxcnc.

> But using the feed forward terms is a very nice suggestion from Eric,
> ty for that, I ll do that today.
>
> BR
> Max.
>
> Am 22.03.2017 um 20:03 schrieb Sebastian Kuzminsky:
> > On 03/22/2017 12:50 PM, Nicklas Karlsson wrote:
> >>> Hello,
> >>>
> >>> I want to ask if anybody has worked on different acceleration
> >>> profiles for linuxcnc ? I am looking for something that would
> >>> remove the discontinuity in the first derivative of the
> >>> acceleration ?
> >>>
> >>> BR
> >>> Max.
> >>
> >> I guess to start with the DC motor model for example here
> >> https://www.electrical4u.com/torque-equation-of-dc-motor/ would be
> >> a good idea. Driving this with a limited voltage and current would
> >> probably be a good model for the limitations.
> >
> > I think Max is asking about changes to the LinuxCNC trajectory
> > planner that implement variable (non-constant) acceleration, aka
> > "limited jerk".
> >
> > Currently when you start from a stand-still, command a move, and
> > come to rest at the end of the move, LinuxCNC implements a
> > trapezoidal velocity profile.  This starts with a
> > constant-acceleration phase until it reaches the maximum speed for
> > the move, then enters a constant-velocity, zero-acceleration "cruise
> > phase", and finishes with a
> > constant-deceleration phase back to zero velocity.  Each phase
> > transition has an instant of infinite jerk, when acceleration goes
> > from one constant value to another in a single motion cycle.
> >
> > I think Yishin Li (https://github.com/yishinli) has done some work
> > in the area of jerk-limited trajectory planning, but AFAIK it has
> > not shown up as a pull request to our repo yet.
>
> --
> Check out the vibrant tech community on one of the world's
> most engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> ___
> Emc-users mailing list
> Emc-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-users


Cheers, Gene Heskett
-- 
"There are four boxes to be used in defense of liberty:
 soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author)
Genes Web page 

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Different acceleration profiles - something that would remove the discontinuity in the first derivative of the acceleration ?

2017-03-23 Thread MH

Hello Everybody,

what Sebastian so eloquently described is what I originally meant,
however what the other people that replied added is also relevant I
think. The linear velocity phase results in a constant acceleration that
will have a Dirac delta function in its first order derivative, and that
is not desirable, due to the frequencies introduced.

I must admit that my understanding of DC motor internals is somewhat
buried, also the last time I implemented a state control is 15y ago...So
I ll not follow up on these suggestions, although they would probably
tackle the problem at the root.

Many years ago I implemented a sin^2(x) acceleration profile that was
jerk free, I wondered if anybody else had implemented such a thing in
the linuxcnc's TP.

But using the feed forward terms is a very nice suggestion from Eric, ty
for that, I ll do that today.

BR
Max.








Am 22.03.2017 um 20:03 schrieb Sebastian Kuzminsky:
> On 03/22/2017 12:50 PM, Nicklas Karlsson wrote:
>>> Hello,
>>>
>>> I want to ask if anybody has worked on different acceleration profiles
>>> for linuxcnc ? I am looking for something that would remove the
>>> discontinuity in the first derivative of the acceleration ?
>>>
>>> BR
>>> Max.
>>
>> I guess to start with the DC motor model for example here 
>> https://www.electrical4u.com/torque-equation-of-dc-motor/ would be a good 
>> idea. Driving this with a limited voltage and current would probably be a 
>> good model for the limitations.
> 
> I think Max is asking about changes to the LinuxCNC trajectory planner 
> that implement variable (non-constant) acceleration, aka "limited jerk".
> 
> Currently when you start from a stand-still, command a move, and come to 
> rest at the end of the move, LinuxCNC implements a trapezoidal velocity 
> profile.  This starts with a constant-acceleration phase until it 
> reaches the maximum speed for the move, then enters a constant-velocity, 
> zero-acceleration "cruise phase", and finishes with a 
> constant-deceleration phase back to zero velocity.  Each phase 
> transition has an instant of infinite jerk, when acceleration goes from 
> one constant value to another in a single motion cycle.
> 
> I think Yishin Li (https://github.com/yishinli) has done some work in 
> the area of jerk-limited trajectory planning, but AFAIK it has not shown 
> up as a pull request to our repo yet.
> 
> 

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Different acceleration profiles - something that would remove the discontinuity in the first derivative of the acceleration ?

2017-03-22 Thread Nicklas Karlsson
> >> Hello,
> >>
> >> I want to ask if anybody has worked on different acceleration profiles
> >> for linuxcnc ? I am looking for something that would remove the
> >> discontinuity in the first derivative of the acceleration ?
> >>
> >> BR
> >> Max.
> >
> > I guess to start with the DC motor model for example here 
> > https://www.electrical4u.com/torque-equation-of-dc-motor/ would be a good 
> > idea. Driving this with a limited voltage and current would probably be a 
> > good model for the limitations.
> 
> I think Max is asking about changes to the LinuxCNC trajectory planner 
> that implement variable (non-constant) acceleration, aka "limited jerk".
> 
> Currently when you start from a stand-still, command a move, and come to 
> rest at the end of the move, LinuxCNC implements a trapezoidal velocity 
> profile.  This starts with a constant-acceleration phase until it 
> reaches the maximum speed for the move, then enters a constant-velocity, 
> zero-acceleration "cruise phase", and finishes with a 
> constant-deceleration phase back to zero velocity.  Each phase 
> transition has an instant of infinite jerk, when acceleration goes from 
> one constant value to another in a single motion cycle.
> 
> I think Yishin Li (https://github.com/yishinli) has done some work in 
> the area of jerk-limited trajectory planning, but AFAIK it has not shown 
> up as a pull request to our repo yet.

Jerk depends on the inductance in the motor model and voltage at inductance.

In motor model theres is: DC bus voltage, back emf depending on motor speed and 
resistive voltage drop.

If resistive voltage drop is small jerk limits will depend on speed and reach 
zero at maximum speed. To use a constant will not work.

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Different acceleration profiles - something that would remove the discontinuity in the first derivative of the acceleration ?

2017-03-22 Thread Peter C. Wallace
On Wed, 22 Mar 2017, Sebastian Kuzminsky wrote:

> Date: Wed, 22 Mar 2017 13:03:06 -0600
> From: Sebastian Kuzminsky <s...@highlab.com>
> Reply-To: "Enhanced Machine Controller (EMC)"
> <emc-users@lists.sourceforge.net>
> To: "Enhanced Machine Controller (EMC)" <emc-users@lists.sourceforge.net>
> Subject: Re: [Emc-users] Different acceleration profiles - something that
> would remove the discontinuity in the first derivative of the acceleration
>  ?
> 
> On 03/22/2017 12:50 PM, Nicklas Karlsson wrote:
>>> Hello,
>>>
>>> I want to ask if anybody has worked on different acceleration profiles
>>> for linuxcnc ? I am looking for something that would remove the
>>> discontinuity in the first derivative of the acceleration ?
>>>
>>> BR
>>> Max.
>>
>> I guess to start with the DC motor model for example here 
>> https://www.electrical4u.com/torque-equation-of-dc-motor/ would be a good 
>> idea. Driving this with a limited voltage and current would probably be a 
>> good model for the limitations.
>
> I think Max is asking about changes to the LinuxCNC trajectory planner
> that implement variable (non-constant) acceleration, aka "limited jerk".
>
> Currently when you start from a stand-still, command a move, and come to
> rest at the end of the move, LinuxCNC implements a trapezoidal velocity
> profile.  This starts with a constant-acceleration phase until it
> reaches the maximum speed for the move, then enters a constant-velocity,
> zero-acceleration "cruise phase", and finishes with a
> constant-deceleration phase back to zero velocity.  Each phase
> transition has an instant of infinite jerk, when acceleration goes from
> one constant value to another in a single motion cycle.
>
> I think Yishin Li (https://github.com/yishinli) has done some work in
> the area of jerk-limited trajectory planning, but AFAIK it has not shown
> up as a pull request to our repo yet.
>
>
> -- 
> Sebastian Kuzminsky

I think micges (Michael Geszkiewicz) also had an at least partially working
Limited jerk profile TP, not sure if this was pre-CAB or not.

>
> --
> Check out the vibrant tech community on one of the world's most
> engaging tech sites, Slashdot.org! http://sdm.link/slashdot
> ___
> Emc-users mailing list
> Emc-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-users
>

Peter Wallace
Mesa Electronics

(\__/)
(='.'=) This is Bunny. Copy and paste bunny into your
(")_(") signature to help him gain world domination.


--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Different acceleration profiles - something that would remove the discontinuity in the first derivative of the acceleration ?

2017-03-22 Thread Sebastian Kuzminsky
On 03/22/2017 12:50 PM, Nicklas Karlsson wrote:
>> Hello,
>>
>> I want to ask if anybody has worked on different acceleration profiles
>> for linuxcnc ? I am looking for something that would remove the
>> discontinuity in the first derivative of the acceleration ?
>>
>> BR
>> Max.
>
> I guess to start with the DC motor model for example here 
> https://www.electrical4u.com/torque-equation-of-dc-motor/ would be a good 
> idea. Driving this with a limited voltage and current would probably be a 
> good model for the limitations.

I think Max is asking about changes to the LinuxCNC trajectory planner 
that implement variable (non-constant) acceleration, aka "limited jerk".

Currently when you start from a stand-still, command a move, and come to 
rest at the end of the move, LinuxCNC implements a trapezoidal velocity 
profile.  This starts with a constant-acceleration phase until it 
reaches the maximum speed for the move, then enters a constant-velocity, 
zero-acceleration "cruise phase", and finishes with a 
constant-deceleration phase back to zero velocity.  Each phase 
transition has an instant of infinite jerk, when acceleration goes from 
one constant value to another in a single motion cycle.

I think Yishin Li (https://github.com/yishinli) has done some work in 
the area of jerk-limited trajectory planning, but AFAIK it has not shown 
up as a pull request to our repo yet.


-- 
Sebastian Kuzminsky

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] Different acceleration profiles - something that would remove the discontinuity in the first derivative of the acceleration ?

2017-03-22 Thread Nicklas Karlsson
> Hello,
> 
> I want to ask if anybody has worked on different acceleration profiles
> for linuxcnc ? I am looking for something that would remove the
> discontinuity in the first derivative of the acceleration ?
> 
> BR
> Max.

I guess to start with the DC motor model for example here 
https://www.electrical4u.com/torque-equation-of-dc-motor/ would be a good idea. 
Driving this with a limited voltage and current would probably be a good model 
for the limitations.

I could help out with the math if necessary but have a little bit limited time.

--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


[Emc-users] Different acceleration profiles - something that would remove the discontinuity in the first derivative of the acceleration ?

2017-03-22 Thread MH

Hello,

I want to ask if anybody has worked on different acceleration profiles
for linuxcnc ? I am looking for something that would remove the
discontinuity in the first derivative of the acceleration ?

BR
Max.


--
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users