реклама на сайте
подробности

 
 
> Цифровой фильтр, Требования к точности Fs
IGK
сообщение Mar 29 2007, 10:54
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 313
Регистрация: 7-01-07
Из: Севастополь
Пользователь №: 24 170



Есть ФНЧ2 Fo=2Гц, реализован в виде DirectForm2. Частота выборок Fs=600Гц/1.6мс.
Периодически между вызовами п/п фильтрации вклинивается прерывание, точнее несколько вызовов одного и того же прерывания. Так как это довольно непредсказуемый процесс, то посмотрел на сигналы через осциллограф, выведя на свободные ноги стробы. Получил (прикидочно) джиттер Fs в несколько процентов. Ни Матлаб, ни Фильтр Солюшн никак на такое дрожание выборок не реагируют...

Реально есть небольшие периодические выбросы выходного сигнала, частота сравнима с частотой среза фильтра (ближе к Fo/2). Задействована вся периферия Меги, все работает несинхронно. Так что осталось сообразить, то ли это от джиттера, то ли помехи.

Буду признателен за ссылку на первоисточник, где не очень заумно рассматривается влияние стабильности Fs на выходной сигнал. Или, может, кто-то поделится личным опытом...
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
vladv
сообщение Apr 1 2007, 02:12
Сообщение #2


Частый гость
**

Группа: Участник
Сообщений: 128
Регистрация: 7-06-06
Пользователь №: 17 825



Тоже не совсем понял. но если гуляет момент оцифровки (т.е. выборки ацп), то "на пальцах" примерно так.

Во временнОй области (оценка величины шума из-за джиттера):

Пусть Ts - период частоты выборки, ts - величина джиттера частоты выборки, Ti - период входного синусоидального сигнала. Оцифрованный сигнал можно предстваить как сумму идеально-оцифрованного сигнала и шума ошибки оцифровки из-за джитера чаcтоты выборки. Ошибка(относительная) оцифровки в момент времени t будет:
d = |sin(2*pi*t/T)-sin(2*pi*(t+ts)/T)| = |2*cos(2*pi*(t-ts/2)/T)*sin(2*pi*ts/2/T)|
Максимум ошибки (амплитуда шума оцифрованного сигнала из-за джитера тактового сигнала):
d.max = 2*sin(pi*ts/T) ~ 2*pi*ts/T (джиттер небольшой).
Грубо говоря, если Fi=2Гц (Ti=0.5), Fs=600 (Ts=0.0016), ts ~1% * Ts = 1.6E-5, то d.max = 2*3.14*1.6E-5/0.5 = 1e-4. Т.е. можно сказать, что шум из-за джиттера лежит ниже ~13бит.


В чаcтотной области ("форма" шума из-за джиттера):

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

Например, типичный случай для генератора: джиттер имеет нормальное (гауссово) распеределение. "Размазанный пик" будет иметь форму гауссовой кривой ( exp(-(f-f0)**2/a) ) с относительным "размазом" порядка ts/Ts. Таким образом, в оцифрованном сигнале "палка" от входной синусоиды "размажется" "по гауссу". Вашем случае, сигнал в 1Гц "размажется" в полосе порядка 0.99-1.01 Гц.

Совсем "на пальцах" (довольно натянуто, но как экспресс-оценка - сойдет):

Представте, что в Вашем случае, выборки в течении 100 сек идут через 1.6мс, а затем в течении 100 сек из за прерываний - через 1.616мс (эквивалентно джиттеру 1%). Входной сигнал - синусоида 1Гц. В течении первых 100 сек в оцифрованном сигнале будет "палка" на 1Гц, в течении последующих - на 0.99Гц. Результирующий сигнал: две "палки": на 1.00 и 0.99Гц.

Т.е. то, что Вы видите - это скорее помеха, а не джиттер. Или джиттер не 1%, а 50-200%.

Кстати, а какой входной сигнал?
Go to the top of the page
 
+Quote Post
Ruslan1
сообщение Apr 22 2007, 11:12
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 360
Регистрация: 6-03-06
Из: Кишинев
Пользователь №: 15 025



Цитата(vladv @ Apr 1 2007, 02:12) *
Во временнОй области (оценка величины шума из-за джиттера):
......

Совсем "на пальцах" (довольно натянуто, но как экспресс-оценка - сойдет):
......


Простите, у меня тут вопросик, достаточно близкий к теме. Тоже о погрешностях, но уже БПФ. Может быть Вы сможете ткнуть носом, где копать(задал этот вопрос в разделе DSP- Programming, но чувствую, что тут больше теории чем практики):



