FB_Robot - Allgemeine Informationen

Übersicht

Typ:

Funktionsbaustein

Verfügbar ab:

V1.0.0.0

Erbt von:

-

Implementiert:

oIF_Robot

oIF_DiagManager (keine Benutzerschnittstelle)

oIF_RobotState (keine Anwenderschnittstelle)

Versionen:

Aktuelle Version

HINWEIS: Um den Funktionsbaustein FB_Robot zu benutzen, werden Lizenzpunkte benötigt.

Lizenzpunkte sind nur für Bibliotheksversionen vor V2.6.1.0 erforderlich. Weitere Informationen zu Lizenzpunkten finden Sie unter License Model for PacDrive Software Packages (Lizenzmodell für PacDrive-Softwarepakete).

Anzahl der Lizenzpunkte: 30

Lizenzzeichenfolge: ROB.Robot

Die Lizenzpunkte werden während eines erfolgreichen Aufrufs einer Konfigurationsmethode einer Transformation von IF_RobotConfiguration abgefragt.

Dieses Kapitel enthält Informationen zu folgenden Aspekten:

oAufgabenstellung

oBeschreibung

oMethoden

oEigenschaft

oDiagnosemeldungen

Aufgabenstellung

POU zur Steuerung von Robotern.

Beschreibung

Zentrale POU zur Steuerung von Roboterkinematiken. Die Konfiguration und Bewegungsprogram­mierung erfolgt über die Schnittstelle IF_RobotConfiguration bzw. IF_RobotMotion. Die Zustände der Roboterkinematik können über die Schnittstelle IF_RobotFeedback ermittelt werden.

Der Baustein (POU) muss im Anwenderprogramm implementiert werden. Der Baustein wird über seine Eigenschaften gesteuert.

Methoden

Name

Beschreibung

RegisterLoggerPoint

Registrieren Sie FB_Robot beim Application Logger.

Eigenschaft

Name

Datentyp

Zugriff

Beschreibung

etDiag

GD.ET_Diag

Lesen

Allgemeingültige, bibliotheksunabhängige Aussage zur Diagnose.

EinWert ungleich GD.ET_Diag.Ok entspricht einer Diagnosemeldung.

etDiagExt

ET_DiagExt

Lesen

Bausteinspezifischer Ausgang zur Diagnose.

q_etDiag = GD.ET_Diag.Ok -> Statusmeldung

q_etDiag <> GD.ET_Diag.Ok -> Diagnosemeldung

ifConfiguration

IF_RobotConfiguration

Lesen

Schnittstelle zur Konfiguration des Roboters.

ifFeedback

IF_RobotFeedback

Lesen

Schnittstelle mit Rückgabewerten.

ifJogging

IF_RobotJogging

Lesen

Schnittstelle für manuelles Verfahren des Roboters.

ifMotion

IF_RobotMotion

Lesen

Schnittstelle zur Bewegungsprogrammierung.

ifWarmStart

IF_RobotWarmStart

Lesen

Schnittstelle für den Zugriff auf die Warmstart-Schnittstelle des Roboters.

sMsg

STRING[80]

Lesen

Ereignisabhängige Meldung, die detaillierte Informationen zum Diagnosezustand übergibt.

xActive

BOOL

Lesen

TRUE: Der POU ist aktiv und muss weiter ausgeführt werden.

FALSE: Der POU ist nicht aktiv.

xDiagQuit

BOOL

Lesen/Schreiben

Eine steigende Flanke FALSE -> TRUE quittiert folgende Diagnosemeldungen:

etDiag = GD.ET_Diag.ConfigurationFailed

etDiagExt = ET_DiagExt.ConfigInvalid

xEnable

BOOL

Lesen/Schreiben

Eine steigende Flanke FALSE -> TRUE aktiviert den POU, eine fallende Flanke TRUE -> FALSE deaktiviert den POU.

Eine deaktivierte POU führt keinerlei Aktionen aus.

xReady

BOOL

Lesen

TRUE: Die POU ist funktionsbereit und kann Anwenderbefehle annehmen.

FALSE: Der Funktionsbaustein ist nicht bereit für die Annahme von Anwenderbefehlen.

xStart

BOOL

Lesen/Schreiben

TRUE: Fahrbefehle, die über die Schnittstelle IF_RobotMotion abgesetzt wurden, werden gestartet.

