Salut les copains,
Dans un programme j'ai trouvé une erreur, oui oui, ca arrive! lol!
En fait une entrée qui est recopiée dans un bit, pour ensuite sur front montant de ce bit incrémenté un mot (mot:=mot+1)
Et plus loin dans le programme, exactement les mêmes ligne avec les mêmes bit et mot... je me suis dit basiquement, ho mon mot est incrémenté deux fois...
Du coup j'ai fais des essais, et selon vous qui est incrémenté, combien de fois (valeur des mots) et pourquoi?
J'aimerai bien comprendre le truc, et être sur avant de supprimer ce doublon.
Merci par avance.
Une histoire de front montant
Re: Une histoire de front montant
pourquoi faire simple quand on peut faire compliqué!
- nicekev
- Aguerri de l'automation

- Messages : 99
- Enregistré le : 25 avr. 2017, 11:37
- Localisation : Ici et là !
Re: Une histoire de front montant
A part si il voulait doubler son incrémentation (mais il aurait mis +2 au lieu de +1) sinon ça sert à rien !
Re: Une histoire de front montant
A froid comme ça, j'aurai tendance à dire que l'incrément ne fonctionne qu'une fois : quand le bit essai est mis à 1, le front doit marcher après car dans la mémoire du EBOOL l'état antérieur est différent de l'état actuel. Puis quand le bit essai est a nouveau mis à 1, l'état antérieur est actualisé à 1 donc le front ne fonctionne plus ensuite.chgui a écrit : ↑20 août 2026, 15:10 Salut les copains,
Dans un programme j'ai trouvé une erreur, oui oui, ca arrive! lol!
En fait une entrée qui est recopiée dans un bit, pour ensuite sur front montant de ce bit incrémenté un mot (mot:=mot+1)
Et plus loin dans le programme, exactement les mêmes ligne avec les mêmes bit et mot... je me suis dit basiquement, ho mon mot est incrémenté deux fois...
Du coup j'ai fais des essais, et selon vous qui est incrémenté, combien de fois (valeur des mots) et pourquoi?
Capture.jpg
J'aimerai bien comprendre le truc, et être sur avant de supprimer ce doublon.
Merci par avance.
C'est peut être pas ça, mais je ne dois pas être loin : une histoire d'état antérieur dans le EBOOL
- chgui
- Générateur de blocs fonctions

- Messages : 129
- Enregistré le : 20 oct. 2015, 08:05
- Localisation : Amiens
Re: Une histoire de front montant
Re,
J'ai bien dit, j'ai trouvé une erreur, et j'ai fait des essais, du coup la capture d'écran, c'est un essai!!!
Effectivement, pourquoi faire simple et si j'avais voulu incrémenté une variable deux fois, j'aurai fait +2... car dans ce cas l'incrément ne fonctionne qu'une seule fois.
En fait avant de supprimer " basiquement" la lignes, en doublon, je voulais comprendre pourquoi et être sur que ma variable n'est pas incrémentée deux fois...
Merci Seb pour ta réponse,
C'est bien la réflexion que je me suis fait aussi, car dans l'exemple essai n'est incrémentée qu'une fois, essai2 et essai3 ne sont pas incrémenté...
J'ai bien dit, j'ai trouvé une erreur, et j'ai fait des essais, du coup la capture d'écran, c'est un essai!!!
Effectivement, pourquoi faire simple et si j'avais voulu incrémenté une variable deux fois, j'aurai fait +2... car dans ce cas l'incrément ne fonctionne qu'une seule fois.
En fait avant de supprimer " basiquement" la lignes, en doublon, je voulais comprendre pourquoi et être sur que ma variable n'est pas incrémentée deux fois...
Merci Seb pour ta réponse,
C'est bien la réflexion que je me suis fait aussi, car dans l'exemple essai n'est incrémentée qu'une fois, essai2 et essai3 ne sont pas incrémenté...
-
Laurent
- Générateur de blocs fonctions

- Messages : 128
- Enregistré le : 20 oct. 2015, 11:16
- Localisation : Oise et Ile-de-France / France
Re: Une histoire de front montant
Salut,
ça permet de vérifier le fonctionnement des fronts dans l'API qui fait tourner le programme.
Sur certains API (les TSX série 7 par exemple), le bit d'état antérieur est mis à jour à chaque opération d'écriture sur le bit (l'état courant), ce qui "permet" de voir plusieurs fronts au cours du même cycle d'exécution.
Sur d'autres API (TSX Twido par exemple), le bit d'état précédent n'est mis à jour _que_ entre deux cycles d'exécution, on ne peut voir qu'un front, même si la variable EBOOL est écrite à 0 puis à 1 plusieurs fois au cours d'un même cycle.
Quand on s'appuie sur les instructions de front sur EBOOL dans un programme, ça peut être utile de vérifier comment celui-ci se comporte, d'autant que c'est paramétrables sur les API type M580, je crois.
Ca peut expliquer pourquoi un programme fonctionnait impec sur un vieil API, et qu'il merdoie une fois porté sur une nouvelle architecture.
ça permet de vérifier le fonctionnement des fronts dans l'API qui fait tourner le programme.
Sur certains API (les TSX série 7 par exemple), le bit d'état antérieur est mis à jour à chaque opération d'écriture sur le bit (l'état courant), ce qui "permet" de voir plusieurs fronts au cours du même cycle d'exécution.
Sur d'autres API (TSX Twido par exemple), le bit d'état précédent n'est mis à jour _que_ entre deux cycles d'exécution, on ne peut voir qu'un front, même si la variable EBOOL est écrite à 0 puis à 1 plusieurs fois au cours d'un même cycle.
Quand on s'appuie sur les instructions de front sur EBOOL dans un programme, ça peut être utile de vérifier comment celui-ci se comporte, d'autant que c'est paramétrables sur les API type M580, je crois.
Ca peut expliquer pourquoi un programme fonctionnait impec sur un vieil API, et qu'il merdoie une fois porté sur une nouvelle architecture.
Laurent
- nicekev
- Aguerri de l'automation

- Messages : 99
- Enregistré le : 25 avr. 2017, 11:37
- Localisation : Ici et là !
Re: Une histoire de front montant
Autant pour moi, je n'ai pas eu la bonne compréhension ! Trop peu habitué à utiliser Machine Expert. Merci pour votre éclaircissement !
https://www.se.com/in/en/faqs/FA86461/
https://www.se.com/in/en/faqs/FA86461/

