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

 
 
> Интерполяция CIC фильтром
Olga_woroncova
сообщение Nov 28 2017, 08:28
Сообщение #1





Группа: Новичок
Сообщений: 4
Регистрация: 27-11-17
Пользователь №: 100 388



Здравствуйте! Подскажите пожалуйста, делаю интерполяцию с помощью CIC фильтра, вроде бы всё по теории, но у получившегося сигнала амплитуда меньше, чем должна быть. Почему так получается? правильно ли я выбираю коэффициент для нормирования амплитуды?
Код
close all; clc; clear;

% Формирование сигнала.
Fs = 1000;
T = 1/Fs;
L = 50;
t = (0:L-1)*T;

x = 5*sin(2*pi*50*t);

% Коэффициент интерполяции
R = 5;
T1 = 1/(R*Fs);
t1 = (0:R*L-1)*T1;

% Величина задержки
D = 2*R;

% Порядок фильтра
N = 4;

% Усиление
Klg = 20*N*log10(D);
K = D^N;

% Расчет коэффициентов передаточной функции
% H(w) = (1 - z^(-D))^N / (1 - z^-1)^N
b = 1;
a = 1;
for n = 1 : N
    b = conv(b, [1 zeros(1,D-1) -1]);
    a = conv(a, [1 -1]);
end

% АЧХ и ФЧХ полученного фильтра стандартными средствами матлаб.
figure;
freqz(b,a);

% Применяем фильтр к сигналу стандартными средствами матлаб
nx = zeros(1,R*L);
nx(1:R:R*L) = x;
y = filter(b,a,nx);
y = (y/K)*R;

% И смотрим результат
figure;
plot(t,x,'-o',t1,y, '-o')

xlabel('Время, с')
ylabel('Амлитуда сигнала, у.е.')
legend({'сигнал', 'filter()'})

Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Olga_woroncova
сообщение Dec 22 2017, 05:24
Сообщение #2





Группа: Новичок
Сообщений: 4
Регистрация: 27-11-17
Пользователь №: 100 388



Спасибо за ответы! Я так поняла, что амплитуда идеально не совпадет, если использовать только CIC фильтр. Для улучшения результата в литературе рекомендуют перед CIC фильтром поставить фильтр-корректор(АЧХ на рисунке). Но данный фильтр имеет высокий порядок для обеспечения необходимой характеристики (пример из статьи). Целесообразно ли вообще его применять? Если да, то подскажите как можно уменьшить его порядок.
Эскизы прикрепленных изображений
Прикрепленное изображение
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
quato_a
сообщение Dec 22 2017, 08:12
Сообщение #3


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

Группа: Свой
Сообщений: 95
Регистрация: 27-07-11
Из: Зеленоград
Пользователь №: 66 439



Цитата(Olga_woroncova @ Dec 22 2017, 08:24) *
Целесообразно ли вообще его применять?

У себя в проекте отказался от CIC интерполяции в R раз при формировании OFDM-сигнала как раз-таки из-за большого порядка фильтра-корректора. Использую интерполяцию через БПФ.
Может вместо борьбы с сокращением порядка фильтра-корректора воспользоваться добавлением нулей к сигналу и FIR на полосу сигнала? Думаю, ресурсов потребует меньше.

Сообщение отредактировал quato_a - Dec 22 2017, 12:45


--------------------
Суббота начинается в понедельник
Go to the top of the page
 
+Quote Post
thermit
сообщение Dec 22 2017, 12:14
Сообщение #4


Знающий
****

Группа: Участник
Сообщений: 781
Регистрация: 3-08-09
Пользователь №: 51 730



Цитата(quato_a @ Dec 22 2017, 11:12) *
У себя в проекте отказался от CIC интерполяции в R раз при формировании OFDM-сигнала как раз-таки из-за большого порядка фильтра-корректора. Использую интерполяцию через БПФ.
Может вместо борьбы с сокращением порядка фильтра-корректора воспользоваться добавлением нулей к сигналу и FIR на полосу сигнала? Думаю, ресурсом потребует меньше.


Что мешало скорректировать искажения цика на этапе формирования поднесущих?


Go to the top of the page
 
+Quote Post
quato_a
сообщение Dec 22 2017, 12:44
Сообщение #5


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

Группа: Свой
Сообщений: 95
Регистрация: 27-07-11
Из: Зеленоград
Пользователь №: 66 439



Цитата(thermit @ Dec 22 2017, 15:14) *
Что мешало скорректировать искажения цика на этапе формирования поднесущих?


Повышение разрядности созвездий перед IFFT.


--------------------
Суббота начинается в понедельник
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Olga_woroncova   Интерполяция CIC фильтром   Nov 28 2017, 08:28
- - ViKo   А задержка вас не смущает? По-моему, оба эти свойс...   Nov 28 2017, 08:52
- - coding4dsp   Добрый день! Во-первых, судя по АЧХ синус поп...   Nov 28 2017, 08:59
|- - quato_a   Цитата(coding4dsp @ Nov 28 2017, 11:59) Н...   Nov 28 2017, 12:26
|- - thermit   Цитата(quato_a @ Nov 28 2017, 15:26) CIC ...   Nov 28 2017, 12:56
|- - Kluwert   Цитата(quato_a @ Nov 28 2017, 15:26) CIC ...   Dec 9 2017, 18:40
|- - coding4dsp   Kluwert, а какие у вас коэффициенты интерполяции/д...   Dec 11 2017, 07:37
|- - Kluwert   Цитата(coding4dsp @ Dec 11 2017, 10:37) K...   Dec 11 2017, 08:51
|- - coding4dsp   Интересно! Я полагал, что аппаратная реализаци...   Dec 11 2017, 14:25
|- - quato_a   Цитата(Kluwert @ Dec 11 2017, 11:51) Мало...   Dec 11 2017, 16:52
- - litv   Рекомендую почитать http://www.dsplib.ru/content/c...   Nov 28 2017, 10:17
|- - Lmx2315   (написал ерунду потому что невнимательно прочитал ...   Dec 22 2017, 08:47
- - Olga_woroncova   Есть ещё вопрос по поводу ФЧХ CIC фильтра. В теори...   Dec 29 2017, 02:39
- - quato_a   Цитата(Olga_woroncova @ Dec 29 2017, 05:3...   Jan 2 2018, 10:15
- - Kluwert   Цитата(quato_a @ Jan 2 2018, 13:15) Пилоо...   Jan 8 2018, 13:47


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

 


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


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