Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Выделение сигнала при помощи окон
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Вопросы системного уровня проектирования
RinettaFox
Делаю вот так. Выводится только график в позиции figure (1) subplot (2,1,1). Не понимаю, что не так?

Код
clc
clear all

%% Прямоугольное окно

N=32;
n=1:1:N-1;
W(n)=1; %Задаем прямоугольное окно
figure (1);
subplot (2,1,1);
stem (spectry);
pr=fft(W(n).*y);% спектр от произведения прямоугольного окна и сигнала с БШ
subplot (2,1,2);
stem (abs(pr));
freqz (pr,1);
Wdb0=20.*log(W(1));
Wdbm=20.*log(W(n));

%% Треугольное окно
n1=1:1:N/2;
n2=N/2:1:N-1;
W1(n1)=n1/(N/2); %Задаем треугольное окно
W1(n2)=2-n2/(N/2);
figure (2);
subplot (2,2,1);
plot (n1+n2,W1(n1));
spectW1=fft(W(n1));
subplot (2,2,2);
stem (spectW1);
subplot (2,2,3);
stem (spectry);
pr1=fft(W1(n).*y);% спектр от произведения треугольного окна и сигнала с БШ
subplot (2,2,4);
stem (abs(pr1)); % Строим АЧХ произведения

%% Окно Хэннинга
W2(n)=0.5-0.5*cos(2*pi*n/(N-1)); % Задаем окно Хэннинга
figure (3);
subplot (2,1,1);
stem (spectry);
pr3=fft(W2(n).*y);% спектр от произведения окна Хэннинга и сигнала с БШ
subplot (2,1,2);
stem (abs(pr3));

%% Окно Хэмминга
W3(n)=0.54-0.46*cos(2*pi*n/(N-1)); % Задаем окно Хэмминга
figure (4);
subplot (2,1,1);
stem (spectry);
pr3=fft(W3(n).*y);% спектр от произведения окна Хэмминга и сигнала с БШ
subplot (2,1,2);
stem (abs(pr3));
Swup
Покажите входные данные. Расскажите какой результат. Проблема только в первой фигуре?

Я додумал вот так например:
y = randn(1,31);
spectry=abs(fft(y));

Замечена вот эта штучка "freqz (pr,1);". Результат её работы выведется в текущую активную фигуру, т.е. поверх ваших двух графиков.
Если это убрать, то построится 2 графика, как и должно.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.