Comments
Вопрос остается только один — скажите, чем вы занимаетесь, что для вас этот вопрос встал так остро? :)
Для работы наших систем достаточно точности около 1 с.
Просто я заметил, что российских серверов stratum 1 очень мало, многие уже давно не работают. Как только я все донастрою, то сделаю мой сервер открытым для всех.
точный сервер это хорошо. а где он будет установлен? не в деревне «поляны»?))
вообще хорошо бы, если бы такой сервер стоял где-нибудь в коммерческом ДЦ, но в таких ДЦ сложновато вывести gps-приёмник в место уверенного приёма gps. да и к условиям суровой зимы такой приёмник должен быть готов (причём сразу, а не по факту нароста льда), а это уже сложнее…
Да просто у окна поставьте. Для точного времени достаточно поймать один спутник.
Не-не-не… Так вы вытащите точность +- 20 мс, т.к. это будет время по шкале приходящего сигнала. Если, конечно, не написать спец. прошивку, учитывающую тот факт, что приемник неподвижен.
А что вам даст неподвижность приемника? Спутник-то не геостационарный.
Сократит число неизвестных с 4 до 1, что повлечет пропорциональное сокращение требуемых измерений для решение системы уравнений. Спутник хоть и не геостационарный, но координаты его, если у нас есть системная шкала времени, известны.
Не совсем понятно:
Во первых системное время у нас недостаточно точное по-определению (мы же пытаемся его установить).
Во вторых разница между точным системным временем и полученным со спутника даст нам потенциальное положение спутника в виде окружности на небесной сфере, каждая точка которой равноудалена от приемника.
Или я чего-то не так понимаю?
Представим, что у нас есть часы в приемнике рассогласованные с системным временем на величину \tau.

Приемник принимает сигнал от спутника, в момент приема по шкале сигнала время tс (он же момент излучения по системной шкале времени). В этот же самый момент приема время по собственной шкале приемника — tп. Вычисляем ro = (tп — tc)*с — псевдодальность до спутника. ro = R + \tau*c + ro_pr, где R — истинное расстояние между спутником на момент передачи и приемником на момент приема, ro_pr — прочие ошибки, вызванные ионосферой и т.п, с — скорость света.

По эфемеридам мы вычисляем, что в момент tc (момент излучения) спутник находился в точке r_sv = {Xsv; Ysv; Zsv}. Мы знаем, что в момент приема приемник находился в точке r_r = {Xsv; Ysv; Zsv}. Считаем расстояние R = norm(r_sv — r_r). По имеющимся моделям оцениваем ro_pr. Остается последний шаг: \tau = (ro — R — ro_pr)/c.

Мог немного напутать, такие вещи лучше проверять на модели. Но концепция такая)
Примерно понял, спасибо. Я как-то упустил в рассуждениях момент, что нам известны эфемериды спутника.

В двух словах, идея в том, что со спутника мы получаем и точное время, и точное его положение. Зная точное положение приемника рассчитать задержку не составляет труда. Верно?
> вообще хорошо бы, если бы такой сервер стоял где-нибудь в коммерческом ДЦ,
> но в таких ДЦ сложновато вывести gps-приёмник в место уверенного приёма gps

В Альфа-Банке (в Москве, на ул. Сахарова) на крыше здания стоит свой GPS-приёмник (а точнее даже два для резервирования). От них уже свой NTP-сервер, с которым синхронизируются все железки Cisco, контроллеры домена Active Directory и прочие серверы и оборудование в корпоративной сети Альфа-Банка.
Как я понял, основными заказчиками информации о точном времени там были трейдеры из Альфа-Директ.
Адски плюсую.
Мы сейчас в РЖД занимаемся тем, что проектируем систему единого времени. Берем 1PPS и КВ от эталона времени и частоты от ГНИИ 32 в мытищах.
Было бы здорово, если бы ребята их РЖД ещё бы сделали учёт часовых поясов, а то на всех станциях и билетах время только московское :)
Не везде. Пару лет назад держал в руках билеты с местным временем (тогда разница между Самарой и Мск была час), т.е. там так и писалось, что время местное. Летом брал билеты, опять время по Мск (хотя сейчас у нас это и так местное время). Мне подумалось, что ввели и откатили назад, потому как за многие годы все уже просто привыкли к мск в билетах.
Кстати странно почему не GMT тогда, проблем бы не было, страна то огромная… а впрочем всё равно бардак )
Ну забыли, когда ТЗ писали, что ЖД идёт дальше МКАДа, что поделать!