FALSE: Aktive Bewegungen werden gestoppt und können durch erneutes Setzen von xStart : = TRUE fortgesetzt werden. Eine Positionierung des Roboters ist über die Schnittstelle IF_RobotJogging möglich.

xWsSelect

BOOL

Lesen/Schreiben

TRUE: Eine Warmstartbewegung ist vorselektiert.

xWsStart

BOOL

Lesen/Schreiben

TRUE: Bei xWsSelect := TRUE fährt der Roboter auf die letzte erkannte Bahnposition.

Zum Ausführen eines Warmstarts muss der Funktionsbaustein FB_Robot durch Setzen von xEnable auf FALSE und wieder auf TRUE reaktiviert werden.

Diagnosemeldungen

q_etDiag

q_etDiagExt

Enumerationswert

Beschreibung

OK

CommandProcessing

57

Der Roboter bearbeitet einen Befehl.

Disabled

51

Deaktiviert

Initializing

19

Initializing

Jogging

47

Jogging

WaitForNewCommand

56

Der Roboter wartet auf einen neuen Befehl.

WaitForStart

55

Der Roboter wartet auf Start.

WaitForVelOverride

145

Der Roboter wartet auf VelOverride.

WaitUntilColdStartFinished

2

Der Roboter führt einen Kaltstart aus.

WaitUntilDisabled

122

Der Roboter wird deaktiviert.

WaitUntilWarmStartFinished

46

Der Roboter führt einen Warmstart aus.

WarmStartWaitForWsStart

62

Der Roboter wird einen Warmstart ausführen.

ConfigurationFailed

ConfigInvalid

1

Die Konfiguration ist ungültig.

SchneiderElectricRobotFailed

157

Ausführung eines Schneider Electric Roboters war nicht erfolgreich.

DiagActive

SchneiderElectricRobotFailed

157

Ausführung eines Schneider Electric Roboters war nicht erfolgreich.

DriveConditionInvalid

DriveInvalid

92

Der Antrieb ist ungültig.

DriveNotReady

85

Der Antrieb ist nicht bereit.

ExecutionAborted

AxisPositionRange

103

Achsen-Positionsbereich überschritten.

ComponentNotConfigured

198

Die Komponente ist nicht konfiguriert.

NotOnPath

63

Der Roboter ist nicht auf der Bahn.

OutsideWorkspace

104

Außerhalb des Arbeitsraums.

PathPositionEndExceeded

29

Die Endposition auf der Bahn wurde überfahren.

SetPosDetected

174

SetPos wurde nicht erkannt.

WarmStartNotPossible

173

Ein Warmstart ist nicht möglich.

DriveNotConfigured

65

Der Antrieb ist nicht konfiguriert.

AuxiliaryAxisNotConfigured

127

Die Hilfsachse ist nicht konfiguriert.

ExternalPositionSourceConfigured

205

Die externe Positionsquelle wurde konfiguriert.

LimitReached

ExcessiveTrackingDeviationLimitExceeded

121

Die Schleppfehlerschwelle wurde überschritten.

WorkEnvelope

159

Diagnosemeldung bezüglich des Arbeitsraums ist aktiv.

UnexpectedProgramBehavior

LicenseCheckFailed

6

Die Lizenzprüfung war nicht erfolgreich.

RefPositionInvalid

90

Die Ref-Position ist ungültig.

UnexpectedFeedback

13

Ein Rückgabewert war ungültig.

UnexpectedMovement

82

Die Bewegung war ungültig.

UnexpectedValue

111

Der Wert war ungültig.

AuxiliaryAxisNotConfigured

Enumerationsname:

AuxiliaryAxisNotConfigured

Enumerationswert:

127

Beschreibung:

Die Hilfsachse ist nicht konfiguriert.

Problem

Ursache

Lösung

Die Verwendung der zusätzlichen Transformationsachsen war nicht erfolgreich.

Ein Positionswert ungleich Null wurde für eine nicht konfigurierte Hilfsachse berechnet und an den Roboter übergeben.

Sicherstellen, dass ein Positionswert gleich Null für eine nicht konfigurierte Hilfsachse übergeben wird.

AxisPositionRange

Enumerationsname:

AxisPositionRange

Enumerationswert:

103

Beschreibung:

Achsen-Positionsbereich überschritten.

Problem

Ursache

Lösung

Der Roboter ist nicht betriebsbereit.

Eine Bewegung des Roboters führt dazu, dass sich eine oder mehrere Achsen außerhalb des Arbeitsraums des Roboters befinden.

