Частотомер непрерывного счета на STM32F050 с GPS синхрой

Что мерить, чем мерить, как мерить. И, естественно - зачем мерить...

При поддержке компании ПРИСТ


Ответить
ncp1400
Мучитель микросхем
Сообщения: 410
Зарегистрирован: Чт янв 08, 2015 00:58:11

Частотомер непрерывного счета на STM32F050 с GPS синхрой

Сообщение ncp1400 »

Собран на STM32F050F4 в корпусе TSSOP20.

Измеряет частоту прямым (подсчет количества импульсов за период 100мс/1с) и обратным методом (подсчет импульсов внутреннего генератора за период внешнего сигнала - измерение ШИМа), обороты (RPM), количество импульсов (режим прямого и обратного счетчика).
В режиме прямого счета возможно тактирование внешними 1Гц - импульсами, напр. от сигнала PPS GPS приемника.
Счет происходит непрерывно, возможно длительное накопление измеренных импульсов.
Измеренная частота выводится в USART в формате CSV, на скорости 38400, с периодичностью заданной параметром uart log.

Без внешнего делителя макс.частота достигает 80МГц (с внутренним прескалером), с внешним делителем MC12080 макс.частота 1.1ГГц.
Точность измерения до 0.001Гц.

Схема:
ИзображениеИзображение

Индикатор - LCD8x2 или 16x2 (для последнего нужно подтянуть вывод D4 индикатора на землю резистором 1..3К).

Управление - кнопками "+","-","Set". Короткое нажатие "+","-" - выбор режима, "Set" - сброс накопительного счетчика.

Длительное нажатие "Set" - вход в редактирование настроек. В верхней строке отображается название параметра, в нижней - номер и значение.
"+","-" - выбор параметра, короткое нажатие "Set" - редактирование ("+","-" - коррекция), длительное нажатие "Set" - выход.

Параметры:
00. mode - текущий режим
01. ext sync - выбор внутренней (0) или внешней (1) синхронизации
02. int div1 - значение битов внутреннего делителя для режима 1 (0=/1, 1=/2, 2=/4, 3=/8)
03. int div2 - значение битов внутреннего делителя для режима 2 (0=/1, 1=/2, 2=/4, 3=/8)
04. int div3 - значение битов внутреннего делителя для режима 3 (0=/1, 1=/2, 2=/4, 3=/8)
05. ext div1 - внешний делитель для режима 1
06. ext div2 - внешний делитель для режима 2
07. ext div3 - внешний делитель для режима 3
08. HSE corr - коррекция частоты опорного генератора 10М
09. clk int - измерение частоты внутреннего генератора (10М)
10. clk corr - автоматическая коррекция внутр.генератора при внешнем опорном сигнале 1Гц
11. err fast - макс.отклонение количества импульсов за период, для сброса счета
12. err PWM - макс.отклонение количества импульсов за период ШИМа, без сброса счета
13. PWM inv - инверсия входного ШИМа
14. cnt pol - полярность вх.импульсов в режиме счетчика
15. dec cnt - заданное количество импульсов в режиме обратного счетчика
16. uart log - период вывода частоты в USART
17. debug - режим вывода отладочной информации
18. reset - сброс настроек по умолчанию
Вложения
fc-f050-01.hex
(32.51 КБ) 561 скачивание
sch.zip
(417.41 КБ) 253 скачивания
Реклама
0xFF
Вымогатель припоя
Сообщения: 603
Зарегистрирован: Ср июн 15, 2016 17:20:29

Re: Частотомер непрерывного счета на STM32F050 с GPS синхрой

Сообщение 0xFF »

Я извиняюсь, за глупый вопрос: а как реализована "Точность измерения до 0.001Гц. " если предельное время измерения 1с.
"!+!=?"
Реклама
ncp1400
Мучитель микросхем
Сообщения: 410
Зарегистрирован: Чт янв 08, 2015 00:58:11

Re: Частотомер непрерывного счета на STM32F050 с GPS синхрой

Сообщение ncp1400 »

предельное время неограничено (точнее ограничено 48-битным счетчиком - при вх.частоте 10МГц макс.время накопления около 8000 часов), точность зависит от точности опорного сигнала.

Метод "Continuous timestamping": http://spectracom.com/sites/default/fil ... rticle.pdf
Аватара пользователя
vsky
Открыл глаза
Сообщения: 63
Зарегистрирован: Пн апр 06, 2009 18:32:14

Re: Частотомер непрерывного счета на STM32F050 с GPS синхрой

Сообщение vsky »

ncp1400, спасибо Вам за Вашу конструкцию.

анонсирована была здесь http://www.radiokot.ru/forum/viewtopic. ... 6#p2502256

