Kommando Schnittstelle¶
Mit konfigurierbaren Kommandos können in Viper.NET einfache Schnittstellen umgesetzt werden: Kommandos beschreiben kleine alleinstehende Steuerungs-Aktionen, zum Beispiel das Setzen von Hardware-Bits auf feste Werte.
Vordefinierte Kommandos¶
CmdSend¶
Das CmdSend sendet ASCII-Daten an einen verbundenen Stream. Konfiguration:
StreamId: Der Stream zur Datenübermittlung.
DataToSend: ASCII Daten, die gesendet werden.
IgnoreCase:
WaitForAnswer: Gibt an, ob der Empfang einer Antwort abgewartet werden soll.
RegexAnswer: Optional: Regulärer Ausdruck zur Prüfung der Antwort (Ausdruck im .NET Format). Ein Fehler wird erzeugt, falls die Antwort nicht auf den eingestellten Ausdruck passt oder unerwartet keine Antwort empfangen wird. Der Ausdruck wird nur geprüft, falls WaitForAnswer aktiv ist.
Timeout: Zeitbegrenzung für das Kommando. Überschreitet die Sendedauer den Timeout, wird ein Fehler erzeugt. Die Prüfung erfolgt nur, falls WaitForAnswer aktiv ist.
CmdSetBits¶
Manipuliert Ausgangs-Bits. Zum Beispiel kann so ein Hubzylinder bewegt werden. Konfiguration:
BitIds: numerische IDs der Hardware-Bits als Kommaseparierte-Liste. Beispiel mit zwei Bits:
1234,9876Values: Wert der zu setzenden Bits als kommaseparierte Liste. 1 für aktiv, 0 für „inaktiv*. Beispiel mit zwei Bits:
0,1BitToASCII: Jedes Bit wird als ASCII-Zeichen in die Daten geschrieben. Dabei wird für jedes Bit ein Byte benötigt (EIN = ‚1‘ = 0x31 ; AUS = ‚0‘ = 0x30)
CmdPause¶
Das CmdPause erzeugt eine Verarbeitungspause. Zum Beispiel kann so zeitgesteuert das vollständige Ausfahren eines Zylinders nach einem CmdSetBits abgewartet werden. Konfiguration:
Milliseconds: Wartezeit in Millisekunden