Konsolenbefehle von CODESYS auf dem Raspberry ausführen

Um innerhalb eines Codesys-Programmes Konsolenbefehle von Raspberry auszuführen muss man im Vorhinein kleine Änderungen machen.
Ersteinmal die Config CODESYSControl.cfg ändern mit:
sudo nano /etc/CODESYSControl.cfg
Dort den Bereich [SysProcess] suchen, dieser sieht am Anfang wie folgt aus:
[SysProcess]
Command.0=shutdown

Diesen könnte man nun wie folgt ändern um ALLE Befehle zu erlauben:
[SysProcess]
Command=AllowAll

Aus Sicherheitsgründen sollte man aber die folgende Methode wählen!
Möchte man aber nur bestimmte Befehle erlauben kann man z.B. die Zeile mit dem weiteren Befehl an hängen:
[SysProcess]
Command.0=shutdown
Command.1=echo

Im CODESYS Projekt SysProcessExecuteCommand (aus der SysProcess.library) oder SysProcessExecuteCommand2 (der ist neu in SP7 und liefert den Rückgabewert in die IEC Welt hoch) aufrufen.
Btte unbedingt dieses Kommando (welches man dann z.B. über die PiFace-Taste starten könnte) in einem eigenen Task aufrufen, das ist wichtig(diese Kommando’s sind blockierend d.h der Task in IEC steht solange..)!
IF xRun THEN
SysProcessExecuteCommand('echo test > /dev/ttyO1', ADR(Result));
xRun := FALSE;
END_IF

Ein anderes Beispiel kopiert aus dem SPS-Forum:
IF xRun THEN
SysProcess.S ysProcessE xecuteCommand('echo test > /dev/ttyO1', ADR(Result));
xRun := FALSE;
END_IF