IA en automatisation industrielle

Guide de l’article

Comment implémenter un filtre de retard du premier ordre en Ladder Logic

Apprenez à implémenter un filtre de retard du premier ordre en Ladder Logic pour lisser les signaux analogiques bruités, régler l'alpha, prendre en compte le temps de cycle et valider la réponse en toute sécurité dans OLLA Lab.

Réponse directe

Un filtre de retard du premier ordre en Ladder Logic est un filtre numérique passe-bas qui lisse les entrées analogiques bruitées en combinant la valeur brute actuelle avec la valeur filtrée précédente à l'aide d'une constante de pondération, l'alpha. En pratique, il peut réduire l'instabilité PID causée par le bruit tout en introduisant un délai de réponse réglable qui doit être validé avant le déploiement.

Ce à quoi cet article répond

Résumé de l’article

Un filtre de retard du premier ordre en Ladder Logic est un filtre numérique passe-bas qui lisse les entrées analogiques bruitées en combinant la valeur brute actuelle avec la valeur filtrée précédente à l'aide d'une constante de pondération, l'alpha. En pratique, il peut réduire l'instabilité PID causée par le bruit tout en introduisant un délai de réponse réglable qui doit être validé avant le déploiement.

Les signaux analogiques bruts ne sont pas automatiquement exploitables simplement parce que le transmetteur est étalonné. Dans les installations réelles, les signaux 4–20 mA et 0–10 V captent régulièrement du bruit provenant des interférences électromagnétiques (EMI), des problèmes de mise à la terre, des conditions de processus turbulentes et des vibrations mécaniques. Si ce bruit est injecté directement dans la logique de contrôle, l'automate réagit à la perturbation plutôt qu'à la réalité du processus. Les actionneurs finissent alors par osciller, vibrer et s'user prématurément.

Lors des tests de validation dans OLLA Lab, l'injection d'une onde de bruit haute fréquence de 2 mA crête à crête dans un signal de pression simulé de 4–20 mA a produit une variance de 15 % dans la sortie de l'actionneur PID. L'application d'un filtre de retard du premier ordre avec un alpha = 0,15 a réduit la variance de l'actionneur à 1,2 % dans le même scénario. Méthodologie : n=12 cycles de simulation répétés sur une tâche de boucle de pression, comparateur de référence = chemin du signal non filtré, fenêtre temporelle = 10 minutes de temps d'exécution simulé par cycle. Cela confirme que le filtrage logiciel peut stabiliser matériellement une boucle bruitée dans un cas de simulation délimité. Cela ne constitue pas une règle de réglage universelle pour tous les processus, instruments ou temps de cycle.

Qu'est-ce qu'un filtre de retard du premier ordre dans la programmation d'automates ?

Un filtre de retard du premier ordre est un filtre passe-bas logiciel qui réduit les fluctuations à court terme d'un signal en mélangeant l'entrée actuelle avec le résultat filtré précédent au fil des cycles de scrutation de l'automate. Dans la pratique du contrôle, il est souvent implémenté sous forme de moyenne mobile exponentielle (EMA).

La forme discrète standard est :

Y_n = (alpha × X_n) + ((1 - alpha) × Y_n-1)

Où :

  • X_n = entrée brute
  • alpha = constante de filtrage
  • Y_n-1 = valeur filtrée précédente
  • Y_n = nouvelle valeur filtrée

Interprétation :

  • alpha = 1,0 signifie aucun filtrage
  • un alpha plus faible signifie un lissage plus important et plus de retard

La distinction clé est simple : il ne s'agit pas de faire la moyenne d'une fenêtre fixe d'échantillons ; il s'agit de pondérer récursivement l'historique. Cela le rend léger en termes de calcul et facile à implémenter en Ladder Logic.

Pourquoi l'appelle-t-on filtre de retard ?

On l'appelle filtre de retard car la sortie réagit intentionnellement plus lentement que l'entrée brute. Ce délai n'est pas nécessairement un défaut. C'est le compromis à accepter pour rejeter le bruit haute fréquence.

L'objectif technique n'est pas de rendre la tendance plus propre visuellement. L'objectif est d'éliminer les variations inutiles sans retarder le signal de processus au point de dégrader la qualité du contrôle.

Pourquoi le filtrage logiciel est-il nécessaire pour les signaux analogiques 4–20 mA ?

Le filtrage logiciel est nécessaire car la propreté du matériel et la précision du transmetteur n'éliminent pas le bruit dynamique au niveau du contrôle. Un signal peut être électriquement valide tout en étant opérationnellement inutile.

