Programmierung der RS232/485-Schnittstelle
Im KL6xx1 Mode können beliebige serielle Protokolle implementiert werden. Dafür konfigurieren Sie im System Manager die Schnittstelle als KL6xx1-Mode.
Dieser Mode verhält sich wie die der seriellen Schnittstellen-Klemmen von Beckhoff. Das bedeutet nur, dass die Programmierung und das Interface dem einer seriellen Schnittstelle ähnelt. Die Beckhoff Supplement Bausteine (wie ModbusRTU, COMLIB, ...) der seriellen Schnittstelle bieten in der Regel den 64-Byte-Modus für die PC Schnittstelle an.
Sie können dieses Interface auch selber bedienen und Programmieren.
Die Datenstruktur besteht aus einem Control- und Status-Wort (2 Byte) und einem Daten Array. Das Control-Byte wird von dem SPS-Programm beschreiben und bestätigt das Senden der Daten mit dem TR-Bit. Ein toggeln des Bits (Flankenwechsel) veranlasst die Anzahl an Daten (Länge der zu schreibenden Daten OL-Bits) diese aus dem Interface zu schicken. Das RA-Bit quittiert, dass die Empfangsdaten gelesen worden sind und damit kann die Schnittstelle erkennen, dass sie neue Daten in das Daten-Array kopieren kann. Im Status-Wort kann man auslesen, wie viele Daten gültig sind. Das Reset-Bit (IR Control.2, positive Flanke) löscht die Buffer und setzt die Schnittstelle zurück. Die Schnittstelle quittiert den Befehl im Status-Wort ebenfalls im Reset-Bit (IA Status.2). Danach setzen Sie das Reset-Bit (IR Control.2) wieder auf False.
Bit |
15 |
14 |
13 |
12 |
11 |
10 |
09 |
08 |
07 |
06 |
05 |
04 |
03 |
02 |
01 |
00 |
Name |
Länge der zu schreibenden Daten (OL Bits) |
Reserve |
IR |
RA |
TR |
Legende
Bit |
Name |
Kommentar | |
---|---|---|---|
CW.3 |
Reserviert |
- |
- |
CW.2 |
IR |
1bin |
Die Steuerung fordert die Klemme zur Initialisierung auf. Die Sende- und Empfangsfunktionen werden gesperrt, die FIFO-Zeiger werden zurückgesetzt und die Schnittstelle wird mit den Werten initialisiert. Die Ausführung der Initialisierung wird von dem Interface mit dem Bit SW.2 (IA) quittiert. |
0bin |
Die Steuerung fordert von dem Interface wieder die Bereitschaft für den seriellen Datenaustausch. | ||
CW.1 |
RA |
toggle |
Die Steuerung quittiert die Entgegennahme von Daten mit Zustandsänderung dieses Bits. Erst daraufhin werden neue Daten von dem Interface zur Steuerung übertragen. |
CW.0 |
TR |
toggle |
Über eine Zustandsänderung dieses Bits teilt die Steuerung dem Interface mit, dass sich die in mit den OL-Bits angezeigte Anzahl von Bytes in den DataOut-Bytes befinden. Das Interface quittiert die Entgegennahme der Daten im Status-Wort mit Zustandsänderung des Bits SW.0 (TA). Erst daraufhin werden neue Daten von der Steuerung zum Interface übertragen. |
Bit |
15 |
14 |
13 |
12 |
11 |
10 |
09 |
08 |
07 |
06 |
05 |
04 |
03 |
02 |
01 |
00 |
Name |
Länge der zu Daten im Puffer ((IL-Bits) |
BUF_F |
IA |
RR |
TA |
Legende
Bit |
Name |
Kommentar | |
---|---|---|---|
SW.3 |
BUF_F (buffer full) |
1bin |
Das Empfangs-FIFO ist voll. Alle ab jetzt eingehenden Daten gehen verloren! |
SW.2 |
IA |
1bin |
Die Initialisierung wurde von dem Interface ausgeführt. |
0bin |
Das Interface ist wieder für den seriellen Datenaustausch bereit. | ||
SW.1 |
RR |
toggle |
Über eine Zustandsänderung dieses Bits teilt das Interface der Steuerung mit, dass sich die in IL-Bits angezeigte Anzahl von Bytes in den DataIn-Bytes befinden. Die Steuerung muss die Entgegennahme der Daten im Control-Wort mit Zustandsänderung des Bits CW.1 (RA) quittieren. Erst daraufhin werden neue Daten von dem Interface zur Steuerung übertragen. |
SW.0 |
TA |
toggle |
Das Interface quittiert die Entgegennahme von Daten mit Zustandsänderung dieses Bits. Erst daraufhin werden neue Daten von der Steuerung zum Interface übertragen. |
Ein einfaches Beispiel soll anhand der RS232 Schnittstelle das
Interface und Arbeitsweise erläutern. Das Beispiel sendet Daten
über die RS232 raus und durch eine Brücke (PIN 2 bis 3)
werden die Daten wieder empfangen. Download (zip)