Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Как правильно померить частоту 1 кГц?
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Вопросы системного уровня проектирования
Alexey_N
Господа, ищутся идеи - как правильно, т.е. быстро и с хорошей точностью, измерить частоту синусоидального сигнала с небольшой частотой. Например 1 кГц. В качестве опоры имеем высокостабильный генератор с частотой, например 10 МГц.
Спасибо.
ЗЫ. Может есть что почитать на эту тему?
rezident
Огласите величину "хорошей точности" и насколько сигнал на синус похож?
Самый простой способ (ИМХО) - компаратор и схема захвата у какого-нибудь таймера какого-нибдь микроконтроллера.
Alexey_N
Цитата(rezident @ Apr 27 2006, 19:53) *
Огласите величину "хорошей точности" и насколько сигнал на синус похож?
Самый простой способ (ИМХО) - компаратор и схема захвата у какого-нибудь таймера какого-нибдь микроконтроллера.

1.Хорошая точность в моем понимании выглядит примерно так:
F = 1 000,001 Гц
или так:
F = 1 000,0001 Гц
2. Думается, что сигнал может состоять из чистого синуса с амплитудой = 1В,
плюс шум, с Urms = 100 мВ в полосе, например 10 кГц.
3. Можно ли как-то оценить к чему приведет дребезг срабатывания компаратора?
TED17
Цитата(Alexey_N @ Apr 27 2006, 22:32) *
3. Можно ли как-то оценить к чему приведет дребезг срабатывания компаратора?

"Дребезг" компаратора -1мв- приведет при сигнале 1в к точности 10"3 (если отфильтровать шумы)
Да и просто 10мгц:1кгц=10"4, т.е. 7 порядков никак не едет.
rezident
TED17, ИМХО не правильно считаете. Это вы посчитали относительную погрешность. А Alexey_N интересует абсолютная погрешность, насколько я понимаю, так? Абсолютная погрешность будет не хуже 0,5*10^-10.
По п2. Амплитуда синуса стабильная? Интересует мгновенная частота? Т.е. длительность каждого периода синуса или за какое-то время? За какое?
Alexey_N
Цитата(rezident @ Apr 27 2006, 23:53) *
TED17, ИМХО не правильно считаете. Это вы посчитали относительную погрешность. А Alexey_N интересует абсолютная погрешность, насколько я понимаю, так? Абсолютная погрешность будет не хуже 0,5*10^-10.
По п2. Амплитуда синуса стабильная? Интересует мгновенная частота? Т.е. длительность каждого периода синуса или за какое-то время? За какое?

Каким образом была посчитана такая абсолютная погрешность?
Вопрос про амплитуду - интересный, как -то я об этом не подумал, а ведь она действительно может быть нестабильна... Давайте что-ли назначим ей амплитудную модуляцию с частотами в единицы герц и глубиной модуляции - 1%.
Впрочем, ещё более правильно - вообще на это дело забить и выкрутить коэффициент усиления в ограничение! Теперь будет полегче и в плане выделения момента пересечения нуля (точность срабатывания компаратора).
Lonesome Wolf
Цитата(Alexey_N @ Apr 27 2006, 21:32) *
...2. Думается, что сигнал может состоять из чистого синуса с амплитудой = 1В,
плюс шум, с Urms = 100 мВ в полосе, например 10 кГц.
3. Можно ли как-то оценить к чему приведет дребезг срабатывания компаратора?



Т.е. SNR 10 дБ. Думается, что в таких условиях желаемая точность вряд ли может быть достигнута.
Sasok
А чем не устраивает TDC-GP1???

А зачем такая точность? cranky.gif
AlexanderX
Существуют, как мне известно, два основных метода измерения частоты.

1. Измерение колиства входящих импульсов за единицу времени. Применяется для высоких входных частот.

2. Измерение количества импульсов опорного генератора за время N-периодов входной частоты. Применяется для низких входных частот.

