[ECOS] Re: Servo Control Problems on the ARM AEB1

Jonathan Larmour jlarmour@redhat.com
Wed Aug 30 15:50:00 GMT 2000


louis l legrand wrote:
[ AEB interrupt jitter ] 
> The question is, what is causing the jitter? Even though there is no
> jitter at 50.00 and 48.00 Hz, I am uncomfortable using these settings
> without understanding why the jitter occurs at the other settings.  I
> don't want this to be a problem later.  The jitter direction indicates
> that the PWM pulse is erroneously staying on too long, which suggests that
> the timer interrupt latency is inconsistent.  Is it possible that there is
> some hidden process, which periodically out prioritizes the timer
> interrupt?  I believe I have set the interrupt priorities as high as
> possible.  Is there any way to up their priorities even more?
> 
> Things I have tried:
> 
> To verify that the jitter isn't caused by the sevo itself, I used the
> hardware PWM to drive the servo at frequencies where the software PWM
> causes a jitter.  The hardare PWM causes no jitter, ever.
> 
> Played with the interrupt priorities.  No change for any of the many
> combinations I tried.

Well, some other interrupt would certainly be my guess. For those symptoms
it could only really mean something disabling interrupts for a while -
which in a simple system like this would presumably only be other
interrupts.

The only other candidate I can think of is the real-time clock interrupt (
CYGNUM_HAL_INTERRUPT_TIMER0 ) - even though that hardly does anything in
its ISR. But still it may be all it takes.

To find out, disable the CYGVAR_KERNEL_COUNTERS_CLOCK config option
temporarily (or just edit kernel/VERSION/src/common/clock.cxx at
Cyg_RealTimeClock::Cyg_RealTimeClock(), and comment out the
interrupt.unmask_interrupt() call).

Jifl
-- 
Red Hat, 35 Cambridge Place, Cambridge, UK. CB2 1NS  Tel: +44 (1223) 728762
"Plan to be spontaneous tomorrow."  ||  These opinions are all my own fault


More information about the Ecos-discuss mailing list