%-------------------------------------------------------------------------- % Výuková podpora přemětu Modulované signály %-------------------------------------------------------------------------- % Program VZORKOVÁNÍ %-------------------------------------------------------------------------- % % Výpočet a grafické vykreslení vzorkovaného modulovaného signálu % Použitá modulace pro ukázku je AM modulace (Amplitude Modulation) % % Volitelný modulační (informační) signál a vysokofrekvenční nosná % Jsou vytvořeny dvě varianty vzorkování: % 1. vzorkování pásmového signálu - Shannon-Kotelnikuv teorem % obsahuje informaci o modulačním i modulovaném signálu % 2. vzorkování pásmového signálu - Nyquistuv teorém pro pásmové signály % obsahuje informaci pouze o modulačním signálu % % VŠB - Technická univerzita Ostrava % Fakulta elektrotechniky a informatiky % Katedra měřicí a řídicí techniky % 17.listopadu 15 % Ostrava - Poruba % 708 33 % % Vypracoval Zdeněk Macháček 2010 %-------------------------------------------------------------------------- %-------------------------------------------------------------------------- % Vyčištění všech proměnných paměti a uzavření všech grafických oken clear all; close all; %-------------------------------------------------------------------------- %-------------------------------------------------------------------------- % VARIANTA 1 - VZORKOVÁNÍ DLE SHANNON-KOTELNIKOVA TEORÉMU %-------------------------------------------------------------------------- %-------------------------------------------------------------------------- % Specifikace vzorkování - časového průběhu t_vz[s] a nosné frekvence fc[Hz]RF signálu f_c = 2000; % nosná frekvence vysokofrekvenčního RF signálu cas = 0.2; % čas průběhu simulace pocet_bodu = 2; %počet bodů s ohledem na Shanon-Kotelnikův teorém (min=1) T_vz1 = 1/(2*f_c*pocet_bodu); % vzorkovací perioda t_vz1 = 0:T_vz1:cas-T_vz1; % časový průběh %-------------------------------------------------------------------------- % Definování a výpočet modulačního signálu m(t) % m_t resp. Wmax musí být menší než 1, jinak je signál v(t) přemodulovaný Wmax = 0.75; % amplituda modulačního signálu m(t) f_m = 10; % frekvence modulačního signálu m(t) faze = pi/4; % fáze modulačního signálu m(t) m_vz1_t=Wmax*cos(2*pi*f_m*t_vz1+faze); % informační (modulační) signál m(t) %-------------------------------------------------------------------------- % AM modulace - definování a výpočet vzorkovaného pásmového signálu v(t) % amplitudova modulacni slozka R_t = |1+m_t| % fazova modulacni slozka Theta_t=0 pro m(t)>-1, Theta_t=pi pro m(t)<-1; % m(t)nesmi byt premodulovany >1 R_t=abs(1+m_vz1_t); % amplitudova modulacni slozka if (m_vz1_t>-1) % fázová modulační složka Theta_t = 0; else Theta_t = pi; end v_vz1_t=R_t.*cos(2*pi*f_c*t_vz1+Theta_t); % vzorkovaný pásmový (modulovaný) signál v(t) %-------------------------------------------------------------------------- %Výpočet frekvenčního spektra pásmového signálu pomocí funkce algoritmu FFT N=length(v_vz1_t); % počet hodnot pásmového signálu v(t) v_f = (fftshift(fft(v_vz1_t)))./N; % komplexní vektor frekvenčního spektra v(t) k=-N/2:N/2-1; % pomocný výpočet symetrického pole osy x f = k.*pocet_bodu*f_c./N; % výpočet x-ové osy - frekvence f[Hz] V_amp = abs(v_f); %amplitudové frekvenční spektrum v(t) V_vykon = V_amp.^2; %výkonové frekvenční spektrum v(t) % Je-li nulová hodnota amplitudy na dané frekvenci je také fáze = 0 for q=1:N if ((abs(real(v_f(q))) < 1e-3) && (abs(imag(v_f(q))) < 1e-3)) v_f(q)=0; end; end; V_faze = angle(v_f); %fázové frekvenční spektrum v(t) %-------------------------------------------------------------------------- % GRAFY - ZOBRAZENÍ SIGNÁLŮ V ČASOVÉ OBLASTI %-------------------------------------------------------------------------- % Vykreslení grafického časového průběhu modulačního signálu figure; subplot(2,1,1); stem(t_vz1,m_vz1_t); title('SHANNON-KOTELNIKUV TEOREM - Vzorkovaný modulacní signál m_v_z(t)'); ylabel('m_v_z(t)'); xlabel('t[s]'); %-------------------------------------------------------------------------- % Vykreslení grafického časového průběhu pásmového (modulovaného) signálu subplot(2,1,2); stem(t_vz1,v_vz1_t); title('SHANNON-KOTELNIKUV TEOREM - Vzorkovaný AM modulovaný signál v_v_z(t)'); ylabel('v_v_z(t)'); xlabel('t[s]'); %-------------------------------------------------------------------------- % GRAFY - ZOBRAZENÍ SIGNÁLŮ VE FREKVENČNÍ OBLASTI %-------------------------------------------------------------------------- %vykresleni amplitudového frekvenčního spektra figure; subplot(3,1,1); stem(f,V_amp) xlabel('f[Hz]') ylabel('^F^R|W_m|') grid on; title('SHANNON-KOTELNIKUV TEOREM - Amplitudové frekvencni spektrum vzorkovaného AM modulovaneho signalu v_v_z(t)') %-------------------------------------------------------------------------- %vykresleni fázového frekvenčního spektra subplot(3,1,2); stem(f,V_faze) xlabel('f[Hz]') ylabel('\Theta_m') grid on title('SHANNON-KOTELNIKUV TEOREM - Fazove frekvencni spektrum vzorkovaného AM modulovaneho signalu v_v_z(t)') %-------------------------------------------------------------------------- %vykresleni výkonového frekvenčního spektra subplot(3,1,3); stem(f,V_vykon) xlabel('f[Hz]') ylabel('^F^R|P_m|') grid on title('SHANNON-KOTELNIKUV TEOREM - Vykonove frekvencni spektrum vzorkovaného AM modulovaneho signalu v_v_z(t)') %-------------------------------------------------------------------------- %-------------------------------------------------------------------------- % VARIANTA 2 - VZORKOVÁNÍ DLE NYQUISTOVA TEORÉMU PRO PÁSMOVÉ SIGNÁLY %-------------------------------------------------------------------------- %-------------------------------------------------------------------------- % Specifikace vzorkování - časového průběhu t_vz[s] a nosné frekvence fc[Hz]RF signálu f_c = 2000; % nosná frekvence vysokofrekvenčního RF signálu f_m = 10; % frekvence modulačního signálu m(t) f_max = f_c+f_m; % maximální frekvence přenášeného pásmového signálu f_min = f_c-f_m; % minimální frekvence přenášeného pásmového signálu cas = 0.2; % čas průběhu simulace pocet_bodu = 1; %počet bodů s ohledem na Shanon-Kotelnikův teorém (min=1) T_vz2 = 1/(2*(f_max-f_min)*pocet_bodu); % vzorkovací perioda t_vz2 = 0:T_vz2:cas-T_vz2; % časový průběh %-------------------------------------------------------------------------- % Definování a výpočet modulačního signálu m(t) % m_t resp. Wmax musí být menší než 1, jinak je signál v(t) přemodulovaný Wmax = 0.75; % amplituda modulačního signálu m(t) faze = pi/4; % fáze modulačního signálu m(t) m_vz2_t=Wmax*cos(2*pi*f_m*t_vz2+faze); % informační (modulační) signál m(t) %-------------------------------------------------------------------------- % AM modulace - definování a výpočet vzorkovaného pásmového signálu v(t) % amplitudova modulacni slozka R_t = |1+m_t| % fazova modulacni slozka Theta_t=0 pro m(t)>-1, Theta_t=pi pro m(t)<-1; % m(t)nesmi byt premodulovany >1 R_t=abs(1+m_vz2_t); % amplitudova modulacni slozka if (m_vz2_t>-1) % fázová modulační složka Theta_t = 0; else Theta_t = pi; end v_vz2_t=R_t.*cos(2*pi*f_c*t_vz2+Theta_t); % vzorkovaný pásmový (modulovaný) signál v(t) %-------------------------------------------------------------------------- %Výpočet frekvenčního spektra pásmového signálu pomocí funkce algoritmu FFT N=length(v_vz2_t); % počet hodnot pásmového signálu v(t) v_f = (fftshift(fft(v_vz2_t)))./N; % komplexní vektor frekvenčního spektra v(t) k=-N/2:N/2-1; % pomocný výpočet symetrického pole osy x f = k.*(1/T_vz2)./N; % výpočet x-ové osy - frekvence f[Hz] V_amp = abs(v_f); %amplitudové frekvenční spektrum v(t) V_vykon = V_amp.^2; %výkonové frekvenční spektrum v(t) % Je-li nulová hodnota amplitudy na dané frekvenci je také fáze = 0 for q=1:N if ((abs(real(v_f(q))) < 1e-3) && (abs(imag(v_f(q))) < 1e-3)) v_f(q)=0; end; end; V_faze = angle(v_f); %fázové frekvenční spektrum v(t) %-------------------------------------------------------------------------- % GRAFY - ZOBRAZENÍ SIGNÁLŮ V ČASOVÉ OBLASTI %-------------------------------------------------------------------------- % Vykreslení grafického časového průběhu modulačního signálu figure; subplot(2,1,1); stem(t_vz2,m_vz2_t); title('NYQUISTUV TEOREM PRO PÁSMOVÉ SIGNÁLY- Vzorkovaný modulacní signál m_v_z(t)'); ylabel('m_v_z(t)'); xlabel('t[s]'); %-------------------------------------------------------------------------- % Vykreslení grafického časového průběhu pásmového (modulovaného) signálu subplot(2,1,2); stem(t_vz2,v_vz2_t); title('NYQUISTUV TEOREM PRO PÁSMOVÉ SIGNÁLY - Vzorkovaný AM modulovaný signál v_v_z(t)'); ylabel('v_v_z(t)'); xlabel('t[s]'); %-------------------------------------------------------------------------- % GRAFY - ZOBRAZENÍ SIGNÁLŮ VE FREKVENČNÍ OBLASTI %-------------------------------------------------------------------------- %vykresleni amplitudového frekvenčního spektra figure; subplot(3,1,1); stem(f,V_amp) xlabel('f[Hz]') ylabel('^F^R|W_m|') grid on; title('NYQUISTUV TEOREM PRO PÁSMOVÉ SIGNÁLY - Amplitudové frekvencni spektrum vzorkovaného AM modulovaneho signalu v_v_z(t)') %-------------------------------------------------------------------------- %vykresleni fázového frekvenčního spektra subplot(3,1,2); stem(f,V_faze) xlabel('f[Hz]') ylabel('\Theta_m') grid on title('NYQUISTUV TEOREM PRO PÁSMOVÉ SIGNÁLY - Fazove frekvencni spektrum vzorkovaného AM modulovaneho signalu v_v_z(t)') %-------------------------------------------------------------------------- %vykresleni výkonového frekvenčního spektra subplot(3,1,3); stem(f,V_vykon) xlabel('f[Hz]') ylabel('^F^R|P_m|') grid on title('NYQUISTUV TEOREM PRO PÁSMOVÉ SIGNÁLY - Vykonove frekvencni spektrum vzorkovaného AM modulovaneho signalu v_v_z(t)')