Filtre passe haut (HPF)
Ces informations s’appliquent aux automates
CompactLogix
5370, ControlLogix
5570, Compact GuardLogix
5370, GuardLogix
5570, Compact GuardLogix
5380, CompactLogix
5380, ControlLogix
5580, GuardLogix
5580 et ControlLogix 5590.L'instruction HPF fournit un filtre qui atténue les fréquences d'entrée qui se trouvent sous la fréquence de coupure.
Langues disponibles
Diagramme à relais
Cette instruction n'est pas disponible dans la logique à relais.
Bloc fonctionnel

Texte structuré
HPF(HPF_tag);
Opérandes
Bloc fonctionnel
Opérande | Type | Format | Description |
|---|---|---|---|
HPF tag | FILTER_HIGH_PASS | structure | Structure HPF |
Paramètre d’entrée | Type de données | Description |
|---|---|---|
EnableIn | BOOL | Activez l'entrée. Si défini sur faux, l’instruction n’est pas exécutée et les sorties ne sont pas mises à jour. La valeur par défaut est définie sur vrai. |
In | REAL | Entrée du signal analogique dans l’instruction. Valide = tout flottant Par défaut = 0,0 |
Initialize | BOOL | Demander à initialiser l’algorithme de contrôle du filtre. Lorsque la valeur est vraie, l’instruction définit Out = In. La valeur par défaut est fausse. |
WLead | REAL | Fréquence en avance de phase en radians/secondes. Si WLead < minimum ou WLead > maximum, l’instruction définit le bit approprié dans État et restreint WLead. Valide = voir la section Description ci-dessous pour les plages valides. Par défaut = 0,0 |
Order | REAL | Ordre des filtres. L’ordre contrôle la précision de coupure. Si Order n’est pas valide, l’instruction définit le bit adéquat dans Status et utilise Order = 1. Valide = 1 à 3 Par défaut = 1 |
OversampleDT | REAL | Temps d’exécution du mode suréchantillonnage. Valide = 0 à 4194.303 secondes Par défaut = 0 |
RTSTime | DINT | Période de mise à jour du module pour le mode Échantillonnage en temps réel. Valide = de 1 à 32 767 ms Par défaut = 1 |
RTSTimeStamp | DINT | Valeur d'horodatage du module pour le mode Échantillonnage en temps réel Valide = de 0 à 32 767 ms Par défaut = 0 |
Paramètre de sortie | Type de données | Description |
|---|---|---|
EnableOut | BOOL | Indique si l'instruction est activée. Mis à zéro (faux) en cas de débordement d'Out. |
Out | REAL | Sortie calculée de l’algorithme. |
DeltaT | REAL | Temps écoulé entre les mises à jour. Cela correspond au temps écoulé en seconde utilisé par l'algorithme de contrôle pour calculer la sortie du processus. |
Status | DINT | État du bloc fonctionnel. |
InstructFault (Status.0) | BOOL | L'instruction a détecté l'une des erreurs d'exécution suivantes. Il ne s'agit pas d'une erreur d'automate mineure ou majeure. Contrôlez les bits d'état restants pour déterminer la cause du problème. |
WLeadInv (Status.1) | BOOL | WLead < valeur minimale ou WLead > valeur maximale. |
OrderInv (Status.2) | BOOL | Valeur d'ordre non valide. |
TimingModeInv (Status.27) | BOOL | Valeur TimingMode non valide. Reportez-vous aux attributs des blocs fonctionnels pour plus d’informations sur les modes de temporisation. |
RTSMissed (Status.28) | BOOL | Utilisé seulement en mode Échantillonnage en temps réel. Défini sur vrai lorsque ABS (DeltaT - RTSTime) > 1 milliseconde. |
RTSTimeInv (Status.29) | BOOL | Valeur RTSTime non valide. |
RTSTimeStampInv (Status.30) | BOOL | Valeur RTSTimeStamp non valide. |
DeltaTInv (Status.31) | BOOL | Valeur DeltaT non valide. |
Texte structuré
Opérande | Type | Format | Description |
|---|---|---|---|
HPF tag | FILTER_HIGH_PASS | Structure | Structure HPF |
Reportez-vous à Syntaxe du texte structuré pour plus d'informations concernant la syntaxe des expressions dans le texte structuré.
Description
L’instruction HPF utilises le paramètre Order pour contrôler la précision de la coupure. L’instruction HPF est conçue pour exécuter une tâche lorsque la fréquence de scrutation reste constante.
L’instruction HPF utilise les équations suivantes :
Lorsque : | L’instruction utilise cette fonction de transfert : |
|---|---|
Order = 1 | ![]() |
Order = 2 | ![]() |
Ordre = 3 | ![]() |
avec ces limites de paramètres (où DeltaT est en secondes) :
Paramètre | Limitations |
|---|---|
WLead premier ordre LowLimit | ![]() |
WLead deuxième ordre LowLimit | ![]() |
WLead troisième ordre LowLimit | ![]() |
HighLimit | ![]() |
Si la valeur de sortie calculée n'est pas valide, NAN, ou
INF, l'instruction définit Out = valeur non valide. Lorsque la valeur calculée pour la sortie devient valide, l'instruction initialise les paramètres internes et définit Out = In.
INF, l'instruction définit Out = valeur non valide. Lorsque la valeur calculée pour la sortie devient valide, l'instruction initialise les paramètres internes et définit Out = In.Affecte les indicateurs d'état mathématique
Non
Défauts majeurs/mineurs
Aucun spécifique à cette instruction. Reportez-vous à Attributs communs pour les défauts liés aux opérandes
Exécution
Bloc fonctionnel
Condition/état | Action entreprise |
|---|---|
Préscrutation | Les bits EnableIn et EnableOut sont définis sur faux. |
Tag.EnableIn est faux | Les bits EnableIn et EnableOut sont définis sur faux. |
Tag.EnableIn est vrai | EnableIn et EnableOut sont définis sur vrai. L'instruction s'exécute. |
Première exécution de l'instruction | N/A |
Première scrutation de l'instruction | Recalculer les coefficients. |
Post-scrutation | Les bits EnableIn et EnableOut sont définis sur faux. |
Texte structuré
Condition/état | Action entreprise |
|---|---|
Préscrutation | Reportez-vous à Pré-scrutation dans le tableau Bloc fonctionnel. |
Exécution normale | Reportez-vous à Tag.EnableIn est vrai dans le tableau Bloc fonctionnel. |
Post-scrutation | Reportez-vous à Post-scrutation dans le tableau Bloc fonctionnel. |
Exemple
L’instruction HPF atténue les signaux qui apparaissent sous la fréquence de coupure configurée. Cette instruction est généralement utilisée pour filtrer les « bruits » ou les nuisances de basse fréquence d’origine électrique ou mécanique. Vous pouvez choisir un ordre des filtres spécifique pour atteindre des degrés d’atténuation variés. Veuillez noter que des ordres plus élevés augmentent le temps d'exécution de l’instruction de filtre.
Le graphique suivant explique le résultat des divers ordres des filtres pour une fréquence de coupure donnée. Pour chaque graphique, des approximations asymptotiques idéales sont données avec gain et fréquence dans des échelles logarithmiques. La réponse actuelle des filtres approche ces courbes mais sans correspondance exacte.
Cet exemple est la programmation réglementaire minimale du bloc fonctionnel HPF et ne sert qu'à afficher le texte neutre et le code généré pour cette instruction. Ce contenu est fourni à usage interne uniquement et ne constitue pas un cas de test.
Filtre | Graphique |
|---|---|
Filtre de 1er ordre | ![]() |
Filtre de 2e ordre | ![]() |
Filtre de 3e ordre | ![]() |
Bloc fonctionnel

Texte structuré
HPF_01.In := Velocity_Feedback;
HPF_01.WLead := Cutoff_frequency;
HPF_01.Order := 2;
HPF(HPF_01);
filtered_velocity_output := HPF_01.Out
Fournir une réponse









