Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Измерение частоты основной гармоники (50 Гц) с точностью 0.01 Гц
Форум разработчиков электроники ELECTRONIX.ru > Цифровая обработка сигналов - ЦОС (DSP) > Алгоритмы ЦОС (DSP)
Страницы: 1, 2, 3, 4
Pridnya
Здравствуйте!

Существует ли программный метод измерения частоты основной гармоники с точностью 0,01 Гц? Предполагается, что в системе есть антиалисинговый фильтр 0-1600 Гц, АЦП с частотой выборки 3200 Гц и микроконтроллер.
Fat Robot
Да. См методы MUSIC, ESPIRIT

http://mathworks.com/help/signal/ref/pmusic.html

Цитата(Pridnya @ Sep 8 2015, 17:21) *
Здравствуйте!

Существует ли программный метод измерения частоты основной гармоники с точностью 0,01 Гц? Предполагается, что в системе есть антиалисинговый фильтр 0-1600 Гц, АЦП с частотой выборки 3200 Гц и микроконтроллер.
serjj
MUSIC или ESPRIT могут и не залезть в микроконтроллер. Если искомая частота всегда около 50 Гц, то как вариант сделать сначала узкополосную фильтрацию (для MCU возможно лучше подойдёт IIR фильтр, но это детали), а потом частоту гармоники оценивать с помощью MLE (Maximum likelihood estimator), т.к. задача сведётся к оцениванию синусоиды на фоне аддитивного шума. Эта задача хорошо изучена, есть множество статей, в которых даны различные варианты реализации. Время на оценку (размер выборки) определяется с помощью границы Крамера-Рао (CRB) для минимального ожидаемого сигнал-шума. Формула CRB для MLE приводится в тех же статьях. Ресурс на реализацию намного меньше чем MUSIC/ESPRIT. И сам алгоритм проще.
Fat Robot
Для единственной синусоиды music сведется mle. А насчет 'не залезть' принцип простой ведь: без денег в кабаке делать нечего.

Цитата(serjj @ Sep 8 2015, 18:42) *
MUSIC или ESPRIT могут и не залезть в микроконтроллер. Если искомая частота всегда около 50 Гц, то как вариант сделать сначала узкополосную фильтрацию (для MCU возможно лучше подойдёт IIR фильтр, но это детали), а потом частоту гармоники оценивать с помощью MLE (Maximum likelihood estimator), т.к. задача сведётся к оцениванию синусоиды на фоне аддитивного шума. Эта задача хорошо изучена, есть множество статей, в которых даны различные варианты реализации. Время на оценку (размер выборки) определяется с помощью границы Крамера-Рао (CRB) для минимального ожидаемого сигнал-шума. Формула CRB для MLE приводится в тех же статьях. Ресурс на реализацию намного меньше чем MUSIC/ESPRIT. И сам алгоритм проще.
serjj
Цитата
Для единственной синусоиды music сведется mle. А насчет 'не залезть' принцип простой ведь: без денег в кабаке делать нечего.

Статистически. MUSIC для одной частоты - это тот же MUSIC, что и для N частот. От svd не уйти. Только сигнальное подпространство будет всегда единичной размерности. В MLE же нужно только фильтр по входу, коррелятор, одно деление и арктангенс.
Pridnya
Спасибо ответившим! Много нового узнал.
_pv
Цитата(Fat Robot @ Sep 8 2015, 23:56) *
Да. См методы MUSIC, ESPIRIT

может кто-нибудь в двух словах объяснить: для одной частоты чем это будет лучше чем просто посчитать Фурье, и потом около максимума наименьшими квадратами найти коэффициенты у функции Гаусса или параболы и положение максимума взять оттуда?
или сразу во временной области наименьшими квадратами искать в сигнале A*sin(wt+p).
TSerg
Цитата(_pv @ Sep 9 2015, 10:34) *
и потом около максимума наименьшими квадратами найти коэффициенты у или параболы и положение максимума взять оттуда?


Именно так и делал на 50 Гц: ПФ + поиск по параболе.
Вполне устраивало.
blackfin
Цитата(serjj @ Sep 8 2015, 20:42) *
Если искомая частота всегда около 50 Гц, то как вариант сделать сначала узкополосную фильтрацию, а потом частоту гармоники оценивать с помощью MLE..
Цитата(serjj @ Sep 8 2015, 22:11) *
В MLE же нужно только фильтр по входу, коррелятор, одно деление и арктангенс.

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

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

А так вы всё правильно рассказываете: наименьших, параболы и т.п. Только эту всю канитель надо как-то делать и проверять. Но может быть и заниматься этим не нужно из-за того, что всё равно ничего путного не выйдет.

Такие дела.

Цитата(_pv @ Sep 9 2015, 08:34) *
может кто-нибудь в двух словах объяснить: для одной частоты чем это будет лучше чем просто посчитать Фурье, и потом около максимума наименьшими квадратами найти коэффициенты у функции Гаусса или параболы и положение максимума взять оттуда?
или сразу во временной области наименьшими квадратами искать в сигнале A*sin(wt+p).


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

