Система единого времени

Здесь можно сообщить о своем начинании или разработке, а также обсудить готовую конструкцию

Система единого времени

moder » 03 июл 2014, 23:26

Хочу поделится опытом и рассказать о разработке системы единого времени крупного предприятия, которой я занимался более десяти лет назад. По возможности, если найду, то дополню рассказ фото и схемами, а может даже и прошивками.

Итак, ТЗ:
Разработать систему единого времени предприятия, обладающую следующими характеристиками:
  • первичные часы(ПЧ) с синхронизацией и автоустановкой по сигналам точного времени(СТВ)
  • поддержка электромеханических оконечных устройств (часов с коммутацией переполюсовкой 24В)
  • поддержка оконечных устройств в виде цифровых информационных табло
  • двойное резервирование питания первичных часов (от электросети 24В и 220В)
  • первичные часы должны иметь возможность автоматической подводки электромеханических часов, если было пропадание питания в сети 24В
  • на цифровые оконечные устройства помимо времени должна передаваться также дополнительная информация (дата, температура)
  • система не должна быть требовательна к качеству линий, передача информации на оконечные цифровые табло должна осуществляться по простой витой паре или "лапше"
  • первичные часы должны быть снабжены органами управления и индикатором для удобного выставления времени как на электромеханических часах, так и на цифровых оконечных индикаторах

......
Аватара пользователя
moder
 
Сообщения: 1640
Зарегистрирован: 26 ноя 2009, 16:29
Имя: Александр
Автомобиль: Nissan

Re: Система единого времени - Цифровой фильтр СПВ

moder » 04 июл 2014, 16:39

Первой и самой важной задачей, которую пришлось решать был выбор источника сигналов точного времени(СТВ). Варианты были разные:
Как самый надежный, доступный и, как тогда казалось, простой в реализации, был выбран вариант СПВ, т.к. DCF77 и GPS технологии вражеские, а предприятие стратегическое, поэтому первой и самой важной частью проекта была разработка фильтра, который бы распознавал эти сигналы, чтобы иметь возможность автоматически устанавливать и корректировать ПЧ.
Готовые варианты аналоговых и ТТЛ фильтров СПВ, которые применялись в промышленных ПЧ были отметены, как негодные, т.к. в условиях "нового времени" и качества эфира работали через раз и как попало, поэтому было решено разработать свой цифровой фильтр, в качестве основы которого был выбран самый простой 51-совместимый атмеловский контроллер.
Фильтр представлял из себя по сути черный ящик практически без обвязки, на входе которого был радиоэфир или проводное вещание, а на выходе данные о времени(текущем часе) и сигнал корректировки.
Изначально ПЧ было решено делать на одном микроконтроллере, который включал бы в себя и фильтр и часы, но со всё большим увеличением функционала, возникающими проблемами и открывающимися возможностями фильтр был реализован на отдельной микросхеме, чтобы иметь возможность по простому последовательному интерфейсу подключать к ПЧ разные источники информации о СТВ или несколько таковых, ибо разделяй и властвуй.
Взаимодействие между контроллерами осуществлялось посредством штатного UART, мастером был контроллер часов. По началу шестого СПВ фильтр через отдельный порт давал сигнал на корректировку времени, по которому контроллер часов осуществлял коррекцию минут, а после забирал у контроллера-фильтра данные о начавшемся часе.
Что касается программы самого фильтра, то за давностью лет я мог уже что-то подзабыть, но на сколько помню, принцип был основан на том, что настраивался таймер на период частоты 1000Гц и счетчик, который эти периоды считал. Контроллер постоянно "мониторил эфир", пытаясь выявить начало последовательности нужных периодов, и, как только такая последовательность появлялась(детектилась частота 1кГц), начинал работать другой таймер, который контролировал длительность сигала и паузы, а ещё один счетчик считал кол-во сигналов. Объяснил я конечно не точно, но принцип был такой, ничего военного.
При разработке программы пришлось столкнуться с трудностями. Дело в том, что тогда качество даже проводного вещания уже было прилично подпорчено рекламами, которые зачастую накладывались на СПВ и систематическими обрывами СПВ, поэтому программа фильтра становилась всё сложнее и сложнее, чтобы выделять полезный сигнал, отсекать некорректные сигналы и принимать решение о достоверности СПВ. Очень долго пришлось высчитывать допуски для сигналов и пауз. Всё это ещё раз подтвердило правильность решения о выделении для фильтра отдельного контроллера, а стандарт СПВ уже не казался такой твердыней, каким представлялся ранее.
Особую проблему представляло "обрезание" 6-го сигнала, в длительности которого закодирован номер часа, что могло привести к неверной автоматической установке времени. Проблема была частично решена проверкой вхождения длительности 6-го сигнала в набор нормальных длительностей, а также сравниванием полученного номера часа с текущим временем ПЧ, т.е. автоматически перевести часы "назад" было нельзя.

....
Аватара пользователя
moder
 
Сообщения: 1640
Зарегистрирован: 26 ноя 2009, 16:29
Имя: Александр
Автомобиль: Nissan

Re: Система единого времени - Часы реального времени

moder » 08 июл 2014, 14:58

Часы реального времени были реализованы программно на всё том же 51-совместимом атмеловском микроконтроллере с большим числом портов ввода-вывода(52-м), хотя изначально рассматривался вариант применения отдельной часовой микросхемы от Dallas Semiconductor, управляемой по I2C.
В программе часов был реализован полноценный календарь, в счетчиках подсчитывалось всё, начиная от десятком миллисекунд и до года.
Микросхема также брала на себя опрос органов управления, индикацию на ЖК модуле с четырех проводной шиной, коммутацию сети электромеханических часов и отправку данных на цифровые табло.
Также был реализован автоподвод электромеханических часов. В случае аварии по сети 24В(что бывало не редко) запускался счетчик, который отсчитывал и запоминал кол-во минут с момента пропадания и до появления питания вновь, после чего производил ускоренный автоподвод часов на "упущенное" время.
Ручное управление сетью электромеханических часов было также улучшено. Их можно было подводить как поминутно, кликами по кнопке, так и в ускоренном темпе постоянным нажатием.
Стабильность работы микроконтроллера обеспечивал сторожевой таймер на профильной м/с.

....
Аватара пользователя
moder
 
Сообщения: 1640
Зарегистрирован: 26 ноя 2009, 16:29
Имя: Александр
Автомобиль: Nissan

moder » 12 май 2015, 00:02

000_0214.JPG
Вложения доступны зарегистрированным пользователям
000_0215.JPG
Вложения доступны зарегистрированным пользователям
000_0213.JPG
Вложения доступны зарегистрированным пользователям
Аватара пользователя
moder
 
Сообщения: 1640
Зарегистрирован: 26 ноя 2009, 16:29
Имя: Александр
Автомобиль: Nissan

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1

cron