Sicherstellen, dass die Bewegung des Roboters innerhalb des Arbeitsraums des Roboters bleibt.

CommandProcessing

Enumerationsname:

CommandProcessing

Enumerationswert:

57

Beschreibung:

Der Roboter bearbeitet einen Befehl.

Der Roboter ist betriebsbereit.

Der Roboter arbeitet Fahrbefehle ab, die mit Hilfe der Schnittstelle IF_RobotMotion abgesetzt wurden.

ComponentNotConfigured

Enumerationsname:

ComponentNotConfigured

Enumerationswert:

198

Beschreibung:

Die Komponente ist nicht konfiguriert.

Problem

Ursache

Lösung

Die Verwendung des zusätzlichen Transformations-TCP war nicht erfolgreich.

Ein Positionswert ungleich Null wurde für eine nicht konfigurierte TCP-Komponente berechnet und an den Roboter übergeben.

Sicherstellen, dass ein Positionswert gleich Null für eine nicht konfigurierte TCP-Komponente übergeben wird.

ConfigInvalid

Enumerationsname:

ConfigInvalid

Enumerationswert:

1

Beschreibung:

Die Konfiguration ist ungültig.

Problem

Ursache

Lösung

Der Roboter ist nicht betriebsbereit.

Die Konfiguration des Roboters ist noch nicht abgeschlossen.

Eine gültige Transformation, zum Beispiel IF_RobotConfiguration.Delta3Ax, muss konfiguriert werden.

Gültige Notfallparameter müssen durch Aufruf der Methode IF_RobotConfiguration.SetEmergencyParameter gesetzt werden.

Um die Konfiguration des Roboters abzuschließen, muss die Methode IF_RobotConfiguration.ConfigDone aufgerufen werden.

Wenn die Konfiguration erfolgreich abgeschlossen wurde, wird IF_RobotConfiguration.xConfigDone auf TRUE gesetzt.

Disabled

Enumerationsname:

Disabled

Enumerationswert:

51

Beschreibung:

Deaktiviert

Der Roboter wird deaktiviert, keine Aktionen werden ausgeführt.

FB_Robot.xEnable und FB_Robot.xActive haben den Wert FALSE.

FB_Robot.xEnable auf TRUE setzen, um den Roboter zu aktivieren.

DriveInvalid

Enumerationsname:

DriveInvalid

Enumerationswert:

92

Beschreibung:

Der Antrieb ist ungültig.

Problem

Ursache

Lösung

Der Roboter ist nicht betriebsbereit.

Ein Antrieb, der am Eingang i_ifDrive (oder i_ifDriveA, i_ifDriveB ...) übergeben wurde, ist ungültig.

Darauf achten, dass am Eingang i_ifDrive ein gültiger Antrieb übergeben wird.

DriveNotConfigured

Enumerationsname:

DriveNotConfigured

Enumerationswert:

65

Beschreibung:

Der Antrieb ist nicht konfiguriert.

Problem

Ursache

Lösung

Die Verwendung der zusätzlichen Transformationsachsen war nicht erfolgreich.

Ein Positionswert ungleich Null wurde für eine nicht konfigurierte Roboterachse berechnet und an den Roboter übergeben.

Sicherstellen, dass ein Positionswert gleich Null für eine nicht konfigurierte Roboterachse übergeben wird.

DriveNotReady

Enumerationsname:

DriveNotReady

Enumerationswert:

85

Beschreibung:

Der Antrieb ist nicht bereit.

Problem

Ursache

Lösung

Der Roboter ist nicht betriebsbereit.

Mindestens ein Antrieb des Roboters ist nicht bereit.

Vor Aktivieren des Roboters darauf achten, dass alle Antriebe bereit sind.

ExcessiveTrackingDeviationLimitExceeded

Enumerationsname:

ExcessiveTrackingDeviationLimitExceeded

Enumerationswert:

121

Beschreibung:

Die Schleppfehlerschwelle wurde überschritten.

Problem

Ursache

Lösung

Der Roboter ist nicht betriebsbereit.

Der Schleppfehler einer Roboterkomponente ist größer als der Wert aus Schleppfehlerschwelle multipliziert mit dem Schleppfehlerfaktor, der durch IF_RobotConfigurationAdvanced.SetTrackingDeviationLimit gesetzt ist.

Die maximale Geschwindigkeit und/oder Beschleunigung der Roboterbewegung in Verbindung mit dem bewegten Produkt prüfen.