Les sources courantes de dégradation du signal incluent :

  • Les interférences électromagnétiques (EMI) provenant des variateurs de fréquence (VFD), des câbles moteurs, des relais et d'un câblage de puissance et d'instrumentation mal séparé
  • Les boucles de masse et les défauts de blindage
  • Les vibrations mécaniques affectant les dispositifs de pression, de débit et de niveau
  • La turbulence du processus telle que les éclaboussures, la cavitation et la pulsation
  • La granularité de la conversion A/N et l'interaction avec le temps de cycle

Pourquoi le bruit non filtré nuit-il aux performances de contrôle ?

Le bruit non filtré dégrade les performances de contrôle car le contrôleur traite chaque changement comme potentiellement significatif, sauf indication contraire. C'est particulièrement problématique dans les boucles utilisant une action dérivée.

Trois modèles de défaillance courants sont :

  • L'oscillation de la sortie (hunting)
  • L'amplification de la dérivée
  • L'usure mécanique due aux mouvements inutiles de l'actionneur

C'est pourquoi le filtrage logiciel fait souvent partie de la discussion lorsque la qualité analogique est suspecte, bien que ce ne soit pas une solution universelle ni à appliquer aveuglément.

Comment écrire un filtre passe-bas numérique en schéma à contacts (Ladder Diagram - LD) ?

Vous écrivez un filtre de retard du premier ordre en Ladder Logic en calculant la contribution pondérée de l'entrée brute et de la valeur filtrée précédente, en les additionnant, puis en stockant le résultat pour le cycle suivant. L'implémentation peut utiliser des blocs mathématiques séparés ou une instruction de calcul unique, selon la plateforme de l'automate.

Structure logique étape par étape

  1. Calculez le poids de l'entrée brute en multipliant l'entrée brute par alpha.
  2. Calculez le poids historique en soustrayant alpha de 1,0 et en multipliant ce résultat par la valeur filtrée précédente.
  3. Additionnez les deux termes pondérés pour produire la nouvelle valeur filtrée.
  4. Mettez à jour le tag historique afin qu'il soit disponible au cycle suivant.

Exemple d'implémentation Ladder

[Langage : Ladder Diagram]

// Rung 1 : Exécuter le calcul du retard du premier ordre CPT Dest : Tag_Filtered_Current Expression : (Tag_Raw_Input Tag_Alpha) + (Tag_Filtered_Previous (1.0 - Tag_Alpha))

// Rung 2 : Mettre à jour le tag historique pour le prochain cycle MOV Source : Tag_Filtered_Current Dest : Tag_Filtered_Previous

De quels tags avez-vous besoin ?

Au minimum, définissez :

  • `Tag_Raw_Input` — entrée analogique mise à l'échelle
  • `Tag_Alpha` — constante de filtrage en tant que REAL
  • `Tag_Filtered_Current` — résultat filtré actuel
  • `Tag_Filtered_Previous` — résultat filtré conservé du cycle précédent

Quel détail d'exécution est le plus important ?

L'ordre d'exécution est crucial car il s'agit d'un calcul récursif. Si vous écrasez la valeur historique trop tôt, le filtre cesse de se comporter comme prévu.

Comment initialiser un filtre de retard du premier ordre dans un automate ?

Vous devez initialiser un filtre de retard du premier ordre de sorte que la valeur historique parte d'une condition connue, généralement l'entrée brute actuelle au démarrage ou au premier cycle. Cela évite une grande transition artificielle lorsque le filtre commence à s'exécuter.

Les stratégies d'initialisation courantes incluent :

- Initialisation au premier cycle : définir `Tag_Filtered_Previous = Tag_Raw_Input` lors du premier cycle du programme - Initialisation lors du changement de mode : réinitialiser lors du passage du mode manuel au mode automatique si un historique obsolète risque de fausser la réponse - Initialisation après récupération de défaut : réinitialiser après une condition d'entrée erronée ou un événement de remplacement de capteur

Le bon choix dépend de la criticité du processus et de la philosophie de contrôle.

Comment choisir la valeur alpha pour un filtre de retard du premier ordre ?

Vous choisissez l'alpha en équilibrant l'atténuation du bruit et le délai de réponse. Des valeurs d'alpha plus faibles lissent plus agressivement mais augmentent le retard. Des valeurs d'alpha plus élevées préservent la réactivité mais rejettent moins de bruit.

Une interprétation pratique est :

