ExecuteScript : Exécution de commandes de script
Description des blocs fonction
Ce bloc fonction peut exécuter les commandes de script de carte SD suivantes :
oDownload
oUpload
oSetNodeName
oDelete
oReboot
Pour plus d'informations sur le format du fichier de script requis, consultez la section Création de fichiers de script.
Bibliothèque et espace de noms
Nom de la bibliothèque : PLCSystemBase
Espace de noms : PLCSystemBase
Représentation en langage IL et ST
Pour voir la représentation générale en langage IL ou ST, consultez le chapitre Représentation des fonctions et blocs fonction.
Description des variables d'E/S
Le tableau suivant décrit les variables d'entrée :
Entrées |
Type |
Commentaire |
---|---|---|
xExecute |
BOOL |
En cas de détection d'un front montant, lance l'exécution du bloc fonction. En cas de détection d'un front descendant, réinitialise les sorties du bloc fonction lorsque toute exécution en cours prend fin. NOTE : Avec le front descendant, la fonction continue jusqu'à la fin de son exécution et la mise à jour de ses sorties, lesquelles sont conservées pendant un cycle de scrutation avant d'être réinitialisées. |
sCmd |
STRING |
Syntaxe de commande de script de carte SD. L'exécution simultanée de commandes n'est pas autorisée : si une commande est exécutée par un autre bloc fonctionnel ou un script de carte SD, le bloc fonctionnel met la commande en file d'attente et ne l'exécute pas immédiatement. NOTE : un script de carte SD exécuté à partir d'une carte SD est considéré en cours d'exécution jusqu'au retrait de la carte SD. |
Le tableau suivant décrit les variables de sortie :
Sortie |
Type |
Commentaire |
---|---|---|
xDone |
BOOL |
TRUE indique que l'action a abouti. |
xBusy |
BOOL |
TRUE indique que le bloc fonction s'exécute. |
xError |
BOOL |
TRUE indique une détection d'erreur. Le bloc fonction annule l'action. |
eError |
Indique le type de l'erreur détectée lors de l'exécution du script. |
Cet exemple décrit comment exécuter une commande de script Upload :
VAR
EXEC_FLAG: BOOL;
ExecuteScript: ExecuteScript;
END_VAR
ExecuteScript(
xExecute:= EXEC_FLAG,
sCmd:= 'Upload "/usr/Syslog/*"',
xDone=> ,
xBusy=> ,
xError=> ,
eError=> );