Перейти к содержанию
    

минимизация погрешности

Все эти приборы работают с окном наблюдения намного превышающем период сети, а потом результаты от нескольких замеров ещё и усредняются. Значение частоты, кстати, усредняется за время 20 секунд(!).

Если на пальцах, то выбрал один из двух способов определения частоты:

а) по переходам через ноль (в тяжёлых случаях - сигнал чистить)

б) из самого же Фурье - по приращению фазы основной гармоники. Грубо говоря, преобразовали на тех же 20 мс, получили модуль1-фазу1, на следующих 20 мс опять модуль2-фазу2 и т.п. Если частота сети идеальна, то разница фаза2 - фаза1 будет равна нулю. Если же частота меньше 50Гц или больше, то появится эффект скольжения частоты и Вы будете наблюдать поворот фазы в "+" или в "-". При 45(55)Гц это скольжение будет видно на двух соседних интервалах 20мс, при отклонении частоты на 0.05Гц период наблюдения увеличивается.

Допустим, с частотой разобрались. Начинаем изменять период таймера-задатчика частоты дискретизации в соответствии с определённой нами частотой, натягивая сетку квантования времени на реальный сигнал. При этом продолжаем "измерять" частоту.

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

Спасибо.

Вы предлагаете, как я понял, аппаратно частоту менять. Существуют ли способы при неизменной аппаратной частоте дискретизации???

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А чем Вас так держит аппаратная частота?

Можно менять её и не аппаратно :) а только для расчётов. А исходный сигнал, если необходимо сохранять осциллограммы, записывать на железной частоте.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А чем Вас так держит аппаратная частота?

Можно менять её и не аппаратно :) а только для расчётов. А исходный сигнал, если необходимо сохранять осциллограммы, записывать на железной частоте.

Спасибо за совет! Думаю это то что надо!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если на пальцах, то выбрал один из двух способов определения частоты:

а) по переходам через ноль (в тяжёлых случаях - сигнал чистить)

б) из самого же Фурье - по приращению фазы основной гармоники. Грубо говоря, преобразовали на тех же 20 мс, получили модуль1-фазу1, на следующих 20 мс опять модуль2-фазу2 и т.п. Если частота сети идеальна, то разница фаза2 - фаза1 будет равна нулю. Если же частота меньше 50Гц или больше, то появится эффект скольжения частоты и Вы будете наблюдать поворот фазы в "+" или в "-". При 45(55)Гц это скольжение будет видно на двух соседних интервалах 20мс, при отклонении частоты на 0.05Гц период наблюдения увеличивается.

Допустим, с частотой разобрались. Начинаем изменять период таймера-задатчика частоты дискретизации в соответствии с определённой нами частотой, натягивая сетку квантования времени на реальный сигнал. При этом продолжаем "измерять" частоту.

 

Правильное решение, но менять собственную частоту дискретизации - это лишнее. В GPS приемниках частоту не меняют, но слежение за фазой позволяет измерять задержки до спутника с точностью до наносекунд.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Правильное решение, но менять собственную частоту дискретизации - это лишнее. В GPS приемниках частоту не меняют, но слежение за фазой позволяет измерять задержки до спутника с точностью до наносекунд.

 

Правильное решение - именно интерполировать сигнал относительно расчитанного значения основной гармоники.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Посмотрите здесь

http://home.comcast.net/~kootsoop/EricJ2/index.htm

Там есть Матлаб-файлы.

Я когда-то пробовал их все. Macleod's estimator лучший в отношении систематических ошибок.

При достаточно большом отношении сигнал/шум они выходят все на предельные ошибки по Крамеру-Рао:

дисперсия ошибки измерения частоты CRLB(f) = 3/(2*pi*pi*N*N*N*SNR)

N - размер блока, SNR - сиигнал/шум

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

 

Добрый день!

Прошу прощение за поднятие давней темы.

Где сейчас возможно достать файлы, обозначенные ссылкой?

Буду очень признателен, если кто-то сможет выслать, или где то выложит.

 

С уважением, Den.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Добрый день!

Прошу прощение за поднятие давней темы.

Где сейчас возможно достать файлы, обозначенные ссылкой?

Буду очень признателен, если кто-то сможет выслать, или где то выложит.

 

С уважением, Den.

 

"достать" можно здесь

http://electronix.ru/forum/index.php?showt...mp;#entry726504

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо.

 

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

Правильный ли ход моих рассуждений по поводу следующей задачи…

 

Сетевое напряжение 50 Гц. Необходимо вычислять фазу, частоту, амплитуду. Также необходимо проводить анализ гармонического состава.

Значение фазы, частоты и амплитуды необходимо получать как можно быстрее…

 

Планирую так:

АЦП 16 бит, частота дискретизации 6400Гц, FIFO буфер БПФ на 512 точек, т.е. получается 128 точек на период.

При поступлении каждой новой точки с АЦП в FIFO буфер, на него накладывается окно (Гауссовское?), производится БПФ. Далее нахожу амплитуду и фазу основной гармоники.

