// Chaque réseau = un 'rung' de logique// À gauche : alimentation// À droite : bobine (sortie, bit, fonction)Contact NO (Normalement Ouvert) # --| |--Contact NC (Normalement Fermé) # --|/|--Bobine (Sortie) # --( )--Bobine Set (Mise) # --(S)--Bobine Reset (Réarmement) # --(R)--// AND : contacts en sérieI0.0 --| |----| |--------( Q0.0 ) # I0.0 ET I0.1 I0.1// OR : contacts en parallèleI0.0 --| |-----------( Q0.1 ) # I0.0 OU I0.1I0.1 --| |--/I0.0 --| |--------(S M0.0) # Set M0.0I0.1 --| |--------(R M0.0) # Reset M0.0I0.0 --| |--------[TON T1, PT:=T#5s] # TON 5sT1.Q --| |--------( Q0.0 ) # Sortie temporiséeI0.1 --| |--------[TOF T2, PT:=T#3s]T2.Q --| |--------( Q0.1 )I0.2 --| |--------[TP T3, PT:=T#1s]T3.Q --| |--------( Q0.2 )I0.3 --| |--------[CTU C1, PV:=10] # Compteur jusqu’à 10C1.Q --| |--------( Q0.3 ) # Sortie quand atteintI0.4 --| |--------[CTD C2, PV:=10]C2.Q --| |--------( Q0.4 )I0.5 --| |--------[CTUD C3, PV:=10, CU:=I0.5, CD:=I0.6]C3.Q --| |--------( Q0.5 )I1.0 --| |--------[FC_Add IN1:=MW10, IN2:=MW20, OUT:=MW30]I1.1 --| |--------[FB_Moteur, DB_Moteur Start:=I1.1, Stop:=I1.2]// Réseau 1 : Commande moteur// Réseau 2 : Sécurité// Réseau 3 : Alarmes// Réseau 4 : Temporisations// Réseau 5 : Compteurs// Toujours commenter :// - la fonction du réseau// - les conditions de marche// - les conditions d’arrêt// Garder les réseaux simples et courts// Éviter les parallèles imbriqués complexes// Utiliser des FB pour les fonctions avec mémoire// Documenter chaque réseau// Utiliser des noms symboliques (pas d’adresses brutes)// Tester la logique avec PLCSIM avant le vrai PLC