Anhang A - Weitere Bibliotheken WAGO-I/O-PRO 32 Bibliothek 3964R_RK512_01.lib Die Bibliothek "3964R_RK512_01.lib" beinhaltet die Funktionsbausteine "PROCEDURE_3964R", "RK512_ACTIVE", "RK512_ACTIVE_EN", "RK512_PASSIVE", "RK512_PASSIVE_EN" und "RK512_ACTIVE_PASSiVE_EN". Der Baustein "PROCEDURE_3964R", erweitert die Funktionalität eines programmierbaren Feldbus-Controllers um die Funktionalität der Prozedur 3964R. Die Bausteine "RK512_ACTIVE" und "RK512_ACTIVE_EN" setzen auf der "PROCEDURE_3964R" auf und ermöglichen das Senden (SEND) und Holen (FETCH) von Daten von einem Kommunikationspartner nach dem Protokoll RK512. Die Bausteine "RK512_PASSIVE" und "RK512_PASSIVE_EN" (RECEIVE) setzen auf der "PROCEDURE_3964R" auf und stellen Datenfelder zum Beschreiben (SEND) und Holen (FETCH) von Daten durch einen Kommunikationspartner nach dem Protokoll RK512 bereit. Es werden die Aufträge SEND DB und FETCH DB unterstützt. Der Baustein "RK512_ACTIVE_PASSIVE_EN" setzt auf der "PROCEDURE_3964R" auf und vereinigt die Funktionen SEND, FETCH, und RECEIVE. Es werden keine Folgetelegramme unterstützt. Diese Bibliothek ist kompatibel zur 3964r_01.lib und erweitert diese. WAGO-I/O-PRO 32 Version 1.0.2 3964R_RK512_01.lib - 1 PROCEDURE_3964R 2 – 3964R_RK512_01.lib ml00401d WAGO-I/O-PRO 32 Anhang A - Weitere Bibliotheken Inhalt 3964R_RK512_01.lib 4 PROCEDURE_3964R ................................................................................. 4 typ3964R_BUFFER (Datentyp) .................................................................. 9 enum3964R_ERROR(Enum) .................................................................... 10 RK512_ACTIVE ....................................................................................... 12 RK512_ACTIVE_EN ................................................................................ 15 enumRK512_COMMAND (Enum)........................................................... 18 RK512_PASSIVE...................................................................................... 19 RK512_PASSIVE_EN .............................................................................. 22 typDB (Datentyp)....................................................................................... 25 typRK512_DB_Field (Datentyp)............................................................... 26 RK512_ACTIVE_PASSIVE_EN.............................................................. 27 WAGO-I/O-PRO 32 Version 1.0.2 3964R_RK512_01.lib - 3 PROCEDURE_3964R 3964R_RK512_01.lib PROCEDURE_3964R WAGO-I/O-PRO 32 Elemente der Bibliothek Kategorie: Name: Typ: Name der Bibliothek: Verwendete Bibliotheken Kommunikation PROCEDURE_3964R Funktionsblock X Programm Funktion 3964R_RK512_01.lib SerComm.lib Serial_Interface_01.lib Standard.lib Programmierbare Feldbus-Controller ausser Modbus-Controller (750-812; 750–814; 750–815; 750–816) Anwendbar für: Eingangsparameter: bCOM_PORT cbCOM_BAUDRATE cpCOM_PARITY csCOM_STOPBITS cbsCOM_BYTESIZE cfCOM_FLOW_CONTROL xHIGH_PRIORITY 4 – 3964R_RK512_01.lib Datentyp: BYTE Kommentar: Portnummer der Schnittstelle 0x01 -> Serviceschnittstelle 0x02 -> 1. gesteckte serielle Klemme 0x03 -> 2. gesteckte serielle Klemme u.s.w. COM_ BAUD_1200 := 120, BAUDRATE BAUD_2400 := 240, BAUD_4800 := 480, BAUD_9600 := 960, BAUD_19200 := 1920, BAUDRATE_TERMINAL_DEFAULT := 0x7FFF COM_ PARITY_NO:=0, PARITY PARITY_ODD:=1, PARITY_EVEN:=2, PARITY_TERMINAL_DEFAULT := 0x7FFF COM_ STOPBITS_1 := 1, STOPBITS STOPBITS_2 := 2, STOPBITS_TERMINAL_DEFAULT := 0x7FFF COM_ BS_7 :=7, BYTESIZE BS_8 :=8, BYTESIZE_TERMINAL_DEFAULT := 0x7FFF COM_ NO_FLOW_CONTROL :=0, FLOW_ XON_XOFF :=1, CONTROL RTS_CTS:=2, FLOW_CONTROL_TERMINAL_DEFAULT := 0x7FFF BOOL Teilnehmerpriorität ml00401d WAGO-I/O-PRO 32 Anhang A - Weitere Bibliotheken WAGO-I/O-PRO 32 Elemente der Bibliothek Ausgangsparameter: ERROR Datentyp: Kommentar: enum3964R ERR_3964R_NO_ERROR := 0, _ERROR ERR_3964R_CHAR_DELAY := 1, ERR_3964R_FRAME_TO_LONG := 2, ERR_3964R_BCC_ERROR := 3, ERR_3964R_BLOCK_DELAY := 4, ERR_3964R_RECEIPT_DELAY := 5, ERR_3964R_UNEXPECTED_CHAR := 6, ERR_3964R_CONNECT_ERROR := 7, ERR_3964R_CONFIRMATION_ERROR := 8, ERROR_RK_OUT_OF_RANGE :=16#0010, ERROR_RK_NOT_SUPPORTED :=16#0020, ERROR_RK_UNKNOWN_TELE := 16#0030, ERROR_RK_TELE_LENGTH := 16#0040, ERROR_RK_KM_BUSY := 16#0050, ERROR_RK_UNKNOWN_COMMAND :=16#0060, ERROR_RK_INVALID_QUANTITY := 16#0070, ERROR_RK_TIME_OUT_RESPONSE:= 16#0080, ERROR_RK_UNKNOWN_OBJECT := 16#0090, ERROR_RK_REMOTE_STATION := 16#0100, ERR_COMPORT := 16#FFnn Ein-/Ausgangsparameter: xNEW_DATA_RECEIVED Datentyp: BOOL Kommentar: Nach dem Erhalt eines Telegrammes wird dieser Parameter von dem Baustein auf TRUE gesetzt und dem Anwender so der Erhalt eines Telegrammes mitgeteilt. Die Anwendung muß nach der Datenübernahme diesen Parameter löschen. utRECEIVE_BUFFER typ3964R_ BUFFER TYPE typ3964R_BUFFER : STRUCT Count : INT; (*Anzahl gültiger Bytes *) Data : ARRAY[0..127] OF BYTE; END_STRUCT END_TYPE utSEND_BUFFER typ3964R_ BUFFER TYPE typ3964R_BUFFER : STRUCT Count : INT; (*Anzahl gültiger Bytes *) Data : ARRAY[0..127] OF BYTE; END_STRUCT END_TYPE xSEND_DATA BOOL Durch einmaliges setzen dieses Parameters wird ein Sendeauftrag ausgelöst. Der Baustein löscht diesen Parameter nach der Beendigung dieses Auftrages. WAGO-I/O-PRO 32 Version 1.0.2 3964R_RK512_01.lib - 5 PROCEDURE_3964R WAGO-I/O-PRO 32 Elemente der Bibliothek Graphische Darstellung: Funktionsbeschreibung: Der Funktionsbaustein „PROCEDURE_3964R“ muß zyklisch im Hauptprogramm aufgerufen werden. Der Baustein unterstützt die Kommunikation einer seriellen Verbindung zu einem Kommunikationspartner mit dem Protokoll 3964R. Der Treiber arbeitet mit folgenden Reaktionszeiten: QVZ = 2 sec Quittungsverzugszeit ZVZ = 220 ms Zeichenverzugszeit BVZ = 4 sec Blockverzugszeit SYZ = 1 sec Synchronisationszeit Hinweis : Bei zu grosser Zykluszeit des Anwenderprogrammes kann es zu Störungen in der Kommunikation kommen (ggf. Verwendung des Tasksystems bei 841). 6 – 3964R_RK512_01.lib ml00401d WAGO-I/O-PRO 32 Anhang A - Weitere Bibliotheken WAGO-I/O-PRO 32 Elemente der Bibliothek Nachricht empfangen: Über den Parameter “xNEW_DATA_RECEIVED” = TRUE wird dem Anwender der Erhalt eines Telegrammes mitgeteilt. Das Anwendungsprogramm prüft nun den Parameter “ERROR” auf “ERR_3964R_NO_ERROR” und übernimmt im fehlerfreien Fall die durch das Empfangsstrukturelement “Count” angegebene Anzahl gültiger Zeichen aus dem Empfangsstrukturarray “Data”. Anschließend muß das Anwendungsprogramm den Parameter “xNEW_DATA_RECEIVED” löschen. Codebeispiel: IF xNEW_DATA_RECEIVED = TRUE THEN IF ERROR = ERR_3964R_NO_ERROR THEN FOR I := 0 to (utRECEIVE_BUFFER.Count – 1) DO (* Daten utRECEIVE_BUFFER.Data[ I ] übernehmen *) END_FOR xNEW_DATA_RECEIVED := FALSE; END_IF (* NO ERROR *) END_IF (* Daten erhalten *) Hinweis: Wird der Parameter “xNEW_DATA_RECEIVED” nicht gelöscht, dann wird trotzdem das nächste gültige Telegramm im Empfangsbuffer eingetragen und vorherige Daten überschrieben. WAGO-I/O-PRO 32 Version 1.0.2 3964R_RK512_01.lib - 7 PROCEDURE_3964R WAGO-I/O-PRO 32 Elemente der Bibliothek Nachricht senden: Über den Parameter “xSEND_DATA” = FALSE prüft der Anwender ob der Baustein bereit ist einen Sendeauftrag anzunehmen. Wenn der Baustein sendebereit ist übergibt der Anwender seine Nutzdaten in dem Sendestrukturarray „Data“ sowie die Anzahl der zu sendenden Bytes im Sendestrukturelement „Count“ und stößt durch setzen des Parameters „xSEND_DATA“ den Auftrag an. Nach der Ausführung des Auftrages löscht der Baustein automatisch den Parameter „xSEND_DATA“ und signalisiert so dem Anwender die Ausführung des Auftrages. Der Anwender kann nun die fehlerfreie Ausführung durch testen des Parameters „ERROR“ prüfen. Codebeispiel: IF xSEND_DATA = FALSE THEN (* Sendedaten bereitstellen *) utSEND_BUFFER.Data[ 0 ] := 16#01; utSEND_BUFFER.Data[ 1 ] := 16#02; utSEND_BUFFER.Data[ 2 ] := 16#03; (* Anzahl der zu sendenden Daten eintragen *) utSEND_BUFFER.Count := 3; (* Auftrag anstossen *) xSEND_DATA := TRUE; END_IF (* Bereit zum senden *) 8 – 3964R_RK512_01.lib ml00401d WAGO-I/O-PRO 32 Anhang A - Weitere Bibliotheken typ3964R_BUFFER (Datentyp) WAGO-I/O-PRO 32 Elemente der Bibliothek Kategorie: Name: Typ: Name der Bibliothek: Struktur: Element: Count Data typ3964R_BUFFER Datentyp X Enumeration 3964R_RK512_01.lib Datentyp: INT ARRAY[0..127] OF BYTE Deklaration: TYPE typ3964R_BUFFER : STRUCT Count : Data : END_STRUCT END_TYPE Beschreibung: Anzahl Zeichen im Array Bytearray für Nutzdaten INT; ARRAY[0..127] OF BYTE; Beschreibung: Diese Struktur unterstützt den Datenaustausch zum Anwender. WAGO-I/O-PRO 32 Version 1.0.2 3964R_RK512_01.lib - 9 enum3964R_ERROR(Enum) enum3964R_ERROR(Enum) WAGO-I/O-PRO 32 Elemente der Bibliothek Kategorie: Name: Typ: Name der Bibliothek: enum3964R_ERROR Enumeration X Datentyp 3964R_RK512_01.lib Elemente: ERR_3964R_NO_ERROR ERR_3964R_CHAR_DELAY ERR_3964R_FRAME_TO_LONG ERR_3964R_BCC_ERROR ERR_3964R_BLOCK_DELAY ERR_3964R_RECEIPT_DELAY ERR_3964R_UNEXPECTED_CHAR ERR_3964R_CONNECT_ERROR ERR_3964R_CONFIRMATION_ERROR Wert: 16#0000 16#0001 16#0002 16#0003 16#0004 16#0005 16#0006 16#0007 16#0008 Kommentar: Kein Fehler Zeichenverzugszeit überschritten Falsche Framelänge Kontrollsummenfehler Blockverzugszeit überschritten Datenquittungsfehler unerwartetes Zeichen empfangen Verbindungsfehler Quittungsfehler ERROR_RK_OUT_OF_RANGE ERROR_RK_NOT_SUPPORTED ERROR_RK_UNKNOWN_TELE ERROR_RK_TELE_LENGTH ERROR_RK_KM_BUSY ERROR_RK_UNKNOWN_COMMAND ERROR_RK_INVALID_QUANTITY ERROR_RK_TIME_OUT_RESPONSE ERROR_RK_UNKNOWN_OBJECT 16#0010 16#0020 16#0030 16#0040 16#0050 16#0060 16#0070 16#0080 16#0090 ERROR_RK_REMOTE_STATION 16#0100 ERR_COMPORT 16#FFnn Daten > Datenbuffer nicht unterstützter Dienst Unbekanntes Telegramm nicht erwartete Telegrammlänge Koppelmerker nicht frei nicht unterstützter Auftrag unzulässige Anzahl Reaktionstelegramm nicht erhalten Objekt nicht vorhanden oder nicht unterstützt Fehler vom Partner im Header Reaktionstelegramm Fehler von der seriellen Schnittstelle LByte -> Fehlernummer aus Sercom.lib 10 – 3964R_RK512_01.lib ml00401d WAGO-I/O-PRO 32 Anhang A - Weitere Bibliotheken Deklaration: TYPE enum3964R_ERROR : ( ERR_COMPORT ERR_3964R_NO_ERROR ERR_3964R_CHAR_DELAY ERR_3964R_FRAME_TO_LONG ERR_3964R_BCC_ERROR ERR_3964R_BLOCK_DELAY ERR_3964R_RECEIPT_DELAY ERR_3964R_UNEXPECTED_CHAR ERR_3964R_CONNECT_ERROR ERR_3964R_CONFIRMATION_ERROR ERROR_RK_OUT_OF_RANGE ERROR_RK_NOT_SUPPORTED ERROR_RK_UNKNOWN_TELE ERROR_RK_TELE_LENGTH ERROR_RK_KM_BUSY ERROR_RK_UNKNOWN_COMMAND ERROR_RK_INVALID_QUANTITY ERROR_RK_TIME_OUT_RESPONSE ERROR_RK_UNKNOWN_OBJECT ERROR_RK_REMOTE_STATION ); END_TYPE := := := := := := := := := := := := := := := := := := := := 16#FF00, 16#0000, 16#0001, 16#0002, 16#0003, 16#0004, 16#0005, 16#0006, 16#0007, 16#0008, 16#0010, 16#0020, 16#0030, 16#0040, 16#0050, 16#0060, 16#0070, 16#0080, 16#0090, 16#0100 Beschreibung: Dieser Datentyp ist eine Enumeration und beschreibt die Fehlercodes der Prozedur. WAGO-I/O-PRO 32 Version 1.0.2 3964R_RK512_01.lib - 11 RK512_ACTIVE RK512_ACTIVE WAGO-I/O-PRO 32 Elemente der Bibliothek Kategorie: Name: Typ: Name der Bibliothek: Verwendete Bibliotheken Kommunikation RK512_ACTIVE Funktionsblock X Programm Funktion 3964R_RK512_01.lib SerComm.lib Serial_Interface_01.lib Standard.lib Programmierbare Feldbus-Controller ausser Modbus-Controller (750-812; 750–814; 750–815; 750–816) Anwendbar für: Eingangsparameter: bCOM_PORT cbCOM_BAUDRATE cpCOM_PARITY csCOM_STOPBITS cbsCOM_BYTESIZE cfCOM_FLOW_CONTROL enmCOMMAND 12 – 3964R_RK512_01.lib Datentyp: BYTE Kommentar: Portnummer der Schnittstelle 0x01 -> Serviceschnittstelle 0x02 -> 1. gesteckte serielle Klemme 0x03 -> 2. gesteckte serielle Klemme u.s.w. COM_ BAUD_1200 := 120, BAUDRATE BAUD_2400 := 240, BAUD_4800 := 480, BAUD_9600 := 960, BAUD_19200 := 1920, BAUDRATE_TERMINAL_DEFAULT := 0x7FFF COM_ PARITY_NO:=0, PARITY PARITY_ODD:=1, PARITY_EVEN:=2, PARITY_TERMINAL_DEFAULT := 0x7FFF COM_ STOPBITS_1 := 1, STOPBITS STOPBITS_2 := 2, STOPBITS_TERMINAL_DEFAULT := 0x7FFF COM_ BS_7 :=7, BYTESIZE BS_8 :=8, BYTESIZE_TERMINAL_DEFAULT := 0x7FFF COM_ NO_FLOW_CONTROL :=0, FLOW_ XON_XOFF :=1, CONTROL RTS_CTS:=2, FLOW_CONTROL_TERMINAL_DEFAULT := 0x7FFF enumRK512_ RK512_SEND_DB :=1, COMMAND RK512_SEND_DX := 2, RK512_FETCH_DB := 3, RK512_FETCH_DX := 4, RK512_FETCH_E := 5, RK512_FETCH_A := 6, RK512_FETCH_M := 7, RK512_FETCH_T := 8, RK512_FETCH_Z := 9 ml00401d WAGO-I/O-PRO 32 Anhang A - Weitere Bibliotheken WAGO-I/O-PRO 32 Elemente der Bibliothek bRemoteObjectNr BYTE Objekt-Nr. z.B. DB-Nr, DX-Nr, EB-Nr,...... bRemoteObjectSubNr BYTE Subadresse z.B. DW-Nr bRemoteObjectQuantity BYTE Anzahl der Objekte [Byte] (max. 118 -> SEND b.z.w. 124 -> FETCH) Ausgangsparameter: ERROR Datentyp: Kommentar: enum3964R ERR_3964R_NO_ERROR := 0, _ERROR ERR_3964R_CHAR_DELAY := 1, ERR_3964R_FRAME_TO_LONG := 2, ERR_3964R_BCC_ERROR := 3, ERR_3964R_BLOCK_DELAY := 4, ERR_3964R_RECEIPT_DELAY := 5, ERR_3964R_UNEXPECTED_CHAR := 6, ERR_3964R_CONNECT_ERROR := 7, ERR_3964R_CONFIRMATION_ERROR := 8, ERROR_CODE Ein/Ausgangsparameter: xStart utDB ERROR_RK_OUT_OF_RANGE :=16#0010, ERROR_RK_NOT_SUPPORTED :=16#0020, ERROR_RK_UNKNOWN_TELE := 16#0030, ERROR_RK_TELE_LENGTH := 16#0040, ERROR_RK_KM_BUSY := 16#0050, ERROR_RK_UNKNOWN_COMMAND :=16#0060, ERROR_RK_INVALID_QUANTITY := 16#0070, ERROR_RK_TIME_OUT_RESPONSE:= 16#0080, ERROR_RK_UNKNOWN_OBJECT := 16#0090, ERROR_RK_REMOTE_STATION := 16#0100, ERR_COMPORT := 16#FFnn Fehlercode aus dem Header des Reaktionstelegrammes vom Kommunikationspartner BYTE Datentyp: Kommentar: BOOL Durch TRUE an diesem Eingang wird ein parametrierter Auftrag angestossen. Nach Ausführung des Auftrages wird diese Variable autom. vom RK512-Treiber gelöscht. Somit kann das Ende des Auftrages erkannt werden. ARRAY[0 .. RK_LENGTH_USER_DB] OF WORD Bei FETCH-Auftrag -> Empfangsbuffer für angeforderte Nutzdaten Bei SEND-Auftrag -> Sendebuffer für zu sendende Nutzdaten WAGO-I/O-PRO 32 Version 1.0.2 3964R_RK512_01.lib - 13 RK512_ACTIVE WAGO-I/O-PRO 32 Elemente der Bibliothek Graphische Darstellung: Funktionsbeschreibung: Der Funktionsbaustein „RK512_ACTIVE“ muß zyklisch im Hauptprogramm aufgerufen werden. Der Baustein unterstützt das Senden (SEND) und Holen (FETCH) von Daten an b.z.w. vom Kommunikationspartner. Hinweis : Dieser Baustein unterstützt keine Folgetelgramme. Die Nutzdaten (bRemoteObjectQuantity) müssen daher <= 118 Byte bei SEND-Aufträgen b.z.w. <= 124 Byte bei FETCH-Aufträgen sein. Bei zu grosser Zykluszeit des Anwenderprogrammes kann es zu Störungen in der Kommunikation kommen (ggf. Verwendung des Tasksystems bei 841). 14 – 3964R_RK512_01.lib ml00401d WAGO-I/O-PRO 32 Anhang A - Weitere Bibliotheken RK512_ACTIVE_EN WAGO-I/O-PRO 32 Elemente der Bibliothek Kategorie: Name: Typ: Name der Bibliothek: Verwendete Bibliotheken Kommunikation RK512_ACTIVE_EN Funktionsblock X Programm Funktion 3964R_RK512_01.lib SerComm.lib Serial_Interface_01.lib Standard.lib Programmierbare Feldbus-Controller ausser Modbus-Controller (750-812; 750–814; 750–815; 750–816) Anwendbar für: Eingangsparameter: EN Datentyp: BOOL bCOM_PORT BYTE cbCOM_BAUDRATE COM_ BAUDRATE cpCOM_PARITY COM_ PARITY csCOM_STOPBITS COM_ STOPBITS cbsCOM_BYTESIZE COM_ BYTESIZE cfCOM_FLOW_CONTROL COM_ FLOW_ CONTROL WAGO-I/O-PRO 32 Kommentar: TRUE -> Schnittstelle initialisieren und öffnen FALSE -> Schnittstelle schliessen Portnummer der Schnittstelle 0x01 -> Serviceschnittstelle 0x02 -> 1. gesteckte serielle Klemme 0x03 -> 2. gesteckte serielle Klemme u.s.w. BAUD_1200 := 120, BAUD_2400 := 240, BAUD_4800 := 480, BAUD_9600 := 960, BAUD_19200 := 1920, BAUDRATE_TERMINAL_DEFAULT := 0x7FFF PARITY_NO:=0, PARITY_ODD:=1, PARITY_EVEN:=2, PARITY_TERMINAL_DEFAULT := 0x7FFF STOPBITS_1 := 1, STOPBITS_2 := 2, STOPBITS_TERMINAL_DEFAULT := 0x7FFF BS_7 :=7, BS_8 :=8, BYTESIZE_TERMINAL_DEFAULT := 0x7FFF NO_FLOW_CONTROL :=0, XON_XOFF :=1, RTS_CTS:=2, FLOW_CONTROL_TERMINAL_DEFAULT := 0x7FFF Version 1.0.2 3964R_RK512_01.lib - 15 RK512_ACTIVE_EN WAGO-I/O-PRO 32 Elemente der Bibliothek enmCOMMAND enumRK512_ RK512_SEND_DB COMMAND RK512_SEND_DX RK512_FETCH_DB RK512_FETCH_DX RK512_FETCH_E RK512_FETCH_A RK512_FETCH_M RK512_FETCH_T RK512_FETCH_Z bRemoteObjectNr BYTE Objekt-Nr. z.B. DB-Nr, DX-Nr, EB-Nr,...... bRemoteObjectSubNr BYTE Subadresse z.B. DW-Nr bRemoteObjectQuantity BYTE Anzahl der Objekte Ausgangsparameter: ERROR Datentyp: Kommentar: enum3964R ERR_3964R_NO_ERROR := 0, _ERROR ERR_3964R_CHAR_DELAY := 1, ERR_3964R_FRAME_TO_LONG := 2, ERR_3964R_BCC_ERROR := 3, ERR_3964R_BLOCK_DELAY := 4, ERR_3964R_RECEIPT_DELAY := 5, ERR_3964R_UNEXPECTED_CHAR := 6, ERR_3964R_CONNECT_ERROR := 7, ERR_3964R_CONFIRMATION_ERROR := 8, ERROR_CODE BYTE PORT_IS_OPEN BOOL 16 – 3964R_RK512_01.lib :=1, := 2, := 3, := 4, := 5, := 6, := 7, := 8, := 9 ERROR_RK_OUT_OF_RANGE :=16#0010, ERROR_RK_NOT_SUPPORTED :=16#0020, ERROR_RK_UNKNOWN_TELE := 16#0030, ERROR_RK_TELE_LENGTH := 16#0040, ERROR_RK_KM_BUSY := 16#0050, ERROR_RK_UNKNOWN_COMMAND :=16#0060, ERROR_RK_INVALID_QUANTITY := 16#0070, ERROR_RK_TIME_OUT_RESPONSE:= 16#0080, ERROR_RK_UNKNOWN_OBJECT := 16#0090, ERROR_RK_REMOTE_STATION := 16#0100, ERR_COMPORT := 16#FFnn Fehlercode aus dem Header des Reaktionstelegrammes vom Kommunikationspartner Rückmeldung ob der serielle Port geöffnet ist ml00401d WAGO-I/O-PRO 32 Anhang A - Weitere Bibliotheken WAGO-I/O-PRO 32 Elemente der Bibliothek Ein/Ausgangsparameter: xStart utDB Datentyp: Kommentar: BOOL Durch TRUE an diesem Eingang wird ein parametrierter Auftrag angestossen. Nach Ausführung des Auftrages wird diese Variable autom. vom RK512-Treiber gelöscht. Somit kann das Ende des Auftrages erkannt werden. ARRAY[0 .. RK_LENGTH_USER_DB] OF WORD Bei FETCH-Auftrag -> Empfangsbuffer für angeforderte Nutzdaten Bei SEND-Auftrag -> Sendebuffer für zu sendende Nutzdaten Graphische Darstellung: Funktionsbeschreibung: Der Funktionsbaustein „RK512_ACTIVE_EN“ muß zyklisch im Hauptprogramm aufgerufen werden. Der Baustein unterstützt das Senden (SEND) und Holen (FETCH) von Daten an b.z.w. vom Kommunikationspartner. Hinweis : Dieser Baustein unterstützt keine Folgetelgramme. Die Nutzdaten (bRemoteObjectQuantity) müssen daher <= 118 Byte bei SEND-Aufträgen b.z.w. <= 124 Byte bei FETCH-Aufträgen sein. Bei zu grosser Zykluszeit des Anwenderprogrammes kann es zu Störungen in der Kommunikation kommen (ggf. Verwendung des Tasksystems bei 841). WAGO-I/O-PRO 32 Version 1.0.2 3964R_RK512_01.lib - 17 enumRK512_COMMAND (Enum) enumRK512_COMMAND (Enum) WAGO-I/O-PRO 32 Elemente der Bibliothek Kategorie: Name: Typ: Name der Bibliothek: enumRK512_COMMAND Enumeration X Datentyp 3964R_RK512_01.lib Elemente: RK512_SEND_DB RK512_SEND_DX Wert: 1 2 RK512_FETCH_DB RK512_FETCH_DX RK512_FETCH_E RK512_FETCH_A RK512_FETCH_M RK512_FETCH_T RK512_FETCH_Z 3 4 5 6 7 8 9 Kommentar: Daten an Datenbaustein (DB) senden Daten an erweiterten Datenbaustein (DX) senden Datenbaustein (DB) holen erweiterten Datenbaustein (DX) holen Eingangsbyte (EB) holen Ausgangsbyte (AB) holen Merkerbyte (MB) holen Timer holen Zähler holen Deklaration: TYPE enumRK512_COMMAND : ( RK512_SEND_DB := 1, (* senden (DB) Datenbaustein *) RK512_SEND_DX := 2, (* senden (DX) erweiterter Datenbausteun *) RK512_FETCH_DB RK512_FETCH_DX RK512_FETCH_E RK512_FETCH_A RK512_FETCH_M RK512_FETCH_T RK512_FETCH_Z ); END_TYPE := := := := := := := 3, 4, 5, 6, 7, 8, 9 (* (* (* (* (* (* (* holen holen holen holen holen holen holen (DB) Datenbaustein *) (DX) erweiterter Datenbaustein *) (EB) Eingangsbytes *) (AB) Ausgangsbytes *) (MB) Merker *) (T) Timer *) (Z) Zaehler *) Beschreibung: Dieser Datentyp ist eine Enumeration und beschreibt die Kommandos der RK512. 18 – 3964R_RK512_01.lib ml00401d WAGO-I/O-PRO 32 Anhang A - Weitere Bibliotheken RK512_PASSIVE WAGO-I/O-PRO 32 Elemente der Bibliothek Kategorie: Name: Typ: Name der Bibliothek: Verwendete Bibliotheken Kommunikation RK512_PASSIVE Funktionsblock X Programm Funktion 3964R_RK512_01.lib SerComm.lib Serial_Interface_01.lib Standard.lib Programmierbare Feldbus-Controller ausser Modbus-Controller (750-812; 750–814; 750–815; 750–816) Anwendbar für: Eingangsparameter: bCOM_PORT Datentyp: BYTE cbCOM_BAUDRATE COM_ BAUDRATE cpCOM_PARITY COM_ PARITY csCOM_STOPBITS COM_ STOPBITS cbsCOM_BYTESIZE COM_ BYTESIZE cfCOM_FLOW_CONTROL COM_ FLOW_ CONTROL xUseRefNumber BOOL WAGO-I/O-PRO 32 Kommentar: Portnummer der Schnittstelle 0x01 -> Serviceschnittstelle 0x02 -> 1. gesteckte serielle Klemme 0x03 -> 2. gesteckte serielle Klemme u.s.w. BAUD_1200 := 120, BAUD_2400 := 240, BAUD_4800 := 480, BAUD_9600 := 960, BAUD_19200 := 1920, BAUDRATE_TERMINAL_DEFAULT := 0x7FFF PARITY_NO:=0, PARITY_ODD:=1, PARITY_EVEN:=2, PARITY_TERMINAL_DEFAULT := 0x7FFF STOPBITS_1 := 1, STOPBITS_2 := 2, STOPBITS_TERMINAL_DEFAULT := 0x7FFF BS_7 :=7, BS_8 :=8, BYTESIZE_TERMINAL_DEFAULT := 0x7FFF NO_FLOW_CONTROL :=0, XON_XOFF :=1, RTS_CTS:=2, FLOW_CONTROL_TERMINAL_DEFAULT := 0x7FFF FALSE (default) -> der Feldindex der Datenstruktur „utDB_Field“ wird als DB-Nr. interpretiert. TRUE -> Die Referenznummer in der Datenstruktur wird als DB-Nr. interpretiert. Version 1.0.2 3964R_RK512_01.lib - 19 RK512_PASSIVE WAGO-I/O-PRO 32 Elemente der Bibliothek Ausgangsparameter: ERROR Datentyp: Kommentar: enum3964R ERR_3964R_NO_ERROR := 0, _ERROR ERR_3964R_CHAR_DELAY := 1, ERR_3964R_FRAME_TO_LONG := 2, ERR_3964R_BCC_ERROR := 3, ERR_3964R_BLOCK_DELAY := 4, ERR_3964R_RECEIPT_DELAY := 5, ERR_3964R_UNEXPECTED_CHAR := 6, ERR_3964R_CONNECT_ERROR := 7, ERR_3964R_CONFIRMATION_ERROR := 8, ERROR_RK_OUT_OF_RANGE :=16#0010, ERROR_RK_NOT_SUPPORTED :=16#0020, ERROR_RK_UNKNOWN_TELE := 16#0030, ERROR_RK_TELE_LENGTH := 16#0040, ERROR_RK_KM_BUSY := 16#0050, ERROR_RK_UNKNOWN_COMMAND :=16#0060, ERROR_RK_INVALID_QUANTITY := 16#0070, ERROR_RK_TIME_OUT_RESPONSE:= 16#0080, ERROR_RK_UNKNOWN_OBJECT := 16#0090, ERROR_RK_REMOTE_STATION := 16#0100, ERR_COMPORT := 16#FFnn Ein/Ausgangsparameter: utDB_Field Datentyp: Kommentar: typRK512_DB_Field Mehrdimensionales Datenfeld Graphische Darstellung: 20 – 3964R_RK512_01.lib ml00401d WAGO-I/O-PRO 32 Anhang A - Weitere Bibliotheken WAGO-I/O-PRO 32 Elemente der Bibliothek Funktionsbeschreibung: Der Funktionsbaustein „RK512_PASSIVE“ muß zyklisch im Hauptprogramm aufgerufen werden. Der Baustein unterstützt passiv (Receive) das Senden (SEND) und Holen (FETCH) von Daten durch einen Kommunikationspartner. Hinweis : Dieser Baustein unterstützt keine Folgetelgramme. Es werden daher nur max. 118 Byte bei SEND-Aufträgen b.z.w. 124 Byte bei FETCHAufträgen unterstützt. Bei zu grosser Zykluszeit des Anwenderprogrammes kann es zu Störungen in der Kommunikation kommen (ggf. Verwendung des Tasksystems bei 841). WAGO-I/O-PRO 32 Version 1.0.2 3964R_RK512_01.lib - 21 RK512_PASSIVE_EN RK512_PASSIVE_EN WAGO-I/O-PRO 32 Elemente der Bibliothek Kategorie: Name: Typ: Name der Bibliothek: Verwendete Bibliotheken Kommunikation RK512_PASSIVE_EN Funktionsblock X Programm Funktion 3964R_RK512_01.lib SerComm.lib Serial_Interface_01.lib Standard.lib Programmierbare Feldbus-Controller ausser Modbus-Controller (750-812; 750–814; 750–815; 750–816) Anwendbar für: Eingangsparameter: EN Datentyp: BOOL bCOM_PORT BYTE cbCOM_BAUDRATE COM_ BAUDRATE cpCOM_PARITY COM_ PARITY csCOM_STOPBITS COM_ STOPBITS cbsCOM_BYTESIZE COM_ BYTESIZE cfCOM_FLOW_CONTROL COM_ FLOW_ CONTROL xUseRefNumber BOOL 22 – 3964R_RK512_01.lib Kommentar: TRUE -> Schnittstelle initialisieren und öffnen FALSE -> Schnittstelle schliessen Portnummer der Schnittstelle 0x01 -> Serviceschnittstelle 0x02 -> 1. gesteckte serielle Klemme 0x03 -> 2. gesteckte serielle Klemme u.s.w. BAUD_1200 := 120, BAUD_2400 := 240, BAUD_4800 := 480, BAUD_9600 := 960, BAUD_19200 := 1920, BAUDRATE_TERMINAL_DEFAULT := 0x7FFF PARITY_NO:=0, PARITY_ODD:=1, PARITY_EVEN:=2, PARITY_TERMINAL_DEFAULT := 0x7FFF STOPBITS_1 := 1, STOPBITS_2 := 2, STOPBITS_TERMINAL_DEFAULT := 0x7FFF BS_7 :=7, BS_8 :=8, BYTESIZE_TERMINAL_DEFAULT := 0x7FFF NO_FLOW_CONTROL :=0, XON_XOFF :=1, RTS_CTS:=2, FLOW_CONTROL_TERMINAL_DEFAULT := 0x7FFF FALSE (default) -> der Feldindex der Datenstruktur „utDB_Field“ wird als DB-Nr. interpretiert. TRUE -> Die Referenznummer in der Datenstruktur wird als DB-Nr. interpretiert. ml00401d WAGO-I/O-PRO 32 Anhang A - Weitere Bibliotheken WAGO-I/O-PRO 32 Elemente der Bibliothek Ausgangsparameter: ERROR PORT_IS_OPEN Ein/Ausgangsparameter: utDB_Field Datentyp: Kommentar: enum3964R ERR_3964R_NO_ERROR := 0, _ERROR ERR_3964R_CHAR_DELAY := 1, ERR_3964R_FRAME_TO_LONG := 2, ERR_3964R_BCC_ERROR := 3, ERR_3964R_BLOCK_DELAY := 4, ERR_3964R_RECEIPT_DELAY := 5, ERR_3964R_UNEXPECTED_CHAR := 6, ERR_3964R_CONNECT_ERROR := 7, ERR_3964R_CONFIRMATION_ERROR := 8, ERROR_RK_OUT_OF_RANGE :=16#0010, ERROR_RK_NOT_SUPPORTED :=16#0020, ERROR_RK_UNKNOWN_TELE := 16#0030, ERROR_RK_TELE_LENGTH := 16#0040, ERROR_RK_KM_BUSY := 16#0050, ERROR_RK_UNKNOWN_COMMAND :=16#0060, ERROR_RK_INVALID_QUANTITY := 16#0070, ERROR_RK_TIME_OUT_RESPONSE:= 16#0080, ERROR_RK_UNKNOWN_OBJECT := 16#0090, ERROR_RK_REMOTE_STATION := 16#0100, ERR_COMPORT := 16#FFnn Rückmeldung ob der serielle Port geöffnet ist BOOL Datentyp: Kommentar: typRK512_DB_Field Mehrdimensionales Datenfeld Graphische Darstellung: WAGO-I/O-PRO 32 Version 1.0.2 3964R_RK512_01.lib - 23 RK512_PASSIVE_EN WAGO-I/O-PRO 32 Elemente der Bibliothek Funktionsbeschreibung: Der Funktionsbaustein „RK512_PASSIVE_EN“ muß zyklisch im Hauptprogramm aufgerufen werden. Der Baustein unterstützt passiv (Receive) das Senden (SEND) und Holen (FETCH) von Daten durch einen Kommunikationspartner. Hinweis : Dieser Baustein unterstützt keine Folgetelgramme. Es werden daher nur max. 118 Byte bei SEND-Aufträgen b.z.w. 124 Byte bei FETCHAufträgen unterstützt. Bei zu grosser Zykluszeit des Anwenderprogrammes kann es zu Störungen in der Kommunikation kommen (ggf. Verwendung des Tasksystems bei 841). 24 – 3964R_RK512_01.lib ml00401d WAGO-I/O-PRO 32 Anhang A - Weitere Bibliotheken typDB (Datentyp) WAGO-I/O-PRO 32 Elemente der Bibliothek Kategorie: Name: Typ: Name der Bibliothek: Struktur: Element: RefNumber DW Deklaration: TYPE typDB : STRUCT RefNumber DW END_STRUCT END_TYPE typDB Datentyp X Enumeration 3964R_RK512_01.lib Datentyp: BYTE ARRAY[0.. RK_DB_LENGTH] OF WORD : : Beschreibung: DB-Nr. unter der das DataFeld vom Kommunikationspartner erreicht werden kann. Wordarray für Nutzdaten BYTE; (* DB-Nr. for communication *) ARRAY[0..RK_DB_LENGTH] OF WORD; Beschreibung: Diese Struktur bildet einen Datenbaustein ab. Die Anzahl der Datenworte kann durch verschatten der globalen Konstanten RK_DB_LENGTH verändert werden. WAGO-I/O-PRO 32 Version 1.0.2 3964R_RK512_01.lib - 25 typRK512_DB_Field (Datentyp) typRK512_DB_Field (Datentyp) WAGO-I/O-PRO 32 Elemente der Bibliothek Kategorie: Name: Typ: Name der Bibliothek: typRK512_DB_Field Datentyp X Enumeration 3964R_RK512_01.lib Deklaration: TYPE typRK512_DB_Field : ARRAY[1..RK_DB_QUANTITY] OF typDB; END_TYPE Beschreibung: Dieser Datentyp bildet eine Menge von Datenbausteinen ab. Die Anzahl der abgebildeten Datenbausteine kann durch verschatten der globalen Konstanten RK_DB_QUANTITY verändert werden. 26 – 3964R_RK512_01.lib ml00401d WAGO-I/O-PRO 32 Anhang A - Weitere Bibliotheken RK512_ACTIVE_PASSIVE_EN WAGO-I/O-PRO 32 Elemente der Bibliothek Kategorie: Name: Typ: Name der Bibliothek: Verwendete Bibliotheken Kommunikation RK512_ACTIVE_PASSIVE_EN Funktionsblock X Programm Funktion 3964R_RK512_01.lib SerComm.lib Serial_Interface_01.lib Standard.lib Programmierbare Feldbus-Controller ausser Modbus-Controller (750-812; 750–814; 750–815; 750–816) Anwendbar für: Eingangsparameter: EN Datentyp: BOOL bCOM_PORT BYTE cbCOM_BAUDRATE COM_ BAUDRATE cpCOM_PARITY COM_ PARITY csCOM_STOPBITS COM_ STOPBITS cbsCOM_BYTESIZE COM_ BYTESIZE cfCOM_FLOW_CONTROL COM_ FLOW_ CONTROL xHIGH_PRIORITY BOOL WAGO-I/O-PRO 32 Kommentar: TRUE -> Schnittstelle initialisieren und öffnen FALSE -> Schnittstelle schliessen Portnummer der Schnittstelle 0x01 -> Serviceschnittstelle 0x02 -> 1. gesteckte serielle Klemme 0x03 -> 2. gesteckte serielle Klemme u.s.w. BAUD_1200 := 120, BAUD_2400 := 240, BAUD_4800 := 480, BAUD_9600 := 960, BAUD_19200 := 1920, BAUDRATE_TERMINAL_DEFAULT := 0x7FFF PARITY_NO:=0, PARITY_ODD:=1, PARITY_EVEN:=2, PARITY_TERMINAL_DEFAULT := 0x7FFF STOPBITS_1 := 1, STOPBITS_2 := 2, STOPBITS_TERMINAL_DEFAULT := 0x7FFF BS_7 :=7, BS_8 :=8, BYTESIZE_TERMINAL_DEFAULT := 0x7FFF NO_FLOW_CONTROL :=0, XON_XOFF :=1, RTS_CTS:=2, FLOW_CONTROL_TERMINAL_DEFAULT := 0x7FFF Legt die Priotität dieses Kommunikationsteilnehmers fest. Zur Auflösung evtl. Initialisierungskonflikte ist es erforderlich einen der beiden Kommunikationsparter auf hohe und den anderen Partner auf niedrige Priorität zu parametrieren. TRUE -> hohe Priorität FALSE -> niedrige Priorität Version 1.0.2 3964R_RK512_01.lib - 27 RK512_ACTIVE_PASSIVE_EN WAGO-I/O-PRO 32 Elemente der Bibliothek tJobDelay xUseRefNumber enmCOMMAND TIME Legt die min. Wartezeit zwischen der Ausführung 2 aktiver Jobs (SEND / FETCH) fest. Diese Zeit sollte nicht zu klein eingestellt werden um die Schnittstelle nicht dauerhaft zu blockieren. (Defaultwert = t#150ms). BOOL FALSE (default) -> der Feldindex der Datenstruktur „utDB_Field“ wird als DB-Nr. interpretiert. TRUE -> Die Referenznummer in der Datenstruktur wird als DB-Nr. interpretiert. enumRK512_ RK512_SEND_DB :=1, COMMAND RK512_SEND_DX := 2, RK512_FETCH_DB := 3, RK512_FETCH_DX := 4, RK512_FETCH_E := 5, RK512_FETCH_A := 6, RK512_FETCH_M := 7, RK512_FETCH_T := 8, RK512_FETCH_Z := 9 bRemoteObjectNr BYTE Objekt-Nr. z.B. DB-Nr, DX-Nr, EB-Nr,...... bRemoteObjectSubNr BYTE Subadresse z.B. DW-Nr bRemoteObjectQuantity BYTE Anzahl der Objekte bLocalDB_Nr BYTE Dieser DB enthält nch einem erfolgreichen FetchAuftrag die geholten Daten ab dem DW[0]. Bei einem Send-Auftrag müssen in diesem DB ab DW[0] die zu sendenden Daten stehen. (siehe auch xUseRefNumber und utDB_Field) 28 – 3964R_RK512_01.lib ml00401d WAGO-I/O-PRO 32 Anhang A - Weitere Bibliotheken WAGO-I/O-PRO 32 Elemente der Bibliothek Ausgangsparameter: ERROR Datentyp: Kommentar: enum3964R ERR_3964R_NO_ERROR := 0, _ERROR ERR_3964R_CHAR_DELAY := 1, ERR_3964R_FRAME_TO_LONG := 2, ERR_3964R_BCC_ERROR := 3, ERR_3964R_BLOCK_DELAY := 4, ERR_3964R_RECEIPT_DELAY := 5, ERR_3964R_UNEXPECTED_CHAR := 6, ERR_3964R_CONNECT_ERROR := 7, ERR_3964R_CONFIRMATION_ERROR := 8, ERROR_CODE BYTE PORT_IS_OPEN BOOL ERROR_RK_OUT_OF_RANGE :=16#0010, ERROR_RK_NOT_SUPPORTED :=16#0020, ERROR_RK_UNKNOWN_TELE := 16#0030, ERROR_RK_TELE_LENGTH := 16#0040, ERROR_RK_KM_BUSY := 16#0050, ERROR_RK_UNKNOWN_COMMAND :=16#0060, ERROR_RK_INVALID_QUANTITY := 16#0070, ERROR_RK_TIME_OUT_RESPONSE:= 16#0080, ERROR_RK_UNKNOWN_OBJECT := 16#0090, ERROR_RK_REMOTE_STATION := 16#0100, ERR_COMPORT := 16#FFnn Fehlercode aus dem Header des Reaktionstelegrammes vom Kommunikationspartner Rückmeldung ob der serielle Port geöffnet ist Ein/Ausgangsparameter: xStart Datentyp: Kommentar: BOOL Durch TRUE an diesem Eingang wird ein parametrierter Auftrag angestossen. Nach Ausführung des Auftrages wird diese Variable autom. vom RK512-Treiber gelöscht. Somit kann das Ende des Auftrages erkannt werden. utDB_Field typRK512_DB_Field Mehrdimensionales Datenfeld mit den vorhanden Datenbausteinen WAGO-I/O-PRO 32 Version 1.0.2 3964R_RK512_01.lib - 29 RK512_ACTIVE_PASSIVE_EN WAGO-I/O-PRO 32 Elemente der Bibliothek Graphische Darstellung: Funktionsbeschreibung: Der Funktionsbaustein „RK512_ACTIVE_PASSIVE EN“ muß zyklisch im Hauptprogramm aufgerufen werden. Der Baustein unterstützt das Senden (SEND) und Holen (FETCH) von Daten an b.z.w. vom Kommunikationspartner sowie das Beantworten von Send- und Fetch-Aufträgen des Kommunikationspartners. Hinweis : Dieser Baustein unterstützt keine Folgetelgramme. Es werden daher nur max. 118 Byte bei SEND-Aufträgen b.z.w. 124 Byte bei FETCHAufträgen unterstützt. Bei zu grosser Zykluszeit des Anwenderprogrammes kann es zu Störungen in der Kommunikation kommen (ggf. Verwendung des Tasksystems bei 841). 30 – 3964R_RK512_01.lib ml00401d WAGO-I/O-PRO 32 Anhang A - Weitere Bibliotheken WAGO-I/O-PRO 32 Version 1.0.2 3964R_RK512_01.lib - 31
© Copyright 2024 ExpyDoc