Page 1 sur 1

Langage List Step5

Posté : 16 mars 2021, 13:49
par eaudouce
Bonjour !

Dans le cadre d'un projet pendant mon alternance, je dois "convertir" un programme ancien de 1996 et écrit en STEP5 par un plus moderne sur Unity, en Grafcet et en Ladder.
J'ai eu beaucoup de mal pour déchiffrer les lignes de lettres et de chiffres de ce langage tout nouveau pour moi, mais j'ai finalement réussi à établir un grafcet avec les PB et à comprendre le cycle. :geek:

Cependant, encore beaucoup d'éléments restent flous pour moi, notamment les FB. :?:
J'ai cette partie de programme qui est importante car elle sert à avancer le moteur d'un pas avant de recommencer le cycle de production de la machine (je le sais grâce au nom), mais que je n'arrive pas à déchiffrer.

Segment 1 0000
Nom: LECTPAS

:A DB 14
:U M 7.3
:SPB =M001
:L DW 1
:T MW 30
:R M 34.7
:SPA =M002
M001 :L DW 2
:T MW 30
:R M 34.7
:
M002 :
:
:L KF +37
:T MW 50
:L KF +200
:T MW 52
:
:SPA FB 243


Si vous connaissez un peu cette façon de programmer et pourriez m'aider avec la compréhension de cette partie, je vous en serais très reconnaissante :)

Merci d'avance !

Re: Langage List Step5

Posté : 16 mars 2021, 13:57
par philou77
Salut !

:A DB 14 // ouverture du Bloc de données 14
:U M 7.3 // saut conditionnel (M7.3=1 ) si oui à M001 si non on continu après SPB
:SPB =M001
:L DW 1 // Charge le Mot Adresse 1 du bloc de données ouvert (le 14 donc)
:T MW 30 / transfert (copier dans) MW30
:R M 34.7 / Reset de M34.7 // ici c'est bizarre, pas sûr que l'instruction soit exécutée car le RLG est à mon sens à 0, à voir....
:SPA =M002 // Saut inconditionnel (tout e temps) à M002
M001 :L DW 2 / Charge le Mot Adresse 2 du bloc de données ouvert (le 14 donc)
:T MW 30 transfert (copier dans) MW30
:R M 34.7 Reset de M34.7
:
M002 :
:
:L KF +37 // Charger la valeur 37 (décimal)
:T MW 50 // transfert dans MW 50
:L KF +200 // Charger la valeur 200 (décimal)
:T MW 52 // transfert dans MW 52
:
:SPA FB 243 // Appel inconditionnel au FB 243

Edité:

:R M 34.7 / Reset de M34.7 // ici c'est bizarre, pas sûr que l'instruction soit exécutée car le RLG est à mon sens à 0, à voir....

Non, l'instruction est bien exécutée car le saut conditionnel MET à 1 le RLG