Répondre à la discussion
Affichage des résultats 1 à 10 sur 10

Filtres numériques (de Butterworth)



  1. #1
    Eric78

    Filtres numériques (de Butterworth)

    Bonjour

    J'ai enfin réussi à implémenter un filtre numérique de Butterworth d'ordre quelconque. C'est un passe bas, et j'aimerais savoir s'il y a moyen de magouiller un passe bande ou un passe haut à partir d'un passe bas.

    Eric

    PS: les sources d'informations sur le sujet m'interressent aussi

    -----

    Pour un TPE sur la cryptographie ou les trous noirs, allez voir mon profil.

  2. Publicité
  3. #2
    pierre12

    Re : Filtres numériques (de Butterworth)

    Bonjour,

    Je cherche à implémenter un filtre de butterworth, pourrais tu me filer un coup de main. En quel language l'as tu écris ?

    Merci

  4. #3
    vin_100

    Re : Filtres numériques (de Butterworth)

    Salut!
    Je ne sais pas si tu y as accès...
    mais dans Matlab il est tout prêt!!!

  5. #4
    pierre12

    Re : Filtres numériques (de Butterworth)

    j'ai pas de possibilité de bosser sur Matlab !!!

    il faut que j'arrive à le traiter avec VBA!!

  6. #5
    volcanum

    Re : Filtres numériques (de Butterworth)

    Citation Envoyé par Eric78 Voir le message
    Bonjour

    J'ai enfin réussi à implémenter un filtre numérique de Butterworth d'ordre quelconque. C'est un passe bas, et j'aimerais savoir s'il y a moyen de magouiller un passe bande ou un passe haut à partir d'un passe bas.

    Eric

    PS: les sources d'informations sur le sujet m'interressent aussi
    passe-haut = 1 - passe bas
    passe-bande = passe-haut x passe-bas

  7. A voir en vidéo sur Futura
  8. #6
    curieuxdenature

    Re : Filtres numériques (de Butterworth)

    Citation Envoyé par pierre12 Voir le message
    j'ai pas de possibilité de bosser sur Matlab !!!

    il faut que j'arrive à le traiter avec VBA!!
    Bonjour pierre12

    j'ai fait le module en VB6, c'est quelque chose de ce gout là que tu cherches ?
    50 Ohms
    27185000 Hz
    117,0902 pF
    .2927 µH

    N = 2
    C1 = 1,41421 : 165,59054 pF
    L1 = 1,41421 : 0,41397 µH

    N = 3
    C1 = 0,99999 : 117,09019 pF
    L1 = 2 : 0,58545 µH
    C2 = 1 : 117,0902 pF

    N = 4
    C1 = 0,76536 : 89,61695 pF
    L1 = 1,84775 : 0,54088 µH
    C2 = 1,84775 : 216,35447 pF
    L2 = 0,76536 : 0,22404 µH

    etc..
    Ce n'est pas limité à 4, évidement.
    a+
    L'electronique, c'est fantastique.

  9. Publicité
  10. #7
    pierre12

    Re : Filtres numériques (de Butterworth)

    Bonjour,

    En fait je suis un peu perdu, je cherche à faire un filtre à 50 Hz en VBA.
    Mais je ne sais pas quel type de filtre sera le plus efficace, on m'a parlé du butterworth mais je ne sais pas déterminer l'ordre qui m'est nécessaire et du coup encore moins l'algorythme de calcul !

    Si quelqu'un peut m'éclairer merci.

  11. #8
    curieuxdenature

    Re : Filtres numériques (de Butterworth)

    Salut pierre12

    ça aussi on le calcule.
    Il faut poser les bornes, telle l'atténuation désirée à la fréquence de base,
    la fréquence maxi et l'atténuation désirée à cette fréquence.

    Pour continuer sur ton exemple, à 50 Hz je demande 1dB d'atténuation.
    Si à 200 Hz, je demande une atténuation de 50 dB,
    le filtre sera N = 5 et une atténuation de 3 dB se fera à 57,83 Hz.

    Si j'imposes une impédance de 50 ohms j'aurais:
    50 Ohms
    50 Hz
    63661977,2367 pF
    159154,943 µH

    et donc avec N=5

    C1 = 0,61803 : 39 345 265 pF -> 39 µF
    L1 = 1,61803 : 257 518 µH -> 257 mH
    C2 = 2 : 127 323 954 pF -> 127 µF
    L2 = L1
    C3 = C1
    L'algo N°1:

    freq1 = Val(Trim$(Text1.Text))
    freq2 = Val(Trim$(Text4.Text))
    AttMini = Val(Trim$(Text2.Text))
    AttMaxi = Val(Trim$(Text3.Text))
    If AttMini = 0 Then AttMini = 0.1
    epsil = Sqr((10 ^ (AttMini / 10) - 1))
    omega = freq2 / freq1
    Nent = Log(-1 + 10 ^ (AttMaxi / 10)) / Log(10)
    Nenti = 2 * Log(epsil) / Log(10)
    Nentie = Nent - Nenti
    Nentier = Nentie * Log(10) / (2 * Log(omega))

    List1.AddItem "Attenuation Mini = " & AttMini
    List1.AddItem "Attenuation Maxi = " & AttMaxi
    List1.AddItem "Omega(r) = " & omega
    List1.AddItem "Epsilon = sqr(10^(Amini/10) - 1) = " & epsil

    Text14.Text = Str$(Int(Nentier + 0.5))
    List1.AddItem "N = " & Nentier
    omega3 = freq1 * ((1 / epsil) ^ (1 / Nentier))
    List1.AddItem "F à -3dB = " & Int(omega3 * 100) / 100 & " Hz"
    Text12.Text = Str$(Int(omega3 * 100) / 100)
    freq1 = fréquence du filtre (50 Hz)
    freq2 = fréquence maxi (200 Hz)
    AttMini = 1 dB
    AttMaxi = 50 dB

    résultat = Nentier + 0.5 = 4.639 + 0.5 = 5

    L'Algo 2 en pièce jointe.
    Fichiers attachés Fichiers attachés
    L'electronique, c'est fantastique.

  12. #9
    pierre12

    Re : Filtres numériques (de Butterworth)

    Bonjour et Merci Curieuxdenature

    Je suis moi même curieux de comprendre un peu plus.

    Comment fais tu pour définir tes différents coéfficients ?

    Quels sont les paramètres qui sont décisifs ?

    En gros : j'ai un fréquence de coupure désirée à 49 Hz ou 50 Hz.

    Un fréquence d'échantilonnage de 512 hz ou 1024 Hz.

    Après j'avoue que je ne sais pas trop quels sont les choix à faire !

    Merci

    @+

  13. #10
    lerouge2

    Re : Filtres numériques (de Butterworth)

    Bonjour,

    petite question sur l'ordre d'un filtre numérique de butherworth,

    j'ai trouver une formule pour déterminer l'ordre:

    n = 0,5 *LOG((10^(0,1*Rs)-1)/(10^(0,1*Rp)-1))/ LOG(omega_s/omega_p)

    j'aimerai savoir a quoi correspondent ces coefficients ?

    Rs, Rp, omega_s et omega_p ?

    dans la documentation que j'ai trouver on parle aussi de prédoformation, je ne sais pas a quoi ca correspond non plus ?

Sur le même thème :

Discussions similaires

  1. [Debutant] Filtre Butterworth Matlab
    Par Gui973 dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 15/12/2007, 00h02
  2. Calculs numériques en MQ
    Par alovesupreme dans le forum Physique
    Réponses: 0
    Dernier message: 23/09/2007, 15h04
  3. series numeriques
    Par bt123 dans le forum Mathématiques du supérieur
    Réponses: 6
    Dernier message: 22/03/2007, 13h15
  4. fonctions numeriques
    Par sofys dans le forum Mathématiques du collège et du lycée
    Réponses: 1
    Dernier message: 08/11/2006, 17h48
  5. a propos des filtres butterworth
    Par telecofr dans le forum Technologies
    Réponses: 8
    Dernier message: 16/01/2004, 12h41