Features
This is a function that controls the task velocity from an external controller.
Parameter
|
Parameter Name |
Data Type |
Default Value |
Description |
|
fTargetVel |
float[6] |
- |
Target Task Velocity. [mm/s, deg/s] |
|
fTargetAcc |
float[6] |
- |
Target Task Acceleration. [mm/s, deg/s] If None Values(-10000) entered, it is automatically calculated based on the target task velocity you entered. |
|
fTargetTime |
float |
- |
Target Time [s] |
-
Asnyc Command.
-
The inner profile is interpolated to reach (fTargetVel, fTargetAcc ) at fTargetTime .
-
If fTargetTime <= controller’s control period (=1ms), control is performed at the corresponding speed without interpolation.
-
If the next command is not received until arriving at fTargetVel, the last input velocity is maintained.
-
However, for safety, if the next command is not received for 0.1[s], an error is generated as a time-out and stops.
-
If the acceleration limit set globally during motion is exceeded, the motion is not stopped and an Info message is generated.
-
In the current version, it is not linked with Operation Speed [%].
-
In the current version, it does not work with the force/compliance control function.
-
In the current version, it does not work with DR_VAR_VEL among the singularity options. If set, it is automatically set to the DR_AVOID option.
Return
|
Value |
Description |
|
0 |
Error |
|
1 |
Success |
Example
float fTargetPos[6] = {1500, 3, 100, 0, 0, 0};
float fTargetVel[6] = {100, 100, 100, 100, 100, 100};
float fTargetAcc[6] = {100, 100, 100, 100, 100, 100};
float fTargetTime = 6;
Drfl.servol_rt(fTargetPos, fTargetVel, fTargetAcc, fTargetTime);