Skip to main content

Methods

Arc Welding Process Package Interface

getArcOnData()

ArcOnData rokae::ArcWelding::getArcOnData ( const std::string & arconDataName, error_code & ec ) noexcept

Get arc start parameters. This function returns the corresponding arc start parameter data based on the specified arc start parameter name. If operation is successful (error code is 0), the returned parameters are valid; if failed (error code is non-zero), default values are returned.

  • Parameters:
    • [in] arconDataName: Arc start parameter name, used to specify the arc start parameters to get
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

setArcOnData()

void rokae::ArcWelding::setArcOnData ( const ArcOnData & arconData, error_code & ec )

Set arc start parameters. This function is used to save the specified arc start parameter data to the system for subsequent use.

  • Parameters:
    • [in] arconData: Arc start parameters, containing the arc start parameter data to be set
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

removeArcOnData() [1/2]

void rokae::ArcWelding::removeArcOnData ( const std::string & arconDataName, error_code & ec )

Delete specified arc start parameters. This function removes the corresponding arc start parameter data from the system based on the arc start parameter name.

  • Parameters:
    • [in] arconDataName: Arc start parameter name, specifying the arc start parameters to delete
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

removeArcOnData() [2/2]

void rokae::ArcWelding::removeArcOnData ( const std::vector<std::string> & arconDataNames, error_code & ec )

Batch delete arc start parameters. This function removes multiple arc start parameter data from the system at once based on the provided list of arc start parameter names.

  • Parameters:
    • [in] arconDataNames: List of arc start parameter names, containing all arc start parameter names to be deleted
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

getArcData()

ArcData rokae::ArcWelding::getArcData ( const std::string & arcDataName, error_code & ec )

Get welding parameters. This function returns the corresponding welding parameter data based on the specified welding parameter name. If operation is successful (error code is 0), the returned parameters are valid; if failed (error code is non-zero), default values are returned.

  • Parameters:
    • [in] arcDataName: Welding parameter name, used to specify the welding parameters to get
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

setArcData()

void rokae::ArcWelding::setArcData ( const ArcData & arcData, error_code & ec )

Set welding parameters. This function is used to save the specified welding parameter data to the system for subsequent use.

  • Parameters:
    • [in] arcData: Welding parameters, containing the welding parameter data to be set
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

removeArcData() [1/2]

void rokae::ArcWelding::removeArcData ( const std::string & arcDataName, error_code & ec )

Delete welding parameters. This function removes the corresponding welding parameter data from the system based on the welding parameter name.

  • Parameters:
    • [in] arcDataName: Welding parameter name, specifying the welding parameters to delete
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

removeArcData() [2/2]

void rokae::ArcWelding::removeArcData ( const std::vector<std::string> & arcDataNames, error_code & ec )

Batch delete welding parameters. This function removes multiple welding parameter data from the system at once based on the provided list of welding parameter names.

  • Parameters:
    • [in] arcDataNames: List of welding parameter names, containing all welding parameter names to be deleted
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

enableArcData()

void rokae::ArcWelding::enableArcData ( const ArcData & arcData, error_code & ec )

Enable welding parameters. When not running, send welding parameters to the welder to check whether communication is established and settings are correct by observing the welder panel display. This operation does not save parameters.

  • Parameters:
    • [in] arcData: Welding parameters, containing the welding parameter data to be temporarily enabled
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

getArcOffData()

ArcOffData rokae::ArcWelding::getArcOffData ( const std::string & arcoffDataName, error_code & ec )

Get arc end parameters. This function returns the corresponding arc end parameter data based on the specified arc end parameter name. If operation is successful (error code is 0), the returned parameters are valid; if failed (error code is non-zero), default values are returned.

  • Parameters:
    • [in] arcoffDataName: Arc end parameter name, used to specify the arc end parameters to get
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

setArcOffData()

void rokae::ArcWelding::setArcOffData ( const ArcOffData & arcoffData, error_code & ec )

Set arc end parameters. This function is used to save the specified arc end parameter data to the system for subsequent use.

  • Parameters:
    • [in] arcoffData: Arc end parameters, containing the arc end parameter data to be set
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

removeArcOffData() [1/2]

void rokae::ArcWelding::removeArcOffData ( const std::string & arcoffDataName, error_code & ec )

Delete arc end parameters. This function removes the corresponding arc end parameter data from the system based on the arc end parameter name.

  • Parameters:
    • [in] arcoffDataName: Arc end parameter name, specifying the arc end parameters to delete
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

removeArcOffData() [2/2]

void rokae::ArcWelding::removeArcOffData ( const std::vector<std::string> & arcoffDataNames, error_code & ec )

