Professional Documents
Culture Documents
Načini Prijenosa Digitalnog Signala
Načini Prijenosa Digitalnog Signala
Zadatak za pripremu 1.
Ako na definirani sustav dolaze bitovi u redoslijedu: 01101101001001000111, s brzinom toka 10
bita po sekundi.
a) Nactrati tok bitova u vremenu ako stanju 0 odgovara naponska razina -1V, a stanju jedan
odgovara naponska razina 1V.
b) Pretvoriti navedeni tok bitova u simbole prema definiranom pravilu za PAM modulaciju (simboli
su realni brojevi).
c) Odrediti brzinu generiranog toka simbola po jedinici vremena.
d) Pretvoriti navedeni tok bitova u simbole prema definiranom pravilu za QPSK modulaciju
(simboli su kompleksni brojevi, a pravilo je dano na slici 1 a).
Ako se bitovi preslikavaju u simbole koji su realni brojevi tada govorimo o PAM ('Pulse
amplitude modulation') signalu. To je digitalna modulacija u kojoj postoji samo modulacija
amplitude. Tu treba biti oprezan i reći da se i faza modulira jer simbol -3 ima amplitudu 3, a fazu
180 stupnjeva dok simbol 3 ima amplitudu 3 i fazu 0 stupnjeva. Polaritet pravokutnog signala
određuje fazu nosioca na koji se ovaj digitalni tok podataka modulira.
U većini digitalnih modulacija simboli se obično prikazuju u konstelacijskom dijagramu kao
kompleksni brojevi. Ralni dio kompleksnog broja (I) može npr. određivati prvi bit u simbolu, dok
imaginarni dio (Q) može određivati drugi bit u simbolu. Tako ako niz bitova '01', taj par prema
definiranom pravilu ima realnu komponentu I=-1 i imaginarnu komponentu Q=1. Ukupno (-1+1j).
Prikazani sustav simbola s ovako definiranim pravilima je dan u kompleksnom dijagramu na slici
1a).
00 -1 10
Tok simbola određuje amplitudu i fazu nosioca u digitalnom modulacijskom postupku. Kod
QPSK-a modulacije postoji samo promjena faze dok kod QAM modulacijskog postupka postoji i
modulacija faze i amplitude.
Pitanje: Ako je tok podataka 10Mbita/s koliki je tok simbola kod 16-QAM modulacijskog postupka.
Kod digitalnih modulacijskih postupaka tok bitova se pretvara u tok simbola (koji su općenito
imaginarni brojevi)
I I+Q
Ulazni tok bitova
Pridruživanje
simbola toku
bitova
Q
Ako je širina pojasa signala veća od širine pojasa predviđenog komunikacijskog kanala
dolazi do intersimbolne interferencije (ISI) koja izobličuje signal u vremenskoj domeni. Stoga se
niz simbola prije modulacije na prijenosni signal propušta kroz filtar za oblikovanje impulsa.
Postoje nekoliko tipova filtara koji omogućuju oblikovanje impulsa da se ne pojavi intersimbolna
interferencija. Intersimbolna interferencija se opisuje na signalu u vremenskoj domeni. Vremenska i
frekvencijska domena signala su uvijek isprepletene i treba ih promatrati paralelno.
Ako se pretpostavi da je simbol idealan impuls (idealan impuls je Diracov impuls beskonačno visok
i beskonačno kratak tako da ukupna površina ispod signala 1). Njegova širina u frekvencijskoj
domeni je beskonačna i jednaka 1. Ovdje bi se mogao razmatrati i pravokutan impuls koji nema
beskonačnu visinu i beskonačnu širinu ali mu je brzina porasta na rubovima beskonačna i on ima
beskonačnu širinu spektra ali u obliku sin(x)/x funkcije. Frekvencijska širina datog
komunikacijskog kanala (uvijek je širina kanala ograničena) je konačna pa se idealan impuls pri
prolasku kroz ograničeni kanal filtrira i raspršuje u vremenskoj domeni, pri čemu to raspršenje
utječe na prethodno primljene simbole jer se simboli u tom slučaju međusobno isprepliću. Na slici 5
su prikazani odzivi toka simbola (pravokutni signal) kroz filtar koji ima ograničenu širinu pojasa.
Vidi se međusobno ispreplitanje odziva. Bitno je da se ti odzivi isprepliću tako da kad prvi simbol
ima maksimum da ostali imaju minimume (0) i da na taj način ne utječu na primanje trenutnog
simbola.
Slika 5. Odziv niza simbola (samo dva stanja) u kanalu s ograničenom širinom pojasa
ej·ωc·t
Kompleksni
simboli Kompleksni
signal oko
Koder nosioca
PAM, Izlazni Re{ }
QAM, filtar
Bitovi QPSK Realni signal u
frekvencijskom
Kompleksni području oko
signal u osnovnom
nosioca
pojasu
e -j·ωc·t
Niskopropusni Pod
uzorkovanje Detektor Dekoder
filtar
Ts je trajanje simbola.
U praksi je uobičajeno koristiti funkcije sinus i kosinus koje ispunjavaju uvjet ortogonalnosti:
cos(ωi·t), sin(ωi·t),uz N broj podnosioca i 0 i N 1 i 0 t Ts , uz sljedeći izbor frekvencija,
ωi=ωc+2·π·k/Ts, a Ts i coznačavaju (trajanje simbola) i centralnu frekvenciju nosica.
U usporedbi s prijenosom podataka moduliranih na jedan podnosioc, na ovaj način se povećava trajanje
simbola u podkanalu jer se praktično ostvaruje paralelni, odnosno istovremeni prijenos više simbola, ali
u različitim frekvencijskim područjima.
Svi podnosioci za vrijeme trajanja simbola u simboličnom kompleksnom zapisu se mogu prikazati kao:
N 1
S s (t ) An (t ) e j nt n (t )
n 0
N 1
s(t ) (an cos(2f nt ) bn sin( 2f nt )
n 0
Klasični OFDM postupak modulacije i demodulacije zahtijeva veliki broj modulatora i demodulatora
Receiver
Zadatak za pripremu 2.
Ako se tok bitova od R=10 Mbita/s modulira 16-QAM modulacijskim postupkom te se dovodi na
OFDM odašiljač sa 16 podnosioca odrediti tok simbola koji se prenosi na svakom podnosiocu
(redukcija toka podataka se prvo izvodi digitalnim modulacijskim postupkom a kasnije i prenošenjem s
podnosiocima). Koliki je frekvencijski razmak između svakog podnosioca (odrediti trajanje simbola iz
toka bitova).
RAD NA VJEŽBI:
PAM Yn
QAM
QPSK Xn
Ulazni simboli
Ak
Zn
šum
Slika 11. Digitalna modulacija u osnovnom pojasu (''baseband'') s dodanim šumom kanala
Zadatak na vježbi 1: Prikazati konstelacijski dijagram 4- PAM, 8- PSK i 16 QAM niza simbola te
odrediti parametre sustava (minimalni razmak između simbola, prosječnu snagu po simbolu za
takav sustav te potrebnu širinu pojasa za prijenos određenog broja bitova/s).
Niz slučajnih PAM simbola se može generirati u MATLAB PAM.m datoteci s nizom naredbi u
sljedećem odsječku koda.
clear;clc;close all;
a = [-3 -1 1 3]; % alfabet simbola
ind = randi([0 3],100,1); % slucajni vektor sa vrijednostima od 0 do 3
ind = ind+1; % Vektor uključuje vrijednosti između 1 i 4
pam = a(ind); % Slučajna 4-PAM sekvenca
% pam = a(randint(100,1,4)+1) % isti rezultat bez ind varijable
% pam = randint(100,1,4)*2-3 % najkraći put realizacije problema
% pam = randi([0 3],100,1)*2-3 % nondepricated
figure(1)
set(gcf,'Color',[1,1,1])
stairs(pam,'Linewidth',3);xlabel ('n',
'Fontsize',22);ylabel('x(n)','Fontsize',22);grid on;
set(gca,'fontsize',22);
Zadatak: modificirati kod tako da se dobije 8 PAM simbola sa jednakim razmakom između
simbola?
%QAM
clear;clc;close all;
M = 16;
x = [0:M-1];
y = qammod(x,M);
scale = modnorm(y,'peakpow',1);
y = scale*y; % Skaliranje QAM signala s obzirom na snagu signala.
scatterplot(y); % Crtanje konstelacijskog dijagram
Koji je sustav (8 PAM, 16 PSK i 64 QAM) manje osjetljiv na šum u komunikacijskom kanalu?
Kako bi izračunali snagu šuma zadanog funkcijom ''awgn'' te kako bi odredili odnos signal šum za
vrijeme trajanja jednog simbola određene amplitude?
Kako su idealni simboli pravokutni impulsi koji imaju beskonačnu širinu pojasa potrebno je tu
širinu pojasa reducirati s obzirom na širinu prijenosnog kanala. Zbog toga se generirani simboli
propuštaju kroz filtar za oblikovanje impulsa.
Simboli koji se odašilju moraju se ograničiti u frekvencijskoj domeni. Postoji nekoliko tipova filtara
(pravokutni, sin(x)/x, kosinusni filtar). Da bi filtar mogao oblikovati impuls on mora zadovoljavati
uvjete koji povezuju trajanje simbola (izračuna se iz brzine protoka simbola) i dozvoljene širinu
pojasa.
Slika 12. Filtri za oblikovanje impulsa u obliku poluvala kosinusa (frekvencijska domena)
U praktičnim primjenama se često koristi kosinusno oblikovani filtar koji se matematički može
prikazati sljedećom jednadžbom:
sin( t / T ) cos( t / T )
p(t )
t /T
1 (2 t / T ) 2
T- trajanje jednog simbola[s], (definirano preko brzine protoka simbola)
α- faktor proširenja osnovnog pojasa (idealni filtri imaju oštar brid a to je nemoguće realizirati u
praksi i zato se uvodi faktor proširenja pojasa).
Kada se napravi Fourierova transformacija od signala p(t) dobije se u frekvencijskoj domeni
funkcija:
Kod koji implementira kosinusni filtar za oblikovanje impulsa i propušta PAM signal kroz njega
bez i s utjecajem šuma je prikazan:
clear;clc;close all;
a = [-3 -1 1 3]; % alfabet simbola
ind = randi([0 3],100,1); % slucajni vektor sa vrijednostima od 0
do 3
ind = ind+1; % Vektor ukljucuje vrijednosti izmedju 0 i 4
pam = a(ind); % Slucajna 4-PAM sekvenca
% pam = a(randint(100,1,4)+1) % isti rezultat bez ind varijable
% pam = randint(100,1,4)*2-3 % najkraci put realizacije problema
figure(1)
set(gcf,'Color',[1,1,1])
stairs(pam,'Linewidth',3);xlabel ('n',
'Fontsize',22);ylabel('x(n)','Fontsize',22);grid on;
set(gca,'fontsize',22);
%dodavanje šuma
var_zn = 0.1; % Varijanca šuma
zn = sqrt(var_zn)*randn(size(xn)); % Generiranje slucajnog šuma
yn = xn + zn;
subplot(212);plot(f,20*log10(abs(P)),'Linewidth',3);grid;title('Sp
ektar kosinusnog filtra u dB','Fontsize',22);
xlabel('f[Hz]','Fontsize',22);
set(gca,'fontsize',22);
figure (6);
set(gcf,'Color',[1,1,1])
subplot(211);plot(f,abs(X));grid;title('Spektar signala bez filtra
za oblikovanje','Fontsize',22); xlabel('f[Hz]','Fontsize',22);
set(gca,'fontsize',22);
subplot(212);plot(f,20*log10(abs(X)));grid;title('Spektar signala
bez filtra za oblikovanje u dB','Fontsize',22); xlabel('f
[Hz]','Fontsize',22);
set(gca,'fontsize',22);
figure (7);
set(gcf,'Color',[1,1,1])
subplot(211);plot(f,abs(Xn));grid;title('Spektar signala s filtrom
za oblikovanje','Fontsize',22); xlabel('f[Hz]','Fontsize',22);
set(gca,'fontsize',22);
subplot(212);plot(f,20*log10(abs(Xn)));grid;title('Spektar signala
s filtrom za oblikovanje u dB','Fontsize',22); xlabel('f
[Hz]','Fontsize',22);
set(gca,'fontsize',22);
Prijenos zvuka – V06 - 10
figure (8);
set(gcf,'Color',[1,1,1])
subplot(211);plot(f,abs(Y), 'Linewidth',3);grid;title('Spektar
signala sa sumom','Fontsize',22); xlabel('f [Hz]','Fontsize',22);
set(gca,'fontsize',22);
subplot(212);plot(f,20*log10(abs(Y)),'Linewidth',3);grid;title('Sp
ektar signala sa sumom u dB','Fontsize',22); xlabel('f
[Hz]','Fontsize',22);
set(gca,'fontsize',22);
Usporediti originalni PAM signal i PAM signal propušteni kroz filtar za oblikovanje
simbola. U vremenskoj i frekvencijskoj domeni.
Prvi korak je generiranje digitalnog signala za prijenos. U razmatranom slučaju se koristi 16 QAM
modulacijski postupak. QAM simboli sa 16 stanja su generirani sljedećim setom naredbi. Skup
brojeva iz kojeg se biraju realni i imaginarni dio je dan a,b={-3,-1,1,1}
Prije odašiljanja kroz kanal potrebno je izvršiti oblikovanje impulsa (Realni i imaginarni dio
kompleksnog broja određuju amplitudu i fazu nosioca fc). Ako bi se idealni simboli u obliku
pravokutnih impulsa prenosili tada bi širina pojasa bila beskonačna.
Ovdje se koristi standardni filter za oblikovanje impulsa u obliku kosinusa (već opisan u
prethodnim poglavljima).
Faktor proširenja α=0.35, a kako se sustav prikazuje u digitalnoj domeni (izlazni filtar je
implementiran kao digitalni) koristit će se 16 uzoraka po simbolu.
N=length(sig);
%graficki prikaz
figure(1);
set(gcf,'Color',[1,1,1])
subplot(211)
plot(real(sig(1:800)));xlabel('t[s]','Fontsize',22);
ylabel('Re{x(t)}','Fontsize',22); grid on; % plotting a piece of
the baseband signal in time domain
set(gca,'fontsize',22);
subplot(212)
plot(imag(sig(1:800)));xlabel('t[s]','Fontsize',22);
ylabel('Im{x(t)}','Fontsize',22); grid on;
set(gca,'fontsize',22);
xlabel('t[s]','Fontsize',22); ylabel('Re\{x(t)\}','Fontsize',22);
figure(2);
set(gcf,'Color',[1,1,1])
plot(r(1:800));xlabel('n','Fontsize',22);
ylabel('x(t)','Fontsize',22); grid;title ('Signal moduliran na
frekvenciju nosioca','Fontsize',22);
set(gca,'fontsize',22);
%demodulator
y = r.*exp(-j*w_c*pi*(0:length(r)-1)); % I/Q spuštanje oko DC-a
W=-1:0.001:1
Y = freqz(y(1000:2023),1,W); %spektar signala na ovoj razini
Y = Y./max(abs(Y)); % normaliziranje spektra za crtanje
figure(4);
set(gcf,'Color',[1,1,1])
plot(W/pi,abs(Y));grid on;xlabel('Normirana
frekvencija','Fontsize',22); ylabel('abs(Y(f))','Fontsize',22);
Prijenos zvuka – V06 - 12
set(gca,'fontsize',22);
clc;
clear all;
close all;
%..............................................................
% Initiation
%..............................................................
no_of_data_bits = 64%Number of bits per channel extended to 128
M =4 %Number of subcarrier channel
n=256;%Total number of bits to be transmitted at the transmitter
block_size = 16; %Size of each OFDM block to add cyclic prefix
cp_len = floor(0.1 * block_size); %Length of the cyclic prefix
%............................................................
% Transmitter
%.........................................................
%.........................................................
% Source generation and modulation
%........................................................
% Generate random data source to be transmitted of length 64
%.............................................................
channel = randn(1,2) + sqrt(-1)*randn(1,2);
after_channel = filter(channel, 1, ofdm_signal);
awgn_noise = awgn(zeros(1,length(after_channel)),0);
recvd_signal = awgn_noise+after_channel; % With AWGN noise
figure(7),plot(real(recvd_signal)),xlabel('Time');
ylabel('Amplitude');
title('OFDM Signal after passing through channel');grid on;
%...........................................................
%..........................................................
recvd_signal_paralleled = reshape(recvd_signal,rows_Append_prefix,
cols_Append_prefix);
%........................................................
%........................................................
% Remove cyclic Prefix
%.......................................................
%......................................................
recvd_signal_paralleled(1:cp_len,:)=[];
R1=recvd_signal_paralleled(:,1);
R2=recvd_signal_paralleled(:,2);
R3=recvd_signal_paralleled(:,3);
R4=recvd_signal_paralleled(:,4);
figure(8),plot((imag(R1)),'r'),subplot(4,1,1),plot(real(R1),'r'),
title('Cyclic prefix removed from the four sub-carriers')
subplot(4,1,2),plot(real(R2),'c')
subplot(4,1,3),plot(real(R3),'b')
subplot(4,1,4),plot(real(R4),'g')
%...................................................
%...................................................
Prijenos zvuka – V06 - 15
% FFT Of recievied signal
for i=1:number_of_subcarriers,
% FFT
fft_data(:,i) = fft(recvd_signal_paralleled(:,i),16);
end
F1=fft_data(:,1);
F2=fft_data(:,2);
F3=fft_data(:,3);
F4=fft_data(:,4);
figure(9), subplot(4,1,1),plot(real(F1),'r'),title('FFT of all the
four sub-carriers')
subplot(4,1,2),plot(real(F2),'c')
subplot(4,1,3),plot(real(F3),'b')
subplot(4,1,4),plot(real(F4),'g')
%................................
%..............................
% Signal Reconstructed
%..................................
%..................................
% Conversion to serial and demodulationa
recvd_serial_data = reshape(fft_data, 1,(16*4));
qpsk_demodulated_data = pskdemod(recvd_serial_data,4);
figure(10)
stem(data)
hold on
stem(qpsk_demodulated_data,'rx');
grid on;xlabel('Data Points');ylabel('Amplitude');
title('Recieved Signal with error')