- Alpha élevé, par exemple 0,6 à 0,9 : filtrage léger, réponse rapide, suppression du bruit limitée - Alpha modéré, par exemple 0,2 à 0,5 : lissage et réactivité équilibrés - Alpha faible, par exemple 0,05 à 0,15 : lissage fort, réponse plus lente, risque de déphasage plus important

Ces plages sont heuristiques, pas des réglages universels. La valeur correcte dépend de :

  • la constante de temps du processus
  • le temps de cycle de l'automate
  • le comportement du capteur
  • l'objectif de contrôle
  • si le signal filtré alimente une indication, une alarme ou un contrôle en boucle fermée

Quel est le principal compromis de réglage ?

Le compromis principal est la fluidité par rapport au déphasage.

Si l'alpha est trop élevé :

  • le signal reste bruité
  • le PID réagit toujours à la perturbation
  • l'usure de l'actionneur peut rester élevée

Si l'alpha est trop faible :

  • la boucle voit le processus trop tard
  • le rejet des perturbations se détériore
  • le contrôleur peut devenir lent ou instable pour une raison différente

Remplacer le bruit par du retard n'est pas nécessairement une amélioration.

Comment le temps de cycle affecte-t-il le comportement du filtre de retard du premier ordre ?

Le temps de cycle affecte le comportement du filtre car l'équation s'exécute une fois par cycle, et le lissage effectif dépend de la fréquence de la mise à jour récursive. La même valeur d'alpha ne produit pas le même effet dynamique si le timing d'exécution de la tâche change matériellement.

Cela est important à trois égards :

  • Une exécution plus rapide modifie la réponse temporelle effective
  • Une exécution plus lente augmente le délai apparent entre les corrections significatives
  • Une exécution irrégulière (jitter) peut fausser les performances attendues du filtre, surtout dans les boucles finement réglées

Pour une validation sérieuse, l'alpha ne doit pas être sélectionné isolément des caractéristiques du temps de cycle. Un filtre réglé dans un contexte d'exécution peut se comporter différemment dans un autre.

Comment tester la réponse du filtre face aux EMI simulées dans OLLA Lab ?

Vous testez la réponse du filtre dans OLLA Lab en injectant un bruit analogique contrôlé dans un signal simulé, en appliquant le filtre en Ladder Logic et en comparant le comportement brut par rapport au comportement filtré dans le panneau des variables avant tout déploiement réel.

En termes de produit délimité, OLLA Lab sert d'environnement de validation et de répétition pour les tâches de mise en service à haut risque. Il ne confère pas de compétence sur site, de certification ou de qualification de sécurité fonctionnelle. Ce qu'il fournit, c'est un endroit contrôlé pour observer, diagnostiquer et affiner la logique de contrôle par rapport à un comportement de processus réaliste avant qu'il n'atteigne un processus réel.

Flux de travail de validation dans OLLA Lab

  • Injectez du bruit dans le signal analogique en utilisant une perturbation haute fréquence sur une ligne de base stable
  • Construisez le filtre dans l'éditeur Ladder
  • Analysez les deux valeurs dans le panneau des variables
  • Ajustez l'alpha délibérément
  • Observez le comportement du contrôle en aval
  • Révisez et testez à nouveau

Que faut-il rechercher lors de la validation ?

Recherchez des preuves, pas de l'esthétique :

  • Le signal filtré supprime-t-il l'oscillation haute fréquence ?
  • La sortie PID devient-elle matériellement plus stable ?
  • Le filtre retarde-t-il trop les changements réels du processus ?
  • Les alarmes se clarifient-elles, ou arrivent-elles désormais en retard ?
  • Le comportement révisé reste-t-il acceptable face à de multiples perturbations ?

Une ligne de tendance stable ne suffit pas. La boucle doit toujours représenter le processus à une vitesse utile.

Quelles preuves techniques devez-vous conserver après un exercice de filtrage ?

Vous devez conserver un ensemble compact de preuves techniques, pas seulement des captures d'écran. L'objectif est de documenter le raisonnement, la réponse aux défauts et la qualité de la révision de manière à ce qu'un autre ingénieur puisse les auditer.

Utilisez cette structure :

