[time-nuts] Conditioning Rubidium Oscillators

Adrian Godwin artgodwin at gmail.com
Tue Mar 15 18:28:39 EDT 2016


My understanding of the article was that although fairly simple control
techniques such as PID were used, their innovation was to determine what
function the loop was performing, (initial lock, stability, and transition
from one to the other) and to choose a set of constants for loop control
appropriate to each type. The ideal loop characteristics are not the same
for all of these.


On Tue, Mar 15, 2016 at 7:51 PM, Attila Kinali <attila at kinali.ch> wrote:

> On Mon, 14 Mar 2016 19:56:42 -0400
> Jim Harman <j99harman at gmail.com> wrote:
>
>
> Disclaimer: Control theory is not my strongest topic. I am pretty sure
> that what I have written here is correct. But if anyone finds any
> mistakes, please correct me.
>
> > On Mon, Mar 14, 2016 at 2:37 PM, Lars Walenius <
> lars.walenius at hotmail.com>
> > wrote:
> >
> > > I read this but couldnĀ“t understand why this is superior to the PI-loop
> > > with a pre-filter?
> > >
> > >
> > >
> http://ptfinc.com/wp-content/uploads/2016/03/App_37_RubContol-Rubidium-Control-%E2%80%93-A-Different-Approach.pdf
> >
> > > Anybody can say why? Even if regression is very useful the limitation
> of
> > > the GPS and ionosphere will be the problem?How much better is it
> reasonable
> > > to get??
>
> A PID loop adapts to a step as input faster than a PI loop.
> To give a rule of thumb: the D part is used to predict how fast
> the error is moving. If the error is shrinking fast, there will
> be an overshoot once the error reaches zero. Thus the D part is
> used to make the rate of change slower once the error becomes small.
> Nothing more.
>
> The wikipedia entry on PID controllers explains these things in
> some detail and should help understand it.
>
>
> > I think the potential benefit of this approach is that it continuously
> > predicts the long term drift of the oscillator and attempts to compensate
> > for it.
>
> Nope, the above appnote does not predict anything. It's not an adaptive
> control system at all. All they do is describe an PID controller without
> using the common language of the control theory people.
>
> > If the drift is reasonably linear, this means that you can use a
> > larger time constant in the control loop and thus be less sensitive to
> > short term GPS timing variations, while keeping the phase error close to
> > zero
>
> If the drift is linear, then the D part of the PID control loop will
> actually slightly increase the error compared to a PI controller.
>
> Proper adaptive control systems can also model higher order (ie changes
> that have components with a second or third (or higher) derivative) and
> the more fancy stuff even non-linear "drift".
>
> But the math behind that is not easy, and you need to have a good idea
> what the system (including reference, "plant", "sensor" and noise sources)
> looks like to build a control loop that improves on the PID controller.
> It's also quite easy to botch it up and make something that performes worse
> than just a P controller....
>
> > Of course if the oscillator drift is not predictable, this won't help and
> > might even make things worse.
>
> A lot of the components of the drift of most oscillators is actually
> quite predicatble. If you take a Rb vapor reference, the largest three
> drift components will be aging of the cell, temperature and air pressure.
> All three of them are relatively easy to model and can remove a lot
> of uncertainty (how much can be removed depends highly on the make up
> of the physics package).
>
> > I have done some experiments with an OCXO and a controller design similar
> > to the one Lars posted some time ago. I plotted the trend in the 3-hour
> > average DAC values over many days and used Excel to do a least-squares
> fit
> > to that data. As long as the oscillator is powered on continuously, this
> > gives an R^2 of over 90%, so the linearity of the drift is very good. If
> I
> > use this slope as a correction factor, i.e. adding X DAC counts per day
> to
> > the output of the PI control algorithm, it significantly reduces the
> > average TIC error at long time constants
>
> You could use a simple, single variable Kalman filter control loop to
> improve your PI controller. Just assume linear aging and let the
> Kalman filter predict it. For a gentle introduction into Kalman filters
> have a look at [1]. And yes this of course reduces the average TIC error,
> as you are removing one of the systematics, which has a relatively high
> contribution to the TIC error. The better the model of the system you
> are using and thus the more systematics you compensate for, the smaller
> the error will become and the more it will look like uncorrelated noise.
> But as I have written above, once you start doing more complex models,
> it gets harder to actually improve the output instead of detoriating it.
> If you make a mistake in the model, it will predict the wrong thing
> and thus correct into the wrong direction. And more often than not
> the detoriation will be larger than what the total gain of a simpler
> model would have been.
>
> For further reading I recommend to have a look at [2] to get the basics
> and google for "adaptive control" and "system identification".
>
>                         Attila Kinali
>
>
> [1] "Kalman Filtering", by Dan Simon, 2001
> http://academic.csuohio.edu/simond/courses/eec644/kalman.pdf
>
> [2] "Feedback control of dynamic systems" by Franklin et al.
>
> --
> It is upon moral qualities that a society is ultimately founded. All
> the prosperity and technological sophistication in the world is of no
> use without that foundation.
>                  -- Miss Matheson, The Diamond Age, Neil Stephenson
> _______________________________________________
> time-nuts mailing list -- time-nuts at febo.com
> To unsubscribe, go to
> https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
> and follow the instructions there.
>


More information about the time-nuts mailing list