Précédent   Forum du club des développeurs et IT Pro > Environnements de développement > MATLAB > Signal
Signal Forum d'entraide sur le traitement du signal en MATLAB
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 04/01/2013, 12h48   #1
yannickwanza2008
Invité de passage
 
Femme
Inscription : octobre 2012
Messages : 2
Détails du profil
Informations personnelles :
Sexe : Femme

Informations forums :
Inscription : octobre 2012
Messages : 2
Points : 0
Points : 0
Par défaut Traitement de signal code morse

Bonjour à tous,

Alors voilà, pour un devoir, je me retrouve confrontée à un problème, dont je ne trouve pas la solution, ni même la démarche.
J'ai à ma disposition un signal bruité, avec un fort bruit blanc Gaussien.
Mon but est d'enlever le bruit pour réussir à retrouver le signal de base, qui est un signal de code Morse, que je devrais convertir en une phrase normale.

La chose est que je n'ai aucune idée de la manière dont je pourrais traiter mon signal pour en faire quelque chose.

si quelqu'un peut m'aider
Voici ce que j'ai fais sur MATLAB :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
format;
clear;
clc;
close all;

x=load ('signal1_bruite_BB1.mat'); % Vecteur 
b=x.sig_bruit_BB1;
load signal1_bruite_BB1.mat

N=length(b)% Nombre de points de la séquence
Fe = 10; % Fréquence d'échantillonnage
t = (0:N-1)/Fe; %axe_temps 

n=0:1:N-1;

plot(b)
title('Allure temporelle du signal'); 
figure()
plot(n/Fe,b)%représentation temporelle de x (fréquence normalisée)
title('Allure temporelle du signal'); xlabel('temps (sec)') 
figure()

f=(0:N-1)/N*Fe;			%fréquence du signal
plot(f,abs(fft(b)))
title('Representation frequentielle');  xlabel('Frequence (Hz)') 

figure()

%CONSTRUCTION FILTRE PASSE BANDE
[Num,Den]= butter(5,[.19,.21]);%filtre de butterworth
filt=filter(Num,Den,b);
t=(0:N-1)/Fe;
P=length(filt);%renvoie la taille du signal filtré;
NFFT = 2^nextpow2(3600);%définition du nombre d'échantillon nécessaire pour la FFT
y = fft(filt,NFFT)/P;
f = Fe/2*linspace(0,1,NFFT/2+1); %construction de l'axe des abscisses
plot(f,2*abs(y(1:NFFT/2+1)))
figure
plot(t,filt)
title('signal filtré');grid
Après je ne sais plus quoi faire.
Fichiers attachés
Type de fichier : zip DM TSFA 2012-2013.zip (56,3 Ko, 19 affichages)
yannickwanza2008 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/01/2013, 15h13   #2
FLB
Modérateur
 
Avatar de FLB
 
Homme Florent
Ing. Aérospatiale
Inscription : juin 2003
Messages : 562
Détails du profil
Informations personnelles :
Nom : Homme Florent
Âge : 25
Localisation : France

Informations professionnelles :
Activité : Ing. Aérospatiale
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : juin 2003
Messages : 562
Points : 891
Points : 891
D'après le prof :
"durée élémentaire (le point du code morse) est de 500 ms"
"Temps de réponse : négligeable devant Te la période d’échantillonnage"
Et vous avez 5 fois le même message a disposition.
Avez vous essayé de moyenner les 5 signaux, et ensuite de moyenner sur une durée de 500ms (5 échantillons) ?
En supposant que le message commence dès le premier échantillon, l'affichage d'un échantillon sur 5, en commençant par le 5ème, pourrait vous donner quelque chose de lisible?
FLB est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 11h27.


 
 
 
 
Partenaires

Hébergement Web