[M340] Format REAL sur Unity Pro XL
[M340] Format REAL sur Unity Pro XL
Bonjour à tous,
Je rencontre un petit souci sur Unity Pro XL (V11.0) au niveau du format REAL. (Sur automate M340)
Dans une variable de type REAL, j’ai besoin d’enregistrer une valeur numérique de 10 chiffres « non arrondi »….
J’entre, dans un champ sur Vijéo Designer (V6.2), un nombre compris entre 4 et 10 chiffres, et je souhaiterais le retrouver à l’identique coté Unity.
Je peux choisir n’importe quel type de variable et faire ce que je veux coté IHM et automate mais à la sortie j’ai besoin d’un REAL avec une valeur strictement identique à celle rentrée sur l’IHM (En gros j’ai de l’enregistrement de données à faire sur un vieux système de supervision sur lequel je n’ai pas la main et ce dernier n’accepte que le format REAL…..alors que l’idéal dans mon cas serait d’utiliser du STRING)
Passé 7 chiffres, Unity m’arrondi automatiquement la valeur (pourtant j’arrive bien à récupérer une valeur à 10 chiffres maxi coté supervision sauf que celle-ci est arrondi)
Quelqu’un connais une astuce/fonction ou dans tous les cas c’est impossible à faire ?
Grand merci à celui qui pourra me répondre
Je rencontre un petit souci sur Unity Pro XL (V11.0) au niveau du format REAL. (Sur automate M340)
Dans une variable de type REAL, j’ai besoin d’enregistrer une valeur numérique de 10 chiffres « non arrondi »….
J’entre, dans un champ sur Vijéo Designer (V6.2), un nombre compris entre 4 et 10 chiffres, et je souhaiterais le retrouver à l’identique coté Unity.
Je peux choisir n’importe quel type de variable et faire ce que je veux coté IHM et automate mais à la sortie j’ai besoin d’un REAL avec une valeur strictement identique à celle rentrée sur l’IHM (En gros j’ai de l’enregistrement de données à faire sur un vieux système de supervision sur lequel je n’ai pas la main et ce dernier n’accepte que le format REAL…..alors que l’idéal dans mon cas serait d’utiliser du STRING)
Passé 7 chiffres, Unity m’arrondi automatiquement la valeur (pourtant j’arrive bien à récupérer une valeur à 10 chiffres maxi coté supervision sauf que celle-ci est arrondi)
Quelqu’un connais une astuce/fonction ou dans tous les cas c’est impossible à faire ?
Grand merci à celui qui pourra me répondre
- itasoft
- Mi homme - Mi automate

