Page 1 sur 3

Ecrire toutes les entrées physiques dans un mot

Posté : 06 oct. 2021, 16:03
par corolian
Bonjour,

J'ai un automate Schneider M340. Il est composé de modules de 64 entrées TOR et 64 sorties TOR, un module de 4 entrées thermocouples, et un module de 8 entrées analogiques.
Côté IHM, j'ai un panel PC de chez Siemens.

Je souhaite réaliser une page sur mon IHM de l'état des entrées/sorties. Pour ce faire, j'aimerais enregistrer mes variables sur tia. J'ai tenté de les enregistrer avec l'adresse physique des entrées mais ça n'a pas marché (j'ai une connexion modbus TCP/IP entre mon automate et mon IHM ce qui limite les types de données), du coup je cherche une solution sur écostruxure pour écrire toutes les entrées physiques dans un mot.

Existe il une solution ? autre bien sûr que celle de passer bit par bit chaque entrée physique.

Cordialement,
Corolian

Re: Ecrire toutes les entrées physiques dans un mot

Posté : 06 oct. 2021, 16:28
par corolian
Est il possible de faire un operate sur Ecostruxure de ce style :
%I0.3.0 to %I0.3.31:=Copie_entrees_1
En sachant que copie entrée 1 est un double mot ?

Re: Ecrire toutes les entrées physiques dans un mot

Posté : 06 oct. 2021, 17:03
par itasoft
slts,
Copie_entrees_1:=%I0.3.0:32;

Re: Ecrire toutes les entrées physiques dans un mot

Posté : 06 oct. 2021, 17:04
par JC87
Bonjour,

Il faut utiliser la fonction "MOVE_AREBOOL_INT" qui permet de copier un tableau de booléens dans un INT.

JC

Re: Ecrire toutes les entrées physiques dans un mot

Posté : 06 oct. 2021, 17:16
par itasoft
slts,
enfer et damnation, j'ai confondu avec le PL7-PRO

MOVE_AREBOOL_DINT(%I0.3.0:32,Copie_entrees_1);

Re: Ecrire toutes les entrées physiques dans un mot

Posté : 06 oct. 2021, 17:23
par philou77
salut !

il faut en plus :

dans le menu "Outils/Options de Projet..." de Unity, cocher la case "Autoriser les tableaux dynamiques (ANY_ARRAY_XXX)",

Re: Ecrire toutes les entrées physiques dans un mot

Posté : 06 oct. 2021, 17:26
par corolian
ça marche pour l'instruction move arebool, top !

On peut pas le faire avec un Dword ?

Re: Ecrire toutes les entrées physiques dans un mot

Posté : 06 oct. 2021, 17:28
par corolian
par contre on est bien d'accord que c'est de 0 à 31 pour 32 bits

Re: Ecrire toutes les entrées physiques dans un mot

Posté : 06 oct. 2021, 17:34
par corolian
ça marche pour la première :
MOVE_AREBOOL_DINT(%I0.3.0:31,Copie_entrees_1);

et pour la deuxième ça marche pas :
MOVE_AREBOOL_DINT(%I0.3.32:63,Copie_entrees_2);

Re: Ecrire toutes les entrées physiques dans un mot

Posté : 06 oct. 2021, 17:40
par philou77
je devance Itasoft ;-)

32 c'est le nombre de bit à copier à partir de 0 !!

et pour la deuxième instruction, tu démarre bien à l'adresse 32 mais pour 32 bits ... pas 63 !!