[Numérique] Fft
Répondre à la discussion
Affichage des résultats 1 à 5 sur 5

Fft



  1. #1
    cubitus_54

    Fft


    ------

    Bonjour.
    Je rencontre quelques difficultés pour afficher correctement le spectre en utilisant un outil FFT.

    J'ai un programme sous Matlab qui récupère via mon oscilloscope les traces avec différentes profondeurs de mémoire.
    La version de base est 1400 points et ça peut aller jusqu'à 140 Mpoints.

    Une fois l'acquisition réalisée, je l'affiche et je lance une application FFT qui permet d'afficher le spectre.
    Le problème, c'est que plus la profondeur mémoire est importante, plus le spectre sera large et moins sera visible les détails.
    Je n’ai pas bien compris sur quels paramètres jouer pour obtenir quelque chose de bien lisible.

    Acquisition 1400 points, T échantillon = 2µs
    1400.png


    Acquisition 140k points, T échantillon = 20ns
    140k.png

    -----

  2. #2
    umfred

    Re : Fft

    ton signal jaune est à 1kHz, tu n'as pas la même échelle sur l'axe des fréquences sur tes courbes du bas (rapport de 10) et d'ailleurs l'axe des fréquences est en général en logarithmique; en modifiant déjà cette échelle, tu devrais avoir une meilleure vision je pense.

  3. #3
    cubitus_54

    Re : Fft

    J'ai effectivement quelques petits soucis avec les échelles.
    Je n'ai pas l'option échelle logarithmique.
    Sur la 2e illustration, même en zoomant ça reste vraiment moche et très sommaire.

  4. #4
    Antoane
    Responsable technique

    Re : Fft

    Bonjour,

    Les deux lois de base sont :
    - il y a autant de points dans les signaux dans le domaine temporel et dans le domaine fréquentiel ;
    - Shannon-Nyquist : la fréquence max visible dans la FFT est égale à la moitié de la fréquence d'échantillonage.

    Une autre facon (équivalente) de voir les choses est la suivante :
    - la distance entre deux raies est inversement proportionelle au nombre de points ;
    - la fréquence max visible dans la FFT est égale à la moitié de la fréquence d'échantillonage.

    Une autre facon (équivalente) de voir les choses est la suivante :
    - pour une fréquence d'échantillonnage donnée, l'écart entre deux raies est inversement proportionnel à la durée d'enregistrement. Allonger la durée dènregistrement sans modifier la fréquence d'échantillonage permet donc d'ajouter des raies au spectre affiché sans en modifier les limites.
    - augmenter la fréquence d'échantillonage à temps d'enregistrement constant permet d'ajouter des raies en HF, mais ne modifie pas la partie BF du spectre affiché

    Ne pas hésiter à passer en plot loglog ou semi-log pour mieux voir la BF. Les gens de la HF utilisent le linéaire, pas nous (en particulier car on travaille en très large bande).

    Il faut penser à donner à la fonction fft un nombre entier de périodes, sans quoi le spectre sera déformé. Sinonn, utiliser une fenêtre d'apodisation. Exemple de signal "sinus" et fft associés en prenant un nombre entier ou nom de périodes :
    fs68.PNG
    Ca s'améliore en prenant un grand nombre de périodes :
    fs69.PNG


    Edit:
    La fonction stem() de matlab est pratique pour visualiser les fft.
    pour passer en x- ou y- axis log :
    Code:
    g = gca ; 
    g.XAxis.XScale = 'log' ; % ou = 'linear';
    g.YAxis.YScale = 'log' ; % ou = 'linear';
    Il y a aussi la fonction semilogx() .
    Dernière modification par Antoane ; 28/01/2022 à 17h25.
    Deux pattes c'est une diode, trois pattes c'est un transistor, quatre pattes c'est une vache.

  5. A voir en vidéo sur Futura
  6. #5
    cubitus_54

    Re : Fft

    Merci pour ces explications, j'y vois un peu plus clair.
    Je vais garder l'analyse spectrale pour la faible résolution, 1400 points, et pour une analyse plus profonde temporelle, j'utiliserai les modes jusqu'à 140 Mpts.
    Je n’utilise pas un script pour l'analyse spectrale. Dans Matlab il y a une application. SignalAnalyzer qui très sympa, mais qui ne fait d’échelle log.
    Nom : Image3.png
Affichages : 75
Taille : 85,0 Ko

Découvrez nos comparatifs produits sur l'informatique et les technologies.