- Messages : 7806
- Enregistré le : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: [M340] Format REAL sur Unity Pro XL
Slts,
Dans le M340 il faut créer une variable de type REAL à l’adresse absolue %MW100
Dans Vijeo-designer il faut créer une variable de type REAL à l’adresse du périphérique %MF100
Dans Vijeo-designer créer un champs de saisie avec cette variable REAL
Dans le M340 il faut créer une variable de type REAL à l’adresse absolue %MW100
Dans Vijeo-designer il faut créer une variable de type REAL à l’adresse du périphérique %MF100
Dans Vijeo-designer créer un champs de saisie avec cette variable REAL
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
Re: [M340] Format REAL sur Unity Pro XL
Bien le bonjour
Je viens d'essayer comme ça mais j'ai toujours le même problème....
Par exemple si je rentre 123456789 coté IHM (REAL adresse %MF100) -> Je retrouve coté automate (en table d'animation) 1.234568E+008 (dans le REAL %MW100)
Et si je renvois cette variable automate (%MW100) vers un champs d'affichage coté vijéo (en REAL adresse %MF900), cela m'affiche 12345784...... (La valeur qui va donc être enregistré coté supervision)
Après je travaille avec le simulateur (unity et vijeo). Peut être que c'est ça le souci
Je viens d'essayer comme ça mais j'ai toujours le même problème....
Par exemple si je rentre 123456789 coté IHM (REAL adresse %MF100) -> Je retrouve coté automate (en table d'animation) 1.234568E+008 (dans le REAL %MW100)
Et si je renvois cette variable automate (%MW100) vers un champs d'affichage coté vijéo (en REAL adresse %MF900), cela m'affiche 12345784...... (La valeur qui va donc être enregistré coté supervision)
Après je travaille avec le simulateur (unity et vijeo). Peut être que c'est ça le souci
- itasoft
- Mi homme - Mi automate

- Messages : 7806
- Enregistré le : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: [M340] Format REAL sur Unity Pro XL
Après je travaille avec le simulateur (unity et vijeo). Peut être que c'est ça le souci
surement
surement
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
-
philou77
- Mi homme - Mi automate

- Messages : 2142
- Enregistré le : 21 oct. 2015, 10:00
- Localisation : Ile de France
Re: [M340] Format REAL sur Unity Pro XL
Salut !
ton problème vient de vijeo..
le format real n'est GARANTI que jusqu'à 7 décimales.. ensuite le calcul est approximatif.
pour la précision des données, utiliser des entiers !
dixit l'aide de vijeo chapitre 6.2 configuration des variables
ton problème vient de vijeo..
le format real n'est GARANTI que jusqu'à 7 décimales.. ensuite le calcul est approximatif.
pour la précision des données, utiliser des entiers !
dixit l'aide de vijeo chapitre 6.2 configuration des variables
Si vous avez compris tout ce que je viens d'écrire, c'est que j'ai dû faire une erreur quelque part ! 
- Bruce33
- Dieu du process

- Messages : 931
- Enregistré le : 28 oct. 2015, 06:54
- Localisation : Pas-de-Calais
Re: [M340] Format REAL sur Unity Pro XL
Bonjour.
Le problème ne vient pas ni de Vijeo ni des simulateurs, mais du type REAL.
Un mot flottant de 32 bits est composé de : 1 bit de signe + 8 bits pour l'exposant + 23 bits pour la mantisse.
C'est la mantisse qui fait la précision. Cela donne 7 chiffres significatifs environ (au maximum 8).
S'il faut une précision à l'unité près, alors le type DINT (valeur entière sur 32 bits) est le meilleur.
Le problème ne vient pas ni de Vijeo ni des simulateurs, mais du type REAL.
Un mot flottant de 32 bits est composé de : 1 bit de signe + 8 bits pour l'exposant + 23 bits pour la mantisse.
C'est la mantisse qui fait la précision. Cela donne 7 chiffres significatifs environ (au maximum 8).
S'il faut une précision à l'unité près, alors le type DINT (valeur entière sur 32 bits) est le meilleur.
- itasoft
- Mi homme - Mi automate

- Messages : 7806
- Enregistré le : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: [M340] Format REAL sur Unity Pro XL
lui demander pour quelle raison il entre cette valeur (Par exemple si je rentre 123456789)
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
Re: [M340] Format REAL sur Unity Pro XL
Merci pour vos réponses !!
itasoft :
Cette valeur, 123456789 dans mon exemple (mais ca peut être n'importe quelle chiffre entre 7 et 10 chiffres) correspond à ce que je veux enregistrer dans la supervision. Dans mon cas il s'agit d'un numéro de lot à rentrer manuellement par un opérateur à chaque OF pour gérer un suivi.
En effet un DINT ou un STRING serait l'idéal mais mon type de sortie vers la supervision est un REAL.... Et la modification coté supervision implique un autre service avec lequel je n'avais aucune envie de travailler
Mais à priori je crois que je ne vais pas avoir le choix
itasoft :
Cette valeur, 123456789 dans mon exemple (mais ca peut être n'importe quelle chiffre entre 7 et 10 chiffres) correspond à ce que je veux enregistrer dans la supervision. Dans mon cas il s'agit d'un numéro de lot à rentrer manuellement par un opérateur à chaque OF pour gérer un suivi.
En effet un DINT ou un STRING serait l'idéal mais mon type de sortie vers la supervision est un REAL.... Et la modification coté supervision implique un autre service avec lequel je n'avais aucune envie de travailler
Mais à priori je crois que je ne vais pas avoir le choix
- itasoft
- Mi homme - Mi automate

- Messages : 7806
- Enregistré le : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: [M340] Format REAL sur Unity Pro XL
dans ton cas il faut un STRING
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
-
philou77
- Mi homme - Mi automate

- Messages : 2142
- Enregistré le : 21 oct. 2015, 10:00
- Localisation : Ile de France
Re: [M340] Format REAL sur Unity Pro XL
Oui bruce, tu as raison..Bruce33 a écrit : ↑09 nov. 2022, 12:15 Bonjour.
Le problème ne vient pas ni de Vijeo ni des simulateurs, mais du type REAL.
Un mot flottant de 32 bits est composé de : 1 bit de signe + 8 bits pour l'exposant + 23 bits pour la mantisse.
C'est la mantisse qui fait la précision. Cela donne 7 chiffres significatifs environ (au maximum 8).
S'il faut une précision à l'unité près, alors le type DINT (valeur entière sur 32 bits) est le meilleur.
quelque vidéos bien explicatives sur le net à propos des real...
Si vous avez compris tout ce que je viens d'écrire, c'est que j'ai dû faire une erreur quelque part ! 