Предполагаются ли, ещё какие усовершенствования?
Реклама
Эиком - электронные компоненты и радиодетали
ncp1400
Мучитель микросхем
Сообщения: 410
Зарегистрирован: Чт янв 08, 2015 00:58:11

Re: Частотомер непрерывного счета на STM32F050 с GPS синхрой

Сообщение ncp1400 »

пока хватает, планирую в режиме Reciprocal сделать захват счетчика через DMA - макс.частоту можно поднять до МГц и выше...
хотя, для сигналов выше 1МГц измерение заполнения не сильно актуально...

в дальнейшем можно дополнить аналоговым интерполятором, в сочетании с GPS и термостабилизацией по точности можно обойти поверенные "гробы"

p.s. для управления также можно использовать энкодер - сигнал кнопки подается через 2..3К на PB1
Реклама
ncp1400
Мучитель микросхем
Сообщения: 410
Зарегистрирован: Чт янв 08, 2015 00:58:11

Re: Частотомер непрерывного счета на STM32F050 с GPS синхрой

Сообщение ncp1400 »

ВЧ делитель ÷40 на BF998 и MC12080:

ИзображениеИзображение

ИзображениеИзображение
Вложения
sch.zip
(181.74 КБ) 217 скачиваний
Реклама
Аватара пользователя
titus.zx
Открыл глаза
Сообщения: 53
Зарегистрирован: Ср окт 14, 2009 22:40:56
Откуда: Щелково-7
Контактная информация:

Re: Частотомер непрерывного счета на STM32F050 с GPS синхрой

Сообщение titus.zx »

GPS синхронизация может много дать. Стандарты частоты до единиц 11 знака синхронизируются, хотя для бытового применения думаю излишне. Кстати именно усреднение за длительный интервал может хорошо повысить точность, но есть одно но: стабильность измеряемого сигнала. Т.е. за время измерения входной сигнал уже может измениться, а необходимо было, например, определить кратковременную стабильность. О точности: сама по себе величина 0,001 Гц мало что говорит, без указания частоты для которой были проведены измерения. Как организована синхронизация с GPS при измерении обратным методом?
Ум хорошо,а свой лучше :)
ncp1400
Мучитель микросхем
Сообщения: 410
Зарегистрирован: Чт янв 08, 2015 00:58:11

Re: Частотомер непрерывного счета на STM32F050 с GPS синхрой

Сообщение ncp1400 »

Как организована синхронизация с GPS при измерении обратным методом?
нужен GPSDO 10MHz. также можно откалибровать обычный генератор по GPS (включить ext sync и clk int), и скорректировать параметром HSE corr.
ncp1400
Мучитель микросхем
Сообщения: 410
Зарегистрирован: Чт янв 08, 2015 00:58:11

Re: Частотомер непрерывного счета на STM32F050 с GPS синхрой

Сообщение ncp1400 »

О точности: сама по себе величина 0,001 Гц мало что говорит
это разрешение, реализованное в расчетах. Точность зависит от точности опорного генератора, времени измерения и входной частоты. Для 1Гц можно сделать разрешение 0.000001Гц
Аватара пользователя
Andrew Martin
Вымогатель припоя
Сообщения: 606
Зарегистрирован: Вт июн 25, 2013 18:45:07

Re: Частотомер непрерывного счета на STM32F050 с GPS синхрой

Сообщение Andrew Martin »

Традиционно пренебрегли аналоговой частью. Без нормального формирователя на входе это ещё не прибор.
ncp1400
Мучитель микросхем
Сообщения: 410
Зарегистрирован: Чт янв 08, 2015 00:58:11

Re: Частотомер непрерывного счета на STM32F050 с GPS синхрой

Сообщение ncp1400 »

для начала уточнить бы что такое "нормальный формирователь".
мне пока хватало LVC входа.
а для низкоуровневых сигналов все же удобнее выносной активный щуп
0xFF
Вымогатель припоя
Сообщения: 603
Зарегистрирован: Ср июн 15, 2016 17:20:29

Re: Частотомер непрерывного счета на STM32F050 с GPS синхрой

Сообщение 0xFF »

"нормальный формирователь" - ну обычно это было актуально для сложных периодических сигналов в видео технике. Грубо говоря найти период срабатывания триггера в псевдо хаотическом сигнале, обычно выбиралось регулировкой порога чуствительности срабатывания. Второй момент это несогласовванность входов выходов для высокочастотного тракта получим отраженные сигналы которые будут искажать результаты этто как бы надо фильтровать.

Кстати по схеме вопрос Вход который LOW - не содержит разделительный конденсатор. и второй вопрос: при каком-то напряженийй когда R8 и куча диодов сработает .... входное сопротивление станет 1Ком .... чтоот совсем это плохо - или я не прав .... ( зто так же к вопросу о формирователе, я бы на входе ставил операционник для развязки, а после него формировал импульсы)

