Lagerung, Aufstellung und Montage sowie sorgfältige Bedienung und Instandhaltung voraus. Marken Alle mit dem Schutzrechtsvermerk ® gekennzeichneten Bezeichnungen sind eingetragene Marken der Siemens AG. Die übrigen Bezeichnungen in dieser Schrift können Marken sein, deren Benutzung durch Dritte für deren Zwecke die Rechte der Inhaber verletzen kann.
Seite 3
● Anwender-Dokumentation ● Hersteller-/Service-Dokumentation Eine monatlich aktualisierte Druckschriften-Übersicht mit den jeweils verfügbaren Sprachen finden Sie im Internet unter: http://www.siemens.com/motioncontrol Folgen Sie den Menüpunkten "Support" → "Technische Dokumentation" → "Druckschriften- Übersicht". Die Internet-Ausgabe der DOConCD, die DOConWEB, finden Sie unter: http://www.automation.siemens.com/doconweb...
+49 180 5050 222 +86 1064 719 990 +1 423 262 2522 +49 180 5050 223 +86 1064 747 474 +1 423 262 2289 Internet http://www.siemens.com/automation/support-request E-Mail mailto:adsupport@siemens.com Hinweis Landesspezifische Telefonnummern für technische Beratung finden Sie im Internet: http://www.siemens.com/automation/service&support Fragen zur Dokumentation...
Seite 5
Vorwort EG-Konformitätserklärung Die EG-Konformitätserklärung zur EMV-Richtlinie finden/erhalten Sie ● im Internet: http://www.ad.siemens.de/csinfo unter der Produkt-/Bestellnummer 15257461 ● bei der zuständigen Zweigniederlassung des Geschäftsgebiets A&D MC der Siemens AG Synchronaktionen Funktionshandbuch, 11/2006, 6FC5397-5BP10-2AA0...
Seite 6
Vorwort Synchronaktionen Funktionshandbuch, 11/2006, 6FC5397-5BP10-2AA0...
Inhaltsverzeichnis Vorwort ..............................iii Kurzbeschreibung........................... 1-1 Ausführliche Beschreibung ........................2-1 Komponenten von Synchronaktionen..................2-1 2.1.1 Definition von Bewegungssynchronaktionen ................2-8 2.1.2 Ausführung der Aktionen ......................2-8 2.1.3 Liste möglicher Aktionen......................2-8 Auswertungen und Berechnungen in Echtzeit................. 2-10 Spezielle Echtzeitvariablen für Synchronaktionen..............2-16 2.3.1 Merker-/Zähler-Variablen ......................
Seite 8
Inhaltsverzeichnis Aufruf von Technologiezyklen ....................2-89 2.5.1 Koordinierungen zwischen Synchronaktionen, Technologiezyklen, Teileprogramm (und PLC) ............................2-92 Beeinflussung und Schutz von Synchronaktionen..............2-94 2.6.1 Beeinflussung von PLC......................2-94 2.6.2 Geschützte Synchronaktionen ....................2-96 Steuerungsverhalten für Synchronaktionen in bestimmten Betriebszuständen ...... 2-99 2.7.1 Power On ..........................
Kurzbeschreibung Definition Synchronaktionen Bewegungssynchronaktionen (kurz Synchronaktionen) sind vom Anwender programmierte Anweisungen, die synchron zur Bearbeitung des Teileprogramms im Interpolationstakt vom NCK ausgewertet werden. Ist die in der Synchronaktion enthaltene Bedingung erfüllt oder keine angegeben, so werden zugeordnete Aktionen synchron zur weiteren Bearbeitung aktiviert.
Seite 12
Kurzbeschreibung Bild 1-1 Synchronaktionen schematisch Die Details der Programmierung von Synchronaktionen finden Sie in: Literatur: /PGA/ Programmierhandbuch Arbeitsvorbereitung Die folgenden Kapitel beschreiben die: ● funktionalen Zusammenhänge für Synchronaktionen im Kapitel "Ausführliche Beschreibung", ● Anwendungsbeispiele im Kap. "Beispiele". Hinweis Die vorliegende Beschreibung umfasst die Funktionalität des aktuellen Software-Standes. Die Leistungen der Synchronaktionen bis einschließlich SW-Stand 3 sind beschrieben in: Literatur: /FB2/ Funktionshandbuch Erweiterungsfunktionen;...
Ausführliche Beschreibung Komponenten von Synchronaktionen Struktur einer Synchronaktion Komponente: Gültigkeit, Häufigkeit G-Code für Bed. Bedingung Aktions- G-Code für Aktion oder Identifikations- und Aktion kennwort Aktion Technologie- nummer (fest) zyklus Beispiel: IDS=1 EVERY $AAA_IM[B] POS[X]= 100 > 15 Die Bestandteile der Synchronaktion werden im Folgenden einzeln erklärt: ●...
Seite 14
Ausführliche Beschreibung 2.1 Komponenten von Synchronaktionen Keine Angabe Synchronaktionen ohne Gültigkeitsangabe wirken satzweise, d. h. nur für den darauf folgenden Satz. Satzweise wirksame Synchronaktionen wirken nur im AUTOMATIK-Betrieb. Satzweise wirksame Synchronaktionen wirken ab SW 6.1 modal über alle Vorlauf-Stop- Sätze (auch implizit erzeugte) und über implizit erzeugte Zwischensätze. Synchronaktionen mit Gültigkeitskennung ID wirken modal in darauf folgend programmierten Sätzen.
Ausführliche Beschreibung 2.1 Komponenten von Synchronaktionen Hinweis Folgende Aktionen sind nur in der Betriebsart AUTOMATIC bei aktivem Programm wirksam: STOPREOF DELDTG Häufigkeit Durch das Schlüsselwörter (s. Tabelle) wird angegeben, wie oft die darauf folgende Bedingung abgefragt und die zugehörende Aktion bei erfüllter Bedingung ausgeführt werden soll.
Seite 16
Ausführliche Beschreibung 2.1 Komponenten von Synchronaktionen Anwendungsfälle: Festlegung der Maßsysteme für Bedingungsauswertung und Aktion durch G-Codes G70, G71, G700, G710. Hinweis Pro Bedingungsanteil darf nur ein G–Code der G–Code–Gruppe programmiert werden. Ein angegebener G–Code bei der Bedingung gilt für die Auswertung der Bedingung und für die Aktion, wenn bei der Aktion kein eigener G–Code angegeben ist.
Ausführliche Beschreibung 2.1 Komponenten von Synchronaktionen Beispiele: WHENEVER ($A_IN[1]==1) OR ($A_IN[3]==0) DO ... ; solange Eingang 1 ansteht oder Eingang 3 nicht ansteht ... Innerhalb einer Bedingung können zwei oder mehr Echtzeit-Ausdrücke miteinander verglichen werden. Vergleiche sind jeweils möglich zwischen typgleichen Variablen oder Teilausdrücken.
Seite 18
Ausführliche Beschreibung 2.1 Komponenten von Synchronaktionen Aktionen In jeder Synchronaktion werden ein oder mehrere Aktionen oder ein Technologiezyklus programmiert. Diese werden ausgeführt, wenn die Bedingung erfüllt ist. Sind mehrere Aktionen in einer Synchronaktion programmiert, so werden diese im selben Interpolationstakt ausgeführt. Beispiel: WHEN $AA_IM[Y] >= 35.7 DO M135 $A_OUT[1]=1 Wenn der Istwert der Y-Achse größer oder gleich 35.7 ist, dann wird M135 an PLC...
Seite 19
Ausführliche Beschreibung 2.1 Komponenten von Synchronaktionen Bild 2-1 Bearbeitung von Synchronaktionen schematisch Bearbeitung der Synchronaktionen Die Überprüfung, ob Aktionen in Synchronaktionen zu aktivieren sind, erfolgt im Interpolationstakt. Aktion(en) werden synchron zur Bahnführung ausgeführt, wenn die links der Aktion(en) stehenden Voraussetzungen erfüllt sind. Abarbeitungsreihenfolge Innerhalb eines Interpolationstaktes werden modal wirksame Synchronaktionsanweisungen in der Reihenfolge ihrer ID-Nummer bearbeitet (Satz mit ID-Nummer 1 vor Satz mit ID-...
Ausführliche Beschreibung 2.1 Komponenten von Synchronaktionen 2.1.1 Definition von Bewegungssynchronaktionen Definierende Programme Bewegungssynchronaktionen können definiert werden: ● im Teileprogramm ● Statische Synchronaktionen in einem asynchronen Unterprogramm ASUP, das durch die PLC aktiviert wird 2.1.2 Ausführung der Aktionen Ausführungsbedingungen Die Aktionen in Bewegungssynchronaktionen werden ausgeführt, wenn: ●...
Seite 21
Ausführliche Beschreibung 2.1 Komponenten von Synchronaktionen ● Polynomauswertung SYNFCT ● Online-Werkzeugkorrektur FTOC ● Einlesesperre RDISABLE ● Aufheben Vorlaufstopp STOPREOF ● Restweglöschen DELDTG ● Ermittlung von Kurventabellenwerten ● Axialer Vorschub aus Synchronaktionen ● Axiale Frames ● Achsen / Spindeln aus Synchronaktionen bewegen / positionieren ●...
Ausführliche Beschreibung 2.2 Auswertungen und Berechnungen in Echtzeit Auswertungen und Berechnungen in Echtzeit Abgrenzung Die Berechnungen, die in Echtzeit durchgeführt werden, sind eine Untermenge der in der NC-Sprache möglichen Berechnungen. Sie ist beschränkt auf die Datentypen REAL, INT, CHAR und BOOL. In Synchronaktionen sind impliziteTypwandlungen zwischen REAL, INT und BOOL in beiden Richtungen möglich.
Seite 23
Ausführliche Beschreibung 2.2 Auswertungen und Berechnungen in Echtzeit Datentyp Innerhalb eines Ausdrucks in Synchronaktionen können nur Hauptlaufvariable eines Datentyps miteinander verknüpft werden. Um trotzdem Daten verschiedener Typen zu verarbeiten, können die bereitgestellten Konvertierungsroutinen zur Typangleichung benutzt werden (SW 5.2, siehe Konvertierungsroutinen). Im Gegensatz zum vollen Ausdruck in der NC-Sprache erfolgt die Berechnung im Datentyp der Hauptlaufvariablen.
Seite 24
Ausführliche Beschreibung 2.2 Auswertungen und Berechnungen in Echtzeit RTOI INTRTOI( REAL ) - Konvertierung von Real nach Integer Die Funktion RTOI() wandelt den übergebenen Real-Wert in eine gerundete INT-Zahl um und gibt diese zurück. Liegt der Übergabewert außerhalb des als Integer-Wert eindeutig darstellbaren Bereiches, so wird Alarm 20145 "Bewegungssynchronaktion: Arithmetikfehler"...
Seite 25
Ausführliche Beschreibung 2.2 Auswertungen und Berechnungen in Echtzeit Beispiele: bisher $AC_MARKER[1] = 561 ID=1 WHEN TRUE DO $AC_PARAM[1] = ITOR( $AC_MARKER[1] ) ab SW 6.4 $AC_MARKER[1] = 561 ID=1 WHEN TRUE DO $AC_PARAM[1] = $AC_MARKER[1] bisher $AC_PARAM[1] = 561.4378 ID=1 WHEN TRUE DO $AC_MARKER[1] = RTOI( $AC_PARAM[1] ) ;...
Seite 26
Ausführliche Beschreibung 2.2 Auswertungen und Berechnungen in Echtzeit Grundrechenarten Echtzeit-Variablen vom Typ REAL und INT können durch Grundrechenarten miteinander verknüpft werden: ● Addition ● Subtraktion ● Multiplikation ● Division ● Integer-Division ● Modulo-Division Es können nur Variable gleichen Typs verknüpft werden. Ausdrücke Ausdrücke aus Grundrechenarten können geklammert und geschachtelt werden.
Ausführliche Beschreibung 2.2 Auswertungen und Berechnungen in Echtzeit Priorität von Operatoren Um bei mehrgliedrigen Ausdrücken das gewünschte Verknüpfungsergebnis zu erhalten, sind die Prioritäten der Operatoren bei Berechnungen und Bedingungen wie folgt zu berücksichtigen: Verneinung, bitweise Verneinung NOT, B_NOT *, /, DIV, MOD Multiplikation, Division +, - Addition, Subtraktion...
Ausführliche Beschreibung 2.3 Spezielle Echtzeitvariablen für Synchronaktionen Indizierung Der Index einer Hauptlauffeldvariablen kann wiederum eine Echtzeitvariable sein. Beispiel: WHEN ... DO $AC_PARAM[ $AC_MARKER[1] ] = 3 Der Index $AC_MARKER[1] wird jeweils im Interpolationstakt aktuell ausgewertet. Einschränkungen: ● Die Schachtelung der Indizierung mit Echtzeit-Variablen ist nicht erlaubt. ●...
Ausführliche Beschreibung 2.3 Spezielle Echtzeitvariablen für Synchronaktionen 2.3.1 Merker-/Zähler-Variablen Kanalspezifische Merker Die Feld–Variable $AC_MARKER[n] dient als Marker oder Zähler und kann in Synchronaktionen gelesen und beschrieben werden. Datentyp: INTEGER n: Feldindex des Markers: 0–n Die Anzahl der Marker pro Kanal wird eingestellt über das Maschinendatum MD28256 $MC_NUM_AC_MARKER.
Ausführliche Beschreibung 2.3 Spezielle Echtzeitvariablen für Synchronaktionen 2.3.2 Zeiten (Timer) Die Systemvariable $AC_TIMER[n] ermöglicht das Starten von Aktionen nach definierten Wartezeiten. Definition Datentyp: REAL n: Nummer der Timer–Variable Einheit: Sekunde Die Anzahl der verfügbaren Timer–Variablen wird per Maschinendatum MD28258 $MC_MM_NUM_AC_TIMER festgelegt. Timer setzen Das Hochzählen einer Timer–Variable wird gestartet durch Wertzuweisung: $AC_TIMER[n]=value...
Ausführliche Beschreibung 2.3 Spezielle Echtzeitvariablen für Synchronaktionen 2.3.3 Synchronaktionsparameter Bedeutung Die Variablen $AC_PARAM[n] dienen für Berechnungen und als Zwischenspeicher und können in Synchronaktionen gelesen und beschrieben werden. Definition Datentyp: REAL n: Nummer des Parameters 0 – n Die Anzahl der verfügbaren AC–Parameter–Variablen pro Kanal wird über das Maschinendatum MD28254 $MC_MM_NUM_AC_PARAM festgelegt.
Ausführliche Beschreibung 2.3 Spezielle Echtzeitvariablen für Synchronaktionen 2.3.4 R-Parameter Verwendung in Synchronaktionen Mit dem Einleitungszeichen $ vor dem R–Parameter können Rechenparameter auch in Synchronaktionen verwendet werden. Die Feld–Variablen $R[n] oder $Rn dienenzur Berechgnungen in Synchronaktionen R[n] oder Rn dienenzur Berechgnungen im Teileprogramm, die im statischen Speicher batteriegepuffert gehalten werden.
Seite 33
Ausführliche Beschreibung 2.3 Spezielle Echtzeitvariablen für Synchronaktionen Zum Vorlaufzeitpunkt lesen Unveränderliche Maschinendaten und Settingdaten werden aus der Synchronaktion adressiert wie in normalen Teileprogramm–Befehlen. Sie werden mit einem $–Zeichen eingeleitet. Beispiel: ID=2 WHENEVER $AA_IM[z]< $SA_OSCILL_REVERSE_POS2[Z]–6 DO $AA_OVR[X]=0 ; Hier wird der während der Bearbeitung als unveränderlich angenommene ;...
Ausführliche Beschreibung 2.3 Spezielle Echtzeitvariablen für Synchronaktionen 2.3.6 FIFO-Variablen (Durchlaufspeicher) Anwendung Zur Abspeicherung zusammengehöriger Datenfolgen stehen bis zu 10 FIFO-Variablen zur Verfügung: $AC_FIFO1[n] bis $AC_FIFO10[n]. Struktur Die Speicherstruktur einer FIFO-Variablen zeigt das Bild: Beispiel FIFO-Variable. Anzahl Die Anzahl der verfügbaren AC–FIFO–Variablen wird festgelegt über das Maschinendatum MD28260 $MC_NUM_AC_FIFO Größe Die Anzahl der in eine FIFO–Variable ablegbaren Werte wird definiert durch das...
Seite 35
Ausführliche Beschreibung 2.3 Spezielle Echtzeitvariablen für Synchronaktionen Das Rücksetzen der FIFO-Variablen erfolgt durch Rücksetzen der Element-Anzahl z. B. für die erste FIFO-Variable: $AC_FIFO1[4]=0 n=5: aktueller Schreibindex relativ zum FIFO-Anfang n= 6 bis 6+nmax: Zugriff auf n-tes FIFO-Element: Hinweis Der FIFO-Zugriff ist eine spezielle Form des R-Parameter-Zugriffs: (s. unten) Die FIFO-Werte werden im R-Parameterbereich hinterlegt.
Ausführliche Beschreibung 2.3 Spezielle Echtzeitvariablen für Synchronaktionen Bild 2-3 FIFO-Variablen 2.3.7 SRAM gespeicherte Systemvariablen (ab SW 6.3) RESET-Verhalten Im SRAM gespeicherte Systemvariablen $AC_MARKER und $AC_PARAM behalten über RESET und Power On hinweg ihre aktuellen Werte. Hinweis In Teileprogrammen und Synchronaktionen, die mit SRAM–gespeicherten Systemvariablen arbeiten, muss beachtet werden, dass nach RESET keine Initialisierung der Variablen mit 0 stattfindet.
Ausführliche Beschreibung 2.3 Spezielle Echtzeitvariablen für Synchronaktionen Datensicherung Im SRAM gespeicherte Systemvariablen $AC_MARKER und $AC_PARAM können in die Datensicherung einbezogen werden. Pro Kanal existieren die Sicherungsbausteine: _N_CHi_ACM für $AC_MARKER Werte und _N_CHi_ACP für $AC_PARAM Werte. i steht für die jeweilige Kanalnummer. Reihenfolge Die gesicherten Bausteine werden im File der Gesamtsicherung _N_INITIAL_INI nach R- Parametern eingetragen.
Ausführliche Beschreibung 2.3 Spezielle Echtzeitvariablen für Synchronaktionen 2.3.9 Bestimmung des aktuellen Override Aktueller Override Der aktuelle Override (NC-Anteil) kann mit den folgenden Systemvariablen in Synchronaktionen gelesen und geschrieben werden: $AA_OVR Axial-Override $AC_OVR Bahnoverride PLC-Override Der von der PLC vorgegebene Override wird für Synchronaktionen in den folgenden Systemvariablen zum Lesen bereitgestellt: $AA_PLC_OVR Axial-Override...
Ausführliche Beschreibung 2.3 Spezielle Echtzeitvariablen für Synchronaktionen 2.3.10 Auslastungsauswertung über Zeitbedarf bei Synchronaktionen Bedeutung In einem Interpolationstakt müssen sowohl Synchronaktionen interpretiert als auch Bewegungen usw. von der NC berechnet werden. Mit den im Folgenden vorgestellten Systemvariablen können sich Synchronaktionen über die aktuellen Zeitanteile der Synchronaktionen am Interpolationstakt und über die Rechenzeit der Lageregler informieren.
Ausführliche Beschreibung 2.3 Spezielle Echtzeitvariablen für Synchronaktionen Systemvariable Bedeutung $AN_SYNC_TO_IPO prozentualer Anteil der ges. Synchronaktionen an der gesamten IPO-Rechenzeit (über alle Kanäle) $AC_SYNC_ACT_LOAD aktuelle Rechenzeit für Synchronaktionen im Kanal $AC_SYNC_MAX_LOAD längste Rechenzeit für Synchronaktionen im Kanal $AC_SYNC_AVERAGE_LOAD durchschnittliche Rechenzeit für Synchronaktionen im Kanal $AN_SERVO_ACT_LOAD aktuelle Rechenzeit des Lagereglers $AN_SERVO_MAX_LOAD...
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Aktionen in Synchronaktionen Aktionen Jede Synchronaktion enthält nach dem Aktionskennwort DO ... eine oder mehrere (max. 16) Aktionen oder einen Technologiezyklus, die bei erfüllter Bedingung ausgeführt werden. (Als Oberbegriff wird im weiteren Aktionen verwendet.). Mehrere Aktionen Mehrere Aktionen einer Synchronaktion werden bei erfüllter Bedingung im gleichen Interpolationstakt aktiviert.
Seite 43
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen ... DO ... Bedeutung Verweis Steuerung von Positionierachsen: $AA_OVR[x]= 0 Sperren einer Achsbewegung 2.4.12 ACHSE_X (z. B.) Aufruf eines Achsprogramms 2.4.13 POS[u]= ... Positionieren 2.4.13 FA[u]= ... Achsvorschub festlegen 2.4.14 Kommando-Achsen kontinuierlich bewegen: 2.4.15 MOV[u]= >0 - vorwärts "...
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen 2.4.1 Ausgabe von M-, S- und H-Hilfsfunktionen an die PLC Details zur Hilfsfunktionsausgabe im Allgemeinen finden Sie in: Literatur: /FB1/ Funktionshandbuch Grundfunktionen; Hilfsfunktionsausgabe an PLC (H2) Beispiele Der Vorteile der Hilfsfunktionsausgabe aus Synchronaktionen wird am folgenden Beispiel deutlich: Kühlmittel an bestimmter Position einschalten Lösung ohne Synchronaktion: 3 Sätze N10 G1 X10 F150...
Seite 45
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Hilfsfunktionsausgabe an die PLC Als Synchronaktion können M-, S- oder H-Hilfsfunktionen an die PLC ausgegeben werden. Die Ausgabe erfolgt sofort (wie ein Interrupt an PLC) im Interpolationstakt, wenn die Bedingung erfüllt ist. Ausgabezeitpunkte werden unwirksam, die ggf. in einem der folgenden Maschinendaten definiert wurden: ●...
Seite 46
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Einschränkung Es können gleichzeitig (d. h. in einem OB40-Zyklus der PLC) maximal 10 Hilfsfunktionen ausgegeben werden. Die Summe der Hilfsfunktionsausgaben aus Teileprogrammen und Synchronaktionen darf zu keinem Zeitpunkt mehr als 10 pro Kanal betragen. Höchste Anzahl Hilfsfunktionen je Synchronaktions-Satz oder Technologiezyklus-Satz: ●...
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen 2.4.2 Setzen (Schreiben) und Lesen von Echtzeitvariablen Schreiben In Synchronaktionen können die Echtzeitvariablen in Aktionen geschrieben werden, die in der Liste der Systemvariablen in der 8. Zeile im Feld "write:" mit X gekennzeichnet sind. Geschrieben werden auch im Hauptlauf folgende Maschinen- und Settingdaten: ●...
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Beispiele: WHEN $AC_DTEB < 5 DO ... ;Abstand vom Satzende in Bedingung lesen DO $R5= $A_INA[2] ;Wert des Analogeingangs 2 lesen und Rechenvariable zuweisen 2.4.3 Verändern von SW-Nockenpositionen und -zeiten (Settingdaten) Einführung Mit der Funktion "Softwarenocken" können positionsabhängige Nockensignale an die PLC oder an die NCK-Peripherie ausgegeben werden.
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Beispiel 2 Änderung einer Vorhalte-/Verzögerungszeit: ID=1 WHEN $AA_IW[x] > 0 DO $$SN_SW_CAM_MINUS_TIME_TAB_1[0] = 1.0 Hinweis Das Setzen der Softwarenocken über Synchronaktionen darf geschwindigkeitsabhängig nicht unmittelbar vor einer Nocke geschehen, sondern es müssen mindestens noch 2 - 3 Interpolationstakte bis zum Erreichen der Nocke zur Verfügung stehen.
Seite 50
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Anzahl Polynome Die Anzahl der Polynome die gleichzeitig definiert werden können werden durch folgendes Maschinendatum vorgegeben: MD28252 $MC_MM_NUM_FCTDEF_ELEMENTS (Anzahl der FCTDEF-Elemente) Satzsynchrone Polynomdefinition FCTDEF( Polynom-Nr., Untergrenze, Obergrenze, Der Zusammenhang zwischen Ausgangsgröße y und Eingangsgröße x ist wie folgt: y= a x+ a Die in der Funktion angegebenen Parameter werden wie folgt in Systemvariablen abgelegt:...
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen 2.4.5 Polynomauswertung SYNFCT Anwendung Mit einer Auswertefunktion im Aktionsteil der Synchronaktion kann bearbeitungssynchron eine Variable gelesen, mit einem Polynom bewertet und das Ergebnis in eine andere Variable geschrieben werden. Damit können z. B. folgende Aufgabenstellungen gelöst werden: ●...
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Additive Vorschub-Beeinflussung Bei der additiven Beeinflussung wird der programmierte Wert (bei der AC-Regelung das F- Wort) additiv korrigiert. F wirksam programmiert Als 'Echtzeitvariable-Ausgang' werden z. B. gesetzt: $AC_VC additive Bahnvorschubkorrektur, $AA_VC[Achse] additive axiale Vorschubkorrektur Beispiel additive Beeinflussung des Bahnvorschubes Der programmierte Vorschub (gleich ob axial- oder bahnbezogen) soll additiv vom Strom (positiven) der X-Achse (z.
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen AC-Regelung Mit folgender Synchronaktion wird die eingeschaltet: ID = 1 DO SYNFCT(1, $AC_VC[x], der additive Korrekturwert für den Vorschub der $AA_LOAD[x]) Achse x wird in jedem Interpolationstakt über Polynom 1 aus dem prozentualen Auslastungswert des Antriebes berechnet Multiplikative Beeinflussung Bei der multiplikativen Beeinflussung wird das F-Wort mit einem Faktor (bei der AC-...
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Untergrenze = 0 Damit kann das Polynom (Nr. 2) definiert werden: FCTDEF(2, 0, 120, 160, -2, 0, 0) Mit dieser Funktion ist das Bild "Beispiel multiplikative Beeinflussung" vollständig beschrieben. Die dazugehörige Synchronaktion kann wie folgt lauten: ID = 1 DO SYNFCT(2, $AC_OVR, der Bahnoverride wird in jedem $AA_LOAD[x])
Seite 55
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Randbedingungen: Integrierende Bewertung der Eingangsgröße vom Sensor $A_INA[3]. Die Korrektur wirkt im Basiskoordinatensystem, d. h. vor der kinematischen Transformation. Ein evtl. programmierter Frame (TOFRAME) wirkt nicht, d. h. die Funktion kann nicht für eine 3D- Abstandsregelung in Orientierungsrichtung verwendet werden.
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen %_N_AON_SPF PROC AON Unterprogramm für Abstandsregelung FCTDEF(1, 0.2, 0.5, 0.35, 1.5 EX-5) Polynomdefinition: Die Korrektur erfolgt im Bereich 0.2 bis 0.5 ID = 1 DO SYNFCT(1,$AA_OFF[Z], $A_INA[3]) Abstandsregelung aktiv ID = 2 WHENEVER $AA_OFF_LIMIT[Z]<>0 DO Bei Überschreitung des Grenzbereiches $AA_OVR[X] = 0 X sperren...
Seite 57
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen $AC_VACTB und $AC_VACTW als Eingangsvariable für Synchronaktionen und die Ausgabe werden über Optionsbit verriegelt ("Vorschubabhängige Analogwertsteuerung" → Laserleistungssteuerung)! $AA_OFF, Positionsoffset als Ausgangsvariable für Synchronaktionen für die Abstandsregelung wird über Optionsbit verriegelt! Geschwindigkeitsbegrenzung mit dem Maschinendatum: MD32070 $MA_CORR_VELO (Achsgeschwindigkeit für Überlagerung) Verhalten von $AA_OFF ab SW 6 Nach RESET kann der Positionsoffset weiterhin erhalten bleiben...
Seite 58
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Randbedingungen ● Interruptroutinen/asynchrone Unterprogramme Bei Aktivierung einer Interruptroutine bleiben modale Bewegungssynchronaktionen erhalten und sind auch im asynchronen Unterprogramm wirksam. Erfolgt der Unterprogrammrücksprung nicht mit REPOS, so wirken im Hauptprogramm die im asynchronen Unterprogramm geänderten modalen Synchronaktionen weiter. ●...
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Hinweis Abhängig davon, in welchem Koordinatensystem (BKS oder WKS) eine Echtzeitvariable definiert ist, werden Frames eingerechnet oder nicht. Entfernungen werden immer im eingestellten Grundsystem (metrisch oder inch) berechnet. Eine Umschaltung mit G70 oder G71 hat keine Auswirkung. DRF-Verschiebungen, externe Nullpunktverschiebungen usw.
Seite 60
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Randbedingung Die Synchronaktion FTOC steht ab Software-Stand 3.2 zu Verfügung. Die Online-Korrektur ermöglicht eine überlagerte Bewegung für eine Geometrieachse nach einem mit FCTDEF programmierten Polynom (siehe Kap. "FCTDEF") in Abhängigkeit von einem Bezugswert, der z. B. der Istwert einer Achse sein kann. Der Koeffizient a der Funktionsdefinition FCTDEF() wird bei FTOC ausgewertet.
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Beispiel Länge einer aktiven Schleifscheibe korrigieren %_N_ABRICHT_MPF FCTDEF(1,-1000,1000,-$AA_IW[V],1) Definition der Funktion ID=1 DO FTOC(1,$AA_IW[V],3,1) Online- Werkzeugkorrektur anwählen: abgeleitet von der Bewegung der V-Achse wird in Kanal 1 die Länge 3 der aktiven Schleifscheibe korrigiert. WAITM (1,1,2) Synchronisation mit Bearbeitungskanal G1 V-0.05 F0.01, G91...
Seite 62
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Hinweis Die Online-Werkzeuglängenkorrektur ist eine Option, die vorher freigeschaltet werden muss. Weitere Informationen zur Aktivierung der Funktion im Teileprogramm siehe: Literatur: /PGA/ Programmierhandbuch Arbeitsvorbereitung; Kapitel Transformationen "TOFFON, TOFFOF" Anwendungen in Synchronaktionen Die Werkzeuglängenkorrekturen werden über eine Synchronaktionsvariable $AA_TOFF[ ] aufgeschaltet.
Seite 63
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Beispiel Anwahl der Online-Werkzeuglängenkorrektur Maschinendaten für Online-Werkzeuglängenkorrektur setzen: MD21190 $MC_TOFF_MODE = 1 absolute Werte werden angefahren MD21194 $MC_TOFF_VEL[0] = 10000 MD21194 $MC_TOFF_VEL[1] = 10000 MD21194 $MC_TOFF_VEL[2] = 10000 MD21196 $MC_TOFF_ACC[0] = 1 MD21196 $MC_TOFF_ACC[1] = 1 MD21196 $MC_TOFF_ACC[2] = 1 Online-Werkzeuglängenkorrektur im Teileprogramm aktivieren: N5 DEF REAL XOFFSET...
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Beispiel Abwahl der Online-Werkzeuglängenkorrektur N10 TRAORI Orientierungstransformation aktivieren N20 TOFFON(X) Aktivierung der Funktion für die N30 WHEN TRUE DO $AA_TOFF[X] = 10 X-Werkzeugrichtung wird eine G4 F5 Werkzeuglängenkorrektur =10 interpoliert … N80 TOFFOF(X) der Positionsoffset der X- Werkzeugrichtung wird gelöscht: ...
Seite 65
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Ebenso kann eine Transformation oder ein orientierbarer Werkzeugträger nach RESET abgewählt werden über das Maschinendatum: MD20110 $MC_RESET_MODE_MASK (Festlegung der Steuerungs-Grundstellung nach Reset/TP-Ende) Auch hier muss die Werkzeuglängenkorrektur abgelöscht werden. Wenn über RESET hinweg eine Werkzeuglängenkorrektur aktiv bleiben soll, und ein Transformationswechsel oder ein Wechsel des orientierbaren Werkzeugträgers stattfindet, wird der Alarm 21665 "Kanal %1 $AA_TOFF[ ] rückgesetzt"...
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen 2.4.9 RDISABLE Programmierte Einlesesperre RDISABLE Der RDISABLE-Befehl im Aktionsteil bewirkt, dass die weitere Satzbearbeitung angehalten wird, wenn die zugehörige Bedingung erfüllt ist. Es werden nur noch die programmierten Bewegungssynchronaktionen bearbeitet. Wenn die Bedingung für die RDISABLE-Anweisung nicht mehr erfüllt ist, wird die Einlesesperre aufgehoben.
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Beispiel STOPREOF Programmverzweigungen WHEN $AC_DTEB<5 DO STOPREOF G01 X100 IF $A_INA[7]>5000 GOTOF Label 1 Wenn die Entfernung zum Satzende 5 mm unterschreitet, beende den Vorlaufstop. Wenn die Spannung 5V am Eingang 7 überschreitet, springe vorwärts bis zum Label 1 (Annahme: Wert 1000 entspricht 1V).
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Beispiel DELDTG ... DO DELDTG N100 G01 X100 Y100 F1000 N110 G01 X... IF $AC_DELT > 50 Für Achsen schnelles, vorbereitetes RWL Schnelles, vorbereitetes Restweglöschen für Achsen kann nur satzweise erfolgen. Anwendung: Das Stoppen einer Positionierbewegung, die im Teileprogramm programmiert wurde, erfolgt mit axialem Restweglöschen.
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Hinweis Das Sperren einer Achsbewegung ist auch für PLC-Achsen möglich (z. B. Magazinachse). 2.4.13 Starten von Kommandoachsen Einführung Achsen können auch vollkommen asynchron zum Teileprogramm aus Synchronaktionen positioniert, gestartet gestoppt werden. Diese Art der Programmierung empfiehlt sich für zyklische Abläufe oder Abläufe, die sehr stark ereignisgesteuert sind.
Seite 70
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Hinweis Das MD30450 $MA_IS_CONCURRENT_POS_AX gibt darüber Auskunft, ob die Achse hauptsächlich als Kommandoachse oder für Programmierung durch das Teileprogramm vorgesehen ist: 0: keine konkurrierende Achse 1: konkurrieren Achse (Kommando-Achse) Beispiel 1 ID=1 EVERY $A_IN[1]==1 DO POS[X]=100 Beispiel 2 Eine Achsbewegung kann als Technologiezyklus ausgelöst werden.
Seite 71
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Hinweis Es sind nur G70, G71, G700, G710 in Synchronaktionen programmierbar! Vergl. Kap. 2.1 G-Funktionen, die im Synchronaktionssatz programmiert werden, wirken nur auf die Synchronaktion oder im Technologiezyklus. Sie haben keine Auswirkung auf die folgenden Sätze im Teileprogramm.
Seite 72
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Axiale Frames Das Verhalten von Synchronaktionen und axialen Frames erläutern die folgenden Abschnitte: Wirkung Bei Positionierbewegungen aus Synchronaktionen wirken die axialen Verschiebungen, Skalierungen und Spiegelungen des programmierbaren und einstellbaren Frames (G54 usw.) sowie Werkzeuglängenkorrekturen. Es wirkt jeweils der im aktiven Satz wirksame Frame.
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Beispiel: RANS A=0,001 POS[A]=CAC(2) Achse fährt auf Position 180.001 Grad Für die Kommandoachse ist das axiale Frame nicht wirksam MD32074 $MA_FRAME_OR_CORRPOS_NOTALLOWED[AX 4] = 'H0020' WHEN TRUE DO POS[A]=CIC(-1) Achse fährt auf Position 180.000 Grad. Hinweis Wird einen Kommandoachse inkrementell auf Teilungspositionen verfahren, dann sind axiale Frames generell für diese Kommandoachse nicht wirksam.
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Beispiel für berechneten Vorschub ID = 1 EVERY $AA_IM[B] > 75 DO POS[U]=100 FA[U]=$AA_VACTM[W]+100 Der Vorschubwert wird entweder als Linear- oder Umdrehungsvorschub programmiert: Den Vorschubtyp bestimmt das Settingdatum: SD43300 $SA_ASSIGN_FEED_PER_REV_SOURCE (Umdrehungsv. für Positionierachsen/Spindeln) Das Settingdatum kann per Bedienung oder von PLC, sowie aus dem Teileprogramm verändert werden.
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Das Vorzeichen des Wertes bestimmt die Richtung der Bewegung: >0: Achsbewegung in positive Richtung <0: Achsbewegung in negative Richtung ==0: Achsbewegung stoppen Wird eine Teilungsachse aus der Bewegung mit MOV[Achse]=0 gestoppt, so wird wie im konventionellen JOG-Betrieb die nächste Teilungsposition angefahren.
Seite 76
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Achstyp und Achsstatus bezüglich Achstausch Der zum Aktivierungszeitpunkt der Synchronaktion aktuell gültige Achstyp und Achsstatus kann über $AA_AXCHANGE_TYP bzw. $AA_AXCHANGE_STAT abgefragt werden. Abhängig vom Kanal der das aktuelle Interpolationsrecht gerade dieser Achse besitzt, und vom eigentlichen Zustand für den zulässigen Achstausch, ergibt sich aus der Synchronaktion ein unterschiedlicher Ablauf.
Seite 77
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Achse ist bereits dem angeforderten Kanal zugeordnet Ist die angeforderte Achse zum Aktivierungszeitpunkt bereits diesem Kanal zugeordnet, und im Zustand neutrale Achse nicht vom PLC kontrolliert $AA_AXCHANGE_TYP[Achse] == 3, so wird diese Achse dem NC-Programm zugeordnet $AA_AXCHANGE_TYP[Achse] == 0. Dies hat einen Reorganisationsvorgang zur Folge.
Seite 78
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Freizugebende Achse ist bereits neutrale Achse: Ist die Achse bereits im Zustand neutrale Achse $AA_AXCHANGE_TYP[<Achse>] == 3 oder als Kommando- bzw. Pendelachse aktiv oder der PLC zum Verfahren zugeordnet, PLC-Achse == konkurrierende Positionierachse, $AA_AXCHANGE_TYP[Achse] == 1, so wird die Achse für einen automatischen Achstausch zwischen Kanälen freigegeben.
Seite 79
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Beispiel GET, RELEASE über Synchronaktionen Achse Z ist im 1. und im 2. Kanal bekannt Programmablauf im 1. Kanal: WHEN TRUE DO RELEASE(Z) Z-Achse wird neutral WHENEVER $AA_TYP[Z] == 1 DO RDISABLE Einlesesperre solange Z-Achse Programmachse ist N110 G4 F0.1 WHEN TRUE DO GET(Z)
Seite 80
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Beispiel GET, RELEASE im Technologiezyklus Im 1. und 2. Kanal ist bekannt: Die Achse U, Maschinendatum: MD30552 $MA_AUTO_GET_TYPE = 2 (Automatisches GET bei Achse holen) Aktuell hat der Kanal 1 das Interpolationsrecht, im Kanal 2 wird folgender Technologiezyklus gestartet: GET(U) Achse U in Kanal holen...
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen 2.4.17 Spindelbewegungen aus Synchronaktionen Allgemeines Analog zu Positionierachsen können auch Spindeln aus Synchronaktionen gestartet, positioniert, gestoppt werden. Der Start von Spindelbewegungen zu definierten Zeitpunkten kann erreicht werden durch Blockieren einer im Teileprogramm programmierten Bewegung oder durch Steuerung der Achsbewegung aus Synchronaktionen.
Seite 82
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Beispiel: ID=1 EVERY $A_IN[1]==1 DO M3 S300 Drehrichtung und Drehzahl ID = 2 EVERY $A_IN[2]==1 DO M4 S500 Drehrichtung und Drehzahl ID=3 EVERY $A_IN[3]==1 DO S1000 Neue Drehzahlvorgabe für aktive Spindeldrehung ID=4 EVERY ($A_IN[4]==1 ) AND Spindel positionieren ($A_IN[1]==0) DO SPOS=0 Vorschub...
Seite 83
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Achskoordinierung Wird aus Synchronaktionen ein Positionierbefehl (POS, MOV) gestartet, während die Achse bereits als Bahnachse oder als PLC-Achse belegt ist, so wird die Bearbeitung mit Alarm abgebrochen. Achsbewegung wechselweise durch TP und SA Typischerweise wird eine Achse entweder aus dem Teileprogramm (TP) im Bewegungssatz oder als Positionierachse aus der Synchronaktion (SA) bewegt.
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Beispiele: ID=1 EVERY $AC_TIMER[1] >= 5 DO POS[V]=100 FA[V]=560 ID=2 EVERY $AC_TIMER[1] >= 7 DO POS[V]=$AA_IM[V] + 2 FA[V]=790 ; Aufgrund der Programmierung mit $AC_TIMER[1] ist die Synchronaktion mit ID=2 die zuletzt aktivierte, ihre Vorgaben werden wirksam und lösen die Vorgaben aus ID=1 ... ab. Endposition und Vorschub einer Kommandoachse können somit während laufender Bewegung nachgestellt werden.
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Fliegende Übergänge bei Achskopplungen Positionierachsbewegungen und Bewegungen als Folge von Achskopplungen über Synchronaktionen können sich gegenseitig ablösen. Siehe dazu Kapitel 2.4.02 "Mitschleppen und Kopplungen aktivieren, deaktivieren" und: Literatur: /FB3/ Funktionshandbuch Sonderfunktionen; Achskopplungen und ESR (M3) Die erlaubten Übergänge in Leitwertkopplung sind in der Tabelle oben mit LEADON gekennzeichnet, die Übergänge in das Mitschleppen mit TRAILON.
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Beispiel Im Kap. "Fliegendes Trennen" finden Sie ein Beispiel für die Verwendung von PRESETON im Zusammenhang mit einer Anwendung Fliegendes Trennen. Hinweis Das Istwertsetzen PRESETON darf nur mit dem Schlüsselwort WHEN oder EVERY erfolgen. 2.4.19 Mitschleppen und Kopplungen aktivieren, deaktivieren Einführung...
Seite 87
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen ● Elektronisches Getriebe Mit Hilfe der Funktion "Elektronisches Getriebe" kann die Bewegung einer Folgeachse FA abhängig von bis zu fünf Leitachsen LA interpediert werden. Ein Getriebeverband kann aus dem Teileprogramm: – Definiert – Eingeschaltet –...
Seite 88
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen TRAILON - Mitschleppen aus einer Synchronaktion Aus einer Synchronaktion heraus kann die Zuordnung einer Folgeachse zu einer Leitachse mit einem Koppenfaktor definiert und gleichzeitig aktiviert werden: ... DO TRAILON(FA, LA, Kf) mit: Folgeachse Leitachse Koppelfaktor Die Auflösung des Mitschleppverbandes erfolgt mit: oder...
Seite 89
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Leitwert ermitteln Aus einer Synchronaktion heraus kann ein konkreter Leitwert anhand einer definierten Kurventabelle für einen Folgewert ermittelt werden. Beispiel: ... DO $R18=CTABINV(FW, aprLW, n, grad) mit: Folgewert aprLW angenäherter Leitwert, mit dem bei mehrdeutiger Umkehrfunktion der Kurventabelle ein eindeutiger LW bestimmt werden kann Nummer der Kurventabelle grad...
Seite 90
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Erkennen des Synchronlaufes Die aus Teileprogramm und Synchronaktion lesbare Systemvariable $AA_SYNC[ax] zeigt an, ob und wie die Folgeachse FA synchronisiert ist: 0: nicht synchron 1: Synchronlauf grob (gemäß MD37200 $MA_COUPLE_POS_TOL_COARSE) 2: Synchronlauf fein (gemäß MD37210 $MA_COUPLE_POS_TOL_FINE) Anwendungsabgrenzung Im Teileprogramm direkt aktivierte Kopplungen werden an Satzgrenzen aktiviert.
Seite 91
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen ● Achstausch - Kanalübergreifende Kopplung Beim Achstausch müssen die Folge- und Leitachsen dem aufrufenden Kanal bekannt sein. Der Achstausch der Leitachsen ist unabhängig vom Zustand der Kopplung möglich. Durch eine definierte oder aktive Kopplung entstehen keine weiteren Randbedingungen. Hinweis Durch die Aktivierung der Kopplung wird die Folgeachse zur Hauptlaufachse und steht für einen Achstausch nicht zur Verfügung.
Seite 92
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen ● Beispiel: Programmierung mit Schlüsselwörtern in Synchronaktionen: Beispiel 1: Definition einer Achskopplung mit einer Leitachse DO CPDEF=YCPLEDF[Y]=X CPLNUM[Y;X]=1,5 Beispiel 2: N10 WHEN TRUE DO CPLON[X]=X CPLNUM[X,Y]=2; OK N20 WHEN TRUE DO CPLNUM [A,B]=" CPLON [A=B] ; Alarm Die Reihenfolge im Satz N20 ist nicht erlaubt, da CPLNUM gesetzt werden soll, bevor das Koppelmodul mittels CPDEF im Teileprogramm angelegt wurde.
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen 2.4.20 Messen aus Synchronaktionen Einführung Für die Teileprogramme verfügbare Messfunktionen: MEAS, MEAW, MEASA, MEAWA, MEAC Literatur: /PGA/ Programmierhandbuch Arbeitsvorbereitung /FB2/ Funktionshandbuch Erweiterungsfunktionen; Messen (M5) Davon stehen in Synchronaktionen nur folgende zur Verfügung: ● MEAWA axiales Messen ohne Restweglöschen ●...
Seite 94
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Triggerereignis_1 bis Triggerereignis_4: steigende Flanke Messtaster 1 optional - 1: fallende Flanke Messtaster 1 optional steigende Flanke Messtaster 2 optional - 2: fallende Flanke Messtaster 2 Messspeicher: Nummer einer FIFO-Variablen Messwerte werden ausschließlich für das Maschinenkoordinatensystem bereitgestellt. MEAWA ...
Seite 95
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen MEAC ... DO MEAC[Achse]=(Modus, Nr_FIFO, Triggerereignisse) Die Variablen $AC_FIFO (siehe Kap. "FIFO-Variablen (Durchlaufspeicher)".) sind dafür vorgesehen, Messwerte aus zyklischen Messvorgängen aufzunehmen. Modus und Triggerereignisse s. o. Beispiele: Für die folgenden Beispiele wurden per Maschinendaten 2 FIFO's eingerichtet. Maschinendaten: MD28050 $MC_MM_NUM_R_PARAM = 300 MD28258 $MC_MM_NUM_AC_TIMER = 1...
Seite 96
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Programm 2: G0 X0 Eilgang zum Startpunkt $AC_MARKER[1]=1 Merker 1 als Index für Rechenvariablen R[..] ID=1 WHENEVER $AC_FIFO1[4]>=1 Synchronaktion als Prüfung: DO $R[$AC_MARKER[1]]= $AC_FIFO1[0] $AC_MARKER[1]=$AC_MARKER[1]+1 wenn 1 oder mehr Messwerte in FIFO-Variable stehen ältesten Wert aus FIFO auslesen und in aktuelle R[..] ablegen, Index für R um 1 erhöhen MEAC[X]=( 1, 1, 1, -1) POS[X]=100 Kontinuierliches Messen aktivieren, Bewegung...
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Priorität bei mehreren Messungen Zu einem Zeitpunkt kann pro Achse genau ein Messauftrag aktiv sein. Der Start eines Messauftrags für dieselbe Achse bewirkt, dass die Triggerereignisse erneut aktiviert und die Messergebnisse zurückgesetzt werden. Wird Messauftrag ausschalten (Modus 0) programmiert, ohne dass vorher ein Messauftrag aktiviert wurde, so erfolgt keine gesonderte Reaktion.
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Wartemarke löschen Der Befehl CLEARM(MarkerNummer) kann im Teileprogramm und im Aktionsteil einer Synchronaktion gegeben werden. Er löscht die Marke MarkerNummer für den Kanal, in dem der Befehl läuft. (Eigener Kanal). 2.4.22 Alarm setzen/Fehlerreaktionen Fehlersituationen Alarm setzen ist eine Möglichkeit auf Fehlerzustände zu reagieren.
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen 2.4.23 Auswertung der Daten zur Maschinenwartung Funktion Maschinenbetreiber erhalten die Möglichkeit, sich in Teileprogrammen, Synchronaktionen und über die BTSS-Schnittstelle auch von PLC bzw. HMI mit Systemvariablen über die Maschinennutzung zu informieren. Abhängig von den ausgelesenen Werten können dann Wartungsmaßnahmen direkt eingeleitet oder angefordert werden.
Ausführliche Beschreibung 2.4 Aktionen in Synchronaktionen Konfigurationsbeispiel MD18860 $MN_MM_MAINTENANCE_MON = TRUE (Aktivierung der Aufzeichnung von Wartungsdaten) MD33060 $MA_MAINTENANCE_DATA[0]=1 (Konfig. der Aufz. von Wartungsdaten) MD33060 $MA_MAINTENANCE_DATA[1]=1 MD33060 $MA_MAINTENANCE_DATA[2]=1 … aktiviert die Systemvariablen für Gesamtverfahrweg, Gesamtverfahrzeit und die Anzahl der Verfahrvorgänge für die ersten 3 Achsen. Systemvariablen Folgende Systemvariablen können aus dem Teileprogramm und aus Synchronaktionen gelesen werden:...
Ausführliche Beschreibung 2.5 Aufruf von Technologiezyklen Aufruf von Technologiezyklen Definition Ein Technologiezyklus ist eine Folge von Aktionen, die sequentiell im Interpolationstakt abgearbeitet werden. Die im Kap. "Aktionen in Synchronaktionen" dargestellten Aktionen können zu Programmen zusammengefasst werden. Aus Anwendersicht handelt es sich bei diesen Programmen um Unterprogramme ohne Parameter.
Seite 102
Ausführliche Beschreibung 2.5 Aufruf von Technologiezyklen Suchpfad Für den Aufruf gilt der Suchpfad wie bei Unterprogrammen und Zyklen. Beispiel: … ID=1 EVERY $AA_IM[Y]>=10 DO AX_X AX_X Unterprogramm- name für Achsprogramm für X-Achse AX_X: Achsprogramm POS[X]=$R[7] FA[X]=377 $A_OUT[1]=1 POS[X]=R10 POS[X]=-90 Hinweis Ist die Bedingung erneut erfüllt, während der Technologiezyklus abgearbeitet wird, so wird er nicht von neuem gestartet.
Seite 103
Ausführliche Beschreibung 2.5 Aufruf von Technologiezyklen Bild 2-9 Mehrere Technologiezyklen Beispiel (2) für koordinierte Achsbewegungen: Durch Setzen digitaler NC-Eingänge werden verschiedene Achs-Programme gestartet. Hauptprogramm: ID=1 WHEN $A_IN[1]==1 DO ACHSE_X ID=2 WHEN $A_IN[2]==1 DO ACHSE_Y ID=3 WHEN $A_IN[3]==1 DO AA_OVR[Y]=0 ID=4 WHEN $A_IN[4]==1 DO ACHSE_Z Achsprogramme: ACHSE_X: $AA_OVR[Y]=0...
Ausführliche Beschreibung 2.5 Aufruf von Technologiezyklen ACHSE_Z: $AA_OVR[X]=0 POS[Z]=90 POS[Z]=-90 2.5.1 Koordinierungen zwischen Synchronaktionen, Technologiezyklen, Teileprogramm (und PLC) Beeinflussung von Technologiezyklen Die Technologiezyklen/Synchronaktionen werden über die Identifikationsnummer der Synchronaktionen beeinflusst, in denen sie als Aktion angegeben sind: Mittel zur Koordinierung Schlüsselwort Bedeutung Aufruf zulässig im Teileprogramm...
Seite 105
Ausführliche Beschreibung 2.5 Aufruf von Technologiezyklen Bild 2-10 Anlegen/Verriegeln modaler Synchronaktionen/Löschen Synchronaktionen 2-93 Funktionshandbuch, 11/2006, 6FC5397-5BP10-2AA0...
Ausführliche Beschreibung 2.6 Beeinflussung und Schutz von Synchronaktionen Beeinflussung und Schutz von Synchronaktionen 2.6.1 Beeinflussung von PLC Funktion Modale Synchronaktionen (ID, IDS) können von PLC verriegelt bzw. freigegeben werden. ● Sperrung aller modalen Synchronaktionen ● Gezielte Sperrung einzelner Synchronaktionen Einflussbereich Die PLC kann auf maximal die ersten 64 modalen Synchronaktionen mit Sperren Einfluss nehmen (ID, IDS 1-64).
Ausführliche Beschreibung 2.6 Beeinflussung und Schutz von Synchronaktionen Aufhebung gezielter Sperren Eine zuvor gesperrte Synchronaktion wird wieder von PLC freigegeben, durch Setzen des, der ID-, IDS-Nummer entsprechenden Bits auf 0 in der Nahtstelle: DB21, … DBX300.0 (Synchronaktionen sperren Nr. 1) DB21, …...
Ausführliche Beschreibung 2.6 Beeinflussung und Schutz von Synchronaktionen Lesen / Schreiben von PLC-Daten Das Lesen / Schreiben von PLC-Daten kann auch aus dem Teileprogramm mit Parameterübergabe zwischen NCK und PLC über VDI-Nahtstelle erfolgen. Dies ist eine Option: PLC-Variablen. Literatur: /FB1/ Funktionshandbuch Grundfunktionen; PLC-Grundprogramm (P3) Die Parameter sind auch aus Synchronaktionen zugänglich.
Seite 109
Ausführliche Beschreibung 2.6 Beeinflussung und Schutz von Synchronaktionen Notation des Maschinendatums: MD11500 $MN_PREVENT_SYNACT_LOCK MD11500 $MN_$MN_PREVENT_SYNACT_LOCK[0]= i Nummer der 1. zu sperrenden ID MD11500 $MN_PREVENT_SYNACT_LOCK[1]= j j Nummer der letzten zu sperrenden ID ID i und j können auch vertauscht angegeben werden. Mit i = 0 und j = 0 gibt es keinen geschützten Bereich.
Seite 110
Ausführliche Beschreibung 2.6 Beeinflussung und Schutz von Synchronaktionen Hinweis Während der Erstellung von geschützten statischen Synchronaktionen sollte der Schutz aufgehoben sein, da sonst bei jeder Änderung Power On notwendig ist, um die Logik neu definieren zu können. Die Wirksamkeit der Sperren ist identisch, unabhängig davon, ob sie angegeben wurden als: ●...
Ausführliche Beschreibung 2.7 Steuerungsverhalten für Synchronaktionen in bestimmten Betriebszuständen Steuerungsverhalten für Synchronaktionen in bestimmten Betriebszuständen 2.7.1 Power On Bei Power On sind keine Synchronaktionen aktiv. Statische Synchronaktionen, die sofort nach Power On aktiv sein sollen, müssen in einem von PLC gestarteten ASUP aktiviert werden.
Ausführliche Beschreibung 2.7 Steuerungsverhalten für Synchronaktionen in bestimmten Betriebszuständen Weitere Reaktionen, abhängig von Aktionen RESET Fortsetzung Synchronaktion/ modale und satzweise aktive Aktion wird abgebrochen, statisch (IDS) Technologiezyklus Synchronaktionen werden gelöscht aktive Aktion wird abgebrochen, Technologiezyklus wird zurückgesetzt Achse/ Bewegung wird abgebrochen Bewegung wird abgebrochen positionierende Spindel...
Ausführliche Beschreibung 2.7 Steuerungsverhalten für Synchronaktionen in bestimmten Betriebszuständen Bewegungsstart aus satzweisen und modalen Synchronaktionen Aus satzweisen und modalen Synchronaktionen gestartete Achsbewegungen werden unterbrochen und mit NC-Start fortgesetzt. Drehzahlgeregelte Spindeln bleiben aktiv. Die zum aktiven Satz gehörenden Synchronaktionen bleiben weiter aktiv. Beispiel: Ausgang setzen: ...
Ausführliche Beschreibung 2.7 Steuerungsverhalten für Synchronaktionen in bestimmten Betriebszuständen 2.7.6 Verhalten der aktiven Aktionen bei Programmende und Betriebsartenwechsel Siehe Kapitel 2.7.4 "Betriebsartenwechsel" und Kapitel 2.7.5 "Programmende". Synchronaktion/ modale und satzweise werden abgebrochen statisch (IDS) bleiben erhalten Technologiezyklus Achse/positionierende M30 wird verzögert, bis die Achse/Spindel steht. Bewegung läuft weiter Spindel drehzahlgeregelte Spindel...
Ausführliche Beschreibung 2.7 Steuerungsverhalten für Synchronaktionen in bestimmten Betriebszuständen 2.7.8 Programmunterbrechung durch ASUP ASUP-Anfang Modale und statische Bewegungssynchronaktionen bleiben erhalten und sind auch im asynchronen Unterprogramm wirksam. ASUP-Ende Wird das asynchrone Unterprogramm nicht mit REPOS fortgesetzt, so wirken die im asynchronen Unterpogramm geänderten modalen und statischen Bewegungssynchronaktionen im Hauptprogramm weiter.
Ausführliche Beschreibung 2.8 Projektierung Projektierung 2.8.1 Projektierbarkeit Anzahl Synchronaktionselemente Die Anzahl der programmierbaren Synchronaktionssätze hängt nur von der projektierbaren Anzahl von Synchronaktionselementen ab. Die Anzahl der Speicherelemente von Bewegungssynchronaktionen (Synchronaktionselementen) wird festgelegt über das Maschinendatum: MD28250 $MC_MM_NUM_SYNC_ELEMENTS (Anzahl Elemente für Ausdrücke in Synchronaktionen) Die Festlegung ist unabhängig von der Anzahl der steuerungsintern verfügbaren Satzanzahl.
Seite 117
Ausführliche Beschreibung 2.8 Projektierung Hinweis Programmiert der Anwender keine Synchronaktionen, so kann er den Wert auf 0 gesetzt werden im Maschinendatum: MD28250 $MC_MM_NUM_SYNC_ELEMENTS So können ca. 16 kByte an DRAM Speicher eingespart werden. Anzeige Mit der Statusanzeige für Synchronaktionen (siehe Kapitel 2.9 "Diagnose nur mit HMI Adv.") lässt sich die Auslastung des Speichers für Synchronaktionen verfolgen oder aus Synchronaktionen über die variable "AC_SYNA_MEM lesen.
Ausführliche Beschreibung 2.8 Projektierung Richtwerte IPO-Takt Verlängerung Als Orientierungshilfe werden einzelne Zeiten für Operationen innerhalb von Synchronaktionen (gemessen auf 840D mit NCU 573.x) angegeben: Für andere Steuerungstypen sind Abweichungen möglich. NC-Sprache Zeitbedarf gesamt fett markierter Anteil Grundlast für eine Synchronaktion, wenn Bedingung nicht erfüllt ist:WHENEVER 10 µs ~10 µs FALSE DO $AC_MARKER[0]=0...
Ausführliche Beschreibung 2.9 Diagnose (nur mit HMI Advanced) Diagnose (nur mit HMI Advanced) Funktionalität der Diagnose Für die Diagnose von Synchronaktionen stehen die folgenden speziellen Testmittel zur Verfügung: ● Statusanzeige der Synchronaktionen im Bedienbereich Maschine ● Systemvariablen anzeigen im Bedienbereich Parameter Es können aktuelle Werte aller Synchronaktions-Variablen angezeigt werden.
Ausführliche Beschreibung 2.9 Diagnose (nur mit HMI Advanced) 2.9.1 Status der Synchronaktionen anzeigen Statusbild Das Statusbild zeigt an: ● Den aktuellen Ausschnitt des angewählten Programms Alle programmierten Synchronaktionen nach: ● Zeilennummer ● Kennzeichen der Synchronaktionsart ● ID-Nummer der Synchronaktion (bei modalen Synchronaktionen) ●...
Ausführliche Beschreibung 2.9 Diagnose (nur mit HMI Advanced) 2.9.2 Hauptlaufvariablen anzeigen Bedeutung Für den Test von Synchronaktionen ist es möglich, die Systemvariablen zu verfolgen. Die zulässigen Variablen werden in einer Vorschlagsliste zur Auswahl angeboten. Die vollständige Liste der einzelnen Systemvariablen mit Kennzeichnung des Schreibzugriffs W und des Lesezugriffs R für Synchronaktionen finden Sie in: Literatur: /PGA1/ Listenhandbuch Systemvariablen...
Ausführliche Beschreibung 2.9 Diagnose (nur mit HMI Advanced) Bild 2-13 Schematischer Ablauf Hauptlaufvariablen protokollieren Bedienung Die Hinweise zur Bedienung der Protokollierfunktion finden Sie in: Literatur: /BAD/ Bedienungshandbuch HMI Advanced Protokolldefinition In der Protokolldefinition können bis zu 6 Variablen angegeben werden, deren Werte im angegebenen Takt in die Protokolldatei eingeschrieben werden sollen.
Seite 123
Ausführliche Beschreibung 2.9 Diagnose (nur mit HMI Advanced) Speichermethode Beim Überschreiten der effektiven Protokolldateigröße werden die ältesten Einträge überschrieben, so dass sich ein Ringpuffer ergibt. Protokollierung starten Die Protokollierung gemäß einer der initialisierten Protokolldefinitionen wird gestartet durch: ● Bedienung ● Setzen der Systemvariablen $A_PROTO=1 aus dem Teileprogramm Der Startzeitpunkt muss so gewählt werden, dass die zu protokollierenden Variablen erst nach der Aktivierung von Abläufen auf der Maschine verändert werden.
Seite 124
Ausführliche Beschreibung 2.9 Diagnose (nur mit HMI Advanced) Synchronaktionen 2-112 Funktionshandbuch, 11/2006, 6FC5397-5BP10-2AA0...
Randbedingungen Verfügbarkeit / Leistungsumfang Die möglichen Leistungen des Funktionspaketes Synchronaktionen hängen ab von: ● Dem Typ der SINUMERIK-Steuerung – HW – SW (Exportvariante/Standardvariante) ● Der Verfügbarkeit der durch "Aktionen" auslösbaren Funktionen: – immer vorhandene Funktionen – als Option zu beziehende Funktionen Die Leistungen der Steuerungen und ihrer Varianten und die als Optionen verfügbaren Funktionen sind beschrieben in den SW-Standspezifischen Katalogen: Literatur:...
Seite 126
Randbedingungen ● Projektierbarkeit – Anzahl gleichzeitig aktiver Synchronaktionen – Anzahl spezieller Variablen für die Synchronaktionen ● Kommandoachsen/Achsprogramme/Technologiezyklen aus Synchronaktionen aktivieren ● PRESET aus Synchronaktionen ● Kopplungen und Mitschleppen aus Synchronaktionen – Einschalten – Ausschalten – Parametrieren ● Messfunktionen benutzen aus Synchronaktionen ●...
Seite 127
Randbedingungen Erweiterungen ab SW-Stand 5 Folgende Leistungen werden ab SW 5 bis 7 zusätzlich erbracht: ● Für PLC gekennzeichnete sperrbare Synchronaktionen ● Verfügbarkeit zusätzlicher Echtzeitvariablen ● Zugriff auf PLC-E/A (Option) ● mit der Option "Synchronaktionen Stufe 2" sind 255 parallele Synchronaktionen pro Kanal möglich.
Seite 128
Randbedingungen Synchronaktionen Funktionshandbuch, 11/2006, 6FC5397-5BP10-2AA0...
Signalbeschreibungen Bild 4-1 PLC–Nahtstellensignale für Synchronaktionen Zu den durch Hilfsfunktionsausgabe aus Synchronaktionen erzeugten Signalen siehe: Literatur: /FB1/ Funktionshandbuch Grundfunktionen; Hilfsfunktionsausgabe an PLC (H2) Signale an Kanal Mit den folgenden Signalen fordert das PLC-Anwendungsprogramm die Sperrung der zugeordneten Synchronaktionen an: DB21, … DBX300.0 (Synchronaktionen sperren Nr. 1) DB21, …...
Seite 130
Signalbeschreibungen DBX300.0 der ersten modalen Synchronaktion (ID=1/IDS=1) und DBX307.7 der 64. modalen Synchronaktion (ID=64/IDS=64). Hinweis Nur die Instanz (NCK oder PLC), die eine Sperre setzt, kann auch wieder die Sperre aufheben. Signale von Kanal Mit den folgenden Signalen zeigt der Kanal dem PLC-Anwendungsprogramm an, welche Synchronaktionen durch PLC gesperrt werden dürfen: DB21, …...
Beispiele Beispiele für Bedingungen in Synchronaktionen Bahnabstand vom Satzende Axialer Abstand 10 mm oder weniger vom Satzende (Werkstück-Koordinatensystem ): ... WHEN $AC_DTEW <= 10 DO ... G1 X10 Y20 Achsabstand vom Bahnende ... WHEN $AA_DTEW[X]<= 10 DO ... POS[X]= 10 Bahnabstand vom Satzanfang Bahnweg 20 mm oder mehr nach Satzanfang im Basis-Koordinatensystem: ...WHEN $AC_PLTBB >= 20 DO ...
Beispiele 5.2 Schreiben und Lesen von SD/MD aus Synchronaktionen Weitere Möglichkeiten Die Liste der in Synchronaktionen lesbaren Systemvariablen erschließt die volle Menge der in Bedingungen von Synchronaktionen auswertbaren Größen. Literatur: /PGA1/ Listenhandbuch Systemvariablen Schreiben und Lesen von SD/MD aus Synchronaktionen Zustellung und Pendeln beim Schleifen Settingdaten, deren Werte während der Bearbeitung unverändert bleiben, werden wie im Teileprogramm mit ihrem gewöhnlichen Namen angesprochen.
Seite 133
Beispiele 5.2 Schreiben und Lesen von SD/MD aus Synchronaktionen NC-Sprache Kommentar gehende Synchronaktion aufgehoben!) N640 ID=4 WHENEVER $AA_DTEPW[X]==0 DO $AA_OVR[Z]=100 $AC_MARKER[0]=1 $AC_MARKER[1]=1 N650 ID=5 WHENEVER $AC_MARKER[0]==1 DO $AA_OVR[X]=0 N660 ID=6 WHENEVER $AC_MARKER[1]==1 DO $AA_OVR[X]=0 Wenn die aktuelle Position der Pendelachse im Werkstückkoordinatensystem gleich der Umkehrposition 1 ist,...
Beispiele 5.3 Beispiele zur AC-Regelung NC-Sprache Kommentar N630 ID=3 WHENEVER $AA_IM[Z]==$$SA_OSCILL_REVERSE_POS1[Z] DO $AA_OVR[Z]=0 $AA_OVR[X]=100 Immer wenn der Restweg der Teilzustellung gleich 0 ist, dann setze den axialen Override der Pendelachse auf 100% (damit wird die vorhergehende Synchronaktion aufgehoben) N640 ID=4 WHENEVER $AA_DTEPW[X]==0 DO $AA_OVR[Z]=100 $AC_MARKER[0]=1 $AC_MARKER[1]=1 N650 ID=5 WHENEVER $AC_MARKER[0]==1 DO $AA_OVR[X]=0 N660 ID=6 WHENEVER $AC_MARKER[1]==1 DO $AA_OVR[X]=0...
Beispiele 5.3 Beispiele zur AC-Regelung 5.3.1 Abstandsregelung mit variabler Obergrenze Beispiel für Polynom mit dyn. Obergrenze Für eine Abstandsregelung wird die Obergrenze des Ausgangs ($AA_OFF, Überlagerungswert in Achse V) in Abhängigkeit vom Spindeloverride (Analogeingang 1) verändert. Die obere Begrenzung für das Polynom 1 wird dynamisch in Abhängigkeit von Analogeingang 2 verändert.
Beispiele 5.3 Beispiele zur AC-Regelung Hinweis Bei Verwendung von Systemvariablen im Teileprogramm muss durch Programmierung von STOPRE für satzsynchrones Schreiben gesorgt werden. Gleichwertig zur obigen Notation zur Polynomdefinition ist: FCTDEF(1,0.2, 0.5, 0.35, 1.5EX-5). 5.3.2 Regelung des Vorschubs Beispiel für AC-Regelung mit einer analogen Eingangsspannung Es soll eine Prozessgröße (gemessen über $A_INA[1]) durch Korrektur des Bahn- (oder axialen) Vorschubs additiv beeinflusst auf 2V geregelt werden.
Beispiele 5.3 Beispiele zur AC-Regelung FCTDEF( Polynom-Nr, LLIMIT, ULIMIT, y für x = 0 Steigung quadratisches Glied kubisches Glied Mit den oben bestimmten Werten lautet die Polynomdefinition: FCTDEF(1, -100, 100, 200, -100, 0, 0) Mit folgenden Synchronaktionen kann die AC-Regelung eingeschaltet werden: für den Achsvorschub: ID = 1 DO SYNFCT (1, $AA_VC[X], $A_INA[1]) oder für den Bahnvorschub:...
Beispiele 5.5 Ausführungszeiten in R-Parameter ablegen NC-Sprache Kommentar ID=1 WHENEVER $AA_IM[X2] - Sicherheitsschranke $AA_IM[X1] < 30 DO $AA_OVR[X2]=0 ID=2 EVERY $AA_IM[X2] - $AA_IM[X1] Sichere Position < 15 DO POS[X1]=0 Ausführungszeiten in R-Parameter ablegen Aufgabe Lege ab R-Parameter 10 die Ausführungszeit für die Teileprogrammsätze ab. Programm Kommentar Ohne symbolische Programmierung sieht...
Seite 140
Beispiele 5.6 "Einmitten" mit kontinuierlichem Messen Bild 5-4 Schemabild zum Messen der Zahnradlücken %_N_MEAC_MITTEN_MPF ;Messen mit der Rundachse B (BACH) mit Anzeige der Differenz ;zwischen den Messwerten ;*** Lokale Anwender- Variablen definieren *** N1 DEF INT ZAEHNEZAHL Eingabe Anzahl Zahnradzähne N5 DEF REAL HYS_POS_FLANKE Hysterrese positive Flanke Taster N6 DEF REAL HYS_NEG_FLANKE...
Seite 141
Beispiele 5.6 "Einmitten" mit kontinuierlichem Messen Anfang: *** Variablen zuweisen *** R1=0 ID2 Rechenergebnis Lückenmaß R2=0 ID2 Rechenergebnis Addition aller Lücken R3=0 Inhalt des zuerst eingelesenen Elements R4=0 R4 Entspricht einem Zahnabstand R5=0 Lückenposition errechnet, Endergebnis R6=1 ID 3 BACH mit MOV einschalten R7=1 ID 5 MEAC einschalten M_ZAEHNE=ZAEHNEZAHL*2...
Seite 142
Beispiele 5.6 "Einmitten" mit kontinuierlichem Messen ;*** FIFO Werte holen und abspeichern *** N400 R3=$AC_PARAM[0] Inhalt des zuerst eingelesenen Elements ;Rücksetzen der FIFO1[4] Variablen ;und Sicherstellen eines definierten Messtrace ;für nächsten Messauftrag N500 $AC_FIFO1[4]=0 ;*** Differenz zwischen den einzelnen Zähnen rechen *** R4 Entspricht einem durchschnittlichen N510 R4=R2/(ZAEHNEZAHL)/1000 Zahnabstand...
Beispiele 5.7 Achskopplungen über Synchronaktionen Achskopplungen über Synchronaktionen 5.7.1 Einkoppeln auf Leitachse Aufgabenstellung Über Polynomsegmente wird eine zyklische Kurventabelle definiert. Gesteuert über Rechenvariablen wird die Bewegung der Leitachse und der Koppelvorgang zwischen Leitachse und abhängiger Achse ein-/ausgeschaltet. %_N_KOP_SINUS_MPF N5 R1=1 ID 1, 2 ein-/ausschalten der Kopplung: LEADON (CACB, BACH) N6 R2=1...
Seite 146
Beispiele 5.7 Achskopplungen über Synchronaktionen ; XACH ist die Zustellachse der Schleifscheibe ; CACH ist die Werkstückachse als Rundachse und Leitwertachse ; Anwendung: Unrunde Kontur schleifen ; Tabelle 1 bildet den Override für Achse CACH als Funktion der Position von CACH ab ;...
Seite 147
Beispiele 5.7 Achskopplungen über Synchronaktionen N2100 *** Einschalter der LEADON CASW Overridetabelle *** N2200 WAITP(CASW) N2300 ID=5 EVERY $R3==1 DO CTAB Kopplung EIN Leitachse CACH LEADON(CASW,CACH,1) N2400 ID=6 EVERY $R3==0 DO CTAB Kopplung AUS Leitachse CACH LEADOF(CASW,CACH) N2500 *** Override der CACH von Position CASW mit ID 10 beeinflussen *** N2700 ID=11 DO "Achsposition"...
Beispiele 5.7 Achskopplungen über Synchronaktionen Ausbaumöglichkeiten Das obige Beispiel lässt sich in folgenden Punkten ausbauen: ● Einführung einer Z-Achse, um Schleifscheibe oder Werkstück von einem Unrund zum nächsten auf der gleichen Welle zu bewegen (Nockenwelle). ● Tabellenumschaltungen, wenn die Nocken z. B. für Einlass und Auslass verschiedene Konturen haben.
Beispiele 5.8 Technologiezyklen Spindel Positionieren NC-Programm Kommentar N1100 CTABEND Ende der Tabelledefinition N1200 PRESETON(X1,0) PRESET zu Beginn N1300 Y=R6 G0 Startpos. Y Achse Achse ist Linear N1400 ID=1 EVERY $AA_IW[X]>$R3 DO PRESET nach Länge R3, PRESTON darf PRESETON(X1,0) nur mit WHEN und EVERY erfolgen neuer Beginn nach Abtrennen N1500 WAITP(Y) N1800 ID=6 EVERY $AA_IM[X]<10 DO...
Seite 150
Beispiele 5.8 Technologiezyklen Spindel Positionieren Synchronaktionen %_N_MAIN_MPF IDS=1 EVERY $A_DBB[0]==1 DO ; wenn $A_DBB[0] von PLC gesetzt, NULL_POS Grundposition einnehmen IDS=2 EVERY $A_DBB[1]==1 DO wenn $A_DBB[1] von PLC gesetzt, ZIEL_POS Spindel auf den in $A_DBW[1] hinterlegten Wert positionieren Technologiezyklus NULL_POS %_N_NULL_POS_SPF PROC NULL_POS SPOS=0...
Beispiele 5.9 Synchronaktionen im Bereich WZW/BAZ Synchronaktionen im Bereich WZW/BAZ Einführung Das folgende Bild zeigt den schematischen Ablauf Werkzeugwechselzyklus. Bild 5-6 Schematischer Ablauf Werkzeugwechselzyklus Synchronaktionen 5-21 Funktionshandbuch, 11/2006, 6FC5397-5BP10-2AA0...
Seite 152
Beispiele 5.9 Synchronaktionen im Bereich WZW/BAZ Ablaufdiagramm Bild 5-7 Ablaufdiagramm Werkzeugwechselzyklus Synchronaktionen 5-22 Funktionshandbuch, 11/2006, 6FC5397-5BP10-2AA0...
Seite 153
Beispiele 5.9 Synchronaktionen im Bereich WZW/BAZ NC-Programm Kommentar %_N_WZW_SPF ;$PATH=/_N_SPF_DIR N10 DEF INT WZVorwahl,WZSpindel Marker auf = 1 wenn MagAchse gefahren N15 WHEN $AC_PATHN<10 DO $AC_MARKER[0]=0 $AC_MARKER[1]=0 $AC_MARKER[2]=0 N20 ID=3 WHENEVER $A_IN[9]==TRUE DO $AC_MARKER[1]=1 N25 ID=4 WHENEVER $A_IN[10]==TRUE DO $AC_MARKER[2]=1 Marker auf = 1 wenn MagAchse gefahren N30 IF $P_SEARCH GOTOF wzw_vorlauf Satzvorlauf aktiv ? ->...
Seite 154
Beispiele 5.9 Synchronaktionen im Bereich WZW/BAZ NC-Programm Kommentar N180 WHENEVER $AC_MARKER[1]==0 DO $AC_OVR=0 N185 WHENEVER $AA_STAT[C2]<>4 DO $AC_OVR=0 N190 WHENEVER $AA_DTEB[C2]>0 DO $AC_OVR=0 N195 G53 G64 X=Magazin1ZP1X Y=Magazin1ZP1Y F60000 N200 G53 G64 X=Magazin1WPX Y=Magazin1WPY F60000 N205 M20 Werkzeug lösen N210 G53 G64 Z=Magazin1ZGeloest F40000 N215 G53 G64 X=Magazin1VPX Y=Magazin1VPY F60000 M=QU(150) M=QU(121) D0 M17 ;***Werkzeug holen***...
Anhang Publikationsspezifische Information A.1.1 Korrekturblatt - Faxvorlage Sollten Sie beim Lesen dieser Unterlage auf Druckfehler gestoßen sein, bitten wir Sie, uns diese mit diesem Vordruck mitzuteilen. Ebenso dankbar sind wir für Anregungen und Verbesserungsvorschläge. Synchronaktionen Funktionshandbuch, 11/2006, 6FC5397-5BP10-2AA0...
Seite 160
Anhang A.1 Publikationsspezifische Information Synchronaktionen Funktionshandbuch, 11/2006, 6FC5397-5BP10-2AA0...