Liaison Modbus TCP ET200 1510 SP

Forum traitant des automates industriels de marque Siemens.
Avatar du membre
andala
Créateur de langage
Créateur de langage
Messages : 505
Enregistré le : 19 déc. 2016, 10:24
Localisation : Atlantide

Re: Liaison Modbus TCP ET200 1510 SP

Message par andala »

Je suis d'accord avec toi Phulou77

Ici je n'ai fait que expliquer par des éléments et des exemples facile a comprendre car après tout, si la majeur partie des problèmes est "l'interface Chaise / Clavier" c'est surtout la compréhension qui fait qu'il y a ces problème.
Beaucoup de personne qui explique les choses (comme les prof par exemple) se contentent d'enseigner d'une seule manière et tant pis pour ceux qui comprennent pas :evil:! Personnellement j'ai enseigné en tant que prof à domicile pendant mes heures perdus et ma force d'apprentissage résidai dans le fait que je ne me contentai pas d'une seul méthode d'apprentissage mais une méthode adapté a chaque élève.

Le but n'est pas d'utiliser le bon vocabulaire mais bien que "l'interface Chaise / Clavier" comprenne ce qu'il est en train de faire... ;)
petite aparté qui n'a rien a voir avec le sujet de base désolé :lol:
Une bonne action en entraine toujours une autre
Avatar du membre
Sycon88
Première mise en service
Première mise en service
Messages : 64
Enregistré le : 22 févr. 2019, 17:43
Localisation : Vosges

Re: Liaison Modbus TCP ET200 1510 SP

Message par Sycon88 »

Bonjour philou77

Merci à toi pour tout ce développement détaillé ;)
philou77
Mi homme - Mi automate
Mi homme - Mi automate
Messages : 2142
Enregistré le : 21 oct. 2015, 10:00
Localisation : Ile de France

Re: Liaison Modbus TCP ET200 1510 SP

Message par philou77 »

Re !
andala a écrit : 10 mars 2022, 16:04 Le but n'est pas d'utiliser le bon vocabulaire mais bien que "l'interface Chaise / Clavier" comprenne ce qu'il est en train de faire...

D'accord avec toi pour expliquer un concept, il y a plusieurs méthodes.. mais pour résoudre un bug automatisme, faut réfléchir comme l'automate pour le trouver, et donc pour ça réfléchir selon ses concepts à lui...D'où l'importance des mots
Si vous avez compris tout ce que je viens d'écrire, c'est que j'ai dû faire une erreur quelque part ! :D
Gigi
Forcené des structures
Forcené des structures
Messages : 172
Enregistré le : 13 janv. 2022, 22:51
Localisation : Tourcoing

Re: Liaison Modbus TCP ET200 1510 SP

Message par Gigi »

Ah ces pauvres profs ,ce qu’ils sont nuls,lol.
Mais ne généralisons pas quand même.

Petite rectification un bon prof ça doit maîtriser son sujet et l’adapter à ses étudiants , et oui ils sont plusieurs,mais il y’a quand même quelques pré requis à vérifier avant.

Vous voyez vous même ici assez vite en fonction des questions qui sont posées si vous y allez ou si ça va être trop dure pour votre interlocuteur et même des fois on est 3 ou 4 pour expliquer.

Les logiciels de programmation sont tellement puissants aujourd’hui,qu’il faut réellement un certains temps pour découvrir ne serait ce que 10 à 20 % de leurs possibilités.

A+
C'est en forgeant qu'on devient forgeron !
Avatar du membre
Sycon88
Première mise en service
Première mise en service
Messages : 64
Enregistré le : 22 févr. 2019, 17:43
Localisation : Vosges

Re: Liaison Modbus TCP ET200 1510 SP

Message par Sycon88 »

Bonjour à tous,

Je viens d'essayer en paramétrant mon bloc MB_client avec un MB_DATA_ADRR en 40129 comme vous me l'avez conseillé andala avec un MB_DATA_LEN en 3.

J'ai paramétré mon MB_DATA_PTR sur un Array [1..3] of int dans mon DB mais j'ai 0 dans le PTR[3] et ma valeur en INT dans le PTR[2] reste fixe à 17552 et les autres paramètres car j'en ai 4 à relever j'ai 32704 et des valeurs à 0.

J'avais mis la valeur PTR[2] en IN sur bloc conv en INT to Real mais je n'est pas les bonnes valeurs et les variables ne change pas d'état alors que mes valeurs sur mon scan si.

