Mini Défi #3 : TON ou TP ? Résolu

Maitre du Jeu 13/06/2025 Apprentissage PLC > Exercices et projets d'entraînement

🔧 Contexte :

Tu dois programmer un cycle de graissage automatique sur une machine.

L’objectif est simple :

Activer une pompe pendant 5 secondes toutes les 60 secondes.

 

❓ Question :

Quel(s) temporisateur(s) utiliser pour réaliser cette séquence de manière fiable ?

💡 Tu peux utiliser des blocs standards type TON, TP, TOF, CTU...

 

🎯 Objectif :

Obtenir une séquence cyclique propre et stable, sans bug d’enchaînement ou déclenchement intempestif.

💬 Propose ta logique ST, ton câblage Ladder, ou simplement ton raisonnement !

 

📅 Solution officielle lundi, avec validation d’une réponse 🏅
N’oublie pas : chaque like sur ta réponse te donne de l’XP, et la meilleure solution est doublée.

Réponses

13/06/2025 12:14

13/06/2025 16:17

Salut,

Je me suis amusé à copier ton code sur plcIOsim. La sortie reste toujours active :

https://plciosim.com/share/1b75cae8-7a11-4bb1-9c26-e1bc2032e167

A+

13/06/2025 16:22

Excatement , je viens de le constater tester celui la , une erreru de saisie

13/06/2025 17:24

Je me demande, le Dcy_graissage empêche le renouvellement cyclique non ? Ne faudrait-il pas l'enlever ? Afin que ce cycle 5s et 60s tourne à l'infini ? 🤔

13/06/2025 18:20

Hello @Koalo097 , pas spécialement on peut enlever le dcy_graiisage comment tu le suggere mais ca ne derange pas la logique le but etant de lancer ta tempo (TON_3).

14/06/2025 13:55

Je me lance, à ma façon. Je trouve cette plate-forme ludique avec un réel intérêt quant à l'apprentissage.  Merci au Maître du jeu et aux differents intervenants ;-) 

Code : 

//---Déclarations de variables---

VAR
//Temporisateur pour la période d'attente de 60 secondes :
    TON_60s    : TON;  
//Temporisateur pour l'impulsion de 5 secondes :
    TON_5s     : TON; 
//Sortie vers la pompe :
    Pompe_ON   : BOOL; 
END_VAR

//---Exécution des temporisations---

//1. Activation de la temporisation cyclique TON de 60s laquelle est active uniquement lorsque la temporisation TON_5s est inactive :

TON_60s(
    IN := NOT TON_5s.Q,  
    PT := T#60s
);

//2. Activation de la temporisation TON de 5s laquelle est active uniquement lorsque TON_60s est inactive :

TON_5s(
    IN := TON_60s.Q,      //se déclenche uniquement quand les 60s sont écoulées
    PT := T#5s            
);

//3. Activation de la pompe pendant les 5 secondes du TON_5s
Pompe_ON := TON_5s.Q;     

Merci pour vos commentaires/corrections.

14/06/2025 15:12

Bonjour, moi j'avoue j'abuse de la fonction blink asymétrique pour ce genre de fonctionnement, petite méthode de fainéant ?

En fait je fais clignoter ma sortie, genre ici pour l'exemple, temps de off 60s, temps de on 5s

14/06/2025 15:19

Après tous les automates n'ont pas cette fonction rapide donc j'attends la réponse du maître pour apprendre une nouvelle méthode d'automaticien 😉