1. Description du système : élément de processus, type de signal, plage de mise à l'échelle, contexte du cycle et utilisation de la valeur filtrée 2. Définition opérationnelle du comportement correct : bruit réduit, variance de l'actionneur limitée, aucun retard de contrôle inacceptable et aucun bavardage d'alarme intempestif 3. Logique Ladder et état de l'équipement simulé : logique implémentée, rôles des tags, conditions initiales et état du processus simulé 4. Cas de défaut injecté : type de perturbation, amplitude, fréquence, modèle de turbulence ou profil de gigue du capteur 5. Révision effectuée : alpha sélectionné, changements d'initialisation et tout ajustement PID ou d'alarme en aval 6. Leçons apprises : ce qui s'est amélioré, ce qui s'est dégradé et ce qui reste incertain

Quelles normes et littérature sont importantes lors de la validation des signaux analogiques filtrés ?

Aucune norme unique ne vous indique exactement quel alpha utiliser pour chaque boucle, mais plusieurs corpus de littérature et conseils soutiennent les préoccupations techniques sous-jacentes : qualité du signal, comportement logiciel, limites de sécurité et discipline de validation.

Les références pertinentes incluent :

  • IEC 61508 pour la discipline plus large de la sécurité fonctionnelle et la rigueur du cycle de vie logiciel dans les systèmes électriques, électroniques et programmables
  • Les conseils d'exida pour une interprétation pratique des préoccupations liées au cycle de vie de la sécurité et à la validation des systèmes de contrôle
  • La littérature IFAC et sur le contrôle de processus pour le filtrage, les performances des boucles et les compromis bruit-réponse
  • La littérature sur l'instrumentation et les capteurs pour le comportement du bruit, l'incertitude de mesure et le conditionnement dynamique du signal

Une limite nécessaire : l'utilisation d'un filtre dans un environnement de formation ou de validation n'établit pas en soi l'intégrité de sécurité, la conformité ou l'adéquation à une fonction instrumentée de sécurité. Le filtrage peut améliorer la qualité du contrôle, mais il ne remplace pas l'examen technique.

Quand faut-il éviter ou limiter le filtrage par retard du premier ordre ?

Vous devez éviter ou limiter le filtrage par retard du premier ordre lorsque la vitesse de réponse est plus importante que la réduction du bruit, ou lorsque le filtrage pourrait masquer un changement de processus réel et pertinent pour la sécurité.

Soyez prudent dans des cas tels que :

  • les déclenchements de protection rapides
  • la logique de permission critique
  • les transitions de lots (batch) changeant rapidement
  • les applications de combustion ou de contrôle de pression avec des exigences dynamiques strictes
  • tout chemin de signal où un retard pourrait aggraver l'exposition au danger

La bonne question n'est pas "puis-je lisser ce signal". La bonne question est "quelle décision devient plus lente si je le fais".

Conclusion

Un filtre de retard du premier ordre est l'un des moyens les plus pratiques de nettoyer un signal analogique bruité en Ladder Logic, mais sa valeur dépend d'un réglage et d'une validation disciplinés. L'équation est simple. Les conséquences ne le sont pas.

L'objectif technique est d'atténuer les variations inutiles sans aveugler le contrôleur sur les mouvements réels du processus. Cela nécessite une attention particulière à la sélection de l'alpha, à l'initialisation, au timing du cycle et au comportement de la boucle en aval. Cela nécessite également un endroit pour tester ces interactions en toute sécurité.

C'est le rôle délimité d'OLLA Lab : un environnement basé sur le web où les ingénieurs peuvent construire une logique Ladder, injecter des perturbations réalistes, observer le comportement des E/S, comparer l'état de l'équipement simulé avec l'état de la logique et réviser la logique avant de toucher à un processus réel.

Continuez à explorer

Interlinking

References

Transparence éditoriale

Cet article de blog a été rédigé par un humain, avec toute la structure de base, le contenu et les idées originales créés par l’auteur. Toutefois, cet article inclut un texte affiné avec l’assistance de ChatGPT et Gemini. L’IA a été utilisée exclusivement pour corriger la grammaire et la syntaxe, ainsi que pour traduire le texte original en anglais vers l’espagnol, le français, l’estonien, le chinois, le russe, le portugais, l’allemand et l’italien. Le contenu final a été relu, édité et validé de manière critique par l’auteur, qui en assume l’entière responsabilité quant à son exactitude.

À propos de l’auteur:PhD. Jose NERI, Lead Engineer at Ampergon Vallis

Vérification: Validité technique confirmée le 2026-03-23 par l’équipe QA du laboratoire Ampergon Vallis.

Prêt pour la mise en œuvre

Utilisez des workflows appuyés par la simulation pour transformer ces enseignements en résultats mesurables pour l’installation.

© 2026 Ampergon Vallis. All rights reserved.
|