Comme si j'allais pas lire les données dans la bonne adresse :roll:
Avatar du membre
andala
Créateur de langage
Créateur de langage
Messages : 505
Enregistré le : 19 déc. 2016, 10:24
Localisation : Atlantide

Re: Liaison Modbus TCP ET200 1510 SP

Message par andala »

As-tu essayé avec un bloc move a la place de convert ?
Une bonne action en entraine toujours une autre
philou77
Mi homme - Mi automate
Mi homme - Mi automate
Messages : 2142
Enregistré le : 21 oct. 2015, 10:00
Localisation : Ile de France

Re: Liaison Modbus TCP ET200 1510 SP

Message par philou77 »

Re !

Je viens de jeter un oeil sur la doc et analysé les précdents posts :
il lit bien la bonne adresse avec la bonne longueur..
Holding registre
Adresse 40130
Parameter 1 Result = xP1Value
Longueur = 2

Il DOIT donc avoir son real sans problème.

Reste à savoir ce qu'il désire lire et à quoi correspond ce Parameter 1 Result dans l'appareil, vu que il y a plein de PARAMETER_1
Parce que dans la doc en pdf ne précise pas ce point.

Je suppose (peut être à tort) que tous les parameters 1 font référence à une voie 1...
Mais il y a une différence entre Hoding register et Input Register
Si vous avez compris tout ce que je viens d'écrire, c'est que j'ai dû faire une erreur quelque part ! :D
Avatar du membre
Sycon88
Première mise en service
Première mise en service
Messages : 64
Enregistré le : 22 févr. 2019, 17:43
Localisation : Vosges

Re: Liaison Modbus TCP ET200 1510 SP

Message par Sycon88 »

Salut philou et andala,

Effectivement c'est comme ça que j'avais paramétré au début le MB_CLIENT mais je n'est pas les bonnes valeurs voir pas de valeur. Je vous met les captures d'écrans de mon programme aussi que le paramétrage du scan sur les sorties fieldbus.
IMG_11032022_122934_(1080_x_1080_pixel).jpg
IMG_11032022_122439_(1080_x_1080_pixel).jpg
IMG_11032022_122617_(1080_x_1080_pixel).jpg
IMG_11032022_122651_(1080_x_1080_pixel).jpg
philou77
Mi homme - Mi automate
Mi homme - Mi automate
Messages : 2142
Enregistré le : 21 oct. 2015, 10:00
Localisation : Ile de France

Re: Liaison Modbus TCP ET200 1510 SP

Message par philou77 »

Re !

tu lis pas la bonne adresse de départ (c'est 40128 pour le status et 40130 pour le real)
Je te rappelle que les adresses sont en octet !
Et qu'un registre (Mot) utilise 2 octets !

si tu veux faire comme cela

1 / Dans ta déclaration de variables

DATA1 Struct
Status INT
Value REAL
Etc.. pour les autres variables

2 / Pour lire la valeur HOLDING REGISTER - PARAMETER_1

MB_Data_ADR = 40128
MB_Data_Ptr = Db_param_COMMTCP_SCAN.DATA1.Status
MB_Data_Len = 3

De cette façon, tu as le status et ta valeur PARAMETER_1 directement en real.
Aucune conversion a faire..


Et vu que tes valeurs se suivent et dans l'appareil et dans tes déclarations, tu peut lire toutes tes valeurs d'un coup en modifiant juste MB_DATA_LEN !
Si vous avez compris tout ce que je viens d'écrire, c'est que j'ai dû faire une erreur quelque part ! :D
Avatar du membre
Sycon88
Première mise en service
Première mise en service
Messages : 64
Enregistré le : 22 févr. 2019, 17:43
Localisation : Vosges

Re: Liaison Modbus TCP ET200 1510 SP

Message par Sycon88 »

Ok d'accord je vais essayer ça.

Par contre autre question, pourquoi dans la doc il y a deux mapping d'adressage ?

Un en page 34 de la doc qui correspond au input register en adresse 128 et un en page 36 qui correspond au holding register en adresse 4128.

Sur le input register j'avais des valeurs fixes, par contre en adresse 4128 ce qui correspond a un MB_DATA_ADRR en 44128 j'avais des valeurs qui fluctuaient actualisées quasiment en même temps que le scan (30 secondes environ).
Répondre