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 :

Amplitude spectrale d'un signal


Sujet :

Signal

  1. #1
    Membre régulier Avatar de azassma
    Femme Profil pro
    Ph.D - Computer Vision
    Inscrit en
    Avril 2012
    Messages
    159
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ph.D - Computer Vision
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 159
    Points : 118
    Points
    118
    Par défaut Amplitude spectrale d'un signal
    Bonsoir,

    Je calcule l'amplitude spectrale d'un signal avec LabVIEW en utilisant la FFT(r,teta) et quant j'utilise la fonction FFT de matlab je n'obtient pas le bon résultat?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    fid = fopen('fichier.txt', 'r');
    x1 = fscanf(fid, '%f ')  ; 
    fclose(fid);
     
    n=length(x1);  Te=1/100000;  tmax=n*Te;  tmin=0;  t=tmin:Te:tmax-Te;
     
    fe=1/Te;  fmax=fe*n;  fmin=0;  df=(fmax-fmin)/n;  f=fmin:df:fmax-df;
     
    y=(fft(x1));
    figure,plot(f,y),grid,title('spectre du signal')
    S'il vous plait est ce que vous pouvez m'aider ? Merci beaucoup
    C'est à nous de rendre la Science amie de la Terre !

  2. #2
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Points : 2 385
    Points
    2 385
    Par défaut
    Bonjour,

    Je pense que tu dois regarder le module de la FFT pour avoir ton spectre. Dans tout les cas, je te conseille de faire un tour sur ce sujet qui pourra peut être t'aider dans ton travail sur le spectre d'un signal.
    Si vous cherchez des réponses sur ce forum il faudra avant tout expliquer clairement votre problème et exposer la démarche que vous avez entreprise pour le résoudre. Fournissez une base de travail et de réflexion à vos interlocuteurs!

  3. #3
    Membre régulier Avatar de azassma
    Femme Profil pro
    Ph.D - Computer Vision
    Inscrit en
    Avril 2012
    Messages
    159
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ph.D - Computer Vision
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 159
    Points : 118
    Points
    118
    Par défaut
    Merci pour votre réponse
    J'ai utilisé le module mais ça ne donne pas le bon résultat comme dans LabVIEW
    Voila le code que j'ai utilisé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
    Y2=fft(y1);
     
    for i=1:n
        amplitudeSpectrale(i) = (imag(Y2(i)))^2+(real(Y2(i)))^2;
        amplitudeSpectrale(i) = sqrt(amplitudeSpectrale(i));
    end
    C'est à nous de rendre la Science amie de la Terre !

  4. #4
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Points : 2 385
    Points
    2 385
    Par défaut
    Pour le module d'un nombre complexe tu peux te simplifier la vie en utilisant abs(monNombre)

    Tu peux également jeter un oeil sur la fonction proposée par WinJerome pour le Calcul et tracé de la FFT, peut être y trouveras-tu ce que tu désires.

    PS: peux tu nous donner le résultat que tu obtiens?
    Si vous cherchez des réponses sur ce forum il faudra avant tout expliquer clairement votre problème et exposer la démarche que vous avez entreprise pour le résoudre. Fournissez une base de travail et de réflexion à vos interlocuteurs!

  5. #5
    Membre régulier Avatar de azassma
    Femme Profil pro
    Ph.D - Computer Vision
    Inscrit en
    Avril 2012
    Messages
    159
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ph.D - Computer Vision
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 159
    Points : 118
    Points
    118
    Par défaut
    Merci Gooby pour votre réponse, j'ai utilisé la fonction abs mais ça ne donne pas le bon résultat

    voila le résultat obtenu à l'aide de LabVIEW, sachant que l'axe des abscisses est une fréquence

    Nom : imagaLabview.png
Affichages : 317
Taille : 9,3 Ko

    et voici celui obtenu avec MATLAB

    Nom : imageMatlab.png
Affichages : 322
Taille : 7,7 Ko
    C'est à nous de rendre la Science amie de la Terre !

  6. #6
    Modérateur

    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Août 2014
    Messages
    1 295
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2014
    Messages : 1 295
    Points : 2 385
    Points
    2 385
    Par défaut
    Premier point: c'est étrange que l'axe des abscisses de ton grahique LabView soit 'Time' !

    Second point, l'axe de symétrie du graphique Matlab se trouve au milieu de ton axe des abscisses, tu peux représenter uniquement la moitié de ton graph (ce qui représente une réalité physique puisque les fréquences négatives n'existent pas)

    Je pense que tu devrais essayer de zoomer sur ta zone basse fréquence et regarder un peu où se trouvent tes pics, il se peut que ton graphique ressemble plus à celui de LabView que tu ne le penses.
    Si vous cherchez des réponses sur ce forum il faudra avant tout expliquer clairement votre problème et exposer la démarche que vous avez entreprise pour le résoudre. Fournissez une base de travail et de réflexion à vos interlocuteurs!

  7. #7
    Membre régulier Avatar de azassma
    Femme Profil pro
    Ph.D - Computer Vision
    Inscrit en
    Avril 2012
    Messages
    159
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ph.D - Computer Vision
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 159
    Points : 118
    Points
    118
    Par défaut
    Merci mr Gooby, effectivement quand je fais un zoom j’obtiens une bonne représentation.

    Pour le premier point l'axe des abscisses c'est la fréquence qui étais représentée, juste dans le LabVIEW je n'ai pas modifié le titre "time"
    Pour le deuxième point les fréquences sont toutes positives donc je n'ai pas compris pourquoi existe-t-il de symétrie.
    C'est à nous de rendre la Science amie de la Terre !

  8. #8
    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
    Cette symétrie (dite hermitienne) est une propriété de la transformée de Fourier pour les signaux réels. La seconde moitié du résultat est un miroir de la première. Attention avec cette symétrie! Le dernier nombre n'est pas le symérique du premier, mais du second. Le premier joue un rôle particulier (amplitude à la fréquence zéro, soit composante continue), ainsi que le nombre médian à l'indice N/2 (c'est l'amplitude à la fréquence de Nyquist). C'est une source d'erreur fréquente quand on manipule des FFT complètes.

    Pour un signal réel, on peut se contenter de la "couper en deux".

  9. #9
    Membre régulier Avatar de azassma
    Femme Profil pro
    Ph.D - Computer Vision
    Inscrit en
    Avril 2012
    Messages
    159
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Ph.D - Computer Vision
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2012
    Messages : 159
    Points : 118
    Points
    118
    Par défaut
    Merci Jyber j'ai bien compris
    C'est à nous de rendre la Science amie de la Terre !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. calcul de densité spectral d'un signal
    Par jena dans le forum Signal
    Réponses: 2
    Dernier message: 15/04/2009, 13h17
  2. Analyse spectrale d'un signal périodique
    Par espoir1976 dans le forum Signal
    Réponses: 1
    Dernier message: 06/04/2009, 13h30
  3. Réponses: 3
    Dernier message: 04/12/2008, 23h20
  4. Décomposition spectrale d'un signal
    Par dzonaser dans le forum Signal
    Réponses: 7
    Dernier message: 18/09/2008, 14h59

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