le bloc READ_VAR pour plusieurs eclaves somachine basic

Forum traitant des automates industriels de marque Schneider - Telemecanique
AMINE
Générateur de blocs fonctions
Générateur de blocs fonctions
Messages : 105
Inscription : 01 nov. 2015, 23:00

le bloc READ_VAR pour plusieurs eclaves somachine basic

Message par AMINE »

Bonjour les amis,
je fait un échange de données entre un maître et plusieurs partenaires, avec le bloc WIRTE_READ_var de somachine basic, l'astuce est d’exécuter sepparement chaque bloc, pour cela j'ai utilisé un compteur temporaire pour chaque valeur du compteur un partenaire est interrogé, mais la communication est un peux lourde, je vous sollicite donc pour m’orienter a utiliser les bits DONE et BUSY de chaque blocs SVVVVVVVVVVVVVp :oops: ou autre solution plus efficace, merci par avance
Avatar de l’utilisateur
itasoft
Mi homme - Mi automate
Mi homme - Mi automate
Messages : 7035
Inscription : 20 oct. 2015, 10:15
Localisation : Lyon
Contact :

Re: le bloc READ_VAR pour plusieurs eclaves somachine basic

Message par itasoft »

slts,
Pourquoi tu dois utiliser WIRTE_READ_VAR et pas WRITE_VAR ou READ_VAR ???
Automaticien privé (de tout)
itasoft@free.fr
AMINE
Générateur de blocs fonctions
Générateur de blocs fonctions
Messages : 105
Inscription : 01 nov. 2015, 23:00

Re: le bloc READ_VAR pour plusieurs eclaves somachine basic

Message par AMINE »

itasoft a écrit : 12 juil. 2018, 16:40 slts,
Pourquoi tu dois utiliser WIRTE_READ_VAR et pas WRITE_VAR ou READ_VAR ???
Bonjour ITASOFT,
pour lire et écrire au même temps , mais même si j'utilise read_var et write_var il faut faire une séquence d'appel sepparer pour chaque bloc sinon sa marche pas
Avatar de l’utilisateur
itasoft
Mi homme - Mi automate
Mi homme - Mi automate
Messages : 7035
Inscription : 20 oct. 2015, 10:15
Localisation : Lyon
Contact :

Re: le bloc READ_VAR pour plusieurs eclaves somachine basic

Message par itasoft »

slts,
Le WRITE_READ_VAR est utilisé quand il faut d’abord envoyer une demande de lecture à l’esclave qui répond immédiatement dans la table de réception du write_read_var.
Si ce n’est pas le cas, il faut utiliser WRITE_VAR pour écrire dans l’esclave et READ_VAR pour lire.
Ceci dit, tu as combien de lectures et écriture à faire , il te faut combien de blocs WRITE_VAR et combien de blocs READ_VAR ?????????
Automaticien privé (de tout)
itasoft@free.fr
AMINE
Générateur de blocs fonctions
Générateur de blocs fonctions
Messages : 105
Inscription : 01 nov. 2015, 23:00

Re: le bloc READ_VAR pour plusieurs eclaves somachine basic

Message par AMINE »

slts ,
merci pour votre réponse ITASOFT
moi j'ai un maitre et 3 esclaves, en tous soit 3 blocs read_write ou bien 3r ead et 3 write
philou77
Mi homme - Mi automate
Mi homme - Mi automate
Messages : 2076
Inscription : 21 oct. 2015, 10:00
Localisation : Ile de France

Re: le bloc READ_VAR pour plusieurs eclaves somachine basic

Message par philou77 »

Salut,

Perso, j'utilise un seul bloc en Read et Write, un compteur et un tableau d'adresse pour lire les températures et écrire les consigne (bon d'&accord, suis en M340) mais ça doit pas être si différent en somachine basic
Si vous avez compris tout ce que je viens d'écrire, c'est que j'ai dû faire une erreur quelque part ! :D
Avatar de l’utilisateur
itasoft
Mi homme - Mi automate
Mi homme - Mi automate
Messages : 7035
Inscription : 20 oct. 2015, 10:15
Localisation : Lyon
Contact :

Re: le bloc READ_VAR pour plusieurs eclaves somachine basic

Message par itasoft »

Slts,
Ya plusieurs façons de faire, utiliser 3 blocs READ et 3 blocs WRITE
une des solution consiste à mettre tous les BUSY en sérié et quand chaque bloc on terminés sa requête on décale le chenilllard WROL d’une case et avec les bits de WROL on lance les requêtes EXECUTE pour ne faire que un seul bloc par tour de cycle, exemple ci dessous.
---
cliquer dessus pour agrandir
_busy.JPG
Automaticien privé (de tout)
itasoft@free.fr
AMINE
Générateur de blocs fonctions
Générateur de blocs fonctions
Messages : 105
Inscription : 01 nov. 2015, 23:00

Re: le bloc READ_VAR pour plusieurs eclaves somachine basic

Message par AMINE »

salut ;
je vais essayer de voir et déchiffrer votre solution ITASOFT, moi j'ai fait comme ça pour executer chaque bloc separement, pour le moment sa marche mais je ne s'est par la suite si je peux avoir des cas ou le front n'est pas generer
Pièces jointes
2.jpg
1.jpg
Avatar de l’utilisateur
itasoft
Mi homme - Mi automate
Mi homme - Mi automate
Messages : 7035
Inscription : 20 oct. 2015, 10:15
Localisation : Lyon
Contact :

Re: le bloc READ_VAR pour plusieurs eclaves somachine basic

Message par itasoft »

slts,
c'est pas bon, tous les blocs utilisent le même port série il faut donc que tous les blocs aient terminés leurs requetes avant d'en lancer une autre, compris ??
j'avais dit de ne pas utiliser WRITE_READ_VAR
Automaticien privé (de tout)
itasoft@free.fr
dpo
Créateur de langage
Créateur de langage
Messages : 714
Inscription : 27 nov. 2015, 20:03

Re: le bloc READ_VAR pour plusieurs eclaves somachine basic

Message par dpo »

le dernier somachine basic a un i/o scan modbus intégré...si tu es en modbus !
Répondre