Batch delete arc end parameters. This function removes multiple arc end parameter data from the system at once based on the provided list of arc end parameter names.

  • Parameters:
    • [in] arcoffDataNames: List of arc end parameter names, containing all arc end parameter names to be deleted
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

getWeaveData()

WeaveData rokae::ArcWelding::getWeaveData ( const std::string & weaveDataName, error_code & ec )

Get weaving parameters. This function returns the corresponding weaving parameter data based on the specified weaving parameter name. If operation is successful (error code is 0), the returned parameters are valid; if failed (error code is non-zero), default values are returned.

  • Parameters:
    • [in] weaveDataName: Weaving parameter name, used to specify the weaving parameters to get
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

setWeaveData()

void rokae::ArcWelding::setWeaveData ( const WeaveData & weaveData, error_code & ec )

Set weaving parameters. This function is used to save the specified weaving parameter data to the system for subsequent use.

  • Parameters:
    • [in] weaveData: Weaving parameters, containing the weaving parameter data to be set
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

removeWeaveData() [1/2]

void rokae::ArcWelding::removeWeaveData ( const std::string & weaveDataName, error_code & ec )

Delete weaving parameters. This function removes the corresponding weaving parameter data from the system based on the weaving parameter name.

  • Parameters:
    • [in] weaveDataName: Weaving parameter name, specifying the weaving parameters to delete
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

removeWeaveData() [2/2]

void rokae::ArcWelding::removeWeaveData ( const std::vector<std::string> & weaveDataNames, error_code & ec )

Batch delete weaving parameters. This function removes multiple weaving parameter data from the system at once based on the provided list of weaving parameter names.

  • Parameters:
    • [in] weaveDataNames: List of weaving parameter names, containing all weaving parameter names to be deleted
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

getWeaveAdaptiveData()

WeaveAdaptiveData rokae::ArcWelding::getWeaveAdaptiveData ( error_code & ec )

Get weaving adaptive parameters. This function returns the current weaving adaptive parameter data in the system. If operation is successful (error code is 0), the returned parameters are valid; if failed (error code is non-zero), default values are returned.

  • Parameters:
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

setWeaveAdaptiveData()

void rokae::ArcWelding::setWeaveAdaptiveData ( const WeaveAdaptiveData & weaveAdaptiveData, error_code & ec )

Set weaving adaptive parameters. This function is used to save the specified weaving adaptive parameter data to the system for subsequent use.

  • Parameters:
    • [in] weaveAdaptiveData: Weaving adaptive parameters, containing the weaving adaptive parameter data to be set
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

getSegData()

SegData rokae::ArcWelding::getSegData ( const std::string & segDataName, error_code & ec )

Get segmented welding parameters. This function returns the corresponding segmented welding parameter data based on the specified segmented welding parameter name. If operation is successful (error code is 0), the returned parameters are valid; if failed (error code is non-zero), default values are returned.

  • Parameters:
    • [in] segDataName: Segmented welding parameter name, used to specify the segmented welding parameters to get
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

setSegData()

void rokae::ArcWelding::setSegData ( const SegData & segData, error_code & ec )

Set segmented welding parameters. This function is used to save the specified segmented welding parameter data to the system for subsequent use.

  • Parameters:
    • [in] segData: Segmented welding parameters, containing the segmented welding parameter data to be set
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

removeSegData() [1/2]

void rokae::ArcWelding::removeSegData ( const std::string & segDataName, error_code & ec )

Delete segmented welding parameters. This function removes the corresponding segmented welding parameter data from the system based on the segmented welding parameter name.

  • Parameters:
    • [in] segDataName: Segmented welding parameter name, specifying the segmented welding parameters to delete
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

removeSegData() [2/2]

void rokae::ArcWelding::removeSegData ( const std::vector<std::string> & segDataNames, error_code & ec )

Batch delete segmented welding parameters. This function removes multiple segmented welding parameter data from the system at once based on the provided list of segmented welding parameter names.

  • Parameters:
    • [in] segDataNames: List of segmented welding parameter names, containing all segmented welding parameter names to be deleted
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

getLaserTrackData()

LaserTrackData rokae::ArcWelding::getLaserTrackData ( const std::string & laserTrackDataName, error_code & ec )

Get laser tracking parameters. This function returns the corresponding laser tracking parameter data based on the specified laser tracking parameter name. If operation is successful (error code is 0), the returned parameters are valid; if failed (error code is non-zero), default values are returned.

  • Parameters:
    • [in] laserTrackDataName: Laser tracking parameter name, used to specify the laser tracking parameters to get
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

setLaserTrackData()

void rokae::ArcWelding::setLaserTrackData ( const LaserTrackData & laserTrackData, error_code & ec )

