Я понимаю, что, поскольку Raspberry Pi не имеет встроенных аппаратных часов реального времени, могут возникнуть некоторые проблемы с точным хронометражом, даже если постоянство при перезагрузках не является обязательным требованием .
Это в значительной степени можно смягчить, запустив демон NTP, который будет непрерывно корректировать местное время, но NTP не подходит, если Raspberry Pi не подключен к сети.
Поэтому, если я оставлю Raspberry Pi включенным с точным временем в начале, на сколько я должен ожидать, что сообщаемое время будет отклоняться от фактического местного времени?
А как насчет между перезагрузками?
raspbian
timekeeping
system-clock
SDsolar
источник
источник
Ответы:
На самом деле есть две проблемы:
1) Точность самого осциллятора, который имеет такие переменные, как уникальность, возраст, температура и т. Д. Быстрый просмотр каталога позволяет предположить, что типичные микропроцессорные кристаллы имеют порядок +/- 10-100 частей на миллион
2) Если есть что-то, что может вызвать ошибки хронометража относительно кварцевого генератора. Это могут быть такие вещи, как пропущенные прерывания или проблемы перехода, если используемые часы следуют за множителем ФАПЧ - или подвержены дросселированию часов (если оно используется).
Между прочим, NTP, если он не очень хорошо реализован, может на самом деле ухудшить точную временную привязку относительно себя в краткосрочной перспективе, поскольку это означает, что локальные часы могут быть изменены, чтобы соответствовать внешнему авторитету, а не оставаться согласованными с самим собой.
источник
Это будет зависеть от кристалла, который они использовали, возможно, 10 частей на миллион или около того. Вы не можете действительно рассчитывать на это, если это не указано где-то, хотя. Вы можете использовать GPS, если не подключены к сети. В противном случае можно добавить чип RTC.
Вам понадобится что-то лучше, чем просто время на программное обеспечение, если есть вероятность, что RPi может потерять мощность или потерпеть крах.
Я надеюсь подключить RTC к GPIO в ближайшее время
источник
Интерпретация вопроса о Raspberry Pi с Raspbian.
ОС доминирует в том, как Rapberry Pi держит время.
Ответ: Без внешнего источника внутренние часы крайне непредсказуемы с точки зрения удержания времени самостоятельно.
Недавние тематические исследования:
Это график регистратора данных Raspberry Pi 3 B, который внезапно потерял электроэнергию примерно на час:
Вы можете ясно видеть, что когда питание снова включается, оно загружается и перезапускает регистрацию данных.
Но часы Raspbian возвращаются назад во времени.
Затем вы можете увидеть, как он прыгает вперед к правильному времени, как только он получает обновление от time.nist.gov
Как настроить Raspbian для использования основного сервера времени time.nist.gov?
Здесь снова более новый сюжет из той же системы.
Так как он прервался вчера (см. График выше), я использовал
sudo init 0
его для правильного выключения, чтобы создать образ SD-карты с Win32DiskImager на ПК.Как видно здесь, это занимает некоторое время.
В этом вы можете видеть, что Raspbian первоначально перезапустил свои часы там, где он остановился. Похоже, что он записал хорошие данные (подпрыгивает) в течение минуты.
Затем он показывает, что происходит, когда он получает обновление времени. Он прыгает вперед вправо.
Количество, на которое он прыгает вперед (пара часов), - это время, которое Raspbian пропустил во время записи SD-карты.
Вот удивительный поворот.
Система просто зависла. Горит красный и зеленый свет, без мерцания.
Объявлено (используя
espeak
) в течение нескольких минут заданием pron главного сервера на основе ping, которое отслеживает регистраторы данных только для такого случая. Так что это было не более нескольких минут.Вытащил мощность на несколько секунд. Перезагрузил его - светодиоды выглядят нормально.
Вот как этот сбой повлиял на регистрацию данных:
Часы Raspbian подскочили на 2 часа после перезагрузки системы.
Затем обновление времени из time.nist.gov устанавливает его обратно.
Ответ: Без внешнего источника внутренние часы непредсказуемы с точки зрения сохранения реального времени самостоятельно.
Как настроить Raspbian для использования основного сервера времени time.nist.gov?
источник