Цитата(blackfin @ Sep 9 2015, 09:41) *
А зачем "фильтр по входу (..сделать сначала узкополосную фильтрацию)", если сам коррелятор уже и есть узкополосный фильтр?
blackfin
Цитата(Fat Robot @ Sep 9 2015, 11:45) *
В законченной системе при такой входной полосе фильтр нужен, чтобы обелить процесс на входе коррелятора.

А кто сказал, что на входе коррелятора не аддитивная смесь сигнала и белого шума?

PS. И потом, коррелятор в моём понимании это Линейная Стационарная Система (с точностью до эффектов квантования).
То же, очевидно, касается и предполагаемого узкополосного фильтра на его входе.
А раз так, то обе системы можно поменять местами.
Но полоса пропускания коррелятора ~1/Tизм будет на порядки уже самого узкополосного фильтра, КМК..
Так зачем тогда делать двойную работу?
Fat Robot
"We can neither confirm nor deny the existence of the information requested..."

Цитата(blackfin @ Sep 9 2015, 09:53) *
А кто сказал, что на входе коррелятора не аддитивная смесь сигнала и белого шума?


Все так. Только вот подавление у коррелятора вне его полосы пропускания слабенькое.

Цитата(blackfin @ Sep 9 2015, 09:53) *
PS. И потом, коррелятор в моём понимании это Линейная Стационарная Система (с точностью до эффектов квантования).
То же, очевидно, касается и предполагаемого узкополосного фильтра на его входе.
А раз так, то обе системы можно поменять местами.
Но полоса пропускания коррелятора ~1/Tизм будет на порядки уже самого узкополосного фильтра, КМК..
Так зачем тогда делать двойную работу?
serjj
Цитата
если сам коррелятор уже и есть узкополосный фильтр?

А что с чем мы будем коррелировать? В MLE обычно оценивается фрагмент АКФ случайного процесса, т.е. корреляция сигнала с задерженными копиями самого себя. Полоса такого фильтра определяется спектральным составом случайного процесса. Это не тоже самое, что корреляция входного процесса с некоторым гармоническим сигналом. С другой стороны, говорится, что MLE оптимальный метод для оценки комплексной экспоненты на фоне аддитвиного белого шума, т.е. фильтр нужен для подавления гармоник за пределами диапазона, в котором происходит оценка. Как сказал Fat Robot, это обеливание процесса на всякий случай. Если в системе может быть несколько гармоник или искомая частота варьируется в широком диапазоне, то да, MUSIC будет более разумным решением. Что же касается Фурье + интерполяция - почему бы и нет, только MLE по ресурсам выигрывает, иначе бы все ставили бы на feedforward синхронизацию скоростных модемов Фурье и радовались rolleyes.gif
blackfin
Цитата(serjj @ Sep 9 2015, 12:12) *
А что с чем мы будем коррелировать? В MLE обычно оценивается фрагмент АКФ случайного процесса, т.е. корреляция сигнала с задержанными копиями самого себя.

Если заранее известно, что сигнал гармонический, то на мой взгляд "корреляция с его задержанной копией" и есть просто корреляция с гармонической функцией, то есть с sin/cos.
serjj
Цитата
Если заранее известно, что сигнал гармонический, то на мой взгляд и "корреляция с его задержанной копией" есть просто корреляция с гармонической функцией, то есть с sin/cos.

Заранее известно, что мы ищем сигнал с частотой близкой к 50 Гц в сигнале с символьной 3,2 кГц. Почему бы в таком сигнале не быть гармоникам на частотах 200, 300 Гц или каких либо ещё. Фильтр переведёт неизвестный случайный процесс к процессу вида "комплексная экспонента + белый шум", который является допустимым для работы MLE.
blackfin
Цитата(serjj @ Sep 9 2015, 12:24) *
Почему бы в таком сигнале не быть гармоникам на частотах 200, 300 Гц или каких либо ещё.

По условию задачи, гармоника одна. Всё, точка.. biggrin.gif

Понятно, что если это не так, то "простые" методы не работают. Но мы ведь не пытаемся "натянуть сову на глобус"?
serjj
Цитата
Существует ли программный метод измерения частоты основной гармоники с точностью 0,01 Гц? Предполагается, что в системе есть антиалисинговый фильтр 0-1600 Гц, АЦП с частотой выборки 3200 Гц и микроконтроллер.

Измерение частоты основной гармоники, основной Карл (с) biggrin.gif
Никто не говорит, что в диапазоне 0...1600 Гц она единственная.
А по поводу простоты - покажите, что для случая гармонический сигнал + шум есть более простой метод чем MLE и что эта оценка будет несмещённой и оптимальной.
Фильтр - эта та мелочь, которая позволит перейти от произвольного процесса к гармоника + шум, при условии, что мы априори знаем где лежит интересующая нас частота (это то, что нам дано по условию задачи).
Fat Robot
Ну вот хочет человек, чтобы во входном сигнале была единственная гармоника на фоне БГШ. Не нужно запрещать человеку хотеть. Дело за малым: приказать сигналу хорошо себя вести.

Цитата(serjj @ Sep 9 2015, 10:41) *
Никто не говорит, что в диапазоне 0...1600 Гц она единственная.
blackfin
Цитата(serjj @ Sep 9 2015, 12:41) *
Измерение частоты основной гармоники, основной Карл (с) biggrin.gif
А, ну да.. это я проморгал.. biggrin.gif

