IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Signal Discussion :

Interprétation spectre signal


Sujet :

Signal

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2015
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Interprétation spectre signal
    Bonjour à tous,

    alors je ne sais pas si je suis sur la bonne section (voir le bon forum ^^"), enfin bon, je me lance, si ce n'est pas le cas, lancez moi des pierres ^^

    Alors pourquoi je dis que je ne suis peut être pas sur la bonne section ? Car mon code marche parfaitement et c'est sur une interprétation du résultat que j'ai du mal. Alors je vous explique, j'ai codé un code qui fait la fft d'un signal échantillonné et qui me trace le résultat.
    Si je prends N = 1024 points et un delta t (temps d'échantillonnage) de 2pi /32, et que j'essaye d'analyser par exemple le signal sin(t) + sin(3,001t) + sin(7t), alors j'ai un omega dont la pulsation est trop faible pour être "détectée" par mon code (le delta omega que je calcule est plus grand que ce 0,001) et cela perturbe alors tout mon spectre (cf pièces jointes). Ma question est : pourquoi ?? J'ai l'explication qualitative au dessus (le delta omega n'est pas assez "sensible" pour différencier ce sin(3,001t) et sin(3t)), mais j'aurais aimé avoir une explication plus "rigoureuse"...

    Voilà, s'il y a quelqu'un qui comprend mieux que moi et qui veut bien m'expliquer !

    Nom : TF.png
Affichages : 445
Taille : 5,9 Ko
    Images attachées Images attachées  

  2. #2
    Membre régulier
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Juillet 2014
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur d'études

    Informations forums :
    Inscription : Juillet 2014
    Messages : 46
    Points : 111
    Points
    111
    Par défaut
    Même si les plots ont une apparence continue, la fft est une série discrète. Vous le verriez clairement en remplaçant plot() par stem() et en zoomant. Les fréquences d'analyse ne "glissent" pas sur l'axe lors d'une variation de la fréquence d'entrée. Elles restent aux mêmes endroits, l'une diminue pendant que la suivante augmente. Faites varier la pulsation de 3 à 4 et vous verrez le phénomène.

    Si vous n'avez aucun bruit, vous pouvez faire une interpolation linéaire entre les deux pics successifs, ça vous donnera une estimation de la fréquence. On peut aussi augmenter le nombre de points pour augmenter la résolution mais ça ne fait que repousser le problème. Une autre technique consiste à transposer le signal près de la fréquence nulle ("zoom fft"). La fft n'est pas un bon estimateur de fréquence. Si votre problème est une mesure précise de la fréquence, il convient peut-être de se tourner vers une autre technique.

  3. #3
    Membre régulier
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Avril 2014
    Messages
    105
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Avril 2014
    Messages : 105
    Points : 97
    Points
    97
    Par défaut
    Salut!


    Le fait que tu ne puisses pas différencier des fréquences sensiblement proches (j'ai cru comprendre que c'est ton problème ici) vient du fait de la largeur d'observation de la fenêtre que tu utilises. En effet, la résolution dans le domaine spectrale est inversement à la durée d'observation de ton signal.

    Supposons que tu doive analyser une sinusoide s = sin (2wt) si elle était parfaite, l’enregistrement serait infini. En réalité, ton enregistrement a une durée T donnée (ni la mémoire de l'ordinateur ni le temps de la personne qui enregistre est infinie), donc en fait tu enregistres un signal s'(t) tel que

    s'(t)=s(t) x O(t) ou

    où O(t) vaut 1 pendant que tu enregistres et 0 sinon (fonction fenêtre: d'où fenêtre d'observation d'un signal ou fenêtre d'enregistrement)

    Le fait de multipier dans le domaine temporel, revient à convoler dans le domaine spectral. Donc

    s'(f)=s(f)*O(f) (je note * l’opérateur de convolution)

    Tu peux t'amuser à effectuer la FFT d'une fenetre: c'est une une sorte de dirac (un sinus cardinal) dont la largeur est inversement proportionnelle dans le domaine spectrale à sa largeur dans le domaine temporel. Et donc? Et donc il va moyenne dans le domaine spectrale la valeur des fréquences voisines (comme un filtre moyenner passe bas qui dans le domaine temporel va avoir tendance à lisser les détails, ici c'est le même problème mais pris en inverse).


    Pour t'aider a sentir la chose, trace la FFT d'une même sinusoide en faisant varier le nombre de points

    du genre

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    t1= [1:0.1:10]
    t2= [1:0.1:100]
    t2= [1:0.1:1000]
    t2= [1:0.1:10000]
     
    s1=sin(2*pi*f*t1)
    s2=sin(2*pi*f*t2)
    s3=sin(2*pi*f*t3)
    s4=sin(2*pi*f*t4)
    Trace les FFT des s1, s2, s3, s4, tu verras que le pic de s4 est mieux défini que celui de s3 que celui de s2 que celui de s1. Donc tu pourrais plus facilement différencier des fréquences proches dans s4 que dans s1. A cause de quoi? A cause de la fenêtre!

Discussions similaires

  1. Analysateur de spectre: Signal GPS
    Par olivier2000 dans le forum Signal
    Réponses: 2
    Dernier message: 05/03/2012, 19h46
  2. Décoder et interpréter un signal Wi-Fi au niveau éléctronique.
    Par Gf6HqmTW dans le forum Dépannage et Assistance
    Réponses: 13
    Dernier message: 04/02/2008, 10h50
  3. Spectre d'un signal audio
    Par trytan dans le forum Signal
    Réponses: 3
    Dernier message: 23/10/2007, 09h44
  4. Spectre d'un signal : quelle fonction utiliser ?
    Par fredoderrick dans le forum Signal
    Réponses: 2
    Dernier message: 12/10/2006, 21h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo