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