4
\$\begingroup\$

Firstly I just want to say I have next to 0 electronics knowledge so if I say something dumb I apologize.

I am wanting to make a device which outputs a 1 pps square wave signal that is highly accurate over the course of 60 mins. I don't want the timing of the signal to be off by more than 1-2 ms each hour but less error is better, so an accuracy of ~0.1 ppm would be ideal.

The intended use is to send the PPS signal to a DAQ device which is time-agnostic, to provide it with an accurate clock while the DAQ is recording. The DAQ's reported sample rate isn't accurate, but if I have a signal that represents accurate time I can get a more accurate estimate of sample rate by comparing the number of samples with the time elapsed between two samples I know to be X time apart. The DAC can record the square wave signal input, so I wish to use the rising edge of each pulse in the recording to mark a sample as 1 second elapsed from the previous rising edge sample. The DAQ's sample rate is ~30000 Hz, and if the time I estimate each sample to have occurred is off by more than 10 ms then the collected data becomes at best a lot more difficult to analyze, and at worst unusable hence why I'd like ~0.1 ppm accuracy. Although I probably can't know the exact sample rate as it does drift slightly over time, I do know it's usually around 29998-30002 Hz on average over an hour, and that the sample rate is consistent enough over this period that having the average rate over the hour is sufficient for my analysis.

I should add that this all needs to be set up in a room that cannot receive GPS signal, so GPS modules aren't feasible. Also for what it's worth, the entire set up will just remain in a room that probably doesn't ever vary in temperature by more than 5°C.

Right now I have two main questions.

  1. Would using a TCXO be appropriate for this purpose? Or otherwise what should I be looking into that might be better suited? I started off looking at the Adafruit DS3231 RTC but I was told the TCXO it uses is relatively low quality and I should look into other ones.
  2. I would need to convert the output signal from a TCXO to a 1pps signal. Is this the kind of thing I should be looking at to accomplish this? http://www.leapsecond.com/pic/picdiv.htm

Update: I'm going to mark this as answered because at the very least I've been given a lot to think about, but definitely have got some more clarity on this problem now as well. thanks all

\$\endgroup\$
10
  • 1
    \$\begingroup\$ You are not saying anything about what this is to be used for and why you don't want drift over time, temperature, etc. Can you accept local-in-time jitter for the edges? How is the edge to be detected, used, etc? Are you looking for something like this? In any case, there's very little chance that anyone is going to guess right about just what you need and how you need it if you don't talk about it. And having stability here doesn't mean results will be much good when finally being used over there. More info, I think. \$\endgroup\$
    – jonk
    May 18 at 6:33
  • \$\begingroup\$ @jonk ok, thanks for the criticisms of the post. I'll try to amend it so it is more informative. \$\endgroup\$
    – Lachlan
    May 18 at 6:37
  • 1
    \$\begingroup\$ A system is like a car. Everything is designed into a whole. You cannot replace the engine with one having more horsepower, without affecting the transmission, the drive shafts, the axles, the braking system, sprung and unsprung loads, the wheel rims, the tire construction/design and finally all the way down to how that power is transferred through friction with surfaces the whole thing is intended for. If you are fast and loose with your needs, changing out one tire for a different one may be fine. But if you have precision needs (say, racing on a track?), then... it is a whole other thing. \$\endgroup\$
    – jonk
    May 18 at 6:42
  • 1
    \$\begingroup\$ Better than a TCXO, and not as expensive as an atomic standard, is an OCXO. \$\endgroup\$
    – Neil_UK
    May 18 at 8:11
  • 1
    \$\begingroup\$ Are you saying that there's absolutely no way to bring a timing reference signal into the room from outside, even with a cable? In our lab, we have a GPS receiver in a window, and its PPS output goes to an RS422 driver, and that gets distributed to whoever needs it. \$\endgroup\$
    – Dave Tweed
    May 18 at 10:57

2 Answers 2

3
\$\begingroup\$

Because pps (or whatever frequency) pulses are typically generated from dividing a clock, the accuracy of those pulses (in terms of frequency/ period) would be straight away the accuracy of the oscillator.

A practical example: you get your pps signal by dividing a 1 MHz clock by 1,000,000. If your clock has an accuracy of, say, 7 ppm and the frequency happens to be 1.000007 MHz, your actual pps frequency will be 1.000007 Hz after division, also 7 ppm away.

The DOT050F-010.0M is a TCXO with 50 ppb (0.05 ppm) freq stability and £21, if that is within your definition of cheap. There are atomic clock chips below the ppb for thousands, so a wild range.

"frequency stability" means how much the frequency will change in operation. then there is a calibration, aging effects and load effects on frequency. you still need to compensate these three bad guys, is not a plug'n'play thing.

\$\endgroup\$
12
  • \$\begingroup\$ Ok thanks for the answer. I think I understand all that, what I'm more curious about is whether a TCXO is the appropriate clock for my intended usage and required accuracy? \$\endgroup\$
    – Lachlan
    May 18 at 7:32
  • 3
    \$\begingroup\$ @Lachlan, there are TCXOs with >20 ppm and TCXOs with <1 ppm stability, you just need to look for the right one. "TCXO" by itself doesn't mean a certain stability. \$\endgroup\$
    – Joan
    May 18 at 7:45
  • \$\begingroup\$ I more meant whether a TCXO in general was the right kind of component I should be looking at, or if there is another type of component/completely different method I should be considering but I think you have inadvertently answered that now (I did look at atomic clocks - way too expensive). Otherwise, the information in your edits has given me a bit more to look into so thanks, hopefully I'll be a bit better informed once I understand that \$\endgroup\$
    – Lachlan
    May 18 at 7:52
  • 1
    \$\begingroup\$ @Lachlan, a TCXO, if selected the right part, can achieve that accuracy. as I added, you still need to compensate for aging and PCB effects. for example, if your TCXO were to run at 10.000002 MHz (+0.2 ppm) you will simply divide by 10,000,002 to have 1 Hz. An alternative is to choose an VCTCXO (Voltage controlled TCXO) where with a voltage coming from a DAC you will correct those effects, not necessary to go that complicated, just mentioning there is that option. \$\endgroup\$
    – Joan
    May 18 at 8:24
  • 1
    \$\begingroup\$ @Lachlan I learned the next step after TCXO is OCXO where you don't just compensate the temperature but actually hold it steady. \$\endgroup\$
    – user253751
    May 18 at 9:21
3
\$\begingroup\$

The easiest solution for you is probably a GPS receiver with a 1pps output (many of the demo boards have a pps signal. Like the GPS-16329 by Sparkfun).

The other possibility for the accuracy you want is a an OCX. You can get some cheap ones on aliexpress but there you can be lucky or not. Also, they are not really plug&play and should be run continuously for best results. You can just buy OCX Modules, for example here.

\$\endgroup\$
1
  • 1
    \$\begingroup\$ it's a good suggestion. As I said to David Tweed in the other comment thread, whether I'm able to set up a gps receiver and run a line into my room isn't really up to me but it's something to aim for long-term \$\endgroup\$
    – Lachlan
    May 18 at 13:51

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.