SINUMERIK 840D sl / 828D Grundfunktionen FC 21: Transfer Datenaustausch PLC-NCK FC 21: Transfer Datenaustausch PLC-NCK Funktion Mit Aufruf des Bausteins Transfer werden Daten zwischen PLC und NCK entsprechend des angewählten Funktionscodes ausgetauscht. Die Daten werden sofort bei Aufruf des FC 21 übertragen, nicht erst am Zyklusbeginn. Die Aktivierung des Bausteins erfolgt über das "Enable" - Signal. Der FC 21 wird nur bei "Enable" = "1" durchlaufen. Folgende Funktionen für den Datenaustausch zwischen PLC und NCK werden unterstützt: 1. Signale Synchronaktionen an NCK - Kanal 2. Signale Synchronaktionen von NCK - Kanal 3. Schneller Datenaustausch PLC-NCK (Funktion lesen im NCK) 4. Schnellen Datenaustausch PLC-NCK (Funktion schreiben im NCK) 5. Steuerungssignale an NCK - Kanal aktualisieren 6. Steuerungssignale an Achsen aktualisieren (Datenbyte 2 der Anwender Nahtstelle) 7. Steuerungssignale an Achsen aktualisieren (Datenbyte 4 der Anwender Nahtstelle) Deklaration der Funktion AWL-Darstellung VAR_INPUT Enable : BOOL ; Funct : BYTE ; S7Var : ANY ; IVar1 : INT ; IVar2 : INT ; END_VAR VAR_OUTPUT Error : BOOL ; ErrCode : INT ; END_VAR Erläuterungen der Formalparameter Die folgende Tabelle zeigt alle Formalparameter der Funktion "Transfer": This document constitutes a free excerpt compiled by the user himself/herself from the documentation provided by Siemens for this product. Siemens disclaims all liability for the completeness of this document. It shall only be used for the user's own internal purposes. It shall not be passed on to third parties. The complete documentation can be found at: /dokumentation/default.aspx?DocVersionId=53351851147&Language=de-DE&TopicId=18114596619 11.07.2016 SINUMERIK 840D sl / 828D Grundfunktionen FC 21: Transfer Datenaustausch PLC-NCK Signal Art Typ Enable E BOOL Funct E BYTE Wertebereich Bemerkung 1 = FC 21 aktiv 1 ... 7 1: Synchronaktionen an Kanal 2: Synchronaktionen von Kanal 3: Daten lesen 4: Daten schreiben 5: Steuersignale an Kanal 6, 7: Steuersignale an Achse S7Var E ANY S7-Datenbereich Abhängig von "Funct" IVAR1 E INT 0 ... Abhängig von "Funct" IVAR2 E INT 1 ... Abhängig von "Funct" Error A BOOL ErrCode A INT Abhängig von "Funct" Funktion 1, 2: Signale Synchronaktionen an / von Kanal Synchronaktionen können von PLC verriegelt bzw. freigegeben werden. Der Datenbereich liegt in der Anwender-Nahtstelle DB21, ... .DBB300 ...307 (an Kanal) und DB21, ... .DBB308 ...315 (von Kanal). Der Parameter "S7Var" wird bei dieser Funktion nicht ausgewertet, muss aber mit einem Aktualparameter belegt werden (siehe Aufrufbeispiel). Die Daten werden sofort während des FC 21-Durchlaufs an/von NC übergeben. Folgende Signale sind relevant: Signal Art Typ Enable E BOOL Funct E BYTE Wertebereich Bemerkung 1 = FC 21 aktiv 1, 2 1: Synchronaktionen an Kanal 2: Synchronaktion von Kanal S7Var E ANY S7-Datenbereich nicht genutzt IVAR1 E INT 1..MaxKanal Kanal-Nummer Error A BOOL ErrCode A INT 1: "Funct" ungültig 10: Kanal-Nr. ungültig Aufrufbeispiel: FUNCTION FC 100: VOID This document constitutes a free excerpt compiled by the user himself/herself from the documentation provided by Siemens for this product. Siemens disclaims all liability for the completeness of this document. It shall only be used for the user's own internal purposes. It shall not be passed on to third parties. The complete documentation can be found at: /dokumentation/default.aspx?DocVersionId=53351851147&Language=de-DE&TopicId=18114596619 11.07.2016 SINUMERIK 840D sl / 828D Grundfunktionen FC 21: Transfer Datenaustausch PLC-NCK VAR_TEMP myAny : ANY ; END_VAR BEGIN NETWORK //Synchronaktionen mit ID3, ID10 und ID31 deaktivieren im NC-Kanal 1: SYAK : AUF DB21; SET; S DBX 300.2; //ID3 S DBX 301.1; //ID10 S DBX 303.6; //ID31 L B#16#1; T MB11; SPA TRAN; //Synchronaktionen von NCK-Kanal 1: SYVK : L B#16#2; T MB11; TRAN: CALL FC 21 ( Enable := M 10.0, //wenn True, FC 21 aktiv Funct := MB 11, S7Var := #myAny, //nicht genutzt IVAR1 := 1, //Kanal-Nr IVAR2 := 0, Error := M 10.1, ErrCode := MW 12); END_FUNCTION Funktion 3, 4: Schneller Datenaustausch PLC-NCK Allgemeines Für den schnellen Austausch von Informationen zwischen PLC und NCK existiert ein eigener interner Datenbereich. Die Dimension des internen Datenfeldes ist auf 4096 Bytes festgelegt. Die Zugriffe (Lesen/Schreiben) von PLC aus erfolgen über FC 21. Die Belegung dieses Bereichs (Struktur) muss im NC-Teileprogramm und PLC-Anwenderprogramm identisch vereinbart werden. This document constitutes a free excerpt compiled by the user himself/herself from the documentation provided by Siemens for this product. Siemens disclaims all liability for the completeness of this document. It shall only be used for the user's own internal purposes. It shall not be passed on to third parties. The complete documentation can be found at: /dokumentation/default.aspx?DocVersionId=53351851147&Language=de-DE&TopicId=18114596619 11.07.2016 SINUMERIK 840D sl / 828D Grundfunktionen FC 21: Transfer Datenaustausch PLC-NCK Vom NC-Teileprogramm kann auf diese Daten mit den Befehlen $A_DBB[x], $A_DBW[x], $A_DBD[x], $A_DBR[x] zugegriffen werden (siehe Listenhandbuch Systemvariablen). Die konkrete Adresse im Datenfeld wird über einen Byte-Offset (0 bis 4095) im Parameter IVAR1 angegeben. Dabei muss die Ausrichtung entsprechend dem Datenformat gewählt werden, d. h. ein Dword beginnt auf einer 4-Byte-Grenze und ein Word auf einer 2-ByteGrenze. Bytes können auf einem beliebigen Offset innerhalb des Datenfeldes liegen, Einzelbitzugriffe werden nicht unterstützt und vom FC 21 als Bytezugriff umgesetzt. Die Datentypinformation und Anzahl der Daten wird aus dem über S7Var übergebenen ANYParameter entnommen. Die Datenkonsistenz wird nur für 1- und 2-Byte Zugriffe sowohl beim NCK als auch bei der PLC ohne zusätzliche programmiertechnische Maßnahmen sichergestellt. Bei der 2-Byte Konsistenz trifft dies nur beim Datentyp WORD bzw. INT zu, nicht aber beim Datentyp BYTE. Bei Verwendung größerer Datentypen oder Übertragung von Feldern, die konsistent übertragen werden sollen, muss ein Semaphor-Byte im Parameter IVAR2 angegeben werden, über das der FC 21 die Gültigkeit bzw. Konsistenz eines Blockes erkennen kann. Dieses Handling muss auf der NC-Seite, d. h. im Teileprogramm, durch schreiben bzw. löschen des Semaphor-Bytes unterstützt werden. Das Semaphor-Byte liegt auch in dem gleichen Datenfeld, wie die eigentlichen Nutzdaten. Ein Wert zwischen 0 und 4095 im IVAR2 bezeichnet das Semaphor-Byte. Bei der PLC wird über den FC 21 in dem gleichen Aufruf, in denen die Nutzdaten übertragen werden sollen, das Semaphorbyte gelesen und beschrieben. Der PLC Programmierer muss nur für die Bereitstellung einer Semaphor-Variablen sorgen. Bei dem Zugriff von der NC über das Teileprogramm muss der Semaphor-Mechanismus entsprechend dem unten abgebildeten Flussdiagramm über Einzelanweisungen programmiert werden. Die Sequenz muss für Lesen bzw. Schreiben von Variablen unterschiedlich ausgeführt sein. Es werden nur Einzelvariable bzw. ARRAYs direkt durch die Semaphortechnik unterstützt. Eine Übertragung von Strukturen ist in Einzelaufträge zu zerteilen. Hierbei ist für die Datenkonsistenz dieser Struktur mit einem, vom Anwender zu programmierenden, Semaphormechanismus selber zu sorgen. Wird IVAR2 = -1 gesetzt, erfolgt die Datenübertragung ohne Semaphor. Datenaustausch mit Semaphor in PLC (Prinzipschaltung des FC21) This document constitutes a free excerpt compiled by the user himself/herself from the documentation provided by Siemens for this product. Siemens disclaims all liability for the completeness of this document. It shall only be used for the user's own internal purposes. It shall not be passed on to third parties. The complete documentation can be found at: /dokumentation/default.aspx?DocVersionId=53351851147&Language=de-DE&TopicId=18114596619 11.07.2016 SINUMERIK 840D sl / 828D Grundfunktionen FC 21: Transfer Datenaustausch PLC-NCK Prinzipieller Aufbau im NCK: Variablen-Wertebereiche This document constitutes a free excerpt compiled by the user himself/herself from the documentation provided by Siemens for this product. Siemens disclaims all liability for the completeness of this document. It shall only be used for the user's own internal purposes. It shall not be passed on to third parties. The complete documentation can be found at: /dokumentation/default.aspx?DocVersionId=53351851147&Language=de-DE&TopicId=18114596619 11.07.2016 SINUMERIK 840D sl / 828D Grundfunktionen FC 21: Transfer Datenaustausch PLC-NCK Folgende Signale sind relevant: Signal Art Typ Enable E BOOL Funct E BYTE Wertebereich Bemerkung = FC 21 aktiv 3, 4 3: Daten lesen 4: Daten schreiben S7Var E ANY S7-Datenbereich, außer Lokaldaten Quell-/Ziel-Datenbereich IVAR1 E INT 0 ... 4095 Positionsoffset IVAR2 E INT -1 ... 4095 Semaphor-Byte Transfer ohne Semaphor: -1 Error A BOOL ErrCode A INT 20: Ausrichtungsfehler 21: unerlaubter Positionsoffset 22: unerlaubtes Semaphor-Byte 23: keine neue Daten zu lesen 24: kann keine Daten schreiben 25: Lokaldaten bei S7Var parametriert Aufrufbeispiel: 1. Doppelwort vom Positionsoffset 4 mit Semaphor im Byte 0 lesen und im MD100 speichern: Datentyp Dword (4 Byte) Positionsoffset 4 This document constitutes a free excerpt compiled by the user himself/herself from the documentation provided by Siemens for this product. Siemens disclaims all liability for the completeness of this document. It shall only be used for the user's own internal purposes. It shall not be passed on to third parties. The complete documentation can be found at: /dokumentation/default.aspx?DocVersionId=53351851147&Language=de-DE&TopicId=18114596619 11.07.2016 SINUMERIK 840D sl / 828D Grundfunktionen FC 21: Transfer Datenaustausch PLC-NCK CALL FC 21 ( Enable := M 10.0, //wenn TRUE, FC 21 aktiv Funct := B#16#3, //Daten lesen S7Var := P#M 100.0 DWORD 1, IVAR1 := 4, IVAR2 := 0, Error := M 10.1, ErrCode := MW12); UN M10.1; R M10.0; //Enable so lange 1, bis Wert gelesen Beispiele: NCK-Programmierung aus Synchronaktionen Datentransfer von NC zu PLC mit Schreiben der Daten aus Synchronaktionen heraus, Byte0 dient als Semaphore: ID=1 WHENEVER $A_DBB[0] == 0 DO $A_DBR[4] = $AA_IM[X] $A_DBB[0] = 1 Datentransfer von PLC zu NC mit Lesen der Daten aus Synchronaktionen heraus, Byte1 dient als Semaphore: ID=2 WHENEVER $A_DBB[1] == 1 DO $R1 = $A_DBR[12] $A_DBB[1] = 0 2. Wort vom Positionsoffset 8 ohne Semaphor lesen und im MW 104 speichern: CALL FC 21 ( Enable :=M 10.0, //wenn TRUE, FC 21 aktiv Funct :=B#16#3, //Daten lesen S7Var :=P#M 104.0 WORD 1, IVAR1 :=8, IVAR2 :=-1, Error :=M 10.1, ErrCode :=MW12); Funktion 5: Steuersignale an Kanal aktualisieren Diese Funktion dient einer schnellen Übertragung von wichtigen Steuersignalen, zwischen der zyklischen Datenübertragung. Die Datenbytes 6 und 7 der Anwender-Nahtstelle DB21, ... This document constitutes a free excerpt compiled by the user himself/herself from the documentation provided by Siemens for this product. Siemens disclaims all liability for the completeness of this document. It shall only be used for the user's own internal purposes. It shall not be passed on to third parties. The complete documentation can be found at: /dokumentation/default.aspx?DocVersionId=53351851147&Language=de-DE&TopicId=18114596619 11.07.2016 SINUMERIK 840D sl / 828D Grundfunktionen FC 21: Transfer Datenaustausch PLC-NCK werden an die NC übertragen. Der Kanal wird im Parameter "IVAR1" angegeben. Hiermit kann z. B. die Vorschubsperre, Einlesesperre außerhalb des PLC Zyklus übertragen werden. Folgende Signale sind relevant: Signal Art Typ Wertebereich Bemerkung Enable E BOOL Funct E BYTE 5 5: Steuersignale an Kanal S7Var E ANY S7-Datenbereich nicht genutzt IVAR1 E INT 1. MaxKanal Kanal - Nummer Error A BOOL ErrCode A INT 1= FC 21 aktiv 1: "Funct" ungültig 10: Kanal - Nr. ungültig Funktion 6: Steuersignale an Achsen aktualisieren Die Funktion 6 dient einer schnellen Übertragung von wichtigen Steuersignalen, zwischen der zyklischen Datenübertragung. Das Datenbyte 2 der Anwender-Nahtstelle DB31, ... wird an die NC übertragen. Die Übertragung wird für alle aktivierten Achsen vorgenommen. Hiermit kann z. B. die Reglerfreigabe außerhalb des PLC-Zyklus übertragen werden. Folgende Signale sind relevant: Signal Art Typ Wertebereich Bemerkung Enable E BOOL Funct E BYTE 6 6: Steuersignale an Achsen S7Var E ANY S7-Datenbereich nicht genutzt IVAR1 E INT 0 Error A BOOL ErrCode A INT 1= FC 21 aktiv 1: "Funct" ungültig Funktion 7: Steuersignale an Achsen aktualisieren Die Funktion 7 dient einer schnellen Übertragung von wichtigen Steuersignalen, zwischen der zyklischen Datenübertragung. Das Datenbyte 4 der Anwender-Nahtstelle DB31, ... wird an die NC übertragen. Die Übertragung wird für alle aktivierten Achsen vorgenommen. Hiermit kann z. B. der Vorschubhalt außerhalb des PLC-Zyklus übertragen werden. Folgende Signale sind relevant: Signal Art Typ Enable E BOOL Wertebereich Bemerkung 1= FC 21 aktiv This document constitutes a free excerpt compiled by the user himself/herself from the documentation provided by Siemens for this product. Siemens disclaims all liability for the completeness of this document. It shall only be used for the user's own internal purposes. It shall not be passed on to third parties. The complete documentation can be found at: /dokumentation/default.aspx?DocVersionId=53351851147&Language=de-DE&TopicId=18114596619 11.07.2016 SINUMERIK 840D sl / 828D Grundfunktionen FC 21: Transfer Datenaustausch PLC-NCK Signal Art Typ Wertebereich Bemerkung Funct E BYTE 7 7: Steuersignale an Achsen S7Var E ANY S7-Datenbereich nicht genutzt IVAR1 E INT 0 Error A BOOL ErrCode A INT 1: "Funct" ungültig This document constitutes a free excerpt compiled by the user himself/herself from the documentation provided by Siemens for this product. Siemens disclaims all liability for the completeness of this document. It shall only be used for the user's own internal purposes. It shall not be passed on to third parties. The complete documentation can be found at: /dokumentation/default.aspx?DocVersionId=53351851147&Language=de-DE&TopicId=18114596619 11.07.2016
© Copyright 2025 ExpyDoc