On peut également concevoir des filtres passe-haut à temps discret. La conception de filtres à temps discret dépasse le cadre de cet article ; cependant, un exemple simple provient de la conversion du filtre passe-haut à temps continu ci-dessus en une réalisation à temps discret. En d’autres termes, le comportement en temps continu peut être discrétisé.
D’après le circuit de la figure 1 ci-dessus, selon les lois de Kirchhoff et la définition de la capacité :
{ V out ( t ) = I ( t ) R (V) Q c ( t ) = C ( V in ( t ) – V out ( t ) ) (Q) I ( t ) = d Q c d t (I) {\displaystyle {\begin{cases}V_{\text{out}}(t)=I(t)\,R&{\text{(V)}}\Q_{c}(t)=C\,\left(V_{\text{in}}(t)-V_{\text{out}}(t)\right)&{\text{(Q)}}\\I(t)={\frac {\operatorname {d} Q_{c}}{\operatorname {d} t}}&{\text{(I)}}\end{cases}}
où Q c ( t ) {\displaystyle Q_{c}(t)}
est la charge stockée dans le condensateur au temps t {\displaystyle t}.
. En substituant l’équation (Q) dans l’équation (I), puis l’équation (I) dans l’équation (V), on obtient : V out ( t ) = C ( d V in d t – d V out d t ) ⏞ I ( t ) R = R C ( d V in d t – d V out d t ) {\displaystyle V_{\text{out}}(t)=\overbrace {C\,\left({\frac {\operatorname {d} V_{\text{in}}{\operatorname {d} t}}-{\frac {\operatorname {d} V_{{text{out}}{\operatorname {d} t}\right)} ^{I(t)}\,R=RC\,\left({\frac {\operatorname {d}) V_{\text{in}}{\operatorname {d} t}}-{\frac {\operatorname {d} V_{\text{out}}{\operatorname {d} t}\right)}
Cette équation peut être discrétisée. Pour simplifier, supposons que les échantillons de l’entrée et de la sortie sont pris à des points uniformément espacés dans le temps séparés par Δ T {\displaystyle \Delta _{T}}.
temps. Soit les échantillons de V dans {\displaystyle V_{\text{in}}}
être représentés par la séquence ( x 1 , x 2 , … , x n ) {\displaystyle (x_{1},x_{2},\ldots ,x_{n})}
, et laissons V out {\displaystyle V_{\text{out}}
être représentée par la séquence ( y 1 , y 2 , … , y n ) {\displaystyle (y_{1},y_{2},\ldots ,y_{n})}
qui correspondent aux mêmes instants. En effectuant ces substitutions : y i = R C ( x i – x i – 1 Δ T – y i – y i – 1 Δ T ) {\displaystyle y_{i}=RC\,\left({\frac {x_{i}-x_{i-1}}{\Delta _{T}}-{\frac {y_{i}-y_{i-1}}{\Delta _{T}}}\right)}
Et en réarrangeant les termes, on obtient la relation de récurrence
y i = R C R C + Δ T y i – 1 ⏞ Contribution décroissante des entrées antérieures + R C R C + Δ T ( x i – x i – 1 ) ⏞ Contribution du changement d’entrée {\displaystyle y_{i}=\overbrace {{\frac {RC}{RC+\Delta _{T}}}y_{i-1}} ^{\text{Contribution décroissante des entrées antérieures}+\overbrace {{\frac {RC}{RC+\Delta _{T}}\left(x_{i}-x_{i-1}\right)} ^{\text{Contribution de la modification de l’entrée}}.
C’est-à-dire, cette implémentation en temps discret d’un simple filtre passe-haut RC en temps continu est
y i = α y i – 1 + α ( x i – x i – 1 ) où α ≜ R C R C + Δ T {\displaystyle y_{i}=\alpha y_{i-1}+\alpha (x_{i}-x_{i-1})\qquad {\text{where}\qquad \alpha \triangleq {\frac {RC}{RC+\Delta _{T}}}}
Par définition, 0 ≤ α ≤ 1 {\displaystyle 0\leq \alpha \leq 1}.
. L’expression du paramètre α {\displaystyle \alpha }
donne la constante de temps équivalente R C {\displaystyle RC}.
en fonction de la période d’échantillonnage Δ T {\displaystyle \Delta _{T}}.
et α {\displaystyle \alpha }
: R C = Δ T ( α 1 – α ) {\displaystyle RC=\Delta _{T}\left({\frac {\alpha }{1-\alpha }}\right)}
.
Rappelant que
f c = 1 2 π R C {\displaystyle f_{c}={\frac {1}{2\pi RC}}}.
donc R C = 1 2 π f c {\displaystyle RC={\frac {1}{2\pi f_{c}}}}}.
alors α {\displaystyle \alpha }
and f c {\displaystyle f_{c}}
sont liés par : α = 1 2 π Δ T f c + 1 {\displaystyle \alpha ={\frac {1}{2\pi \Delta _{T}f_{c}+1}}
et
f c = 1 – α 2 π α Δ T {\displaystyle f_{c}={\frac {1-\alpha }{2\pi \alpha \Delta _{T}}}}}
.
Si α = 0,5 {\displaystyle \alpha =0,5}
, alors le R C {\displaystyle RC}
constante de temps égale à la période d’échantillonnage. Si α ≪ 0,5 {\displaystyle \alpha \ll 0,5}
, alors R C {\displaystyle RC}
est significativement plus petit que l’intervalle d’échantillonnage, et R C ≈ α Δ T {\displaystyle RC\approx \alpha \Delta _{T}}.
.
Implémentation algorithmiqueModifier
La relation de récurrence du filtre fournit un moyen de déterminer les échantillons de sortie en fonction des échantillons d’entrée et de la sortie précédente. L’algorithme de pseudocode suivant simulera l’effet d’un filtre passe-haut sur une série d’échantillons numériques, en supposant que les échantillons sont également espacés :
// Return RC high-pass filter output samples, given input samples,// time interval dt, and time constant RCfunction highpass(real x, real dt, real RC) var real y var real α := RC / (RC + dt) y := x for i from 2 to n y := α × y + α × (x − x) return y
La boucle qui calcule chacun des n {\displaystyle n}.
sorties peut être refacturée en l’équivalent :
for i from 2 to n y := α × (y + x − x)
Cependant, la forme précédente montre comment le paramètre α modifie l’impact de la sortie antérieure y et du changement actuel de l’entrée (x – x). En particulier,
- Une grande valeur de α implique que la sortie décroît très lentement mais qu’elle est aussi fortement influencée par des changements même faibles de l’entrée. Par la relation entre le paramètre α et la constante de temps R C {\displaystyle RC}
ci-dessus, un grand α correspond à un grand R C {\displaystyle RC}.
et donc à une faible fréquence de coin du filtre. Par conséquent, ce cas correspond à un filtre passe-haut avec une bande d’arrêt très étroite. Comme il est excité par de petites variations et qu’il a tendance à conserver longtemps ses valeurs de sortie antérieures, il peut laisser passer des fréquences relativement basses. Cependant, une entrée constante (c’est-à-dire une entrée avec (x – x)=0) décroîtra toujours vers zéro, comme on pourrait s’y attendre avec un filtre passe-haut avec un grand R C {\displaystyle RC}.
.
- Un petit α implique que la sortie décroîtra rapidement et nécessitera de grands changements dans l’entrée (c’est-à-dire que (x – x) est grand) pour que la sortie change beaucoup. Par la relation entre le paramètre α et la constante de temps R C {\displaystyle RC}
ci-dessus, un petit α correspond à un petit R C {\displaystyle RC}.
et donc à une fréquence de coin élevée du filtre. Par conséquent, ce cas correspond à un filtre passe-haut avec une bande d’arrêt très large. Comme il nécessite des changements importants (c’est-à-dire rapides) et qu’il a tendance à oublier rapidement ses valeurs de sortie antérieures, il ne peut laisser passer que des fréquences relativement élevées, comme on pourrait s’y attendre avec un filtre passe-haut ayant un petit R C {\displaystyle RC}.
.