Bonjour,
Petite question au sujet de temporiser l'exécution du programme.
En effet pour un projet j'utilise une automate S7-1500 1511 les entrées sorties sont sur des ilots déportés communicant en ModBus TCP.
Le soucie est le suivant, lors de la mise en route du système tout les défauts remontent étant donnée que toutes mes entrées défauts sont à 1 si tout va bien. Au démarrage les entrées sont toutes à 0 le temps que la com démarre est donc le système le perçois comme défaut. J'aurai aimer temporiser l'exécution des différent FC afin de laisser le temps à la com de démarrer et de lire les états d'entrées.
Temporisation démarrage OB1
-
JeremAuto07
- Générateur de blocs fonctions

- Messages : 145
- Enregistré le : 23 sept. 2019, 18:21
-
philou77
- Mi homme - Mi automate

- Messages : 2142
- Enregistré le : 21 oct. 2015, 10:00
- Localisation : Ile de France
Re: Temporisation démarrage OB1
Salut !
Pour éviter cela, ce que je fais en règle générale :
- On lance une tempo sur l’entrée présence tension
- A la fin de la tempo, on met un bit a 1 ( m0.0 par exemple)
- on utilise ce m0.0 dans chaque défaut pour inhiber le défaut le temps du démarrage de la cpu
Si tu n’a pas d’entrée présence tension, alors utilise les bits de démarrage pour lancer ta tempo
Pour éviter cela, ce que je fais en règle générale :
- On lance une tempo sur l’entrée présence tension
- A la fin de la tempo, on met un bit a 1 ( m0.0 par exemple)
- on utilise ce m0.0 dans chaque défaut pour inhiber le défaut le temps du démarrage de la cpu
Si tu n’a pas d’entrée présence tension, alors utilise les bits de démarrage pour lancer ta tempo
Si vous avez compris tout ce que je viens d'écrire, c'est que j'ai dû faire une erreur quelque part ! 
Re: Temporisation démarrage OB1
Bonjour,
ce que je fais moi, c'est une tempo en tête de l'OB1. Tant que la tempo n'est pas écoulée je fais un saut sur un label en fin de l'OB1.
Attention à ne pas sauter les blocs de gestion de la com
ce que je fais moi, c'est une tempo en tête de l'OB1. Tant que la tempo n'est pas écoulée je fais un saut sur un label en fin de l'OB1.
Attention à ne pas sauter les blocs de gestion de la com
-
philou77
- Mi homme - Mi automate

- Messages : 2142
- Enregistré le : 21 oct. 2015, 10:00
- Localisation : Ile de France
Re: Temporisation démarrage OB1
Personnellement, j'évite de ne pas scruter les blocs, dans la mesure du possible
Si vous avez compris tout ce que je viens d'écrire, c'est que j'ai dû faire une erreur quelque part ! 
-
JeremAuto07
- Générateur de blocs fonctions

- Messages : 145
- Enregistré le : 23 sept. 2019, 18:21
Re: Temporisation démarrage OB1
Merci pour vos réponses !
Si j'inhibe les défauts il faut également par sécurité que j'interdise les démarrages de cycles comme dans le conditions initiales la somme des défauts ne sera pas représentative de la réalité car inhibé.
De plus dans mon cas il faut que sur retour tension j'attende que les divers relais soit de nouveau en postions et ensuite lancer un acquittement général (identique eau BP acquittement)
Si j'inhibe les défauts il faut également par sécurité que j'interdise les démarrages de cycles comme dans le conditions initiales la somme des défauts ne sera pas représentative de la réalité car inhibé.
De plus dans mon cas il faut que sur retour tension j'attende que les divers relais soit de nouveau en postions et ensuite lancer un acquittement général (identique eau BP acquittement)
-
philou77
- Mi homme - Mi automate

- Messages : 2142
- Enregistré le : 21 oct. 2015, 10:00
- Localisation : Ile de France
Re: Temporisation démarrage OB1
Re !
Tant que la cpu n'a pas démarré, pas besoin d'afficher des défauts qui seraient erroné
Et oui, tant que la cpu n'a pas démarré, on ne fait rien...c'est aussi un principe général
par exemple
Un bloc de Marche pourrait ressembler a ceci !
U Presence Tension
Lancer Tempo Démarrage
U Tempop Demarrage
= CpuDemarrée
Call Bloc de défauts
U Bp_Marche (Utiliser un front montant)
U BP_Arrêt (c'est un NC !)
U CpuDemarrée
UN DéfautPrésent
U(
U Condition initiales de marche
O Bit _MiseEnService
]
= Bit_MiseEnService (il te faudra appuyer sur start une fois la cpu démarée)
U Clé_Auto
U Bit_MiseEnService
(
U Bp_Valid_Auto (utiliser un front montant)
O Bit_Auto
]
= Bit_Auto (il te faudra appuyer sur Valid Auto APRES, Avoir eu le Bit_MiseEnService)
Etc....
Tu peux aussi inhiber tes défaut avec le Bit_MiseEnService... qui revient presque au même que CpuDemarrée
Tant que la cpu n'a pas démarré, pas besoin d'afficher des défauts qui seraient erroné
Et oui, tant que la cpu n'a pas démarré, on ne fait rien...c'est aussi un principe général
par exemple
Un bloc de Marche pourrait ressembler a ceci !
U Presence Tension
Lancer Tempo Démarrage
U Tempop Demarrage
= CpuDemarrée
Call Bloc de défauts
U Bp_Marche (Utiliser un front montant)
U BP_Arrêt (c'est un NC !)
U CpuDemarrée
UN DéfautPrésent
U(
U Condition initiales de marche
O Bit _MiseEnService
]
= Bit_MiseEnService (il te faudra appuyer sur start une fois la cpu démarée)
U Clé_Auto
U Bit_MiseEnService
(
U Bp_Valid_Auto (utiliser un front montant)
O Bit_Auto
]
= Bit_Auto (il te faudra appuyer sur Valid Auto APRES, Avoir eu le Bit_MiseEnService)
Etc....
Tu peux aussi inhiber tes défaut avec le Bit_MiseEnService... qui revient presque au même que CpuDemarrée
Si vous avez compris tout ce que je viens d'écrire, c'est que j'ai dû faire une erreur quelque part ! 
-
JeremAuto07
- Générateur de blocs fonctions

- Messages : 145
- Enregistré le : 23 sept. 2019, 18:21
Re: Temporisation démarrage OB1
Re,
Merci pour vos retours messieurs
Par commodité j'ai opté pour la méthode de la temporisation en tête de l'OB1 et la création un bit "Start" qui empêche la lecture des défauts et la mise en marche des systèmes. En effet pour ce projet l'automate gère la régulation de température (CTA) de 10 pièces différentes. J'ai donc par zone créée un FC contenant les conditions de mise en route (2 lignes) et les quelques défauts concernant les éléments de la zone.
Merci pour vos retours messieurs
Par commodité j'ai opté pour la méthode de la temporisation en tête de l'OB1 et la création un bit "Start" qui empêche la lecture des défauts et la mise en marche des systèmes. En effet pour ce projet l'automate gère la régulation de température (CTA) de 10 pièces différentes. J'ai donc par zone créée un FC contenant les conditions de mise en route (2 lignes) et les quelques défauts concernant les éléments de la zone.
