Einstellungen für den RK512 Treiber
[rk512] 3964R
- Typ
- int
- Default
- 1
- Wertebereich
- 0|1
Diese Einstellung erlaubt es zwischen den Protokollen 3964 und 3964R umzuschalten. 3964R
unterscheidet sich von 3964 durch eine längere Quittungsverzugszeit und eine zusätzliche
Prüfsumme in den Telegrammen. Mögliche Werte sind '0' für 3964 und '1' für 3964R.
Beispiel:
Es wird das Protokoll 3964 verwendet.
3964R = 0
[rk512] baudrate
- Typ
- int
- Default
- 9600
- Wertebereich
- 2400..9600 (19200)
Gibt die Baudrate für die serielle Schnittstelle an. Der Defaultwert ist 9600. Typische
Werte sind 2400, 4800 und 9600. In Verbindung mit einer S5 beträgt die Untergrenze für
die Übertragungsrate 2400 Baud, die Obergrenze 9600 Baud. 19200 Baud werden von einer S5
nur unter bestimmten Voraussetzungen unterstützt.
Beispiel:
Einstellen der Baudrate auf 9600 Baud.
baudrate = 9600
[rk512] connRetries
- Typ
- int
- Default
- 6
- Wertebereich
- >= 0
Gibt die Anzahl der Wiederholungen an, um eine Verbindung mit der SPS aufzubauen, damit
ein Telegramm verschickt werden kann. Mögliche Werte sind alle natürlichen Zahlen
einschließlich 0. Der Defaultwert ist 6. Normalerweise muss dieser Wert nicht verändert
werden.
Beispiel:
Einstellen der Anzahl der Wiederholungen auf 8.
connRetries = 8
[rk512] device
- Typ
- string string
Dieser Config-Eintrag gibt den Namen der seriellen Schnittstelle und die zugehörigen
Einstellungen an. Der Eintrag hat nur unter Windows eine Bedeutung. Er sollte nicht
zusammen mit "baudrate" oder "parity" verwendet werden.
device = "COM1" "9600,e,8,1" # Kein Handshaking
device = "COM1" "9600,e,8,1,p" # Hardwarehandshaking
Einstellungen für 9600 Baud, gerade Parität, 8 Bits, 1 Stopbit, p schaltet Handshaking
ein.
[rk512] deviceName
- Typ
- string
Gibt den Namen der seriellen Schnittstelle an, über die mit der SPS kommuniziert werden
soll. Dieser Eintrag muss vorhanden sein. Die Kommunikation erfolgt nach RS232 über eine
einfache 3-Draht Leitung.
Beispiel:
Weist dem Treiber die Schnittstelle mit dem Namen /dev/tty00 zu.
devicename = "/dev/tty00"
[rk512] drvGQ
- Typ
- string
Gibt den Datenpunktnamen an, der eine Generalabfrage auslöst. Jedes Verschicken dieses
Datenpunktes veranlasst den Treiber alle Datenpunkte, die als Eingang parametriert sind,
abzufragen und die Werte dem WinCC OA System mitzuteilen. Für den Datenpunktnamen wird
zweckmäßig _Driver_num.GQ verwendet, wobei num die Treibernummer ist. Der
Datenpunktelementtyp ist natürliche Zahl, der Wert wird vom Treiber nicht ausgewertet.
Wird dieser Eintrag nicht in der Konfigurationsdatei verwendet, so ist keine
Generalabfrage möglich.
Beispiel:
Jedes Schreiben auf _Driver_1.GQ:_original.._value löst eine Generalabfrage aus.
drvGQ = "_Driver_1.GQ"
[rk512] drvPollMode
- Typ
- string
Gibt den Datenpunktnamen an, über den der Pollingmodus ein- und ausgeschaltet wird. Für
diesen Wert wird zweckmäßig _Driver_num.PM verwendet, wobei num die Treibernummer ist.
Im Allgemeinen wird der Pollingmodus nur zur Fehlersuche ausgeschaltet.
Beispiel:
Wird der Datenpunkt auf 0 gesetzt, pollt der Treiber keine Datenpunkte mehr.
drvPollMode = "_Driver_1.PM"
[rk512] drvSQ
- Typ
- string
Gibt den Datenpunktnamen an, der eine Einzelabfrage auslöst. Wird dieser Datenpunkt
verschickt und enthält er den Namen eines Datenpunktes, der auf Einzelabfrage
parametriert wurde, so wird diese durchgeführt. Zweckmäßigerweise wird für diesen Wert
_Driver_num.SQ verwendet, wobei num die Treibernummer ist. Das Datenpunktelement ist vom
Typ Bezeichner. Um eine Einzelabfrage auszulösen, muss der Name des entsprechenden
Datenpunkts in _Driver_num.SQ:_original.._value übergeben werden. Wird dieser Eintrag
nicht in der Konfigurationsdatei aufgeführt, so kann keine Einzelabfrage ausgelöst
werden.
Beispiel:
Wird ein Datenpunktnamen in _Driver_1.SQ:_original.._value übergeben, so führt der
Treiber für diesen Datenpunkt eine Einzelabfrage aus.
drvSQ = "_Driver_1.SQ"
[rk512] floatIsIEEE
- Typ
- string
- Default
- No
- Wertebereich
- Yes|No
Dieser Eintrag gibt an, ob float-Werte im IEEE-Format oder im RK512-spezifischen Format
übertragen werden sollen. Der Default ist das RK512-spezifische Format. Da bei den
meisten SPSen das IEEE-Format verwendet wird, muss hier der Eintrag floatIsIEEE = "Yes"
in der Config-Datei eingetragen werden.
[rk512]
floatIsIEEE = "Yes"
[rk512] parity
- Typ
- string
- Default
- even
- Wertebereich
- even, odd, none
Stellt die Parität für die serielle Schnittstelle ein. Mögliche Werte sind "even", "odd"
und "none" für gerade, ungerade und keine Parität. Der Defaultwert ist "even". Die
Parität ist von der SPS als "even" vorgegeben. Eine abweichende Einstellung ist daher
nur sinnvoll, wenn mit einem speziellen Gerät über das RK512-Protokoll kommuniziert
werden soll.
Beispiel:
Einstellen der Parität auf ungerade.
parity = "odd"
[rk512] pollMode
- Typ
- bool
- Default
- 1
- Wertebereich
- 0|1
Schaltet das Pollen ein und aus. Mögliche Werte sind 0 = Pollen ausgeschaltet, und 1 =
Pollen einschaltet. Der Defaultwert ist 1, Datenpunkte werden also gepollt. Diese
Einstellung kann durch Schreiben auf den Datenpunkt, der unter drvPollMode angegeben
wurde, zur Laufzeit geändert werden.
Beispiel:
Ausschalten des Pollen von Datenpunkten.
pollMode = 0
[rk512] priority
- Typ
- string
- Default
- low
- Wertebereich
- high|low
Gibt die Priorität des Treibers bei einem Initialisierungskonflikt an. Mögliche Werte
sind "low" und "high". Der Defaultwert ist "low". Versuchen SPS und Treiber
gleichzeitig, ein Telegramm zu verschicken, wird anhand der Priorität entschieden, wer
tatsächlich senden darf. Die Priorität wird an der SPS hardwaremäßig eingestellt. Für
den Treiber muss die entgegengesetzte Priorität eingestellt werden.
Beispiel:
Einstellen einer hohen Priorität.
priority = "high"
[rk512] QVZ
- Typ
- float
- Default
- 2.0 [sec]
- Wertebereich
- > 2.0
Gibt die Zeit in Sekunden an, innerhalb derer ein Verbindungsaufbau oder -abbau von der
SPS quittiert werden muss. Der Defaultwert ist 2.0 Sekunden. Wird das Protokoll 3964
anstelle von 3964R verwendet, sollte dieser Wert auf 0.55 Sekunden eingestellt werden.
Da diese Einstellung nur den Treiber betrifft, nicht aber die SPS, sollten kleinere
Werte nicht verwendet werden.
Beispiel:
Einstellen der Quittungsverzugszeit auf 0.55 Sekunden.
QVZ = 0.55
[rk512] restartFetchOnError
- Typ
- string
- Default
- No
- Wertebereich
- Yes|No
Dieser Config-Eintrag (Type: string, default: "no") gibt an, ob bei einem
Übertragungsfehler in Melderichtung (Daten werden von der SPS zum Treiber übertragen)
wieder mit einem Befehlstelegramm (dem ersten Telegramm) begonnen werden soll ("yes")
oder ob ein Folgetelegramm wiederholt werden kann.
[rk512]
restartFetchOnError = "yes"
[rk512] restartSendOnError
- Typ
- string
- Default
- No
- Wertebereich
- Yes|No
Dieser Config-Eintrag (Type: string, default: "no") gibt an, ob bei einem
Übertragungsfehler in Befehlsrichtung (Daten werden vom Treiber zur SPS übertragen)
wieder mit einem Befehlstelegramm (dem ersten Telegramm) begonnen werden soll ("yes")
oder ob ein Folgetelegramm wiederholt werden kann.
[rk512]
restartSendOnError = "yes"
[rk512] rk512DpName
- Typ
- string
- Default
- _RK512_<num>
Dieser Config-Eintrag gibt den Namen des internen Datenpunktes vom Typ _RK512 (Typ:
string) an. Normalerweise ist der Name "_RK512_<num>". In einem redundanten System
müssen sich die Namen der beiden Treiber jedoch unterscheiden und es sind folgende
Einträge nötig:
[rk512]
(host1) rk512DpName = "_RK512_<num>"
(host2) rk512DpName = "_RK512_2_<num>"
[rk512] sendRetries
- Typ
- int
- Default
- 6
- Wertebereich
- 6gt;= 0
Gibt die Anzahl der Wiederholungen an, um ein Telegramm nach erfolgreichen
Verbindungsversuch an die SPS zu verschicken. Mögliche Werte sind alle natürlichen
Zahlen einschließlich 0. Der Defaultwert ist 6. Im Normalfall muss dieser Wert nicht
verändert werden.
Beispiel:
Einstellen der Anzahl der Wiederholungen auf 8.
sendRetries = 8
[rk512] talas
- Typ
- string
- Default
- No
- Wertebereich
- Yes|No
Dieser Eintrag gibt an, ob der Treiber an einen TALAS-Rechner angekoppelt wird. In
diesem Fall werden immer ganze Datenbausteine ausgelesen. Die ersten Wörter enthalten
die Quellzeit der Daten, auf die Daten folgt noch ein Statuswort.
[rk512] TVZ
- Typ
- float
- Default
- 5.0 [sec]
- Wertebereich
- > 5.0
Dieser Config-Eintrag TVZ (Telegrammverzögerungszeit) gibt die Zeit in Sekunden,
innerhalb derer auf ein Befehlstelegramm ein Reaktionstelegramm eintreffen muss. Der
Wert sollte mindestens doppelt so groß sein wie die QVZ (Quittierverzögerungszeit),
damit die SPS Gelegenheit hat, einen Timeout zu erkennen und ihr Reaktionstelegramm zu
wiederholen.
Beispiel:
[rk512]
TVZ = 6.5
[rk512] ZVZ
- Typ
- float
- Default
- 0.220 [sec]
- Wertebereich
- > 0.220
Gibt die Zeit in Sekunden an, innerhalb derer ein weiteres Zeichen eines Telegramms
empfangen werden muss. Bleibt dieses aus, so wird ein Fehlercode an die SPS verschickt.
Der Defaultwert ist 0.22 Sekunden. Da diese Einstellung nur den Treiber betrifft, nicht
aber die SPS, sollten kleinere Werte nicht verwendet werden. Im allgemeinen muss die
Defaulteinstellung nicht geändert werden.
Beispiel:
Einstellen der Zeichenverzugszeit auf 0.30 Sekunden.
ZVZ = 0.30