Guide : Comment Créer un Programme Ladder Simple pour un Automate Programmable Industriel (API)
Le langage Ladder est l’un des langages de programmation les plus utilisés pour les automates programmables industriels (API). Ce guide de 2500 mots vous fournira une approche détaillée pour créer un programme Ladder simple, en passant par les concepts de base jusqu’à la mise en œuvre finale.
Introduction au Langage Ladder et aux Automates Programmables Industriels (API)
Les automates programmables industriels (API) sont des dispositifs électroniques utilisés pour contrôler des machines ou des processus industriels. Le langage Ladder, également connu sous le nom de schéma à contacts, est un langage de programmation graphique basé sur des représentations graphiques de circuits électriques. Il est particulièrement apprécié pour sa lisibilité et sa facilité d’utilisation.
Illustration : Structure de base d’un programme Ladder
(Alimentation) |---[ Entrée ]---( Sortie )
1. Comprendre les Composants Essentiels d’un API
Avant de plonger dans la création d’un programme Ladder, il est crucial de comprendre les composants d’un API et leur rôle dans le processus de contrôle industriel.
1.1 Entrées (I/O)
Les entrées sont les signaux que l’API reçoit des capteurs, interrupteurs ou autres dispositifs. Ces signaux sont utilisés pour déterminer l’état des éléments à contrôler.
- Exemples : Boutons poussoirs, capteurs de proximité, interrupteurs.
1.2 Sorties
Les sorties sont les actions que l’API déclenche en fonction des conditions programmées. Elles peuvent activer ou désactiver des appareils tels que des moteurs, des lumières, ou des alarmes.
- Exemples : Moteurs, lampes, alarmes.
1.3 Le CPU de l’API
Le CPU est le cerveau de l’API. Il exécute le programme Ladder en scannant les entrées, en traitant les informations selon la logique programmée, et en activant les sorties correspondantes.
1.4 Alimentation et Communication
L’API nécessite une alimentation pour fonctionner et dispose souvent de ports de communication pour interagir avec d’autres systèmes ou être programmé à distance.
2. Définir les Besoins et Objectifs du Programme
Avant de commencer la programmation, il est essentiel de définir clairement ce que le programme doit accomplir. Pour cela, répondez aux questions suivantes :
- Quel processus ou machine le programme va-t-il contrôler ?
- Quelles sont les conditions de déclenchement des sorties ?
- Quelles sont les priorités en termes de sécurité ?
2.1 Exemples d’Objectifs
- Exemple 1 : Démarrer un moteur lorsque deux capteurs sont activés simultanément.
- Exemple 2 : Allumer une lumière lorsqu’un détecteur de mouvement est activé ou lorsqu’un interrupteur est pressé.
- Exemple 3 : Arrêter une machine automatiquement si un bouton d’arrêt d’urgence est pressé.
3. Schéma de câblage et planification des I/O
Une fois les objectifs définis, il est temps de planifier le câblage des entrées et sorties. Cela implique de déterminer quels dispositifs seront connectés à quelles entrées et sorties de l’API.
3.1 Identifier les Points d’Entrée
- Capteurs de Sécurité : I1, I2
- Bouton de Démarrage : I3
- Bouton d’Arrêt d’Urgence : I4
3.2 Identifier les Points de Sortie
- Moteur : Q1
- Lumière : Q2
Illustration : Schéma de câblage simplifié
[ I1 ] -> Capteur de Sécurité 1
[ I2 ] -> Capteur de Sécurité 2
[ I3 ] -> Bouton de Démarrage
[ I4 ] -> Bouton d'Arrêt d'Urgence
[ Q1 ] -> Moteur
[ Q2 ] -> Lumière
4. Écriture du Programme Ladder
Nous allons maintenant passer à l’écriture du programme Ladder. Ce programme sera structuré en plusieurs “échelons” (rungs), chaque échelon représentant une condition logique à vérifier pour activer ou désactiver une sortie.
4.1 Programmation d’une Condition de Démarrage Simple
Objectif : Démarrer un moteur lorsque les deux capteurs de sécurité sont activés et que le bouton de démarrage est pressé.
Diagramme Ladder :
(Alimentation) |---[ I1 ]---[ I2 ]---[ I3 ]---( Q1 )
Explication :
I1
etI2
: Capteurs de sécurité.I3
: Bouton de démarrage.Q1
: Moteur activé.
Dans cet échelon, le moteur (Q1
) ne sera activé que si les capteurs de sécurité (I1
et I2
) sont activés et que le bouton de démarrage (I3
) est pressé.
4.2 Programmation d’une Condition d’Arrêt
Objectif : Arrêter le moteur immédiatement si le bouton d’arrêt d’urgence est pressé.
Diagramme Ladder :
(Alimentation) |---[ I4 ]---------------------(/ Q1)
Explication :
I4
: Bouton d’arrêt d’urgence./Q1
: Désactivation du moteur.
Ce second échelon garantit que le moteur s’arrête dès que le bouton d’arrêt d’urgence est pressé, indépendamment des autres conditions.
5. Utilisation des Temporisations (Timers)
Les temporisateurs (timers) sont des éléments cruciaux dans un programme Ladder, permettant de retarder ou prolonger une action. Par exemple, on peut vouloir retarder l’arrêt d’un moteur après que le bouton d’arrêt a été pressé.
5.1 Temporisateur ON-Delay (TON)
Objectif : Continuer à faire fonctionner le moteur pendant 5 secondes après que le bouton d’arrêt est pressé.
Diagramme Ladder :
(Alimentation) |---[ I3 ]--------------------[ TON, T=5s ]---( Q1 )
Explication :
TON
: Temporisateur qui retarde l’arrêt de la sortieQ1
de 5 secondes après l’activation deI3
.
5.2 Temporisateur OFF-Delay (TOF)
Objectif : Éteindre la lumière 10 secondes après que le détecteur de mouvement ne détecte plus de présence.
Diagramme Ladder :
(Alimentation) |---[ Détecteur_Mouvement ]---( Q2 )
|---[ /Détecteur_Mouvement ]---[ TOF, T=10s ]---(/ Q2 )
Explication :
TOF
: Temporisateur qui maintient la lumière allumée (Q2
) pendant 10 secondes après que le détecteur de mouvement ne détecte plus de mouvement.
6. Utilisation des Compteurs (Counters)
Les compteurs sont utiles pour suivre le nombre d’événements ou pour créer des conditions basées sur le nombre d’occurrences.
6.1 Compteur Ascendant (CTU)
Objectif : Allumer une alarme après que la porte de sécurité a été ouverte trois fois.
Diagramme Ladder :
(Alimentation) |---[ Porte_Ouverte ]---[ CTU, C=3 ]---( Alarme )
Explication :
CTU
: Compteur ascendant qui incrémente chaque fois que la porte est ouverte. Lorsque le compteur atteint 3, l’alarme est activée (Alarme
).
6.2 Compteur Descendant (CTD)
Objectif : Déclencher une alarme si un processus est répété moins de deux fois avant une certaine action.
Diagramme Ladder :
(Alimentation) |---[ Action_Répétée ]---[ CTD, C=2 ]---( Alarme )
Explication :
CTD
: Compteur descendant qui décrémente à chaque action répétée. Si le compteur descend en dessous de 2, l’alarme se déclenche.
7. Débogage et Test du Programme Ladder
Une fois que le programme est écrit, il est essentiel de le tester minutieusement pour vérifier qu’il fonctionne correctement et qu’il répond à toutes les conditions prévues.
7.1 Utilisation des Outils de Simulation
De nombreux logiciels de programmation Ladder incluent des simulateurs intégrés qui permettent de tester le programme sans avoir à le charger sur un API réel.
- Étape 1 : Simuler les conditions d’entrée pour vérifier que le programme réagit correctement.
- Étape 2 : Observer les sorties pour s’assurer qu’elles sont activées et désactivées comme prévu.
7.2 Résolution des Problèmes Courants
- Problème : La sortie ne s’active pas.
- Solution : Vérifier que toutes les conditions d’entrée sont remplies et que le câblage est correct.
- Problème : La sortie reste activée en permanence.
- Solution : Vérifier s’il y a un contact qui reste fermé en permanence ou si un temporisateur n’est pas correctement configuré.
7.3 Test sur l’API Réel
Après les tests en simulation, il est crucial de tester le programme sur un API réel dans un environnement contrôlé. Cela permet de valider le programme dans des conditions réelles.
8. Documentation et Maintenance du Programme
Une bonne documentation est essentielle pour assurer la maintenance future du programme.
8.1 Création de Schémas de Documentation
- Schéma de câblage : Documenter le câblage réel des entrées et sorties.
- Diagrammes Ladder : Conserver une copie du programme Ladder avec des annotations.
8.2 Maintenance Préventive
Il est important de programmer des révisions régulières du programme pour s’assurer qu’il fonctionne toujours comme prévu, surtout si des modifications sont apportées au processus contrôlé par l’API.
8.3 Sauvegarde du Programme
Toujours garder une copie de sauvegarde du programme Ladder en cas de dysfonctionnement ou de besoin de réinitialisation.
💡La clé pour maîtriser le langage Ladder réside dans la pratique régulière et l’expérimentation avec des projets réels ou simulés. En suivant ces étapes, vous pourrez non seulement créer des programmes fonctionnels, mais aussi les adapter et les optimiser en fonction des besoins spécifiques de votre environnement industriel.
Cas Concret : Contrôle d’un Système de Convoyeur à Bande avec Programmation Ladder
Dans cet exemple concret, nous allons développer un programme Ladder pour contrôler un système de convoyeur à bande dans une usine. Ce programme inclut des fonctionnalités de démarrage, d’arrêt, et de gestion de la sécurité.
1. Description du Problème
Le convoyeur à bande doit répondre aux exigences suivantes :
- Démarrage du Convoyeur : Le convoyeur doit démarrer lorsque le bouton de démarrage est pressé, à condition que deux capteurs de sécurité soient activés.
- Arrêt du Convoyeur : Le convoyeur doit s’arrêter immédiatement si le bouton d’arrêt d’urgence est pressé, ou après une temporisation de 5 secondes si le bouton d’arrêt standard est utilisé.
- Détection de Surcharge : Si un capteur de surcharge détecte un excès de charge sur le convoyeur, le système doit s’arrêter immédiatement et déclencher une alarme.
2. Configuration des Entrées et Sorties
Pour ce cas, les entrées et sorties seront configurées comme suit :
Entrées :
- I1 : Capteur de sécurité 1 (NO – normalement ouvert)
- I2 : Capteur de sécurité 2 (NO)
- I3 : Bouton de démarrage (NO)
- I4 : Bouton d’arrêt standard (NO)
- I5 : Bouton d’arrêt d’urgence (NO)
- I6 : Capteur de surcharge (NO)
Sorties :
- Q1 : Moteur du convoyeur
- Q2 : Alarme de surcharge
Illustration : Configuration des I/O
Entrées : Sorties :
[ I1 ] Capteur Sécurité 1 [ Q1 ] Moteur
[ I2 ] Capteur Sécurité 2 [ Q2 ] Alarme Surcharge
[ I3 ] Bouton Démarrage
[ I4 ] Bouton Arrêt
[ I5 ] Arrêt d'Urgence
[ I6 ] Capteur Surcharge
3. Programmation du Programme Ladder
Le programme sera divisé en plusieurs rungs pour gérer les différentes fonctions du convoyeur.
Rung 1 : Démarrage du Convoyeur
Le convoyeur doit démarrer lorsque les deux capteurs de sécurité sont activés et que le bouton de démarrage est pressé.
Diagramme Ladder :
(Alimentation) |---[ I1 ]---[ I2 ]---[ I3 ]---( Q1 )
Explication :
I1
etI2
: Capteurs de sécurité.I3
: Bouton de démarrage.Q1
: Moteur du convoyeur.
Ce rung active le moteur (Q1
) uniquement lorsque les deux capteurs de sécurité (I1
et I2
) sont fermés et que le bouton de démarrage (I3
) est pressé.
Rung 2 : Arrêt du Convoyeur avec Temporisation
Le convoyeur doit s’arrêter après 5 secondes lorsque le bouton d’arrêt standard est pressé.
Diagramme Ladder :
(Alimentation) |---[ I4 ]-------------------[ TON, T=5s ]---( /Q1 )
Explication :
I4
: Bouton d’arrêt standard.TON
: Temporisateur qui retarde l’arrêt deQ1
de 5 secondes.
Le temporisateur (TON
) commence à compter lorsque le bouton d’arrêt (I4
) est pressé. Après 5 secondes, le moteur du convoyeur (Q1
) est désactivé.
Rung 3 : Arrêt d’Urgence
Le convoyeur doit s’arrêter immédiatement si le bouton d’arrêt d’urgence est pressé.
Diagramme Ladder :
(Alimentation) |---[ I5 ]---------------------(/Q1)
Explication :
I5
: Bouton d’arrêt d’urgence./Q1
: Désactivation immédiate du moteur du convoyeur.
Ce rung désactive immédiatement le moteur du convoyeur (Q1
) dès que le bouton d’arrêt d’urgence (I5
) est pressé.
Rung 4 : Détection de Surcharge
Le convoyeur doit s’arrêter immédiatement et une alarme doit se déclencher si une surcharge est détectée.
Diagramme Ladder :
(Alimentation) |---[ I6 ]---------------------(/Q1)
|---[ I6 ]----------------------( Q2 )
Explication :
I6
: Capteur de surcharge./Q1
: Désactivation immédiate du moteur.Q2
: Activation de l’alarme de surcharge.
Si le capteur de surcharge (I6
) est activé, le moteur du convoyeur (Q1
) s’arrête immédiatement, et l’alarme (Q2
) se déclenche.
4. Test et Simulation
Après avoir écrit le programme Ladder, il est important de le tester dans un simulateur pour vérifier que toutes les conditions fonctionnent correctement avant de l’implémenter sur un API réel.
Étapes de Test :
- Tester le Démarrage : Simuler l’activation des capteurs de sécurité et vérifier que le convoyeur démarre lorsque le bouton de démarrage est pressé.
- Tester l’Arrêt Standard : Simuler l’arrêt avec temporisation en appuyant sur le bouton d’arrêt standard.
- Tester l’Arrêt d’Urgence : Simuler l’arrêt immédiat en appuyant sur le bouton d’arrêt d’urgence.
- Tester la Surcharge : Simuler une surcharge et vérifier que le convoyeur s’arrête et que l’alarme se déclenche.
5. Conclusion
Ce cas concret montre comment programmer un système de contrôle pour un convoyeur à bande en utilisant le langage Ladder. Ce programme intègre des éléments de sécurité critiques, tels que l’arrêt d’urgence et la détection de surcharge, tout en gérant les opérations de démarrage et d’arrêt de manière efficace.
Avec ces étapes et ce programme type, vous êtes en mesure de comprendre et de mettre en œuvre un programme Ladder simple mais essentiel pour un API dans un environnement industriel. Le succès de ce type de projet réside dans une bonne planification des entrées/sorties, une logique Ladder claire, et des tests rigoureux pour s’assurer que le système fonctionne comme prévu.