Как только появляется термин "местное время", на точности и определённости можно ставить крест. Я с этим сталкивался. И "местное время", кстати, к часовым поясам не имеет отношения.
Надо использовать именно какое-то одно время. Лучше UTC, но люди не знают что это такое, вообще не знает процентов 99.99999. А что такое Московское — знают все. Так что экспериментировать можно, но менять работающую систему не стоит.

2 вопроса:
1. Есть же готовые решения причем сетевые, чего не устроило?
2. Антенну, то как выкидывали наружу, там недалеко же от такого гармина можно ее поставить.
1. Т.к. это моя личная инициатива, средства были весьма ограничены. Для очень серьезных задач, конечно, лучше купить готовый NTP-сервер. Прайс-листов в открытом доступе почти нет, но цены начинаются где-то от 1000$ на самые простейшие модели.
2. Не очень понял вопрос. Мне удалось обойтись без установки наружной антенны, просто приклеив приемник на окно (иметь в серверной окно не желательно, но у нас оно есть, и никуда не денешься).
1. На самом деле готовые NTP сервера уже есть и за 400-500 долларов. Правда не в России, к сожалению, хотя, думаю, можно доставить за не очень большие деньги.
2. То то и оно, что длина кабеля RS-232 это метры, а если в серверной окон нет, то надо либо высверливаться на наружную стену, что не всегда реально, либо как-то тянуть на крышу и упираться в ограничение на длину кабеля.
1. Если вы кинете мне ссылки на эти сервера в личку, я добавлю их в топик, как альтернативные способы.
2. Проблема решаема. Можно взять не 18ю, а 17ю модель Garmin — у нее кабель уже почти 10 метров. Можно попробовать удлинить RS-232. В одной из ссылок в конце топика автор решил эту проблему с помощью организации дифференциальной линии. Можно просто купить готовое решение.
Обычную антенну тоже далеко от приемника не утащишь, а для активной нужен более навороченный GPS, ручной не подойдет.
Ну метров 10 по хорошему коаксиалю вообще никаких ощутимых помех не вносит. Если сервер не в бункере, то этого обычно хватит.
В радионавигации любая антенна, удаленная более чем на 10 см, делается с малошумящим усилителем. Простой пользователь не найдет на рынке пассивной внешней антенны.
Правда не в России, к сожалению, хотя, думаю, можно доставить за не очень большие деньги.

После «Правды» запятую забыли)
Очень интересно!

