Vérification automatisée programme
Posté : 04 mars 2020, 16:15
Bonjour,
Je travaille actuellement sur le code de plusieurs automates redondants Rockwell sous RSLogix5000.
Le client dispose d'un outil qui vient scanner automatiquement le code programme afin de vérifier celui-ci en suivant des critères très précis et très stricts (décomposition des noms de variables, de leur longueur, vérification de présence commentaire dans tout le code, vérification que chaque variable existante est lue et écrite dans le programme, etc...).
Je me suis aperçu que cet outil a ses limites, il n'arrive pas à entrer dans les structures à plus de deux niveaux (type Toto.XXX.yyy).
Le problème est que j'aimerais être sûr que toutes les variables, y compris les variables dans les structures, soient bien lues et écrites dans le programme.
Etant donné que l'outil du client ne parvient pas à rentrer correctement dans les structures, et que je ne vais certainement pas me frapper les références croisées sur plus de 3000 variables, j'aimerais créer un outil ou une macro pour réaliser la tâche et me faire apparaître les variables qui n'ont pas été codées correctement.
Ma première idée était d'imprimer la cross référence de la racine structure en XPS, et d'en extraire la variable destructive (Y/N) afin de savoir si la variable est lue/écrite.
Il suffirait de faire une macro qui scannerait la cross référence parallèlement au listing de la structure que je lui donnerais, et qui me retournerait si chaque variable a bien été lue/écrite.
Pour le coup, le fichier XPS qui sort est assez complexe et pas facilement utilisable tel quel et je me demande s'il y aurait une solution plus simple.
Des idées ?
Je travaille actuellement sur le code de plusieurs automates redondants Rockwell sous RSLogix5000.
Le client dispose d'un outil qui vient scanner automatiquement le code programme afin de vérifier celui-ci en suivant des critères très précis et très stricts (décomposition des noms de variables, de leur longueur, vérification de présence commentaire dans tout le code, vérification que chaque variable existante est lue et écrite dans le programme, etc...).
Je me suis aperçu que cet outil a ses limites, il n'arrive pas à entrer dans les structures à plus de deux niveaux (type Toto.XXX.yyy).
Le problème est que j'aimerais être sûr que toutes les variables, y compris les variables dans les structures, soient bien lues et écrites dans le programme.
Etant donné que l'outil du client ne parvient pas à rentrer correctement dans les structures, et que je ne vais certainement pas me frapper les références croisées sur plus de 3000 variables, j'aimerais créer un outil ou une macro pour réaliser la tâche et me faire apparaître les variables qui n'ont pas été codées correctement.
Ma première idée était d'imprimer la cross référence de la racine structure en XPS, et d'en extraire la variable destructive (Y/N) afin de savoir si la variable est lue/écrite.
Il suffirait de faire une macro qui scannerait la cross référence parallèlement au listing de la structure que je lui donnerais, et qui me retournerait si chaque variable a bien été lue/écrite.
Pour le coup, le fichier XPS qui sort est assez complexe et pas facilement utilisable tel quel et je me demande s'il y aurait une solution plus simple.
Des idées ?