Для вашей задачи больше подходит второй метод который за меньшее время измерения даст большую точность. Еще не маловажный момент - стабильность опорного генератора. Если вы хотите получить измерение с точностью 8 знаков, то Вам придется ставить термостабилизированный (не путать с термостатированным) генератор, а это весьма дорогое удовольствие. wink.gif
Mish40
Цитата(Alexey_N @ Apr 27 2006, 22:32) *
Цитата(rezident @ Apr 27 2006, 19:53) *

Огласите величину "хорошей точности" и насколько сигнал на синус похож?
Самый простой способ (ИМХО) - компаратор и схема захвата у какого-нибудь таймера какого-нибдь микроконтроллера.

1.Хорошая точность в моем понимании выглядит примерно так:
F = 1 000,001 Гц
или так:
F = 1 000,0001 Гц
2. Думается, что сигнал может состоять из чистого синуса с амплитудой = 1В,
плюс шум, с Urms = 100 мВ в полосе, например 10 кГц.
3. Можно ли как-то оценить к чему приведет дребезг срабатывания компаратора?

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

Ну и опорный генератор, само собой, должен быть стабильным.
Alexey_N
Цитата(Sasok @ Apr 28 2006, 14:37) *
А чем не устраивает TDC-GP1???

А зачем такая точность? cranky.gif

Прикольная железочка smile.gif. Спасибо за наводку, весьма любопытно. Однако меня интересует не столько "железная" реализация вопроса сколько выбор правильного алкогоритма.

Цитата(AlexanderX @ Apr 28 2006, 16:58) *
2. Измерение количества импульсов опорного генератора за время N-периодов входной частоты. Применяется для низких входных частот.

Для вашей задачи больше подходит второй метод который за меньшее время измерения даст большую точность. Еще не маловажный момент - стабильность опорного генератора. Если вы хотите получить измерение с точностью 8 знаков, то Вам придется ставить термостабилизированный (не путать с термостатированным) генератор, а это весьма дорогое удовольствие. wink.gif

Да, насчет опорного генератора я в курсе, именно такая цацка и применяется. А как расчитывать точность за N периодов, что-то не соображу, может отоварите формулой?

Цитата(Mish40 @ Apr 28 2006, 17:37) *
Цитата(Alexey_N @ Apr 27 2006, 22:32) *

Цитата(rezident @ Apr 27 2006, 19:53) *

3. Можно ли как-то оценить к чему приведет дребезг срабатывания компаратора?

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

Разумеется гистерезис, разговор о "дребезге" - это естественно разговор о влиянии шума на точность измерения периода. Моделировать это дело конечно можно,... но, блинн, опять моделировать, "радиолюбительство" меня уже доконало sad.gif. Может всё-таки как-то наловчиться да посчитать? Уж больно простенькие процессы, наверняка уже сто раз в книжках про буратину всё описано... вот только я торможу, да книжек правильных под рукой нет...
Stanislav
Цитата(AlexanderX @ Apr 28 2006, 16:58) *
Существуют, как мне известно, два основных метода измерения частоты.

1. Измерение колиства входящих импульсов за единицу времени. Применяется для высоких входных частот.

2. Измерение количества импульсов опорного генератора за время N-периодов входной частоты. Применяется для низких входных частот.