ExternalPositionSourceConfigured

Enumerationsname:

ExternalPositionSourceConfigured

Enumerationswert:

205

Beschreibung:

Die externe Positionsquelle wurde konfiguriert.

Problem

Ursache

Lösung

Der Fahrauftrag wurde zurückgewiesen.

Für die Roboterkomponenten Kartesisch, Orientierung und Hilfsachsen wurde eine externe Positionsquelle konfiguriert.

Den Bewegungsparameter für die Komponente VelOverride nicht einstellen. Die Konfiguration von VelOverride ist nicht möglich, wenn für die Roboterkomponenten eine externe Positionsquelle konfiguriert wurde.

Initializing

Enumerationsname:

Initializing

Enumerationswert:

19

Beschreibung:

Initializing

Der Roboter wird initialisiert.

FB_Robot.xEnable wurde auf TRUE gesetzt.

Der Wert von FB_Robot.xActive ist TRUE.

Der Roboter wird initialisiert. Warten, bis FB_Robot.xReady auch auf TRUE gesetzt ist.

Jogging

Enumerationsname:

Jogging

Enumerationswert:

47

Beschreibung:

Jogging

Jogging ist aktiv.

Der Roboter wird mit der Schnittstelle IF_RobotJogging manuell verfahren.

LicenseCheckFailed

Enumerationsname:

LicenseCheckFailed

Enumerationswert:

6

Beschreibung:

Die Lizenzprüfung war nicht erfolgreich.

Der Roboter ist nicht betriebsbereit.

NotOnPath

Enumerationsname:

NotOnPath

Enumerationswert:

63

Beschreibung:

Der Roboter ist nicht auf der Bahn.

Problem

Ursache

Lösung

Der Roboter ist nicht betriebsbereit.

IF_RobotJogging.Start mit ET_RobotComponent.Path gewählt, während der Roboter nicht auf der Bahn ist.

Vor Ausführung von IF_RobotJogging.Start mit ET_RobotComponent.Path einen Warmstart ausführen, um zurück auf die Bahn zu gelangen.

FB_Robot.xStart wird auf TRUE gesetzt, während der Roboter sich nicht auf der Bahn befindet.

Einen Warmstart ausführen, um zurück auf die Bahn zu gelangen, bevor FB_Robot.xStart auf TRUE gesetzt wird.

OutsideWorkspace

Enumerationsname:

OutsideWorkspace

Enumerationswert:

104

Beschreibung:

Außerhalb des Arbeitsraums.

Problem

Ursache

Lösung

Der Roboter ist nicht betriebsbereit.

Eine Bewegung des Roboters führt dazu, dass sich eine kartesiche Koordinate außerhalb des Arbeitsraums des Roboters befindet.

Sicherstellen, dass die Bewegung des Roboters innerhalb des kartesischen Arbeitsraums des Roboters bleibt.

PathPositionEndExceeded

Enumerationsname:

PathPositionEndExceeded

Enumerationswert:

29

Beschreibung:

Die Endposition auf der Bahn wurde überfahren.

Der Roboter ist nicht betriebsbereit.

RefPositionInvalid

Enumerationsname:

RefPositionInvalid

Enumerationswert:

90

Beschreibung:

Die Ref-Position ist ungültig.

Der Roboter ist nicht betriebsbereit.

SchneiderElectricRobotFailed

Enumerationsname:

SchneiderElectricRobotFailed

Enumerationswert:

157

Beschreibung:

Ausführung eines Schneider Electric Roboters war nicht erfolgreich.

Problem

Ursache

Lösung

Der Roboter ist nicht betriebsbereit.

Die Konfigurationsmethode IF_RobotConfiguration.SchneiderElectricRobot wurde nicht erfolgreich aufgerufen.

Die Konfigurationsmethode IF_RobotConfiguration.SchneiderElectricRobot muss bei einem Schneider Electric-Roboter erfolgreich aufgerufen werden.

SetPosDetected

Enumerationsname:

SetPosDetected

Enumerationswert:

174

Beschreibung:

SetPos wurde nicht erkannt.

Problem

Ursache

Lösung

Der Roboter ist nicht betriebsbereit.

Ein SetPos wurde an einem logischen Geber eines konfigurierten linearen Trackingsystems erkannt.

Einen SetPos an keinem logischen Geber eines konfigurierten linearen Trackingsystems ausführen.

UnexpectedFeedback

Enumerationsname:

