Dieses Kapitel erläutert die Schritte, die unternommen werden müssen, um einen Lexium S Robot im Programm in Betrieb zu nehmen.
Dazu sind folgende Bibliotheken erforderlich:
oSchneiderElectricRobotics
oSchneiderElectricRobotics Parameters
oRobotic oder RoboticModule
Jeder Lexium S Robot benötigt seine eigene Instanz von SER.FB_RoboticSSeries und eine Instanz von ROB.FB_Robot oder eine Instanz von RM.FB_RoboticModule.
Initialisieren Sie den Lexium S Robot durch Aufruf der Methode SERP.FB_RobotSSeriesParameters.InitializeRobot().
Verbinden Sie den FB_RobotSSeries mit dem FB_Robot durch entsprechende Konfiguration des FB_Robot. Rufen Sie FB_Robot.ifConfiguration.SchneiderElectricRobot() auf und für das RoboticModule entsprechend stRobotInterface.iq_ifConfiguration.SchneiderElectricRobot(). Weisen Sie SER.FB_RobotSSeries.ifSchneiderElectricRobot am Eingang i_ifRobot zu.
Die Konfiguration wird durch den Aufruf der Methoden SetEmergencyParameter() und ConfigDone() abgeschlossen.
Der Lexium S Robot kann mittels mehrerer Methoden angepasst werden:
Aufrufen von SER.SR_SlowCyclicExecution
Rufen Sie das Programm SER.SR_SlowCyclicExecution in einer Task mit 10 ms Taskintervall auf.
Das Programm muss nur einmal aufgerufen werden, selbst wenn mehrere Roboter von SchneiderElectricRobotics verwendet werden.
VAR
ifConfiguration : ROB.IF_RobotConfiguration;
//ifConfiguration : RM.IF_Configuration;
fbSSeries : SER.FB_RobotSSeries;
etDiag : GD.ET_Diag;
etDiagExt : ROB.ET_DiagExt;
//etDiagExtRm : RM.ET_DiagExt;
etDiagExtSer : SER.ET_DiagExt;
etDiagExtSerp : SERP.ET_DiagExt;
sMsg : STRING[80];
END_VAR
// Get interface instance
ifConfiguration := fbRobot.ifConfiguration;
// ifConfiguration := stRobotInterface.iq_ifConfiguration;
// Initialize S-Series
fbSSeries.InitializeRobot(i_etRobotType := SERP.ET_RobotSSeries.LXM ,
i_ifDriveA := DRV_RobotDriveA,
i_ifDriveB := DRV_RobotDriveB,
i_ifDriveC := DRV_RobotDriveC,
i_ifDriveD := DRV_RobotDriveD,
q_etDiag => etDiag,
q_etDiagExt => etDiagExt,
q_sMsg => sMsg);
// Configure S-Series
ifConfiguration.SchneiderElectricRobot( i_ifRobot := fbSSeries.ifSchneiderElectricRobot ,
q_etDiag => etDiag,
q_etDiagExt => etDiagExtSer,
q_sMsg => sMsg);
// Call configuration method for the emergency parameter
ifConfiguration.SetEmergencyParameter( i_lrMaxDeceleration := 10000.0,
i_lrRamp := 25.0,
q_etDiag => etDiag,
q_etDiagExt => etDiagExt,
q_sMsg => sMsg);
// Sign config done
ifConfiguration.ConfigDone(q_etDiag => etDiag,
q_etDiagExt => etDiagExt,
q_sMsg => sMsg);
Erforderliche Parameter für die eingesetzten Antriebe
Lexium STS40
Parameter |
A |
B |
C |
D |
---|---|---|---|---|
MotorDirection |
FALSE |
FALSE |
FALSE |
TRUE |
GearIn |
1 |
1 |
1 |
1 |
GearOut |
60 |
51 |
3 |
30 |
UserDrivePeakCurrent |
22500 |
3925 |
4275 |
1600 |
AdditionalIDNListMDT |
'P-0-1069.0.0' |
'P-0-1069.0.0' |
'P-0-1069.0.0' |
'P-0-1069.0.0' |
FeedConstant |
360 |
360 |
50 |
360 |
UserMaxVel |
405 |
540 |
1800 |
1080 |
Lexium STS60
Parameter |
A |
B |
C |
D |
---|---|---|---|---|
MotorDirection |
FALSE |
FALSE |
FALSE |
TRUE |
GearIn |
1 |
1 |
1 |
1 |
GearOut |
92 |
81 |
3 |
30 |
UserDrivePeakCurrent |
22500 |
3455 |
4275 |
1600 |
AdditionalIDNListMDT |
'P-0-1069.0.0' |
'P-0-1069.0.0' |
'P-0-1069.0.0' |
'P-0-1069.0.0' |
FeedConstant |
360 |
360 |
50 |
360 |
UserMaxVel |
346 |
450 |
1800 |
1080 |
Lexium STS80
Parameter |
A |
B |
C |
D |
---|---|---|---|---|
MotorDirection |
FALSE |
FALSE |
FALSE |
TRUE |
GearIn |
1 |
1 |
1 |
1 |
GearOut |
92 |
81 |
3 |
30 |
UserDrivePeakCurrent |
22500 |
3455 |
4275 |
1600 |
AdditionalIDNListMDT |
'P-0-1069.0.0' |
'P-0-1069.0.0' |
'P-0-1069.0.0' |
'P-0-1069.0.0' |
FeedConstant |
360 |
360 |
50 |
360 |
UserMaxVel |
315 |
450 |
1440 |
1080 |
Parameter für das Tippen der Hauptachsen A, B, C und D
Parameter |
A |
B |
C |
D |
---|---|---|---|---|
MaxVelocity |
1,0 |
|||
MaxAcceleration |
10,0 |
|||
MaxDeceleration |
0,0 |
|||
Ramp |
50,0 |
Parameter für das Tippen in der kartesischen Richtung X, Y, Z und Orientierung Z
Parameter |
X13.3 |
S |
z |
Orientierung Z |
---|---|---|---|---|
MaxVelocity |
10,0 |
1,0 |
||
MaxAcceleration |
100,0 |
10,0 |
||
MaxDeceleration |
0,0 |
|||
Ramp |
50,0 |