А подсчет полностью программный, было бы прикольно иметь выбор базовой частоты.
А как боритесь с джиттером опорного сигнала? в гпс ассстансе например он заметно большой.
"!+!=?"
ncp1400
Мучитель микросхем
Сообщения: 410
Зарегистрирован: Чт янв 08, 2015 00:58:11

Re: Частотомер непрерывного счета на STM32F050 с GPS синхрой

Сообщение ncp1400 »

Грубо говоря найти период срабатывания триггера в псевдо хаотическом сигнале, обычно выбиралось регулировкой порога чуствительности срабатывания
нужен внешний формирователь с регулируемым порогом, гистерезисом и усилением. На диф.парах/ОУ/компараторах в сети этого добра навалом
Вход который LOW - не содержит разделительный конденсатор
на частоте 1Гц конденсатор будет только мешать
при каком-то напряженийй когда R8 и куча диодов сработает .... входное сопротивление станет 1Ком
это понятно, этот вход рассчитан на лог.сигналы, для более других нужен более другой внешний делитель с формирователем. R8 можно понизить до 50..100 Ом
А как боритесь с джиттером опорного сигнала? в гпс ассстансе например он заметно большой.
кроме накопления - никак, рекомендуют "прогрев" GPS на одном месте в течении нескольких часов..суток, и накопление в течении нескольких часов. Или применить GPSDXO с выходом 1Гц, там джиттера почти нет
Аватара пользователя
Andrew Martin
Вымогатель припоя
Сообщения: 606
Зарегистрирован: Вт июн 25, 2013 18:45:07

Re: Частотомер непрерывного счета на STM32F050 с GPS синхрой

Сообщение Andrew Martin »

Нормальный формирователь, на мой взгляд, у Леонида Ивановича в его частотомере FC-510. Данная конструкция - золотой стандарт, и он без труда пройдёт любую поверку.
У всякого частотомера должен быть подобный формирователь, а ещё лучше - и ФНЧ, от него зависит качество работы на сложных и зашумленных сигналах. А с вашим входом хорошо будет работать только на цифровых да на "тепличных" аналоговых сигналах.
Формирователем никогда не пренебрегали в тех самых больших советских частотомерах, от которых хотите уйти.
avram1998
Родился
Сообщения: 3
Зарегистрирован: Чт авг 18, 2016 13:11:48

Re: Частотомер непрерывного счета на STM32F050 с GPS синхрой

Сообщение avram1998 »

Без внешнего делителя макс.частота достигает 80МГц (с внутренним прескалером), с внешним делителем MC12080 макс.частота 1.1ГГц.
Аватара пользователя
3g57
Прорезались зубы
Сообщения: 213
Зарегистрирован: Вс апр 20, 2014 17:39:23

Re: Частотомер непрерывного счета на STM32F050 с GPS синхрой

Сообщение 3g57 »

ncp1400 писал(а):Точность зависит от точности опорного генератора, времени измерения и входной частоты. Для 1Гц можно сделать разрешение 0.000001Гц
Это реально. Мы пользуемся заводским прибором.
Абсолютно автономное решение(безGPS). Полевой вариант. Внутри рубидиевый стандарт частоты + 2 АКБ (24часа). На выходе несколько образцовых частот (0.1, 1.0, 5.0, 10.0 Мгц) + 1 период в секунду + корректировка фазового сдвига (1PPS SLEWING. 1PPS PHASE SHIFT)+ измерение наносекундных импульсов(TIME INTERVAL COUNTER).
Точность поддержания предельная для калибровок.
Это фото.
ИзображениеИзображение

Это на выходе:

ИзображениеИзображениеИзображение




Этого вполне достаточно для калибровки.
С информацией по нему есть сложности. Его плюс- автономность.
В прикреплённом *PDF* файле запатентован принцип его работы включая схему.

Изображение

На первом скрине таймер наработки после включения.
На втором скрине точность 1pps. Еденица не отображаеться (мигает курсором)
При откл. сетевого напряжения уходит от АКБ до 30 часов(проверено)
Вложения
US4879700.pdf
(1.67 МБ) 260 скачиваний
Последний раз редактировалось 3g57 Пн сен 05, 2016 14:57:23, всего редактировалось 3 раза.
Простота хуже воровства, говорят.
Ежели дуракам волю дать, так они умных со свету сживут.
М.Е. Салтыков-Щедрин.
Аватара пользователя
Andrew Martin
Вымогатель припоя
Сообщения: 606
Зарегистрирован: Вт июн 25, 2013 18:45:07

Re: Частотомер непрерывного счета на STM32F050 с GPS синхрой

Сообщение Andrew Martin »

3g57 писал(а):Внутри стандарт рубидия
Дальше можно было не продолжать :)
Ответить

Вернуться в «Измерения»