Adressage indexé

Forum traitant des automates industriels de marque Schneider - Telemecanique
Répondre
chineindo
Apprend le binaire
Apprend le binaire
Messages : 8
Enregistré le : 08 nov. 2017, 20:47

Adressage indexé

Message par chineindo »

Bonjour à tous.
Je me pose une question depuis un petit moment et je ne trouve aucune réponse sur le net.
A quoi sert l'adressage indexé ? Je sais comment cela fonctionne mais je ne trouve pas d'application concrète pour l'utiliser.
Ça doit être simple mais je ne vois vraiment pas.
Avatar du membre
itasoft
Mi homme - Mi automate
Mi homme - Mi automate
Messages : 7141
Enregistré le : 20 oct. 2015, 10:15
Localisation : Lyon
Contact :

Re: Adressage indexé

Message par itasoft »

Slts,
Exercice : mettre l’adresse des mots en valeurs :
Ex:
%MW0 :=0 ;
%MW1 :=1
%MW2 :=2
%MW3:=3;
.................
.................
................
.................
%MW31999:=31999;
%MW32000:=32000;

écrire ces 32000 lignes de programme
Automaticien privé (de tout)
itasoft@free.fr
R26R
Aguerri de l'automation
Aguerri de l'automation
Messages : 90
Enregistré le : 19 juin 2016, 20:04

Re: Adressage indexé

Message par R26R »

itasoft a écrit : 08 nov. 2017, 21:23 Slts,
Exercice : mettre l’adresse des mots en valeurs :
Ex:
%MW0 :=0 ;
%MW1 :=1
%MW2 :=2
%MW3:=3;
.................
.................
................
.................
%MW31999:=31999;
%MW32000:=32000;

écrire ces 32000 lignes de programme
Excel ? :lol:

C'est vrai que c'est le meilleur exercice de base.

On peut aussi s'en servir par exemple quand on à un tableau de points par exemple
%MW1 = position x
%MW2 = position y
%MW3 = position x 2
%MW4 = position y 2
On imagine un système qui doit aller d'un point A à un point B et dès qu'on à atteint cette position, on passe à la seconde en incrémentant l'index.

Mais c'est vrai que 90% du temps on va s'en servir avec une boucle.
MikeKol
Forcené des structures
Forcené des structures
Messages : 156
Enregistré le : 22 oct. 2015, 20:20

Re: Adressage indexé

Message par MikeKol »

Aujourd'hui je trouve que l'indexage est bien pour des taches comme évoquer ci-dessus ou pour gagner de la mémoire, mais je haie l’indexage car dans les vieux programmes c'est compliquer pour moi qui n'est pas à l'aise avec cela.
chineindo
Apprend le binaire
Apprend le binaire
Messages : 8
Enregistré le : 08 nov. 2017, 20:47

Re: Adressage indexé

Message par chineindo »

Au final je crois que j'ai pas compris l'indexage....
C'est fou que sur Internet on ne trouve pas d'info qui explique cela facilement et qui donne l'utilité d'une telle fonction.
R26R
Aguerri de l'automation
Aguerri de l'automation
Messages : 90
Enregistré le : 19 juin 2016, 20:04

Re: Adressage indexé

Message par R26R »

Cherche des tutoriels sur d'autres langages de programmation, et regarde au niveau des boucles et pointeurs tu va trouver pas mal d'exemple. Après la différence sera simplement la syntaxe. Ca prends peut être un peu de temps mais je pense que c'est nécessaire, je travaille pas sur des machines/process de fou, et j'en utilise / croise régulièrement.

Pour l'exemple d'itasoft, en gros il demande de faire la suite logique suivante :

%MW0 :=0 ;
%MW1 :=1
%MW2 :=2
%MW3:=3;

Jusqu'a 32 000.
Soit tu te tape tout a la main ou avec excel jusqu'a %MW32000 := 32000;

Soit en 1 minute tu fais une boucle qui va faire 32 000 fois la même chose :
(Attention je ne connais pas la syntaxe) :

%MW0 := 1
FOR %MW0 < 32000 // On reboucle jusqu'a ce que le compteur soit >= 32 000
%MW[%MW0] := %MW0
%MW0 := %MW0 + 1; // On incrémente le compteur
NEXT;

Au premier tour de boucle %MW0 = 1, le programme va donc exécuter %MW1 := 1; et %MW0 va devenir égal à 2
Donc au second tour de boucle le programme va exécuter %MW2 := 2 etc

L'avantage : ça prend 3 lignes à écrire, c'est plus clair qu'un gros bloc, et lors des tests, tu prends 2 valeurs au hazard, et si c'est bon ton programme est validé à 100%. Parce que si tu tape tout à la main tu dois vérifier chaque valeur en théorie...
chineindo
Apprend le binaire
Apprend le binaire
Messages : 8
Enregistré le : 08 nov. 2017, 20:47

Re: Adressage indexé

Message par chineindo »

Je vais regarder ça alors :)
Répondre