Для вашей задачи больше подходит второй метод который за меньшее время измерения даст большую точность. Еще не маловажный момент - стабильность опорного генератора. Если вы хотите получить измерение с точностью 8 знаков, то Вам придется ставить термостабилизированный (не путать с термостатированным) генератор, а это весьма дорогое удовольствие. wink.gif
Добавлю ещё один метод, основанный на самОм определении частоты, о котором частенько забывают. Вот в этой теме его ранее изложил. До сих пор считаю его самым правильным. Флуд просьба игнорировать.
Для измерения частоты НЧ сигнала способ можно существенно упростить. Если интересно - расскажу как.
А чем термостабилизированный генератор отличается от термостатированного? blink.gif
Может, речь о термокомпенсированном шла? Дык, и ему термостат не помешает...
LordN
Цитата(Stanislav)
Вот в этой теме его ранее изложил.
я почти чайник в этой теме, где можно почитать/поглядеть подробности метода, для чайников?
Stanislav
Цитата(LordN @ Apr 28 2006, 22:18) *
Цитата(Stanislav)
Вот в этой теме его ранее изложил.
я почти чайник в этой теме, где можно почитать/поглядеть подробности метода, для чайников?
Подробности - самО определение мгновенной частоты, которая в случае стационарного гармонического колебания совпадает с просто частотой:
dФ/dt = 1/T,
где Ф - фаза, t - время, T - период.
Из этого следует, что сдвиг частот двух генераторов численно равен отношению сдвига их фаз к времени интервала наблюдения. Для простоты представим, что в начальный момент измерения времени фазы генераторов совпадают. Тогда:
delta F = delta Ф / delta t,
где delta F - сдвиг частоты, delta Ф - разность фаз генераторов в конце измерения, delta t - время измерения. smile.gif
Задача в упомянутой теме была несколько сложнее - там частота была 10 МГц, кроме того, время измерения жёстко лимитировано. Для обеспечения возможности оцифровки сигнала недорогим и точным АЦП (напр., сигма-дельта), я предложил спустить её в "базу", т.е, низкочастотную область, используя в качестве "гетеродина" один из генераторов. Замечательно, что информация о фазовом набеге при таком преобразовании не теряется и не изменяется. Далее всё понятно...
В этом же случае нет нужды в каком-либо частотном преобразовании испытуемого генератора, а частоту опорного можно просто поделить на 10 000 (только большой джиттер делителя при этом нежелателен). В качестве анализатора вполне можно использовать комп, а сигналы просто подать на вход аудиоплаты! Далее, "заграница нам поможет" своей матлабовской аватарой. smile.gif
От влияния шумов и джиттера генераторов можно избавиться увеличением времени измерения.

ЗЫ. Это всё "на пальцах". При необходимости, могу расписать подробно.
rest1234
я видел пример реализации на микроконтроллере устройства для выявления скрытой проводки. Там микроконтроллер отделял волны с частотой сети переменного тока путём подачи усиленных волн на вход таймера-счетчика микроконтроллера.
_artem_
2 Станислав

Какова оценка точности метода предложенного вами в другой теме если взять в расчет отклонение передаточной характеристики миксера (преобразователя) от идеальной ?
Этот параметер может серьезно повлиять на точность вычислений.
Stanislav
Цитата(_artem_ @ Apr 29 2006, 15:18) *
Какова оценка точности метода предложенного вами в другой теме если взять в расчет отклонение передаточной характеристики миксера (преобразователя) от идеальной ?
Этот параметер может серьезно повлиять на точность вычислений.
Простите, можно уточнить, что Вы подразумеваете под отклонением от идеала? Нелинейность?
_artem_
Да, когда 2*2 равняется не 4 а 4.001 например .
Lonesome Wolf
Пару лет назад мой коллега по моей просьбе - устал я АПЧ в локаторе с магнетронным передатчиком настраивать smile.gif - решал (и решил) задачу определения частоты с точностью ~ 10 кГц для сигналов с частотами, изменяющимися в диапазоне 280+/-50 МГц за время импульса, т.е. ~150 нс. Метод, по сути напоминал таковой, предлагаемый Stanislav, насколько я знаю - в подробности я не вдавался. Сигнал цифровался напрямую 10 битным АЦП, в квадратуре - для определения знака расстройки. Тактовый сигнал АЦП и был опорным. Сигнал перед подачей на АЦП жестко ограничивался и фильтровался. Стабильность ограничения была весьма высока.

Да, точность ограничивалась, ессно, разрядностью АЦП - все генераторы у меня в системе синтезированы и их частоты стабилизированы OCXO.

Но, повторяюсь, заявленные шумы вряд ли позволят получить требуемые параметры без астрономического усреднения.

Да, существуют возможности весьма точного измерения периода - нониусная и двойная нониусная интерполяция, но они сложны, опять же, шумы...
_artem_
Вот описание еше одного метода для относительно быстрого сравнения эталонной и измеряемой частоты :
http://rapidshare.de/files/19222527/Ch19.rar.html
Глава из книги "The measurement instrumentation and sensors handbook".
=AK=
Цитата(AlexanderX @ Apr 28 2006, 22:28) *
2. Измерение количества импульсов опорного генератора за время N-периодов входной частоты.

