top of page

Java 4.44. New spline movement code example

public static int TestNewSpline(Robot robot)
{
    JointPos j1=new JointPos(-11.904, -99.669, 117.473, -108.616, -91.726, 74.256);
    DescPose desc_pos1=new DescPose(-419.524, -13.000, 351.569, -178.118, 0.314, 3.833);
    DescPose desc_pos2=new DescPose(-321.222, 185.189, 335.520, -179.030, -1.284, -29.869);
    DescPose desc_pos3=new DescPose(-327.622, 402.230, 320.402, -178.067, 2.127, -46.207);
    DescPose desc_pos4=new DescPose(-104.066, 544.321, 327.023, -177.715, 3.371, -73.818);
    DescPose desc_pos5=new DescPose(-33.421, 732.572, 275.103, -177.907, 2.709, -79.482);
    DescPose offset_pos=new DescPose(0, 0, 0, 0, 0, 0);
    ExaxisPos epos=new ExaxisPos(0, 0, 0, 0);


    int tool = 0;
    int user = 0;
    double vel = 100.0;
    double acc = 100.0;
    double ovl = 100.0;
    double blendT = -1.0;
    int flag = 0;


    int err1 = robot.MoveJ(j1, tool, user, vel, acc, ovl, epos, blendT, flag, offset_pos);
    System.out.println("movej errcode:"+ err1);
    robot.NewSplineStart(1, 2000);
    robot.NewSplinePoint(desc_pos1, tool, user, vel, acc, ovl, -1, 0,-1);
    robot.NewSplinePoint(desc_pos2, tool, user, vel, acc, ovl, -1, 0,-1);
    robot.NewSplinePoint(desc_pos3, tool, user, vel, acc, ovl, -1, 0,-1);
    robot.NewSplinePoint(desc_pos4, tool, user, vel, acc, ovl, -1, 0,-1);
    robot.NewSplinePoint(desc_pos5, tool, user, vel, acc, ovl, -1, 0,-1);
    robot.NewSplineEnd();
    return 0;
}

4.45. Stop movement

/**
* @brief Stop movement
* @return  Error code
*/
int StopMotion();

4.46. Pause movement

/**
  * @brief Pause movement
  * @return Error code
*/
int PauseMotion();

4.47. Resume movement

/**
* @brief Resume movement
* @return Error code
*/
int ResumeMotion();

4.48. Movement pause, resume, stop code example

public static int TestPause(Robot robot)
{
    JointPos j1=new JointPos(-11.904, -99.669, 117.473, -108.616, -91.726, 74.256);
    JointPos j5=new JointPos(-95.228, -54.621, 73.691, -112.245, -91.280, 74.268);
    DescPose desc_pos1=new DescPose(-419.524, -13.000, 351.569, -178.118, 0.314, 3.833);
    DescPose desc_pos5=new DescPose(-33.421, 732.572, 275.103, -177.907, 2.709, -79.482);
    DescPose offset_pos=new DescPose(0, 0, 0, 0, 0, 0);
    ExaxisPos epos=new ExaxisPos(0, 0, 0, 0);

    int tool = 0;
    int user = 0;
    double vel = 100.0;
    double acc = 100.0;
    double ovl = 100.0;
    double blendT = -1.0;
    int flag = 0;

    robot.SetSpeed(20);
    int rtn=-1;
    rtn = robot.MoveJ(j1, desc_pos1, tool, user, vel, acc, ovl, epos, blendT, flag, offset_pos);
    rtn = robot.MoveJ(j5, desc_pos5, tool, user, vel, acc, ovl, epos, 1, flag, offset_pos);
    robot.Sleep(1000);
    robot.PauseMotion();

    robot.Sleep(1000);
    robot.ResumeMotion();

    robot.Sleep(1000);
    robot.StopMotion();

    robot.Sleep(1000);

    return 0;
}

4.49. Point global offset start

/**
* @brief  Point global offset start
* @param  [in]  flag  0-offset in base/workpiece coordinate, 2-offset in tool coordinate
* @param  [in]  offset_pos  Pose offset
* @return  Error code
*/
int PointsOffsetEnable(int flag, DescPose offset_pos);

4.50. Point global offset end

/**
* @brief  Point global offset end
* @return  Error code
*/
int PointsOffsetDisable();

4.51. Point offset code example

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

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

    DescPose offset_pos=new DescPose(0, 0, 0, 0, 0, 0);
    DescPose offset_pos1=new DescPose(0, 0, 50, 0, 0, 0);
    ExaxisPos epos=new ExaxisPos(0, 0, 0, 0);

    int tool = 0;
    int user = 0;
    double vel = 100.0;
    double acc = 100.0;
    double ovl = 100.0;
    double blendT = -1.0;
    int flag = 0;

    robot.SetSpeed(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.Sleep(1000);
    robot.PointsOffsetEnable(0, offset_pos1);
    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.PointsOffsetDisable();

    return 0;
}

4.52. Controller AO flying start

/**
* @brief Controller AO flying start
* @param [in] AONum Controller 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
*/
int MoveAOStart(int AONum, int maxTCPSpeed, int maxAOPercent, int zeroZoneCmp);

4.53. Controller AO flying stop

/**
* @brief Controller AO flying stop
* @return Error code
*/
int MoveAOStop();

4.54. End effector AO flying start

/**
* @brief End effector AO flying start
* @param [in] AONum End effector 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
*/
int MoveToolAOStart(int AONum, int maxTCPSpeed, int maxAOPercent, int zeroZoneCmp);

4.55. End effector AO flying stop

/**
* @brief End effector AO flying stop
* @return Error code
*/
int MoveToolAOStop();

4.56. AO flying code example

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

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

    DescPose offset_pos=new DescPose(0, 0, 0, 0, 0, 0);
    DescPose offset_pos1=new DescPose(0, 0, 50, 0, 0, 0);
    ExaxisPos epos=new ExaxisPos(0, 0, 0, 0);

    int tool = 0;
    int user = 0;
    double vel = 20.0;
    double acc = 20.0;
    double ovl = 100.0;
    double blendT = -1.0;
    int 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();

    return 0;
}

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