Lo all;

I'm back to playing with the servo again, following John Thorntons instructs 
from the wiki article.  And I note a couple things.

1. The pid_a.FF1 value has little or no effect on the amplitude of the error. 
So that probably needs addressed by educating me on how its calculated.

2.pid_a.FF2 isn't working as that article says it should, a little effect on 
the shape but zero effect that would lead to a zero error when cruising

3. pid_a.Pgain effects the amplitude of the error signal, with about 350000 
being the onset of a low level oscillation, about 10% when cruising.  But its 
also the lowest error at 15 to 20 millivolts.

4. I am getting some improvement. but nothing like the pix on that wiki article.

It explains that pid_a.FF1 should be 10/velocity@10V (velocity is in machine 
units per second).  Since I do not yet have the motor actually moving the BS-1 
clone, nor have I managed to get a home switch set up so I can actually measure 
the scale, the scale temporarily set is likely wrong.  Since I've 2 worms in 
series, for playing I've a high value set for scale, 5000. With the encoder on 
the back of the motor it could well be higher than that.

But no combination of numbers results in a cruising error of zero, its alway 
plus at cruise speed.

And if I go at more than about 30% high pwm, motor inertia causes the servo to 
use reverse to stop if I ask for more than 60 degrees a second.  This use of 
reverse causes the supply, a 350 watt 24 volt switcher, to do a shutdown 
because it thinks is been crowbarred, and the powerdown to recover is around 3 
minutes.

I think I might have a way that will fix that as this driver can do crowbar the 
motor braking if the signals are re-arranged and fast enough. If I setup a 
hardware timer in the form of a a retriggerable ooneshot drive  from the pwm 
signal, which is running at 4 kilohertz, or 250u-secs pulse is a 100% signal, 
but the timer timesout in 200 microseconds, it will time out and apply the 
brakes for whats left of the 250 microsecond pwm cycle if the pwn drops below 
20%. This should slow the motor fast enough it will never actually use reverse 
to stop.  And that mode will never effect the psu.

But first, what can I do about the ineffectiveness of setting FF1 anyplace 
between .5 and 25. I think its effecting the motors cruising speed but has zero 
effect on the amplitude or shape of the error if enough Pgain is used to make 
it follow well.

With Pgain at 250000 it cruises stably, with a reasonably flat top to the 
error, about 20 millivolts of error, but FF2 seems to have little effect on the 
initial overshoot, or the overshoot when stopping, and its the overshoot when 
stopping that is shutting down the supply unless I set max jog to below 60 so 
friction stops it.  That 60 is about 1/3rd of what the motor can do in terms of 
output shaft rpms if fed its normal 24 volts.

Anybody know what I should look at next?

Thank you.

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)
If we desire respect for the law, we must first make the law respectable.
 - Louis D. Brandeis
Genes Web page <http://geneslinuxbox.net:6309/gene>

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

Reply via email to