/ / Защо има прекъсване между сигналите и посочените честоти не се показват както е посочено - matlab, обработка на сигнали, вълна

Защо има прекъсване между сигналите и определените честоти не се появяват както е посочено - MATLAB, обработка на сигнала, wavelet

Генерирах нестационарни сигнали, публикувани по-долу на изображението, и имам два въпроса:

1- Защо първият сигнал x1, показан в червено, има само 4 върха, въпреки честотата си, която е 15 в уравнението на ред 12 на кода?

2- Защо има прекъсване между сигналитепоказано? С други думи, очаквах четирите сигнала да бъдат свързани гладко и всеки сигла започва там, където свършва предишният, но това не се случи и вместо това, например, x1 приключи в .25 и x2 започна в .25 след време, но и двете не се допират един до друг. Очаквах всеки сигнал да започне точно там, където предхожда единия край.

Моля, изяснете тези въпроси.

код

% Time specifications:
Fs = 8000;                       % samples per second
dt = 1/Fs;                       % seconds per sample
StopTime = 2;                    % seconds
t = (0:dt:StopTime-dt);             % seconds

t1 = (0:dt:.25);
t2 = (.25:dt:.50);
t3 = (.5:dt:.75);
t4 = (.75:dt:1);

x1 = (10)*sin(2*pi*15*t1);
x2 = (10)*sin(2*pi*25*t2) + x1;
x3 = (10)*sin(2*pi*50*t3) + x2 ;
x4 = (10)*sin(2*pi*75*t4) + x3;
length(x1)
length(t1)
% Plot the signal versus time:
figure;
xlabel("time (in seconds)");
ylabel("Amplitude");
title("Signal versus Time");
hold on
plot(t1,x1,"r");
plot(t2,x2,"g");
plot(t3,x3,"b");
plot(t4,x4,"black");

въведете описанието на изображението тук

Отговори:

0 за отговор № 1

Честота от 15 означава 15 периода на единица време. Така че в 1/4 от единица време, бихте имали само 15/4 периода. И очевидно, че в 3 единици за времето, вие ще имате 3 * 15 периода.

Що се отнася до непрекъснатостта на сигнала, вие добавихте всеки елемент от x1 към съответстващия му елемент в x2 (където съответно означава .25 по-късно). И двете синуси на свой ред се добавят към x3, Следователно, x4 завършва като сумата от 4 синуса.

Да ги правите непрекъснато не е точно тривиално; ще трябва да поправите фазата на x2.


0 за отговор № 2

1- Периодът на x1 сигналът е 1/15, Времето на този сигнал е 0.25 сек. И така Колко период ще видим? Просто, 0.25 / (1/15) = 3.75 периоди означава почти пълни 4 периода. Това означава, че можем да видим 4 върха от него.

2- Всички сигнали завършват с различна амплитудна стойностсъответстващ на зададената от вас продължителност на времето. Трябва да намерите подходящи моменти от време, когато сигналите имат еднаква амплитудна стойност, ако искате те да изглеждат непрекъснато.


0 за отговор № 3

1- Не начертавате сигнала си за 1 сек. Вместо това го начертавате над 1/4 от секундата. Ето защо има само 4 върха. Ако бихте сменили времевите си вектори, за да обхванете една секунда така t1 = (0:dt:1);, ще имате съответното количество периоди.

2- Вашите времеви вектори не обхващат цял ​​периодот всеки сигнал. Тъй като всички те са синуси, знаете, че след един период (или една секунда), всички те ще бъдат отново 0. Използването на това, смяната на вашите времеви вектори на нещо подобно ще отстрани проблема ви:

t1 = (0:dt:.2);
t2 = (.2:dt:.4);
t3 = (.4:dt:.6);
t4 = (.6:dt:.8);

въведете описанието на изображението тук

Освен това това също работи

t1 = (0:dt:1);
t2 = (1:dt:2);
t3 = (2:dt:3);
t4 = (3:dt:4);