Adressage de variables

Forum traitant des automates industriels de marque Schneider - Telemecanique
Répondre
Raspberry
Code sa première boucle
Code sa première boucle
Messages : 16
Enregistré le : 17 déc. 2018, 10:45

Adressage de variables

Message par Raspberry » 07 juin 2019, 11:24

Bonjour,
Lorsque j'essaye de donné une adresse à une variable real de type mot enregistré dans la mémoire, je ne peux pas donné d'adresse avec un numéro impaire (par exemple %MW303 ou %MW101) car si je le fait, j'obtiens l'erreur suivante:
"En raison de contraintes d'alignement, vous devez augmenter ou diminuer l'index de l'adresse topologique de 1:"

J'ai cherché sur internet et je crois avoir compris que cela est du au fait que j'utilise des mots doubles et que donc mes variables en %MWi utilisent deux cases mémoire.

Connaîtriez vous un moyen de donné à mes variables de type real une adresse avec un numéro impaire ?

Merci d'avance pour votre aide :)

philou77
Dieu du process
Dieu du process
Messages : 963
Enregistré le : 21 oct. 2015, 10:00

Re: Adressage de variables

Message par philou77 » 07 juin 2019, 11:30

Slt,

Pourquoi vouloir cela ? ne mets que des adresses paires et puis c'est tout !
il y a un 'cadre', respecte le, c'est plus simple ;)
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
Bruce33
Générateur de blocs fonctions
Générateur de blocs fonctions
Messages : 127
Enregistré le : 28 oct. 2015, 06:54
Localisation : Pas-de-Calais

Re: Adressage de variables

Message par Bruce33 » 07 juin 2019, 11:49

Bonjour,

Sur les automates TSX Premium on peut utiliser des adresses impaires pour les variables de type REAL (ou DINT, etc. de 32 bits).
Mais sur les M340 et M580 ce n'est pas possible.
C'est une contrainte hardware, liée à la conception du système (processeur, bus mémoire, etc.)
Je conseille même de ne pas utiliser d'adresses impaires sur les Premium sinon le programme ne serait pas portable directement vers le M580...

Raspberry
Code sa première boucle
Code sa première boucle
Messages : 16
Enregistré le : 17 déc. 2018, 10:45

Re: Adressage de variables

Message par Raspberry » 07 juin 2019, 13:02

Bonjour,
Merci pour vos réponses.
J'avais besoin de ces adresses impaires pour le raccordement à un système de supervision, afin de pouvoir le faire, j'ai donc ajouté des variables "copies en int" de mes real.

Merci beaucoup pour la rapidité de vos réponses :)

Belgacem
Apprend le binaire
Apprend le binaire
Messages : 3
Enregistré le : 08 nov. 2019, 12:12

Re: Adressage de variables

Message par Belgacem » 08 nov. 2019, 12:19

Bonjour,

J'ai le même problème que vous avez rencontré et je savoir plus de détail sur la solution que vous avez appliqué.

Merci d'avance pour votre aide.

philou77
Dieu du process
Dieu du process
Messages : 963
Enregistré le : 21 oct. 2015, 10:00

Re: Adressage de variables

Message par philou77 » 08 nov. 2019, 12:31

Salut !
Raspberry a écrit :
07 juin 2019, 13:02
j'ai donc ajouté des variables "copies en int" de mes real.
Comme il l'a indiqué !
Si vous avez compris tout ce que je viens d'écrire, c'est que j'ai dû faire une erreur quelque part ! :D

Belgacem
Apprend le binaire
Apprend le binaire
Messages : 3
Enregistré le : 08 nov. 2019, 12:12

Re: Adressage de variables

Message par Belgacem » 11 nov. 2019, 19:30

Salut,
Merci pour la réponse. En effet, j'ai essayé de créer des variables copies de mêmes adresses en int mais je trouve toujours le même problème.
J'ai mis une capture comme fichier joint.
Fichiers joints
Capture.PNG

philou77
Dieu du process
Dieu du process
Messages : 963
Enregistré le : 21 oct. 2015, 10:00

Re: Adressage de variables

Message par philou77 » 12 nov. 2019, 11:23

Salut !

Tu n'as pas compris.

Il faut déclarer ta variable REAL en adresse paire :
%MW8 par exemple
elle occupe les adresses suivantes %MW8 et %MW9

tu déclare 2 INT qui se suivent et dont le premier a une adresse impaire :
INT_01 : %MW11
INT_02 : %MW12


il te faudra faire 2 blocs opérate pour copier ton REAL dans tes INT
%MW11:=%MW8
%MW12:=%MW9
Si vous avez compris tout ce que je viens d'écrire, c'est que j'ai dû faire une erreur quelque part ! :D

Belgacem
Apprend le binaire
Apprend le binaire
Messages : 3
Enregistré le : 08 nov. 2019, 12:12

Re: Adressage de variables

Message par Belgacem » 12 nov. 2019, 13:40

Bonjour,

Merci beaucoup pour l'explication rapide et complète que vous m'avez fournie. :)

Répondre