Langage Ladder

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
Page d'aide sur l'homonymie Pour les articles homonymes, voir LD et Ladder.

Ladder Diagram (LD) ou Langage Ladder ou schéma à contacts est un langage graphique très populaire auprès des automaticiens pour programmer les Automates Programmables Industriels. Il ressemble un peu aux schémas électriques, et est facilement compréhensible.

Ladder est le mot anglais pour échelle.

Origine[modifier | modifier le code]

L'idée initiale du Ladder est la représentation de fonction logique sous la forme de schémas électriques. Cette représentation est originalement matérielle : quand l'Automate Programmable Industriel n'existait pas, les fonctions étaient réalisées par des câblages. Par exemple, pour réaliser un ET logique avec des interrupteurs, il suffit de les mettre en série. Pour réaliser un OU logique, il faut les mettre en parallèle.

Le Ladder a été créé et normalisé dans la norme CEI 61131-3. Il est, depuis, très utilisé dans la programmation des Automates Programmables Industriels.

Principe[modifier | modifier le code]

Un programme Ladder se lit de haut en bas et l'évaluation des valeurs se fait de gauche à droite. Les valeurs correspondent en fait, si on le compare à un schéma électrique, à la présence ou non d'un potentiel électrique à chaque nœud de connexion.

En effet, le Ladder est basé sur le principe d’une alimentation en tension représentée par deux traits verticaux reliée horizontalement par des bobines, des contacts et des blocs fonctionnels, d'où le nom 'Ladder' (échelle).

Les composants du langage[modifier | modifier le code]

Il existe 3 types d'élément de langage :

  • les entrées (ou contact), qui permettent de lire la valeur d'une variable booléenne ;
  • les sorties (ou bobines) qui permettent d'écrire la valeur d'une variable booléenne ;
  • les blocs fonctionnels qui permettent de réaliser des fonctions avancées.

Les entrées (ou contacts)[modifier | modifier le code]

Il existe deux types de contact :

  • Le contact normalement ouvert (NO) (en: NO normally open) :
   X
--| |--  

Ce contact est fermé lorsque la variable booléenne associée (X ici) est vraie, sinon, il est ouvert.

  • Le contact normalement fermé (NF) (en: NC normally closed) :
   X
--|/|-- 

Ce contact est ouvert lorsque la variable booléenne associée (X ici) est vraie, sinon il est fermé.

Les sorties (ou bobines)[modifier | modifier le code]

Il existe, de même que pour les contacts, deux types de bobines :

  • la bobine normalement ouverte (NO) (en: NO normally open) :
   X    
--( )--  

Si cette bobine est soumise à un potentiel, c’est-à-dire qu'il existe un circuit fermé reliant cette bobine des deux côtés du potentiel, alors la variable booléenne associée (X ici) est mémorisée à 'vraie', sinon elle est mémorisée à 'fausse'.

  • la bobine normalement fermée(NF) (en: NC normally closed) :
   X
--(/)-- 

Si cette bobine est soumise à un potentiel, c’est-à-dire qu'il existe un circuit fermé reliant cette bobine des deux côtés du potentiel, alors la variable booléenne associée (X ici) est mémorisée à 'fausse', sinon elle est mémorisée à 'vraie'.

Réalisation de fonction logique[modifier | modifier le code]

Comme dit précédemment, les fonctions logiques sont dérivées de leurs réalisations électriques. Donc chaque fonction logique (AND, OR, XOR, NAND, NOR, NOT) a une représentation qui correspond à son équivalent électrique.

C'est-à-dire :

 ---| |-----| |---
     X       Y 

équivaut à X AND Y

 ---|\|-----| |---    
     X       Y

équivaut à NOT(X) AND Y

 ----|---| |---|------
     |    X    |
     |         |
     +---| |---+
          Y          

équivaut à X OR Y

Plus complexe :

 ----| |---------|--| |--|------( )--
      X          |   Y   |       S
                 |       |
                 +--| |--+
                     Z

équivaut à S = X.(Y+Z)

Exemple de lecture[modifier | modifier le code]

|----| |----+----|/|------------------------------------------( )----|
|     A     |     F                                            S     |
|           |                                                        |
|----| |----+                                                        |
      B

Dans ce réseau, si A OU B est actionné ET si F n'est pas actionné, la sortie S est active; soit S = (A+B)./F

S := (A + B) . (/F) ;

Le signe "/F" signifie l'inversion de l'entrée "F", cela se prononce "F barre".

Voir aussi[modifier | modifier le code]

Sur les autres projets Wikimedia :

Article connexe[modifier | modifier le code]