Действительно, для этой задачи проще всего мерять именно так. Поделить входную частоту (1 кГц), чтобы получить больший интервал для измерения и уменьшить влияние джиттера от входного компаратора. Насколько поделить - зависит от того, насколько "быстро померять" надо, в принципе чем больше коэфф. деления тем лучше. Скажем, если "быстро" - значит не более чем за 100 мс (все равно глазом не успеешь моргнуть), то поделить, соответственно, на 100, при этом теоретический предел разрешения тоже улучшится в 100 раз и составит 1кГц/(100*10МГц)=10^-6, т.е. 1 ppm.

То, что предлагает Станислав, дОлжно применять в серьезных задачах, где выдвигаются жесткие требования к времени измерения при заданной точности. Похожего результата можно добиться применив линии задержки с большим кол-вом отводов, или точные фазовращатели. Например, если на выходе 10 МГц опоры поставить 100 нс линию задержки со 100 отводами через 1 нс, то разрешение измерения можно улучшить до 1 нс (т.е. 1 ppm), измерив всего один период входного сигнала 1кГц.
Lonesome Wolf
Цитата(=AK= @ Apr 30 2006, 04:10) *
Цитата(AlexanderX @ Apr 28 2006, 22:28) *

2. Измерение количества импульсов опорного генератора за время N-периодов входной частоты.

Действительно, для этой задачи проще всего мерять именно так. Поделить входную частоту (1 кГц), чтобы получить больший интервал для измерения и уменьшить влияние джиттера от входного компаратора. Насколько поделить - зависит от того, насколько "быстро померять" надо, в принципе чем больше коэфф. деления тем лучше. Скажем, если "быстро" - значит не более чем за 100 мс (все равно глазом не успеешь моргнуть), то поделить, соответственно, на 100, при этом теоретический предел разрешения тоже улучшится в 100 раз и составит 1кГц/(100*10МГц)=10^-6, т.е. 1 ppm.


Это не так - погрешность надо пересчитывать на исходную частоту - в результате - те же бараны smile.gif
_artem_
Немецкие товариши Роде и Шварц дают точность 0.1 Гц за 20 милисекунд на частоту ЖСМ.
http://www.rohde-schwarz.com/www/appnotes_...le/1MA65_1E.pdf
=AK=
Цитата(Lonesome Wolf @ Apr 30 2006, 19:05) *
Цитата(=AK= @ Apr 30 2006, 04:10) *

Цитата(AlexanderX @ Apr 28 2006, 22:28) *

2. Измерение количества импульсов опорного генератора за время N-периодов входной частоты.

Действительно, для этой задачи проще всего мерять именно так.

Это не так - погрешность надо пересчитывать на исходную частоту - в результате - те же бараны smile.gif

Не согласен. Во-первых, речь шла конкретно про разрешение, а не погрешность. Погрешность много от чего еще зависит. Во-вторых, не только разрешение будет лучше в N-раз, но и погрешность при прочих равных тоже уменьшится примерно во столько же раз.

Например, пусть компаратор настолько плохо работает (скажем, амплитуда сигнала мала, шумов много, и пр), что для одного периода он даст дополнительную погрешность в +-10%. Однако за 100 периодов эта дополнительная погрешность уменьшится не менее чем в 50 раз, т.к. в худшем случае (в одну сторону по максимуму) повлияет только на первый и последний период, т.е на 2 периода из 100. Примерно то же самое произойдет и с другими погрешностями.
_artem_
А что если оцифровать сигнал 1 кГц с частотой выборок больше 10 - 100 ksps (взятой с опорного генератора 10 МГц), затем интерполировать сигнал в местах перехода через ноль и вычислить период с нужной точностью?
_artem_
Цитата(=AK= @ Apr 30 2006, 14:40) *
Чем это могло бы быть лучше простого компаратора?


