RE: Follow-Error
Ray,
This brings back a conversation I had with Fred Proctor about this long ago.
If I remember correctly the MAX_VELOCITY in the [TRAJ] section does need to
be larger than the one in the individual axis sections. The reason for this
is if you were doing a 45 deg move and had both axis's moving at max rate
the velocity of the tip will be greater than the individual axis velocity.
The parameter in the [TRAJ] section needs to be sufficiently high so the
resulting component does not exceed it.
Hope I remembered this properly.
Tim
[Denver, CO]
> -----Original Message-----
>
>
> Malte
>
> After a little more work here, I have come to the tentative conclusion
> that you should try setting
>
> [TRAJ]
> ..
> MAX_VELOCITY = 1.5
>
> to a value larger than the value that you set for any axis
>
> [AXIS 0]
> ..
> MAX_VELOCITY = 1.2
>
> IMHO this allows some overhead that steppermod can use to feed in
> pulses that otherwise build up as following error during acceleration and
> during running at max velocity.
>
> (You would not need to translate the experimental details below)
>
>
> DETAILS OF MY EXPERIMENT.
>
> 1 - Percent of Max Velocity and Following Error.
>
> On my first run, I set all Max Velocity parameters to 15 which
> gave a rapid
> feedrate of 900 mm/min. I also had several processes running which may
> account for some of the differences between this experiment and the others
> below. All of these values are averaged from five runs at each feedrate.
>
> feedrate 900 -> 34 mm
> feedrate 890 -> 46 mm
> feedrate 880 -> 83 mm
> feedrate 877 -> 108 mm
> feedrate 875 -> 150 mm
> feedrate 874 -> 183 mm
> feedrate 873 -> 230 mm
> feedrate 872 -> 307 mm
> feedrate 871 -> 480 mm
> feedrate 870 -> 500 mm without trip
>
> First reading of this suggests that I may have exceeded the
> ability of my PC
> to spit out pulses when I try to travel faster than 870 mm/min using 1600
> pulses for each mm. But keep reading.
>
>
> 2 - Max Velocity problems with steppermod
>
> When I change the max velocity to 10 rather than 15 and I am moving at
> 600 mm/min I again quickly run into following error at 600 ipm.
> However at
> 592 mm/min the control is able to complete the move as programmed.
> Although I didn't do as rigorous a test of this as at 900 mm/min,
> I suspect
> that the curve would look about the same.
>
> I changed the max velocity to 5 rather than 10 and I am moving at 300
> mm/min I again run into following error but it is nearly at the 500 mm
> distance.
>
> So the easiest conclusion, that there is a max that I'd exceeded at 900
> mm/min doesn't prove to be a good answer. It would seem that the correct
> answer has more to do with a percent of the traj max velocity and that
> the following error problem is compounded at higher max velocity values.
>
>
> 3 - Acceleration problems with steppermod.
>
> it would seem that the ini values
>
> DEFAULT_ACCELERATION = 20.0
> MAX_ACCELERATION = 20.0
>
> affect how soon a following error will occur when an axis is started at
> or near maximum velocity. I'll illustrate by giving some average distance
> traveled before the following error message stops the control. I am using
> your ini with max velocity = 15. This gives a max travel rate of 900
> mm/min. (35 ipm) I used the K6II-400 and executed the mdi command
>
> g1 f880 x500
>
> I repeated the procedure several times and averaged the distance traveled
> before following error.
>
> acceleration 01.0 -> 233mm
> acceleration 02.0 -> 170mm
> acceleration 03.0 -> 161mm
> acceleration 05.0 -> 159mm
> acceleration 10.0 -> 134mm
> acceleration 15.0 -> 130mm
> acceleration 20.0 -> 126mm
> acceleration 25.0 -> 124mm
>
> I can complete the entire 500 mm at a feedrate of 870/900 with an
> acceleration of 20 and 875 with an acceleration of 1. Below are some
> values of feedrate and the distance traveled before following error stops
> the axis.
>
>
> 4 - Discussion
>
> It would seem from the above test that at max velocity, steppermod has no
> way to feed in steps that accumulate as following error during
> acceleration
> or that build up as left-over pulses during rapid travel.
>
> Quote from Fred Proctor regarding steppermod and binning.
>
> "A version of emcmot.c that uses the "binning" algorithm for allocating
> pulses that causes resonance in some systems. This was the
> original stepper
> motor algorithm added to the servo-only emcmot.c, using the STEPPER_MOTORS
> compile time flag. This creates a second task that runs faster than the
> motion controller, typically 10 cycles for every motion cycle.
> During these
> cycles, the pulses resulting from the motion cycle's calculated position
> increment are spread out as best as possible. "
>
> If the variable TRAJ MAX_VELOCITY sets the number of spaces within each
> bin to exactly match the number of steps needed to achieve max velocity
> then there is nothing left over for steppermod to use to catch up and
> following error gradually accumulates until it reaches the trip setting.
>
> 4 - Possible solution
>
> If Traj Max Velocity sets the number of spaces in a bin and max velocity
> for any single axis never quite reaches the number of steps set, then
> steppermod should be able to feed in steps that have accumulated as
> following error. To test this using much of the same procedure used
> during the acceleration tests above, I set
>
> [TRAJ]
> MAX_VELOCITY = 16
>
> and each axis
>
> MAX_VELOCITY 15
>
> and ran in mdi using g1 f900 x500. It completed the full move every time.
>
> 5 - Possible problems with this solution
>
> Some have observed times when axes do not seem to move according to
> a straightforward interpretation of the values set for Max Velocity. It
> was suggested that setting all Max Velocities the same might solve that
> problem. If you decide to implement the solution suggested above, would
> you watch for times when you might get the faster rate rather than the one
> set for each individual axis.
>
> Hope this helps
>
> Ray - (ultracrepidarian: (n., adj.) a person who gives opinions
> beyond his scope
> of knowledge.)
>
>
> On Sun, 17 Jun 2001, you wrote:
> >
> > Hello,
> > when I dirive the axes in manual mode I get a Follow-error
> after some time.
> > Here is my conf.
> > Thanks a lot
> > Malte
Date Index |
Thread Index |
Back to archive index |
Back to Mailing List Page
Problems or questions? Contact