top of page
/**
* @brief Weaving start
* @param [in] weaveNum Weaving parameter configuration ID
* @return Error code
*/
int WeaveStart(int weaveNum);
14.21. Weaving end
/**
* @brief Weaving end
* @param [in] weaveNum Weaving parameter configuration ID
* @return Error code
*/
int WeaveEnd(int weaveNum);
14.22. Forward wire feeding
/**
* @brief Forward wire feeding
* @param [in] ioType IO type: 0-Controller IO; 1-Extension IO
* @param [in] wireFeed Wire feed control: 0-Stop; 1-Feed
* @return Error code
*/
int SetForwardWireFeed(int ioType, int wireFeed);
14.23. Reverse wire feeding
/**
* @brief Reverse wire feeding
* @param [in] ioType IO type: 0-Controller IO; 1-Extension IO
* @param [in] wireFeed Wire feed control: 0-Stop; 1-Feed
* @return Error code
*/
int SetReverseWireFeed(int ioType, int wireFeed);
14.24. Gas feeding
/**
* @brief Gas feeding
* @param [in] ioType IO type: 0-Controller IO; 1-Extension IO
* @param [in] airControl Gas control: 0-Stop; 1-Feed
* @return Error code
*/
int SetAspirated(int ioType, int airControl);
14.25. Set robot to resume welding after interruption
/**
* @brief Set robot to resume welding after interruption
* @return Error code
*/
int WeldingStartReWeldAfterBreakOff();
14.26. Set robot to abort welding after interruption
/**
* @brief Set robot to abort welding after interruption
* @return Error code
*/
int WeldingAbortWeldAfterBreakOff();
14.27. Robot welding control code example
public static int TestWelding(Robot robot)
{
robot.WeldingSetCurrent(0, 230, 0, 0);
robot.WeldingSetVoltage(0, 24, 0, 1);
DescPose p1Desc = new DescPose(228.879, -503.594, 453.984, -175.580, 8.293, 171.267);
JointPos p1Joint = new JointPos(102.700, -85.333, 90.518, -102.365, -83.932, 22.134);
DescPose p2Desc = new DescPose(-333.302, -435.580, 449.866, -174.997, 2.017, 109.815);
JointPos p2Joint = new JointPos(41.862, -85.333, 90.526, -100.587, -90.014, 22.135);
ExaxisPos exaxisPos = new ExaxisPos(0, 0, 0, 0);
DescPose offdese = new DescPose(0, 0, 0, 0, 0, 0);
robot.MoveJ(p1Joint, p1Desc, 13, 0, 20, 100, 100, exaxisPos, -1, 0, offdese);
robot.ARCStart(1, 0, 10000);
robot.WeaveStart(0);
robot.MoveL(p2Joint, p2Desc, 13, 0, 20, 100, 100, -1, 0, exaxisPos, 0, 0, offdese, 0, 10);
robot.ARCEnd(1, 0, 10000);
robot.WeaveEnd(0);
return 0;
}
14.28. Segment welding start
/**
* @brief Segment welding start
* @param [in] startDesePos Start point Cartesian position
* @param [in] endDesePos End point Cartesian pose
* @param [in] startJPos Start point joint pose
* @param [in] endJPos End point joint pose
* @param [in] weldLength Weld segment length (mm)
* @param [in] noWeldLength Non-weld segment length (mm)
* @param [in] weldIOType Welding IO type (0-Controller IO; 1-Extension IO)
* @param [in] arcNum Welder configuration file ID
* @param [in] weldTimeout Arc start/end timeout
* @param [in] isWeave Enable weaving
* @param [in] weaveNum Weaving parameter configuration ID
* @param [in] tool Tool number
* @param [in] user Workpiece number
* @param [in] vel Speed percentage (0~100)
* @param [in] acc Acceleration percentage (0~100) (Not currently available)
* @param [in] ovl Speed scaling factor (0~100)
* @param [in] blendR [-1.0]-Move to position (blocking); [0~1000.0]-Smoothing radius (non-blocking) in mm
* @param [in] epos External axis position in mm
* @param [in] search 0-No wire search; 1-Wire search
* @param [in] offset_flag 0-No offset; 1-Offset in base/workpiece frame; 2-Offset in tool frame
* @param [in] offset_pos Pose offset
* @return Error code
*/
int SegmentWeldStart(DescPose startDesePos, DescPose endDesePos, JointPos startJPos, JointPos endJPos, double weldLength, double noWeldLength, int weldIOType, int arcNum, int weldTimeout, boolean isWeave, int weaveNum, int tool, int user, double vel, double acc, double ovl, double blendR, ExaxisPos epos, int search, int offset_flag, DescPose offset_pos);
14.29. Robot segment welding code example
public static int TestSegWeld(Robot robot)
{
robot.WeldingSetCurrent(0, 230, 0, 0);
robot.WeldingSetVoltage(0, 24, 0, 1);
DescPose p1Desc = new DescPose(228.879, -503.594, 453.984, -175.580, 8.293, 171.267);
JointPos p1Joint = new JointPos(102.700, -85.333, 90.518, -102.365, -83.932, 22.134);
DescPose p2Desc = new DescPose(-333.302, -435.580, 449.866, -174.997, 2.017, 109.815);
JointPos p2Joint = new JointPos(41.862, -85.333, 90.526, -100.587, -90.014, 22.135);
ExaxisPos exaxisPos = new ExaxisPos(0, 0, 0, 0);
DescPose offdese = new DescPose(0, 0, 0, 0, 0, 0);
robot.GetForwardKin(p1Joint, p1Desc);
robot.GetForwardKin(p2Joint, p2Desc);
int rtn = robot.SegmentWeldStart(p1Desc, p2Desc, p1Joint, p2Joint, 20, 20, 0, 0, 5000, true, 0, 1, 0, 30, 100, 100, -1, exaxisPos, 0, 0, offdese);
return 0;
}
14.30. Simulation weaving start
/**
* @brief Simulation weaving start
* @param [in] weaveNum Weaving parameter ID
* @return Error code
*/
int WeaveStartSim(int weaveNum);
14.31. Simulation weaving end
/**
* @brief Simulation weaving end
* @param [in] weaveNum Weaving parameter ID
* @return Error code
*/
int WeaveEndSim(int weaveNum);
14.32. Start trajectory inspection warning (no movement)
/**
* @brief Start trajectory inspection warning (no movement)
* @param [in] weaveNum Weaving parameter ID
* @return Error code
*/
int WeaveInspectStart(int weaveNum);
14.33. End trajectory inspection warning (no movement)
/**
* @brief End trajectory inspection warning (no movement)
* @param [in] weaveNum Weaving parameter ID
* @return Error code
*/
int WeaveInspectEnd(int weaveNum);
14.34. Weaving transition start
Changed in version Java: SDK-v1.0.5-3.8.2
/**
* @brief Weaving transition start
* @param [in] weaveChangeFlag 1-Change weaving parameters; 2-Change weaving parameters + welding speed
* @param [in] weaveNum Weaving ID
* @param [in] velStart Welding start speed (cm/min)
* @param [in] velEnd Welding end speed (cm/min)
* @return Error code
*/
int WeaveChangeStart(int weaveChangeFlag, int weaveNum, double velStart, double velEnd);
14.35. Robot weaving transition welding code example
public static int TestWeave(Robot robot)
{
DescPose p1Desc = new DescPose(228.879, -503.594, 453.984, -175.580, 8.293, 171.267);
JointPos p1Joint = new JointPos(102.700, -85.333, 90.518, -102.365, -83.932, 22.134);
DescPose p2Desc = new DescPose(-333.302, -435.580, 449.866, -174.997, 2.017, 109.815);
JointPos p2Joint = new JointPos(41.862, -85.333, 90.526, -100.587, -90.014, 22.135);
ExaxisPos exaxisPos = new ExaxisPos(0, 0, 0, 0);
DescPose offdese = new DescPose(0, 0, 0, 0, 0, 0);
robot.MoveJ(p1Joint, p1Desc, 13, 0, 20, 100, 100, exaxisPos, -1, 0, offdese);
robot.WeaveStartSim(0);
robot.MoveL(p2Joint, p2Desc, 13, 0, 20, 100, 100, -1, 0, exaxisPos, 0, 0, offdese, 0, 10);
robot.WeaveEndSim(0);
robot.MoveJ(p1Joint, p1Desc, 13, 0, 20, 100, 100, exaxisPos, -1, 0, offdese);
robot.WeaveInspectStart(0);
robot.MoveL(p2Joint, p2Desc, 13, 0, 20, 100, 100, -1, 0, exaxisPos, 0, 0, offdese, 0, 10);
robot.WeaveInspectEnd(0);
robot.WeldingSetVoltage(1, 19, 0, 0);
robot.WeldingSetCurrent(1, 190, 0, 0);
robot.MoveL(p1Joint, p1Desc, 1, 1, 100, 100, 50, -1, 0, exaxisPos, 0, 0, offdese, 0, 10);
robot.ARCStart(1, 0, 10000);
robot.ArcWeldTraceControl(1, 0, 1, 0.06, 5, 5, 60, 1, 0.06, 5, 5, 80, 0, 0, 4, 1, 10, 0, 0);
robot.WeaveStart(0);
robot.WeaveChangeStart(1, 0, 50, 30);
robot.MoveL(p2Joint, p2Desc, 1, 1, 100, 100, 1, -1, 0, exaxisPos, 0, 0, offdese, 0, 10);
robot.WeaveChangeEnd();
robot.WeaveEnd(0);
robot.ArcWeldTraceControl(0, 0, 1, 0.06, 5, 5, 60, 1, 0.06, 5, 5, 80, 0, 0, 4, 1, 10, 0, 0);
robot.ARCEnd(1, 0, 10000);
return 0;
}
14.36. Weaving transition end
New in version Java: SDK-v1.0.2-3.7.9
/**
* @brief Weaving transition end
* @return Error code
*/
int WeaveChangeEnd();
14.37. Extension IO - Configure welder gas detection signal
/**
* @brief Extension IO - Configure welder gas detection signal
* @param [in] DONum Gas detection signal extension DO number
* @return Error code
*/
int SetAirControlExtDoNum(int DONum);
14.38. Extension IO - Configure welder arc start signal
/**
* @brief Extension IO - Configure welder arc start signal
* @param [in] DONum Welder arc start signal extension DO number
* @return Error code
*/
int SetArcStartExtDoNum(int DONum);
14.39. Extension IO - Configure welder reverse wire feed signal
/**
* @brief Extension IO - Configure welder reverse wire feed signal
* @param [in] DONum Reverse wire feed signal extension DO number
* @return Error code
*/
int SetWireReverseFeedExtDoNum(int DONum);
14.40. Extension IO - Configure welder forward wire feed signal
/**
* @brief Extension IO - Configure welder forward wire feed signal
* @param [in] DONum Forward wire feed signal extension DO number
* @return Error code
*/
int SetWireForwardFeedExtDoNum(int DONum);
14.41. Extension IO - Configure welder arc success signal
/**
* @brief Extension IO - Configure welder arc success signal
* @param [in] DINum Arc success signal extension DI number
* @return Error code
*/
int SetArcDoneExtDiNum(int DINum);
14.42. Extension IO - Configure welder ready signal
/**
* @brief Extension IO - Configure welder ready signal
* @param [in] DINum Welder ready signal extension DI number
* @return Error code
*/
int SetWeldReadyExtDiNum(int DINum);
bottom of page