Set laser tracking parameters. This function is used to save the specified laser tracking parameter data to the system for subsequent use.

  • Parameters:
    • [in] laserTrackData: Laser tracking parameters, containing the laser tracking parameter data to be set
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

removeLaserTrackData() [1/2]

void rokae::ArcWelding::removeLaserTrackData ( const std::string & laserTrackDataName, error_code & ec )

Delete laser tracking parameters. This function removes the corresponding laser tracking parameter data from the system based on the laser tracking parameter name.

  • Parameters:
    • [in] laserTrackDataName: Laser tracking parameter name, specifying the laser tracking parameters to delete
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

removeLaserTrackData() [2/2]

void rokae::ArcWelding::removeLaserTrackData ( const std::vector<std::string> & laserTrackDataNames, error_code & ec )

Batch delete laser tracking parameters. This function removes multiple laser tracking parameter data from the system at once based on the provided list of laser tracking parameter names.

  • Parameters:
    • [in] laserTrackDataNames: List of laser tracking parameter names, containing all laser tracking parameter names to be deleted
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

getLaserSearchData()

LaserSearchData rokae::ArcWelding::getLaserSearchData ( const std::string & laserSearchDataName, error_code & ec )

Get laser search parameters. This function returns the corresponding laser search parameter data based on the specified laser search parameter name. If operation is successful (error code is 0), the returned parameters are valid; if failed (error code is non-zero), default values are returned.

  • Parameters:
    • [in] laserSearchDataName: Laser search parameter name, used to specify the laser search parameters to get
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

setLaserSearchData()

void rokae::ArcWelding::setLaserSearchData ( const LaserSearchData & laserSearchData, error_code & ec )

Set laser search parameters. This function is used to save the specified laser search parameter data to the system for subsequent use.

  • Parameters:
    • [in] laserSearchData: Laser search parameters, containing the laser search parameter data to be set
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

removeLaserSearchData() [1/2]

void rokae::ArcWelding::removeLaserSearchData ( const std::string & laserSearchDataName, error_code & ec )

Delete laser search parameters. This function removes the corresponding laser search parameter data from the system based on the laser search parameter name.

  • Parameters:
    • [in] laserSearchDataName: Laser search parameter name, specifying the laser search parameters to delete
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

removeLaserSearchData() [2/2]

void rokae::ArcWelding::removeLaserSearchData ( const std::vector<std::string> & laserSearchDataNames, error_code & ec )

Batch delete laser search parameters. This function removes multiple laser search parameter data from the system at once based on the provided list of laser search parameter names.

  • Parameters:
    • [in] laserSearchDataNames: List of laser search parameter names, containing all laser search parameter names to be deleted
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

getIOSetting()

IOSetting rokae::ArcWelding::getIOSetting ( error_code & ec )

Get IO settings. This function returns the current IO configuration parameters. If operation is successful (error code is 0), the returned parameters are valid; if failed (error code is non-zero), default values are returned.

  • Parameters:
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

setIOSetting()

void rokae::ArcWelding::setIOSetting ( const IOSetting & ioSetting, error_code & ec )

Set IO settings. This function is used to configure system IO parameters. Note: This interface can only be called when welding is not enabled.

  • Parameters:
    • [in] ioSetting: IO settings, containing the IO parameter data to be configured
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

getCurrentCharacteristicCurveData()

CharacteristicCurveData rokae::ArcWelding::getCurrentCharacteristicCurveData ( const std::string & name, error_code & ec )

Get current characteristic curve parameters. This function returns the corresponding current characteristic curve data based on the specified file name. If operation is successful (error code is 0), the returned parameters are valid; if failed (error code is non-zero), default values are returned.

  • Parameters:
    • [in] name: File name, used to specify the current characteristic curve to get
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

setCurrentCharacteristicCurveData()

void rokae::ArcWelding::setCurrentCharacteristicCurveData ( const CharacteristicCurveData & data, error_code & ec )

Set current characteristic curve parameters, and perform calculation and save operations simultaneously. This function is used to configure and save current characteristic curves, only need to pass in name and key point data.

  • Parameters:
    • [in] data: Current characteristic curve parameters, containing the name and key point data to be set
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

getVoltageCharacteristicCurveData()

CharacteristicCurveData rokae::ArcWelding::getVoltageCharacteristicCurveData ( const std::string & name, error_code & ec )

Get voltage characteristic curve parameters. This function returns the corresponding voltage characteristic curve data based on the specified file name. If operation is successful (error code is 0), the returned parameters are valid; if failed (error code is non-zero), default values are returned.

  • Parameters:
    • [in] name: File name, used to specify the voltage characteristic curve to get
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

setVoltageCharacteristicCurveData()

void rokae::ArcWelding::setVoltageCharacteristicCurveData ( const CharacteristicCurveData & data, error_code & ec )

