top of page

Java 4.57. Start Ptp movement FIR filtering

Changed in version Java: SDK-v1.0.5-3.8.2

/**
* @brief Start Ptp movement FIR filtering
* @param [in] maxAcc Maximum acceleration limit (deg/s2)
* @param [in] maxJek Unified joint jerk limit (deg/s3)
* @return Error code
*/
int PtpFIRPlanningStart(double maxAcc,double maxJek);

4.58. Close Ptp movement FIR filtering

/**
* @brief Close Ptp movement FIR filtering
* @return Error code
*/
int PtpFIRPlanningEnd();

4.59. Start LIN, ARC movement FIR filtering

/**
* @brief Start LIN, ARC movement FIR filtering
* @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
*/
int LinArcFIRPlanningStart(double maxAccLin, double maxAccDeg, double maxJerkLin, double maxJerkDeg);

4.60. Close LIN, ARC movement FIR filtering

/**
* @brief Close LIN, ARC movement FIR filtering
* @return Error code
*/
int LinArcFIRPlanningEnd();

4.61. FIR filtering code example

public static int TestFIR(Robot robot)
{
    JointPos startjointPos=new JointPos(-11.904, -99.669, 117.473, -108.616, -91.726, 74.256);
    JointPos midjointPos=new JointPos(-45.615, -106.172, 124.296, -107.151, -91.282, 74.255);
    JointPos endjointPos=new JointPos(-29.777, -84.536, 109.275, -114.075, -86.655, 74.257);

    DescPose startdescPose=new DescPose(-419.524, -13.000, 351.569, -178.118, 0.314, 3.833);
    DescPose middescPose=new DescPose(-321.222, 185.189, 335.520, -179.030, -1.284, -29.869);
    DescPose enddescPose=new DescPose(-487.434, 154.362, 308.576, 176.600, 0.268, -14.061);

    ExaxisPos exaxisPos=new ExaxisPos(0, 0, 0, 0);
    DescPose offdese=new DescPose(0, 0, 0, 0, 0, 0);

    int rtn = robot.PtpFIRPlanningStart(1000, 1000);
    robot.MoveJ(startjointPos, startdescPose, 0, 0, 100, 100, 100, exaxisPos, -1, 0, offdese);
    robot.MoveJ(endjointPos, enddescPose, 0, 0, 100, 100, 100, exaxisPos, -1, 0, offdese);
    robot.PtpFIRPlanningEnd();

    robot.LinArcFIRPlanningStart(1000, 1000, 1000, 1000);
    robot.MoveL(startjointPos, startdescPose, 0, 0, 100, 100, 100, -1, 0,exaxisPos, 0, 0, offdese, 1, 1);
    robot.MoveC(midjointPos, middescPose, 0, 0, 100, 100, exaxisPos, 0, offdese, endjointPos, enddescPose, 0, 0, 100, 100, exaxisPos, 0, offdese, 100, -1);
    robot.LinArcFIRPlanningEnd();
    return 0;
}

4.62. Acceleration smoothing enable

New in version Java: SDK-v1.0.4-3.8.1

/**
 * @brief Acceleration smoothing enable
 * @param [in] saveFlag Whether to save after power off
 * @return  Error code
 */
public int AccSmoothStart(boolean saveFlag)

4.63. Acceleration smoothing disable

New in version Java: SDK-v1.0.4-3.8.1

/**
 * @brief Acceleration smoothing disable
 * @param [in] saveFlag Whether to save after power off
 * @return  Error code
 */
public int AccSmoothEnd(boolean saveFlag)

4.64. Acceleration smoothing code example

public static int TestAccSmooth(Robot robot)
{
    JointPos startjointPos=new JointPos(-11.904, -99.669, 117.473, -108.616, -91.726, 74.256);
    JointPos endjointPos=new JointPos(-45.615, -106.172, 124.296, -107.151, -91.282, 74.255);

    DescPose startdescPose=new DescPose(-419.524, -13.000, 351.569, -178.118, 0.314, 3.833);
    DescPose enddescPose=new DescPose(-321.222, 185.189, 335.520, -179.030, -1.284, -29.869);

    ExaxisPos exaxisPos=new ExaxisPos(0, 0, 0, 0);
    DescPose offdese=new DescPose(0,0,0,0,0,0);
    int rtn = robot.AccSmoothStart(false);
    robot.MoveJ(startjointPos, startdescPose, 0, 0, 100, 100, 100, exaxisPos, -1, 0, offdese);
    robot.MoveJ(endjointPos, enddescPose, 0, 0, 100, 100, 100, exaxisPos, -1, 0, offdese);
    rtn = robot.AccSmoothEnd(false);

    robot.CloseRPC();
    return 0;
}

4.65. Specified pose speed enable

/**
 * @brief Specified pose speed enable
 * @param [in] ratio Pose speed percentage [0-300]
 * @return  Error code
 */
int AngularSpeedStart(int ratio)

4.66. Specified pose speed disable

