Page 1 sur 1

Variable "String" ou écrire en Wchar sur TIA Portal

Posté : 19 mai 2021, 09:36
par kiwi13nrv
Bonjour à toutes et à tous :)

Je souhaite pouvoir écrire une chaine de caractère de maximum 36 caractères dans une variable qui puisse changer en fonction d'une recette choisi pour l'afficher sur mon IHM (Siemens aussi)

Le problème que je rencontre sur TIA Portal est le suivant:

Je ne peux pas creer de variable "String" tandis que lorsque je crée ma chaine de caractère en langage SCL je suis en langage string.
En plus de cela, il faut que mon ihm puisse lire cette variable String (si je reste en string).

OU ! Quelqu'un sait comment écrire directement en wchar ? Quand je fais 'TEXT' c'est du string et je ne sais pas comment écrire en wchar ...

Bref tous cela fais beaucoup de String ... Vivement l'été 8-)

Merci à ceux qui prendront le temps de lire et répondre à ce sujet,

Cordialement,

Re: Variable "String" ou écrire en Wchar sur TIA Portal

Posté : 19 mai 2021, 11:00
par DurandO
Bonjour,
Sachant que le type string est codé ainsi :
1ier octet : taille définie de la chaîne
2ieme octet : nb caractères contenu dans la chaîne
les octets suivants : les caractères de la chaîne

Dans un db, tu définis une variable de type string.
Dans ton bloc SCL, tu charge ta variable de type String.
coté IHM du définis une variable type array [0..31] of char qui pointe sur le 3ieme octet ([0..31] puisque ta chaîne semble faire 32 caractères max).
Dans ta vue, tu insères un champ d'e/s format d'affichage chaîne de caracteres longueur champ 32.

Re: Variable "String" ou écrire en Wchar sur TIA Portal

Posté : 19 mai 2021, 13:13
par maxpeigne
Bonjour,

Sinon as tu essayé avec l'instruction S_MOVE?
s_move.png

Re: Variable "String" ou écrire en Wchar sur TIA Portal

Posté : 19 mai 2021, 14:20
par dpo
pour ton opération tu peux aussi créer une liste de texte dans l'ihm
pour chaque valeur tu définis un texte

ensuite tu as une animation qui fait appel à cette liste avec en paramètre num_pompe
c'est ce que je fais pour ton genre de manip

Re: Variable "String" ou écrire en Wchar sur TIA Portal

Posté : 19 mai 2021, 15:17
par kiwi13nrv
Merci a tous pour vos idées / aides vraiment.

J'ai réussi à faire cela en créant un type de donnée Ppe incluant un string.
Puis j'ai créé un DB_Ppe dans les blocs de programmes incluant mon type de donnée "Ppe"

La je viens écrire mon String dans la variable de mon DB.

Et sur l'IHM je viens chercher la variable DB_Ppe.Pompe.Nom_pompe qui est bien en String ! (voir image "variable_IHM")

PS: Voir les captures avec leurs entêtes en haut de la capture.

Ca reste embêtant que l'on doit faire tous cela pour lire un String sur un IHM ...
Mais au moins ça marche :D

Cordialement,