Set voltage characteristic curve parameters, and perform calculation and save operations simultaneously. This function is used to configure and save voltage characteristic curves, only need to pass in name and key point data.

  • Parameters:
    • [in] data: Voltage characteristic curve parameters, containing the name and key point data to be set
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

calculateCurrentCurve()

CharacteristicCurveData rokae::ArcWelding::calculateCurrentCurve ( const CharacteristicCurveData & data, error_code & ec )

Calculate current characteristic curve parameters, only perform calculation operation, no saving. This function is used to calculate current characteristic curves based on passed key point data, suitable for previewing or verifying calculation results.

  • Parameters:
    • [in] data: Current characteristic curve parameters, containing the name and key point data to be calculated
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

calculateVoltageCurve()

CharacteristicCurveData rokae::ArcWelding::calculateVoltageCurve ( const CharacteristicCurveData & data, error_code & ec )

Calculate voltage characteristic curve parameters, only perform calculation operation, no saving. This function is used to calculate voltage characteristic curves based on passed key point data, suitable for previewing or verifying calculation results.

  • Parameters:
    • [in] data: Voltage characteristic curve parameters, containing the name and key point data to be calculated
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

getWelderStatus()

WelderStatus rokae::ArcWelding::getWelderStatus ( error_code & ec )

Get welder status. This function returns the current welder running status information. If operation is successful (error code is 0), the returned parameters are valid; if failed (error code is non-zero), default values are returned.

  • Parameters:
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

setWelder() [1/2]

void rokae::ArcWelding::setWelder ( const std::string & protocol, const std::string & mfr, const std::string & type, int current, error_code & ec ) noexcept

Set welder parameters. This function configures the welder by specifying communication protocol, manufacturer, type, and current specifications. Note: If arc welding connection is already enabled, call disconnectFromWelder first before switching settings; configure when welder is not connected.

  • Parameters:
    • [in] protocol: Communication protocol, e.g., "ethercat"
    • [in] mfr: Manufacturer, e.g., "aotai"
    • [in] type: Welder type, e.g., "RL/RPL", "RP/RPH"
    • [in] current: Current type, e.g., 350, 500, 630, 800
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

setWelder() [2/2]

void rokae::ArcWelding::setWelder ( const ArcWelding::WelderSetting & welderSetting, error_code & ec ) noexcept

Set welder parameters. This function configures the welder by passing in a complete welder setting parameter structure. Note: If arc welding connection is already enabled, call disconnectFromWelder first before switching settings.

  • Parameters:
    • [in] welderSetting: Welder setting parameters, containing all welder information to be configured
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

getWelderSetting()

WelderSetting rokae::ArcWelding::getWelderSetting ( error_code & ec )

Get welder settings. This function returns the currently configured welder setting parameters. If operation is successful (error code is 0), the returned parameters are valid; if failed (error code is non-zero), default values are returned.

  • Parameters:
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

connectToWelder()

void rokae::ArcWelding::connectToWelder ( error_code & ec )

Connect to welder, enable arc welding function. This function is used to establish connection with the welder, making arc welding function available.

  • Parameters:
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

disconnectFromWelder()

void rokae::ArcWelding::disconnectFromWelder ( error_code & ec )

Disconnect from welder, disable arc welding function. This function is used to disconnect from the welder and disable arc welding related functions.

  • Parameters:
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

isEniHaveWeld()

bool rokae::ArcWelding::isEniHaveWeld ( error_code & ec )

Read whether physical welder is currently connected (EtherCAT welders only, determined by currently used ENI file). This function is used to detect whether an actual physical welder is currently connected.

  • Parameters:
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)
  • Return Value:
    • Valid when error code is 0, returns false if error code is non-zero

setIsEniHaveWeld()

void rokae::ArcWelding::setIsEniHaveWeld ( bool isEniHaveWeld, error_code & ec )

Set whether to connect physical welder (EtherCAT welders only, requires switching ENI file and restarting controller to take effect). This function is used to configure whether to connect an actual physical welder, usually requires corresponding ENI file support.

  • Note: Unsuccessful reasons are mostly due to missing corresponding ENI file, please ensure the corresponding ENI file has been imported.
  • Parameters:
    • [in] isEniHaveWeld: Whether to connect physical welder, true means connect, false means not connect
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

getWeldMode()

WeldMode rokae::ArcWelding::getWeldMode ( error_code & ec )

Get welding mode. This function returns the currently configured welding mode parameters. If operation is successful (error code is 0), the returned parameters are valid; if failed (error code is non-zero), default values are returned.

  • Parameters:
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

setWeldMode()

void rokae::ArcWelding::setWeldMode ( const WeldMode & weldMode, error_code & ec )

