Handbuch TC3 Robotics mxAutomation TwinCAT 3 Version: 1.4 Datum: 17.11.2016 Bestell-Nr.: TF5120 Inhaltsverzeichnis Inhaltsverzeichnis 1 Hinweise zur Dokumentation ................................................................................................................... 6 2 Sicherheitshinweise .................................................................................................................................. 7 3 Einleitung ................................................................................................................................................... 9 3.1 Zielgruppe......................................................................................................................................... 9 3.2 Dokumentation des Industrieroboters............................................................................................... 9 3.3 Verwendete Begriffe ......................................................................................................................... 9 4 Produktbeschreibung ............................................................................................................................. 10 4.1 Übersicht......................................................................................................................................... 10 4.1.1 Komponenten...................................................................................................................... 10 4.1.2 Kommunikation ................................................................................................................... 10 4.1.3 WorkVisual.......................................................................................................................... 10 4.2 Bestimmungsgemäße Verwendung................................................................................................ 10 4.2.1 Fehlanwendung .................................................................................................................. 10 5 Sicherheit ................................................................................................................................................. 11 6 Installation................................................................................................................................................ 12 6.1 Systemvoraussetzungen ................................................................................................................ 12 6.1.1 Hardware ............................................................................................................................ 12 6.1.2 Software.............................................................................................................................. 12 7 Programmierung...................................................................................................................................... 13 7.1 Übersicht Funktionsbausteine ........................................................................................................ 13 7.2 Häufig verwendete Ein-/Ausgangsignale in den Funktionsbausteinen........................................... 17 7.2.1 Eingangssignale.................................................................................................................. 17 7.2.2 Ausgangssignale................................................................................................................. 17 7.2.3 Signalverlauf beim Ausführen von ExecuteCmd................................................................. 18 7.3 Häufig verwendete Ein-/Ausgangsignale in den MC-Funktionsbausteinen .................................... 19 7.3.1 Eingangssignale.................................................................................................................. 19 7.3.2 Ausgangssignale................................................................................................................. 19 7.3.3 Signalverlauf beim Ausführen von Execute ........................................................................ 20 7.4 Strukturen für die Bewegungsprogrammierung (STRUCT) ............................................................ 21 7.4.1 APO .................................................................................................................................... 21 7.4.2 PTP_APO (INT) .................................................................................................................. 21 7.4.3 CP_APO (INT) .................................................................................................................... 22 7.4.4 COORDSYS ....................................................................................................................... 22 7.4.5 E6AXIS ............................................................................................................................... 22 7.4.6 E6POS ................................................................................................................................ 23 7.4.7 FRAME ............................................................................................................................... 23 7.5 Integer-Variablen ............................................................................................................................ 24 7.5.1 BufferMode ......................................................................................................................... 24 7.5.2 QueueMode ........................................................................................................................ 24 7.5.3 CircType.............................................................................................................................. 24 7.5.4 OriType ............................................................................................................................... 25 7.5.5 Status.................................................................................................................................. 25 7.6 Daten eines kartesischen Arbeitsraums ......................................................................................... 25 7.6.1 Ursprung und Orientierung ................................................................................................. 26 7.6.2 Abmessungen ..................................................................................................................... 26 7.7 Daten eines achsspezifischen Arbeitsraums .................................................................................. 26 7.7.1 Roboterachsen.................................................................................................................... 26 7.7.2 Zusatzachsen...................................................................................................................... 27 7.8 Programmiertipps für TC3 mxAutomation ...................................................................................... 27 7.8.1 Instanziierung...................................................................................................................... 27 7.8.2 ExecuteCmd ....................................................................................................................... 27 TC3 Robotics mxAutomation Version: 1.4 3 Inhaltsverzeichnis 7.8.3 7.8.4 7.9 Programm-Override ............................................................................................................ 28 Überschleifen ...................................................................................................................... 28 Administrative Funktionen .............................................................................................................. 28 7.9.1 SPS-spezifische Kommunikation in SPS-unabhängige Struktur einlesen .......................... 28 7.9.2 SPS-unabhängige Struktur in SPS-spezifische Kommunikation schreiben........................ 29 7.9.3 mxA-Schnittstelle initialisieren ............................................................................................ 30 7.9.4 Programm-Override (POV) einstellen ................................................................................. 31 7.9.5 Automatik Extern-Signale der Robotersteuerung ansteuern und lesen.............................. 32 7.9.6 Aktuelle Roboterposition lesen ........................................................................................... 34 7.9.7 Aktuelle Achsposition lesen ................................................................................................ 34 7.9.8 Aktuelle Bahngeschwindigkeit lesen................................................................................... 35 7.9.9 Aktuelle Achsgeschwindigkeit lesen ................................................................................... 36 7.9.10 Aktuelle Roboterbeschleunigung lesen............................................................................... 37 7.9.11 Digitalen Eingang lesen ...................................................................................................... 38 7.9.12 Digitalen Eingang 1 bis 8 lesen........................................................................................... 38 7.9.13 Mehrere digitale Eingänge lesen ........................................................................................ 39 7.9.14 Digitalen Ausgang lesen ..................................................................................................... 40 7.9.15 Digitalen Ausgang schreiben .............................................................................................. 41 7.9.16 Digitalen Ausgang 1 bis 8 schreiben................................................................................... 42 7.9.17 Analogen Eingang lesen ..................................................................................................... 42 7.9.18 Analogen Ausgang lesen .................................................................................................... 43 7.9.19 Analogen Ausgang schreiben ............................................................................................. 43 7.9.20 Warteanweisung (Digitalen Eingang lesen) ........................................................................ 45 7.9.21 Werkzeug, Basis und Interpolationsmodus auswählen ...................................................... 45 7.9.22 TOOL-Daten lesen.............................................................................................................. 46 7.9.23 TOOL-Daten schreiben....................................................................................................... 47 7.9.24 BASE-Daten lesen .............................................................................................................. 47 7.9.25 BASE-Daten schreiben ....................................................................................................... 48 7.9.26 Lastdaten lesen................................................................................................................... 49 7.9.27 Lastdaten schreiben............................................................................................................ 50 7.9.28 Software-Endschalter der Roboterachsen lesen ................................................................ 51 7.9.29 Software-Endschalter der Zusatzachsen lesen .................................................................. 52 7.9.30 Software-Endschalter der Roboterachsen schreiben ......................................................... 52 7.9.31 Software-Endschalter der Zusatzachsen schreiben ........................................................... 53 7.9.32 Interrupt deklarieren............................................................................................................ 54 7.9.33 Interrupt aktivieren .............................................................................................................. 56 7.9.34 Interrupt deaktivieren .......................................................................................................... 57 7.9.35 Status eines Interrupts lesen .............................................................................................. 57 7.9.36 Bahnbezogene Schaltaktion aktivieren (TRIGGER WHEN DISTANCE)............................ 59 7.9.37 Bahnbezogene Schaltaktion aktivieren (TRIGGER WHEN PATH) .................................... 60 7.9.38 Programm abbrechen ......................................................................................................... 62 7.9.39 Roboter stoppen ................................................................................................................. 63 7.9.40 Programm fortsetzen .......................................................................................................... 64 7.9.41 Funktionsbausteine und Signale automatisch starten ........................................................ 64 7.10 Funktionen zum Ansteuern von Verfahrbewegungen..................................................................... 66 7.10.1 Relative Zielposition manuell anfahren ............................................................................... 66 7.10.2 Relative Zielposition im TOOL-Koordinatensystem manuell anfahren ............................... 68 7.10.3 Zielposition manuell anfahren ............................................................................................. 70 7.11 Funktionen zum Ansteuern von Verfahrbewegungen (Konform zu PLC OPEN)............................ 72 7.11.1 Kartesische Position mit LIN-Bewegung anfahren.............................................................. 72 7.11.2 Kartesische Position mit LIN_REL-Bewegung anfahren..................................................... 73 7.11.3 Kartesische Position mit PTP-Bewegung anfahren ............................................................ 75 7.11.4 Kartesische Position mit PTP_REL-Bewegung anfahren ................................................... 76 7.11.5 Achsspezifische Position mit PTP-Bewegung anfahren ..................................................... 79 7.11.6 Kartesische Position mit CIRC-Bewegung anfahren .......................................................... 80 7.11.7 Kartesische Position mit CIRC_REL-Bewegung anfahren ................................................. 82 7.12 Diagnose-Funktionen...................................................................................................................... 84 7.12.1 Aktuellen Status der mxA-Schnittstelle lesen ..................................................................... 84 7.12.2 Fehlermeldungen der mxA-Schnittstelle lesen ................................................................... 84 7.12.3 Fehlermeldungen der mxA-Schnittstelle quittieren ............................................................. 85 7.12.4 Fehlermeldungen der Robotersteuerung lesen .................................................................. 86 4 Version: 1.4 TC3 Robotics mxAutomation Inhaltsverzeichnis 7.12.5 Diagnosesignale lesen........................................................................................................ 87 7.12.6 Fehlerzustände lesen und quittieren................................................................................... 90 7.13 Sonderfunktionen............................................................................................................................ 92 7.13.1 Systemvariablen lesen........................................................................................................ 92 7.13.2 Systemvariablen schreiben................................................................................................. 93 7.13.3 Bremsentest aufrufen.......................................................................................................... 95 7.13.4 Justage-Referenzierung aufrufen ....................................................................................... 96 7.13.5 Signale der Sicherheitssteuerung lesen ............................................................................. 98 7.13.6 Zustand der TouchUp-Statustasten lesen .......................................................................... 99 7.13.7 Punkte teachen ................................................................................................................. 100 7.13.8 Einstellungen für den Vorlauf ändern................................................................................ 100 7.13.9 Werte aus KRC_SetAdvance auslesen ............................................................................ 101 7.13.10Kartesische Roboterposition aus Achswinkeln berechnen ............................................... 103 7.13.11Achswinkel aus kartesischer Roboterposition berechnen................................................. 103 7.13.12Conveyor initialisieren....................................................................................................... 105 7.13.13Conveyor aktivieren .......................................................................................................... 106 7.13.14Bauteil auf Conveyor verfolgen......................................................................................... 106 7.13.15Bauteil von Conveyor aufnehmen..................................................................................... 108 7.13.16Interrupts für Überwachung aktivieren .............................................................................. 109 7.13.17Interrupts für Überwachung deaktivieren .......................................................................... 111 7.13.18Bewegung entlang eines Vektors aktivieren ..................................................................... 111 7.13.19KRC_VectorMoveOn deaktivieren .................................................................................... 113 7.13.20Kartesische Arbeitsräume konfigurieren ........................................................................... 114 7.13.21Konfiguration der kartesischen Arbeitsräume lesen ......................................................... 115 7.13.22Achsspezifische Arbeitsräume konfigurieren .................................................................... 115 7.13.23Konfiguration der achsspezifischen Arbeitsräume lesen .................................................. 116 7.13.24Status der Arbeitsräume lesen.......................................................................................... 118 8 Meldungen.............................................................................................................................................. 120 8.1 Fehlermeldungen der mxA-Schnittstelle im Roboter-Interpreter .................................................. 120 8.2 Fehlermeldungen der mxA-Schnittstelle im Submit-Interpreter .................................................... 124 8.3 Fehler im Funktionsbaustein......................................................................................................... 128 8.4 ProConOS-Fehler ......................................................................................................................... 132 TC3 Robotics mxAutomation Version: 1.4 5 Hinweise zur Dokumentation 1 Hinweise zur Dokumentation Diese Beschreibung wendet sich ausschließlich an ausgebildetes Fachpersonal der Steuerungs- und Automatisierungstechnik, das mit den geltenden nationalen Normen vertraut ist. Zur Installation und Inbetriebnahme der Komponenten ist die Beachtung der Dokumentation und der nachfolgenden Hinweise und Erklärungen unbedingt notwendig. Das Fachpersonal ist verpflichtet, für jede Installation und Inbetriebnahme die zu dem betreffenden Zeitpunkt veröffentliche Dokumentation zu verwenden. Das Fachpersonal hat sicherzustellen, dass die Anwendung bzw. der Einsatz der beschriebenen Produkte alle Sicherheitsanforderungen, einschließlich sämtlicher anwendbaren Gesetze, Vorschriften, Bestimmungen und Normen erfüllt. Disclaimer Diese Dokumentation wurde sorgfältig erstellt. Die beschriebenen Produkte werden jedoch ständig weiter entwickelt. Wir behalten uns das Recht vor, die Dokumentation jederzeit und ohne Ankündigung zu überarbeiten und zu ändern. Aus den Angaben, Abbildungen und Beschreibungen in dieser Dokumentation können keine Ansprüche auf Änderung bereits gelieferter Produkte geltend gemacht werden. Marken Beckhoff®, TwinCAT®, EtherCAT®, Safety over EtherCAT®, TwinSAFE®, XFC®und XTS® sind eingetragene und lizenzierte Marken der Beckhoff Automation GmbH. Die Verwendung anderer in dieser Dokumentation enthaltenen Marken oder Kennzeichen durch Dritte kann zu einer Verletzung von Rechten der Inhaber der entsprechenden Bezeichnungen führen. Patente Die EtherCAT Technologie ist patentrechtlich geschützt, insbesondere durch folgende Anmeldungen und Patente: EP1590927, EP1789857, DE102004044764, DE102007017835 mit den entsprechenden Anmeldungen und Eintragungen in verschiedenen anderen Ländern. Die TwinCAT Technologie ist patentrechtlich geschützt, insbesondere durch folgende Anmeldungen und Patente: EP0851348, US6167425 mit den entsprechenden Anmeldungen und Eintragungen in verschiedenen anderen Ländern. EtherCAT® ist eine eingetragene Marke und patentierte Technologie lizensiert durch die Beckhoff Automation GmbH, Deutschland Copyright © Beckhoff Automation GmbH & Co. KG, Deutschland. Weitergabe sowie Vervielfältigung dieses Dokuments, Verwertung und Mitteilung seines Inhalts sind verboten, soweit nicht ausdrücklich gestattet. Zuwiderhandlungen verpflichten zu Schadenersatz. Alle Rechte für den Fall der Patent-, Gebrauchsmusteroder Geschmacksmustereintragung vorbehalten. 6 Version: 1.4 TC3 Robotics mxAutomation Sicherheitshinweise 2 Sicherheitshinweise Sicherheitsbestimmungen Beachten Sie die folgenden Sicherheitshinweise und Erklärungen! Produktspezifische Sicherheitshinweise finden Sie auf den folgenden Seiten oder in den Bereichen Montage, Verdrahtung, Inbetriebnahme usw. Haftungsausschluss Die gesamten Komponenten werden je nach Anwendungsbestimmungen in bestimmten Hard- und SoftwareKonfigurationen ausgeliefert. Änderungen der Hard- oder Software-Konfiguration, die über die dokumentierten Möglichkeiten hinausgehen, sind unzulässig und bewirken den Haftungsausschluss der Beckhoff Automation GmbH & Co. KG. Qualifikation des Personals Diese Beschreibung wendet sich ausschließlich an ausgebildetes Fachpersonal der Steuerungs-, Automatisierungs- und Antriebstechnik, das mit den geltenden Normen vertraut ist. Erklärung der Symbole In der vorliegenden Dokumentation werden die folgenden Symbole mit einem nebenstehenden Sicherheitshinweis oder Hinweistext verwendet. Die Sicherheitshinweise sind aufmerksam zu lesen und unbedingt zu befolgen! Akute Verletzungsgefahr! Wenn der Sicherheitshinweis neben diesem Symbol nicht beachtet wird, besteht unmittelbare Gefahr für Leben und Gesundheit von Personen! GEFAHR Verletzungsgefahr! Wenn der Sicherheitshinweis neben diesem Symbol nicht beachtet wird, besteht Gefahr für Leben und Gesundheit von Personen! WARNUNG Schädigung von Personen! Wenn der Sicherheitshinweis neben diesem Symbol nicht beachtet wird, können Personen geschädigt werden! VORSICHT Schädigung von Umwelt oder Geräten Wenn der Hinweis neben diesem Symbol nicht beachtet wird, können Umwelt oder Geräte geschädigt werden. Achtung Tipp oder Fingerzeig Dieses Symbol kennzeichnet Informationen, die zum besseren Verständnis beitragen. Hinweis TC3 Robotics mxAutomation Version: 1.4 7 Sicherheitshinweise Sicherheits-Hinweis GEFAHR 8 Machen Sie sich auch beim Lesen anderer Dokumentationen mit den darin verwendeten Sicherheits-Zeichen und mit der Bedeutung dieser Sicherheits-Zeichen vertraut. Beachten Sie Sicherheits-Zeichen und Sicherheits-Hinweise auch innerhalb anderer Dokumentationen sorgfältig. Version: 1.4 TC3 Robotics mxAutomation Einleitung 3 Einleitung 3.1 Zielgruppe Diese Dokumentation richtet sich an Benutzer mit folgenden Kenntnissen: • Systemkenntnisse der Robotersteuerung • Fortgeschrittene SPS-Programmierkenntnisse • Fortgeschrittene Kenntnisse über Feldbus-Anbindungen Für den optimalen Einsatz von KUKA Robotern empfehlen wir unseren Kunden eine Schulung im KUKA College. Informationen zum Schulungsprogramm sind unter www.kuka.com oder direkt bei den Niederlassungen zu finden. Hinweis 3.2 Dokumentation des Industrieroboters Ist der KUKA Dokumentation zu entnehmen. 3.3 Verwendete Begriffe Begriff Achsgruppe Beschreibung Eine Achsgruppe enthält je nach Maschinendatenkonfiguration folgende Achsen: • Roboterachsen A1 … A6 FIFO KR C KRL KUKA smartHMI KUKA smartPAD mxA-Schnittstelle EtherCAT Roboter-Interpreter SAK-Fahrt SPS (PLC) TwinCAT 3 Submit-Interpreter WorkVisual • Zusatzachsen E1 … E6 (synchron oder asynchron) Verfahren, nach dem ein Datenspeicher abgearbeitet wird • First In First Out: Elemente, die zuerst gespeichert wurden, werden zuerst wieder aus dem Speicher entnommen. KUKA Robotersteuerung (KUKA Robot Controller) KUKA Roboter Programmiersprache (KUKA Robot Language) Bedienoberfläche der KUKA Robotersteuerung (KUKA smart HumanMachine Interface) Bedien- und Programmierhandgerät für den KUKA Industrieroboter Technologiepaket KUKA.PLC mxAutomation auf der Robotersteuerung EtherCAT ist ein Feldbus, der auf Ethernet basiert. Der Roboter-Interpreter ist ein synchron arbeitender Prozess, in dem das aktuelle Roboterprogramm abgearbeitet wird. Der Roboter wird auf die Koordinaten des Bewegungssatzes verfahren, an der sich der Satzzeiger befindet. Auf diese Weise wird die Roboterstellung mit den Koordinaten des aktuellen Punkts in Übereinstimmung gebracht. Speicherprogrammierbare Steuerung (Programmable Logic Controller) Run-Time und Entwicklungsumgebung für Beckhoff-Steuerungen Der Submit-Interpreter ist ein zyklisch arbeitendes Logikprogramm, das parallel zum Bewegungsprogramm auf der Robotersteuerung läuft. Engineeringumgebung für KR C4-gesteuerte Roboterzellen TC3 Robotics mxAutomation Version: 1.4 9 Produktbeschreibung 4 Produktbeschreibung 4.1 Übersicht Die TwinCAT Bibliothek enthält Funktionsbausteine zur Programmierung von Automatisierungsaufgaben mit TwinCAT 3. 4.1.1 Komponenten Folgende Software-Komponenten gehören zur TwinCAT Bibliothek: • Funktionsbausteine für TwinCAT 3 4.1.2 Kommunikation Für den Datenaustausch zwischen SPS und Robotersteuerung ist die Klemme EL6695-1001 von KUKA vorgesehen. 4.1.3 WorkVisual Zur Konfiguration der Feldbusse und zur Verschaltung der Feldbussignale wird folgende Software benötigt: • WorkVisual 4.0 4.2 Bestimmungsgemäße Verwendung Der Online-Teil von KUKA.PLC mxAutomation darf ausschließlich auf einer KR C4-Robotersteuerung mit folgender Software eingesetzt werden: • KUKA System Software 8.3 • KUKA.PLC ProConOS 4.1 • KUKA.EtherCAT Bridge • KUKA.ConveyorTech 6.0 • KUKA.VectorMove 1.0 Der Offline-Teil von KUKA.PLC mxAutomation ist für die Verwendung mit TwinCAT 3.1.4020.14 und höher bestimmt. Eine andere oder darüber hinausgehende Verwendung gilt als Fehlanwendung und ist unzulässig. Für hieraus resultierende Schäden haftet der Hersteller nicht. Das Risiko trägt allein der Betreiber. Zur bestimmungsgemäßen Verwendung gehört auch die Beachtung der Inbetriebnahme- und Konfigurationsanweisung in dieser Dokumentation. 4.2.1 Fehlanwendung Alle von der bestimmungsgemäßen Verwendung abweichenden Anwendungen gelten als Fehlanwendung und sind unzulässig. Dazu zählen z. B.: • Fehlkonfiguration (abweichend von dieser Dokumentation). Die Folge kann sein, dass der Roboter andere Aktionen ausführt, als vom Programmierer der SPS geplant. • Verwendung in einer anderen Programmierumgebung als TwinCAT 3.1.4020.14 oder höher. 10 Version: 1.4 TC3 Robotics mxAutomation Sicherheit 5 Sicherheit Diese Dokumentation enthält Sicherheitshinweise, die sich spezifisch auf die hier beschriebene Software beziehen. GEFAHR Machen Sie sich auch beim Lesen anderer Dokumentationen mit den darin verwendeten Sicherheits-Zeichen und mit der Bedeutung dieser Sicherheits-Zeichen vertraut. Beachten Sie Sicherheits-Zeichen und Sicherheits-Hinweise auch innerhalb anderer Dokumentationen sorgfältig. Die grundlegenden Sicherheitsinformationen zum Industrieroboter sind im Kapitel "Sicherheit" der Bedienund Programmieranleitung für Systemintegratoren oder der Bedien- und Programmieranleitung für Endanwender zu finden. Das Kapitel "Sicherheit" in der Bedien- und Programmieranleitung der KUKA System Software (KSS) muss beachtet werden. Tod von Personen, schwere Verletzungen oder erheblicher Sachschaden können sonst die Folge sein. GEFAHR TC3 Robotics mxAutomation Version: 1.4 11 Installation 6 Installation 6.1 Systemvoraussetzungen 6.1.1 Hardware Robotersteuerung: • KR C4 • Oder KR C4 compact Externe SPS: • Beckhoff TwinCAT 3 Steuerung 6.1.2 Software Robotersteuerung: • KUKA System Software 8.3 Folgende KRL-Ressourcen müssen frei sein: KRL-Ressource E/As Nummer 2 049 … 4 080 • KUKA.PLC ProConOS 4-1 4.1 Option mit ConveyorTech: • KUKA.ConveyorTech 6.0 Option mit VectorMove: • KUKA.VectorMove 1.0 Standard-Laptop/-PC: • WorkVisual 4.0 Industrie-PC/Embedded-PC: • TwinCAT 3.1.4020.14 oder höher 12 Version: 1.4 TC3 Robotics mxAutomation Programmierung 7 Programmierung 7.1 Übersicht Funktionsbausteine Administrative Funktionen KRC_ReadAxisGroup >>> "SPS-spezifische Kommunikation in SPS-unabhängige Struktur einlesen". [} 28] KRC_WriteAxisGroup >>> "SPS-unabhängige Struktur in SPSspezifische Kommunikation schreiben". [} 29] KRC_Initialize >>> "mxA-Schnittstelle initialisieren". [} 30] KRC_SetOverride >>> "Programm-Override (POV) einstellen". [} 31] KRC_AutomaticExternal >>> "Automatik Extern-Signale der Robotersteuerung ansteuern und lesen". [} 32] KRC_ReadActualPosition >>> "Aktuelle Roboterposition lesen". [} 34] KRC_ReadActualAxisPosition >>> "Aktuelle Achsposition lesen". [} 34] KRC_ReadActualVelocity >>> "Aktuelle Bahngeschwindigkeit lesen". [} 35] KRC_ReadActualAxisVelocity >>> "Aktuelle Achsgeschwindigkeit lesen". [} 36] KRC_ReadActualAcceleration >>> "Aktuelle Roboterbeschleunigung lesen". [} 37] KRC_ReadDigitalInput >>> "Digitalen Eingang lesen". [} 38] KRC_ReadDigitalInput1To8 >>> "Digitalen Eingang 1 bis 8 lesen". [} 38] KRC_ReadDigitalInputArray >>> "Mehrere digitale Eingänge lesen". [} 39] KRC_ReadDigitalOutput >>> "Digitalen Ausgang lesen". [} 40] KRC_WriteDigitalOutput >>> "Digitalen Ausgang schreiben". [} 41] KRC_WriteDigitalOutput1To8 >>> "Digitalen Ausgang 1 bis 8 schreiben". [} 42] KRC_ReadAnalogInput >>> "Analogen Eingang lesen". [} 42] KRC_ReadAnalogOutput >>> "Analogen Ausgang lesen". [} 43] KRC_WriteAnalogOutput >>> "Analogen Ausgang schreiben". [} 43] KRC_SetCoordSys >>> "Werkzeug, Basis und Interpolationsmodus auswählen". [} 45] KRC_ReadToolData >>> "TOOL-Daten lesen". [} 46] KRC_WriteToolData >>> "TOOL-Daten schreiben". [} 47] KRC_ReadBaseData >>> "BASE-Daten lesen". [} 47] TC3 Robotics mxAutomation Version: 1.4 13 Programmierung Administrative Funktionen KRC_WriteBaseData >>> "BASE-Daten schreiben". [} 48] KRC_ReadLoadData >>> "Lastdaten lesen". [} 49] KRC_WriteLoadData >>> "Lastdaten schreiben". [} 50] KRC_ReadSoftEnd >>> "Software-Endschalter der Roboterachsen lesen". [} 51] KRC_ReadSoftEndExt >>> "Software-Endschalter der Zusatzachsen lesen". [} 52] KRC_WriteSoftEnd >>> "Software-Endschalter der Roboterachsen schreiben". [} 52] KRC_WriteSoftEndExt >>> "Software-Endschalter der Zusatzachsen schreiben". [} 53] KRC_AutoStart >>> "Funktionsbausteine und Signale automatisch starten". [} 64] Bewegungsprogrammierung KRC_JogLinearRelative >>> "Relative Zielposition manuell anfahren". [} 66] KRC_JogToolRelative >>> "Relative Zielposition im TOOLKoordinatensystem manuell anfahren". [} 68] KRC_Jog >>> "Zielposition manuell anfahren". [} 70] Bewegungsprogrammierung (Konform zu PLC OPEN) MC_MoveLinearAbsolute >>> "Kartesische Position mit LINBewegung anfahren". [} 72] MC_MoveLinearRelative >>> "Kartesische Position mit LIN_RELBewegung anfahren". [} 73] MC_MoveDirectAbsolute >>> "Kartesische Position mit PTPBewegung anfahren". [} 75] MC_MoveDirectRelative >>> "Kartesische Position mit PTP_RELBewegung anfahren". [} 76] MC_MoveAxisAbsolute >>> "Achsspezifische Position mit PTPBewegung anfahren". [} 79] MC_MoveCircularAbsolute >>> "Kartesische Position mit CIRCBewegung anfahren". [} 80] MC_MoveCircularRelative >>> "Kartesische Position mit CIRC_RELBewegung anfahren". [} 82] Programmablaufkontrolle KRC_Abort >>> "Programm abbrechen". [} 62] KRC_Interrupt >>> "Roboter stoppen". [} 63] KRC_Continue >>> "Programm fortsetzen". [} 64] 14 Version: 1.4 TC3 Robotics mxAutomation Programmierung Programmablaufkontrolle KRC_WaitForInput >>> "Warteanweisung (Digitalen Eingang lesen)". [} 45] Interrupt-Programmierung KRC_DeclareInterrupt >>> "Interrupt deklarieren". [} 54] KRC_ActivateInterrupt >>> "Interrupt aktivieren". [} 56] KRC_DeactivateInterrupt >>> "Interrupt deaktivieren". [} 57] KRC_ReadInterruptState >>> "Status eines Interrupts lesen". [} 57] Bahnbezogene Schaltaktionen (=Trigger) KRC_SetDistanceTrigger >>> "Bahnbezogene Schaltaktion aktivieren (TRIGGER WHEN DISTANCE)". [} 59] KRC_SetPathTrigger >>> "Bahnbezogene Schaltaktion aktivieren (TRIGGER WHEN PATH)". [} 60] Diagnose-Funktionen KRC_ReadMXAStatus >>> "Aktuellen Status der mxASchnittstelle lesen". [} 84] KRC_ReadMXAError >>> "Fehlermeldungen der mxASchnittstelle lesen". [} 84] KRC_ReadKRCError >>> "Fehlermeldungen der Robotersteuerung lesen". [} 86] KRC_MessageReset >>> "Fehlermeldungen der mxASchnittstelle quittieren". [} 85] KRC_Diag >>> "Diagnosesignale lesen". [} 87] KRC_Error >>> "Fehlerzustände lesen und quittieren". [} 90] Sonderfunktionen (Allgemein) KRC_ReadSysVar >>> "Systemvariablen lesen". [} 92] KRC_WriteSysVar >>> "Systemvariablen schreiben". [} 93] KRC_BrakeTest >>> "Bremsentest aufrufen". [} 95] KRC_MasRef >>> "Justage-Referenzierung aufrufen". [} 96] KRC_ReadSafeOPStatus >>> "Signale der Sicherheitssteuerung lesen". [} 98] KRC_ReadTouchUPState >>> "Zustand der TouchUp-Statustasten lesen". [} 99] KRC_TouchUP >>> "Punkte teachen". [} 100] TC3 Robotics mxAutomation Version: 1.4 15 Programmierung Sonderfunktionen (Allgemein) KRC_SetAdvance >>> "Einstellungen für den Vorlauf ändern". [} 100] KRC_GetAdvance >>> "Werte aus KRC_SetAdvance auslesen". [} 101] KRC_Forward >>> "Kartesische Roboterposition aus Achswinkeln berechnen". [} 103] KRC_Inverse >>> "Achswinkel aus kartesischer Roboterposition berechnen". [} 103] Sonderfunktionen (Conveyor) KRC_ConvIniOff >>> "Conveyor initialisieren". [} 105] KRC_ConvOn >>> "Conveyor aktivieren". [} 106] KRC_ConvFollow >>> "Bauteil auf Conveyor verfolgen". [} 106] KRC_ConvSkip >>> "Bauteil von Conveyor aufnehmen". [} 108] KRC_ActivateConvInterrupt >>> "Interrupts für Überwachung aktivieren". [} 109] KRC_DeactivateConvInterrupt >>> "Interrupts für Überwachung deaktivieren". [} 111] Um diese Funktionsbausteine verwenden zu können, muss das Technologiepaket KUKA.ConveyorTech auf der Robotersteuerung installiert sein. Hinweis Sonderfunktionen (VectorMove) KRC_VectorMoveOn >>> "Bewegung entlang eines Vektors aktivieren". [} 111] KRC_VectorMoveOff >>> "KRC_VectorMoveOn deaktivieren". [} 113] Um diese Funktionsbausteine verwenden zu können, muss das Technologiepaket KUKA.VectorMove auf der Robotersteuerung installiert sein. Hinweis Sonderfunktionen (Workspaces) KRC_WriteWorkspace >>> "Kartesische Arbeitsräume konfigurieren". [} 114] KRC_ReadWorkspace 16 >>> "Konfiguration der kartesischen Arbeitsräume lesen". [} 115] Version: 1.4 TC3 Robotics mxAutomation Programmierung Sonderfunktionen (Workspaces) KRC_WriteAxWorkspace >>> "Achsspezifische Arbeitsräume konfigurieren". [} 115] KRC_ReadAxWorkspace >>> "Konfiguration der achsspezifischen Arbeitsräume lesen". [} 116] KRC_ReadWorkstates >>> "Status der Arbeitsräume lesen". [} 118] 7.2 Häufig verwendete Ein-/Ausgangsignale in den Funktionsbausteinen 7.2.1 Eingangssignale AxisGroupIdx Über diesen Signaleingang wird die Nummer der Achsgruppe gesetzt, die von einem Funktionsbaustein angesprochen wird. Es können 5 Achsgruppen (Roboter und Zusatzachsen) über die SPS gesteuert werden. ExecuteCmd Wenn dieser Signaleingang gesetzt wird, überträgt mxAutomation den zugehörigen Funktionsbaustein an den Roboter. Der Funktionsbaustein wird vom Roboter in einem Anweisungspuffer gespeichert, vorausgesetzt im Puffer ist noch Platz frei. Wird der ExecuteCmd-Eingang zurückgesetzt, löscht mxAutomation den Funktionsbaustein wieder aus dem Puffer, es sei denn mit der Ausführung der Anweisung wurde bereits begonnen. 7.2.2 Ausgangssignale Busy Dieser Signalausgang zeigt an, dass der zugehörige Funktionsbaustein aktuell in den Anweisungspuffer des Roboters übertragen wird oder bereits übertragen wurde. Er wird zurückgesetzt, wenn der ExecuteCmdEingang zurückgesetzt wird. Active Dieser Signalausgang zeigt an, dass der zugehörige Funktionsbaustein aktuell auf dem Roboter ausgeführt wird. Er wird zurückgesetzt, wenn der ExecuteCmd-Eingang zurückgesetzt wird. Mit dem Active-Ausgang ist Überschleifen nicht möglich, da die nächste Bewegungsanweisung erst gesendet wird, wenn die vorherige ausgeführt wird. Überschleifen ist nur möglich, wenn der Busy-Ausgang des vorherigen Funktionsbausteins mit dem ExecuteCmd-Eingang des folgenden Bausteins verbunden wird. Done Dieser Signalausgang zeigt an, dass der zugehörige Funktionsbaustein erfolgreich vom Roboter ausgeführt wurde. Er wird zurückgesetzt, wenn der ExecuteCmd-Eingang zurückgesetzt wird. Error Dieser Signalausgang zeigt an, dass bei der Ausführung des zugehörigen Funktionsbausteins auf dem Roboter ein Fehler aufgetreten ist. In diesem Fall enthält der Signalausgang ErrorID eine Fehlernummer. Er wird zurückgesetzt, wenn der ExecuteCmd-Eingang zurückgesetzt wird. TC3 Robotics mxAutomation Version: 1.4 17 Programmierung ErrorID Dieser Signalausgang enthält eine Fehlernummer. Die zur Fehlernummer gehörenden Fehler und Fehlerursachen sind hier beschrieben: >>> "Meldungen". [} 120] Aborted Dieser Signalausgang wird entweder gesetzt, wenn der Funktionsbaustein KRC_Abort ausgeführt wird, oder wenn eine Anweisung im Modus ABORTING ausgeführt wird. Er wird zurückgesetzt, wenn der ExecuteCmdEingang zurückgesetzt wird. 7.2.3 Signalverlauf beim Ausführen von ExecuteCmd Beispiel Der Signalverlauf wird für folgenden Fall dargestellt: • Eine Anweisung wurde über ExecuteCmd übertragen und erfolgreich ausgeführt. Signalverlauf – ExecuteCmd erfolgreich Pos. 1 2 3 4 5 18 Beschreibung Der Funktionsbaustein wird an den Roboter übertragen (= Aufforderung, Anweisung auszuführen). Die Anweisung wird übertragen. Die Anweisung wird aktuell ausgeführt. Die Anweisung wurde erfolgreich beendet. Weder ist ein Fehler aufgetreten noch wurde die Anweisung abgebrochen, z. B. durch KRC_Abort. Bei einem Fehler würde statt dem Done-Signal das Error-Signal und bei einem Abbruch statt dem Done-Signal das Aborted-Signal gesetzt. Wenn der ExecuteCmd-Eingang zurückgesetzt wird, werden auch die Ausgänge zurückgesetzt. Version: 1.4 TC3 Robotics mxAutomation Programmierung Variationen • ExecuteCmd wird zurückgesetzt, bevor Done gesetzt wird. In diesem Fall wird die Anweisung zwar ausgeführt, jedoch das Done-Signal nicht gesetzt. D. h., es wird nicht zurückgemeldet, dass die Anweisung ausgeführt wurde. • ExecuteCmd wird zurückgesetzt, bevor Error oder Aborted gesetzt wird. In diesem Fall wird die Anweisung abgebrochen, jedoch das Error- oder das Aborted-Signal nicht gesetzt. D. h., es wird nicht zurückgemeldet, dass die Anweisung abgebrochen wurde. • ExecuteCmd wird zurückgesetzt, bevor Active gesetzt wird. In diesem Fall wird der Funktionsbaustein aus dem Anweisungspuffer des Roboters gelöscht. • ExecuteCmd wird zurückgesetzt, bevor Busy gesetzt wird. In diesem Fall wird der Funktionsbaustein nicht an den Roboter übertragen und die Anweisung folglich nicht ausgeführt. 7.3 Häufig verwendete Ein-/Ausgangsignale in den MCFunktionsbausteinen Die MC-Funktionsbausteine unterscheiden sich von den KRC-Funktionsbausteinen darin, dass sie der Norm PLC OPEN entsprechen oder näher kommen. Insbesondere das Verhalten des Signalausgangs Busy ist bei den MC-Funktionsbausteinen unterschiedlich. Für die Verkettung von Funktionsbausteinen muss hier der Signalausgang ComDone verwendet werden. 7.3.1 Eingangssignale AxisGroupIdx Über diesen Signaleingang wird die Nummer des Roboters gesetzt, der von einem Funktionsbaustein angesprochen wird. Execute Wenn dieser Signaleingang gesetzt wird, überträgt mxAutomation den zugehörigen Funktionsbaustein an den Roboter. Der Funktionsbaustein wird vom Roboter in einem Anweisungspuffer gespeichert, vorausgesetzt im Puffer ist noch Platz frei. Wird der Execute-Eingang zurückgesetzt, löscht mxAutomation den Funktionsbaustein wieder aus dem Puffer, es sei denn mit der Ausführung der Anweisung wurde bereits begonnen. 7.3.2 Ausgangssignale ComBusy Dieser Signalausgang zeigt an, dass der zugehörige Funktionsbaustein von der SPS in den Anweisungspuffer des Roboters gesendet und korrekt übertragen wurde. ComDone Dieser Signalausgang zeigt an, dass der zugehörige Funktionsbaustein von der SPS in den Anweisungspuffer des Roboters gesendet und korrekt übertragen wurde. Dieser Signalausgang ist identisch zum Signalausgang Done der KRC-Funktionsbausteine. Es wird empfohlen, diesen Signalausgang zum Überschleifen von Bewegungen zu verwenden. Busy Dieser Signalausgang zeigt an, dass mit der Ausführung des zugehörigen Funktionsbausteins begonnen wurde. Es ist jedoch möglich, dass der Funktionsbaustein noch nicht in den Anweisungspuffer des Roboters übertragen wurde. Dies unterscheidet diesen Signalausgang vom Signalausgang Busy der KRCFunktionsbausteine. TC3 Robotics mxAutomation Version: 1.4 19 Programmierung Active Dieser Signalausgang zeigt an, dass der zugehörige Funktionsbaustein aktuell auf dem Roboter ausgeführt wird. Er wird zurückgesetzt, wenn der Execute-Eingang zurückgesetzt wird. Mit dem Active-Ausgang ist Überschleifen nicht möglich, da die nächste Bewegungsanweisung erst gesendet wird, wenn die vorherige ausgeführt wird. Überschleifen ist nur möglich, wenn der ComDoneAusgang des vorherigen Funktionsbausteins mit dem Execute-Eingang des folgenden Bausteins verbunden wird. Error Dieser Signalausgang zeigt an, dass bei der Ausführung des zugehörigen Funktionsbausteins auf dem Roboter ein Fehler aufgetreten ist. In diesem Fall enthält der Signalausgang ErrorID eine Fehlernummer. Er wird zurückgesetzt, wenn der Execute-Eingang zurückgesetzt wird. ErrorID Dieser Signalausgang enthält eine Fehlernummer. Die zur Fehlernummer gehörenden Fehler und Fehlerursachen sind hier beschrieben: >>> "Meldungen". [} 120] CommandAborted Dieser Signalausgang zeigt an, dass die Ausführung einer Anweisung oder Bewegung abgebrochen wurde. 7.3.3 Signalverlauf beim Ausführen von Execute Beispiel Der Signalverlauf wird für folgenden Fall dargestellt: • Eine Anweisung wurde über Execute übertragen und erfolgreich ausgeführt. Signalverlauf – Execute erfolgreich 20 Version: 1.4 TC3 Robotics mxAutomation Programmierung Pos. 1 2 3 4 5 Beschreibung Der Funktionsbaustein wird an den Roboter übertragen (= Aufforderung, Anweisung auszuführen). Die Anweisung wurde übertragen (= befindet sich im Anweisungspuffer des Roboters). Die Ausgänge ComDone und ComBusy werden gesetzt. Die Anweisung wird aktuell ausgeführt. Die Anweisung wurde erfolgreich beendet. Weder ist ein Fehler aufgetreten noch wurde die Anweisung abgebrochen, z. B. durch KRC_Abort. Bei einem Fehler würde statt dem Done-Signal das Error-Signal und bei einem Abbruch statt dem Done-Signal das Aborted-Signal gesetzt. Wenn der Execute-Eingang zurückgesetzt wird, werden auch die Ausgänge zurückgesetzt. 7.4 Strukturen für die Bewegungsprogrammierung (STRUCT) Hier sind die Datenstrukturen beschrieben, die zur Bewegungsprogrammierung verwendet werden. 7.4.1 APO Überschleifparameter für einen KRC_Move-Bewegungsbefehl Element PTP_MODE Typ PTP_APO (INT) Beschreibung CP_MODE CP_APO (INT) CPTP INT >>> "CP_APO (INT)". [} 22] Überschleifdistanz für PTP-Bewegungen (= Distanz vor dem Zielpunkt, bei der das Überschleifen frühestens beginnt) >>> "PTP_APO (INT)". [} 21] • 1 … 100 % CDIS CORI CVEL REAL Maximaldistanz 100 %: die halbe Entfernung zwischen Startpunkt und Zielpunkt, bezogen auf die Kontur der PTPBewegung ohne Überschleifen Distanzparameter (Einheit: mm) REAL Das Überschleifen beginnt frühestens, wenn die Entfernung zum Zielpunkt den hier angegebenen Wert unterschreitet. Orientierungsparameter (Einheit: °) INT Das Überschleifen beginnt frühestens, wenn der dominierende Orientierungswinkel (Drehen oder Schwenken der Längsachse des Werkzeugs) die hier angegebene Winkeldistanz zum Zielpunkt unterschreitet. Geschwindigkeitsparameter • 1 … 100 % Der Überschleifparameter gibt an, bei wieviel Prozent der programmierten Geschwindigkeit das Überschleifen in der Abbremsphase zum Zielpunkt hin frühestens beginnt. 7.4.2 PTP_APO (INT) Überschleifen bei PTP-Bewegungen TC3 Robotics mxAutomation Version: 1.4 21 Programmierung Wert 0 1 2 3 4 7.4.3 Name – C_PTP Beschreibung Ohne Überschleifen (Default) Bewirkt, dass der Zielpunkt überschliffen wird. C_PTP, C_DIS C_PTP, C_ORI C_PTP, C_VEL Beim PTP-PTP-Überschleifen genügt die Angabe C_PTP. Beim PTP-CP-Überschleifen, d. h. wenn nach dem überschliffenen PTP-Satz ein LIN- oder CIRC-Satz folgt, muss ein weiterer Überschleifparameter angegeben werden. PTP-CP-Überschleifen mit Distanzparameter PTP-CP-Überschleifen mit Orientierungsparameter PTP-CP-Überschleifen mit Geschwindigkeitsparameter CP_APO (INT) Überschleifen bei CP-Bewegungen (LIN, CIRC) Wert 0 1 2 3 7.4.4 Name – C_DIS C_ORI C_VEL Beschreibung Ohne Überschleifen (Default) Überschleifen mit Distanzparameter Überschleifen mit Orientierungsparameter Überschleifen mit Geschwindigkeitsparameter COORDSYS Koordinatensystem, auf das sich die kartesischen Koordinaten der Zielposition bei einem KRC_Move- oder KRC_Jog-Bewegungsbefehl beziehen Element Tool Typ INT Beschreibung Nummer des TOOL-Koordinatensystems • -1: Koordinatensystem wird nicht verändert • 0: NULLFRAME • 1 … 16: TOOL_DATA[1 … 16] Base INT Default: -1 Nummer des BASE-Koordinatensystems • -1: Koordinatensystem wird nicht verändert • 0: NULLFRAME • 1 … 32: BASE_DATA[1 … 32] IPO_MODE INT Default: -1 Interpolationsmodus • 0: Das Werkzeug ist am Anbauflansch montiert (#BASE). • 1: Das Werkzeug ist ein feststehendes Werkzeug (#TCP). Default: 0 7.4.5 E6AXIS Winkel- oder Translationswerte der Achsen einer Achsgruppe für einen KRC_MoveAxis-Bewegungsbefehl Element A1 A2 A3 22 Typ REAL REAL REAL Beschreibung Position der Roboterachse A1 (Einheit: mm oder °) Position der Roboterachse A2 (Einheit: mm oder °) Position der Roboterachse A3 (Einheit: mm oder °) Version: 1.4 TC3 Robotics mxAutomation Programmierung Element A4 A5 A6 E1 E2 E3 E4 E5 E6 7.4.6 Typ REAL REAL REAL REAL REAL REAL REAL REAL REAL Beschreibung Position der Roboterachse A4 (Einheit: mm oder °) Position der Roboterachse A5 (Einheit: mm oder °) Position der Roboterachse A6 (Einheit: mm oder °) Position der Zusatzachse E1 (optional), (Einheit: mm oder °) Position der Zusatzachse E2 (optional), (Einheit: mm oder °) Position der Zusatzachse E3 (optional), (Einheit: mm oder °) Position der Zusatzachse E4 (optional), (Einheit: mm oder °) Position der Zusatzachse E5 (optional), (Einheit: mm oder °) Position der Zusatzachse E6 (optional), (Einheit: mm oder °) E6POS Kartesische Koordinaten der Zielposition für einen KRC_Move- oder KRC_Jog-Bewegungsbefehl Element X Y Z A Typ REAL REAL REAL REAL Beschreibung Verschiebung in X-Richtung (Einheit: mm) Verschiebung in Y-Richtung (Einheit: mm) Verschiebung in Z-Richtung (Einheit: mm) Rotation um die Z-Achse B REAL • -180° … +180° Rotation um die Y-Achse C REAL • -180° … +180° Rotation um die X-Achse INT INT • -180° … +180° Status Turn REAL REAL REAL REAL REAL REAL Hinweis: Weitere Informationen zu Status und Turn sind in der Bedienund Programmieranleitung für Systemintegratoren zu finden. Position der Zusatzachse E1 (optional), (Einheit: mm oder °) Position der Zusatzachse E2 (optional), (Einheit: mm oder °) Position der Zusatzachse E3 (optional), (Einheit: mm oder °) Position der Zusatzachse E4 (optional), (Einheit: mm oder °) Position der Zusatzachse E5 (optional), (Einheit: mm oder °) Position der Zusatzachse E6 (optional), (Einheit: mm oder °) S T E1 E2 E3 E4 E5 E6 7.4.7 Die Werte von Position (X, Y, Z) und Orientierung (A, B, C) des TCP reichen nicht aus, um die Position eines Roboters eindeutig festzulegen, da bei gleichem TCP dennoch mehrere Achsstellungen möglich sind. Status und Turn dienen dazu, aus mehreren möglichen Achsstellungen eine eindeutige Stellung festzulegen. FRAME Raumkoordinaten und Orientierung für das TOOL- oder BASE-Koordinatensystem Element X Typ REAL TC3 Robotics mxAutomation Beschreibung Verschiebung in X-Richtung (Einheit: mm) Version: 1.4 23 Programmierung Element Y Z A Typ REAL REAL REAL Beschreibung Verschiebung in Y-Richtung (Einheit: mm) Verschiebung in Z-Richtung (Einheit: mm) Orientierung der Z-Achse B REAL • -180° … +180° Orientierung der Y-Achse C REAL • -180° … +180° Orientierung der X-Achse • -180° … +180° 7.5 Integer-Variablen Hier sind einige der Integer-Variablen, die in den Funktionsbausteinen verwendet werden, vorab beschrieben. 7.5.1 BufferMode Modus, in dem eine Anweisung auf der Robotersteuerung ausgeführt wird Wert 0 Name DIRECT 1 ABORTING 2 BUFFERED 7.5.2 Beschreibung Anweisung wird direkt vom Submit-Interpreter (SubmitProgramm) ausgeführt. Hinweis: Dieser Modus steht bei einigen Funktionsbausteinen nicht zur Verfügung. Anweisung wird sofort vom Roboter-Interpreter (Hauptprogramm) ausgeführt. Zuvor werden alle aktiven Bewegungen und gepufferten Anweisungen abgebrochen und der Roboter wird vollständig abgebremst. Anweisung wird gepuffert. Gepufferte Anweisungen werden vom Roboter-Interpreter (Hauptprogramm) nach dem FIFOPrinzip abgearbeitet. QueueMode Modus, in dem eine Anweisung auf der Robotersteuerung ausgeführt wird Wert 0 Name DIRECT 1 ABORTING 2 BUFFERED 7.5.3 Beschreibung Anweisung wird direkt vom Submit-Interpreter (SubmitProgramm) ausgeführt. Hinweis: Dieser Modus steht bei einigen Funktionsbausteinen nicht zur Verfügung. Anweisung wird sofort vom Roboter-Interpreter (Hauptprogramm) ausgeführt. Zuvor werden alle aktiven Bewegungen und gepufferten Anweisungen abgebrochen und der Roboter wird vollständig abgebremst. Anweisung wird gepuffert. Gepufferte Anweisungen werden vom Roboter-Interpreter (Hauptprogramm) nach dem FIFOPrinzip abgearbeitet. CircType Orientierungsführung für die Kreisbewegung 24 Version: 1.4 TC3 Robotics mxAutomation Programmierung Wert 0 Name BASE 1 PATH 7.5.4 Beschreibung Basisbezogene Orientierungsführung während einer Kreisbewegung Bahnbezogene Orientierungsführung während einer Kreisbewegung OriType Orientierungsführung für den TCP Wert 0 Name VAR 1 CONSTANT 2 JOINT Beschreibung Die Orientierung des TCP ändert sich während der Bewegung kontinuierlich. Die Orientierung des TCP bleibt während der Bewegung konstant. Die Orientierung des TCP ändert sich während der Bewegung kontinuierlich, jedoch nicht ganz gleichmäßig. Dies geschieht durch lineare Überführung (achsspezifisches Verfahren) der Handachswinkel. Hinweis: Dieser Orientierungstyp ist nicht geeignet, wenn ein bestimmter Verlauf der Orientierung exakt gehalten werden muss. 7.5.5 Status Aktueller Status der mxA-Schnittstelle (Funktionsbaustein KRC_ReadMXAStatus) Wert 0 Name Invalid Beschreibung Es können keine Funktionsbausteine verarbeitet werden. Häufige Ursachen: • Submit-Interpreter gestoppt oder abgewählt • E/A-Fehler wegen fehlerhafter Buskonfiguration 1 Error 2 ProgramStopped 3 StandBy 4 Executing 5 Aborting 7.6 • Robotersteuerung nicht gestartet Eine mxA-Fehlermeldung ist aktiv. Die Fehlermeldung muss mit dem Funktionsbaustein KRC_MessageReset quittiert werden. Roboter-Interpreter ist nicht aktiv (Hauptprogramm wurde gestoppt oder abgewählt). Roboter-Interpreter ist aktiv und wartet auf Anweisungen, z. B. Warten auf einen Eingang. Roboter-Interpreter ist aktiv (Hauptprogramm wird abgearbeitet). Roboter wurde angehalten und alle Anweisungen abgebrochen. Daten eines kartesischen Arbeitsraums Hier sind die Daten eines kartesischen Arbeitsraums, die in einigen Funktionsbausteinen verwendet werden, vorab beschrieben. TC3 Robotics mxAutomation Version: 1.4 25 Programmierung 7.6.1 Ursprung und Orientierung Mit den folgenden Elementen werden der Ursprung und die Orientierung eines kartesischen Arbeitraums angegeben. Diese beziehen sich auf das WORLD-Koordinatensystem. Element X Y Z A B C 7.6.2 Datentyp REAL REAL REAL REAL REAL REAL Einheit mm mm mm ° ° ° Minimum -180 -180 -180 Maximum 180 180 180 Abmessungen Mit den folgenden Elementen werden die Abmessungen eines kartesischen Arbeitsraums angegeben. Element X1 X2 Y1 Y2 Z1 Z2 7.7 Datentyp REAL REAL REAL REAL REAL REAL Einheit mm mm mm mm mm mm Daten eines achsspezifischen Arbeitsraums Hier sind die Daten eines achsspezifischen Arbeitsraums, die in einigen Funktionsbausteinen verwendet werden, vorab beschrieben. 7.7.1 Element A1_N A2_N A3_N A4_N A5_N A6_N A1_P A2_P A3_P A4_P A5_P A6_P 26 Roboterachsen Datentyp REAL REAL REAL REAL REAL REAL REAL REAL REAL REAL REAL REAL Einheit mm/° mm/° mm/° mm/° mm/° mm/° mm/° mm/° mm/° mm/° mm/° mm/° Beschreibung Untergrenze für Achswinkel Obergrenze für Achswinkel Version: 1.4 TC3 Robotics mxAutomation Programmierung 7.7.2 Element E1_N E2_N E3_N E4_N E5_N E6_N E1_P E2_P E3_P E4_P E5_P E6_P Zusatzachsen Datentyp REAL REAL REAL REAL REAL REAL REAL REAL REAL REAL REAL REAL Einheit mm/° mm/° mm/° mm/° mm/° mm/° mm/° mm/° mm/° mm/° mm/° mm/° Beschreibung Untergrenze für Achswinkel Obergrenze für Achswinkel 7.8 Programmiertipps für TC3 mxAutomation 7.8.1 Instanziierung Folgende Funktionsbausteine dürfen pro Roboter nur einfach instanziiert werden. Bei einer mehrfachen Instanziierung werden die Signale des zuletzt aufgerufenen Funktionsbausteins ausgegeben. • KRC_ReadAxisGroup • KRC_Intialize • KRC_SetOverride • KRC_AutomaticExternal • KRC_AutoStart • KRC_Diag • KRC_WriteAxisGroup Alle weiteren Funktionsbausteine, die im mxAutomation-Roboterprogramm verwendet werden, können als Multiinstanz-Aufruf angelegt werden. Der Vorteil dabei ist, dass nicht für jeden Funktionsbaustein ein eigener Datenbaustein benötigt wird. 7.8.2 ExecuteCmd • Einen ExecuteCmd-Eingang möglichst immer nur für einen Funktionsbaustein desselben Roboters gleichzeitig setzen. • Einen ExecuteCmd-Eingang nach einer Aktivierung erst wieder zurücksetzen, wenn der Funktionsbaustein die Ausführung der Anweisung durch das Done-Signal bestätigt oder durch das Error- oder Aborted-Signal anzeigt, dass die Anweisung nicht ausgeführt wurde. Wird der ExecuteCmd-Eingang vorher zurückgesetzt, wird nicht zurückgemeldet, ob die Anweisung ausgeführt wurde. • Indem der Busy-Ausgang eines Funktionsbausteins mit dem ExecuteCmd-Eingang des folgenden Bausteins verbunden wird, kann erreicht werden, dass eine Sequenz aufeinanderfolgender Funktionen in den Anweisungspuffer übertragen und ausgeführt wird. • ExecuteCmd sollte nicht als Startsignal für eine Sequenz von Anweisungen verwendet werden. Dies kann dazu führen, dass das Übertragen der darauffolgenden Anweisungen wertvolle Zeit in Anspruch nimmt. TC3 Robotics mxAutomation Version: 1.4 27 Programmierung Stattdessen sollte die Ausführung einer Anweisungssequenz mit KRC_WaitForInput ausgelöst werden. Durch die Verkettung der Busy- und ExecuteCmd-Signale ist gewährleistet, dass die Ausführung der vorgesehenen Arbeitsschritte ohne Verzögerung gestartet werden kann, sobald das entsprechende Eingangssignal eintrifft. 7.8.3 Programm-Override • Wenn das mxAutomation-Roboterprogramm durch einen RESET am Funktionsbaustein KRC_AutomaticExternal gestartet wird, den Programm-Override auf einen Wert größer Null setzen. Nur dann wird der Roboter-Interpreter in einer Schleife durchlaufen. • Während das mxAutomation-Roboterprogramm abläuft, kann der Programm-Override ohne Probleme auf Null gesetzt werden. 7.8.4 Überschleifen Überschleifen bedeutet: Der programmierte Punkt wird nicht genau angefahren. Überschleifen ist eine Option, die bei der Bewegungsprogrammierung ausgewählt werden kann. • Überschleifen ist nicht möglich, wenn nach der Bewegungsanweisung eine Anweisung folgt, die einen Vorlaufstopp auslöst. • Überschleifen ist nur möglich, wenn nach der Bewegungsanweisung eine Bewegungsanweisung folgt, die im Modus BUFFERED übertragen wird. 7.9 Administrative Funktionen 7.9.1 SPS-spezifische Kommunikation in SPS-unabhängige Struktur einlesen Beschreibung Mit dem Funktionsbaustein KRC_ReadAxisGroup wird die TwinCAT-spezifische Schnittstelle zur Robotersteuerung in die SPS-unabhängige Struktur einer Achsgruppe übersetzt. Der Funktionsbaustein KRC_ReadAxisGroup muss immer am Anfang des Programms aufgerufen werden. Ein Zugriff auf die Achsgruppen-Struktur ist nur zwischen KRC_ReadAxisGroup und KRC_WriteAxisGroup zulässig. Hinweis Der Funktionsbaustein darf pro Achsgruppe nur einfach instanziiert werden. Bei einer mehrfachen Instanziierung werden die Signale des zuletzt aufgerufenen Funktionsbausteins ausgegeben. Hinweis Funktionsbaustein KRC_ReadAxisGroup 28 Version: 1.4 TC3 Robotics mxAutomation Programmierung Eingänge Parameter KRC4_Input AxisGroupIdx Typ POINTER TO BYTE INT Beschreibung Strukturabbild des Eingangsbereiches der Robotersteuerung Index der Achsgruppe • 1…5 Ausgänge Parameter ErrorID Error 7.9.2 Typ DINT BOOL Beschreibung Fehlernummer TRUE = Fehler im Funktionsbaustein SPS-unabhängige Struktur in SPS-spezifische Kommunikation schreiben Beschreibung Mit dem Funktionsbaustein KRC_WriteAxisGroup wird die SPS-unabhängige Struktur einer Achsgruppe in die TwinCAT-spezifische Schnittstelle zur Robotersteuerung übersetzt. Der Funktionsbaustein KRC_WriteAxisGroup muss immer am Ende des Programms aufgerufen werden. Ein Zugriff auf die Achsgruppen-Struktur ist nur zwischen KRC_ReadAxisGroup und KRC_WriteAxisGroup zulässig. Hinweis Der Funktionsbaustein darf pro Achsgruppe nur einfach instanziiert werden. Bei einer mehrfachen Instanziierung werden die Signale des zuletzt aufgerufenen Funktionsbausteins ausgegeben. Hinweis Funktionsbaustein KRC_WriteAxisGroup Eingänge Parameter AxisGroupIdx Typ INT KRC4_Output • 1…5 POINTER TO Strukturabbild des Ausgangsbereiches BYTE der Robotersteuerung TC3 Robotics mxAutomation Beschreibung Index der Achsgruppe Version: 1.4 29 Programmierung Ausgänge Parameter ErrorID Error 7.9.3 Typ DINT BOOL Beschreibung Fehlernummer TRUE = Fehler im Funktionsbaustein mxA-Schnittstelle initialisieren Beschreibung Mit dem Funktionsbaustein KRC_Initialize wird die mxA-Schnittstelle auf der Robotersteuerung initialisiert. Anweisungen können erst nach der Initialisierung der Schnittstelle übertragen werden. Bei der Initialisierung werden die Versionsstände von SPS-Bibliothek und mxA-Schnittstelle verglichen und auf Kompatibilität geprüft. 1. und 2. Stelle der Version müssen übereinstimmen. Der Funktionsbaustein darf pro Achsgruppe nur einfach instanziiert werden. Bei einer mehrfachen Instanziierung werden die Signale des zuletzt aufgerufenen Funktionsbausteins ausgegeben. Hinweis Funktionsbaustein KRC_Initialize Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe • 1…5 Ausgänge Parameter ErrorID KRC_Serial KRC_Major KRC_Minor KRC_Revision PLC_Major PLC_Minor PLC_Revision Done 30 Typ DINT DINT DINT DINT DINT DINT DINT DINT BOOL Beschreibung Fehlernummer Seriennummer der Robotersteuerung Versionskennung der mxA-Schnittstelle (1. Stelle) Versionskennung der mxA-Schnittstelle (2. Stelle) Versionskennung der mxA-Schnittstelle (3. Stelle) Versionskennung der SPS-Bibliothek (1. Stelle) Versionskennung der SPS-Bibliothek (2. Stelle) Versionskennung der SPS-Bibliothek (3. Stelle) TRUE = Initialisierung erfolgreich abgeschlossen Version: 1.4 TC3 Robotics mxAutomation Programmierung Parameter Error 7.9.4 Typ BOOL Beschreibung TRUE = Fehler im Funktionsbaustein Programm-Override (POV) einstellen Beschreibung Mit dem Funktionsbaustein KRC_SetOverride wird der Programm-Override eingestellt. Der Programm-Override ist die Geschwindigkeit des Roboters beim Programmablauf. Der ProgrammOverride wird in Prozent angegeben und bezieht sich auf die programmierte Geschwindigkeit. Der eingestellte Override wird mit jedem SPS-Zyklus an den Roboter übertragen. Bei einer Override-Änderung wird diese vom Roboter erkannt und übernommen. Der Override wird nur in der Betriebsart Automatik Extern übernommen, damit in den Test-Betriebsarten T1 und T2 der Override über das smartPAD einstellt werden kann, z. B. zum Teachen. Der Funktionsbaustein darf pro Achsgruppe nur einfach instanziiert werden. Bei einer mehrfachen Instanziierung werden die Signale des zuletzt aufgerufenen Funktionsbausteins ausgegeben. Hinweis Funktionsbaustein KRC_SetOverride Eingänge Parameter AxisGroupIdx Override Typ INT Beschreibung Index der Achsgruppe INT • 1…5 Programm-Override einstellen. • 0 … 100 % Ausgänge Parameter Typ ActualOverride INT Beschreibung Aktuell eingestellter Override ErrorID Valid Error • 0 … 100 % Fehlernummer TRUE = Daten sind gültig TRUE = Fehler im Funktionsbaustein DINT BOOL BOOL TC3 Robotics mxAutomation Version: 1.4 31 Programmierung 7.9.5 Automatik Extern-Signale der Robotersteuerung ansteuern und lesen Beschreibung Mit dem Funktionsbaustein KRC_AutomaticExternal wird die Schnittstelle Automatik Extern aktiviert und die Signale der Schnittstelle werden gelesen. Der Funktionsbaustein darf pro Achsgruppe nur einfach instanziiert werden. Bei einer mehrfachen Instanziierung werden die Signale des zuletzt aufgerufenen Funktionsbausteins ausgegeben. Hinweis Funktionsbaustein KRC_AutomaticExternal Eingänge Parameter AxisGroupIdx MOVE_ENABLE Typ INT BOOL Signalname (KRL) — Beschreibung Index der Achsgruppe $MOVE_ENABLE • 1…5 TRUE = Fahrfreigabe für den Roboter CONF_MESS DRIVES_ON DRIVES_OFF EXT_START BOOL BOOL BOOL BOOL $CONF_MESS $DRIVES_ON $DRIVES_OFF $EXT_START RESET BOOL — 32 Hinweis: Diese Systemvariable wird von der Robotersteuerung in allen Betriebsarten überwacht. TRUE = Quittieren von Fehlermeldungen TRUE = Einschalten der Roboterantriebe TRUE = Ausschalten der Roboterantriebe TRUE = Starten oder Fortsetzen des Roboterprogramms Wählt das mxAutomationRoboterprogramm bei einer steigenden Flanke des Signals an und startet es. Zuvor werden alle gepufferten Anweisungen abgebrochen. Version: 1.4 TC3 Robotics mxAutomation Programmierung Parameter ENABLE_T1 ENABLE_T2 ENABLE_AUT ENABLE_EXT Typ BOOL BOOL BOOL BOOL Signalname (KRL) — Beschreibung TRUE = Freigabe der Betriebsart T1 — Das Signal $MOVE_ENABLE wird bei fehlender Freigabe unterdrückt. Der Roboter kann nicht verfahren werden. TRUE = Freigabe der Betriebsart T2 Das Signal $MOVE_ENABLE wird bei fehlender Freigabe unterdrückt. Der Roboter kann nicht verfahren werden. TRUE = Freigabe der Betriebsart Automatik — Das Signal $MOVE_ENABLE wird bei fehlender Freigabe unterdrückt. Der Roboter kann nicht verfahren werden. TRUE = Freigabe der Betriebsart Automatik Extern — Das Signal $MOVE_ENABLE wird bei fehlender Freigabe unterdrückt. Der Roboter kann nicht verfahren werden. Ausgänge Parameter Valid RC_RDY1 Typ BOOL BOOL Signalname (KRL) — $RC_RDY1 ALARM_STOP USER_SAFE PERI_RDY ROB_CAL IO_ACTCONF BOOL BOOL BOOL BOOL BOOL $ALARM_STOP $USER_SAF $PERI_RDY $ROB_CAL $IO_ACTCONF STOPMESS BOOL $STOPMESS INT_E_STOP BOOL Int. NotAus PRO_ACT APPL_RUN PRO_MOVE BOOL BOOL BOOL $PRO_ACT APPL_RUN $PRO_MOVE ON_PATH NEAR_POSRET BOOL BOOL $ON_PATH $NEAR_POSRET ROB_STOPPED T1 T2 AUT EXT BOOL BOOL BOOL BOOL BOOL $ROB_STOPPED $T1 $T2 $AUT $EXT TC3 Robotics mxAutomation Beschreibung TRUE = Daten gültig TRUE = Robotersteuerung bereit für Programmstart FALSE = Roboterstopp durch NOT-HALT FALSE = Bedienerschutz verletzt TRUE = Roboterantriebe eingeschaltet TRUE = Roboterachsen justiert TRUE = Schnittstelle Automatik Extern aktiv TRUE = Sicherheitskreis unterbrochen (Roboterfehler) TRUE = Externer NOT-HALT FALSE = NOT-HALT-Gerät am smartPAD gedrückt TRUE = Prozess auf Roboterebene aktiv TRUE = Roboterprogramm läuft TRUE = Synchrone Roboterbewegung aktiv TRUE = Roboter auf programmierter Bahn TRUE = Roboter nahe der zuletzt gespeicherten Position auf der programmierten Bahn (nach Verlassen der Bahn) TRUE = Roboter steht TRUE = Betriebsart T1 angewählt TRUE = Betriebsart T2 angewählt TRUE = Betriebsart Automatik angewählt TRUE = Betriebsart Automatik Extern angewählt Version: 1.4 33 Programmierung 7.9.6 Aktuelle Roboterposition lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadActualPosition wird die aktuelle kartesische Istposition des Roboters $POS_ACT gelesen. Diese wird zyklisch aktualisiert. Funktionsbaustein KRC_ReadActualPosition Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe • 1…5 Ausgänge Parameter Valid Position Typ BOOL E6POS X, Y, Z A, B, C Status Turn Tool REAL REAL INT INT INT Base INT IPOMode INT 7.9.7 Beschreibung TRUE = Daten sind gültig Aktuelle kartesische Istposition $POS_ACT Die Datenstruktur E6POS enthält alle Komponenten der kartesischen Istposition (= Position des TCP bezogen auf den Ursprung des BASE-Koordinatensystems). Aktuelle Istposition in X-, Y-, Z-Richtung Orientierung A, B, C in der aktuellen Istposition Status der aktuellen Istposition Turn der aktuellen Istposition Nummer des aktuell verwendeten TOOLKoordinatensystems $ACT_TOOL Nummer des aktuell verwendeten BASEKoordinatensystems $ACT_BASE Aktueller Interpolationsmodus im Hauptlauf $IPO_MODE_C Aktuelle Achsposition lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadActualAxisPosition wird die aktuelle achsspezifische Roboterposition $AXIS_ACT gelesen. Diese wird zyklisch aktualisiert. 34 Version: 1.4 TC3 Robotics mxAutomation Programmierung Funktionsbaustein KRC_ReadActualAxisPosition Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe • 1…5 Ausgänge Parameter Valid AxisPosition A1 … A6 E1 … E6 7.9.8 Typ BOOL E6AXIS REAL REAL Beschreibung TRUE = Daten sind gültig Aktuelle achsspezifische Roboterposition $AXIS_ACT Die Datenstruktur E6AXIS enthält alle Achspositionen der Achsgruppe. Aktuelle Position der Roboterachse A1 … A6 Aktuelle Position der Zusatzachse E1 … E6 Aktuelle Bahngeschwindigkeit lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadActualVelocity wird die aktuelle Istgeschwindigkeit am TCP des Roboters $VEL_ACT gelesen. Die aktuelle Bahngeschwindigkeit kann nur bei CP-Bewegungen im Programmbetrieb gelesen werden. Hinweis Funktionsbaustein KRC_ReadActualVelocity TC3 Robotics mxAutomation Version: 1.4 35 Programmierung Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe • 1…5 Ausgänge Parameter Valid Value 7.9.9 Typ BOOL REAL Beschreibung TRUE = Daten sind gültig Aktuelle Bahngeschwindigkeit $VEL_ACT (Einheit: m/s) Aktuelle Achsgeschwindigkeit lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadActualAxisVelocity wird die aktuelle achsspezifische Geschwindigkeit des Roboters $VEL_AXIS_ACT gelesen. Funktionsbaustein KRC_ReadActualAxisVelocity Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe ExecuteCmd BOOL • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. Ausgänge Parameter ErrorID A1 … A6 Typ DINT INT Beschreibung Fehlernummer Aktuelle Drehzahl des Motors (-100 % … +100 %) von A1 … A6 im Hauptlauf, bezogen auf die maximale Drehzahl des Motors ($VEL_AXIS_MA) Hinweis: Die tatsächlich resultierende Geschwindigkeit der Roboterachse ist abhängig von der Getriebeübersetzung. 36 Version: 1.4 TC3 Robotics mxAutomation Programmierung Parameter E1 … E6 Typ INT Done Error 7.9.10 BOOL BOOL Beschreibung Aktuelle Drehzahl des Motors (-100 % … +100 %) von E1 … E6 im Hauptlauf, bezogen auf die maximale Drehzahl des Motors ($VEL_AXIS_MA) Hinweis: Die tatsächlich resultierende Geschwindigkeit der Zusatzachse ist abhängig von der Getriebeübersetzung. TRUE = Anweisung wurde ausgeführt TRUE = Fehler im Funktionsbaustein Aktuelle Roboterbeschleunigung lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadActualAcceleration wird die aktuelle kartesische Beschleunigung am TCP des Roboters $ACC_CAR_ACT gelesen. Die aktuelle kartesische Beschleunigung um die Winkel A, B, C wird nicht ausgewertet. Hinweis Funktionsbaustein KRC_ReadActualAcceleration Eingänge Parameter AxisGroupIdx ExecuteCmd Typ INT Beschreibung Index der Achsgruppe BOOL • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. Ausgänge Parameter ErrorID ACC_ABS Typ DINT REAL X, Y, Z REAL Beschreibung Fehlernummer Aktuelle kartesische Beschleunigung bezogen auf den Betrag der Gesamtbeschleunigung lX + Y +Zl (Einheit: m/s2) Aktuelle kartesische Beschleunigung in X-, Y-, Z-Richtung (Einheit: m/s2) TC3 Robotics mxAutomation Version: 1.4 37 Programmierung Parameter A, B, C Typ REAL Done Error 7.9.11 BOOL BOOL Beschreibung Aktuelle kartesische Beschleunigung um die Winkel A, B, C 0 m/s2 (wird nicht berechnet) TRUE = Anweisung wurde ausgeführt TRUE = Fehler im Funktionsbaustein Digitalen Eingang lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadDigitalInput wird ein digitaler Eingang der Robotersteuerung abgefragt und gelesen. Diese Funktion wird im Submit-Interpreter ausgeführt. Funktionsbaustein KRC_ReadDigitalInput Eingänge Parameter AxisGroupIdx Typ INT ExecuteCmd BOOL Number INT Beschreibung Index der Achsgruppe • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. Nummer des digitalen Eingangs • 1 … 2 048 Ausgänge Parameter ErrorID Done Value Error 7.9.12 Typ DINT BOOL BOOL BOOL Beschreibung Fehlernummer TRUE = Anweisung wurde ausgeführt Wert des digitalen Eingangs TRUE = Fehler im Funktionsbaustein Digitalen Eingang 1 bis 8 lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadDigitalInput1To8 werden die digitalen Eingänge 1 bis 8 der Robotersteuerung abgefragt und gelesen. Diese Funktion wird im Submit-Interpreter ausgeführt. Die Eingangswerte können permanent gelesen werden, ohne eine Blockade auszulösen. 38 Version: 1.4 TC3 Robotics mxAutomation Programmierung Funktionsbaustein KRC_ReadDigitalInput1To8 Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe • 1…5 Ausgänge Parameter Valid IN1 … IN8 Error ErrorID 7.9.13 Typ BOOL BOOL BOOL DINT Beschreibung TRUE = Daten sind gültig Ist-Wert des digitalen Eingangs $IN[1] … $IN[8] TRUE = Fehler im Funktionsbaustein Fehlernummer Mehrere digitale Eingänge lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadDigitalInputArray werden mehrere digitale Eingänge der Robotersteuerung abgefragt und gelesen. Diese Funktion wird im Submit-Interpreter ausgeführt. Funktionsbaustein KRC_ReadDigitalInputArray Eingänge Parameter AxisGroupIdx Typ INT ExecuteCmd BOOL Startnumber INT Beschreibung Index der Achsgruppe • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. Nummer des 1. digitalen Eingangs, der abgefragt wird • 1 … 2 048 TC3 Robotics mxAutomation Version: 1.4 39 Programmierung Parameter Length Typ INT Beschreibung Anzahl der Eingänge, die abgefragt werden • 1 … 2 00 Hinweis: Wenn die Anzahl der Eingänge, die gelesen werden sollen, den Bereich 1 … 2048 überschreitet, wird keine Fehlermeldung ausgegeben. Eingänge außerhalb dieses Bereichs werden nicht eingelesen. Ausgänge Parameter Done Values Error ErrorID 7.9.14 Typ BOOL BOOL[200] BOOL DINT Beschreibung TRUE = Anweisung wurde ausgeführt Werte der digitalen Eingänge TRUE = Fehler im Funktionsbaustein Fehlernummer Digitalen Ausgang lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadDigitalOutput wird ein digitaler Ausgang der Robotersteuerung abgefragt und gelesen. Diese Funktion wird im Submit-Interpreter ausgeführt. Funktionsbaustein KRC_ReadDigitalOutput Eingänge Parameter AxisGroupIdx Typ INT ExecuteCmd BOOL Number INT Beschreibung Index der Achsgruppe • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. Nummer des digitalen Ausgangs • 1 … 2 048 Ausgänge Parameter ErrorID Done Value Error 40 Typ DINT BOOL BOOL BOOL Beschreibung Fehlernummer TRUE = Anweisung wurde ausgeführt Wert des digitalen Ausgangs TRUE = Fehler im Funktionsbaustein Version: 1.4 TC3 Robotics mxAutomation Programmierung 7.9.15 Digitalen Ausgang schreiben Beschreibung Mit dem Funktionsbaustein KRC_WriteDigitalOutput wird ein digitaler Ausgang oder ein Impulsausgang auf der Robotersteuerung geschrieben. Diese Funktion wird im Submit-Interpreter ausgeführt. Funktionsbaustein KRC_WriteDigitalOutput Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe ExecuteCmd BOOL Number INT • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. Nummer des digitalen Ausgangs • 1 … 2 048 Value Pulse BOOL REAL Hinweis: Es ist darauf zu achten, dass keine Ausgänge verwendet werden, die bereits vom System belegt sind. Beispiel: $OUT[1025] ist immer TRUE. Wert des digitalen Ausgangs Länge des Impulses • 0.0 s Kein Puls aktiv • 0.1 … 3.0 s _Continue BufferMode BOOL INT Pulsraster = 0.1 s; Impulszeiten außerhalb des Wertebereichs lösen einen Programmstopp aus. TRUE = Ausgang im Vorlauf beschreiben >>> "BufferMode". [} 24] Ausgänge Parameter ErrorID Busy Typ DINT BOOL Done Aborted BOOL BOOL Error BOOL Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde ausgeführt TRUE = Anweisung wurde abgebrochen, bevor sie im Vorlauf bearbeitet wurde TRUE = Fehler im Funktionsbaustein TC3 Robotics mxAutomation Version: 1.4 41 Programmierung 7.9.16 Digitalen Ausgang 1 bis 8 schreiben Beschreibung Mit dem Funktionsbaustein KRC_WriteDigitalOutput1To8 werden die digitalen Ausgänge 1 bis 8 auf der Robotersteuerung geschrieben. Diese Funktion wird im Submit-Interpreter ausgeführt. Die Ausgangswerte können permanent geschrieben werden, ohne eine Blockade auszulösen. Funktionsbaustein KRC_WriteDigitalOutput1To8 Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe OUT1 … OUT8 BOOL • 1…5 Soll-Wert des Ausgangs $OUT[1] … $OUT[8] Ausgänge Parameter ErrorID Error 7.9.17 Typ DINT BOOL Beschreibung Fehlernummer TRUE = Fehler im Funktionsbaustein Analogen Eingang lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadAnalogInput wird ein analoger Eingang der Robotersteuerung abgefragt und gelesen. Diese Funktion wird im Submit-Interpreter ausgeführt. Funktionsbaustein KRC_ReadAnalogInput Eingänge Parameter AxisGroupIdx ExecuteCmd 42 Typ INT Beschreibung Index der Achsgruppe BOOL • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. Version: 1.4 TC3 Robotics mxAutomation Programmierung Parameter Number Typ INT Beschreibung Nummer des analogen Eingangs • 1 … 32 Ausgänge Parameter ErrorID Done Value Error 7.9.18 Typ DINT BOOL REAL BOOL Beschreibung Fehlernummer TRUE = Anweisung wurde ausgeführt Wert des analogen Eingangs TRUE = Fehler im Funktionsbaustein Analogen Ausgang lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadAnalogOutput wird ein analoger Ausgang der Robotersteuerung abgefragt und gelesen. Diese Funktion wird im Submit-Interpreter ausgeführt. Funktionsbaustein KRC_ReadAnalogOutput Eingänge Parameter AxisGroupIdx Typ INT ExecuteCmd BOOL Number INT Beschreibung Index der Achsgruppe • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. Nummer des analogen Ausgangs • 1 … 32 Ausgänge Parameter Value ErrorID Done Error 7.9.19 Typ REAL DINT BOOL BOOL Beschreibung Wert des analogen Ausgangs Fehlernummer TRUE = Anweisung wurde ausgeführt TRUE = Fehler im Funktionsbaustein Analogen Ausgang schreiben Beschreibung Mit dem Funktionsbaustein KRC_WriteAnalogOutput wird ein analoger Ausgang der Robotersteuerung abgefragt und gelesen. Diese Funktion wird im Submit-Interpreter ausgeführt. TC3 Robotics mxAutomation Version: 1.4 43 Programmierung Funktionsbaustein KRC_WriteAnalogOutput Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe ExecuteCmd BOOL Number INT Value _Continue BufferMode REAL BOOL INT • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. Nummer des analogen Ausgangs • 1 … 32 Wert des analogen Ausgangs TRUE = Ausgang im Vorlauf beschreiben >>> "BufferMode". [} 24] Ausgänge Parameter ErrorID Busy Typ DINT BOOL Done Aborted BOOL BOOL Error BOOL 44 Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde ausgeführt TRUE = Anweisung wurde abgebrochen, bevor sie im Vorlauf bearbeitet wurde TRUE = Fehler im Funktionsbaustein Version: 1.4 TC3 Robotics mxAutomation Programmierung 7.9.20 Warteanweisung (Digitalen Eingang lesen) Beschreibung Mit dem Funktionsbaustein KRC_WaitForInput wird das Programm angehalten bis ein digitaler Eingang den definierten Wert annimmt. Danach wird das Programm fortgesetzt. Funktionsbaustein KRC_WaitForInput Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe ExecuteCmd BOOL Number INT Value iContinue BufferMode BOOL BOOL INT • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. Nummer des digitalen Eingangs • 1 … 2 048 Sollwert des digitalen Eingangs TRUE = Eingang im Vorlauf abfragen >>> "BufferMode". [} 24] Ausgänge Parameter ErrorID Busy Typ DINT BOOL Active BOOL Done Aborted Error BOOL BOOL BOOL 7.9.21 Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wird aktuell ausgeführt (Roboter wartet auf Eingang) TRUE = Anweisung wurde ausgeführt TRUE = Anweisung wurde abgebrochen TRUE = Fehler im Funktionsbaustein Werkzeug, Basis und Interpolationsmodus auswählen Beschreibung Mit dem Funktionsbaustein KRC_SetCoordSys können Werkzeug, Basis und Interpolationsmodus gesetzt werden, ohne gleichzeitig eine Verfahrbewegung auszuführen. Diese Funktion wird beispielsweise benötigt, um die aktuelle Position in verschiedenen Koordinatensystemen auszulesen. TC3 Robotics mxAutomation Version: 1.4 45 Programmierung Funktionsbaustein KRC_SetCoordSys Eingänge Parameter Typ CoordinateSystem COORDSYS AxisGroupIdx INT Beschreibung >>> "COORDSYS". [} 22] Index der Achsgruppe ExecuteCmd BOOL • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. BufferMode INT >>> "BufferMode". [} 24] Ausgänge Parameter ErrorID Busy Typ DINT BOOL Done Aborted BOOL BOOL Error BOOL 7.9.22 Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde ausgeführt TRUE = Anweisung wurde abgebrochen, bevor sie im Vorlauf bearbeitet wurde TRUE = Fehler im Funktionsbaustein TOOL-Daten lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadToolData werden die TOOL-Daten des Roboters gelesen. Funktionsbaustein KRC_ReadToolData Eingänge Parameter AxisGroupIdx Typ INT ExecuteCmd BOOL ToolNo INT Beschreibung Index der Achsgruppe • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. Nummer des TOOL-Koordinatensystems • 1 … 16: TOOL_DATA[1 … 16] 46 Version: 1.4 TC3 Robotics mxAutomation Programmierung Ausgänge Parameter ToolData Typ FRAME ErrorID Done Error DINT BOOL BOOL 7.9.23 Beschreibung >>> "FRAME". [} 23] Fehlernummer TRUE = Anweisung wurde ausgeführt TRUE = Fehler im Funktionsbaustein TOOL-Daten schreiben Beschreibung Mit dem Funktionsbaustein KRC_WriteToolData werden die TOOL-Daten des Roboters geschrieben. Funktionsbaustein KRC_WriteToolData Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe ExecuteCmd BOOL • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. ToolData FRAME ToolNo INT BufferMode INT >>> "FRAME". [} 23] Nummer des TOOL-Koordinatensystems • 1 … 16: TOOL_DATA[1 … 16] >>> "BufferMode". [} 24] Ausgänge Parameter ErrorID Busy Typ DINT BOOL Done Aborted BOOL BOOL Error BOOL 7.9.24 Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde ausgeführt TRUE = Anweisung wurde abgebrochen, bevor sie im Vorlauf bearbeitet wurde TRUE = Fehler im Funktionsbaustein BASE-Daten lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadBaseData werden die BASE-Daten des Roboters gelesen. TC3 Robotics mxAutomation Version: 1.4 47 Programmierung Funktionsbaustein KRC_ReadBaseData Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe ExecuteCmd BOOL BaseNo INT • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. Nummer des BASE-Koordinatensystems • 1 … 32: BASE_DATA[1 … 32] Ausgänge Parameter BaseData Typ FRAME ErrorID Done Error DINT BOOL BOOL 7.9.25 Beschreibung >>> "FRAME". [} 23] Fehlernummer TRUE = Anweisung wurde ausgeführt TRUE = Fehler im Funktionsbaustein BASE-Daten schreiben Beschreibung Mit dem Funktionsbaustein KRC_WriteBaseData werden die BASE-Daten des Roboters geschrieben. Funktionsbaustein KRC_WriteBaseData Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe ExecuteCmd BOOL • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. BaseData FRAME BaseNo INT >>> "FRAME". [} 23] Nummer des BASE-Koordinatensystems • 1 … 32: BASE_DATA[1 … 32] BufferMode 48 INT >>> "BufferMode". [} 24] Version: 1.4 TC3 Robotics mxAutomation Programmierung Ausgänge Parameter ErrorID Busy Typ DINT BOOL Done Aborted BOOL BOOL Error BOOL 7.9.26 Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde ausgeführt TRUE = Anweisung wurde abgebrochen, bevor sie im Vorlauf bearbeitet wurde TRUE = Fehler im Funktionsbaustein Lastdaten lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadLoadData werden die Lastdaten des Roboters gelesen (Traglastdaten oder Zusatzlastdaten). Diese Funktion wird im Submit-Interpreter ausgeführt. Funktionsbaustein KRC_ReadLoadData Eingänge Parameter AxisGroupIdx Typ INT ExecuteCmd BOOL Tool INT Beschreibung Index der Achsgruppe • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. Nummer des TOOL-Koordinatensystems zum Lesen der Traglastdaten oder Nummer zum Lesen der Zusatzlastdaten • 1 … 16: TOOL_DATA[1 … 16] • -1: Zusatzlast A1 • -2: Zusatzlast A2 • -3: Zusatzlast A3 Ausgänge Parameter M X, Y, Z A, B, C Typ REAL REAL REAL Beschreibung Masse Lage des Schwerpunkts relativ zum Flansch Orientierung der Hauptträgheitsachsen relativ zum Flansch TC3 Robotics mxAutomation Version: 1.4 49 Programmierung Parameter JX, JY, JZ ErrorID Done Error 7.9.27 Typ REAL DINT BOOL BOOL Beschreibung Massenträgheitsmomente Fehlernummer TRUE = Anweisung wurde ausgeführt TRUE = Fehler im Funktionsbaustein Lastdaten schreiben Beschreibung Mit dem Funktionsbaustein KRC_WriteLoadData werden die Lastdaten des Roboters geschrieben (Traglastdaten oder Zusatzlastdaten). Funktionsbaustein KRC_WriteLoadData Eingänge Parameter AxisGroupIdx Typ INT ExecuteCmd BOOL Tool INT Beschreibung Index der Achsgruppe • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. Nummer des TOOL-Koordinatensystems zum Schreiben der Traglastdaten oder Nummer zum Schreiben der Zusatzlastdaten • 1 … 16: TOOL_DATA[1 … 16] • -1: Zusatzlast A1 • -2: Zusatzlast A2 M X, Y, Z A, B, C JX, JY, JZ BufferMode 50 REAL REAL REAL REAL INT • -3: Zusatzlast A3 Masse Lage des Schwerpunkts relativ zum Flansch Orientierung der Hauptträgheitsachsen relativ zum Flansch Massenträgheitsmomente >>> "BufferMode". [} 24] Version: 1.4 TC3 Robotics mxAutomation Programmierung Ausgänge Parameter ErrorID Busy Typ DINT BOOL Done Aborted BOOL BOOL Error BOOL 7.9.28 Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde ausgeführt TRUE = Anweisung wurde abgebrochen, bevor sie im Vorlauf bearbeitet wurde TRUE = Fehler im Funktionsbaustein Software-Endschalter der Roboterachsen lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadSoftEnd werden die Software-Endschalter der Roboterachsen gelesen. Diese Funktion wird im Submit-Interpreter ausgeführt. Funktionsbaustein KRC_ReadSoftEnd Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe ExecuteCmd BOOL • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. Ausgänge Parameter A1_Min … A6_Min A1_Max … A6_Max ErrorID Done Error Typ REAL REAL DINT BOOL BOOL TC3 Robotics mxAutomation Beschreibung Negativer Software-Endschalter der Achse A1 … A6 Positiver Software-Endschalter der Achse A1 … A6 Fehlernummer TRUE = Anweisung wurde ausgeführt TRUE = Fehler im Funktionsbaustein Version: 1.4 51 Programmierung 7.9.29 Software-Endschalter der Zusatzachsen lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadSoftEndExt werden die Software-Endschalter der Zusatzachsen gelesen. Diese Funktion wird im Submit-Interpreter ausgeführt. Funktionsbaustein KRC_ReadSoftEndExt Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe ExecuteCmd BOOL • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. Ausgänge Parameter E1_Min … E6_Min E1_Max … E6_Max ErrorID Done Error 7.9.30 Typ REAL REAL DINT BOOL BOOL Beschreibung Negativer Software-Endschalter der Achse E1 … E6 Positiver Software-Endschalter der Achse E1 … E6 Fehlernummer TRUE = Anweisung wurde ausgeführt TRUE = Fehler im Funktionsbaustein Software-Endschalter der Roboterachsen schreiben Beschreibung Mit dem Funktionsbaustein KRC_WriteSoftEnd werden die Software-Endschalter der Roboterachsen geschrieben. 52 Version: 1.4 TC3 Robotics mxAutomation Programmierung Funktionsbaustein KRC_WriteSoftEnd Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe ExecuteCmd BOOL A1_Min … A6_Min REAL • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. Negativer Software-Endschalter der Achse A1 … A6 (Einheit: mm oder °) Positiver Software-Endschalter der Achse A1 … A6 A1_Max … A6_Max REAL (Einheit: mm oder °) BufferMode INT >>> "BufferMode". [} 24] Ausgänge Parameter ErrorID Busy Typ DINT BOOL Done Aborted BOOL BOOL Error BOOL 7.9.31 Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde ausgeführt TRUE = Anweisung wurde abgebrochen, bevor sie im Vorlauf bearbeitet wurde TRUE = Fehler im Funktionsbaustein Software-Endschalter der Zusatzachsen schreiben Beschreibung Mit dem Funktionsbaustein KRC_WriteSoftEndExt werden die Software-Endschalter der Zusatzachsen geschrieben. TC3 Robotics mxAutomation Version: 1.4 53 Programmierung Funktionsbaustein KRC_WriteSoftEndExt Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe ExecuteCmd BOOL E1_Min … E6_Min REAL E1_Max … E6_Max REAL • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. Negativer Software-Endschalter der Achse E1 … E6 (Einheit: mm oder °) Positiver Software-Endschalter der Achse E1 … E6 (Einheit: mm oder °) BufferMode INT >>> "BufferMode". [} 24] Ausgänge Parameter ErrorID Busy Typ DINT BOOL Done Aborted BOOL BOOL Error BOOL 7.9.32 Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde ausgeführt TRUE = Anweisung wurde abgebrochen, bevor sie im Vorlauf bearbeitet wurde TRUE = Fehler im Funktionsbaustein Interrupt deklarieren Beschreibung Mit dem Funktionsbaustein KRC_DeclareInterrupt wird ein Interrupt auf einen digitalen Eingang deklariert. Hierfür stehen 8 vordefinierte Interrupts zur Verfügung. Syntax GLOBAL INTERRUPT DECL 90+Interrupt WHEN $IN[Input] == InputValue DO Subprogram 54 Version: 1.4 TC3 Robotics mxAutomation Programmierung Funktionsbaustein KRC_DeclareInterrupt Eingänge Parameter AxisGroupIdx Typ INT ExecuteCmd BOOL Interrupt INT Input INT Beschreibung Index der Achsgruppe • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals gepuffert. Nummer des Interrupts • 1…8 Nummer des digitalen Eingangs, auf den der Interrupt deklariert wird • 1 … 2 048 InputValue Reaction BOOL INT Hinweis: Es ist darauf zu achten, dass keine Eingänge verwendet werden, die bereits vom System belegt sind. Beispiel: $IN[1025] ist immer TRUE. TRUE = Anweisung wird bei einer steigenden Flanke des Signals ausgeführt FALSE = Anweisung wird bei einer fallenden Flanke des Signals ausgeführt Reaktion auf den Interrupt • 0: BRAKE F + HALT • 1: BRAKE + HALT • 2: BRAKE F + WAIT FOR $IN[Input]<>InputValue • 3: BRAKE + WAIT FOR $IN[Input]<>InputValue • 4: BRAKE F + WAIT FOR KRC_Continue • 5: BRAKE + WAIT FOR KRC_Continue • 6: BRAKE F + WAIT FOR $IN[Input]<>InputValue AND KRC_Continue • 7: BRAKE + WAIT FOR $IN[Input]<>InputValue AND KRC_Continue BufferMode INT >>> "BufferMode". [} 24] Typ DINT BOOL Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen Ausgänge Parameter ErrorID Busy TC3 Robotics mxAutomation Version: 1.4 55 Programmierung Parameter Done Typ BOOL Aborted BOOL Error BOOL 7.9.33 Beschreibung TRUE = Anweisung wurde im Vorlauf bearbeitet Hinweis: Die Anweisung kann nicht mehr abgebrochen werden. Ausnahme: Programm wird abgewählt oder zurückgesetzt. TRUE = Anweisung wurde abgebrochen, bevor sie im Vorlauf bearbeitet wurde TRUE = Fehler im Funktionsbaustein Interrupt aktivieren Beschreibung Mit dem Funktionsbaustein KRC_ActivateInterrupt wird ein zuvor deklarierter Interrupt aktiviert. Hierfür stehen 8 vordefinierte Interrupts zur Verfügung. Ein Interrupt kann erst dann erfasst werden, wenn der Interrupt vom Hauptlauf des Roboter-Interpreters aktiviert wurde. Über den Funktionsbaustein KRC_WaitForInput kann abgefragt und überprüft werden, ob ein Interrupt aktiv ist. Funktionsbaustein KRC_ActivateInterrupt Eingänge Parameter AxisGroupIdx Typ INT ExecuteCmd BOOL Interrupt INT Beschreibung Index der Achsgruppe • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals gepuffert. Nummer des Interrupts • 1…8 BufferMode INT >>> "BufferMode". [} 24] Parameter ErrorID Busy Typ DINT BOOL Done BOOL Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde im Vorlauf bearbeitet Ausgänge Aborted BOOL Error BOOL 56 Hinweis: Das Signal gibt keinen Aufschluss darüber, ob der Interrupt tatsächlich ausgelöst oder vom Hauptlauf aktiviert wurde. TRUE = Anweisung wurde abgebrochen, bevor sie im Vorlauf bearbeitet wurde TRUE = Fehler im Funktionsbaustein Version: 1.4 TC3 Robotics mxAutomation Programmierung 7.9.34 Interrupt deaktivieren Beschreibung Mit dem Funktionsbaustein KRC_DeactivateInterrupt wird ein zuvor deklarierter Interrupt deaktiviert. Hierfür stehen 8 vordefinierte Interrupts zur Verfügung. Syntax INTERRUPT OFF 90+Interrupt Funktionsbaustein KRC_DeactivateInterrupt Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe ExecuteCmd BOOL Interrupt INT BufferMode INT • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals gepuffert. Nummer des Interrupts • 1…8 >>> "BufferMode". [} 24] Ausgänge Parameter ErrorID Busy Typ DINT BOOL Done Aborted BOOL BOOL Error BOOL 7.9.35 Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde ausgeführt TRUE = Anweisung wurde abgebrochen, bevor sie im Vorlauf bearbeitet wurde TRUE = Fehler im Funktionsbaustein Status eines Interrupts lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadInterruptState wird der Status eines Interrupts im Vorlauf gelesen. Dieser wird zyklisch aktualisiert. Der Status des Interrupts im Vorlauf kann sich vom Status im Hauptlauf unterscheiden. TC3 Robotics mxAutomation Version: 1.4 57 Programmierung Funktionsbaustein KRC_ReadInterruptState Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe Interrupt INT • 1…5 Nummer des Interrupts • 1…8 Ausgänge Parameter ErrorID Value Typ DINT INT Beschreibung Fehlernummer Status des angegebenen Interrupts • 0: Interrupt wurde nicht deklariert. • 1: Interrupt wurde deklariert, aber nicht aktiviert. • 2: Interrupt wurde deklariert und im Vorlauf aktiviert. • 3: Interrupt wurde deklariert und noch im Vorlauf deaktiviert. • 4: Interrupt wurde ausgelöst und ist aktiv. Error Valid 58 BOOL BOOL • 5: Interrupt wurde ausgelöst und das Hauptprogramm mit KRC_Continue bereits wieder fortgesetzt. TRUE = Fehler im Funktionsbaustein TRUE = Daten sind gültig Version: 1.4 TC3 Robotics mxAutomation Programmierung 7.9.36 Bahnbezogene Schaltaktion aktivieren (TRIGGER WHEN DISTANCE) Beschreibung Mit dem Funktionsbaustein KRC_SetDistanceTrigger wird eine bahnbezogene Schaltaktion bei PTP- oder LIN-Bewegungen ausgelöst. Der Trigger löst eine definierte Anweisung aus. Die Anweisung bezieht sich auf den Start- oder auf den Zielpunkt des Bewegungssatzes, in dem der Trigger im Programm steht. Die Anweisung wird parallel zur Roboterbewegung ausgeführt. Es ist möglich, die Anweisung zeitlich zu verschieben. Sie wird dann nicht genau am Start- oder Zielpunkt ausgelöst, sondern früher oder verzögert. Wenn ein Trigger ein Unterprogramm aufruft, zählt er solange als aktiver Interrupt, solange das Unterprogramm noch nicht abgearbeitet ist. Zur gleichen Zeit dürfen maximal 16 Interrupts aktiv sein. Hinweis Weiterführende Informationen zu Triggern, zur Verschiebung des Schaltpunkts und zu den Grenzen für die Verschiebung sind in der KUKA Dokumentation zu finden. Hinweis Funktionsbaustein KRC_SetDistanceTrigger Eingänge Parameter AxisGroupIdx Typ INT ExecuteCmd BOOL Distance INT Beschreibung Index der Achsgruppe • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals gepuffert. Schaltpunkt des Triggers • 0: Schaltaktion im Startpunkt • 1: Schaltaktion im Zielpunkt TC3 Robotics mxAutomation Version: 1.4 59 Programmierung Parameter Delay Typ INT Beschreibung Zeitliche Verschiebung der Anweisung • Delay = 0 ms: Keine zeitliche Verschiebung Output INT Die Anweisung kann nicht beliebig zeitlich verschoben werden. Welche Verschiebungen möglich sind, ist abhängig davon, welcher Wert für Distance gewählt wurde. Weitere Informationen hierzu sind in der KUKA Dokumentation zu finden. Nummer des digitalen Ausgangs • 1 … 2 048 Value Pulse BOOL Hinweis: Es ist darauf zu achten, dass keine Ausgänge verwendet werden, die bereits vom System belegt sind. Beispiel: $OUT[1025] ist immer TRUE. TRUE = Ausgang einschalten REAL FALSE = Ausgang ausschalten Länge des Impulses • 0.0 s Kein Puls aktiv • 0.1 … 3.0 s Pulsraster = 0.1 s; Impulszeiten außerhalb des Wertebereichs lösen einen Programmstopp aus. BufferMode INT >>> "BufferMode". [} 24] Parameter ErrorID Busy Typ DINT BOOL Done BOOL Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde im Vorlauf bearbeitet Ausgänge Aborted BOOL Error BOOL 7.9.37 Hinweis: Die Anweisung kann nicht mehr abgebrochen werden. Ausnahme: Programm wird abgewählt oder zurückgesetzt. Das Signal gibt keinen Aufschluss darüber, ob die Schaltaktion tatsächlich ausgelöst wurde. TRUE = Anweisung wurde abgebrochen, bevor sie im Vorlauf bearbeitet wurde TRUE = Fehler im Funktionsbaustein Bahnbezogene Schaltaktion aktivieren (TRIGGER WHEN PATH) Beschreibung Mit dem Funktionsbaustein KRC_SetPathTrigger wird eine bahnbezogene Schaltaktion bei CP-Bewegungen ausgelöst. Der Trigger löst eine definierte Anweisung aus. Die Anweisung bezieht sich auf den Zielpunkt des Bewegungssatzes, in dem der Trigger im Programm steht. Die Anweisung wird parallel zur Roboterbewegung ausgeführt. Es ist möglich, die Anweisung örtlich und/oder zeitlich zu verschieben. Sie wird dann nicht genau am Zielpunkt ausgelöst, sondern vorher oder nachher. 60 Version: 1.4 TC3 Robotics mxAutomation Programmierung Path-Trigger können nur vor CP-Bewegungen aktiviert werden. Ist die nachfolgende Bewegung keine CP-Bewegung, gibt die Robotersteuerung eine Fehlermeldung aus. Hinweis Wenn ein Trigger ein Unterprogramm aufruft, zählt er solange als aktiver Interrupt, solange das Unterprogramm noch nicht abgearbeitet ist. Zur gleichen Zeit dürfen maximal 16 Interrupts aktiv sein. Hinweis Weiterführende Informationen zu Triggern, zur Verschiebung des Schaltpunkts und zu den Grenzen für die Verschiebung sind in der KUKA Dokumentation zu finden. Hinweis Funktionsbaustein KRC_SetPathTrigger Eingänge Parameter AxisGroupIdx Typ INT ExecuteCmd BOOL Path REAL Beschreibung Index der Achsgruppe • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals gepuffert. Örtliche Verschiebung der Anweisung Wenn die Anweisung örtlich verschoben werden soll, muss hier die gewünschte Entfernung zum Zielpunkt angegeben werden. Wenn der Zielpunkt überschliffen ist, dann ist Path die Entfernung zu derjenigen Position auf dem Überschleifbogen, die dem Zielpunkt am nächsten liegt. • Delay = 0.0 mm: Keine örtliche Verschiebung • Delay > 0.0 mm: Verschiebt die Anweisung in Richtung Bewegungsende • Delay < 0.0 mm: Verschiebt die Anweisung in Richtung Bewegungsanfang TC3 Robotics mxAutomation Version: 1.4 61 Programmierung Parameter Delay Typ INT Beschreibung Zeitliche Verschiebung der Anweisung • Delay = 0 ms: Keine zeitliche Verschiebung Output INT Die Anweisung kann nicht beliebig zeitlich verschoben werden. Welche Verschiebungen möglich sind, ist abhängig davon, welcher Wert für Path gewählt wurde. Weitere Informationen hierzu sind in der KUKA Dokumentation zu finden. Nummer des digitalen Ausgangs • 1 … 2 048 Value Pulse BOOL Hinweis: Es ist darauf zu achten, dass keine Ausgänge verwendet werden, die bereits vom System belegt sind. Beispiel: $OUT[1025] ist immer TRUE. TRUE = Ausgang einschalten REAL FALSE = Ausgang ausschalten Länge des Impulses • 0.0 s Kein Puls aktiv • 0.1 … 3.0 s Pulsraster = 0.1 s; Impulszeiten außerhalb des Wertebereichs lösen einen Programmstopp aus. BufferMode INT >>> "BufferMode". [} 24] Parameter ErrorID Busy Typ DINT BOOL Done BOOL Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde im Vorlauf bearbeitet Ausgänge Aborted BOOL Error BOOL 7.9.38 Hinweis: Die Anweisung kann nicht mehr abgebrochen werden. Ausnahme: Programm wird abgewählt oder zurückgesetzt. Das Signal gibt keinen Aufschluss darüber, ob die Schaltaktion tatsächlich ausgelöst wurde. TRUE = Anweisung wurde abgebrochen, bevor sie im Vorlauf bearbeitet wurde TRUE = Fehler im Funktionsbaustein Programm abbrechen Beschreibung Mit dem Funktionsbaustein KRC_Abort werden alle aktiven und gepufferten Anweisungen und Bewegungen abgebrochen. Funktionsbaustein KRC_Abort 62 Version: 1.4 TC3 Robotics mxAutomation Programmierung Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe ExecuteCmd BOOL • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. Ausgänge Parameter ErrorID Busy Typ DINT BOOL Done Error BOOL BOOL 7.9.39 Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde ausgeführt TRUE = Fehler im Funktionsbaustein Roboter stoppen Beschreibung Mit dem Funktionsbaustein KRC_Interrupt wird ein Interrupt mit einer BRAKE- oder BRAKE F-Anweisung ausgelöst. Wenn eine BRAKE-Anweisung aktiv ist, werden keine Anweisungen mehr über die mxASchnittstelle verarbeitet. Hinweis Auch der Funktionsbaustein KRC_Abort wird nicht mehr verarbeitet. KRC_Abort kann das Programm erst dann abbrechen, wenn es mit KRC_Continue fortgesetzt wurde, also die BRAKE-Anweisung nicht mehr aktiv ist. Während die BRAKE-Anweisung aktiv ist, kann das Programm nur durch einen RESET am Funktionsbaustein KRC_AutomaticExternal abgebrochen werden. Funktionsbaustein KRC_Interrupt Eingänge Parameter AxisGroupIdx Execute Fast Typ INT Beschreibung Index der Achsgruppe BOOL • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. BOOL Das Roboterprogramm ist unterbrochen, solange der Eingang Execute TRUE ist. TRUE = Roboter stoppt mit einem STOP 1 (Anweisung BRAKE F) FALSE = Roboter stoppt mit einem STOP 2 (Anweisung BRAKE) TC3 Robotics mxAutomation Version: 1.4 63 Programmierung Ausgänge Parameter ErrorID BrakeActive Error 7.9.40 Typ DINT BOOL BOOL Beschreibung Fehlernummer TRUE = Anweisung ist aktiv und Roboter wartet auf Freigabe TRUE = Fehler im Funktionsbaustein Programm fortsetzen Beschreibung Mit dem Funktionsbaustein KRC_Continue kann ein Programm, das durch einen Interrupt unterbrochen wurde, fortgesetzt werden. Funktionsbaustein KRC_Continue Eingänge Parameter AxisGroupIdx Enable Typ INT Beschreibung Index der Achsgruppe BOOL • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. Bei einem Interrupt durch BRAKE oder BRAKE F kann das Programm nur fortgesetzt werden, wenn kein Interrupt mehr aktiv und der Eingang Enable TRUE ist. Ausgänge Parameter ErrorID Error 7.9.41 Typ DINT BOOL Beschreibung Fehlernummer TRUE = Fehler im Funktionsbaustein Funktionsbausteine und Signale automatisch starten Beschreibung Mit dem Funktionsbaustein KRC_AutoStart werden die bereits vorhandenen Signale und Funktionsbausteine in einer typischen Sequenz von Anweisungen angesteuert. Die Signale zur Aktivierung der Schnittstelle Automatik Extern werden vor dem Start geprüft. Wenn eines oder mehrere Signale fehlen, werden entsprechende Fehlernummern ausgegeben. Die Antriebe werden mit einer Flanke eingeschaltet. Der Eingang DRIVES_ON am Funktionsbaustein KRC_AutomaticExternal sollte aus diesem Grund nicht permanent aktiviert sein. Hinweis 64 Version: 1.4 TC3 Robotics mxAutomation Programmierung Funktionsbaustein KRC_AutoStart Eingänge Parameter AxisGroupIdx ExecuteReset Typ INT BOOL Beschreibung Index der Achsgruppe • 1…5 Setzt das Programm zurück und bricht alle gepufferten Anweisungen ab. mxAutomation ist nun bereit für neue Anweisungen. ExecuteReset muss den Wert TRUE haben, bis der Funktionsbaustein erfolgreich vom Roboter ausgeführt wurde. Ausgänge Parameter Busy Done DispActive ResetValid Typ BOOL BOOL BOOL BOOL Error ErrorID BOOL DINT Beschreibung Die Sequenz ist aktiv, aber noch nicht beendet. Die Sequenz ist beendet. TRUE = Roboterprogramm ist aktiv TRUE = Bedingungen für einen RESET am Funktionsbaustein KRC_AutomaticExternal sind erfüllt TRUE = Fehler im Funktionsbaustein Fehlernummer TC3 Robotics mxAutomation Version: 1.4 65 Programmierung 7.10 Funktionen zum Ansteuern von Verfahrbewegungen Bewegungsanweisungen können grundsätzlich nur im Modus ABORTING oder BUFFERED ausgeführt werden. Wenn eine Bewegung überschliffen werden soll, muss die nachfolgende Bewegung im Modus BUFFERED übertragen werden. Hinweis Weitere Informationen zu den Grundlagen der Bewegungsprogrammierung - Bewegungsarten, Orientierungsführung, Überschleifen - sind in der Bedien- und Programmieranleitung der KUKA System Software zu finden. Hinweis 7.10.1 Relative Zielposition manuell anfahren Beschreibung Mit dem Funktionsbaustein KRC_JogLinearRelative kann eine kartesische Zielposition mit einer Linearbewegung angefahren werden. Die Koordinaten der Zielposition sind relativ zur aktuellen Position. Status und Turn der Zielposition werden ignoriert, d. h. die Achstellungen sind in der Zielposition nicht eindeutig festgelegt. Die Funktion wird immer im Modus ABORTING ausgeführt, d. h. alle aktiven Bewegungen und gepufferten Anweisungen werden abgebrochen, der Roboter abgebremst und dann die Linearbewegung ausgeführt. Funktionsbaustein KRC_JogLinearRelative Eingänge Parameter Position Typ E6POS Beschreibung Koordinaten der kartesischen Zielposition >>> "E6POS". [} 23] Die Datenstruktur E6POS enthält alle Komponenten der Zielposition (= Position des TCP bezogen auf den Ursprung des ausgewählten Koordinatensystems). CoordinateSystem COORDSYS AxisGroupIdx ExecuteCmd 66 INT BOOL >>> "COORDSYS". [} 22] Index der Achsgruppe • 1…5 Startet/Puffert die Bewegung mit einer steigenden Flanke des Signals. Version: 1.4 TC3 Robotics mxAutomation Programmierung Parameter Velocity Typ INT Beschreibung Geschwindigkeit • 0 … 100 % Bezieht sich auf den in den Maschinendaten angegebenen Maximalwert. Der Maximalwert ist abhängig vom Robotertyp und der eingestellten Betriebsart. Acceleration Default: 0 % (= Geschwindigkeit wird nicht verändert) Beschleunigung INT • 0 … 100 % Bezieht sich auf den in den Maschinendaten angegebenen Maximalwert. Der Maximalwert ist abhängig vom Robotertyp und der eingestellten Betriebsart. Default: 0 % (= Beschleunigung wird nicht verändert) OriType INT >>> "OriType". [} 25] Ausgänge Parameter ErrorID Busy Typ DINT BOOL Active Done Aborted BOOL BOOL BOOL Error BOOL Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Bewegung wird aktuell ausgeführt TRUE = Bewegung ist beendet TRUE = Anweisung/Bewegung wurde abgebrochen TRUE = Fehler im Funktionsbaustein TC3 Robotics mxAutomation Version: 1.4 67 Programmierung 7.10.2 Relative Zielposition im TOOL-Koordinatensystem manuell anfahren Beschreibung Mit dem Funktionsbaustein KRC_JogToolRelative kann eine kartesische Zielposition im TOOLKoordinatensystem mit einer Linearbewegung angefahren werden. Die Koordinaten der Zielposition sind relativ zur aktuellen Position. Status und Turn der Zielposition werden ignoriert, d. h. die Achstellungen sind in der Zielposition nicht eindeutig festgelegt. Die Funktion wird immer im Modus ABORTING ausgeführt, d. h. alle aktiven Bewegungen und gepufferten Anweisungen werden abgebrochen, der Roboter abgebremst und dann die Linearbewegung ausgeführt. Funktionsbaustein KRC_JogToolRelative Eingänge Parameter Position Typ E6POS Beschreibung Koordinaten der kartesischen Zielposition >>> "E6POS". [} 23] Die Datenstruktur E6POS enthält alle Komponenten der Zielposition (= Position des TCP bezogen auf den Ursprung des ausgewählten Koordinatensystems). CoordinateSystem COORDSYS AxisGroupIdx INT ExecuteCmd BOOL Velocity INT >>> "COORDSYS". [} 22] Index der Achsgruppe • 1…5 Startet/Puffert die Bewegung mit einer steigenden Flanke des Signals. Geschwindigkeit • 0 … 100 % Bezieht sich auf den in den Maschinendaten angegebenen Maximalwert. Der Maximalwert ist abhängig vom Robotertyp und der eingestellten Betriebsart. Acceleration INT Default: 0 % (= Geschwindigkeit wird nicht verändert) Beschleunigung • 0 … 100 % Bezieht sich auf den in den Maschinendaten angegebenen Maximalwert. Der Maximalwert ist abhängig vom Robotertyp und der eingestellten Betriebsart. Default: 0 % (= Beschleunigung wird nicht verändert) OriType 68 INT >>> "OriType". [} 25] Version: 1.4 TC3 Robotics mxAutomation Programmierung Ausgänge Parameter ErrorID Busy Typ DINT BOOL Active Done Aborted BOOL BOOL BOOL Error BOOL Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Bewegung wird aktuell ausgeführt TRUE = Bewegung ist beendet TRUE = Anweisung/Bewegung wurde abgebrochen TRUE = Fehler im Funktionsbaustein TC3 Robotics mxAutomation Version: 1.4 69 Programmierung 7.10.3 Zielposition manuell anfahren Beschreibung Mit dem Funktionsbaustein KRC_Jog kann eine Zielposition mit einer Linearbewegung oder einer Punkt-zuPunkt-Bewegung angefahren werden. Die Funktion wird immer im Modus ABORTING ausgeführt, d. h. alle aktiven Bewegungen und gepufferten Anweisungen werden abgebrochen, der Roboter abgebremst und dann die Bewegung ausgeführt. Funktionsbaustein KRC_Jog Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe MoveType INT • 1…5 Bewegungsart für das kartesische oder achsspezifische Verfahren • 0: Bewegungsart PTP (achsspezifisch) • 1: Bewegungsart LIN (kartesisch) • 2: Bewegungsart SPTP (achsspezifisch) • 3: Bewegungsart SLIN (kartesisch) 70 Version: 1.4 TC3 Robotics mxAutomation Programmierung Parameter Velocity Typ INT Beschreibung Geschwindigkeit • 0 … 100 % Bezieht sich auf den in den Maschinendaten angegebenen Maximalwert. Der Maximalwert ist abhängig vom Robotertyp und der eingestellten Betriebsart. Acceleration INT Default-Wert: 0 % (= Geschwindigkeit wird nicht verändert) Beschleunigung • 0 … 100 % Bezieht sich auf den in den Maschinendaten angegebenen Maximalwert. Der Maximalwert ist abhängig vom Robotertyp und der eingestellten Betriebsart. Default-Wert: 0 % (= Beschleunigung wird nicht verändert) CoordinateSystem COORDSYS Increment REAL >>> "COORDSYS". [} 22] Inkrementelles Handverfahren • > 0.0: Roboter fährt maximal die angegebene Distanz. Beim achsspezifischen Verfahren ist die maximale Distanz automatisch auf die SoftwareEndschalter begrenzt. Beim kartesischen Verfahren in A-, B- oder C-Richtung ist die maximale Distanz auf 90° begrenzt. Wenn das Eingangssignal zurückgesetzt wird, bevor der Roboter die Zielposition erreicht hat, stoppt der Roboter sofort. • ≤ 0.0: Beim kartesischen Verfahren in X-, Y- oder Z-Richtung ist die maximale Distanz auf 100000 mm begrenzt. A1_X_P A1_X_M A2_Y_P A2_Y_M A3_Z_P A3_Z_M A4_A_P A4_A_M A5_B_P A5_B_M A6_C_P A6_C_M E1_P E1_M E2_P E2_M E3_P E3_M E4_P E4_M E5_P E5_M E6_P E6_M BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL TC3 Robotics mxAutomation Bei jeder Änderung der Eingangssignale wird die Roboterbewegung neu begonnen. Bewegungsanweisung Die Bewegung wird bei einer steigenden Flanke des Signals gestartet und bei einer fallenden Flanke des Signals gestoppt. In der Bewegungsart PTP können die Roboterachsen bis auf 0,1 mm vor den Software-Endschaltern verfahren werden. Dazu werden die Werte der Software-Endschalter beim Start der SPS einmalig gelesen. Es können gleichzeitig mehrere Roboterachsen verfahren werden. Der TCP kann entlang der Achsen mehrerer Koordinatensysteme verfahren werden. Bei einer Änderung der Eingangssignale wird die Bewegung gestoppt und anschließend mit der geänderten Konfiguration fortgesetzt. Wenn die positive und negative Verfahrrichtung gleichzeitig aktiviert wird, wird eine Fehlernummer ausgegeben. Die Eingänge für die Achsen A1 … A6 sind mit den Koordinaten doppelt belegt, z. B. A1 mit X, A2 mit Y usw. Die Eingänge mit der Endung "P" (z. B. A2_Y_P) verfahren in die positive Richtung. Die Eingänge mit der Endung "M" (z. B. A3_Z_M) verfahren in die negative Richtung. Version: 1.4 71 Programmierung Ausgänge Parameter ErrorID Busy Typ DINT BOOL Active Done Aborted BOOL BOOL BOOL Error BOOL 7.11 Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Bewegung wird aktuell ausgeführt TRUE = Bewegung ist beendet TRUE = Anweisung/Bewegung wurde abgebrochen TRUE = Fehler im Funktionsbaustein Funktionen zum Ansteuern von Verfahrbewegungen (Konform zu PLC OPEN) Die nachfolgend beschriebenen MC-Funktionsbausteine unterscheiden sich von den KRCFunktionsbausteinen darin, dass sie der Norm PLC OPEN entsprechen oder näher kommen. Informationen zu den häufig verwendeten Signalen in den MC-Funktionsbausteinen siehe >>> "Häufig verwendete Ein-/Ausgangsignale in den MC-Funktionsbausteinen". [} 19] Hinweis 7.11.1 Kartesische Position mit LIN-Bewegung anfahren Beschreibung Mit dem Funktionsbaustein MC_MoveLinearAbsolute wird eine Linearbewegung zu einer kartesischen Zielposition ausgeführt. Die Koordinaten der Zielposition sind absolut. Funktionsbaustein MC_MoveLinearAbsolute Eingänge Parameter AxisGroupIdx Execute 72 Typ INT Beschreibung Index der Achsgruppe BOOL • 1…5 Startet/Puffert die Bewegung mit einer steigenden Flanke des Signals. Version: 1.4 TC3 Robotics mxAutomation Programmierung Parameter Position Typ E6POS Beschreibung Koordinaten der kartesischen Zielposition >>> "E6POS". [} 23] Velocity Die Datenstruktur E6POS enthält alle Komponenten der Zielposition (= Position des TCP bezogen auf den Ursprung des BASE-Koordinatensystems). Geschwindigkeit für die Bahnbewegung REAL • 0 … 100 m/s Bezieht sich auf den in den Maschinendaten angegebenen Maximalwert. Der Maximalwert ist abhängig vom Robotertyp und der eingestellten Betriebsart. Acceleration Default: 0 m/s (= Geschwindigkeit wird nicht verändert) Beschleunigung für die Bahnbewegung REAL • 0 … 100 m/s2 Bezieht sich auf den in den Maschinendaten angegebenen Maximalwert. Der Maximalwert ist abhängig vom Robotertyp und der eingestellten Betriebsart. CoordinateSystem COORDSYS Default: 0 m/s2 (= Beschleunigung wird nicht verändert) Koordinatensystem, auf das sich die kartesischen Koordinaten der Zielposition beziehen >>> "COORDSYS". [} 22] Hinweis: Bei einer LIN-Bewegung beziehen sich die kartesischen Koordinaten immer auf das BASEKoordinatensystem. OriType INT >>> "OriType". [} 25] Approximate APO >>> "APO". [} 21] QueueMode INT >>> "QueueMode". [} 24] Ausgänge Parameter ComAcpt Typ BOOL ComBusy BOOL Busy BOOL Active Done CommandAbor ted Error ErrorID BOOL BOOL BOOL 7.11.2 BOOL DINT Beschreibung TRUE = Anweisung wurde vollständig übertragen und von der Robotersteuerung bestätigt. TRUE = Anweisung wird aktuell übertragen und ist noch nicht von der Robotersteuerung bestätigt. TRUE = Funktionsbaustein wurde noch nicht vollständig ausgeführt TRUE = Bewegung wird aktuell ausgeführt TRUE = Bewegung ist beendet TRUE = Anweisung/Bewegung wurde abgebrochen TRUE = Fehler im Funktionsbaustein Fehlernummer Kartesische Position mit LIN_REL-Bewegung anfahren Beschreibung Mit dem Funktionsbaustein MC_MoveLinearRelative wird eine Linearbewegung zu einer kartesischen Zielposition ausgeführt. Die Koordinaten der Zielposition sind relativ zur aktuellen Position. TC3 Robotics mxAutomation Version: 1.4 73 Programmierung Eine REL-Anweisung bezieht sich immer auf die aktuelle Roboterposition. Wenn eine RELBewegung abgebrochen wurde, fährt der Roboter deswegen von der Abbruch-Position aus noch einmal die komplette REL-Bewegung. Hinweis Funktionsbaustein MC_MoveLinearRelative Eingänge Parameter AxisGroupIdx Typ INT Execute BOOL Position E6POS Beschreibung Index der Achsgruppe • 1…5 Startet/Puffert die Bewegung mit einer steigenden Flanke des Signals. Koordinaten der kartesischen Zielposition >>> "E6POS". [} 23] Velocity REAL Die Datenstruktur E6POS enthält alle Komponenten der Zielposition (= Position des TCP bezogen auf den Ursprung des ausgewählten Koordinatensystems). Geschwindigkeit für die Bahnbewegung • 0 … 100 m/s Bezieht sich auf den in den Maschinendaten angegebenen Maximalwert. Der Maximalwert ist abhängig vom Robotertyp und der eingestellten Betriebsart. Acceleration REAL Default: 0 m/s (= Geschwindigkeit wird nicht verändert) Beschleunigung für die Bahnbewegung • 0 … 100 m/s2 Bezieht sich auf den in den Maschinendaten angegebenen Maximalwert. Der Maximalwert ist abhängig vom Robotertyp und der eingestellten Betriebsart. CoordinateSystem COORDSYS Default: 0 m/s2 (= Beschleunigung wird nicht verändert) Koordinatensystem, auf das sich die kartesischen Koordinaten der Zielposition beziehen >>> "COORDSYS". [} 22] Hinweis: Bei einer LIN_REL-Bewegung können sich die kartesischen Koordinaten auf das BASE- oder auf das TOOL-Koordinatensystem beziehen. OriType INT >>> "OriType". [} 25] Approximate APO >>> "APO". [} 21] QueueMode INT >>> "QueueMode". [} 24] 74 Version: 1.4 TC3 Robotics mxAutomation Programmierung Ausgänge Parameter ComAcpt Typ BOOL ComBusy BOOL Busy BOOL Active Done CommandAbor ted Error ErrorID BOOL BOOL BOOL 7.11.3 BOOL DINT Beschreibung TRUE = Anweisung wurde vollständig übertragen und von der Robotersteuerung bestätigt. TRUE = Anweisung wird aktuell übertragen und ist noch nicht von der Robotersteuerung bestätigt. TRUE = Funktionsbaustein wurde noch nicht vollständig ausgeführt TRUE = Bewegung wird aktuell ausgeführt TRUE = Bewegung ist beendet TRUE = Anweisung/Bewegung wurde abgebrochen TRUE = Fehler im Funktionsbaustein Fehlernummer Kartesische Position mit PTP-Bewegung anfahren Beschreibung Mit dem Funktionsbaustein MC_MoveDirectAbsolute wird eine Punkt-zu-Punkt-Bewegung zu einer kartesischen Zielposition ausgeführt. Die Koordinaten der Zielposition sind absolut. Funktionsbaustein MC_MoveDirectAbsolute Eingänge Parameter AxisGroupIdx Typ INT Execute BOOL Position E6POS Beschreibung Index der Achsgruppe • 1…5 Startet/Puffert die Bewegung mit einer steigenden Flanke des Signals. Koordinaten der kartesischen Zielposition >>> "E6POS". [} 23] Die Datenstruktur E6POS enthält alle Komponenten der Zielposition (= Position des TCP bezogen auf den Ursprung des BASE-Koordinatensystems). TC3 Robotics mxAutomation Version: 1.4 75 Programmierung Parameter Velocity Typ REAL Beschreibung Geschwindigkeit für die Bahnbewegung • 0 … 100 m/s Bezieht sich auf den in den Maschinendaten angegebenen Maximalwert. Der Maximalwert ist abhängig vom Robotertyp und der eingestellten Betriebsart. Acceleration Default: 0 m/s Beschleunigung für die Bahnbewegung REAL • 0 … 100 m/s2 Bezieht sich auf den in den Maschinendaten angegebenen Maximalwert. Der Maximalwert ist abhängig vom Robotertyp und der eingestellten Betriebsart. CoordinateSystem COORDSYS Default: 0 m/s2 (= Geschwindigkeit wird nicht verändert) Koordinatensystem, auf das sich die kartesischen Koordinaten der Zielposition beziehen >>> "COORDSYS". [} 22] Hinweis: Bei einer PTP-Bewegung beziehen sich die kartesischen Koordinaten immer auf das BASEKoordinatensystem. Approximate APO >>> "APO". [} 21] QueueMode INT >>> "QueueMode". [} 24] Ausgänge Parameter ComAcpt Typ BOOL ComBusy BOOL Busy BOOL Active Done CommandAbor ted Error ErrorID BOOL BOOL BOOL 7.11.4 BOOL DINT Beschreibung TRUE = Anweisung wurde vollständig übertragen und von der Robotersteuerung bestätigt. TRUE = Anweisung wird aktuell übertragen und ist noch nicht von der Robotersteuerung bestätigt. TRUE = Funktionsbaustein wurde noch nicht vollständig ausgeführt TRUE = Bewegung wird aktuell ausgeführt TRUE = Bewegung ist beendet TRUE = Anweisung/Bewegung wurde abgebrochen TRUE = Fehler im Funktionsbaustein Fehlernummer Kartesische Position mit PTP_REL-Bewegung anfahren Beschreibung Mit dem Funktionsbaustein MC_MoveDirectRelative wird eine Punkt-zu-Punkt-Bewegung zu einer kartesischen Zielposition ausgeführt. Die Koordinaten der Zielposition sind relativ zur aktuellen Position. Eine REL-Anweisung bezieht sich immer auf die aktuelle Roboterposition. Wenn eine RELBewegung abgebrochen wurde, fährt der Roboter deswegen von der Abbruch-Position aus noch einmal die komplette REL-Bewegung. Hinweis 76 Version: 1.4 TC3 Robotics mxAutomation Programmierung Funktionsbaustein MC_MoveDirectRelative Eingänge Parameter AxisGroupIdx Typ INT Execute BOOL Position E6POS Beschreibung Index der Achsgruppe • 1…5 Startet/Puffert die Bewegung mit einer steigenden Flanke des Signals. Koordinaten der kartesischen Zielposition >>> "E6POS". [} 23] Velocity Die Datenstruktur E6POS enthält alle Komponenten der Zielposition (= Position des TCP bezogen auf den Ursprung des ausgewählten Koordinatensystems). Geschwindigkeit für die Bahnbewegung REAL • 0 … 100 m/s Bezieht sich auf den in den Maschinendaten angegebenen Maximalwert. Der Maximalwert ist abhängig vom Robotertyp und der eingestellten Betriebsart. Acceleration Default: 0 m/s (= Geschwindigkeit wird nicht verändert) Beschleunigung für die Bahnbewegung REAL • 0 … 100 m/s2 Bezieht sich auf den in den Maschinendaten angegebenen Maximalwert. Der Maximalwert ist abhängig vom Robotertyp und der eingestellten Betriebsart. CoordinateSystem COORDSYS Default: 0 m/s2 (= Beschleunigung wird nicht verändert) Koordinatensystem, auf das sich die kartesischen Koordinaten der Zielposition beziehen >>> "COORDSYS". [} 22] Hinweis: Bei einer PTP_REL-Bewegung beziehen sich die kartesischen Koordinaten immer auf das BASEKoordinatensystem. Approximate APO >>> "APO". [} 21] QueueMode INT >>> "QueueMode". [} 24] Ausgänge Parameter ComAcpt Typ BOOL Beschreibung TRUE = Anweisung wurde vollständig übertragen und von der Robotersteuerung bestätigt. TC3 Robotics mxAutomation Version: 1.4 77 Programmierung Parameter ComBusy Typ BOOL Busy BOOL Active Done CommandAbor ted Error ErrorID BOOL BOOL BOOL 78 BOOL DINT Beschreibung TRUE = Anweisung wird aktuell übertragen und ist noch nicht von der Robotersteuerung bestätigt. TRUE = Funktionsbaustein wurde noch nicht vollständig ausgeführt TRUE = Bewegung wird aktuell ausgeführt TRUE = Bewegung ist beendet TRUE = Anweisung/Bewegung wurde abgebrochen TRUE = Fehler im Funktionsbaustein Fehlernummer Version: 1.4 TC3 Robotics mxAutomation Programmierung 7.11.5 Achsspezifische Position mit PTP-Bewegung anfahren Beschreibung Mit dem Funktionsbaustein MC_MoveAxisAbsolute wird eine Punkt-zu-Punkt-Bewegung zu einer achsspezifischen Zielposition ausgeführt. Die Achspositionen sind absolut. Funktionsbaustein MC_MoveAxisAbsolute Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe Execute BOOL AxisPosition E6AXIS • 1…5 Startet/Puffert die Bewegung mit einer steigenden Flanke des Signals. Achsspezifische Zielposition >>> "E6AXIS". [} 22] Velocity Die Datenstruktur E6Axis enthält die Winkel- oder Translationswerte für alle Achsen der Achsgruppe in der Zielposition. Geschwindigkeit für die Bahnbewegung REAL • 0 … 100 m/s Bezieht sich auf den in den Maschinendaten angegebenen Maximalwert. Der Maximalwert ist abhängig vom Robotertyp und der eingestellten Betriebsart. Acceleration Default: 0 m/s (= Geschwindigkeit wird nicht verändert) Beschleunigung für die Bahnbewegung REAL • 0 … 100 m/s2 Bezieht sich auf den in den Maschinendaten angegebenen Maximalwert. Der Maximalwert ist abhängig vom Robotertyp und der eingestellten Betriebsart. Default: 0 m/s2 (= Beschleunigung wird nicht verändert) Approximate APO >>> "APO". [} 21] QueueMode INT >>> "QueueMode". [} 24] Ausgänge Parameter ComAcpt Typ BOOL Beschreibung TRUE = Anweisung wurde vollständig übertragen und von der Robotersteuerung bestätigt. TC3 Robotics mxAutomation Version: 1.4 79 Programmierung Parameter ComBusy Typ BOOL Busy BOOL Active Done CommandAbor ted Error ErrorID BOOL BOOL BOOL 7.11.6 BOOL DINT Beschreibung TRUE = Anweisung wird aktuell übertragen und ist noch nicht von der Robotersteuerung bestätigt. TRUE = Funktionsbaustein wurde noch nicht vollständig ausgeführt TRUE = Bewegung wird aktuell ausgeführt TRUE = Bewegung ist beendet TRUE = Anweisung/Bewegung wurde abgebrochen TRUE = Fehler im Funktionsbaustein Fehlernummer Kartesische Position mit CIRC-Bewegung anfahren Beschreibung Mit dem Funktionsbaustein MC_MoveCircularAbsolute wird eine Kreisbewegung zu einer kartesischen Zielposition ausgeführt. Damit die Robotersteuerung die Kreisbewegung berechnen kann, muss neben der Zielposition eine Hilfsposition angegeben werden. Die Koordinaten von Hilfs- und Zielposition sind absolut. Die Hilfsposition kann nicht überschliffen werden. Sie wird immer genau angefahren. Funktionsbaustein MC_MoveCircularAbsolute Eingänge Parameter AxisGroupIdx Typ INT Execute BOOL Position E6POS Beschreibung Index der Achsgruppe • 1…5 Startet/Puffert die Bewegung mit einer steigenden Flanke des Signals. Koordinaten der kartesischen Zielposition >>> "E6POS". [} 23] Die Datenstruktur E6POS enthält alle Komponenten der Zielposition (= Position des TCP bezogen auf den Ursprung des BASE-Koordinatensystems). 80 Version: 1.4 TC3 Robotics mxAutomation Programmierung Parameter CircHP Typ E6POS Beschreibung Koordinaten der kartesischen Hilfsposition >>> "E6POS". [} 23] Angle Die Datenstruktur E6POS enthält alle Komponenten der Hilfsposition (= Position des TCP bezogen auf den Ursprung des BASE-Koordinatensystems). Kreiswinkel (= Gesamtwinkel der Kreisbewegung) REAL Der Kreiswinkel ermöglicht eine Verlängerung der Bewegung über den programmierten Zielpunkt hinaus oder auch eine Verkürzung. Der tatsächliche Zielpunkt entspricht dadurch nicht mehr dem programmierten Zielpunkt. Der Kreiswinkel ist nicht begrenzt, d. h. es kann ein Kreiswinkel größer ±360° angegeben werden: • > 0.0°: Bei einem positiven Winkel wird vom Startpunkt aus über CircHP in Richtung Position gefahren. • < 0.0°: Bei einem negativen Winkel wird vom Startpunkt aus über Position in Richtung CircHP gefahren. • = 0.0°: Der Kreiswinkel wird ignoriert. Zielposition ist Position. Der Kreisradius wird anhand der Startposition, CircHP und Position berechnet. Velocity Default: 0.0° Geschwindigkeit für die Bahnbewegung REAL • 0 … 100 m/s Bezieht sich auf den in den Maschinendaten angegebenen Maximalwert. Der Maximalwert ist abhängig vom Robotertyp und der eingestellten Betriebsart. Acceleration Default: 0 m/s (= Geschwindigkeit wird nicht verändert) Beschleunigung für die Bahnbewegung REAL • 0 … 100 m/s2 Bezieht sich auf den in den Maschinendaten angegebenen Maximalwert. Der Maximalwert ist abhängig vom Robotertyp und der eingestellten Betriebsart. CoordinateSystem COORDSYS Default: 0 m/s2 (= Beschleunigung wird nicht verändert) Koordinatensystem, auf das sich die kartesischen Koordinaten der Hilfs- oder Zielposition beziehen >>> "COORDSYS". [} 22] Hinweis: Bei einer CIRC-Bewegung beziehen sich die kartesischen Koordinaten immer auf das BASEKoordinatensystem. OriType INT >>> "OriType". [} 25] CircType INT >>> "CircType". [} 24] Approximate APO >>> "APO". [} 21] QueueMode INT >>> "QueueMode". [} 24] Ausgänge Parameter ComAcpt Typ BOOL Beschreibung TRUE = Anweisung wurde vollständig übertragen und von der Robotersteuerung bestätigt. TC3 Robotics mxAutomation Version: 1.4 81 Programmierung Parameter ComBusy Typ BOOL Busy BOOL Active Done CommandAbor ted Error ErrorID BOOL BOOL BOOL 7.11.7 BOOL DINT Beschreibung TRUE = Anweisung wird aktuell übertragen und ist noch nicht von der Robotersteuerung bestätigt. TRUE = Funktionsbaustein wurde noch nicht vollständig ausgeführt TRUE = Bewegung wird aktuell ausgeführt TRUE = Bewegung ist beendet TRUE = Anweisung/Bewegung wurde abgebrochen TRUE = Fehler im Funktionsbaustein Fehlernummer Kartesische Position mit CIRC_REL-Bewegung anfahren Beschreibung Mit dem Funktionsbaustein MC_MoveCircularRelative wird eine Kreisbewegung zu einer kartesischen Zielposition ausgeführt. Damit die Robotersteuerung die Kreisbewegung berechnen kann, muss neben der Zielposition eine Hilfsposition angegeben werden. Die Koordinaten von Hilfs- und Zielposition sind relativ zur aktuellen Position (= Startposition der Kreisbewegung). Die Hilfsposition kann nicht überschliffen werden. Sie wird immer genau angefahren. Eine REL-Anweisung bezieht sich immer auf die aktuelle Roboterposition. Wenn eine RELBewegung abgebrochen wurde, fährt der Roboter deswegen von der Abbruch-Position aus noch einmal die komplette REL-Bewegung. Hinweis Funktionsbaustein MC_MoveCircularRelative Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe Execute BOOL • 1…5 Startet/Puffert die Bewegung mit einer steigenden Flanke des Signals. 82 Version: 1.4 TC3 Robotics mxAutomation Programmierung Parameter Position Typ E6POS Beschreibung Koordinaten der kartesischen Zielposition >>> "E6POS". [} 23] CircHP E6POS Die Datenstruktur E6POS enthält alle Komponenten der Zielposition (= Position des TCP bezogen auf den Ursprung des BASE-Koordinatensystems). Koordinaten der kartesischen Hilfsposition >>> "E6POS". [} 23] Angle REAL Die Datenstruktur E6POS enthält alle Komponenten der Hilfsposition (= Position des TCP bezogen auf den Ursprung des BASE-Koordinatensystems). Kreiswinkel (= Gesamtwinkel der Kreisbewegung) Der Kreiswinkel ermöglicht eine Verlängerung der Bewegung über den programmierten Zielpunkt hinaus oder auch eine Verkürzung. Der tatsächliche Zielpunkt entspricht dadurch nicht mehr dem programmierten Zielpunkt. Der Kreiswinkel ist nicht begrenzt, d. h. es kann ein Kreiswinkel größer ±360° angegeben werden: • > 0.0°: Bei einem positiven Winkel wird vom Startpunkt aus über CircHP in Richtung Position gefahren. • < 0.0°: Bei einem negativen Winkel wird vom Startpunkt aus über Position in Richtung CircHP gefahren. • = 0.0°: Der Kreiswinkel wird ignoriert. Zielposition ist Position. Der Kreisradius wird anhand der Startposition, CircHP und Position berechnet. Velocity REAL Default: 0.0° Geschwindigkeit für die Bahnbewegung • 0 … 100 m/s Bezieht sich auf den in den Maschinendaten angegebenen Maximalwert. Der Maximalwert ist abhängig vom Robotertyp und der eingestellten Betriebsart. Acceleration REAL Default: 0 m/s (= Geschwindigkeit wird nicht verändert) Beschleunigung für die Bahnbewegung • 0 … 100 m/s2 Bezieht sich auf den in den Maschinendaten angegebenen Maximalwert. Der Maximalwert ist abhängig vom Robotertyp und der eingestellten Betriebsart. CoordinateSystem COORDSYS Default: 0 m/s2 (= Beschleunigung wird nicht verändert) Koordinatensystem, auf das sich die kartesischen Koordinaten der Hilfs- oder Zielposition beziehen >>> "COORDSYS". [} 22] Hinweis: Bei einer CIRC_REL-Bewegung beziehen sich die kartesischen Koordinaten immer auf das BASEKoordinatensystem. OriType INT >>> "OriType". [} 25] CircType INT >>> "CircType". [} 24] Approximate APO >>> "APO". [} 21] QueueMode INT >>> "QueueMode". [} 24] TC3 Robotics mxAutomation Version: 1.4 83 Programmierung Ausgänge Parameter ComAcpt Typ BOOL ComBusy BOOL Busy BOOL Active Done CommandAbor ted Error ErrorID BOOL BOOL BOOL BOOL DINT Beschreibung TRUE = Anweisung wurde vollständig übertragen und von der Robotersteuerung bestätigt. TRUE = Anweisung wird aktuell übertragen und ist noch nicht von der Robotersteuerung bestätigt. TRUE = Funktionsbaustein wurde noch nicht vollständig ausgeführt TRUE = Bewegung wird aktuell ausgeführt TRUE = Bewegung ist beendet TRUE = Anweisung/Bewegung wurde abgebrochen TRUE = Fehler im Funktionsbaustein Fehlernummer 7.12 Diagnose-Funktionen 7.12.1 Aktuellen Status der mxA-Schnittstelle lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadMXAStatus wird der aktuelle Status der mxA-Schnittstelle gelesen. Funktionsbaustein KRC_ReadMXAStatus Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe • 1…5 Ausgänge Parameter Status Typ INT ErrorID Error DINT BOOL 7.12.2 Beschreibung >>> "Status". [} 25] Fehlernummer TRUE = Fehler im Funktionsbaustein Fehlermeldungen der mxA-Schnittstelle lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadMXAError wird der aktuelle Fehlerzustand einer Achsgruppe gelesen. Es werden nur Fehlermeldungen angezeigt, die von der mxA-Schnittstelle generiert wurden. 84 Version: 1.4 TC3 Robotics mxAutomation Programmierung Funktionsbaustein KRC_ReadMXAError Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe • 1…5 Ausgänge Parameter ErrorID Error 7.12.3 Typ DINT BOOL Beschreibung Fehlernummer TRUE = Fehler im Funktionsbaustein Fehlermeldungen der mxA-Schnittstelle quittieren Beschreibung Mit dem Funktionsbaustein KRC_MessageReset wird der aktuelle Fehlerzustand einer Achsgruppe quittiert. Es werden nur Fehlermeldungen quittiert, die von der mxA-Schnittstelle generiert wurden. Fehlermeldungen der Robotersteuerung werden über den Funktionsbaustein KRC_AutomaticExternal (Eingang CONF_MESS) quittiert. Meldungen können nur quittiert werden, wenn der Roboter stillsteht. Hinweis Funktionsbaustein KRC_MessageReset Eingänge Parameter AxisGroupIdx Typ INT MessageReset BOOL Beschreibung Index der Achsgruppe • 1…5 TRUE = Meldung quittieren Ausgänge Parameter ErrorID Error Typ DINT BOOL Beschreibung Fehlernummer TRUE = Fehler im Funktionsbaustein TC3 Robotics mxAutomation Version: 1.4 85 Programmierung 7.12.4 Fehlermeldungen der Robotersteuerung lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadKRCError wird der aktuelle Fehlerzustand der Robotersteuerung gelesen. Es werden nur Fehlermeldungen angezeigt, die von der Robotersteuerung generiert wurden. Fehlermeldungen der Robotersteuerung werden über den Funktionsbaustein KRC_AutomaticExternal (Eingang CONF_MESS) quittiert. Meldungen können nur quittiert werden, wenn der Roboter stillsteht. Hinweis Funktionsbaustein KRC_ReadKRCError Eingänge Parameter AxisGroupIdx Typ INT ExecuteCmd BOOL Offset INT Beschreibung Index der Achsgruppe • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. Wenn mehr als 10 Meldungen im Meldungspuffer stehen, kann über den Offset der gewünschte Startindex des Meldungspuffers ausgewählt werden. Beispiel: Wenn 15 Meldungen im Meldungspuffer stehen, muss der Offset 6 sein, damit die Meldungen 6 bis 15 gelesen werden. Ausgänge Parameter ErrorID MessageCount Message1 … Message10 86 Typ DINT INT DINT Beschreibung Fehlernummer Anzahl der Meldungen im Meldungspuffer Die Nummern von bis zu 10 Meldungen, die im Meldungspuffer stehen, können ausgegeben werden. Version: 1.4 TC3 Robotics mxAutomation Programmierung Parameter Done Error STOPMESS 7.12.5 Typ BOOL BOOL BOOL Beschreibung TRUE = Daten sind gültig TRUE = Fehler im Funktionsbaustein TRUE = Sicherheitskreis ist unterbrochen (Roboterfehler) Diagnosesignale lesen Beschreibung Mit dem Funktionsbaustein KRC_Diag werden Diagnosesignale der Robotersteuerung gelesen. Der Funktionsbaustein darf pro Achsgruppe nur einfach instanziiert werden. Bei einer mehrfachen Instanziierung werden die Signale des zuletzt aufgerufenen Funktionsbausteins ausgegeben. Hinweis Funktionsbaustein KRC_Diag Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe • 1…5 TC3 Robotics mxAutomation Version: 1.4 87 Programmierung Parameter ShowTrace Typ BOOL Beschreibung TRUE = Anzeige der aktiven Funktionsbausteine im Meldungsfenster der KUKA smartHMI aktivieren FALSE = Anzeige der aktiven Funktionsbausteine im Meldungsfenster der KUKA smartHMI deaktivieren. MaxSubmitCycle INT Hinweis: Die Anzeige nur für Test- und Diagnosezwecke aktivieren. Wenn die Anzeige aktiv ist, ist kein Überschleifen mehr möglich und die Zykluszeit des Submit-Interpreters wird negativ beeinflusst. Maximale Zykluszeit des Submit-Interpreters Default: 1 000 ms Hinweis: Wird die maximale Zykluszeit überschritten, wird das Signal $MOVE_ENABLE für die Fahrfreigabe zurückgesetzt. Ausgänge Parameter QueueCount Typ INT Beschreibung Anzahl der gepufferten Anweisungen SubmitHeartbeat INT • 1 … 90 Heartbeat-Signal des Submit-Interpreters (Zähler wird in jedem Submit-Zyklus um 1 erhöht) SubmitCyc_Act REAL SubmitCyc_Min REAL SubmitCyc_Max REAL SubmitCyc_Avg INT Avg_Duration DINT ProconosHeartbeat INT ProconosCyc_Act INT ProconosCyc_Min INT ProconosCyc_Max INT ProconosCyc_Avg INT ActivePosOrderID DINT ActiveOrderIDB DINT ErrorID_RI ErrorID_SI ErrorID_PLC DINT DINT DINT 88 • 1 … 245 Aktuelle Zykluszeit des Submit-Interpreters; Einheit: ms Mittelwert über 1 000 ms = 1/Anzahl der Zyklen pro Sekunde Kürzeste Zykluszeit des Submit-Interpreters seit der letzten Verbindungsunterbrechung; Einheit: ms Längste Zykluszeit des Submit-Interpreters seit der letzten Verbindungsunterbrechung; Einheit: ms Mittelwert der Zykluszeit des Submit-Interpreters im Ermittlungszeitraum Avg_Duration; Einheit: ms Dauer des aktuellen Ermittlungszeitraums für den Mittelwert der Zykluszeit; Einheit: ms Der Ermittlungszeitraum beginnt nach einer Unterbrechung der Verbindung zum Submit-Interpreter oder nach spätestens 60 Minuten neu. Lebenszeichen von ProConOS (Zähler wird in jedem ProConOS-Zyklus um 1 erhöht) Aktuelle Zykluszeit von ProConOS; Einheit: ms Mittelwert über 1 000 ms = 1/Anzahl der Zyklen pro Sekunde Kürzeste Zykluszeit von ProConOS seit der letzten Verbindungsunterbrechung; Einheit: ms Längste Zykluszeit von ProConOS seit der letzten Verbindungsunterbrechung; Einheit: ms Mittelwert der Zykluszeit von ProConOS im Ermittlungszeitraum Avg_Duration; Einheit: ms Order ID des KRC_Move-Bewegungsbefehls, der aktuell ausgeführt wird Order ID des aktuellen KRC_Move-Bewegungsbefehls im Vorlauf Fehlernummer Roboter-Interpreter Fehlernummer Submit-Interpreter Fehlernummer SPS Version: 1.4 TC3 Robotics mxAutomation Programmierung Parameter ErrorID_PCOS ErrorID Valid PosActValid BrakeActive Typ DINT DINT BOOL BOOL BOOL Error BOOL TC3 Robotics mxAutomation Beschreibung Fehlernummer ProConOS Fehlernummer TRUE = Daten sind gültig TRUE = Positionsdaten sind gültig (SAK) TRUE = Roboter wird durch eine BRAKE-Anweisung angehalten TRUE = Fehler im Funktionsbaustein Version: 1.4 89 Programmierung 7.12.6 Fehlerzustände lesen und quittieren Beschreibung Mit dem Funktionsbaustein KRC_Error wird der aktuelle Fehlerzustand der mxA-Schnittstelle, der Fehlerzustand der Robotersteuerung und der Fehlerzustand der Funktionsbausteine gesammelt gelesen und quittiert. Wenn mehrere Fehler gleichzeitig im Funktionsbaustein aufgetreten sind, wird nur die Fehlernummer angezeigt, die zuletzt aufgetreten ist. Fehler in einem Funktionsbaustein führen zum Entzug der Fahrfreigabe. Wenn mehrere Fehler gleichzeitig aufgetreten sind, werden diese mit folgender Priorität angezeigt: 1. Fehler der mxA-Schnittstelle im Roboter-Interpreter 2. Fehler der mxA-Schnittstelle im Submit-Interpreter 3. ProConOS-Fehler 4. Fehler in der SPS 5. Fehler in einem Funktionsbaustein der lokalen SPS 6. Fehler der Robotersteuerung Im Funktionsbaustein KRC_Error sind alle Diagnose-Funktionsbausteine enthalten, dadurch zeigt dieser Baustein alle wichtigen Diagnosedaten an. Hinweis Das Signal $STOPMESS wird nur zurückgesetzt, wenn kein Fehler ansteht und die Antriebe eingeschaltet sind. Aus diesem Grund müssen die Antriebe durch den Funktionsbaustein KRC_Error mit dem Signal DRIVES_ON aktiviert werden. Die Antriebe werden mit einer Flanke aktiviert. Der Eingang DRIVES_ON am Funktionsbaustein KRC_AutomaticExternal sollte aus diesem Grund nicht permanent aktiviert sein. Funktionsbaustein KRC_Error Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe • 1…5 90 Version: 1.4 TC3 Robotics mxAutomation Programmierung Parameter MessageReset Typ BOOL Beschreibung Quittiert Fehlermeldungen der mxA-Schnittstelle und der Robotersteuerung über den Funktionsbaustein KRC_AutomaticExternal (Eingang CONF_MESS). Aktiviert die Antriebe. TRUE = Meldung quittieren Hinweis: Die Meldungen können nur quittiert werden, wenn der Roboter stillsteht. Ausgänge Parameter Error ErrorID NoHeartbeatKRC NoHeartbeatPCOS NotOnline NotInitialized Typ BOOL INT BOOL BOOL BOOL BOOL NoOpModeExt NoMoveEnable UserSafeNotOK BOOL BOOL BOOL KrcErrorActive BOOL DrivesNotReady BOOL NoProgActive BOOL TC3 Robotics mxAutomation Beschreibung TRUE = Fehler im Funktionsbaustein Fehlernummer Submit-Interpreter sendet kein Lebenszeichen ProConOS sendet kein Lebenszeichen Keine Verbindung zur Robotersteuerung Es können keine Anweisungen ausgeführt werden, da die Verbindung nicht initialisiert wurde. Roboter steht nicht in der Betriebsart Automatik Extern Keine Fahrfreigabe vorhanden. Der Bedienerschutz ist verletzt. Das Signal $USER_SAF der Schnittstelle Automatik Extern ist nicht aktiv. Fehlermeldungen der Robotersteuerung sind aktiv. Das Signal $STOPMESS der Schnittstelle Automatik Extern ist aktiv. Die Antriebe sind nicht bereit. Das Signal $PERI_RDY der Schnittstelle Automatik Extern ist nicht aktiv. Das Roboterprogramm ist nicht aktiv. Das Signal $PRO_ACT der Schnittstelle Automatik Extern ist nicht aktiv. Version: 1.4 91 Programmierung 7.13 Sonderfunktionen 7.13.1 Systemvariablen lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadSysVar wird eine Systemvariable gelesen. Diese Funktion wird im Submit-Interpreter ausgeführt. Funktionsbaustein KRC_ReadSysVar Eingänge Parameter AxisGroupIdx Typ INT ExecuteCmd BOOL Index INT Beschreibung Index der Achsgruppe • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. Index der Systemvariablen • 1: $ADVANCE Bislang kann nur die Systemvariable $ADVANCE gelesen werden. Wenn es die kundenspezifische Anwendung erfordert, kann die Liste der lesbaren Systemvariablen durch KUKA erweitert werden. Hinweis Ausgänge Parameter Value1 … Value10 Typ REAL Beschreibung Wert der Systemvariablen ErrorID Done Error DINT BOOL BOOL Wenn die Systemvariable ein Strukturtyp ist, können bis zu 10 Komponenten der Struktur gelesen werden. Fehlernummer TRUE = Anweisung wurde ausgeführt TRUE = Fehler im Funktionsbaustein 92 Version: 1.4 TC3 Robotics mxAutomation Programmierung 7.13.2 Systemvariablen schreiben Beschreibung Mit dem Funktionsbaustein KRC_WriteSysVar wird eine Systemvariable geschrieben. Funktionsbaustein KRC_WriteSysVar Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe ExecuteCmd BOOL Index INT • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. Index der Systemvariablen Value1 … Value10 REAL • 1: $ADVANCE Wert der Systemvariablen Continue BOOL Wenn die Systemvariable ein Strukturtyp ist, können bis zu 10 Komponenten der Struktur geschrieben werden. TRUE = Systemvariable ohne Vorlaufstopp beschreiben BufferMode INT Hinweis: Nur bei bestimmten Systemvariablen möglich. >>> "BufferMode". [} 24] Bislang kann nur die Systemvariable $ADVANCE geschrieben werden. Wenn es die kundenspezifische Anwendung erfordert, kann die Liste der schreibbaren Systemvariablen durch KUKA erweitert werden. Hinweis Ausgänge Parameter ErrorID Busy Typ DINT BOOL Done BOOL Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde ausgeführt TC3 Robotics mxAutomation Version: 1.4 93 Programmierung Parameter Aborted Typ BOOL Error BOOL 94 Beschreibung TRUE = Anweisung wurde abgebrochen, bevor sie im Vorlauf bearbeitet wurde TRUE = Fehler im Funktionsbaustein Version: 1.4 TC3 Robotics mxAutomation Programmierung 7.13.3 Bremsentest aufrufen Beschreibung Mit dem Funktionsbaustein KRC_BrakeTest wird das Programm für den Bremsentest aufgerufen. Der Bremsentest wird an der Position gestartet, an der sich der Roboter bei Programmaufruf befindet. Der Bremsentest muss mit einem Programm-Override von 100 % ausgeführt werden (Funktionsbaustein KRC_SetOverride). Hinweis Beim Bremsentest wird für alle Bremsen geprüft, ob eine Bremse die Verschleißgrenze erreicht hat. Dazu beschleunigt der Roboter auf eine definierte Geschwindigkeitsgrenze. Wenn der Roboter die Geschwindigkeit erreicht hat, fällt die Bremse ein und das Ergebnis für diesen Bremsvorgang wird angezeigt. Bei einem erfolgreichen Bremsentest steht der Roboter am Ende der Messung wieder in der Startposition. Ist der Bremsentest fehlgeschlagen, d. h. eine Bremse wurde als defekt erkannt, fährt der Roboter direkt eine Parkposition an. Die Koordinaten der Parkposition müssen im Funktionsbaustein angegeben werden. Parkposition Die Parkposition muss so gewählt werden, dass keine Personen gefährdet werden, falls der Roboter aufgrund der defekten Bremse zusammensackt. Als Parkposition kann z. B. die Transportstellung gewählt werden. Weitere Informationen zur Transportstellung sind in der Betriebsanleitung oder der Montageanleitung für den Roboter zu finden. Hinweis Detaillierte Informationen zum Bremsentest sind in der KUKA Dokumentation zu finden. Hinweis Funktionsbaustein KRC_BrakeTest Eingänge TC3 Robotics mxAutomation Version: 1.4 95 Programmierung Parameter ParkPosition Typ E6POS Beschreibung Koordinaten der kartesischen Parkposition >>> "E6POS". [} 23] Die Datenstruktur E6POS enthält alle Komponenten der Parkposition (= Position des TCP bezogen auf den Ursprung des ausgewählten Koordinatensystems). ParkCoordinateSy COORDSYS stem AxisGroupIdx INT ExecuteCmd BOOL ParkVelocity INT >>> "COORDSYS". [} 22] Index der Achsgruppe • 1…5 Startet/Puffert die Bewegung mit einer steigenden Flanke des Signals. Geschwindigkeit • 0 … 100 % Bezieht sich auf den in den Maschinendaten angegebenen Maximalwert. Der Maximalwert ist abhängig vom Robotertyp und der eingestellten Betriebsart. ParkAcceleration INT Default: 0 % (= Geschwindigkeit wird nicht verändert) Beschleunigung • 0 … 100 % Bezieht sich auf den in den Maschinendaten angegebenen Maximalwert. Der Maximalwert ist abhängig vom Robotertyp und der eingestellten Betriebsart. Default: 0 % (= Beschleunigung wird nicht verändert) BufferMode INT >>> "BufferMode". [} 24] Ausgänge Parameter Result Typ DINT Beschreibung Ergebnis des Bremsentests • 0: Bremsentest fehlgeschlagen (Bremse als defekt erkannt oder keine Verbindung zur Robotersteuerung) • 1: Bremsentest erfolgreich (keine Bremse defekt, aber mindestens eine Bremse hat Verschleißgrenze erreicht) ErrorID Busy DINT BOOL Active Done Aborted Error BOOL BOOL BOOL BOOL 7.13.4 • 2: Bremsentest erfolgreich (keine Bremse defekt oder Verschleißgrenze erreicht) Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Bewegung wird aktuell ausgeführt TRUE = Bewegung ist beendet TRUE = Anweisung/ Bewegung wurde abgebrochen TRUE = Fehler im Funktionsbaustein Justage-Referenzierung aufrufen Beschreibung Mit dem Funktionsbaustein KRC_MasRef wird die Justage-Referenzierung durchgeführt. 96 Version: 1.4 TC3 Robotics mxAutomation Programmierung Nach dem Aufruf des Funktionsbausteins fährt der Roboter von der aktuellen Position linear zur Referenzposition. Wenn der Roboter die Referenzposition erreicht hat, werden die aktuellen Achswerte mit den Achswerten verglichen, die in KUKA.SafeOperation gespeichert wurden. Anschließend fährt der Roboter zur Startposition (= Position vor Aufruf des Funktionsbausteins) zurück. Die Referenzposition wird im Funktionsbaustein mit dem Eingangsparameter Position definiert und entspricht der mit KUKA.SafeOperation definierten Referenzposition. Hinweis Wenn die Abweichung zwischen aktueller Position und Referenzposition zu groß ist, ist die JustageReferenzierung fehlgeschlagen. Detaillierte Informationen zur Justage-Referenzierung sind in der Dokumentation KUKA.SafeOperation zu finden. Hinweis Funktionsbaustein KRC_MasRef Eingänge Parameter Position Typ E6POS Beschreibung Koordinaten der kartesischen Referenzposition >>> "E6POS". [} 23] Die Datenstruktur E6POS enthält alle Komponenten der Referenzposition (= Position des TCP bezogen auf den Ursprung des ausgewählten Koordinatensystems). CoordinateSystem COORDSYS AxisGroupIdx INT ExecuteCmd BOOL Velocity INT >>> "COORDSYS". [} 22] Index der Achsgruppe • 1…5 Startet/Puffert die Bewegung mit einer steigenden Flanke des Signals. Geschwindigkeit • 0 … 100 % Bezieht sich auf den in den Maschinendaten angegebenen Maximalwert. Der Maximalwert ist abhängig vom Robotertyp und der eingestellten Betriebsart. Default: 0 % (= Geschwindigkeit wird nicht verändert) TC3 Robotics mxAutomation Version: 1.4 97 Programmierung Parameter Acceleration Typ INT Beschreibung Beschleunigung • 0 … 100 % Bezieht sich auf den in den Maschinendaten angegebenen Maximalwert. Der Maximalwert ist abhängig vom Robotertyp und der eingestellten Betriebsart. Default: 0 % (= Beschleunigung wird nicht verändert) BufferMode INT >>> "BufferMode". [} 24] Ausgänge Parameter ErrorID Busy Typ DINT BOOL Active Done Aborted Error MasRefRequest BOOL BOOL BOOL BOOL BOOL 7.13.5 Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Bewegung wird aktuell ausgeführt TRUE = Bewegung ist beendet TRUE = Anweisung/ Bewegung wurde abgebrochen TRUE = Fehler im Funktionsbaustein TRUE = Justage-Referenzierung wurde von Robotersteuerung intern angefordert Signale der Sicherheitssteuerung lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadSafeOPStatus werden Signale der Sicherheitssteuerung gelesen. (Nur relevant, wenn KUKA.SafeOperation installiert ist.) Funktionsbaustein KRC_ReadSafeOPStatus Eingänge Parameter AxisGroupIdx Typ INT MASTERINGTEST_REQ_EXT BOOL BRAKETEST_REQ_EXT BOOL 98 Beschreibung Index der Achsgruppe • 1…5 TRUE = Justage-Referenzierung wird von der SPS angefordert TRUE = Bremsentest wird von der SPS angefordert Version: 1.4 TC3 Robotics mxAutomation Programmierung Ausgänge Parameter ErrorID Valid BRAKETEST_REQ_INT Typ DINT BOOL BOOL MASTERINGTEST_REQ_INT BOOL BRAKETEST_MONTIME BOOL BRAKETEST_WORK BRAKES_OK BOOL BOOL BRAKETEST_WARN BOOL MASTERINGTESTSWITCH_OK Error BOOL BOOL 7.13.6 Beschreibung Fehlernummer TRUE = Daten sind gültig TRUE = Bremsentest von der Sicherheitssteuerung angefordert TRUE = Justage-Referenzierung von der Sicherheitssteuerung angefordert TRUE = Roboter wurde gestoppt, da MonitoringZeit für Bremsentest abgelaufen TRUE = Bremsentest wird aktuell durchgeführt Flanke TRUE --> FALSE: Eine Bremse wurde als defekt erkannt Flanke FALSE --> TRUE: Für mindestens 1 Bremse wurde ermittelt, dass die Verschleißgrenze erreicht ist. TRUE = Referenztaster i.O. TRUE = Fehler im Funktionsbaustein Zustand der TouchUp-Statustasten lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadTouchUPState wird der aktuelle Zustand der TouchUp-Statustasten am smartPAD gelesen. Um Punkte über die Statustasten am smartPAD zu teachen, muss der Funktionsbaustein mit dem Funktionsbaustein KRC_TouchUP verknüpft werden. Funktionsbaustein KRC_ReadTouchUPState Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe • 1…5 Ausgänge Parameter Index Typ INT ErrorID Valid TouchUP DINT BOOL BOOL • 1 … 100 Fehlernummer TRUE = Daten sind gültig Zustand der TouchUp-Statustaste am smartPAD BOOL TRUE = TouchUp-Statustaste wurde gedrückt TRUE = Fehler im Funktionsbaustein Error Beschreibung Nummer, die mit der Statustaste am smartPAD ausgewählt wurde, um eine Position zu teachen TC3 Robotics mxAutomation Version: 1.4 99 Programmierung 7.13.7 Punkte teachen Beschreibung Mit dem Funktionsbaustein KRC_TouchUP kann ein Punkt direkt in der SPS geteacht werden. Werkzeug, Basis und Interpolationsmodus, die zu diesem Punkt gehören, werden vom Funktionsbaustein automatisch gesetzt. Funktionsbaustein KRC_TouchUP Speicher Parameter PositionArray Typ Array[100] Beschreibung Liste mit den geteachten Positionen Eingänge Parameter AxisGroupIdx ExecuteCmd Index Typ INT Beschreibung Index der Achsgruppe BOOL INT • 1…5 TRUE = Punkt wird geteacht. Nummer, mit der der geteachte Punkt in der SPS gespeichert wird • 1 … 100 Ausgänge Parameter ErrorID Done Error 7.13.8 Typ DINT BOOL BOOL Beschreibung Fehlernummer TRUE = Anweisung wurde ausgeführt TRUE = Fehler im Funktionsbaustein Einstellungen für den Vorlauf ändern Beschreibung Mit dem Funktionsbaustein KRC_SetAdvance werden die Einstellungen für den Vorlauf geändert. Der Vorlauf ist die maximale Anzahl der Bewegungssätze, die die Robotersteuerung beim Programmlauf im Voraus berechnet und plant. Die tatsächliche Anzahl ist abhängig von der Rechnerauslastung. Der Vorlauf ist unter anderem notwendig, um Überschleifbewegungen berechnen zu können. Wenn die Programmbearbeitung zurückgesetzt wird, werden die eingestellten Werte auf die Default-Werte zurückgesetzt. Hinweis 100 Version: 1.4 TC3 Robotics mxAutomation Programmierung Funktionsbaustein KRC_SetAdvance Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe ExecuteCmd BOOL Count INT • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals gepuffert. Anzahl der Funktionen, die vor der 1. Roboterbewegung übertragen werden sollen • 1 … 50 MaxWaitTime Default-Wert: 2 Maximale Wartezeit vor dem Beginn der Programmbearbeitung, wenn die eingestellte Anzahl der Funktionen im Parameter Count nicht erreicht wird. INT • 1 … 60 000 ms Mode Default-Wert: 300 ms Warte-Modus INT • 0: Der aktuell eingestellte Modus wird nicht verändert. • 1: Wenn die 1. Anweisung eine überschliffene Bewegungsanweisung ist, wird auf weitere Anweisungen gewartet. • 2: Es wird immer auf die Anzahl der eingestellten Funktionen oder den Ablauf der maximalen Wartezeit gewartet. Default-Wert: 1 BufferMode INT >>> "BufferMode". [} 24] Ausgänge Parameter Busy Done Aborted Error ErrorID 7.13.9 Typ BOOL BOOL BOOL BOOL DINT Beschreibung TRUE = Anweisung wurde übertragen TRUE = Anweisung wurde ausgeführt TRUE = Anweisung wurde abgebrochen TRUE = Fehler im Funktionsbaustein Fehlernummer Werte aus KRC_SetAdvance auslesen Beschreibung Mit dem Funktionsbaustein KRC_GetAdvance werden die Werte ausgelesen, die im Funktionsbaustein KRC_SetAdvance eingestellt wurden. TC3 Robotics mxAutomation Version: 1.4 101 Programmierung Funktionsbaustein KRC_GetAdvance Eingänge Parameter AxisGroupIdx ExecuteCmd Typ INT Beschreibung Index der Achsgruppe BOOL • 1…5 Die Anweisung wird bei einer steigenden Flanke des Signals ausgeführt. Ausgänge Parameter Done Count Typ BOOL INT Beschreibung TRUE = Anweisung wurde ausgeführt Anzahl der Funktionen, die vor der 1. Roboterbewegung übertragen werden sollen • 1 … 50 MaxWaitTime INT Default-Wert: 2 Maximale Wartezeit vor dem Beginn der Programmbearbeitung, wenn die eingestellte Anzahl der Funktionen im Parameter Count nicht erreicht wird. • 1 … 60 000 ms Mode INT Default-Wert: 300 ms Warte-Modus • 0: Der aktuell eingestellte Modus wird nicht verändert. • 1: Wenn die 1. Anweisung eine überschliffene Bewegungsanweisung ist, wird auf weitere Anweisungen gewartet. • 2: Es wird immer auf die Anzahl der eingestellten Funktionen oder den Ablauf der maximalen Wartezeit gewartet. Error ErrorID 102 BOOL DINT Default-Wert: 1 TRUE = Fehler im Funktionsbaustein Fehlernummer Version: 1.4 TC3 Robotics mxAutomation Programmierung 7.13.10 Kartesische Roboterposition aus Achswinkeln berechnen Beschreibung Mit dem Funktionsbaustein KRC_Forward wird aus vorgegebenen Achswinkeln die kartesische Roboterposition berechnet. Der Funktionsbaustein kann nur vom Roboter-Interpreter ausgeführt werden. Funktionsbaustein KRC_Forward Eingänge Parameter AxisGroupIdx Typ INT ExecuteCmd BOOL Axis_Values E6AXIS Beschreibung Index der Achsgruppe • 1…5 Startet/Puffert die Anweisung mit einer steigenden Flanke des Signals. Achsspezifische Werte, die in kartesische Koordinaten umgerechnet werden sollen CheckSoftEnd BOOL Die Datenstruktur E6AXIS enthält die Winkeloder Translationswerte für alle Achsen der Achsgruppe in dieser Position. Prüft, ob die vorgegebenen Achswinkel innerhalb der Software-Endschalter liegen. Wenn nicht, wird eine Fehlernummer ausgegeben. BufferMode INT >>> "BufferMode". [} 24] Parameter Busy Typ BOOL Done Position BOOL E6POS Aborted BOOL Error ErrorID BOOL DINT Beschreibung TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde ausgeführt Kartesische Roboterposition, die aus den vorgegebenen Achswinkeln berechnet wurde TRUE = Anweisung wurde abgebrochen, bevor sie im Vorlauf bearbeitet wurde TRUE = Fehler im Funktionsbaustein Fehlernummer Ausgänge 7.13.11 Achswinkel aus kartesischer Roboterposition berechnen Beschreibung Mit dem Funktionsbaustein KRC_Inverse werden aus einer vorgegebenen kartesischen Roboterposition die Achswinkel berechnet. Der Funktionsbaustein kann nur vom Roboter-Interpreter ausgeführt werden. TC3 Robotics mxAutomation Version: 1.4 103 Programmierung Funktionsbaustein KRC_Inverse Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe • 1…5 Startet/Puffert die Anweisung mit einer steigenden Flanke des Signals. Kartesische Roboterposition TRUE = Der Status-Wert, der im Parameter Position enthalten ist, ist gültig. ExecuteCmd BOOL Position PosValidS E6POS BOOL PosValidT BOOL FALSE = Der Status-Wert ist nicht bekannt. TRUE = Der Turn-Wert, der im Parameter Position enthalten ist, ist gültig. E6Axis FALSE = Der Turn-Wert ist nicht bekannt. Achsspezifische Werte am Startpunkt der Bewegung Start_Axis CheckSoftEnd BOOL Der Startpunkt ist die achsspezifische Position, von der aus der Roboter zu der Position fährt, die berechnet werden soll. Prüft, ob die Werte aus dem Parameter Start_Axis innerhalb der Software-Endschalter liegen. Wenn nicht, wird eine Fehlernummer ausgegeben. BufferMode INT >>> "BufferMode". [} 24] Parameter Busy Typ BOOL Done AxisPosition BOOL E6AXIS Beschreibung TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde ausgeführt Achswinkel, die aus der vorgegebenen kartesischen Roboterposition berechnet wurden Ausgänge Aborted BOOL Error ErrorID BOOL DINT 104 Die Datenstruktur E6AXIS enthält alle Achspositionen der Achsgruppe. TRUE = Anweisung wurde abgebrochen, bevor sie im Vorlauf bearbeitet wurde TRUE = Fehler im Funktionsbaustein Fehlernummer Version: 1.4 TC3 Robotics mxAutomation Programmierung 7.13.12 Conveyor initialisieren Beschreibung Mit dem Funktionsbaustein KRC_ConvIniOff wird ein Conveyor initialisiert. Das AMI wird dafür auf den Status #INITIALIZED gesetzt und die Conveyor-Distanz auf 0. Funktionsbaustein KRC_ConvIniOff Eingänge Parameter AxisGroupIdx ExecuteCmd Typ INT BOOL ConveyorNumb INT er BufferMode Beschreibung Index der Achsgruppe • 1…5 Startet/Puffert die Bewegung mit einer steigenden Flanke des Signals. Nummer des Conveyors • 1…3 INT >>> "BufferMode". [} 24] Parameter ErrorID Busy Typ DINT BOOL Done Aborted BOOL BOOL Error BOOL Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde ausgeführt TRUE = Anweisung wurde abgebrochen, bevor sie im Vorlauf bearbeitet wurde TRUE = Fehler im Funktionsbaustein Ausgänge TC3 Robotics mxAutomation Version: 1.4 105 Programmierung 7.13.13 Conveyor aktivieren Beschreibung Mit dem Funktionsbaustein KRC_ConvOn wird das AMI aktiviert, d. h. auf den Status #ACTIVE gesetzt. Wenn das AMI aktiviert ist, werden die Synchronisierungssignale am Eingang der Schnittstelle X33 (Schnelles Messen) ausgewertet. Die Erkennung des Conveyor-Versatzes kann im Hintergrund erfolgen, wobei die Robotersteuerung andere Tasks ausführen kann. Dies ermöglicht dem Roboter die fliegende Verfolgung eines Teils auf dem Conveyor. Funktionsbaustein KRC_ConvOn Eingänge Parameter AxisGroupIdx ExecuteCmd Typ INT BOOL ConveyorNumb INT er BufferMode Beschreibung Index der Achsgruppe • 1…5 Startet/Puffert die Bewegung mit einer steigenden Flanke des Signals. Nummer des Conveyors • 1…3 INT >>> "BufferMode". [} 24] Parameter ErrorID Busy Typ DINT BOOL Done Aborted BOOL BOOL Error BOOL Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde ausgeführt TRUE = Anweisung wurde abgebrochen, bevor sie im Vorlauf bearbeitet wurde TRUE = Fehler im Funktionsbaustein Ausgänge 7.13.14 Bauteil auf Conveyor verfolgen Beschreibung Mit dem Funktionsbaustein KRC_ConvFollow wird ein Bauteil auf dem Conveyor durch den Roboter verfolgt. Mit KRC_ConvFollow kann ein Bereich auf dem Conveyor festgelegt werden, in dem der Roboter damit beginnt, das Bauteil zu verfolgen. Wenn das Bauteil zum Zeitpunkt des Aufrufs die maximale Conveyor-Distanz (Eingang MaxDistance) bereits überschritten hat, wird der Ausgang MaxDistanceReached gesetzt. 106 Version: 1.4 TC3 Robotics mxAutomation Programmierung Dieser Funktionsbaustein kann nur ausgeführt werden, wenn das AMI mit KRC_ConvOn aktiviert wurde. Hinweis Funktionsbaustein KRC_ConvFollow Eingänge Parameter AxisGroupIdx ExecuteCmd Typ INT BOOL ConveyorNumb INT er StartDistance REAL Beschreibung Index der Achsgruppe • 1…5 Startet/Puffert die Bewegung mit einer steigenden Flanke des Signals. Nummer des Conveyors • 1…3 Verfahrstrecke des Bauteils, die der Roboter abwartet, bevor er mit der Verfolgung des Bauteils auf dem Conveyor beginnt. • Bei einem Linear-Conveyor: Angabe in Millimeter MaxDistance REAL • Bei einem Zirkular-Conveyor: Angabe in Grad Maximale Verfahrstrecke des Bauteils, innerhalb der der Roboter damit beginnt, sich mit dem Bauteil zu synchronisieren. • Bei einem Linear-Conveyor: Angabe in Millimeter • Bei einem Zirkular-Conveyor: Angabe in Grad Hinweis: Dieser Eingang wird während synchronisierten Bewegungen des Conveyors nicht überwacht. Die Distanz, die das Bauteil zurückgelegt hat, wird von einem Interrupt überwacht. Die Einstellungen dazu werden in WorkVisual durchgeführt. BufferMode INT >>> "BufferMode". [} 24] Parameter Busy Typ BOOL Done Aborted BOOL BOOL Beschreibung TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde ausgeführt TRUE = Anweisung wurde abgebrochen Ausgänge TC3 Robotics mxAutomation Version: 1.4 107 Programmierung Parameter Typ MaxDistanceR BOOL eached Error ErrorID BOOL DINT Beschreibung TRUE = Die maximale Verfahrstrecke des Bauteils (Eingang MaxDistance) wurde zum Zeitpunkt der Ausführung bereits überschritten. Die Anweisung wurde nicht ausgeführt. Die Abarbeitung des Programms wird angehalten (WAIT FOR FALSE) und wartet auf einen Abbruch des Programms (Abort). TRUE = Fehler im Funktionsbaustein Fehlernummer 7.13.15 Bauteil von Conveyor aufnehmen Beschreibung Mit dem Funktionsbaustein KRC_ConvSkip wird festgelegt, welche Bauteile aufgenommen werden sollen, z. B. jedes 2. Bauteil, jedes 3. Bauteil usw. Insgesamt können bis zu 1024 Bauteile im Hintergrund überwacht werden. Wenn das Bauteil zum Zeitpunkt des Aufrufs die maximale Conveyor-Distanz (Eingang MaxDistance) bereits überschritten hat, wird der Ausgang MaxDistanceReached gesetzt. Dieser Funktionsbaustein kann nur ausgeführt werden, wenn das AMI mit KRC_ConvOn aktiviert wurde. Hinweis Funktionsbaustein KRC_ConvSkip Eingänge Parameter AxisGroupIdx ExecuteCmd Typ INT BOOL ConveyorNumb INT er PieceNumber INT Beschreibung Index der Achsgruppe • 1…5 Startet/Puffert die Bewegung mit einer steigenden Flanke des Signals. Nummer des Conveyors • 1…3 Die eingegebene Zahl gibt an, welche Bauteile aufgenommen werden sollen. Beispiele: • 1: Jedes Bauteil wird aufgenommen. • 3: Jedes 3. Bauteil wird aufgenommen. • 5: Jedes 5. Bauteil wird aufgenommen. 108 Version: 1.4 TC3 Robotics mxAutomation Programmierung Parameter StartDistance Typ REAL Beschreibung Verfahrstrecke des Bauteils, die der Roboter abwartet, bevor er mit der Verfolgung des Bauteils auf dem Conveyor beginnt. • Bei einem Linear-Conveyor: Angabe in Millimeter MaxDistance REAL • Bei einem Zirkular-Conveyor: Angabe in Grad Maximale Verfahrstrecke des Bauteils, innerhalb der der Roboter damit beginnt, sich mit dem Bauteil zu synchronisieren. • Bei einem Linear-Conveyor: Angabe in Millimeter • Bei einem Zirkular-Conveyor: Angabe in Grad Hinweis: Dieser Eingang wird während synchronisierten Bewegungen des Conveyors nicht überwacht. Die Distanz, die das Bauteil zurückgelegt hat, wird von einem Interrupt überwacht. Die Einstellungen dazu werden in WorkVisual vorgenommen. BufferMode INT >>> "BufferMode". [} 24] Typ BOOL Beschreibung TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde ausgeführt TRUE = Anweisung wurde abgebrochen TRUE = Die maximale Verfahrstrecke des Bauteils (Eingang MaxDistance) wurde zum Zeitpunkt der Ausführung bereits überschritten. Die Anweisung wurde nicht ausgeführt. Die Abarbeitung des Programms wird angehalten (WAIT FOR FALSE) und wartet auf einen Abbruch des Programms (Abort). TRUE = Fehler im Funktionsbaustein Fehlernummer Ausgänge Parameter Busy Done BOOL Aborted BOOL MaxDistanceR BOOL eached Error ErrorID BOOL DINT 7.13.16 Interrupts für Überwachung aktivieren Beschreibung Mit dem Funktionsbaustein KRC_ActivateConvInterrupt werden folgende Interrupts aktiviert: • Überwachung Alarm-Abstand • Überwachung maximaler Abstand • Überwachung $STOPMESS-Fehler Ein Interrupt kann erst dann erfasst werden, wenn der Interrupt vom Hauptlauf des Roboter-Interpreters aktiviert wurde. Die Überwachungen werden durch die Funktionsbausteine KRC_ConvFollow und KRC_ConvSkip aktiviert, sofern diese erfolgreich mit einem Bauteil synchronisiert wurden. Der Aufruf dieses Funktionsbausteins ist nur notwendig, wenn die Überwachung beendet und wieder aktiviert werden soll. TC3 Robotics mxAutomation Version: 1.4 109 Programmierung Funktionsbaustein KRC_ActivateConvInterrupt Eingänge Parameter AxisGroupIdx ExecuteCmd Typ INT BOOL ConveyorNumb INT er BufferMode Beschreibung Index der Achsgruppe • 1…5 Startet/Puffert die Bewegung mit einer steigenden Flanke des Signals. Nummer des Conveyors • 1…3 INT >>> "BufferMode". [} 24] Parameter ErrorID Busy Typ DINT BOOL Done Aborted BOOL BOOL Error BOOL Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde ausgeführt TRUE = Anweisung wurde abgebrochen, bevor sie im Vorlauf bearbeitet wurde TRUE = Fehler im Funktionsbaustein Ausgänge 110 Version: 1.4 TC3 Robotics mxAutomation Programmierung 7.13.17 Interrupts für Überwachung deaktivieren Beschreibung Mit dem Funktionsbaustein KRC_DeactivateConvInterrupt werden folgende Interrupts deaktiviert: • Überwachung Alarm-Abstand • Überwachung maximaler Abstand • Überwachung $STOPMESS-Fehler Es wird empfohlen, diesen Funktionsbaustein aufzurufen, wenn der Conveyor-Bereich verlassen wird oder keine Überwachung gewünscht ist. Hinweis Funktionsbaustein KRC_DeactivateConvInterrupt Eingänge Parameter AxisGroupIdx ExecuteCmd Typ INT BOOL ConveyorNumb INT er BufferMode Beschreibung Index der Achsgruppe • 1…5 Startet/Puffert die Bewegung mit einer steigenden Flanke des Signals. Nummer des Conveyors • 1…3 INT >>> "BufferMode". [} 24] Parameter ErrorID Busy Typ DINT BOOL Done Aborted BOOL BOOL Error BOOL Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde ausgeführt TRUE = Anweisung wurde abgebrochen, bevor sie im Vorlauf bearbeitet wurde TRUE = Fehler im Funktionsbaustein Ausgänge 7.13.18 Bewegung entlang eines Vektors aktivieren Beschreibung Mit dem Funktionsbaustein KRC_VectorMoveOn kann ein Roboter durch eine extern einwirkende Kraft entlang eines definierten Vektors im kartesischen Raum bewegt werden. TC3 Robotics mxAutomation Version: 1.4 111 Programmierung Funktionsbaustein KRC_VectorMoveOn Eingänge Parameter AxisGroupIdx Typ INT ExecuteCmd BOOL X Y Z A B C REAL REAL REAL REAL REAL REAL Beschreibung Index der Achsgruppe • 1…5 Startet/Puffert die Bewegung mit einer steigenden Flanke des Signals. Definiert die Richtung des Vektors Der Vektor muss in Bezug auf den TCP des TOOL-Koordinatensystems angegeben werden. Der letzte geteachte Punkt vor dem Aufruf des Funktionsbausteins ist der Fußpunkt des Vektors. Begrenzungen: • Translatorische Bewegung (X, Y, Z): max. 200 mm in positiver und negativer Richtung VectorLimit MaxDuration REAL REAL TorqueOffsetV REAL alue • Rotatorische Bewegung (A, B, C): max. 30° in positiver und negativer Richtung Zulässige Überschreitung der Länge des Vektors (Einheit: %) Wenn dieser Wert überschritten wird, wird der Roboter mit einem Rampenstopp angehalten. Zeit, nach der VectorMove deaktiviert wird, wenn ein Fehler aufgetreten ist (Einheit: s) Definiert das Widerstandsmoment des Roboters (Einheit: Nm) Das Widerstandsmoment ist das Moment, mit dem der Roboter der externen Kraft entgegenwirkt. Es dient dazu, dass der Roboter erst ab einer bestimmten Krafteinwirkung beginnt, sich zu bewegen. Das Widerstandsmoment kann zusätzlich zum Haltemoment definiert werden. Das Haltemoment ist abhängig von der Stellung, dem Typ und der Größe des Roboters sowie von der zusätzlich angebrachten Last. BufferMode 112 INT >>> "BufferMode". [} 24] Version: 1.4 TC3 Robotics mxAutomation Programmierung Ausgänge Parameter ErrorID Busy Typ DINT BOOL Done Aborted BOOL BOOL Error BOOL Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde ausgeführt TRUE = Anweisung wurde abgebrochen, bevor sie im Vorlauf bearbeitet wurde TRUE = Fehler im Funktionsbaustein 7.13.19 KRC_VectorMoveOn deaktivieren Beschreibung Mit dem Funktionsbaustein KRC_VectorMoveOff wird der Funktionsbaustein KRC_VectorMoveOn deaktiviert. Funktionsbaustein KRC_VectorMoveOff Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe ExecuteCmd BOOL • 1…5 Startet/Puffert die Bewegung mit einer steigenden Flanke des Signals. BufferMode INT >>> "BufferMode". [} 24] Parameter ErrorID Busy Typ DINT BOOL Done Aborted BOOL BOOL Error BOOL Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde ausgeführt TRUE = Anweisung wurde abgebrochen, bevor sie im Vorlauf bearbeitet wurde TRUE = Fehler im Funktionsbaustein Ausgänge TC3 Robotics mxAutomation Version: 1.4 113 Programmierung 7.13.20 Kartesische Arbeitsräume konfigurieren Beschreibung Mit dem Funktionsbaustein KRC_WriteWorkspace werden kartesische (= kubische) Arbeitsräume für den Roboter konfiguriert. Arbeitsräume dienen dem Anlagenschutz. Maximal 8 kartesische Arbeitsräume können gleichzeitig konfiguriert werden. Die Arbeitsräume dürfen sich überlappen. Funktionsbaustein KRC_WriteWorkspace Eingänge Parameter AxisGroupIdx Typ INT ExecuteCmd BOOL WorkspaceNo INT WorkspaceMod INT e Beschreibung Index der Achsgruppe • 1…5 Startet/Puffert die Bewegung mit einer steigenden Flanke des Signals. Nummer des Arbeitsraums • 1…8 Modus für Arbeitsräume • 0: #OFF • 1: #INSIDE • 2: #OUTSIDE • 3: #INSIDE_STOP • 4: #OUTSIDE_STOP Hinweis: Weitere Informationen zum Modus für Arbeitsräume sind sind in der Bedien- und Programmieranleitung der KUKA System Software (KSS) zu finden. WorkspaceDat BOX a >>> "Daten eines kartesischen Arbeitsraums". [} 26] BufferMode INT >>> "BufferMode". [} 24] Parameter ErrorID Busy Typ DINT BOOL Done Aborted BOOL BOOL Error BOOL Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde ausgeführt TRUE = Anweisung wurde abgebrochen, bevor sie im Vorlauf bearbeitet wurde TRUE = Fehler im Funktionsbaustein Ausgänge 114 Version: 1.4 TC3 Robotics mxAutomation Programmierung 7.13.21 Konfiguration der kartesischen Arbeitsräume lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadWorkspace wird die Konfiguration der kartesischen Arbeitsräume für den Roboter gelesen. Funktionsbaustein KRC_ReadWorkspace Eingänge Parameter AxisGroupIdx Typ INT ExecuteCmd BOOL WorkspaceNo INT Beschreibung Index der Achsgruppe • 1…5 Startet/Puffert die Bewegung mit einer steigenden Flanke des Signals. Nummer des Arbeitsraums • 1…8 Ausgänge Parameter Typ Done BOOL WorkspaceMod INT e Beschreibung TRUE = Anweisung wurde ausgeführt Modus für Arbeitsräume • 0: #OFF • 1: #INSIDE • 2: #OUTSIDE • 3: #INSIDE_STOP • 4: #OUTSIDE_STOP Hinweis: Weitere Informationen zum Modus für Arbeitsräume sind sind in der Bedien- und Programmieranleitung der KUKA System Software (KSS) zu finden. WorkspaceDat BOX a Error ErrorID BOOL DINT >>> "Daten eines kartesischen Arbeitsraums". [} 26] TRUE = Fehler im Funktionsbaustein Fehlernummer 7.13.22 Achsspezifische Arbeitsräume konfigurieren Beschreibung Mit dem Funktionsbaustein KRC_WriteAxWorkspace werden achsspezifische Arbeitsräume für den Roboter konfiguriert. Diese dienen dem Anlagenschutz. Maximal 8 achsspezifische Arbeitsräume können gleichzeitig konfiguriert werden. Die Arbeitsräume dürfen sich überlappen. TC3 Robotics mxAutomation Version: 1.4 115 Programmierung Funktionsbaustein KRC_WriteAxWorkspace Eingänge Parameter AxisGroupIdx Typ INT ExecuteCmd BOOL WorkspaceNo INT WorkspaceMod INT e Beschreibung Index der Achsgruppe • 1…5 Startet/Puffert die Bewegung mit einer steigenden Flanke des Signals. Nummer des Arbeitsraums • 1…8 Modus für Arbeitsräume • 0: #OFF • 1: #INSIDE • 2: #OUTSIDE • 3: #INSIDE_STOP • 4: #OUTSIDE_STOP Hinweis: Weitere Informationen zum Modus für Arbeitsräume sind sind in der Bedien- und Programmieranleitung der KUKA System Software (KSS) zu finden. WorkspaceDat AXBOX a >>> "Daten eines achsspezifischen Arbeitsraums". [} 26] BufferMode INT >>> "BufferMode". [} 24] Parameter ErrorID Busy Typ DINT BOOL Done Aborted BOOL BOOL Error BOOL Beschreibung Fehlernummer TRUE = Anweisung wird aktuell übertragen oder wurde bereits übertragen TRUE = Anweisung wurde ausgeführt TRUE = Anweisung wurde abgebrochen, bevor sie im Vorlauf bearbeitet wurde TRUE = Fehler im Funktionsbaustein Ausgänge 7.13.23 Konfiguration der achsspezifischen Arbeitsräume lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadAxWorkspace wird die Konfiguration der achsspezifischen Arbeitsräume für den Roboter gelesen. 116 Version: 1.4 TC3 Robotics mxAutomation Programmierung Funktionsbaustein KRC_ReadAxWorkspace Eingänge Parameter AxisGroupIdx Typ INT ExecuteCmd BOOL WorkspaceNo INT Beschreibung Index der Achsgruppe • 1…5 Startet/Puffert die Bewegung mit einer steigenden Flanke des Signals. Nummer des Arbeitsraums • 1…8 Ausgänge Parameter Typ Done BOOL WorkspaceMod INT e Beschreibung TRUE = Anweisung wurde ausgeführt Modus für Arbeitsräume • 0: #OFF • 1: #INSIDE • 2: #OUTSIDE • 3: #INSIDE_STOP • 4: #OUTSIDE_STOP Hinweis: Weitere Informationen zum Modus für Arbeitsräume sind sind in der Bedien- und Programmieranleitung der KUKA System Software (KSS) zu finden. WorkspaceDat AXBOX a Error ErrorID BOOL DINT >>> "Daten eines achsspezifischen Arbeitsraums". [} 26] TRUE = Fehler im Funktionsbaustein Fehlernummer TC3 Robotics mxAutomation Version: 1.4 117 Programmierung 7.13.24 Status der Arbeitsräume lesen Beschreibung Mit dem Funktionsbaustein KRC_ReadWorkstates wird der aktuelle Status der Arbeitsräume gelesen. Der Status der Arbeitsräume wird zyklisch aktualisiert. Funktionsbaustein KRC_ReadWorkstates Eingänge Parameter AxisGroupIdx Typ INT Beschreibung Index der Achsgruppe • 1…5 Ausgänge Parameter Valid WORKSTATE1 WORKSTATE2 WORKSTATE3 WORKSTATE4 WORKSTATE5 WORKSTATE6 WORKSTATE7 WORKSTATE8 AXWORKSTATE1 AXWORKSTATE2 AXWORKSTATE3 AXWORKSTATE4 AXWORKSTATE5 AXWORKSTATE6 AXWORKSTATE7 AXWORKSTATE8 Error 118 Typ BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL BOOL Beschreibung TRUE = Daten sind gültig Status der Arbeitsräume TRUE = Fehler im Funktionsbaustein Version: 1.4 TC3 Robotics mxAutomation Programmierung Parameter ErrorID Typ DINT TC3 Robotics mxAutomation Beschreibung Fehlernummer Version: 1.4 119 Meldungen 8 Meldungen 8.1 Fehlermeldungen der mxA-Schnittstelle im RoboterInterpreter Nr. 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 16 Meldungstext — INTERNAL ERROR ASSERT FAILED OVERFLOW STATUS RETURN QUEUE (MAIN) OVERFLOW STATUS RETURN QUEUE (TRIGGER) INVALID COMMAND QUEUE INDEX INVALID COMMAND STATE INVALID COMMAND ID INVALID MOVE TYPE OVERFLOW TRIGGER FIFO UNDERFLOW TRIGGER FIFO INVALID TRIGGER FIFO INDEX EXECUTION OF T_AFTER MISSING EXECUTION OF T_START MISSING INVALID ADVANCE_ACT TIMEOUT HEARTBEAT FROM PLC Ursache — Interner Ausnahmefehler Abhilfe — Service anrufen. Interner Ausnahmefehler Es sind mehr als 100 Rückmeldungen von Statusänderungen von der Robotersteuerung an die SPS zu übertragen. Wenn dies nicht möglich ist, Service anrufen. Die Übertragungsgeschwindigkeit ist wesentlich kleiner als die Verarbeitungsgeschwindigkeit. Interner Ausnahmefehler Interner Ausnahmefehler Interner Ausnahmefehler Interner Ausnahmefehler Interner Ausnahmefehler Interner Ausnahmefehler Interner Ausnahmefehler Interner Ausnahmefehler Interner Ausnahmefehler Interner Ausnahmefehler Verbindung zur SPS unterbrochen: SPS-Programm gestoppt Verbindungsleitung defekt oder nicht korrekt angeschlossen 17 120 INVALID ORDERID (INVERSE) Service anrufen. Interner Ausnahmefehler Version: 1.4 Verbindung wiederherstellen, dann Fehler quittieren: SPS-Programm neu starten. Verbindungsleitung austauschen oder korrekt anschließen. Service anrufen. TC3 Robotics mxAutomation Meldungen Nr. 30 31 32 Meldungstext INVALID PTP APO INVALID CP APO INVALID BASE NUMBER Ursache Für eine PTP-Bewegung wurde ein ungültiger Überschleifparameter übergeben. Für eine CP-Bewegung (LIN, CIRC) wurde ein ein ungültiger Überschleifparameter übergeben. Im Funktionsbaustein KRC_ReadBaseData oder KRC_WriteBaseData wurde eine ungültige Nummer für das BASE-Koordinatensystem programmiert. Abhilfe >>> "APO". [} 21] Die Nummer des BASEKoordinatensystems angeben, das aktuell in der Robotersteuerung verwendet wird (Parameter BaseNo). • 1 … 32 33 34 35 INVALID TOOL NUMBER INVALID VELOCITY In einem KRC_Move- oder KRC_JogFunktionsbaustein wurde eine ungültige Nummer für das BASE-Koordinatensystem programmiert. Im Funktionsbaustein KRC_ReadToolData oder KRC_WriteToolData wurde eine ungültige Nummer für das TOOL-Koordinatensystem programmiert. >>> "COORDSYS". [} 22] Die Nummer des TOOLKoordinatensystems angeben, das aktuell in der Robotersteuerung verwendet wird (Parameter ToolNo). • 1 … 16 In einem KRC_Move- oder KRC_Jog >>> "COORDSYS". [} 22] Funktionsbaustein wurde eine ungültige Nummer für das TOOL-Koordinatensystem programmiert. In einem Funktionsbaustein wurde ein ungültiger Wert Gültigen Wert für die Geschwindigkeit programmiert. programmieren (Parameter Velocity): • 0 … 100 % INVALID In einem Funktionsbaustein wurde ein ungültiger Wert Gültigen Wert ACCELERATION für die Beschleunigung programmiert. programmieren (Parameter Acceleration): • 0 … 100 % 36 37 38 39 40 41 42 INVALID C_PTP Für eine PTP-Bewegung wurde eine ungültige Überschleifdistanz übergeben. INVALID C_DIS Für eine überschliffene Bewegung wurde ein ungültiger Distanzparameter übergeben. INVALID C_VEL Für eine überschliffene Bewegung wurde ein ungültiger Geschwindigkeitsparameter übergeben. INVALID C_ORI Für eine überschliffene Bewegung wurde ein ungültiger Orientierungsparameter übergeben. INVALID In einem KRC_Move- oder KRC_JogORI_TYPE Funktionsbaustein wurde ein ungültiger Wert für die Orientierungsführung des TCP programmiert. POSITION DATA Beim Aufruf eines KRC_Move-Funktionsbausteins NOT wurde keine Zielposition übergeben. INITIALIZED AXISPOSITION Beim Aufruf eines KRC_MoveAxis-Funktionsbausteins DATA NOT wurde keine Achsposition übergeben. INITIALIZED TC3 Robotics mxAutomation Version: 1.4 >>> "APO". [} 21] >>> "OriType". [} 25] >>> "E6POS". [} 23] >>> "E6AXIS". [} 22] 121 Meldungen Nr. 43 Meldungstext INVALID TRIGGER DISTANCE Ursache In einem Funktionsbaustein KRC_SetDistanceTrigger wurde ein ungültiger Wert für den Schaltpunkt des Triggers programmiert. Abhilfe Gültigen Wert programmieren (Parameter Distance): • 0: Schaltaktion im Startpunkt 44 INVALID TRIGGER IO In einem Funktionsbaustein KRC_SetDistanceTrigger oder KRC_SetPathTrigger wurde ein ungültiger Ausgang programmiert. • 1: Schaltaktion im Zielpunkt Gültigen Wert programmieren (Parameter Output): 45 INVALID TRIGGER PULSE In einem Funktionsbaustein KRC_SetDistanceTrigger oder KRC_SetPathTrigger wurde ein ungültiger Wert für die Länge des Impulses programmiert. • 1 … 2 048 Gültigen Wert programmieren (Parameter Pulse): • 0.1 … 3.0 s • 0.0 s (Kein Puls aktiv) 46 47 48 INVALID CIRC_HP INVALID INTERRUPT IO Beim Aufruf eines KRC_MoveCirc-Funktionsbausteins wurde keine Hilfsposition übergeben. Die Nummer des digitalen Eingangs, auf den ein Interrupt deklariert ist, ist ungültig (Funktionsbaustein KRC_DeclareInterrupt). INVALID INTERRUPT PRIORITY Beim Aufruf eines KRC_…InterruptFunktionsbausteins wurde eine ungültige Nummer übergeben. >>> "E6AXIS". [} 22] Gültigen Wert programmieren (Parameter Input): • 1 … 2 048 Gültigen Wert programmieren (Parameter Interrupt): • 1 … 8 49 INTERRUPT Interrupt wurde nicht deklariert. NOT DECLARED 50 INVALID INTERRUPT ACTION INVALID IO NUMBER 51 52 >>> "Interrupt deklarieren". [} 54] Die Reaktion auf den Interrupt, die bei der Deklaration >>> "Interrupt eines Interrupts programmiert wurde, ist ungültig. deklarieren". [} 54] Die Nummer des digitalen Eingangs, auf den ein Interrupt deklariert ist, ist ungültig (Funktionsbaustein KRC_DeclareInterrupt). Gültigen Wert programmieren (Parameter Input): • 1 … 2 048 INVALID PULSE Im Funktionsbaustein KRC_ WriteDigitalOutput wurde Gültigen Wert DURATION ein ungültiger Wert für die Länge des Impulses programmieren (Parameter programmiert. Pulse): • 0.1 … 3.0 s • 0.0 s (Kein Puls aktiv) 53 54 55 INVALID In einem Funktionsbaustein wurde ein ungültiger BUFFER_MODE BufferMode programmiert. Z. B. steht bei einigen Funktionsbausteinen der Modus DIRECT nicht Verfügung. INVALID TOOL Im Funktionsbaustein KRC_ReadLoadData oder NUMBER FOR KRC_WriteLoadData wurde eine ungültige Nummer LOAD_DATA zum Lesen oder Schreiben der Lastdaten oder der Zusatzlastdaten programmiert. INVALID In einem Funktionsbaustein wurde eine ungültige ANALOG IO Nummer für den analogen Ein- oder Ausgang NUMBER programmiert. >>> "BufferMode". [} 24] >>> "Lastdaten schreiben". [} 50] Gültigen Wert programmieren (Parameter Number): • 1 … 32 122 Version: 1.4 TC3 Robotics mxAutomation Meldungen Nr. 56 57 58 59 Meldungstext INVALID IPO_MODE Ursache In einem Funktionsbaustein wurde ein ungültiger Wert für den Interpolationsmodus programmiert, z. B. in einem KRC_Move-Funktionsbaustein. INVALID In einem KRC_MoveCirc-Funktionsbaustein wurde ein CIRC_TYPE ungültiger Wert für die Orientierungsführung während der Kreisbewegung programmiert. INVALID FRAME In einem KRC_WriteToolData- oder DATA KRC_WriteBaseData-Funktionsbaustein wurden ungültige TOOL- oder BASE-Daten programmiert. INVALID LOAD In einem KRC_WriteLoadData-Funktionsbaustein DATA wurden ungültige Lastdaten programmiert. Abhilfe >>> "COORDSYS". [} 22] >>> "CircType". [} 24] >>> "BASE-Daten schreiben". [} 48] >>> "Lastdaten schreiben". [} 50] Für die negativen Software-Endschalter kleinere Wert programmieren als für die positiven SoftwareEndschalter. Service anrufen. 60 INVALID SOFT_END (REVERSED) Fehler beim Schreiben der Software-Endschalter: Positiver Software-Endschalter < negativer SoftwareEndschalter (Funktionsbaustein KRC_WriteSoftEnd oder KRC_WriteSoftEndEx) 61 INVALID INTERRUPT STATE INVALID SYS VAR INDEX Interner Ausnahmefehler 63 INVALID SYS VAR VALUE In einem KRC_WriteSysVar-Funktionsbaustein wurde Gültigen Wert ein ungültiger Wert für die Systemvariable programmieren (Parameter programmiert. Value1 … Value10). 64 SYS VAR NOT WRITEABLE Beim Schreiben einer Systemvariablen ist ein Fehler aufgetreten. 62 65 66 INVALID REAL VALUE ERROR SETTING OUTPUT 67 ERROR SETTING SOFTEND 68 INVALID TECH FUNCTION INDEX INVALID TECH FUNCTION PARAMETER INVALID PARAMETER VALUE 69 70 In einem KRC_ReadSysVar- oder KRC_WriteSysVar- Gültigen Wert Funktionsbaustein wurde ein Index übergeben, für den programmieren (Parameter keine Systemvariable hinterlegt ist. Index). Die angegebene Systemvariable existiert nicht oder darf im aktuellen Betriebszustand nicht beschrieben werden. Der programmierte Real-Wert ist ungültig. Gültigen Wert programmieren: Fehler beim Schreiben eines digitalen Ausgangs. Möglicherweise ist der Ausgang bereits vom System belegt. • -2.147.483.500 … +2.147.483.500 Einen anderen digitalen Ausgang verwenden (Parameter Number): • 1 … 2 048 Fehler beim Schreiben der Software-Endschalter: Ein Gültige Werte für die möglicher Fehler ist z. B, dass eine rotatorische Achse Software-Endschalter mit einem Wert außerhalb +/-360° beschrieben wird. programmieren (siehe Maschinendaten). In einem KRC_TechFunction-Funktionsbaustein wurde Service anrufen. eine TechFunctionID übergeben, für die keine Technologiefunktion hinterlegt ist. In einem KRC_TechFunction-Funktionsbaustein wurde Service anrufen. ein ungültiger Wert für einen Parameter programmiert. Im aufgerufenen Funktionsbaustein wurde ein ungültiger Wert für einen oder mehrere Parameter programmiert. TC3 Robotics mxAutomation Version: 1.4 Gültige Werte für die Parameter programmieren. 123 Meldungen 8.2 Nr. 401 402 403 404 405 406 407 408 409 410 411 412 413 124 Fehlermeldungen der mxA-Schnittstelle im SubmitInterpreter Meldungstext INTERNAL ERROR ASSERT FAILED INVALID COMMAND ID INVALID COMMAND STATE OVERFLOW COMMAND QUEUE INVALID COMMAND QUEUE INDEX INVALID COMMAND (PRE) QUEUE INDEX INVALID WRITE_Q_IDX AND WRITE_PRE_Q_ IDX OVERFLOW STATUS RETURN QUEUE (SUBMIT) INVALID FIELDBUS TELEGRAMM LENGTH TIMEOUT ABORT_REQUE ST INVALID CHECKSUM PLC -> KRC INVALID MOVE TYPE Ursache Interner Ausnahmefehler Abhilfe Service anrufen. Interner Ausnahmefehler Interner Ausnahmefehler Interner Ausnahmefehler Interner Ausnahmefehler Interner Ausnahmefehler Interner Ausnahmefehler Interner Ausnahmefehler Es sind mehr als 100 Rückmeldungen von Statusänderungen von der Robotersteuerung an die SPS zu übertragen. Wenn dies nicht möglich ist, Service anrufen. Die Übertragungsgeschwindigkeit ist wesentlich kleiner als die Verarbeitungsgeschwindigkeit. Interner Ausnahmefehler Service anrufen. Interner Ausnahmefehler Die Prüfsumme bei der Datenübertragung von der SPS an die Robotersteuerung ist ungültig: Fehler bei der Inbetriebnahme: Konfiguration in WorkVisual und TwinCAT • EtherCAT-Konfiguration in WorkVisual oder überprüfen und EtherCAT TwinCAT fehlerhaft korrekt konfigurieren. Fehler im laufenden Betrieb: Service anrufen. • Bitfehler bei der Datenübertragung Interner Ausnahmefehler Version: 1.4 Service anrufen. TC3 Robotics mxAutomation Meldungen Nr. 414 Meldungstext TIMEOUT HEARTBEAT FROM PLC 416 SYS VAR NOT INITIALIZED 417 418 419 420 421 422 423 424 425 426 430 431 432 UNDERFLOW OF NIBBLE OVERFLOW OF NIBBLE UNDERFLOW OF BYTE OVERFLOW OF BYTE UNDERFLOW OF INT16 OVERFLOW OF INT16 UNDERFLOW OF INT32 OVERFLOW OF INT32 UNDERFLOW OF REAL OVERFLOW OF REAL INVALID PTP APO INVALID CP APO INVALID BASE NUMBER Ursache Verbindung zur SPS unterbrochen: Abhilfe Verbindung wiederherstellen, dann Fehler quittieren: SPS-Programm gestoppt SPS-Programm neu starten. Submit-Interpeter abgewählt oder gestoppt Submit-Interpeter neu starten. Verbindungsleitung defekt oder nicht korrekt Verbindungsleitung angeschlossen austauschen oder korrekt anschließen. Beim Lesen einer Systemvariablen ist ein Fehler aufgetreten. Die angegebene Systemvariable existiert nicht oder darf im aktuellen Betriebszustand nicht gelesen werden. Beispiel: Auf $POS_ACT kann erst nach einer SAK-Fahrt zugegriffen werden. Interner Ausnahmefehler Service anrufen. Interner Ausnahmefehler Interner Ausnahmefehler Interner Ausnahmefehler Interner Ausnahmefehler Interner Ausnahmefehler Interner Ausnahmefehler Interner Ausnahmefehler Interner Ausnahmefehler Interner Ausnahmefehler Für eine PTP-Bewegung wurde ein ungültiger Überschleifparameter übergeben. Für eine CP-Bewegung (LIN, CIRC) wurde ein ein ungültiger Überschleifparameter übergeben. Im Funktionsbaustein KRC_ReadBaseData oder KRC_WriteBaseData wurde eine ungültige Nummer für das BASE-Koordinatensystem programmiert. >>> "APO". [} 21] Die Nummer des BASEKoordinatensystems angeben, das aktuell in der Robotersteuerung verwendet wird (Parameter BaseNo). • 1 … 32 In einem KRC_Move- oder KRC_JogFunktionsbaustein wurde eine ungültige Nummer für das BASE-Koordinatensystem programmiert. TC3 Robotics mxAutomation Version: 1.4 >>> "COORDSYS". [} 22] 125 Meldungen Nr. 433 Meldungstext INVALID TOOL NUMBER Ursache Im Funktionsbaustein KRC_ReadToolData oder KRC_WriteToolData wurde eine ungültige Nummer für das TOOL-Koordinatensystem programmiert. Abhilfe Die Nummer des TOOLKoordinatensystems angeben, das aktuell in der Robotersteuerung verwendet wird (Parameter ToolNo). • 1 … 16 434 435 INVALID VELOCITY In einem KRC_Move- oder KRC_Jog >>> "COORDSYS". [} 22] Funktionsbaustein wurde eine ungültige Nummer für das TOOL-Koordinatensystem programmiert. In einem Funktionsbaustein wurde ein ungültiger Wert Gültigen Wert für die Geschwindigkeit programmiert. programmieren (Parameter Velocity): • 0 … 100 % INVALID In einem Funktionsbaustein wurde ein ungültiger Wert Gültigen Wert ACCELERATION für die Beschleunigung programmiert. programmieren (Parameter Acceleration): • 0 … 100 % 436 437 438 439 440 441 442 443 INVALID C_PTP Für eine PTP-Bewegung wurde eine ungültige Überschleifdistanz übergeben. INVALID C_DIS Für eine überschliffene Bewegung wurde ein ungültiger Distanzparameter übergeben. INVALID C_VEL Für eine überschliffene Bewegung wurde ein ungültiger Geschwindigkeitsparameter übergeben. INVALID C_ORI Für eine überschliffene Bewegung wurde ein ungültiger Orientierungsparameter übergeben. INVALID In einem KRC_Move- oder KRC_JogORI_TYPE Funktionsbaustein wurde ein ungültiger Wert für die Orientierungsführung des TCP programmiert. POSITION DATA Beim Aufruf eines KRC_Move-Funktionsbausteins NOT wurde keine Zielposition übergeben. INITIALIZED AXISPOSITION Beim Aufruf eines KRC_MoveAxis-Funktionsbausteins DATA NOT wurde keine Achsposition übergeben. INITIALIZED INVALID Im Funktionsbaustein KRC_SetDistanceTrigger wurde TRIGGER ein ungültiger Wert für den Schaltpunkt des Triggers DISTANCE programmiert. >>> "APO". [} 21] >>> "OriType". [} 25] >>> "E6POS". [} 23] >>> "E6AXIS". [} 22] Gültigen Wert programmieren (Parameter Distance): • 0: Schaltaktion im Startpunkt 444 445 INVALID TRIGGER IO INVALID TRIGGER PULSE In einem Funktionsbaustein KRC_SetDistanceTrigger oder KRC_SetPathTrigger wurde ein ungültiger Ausgang programmiert. • 1: Schaltaktion im Zielpunkt Gültigen Wert programmieren (Parameter Output): In einem Funktionsbaustein KRC_SetDistanceTrigger oder KRC_SetPathTrigger wurde ein ungültiger Wert für die Länge des Impulses programmiert. • 1 … 2 048 Gültigen Wert programmieren (Parameter Pulse): • 0.1 … 3.0 s • 0.0 s (Kein Puls aktiv) 446 126 INVALID CIRC_HP Beim Aufruf eines KRC_MoveCirc-Funktionsbausteins >>> "E6AXIS". [} 22] wurde keine Hilfsposition übergeben. Version: 1.4 TC3 Robotics mxAutomation Meldungen Nr. 447 Meldungstext INVALID INTERRUPT IO Ursache Die Nummer des digitalen Eingangs, auf den ein Interrupt deklariert ist, ist ungültig (Funktionsbaustein KRC_DeclareInterrupt). Abhilfe Gültigen Wert programmieren (Parameter Input): 448 INVALID INTERRUPT NUMBER/ PRIORITY Beim Aufruf eines KRC_…InterruptFunktionsbausteins wurde eine ungültige Nummer übergeben. • 1 … 2 048 Gültigen Wert programmieren (Parameter Interrupt): • 1 … 8 449 INTERRUPT Interrupt wurde nicht deklariert. NOT DECLARED 450 INVALID INTERRUPT ACTION INVALID IO NUMBER 451 >>> "Interrupt deklarieren". [} 54] Die Reaktion auf den Interrupt, die bei der Deklaration >>> "Interrupt eines Interrupts programmiert wurde, ist ungültig. deklarieren". [} 54] Die Nummer des digitalen Eingangs, auf den ein Interrupt deklariert ist, ist ungültig (Funktionsbaustein KRC_DeclareInterrupt). Gültigen Wert programmieren (Parameter Input): • 1 … 2 048 452 453 454 455 INVALID PULSE Im Funktionsbaustein KRC_ WriteDigitalOutput wurde DURATION ein ungültiger Wert für die Länge des Impulses programmiert. INVALID In einem Funktionsbaustein wurde ein ungültiger BUFFER_MODE BufferMode programmiert. Z. B. steht bei einigen Funktionsbausteinen der Modus DIRECT nicht Verfügung. INVALID TOOL Im Funktionsbaustein KRC_ReadLoadData oder NUMBER FOR KRC_WriteLoadData wurde eine ungültige Nummer LOAD_DATA zum Lesen oder Schreiben der Lastdaten oder der Zusatzlastdaten programmiert. INVALID In einem Funktionsbaustein wurde eine ungültige ANALOG IO Nummer für den Analogeingang oder -ausgang NUMBER programmiert. >>> "Digitalen Ausgang schreiben". [} 41] >>> "BufferMode". [} 24] >>> "Lastdaten schreiben". [} 50] Gültige Nummer programmieren (Parameter Number): • 1 … 32 456 457 458 459 INVALID IPO_MODE In einem Funktionsbaustein wurde ein ungültiger Wert für den Interpolationsmodus programmiert, z. B. in einem KRC_Move-Funktionsbaustein. INVALID In einem KRC_MoveCirc-Funktionsbaustein wurde ein CIRC_TYPE ungültiger Wert für die Orientierungsführung während der Kreisbewegung programmiert. INVALID FRAME In einem KRC_WriteToolData- oder DATA KRC_WriteBaseData-Funktionsbaustein wurden ungültige TOOL- oder BASE-Daten programmiert. INVALID LOAD In einem KRC_WriteLoadData-Funktionsbaustein DATA wurden ungültige Lastdaten programmiert. 460 INVALID SOFT_END (REVERSED) Fehler beim Schreiben der Software-Endschalter: Positiver Software-Endschalter < negativer SoftwareEndschalter 461 INVALID INTERRUPT STATE Interner Ausnahmefehler TC3 Robotics mxAutomation Version: 1.4 >>> "COORDSYS". [} 22] >>> "CircType". [} 24] >>> "BASE-Daten schreiben". [} 48] >>> "Lastdaten schreiben". [} 50] Für die negativen Software-Endschalter kleinere Wert programmieren als für die positiven SoftwareEndschalter. Service anrufen. 127 Meldungen Nr. 462 Meldungstext INVALID SYS VAR INDEX Ursache In einem KRC_ReadSysVar- oder KRC_WriteSysVarFunktionsbaustein wurde ein Index übergeben, für den keine Systemvariable hinterlegt ist. 463 INVALID SYS VAR VALUE In einem KRC_WriteSysVar-Funktionsbaustein wurde Gültigen Wert ein ungültiger Wert für die Systemvariable programmieren (Parameter programmiert. Value1 … Value10). 464 SYS VAR NOT WRITEABLE Beim Schreiben einer Systemvariablen ist ein Fehler aufgetreten. 465 466 INVALID REAL VALUE ERROR SETTING OUTPUT 467 ERROR SETTING SOFTEND 468 INVALID TECH FUNCTION INDEX INVALID TECH FUNCTION PARAMETER INVALID PARAMETER VALUE 469 470 8.3 Nr. 501 502 Abhilfe Gültigen Wert programmieren (Parameter Index). Die angegebene Systemvariable existiert nicht oder darf im aktuellen Betriebszustand nicht beschrieben werden. Der programmierte Real-Wert ist ungültig. Gültigen Wert programmieren: Fehler beim Schreiben eines Ausgangs. Möglicherweise ist der Ausgang bereits vom System belegt. • -2.147.483.500 … +2.147.483.500 Einen anderen digitalen Ausgang verwenden (Parameter Number): • 1 … 2 048 Beim Schreiben eines Software-Endschalters ist ein Gültige Werte für die Fehler aufgetreten. Software-Endschalter programmieren (siehe Ein möglicher Fehler ist z. B, dass eine rotatorische Achse mit einem Wert außerhalb +/-360° beschrieben Maschinendaten). wird. In einem KRC_TechFunction-Funktionsbaustein wurde Service anrufen. eine TechFunctionID übergeben, für die keine Technologiefunktion hinterlegt ist. In einem KRC_TechFunction-Funktionsbaustein wurde Service anrufen. ein ungültiger Wert für einen Parameter programmiert. Im aufgerufenen Funktionsbaustein wurde ein ungültiger Wert für einen oder mehrere Parameter programmiert. Gültige Werte für die Parameter programmieren. Fehler im Funktionsbaustein Meldungstext INTERNAL ERROR INVALID BUFFER_MODE Ursache Interner Ausnahmefehler Abhilfe Service anrufen. BufferMode 0: DIRECT ist für diesen Funktionsbaustein nicht zulässig. Richtigen Modus programmieren: • 1: ABORTING • 2: BUFFERED 503 INVALID MXA VERSION Die Software-Versionen von mxA-Schnittstelle und SPS-Bibliothek sind nicht kompatibel. 504 INVALID OVERRIDE Ungültiger Override-Wert im Funktionsbaustein KRC_SetOverride >>> "mxA-Schnittstelle initialisieren". [} 30] Gültigen Wert programmieren (Parameter Override). • 0 … 100 % 128 Version: 1.4 TC3 Robotics mxAutomation Meldungen Nr. 505 Meldungstext MAX GROUP REF IDX REACHED 506 INVALID Der im Funktionsbaustein angegebene Index der GROUPREFIDX Achsgruppe ist ungültig. 507 INVALID FB ORDER Die Reihenfolge, in der die Funktionsbausteine aufgerufen wurden, ist ungültig. 508 CONNECTION NOT INITIALIZED NO CONNECTION TO KRC Es können keine Anweisungen übertragen werden, da >>> "mxA-Schnittstelle die mxA-Schnittstelle nicht initialisiert worden ist. initialisieren". [} 30] 509 510 TIMEOUT HEARTBEAT FROM KRC 511 TIMEOUT CMD INTERFACE BLOCKED 512 INVALID CHECKSUM KRC -> PLC 513 INVALID POSITION INDEX Ursache Der im Funktionsbaustein KRC_ReadAxisGroup angegebene Index der Achsgruppe ist bereits belegt. Abhilfe Den Funktionsbaustein KRC_ReadAxisGroup in einem Programm nur einfach instanziieren. Einen gültigen Index für die Achsgruppe angeben (Parameter AxisGroupIdx). Funktionsbausteine in der richtigen Reihenfolge programmieren. Verbindung zur Robotersteuerung unterbrochen: Verbindung wiederherstellen, dann Fehler quittieren: Robotersteuerung ausgeschaltet Robotersteuerung neu starten. Submit-Interpeter abgewählt oder gestoppt Submit-Interpeter neu starten. Busfehler oder E/A-Konfiguration fehlerhaft E/A-Konfiguration überprüfen. Verbindungsleitung defekt oder nicht korrekt Verbindungsleitung angeschlossen austauschen oder korrekt anschließen. Maximale Zykluszeit des Submit-Interpreters zu gering Im Funktionsbaustein (Nur für Meldung Nr. 510) KRC_DIAG den Wert für MaxSubmitCycle erhöhen. Der Eingang ExecuteCmd wurde zurückgesetzt, bevor Meldung quittieren und das Busy-Signal gesetzt wurde. zukünftig den ExecuteCmd-Eingang erst zurücksetzen, nachdem das Done-, Error- oder Aborted-Signal gesetzt wurde. Die Prüfsumme bei der Datenübertragung von der Robotersteuerung an die SPS ist ungültig. Fehler bei der Inbetriebnahme: Konfiguration in WorkVisual und TwinCAT • EtherCAT-Konfiguration in WorkVisual oder überprüfen und EtherCAT TwinCAT fehlerhaft korrekt konfigurieren. Fehler im laufenden Betrieb: Service anrufen. • Bitfehler bei der Datenübertragung Im Funktionsbaustein KRC_TouchUP wurde eine ungültige Nummer für die Position übergeben, die geteacht werden soll. 514 POS_ACT INVALID Die aktuelle Position kann nicht geteacht werden, da die Positionsdaten ungültig sind (kein SAK). 517 INVALID Interner Ausnahmefehler COMMAND SIZE TC3 Robotics mxAutomation Version: 1.4 Gültigen Wert programmieren (Parameter Index): • 1 … 100 SAK mit einem RESET am Funktionsbaustein KRC_AutomaticExternal herstellen. Service anrufen. 129 Meldungen Nr. 518 Meldungstext Ursache KRC STOPMESS Sammelfehler, der die Fahrfreigabe verhindert ACTIVE Abhilfe Prüfen, wodurch der Fehler ausgelöst wurde und Fehler beheben. • Meldungen im Meldungsfenster der KUKA smartHMI analysieren. 519 520 521 522 523 524 525 526 527 528 130 INVALID ABSOLUTE VELOCITY VELOCITY CONFLICT INVALID PARAMETER COUNT INVALID PARAMETER USAGE INVALID OPERATION MODE USER_SAF SIGNAL NOT ACTIVE ALARM_STOP SIGNAL NOT ACTIVE In einem KRC_Move-Funktionsbaustein wurde ein ungültiger Wert für den Parameter AbsoluteVelocity programmiert. In einem KRC_Move-Funktionsbaustein wurden mehrere Geschwindigkeitsangaben programmiert. Im Funktionsbaustein KRC_TechFunction wurde ein ungültiger Wert für den Parameter ParameterCount programmiert. Im Funktionsbaustein KRC_TechFunction wurde der Parameter ParameterCount falsch konfiguriert. Der Roboter befindet sich in der falschen Betriebsart. Service anrufen. Service anrufen. Service anrufen. Betriebsart Automatik Extern anwählen. Der Bedienerschutz ist verletzt. Schutzeinrichtung schließen und die Schließung quittieren. Die Sicherheitskonfiguration ist fehlerhaft, dadurch Sicherheitskonfiguration wurde ein NOT-HALT ausgelöst. des Systems (Robotersteuerung und SPS) prüfen und ändern. Keine Verbindung zum NOT-HALT der Anlage NOT-HALT der Anlage prüfen und Verbindung wiederherstellen. Ein- und Ausgänge der Schnittstelle Automatik Extern 1. Im Hauptmenü sind falsch konfiguriert. Anzeige > Ein-/Ausgänge > Automatik Extern wählen. APPL_RUN RESET kann nicht durchgeführt werden, da ein SIGNAL ACTIVE Roboterprogramm läuft. TIMEOUT MESSAGE CONFIRM TIMEOUT MXA MESSAGE CONFIRM • Mit dem Funktionsbaustein KRC_ReadKRCError den aktuellen Fehlerzustand der Robotersteuerung lesen. Service anrufen. 2. Die Konfiguration der Ein- und Ausgänge prüfen und ändern. 1. Warten, bis das Roboterprogramm abgearbeitet ist. 2. Die Anweisung erneut ausführen. Die Meldung kann nicht von der SPS quittiert werden. Die Meldung an der Robotersteuerung quittieren. Im Funktionsbaustein KRC_AutoStart kann ein Fehler Service anrufen. nicht quittiert werden. Version: 1.4 TC3 Robotics mxAutomation Meldungen Nr. 529 530 531 532 533 534 535 536 537 538 539 540 541 542 Meldungstext TIMEOUT SWITCHING DRIVES ON TIMEOUT PROGRAM SELECTION TIMEOUT PROGRAM START MOVE_ENABLE SIGNAL NOT ACTIVE INVALID AXIS_VALUES Ursache Interner Ausnahmefehler INVALID $BASE INVALID $TOOL INVALID SOFTEND Interner Ausnahmefehler Interner Ausnahmefehler Fehler im Funktionsbaustein KRC_Forward: Abhilfe Service anrufen. Interner Ausnahmefehler Interner Ausnahmefehler Roboter hat keine Fahrfreigabe Im Funktionsbaustein KRC_Forward sind nicht alle Achswinkel definiert, die für die Ausführung benötigt werden. Die vorgegebenen Achswinkel liegen außerhalb der Software-Endschalter. Fahrfreigabe mit dem Parameter MOVE_ENABLE erteilen. Im Funktionsbaustein KRC_Forward die fehlenden Achswinkel definieren. Service anrufen. Achswinkel eingeben, die innerhalb der SoftwareEndschalter liegen (Parameter Axis_Values). Oder: SoftwareEndschalter ändern. ERR MATH Fehler im Funktionsbaustein KRC_Forward: Achswinkel eingeben, die TRAFO Der Roboter kann die vorgegebenen Achswinkel nicht der Roboter erreichen kann (Parameter erreichen. Axis_Values). INVALID Fehler im Funktionsbaustein KRC_Inverse: • Die kartesische AXIS_VALUES Roboterposition • Die kartesische Roboterposition wurde vollständig angeben unvollständig angegeben. (Parameter • Die achsspezifischen Werte am Startpunkt der Position). Bewegung wurden unvollständig angegeben. • Die achsspezifischen Werte am Startpunkt der Bewegung vollständig angeben (Parameter Start_Axis). INVALID $BASE Interner Ausnahmefehler Service anrufen. INVALID $TOOL Interner Ausnahmefehler INVALID Fehler im Funktionsbaustein KRC_Inverse: Werte eingeben, die SOFTEND innerhalb der SoftwareDie vorgegebenen achsspezifischen Werte am Endschalter liegen Startpunkt der Bewegung liegen außerhalb der (Parameter Start_Axis). Software-Endschalter. ERR MATH TRAFO Oder: SoftwareEndschalter ändern. Fehler im Funktionsbaustein KRC_Inverse: Werte eingeben, die der Der Roboter kann die vorgegebenen achsspezifischen Roboter erreichen kann (Parameter Start_Axis). Werte am Startpunkt der Bewegung nicht erreichen. TC3 Robotics mxAutomation Version: 1.4 131 Meldungen Nr. 543 Meldungstext INVALID EXECUTE Ursache Bei einer überschleiffähigen verketteten Bewegung wurde der Execute-Eingang zurückgesetzt, bevor das ComDone-Signal vom Funktionsbaustein gesetzt wurde. 544 INVALID DEV_VEL_CP Die Initialisierung der mxA-Schnittstelle auf der Robotersteuerung ist noch nicht abgeschlossen oder fehlerhaft. 8.4 Nr. 701 702 703 704 709 710 712 Abhilfe Meldung quittieren und zukünftig den ExecuteEingang erst zurücksetzen, nachdem das ComDoneSignal vom Funktionsbaustein gesetzt wurde. Prüfen, ob der Ausgang Done am Funktionsbaustein KRC_Initialize aktiv ist. ProConOS-Fehler Meldungstext INTERNAL ERROR ASSERT FAILED INVALID COMMAND ID INVALID HEADER DATA ERROR READING SOFTPLC ERROR FROM KRC SUBMIT INVALID CHECKSUM PLC > KRC 713 INVALID MOVE TYPE 730 INVALID PTP APO 731 INVALID CP APO 732 INVALID BASE NUMBER Ursache Interner Ausnahmefehler Interner Ausnahmefehler Interner Ausnahmefehler Abhilfe Service anrufen. Interner Ausnahmefehler Interner Ausnahmefehler Interner Ausnahmefehler Die Prüfsumme bei der Datenübertragung von der SPS an die Robotersteuerung ist ungültig. In einem KRC_MoveFunktionsbaustein wurde ein ungültiger Wert für den Parameter MoveType programmiert. Für eine PTP-Bewegung wurde ein ungültiger Überschleifparameter übergeben. Für eine CP-Bewegung (LIN, CIRC) wurde ein ein ungültiger Überschleifparameter übergeben. Im Funktionsbaustein KRC_ReadBaseData oder KRC_WriteBaseData wurde eine ungültige Nummer für das BASEKoordinatensystem programmiert. Service anrufen. Service anrufen. >>> "APO". [} 21] Die Nummer des BASEKoordinatensystems angeben, das aktuell in der Robotersteuerung verwendet wird (Parameter BaseNo). • 1 … 32 In einem KRC_Move- oder >>> "COORDSYS". [} 22] KRC_Jog-Funktionsbaustein wurde eine ungültige Nummer für das BASE-Koordinatensystem programmiert. 132 Version: 1.4 TC3 Robotics mxAutomation Meldungen Nr. 733 Meldungstext INVALID TOOL NUMBER 734 INVALID VELOCITY 735 INVALID ACCELERATION 736 INVALID C_PTP 737 INVALID C_DIS 738 INVALID C_VEL 739 INVALID C_ORI 740 INVALID ORI_TYPE 741 POSITION DATA NOT INITIALIZED 742 AXISPOSITION DATA NOT INITIALIZED 743 INVALID TRIGGER DISTANCE 744 INVALID TRIGGER IO TC3 Robotics mxAutomation Ursache Im Funktionsbaustein KRC_ReadToolData oder KRC_WriteToolData wurde eine ungültige Nummer für das TOOLKoordinatensystem programmiert. Abhilfe Die Nummer des TOOLKoordinatensystems angeben, das aktuell in der Robotersteuerung verwendet wird (Parameter ToolNo). • 1 … 16 In einem KRC_Move- oder >>> "COORDSYS". [} 22] KRC_Jog-Funktionsbaustein wurde eine ungültige Nummer für das TOOL-Koordinatensystem programmiert. In einem Funktionsbaustein Gültigen Wert programmieren wurde ein ungültiger Wert für die (Parameter Velocity): Geschwindigkeit programmiert. • 0 … 100 % In einem Funktionsbaustein Gültigen Wert programmieren wurde ein ungültiger Wert für die (Parameter Acceleration): Beschleunigung programmiert. • 0 … 100 % Für eine PTP-Bewegung wurde eine ungültige Überschleifdistanz übergeben. Für eine überschliffene Bewegung wurde ein ungültiger Distanzparameter übergeben. Für eine überschliffene Bewegung wurde ein ungültiger Geschwindigkeitsparameter übergeben. Für eine überschliffene Bewegung wurde ein ungültiger Orientierungsparameter übergeben. In einem KRC_Move- oder KRC_Jog-Funktionsbaustein wurde ein ungültiger Wert für die Orientierungsführung des TCP programmiert. Beim Aufruf eines KRC_MoveFunktionsbausteins wurde keine Zielposition übergeben. Beim Aufruf eines KRC_MoveAxisFunktionsbausteins wurde keine Achsposition übergeben. In einem Funktionsbaustein KRC_SetDistanceTrigger wurde ein ungültiger Wert für den Schaltpunkt des Triggers programmiert. In einem Funktionsbaustein KRC_SetDistanceTrigger oder KRC_SetPathTrigger wurde ein ungültiger Ausgang programmiert. Version: 1.4 >>> "APO". [} 21] >>> "OriType". [} 25] >>> "E6POS". [} 23] >>> "E6AXIS". [} 22] Gültigen Wert programmieren (Parameter Distance): • 0: Schaltaktion im Startpunkt • 1: Schaltaktion im Zielpunkt Gültigen Wert programmieren (Parameter Output): • 1 … 2 048 133 Meldungen Nr. 745 746 747 748 750 751 752 753 754 755 756 757 134 Meldungstext INVALID TRIGGER PULSE Ursache In einem Funktionsbaustein KRC_SetDistanceTrigger oder KRC_SetPathTrigger wurde ein ungültiger Wert für die Länge des Impulses programmiert. INVALID CIRC_HP Beim Aufruf eines KRC_MoveCircFunktionsbausteins wurde keine Hilfsposition übergeben. INVALID Die Nummer des digitalen INTERRUPT IO Eingangs, auf den ein Interrupt deklariert ist, ist ungültig (Funktionsbaustein KRC_DeclareInterrupt). INVALID Beim Aufruf eines KRC_… INTERRUPT Interrupt-Funktionsbausteins PRIORITY wurde eine ungültige Nummer übergeben. INVALID Die Reaktion auf den Interrupt, INTERRUPT ACTION die bei der Deklaration eines Interrupts programmiert wurde, ist ungültig. INVALID IO NUMBER Die Nummer des digitalen Eingangs, auf den ein Interrupt deklariert ist, ist ungültig (Funktionsbaustein KRC_DeclareInterrupt). INVALID PULSE Im Funktionsbaustein KRC_ DURATION WriteDigitalOutput wurde ein ungültiger Wert für die Länge des Impulses programmiert. Abhilfe Gültigen Wert programmieren (Parameter Pulse): INVALID BUFFER_MODE >>> "BufferMode". [} 24] In einem Funktionsbaustein wurde ein ungültiger BufferMode programmiert. Z. B. steht bei einigen Funktionsbausteinen der Modus DIRECT nicht Verfügung. INVALID TOOL Im Funktionsbaustein NUMBER FOR KRC_ReadLoadData oder LOAD_DATA KRC_WriteLoadData wurde eine ungültige Nummer zum Lesen oder Schreiben der Lastdaten oder der Zusatzlastdaten programmiert. INVALID ANALOG IO In einem Funktionsbaustein NUMBER wurde eine ungültige Nummer für den analogen Ein- oder Ausgang programmiert. INVALID IPO_MODE In einem Funktionsbaustein wurde ein ungültiger Wert für den Interpolationsmodus programmiert, z. B. in einem KRC_Move-Funktionsbaustein. INVALID CIRC_TYPE In einem KRC_MoveCircFunktionsbaustein wurde ein ungültiger Wert für die Orientierungsführung während der Kreisbewegung programmiert. Version: 1.4 • 0.1 … 3.0 s • 0.0 s (Kein Puls aktiv) >>> "E6AXIS". [} 22] Gültigen Wert programmieren (Parameter Input): • 1 … 2 048 Gültigen Wert programmieren (Parameter Interrupt): • 1 … 8 >>> "Interrupt deklarieren". [} 54] Gültigen Wert programmieren (Parameter Input): • 1 … 2 048 Gültigen Wert programmieren (Parameter Pulse): • 0.1 … 3.0 s • 0.0 s (Kein Puls aktiv) >>> "Lastdaten schreiben". [} 50] Gültigen Wert programmieren (Parameter Number): • 1 … 32 >>> "COORDSYS". [} 22] >>> "CircType". [} 24] TC3 Robotics mxAutomation Meldungen Nr. 758 Meldungstext INVALID FRAME DATA 759 INVALID LOAD DATA 760 INVALID SOFT_END (REVERSED) 765 INVALID REAL VALUE INVALID PARAMETER VALUE 770 771 772 773 774 775 776 INVALID ADVANCE COUNT INVALID MAXWAITTIME INVALID ADVANCE MODE INVALID DI STARTNUMBER INVALID DI LENGTH INVALID CONVEYOR NUMBER TC3 Robotics mxAutomation Ursache In einem KRC_WriteToolDataoder KRC_WriteBaseDataFunktionsbaustein wurden ungültige TOOL- oder BASEDaten programmiert. In einem KRC_WriteLoadDataFunktionsbaustein wurden ungültige Lastdaten programmiert. Fehler beim Schreiben der Software-Endschalter: Positiver Software-Endschalter < negativer Software-Endschalter (Funktionsbaustein KRC_WriteSoftEnd oder KRC_WriteSoftEndEx) Der programmierte Real-Wert ist ungültig. Im aufgerufenen Funktionsbaustein wurde ein ungültiger Wert für einen oder mehrere Parameter programmiert. Im Funktionsbaustein KRC_SetAdvance wurde ein ungültiger Wert für die Anzahl der Funktionen programmiert, die vor der 1. Roboterbewegung übertragen werden sollen. Im Funktionsbaustein KRC_SetAdvance wurde ein ungültiger Wert für die maximale Wartezeit vor dem Beginn der Programmbearbeitung programmiert, wenn die eingestellte Anzahl der Funktionen im Parameter Count nicht erreicht wird. Im Funktionsbaustein KRC_SetAdvance wurde ein ungültiger Wert für den WarteModus programmiert. Im Funktionsbaustein KRC_ReadDigitalInputArray wurde ein ungültiger Wert für die Nummer des 1. digitalen Eingangs programmiert, der abgefragt wird. Im Funktionsbaustein KRC_ReadDigitalInputArray wurde ein ungültiger Wert für die Anzahl der Eingänge programmiert, die abgefragt werden. Im aufgerufenen Funktionsbaustein wurde ein ungültiger Wert für die Nummer des Conveyors programmiert. Version: 1.4 Abhilfe >>> "BASE-Daten schreiben". [} 48] >>> "Lastdaten schreiben". [} 50] Für die negativen SoftwareEndschalter kleinere Wert programmieren als für die positiven Software-Endschalter. • -2.147.483.500 … +2.147.483.500 Gültige Werte für die Parameter programmieren. Gültigen Wert programmieren (Parameter Count): • 1 … 50 Gültigen Wert programmieren (Parameter MaxWaitTime): • 1 … 60 000 ms Gültigen Wert programmieren (Parameter Mode): • 0…2 Gültigen Wert programmieren (Parameter Startnumber): • 1 … 2 048 Gültigen Wert programmieren (Parameter Length): • 1 … 2 00 Gültigen Wert programmieren (Parameter ConveyorNumber): • 1…3 135 Meldungen Nr. 777 778 779 780 781 782 801 Meldungstext INVALID CONVEYOR STARTDISTANCE INVALID CONVEYOR MAXDISTANCE INVALID CONVEYOR PIECENUMBER Ursache Im Funktionsbaustein KRC_ConvFollow oder KRC_ConvSkip wurde ein ungültiger Wert für die Verfahrstrecke des Bauteils programmiert, die der Roboter abwartet, bevor er mit der Verfolgung des Bauteils auf dem Conveyor beginnt. Im Funktionsbaustein KRC_ConvFollow oder KRC_ConvSkip wurde ein ungültiger Wert für die maximale Verfahrstrecke des Bauteils programmiert, innerhalb der der Roboter damit beginnt, sich mit dem Bauteil zu synchronisieren. Im Funktionsbaustein KRC_ConvSkip wurde ein ungültiger Wert für die Zahl programmiert, die angibt, welche Bauteile aufgenommen werden sollen. Abhilfe Gültigen Wert programmieren (Parameter StartDistance): • Bei einem LinearConveyor: Angabe in Millimeter • Bei einem ZirkularConveyor: Angabe in Grad Gültigen Wert programmieren (Parameter MaxDistance): • Bei einem LinearConveyor: Angabe in Millimeter • Bei einem ZirkularConveyor: Angabe in Grad Gültigen Wert programmieren (Parameter PieceNumber). Beispiele: • 1: Jedes Bauteil wird aufgenommen. • 3: Jedes 3. Bauteil wird aufgenommen. Gültigen Wert programmieren (Parameter WorkspaceNo): INVALID WORKSPACENO Im aufgerufenen Funktionsbaustein wurde ein ungültiger Wert für die Nummer • 1…8 des Arbeitsraums programmiert. INVALID Im aufgerufenen Gültigen Wert programmieren WORKSPACEMODE Funktionsbaustein wurde ein (Parameter WorkspaceMode): ungültiger Wert für den Modus für • 0…4 Arbeitsräume programmiert. INVALID Interner Ausnahmefehler Service anrufen. WORKSPACEPART STOPMESS ACTIVE Sammelfehler, der die Prüfen, wodurch der Fehler Fahrfreigabe verhindert ausgelöst wurde und Fehler beheben. • Meldungen im Meldungsfenster der KUKA smartHMI analysieren. • Mit dem Funktionsbaustein KRC_ReadKRCError den aktuellen Fehlerzustand der Robotersteuerung lesen. 136 Version: 1.4 TC3 Robotics mxAutomation
© Copyright 2024 ExpyDoc