Pfad |
AuxAx |
---|---|
MaxVelocity 6000,0 / 4000,0 MaxAcceleration 100000,0 MaxDeceleration 100000,0 Ramp 12,0 |
MaxVelocity 720,0 MaxAcceleration 10000,0 MaxDeceleration 10000,0 |
VAR
ifRobotConfiguration :ROB.IF_RobotConfiguration;
etDiag :GD.ET_Diag;
etDiagExt :ROB.ET_DiagExt;
sMsg :STRING[80];
END_VAR
ifRobotConfiguration.ifAdvanced.SetMotionProfileType(
i_etComponent := ROB.ET_RobotComponent.AuxAxAll, // OrientationAll
i_etValue := ROB.ET_MotionProfileType.Default,
q_etDiag => etDiag,
q_etDiagExt => etDiagExt,
q_sMsg => sMsg
);
Das folgende Beispiel zeigt eine nicht optimierte Berechnung der Path.Velocity, berechnet von MoveSync. Die berechnete Path.Velocity ist abhängig von der konfigurierten Path.MaxVelocity.
Path.Velocity 3462,252 berechnet von MoveSync wird verwendet bei Path.MaxVelocity 6000,0
Path.Velocity 4000,0 berechnet von MoveSync wird verwendet bei Path.MaxVelocity 4000,0
VAR
ifRobotConfiguration :ROB.IF_RobotConfiguration;
etDiag :GD.ET_Diag;
etDiagExt :ROB.ET_DiagExt;
sMsg :STRING[80];
END_VAR
ifRobotConfiguration.ifAdvanced.SetMotionProfileType(
i_etComponent := ROB.ET_RobotComponent.AuxAxAll, // OrientationAll
i_etValue := ROB.ET_MotionProfileType.MoveSyncMaxVelocity,
q_etDiag => etDiag,
q_etDiagExt => etDiagExt,
q_sMsg => sMsg
);
Path.Velocity 5121,884 berechnet von MoveSync wird nur verwendet bei Path.MaxVelocity 6000,0
Bei Path.MaxVelocity 4000,0 wird Path.Velocity nicht verwendet – Path.Velocity ist niedriger als die von MoveSync berechnete.
Path.MaxVelocity der zweiten Bewegung wird von 4000,0 auf 5500.0 erhöht.
Path.Velocity 5121,884 berechnet von MoveSync wird nun in beiden Fällen verwendet.