Set welding mode. This function is used to configure the system to use the specified welding mode.

  • Parameters:
    • [in] weldMode: Welding mode, containing the welding mode parameters to be set
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

getRunningParam()

ArcWeldRunningParam rokae::ArcWelding::getRunningParam ( error_code & ec ) noexcept

Read welding running parameters. This function returns the currently configured welding running parameters. If operation is successful (error code is 0), the returned parameters are valid; if failed (error code is non-zero), default values are returned.

  • Parameters:
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

setRunningParam()

void rokae::ArcWelding::setRunningParam ( const ArcWeldRunningParam & data, error_code & ec )

Set welding running parameters. This function is used to configure the system to use the specified welding running parameters.

  • Parameters:
    • [in] data: Welding running parameters, containing the running parameter data to be set
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

feedOnWire() [1/2]

void rokae::ArcWelding::feedOnWire ( bool enable, error_code & ec ) noexcept

Feed wire or stop feeding wire. enable is true to feed wire, false to stop.

  • Parameters:
    • [in] enable: Whether to feed wire, true to feed, false to stop
    • [out] ec: Error code

feedOnWire() [2/2]

void rokae::ArcWelding::feedOnWire ( double time, error_code & ec, bool enable = true ) noexcept

Feed wire. time is wire feed time, unit: seconds, must be greater than 0.1; only effective when enable is true.

  • Parameters:
    • [in] time: Wire feed time, unit: seconds
    • [out] ec: Error code
    • [in] enable: Whether to feed wire, true to feed, false to stop, default true

feedBackWire() [1/2]

void rokae::ArcWelding::feedBackWire ( bool enable, error_code & ec ) noexcept

Retract wire or stop retracting wire.

  • Parameters:
    • [in] enable: Whether to retract wire, true to retract, false to stop
    • [out] ec: Error code

feedBackWire() [2/2]

void rokae::ArcWelding::feedBackWire ( double time, error_code & ec, bool enable = true ) noexcept

Retract wire. time is wire retract time, unit: seconds, must be greater than 0.1; only effective when enable is true.

  • Parameters:
    • [in] time: Wire retract time, unit: seconds
    • [out] ec: Error code
    • [in] enable: Whether to retract wire, true to retract, false to stop, default true

detectGas() [1/2]

void rokae::ArcWelding::detectGas ( error_code & ec ) noexcept

Gas check. After starting gas check, executes according to running parameter ArcWeldRunningParam.gas_detect_time; calling again before time expires stops it; calling again after stopped restarts.

  • Parameters:
    • [out] ec: Error code

detectGas() [2/2]

void rokae::ArcWelding::detectGas ( double time, error_code & ec, bool enable = true ) noexcept

Gas check. time is gas check time, unit: seconds, must be greater than 0.1; only effective when enable is true.

  • Parameters:
    • [in] time: Gas check time, unit: seconds
    • [out] ec: Error code
    • [in] enable: Whether to check gas, true to check, false to stop, default true

setCurrentAndVoltage()

void rokae::ArcWelding::setCurrentAndVoltage ( double current, double voltage, error_code & ec )

Set current and voltage online. This function is used to set current and voltage parameters in real-time during welding state, only effective in welding state. Current unit can be A or mm/s (depending on current mode), voltage unit can be V or % (depending on voltage mode).

  • Parameters:
    • [in] current: Current or wire feed speed, unit can be A or mm/s depending on current mode
    • [in] voltage: Voltage, unit can be V or % depending on voltage mode
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

saveCurrentAndVoltage()

void rokae::ArcWelding::saveCurrentAndVoltage ( double current, double voltage, error_code & ec )

Save current and voltage online. This function is used to save the set current and voltage parameters in real-time during welding state, only effective in welding state. Current unit can be A or mm/s (depending on current mode), voltage unit can be V or % (depending on voltage mode).

  • Parameters:
    • [in] current: Current or wire feed speed, unit can be A or mm/s depending on current mode
    • [in] voltage: Voltage, unit can be V or % depending on voltage mode
    • [out] ec: Error code, used to indicate whether function execution was successful (0 means success, non-zero means failure)

startWelding()

void rokae::ArcWelding::startWelding ( double current, double voltage, error_code & ec, std::string voltage_mode = "unified", std::string current_mode = "current", std::string work_mode = "flat_characteristic" )

Start tack welding. Work mode is DC, current mode is current, voltage mode defaults to unified.

  • Parameters:
    • [in] current: Current, unit: A, range [1,300]; wire feed speed, unit: mm/s, range [1,500]
    • [in] voltage: Voltage, unit: V | %, range [-30,30]
    • [out] ec: Error code
    • [in] voltage_mode: Voltage mode, "separate"-separate, "unified"-unified, default "unified"
    • [in] current_mode: Current mode, "current"-current, "wire_feed"-wire feed speed, default "current"
    • [in] work_mode: Work mode, default "flat_characteristic"

