Salut à tous,
Est ce que quelqu'un peut m'indiquer comment calculer le SNR(Rapport signal à bruit) à la réception?
Salut à tous,
Est ce que quelqu'un peut m'indiquer comment calculer le SNR(Rapport signal à bruit) à la réception?
Pour calculer le rapport signal -bruit (SNR- Signal Noise Ratio) voici un petit script matlab:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 amp=2;fes=1000;f=100;n=200;a=0.25 % definir les variables amp- l'amplitude,fe-frequence d'echantionnage,f-frequence,a-amplitude echantionne,n=nombre des echantions y='Le rapport signal-bruit SNR(Signal Noise Ratio) c'est:' % afficher un message avant de calculer SNR rsz=10*log10(amp^2/2/(2*a)^2/12) % le calcul du SNR donne par la formule; log10 c'est une fonction matlab pour lg z='L'echantionnage du signal' % affichage du message avant d'echantionner les 2 signaux t=(0:n-1)/fes sig=2*a*rand(size(t))-a % definir le bruit plot(t,sig) % tracer le graphique avec plot title ('Echantionnage du bruit') % le titre de la representation graphique xlabel('temps[s]') % etiquetation pour Ox ylabel('Amplitude[V]') % etiquetation pour Oy grid on % tracer le reseau du graphique avec fonction grid on
Ici tu as deux signaux comme je t'ai dit un signal sinusoidal non-bruite et un signal sinusoidal bruite et dans la variable sig on fait la composition des 2 signaux et dans la variable rsz on fait le raport signal-bruit (SNR- Signal Noise Ratio):
Voila le calcul du SNR que tu desires!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 amp=2;fes=1000;f=100;n=200;a=0.25 % definir les variables amp- l'amplitude,fe-frequence d'echantionnage,f-frequence,a-amplitude echantionne,n=nombre des echantions y='Le rapport signal-bruit SNR(Signal Noise Ratio) c'est:' % afficher un message avant de calculer SNR rsz=10*log10((amp^2/2)/((2*a)^2/12)) % le calcul du SNR donne par la formule; log10 c'est une fonction matlab pour lg z='L'echantionnage des 2 signaux % afficher un message avant d'echantionner les 2 signaux sig1 et sig2 t=(0:n-1)/fes sig1=2*sin(2*pi*100*t) % definition du signal sinusoidal sig2=(2*a*rand(size(t))-a); % definition du bruit sig=sig1+sig2; %composition des 2 signaux dans la variable sig plot(t,sig) % tracer le graphique avec plot title ('Sinusoida avand zgomot') % titre de la representation graphique xlabel('temps[s]') % etiquetation pour Ox ylabel('Amplitude[V]') etiquetation pour Ox grid on % tracer le reseau du graphique avec fonction grid on
Amicalment,
Michel
Partager