CDRFLEx.amovec
Features
As an asynchronous movec, it operates the same as movec except for not having the fBlendingRadius argument for blending. However, the command returns with motion start at the same time and executes the next line without waiting for the termination of motion due to the characteristic of the asynchronous type.
Parameter
Parameter Name | Data Type | Default Value | Description |
fTargetPos[0] | float[6] | - | Waypoint |
fTargetPos[1] | float[6] | Target location | |
fTargetVel | float[2] | - | Linear Velocity, Angular Velocity |
fTargetAcc | float[2] | - | Linear Acceleration, Angular Acceleration |
fTargetTime | float | 0.f | Reach Time [sec] |
eMoveMode | enum.MOVE_MODE | MOVE_MODE_ ABSOLUTE | Refer to the Definition of Constant and Enumeration Type |
eMoveReference | enum.MOVE_REFERENCE | MOVE_REFERENCE_BASE | Refer to the Definition of Constant and Enumeration Type |
fTargetAngle2 | float | 0.f | angle1 |
fTargetAngle2 | float | 0.f | angle2 |
eBlendingType | enum.BLENDING_SPEED_TYPE | BLENDING_SPEED_TYPE_DUPLICATE | Refer to the Definition of Constant and Enumeration Type |
Note
- If an argument is inputted to fTargetVel (e.g., fTargetVel = {30, 0}), the input argument corresponds to the linear velocity of the motion, while the angular velocity is determined proportionally to the linear velocity.
- If an argument is inputted to fTargetAcc (e.g., fTargetAcc = {60, 0}), the input argument corresponds to the linear acceleration of the motion, while the angular acceleration is determined proportionally to the linear acceleration.
- If fTargetTime is specified, values are processed based on fTargetTime, ignoring fTargetVel and fTargetAcc.
- If the eMoveMode is MOVE_MODE_RELATIVE, fTargetPos[0] and fTargetPos[1] are defined in the relative coordinate system of the previous position. (fTargetPos[0] is the relative coordinate from the starting point, while fTargetPos[1] is the relative coordinate from fTargetPos[0].)
- If fTargetAngle1 is more than 0, and fTargetAngle2 is equal to 0, the total rotated angle on the circular path is applied to fTargetAngle1.
- When fTargetAngle1 and fTargetAngle2 are more than 2, fTargetAngle1 refers to the total rotating angle moving at a constant velocity on the circular path, while fTargetAngle2 refers to the rotating angle in the rotating section for acceleration and deceleration. In that case, the total moving angle fTargetAngle1+ 2 X fTargetAngle2 moves along the circular path.
- Refer to the motion description of movej() for blending according to option eBlendingType and fTargetVel / fTargetAcc.
Return
Value | Description |
0 | Error |
1 | Success |
Example
// D-Out 3 seconds after the circle motion through two points of x1 begins
float x1[2][6] = { { 559, 434.5, 651.5, 0, 180, 0 }, { 559, 434.5, 251.5, 0, 180, 0 } };
float tvel = {50, 50}; # Set the task velocity to 50(mm/sec) and 50(deg/sec).
float tacc = {100, 100}; # Set the task acceleration to 100(mm/sec2) and 100(deg/sec2).
drfl.amovec(x1, tvel, tacc);
Sleep(3000);
drfl.set_digital_output(GPIO_CTRLBOX_DIGITAL_INDEX_1, 1);