Цитата(serjj @ Sep 9 2015, 12:41) *
А по поводу простоты - покажите, что для случая гармонический сигнал + шум есть более простой метод чем MLE и что эта оценка будет несмещённой и оптимальной.

Собсно, мне казалось, что ход мыслей примерно такой же.. "только в профиль"..

Поясню..

Вот, допустим, у нас есть "гармонический сигнал + шум".

Шум мы сразу с негодованием отбрасываем.. biggrin.gif

Тогда разыскиваемый сигнал можно записать в виде:

S(t) == S(n*∆t) = A*cos(ω*n*∆t+φ), где n = 0..N-1

Далее вычисляем сумму:

CN = Σ{S(n*∆t)*e-j*ω1*n*∆t} = Σ{A*cos(ω*n*∆t+φ)*e-j*ω1*n*∆t}, где суммирование по всем: n = 0..N-1

В предположении, что частота ω1 удовлетворяет соотношению: ω1*N*∆t/2 = 2*pi*M, где M - целое,

находим отношение мнимой и действительной частей полученной суммы:

Im[CN]/Re[CN] = tg[ω*(N-1)*∆t/2 - ω1*∆t/2 + φ] * tg[ω1*∆t/2] / tg[ω*∆t/2].

В этом уравнении две неизвестных: ω и φ. Чтобы их исключить, сумму CN нужно вычислить как минимум дважды для разных значений частоты ω1.

Затем, с помощью MLE можно вычислить оба искомых параметра: ω и φ..

Понятно, что шум, гармоники сигнала и прочие эффекты могут сместить оценку, но сделав несколько измерений для разных значений частоты ω1 их влияние можно сильно уменьшить, КМК..

Как-то так..

Нажмите для просмотра прикрепленного файла
Fat Robot
Вот кстати, наглядный пример того, что шумовой процесс должен быть белым для MLE. Если для этих "разных значений частоты ω1" узкополосные процессы будут коррелированны, то это будет смещать оценку.

Это так.. общее замечание.

Цитата(blackfin @ Sep 9 2015, 11:21) *
Понятно, что шум, гармоники сигнала и прочие эффекты могут сместить оценку, но сделав несколько измерений для разных значений частоты ω1 их влияние можно сильно уменьшить, КМК..
petrov
Цитата(blackfin @ Sep 9 2015, 13:21) *
но сделав несколько измерений для разных значений частоты ω1 их влияние можно сильно уменьшить, КМК..


В несколько синк фильтров пролазит куча неизвестных гармоник, не очень понятно как можно сильно уменьшить их влияние.
blackfin
Цитата(Fat Robot @ Sep 9 2015, 13:42) *
Если для этих "разных значений частоты ω1" узкополосные процессы будут коррелированны, то это будет смещать оценку.

"Дьявол скрывается в деталях." В приложении к ЦОС можно даже сказать, что "Дьявол скрывается в значениях цифровых величин"..

Когда узкополосный фильтр вырезает из случайного процесса все лишние частоты, он точно так же смещает оценку,

если, конечно, этот фильтр не обладает как по волшебству идеально плоской частотной характеристикой..

Любая АЧХ имеющая наклон в точке измерения приведет к смещению оценки..

И таки да, для тех кто ещё не понял, CN это обычные коэффициенты разложения сигнала S(t) в ряд Фурье.. biggrin.gif
serjj
Цитата
В этом уравнении две неизвестных: ω и φ. Чтобы их исключить, сумму CN нужно вычислить как минимум дважды для разных значений частоты ω1.
...
Затем, с помощью MLE можно вычислить оба искомых параметра: ω и φ..
...
И таки да, для тех кто ещё не понял, CN это обычные коэффициенты разложения сигнала S(t) в ряд Фурье..

Вай! Сложно у вас всё! biggrin.gif
Зачем считать Фурье на одной частоте, на другой частоте, получать систему с нелинейными уравнениями?
Почему бы не сделать вот так?
Нажмите для просмотра прикрепленного файла
Вы пытаетесь оценить частоту используя сравнение входного сигнала с некоторым паттерном - делаете ли вы корреляцию или расчитываете Фурье для некоторой частоты - вы задаетесь своим значением ω1 и пытаетесь получить ω.
В основе спектрального анализа лежит дуальность АКФ и СПМ. MLE в статье (вариант реализации) основан на получении частоты из АКФ. Не нужно подбирать частоты ω1, для рассчёта потребуется только входной сигнал. Идея, как я её понял, проста: с одной стороны у нас есть оценки АКФ, полученные по данным, с другой - аналитическое значение АКФ для комплексной экспоненты. Сопоставляя оценку с аналитическим выражением, можно получить частоту сигнала. Увеличивая размер выборки и порядок эстиматора увеличиваем точность и (при росте порядка эстиматора) уменьшаем полосу захвата.

Тут же кстати и объяснение тому, что гармоники отличные от искомой вносят искажение в оценку. При оценке АКФ они вносят свой вклад, а для аналитической формы АКФ мы считаем, что в сигнале только одна гармоника. При рассчёте это несоответствие выливается в смещение оценки.

