Handbuch TC3 Robotics mxAutomation

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