top of page
New in version C#SDK-v1.0.4.
/**
* @brief Start of segment welding
* @param [in] startDesePos start point Cartesian position
* @param [in] endDesePos end point Cartesian position
* @param [in] startJPos start point joint position
* @param [in] endJPos end point joint position
* @param [in] weldLength weldLength (mm)
* @param [in] noWeldLength length (mm)
* @param [in] weldIOType Weld IO type (0-control box IO; 1-expansion IO)
* @param [in] arcNum Welder profile number
* @param [in] weldTimeout start/recovery arc timeout time
* @param [in] isWeave whether or not to wiggle
* @param [in] weaveNum weave parameter configuration number
* @param [in] tool tool number
* @param [in] user Workpiece number
* @param [in] vel velocity percentage, range [0~100] * @param [in] acc.
* @param [in] acc Acceleration percentage, range [0~100], not open yet.
* @param [in] ovl velocity scaling factor, range [0~100]
* @param [in] blendR [-1.0]-motion in place (blocking), [0~1000.0]-smoothing radius (non-blocking) in mm
* @param [in] epos Extended axis position in mm
* @param [in] search 0-no wire seek, 1-wire seek
* @param [in] offset_flag 0-no offset, 1-offset in base/work coordinate system, 2-offset in tool coordinate system
* @param [in] offset_pos Position offset
* @return Error code
*/
int SegmentWeldStart(DescPose startDesePos, DescPose endDesePos, JointPos startJPos, JointPos endJPos, double weldLength, double noWeldLength, int weldIOType, int arcNum, int weldTimeout,bool isWeave, int weaveNum, int tool, int user, float vel, float acc, float ovl, float blendR, ExaxisPos epos, byte search, byte offset_flag, DescPose offset_pos);
14.29. Robot segment welding code example
New in version C#SDK-v1.0.4.
private void btnWeldStart_Click(object sender, EventArgs e)
{
robot.WeldingSetCurrent(1, 230, 0, 0);
robot.WeldingSetVoltage(1, 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);
int rtn = robot.SegmentWeldStart( p1Desc, p2Desc, p1Joint, p2Joint, 20, 20, 0, 0, 5000, false, 0, 0, 0, 100, 100, 100, -1, exaxisPos, 0, 0, offdese);
Console.WriteLine("SegmentWeldStart rtn is {0}", rtn);
}
14.30. Simulate the start of the swing
/**
* @brief Simulate swing start
* @param [in] weaveNum swing parameter number
* @return ErrorCode
*/
int WeaveStartSim(int weaveNum).
14.31. End of swing simulation
/**
* @brief Simulate end of swing
* @param [in] weaveNum swing parameter number
* @return ErrorCode
*/
int WeaveEndSim(int weaveNum).
14.32. Start trajectory detection warning (no motion)
/**
* @brief Start trajectory detection warning (no motion).
* @param [in] weaveNum swing parameter number
* @return Error code
*/
int WeaveInspectStart(int weaveNum).
14.33. End trajectory detection warning (no motion)
/**
* @brief End trajectory detection warning (no motion).
* @param [in] weaveNum swing parameter number
* @return Error code.
*/
int WeaveInspectEnd(int weaveNum).
14.34. Weave fading start
New in version C#SDK-V1.1.3: Web-3.8.2
/**
* @brief Swinging gradient start
* @param [in] weaveChangeFlag 1-change swing parameter; 2-change swing parameter + weld speed
* @param [in] weaveNum weaveNumber
* @param [in] velStart Welding start speed, (cm/min)
* @param [in] velEnd Weld end speed, (cm/min)
* @return Error code
*/
int WeaveChangeStart(int weaveChangeFlag, int weaveNum, double velStart, double velEnd);
14.35. Weave fade end
/**
* @brief End of swing gradient
* @return Error code
*/
int WeaveChangeEnd()
14.36. Sample Welding Code for Robot Weave Change
New in version C#SDK-V1.1.3: Web-3.8.2
private void btnweld_Click(object sender, EventArgs e)
{
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);
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);
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, exaxisPos, 0, 0, offdese);
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, exaxisPos, 0, 0, offdese);
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);
}
14.37. Extended IO-Configuration of Welder Gas Detection Signal
/**
* @brief Extended IO-Configuration Welder Gas Detection Signal
* @param [in] DONum Gas detection signal extended DO number
* @return error-code
*/
int SetAirControlExtDoNum(int DONum).
14.38. Extended IO-Configuration of the welder arc start signal
/**
* @brief Extended IO-Configuration Welder Arc Start Signal
* @param [in] DONum Welder arc start signal extended DO number
* @return Error code.
*/
int SetArcStartExtDoNum(int DONum).
14.39. Extended IO-Configuring the Welder Reverse Wire Feed Signal
/**
* @brief Extended IO-Configuration of the welder reverse wire feed signal.
* @param [in] DONum Reverse Wire Feed Signal Extension DO Number
* @return Error code.
*/
int SetWireReverseFeedExtDoNum(int DONum).
14.40. Extended IO-Configuration Welder Forward Wire Feed Signal
/**
* @brief Extended IO-Configuration of the welder's forward wire feed signal.
* @param [in] DONum Forward Wire Feed Signal Extension DO Number
* @return Error code.
*/
int SetWireForwardFeedExtDoNum(int DONum);
14.41. Extended IO-Configuration Welder Arc Start Success Signal
/**
* @brief Extended IO-Configuration Welder Arc Start Success Signal
* @param [in] DINum Extended DI number for arc success signaling.
* @return Error code.
*/
int SetArcDoneExtDiNum(int DINum).
14.42. Extended IO-Configuration Welder Ready Signal
/**
* @brief Extended IO-Configuration Welder Ready Signal
* @param [in] DINum Welder ready signal extended DI number
* @return error-code
*/
int SetWeldReadyExtDiNum(int DINum).
14.43. Extended IO-Configure weld interrupt recovery signal
/**
* @brief Extended IO-Configuration Weld Interrupt Recovery Signal
* @param [in] reWeldDINum Resume Weld Signal after Weld Interrupt Extended DI Number
* @param [in] abortWeldDINum Exit Weld Signal Extended DI Number after a Weld Interrupt
* @return Error Code
*/
int SetExtDIWeldBreakOffRecover(int reWeldDINum, int abortWeldDINum);
14.44. Set Extended IO Weld Signal Code Example
private void button51_Click(object sender, EventArgs e)
{
robot.SetArcStartExtDoNum(10);
robot.SetAirControlExtDoNum(20);
robot.SetWireForwardFeedExtDoNum(30);
robot.SetWireReverseFeedExtDoNum(40);
robot.SetWeldReadyExtDiNum(50);
robot.SetArcDoneExtDiNum(60);
robot.SetExtDIWeldBreakOffRecover(70, 80);
robot.SetWireSearchExtDIONum(0, 1);
}
bottom of page