MUSIC, Capon и прочие методы, кстати, также опираются на АКФ, только в форме автоковариационной матрицы, в отличие от Фурье, в котором в сущности происходит сравнение сигнала с набором комплексных экспонент, частоты которых заданы и определяются размерностью.
blackfin
Цитата(petrov @ Sep 9 2015, 13:46) *
В несколько синк фильтров пролазит куча неизвестных гармоник, не очень понятно как можно сильно уменьшить их влияние.

Смысл в том, что если усреднить отклик от четного числа последовательно расположенных по частоте синк-фильтров,

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

Но это так.. Гипотеза.. biggrin.gif

Цитата(serjj @ Sep 9 2015, 14:06) *
Зачем считать Фурье на одной частоте, на другой частоте, получать систему с нелинейными уравнениями?

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

Отличие состоит лишь в способе вычисления частоты.. Я просто предложил посчитать частоту "в лоб", минуя вычисление точки экстремума параболы.

И я отнюдь не призываю использовать предложенный способ в боевых условиях. Мне просто было интересно узнать мнение коллектива..

За сим, и спасибо!.. biggrin.gif
petrov
Цитата(blackfin @ Sep 9 2015, 14:28) *
Смысл в том, что если усреднить отклик от четного числа последовательно расположенных по частоте синк-фильтров,

то суммарный вклад "неизвестной гармоники" будет уменьшен, так как АЧХ синк фильтров меняет знак при переходе к следующему бину


Это такой запутывющий способ проектирования фильтра, да подобным способом можно уменьшить боковики синка, за счёт расширения основного лепестка, и соответствующих потерь в отношении сигнал/шум. Почему бы просто не проектировать сразу нужный FIR фильтр?
blackfin
Цитата(petrov @ Sep 9 2015, 14:49) *
Почему бы просто не проектировать сразу нужный FIR фильтр?

ОК, уговорили.. Пойду проектировать нужный фильтр.. rolleyes.gif
petrov
Цитата(serjj @ Sep 9 2015, 14:06) *
MUSIC, Capon и прочие методы, кстати, также опираются на АКФ, только в форме автоковариационной матрицы, в отличие от Фурье, в котором в сущности происходит сравнение сигнала с набором комплексных экспонент, частоты которых заданы и определяются размерностью.


Не смущает, что в одном случае мы умножаем зашумлённый сигнал на зашумлённый сигнал, а в другом случае на чистенькую комплексную экспоненту?
serjj
Цитата
Не смущает, что в одном случае мы умножаем зашумлённый сигнал на зашумлённый сигнал, а в другом случае на чистенькую комплексную экспоненту?

Я знаю два способа оценки АКФ: по данным и параметрический. В первом случае мы имеем данные, во втором - модель. Второй может дать нам АКФ, которая будет максимально близкой к аналитической, т.е. к истинной, но она требует знание а) количества сигналов, входящих в смесь и б) их частот. Если количество может быть дано априорно, то частоты мы не знаем наверняка, т.к. именно их мы и оцениваем. Так что при оценке частот АКФ мы вынуждены оценивать по данным с ограниченной размерностью и в случае, как например с AR экстраполировать. Параметрический подход применим когда например нужно посчитать оптимальный фильтр, если даны все параметры модели, полученные каким-либо другим способом.

Что-то упускаю? )
petrov
Цитата(serjj @ Sep 9 2015, 15:37) *
Что-то упускаю? )


Цитата(serjj @ Sep 9 2015, 12:12) *
Что же касается Фурье + интерполяция - почему бы и нет, только MLE по ресурсам выигрывает, иначе бы все ставили бы на feedforward синхронизацию скоростных модемов Фурье и радовались rolleyes.gif


Ну вот я так делаю и радуюсь, конечно всё БПФ смысла делать нет, только скользящие несколько бинов.

А вы говорите:

Цитата(serjj @ Sep 9 2015, 12:12) *
В MLE обычно оценивается фрагмент АКФ случайного процесса, т.е. корреляция сигнала с задерженными копиями самого себя.


Типа что-то сигнал у вас слишком хорош, давайте-ка мы его ещё на шум умножим.

Что-то упускаю? )


serjj
Цитата
Типа что-то сигнал у вас слишком хорош, давайте-ка мы его ещё на шум умножим.

Автокорреляционная матрица сигнала, состоящего из детерменированной составляющей (например комплексная синусоида) и аддитивного белого шума, x(t) = s(t) + n(t), где n(t) - нормально распредёленный шум -
R_xx = R_ss + N * I, где N - мощность шума, а I - единичная диагональная матрица. Мы можем рассматривать первую строку этой матрицы как правую половину АКФ. Т.к. белый шум не коррелирует сам с собой, то он вносит своё искажение только на диагональные элементы матрицы, иначе говоря для нулевого лага. Оценка АКМ тем ближе к тому, что написано выше чем больше отчётов мы имеем. При этом она не зависит от уровня шума, при условии что шум белый.
Шум при этом разумеется искажает оценку параметра, но смещение, которое он вносит не увеличивается от того, что мы оцениваем АКФ только по данным, т.е. по смещённым копиям самого сигнала. Почему это так, я привёл выше.
Pridnya
Цитата(serjj @ Sep 9 2015, 12:41) *
Измерение частоты основной гармоники, основной Карл (с) biggrin.gif
Никто не говорит, что в диапазоне 0...1600 Гц она единственная.
А по поводу простоты - покажите, что для случая гармонический сигнал + шум есть более простой метод чем MLE и что эта оценка будет несмещённой и оптимальной.
Фильтр - эта та мелочь, которая позволит перейти от произвольного процесса к гармоника + шум, при условии, что мы априори знаем где лежит интересующая нас частота (это то, что нам дано по условию задачи).


