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

 
 
> Полосовой фильтр 50Гц +/- 1Гц, новичок
Gerasimov
сообщение Oct 23 2007, 13:26
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 16
Регистрация: 23-10-07
Пользователь №: 31 648



Здравствуйте!

Решил для уменьшения элементов на плате убрать ОУ не котором реализован полосовой фильтр 2-го порядка 50Гц +/- 1Гц, и завести эти данный напрямую на МК. АЦП 12Бит, частота ацэпирования 50КГц.

1/2-я напряжения это НОЛЬ сигнала (пришлось сместить НОЛЬ сигнала чтоб в МК засунуть)

В общем как перейти от аналогового фильтра к цифровому (как делать ПИД-регулятор в цифре я научился после того как расписал по формулам его работу как напряжения в точках схемы) имея его вид на приципиальной схеме, или это вообще не нужно?

Не пинайте, помогите дельным советом, а лучше чем-то из практики, ужо много книжкоф скачал и посмотрел, но что-то не догоняю help.gif

Вроде как подходит БИХ (о! я уже такие слова знаю!) но как его сделать полосовым и найти коэффициенты человеку ранее с "глубокой математикой" не связанному?

С уважением.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Vasiliy Rufitski...
сообщение Oct 24 2007, 15:19
Сообщение #2


Участник
*

Группа: Новичок
Сообщений: 18
Регистрация: 19-10-07
Пользователь №: 31 519



Вашу задачу ИМХО лучше решить немного иначе...
Чтобы не делать лишнюю работу по фильтрации предлагаю сделать следующее:

1. Сделать децимацию входного сигнала (см. приложение
Прикрепленное изображение
). Поскольку такой частоты дискретизации (50 кГц) не нужно для 50 Гц. Вполне достаточно 500 Гц. Т.е. нужно взять каждый сотый входной отсчёт (собственно, децимация). Просто так их брать нельзя, могут возникнуть "зеркальные" частоты благодаря эфекту "элайзинга" (aliasing). Чтобы от него избавится, нужно профильтровать антиэлайзинг фильтром. Этой фильтрацию можно свести к нахождению среднего (в нашем случае из 100 отсчётов).
В случае, если вы уверены в отсутствии во входном сигнале частот (аналоговый ФНЧ на 250 Гц стоит перед АЦП ), больше чем новая fs/2, то достаточно просто взять каждый 100-ый отсчёт.

Без децимации, ИМХО, здесь не обойтись: слишком много памяти и ресурсов потребуется для обработки.

2. Реализовать схему квадратурной обработки (см. приложение
Прикрепленное изображение
).
Все операции ведуться для окна длиной в 10 отсчётов (при частоте дискретизации 500 Гц), которое идёт с перекрытием (двигается по одному отсчёту вдоль входной последовательности). Хотя можно сделать и больше, всё зависит от "степени реалтайма обработки".

X на схеме обозначает поэлементное умножение.

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

В общем, пойдёт такая схема, или Вы настаиваете на полосовом фильтре? )


PS
*ой, кажись в расчёте длины окна обшибся для квадратурной обработки. T - количество отсчётов окна.
Оно должно равняться двум периодам опорной частоты, т.е. 2*fs/f0 = 200 отсчётов, при fs = 500 Гц.

Сообщение отредактировал Vasiliy Rufitskiy - Oct 24 2007, 15:26
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 29th July 2025 - 16:15
Рейтинг@Mail.ru


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