Technologie UAO 

La technologie UAO s’appuie sur la norme IEC 61499, qui est un langage de conception au niveau du système pour les systèmes d’information et de contrôle distribués. Il ne s’agit pas d’un langage de programmation et il définit la manière de concevoir un système de contrôle distribué et la séparation entre l’application d’automatisation et le matériel, qui constitue la base des applications d’automatisation portables.

Le moteur d’exécution partagé est basé sur la norme IEC 61499

UniversalAutomation.org fournit une solution prête à l’emploi qui permet des architectures d’automatisation flexibles de l’industrie 4.0 et améliore considérablement le retour sur investissement grâce à la réutilisation et à la portabilité des applications d’automatisation.

UAO Runtime - ready to go

La norme IEC 61499

La norme IEC 61499 n’est pas un langage de programmation mais un langage de conception au niveau du système pour les systèmes d’information et de contrôle distribués. 

Voici quelques documents sur la norme IEC 61499 :

IEC 61499

Voici quelques éléments de base de cette norme :

1. Bloc de fonction piloté par événement (FB)

Elle commence par des blocs de fonction pilotés par les événements pour composer votre application.

Ces blocs de fonction peuvent être comparés à des composants logiciels au sens informatique du terme, ce qui facilite leur compréhension par les ingénieurs du monde de l’automatisation et de l’informatique.

Le comportement d’un bloc de fonction de base est défini sous la forme d’une machine à états pilotée par les événements, connue sous le nom de diagramme de contrôle d’exécution. L’état défini peut encapsuler un algorithme écrit dans n’importe quel langage, car la norme n’en définit aucun. Il est ensuite possible de construire un bloc de fonction composite, qui consiste en plusieurs blocs de fonction assemblés.

Un autre point est que les événements et les données sont liés par un “WITH constructs” qui facilite la liaison entre la messagerie événementielle et les systèmes informatiques, renforçant ainsi la convergence des systèmes informatiques et techniques. Cela permet aux systèmes d’automatisation d’exploiter les technologies informatiques (intelligence artificielle, apprentissage automatique, jumeaux initiaux…) de manière transparente. 

Pour les automaticiens, les blocs de fonction pilotés par les événements offrent les avantages suivants :

  • une programmation graphique 
  • Un contrôle précis de l’ordre d’exécution et du flux de données 

Pour l’ingénieur logiciel, les blocs de fonctions offrent : 

  • Objets 
  • Méthodes 
  • Une boîte noire pour encapsuler ma propriété intellectuelle 
  • Composants logiciels que je peux réutiliser à partir d’autres bibliothèques ou créer mes propres composants que quelqu’un d’autre pourrait utiliser
Event-driven function block

2. Découplage logiciel-matériel

Les applications peuvent ensuite être construites en mettant en réseau des composants logiciels graphiques indépendants du matériel, comme défini par le modèle d’application.

L’application ainsi construite peut être distribuée sur plusieurs appareils ou systèmes. C’est ce que nous appelons l’interopérabilité au niveau de l’application.

Le modèle d’application est indépendant des dispositifs matériels et des ressources informatiques sous-jacents qui exécuteront l’application. Ces dispositifs matériels et ces ressources informatiques sont définis par le modèle de dispositif et peuvent être des contrôleurs d’automatisation classiques comme les DCS/automates, des dispositifs de terrain intelligents (actionneurs…) ou des dispositifs d’informatique périphérique. 

software-hardware decoupling

3. La distribution

Le découpage d’une application et son déploiement sur le matériel/la ressource ciblé(e) sont définis par le modèle du système 

Distribution

En résumé,

le découplage du matériel et du logiciel est clairement défini par la norme IEC 61499 et offre de multiples avantages aux utilisateurs de l’automatisation : 

  • Plus de rentabilité : écrivez votre application une seule fois et réutilisez-la quel que soit le fournisseur de matériel
  • Plus de fiabilité et de sécurité grâce à des bibliothèques logicielles réutilisables et éprouvées
  • Les applications logicielles d’automatisation peuvent désormais être améliorées progressivement tout au long du cycle de vie des machines ou des processus
  • Votre solution d’automatisation est à l’épreuve de la fin de vie puisque vous pouvez réutiliser votre application logicielle, même lorsque le matériel d’automatisation est obsolète
  • Vous avez la possibilité d’intégrer et de réutiliser la propriété intellectuelle afin de protéger votre avantage concurrentiel ou d’obtenir un meilleur retour sur investissement en augmentant votre investissement logiciel
UAO benefits

Bloc de fonction activé par les événements

Le bloc de fonction activé par événement (FB) est un bloc sous-jacent qui consiste en une enveloppe graphique avec des broches d’entrée d’événement/d’entrée de données, des broches de sortie d’événement/d’entrée de données, une machine d’état interne (connue sous le nom de diagramme de contrôle d’exécution) et des algorithmes qui sont exécutés dans les différents états.

Lorsqu’une entrée d’événement est activée, un algorithme est déclenché qui prend les données des broches d’entrée et écrit les résultats sur les broches de sortie. 

Il convient de noter que : 

  • La norme ne définit pas le langage de programmation mais recommande l’utilisation des langages de la IEC 61131-3
  • Le FB n’agit que sur les variables locales. En ce sens, il s’agit d’un composant logiciel indépendant et autonome au sens informatique du terme
  • La nature graphique de l’application FB est familière aux automaticiens et se prête au débogage et à la mise en service
Event-driven function block

Composants indépendants du matériel

La norme IEC 61499 définit un monde de composants logiciels indépendants du matériel qui peuvent être “branchés” ensemble pour créer des applications et distribués à l’architecture matérielle de son choix, telle que définie par l’utilisateur. Le savoir-faire éprouvé (propriété intellectuelle) peut être encapsulé dans des boîtes noires permettant de nouveaux modèles commerciaux pour l’automatisation. 

Cependant, pour tenir les promesses de la norme IEC 61499, il faut une adoption généralisée. UniversalAutomation.org a été créé dans ce but. 

Hardware independent

Développements gérés par l’association

Le développement continu du moteur d’exécution est géré par les membres selon les principes de la source partagée. Les membres agissent collectivement, en partageant le développement technologique, les idées et les informations pour créer un moteur d’exécution commun. Cela jette les bases d’un marché de solutions d’automatisation “prêtes à l’emploi.

Development

La norme CEI 61499 aidera l’industrie à disposer d’une plate-forme commune pour différents types de fonctionnalités logicielles dans le domaine de l’automatisation, ce qui permettra aux organisations d’atteindre un certain niveau de fiabilité et de prévisibilité, ainsi que d’accroître la flexibilité des installations de production.

Valeriy Vyatkin Professeur d’ingénierie électrique à l’université d’Aalto

IEC61499_models