Товарищи ученые, доценты с кандидатами... sm.gif Пока мало что понятно, но я стараюсь.
Реь идет о электрораспределительныой сети.
В сети всегда есть основная гармоника и гармоники до 13-й, но основная всегда около 50 Гц, например 45-55 Гц.
Все гармоники в сумме всегда значительно меньше основной.
50 Гц - 90%
100 Гц 0%
150 Гц 3%
200 Гц 0%
250 Гц 2%
...
Хочется выделить основную гармонику (цифровым фильтром) и измерить программно её частоту с точностью 0,01 Гц.

Что я могу:
С помощью ДПФ посчитать амплитуду основной гармоники.
С помощью БПФ посчитать амплитуды всех гармоник.
С помощью цифрового фильтра выделить полосу около 50 Гц и получить отфильтрованную выборку из 64-х точек.



Tiro
Цитата(Pridnya @ Sep 10 2015, 00:03) *
Реь идет о электрораспределительныой сети.
В сети всегда есть основная гармоника и гармоники до 13-й, но основная всегда около 50 Гц, например 45-55 Гц.
...
Хочется выделить основную гармонику (цифровым фильтром) и измерить программно её частоту с точностью 0,01 Гц.

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

Надо еще учесть, что в сети всегда присутствует АМ и ЧМ, фликкер и проч. Откройте ГОСТ 13109 и забудьте про цифровой фильтр. Нужен образцовый сигнал.
petrov
Pridnya

Выделяйте комплексным полосовым КИХ фильтром интересующий диапазон, АЧХ в полосе пропускания должна быть как можно более равномерная, гармоники(в том числе на отрицательных частотах) должны быть задавлены как можно сильнее, затем вычисляете несколько бинов ДПФ, далее по статье считаете частоту:

http://electronix.ru/forum/index.php?s=&am...t&p=1141831

Советую модельку в симулинке сделать и погонять с различными параметрами.
Милливольт
Удалено, не понял задачи и сморозил чушь.
Pridnya
Цитата(Tiro @ Sep 10 2015, 01:02) *
Почему бы Вам не поинтересоваться, как это реализовано в регистраторах показателей качества электроэнергии?
Парма, к примеру.

Надо еще учесть, что в сети всегда присутствует АМ и ЧМ, фликкер и проч. Откройте ГОСТ 13109 и забудьте про цифровой фильтр. Нужен образцовый сигнал.

Обязательно поинтересуюсь, спасибо за ссылку на прибор, который вы считаете образцом.
В сети много чего есть (в неизвестно какой электросети), они же все разные.
Упоминаний о наличии АМ и ЧМ фликкера сетях 6-10 кВ нигде не встречал, даже слово такое впервые слышу,
никогда не нужно было бороться с АМ и ЧМ фликкером в электросетях.
Исходя из используемой вами терминологии, ссылки на ГОСТ (электромагнитная совместимость) и предложением отказаться от цифровой обработки сигналов, предположу, что вы являетесь специалистом в области аналоговых систем связи.
Картинки из ГОСТ 13109 "колебания напряжения", "временное перенапряжение" (в вашей терминологии АМ-фликкер) и "перепады частоты сигнала"
(такой картинки нет, но в вашей терминологии ЧМ-фликкер), это как раз то, что мне нужно и чем я занимаюсь.
Перепады напряжений могут быть в диапазоне от 0 до 2-х кратного номинального, а отклонение частоты не более 10%.
Чтобы все это считать, используется аппаратная часть (в первом моем сообщении указано), микроконтроллер с ядром ARM и модулем FPU осуществляет обработку данных (это о доступной вычислительной мощности, ну, то есть, не компьютер под Windows с MatLab-ом это все обсчитывает).
ГОСТы на ЭМС необходимы только для сертификации готового изделия на ЭМС (как работает изделие в условиях помех в питающей сети ~220 вольт, помех в линиях дискретных входов, линий связи...), анализируются и регистрируются (всякие там аварийные журналы с параметрами аварийных режимов, векторные диаграммы токов и напряжений основной гармоники, ток нулевой, прямой, обратной последовательности основной частоты, напряжение нулевой последовательности основной частоты, углы между всеми этими векторами, среднеквадратичное значение суммы верхних гармоник тока нулевой последовательности...осциллограмма аварийного режима для аналоговых и цифровых входов в формате COMTRADE). Поэтому никак без цифровой фильтрации нельзя, везде фильтрация, свертка...И кстати, качество электроэнергии - это не основная функция, которая меня интересует.

Цитата(petrov @ Sep 10 2015, 01:39) *
Pridnya