/**
 * @brief Specified pose speed disable
 * @return  Error code
 */
int AngularSpeedEnd();

4.67. Robot specified pose speed code example

public static int TestAngularSpeed(Robot robot)
{
    JointPos startjointPos=new JointPos(-11.904, -99.669, 117.473, -108.616, -91.726, 74.256);
    JointPos endjointPos=new JointPos(-45.615, -106.172, 124.296, -107.151, -91.282, 74.255);

    DescPose startdescPose=new DescPose(-419.524, -13.000, 351.569, -178.118, 0.314, 3.833);
    DescPose enddescPose=new DescPose(-321.222, 185.189, 335.520, -179.030, -1.284, -29.869);

    ExaxisPos exaxisPos=new ExaxisPos(0, 0, 0, 0);
    DescPose offdese=new DescPose(0, 0, 0, 0, 0, 0);
    int rtn = robot.AngularSpeedStart(50);
    robot.MoveJ(startjointPos, startdescPose, 0, 0, 100, 100, 100, exaxisPos, -1, 0, offdese);
    robot.MoveJ(endjointPos, enddescPose, 0, 0, 100, 100, 100, exaxisPos, -1, 0, offdese);
    rtn = robot.AngularSpeedEnd();

    return 0;
}

4.68. Start singular pose protection

/**
* @brief  Start singular pose protection
* @param  [in]  protectMode Singular protection mode, 0: joint mode; 1-cartesian mode
* @param  [in]  minShoulderPos Shoulder singular adjustment range(mm), default 100
* @param  [in]  minElbowPos Elbow singular adjustment range(mm), default 50
* @param  [in]  minWristPos Wrist singular adjustment range(°), default 10
* @return  Error code
*/
int SingularAvoidStart(int protectMode, double minShoulderPos, double minElbowPos, double minWristPos);

4.69. Stop singular pose protection

/**
* @brief  Stop singular pose protection
* @return  Error code
*/
int SingularAvoidEnd();

4.70. Robot singular pose protection code example

public static int TestAngularSpeed(Robot robot)
{
    JointPos startjointPos=new JointPos(-11.904, -99.669, 117.473, -108.616, -91.726, 74.256);
    JointPos endjointPos=new JointPos(-45.615, -106.172, 124.296, -107.151, -91.282, 74.255);

    DescPose startdescPose=new DescPose(-419.524, -13.000, 351.569, -178.118, 0.314, 3.833);
    DescPose enddescPose=new DescPose(-321.222, 185.189, 335.520, -179.030, -1.284, -29.869);

    ExaxisPos exaxisPos=new ExaxisPos(0, 0, 0, 0);
    DescPose offdese=new DescPose(0, 0, 0, 0, 0, 0);
    int rtn = robot.AngularSpeedStart(50);
    robot.MoveJ(startjointPos, startdescPose, 0, 0, 100, 100, 100, exaxisPos, -1, 0, offdese);
    robot.MoveJ(endjointPos, enddescPose, 0, 0, 100, 100, 100, exaxisPos, -1, 0, offdese);
    rtn = robot.AngularSpeedEnd();

    return 0;
}

4.71. Clear Motion Command Queue

/**
* @brief Clears the motion command queue
* @return Error code
*/
public int MotionQueueClear()

4.72. Move to Intersecting Line Start Point

/**
* @brief Move to intersecting line start point
* @param [in] mainPoint Cartesian poses of 6 taught points on the main pipe
* @param [in] mainExaxisPos Extended axis positions for 6 taught points on the main pipe
* @param [in] piecePoint Cartesian poses of 6 taught points on the branch pipe
* @param [in] pieceExaxisPos Extended axis positions for 6 taught points on the branch pipe
* @param [in] extAxisFlag Whether to enable extended axis; 0-Disable; 1-Enable
* @param [in] exaxisPos Start point extended axis position
* @param [in] tool Tool coordinate system number
* @param [in] wobj Workpiece coordinate system number
* @param [in] vel Velocity percentage
* @param [in] acc Acceleration percentage
* @param [in] ovl Velocity scaling factor
* @param [in] oacc Acceleration scaling factor
* @param [in] moveType Motion type; 0-PTP; 1-LIN
* @param [in] moveDirection Motion direction; 0-Clockwise; 1-Counterclockwise
* @param [in] offset Offset value
* @return Error code
*/
public int MoveToIntersectLineStart(DescPose[] mainPoint, ExaxisPos[] mainExaxisPos, DescPose[] piecePoint, ExaxisPos[] pieceExaxisPos, int extAxisFlag, ExaxisPos exaxisPos, int tool, int wobj, double vel, double acc, double ovl, double oacc, int moveType, int moveDirection, DescPose offset);

robotic arm
FAIRINO ROBOTIC ARMS

Contact

Location: 10637 Scripps Summit Court,

San Diego, CA. 92131
Phone: (619) 333-FAIR
Email: hello@fairino.us

© 2023 Fairino US official site Proudly created By G2T

bottom of page