Application sur l'automate
Chargement de l'application dans l'automate
Condition : L'application a été compilée sans erreur.
Pour plus d'informations, voir : Vérification du programme d'application pour les erreurs
Choisissez la commande
.Une boîte de dialogue apparaît demandant si l'application doit être chargée sur le contrôleur.
cliquer sur Oui.
L'application est chargée sur le contrôleur. Les entrées pour le contrôleur et l'application dans la fenêtre équipement sont surlignés en vert. derrière l'objet Application des stands
Stop
. L'état actuel du contrôleur apparaît dans la barre des tâches :.
Démarrer l'application
Si vous avez suivi complètement le didacticiel jusqu'à présent, vous pouvez maintenant démarrer l'application Application sur l'automate Appareil (CODESYS Control Win) utiliser.
Faites un clic droit dans la fenêtre équipement sur l'objet Application et sélectionnez la commande dans le menu contextuel Démarrer en dehors.
Le programme est en cours d'exécution. Les entrées pour le contrôleur et l'application dans la fenêtre équipement sont surlignés en vert. derrière l'objet Application des stands
run
. L'état actuel du contrôleur apparaît dans la barre des tâches :.
Surveillance et écriture unique de valeurs variables lors de l'exécution
Dans ce qui suit, vous examinerez la "surveillance" des valeurs de variables dans les différents blocs de programme et suspendez CODESYS une fois une valeur de variable spécifique sur le contrôleur.
Vous pouvez voir les valeurs réelles des variables d'application dans les vues en ligne des éditeurs de blocs ou dans les listes de surveillance. Dans l'exemple ici, nous nous limitons à la surveillance dans l'éditeur de blocs.
Condition : l'application est en cours d'exécution sur le contrôleur.
Ouvrez les objets en double-cliquant
PLC_PRG
,Signals
,Simulation
etGlob_Var
les vues en ligne des éditeurs dans l'arborescence des appareils.Dans la partie déclaration de chaque vue apparaît dans le tableau des expressions dans la colonne valeur (3) la valeur réelle de la variable (1) sur le régulateur (voir figure).
Le suivi dans la partie implémentation dépend du langage d'implémentation : Dans le cas de variables non booléennes, la valeur est toujours dans un champ rectangulaire à droite de l'identifiant. Dans l'éditeur ST, cela s'applique également aux variables booléennes. Nous appelons cet affichage "surveillance en ligne". Dans les éditeurs graphiques, la valeur d'une variable booléenne est indiquée par la couleur de la ligne de liaison des sorties : noir pour
FALSE
, bleu pourTRUE
:Envisagez de modifier les valeurs des variables dans les différents blocs de construction. Par exemple, voir le GVL
Glob_Var
, comment le traitement du programme de simulation modifie les valeurs derTempActual
etxCompressor
changer.
Réglage unique des valeurs de balise sur le contrôleur :
Mettre l'accent sur la vue en ligne de GVL
Glob_Var
.Pour spécifier une nouvelle valeur cible, double-cliquez sur l'impression
rTempSet
dans la colonne Valeur préparée (2).Un champ de saisie s'ouvre.
Portez la valeur
9
et quittez le champ de saisie.Pour indiquer que la porte est ouverte, cliquez sur Expression
xDoorOpen
1x sur le terrain Valeur préparée. La valeurTRUE
est saisi. Cliquez 3 fois de plus pour voir que vous avez la valeur préparéeFALSE
, puis retour à vide, puis retour àTRUE
peut basculer.À la valeur préparée
TRUE
pour écrire une fois dans la variable, appuyez sur ctrl + F7.Les deux valeurs sont chacune dans la colonne valeur (3) transféré. La variable
xDoorOpen
maintenant ne change plus sa valeur et la température cible est maintenant de 9 degrés. La variabletimTemp
modifications de la valeur1s
, puisque la porte du réfrigérateur est maintenant "ouverte" et que le chauffage est terminéSimulation
plus vite qu'avant (2s
) devrait avoir lieu.
Définition de points d'arrêt et pas à pas lors de l'exécution
"Débogage": Vous souhaitez vérifier les valeurs des variables à certains points de code pour le dépannage. Pour cela, vous pouvez définir des points d'arrêt pour le traitement et lancer l'exécution pas à pas des instructions.
Condition préalable : l'application est chargée sur le contrôleur et en cours d'exécution.
Ouvrir en double-cliquant
Simulation
le programme dans l'éditeur.Placer le curseur dans la ligne de code
iCounter := iCoutner + 1;
et appuyez sur F9Le symbole apparaît devant la ligne de code
. Il indique qu'un point d'arrêt est défini sur cette ligne. L'icône devient immédiatement
. La flèche jaune pointe toujours vers la prochaine instruction à traiter. Apparaît dans la barre des tâches
à la place de
.
Regardez la valeur de la variable
iCounter
dans la surveillance en ligne ou dans la partie déclaration du programmeSimulation
.La valeur de la variable ne change plus. Le traitement a été arrêté au point d'arrêt.
presse F5, qui recommence le traitement.
Le programme s'arrête à nouveau au point d'arrêt après 1 cycle.
iCounter
a été incrémenté de 1.presse F8pour exécuter l'étape de traitement suivante.
RETOURNER au bout de la ligne
iCounter := iCounter + 1;
Les instructions sont surlignées en jaune.Appuyez à nouveau F8pour exécuter l'étape de traitement suivante.
Le traitement passe à l'éditeur de
PLC_PRG
. En appuyant à plusieurs reprises F8 montre comment exécuter le programme étape par étape. L'instruction à exécuter est à nouveau marquée d'une flèche jaune.Pour désactiver le point d'arrêt et revenir au traitement normal, placez à nouveau le curseur sur la ligne de code et appuyez sur F9. Puis appuyez F5pour remettre l'application en mode
apporter à.
Exécution d'un seul cycle à l'exécution
Condition préalable : l'application est chargée sur le contrôleur et en cours d'exécution.
Comme pour l'étape ci-dessus, observez à nouveau la ligne
iCounter := iCounter + 1;
au programmeSimulation
.presse ctrl + F5 ou choisissez la commande exécuter un seul cycle.
Le traitement s'exécute sur 1 cycle et s'arrête à nouveau au point d'arrêt.
iCounter
a été incrémenté de 1.Appuyez plusieurs fois ctrl + F5pour voir des cycles simples. Puis appuyez à nouveau F5.
Le programme s'exécute à nouveau sans arrêt et sans valeurs forcées. La variable
temp
a de nouveau de la valeur1s
. réapparaît dans la barre d'état.