Ich habe von Scripting (noch) nicht wirklich Ahnung und möchte jetzt aber folgende Aufgabe lösen:
Und zwar möchte ich auf meinem Lanner LEC-2310 Industrie-PC mit GPIOs, den aktuellen Zustand der digitalen Eingänge zyklisch abrufen und ihn dann anschliessend in eine XML-Datei schreiben. Den einzigen Weg den ich bis jetzt herausgefunden habe um an die DIs zu kommen, ist über ein Testprogramm des Herstellers. Startet man dieses, erhält man folgenden Output:
Code: Alles auswählen
root@pz-og38-rbb1:/usr/src/dio/bin# ./dio_tst
=== Lanner platform miscellaneous utility ===
LEB-3010 Digital IO V1.0 2011-03-24
Set All Ouput pin to High ...
==>Readback All Input pin, value = 0x0f
Set All Ouput pin to Low ...
==>Readback All Input pin, value = 0x0f
Set Ouput pin to 1010 ...
==>Readback All Input pin, value = 0x0f
Set Ouput pin to 0101 ...
==>Readback All Input pin, value = 0x0f
Test completed
Es wird jeweils nur ein DI gleichzeitig aktiv sein. Daraus ergeben sich folgende möglichen Zustände:
Kein DI gesetzt: 0x0f
DI1: 0x0e
DI2: 0x0d
DI3: 0x0b
Mittels folgender Befehlskette ist es mir gelungen den Wert zu isolieren:
Code: Alles auswählen
root@pz-og38-rbb1:/usr/src/dio/bin# ./dio_tst | grep value | tail -n 1 | grep -o '.$'
f
f = 0
e = 1
d = 2
b = 3
Und anschliessend in einer XML-Datei gespeichert werden. Hier hören meine Fähigkeiten ziemlich genau auf Wie stelle ich dies am besten an?
Vielen Dank schon mal.