AutomationView valide vos séquences et votre configuration machine en temps réel. Les erreurs et avertissements apparaissent directement sur le canevas visuel et dans le panneau Problèmes (Ctrl+Shift+M) avant même de lancer une simulation ou d'exporter du code automate.

S001–S083)S001–S017)| Code | Gravité | Condition vérifiée |
|---|---|---|
S001 |
Erreur | Nom de séquence manquant ou invalide |
S002 |
Erreur | Étape initiale manquante ou invalide |
S003 |
Erreur | Noms d'étapes en doublon dans la même séquence |
S004 |
Avertissement | Blocage (deadlock) : l'étape n'a aucune transition sortante |
S005 |
Erreur | La transition cible une étape qui n'existe pas |
S006 |
Erreur | Syntaxe de condition de transition invalide |
S007 |
Erreur | Nom de cible d'action vide ou invalide |
S008 |
Avertissement | Conditions identiques sur les branches d'une divergence en OU |
S009 |
Erreur | Le nombre de branches de divergence et de convergence ne correspond pas |
S010 |
Erreur | Croisement de branches entre des divergences distinctes |
S011 |
Avertissement | Une étape reboucle directement sur elle-même (auto-boucle) |
S012 |
Avertissement | L'étape est inaccessible depuis l'étape initiale |
S013 |
Avertissement | Conditions susceptibles d'être vraies simultanément sur une divergence en OU (activé via automationview.diagnostics.divergenceOverlap) |
S014 |
Erreur | Cible de saut invalide |
S015 |
Avertissement | Déséquilibre de synchronisation sur des branches parallèles en ET |
S016 |
Avertissement | Branche vide dans une divergence |
S017 |
Erreur | Cycle dépourvu d'étape initiale |
S030–S032)| Code | Gravité | Condition vérifiée |
|---|---|---|
S030 |
Erreur | Erreur de syntaxe dans une condition d'action ([cond]) ou une expression d'affectation (:= expr) |
S031 |
Erreur | Opérande d'instruction manquant ou invalide |
S032 |
Avertissement | Le qualificateur requiert une durée (D, L, SD, DS, SL) mais aucune n'est définie |
S050–S059)| Code | Gravité | Condition vérifiée |
|---|---|---|
S050 |
Avertissement | Incompatibilité de type dans une comparaison, une affectation ou un opérande d'instruction |
S051 |
Erreur | Indice de tableau hors des bornes déclarées |
S052 |
Erreur | Le nombre de dimensions du tableau ne correspond pas à la déclaration |
S053 |
Erreur | Référence à un champ STRUCT inconnu |
S054 |
Erreur | Référence à une valeur ENUM inconnue |
S055 |
Erreur | Indexation d'une variable qui n'est pas un tableau |
S056 |
Erreur | Accès par point sur une variable qui n'est ni une STRUCT, ni un temporisateur, ni un compteur |
S057 |
Avertissement | Conversion numérique implicite restrictive |
S058 |
Erreur | Écriture dans une variable d'entrée en lecture seule (%I) |
S059 |
Avertissement | Variable locale inutilisée |
S070–S075)| Code | Gravité | Condition vérifiée |
|---|---|---|
S070 |
Erreur | Un élément référence un nom d'option non déclaré sur la séquence |
S071 |
Erreur | Déclaration d'option en doublon |
S072 |
Erreur | L'étape initiale est conditionnée par une option sans étape initiale de repli active |
S073 |
Avertissement | Une combinaison d'options déconnecte le graphe de séquence ou rend une branche inaccessible |
S074 |
Avertissement | Une transition relie des étapes ayant des conditions d'option incompatibles |
S075 |
Info | L'option de séquence déclarée n'est attribuée à aucun élément |
S080–S083)| Code | Gravité | Condition vérifiée |
|---|---|---|
S080 |
Avertissement | Plusieurs séquences écrivent dans la même variable avec le qualificateur N (non mémorisé) |
S081 |
Erreur | Une référence inter-séquences (Seq.StepName.X) cible une séquence ou une étape inconnue |
S082 |
Erreur | Nom de classe de séquence en doublon dans les fichiers du projet |
S083 |
Avertissement | Le type de données de la variable ne peut pas être déduit de son utilisation ; déclarez-le dans main.machine |
M001–M024)L'Éditeur de Machine valide main.machine à travers ses cinq onglets :
| Plage de codes | Domaine | Conditions vérifiées |
|---|---|---|
M001–M005 |
Projet et fichiers | Nom de projet manquant, syntaxe .machine invalide ou importations de fichiers .seq non résolues |
M006–M011 |
Instances | Classe de séquence inconnue, nom d'instance en doublon ou valeurs de paramètres d'instance invalides |
M012–M016 |
Architecture et E/S | Identifiant d'équipement inconnu, nom de station en doublon, conflit d'adresses matérielles ou type de voie incompatible |
M017–M021 |
Types de données et variables | Nom de STRUCT/ENUM en doublon, définition de structure circulaire, bornes de tableau invalides (low > high) ou valeur initiale invalide |
M022–M024 |
Options d'instance | Nom d'option inconnu passé à add_instance, valeur d'option non booléenne ou option appliquée à une séquence non dynamique |
Pour détecter les conditions non mutuellement exclusives entre les branches d'une divergence en OU (S013), activez le paramètre dans la configuration de votre espace de travail :
| Paramètre | Type | Défaut | Description |
|---|---|---|---|
automationview.diagnostics.divergenceOverlap |
boolean |
false |
Avertir lorsque deux branches d'une divergence en OU peuvent être évaluées à TRUE simultanément |