Остается частота основной гармоники, необходимая точность измерения которой равна 0,01Гц. Возможно ли её определение по скорости изменения мгновенной фазы основной гармоники? Или же необходимо построение параболы по максимумам?

 

С уважением, Den.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо.

 

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

Правильный ли ход моих рассуждений по поводу следующей задачи…

 

Сетевое напряжение 50 Гц. Необходимо вычислять фазу, частоту, амплитуду. Также необходимо проводить анализ гармонического состава.

Значение фазы, частоты и амплитуды необходимо получать как можно быстрее…

 

Планирую так:

АЦП 16 бит, частота дискретизации 6400Гц, FIFO буфер БПФ на 512 точек, т.е. получается 128 точек на период.

При поступлении каждой новой точки с АЦП в FIFO буфер, на него накладывается окно (Гауссовское?), производится БПФ. Далее нахожу амплитуду и фазу основной гармоники.

Остается частота основной гармоники, необходимая точность измерения которой равна 0,01Гц. Возможно ли её определение по скорости изменения мгновенной фазы основной гармоники? Или же необходимо построение параболы по максимумам?

 

С уважением, Den.

получается вы хотите считать 128 точечное БПФ за 156,25 мкс. успеете?

Изменено пользователем TigerSHARC

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

128 точечное БПФ у меня высчитывается за 1.1 мкс.

БПФ хочу делать по 4-м периодам, соответственно 512 точечное.

 

 

С уважением, Den.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо.

 

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

Правильный ли ход моих рассуждений по поводу следующей задачи…

 

Сетевое напряжение 50 Гц. Необходимо вычислять фазу, частоту, амплитуду. Также необходимо проводить анализ гармонического состава.

Значение фазы, частоты и амплитуды необходимо получать как можно быстрее…

 

Планирую так:

АЦП 16 бит, частота дискретизации 6400Гц, FIFO буфер БПФ на 512 точек, т.е. получается 128 точек на период.

При поступлении каждой новой точки с АЦП в FIFO буфер, на него накладывается окно (Гауссовское?), производится БПФ. Далее нахожу амплитуду и фазу основной гармоники.

Остается частота основной гармоники, необходимая точность измерения которой равна 0,01Гц. Возможно ли её определение по скорости изменения мгновенной фазы основной гармоники? Или же необходимо построение параболы по максимумам?

 

С уважением, Den.

 

Амплитуда и фаза максимального бина будут скакать из-за размывания спектра.

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

Известно, что такой способ определения частоты и фазы достигает предельно возможной точности (максимального правдоподобия), при заданной длительности сигнала и умереннных отношениях сигнал шум (0-30 дб). Большинство других методов, тот же ФАПЧ, не оптимальны с точки зрения измерений по коротким последовательностям. То есть точность может быть достигнута, но время захвата не соответствует критериям Крамера-Рао

 

Я приводил ссылки на серию исчерпывающих исследований Стэнфордского университета по поводу частного способа интерполяции спектра

с добавлением нулей

http://electronix.ru/forum/index.php?showt...amp;hl=Stanford

 

Там есть всё - выбор окон, влияние нестабильности частоты сигнала, и т.д. и т.п.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Амплитуда и фаза максимального бина будут скакать из-за размывания спектра.

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

Известно, что такой способ определения частоты и фазы достигает предельно возможной точности (максимального правдоподобия), при заданной длительности сигнала и умереннных отношениях сигнал шум (0-30 дб). Большинство других методов, тот же ФАПЧ, не оптимальны с точки зрения измерений по коротким последовательностям. То есть точность может быть достигнута, но время захвата не соответствует критериям Крамера-Рао

 

 

А разве наложение весового окна не устранит (не минимизирует) растекание спектра?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А разве наложение весового окна не устранит (не минимизирует) растекание спектра?

 

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

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я приводил ссылки на серию исчерпывающих исследований Стэнфордского университета по поводу частного способа интерполяции спектра

с добавлением нулей

http://electronix.ru/forum/index.php?showt...amp;hl=Stanford

 

Там есть всё - выбор окон, влияние нестабильности частоты сигнала, и т.д. и т.п.

 

 

Большое спасибо, буду разбираться.

 

С уважением, Den.

 

Определяете положение максимума (и возможно амплитуду).Потом уже гармонику точной частоты накладываете на входной сигнал и точно определяете фазу и амплитуду.

 

Ещё один вопрос.

 

Под наложением гармоники точной частоты, Вы имеете ввиду свертку с комплексной синусоидой, частоты определенной по максимуму параболы?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Большое спасибо, буду разбираться.

С уважением, Den.

Ещё один вопрос.

Под наложением гармоники точной частоты, Вы имеете ввиду свертку с комплексной синусоидой, частоты определенной по максимуму параболы?

 

ну да. Только это называется не свертка, а корреляция. Она будет определять соответствующую амплитуду и фазу. Эта не будет скакать, поскольку в ней исключено влияние дискретности ДПФ - она соответствует физике

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...