Выделяйте комплексным полосовым КИХ фильтром интересующий диапазон, АЧХ в полосе пропускания должна быть как можно более равномерная, гармоники(в том числе на отрицательных частотах) должны быть задавлены как можно сильнее, затем вычисляете несколько бинов ДПФ, далее по статье считаете частоту:

http://electronix.ru/forum/index.php?s=&am...t&p=1141831

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

Спасибо за информацию! Чувствуется, что человек понимает о чем пишет. Приятно читать.
Вот симулинком не пользовался никогда. Наверное, придется попробовать. И за симулинк спасибо!

Цитата(Милливольт @ Sep 10 2015, 09:10) *
Если позволите...
Задача, поставленная автором не так проста... Во-первых, гармоники сетевой помехи далеко не всегда малы, а в ряде случаев имеют амплитуду больше, чем амплитуда основной частоты (sic!). Во-вторых: измерение с требуемой точностью требует и длинной реализации, и неиспользования любых аппроксимационных решений, т.к. в условиях шумов (априори неизвестных уровней) потенциальное смещение оценки может быть обусловлено именно ими.
А почему бы не использовать в этих условиях вариант синхронного фильтра (извиняюсь за самоцитирование ( http://www.tredex-company.com/ru/kvaziopti...i-i-ee-garmonik ), но не для режекции, а для выделения сигнала. Если делать ресэмплинг входных данных со смещающейся частотой сдвига (как пример ГКЧ), то отклик синхронного фильтра в какой-то момент пройдет максимум. И именно этот максимум будет соответствовать искомой частоте. Дополнительным «плюсом» такого решения будет использование энергии как четных, так и нечетных гармоник.
С вычислительной точки зрения это будет самое экономичное решение.

В сетях 6-10 киловольт в основном присутствует основная гармоника (50 Гц), поэтому по ней и работают. Это в сетях 0,4 киловольт (внутридомовые...) гармоник полно...
Вариант синхронного фильтра посмотрю. Тоже не встречал и не пользовался таким фильтром.
Tiro
Прошу не приписывать мне то, что не было сказано.

Цитата(Pridnya @ Sep 10 2015, 10:05) *
Обязательно поинтересуюсь, спасибо за ссылку на прибор, который вы считаете образцом.

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

Цитата
Упоминаний о наличии АМ и ЧМ фликкера сетях 6-10 кВ нигде не встречал, даже слово такое впервые слышу,
никогда не нужно было бороться с АМ и ЧМ фликкером в электросетях.

Понятия "амплитудная модуляция", "частотная модуляция", "доза фликкера" применяются раздельно. Речь о борьбе с ними не шла.

Цитата
Исходя из используемой вами терминологии, ссылки на ГОСТ (электромагнитная совместимость) и предложением отказаться от цифровой обработки сигналов, предположу, что вы являетесь специалистом в области аналоговых систем связи.

ГОСТ 13109-97 вообще-то называется ЭЛЕКТРИЧЕСКАЯ ЭНЕРГИЯ. НОРМЫ КАЧЕСТВА ЭЛЕКТРИЧЕСКОЙ ЭНЕРГИИ В СИСТЕМАХ ЭЛЕКТРОСНАБЖЕНИЯ ОБЩЕГО НАЗНАЧЕНИЯ, то есть речь никак не об ЭМС. Терминология взята в том числе из него.

Предложение отказаться от ЦОС не вносилось, а было предложение, альтернативное использованию цифрового фильтра. И с областью моих интересов Вы промахнулись.

Цитата
(такой картинки нет, но в вашей терминологии ЧМ-фликкер), это как раз то, что мне нужно и чем я занимаюсь.

Это Ваша терминология.

Цитата
Верно определяйте слова, и вы освободите мир от половины недоразумений. Рене Декарт
Pridnya
Цитата(Tiro @ Sep 10 2015, 10:39) *
Прошу не приписывать мне то, что не было сказано.

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


Прошу прощения, если вам показалось, что я в своих рассуждениях что-то вам приписал. Проблема восприятия информации.
Вот и теперь мне кажется, что вы сотрудник С.Пб. фирмы Парма и при первой возможности стараетесь отослать к приборам, к которым вы имеете отношение, выдать их за образец (можно же было и к импортному оборудованию отослать, а у них там фирмы по 100 лет и цифровая обработка сигналов у них зародилась, и сигнальные процессоры...а не у нас). Может у меня что-то с головой, но мне так кажется. Извините. А иначе зачем было отсылать к конкретному изделию конкретной фирмы из вашего города и предлагать мне забыть про цифровую фильтрацию (я так понял, что вы даете мне установку, как Анатолий Кашпировский когда-то "забудьте про...иди за нами, сынок"), а я без неё никак. Не сочтите меня мастером пустословия, все мы разные. Еще раз прошу прощения.
Если будут конкретные предложения с ссылками к алгоритмам, а не к готовым изделиям и их техописаниям, то с удовольствием ознакомлюсь.
Уже не раз сталкивался с тем, что расписан способ один, а используется круче. rolleyes.gif

http://www.parma.spb.ru/catalog/equipment/...tvo/parma_rk301
Что-то как-то не ярко, похоже очень старая разработка:
угла сдвига фаз между каналами напряжения (только РК03.01ПТ)
Оснащены интерфейсом Centronics для подключения матричного принтера и интерфейсом RS-232 для подключения ПК
Частота f Гц от 45 до 55 Гц ±0,02 Гц (абсолютная, при интервале усреднения 20 секунд)
4.4.2.1 Регистратор обеспечивает измерение текущих значений ПКЭ:
− частоты входного сигнала f от 40 до 70 Гц;
...
Таблица 1 – Нормируемые метрологические характеристики регистраторов
Частота f Гц от 45 до 55
...
4.4.2.1 Время установления рабочего режима – не более 60 с.
4.4.2.2 Потребляемая мощность регистратора не более 15 ВА.

Я считаю фазы всех векторов, направление мощности...
Использую изолированный интерфейс USB, Ethernet, т.е. к любому ноутбуку без всяких переходников могу подключиться.
А мне нужно круче чем ±0,02 Гц, чтобы 50,00 Гц "показометром" показывать (без усреднения за минуту), ну, т.е., чтобы быстро среагировать на изменение частоты.
Измеряем в диапазоне 40-70, а погрешность нормиркется в диапазоне 45-55 Гц.
И куда ж там 15 Вт на энергопотребление уходит, микрокомпьютер что-ли засунули с крякнутым MatLab-ом.

Не годится.
rudy_b
Парма - это, как раз, образец безграмотной разработки.

Стандартный способ точного определения частоты основной гармоники сети такой (примерно).
1. Выборка с частотой порядка 25 кГц точек (24 бита) за, примерно, 300 мс (это параметры реального прибора класса 0.05 с частотным диапазоном порядка 8 кГц).
2. На выборку накладывается окно Гаусса с аккуратно подобранными параметрами. Делается FFT (само FFT - float, обработка - double). При этом провал бин между соседними гармониками оказывается порядка 80 дБ.
3. По МНК (парабола или, лучше, гаусс, по 5 - 7 соседним бинам с весами) определяется частота максимума. Если она сильно смещена относительно центра выбранных бин - операция повторяется с коррекцией центра.

При этом точность определения частоты основной гармоники не хуже 0.005 Гц даже при 10% гармониках.
Pridnya
Цитата(rudy_b @ Sep 10 2015, 13:04) *
Стандартный способ точного определения частоты основной гармоники сети такой (примерно)...

Спасибо!!! Буду пробовать сам метод, не смотря на то, что у меня АЦП 16 бит и частота выборки 3200 Гц (могу поднять до 6400). laughing.gif
Tiro
bb-offtopic.gif

Цитата(Pridnya @ Sep 10 2015, 10:58) *
Вот и теперь мне кажется, что вы сотрудник С.Пб. фирмы Парма...
А иначе зачем было отсылать к конкретному изделию конкретной фирмы из вашего города

Кажется, кажется.. Еще у меня мультиметр Fluke, а осциллоскоп простенький LeCroy. Давайте определяйте по приборам, какой из этих фирм я сотрудник? biggrin.gif

Цитата(rudy_b @ Sep 10 2015, 13:04) *
Парма - это, как раз, образец безграмотной разработки.

Стандартный способ точного определения частоты основной гармоники сети такой (примерно).
1. Выборка .... за, примерно, 300 мс

При этом точность определения частоты основной гармоники не хуже 0.005 Гц даже при 10% гармониках.

Вот и выросло поколение воинствующих инженеров, не отличающих точность от разрешающей способности, мгновенную частоту от частоты основной гармоники biggrin.gif
Pridnya
Цитата(Tiro @ Sep 10 2015, 22:25) *
bb-offtopic.gif


Кажется, кажется.. Еще у меня мультиметр Fluke, а осциллоскоп простенький LeCroy. Давайте определяйте по приборам, какой из этих фирм я сотрудник? biggrin.gif


Вот и выросло поколение воинствующих инженеров, не отличающих точность от разрешающей способности, мгновенную частоту от частоты основной гармоники biggrin.gif

Тепрь-то можно написать хоть про Снеговика с ведром на голове, на содеянное это не повлияет. sm.gif))