Извините, если сморозю глупость, новая это для меня тема.

Теоретически вопрос звучит так: как оценить возможную погрешность определения амплитуды и фазы первой гармоники входного сигнала (наверное, выделив ее с применением ДПФ), если известна погрешность оцифровки (т.е погрешность АЦП и нестабильность частоты квантования)?
Можно ли вывести функциональную зависимость?


Практически: нужно решить одну из двух задач (или обе сразу)

Задача первая.
Дано:
1. два сигнала 50 Гц, с гармониками
2. АЦП- 14 бит, 2 мегасемпла. Два синхронизированных АЦП для этих двух сигналов.
3. Время измерения- в принципе ограничено только здравым смыслом (т.е скажем 1 минута).
4. Погрешность квантования: по амплитуде- 6e-5, по частоте - 1е-5

Вопрос: Какой точности измерения амплитуды и фазы можно добиться?


Задача вторая:
Дано:
1. два сигнала 50 Гц, с гармониками
2. Требуемая точность измерения напряжения первой гармоники- 6е-5.
3. требуемая точность измерения разности фаз первой гармоники входных сигналов- 2e-5.

Вопрос: какими характеристиками должен обладать измеритель (разрядность и погрешность АЦП, частота и погрешность частоты квантования), и обработчик (метод выделения первой гармоники и ее составляющих, длительность периода измерения), чтобы достичь требуемой точности измерения?


Наверное, выделение первой гармоники можно сделать с помощью Фурье. Тогда нужно говорить о погрешности этого метода.
Мне сказали, что нужно копать в сторону равенства Парсеваля (вычисление энергии сигнала в частотной и временной областях). Но что-то у меня мозги не воспринимают, как получить нужное мне соотношение погрешностей временной и частотной областей.
Go to the top of the page
 
+Quote Post
st256
сообщение Apr 22 2007, 16:41
Сообщение #4


СТАТУС: только для чтения
**

Группа: Новичок
Сообщений: 133
Регистрация: 23-12-04
Пользователь №: 1 627



Цитата(Ruslan1 @ Apr 22 2007, 17:12) *
Простите, у меня тут вопросик, достаточно близкий к теме. Тоже о погрешностях, но уже БПФ. Может быть Вы сможете ткнуть носом, где копать(задал этот вопрос в разделе DSP- Programming, но чувствую, что тут больше теории чем практики):


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

Цитата(Ruslan1 @ Apr 22 2007, 17:12) *
Извините, если сморозю глупость,


Глупости морозят все. Самое главное их постоянно парсить и вовремя фиксить, а не путать этот продукт со свинным фаршем. Я хотел сказать, что не надо примимать глупости во внутрь...

Цитата(Ruslan1 @ Apr 22 2007, 17:12) *
Теоретически вопрос звучит так: как оценить возможную погрешность определения амплитуды и фазы первой гармоники входного сигнала (наверное, выделив ее с применением ДПФ), если известна погрешность оцифровки (т.е погрешность АЦП и нестабильность частоты квантования)?


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

1. Фаза первой гармоники относительно чего? Тока в сети относительно сетевого же напряжения? Тогда сразу плюйте на АЦП. Его погрешности не сравнимы с погрешностями датчиков тока.
2. ДПФ тут в принципе не нужна. Нужно выделить первую гармонику узким полосовым фильтром и найти скалярное произведение двух сигналов, между которыми Вы ищите фазу - получите косинус этой фазы. С амплитудой еще проще: возводите отфильтрованную первую гармонику в квадрат и фильтруете хорошим НЧ фильтром с полосой герца 2-4. После чего, извлекаете квадрат из отфильтрованной постоянной составляющей.


Цитата(Ruslan1 @ Apr 22 2007, 17:12) *
Можно ли вывести функциональную зависимость?


Естественно. Но нафига?

Цитата(Ruslan1 @ Apr 22 2007, 17:12) *
Практически: нужно решить одну из двух задач (или обе сразу)

Задача первая.
Дано:
1. два сигнала 50 Гц, с гармониками
2. АЦП- 14 бит, 2 мегасемпла. Два синхронизированных АЦП для этих двух сигналов.


А зачем так много? 8 кГц, я думаю, хватит.

Цитата(Ruslan1 @ Apr 22 2007, 17:12) *
3. Время измерения- в принципе ограничено только здравым смыслом (т.е скажем 1 минута).


