Základné operácie so signálmi. Úvod do programu Matlab ...
Základné operácie so signálmi. Úvod do programu Matlab ...
Základné operácie so signálmi. Úvod do programu Matlab ...
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
SIGNÁLY A SÚSTAVY<br />
2013<br />
cv2<br />
<strong>Základné</strong> <strong>operácie</strong> <strong>so</strong> <strong>signálmi</strong>. <strong>Úvod</strong> <strong>do</strong> <strong>programu</strong> <strong>Matlab</strong>.<br />
1. Je daný signál<br />
−t<br />
⎧e<br />
t ≥ 0<br />
x1<br />
( t)<br />
= ⎨<br />
⎩0<br />
inde<br />
Načrtnite a matematicky zapíšte (vyjadrite pomocou x 1 ) signály definované tak, že:<br />
x 2 je oneskorený voči x 1 o 3 sekundy,<br />
x 3 je dvojná<strong>so</strong>bne širší než x 1,<br />
x 4 je dvojná<strong>so</strong>bne vyšší než x 1,<br />
x 5 je zrkadlovo otočený (okolo y-osi),<br />
x 6 je otočený okolo ča<strong>so</strong>vej osi.<br />
Signály x 1 , x 2, x 3 nakreslite aj pomocou <strong>programu</strong> <strong>Matlab</strong>.<br />
Postup<br />
Vytvorte si nový m-súbor s názvom napr. cv2.m <strong>do</strong> podadresára podľa Vášho priezviska:<br />
C:\sisu\Users\Priezvisko<br />
ktorý ste si predtým vytvorili a <strong>do</strong> ktorého ste nastavili v <strong>Matlab</strong>e cestu.<br />
Na začiatku súboru cv2.m je vhodné (nie vždy) zmazať všetky <strong>do</strong>terajšie premenné a zavrieť všetky <strong>do</strong>teraz<br />
otvorené okná príkazom:<br />
clear<br />
close all<br />
Otvorte nové okno pre obrázok<br />
figure(1) % nie je nutne, otvori sa aj samo<br />
Definujte premennú času<br />
t=-4:0.01:8;<br />
Ďalej pokračujte v písaní súboru:<br />
x1=exp(-t).*(t>=0);<br />
plot(t,x1)<br />
Súbor uložte a spustite v príkazovom okne (alebo cez menu editora) príkazom:<br />
cv2<br />
Ďalej definujte ďalšie signály:<br />
x2=...<br />
hold on;<br />
% dalsi plot bude <strong>do</strong>kreslovat <strong>do</strong> obrazku<br />
plot(t,x2,'r') % x2 nakreslíme červenou farbou, pozri help plot<br />
Popis grafu<br />
xlabel('t [s]')<br />
ylabel('x')<br />
grid on<br />
legend('x1','x2')<br />
2. Vypočítajte normovanú energiu E 1 signálu x 1 z úlohy 1. Ako sa zmení energia signálu v prípade, že by<br />
bol signál a) dvojná<strong>so</strong>bne širší = x 3 , E 3 =, dvojná<strong>so</strong>bne vyšší = x 4 , E 4 =<br />
Poznámka: Analytický výpočet energie sa dá overiť príkazmi<br />
syms t<br />
int('exp(-t)^2','t',0,inf)<br />
3. Nakreslite v <strong>Matlab</strong>e (vychádzajte zo súboru cv2u3) <strong>do</strong> jedného obrázka funkcie:<br />
t = sin 2π<br />
f t − 0.4sin π k f t<br />
( ) (<br />
0<br />
) ( )<br />
( t) = ( 2π<br />
f t −π<br />
/ 6) − 0.4sin ( 2π<br />
k f t − / 6)<br />
x1 2<br />
0<br />
x sin<br />
0<br />
0<br />
pre f 0 = 400 Hz, k = 3 a premennú času t = 0 až 0.01 s.<br />
2<br />
π<br />
Určte, ako treba zmeniť hodnotu fázy zložky s frekvenciou k f 0 v signáli x 2 , aby sa tvar signálu v porovnaní<br />
s x 1 nezmenil (signály x 1 a x 2 sú posunuté). Správnosť výsledku si overte príslušnou modifikáciou <strong>programu</strong>.<br />
Prehrajte signály x 1 , x 2 pomocou PC (programy cv2u3zvuk). Dokážete ich rozlíšiť
SIGNÁLY A SÚSTAVY<br />
2013<br />
cv2<br />
4. „Ešte <strong>so</strong>m nevidel oscilátor, na ktorom by bolo komplexné napätie.“ – výrok študenta.<br />
a) Vyjadrite funkciu f ( t) = cos( ω t − π / 2)<br />
pomocou komplexnej exponenciálnej funkcie dvojakým<br />
spô<strong>so</strong>bom – ako reálnu časť výrazu s komplexnou exponenciálnou funkciou<br />
– bez použitia <strong>operácie</strong> reálnej časti.<br />
b) Pri jave magnetickej rezonancie vzniká otáčavé magnetické pole s amplitú<strong>do</strong>u M 0 , ktoré sa otáča<br />
s frekvenciou 64 MHz v smere hodinových ručičiek (pri danej voľbe pohľadu na súradnicový<br />
systém). Zapíšte signál magnetizácie pomocou komplexnej exponenciálnej funkcie.<br />
c) Dve zložky signálu v komunikačnom systéme a niektoré <strong>operácie</strong> s nimi výhodne zapisujeme<br />
pomocou jedného komplexného signálu. Nájdite reálnu časť komplexného signálu<br />
t = ( I(<br />
t)<br />
+ jQ(<br />
t))exp<br />
jω<br />
t<br />
( ) ( )<br />
x c 0<br />
a naznačte, pomocou akých funkčných blokov sa vytvorenie takéhoto reálneho signálu realizuje.<br />
Príklady výrazov, príkazov v programe <strong>Matlab</strong><br />
Práca s maticami:<br />
x=[1 2 3] alebo x=[1, 2, 3] je riadkový vektor 1×3,<br />
y=[4;5;6] je stĺpcový vektor 3×1,<br />
a=[1,2,3;4,5,6] je matica 2×3,<br />
length(x) – vypíše veľkosť (dĺžku) vektora<br />
size(a) – vypíše veľkosť matice a (počet riadkov a stĺpcov)<br />
who<br />
whos<br />
clear<br />
– vypíše zoznam všetkých premenných prítomných v pracovnom priestore<br />
– vypíše zoznam všetkých premenných prítomných v pracovnom priestore a ich veľkosti<br />
– odstránenie premenných z pamäte<br />
x=1:5 je riadkový vektor s hodnotami 1; 2; 3; 4; 5,<br />
t=1:0.01:5; je riadkový vektor s hodnotami 1,00; 1,01; 1,02; ...; 5,00,<br />
d=zeros(1,5) je matica (v tomto prípade vektor) rozmeru 1x5 s hodnotami 0.<br />
help nazov – vypíše informácie a syntax funkcie nazov,<br />
napr. help zeros vypíše informácie a syntax k funkcii zeros<br />
a=[1,2,3;4,5,6;7,8,9] je matica 3×3,<br />
a(2,:) je druhý ria<strong>do</strong>k matice a,<br />
a(:,2) je druhý stĺpec matice a,<br />
a(2,3)<br />
je prvok v 2. riadku a 3. stĺpci matice a<br />
Operátory:<br />
+ sčítanie<br />
- odčítanie<br />
* ná<strong>so</strong>benie (všeob. maticové) .* ná<strong>so</strong>benie po prvkoch matice<br />
/ delenie ./ delenie po prvkoch matice<br />
^ umocnenie .^ umocnenie po prvkoch matice<br />
’<br />
komplexne združená<br />
transpozícia matice<br />
.’ transpozícia matice<br />
relačné <strong>operácie</strong><br />
> , < == rovnosť<br />
>= ,