top of page
/**
* @brief Intersecting line motion
* @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 positions
* @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] moveDirection Motion direction; 0-Clockwise; 1-Counterclockwise
* @param [in] offset Offset value
* @return Error code
*/
public int MoveIntersectLine(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 moveDirection, DescPose offset);
4.74. Robot Intersecting Line Motion Code Example
public static void TestIntersectLineMove(Robot robot)
{
DescPose[] mainPoint = new DescPose[6];
DescPose[] piecePoint = new DescPose[6];
ExaxisPos[] mainExaxisPos = new ExaxisPos[6];
ExaxisPos[] pieceExaxisPos = new ExaxisPos[6];
int extAxisFlag = 1;
ExaxisPos[] exaxisPos = new ExaxisPos[4];
DescPose offset =new DescPose(0.0, 2.0 ,30.0, -2.0, 0.0, 0.0 );
mainPoint[0] = new DescPose(490.004, -383.194, 402.735, -9.332, -1.528, 69.594);
mainPoint[1] = new DescPose(444.950, -407.117, 389.011, -5.546, -2.196, 65.279);
mainPoint[2] = new DescPose(445.168, -463.605, 355.759, -1.544, -10.886, 57.104);
mainPoint[3] = new DescPose(507.529, -485.385, 343.013, -0.786, -4.834, 61.799);
mainPoint[4] = new DescPose(554.390, -442.647, 367.701, -4.761, -10.181, 64.925);
mainPoint[5] = new DescPose(532.552, -394.003, 396.467, -13.732, -13.592, 67.411);
mainExaxisPos[0] = new ExaxisPos(-29.996, 0.000, 0.000, 0.000 );
mainExaxisPos[1] = new ExaxisPos(-29.996, 0.000, 0.000, 0.000 );
mainExaxisPos[2] = new ExaxisPos(-29.996, 0.000, 0.000, 0.000 );
mainExaxisPos[3] = new ExaxisPos(-29.996, 0.000, 0.000, 0.000 );
mainExaxisPos[4] = new ExaxisPos(-29.996, 0.000, 0.000, 0.000 );
mainExaxisPos[5] = new ExaxisPos(-29.996, 0.000, 0.000, 0.000 );
piecePoint[0] = new DescPose( 505.571, -192.408, 316.759, 38.098, 37.051, 139.447);
piecePoint[1] =new DescPose(533.837, -201.558, 332.340, 34.644, 42.339, 137.748);
piecePoint[2] =new DescPose(530.386, -225.085, 373.808, 35.431, 45.111, 137.560);
piecePoint[3] =new DescPose(485.646, -229.195, 383.778, 33.870, 45.173, 137.064);
piecePoint[4] =new DescPose(460.551, -212.161, 354.256, 28.856, 45.602, 135.930);
piecePoint[5] =new DescPose(474.217, -197.124, 324.611, 42.469, 41.133, 148.167);
pieceExaxisPos[0] = new ExaxisPos( -29.996, -0.000, 0.000, 0.000);
pieceExaxisPos[1] = new ExaxisPos( -29.996, -0.000, 0.000, 0.000);
pieceExaxisPos[2] = new ExaxisPos( -29.996, -0.000, 0.000, 0.000);
pieceExaxisPos[3] = new ExaxisPos( -29.996, -0.000, 0.000, 0.000);
pieceExaxisPos[4] = new ExaxisPos( -29.996, -0.000, 0.000, 0.000);
pieceExaxisPos[5] = new ExaxisPos( -29.996, -0.000, 0.000, 0.000);
exaxisPos[0] = new ExaxisPos(-29.996, -0.000, 0.000, 0.000);
exaxisPos[1] = new ExaxisPos(-44.994, 90.000, 0.000, 0.000);
exaxisPos[2] = new ExaxisPos(-59.992, 0.002, 0.000, 0.000);
exaxisPos[3] = new ExaxisPos(-44.994, -89.997, 0.000, 0.000);
int tool = 2;
int wobj = 0;
double vel = 100.0;
double acc = 100.0;
double ovl = 12.0;
double oacc = 12.0;
int moveType = 1;
int moveDirection = 1;
int rtn = robot.MoveToIntersectLineStart(mainPoint, mainExaxisPos, piecePoint, pieceExaxisPos, extAxisFlag, exaxisPos[0], tool, wobj, vel, acc, ovl, oacc, moveType, moveDirection, offset);
System.out.printf("MoveToIntersectLineStart rtn is %d\n", rtn);
rtn = robot.MoveIntersectLine(mainPoint, mainExaxisPos, piecePoint, pieceExaxisPos, extAxisFlag, exaxisPos, tool, wobj, vel, acc, 5.0, 5.0, moveDirection, offset);
System.out.printf("MoveIntersectLine rtn is %d\n", rtn);
robot.CloseRPC();
return ;
}
4.75. Stationary Air Motion
/**
* @brief Stationary Air Motion
* @return Error code
*/
public int MoveStationary()
4.76. Stationary Air Motion Code Example
public static void test_RecordandReplay(Robot robot)
{
int rtn = robot.LaserSensorRecordandReplay(0, 10, 1, 0, 0.1, 1, 1, 10, 100);
System.out.printf("LaserSensorRecordandReplay rtn is %d\n", rtn);
rtn = robot.MoveStationary();
System.out.printf("MoveStationary rtn is %d\n", rtn);
rtn = robot.LaserSensorRecord1(0, 10);
System.out.printf("LaserSensorRecordandReplay rtn is %d\n", rtn);
robot.CloseRPC();
robot.Sleep(9999999);
}
bottom of page