У меня иногда случаюся прозрения. Это от бьющей ключом гениальности. Если мое прозрение верно, то время измерения у Вас должно определяться ГОСТ13109-97.

Цитата(Ruslan1 @ Apr 22 2007, 17:12) *
4. Погрешность квантования: по амплитуде- 6e-5, по частоте - 1е-5

Вопрос: Какой точности измерения амплитуды и фазы можно добиться?


Вообще-то, любой. Я добивался лучше, чем 0.01%
Цитата(Ruslan1 @ Apr 22 2007, 17:12) *
Задача вторая:
Дано:
1. два сигнала 50 Гц, с гармониками
2. Требуемая точность измерения напряжения первой гармоники- 6е-5.
3. требуемая точность измерения разности фаз первой гармоники входных сигналов- 2e-5.

Вопрос: какими характеристиками должен обладать измеритель (разрядность и погрешность АЦП, частота и погрешность частоты квантования), и обработчик (метод выделения первой гармоники и ее составляющих, длительность периода измерения), чтобы достичь требуемой точности измерения?


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

Цитата(Ruslan1 @ Apr 22 2007, 17:12) *
Наверное, выделение первой гармоники можно сделать с помощью Фурье. Тогда нужно говорить о погрешности этого метода.


Не нужно Вам никакого Фурья. Особенно на таких погрешностях...

Цитата(Ruslan1 @ Apr 22 2007, 17:12) *
Мне сказали, что нужно копать в сторону равенства Парсеваля


Это для первой-то гармоники??? Ну ни хрена себе знатоки. ХТО ЭТО СМОРОЗИЛ??? Дайте ссылку!!!

Цитата(Ruslan1 @ Apr 22 2007, 17:12) *
(вычисление энергии сигнала в частотной и временной областях). Но что-то у меня мозги не воспринимают, как получить нужное мне соотношение погрешностей временной и частотной областей.


Ну, типа они одинаковы... smile.gif)))
Go to the top of the page
 
+Quote Post
Ruslan1
сообщение Apr 22 2007, 20:53
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 360
Регистрация: 6-03-06
Из: Кишинев
Пользователь №: 15 025



Цитата(st256 @ Apr 22 2007, 16:41) *
1. Фаза первой гармоники относительно чего? Тока в сети относительно сетевого же напряжения?

Нет. У меня два напряжения на двух входах. Вот между ними и нужно считать.

Цитата(st256 @ Apr 22 2007, 16:41) *
2. ДПФ тут в принципе не нужна. Нужно выделить первую гармонику узким полосовым фильтром и найти скалярное произведение двух сигналов, между которыми Вы ищите фазу - получите косинус этой фазы. С амплитудой еще проще: возводите отфильтрованную первую гармонику в квадрат и фильтруете хорошим НЧ фильтром с полосой герца 2-4. После чего, извлекаете квадрат из отфильтрованной постоянной составляющей.

Спасибо, принято. Но вопрос остаается тот же: как посчитать погрешность при фильтрации?
И полоса в несколько герц- что-то боязно. Сколько лишнего хапну из-за ширины? в точность порядка 2е-5 уложусь?

Насчет функциональной зависимости погрешности результата от погрешности исходных данных- что значит "нафига"? А как иначе считать, на пальцах или опытным путем? Или Вы имеете в виду, что гораздо проще обсчитать конкретный случай, чем общую формулу выводить?

Цитата(st256 @ Apr 22 2007, 16:41) *
А зачем так много? 8 кГц, я думаю, хватит.

Не знаю, это уже сделано. А какую точность фазы я могу получить при 160 отсчетах на период? Неужто нужные мне полминуты?

Цитата(st256 @ Apr 22 2007, 16:41) *
У меня иногда случаюся прозрения. Это от бьющей ключом гениальности. Если мое прозрение верно, то время измерения у Вас должно определяться ГОСТ13109-97.

Нет. К контролю качества электроэнергии эта задача не относится. Я тож так поначалу подумал. Но тут требования по точности определения фазы и напряжения несколько иные.

Цитата(st256 @ Apr 22 2007, 16:41) *
Вообще-то, любой. Я добивался лучше, чем 0.01%

Это точность по фазе или по напряжению? При каких исходных данных и каким методом?

Цитата(st256 @ Apr 22 2007, 16:41) *
Не нужно Вам никакого Фурья. Особенно на таких погрешностях...

То есть Фурье меня по точности не устроит? Тогда чем?
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 20:21
Рейтинг@Mail.ru


Страница сгенерированна за 0.01867 секунд с 7
ELECTRONIX ©2004-2016