0

I'm designing a small slow control system with ATMEGA2560. This board needs to measure temperature, voltage(0~4V), magnetic field using sensors, and monitor the digital status(High or Low) of some wires. Whenever each measurement happens, then reading should be stored along with timestamp. The accuracy of the timing should be 1ms or better. The data should be kept in a flash memory.

The ambient temperature around the board will be between -50°C and 0°C. The operating temperature of the MCU, and the sensors that I chose include the range. However, I wonder how to have a good accuracy of the time counting. Can I use a quartz crystal operating at -55 degrees Celsius and consider its ppm value as overall error, or should I use some temperature compensated oscillator?

Nownuri
  • 719
  • 9
  • 22
  • You could try thermally isolating the PCB and use the MCU's heat to increase the internal temperature above -40°C. – Turbo J Aug 24 '18 at 13:41
  • "1ms or better" is not a meaningful spec here - you need to state it in terms of maximum allowed time error after some period of run time. – Chris Stratton Aug 25 '18 at 15:31

2 Answers2

0

The best solution I've seen for flexible timing is the DS3231.

This can provide very good accuracy over extended periods with low drift ..BUT.. it is only characterized down to -40degC.

You could try testing a batch at the extended temperature range, or talk to Maxim about what the absolute limits might be.

A cheaper solution would be the DS3231M which is rated to -45degC operation but is not quite as accurate.
You still need to characterize it at -50degC of course, as it's likely not to quite deliver is usual 5ppm.

Jack Creasey
  • 21,729
  • 2
  • 15
  • 29
  • The RTC that I had in mind was the DS3231MZ+. Would it be more accurate to use the RTC than to use MCU and crystal only? – Nownuri Aug 25 '18 at 10:25
  • @Nownuri Yes, they are much better than an MCU oscillator. A lot depends on what you are using your ms accurate timer for. – Jack Creasey Aug 25 '18 at 15:10
0

In general oscillators have better guaranteed startup characteristics than using a raw crystal with an MCU. You can get, say, a 16MHz oscillator that is guaranteed to operate and to be within +/-100ppm from -55 to +125°C (including initial tolerance, voltage and loading).

It's not clear whether that's good enough for you. You say 1ms. At 100ppm, which is an accuracy of +/-0.01%, it could fall 1ms out of sync with a perfect clock in as little as 100 seconds.

There are temperature compensated oscillators with 0.27ppm accuracy, ovenized oscillators and even (extremely expensive) miniature atomic clocks with 0.05ppb accuracy but few of them are characterized for such low temperature operation so you might have to provide a heater.

Spehro Pefhany
  • 397,265
  • 22
  • 337
  • 893