временем вычисления.
=AK=
В смысле, с компатором ничего интерполировать-вычислять не надо, потому он хуже? Типа, куражу нет? smile.gif
_artem_
Кураж тут ни при чем , просто воскресенье - делать нечего .)
Alexey_N
Цитата(_artem_ @ Apr 30 2006, 02:03) *
http://rapidshare.de/files/19222527/Ch19.rar.html
Глава из книги "The measurement instrumentation and sensors handbook".

Немецкие товариши Роде и Шварц дают точность 0.1 Гц за 20 милисекунд на частоту ЖСМ.
http://www.rohde-schwarz.com/www/appnotes_...le/1MA65_1E.pdf

1. Интересно. А где бы всю книжку целиком скачать?
2. На какой странице?
Alexey_N
Цитата(Stanislav @ Apr 28 2006, 21:55) *
Цитата(AlexanderX @ Apr 28 2006, 16:58) *
Добавлю ещё один метод, основанный на самОм определении частоты, о котором частенько забывают. Вот в этой теме его ранее изложил. До сих пор считаю его самым правильным. Флуд просьба игнорировать.
Для измерения частоты НЧ сигнала способ можно существенно упростить. Если интересно - расскажу как.

Да, спасибо за ссылочку, очень поучительно, только вот извечная форумная беда - как всегда всё остановилось на самом интересном месте ! sad.gif.
_artem_
Цитата(Alexey_N @ May 2 2006, 00:32) *
Цитата(_artem_ @ Apr 30 2006, 02:03) *

http://rapidshare.de/files/19222527/Ch19.rar.html
Глава из книги "The measurement instrumentation and sensors handbook".

Немецкие товариши Роде и Шварц дают точность 0.1 Гц за 20 милисекунд на частоту ЖСМ.
http://www.rohde-schwarz.com/www/appnotes_...le/1MA65_1E.pdf

1. Интересно. А где бы всю книжку целиком скачать?
2. На какой странице?


Esli nuzno to knizku na dnjax sbrosu .
_artem_
Вот ссылки еше на два метода :
http://edaboard.com/viewtopic.php?p=611720#611720
BVU
А про принцип частотного и фазового детектирования сосвем забыли??? Stanislav, вам намекает про принцим измерения по опорной частоте и все впустую...
Alexey_N
Цитата(BVU @ May 3 2006, 13:46) *
А про принцип частотного и фазового детектирования сосвем забыли??? Stanislav, вам намекает про принцим измерения по опорной частоте и все впустую...

Нет, не впустую. Этот метод несомненно позволит померить с нужной точностью, но... в моем случае это пока выглядит несколько как "из пушки по воробьям". То есть мне пока непонятна существенно более простая вещь - а как рассчитать время, за которое я смог бы измерить 1 кГц с точностью 1 мГц при помощи опоры в 10 МГц? Я же не ставил пока никаких жестких ограничений по времени, меня просто интересовали принципы таких простеньких расчетов (и формулы для них).
Пока что я размышляю над такой тривиальной схемой: в течение примерно 0.1 с подсчитать количество периодов измеряемой частоты и опоры. Если всё сложится удачно (компаратор, выделяющий измеряемый сигнал, идеален) то должно получиться 100 периодов килогерцового сигнала и 1 000 000 - опорного. Далее, на ПК, я с высокой точностью (Real64) делю 1 000 000 на 100 и получаю 10 000.000.... Имею ли я право утверждать, что таким образом я измерил частоту 1 кГц с точностью одна миллионная? Или всё-таки одна десятитысячная? Или (к чему я сейчас более склоняюсь) нечто посередине?
Это - первая заморочка. А вторая - влияние компаратора. Я согласен с =AK=, что чем больше периодов измеряемого сигнала - тем меньше влияние компаратора, это понятно. Но вот как-бы ещё посчитать влияние шума (который неизбежно есть в смеси с сигналом) на точность срабатывания (измерения)?
_artem_
Если только будет считать периoды - то нет, с точностью до одного процента za 0.1 seconds.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.