FIRFilterWindow (FPScript)

21.09.2021

Calcule la réponse impulsionnelle d'un filtre FIR en utilisant le fenêtrage.

Syntaxe

FIRFilterWindow(Window, Type, [ FilterLength ], Fc1, [ Fc2 ], [ Attenuation ], [ Transition ], [ Alpha = 0.54 ] [ , SamplingRate ])

 

La syntaxe de la fonction FIRFilterWindow se compose des éléments suivants :

Section

Description

Window

Précise le type de fenêtre.

L'argument Window peut avoir les valeurs suivantes :

Constante

Signification

FILTER_RECTANGULAR

Fenêtre rectangulaire

FILTER_BARTLETT

Fenêtre Bartlett

FILTER_HAMMING

Fenêtre de Hamming

FILTER_GENERALIZED_HAMMING

Fenêtre de Hamming généralisée

FILTER_HANNING

Fenêtre de Hanning

FILTER_BLACKMAN

Fenêtre de Blackman

FILTER_KAISER

Fenêtre de Kaiser

FILTER_DOLPHCHEBYSHEV

Fenêtres Dolph-Chebyshev

Si l'argument est une liste, alors son premier élément est pris. S'il s'agit à nouveau d'une liste, le processus est répété.

Type

Précise le type de filtre.

L'argument Type peut avoir les valeurs suivantes :

Constante

Signification

FILTER_LOWPASS

Passe-bas, permet le passage des fréquences qui sont en dessous de la fréquence de coupure.

FILTER_HIGHPASS

Passe haut, permet le passage des fréquences qui sont au-dessus de la fréquence de coupure.

FILTER_BANDPASS

La bande passante, permet le passage des fréquences qui se situent entre la première et la deuxième fréquence de coupure.

FILTER_BANDSTOP

Stop bande, permet le passage des fréquences qui sont en dessous de la première et au-dessus de la deuxième fréquence de coupure.

Si l'argument est une liste, alors son premier élément est pris. S'il s'agit à nouveau d'une liste, le processus est répété.

FilterLength

Précise la longueur du filtre. Cet argument est facultatif pour les filtres Kaiser et Dolph-Chebyshev. La longueur du filtre peut être calculée à partir de l'atténuation et de la transition.

Les structures de données autorisées sont Scalaire. Tous les types de données entiers sont autorisés.

La valeur doit être supérieure ou égale à 5 et inférieure ou égale à 999.

Si l'argument est une liste, alors son premier élément est pris. S'il s'agit à nouveau d'une liste, le processus est répété.

Fc1

Spécifie la fréquence de coupure inférieure du filtre. La fréquence de coupure doit être comprise entre 0 et 0,5, soit la moitié de la fréquence d'échantillonnage normalisée, ou entre 0 et la moitié du taux d'échantillonnage.

Les structures de données autorisées sont Scalaire. Tous les types de données réels sont autorisés, sauf Temps calendaire et Période de temps.

Si l'argument est une liste, alors son premier élément est pris. S'il s'agit à nouveau d'une liste, le processus est répété.

Fc2

Spécifie la fréquence de coupure supérieure du filtre. La fréquence de coupure doit être comprise entre 0 et 0,5, soit la moitié de la fréquence d'échantillonnage normalisée, ou entre 0 et la moitié du taux d'échantillonnage. Cet argument n'a pas à être spécifié pour un filtre passe-bas ou passe-haut.

Les structures de données autorisées sont Scalaire. Tous les types de données réels sont autorisés, sauf Temps calendaire et Période de temps.

Si l'argument est une liste, alors son premier élément est pris. S'il s'agit à nouveau d'une liste, le processus est répété.

Attenuation

Spécifie l'atténuation de la bande de coupure du filtre Dolph-Chebyshev ou Kaiser. L'atténuation peut être calculée à partir de la longueur du filtre et de la transition.

Les structures de données autorisées sont Scalaire. Tous les types de données réels sont autorisés, sauf Temps calendaire et Période de temps. L'argument est transformé dans l'unité dB.

La valeur doit être supérieure à 0 dB.

Si l'argument est une liste, alors son premier élément est pris. S'il s'agit à nouveau d'une liste, le processus est répété.

Transition

Spécifie la distance (transition) entre la bande de coupure et la bande passante pour le filtre Dolph-Chebyshev ou Kaiser. La transition peut être calculée à partir de la longueur du filtre et de l'atténuation.

Les structures de données autorisées sont Scalaire. Tous les types de données réels sont autorisés, sauf Temps calendaire et Période de temps.

La valeur doit être supérieure à 0.

Si l'argument est une liste, alors son premier élément est pris. S'il s'agit à nouveau d'une liste, le processus est répété.

Alpha

Influence le comportement d'atténuation de la fenêtre de Hamming généralisée (Méthode de la fenêtre). Alpha doit être compris entre 0 et 1.

Les structures de données autorisées sont Scalaire. Tous les types de données réels sont autorisés, sauf Temps calendaire et Période de temps.

La valeur doit être supérieure ou égale à 0 et inférieure ou égale à 1.

Si l'argument est une liste, alors son premier élément est pris. S'il s'agit à nouveau d'une liste, le processus est répété.

Si l'argument n'est pas spécifié, il est défini à la valeur par défaut 0.54 .

SamplingRate

Précise le taux d'échantillonnage. L'argument est facultatif. Si un taux d'échantillonnage est spécifié, les fréquences de coupure absolues sont spécifiées pour les fréquences de coupure au lieu des fréquences normalisées.

Les structures de données autorisées sont Scalaire. Tous les types de données réels sont autorisés, sauf Temps calendaire et Période de temps.

La valeur doit être supérieure à 0.

Si l'argument est une liste, alors la fonction est exécutée pour chaque élément de la liste et le résultat est également une liste.

Remarques

L'argument FilterLength n'a pas à être spécifié pour le filtre Kaiser ou Dolph-Chebyshev. Il peut être calculé à partir de l'atténuation et de la transition. Pour les deux filtres, deux des trois arguments FilterLength, Attenuation et Transition doivent être spécifiée. Cependant, seules les atténuations supérieures à 21 dB peuvent être calculées à partir de la longueur du filtre et de la transition. Si les trois arguments sont précisés, la transition est recalculée et corrigée si nécessaire.

L'atténuation est spécifiée en décibels (20 log delta).

Disponible dans

Option Filtres numériques

Exemples

Filter(Signal, FIRFilterWindow(FILTER_DOLPHCHEBYSHEV, FILTER_LOWPASS, , 250 Hz, , 30 dB, 10 Hz, , SamplingRate(Signal)), , TRUE)

Filtre un signal avec correction de phase en utilisant un filtre passe-bas avec une fenêtre de Hamming. La longueur du filtre est déterminée à partir de l'atténuation et de la transition. Notez également que le troisième argument de la fonction Filter est laissée vide.

Voir aussi

Fonction Filter

Fonction FIRFilterEquiripple

Fonction IIRFilter

Option Filtres numériques

Objet d'analyse Filtre FIR (méthode de la fenêtre)

Méthode de la fenêtre

Tutoriel sur les filtres

Partager l’article ou envoyer par mail :

Vous serez probablement intéressé par les articles suivants :