Précédent   Forum des professionnels en informatique > Systèmes > Autres systèmes > Automation
Automation Forum d'entraide sur l'automatisme, la robotique et l'informatique industrielle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 18/12/2007, 15h15   #1
Nouveau Membre du Club
 
Inscription : décembre 2007
Messages : 56
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : décembre 2007
Messages : 56
Points : 26
Points : 26
Par défaut [M340] Probleme d'utilisation de la fonction READ_VAR

Bonjour a tous,

J'aimerai avoir un ti coup de pouce sur mon projet, car la je rammme...

J'utilise un M340 de schneider, et je voudrai recuperer des infos dedans grace a la fonction READ_VAR, or j'ai beau essayer tout les cas de config possible, rien n'y fait, je ne lis absolument rien...

Voila mon bout de code
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
if %mw100.0=true then
WRITE_VAR (ADR := Adresse_m340,
    OBJ := '%m',
    NUM := 1,
    NB := 8,
    EMIS := %mw40:4,
    GEST := %mw50:3);
end_if;

if %mw100.1=true then
READ_VAR (ADR := adresse_m340,
  OBJ := '%m',
  NUM := 1,
  NB := 8,
  RECP => %mw20:4,
  GEST := %mw30:3);
end_if;
Dans mon tableau d'emission, j'ai affecté des valeurs quelconques, mais je ne les recupere pas a la lecture, alors est ce un probleme de lecture ou d'ecriture??

J'ai tenté une lecture d'un module deporté, j'ai bien un bit de vie mais aucune lecture possible...

Concretement, je suis assez paumé, et je me demandai si une personne ici presente pourrai m'expliquer le fonctionnement de cette maudote fonction de lecture...

Merci d'avance
Brebiou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 18/12/2007, 17h32   #2
Nouveau Membre du Club
 
Inscription : décembre 2007
Messages : 56
Détails du profil
Informations personnelles :
Âge : 27

Informations forums :
Inscription : décembre 2007
Messages : 56
Points : 26
Points : 26
En fait je viens de me rendre compte de mon erreur...

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
if %mw100.0=true then
WRITE_VAR (ADR := Adresse_m340,
    OBJ := '%mw',
    NUM := 0,
    NB := 4,
    EMIS := %mw40:4,
    GEST := %mw50:4);
end_if;

if %mw100.1=true then
READ_VAR (ADR := adresse_m340,
  OBJ := '%mw',
  NUM := 0,
  NB := 4,
  RECP => %mw20:4,
  GEST := %mw30:4);
end_if;
En fait, quand on defini un tableau, on met "ARRAY[0..3] OF INT" pour ce paramètre, or quand on defini directement un %MW comme je l'ai fait au départ, Unity part du premier mot sans le compter, il faut donc rajouter un mot de plus...

En clair

%MWx:3 = ARRAY[0..2] OF INT (Tableau de 3 mots)

Alors que pour ce parametre il fallait

%MWx:4 = ARRAY[0..3] OF INT (Tableau de 4 mot)

donc %MWx:3 est different de ARRAY[0..3] OF INT alors que moi je pensai que c'etait la meme chose...




J'ai vaincu cet obstacle, mais merci quand même aux 8 personnes qui ont prit la peine de lire ce post, et j'essaierai au mieux de repondre a des topics d'aide pour ce qui concerne les automates Schneider...

Bonne soirée a tous
Brebiou est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2007, 07h42   #3
Invité régulier
 
Inscription : décembre 2007
Messages : 7
Détails du profil
Informations forums :
Inscription : décembre 2007
Messages : 7
Points : 6
Points : 6
Parfait cette petite explication ca peut toujours etre utile
Mgros est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2011, 14h54   #4
Invité de passage
 
g s
Inscription : octobre 2010
Messages : 2
Détails du profil
Informations personnelles :
Nom : g s

Informations forums :
Inscription : octobre 2010
Messages : 2
Points : 2
Points : 2
Par défaut Precision Modbus

Bonjour, Petite précision pour le Modbus TCP.

La longueur de requête maximale est de 125 mots.

Donc pour un échange sur un tableau d'INT, la longueur
Maxi doit être 125.

Ex : RECP => %mw20:125,

Cordialement
GregMill est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 07h34.


 
 
 
 
Partenaires

Hébergement Web