TIA Portal concaténation
-
le 10/11/2017 à 20:49 Citer ce message
Bonsoir,
J'ai un problème de conversion de variables sur des tableaux. Je travaille sur un bloc fonction IO Link, la DB crée pour les requêtes de lecture / écriture un tableau octets. Le problème est que mes valeurs se lisent sur un mot. Par exemple pour lire un nombre de commutation d'électro distributeur, je lis montableau.lecture[0] = 01, montableau.lecture[1] = 3B soit 1 et 59 en décimal. Mais mon nombre de commutation est 013B soit 315 (13B). Comment puis je lire mes 2 octets concaténé en 1 mot pour lire 01 et 3B en 13B ?
Impossible de trouver la conversion et la seule fonction de concaténation qu'il y a travaille sur des chaînes de caractères.(Je suis sur un S7 1200 et TIA portal V14)
Quelqu'un a t-il une solution ?
Merci d'avance. -
le 10/11/2017 à 22:01 Citer ce message
Bonjour Pascaljt,
Quel est l'adressage en absolu de tes deux octets ( ex : DBx.DBBx) ? -
le 10/11/2017 à 23:18 Citer ce message
Bonjour automationsense,
La DB a été créée automatiquement avec la fonction IO LINK CALL mais je n'ai plus le détail en tête. je regarde lundi matin au travail et je te redis ça. C'est frustrant de bloquer là dessus, j'arrive à lire tous les diagnostiques et je bloque là, du coup je ne peux pas afficher les valeurs sur mon écran et mes messages d'erreurs.
Merci de ton aide :-) -
le 10/11/2017 à 23:42 Citer ce message
Sisi en effet c'est frustrant comme pas possible les petits détails qui bloquent dans l'avancée.
En effet si tu as la première valeur dans un byte et la deuxième dans un autre byte qui est consécutif au premier, tu peux récupérer la valeur globale en lisant le mot.
Exemple : 1ere valeur DB1.DBB1 = 01 et 2eme valeur DB1.DBB2 = 3B ; si tu pointe à l'adresse DB1.DBW1, tu obtiens 013B -
le 17/11/2017 à 19:02 Citer ce message
Bonjour,
Cette semaine c'était Profinet mais je garde cette réponse, je n'oublie pas. Je devrais me remettre sur mon problème IO Link mercredi prochain. Je te tiens au courant. -
le 23/11/2017 à 21:01 Citer ce message
Ok.Bon courage -
le 26/11/2017 à 01:41 Citer ce message
Hello,
ça marche !!! Pour l'instant je ne l'ai fait que sur PLC SIM mais je retrouve bien mon mot donc c'est cool. J'ai juste galéré pour retrouver les adresses absolues de la DB parce que si le bloc est optimisé ça ne fonctionne pas. Demain je prépare mon programme ( oui je sais c'est dimanche) et mardi je me fais le test en réel.
Un énorme merci pour ton aide, je crois que je n'aurais pas pu trouver ça simplement (peut être en lisant le manuel de 16000 pages du TIA (si si, 16000 pages !)).
Merci merci.
Pascal, un technicien heureux.
Répondre à ce message