|
мат. операция, "как ФАПЧ" |
|
|
|
May 18 2012, 08:38
|
Частый гость
 
Группа: Участник
Сообщений: 157
Регистрация: 20-01-09
Из: Новосибирск
Пользователь №: 43 645

|
Есть генератор с частотой 0-100 Гц, частоту которого нужно измерять с точностью до 0.001 Гц. Это выход перемножителя гетеродина и генератора, собранного на температурозависимом кварце плюс НЧ фильтр (измеритель температуры, в общем). Выход генератора оцифровывается с частотой дискретизации 2 кГц. Сейчас частота измеряется тупо - берем окно нужной для заданной точности длины, делаем БПФ, выделяем максимум-палку-полку. В итоге получается не очень честно, т.к. температура оказывается "размазанной" по этому не очень маленькому времени (оттого и "полка" иногда). Если бы делали по честному, то надо было бы ставить не перемножитель и гетеродин, а ФАПЧ, который "знает" в любой момент времени, какова текущая частота. Но имеем то, что имеем. Посоветуйте пожалуйста какую-нибудь математику на этот счет, заменитель ФАПЧ, чтобы так же знать частоту в любой момент времени. Ведь у нас есть полностью (ну почти, частота дискретизации вмешалась  ) прописанный процесс, неужели ничего нельзя сделать?
Сообщение отредактировал Stas- - May 18 2012, 08:39
|
|
|
|
|
 |
Ответов
(1 - 13)
|
May 18 2012, 09:43
|
Частый гость
 
Группа: Участник
Сообщений: 157
Регистрация: 20-01-09
Из: Новосибирск
Пользователь №: 43 645

|
Да, совсем не обязательно измерять частоту от 0 Гц, ведь температура ведет себя достаточно предсказуемо в смысле верхнего и нижнего предела и я всегда смогу сдвинуть частоту гетеродина так, чтобы было удобно измерять. А можно по-подробнее про аппроксимацию в данном случае? Что тут имеется в виду? И пару слов в защиту ФАПЧ. Ну и пусть фильтр устаканивается "долго", но ведь когда он устаканится - все идет как по маслу. Никто не заставляет измерять температуру сразу в момент включения, можно потормозить, главное потом чтобы в процессе она (частота) была привязана ко времени как можно более точно. ПС: гм, я тут похоже затупил  Что-то мозги не в ту сторону поехали. Ведь, как ни странно, если хочешь ФАПЧ - ну так и сделай ФАПЧ  XOR (перемножение) с какой-нибудь теперь вообще любой частотой, интегратор и VCO (текущее значение интеграла, по сути). Юмор в том, что теперь нафиг не надо что-то подстраивать, достаточно просто знать разбег частот, прямо пропорциональный интегралу. Но вопрос, тем не менее не снимаю. Нет ли каких-нибудь более совершенных методов под это дело?
Сообщение отредактировал Stas- - May 18 2012, 10:24
|
|
|
|
|
May 18 2012, 14:34
|
Гуру
     
Группа: Свой
Сообщений: 2 106
Регистрация: 23-10-04
Из: С-Петербург
Пользователь №: 965

|
Цитата И пару слов в защиту ФАПЧ. Ну и пусть фильтр устаканивается "долго", но ведь когда он устаканится - все идет как по маслу. Никто не заставляет измерять температуру сразу в момент включения, можно потормозить, главное потом чтобы в процессе она (частота) была привязана ко времени как можно более точно. Если Ваша температура изменяется очень медленно, то все так и будет. Но если, теоретически, температура изменится скачком, то ФАПЧ примет новое правильное значение с постоянной времени фильтра. Если сместить частоту из 0 хотя бы до 50 Гц, то можно сделать следующее. Накладываете оконную функцию Гаусса. Параметры нужно будет подобрать в зависимости от размера окна. Далее делаете Фурье. Форма линии будет тоже Гауссом. Далее делаете аппроксимацию по методу наименьших квадратов или любым другим способом. Полезное соотношение - логарифм от Гаусса - квадратичная функция. Еще очень полезно использовать веса при аппроксимации - точки ближе к вершине должны иметь вес, больший, чем на краях. Если этого не сделать - слабые шумы приводят к сильному сдвигу вершины. На модели при окне 8192 точки, частоте дискретизации 25600 Гц при измерении частоты около 50 Гц получается точность порядка 1е-8 Гц. Реально при наличии небольших шумов будет хуже, но не сильно. Где-то 1е-6 Гц.
|
|
|
|
|
May 18 2012, 16:16
|
Знающий
   
Группа: Свой
Сообщений: 521
Регистрация: 12-05-06
Пользователь №: 17 030

|
Цитата(MaslovVG @ May 18 2012, 20:05)  Если вычислять интеграл Фурье чистой синусоиды за время Т то получим в частотной области всплеск вида (Sinx)/x c шириной главного лепестка лепестка 1/T Определение положения вершины этого лепестка при наличии шумов с точностью более половины его ширины при наличии шумов дело безнадежное. Добавте сюда нестабильность частоты гетеродина При благоприятном стечении обстоятельств , совсем не безнадежное  . Мильон раз уже обсуждалось интерполяция DFT, вот например http://electronix.ru/forum/index.php?s=&am...st&p=995269
--------------------
ну не художники мы...
|
|
|
|
|
May 19 2012, 15:32
|
Частый гость
 
Группа: Участник
Сообщений: 100
Регистрация: 20-05-10
Из: Omsk
Пользователь №: 57 391

|
Цитата(scifi @ May 18 2012, 21:07)  У периодического сигнала можно просто измерить период (с достаточной точностью, конечно), и будет совсем не так долго. Может сместить опорную частоту так, чтобы разностная частота менялась не 0...100 Гц, а допустим, 50…150Гц. Тогда суммарная частота с выхода умножителя может быть подавленна ФНЧ. Это позволит измерять частоту обычным частотомером и вообще уменьшить время измерения. Для уменьшения среднеквадратической погрешности квантования цифрового частотомера (уменьшения времени измерения) используют ступенчатые оконные функции. Эти функции отличаются от применяемых в Фурье для уменьшения боковых лепестков.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|