Migration M580 : Debordment INDEX (Defaut %S20)
Migration M580 : Debordment INDEX (Defaut %S20)
Bonjour a TOUS,
J'espère que mon post vous trouve bien.
Je travail actuellement sur un projet de Migration du Quantum vers du M580.
J' ai utilisé le logiciel de migration de Schneider UMAC pour la conversion..
Jai fini avec les corrections et je suis actuellement dans la phase de simulation..
Seulement j'ai des erreurs système liés a des débordements d'index (%S20) qui mettent mon automate en mode HALT et aussi du whachdog.
Et les défauts me ramene sur le programme suivant :
Scan_Line_Out_Offset := 0;
Scan_Line_Out_Len := LENGTH_ARWORD(Scan_line2_1_output);
FOR LoopIndex:= 0 TO Scan_Line_Out_Len - 1 DO
E301_SWB_001.Outputs.E301_CR_01_SEPAM_DATA_OUT[LoopIndex + Scan_Line_Out_Offset] := Scan_line2_1_output[LoopIndex];
End_FOR;
Scan_Line_Out_Offset := 1;
Scan_Line_Out_Len := LENGTH_ARWORD (Scan_line2_2_output);
FOR LoopIndex:= 0 TO Scan_Line_Out_Len - 1 DO
E301_SWB_001 .Outputs.E301_CV_01_SEPAM_DATA_OUT[LoopIndex + Scan_Line_Out_Offset] := Scan_line2_2_output[LoopIndex];
End_FOR;
Scan_Line_Out_Offset := 2;
Scan_Line_Out_Len := LENGTH_ARWORD (Scan_line2_3_output);
FOR LoopIndex:= 0 TO Scan_Line_Out_Len - 1 DO
E301_SWB_001.Outputs.EINCOMING_DATA_OUT[LoopIndex + Scan_Line_Out_Offset] := Scan_line2_3_output[LoopIndex];
End_FOR;
A noté que les tableaux Scan_line2_1_output(Scan_line2_3_output,Scan_line2_3_output) sont de taille 2 [0,1].
J'aimerais avoir vos avis sur comment je peux résoudre ce problème.
NB:(*
« L'outil UMAC génère automatiquement cette section pour mapper les variables localisées (à l'adresse de registre de ligne de balayage héritée) avec les variables d'écriture DDT du dispositif non localisé M580. La modification du code ci-dessous peut entraîner un comportement inattendu. »
*)
J'espère que mon post vous trouve bien.
Je travail actuellement sur un projet de Migration du Quantum vers du M580.
J' ai utilisé le logiciel de migration de Schneider UMAC pour la conversion..
Jai fini avec les corrections et je suis actuellement dans la phase de simulation..
Seulement j'ai des erreurs système liés a des débordements d'index (%S20) qui mettent mon automate en mode HALT et aussi du whachdog.
Et les défauts me ramene sur le programme suivant :
Scan_Line_Out_Offset := 0;
Scan_Line_Out_Len := LENGTH_ARWORD(Scan_line2_1_output);
FOR LoopIndex:= 0 TO Scan_Line_Out_Len - 1 DO
E301_SWB_001.Outputs.E301_CR_01_SEPAM_DATA_OUT[LoopIndex + Scan_Line_Out_Offset] := Scan_line2_1_output[LoopIndex];
End_FOR;
Scan_Line_Out_Offset := 1;
Scan_Line_Out_Len := LENGTH_ARWORD (Scan_line2_2_output);
FOR LoopIndex:= 0 TO Scan_Line_Out_Len - 1 DO
E301_SWB_001 .Outputs.E301_CV_01_SEPAM_DATA_OUT[LoopIndex + Scan_Line_Out_Offset] := Scan_line2_2_output[LoopIndex];
End_FOR;
Scan_Line_Out_Offset := 2;
Scan_Line_Out_Len := LENGTH_ARWORD (Scan_line2_3_output);
FOR LoopIndex:= 0 TO Scan_Line_Out_Len - 1 DO
E301_SWB_001.Outputs.EINCOMING_DATA_OUT[LoopIndex + Scan_Line_Out_Offset] := Scan_line2_3_output[LoopIndex];
End_FOR;
A noté que les tableaux Scan_line2_1_output(Scan_line2_3_output,Scan_line2_3_output) sont de taille 2 [0,1].
J'aimerais avoir vos avis sur comment je peux résoudre ce problème.
NB:(*
« L'outil UMAC génère automatiquement cette section pour mapper les variables localisées (à l'adresse de registre de ligne de balayage héritée) avec les variables d'écriture DDT du dispositif non localisé M580. La modification du code ci-dessous peut entraîner un comportement inattendu. »
*)
- itasoft
- Mi homme - Mi automate

- Messages : 7803
- Enregistré le : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: Migration M580 : Debordment INDEX (Defaut %S20)
ça vient de la: Scan_line2_3_output[LoopIndex];
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
Re: Migration M580 : Debordment INDEX (Defaut %S20)
Quelle est l'intérêt de faire cet algorithme si j'arrive a récupérer/envoyer les informations directement par IOSCANNING et que je vienne les loger dans le
EINCOMING_DATA_OUT( dans le cas du Scan_line2_3_output[LoopIndex])
- itasoft
- Mi homme - Mi automate

- Messages : 7803
- Enregistré le : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: Migration M580 : Debordment INDEX (Defaut %S20)
dejà écris Scan_line2_3_output[0] pour confirmer que ça vient de ça ;
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
Re: Migration M580 : Debordment INDEX (Defaut %S20)
Etant donné que les information du Scan_line2_3_output[0,1] doivent être en voyer dans le E301_SWB_001.Outputs.EINCOMING_DATA_OUT[0,1]
J'ai fais une liaison directe : E301_SWB_001.Outputs.EINCOMING_DATA_OUT :=Scan_line2_3_output.
Vue que je suis en mode simulation pour le moment j'ai plus d'erreur
Que pensez vous de cette méthode?
- itasoft
- Mi homme - Mi automate

- Messages : 7803
- Enregistré le : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: Migration M580 : Debordment INDEX (Defaut %S20)
line2_3_output[0,1] c'est un tableau à deux dimensions ?
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
- itasoft
- Mi homme - Mi automate

- Messages : 7803
- Enregistré le : 20 oct. 2015, 10:15
- Localisation : Lyon
- Contact :
Re: Migration M580 : Debordment INDEX (Defaut %S20)
il faut donner les tailles de tous les tableaux
Automaticien privé (de tout)
itasoft@free.fr
itasoft@free.fr