stopWelding()

void rokae::ArcWelding::stopWelding ( error_code & ec )

Stop tack welding.

  • Parameters:
    • [out] ec: Error code

setHandeyeData()

void rokae::ArcWelding::setHandeyeData ( const HandeyeData& handeyedata, error_code& ec )

Add and set hand-eye calibration result parameters.

  • Parameters:
    • [in] handeyedata: Hand-eye calibration result
    • [out] ec: Error code

getHandeyeData()

HandeyeData rokae::ArcWelding::getHandeyeData ( const std::string& name, error_code& ec )

Get currently set hand-eye calibration result.

  • Parameters:
    • [in] name: Hand-eye calibration result file number
    • [out] ec: Error code
  • Return Value:
    • Hand-eye calibration result

removeHandeyeData() [1/2]

void rokae::ArcWelding::removeHandeyeData ( const std::string& name, error_code& ec )

Delete hand-eye calibration result.

  • Parameters:
    • [in] name: Hand-eye calibration file number
    • [out] ec: Error code

removeHandeyeData() [2/2]

void rokae::ArcWelding::removeHandeyeData ( const std::vector<std::string>& names, error_code& ec )

Delete multiple hand-eye calibration results.

  • Parameters:
    • [in] names: List of hand-eye calibration file numbers
    • [out] ec: Error code

startHandeyeCalibration()

void rokae::ArcWelding::startHandeyeCalibration ( const std::string name, int type, error_code& ec )

Start hand-eye calibration, requires laser sensor to be already connected.

  • Parameters:
    • [in] name: Hand-eye calibration file number
    • [in] type: Number of calibration points, currently can only be 6
    • [out] ec: Error code

calibratePoint()

CalibrationResult rokae::ArcWelding::calibratePoint ( int id, error_code& ec )

Add calibration point for hand-eye calibration.

  • Parameters:
    • [in] id: Point number, 0: tip collection point, 1-6: calibration points
    • [out] ec: Error code
  • Return Value:
    • Point result

calibrateEnd()

std::array<double,3> rokae::ArcWelding::calibrateEnd ( HandeyeData& handeyedata, error_code& ec )

End hand-eye calibration, calculate calibration result.

  • Parameters:
    • [out] handeyedata: Hand-eye calibration result
    • [out] ec: Error code
  • Return Value:
    • Self-check error [max,min,mean]

setLaserSensorCfg()

void rokae::ArcWelding::setLaserSensorCfg ( const LaserSensorCfg& cfg, error_code& ec )

Add and set laser sensor configuration parameters.

  • Parameters:
    • [in] cfg: Laser sensor basic configuration data
    • [out] ec: Error code

getLaserSensorCfg()

LaserSensorCfg rokae::ArcWelding::getLaserSensorCfg ( const std::string& name, error_code& ec )

Get laser sensor configuration parameters.

  • Parameters:
    • [in] name: Laser sensor name
    • [out] ec: Error code
  • Return Value:
    • Sensor configuration parameters

removeLaserSensorCfg() [1/2]

void rokae::ArcWelding::removeLaserSensorCfg ( const std::string& device_name, error_code& ec )

Delete laser sensor configuration parameters.

  • Parameters:
    • [in] device_name: Laser sensor device name
    • [out] ec: Error code

removeLaserSensorCfg() [2/2]

void rokae::ArcWelding::removeLaserSensorCfg ( const std::vector<std::string>& device_names, error_code& ec )

Delete multiple laser sensor configuration parameters.

  • Parameters:
    • [in] device_names: List of laser sensor device names
    • [out] ec: Error code

connLaserSensorDev()

void rokae::ArcWelding::connLaserSensorDev ( const std::string& device_name, error_code& ec )

Connect laser sensor. This function is used to connect the laser sensor device with the specified name.

  • Parameters:
    • [in] device_name: Laser sensor device name
    • [out] ec: Error code

disconnLaserSensorDev()

void rokae::ArcWelding::disconnLaserSensorDev ( const std::string& device_name, error_code& ec )

Disconnect laser sensor. This function is used to disconnect from the laser sensor device with the specified name.

  • Parameters:
    • [in] device_name: Laser sensor device name
    • [out] ec: Error code

openLaserTrack()

void rokae::ArcWelding::openLaserTrack ( const std::string& device_name, error_code& ec )

Open laser tracker, start getting laser welder seam data. This function is used to start the seam tracking function of the specified laser sensor device.

  • Parameters:
    • [in] device_name: Laser sensor device name
    • [out] ec: Error code