На данном этапе можно любую терминологию использовать, лишь бы Src и Dst понимали друг друга, а для других - хоть белый шум. cranky.gif Кстати, единого языка с единой терминологией для нучного мира так и не создали.
rudy_b
Цитата(Tiro @ Sep 10 2015, 22:25) *
bb-offtopic.gif
Вот и выросло поколение воинствующих инженеров, не отличающих точность от разрешающей способности, мгновенную частоту от частоты основной гармоники biggrin.gif

Точность и разрешающая способность - это совершенно разные вещи, указанная цифра дает именно значение погрешности, т.е. среднеквадратичное отклонение. Разрешающая способность на 2 порядка выше.

Понятия "мгновенная частота" не существует.

При периодическом сигнале частота основной гармоники совпадает с измеренной за любые несколько периодов. Иначе сигнал периодическим ( в строгом смысле этого слова) не является и говорить о частоте основной гармоники бессмысленно.
Fat Robot
Дарю. Пользуйтесь.

Цитата(rudy_b @ Sep 10 2015, 21:33) *
Понятия "мгновенная частота" не существует.
rudy_b
Спасибо, конечно, но это не метрологическое, а чисто теоретическое понятие, которое применяется только на чистом синусе (ну, в крайнем случае, при узкополосном синале, не содержащем гармоник). Непосредственному измерению не подлежит, поскольку определяется через другой, опять же, непосредственно не измеряемый параметр - скорость изменения фазы, которую опять же невозможно определить по отсчетам АЦП, поскольку, даже при моночастотном сигнале, его амплитуда на момент измерения неизвестна. Для понимания этого полезно почитать литературу, указанную в списке литературы под номером [3] в вашей же ссылке (Финк Л. М. Сигналы, помехи, ошибки…).

