Methode Abgleich / Konfiguration / Logik und ModuleInterface

Übersicht

Zwei Methoden müssen in einem Roboter programmiert werden: Abgleich und Logik.

G-SE-0074202.1.png

 

 

Abgleich

Mit der Methode Abgleich können Sie einen Code hinzufügen, um einen Roboter zu kalibrieren. Ein Abgleich ist erforderlich, wenn zum Beispiel ein Motor oder ein Getriebe ausgetauscht wurde.

Die Methode Abgleich hat einen Eingang (i_ifCalibration: SER.IF_RobotPSeriesCalibration) und einen Ausgang (q_xRequest).

oWenn ein Abgleich ausgeführt werden soll, muss der Ausgang q_xRequest auf TRUE gesetzt werden und während des Abgleichs auf TRUE gesetzt bleiben.

Wenn q_xRequest auf TRUE gesetzt wird, wird der Roboter deaktiviert, sodass er die Antriebe nicht verwendet.

oWenn der Roboter deaktiviert wird, wird i_ifCalibration validiert und i_ifCalibration kann zur Durchführung eines Abgleichs eingesetzt werden.

i_ifCalibration.xDone gibt Rückmeldung, wenn der Abgleich beendet ist.

Wenn den Methoden Variablen hinzugefügt werden, sind diese Variablen flüchtige Variablen und werden mit jedem Aufruf der Methode neu initialisiert. Wenn Sie Variablen benötigen, die ihre Daten speichern, siehe Datenaustausch mit dem ModuleInterface  Speichern von Daten.

Wenn Sie Variablen zur Steuerung des Codes benötigen, siehe Datenaustausch mit dem ModuleInterface.

Beispiel für Abgleichsmethode:

G-SE-0065887.1.png

 

 

ModuleInterface (links):

oi_xEnableCalibration und i_xCalibrationStandard sind Eingangsvariablen, die zur Steuerung des Abgleichs angelegt wurden. Siehe Datenaustausch mit dem ModuleInterface.

oetDiagCalibration, etDiagExtCalibration, sMsgCalibration, xCalibra­tionDone und xCalibrationStarted sind Variablen, beispielsweise zum Lesen des aktuellen Zustands. Siehe Datenaustausch mit dem ModuleInterface  Speichern von Daten.

Methode Abgleich (rechts):

oVerwenden Sie die im ModuleInterface in der Methode Abgleich angelegten Variablen.

oStellen Sie sicher, dass i_ifCalibration gültig ist, bevor es verwendet wird. (Zum Beispiel Zeile 3 der Implementierung der Methode Abgleich: IF (i_ifCalibration <> 0) THEN).

oEine Methode zum Start des Abgleichs (zum Beispiel StandardProcedure) darf nur einmal aufgerufen werden, nicht zyklisch. (Zeile 4 bis 9 der Implementierung der Methode Abgleich).

oi_ifCalibration.xDone gibt Rückmeldung, wenn der Abgleich ausgeführt worden ist. Für nähere Informationen über den Abgleich siehe das SchneiderElectricRobotics-Bibliothekshandbuch.

oAktualisieren Sie Ihren Aufruf des Roboters. (Fügen Sie i_xEnableCalibration und i_xCalibrationStandard zum Aufruf des Roboters hinzu.)

Wenn Sie die Option zur Codeerzeugung für Non TemplateNon Template-Roboter auswählen, wird der Aufruf des Roboters automatisch aktualisiert.

G-SE-0065904.1.png

 

 

Um dieses Abgleichbeispiel zu starten, müssen Sie die Eingänge i_xEnableCalibration und i_xCalibrationStandard auf TRUE setzen. i_xEnableCalibration muss während des Abgleichs auf TRUE gesetzt sein.

Konfiguration

Sie können die Methode Konfiguration für eine zusätzliche Konfiguration einsetzen, zum Beispiel, um ein Trackingsystem hinzuzufügen. Diese Methode wird vor ConfigDone einmal aufgerufen.

Logik

Mit der Methode Logik können Sie Code hinzufügen, zum Beispiel zur Unterstützung der Roboterbewegung.

Die Methode Logik hat einen Eingang (i_etRotationalAxis) und einen Ausgang (iq_stRoboticModuleItf).

oDer Eingang i_etRotationalAxis liefert Informationen darüber, welche Roboterkom­ponente (AuxAx) als Drehachse verwendet wird (wenn Sie einen Roboter mit Drehachse konfiguriert haben).

Ansonsten ist es 0 (ROB.ET_RobotComponent.None). Diese Information ist zum Beispiel für einen Befehl IF_Motion.MoveSync oder IF_RobotMotion.MoveAsync erforderlich.

oMit dem Eingang/Ausgang (iq_stRoboticModuleItf) erhalten Sie zum Beispiel Zugriff auf IF_RobotMotion zur Einstellung von Bewegungsbefehlen oder auf IF_RobotFeedback zur Abfrage von Informationen zum Zustand des Roboters.

Wenn Variablen von IF_RobotFeedback außerhalb der Logik-Methode verwendet werden sollen (zum Beispiel für ein Trace), dann kann eine Variable vom Typ ROB.IF_Robot­Feedback im ModuleInterface hinzugefügt und iq_stRoboticModuleItf.iq_ifFeedback aus der Logik zur neuen Variablen kopiert werden.

Prüfen Sie vor Verwendung des Interface, dass es gültig ist (zum Beispiel iq_stRoboticModuleItf.iq_ifFeedback <> 0).

Wenn den Methoden Variablen hinzugefügt werden, sind diese Variablen flüchtige Variablen und werden mit jedem Aufruf der Methode neu initialisiert. Wenn Sie Variablen benötigen, die ihre Daten speichern, siehe Datenaustausch mit dem ModuleInterface  Speichern von Daten.

Wenn Sie Variablen zur Steuerung des Codes benötigen, siehe Datenaustausch mit dem ModuleInterface.