closeLaserTrack()

void rokae::ArcWelding::closeLaserTrack ( const std::string& device_name, error_code& ec )

Close laser tracker, stop getting laser welder seam data. This function is used to stop the seam tracking function of the specified laser sensor device.

  • Parameters:
    • [in] device_name: Laser sensor device name
    • [out] ec: Error code

setArcTrackParam()

void rokae::ArcWelding::setArcTrackParam ( const ArcTrackParam& param, error_code& ec )

Set arc tracking parameters. This function is used to configure arc tracking related parameters.

  • Parameters:
    • [in] param: Arc tracking parameters
    • [out] ec: Error code

getArcTrackParam()

ArcTrackParam rokae::ArcWelding::getArcTrackParam ( const std::string name, error_code& ec )

Get arc tracking parameter settings. This function is used to get arc tracking parameters for the specified file number.

  • Parameters:
    • [in] name: Arc tracking parameter file number
    • [out] ec: Error code
  • Return Value:
    • Arc tracking parameters

removeArcTrackParam() [1/2]

void rokae::ArcWelding::removeArcTrackParam ( const std::string& name, error_code& ec )

Delete arc tracking parameters. This function is used to delete arc tracking parameters for the specified file number.

  • Parameters:
    • [in] name: Arc tracking parameter file number
    • [out] ec: Error code

removeArcTrackParam() [2/2]

void rokae::ArcWelding::removeArcTrackParam ( const std::vector<std::string>& names, error_code& ec )

Delete multiple arc tracking parameters. This function is used to batch delete multiple arc tracking parameter files.

  • Parameters:
    • [in] names: List of arc tracking parameter file numbers
    • [out] ec: Error code

setAnticollision()

void rokae::ArcWelding::setAnticollision ( const std::string& signal, bool enable, bool block, int countdown, error_code& ec )

Set collision sensor. This function is used to configure collision related parameters, including DI signal, enable status, block switch and countdown.

  • Parameters:
    • [in] signal: DI signal name
    • [in] enable: Open/Close
    • [in] block: Block switch
    • [in] countdown: Countdown, opens collision sensor after countdown ends
    • [out] ec: Error code, -260 - missing required parameters; -14510 - failed to bind system input (DI signal does not exist or already bound as system input)

getAnticollisionState()

AnticollisionState rokae::ArcWelding::getAnticollisionState ( error_code& ec )

Get collision sensor settings or status. This function is used to query current collision configuration or status information.

  • Parameters:
    • [out] ec: Error code
  • Return Value:
    • Collision settings or status, invalid when error code is not 0

cancelAutoGoBackOnce()

void rokae::ArcWelding::cancelAutoGoBackOnce ( error_code & ec )

When welding parameter restart back distance is not zero, real welding mode will go back a distance before restarting arc welding. Calling this interface in paused state can temporarily disable go back once, moving from pause point.

  • Parameters:
    • [out] ec: Error code

executeLaserSearch()

std::tuple<bool, CartesianPosition> rokae::ArcWelding::executeLaserSearch ( ArcWelding::LaserSearchCommand cmd, bool isMove, std::chrono::steady_clock::duration timeout, error_code & ec )

Laser search, blocks waiting for motion to end. If timeout is set, this function will block until timeout or search ends.

  • Parameters:
    • [in] cmd: Laser search command
    • [in] isMove: Whether to start motion immediately. false: only add search command, need additional moveStart() to execute; true: add search command and execute
    • [in] timeout: Timeout. 0: do not wait for search result and exit directly, return default values; >0: wait for search result, return default values on timeout
    • [out] ec: Error code
  • Return Value:
    • (whether found, found pose), found pose is based on tool workpiece coordinate system

calcIntersection()

CartesianPosition rokae::ArcWelding::calcIntersection ( const std::vector<CartesianPosition> & points, error_code & ec )

Laser search - calculate intersection from four points. Only calculates position, pose takes first point's pose from points.

  • Parameters:
    • [in] points: 4 searched points, first two form line 1, last two form line 2
    • [out] ec: Error code, usually calculation failure, see SDK logs for failure reasons
  • Return Value:
    • Calculated intersection, valid when no error code

clearWelderAlarm()

void rokae::ArcWelding::clearWelderAlarm ( error_code & ec ) noexcept

Clear welder alarm.

  • Parameters:
    • [out] ec: Error code

getWelderWorkModes()

std::vector<std::string> rokae::ArcWelding::getWelderWorkModes ( error_code & ec ) noexcept

Get list of work mode strings supported by current welder brand and model.

  • Parameters:
    • [out] ec: Error code
  • Return Value:
    • Supported work modes; empty when error code is non-0 or welder has no corresponding data

