Page 1 sur 1
Travail de doubles mots sur Proface
Posté : 26 nov. 2025, 10:05
par siryop
Bonjour à tous,
Je travail en ce moment avec GPPro Ex en V04.09.600 et un ET6400-WA, et j'ai le besoin de travailler du double mot.
Je m'explique, je reçois un double mot en Modbus TCP avec une valeur de pression en Pa et je dois la traiter dans mon afficheur en la divisant par 100 pour travailler en HPa et faire une comparaison avec un autre mot. Aujourd'hui je n'arrive pas à travailler avec un double mot pour récupérer cette valeur dans mon programme Proface.
Des idées ou pistes ?
Re: Travail de doubles mots sur Proface
Posté : 26 nov. 2025, 12:09
par ProfnovA
C'est possible! Mettre en 32 bit dec
Re: Travail de doubles mots sur Proface
Posté : 26 nov. 2025, 13:38
par siryop
Ça c'est pour l'affichage de ce double mot mais ça ne me permet pas de travailler ce mot en script ou autre
Du moins si j'ai bien compris

Re: Travail de doubles mots sur Proface
Posté : 26 nov. 2025, 14:09
par Béryl
En fouillant dans mes programmes, j'ai trouvé ça :

- Capture d’écran 2025-11-26 140552.png (1.59 Kio) Vu 1294 fois

- Capture d’écran 2025-11-26 140441.png (5.09 Kio) Vu 1294 fois
Ça charge un compteur rapide dans une variable integer qui monte jusqu'à 380 000.
Affichage en 32 bits dec.
Re: Travail de doubles mots sur Proface
Posté : 26 nov. 2025, 14:13
par siryop
Merci, mais c'est le mot que je reçois qui est en 32bits, je travaille avec un logo qui lui ne gère pas non plus de double mots si j'ai bien compris et le proface me propose que des Adresses de mots et pas de doubles

Re: Travail de doubles mots sur Proface
Posté : 26 nov. 2025, 14:22
par Guigui744
Avec des scripts, on peut definir que notre mot est double:
Exemple ici, je recupere mon double mot, et j'ajoute un offset en 32 bits.
//Initialisation
//USR0000: Double mot a traiter
//Ajout offset pour valeur final
//W32s signifie Word 32 bits signé
[w32s:Valeur_Analogique_Haut]=[w32s:[#INTERNAL]USR00000]+[w32s:Offset_Bouterolleuse_Haut]
[w32s:Valeur_Analogique_Bas]=[w32s:[#INTERNAL]USR00000]+[w32s:Offset_Bouterolleuse_Bas]
Re: Travail de doubles mots sur Proface
Posté : 28 nov. 2025, 10:43
par siryop
Merci pour l'aide, je progresse, j'arrive à afficher mon double mot comme je le souhaite, par contre en utilisant :
[w32s:[#INTERNAL]USR00018]=[w32s:[#INTERNAL]USR00016]/100
le résultat donne 0 dés lors que je divise par plus de 1
[w32s:[#INTERNAL]USR00016] est un flottant en 32 bits et j'aimerais travailler sa valeur mais diviser par 100
Je dois avoir un problème de syntaxe mais je n'arrive pas à trouver la bonne.
Re: Travail de doubles mots sur Proface
Posté : 28 nov. 2025, 11:01
par Guigui744
Il est impossible de faire des calcul de flottants dans des scripts:
Re: Travail de doubles mots sur Proface
Posté : 28 nov. 2025, 11:10
par Guigui744
Par contre, on peut definir deux variables en float:

- Capture d'écran 2025-11-28 110717.png (1.16 Kio) Vu 1211 fois
Puis dans le scirpt, dir que valeur = USR:
!! Verifier que Bit Lenght = 32 bit et pas 16 bit

- Capture d'écran 2025-11-28 110758.png (10.72 Kio) Vu 1211 fois
Puis dans le probgramme ladder, vaire comme ca:

- Capture d'écran 2025-11-28 110904.png (1.7 Kio) Vu 1211 fois
La valeur "Final" aura donc la valeur de notre USR diviser par 100
Re: Travail de doubles mots sur Proface
Posté : 28 nov. 2025, 11:47
par siryop
Merci beaucoup Guigui744, avec ton aide je pense que j'ai résolu mes problèmes.