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 :

Filtre passe bande


Sujet :

Signal

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 7
    Points : 3
    Points
    3
    Par défaut Filtre passe bande
    Bonjour,

    j'ai un souci, je vous explique.
    j'ai un signal.mat (son nom est signal_RMN1.mat)
    pour afficher ce signal j'ai fait:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    sig = signal_RMN1
    load signal_RMN1.mat
    plot(sig)
    size(sig)
    jusqu'a là tout va bien.
    mais là ou je bloque c'est que je dois filtrer ce signal en haute et basse fréquence. donc faire un filtre passe bande.

    on me dit que:
    "Le signal RMN est la somme de toutes les contributions de chaque noyau, chacun émettant un signal :

    S(t)=rα . (e^(t/Trα)). cos (2.pi.fα.t)

    Avec rα la concentration de noyaux de type α dans l’échantillon, Trα son temps de relaxation et fα sa fréquence de résonance.
    Le signal RMN est dans la gamme radiofréquence, mais il est démodulé pour abaisser sa fréquence avant numérisation. Ainsi fα est basse fréquence et peut même être négative selon le type de noyau et la fréquence centrale de démodulation."

    je sais que ma fréquence d'échantillonnage est fe = 10kHz.
    Le signal est une mesure sur un échantillon qui contient un seul type de noyaux résonnant à 1000Hz après démodulation. Ce signal est fortement bruité en Haute et basse fréquence.

    je dois filtrer ce signal et renvoyer le signal filtrer. mais le probleme c'est quand cours j'ai déja fait ce genre d'exercice, mais j'avais la fréquence de coupure, j'avais rα....
    la je n'ai pas plus de donnée. si quelqu'un sais comment faire ça serai sympa de m'aider.

    merci par avance pour ceux qui prendront de leur temps pour m'aider.
    cordialement

  2. #2
    Membre émérite
    Homme Profil pro
    Inscrit en
    Mai 2008
    Messages
    2 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 040
    Points : 2 841
    Points
    2 841
    Par défaut
    Bonjour.
    Ce signal est fortement bruité en Haute et basse fréquence.
    Si tu connais les plages de fréquences qui sont bruitées tu peux utiliser le filtre de Butterworth :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    [numz,denz]=butter(n,[f1,f2]/(fe/2)) ;
     s=filter(numz,denz,signal)

  3. #3
    Membre à l'essai
    Inscrit en
    Septembre 2005
    Messages
    28
    Détails du profil
    Informations forums :
    Inscription : Septembre 2005
    Messages : 28
    Points : 10
    Points
    10
    Par défaut
    si le but est juste de garder une bande de fréquence, a toi de choisir au mieux la fréquence de coupure.

    puisque tu as la fréquence de résonance, tu suffit de couper un peu avant et un peu après la fréquence de résonance.

    si tu es à 1000 hz, tu peux couper par exemple a 794 hz et 1258 hz (10^2,9 et 10 ^3,1) - pour avoir des frequence de coupure symétrique en log

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    merci pour vos réponses,

    voila j'ai réussi a continuer:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    fe=10000; %fréquence échatillonnage fe=10kHz
    N=10000;
    f=[-fe/2:fe/N:fe*(N*1)/(2*N)]
    y=fft(sig)
    y1=fftshift(y)
    plot(f,abs(y1))
    j'ai fait la transformée de fourier afin d'avoir mon signal en fréquentiel, mais j'aimerai savoir comment faire pour que mon signal soit a zero de 0 à 900 hz et pareil de 1100 à 10 000hz. je sais que c'est brutal mais déjà si j'arrive a faire comme ça après j'ajusterai.
    car une fois cela fait il me manquera plus qu'a refaire une transformée inverse. pour avoir mon signal filtré.

    merci par avance pour ceux qui prendront de leur temps pour m'aider.
    cordialement

  5. #5
    Membre émérite
    Homme Profil pro
    Inscrit en
    Mai 2008
    Messages
    2 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 040
    Points : 2 841
    Points
    2 841
    Par défaut
    Bonjour.
    mais j'aimerai savoir comment faire pour que mon signal soit a zero de 0 à 900 hz et pareil de 1100 à 10 000hz. je sais que c'est brutal mais déjà si j'arrive a faire comme ça après j'ajusterai.
    Tu as un exemple là :
    http://www.developpez.net/forums/d54...es-signal-wav/

  6. #6
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    oui je veux bien, faire comme ça, mais j'ai 10 000 valeurs et ce sont des vecteurs donc une valeur réelle et une valeur imaginaire.
    donc je vais pas les taper un par un.
    c'est justement ça le probleme

  7. #7
    Membre émérite
    Homme Profil pro
    Inscrit en
    Mai 2008
    Messages
    2 040
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 2 040
    Points : 2 841
    Points
    2 841
    Par défaut
    Bonjour.
    donc je vais pas les taper un par un.
    Il suffit de faire le gabarit de 0 à 900 Hz et de 1100 à 10 000 Hz !

  8. #8
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    Le problème c'est que je n'arrive pas a faire le gabarit. je suis tout nouveau sur matlab. Et j'ai fait deux exercices dessus mais j'étais guidé. en gros c'était une recette a suivre, j'avais les valeurs et les fonctions a utiliser. et la j'ai un signal, et je doit le filtrer et le renvoyer.

    http://dl.free.fr/iQUElGcb3

    voici le lien du signal que je dois filtrer. c'est un fichier zipé, dedans il y a deux autres fichiés zipé, un pour matlab version7 et un pour matlab version inférieur a la version 7. ( le fichier a traité s'appelle signal_RMN1.mat)

    je vous remet le code que j'ai fait pour le moment:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    sig = signal_RMN1
    load signal_RMN1.mat
    plot(sig)
    size(sig)
    fe=10000; %fréquence échatillonnage fe=10kHz
    N=10000;
    f=[-fe/2:fe/N:fe*(N*1)/(2*N)]
    y=fft(sig)
    y1=fftshift(y)
    plot(f,abs(y1))
    je sais que ma fréquence d'échantillonnage est fe = 10kHz.
    Le signal est une mesure sur un échantillon qui contient un seul type de noyaux résonnant à 1000Hz après démodulation. Ce signal est fortement bruité en Haute et basse fréquence.

    je dois filtrer ce signal et renvoyer le signal filtrer.
    si vous pouvez m'aider, car j'ai vraiment besoin d'aide

  9. #9
    Candidat au Club
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 7
    Points : 3
    Points
    3
    Par défaut
    merci pour votre aide.
    Le code pour filtrer ce signal sera mis la semaine prochaine pour ce que ça intéresse.
    cordialement

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

Discussions similaires

  1. calcul du temps de réponse d'un filtre passe bande
    Par Asturias1 dans le forum Signal
    Réponses: 8
    Dernier message: 13/07/2009, 11h37
  2. Appliquer un filtre passe-bande à un son .wav
    Par jems87 dans le forum Signal
    Réponses: 6
    Dernier message: 23/12/2008, 19h49
  3. Chargement de fichiers et filtre passe bande
    Par Caroline_1 dans le forum Signal
    Réponses: 12
    Dernier message: 13/12/2008, 22h29
  4. Filtre passe bande
    Par zinzaf dans le forum LabVIEW
    Réponses: 2
    Dernier message: 15/06/2008, 09h55
  5. Filtre passe Bande
    Par Mau dans le forum Algorithmes et structures de données
    Réponses: 4
    Dernier message: 28/06/2002, 17h03

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