weldOffsetJog()

void rokae::ArcWelding::weldOffsetJog ( const WeldOffsetJogDir & dir, error_code & ec ) noexcept

Weave offset jog: jog robot TCP along Y, Z directions of path coordinate system during welding process.

  • Parameters:
    • [in] dir: Offset direction, see WeldOffsetJogDir
    • [out] ec: Error code

getLayerData()

LayerData rokae::ArcWelding::getLayerData ( const std::string & layerDataName, error_code & ec ) noexcept

Get multi-layer multi-pass parameters. Returns valid data when error code is 0, otherwise default values.

  • Parameters:
    • [in] layerDataName: Multi-layer multi-pass parameter name
    • [out] ec: Error code

setLayerData()

void rokae::ArcWelding::setLayerData ( const LayerData & layerData, error_code & ec ) noexcept

Set multi-layer multi-pass parameters.

  • Parameters:
    • [in] layerData: Multi-layer multi-pass parameters
    • [out] ec: Error code

removeLayerData() [1/2]

void rokae::ArcWelding::removeLayerData ( const std::string & layerDataName, error_code & ec ) noexcept

Delete multi-layer multi-pass parameters.

  • Parameters:
    • [in] layerDataName: Multi-layer multi-pass parameter name
    • [out] ec: Error code

removeLayerData() [2/2]

void rokae::ArcWelding::removeLayerData ( const std::vector<std::string> & layerDataNames, error_code & ec ) noexcept

Batch delete multi-layer multi-pass parameters.

  • Parameters:
    • [in] layerDataNames: List of multi-layer multi-pass parameter names
    • [out] ec: Error code

setLayerCout()

void rokae::ArcWelding::setLayerCout ( int layerCount, error_code & ec ) noexcept

Set multi-layer multi-pass layer count (interface name consistent with header file).

  • Parameters:
    • [in] layerCount: Layer count
    • [out] ec: Error code

MpmlPathCheck()

bool rokae::ArcWelding::MpmlPathCheck ( const std::vector<std::vector<CartesianPosition>> & position_groups,
const std::vector<MotionType> & position_types, const std::vector<ArcWelding::LayerData> & layerdata_list,
std::vector<std::string> & error_layer_list, error_code & ec,
AvoidSingularityMethod method = AvoidSingularityMethod::none ) noexcept

Check multi-layer multi-pass reachability for each layer/pass.

  • Parameters:
    • [in] position_groups: Base position group list; 1 point per group for linear, multiple points for arc
    • [in] position_types: Motion types corresponding to groups
    • [in] layerdata_list: List of offset parameters for each layer/pass
    • [out] error_layer_list: Failed pass index and other information
    • [out] ec: Error code
    • [in] method: Singularity avoidance mode
  • Return Value:
    • true means all reachable, false means some are not reachable

GetLayerStartPoint()

bool rokae::ArcWelding::GetLayerStartPoint ( const std::vector<std::vector<CartesianPosition>> & position_groups,
const std::vector<MotionType> & position_types, const ArcWelding::LayerData & layerdata_list,
CartesianPosition & start_position, error_code & ec ) noexcept

Get current layer/pass arc start point.

  • Parameters:
    • [in] position_groups: Trajectory point Cartesian information
    • [in] position_types: Trajectory motion types
    • [in] layerdata_list: This layer/pass offset settings (single LayerData)
    • [out] start_position: Arc start point Cartesian information
    • [out] ec: Error code
  • Return Value:
    • true means get successful

getRefBy3Points()

Frame rokae::ArcWelding::getRefBy3Points ( const std::vector<CartesianPosition> & points, bool withOrigin, DirType dt, error_code & ec ) noexcept

Build coordinate system by laser search three-point method.

  • Parameters:
    • [in] points: Search points
    • [in] withOrigin: Whether to determine coordinate system origin directly from search points
    • [in] dt: Workpiece coordinate system pose calibration sequence
    • [out] ec: Error code
  • Return Value:
    • Calculated coordinate system

GetLaserPos()

CartesianPosition rokae::ArcWelding::GetLaserPos ( CartesianPosition pos, const std::string & laserHandEyeData,
error_code & ec, const std::string & refSys = "R_WORLD" ) noexcept

Get laser absolute position: only recognizes weld point position, pose takes pos pose.

  • Parameters:
    • [in] pos: TCP point (provides pose)
    • [in] laserHandEyeData: Hand-eye calibration file name
    • [out] ec: Error code (commonly calculation timeout or parameter error, see SDK logs for details)
    • [in] refSys: Reference coordinate system, "R_WORLD", "R_BASE", "R_WOBJ", default "R_WORLD"
  • Return Value:
    • Valid when no error code