Если не говорить о серьёзных применениях — любители электроники могут спаять себе часы, синхронизируемые от GPS-модуля, благо они сейчас не дорогие, в пределах 20$ можно взять. Там как раз сигнал PPS выведен на отдельную ножку, дальше дело техники…
UFO landed and left these words here
UFO landed and left these words here
UFO landed and left these words here
UFO landed and left these words here
У меня метеостанция Oregon Scientific синхронизируется со станцией в Германии, и вроде успешно (восток Подмосковья).
Видел у кого-то гроб 40х70см советских времен, синхронизирующийся по сигналам Радио Маяк. Точность сказать не могу, спрошу при случае.
Дык я о больших :)
Например настенные, или схема первичных часов, типа как вокзалах, а во всех комнатах — вторичные (красивый корпус со стрелками либо табло)
Мне вот интересно — если все так просто, то почему ни один смартфон по умолчанию не умеет синхронизировать время по gps?
Дополнительное потребление, связь со спутником редкая (например внутри зданий, где он чаще всего находится), отсутствие необходимости…
наверное т.к. большинство пользователей смартфонов и не подозревает от такой возможности, ну а производителям не охота заморачиваться ради мало кому нужной фичи
уже давно все умеют брать время от сети оператора, которые, в свою очередь берут ее от stratum1 источника. Так что время, получаемое по радиосети оператора довольно точное.
С операторами бывают косяки.
Например, Байкалвестком колбасит регулярно — телефоны разных марок дружно рапортуют, что не могут получить время.
когда не могут получить это еще нормально, а бывает что телефон получает об бс, не правильное время ± 15 мин бывает, и самое не приятное не узнаешь пока куда нибудь не опоздаешь ~_~
Когда я последний раз пробовал это у московского Мегафона, он мне выставил 4:46. При том что было что-то вроде 21:15.
Давно конечно было, но проверять что-то не хочется.
У меня Nokia N900, каждый раз при включении GPS синхронизируется время. И как уже высказались выше, есть вариант брать время от сети оператора, у которого, в свою очередь, есть связь с stratum1 сервером.
можно попродробнее? я нашел только программку gpstime — она требует su и ставит время с отставанием в 0.9 секунды
Кто вам сказал? У супруги старенький Rover умел такое делать, и даже предлагал сам следить за временем.
Некоторые умеют :) В Defy видел такую настройку. Да и для большинства задач хватает синхронизации по NTP. Хотя, что уж там, для ВСЕХ смартфонных задач достаточно точности в пару секунд :)
Идея с заменой генератора интересна, надо будет как-нибуть для домашнего сервера сделать на досуге )
Как только разберетесь с настройкой прав доступа и сделаете сервер публичным — рекомендую вступить в pool.ntp.org — этим сервер будет весьма полезен и думаю даже полезнее чем никому не известный standalone
При взгляде на первую картинку возникает стандартный вопрос преподов в техническиз ВУЗах: почему у Вас на второй компьютер сигнал приходит раньше чем на остальные? Почему такая разбежка по времени?
з.ы. Нет, я всё понимаю, но «красивые картинки — наше всё». Так пусть они будут и точными.
Еще есть ntp.ix.ru. — В качестве источника синхронизации используется эталонный сигнал времени со спутниковых систем ГЛОНАСС (приоритетно) и GPS.
Готовые решения конечно есть. Но это так же интересный вариант :) Мне они лично нужны были, т.к. на удалённых участках сервер подсчёта потребления электроэнергии записывал данные и потом при синхронизации не возникало ошибок. А то бывает напряжение поднимали, а по логам выходило, что напряжение по середине участка поднималось с задержкой. Отдал, техникам. Сказали ознакомятся. Может ваш вариант дешевле.
Для всех участников: Почему не GSM? Там его нет. Почему не Интернет? Там его тоже нет. :)
UFO landed and left these words here
Я сталкивался только где собиралась статистика в энергетике. Видел так же, как коммунальные счётчики на воду отправляли данные. Сами счётчики не видел, но сервера принимали данные по сети. Синхронизация у них была через интернет. А так больше не знаю. Вот тут к примеру из-за неточности времени пару раз пропускал автобус. bus22.m2m-altai.ru/ Сейчас не знаю, как там дела обстоят.
А не легче ли было бы вместо GPS-приемника использовать какое-нибудь простое устройство с чипом RTC и независимым питанием заранее откалиброванное по тому же GPS-у?
Калибровать очень часто придётся. Почитайте про их точность.
UFO landed and left these words here
идея интересная конечно, но не думаю правильная, рисковать я бы не стал, хулиганов можно встретить везде. GPS сигналы можно глушить спец. приборами, купить их можно не за дорого, имеются такие которые вставляются в автомобиль через обычный прикуривать, который глушит сигналы в определённом радиусе.
Ну на ebay я видел в продаже цезиевый генератор от agilent сильно б/у, но цена в 17000USD это перебор для DIY
На хабре уже было про ядерный реактор дома, нельзя ли его как-то приспособить?
Можно обойтись меньшей кровью — заказать Semetricon'овский атомный стандарт частоты. Правда, далеко не факт, что продадут в Россию.
Никакой, если USB на плате кошерный то он отключит питание уже при токе в 500 мА, ну а если так себе то предохранитель остаётся только для успокоения совести.
Просто при питании от USB о каком предохранителе на 1А может идти речь? В USB итак встроена защита от КЗ, и она срабатывает гораздо раньше чем 1А, там и 500мА не факт что получится вытащить из него.
Предохранитель тут по большей части декоративный и скорее всего сгорит в последнюю очередь ))
1. Было указано назначение предохранителя плавкого.
2. Далеко не все материнские платы и тем более USB-HUB оборудованы ограничителями тока (защита по току), поэтому при К.З. вытащить и больше удастся.
Предохранитель есть на схеме из мануала к 18x lvc. Вот я его и поставил.
Отличная статья!
Думаю студентам дать в качестве бакланской работы… Очень наглядно и интересно!

Остался не понятным только сам механизм синхронизации шкалы времени ntpd.

1) Что это за шкала времени, как она реализована? Как она связана с системными часами?
2) Как в операционной системе с дикими, и что самое главное переменными, задержками на обработки прерываний и т.п. можно достичь точности в мкс? Статистика?
3) Как устроен сам протокол NTP, в чем его отличие от PTP? Как при несимметричности задержек от и до сервера можно произвести синхронизацию с такой точностью?

Я понимаю, что гугл рулит, но хотелось бы услышать мнение опытного человека! =)
Видел в отделении Сбера за спиной операционистки 3 «часов» с наклейками типа «Банкомат», «Центробанк», и еще какой-то.
Так разница была порядка 17 минут. И не на одном не совпадало ни с моими кварцевыми, не с iPhone (как я понимаю? он время корректирует сам?).
Only those users with full accounts are able to leave comments. Log in, please.