Мгновенную частоту можно оценить только задним числом по достаточно большой выборке, но, при этом, само это понятие теряет смысл. И что вы будете делать если есть несколько гармоник? Как вы собираетесь определить понятие фазы такого сигнала?

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

f(t) = d/dt(arg(y(t))), простейший частотный дискриминатор, известный со времён старого доброго ЧМ, нет? )

А ещё оказывается в современном ЦОС есть целый класс алгоритмов, т.н. DIFM, например
Нажмите для просмотра прикрепленного файла
Вполне себе практические вещи делают.
blackfin
Цитата(rudy_b @ Sep 11 2015, 03:30) *
Мгновенную частоту можно оценить только задним числом по достаточно большой выборке, но, при этом, само это понятие теряет смысл.

А ещё был такой чудак Гейзенберг, так тот вообще всем доказывал, что ошибка "∆F" при оценке измерении мгновенной частоты "F" равна бесконечности..

И даже формулу в свое оправдание привел:

∆E*∆t ≥ ћ/2,

и, с учетом того, что:

∆E == ћ*∆ω == ћ*2*pi*∆F,

такую же формулу для принципа неопределенности:

∆F*∆t ≥ 1/(4*pi).

Так что да, оценить мгновенную частоту сложно, а вот в какую-нить формулу запихнуть - легко!

biggrin.gif
rudy_b
Цитата(serjj @ Sep 11 2015, 10:52) *
f(t) = d/dt(arg(y(t))), простейший частотный дискриминатор, известный со времён старого доброго ЧМ, нет? )

Нет, вы не отличите изменение фазы от изменения амплитуды.

Цитата(serjj @ Sep 11 2015, 10:52) *
А ещё оказывается в современном ЦОС есть целый класс алгоритмов, т.н. DIFM, например
Нажмите для просмотра прикрепленного файла
Вполне себе практические вещи делают.

Ага, но для этого нужно сделать выборку длиной не менее периода. И, только тогда, можно оценить "мгновенную" частоту.
serjj
Цитата
Нет, вы не отличите изменение фазы от изменения амплитуды.

Да вы что! biggrin.gif
Ну расскажите мне, где вы в формуле f(t) = d/dt(arg(y(t))) увидили изменение амплитуды? И как же это у нас FM радио тогда ловит?..
Цитата
Ага, но для этого нужно сделать выборку длиной не менее периода. И, только тогда, можно оценить "мгновенную" частоту.

Тогда она уже не будет мгновенной, вам не кажется? )
То о чём вы говорите, не мгновенная частота, а спектральная оценка. И для её определения со значительной точностью не обязательно иметь даже период колебания (в сущности всё определяется уровнем шумов и спектральным составом сигнала). Вот пруф, который я уже как-то приводил.
rudy_b
Цитата(serjj @ Sep 11 2015, 17:32) *
Да вы что! biggrin.gif
Ну расскажите мне, где вы в формуле f(t) = d/dt(arg(y(t))) увидили изменение амплитуды? И как же это у нас FM радио тогда ловит?..

Ну тогда уж сначала вы расскажите мне, как вы измеряете arg(y(t))?

Цитата(serjj @ Sep 11 2015, 17:32) *
Тогда она уже не будет мгновенной, вам не кажется? )
То о чём вы говорите, не мгновенная частота, а спектральная оценка. И для её определения со значительной точностью не обязательно иметь даже период колебания (в сущности всё определяется уровнем шумов и спектральным составом сигнала). Вот пруф, который я уже как-то приводил.

Как я уже говорил ранее, понятие "мгновенная частота" в метрологии отсутствует. Оно есть только в головах пишущих формулы теоретиков.

Попробуйте почитать книжку, указанную в посте
Цитата(rudy_b @ Sep 11 2015, 03:30) *
...Финк Л. М. Сигналы, помехи, ошибки…

serjj
Цитата
Ну тогда уж сначала вы расскажите мне, как вы измеряете arg(y(t))?

Арктангенсом, а вы?

Цитата
И, только тогда, можно оценить "мгновенную" частоту.
...
Как я уже говорил ранее, понятие "мгновенная частота" в метрологии отсутствует. Оно есть только в головах пишущих формулы теоретиков.

То у вас её можно оценить, то она только в "головах у теоретиков". Вам приводят конкретные статьи и примеры, а вы говорите какие-то общие фразы и не хотите их количественно подтвердить. Речь же о точном предмете )
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2024 Invision Power Services, Inc.