Recherche emplacement

Forum traitant des automates industriels de marque Siemens.
Répondre
ouaga12
Aguerri de l'automation
Aguerri de l'automation
Messages : 79
Enregistré le : 04 juin 2018, 21:40

Recherche emplacement

Message par ouaga12 »

Bonjour
Je rencontre un soucis , jaimerais realiser un programme en ladder qui me permet de trouver un emplacement libre .
Je mexplique enfaite jai 4 emplacement A B C D stocker dans un DB , avec comme etat initial A =1 B=0 C=1 D=0
1 pour occupe et 0 pour libre

Donc jaimerai par appui sur bouton poussoir trouver le premier emplacement libre et le mettre a 1.

Dit comme ça sa parait simple mais jy arrive vraiment pas a une solution.

Cordialement.
Avatar du membre
bipcoyote
Codeur fou
Codeur fou
Messages : 203
Enregistré le : 16 janv. 2018, 13:19
Localisation : Dunkerque

Re: Recherche emplacement

Message par bipcoyote »

Bonjour,

Si ce n'est que sur un mot, simple. Par contre, sur une table de mot, penser à plus profond.
Tu réalise un "AND" avec le mot sur chaque bit qui valide une info et tu travailles avec la 1er info à 0.
Exemple Ton mot DB100.DBW20 ou
A = DB100.DBX21.0 = 1
B = DB100.DBX21.1 = 0
C = DB100.DBX21.2 = 1
D = DB100.DBX21.3 = 0

A_Occupe = DB100.DBW20 (0000 0000 0000 0101) AND 16#0001 (0000 0000 0000 0001) =TRUE
B_Occupe = DB100.DBW20 (0000 0000 0000 0101) AND 16#0002 (0000 0000 0000 0010) = FALSE
C_Occupe = DB100.DBW20 (0000 0000 0000 0101) AND 16#0004 (0000 0000 0000 0100) = TRUE
D_Occupe = DB100.DBW20 (0000 0000 0000 0101) AND 16#0008 (0000 0000 0000 1000) = FALSE

Ensuite tu utilses le 1er en FALSE, c'est le plus compréhensible.
Maintenant, cela réponds t il à ta demande ?

+
Répondre