IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Automation Discussion :

[M340] Probleme d'utilisation de la fonction READ_VAR


Sujet :

Automation

  1. #1
    Membre régulier Avatar de Brebiou
    Homme Profil pro
    Automaticien
    Inscrit en
    Décembre 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Automaticien
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2007
    Messages : 86
    Points : 88
    Points
    88
    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 : Sélectionner tout - Visualiser dans une fenêtre à part
    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

  2. #2
    Membre régulier Avatar de Brebiou
    Homme Profil pro
    Automaticien
    Inscrit en
    Décembre 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Doubs (Franche Comté)

    Informations professionnelles :
    Activité : Automaticien
    Secteur : Industrie

    Informations forums :
    Inscription : Décembre 2007
    Messages : 86
    Points : 88
    Points
    88
    Par défaut
    En fait je viens de me rendre compte de mon erreur...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 7
    Points : 8
    Points
    8
    Par défaut
    Parfait cette petite explication ca peut toujours etre utile

  4. #4
    Candidat au Club
    Inscrit en
    Octobre 2010
    Messages
    2
    Détails du profil
    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

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2002]Probleme d'utilisation de la fonction Dmax()
    Par orion_ dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 29/09/2009, 18h37
  2. probleme pour utiliser les fonctions
    Par julius0123 dans le forum ASP
    Réponses: 3
    Dernier message: 02/07/2009, 14h49
  3. [XL-2003] Probleme d'utilisation de la Fonction Address
    Par ropineau dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 17/06/2009, 13h33
  4. Réponses: 2
    Dernier message: 04/12/2007, 19h35
  5. probleme dans l'utilisation de la fonction include
    Par cortex007 dans le forum Langage
    Réponses: 7
    Dernier message: 27/01/2006, 18h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo