top of page
4.46. Control Box AO Flying Start
New in version C++SDK-v2.1.4.0.
/**
* @brief Control box AO flying start
* @param [in] AONum Control box AO number
* @param [in] maxTCPSpeed Maximum TCP speed value [1-5000mm/s], default 1000
* @param [in] maxAOPercent AO percentage corresponding to maximum TCP speed, default 100%
* @param [in] zeroZoneCmp Dead zone compensation value AO percentage, integer, default 20%, range [0-100]
* @return Error code
*/
errno_t MoveAOStart(int AONum, int maxTCPSpeed, int maxAOPercent, int zeroZoneCmp);
4.47. Control Box AO Flying Stop
New in version C++SDK-v2.1.4.0.
/**
* @brief Control box AO flying stop
* @return Error code
*/
errno_t MoveAOStop();
4.48. End AO Flying Start
New in version C++SDK-v2.1.4.0.
/**
* @brief End AO flying start
* @param [in] AONum End AO number
* @param [in] maxTCPSpeed Maximum TCP speed value [1-5000mm/s], default 1000
* @param [in] maxAOPercent AO percentage corresponding to maximum TCP speed, default 100%
* @param [in] zeroZoneCmp Dead zone compensation value AO percentage, integer, default 20%, range [0-100]
* @return Error code
*/
errno_t MoveToolAOStart(int AONum, int maxTCPSpeed, int maxAOPercent, int zeroZoneCmp);
4.49. End AO Flying Stop
New in version C++SDK-v2.1.4.0.
/**
* @brief End AO flying stop
* @return Error code
*/
errno_t MoveToolAOStop();
4.50. AO Flying Example
int TestMoveAO(void)
{
ROBOT_STATE_PKG pkg = {};
FRRobot robot;
robot.LoggerInit();
robot.SetLoggerLevel(1);
int rtn = robot.RPC("192.168.58.2");
if (rtn != 0)
{
return -1;
}
robot.SetReConnectParam(true, 30000, 500);
JointPos j1(-11.904, -99.669, 117.473, -108.616, -91.726, 74.256);
JointPos j2(-45.615, -106.172, 124.296, -107.151, -91.282, 74.255);
DescPose desc_pos1(-419.524, -13.000, 351.569, -178.118, 0.314, 3.833);
DescPose desc_pos2(-321.222, 185.189, 335.520, -179.030, -1.284, -29.869);
DescPose offset_pos(0, 0, 0, 0, 0, 0);
DescPose offset_pos1(0, 0, 50, 0, 0, 0);
ExaxisPos epos(0, 0, 0, 0);
int tool = 0;
int user = 0;
float vel = 20.0;
float acc = 20.0;
float ovl = 100.0;
float blendT = -1.0;
uint8_t flag = 0;
robot.SetSpeed(20);
robot.MoveAOStart(0, 100, 100, 20);
robot.MoveJ(&j1, &desc_pos1, tool, user, vel, acc, ovl, &epos, blendT, flag, &offset_pos);
robot.MoveJ(&j2, &desc_pos2, tool, user, vel, acc, ovl, &epos, blendT, flag, &offset_pos);
robot.MoveAOStop();
robot.Sleep(1000);
robot.MoveToolAOStart(0, 100, 100, 20);
robot.MoveJ(&j1, &desc_pos1, tool, user, vel, acc, ovl, &epos, blendT, flag, &offset_pos);
robot.MoveJ(&j2, &desc_pos2, tool, user, vel, acc, ovl, &epos, blendT, flag, &offset_pos);
robot.MoveToolAOStop();
robot.CloseRPC();
return 0;
}
4.51. Start Ptp Motion FIR Filter
New in version V3.7.7.
/**
* @brief Start Ptp motion FIR filter
* @param [in] maxAcc Maximum acceleration limit (deg/s2)
* @param [in] maxJek Unified joint jerk limit (deg/s3), default 1000
* @return Error code
*/
errno_t PtpFIRPlanningStart(double maxAcc, double maxJek = 1000);
4.52. Close Ptp Motion FIR Filter
New in version V3.7.7.
/**
* @brief Close Ptp motion FIR filter
* @return Error code
*/
errno_t PtpFIRPlanningEnd();
4.53. Start LIN, ARC Motion FIR Filter
New in version V3.7.7.
/**
* @brief Start LIN, ARC motion FIR filter
* @param [in] maxAccLin Linear acceleration limit (mm/s2)
* @param [in] maxAccDeg Angular acceleration limit (deg/s2)
* @param [in] maxJerkLin Linear jerk limit (mm/s3)
* @param [in] maxJerkDeg Angular jerk limit (deg/s3)
* @return Error code
*/
errno_t LinArcFIRPlanningStart(double maxAccLin, double maxAccDeg, double maxJerkLin, double maxJerkDeg);
4.54. Close LIN, ARC Motion FIR Filter
New in version V3.7.7.
/**
* @brief Close LIN, ARC motion FIR filter
* @return Error code
*/
errno_t LinArcFIRPlanningEnd();bottom of page