UnexpectedFeedback

Enumerationswert:

13

Beschreibung:

Ein Rückgabewert war ungültig.

Der Roboter ist nicht betriebsbereit.

UnexpectedMovement

Enumerationsname:

UnexpectedMovement

Enumerationswert:

82

Beschreibung:

Die Bewegung war ungültig.

Der Roboter ist nicht betriebsbereit.

UnexpectedValue

Enumerationsname:

UnexpectedValue

Enumerationswert:

111

Beschreibung:

Der Wert war ungültig.

Der Roboter ist nicht betriebsbereit.

WaitForNewCommand

Enumerationsname:

WaitForNewCommand

Enumerationswert:

56

Beschreibung:

Der Roboter wartet auf einen neuen Befehl.

Der Roboter ist betriebsbereit.

Der Roboter wartet auf Befehle, die mit der Schnittstelle IF_RobotMotion abgesetzt werden können.

WaitForStart

Enumerationsname:

WaitForStart

Enumerationswert:

55

Beschreibung:

Der Roboter wartet auf Start.

Der Roboter ist betriebsbereit.

FB_Robot.xReady hat den Wert TRUE.

Das System wartet darauf, dass FB_Robot.xStart auf den Wert TRUE gesetzt wird.

WaitForVelOverride

Enumerationsname:

WaitForVelOverride

Enumerationswert:

145

Beschreibung:

Der Roboter wartet auf VelOverride.

Der Roboter ist betriebsbereit.

Der Wert IF_RobotMotion.lrVelOverride ist auf 0 gesetzt.

Den Wert von IF_RobotMotion.lrVelOverride auf einen Wert größer als 0 setzen.

WaitUntilColdStartFinished

Enumerationsname:

WaitUntilColdStartFinished

Enumerationswert:

2

Beschreibung:

Der Roboter führt einen Kaltstart aus.

Der Roboter ist betriebsbereit.

Der Roboter führt einen Kaltstart aus. FB_Robot.xReady ist FALSE, bis der Kaltstart abgeschlossen ist.

WaitUntilDisabled

Enumerationsname:

WaitUntilDisabled

Enumerationswert:

122

Beschreibung:

Der Roboter wird deaktiviert.

Der Roboter ist nicht betriebsbereit.

FB_Robot.xEnable wurde auf FALSE gesetzt. Der Roboter wird deaktiviert.

WaitUntilWarmStartFinished

Enumerationsname:

WaitUntilWarmStartFinished

Enumerationswert:

46

Beschreibung:

Der Roboter führt einen Warmstart aus.

Der Roboter ist betriebsbereit.

FB_Robot.xWsSelect und FB_Robot.xWsStart wurden auf den Wert TRUE gesetzt. Der Roboter führt einen Warmstart aus.

WarmStartNotPossible

Enumerationsname:

WarmStartNotPossible

Enumerationswert:

173

Beschreibung:

Ein Warmstart ist nicht möglich.

Problem

Ursache

Lösung

Der Roboter ist nicht betriebsbereit.

Ein Warmstart des Roboters ist nicht möglich. Aufforderung zur Änderung des Koordinatensystems wird gesendet.

Einen Kaltstart des Roboters durchführen.

Ein Warmstart des Roboters ist nicht möglich. Der Roboter war vor der Deaktivierung im Tracking.

Einen Kaltstart des Roboters durchführen.

WarmStartWaitForWsStart

Enumerationsname:

WarmStartWaitForWsStart

Enumerationswert:

62

Beschreibung:

Der Roboter wird einen Warmstart ausführen.

Der Roboter ist betriebsbereit.

Bei der Aktivierung des Roboters (FB_Robot.xEnable FALSE -> TRUE) wurde FB_Robot.xWsSelect auf den Wert TRUE gesetzt.

Das System wartet darauf, dass FB_Robot.xWsStart auf den Wert TRUE gesetzt wird, um einen Warmstart auszuführen.

WorkEnvelope

Enumerationsname:

WorkEnvelope

Enumerationswert:

159

Beschreibung:

Diagnosemeldung bezüglich des Arbeitsraums ist aktiv.

Problem

Ursache

Lösung

Der Roboter ist nicht betriebsbereit.

Der Roboter hat eine Störung des gültigen Arbeitsraums erkannt und davor angehalten.

Darauf achten, dass die Bewegung des Roboters immer innerhalb des gültigen Arbeitsraums des Roboters bleibt.