[RESOLU] READ_VAR et WRITE_VAR M340
-
- Générateur de blocs fonctions
- Messages : 118
- Enregistré le : 08 déc. 2015, 10:46
- Localisation : Sourzac
[RESOLU] READ_VAR et WRITE_VAR M340
Bonjour
Je souhaiterais délaisser io scanning sur le M340 pour utiliser les fonctions READ_VAR et WRITE_VAR. J'y bricole depuis quelques temps mais je coince.
Comme exemple concret, je voudrais mettre a un 1 un le premier bit (%MW8000:1) du mot d'un automate Wago a l'adresse IP 128.0.164.1. seulement je comprends pas bien ce qu'il faut mettre dans "gestion"
et j'ai le message : l'utilisation de tableaux dynamiques est inhibée
Je souhaiterais délaisser io scanning sur le M340 pour utiliser les fonctions READ_VAR et WRITE_VAR. J'y bricole depuis quelques temps mais je coince.
Comme exemple concret, je voudrais mettre a un 1 un le premier bit (%MW8000:1) du mot d'un automate Wago a l'adresse IP 128.0.164.1. seulement je comprends pas bien ce qu'il faut mettre dans "gestion"
et j'ai le message : l'utilisation de tableaux dynamiques est inhibée
Re: READ_VAR et WRITE_VAR M340
Normalement la "gestion" du read et write var est un tableau de 4 mots, qui servent de diagnostic pour l'échange.
Un mot de défaut correspondant aux échanges et un autre correspond au défaut d'échange, regarde dans l'aide en ligne sa se trouve bien.
Sinon pour l'utilisation des tableaux dynamiques, de souvenir c'est une option de projet Unity.
Pour l'écriture le MW8000.1 pour moi il faut que tu mettes à 1 le premier bit du mot "emission".
Un mot de défaut correspondant aux échanges et un autre correspond au défaut d'échange, regarde dans l'aide en ligne sa se trouve bien.
Sinon pour l'utilisation des tableaux dynamiques, de souvenir c'est une option de projet Unity.
Pour l'écriture le MW8000.1 pour moi il faut que tu mettes à 1 le premier bit du mot "emission".
Re: READ_VAR et WRITE_VAR M340
C'est bien cela. "Outils" puis "Options du projet" :geronimo a écrit :Sinon pour l'utilisation des tableaux dynamiques, de souvenir c'est une option de projet Unity.
Enseignant en BTS électrotechnique (Pas taper sur l'intru !)
-
- Générateur de blocs fonctions
- Messages : 118
- Enregistré le : 08 déc. 2015, 10:46
- Localisation : Sourzac
Re: READ_VAR et WRITE_VAR M340
ok merci a vous deux pour votre aide
je regarde ça
je regarde ça
-
- Générateur de blocs fonctions
- Messages : 118
- Enregistré le : 08 déc. 2015, 10:46
- Localisation : Sourzac
Re: READ_VAR et WRITE_VAR M340
Bonjour
Impec pour l'option tableau dynamique,
j'essaye donc d écrire 2 mots %MW8001 et %MW8002 dans un WAGO à l'adresse 128.0.164.2 dans la table du tableau de gestion le deuxième mot à 0 parait etre bon signe ("resultat positif" et "echange correct") seulement quand je met une adresse IP inexistante j'ai aussi 0 !
Et de toute facon a l'autre bout les %MW ne bougent pas.
J'ai mis un time out de 1000ms
Impec pour l'option tableau dynamique,
j'essaye donc d écrire 2 mots %MW8001 et %MW8002 dans un WAGO à l'adresse 128.0.164.2 dans la table du tableau de gestion le deuxième mot à 0 parait etre bon signe ("resultat positif" et "echange correct") seulement quand je met une adresse IP inexistante j'ai aussi 0 !
Et de toute facon a l'autre bout les %MW ne bougent pas.
J'ai mis un time out de 1000ms
Re: READ_VAR et WRITE_VAR M340
Salut c'est quoi comme contrôleur Wago
-
- Générateur de blocs fonctions
- Messages : 118
- Enregistré le : 08 déc. 2015, 10:46
- Localisation : Sourzac
Re: READ_VAR et WRITE_VAR M340
750-881
Re: READ_VAR et WRITE_VAR M340
salut
2 choses:
1° il faut conditionner l'appel de la fonction au bit d'activité ( + une petite tempo c mieux).
car si tu essaye d'écrire un mot a chaque cycles.... tu sature tout...
pour les premiers essais lance la fonction sur un top 1 seconde
2° sur ton tableau de gestion:
le premier mot: b8 a b15= numéro d'échange: est ce qu'il évolue?
attention certains paramètre du compte rendu ne sont valable que si le résultat d'opération =00 ou FF a voir dans la doc...
De mémoire, le time out est exprimé en 1/10S...
A+
2 choses:
1° il faut conditionner l'appel de la fonction au bit d'activité ( + une petite tempo c mieux).
car si tu essaye d'écrire un mot a chaque cycles.... tu sature tout...
pour les premiers essais lance la fonction sur un top 1 seconde
2° sur ton tableau de gestion:
le premier mot: b8 a b15= numéro d'échange: est ce qu'il évolue?
attention certains paramètre du compte rendu ne sont valable que si le résultat d'opération =00 ou FF a voir dans la doc...
De mémoire, le time out est exprimé en 1/10S...
A+
-
- Générateur de blocs fonctions
- Messages : 118
- Enregistré le : 08 déc. 2015, 10:46
- Localisation : Sourzac
Re: READ_VAR et WRITE_VAR M340
ok merci
j'ai mis un top 1s et baisser le timeout à 100 le numéro d’échange augmente sans cesse et tourne en boucle en baissant le timeout j'ai vu apparaitre dans le mot 2 de la table , ce qui je crois correspond à "réponse incorrecte" du "rapport d’opération".
si je comprends bien, la com est ok mais le wago pige pas ou réponds mal, c'est ça?
j'ai mis un top 1s et baisser le timeout à 100 le numéro d’échange augmente sans cesse et tourne en boucle en baissant le timeout j'ai vu apparaitre dans le mot 2 de la table , ce qui je crois correspond à "réponse incorrecte" du "rapport d’opération".
si je comprends bien, la com est ok mais le wago pige pas ou réponds mal, c'est ça?
Re: READ_VAR et WRITE_VAR M340
Premièrement faire une recherche sur le forum, les registres de mémento sont décalés sur le 750 Wago, il y a un post de Ulairi dans la section Wago/Codesys avec la table de correspondance.
ton write_var c'est une fonction 16 en modbus,
là, tu dois taper dans le registre 8000 sur le Wago ce qui correspond au registre des %IW, le tableau d'échange doit remonter des erreurs sur le M340 car cela m'étonnerai que le Wago réponde favorablement à cette requête, la fonction 16 ne permettant pas d'écrire les registres de bit
ton write_var c'est une fonction 16 en modbus,
là, tu dois taper dans le registre 8000 sur le Wago ce qui correspond au registre des %IW, le tableau d'échange doit remonter des erreurs sur le M340 car cela m'étonnerai que le Wago réponde favorablement à cette requête, la fonction 16 ne permettant pas d'écrire les registres de bit