cmvr-es/third_party/AuboSdk/linux/include/aubo/robot/robot_config.h

3307 lines
105 KiB
C
Raw Normal View History

2025-11-17 13:48:22 +08:00
/** @file robot_config.h
* @brief DH参数姿
*/
#ifndef AUBO_SDK_ROBOT_CONFIG_H
#define AUBO_SDK_ROBOT_CONFIG_H
#include <vector>
#include <unordered_map>
#include <aubo/global_config.h>
#include <aubo/type_def.h>
namespace arcs {
namespace common_interface {
class ARCS_ABI_EXPORT RobotConfig
{
public:
RobotConfig();
virtual ~RobotConfig();
/**
* \chinese
*
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getName(self: pyaubo_sdk.RobotConfig) -> str
*
* @par Lua函数原型
* getName() -> string
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getName","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":"rob1"}
* \endchinese
* \english
* Get the robot's name.
*
* @return The robot's name.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getName(self: pyaubo_sdk.RobotConfig) -> str
*
* @par Lua function prototype
* getName() -> string
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getName","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":"rob1"}
* \endenglish
*/
std::string getName();
/**
* \chinese
* ()
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getDof(self: pyaubo_sdk.RobotConfig) -> int
*
* @par Lua函数原型
* getDof() -> number
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getDof","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":6}
* \endchinese
* \english
* Get the robot's degrees of freedom (from the hardware abstraction layer).
*
* @return The robot's degrees of freedom.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getDof(self: pyaubo_sdk.RobotConfig) -> int
*
* @par Lua function prototype
* getDof() -> number
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getDof","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":6}
* \endenglish
*/
int getDof();
/**
* \chinese
* ()
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getCycletime(self: pyaubo_sdk.RobotConfig) -> float
*
* @par Lua函数原型
* getCycletime() -> number
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getCycletime","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":0.005}
* \endchinese
* \english
* Get the robot's servo control cycle time (from the hardware abstraction
* layer).
*
* @return The robot's servo control cycle time.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getCycletime(self: pyaubo_sdk.RobotConfig) -> float
*
* @par Lua function prototype
* getCycletime() -> number
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getCycletime","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":0.005}
* \endenglish
*/
double getCycletime();
/**
* \chinese
*
*
* @param level 1, 2
* @param fraction
*
* @return 0
* AUBO_BUSY
* AUBO_BAD_STATE
* AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.setSlowDownFraction","params":[1,0.8],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":0}
* \endchinese
* \english
* Set the speed reduction ratio for the preset slow-down mode.
*
* @param level Slow-down level 1, 2
* @param fraction
*
* @return Returns 0 on success; error code on failure
* AUBO_BUSY
* AUBO_BAD_STATE
* AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.setSlowDownFraction","params":[1,0.8],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":0}
* \endenglish
*/
int setSlowDownFraction(int level, double fraction);
/**
* \chinese
*
*
* @param level 1, 2
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getSlowDownFraction","params":[1],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":0.5}
* \endchinese
* \english
* Get the speed reduction ratio for the preset slow-down mode.
*
* @param level Slow-down level 1, 2
* @return The speed reduction ratio for the preset slow-down mode.
*
* @throws arcs::common_interface::AuboException
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getSlowDownFraction","params":[1],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":0.5}
* \endenglish
*/
double getSlowDownFraction(int level);
/**
* \chinese
* m/s^2
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getDefaultToolAcc(self: pyaubo_sdk.RobotConfig) -> float
*
* @par Lua函数原型
* getDefaultToolAcc() -> number
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getDefaultToolAcc","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":0.0}
* \endchinese
* \english
* Get the default tool acceleration, in m/s^2.
*
* @return The default tool acceleration.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getDefaultToolAcc(self: pyaubo_sdk.RobotConfig) -> float
*
* @par Lua function prototype
* getDefaultToolAcc() -> number
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getDefaultToolAcc","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":0.0}
* \endenglish
*/
double getDefaultToolAcc();
/**
* \chinese
* m/s
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getDefaultToolSpeed(self: pyaubo_sdk.RobotConfig) -> float
*
* @par Lua函数原型
* getDefaultToolSpeed() -> number
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getDefaultToolSpeed","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":0.0}
* \endchinese
* \english
* Get the default tool speed, in m/s.
*
* @return The default tool speed.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getDefaultToolSpeed(self: pyaubo_sdk.RobotConfig) -> float
*
* @par Lua function prototype
* getDefaultToolSpeed() -> number
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getDefaultToolSpeed","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":0.0}
* \endenglish
*/
double getDefaultToolSpeed();
/**
* \chinese
* rad/s^2
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getDefaultJointAcc(self: pyaubo_sdk.RobotConfig) -> float
*
* @par Lua函数原型
* getDefaultJointAcc() -> number
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getDefaultJointAcc","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":0.0}
* \endchinese
* \english
* Get the default joint acceleration, in rad/s^2.
*
* @return The default joint acceleration.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getDefaultJointAcc(self: pyaubo_sdk.RobotConfig) -> float
*
* @par Lua function prototype
* getDefaultJointAcc() -> number
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getDefaultJointAcc","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":0.0}
* \endenglish
*/
double getDefaultJointAcc();
/**
* \chinese
* rad/s
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getDefaultJointSpeed(self: pyaubo_sdk.RobotConfig) -> float
*
* @par Lua函数原型
* getDefaultJointSpeed() -> number
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getDefaultJointSpeed","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":0.0}
* \endchinese
* \english
* Get the default joint speed, in rad/s.
*
* @return The default joint speed.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getDefaultJointSpeed(self: pyaubo_sdk.RobotConfig) -> float
*
* @par Lua function prototype
* getDefaultJointSpeed() -> number
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getDefaultJointSpeed","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":0.0}
* \endenglish
*/
double getDefaultJointSpeed();
/**
* \chinese
*
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getRobotType(self: pyaubo_sdk.RobotConfig) -> str
*
* @par Lua函数原型
* getRobotType() -> string
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getRobotType","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":"aubo_i5H"}
* \endchinese
* \english
* Get the robot type code.
*
* @return The robot type code.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getRobotType(self: pyaubo_sdk.RobotConfig) -> str
*
* @par Lua function prototype
* getRobotType() -> string
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getRobotType","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":"aubo_i5H"}
* \endenglish
*/
std::string getRobotType();
/**
* \chinese
*
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getRobotSubType(self: pyaubo_sdk.RobotConfig) -> str
*
* @par Lua函数原型
* getRobotSubType() -> string
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getRobotSubType","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":"B0"}
* \endchinese
* \english
* Get the robot sub-type code.
*
* @return The robot sub-type code.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getRobotSubType(self: pyaubo_sdk.RobotConfig) -> str
*
* @par Lua function prototype
* getRobotSubType() -> string
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getRobotSubType","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":"B0"}
* \endenglish
*/
std::string getRobotSubType();
/**
* \chinese
*
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getControlBoxType(self: pyaubo_sdk.RobotConfig) -> str
*
* @par Lua函数原型
* getControlBoxType() -> string
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getControlBoxType","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":"cb_ISStation"}
* \endchinese
* \english
* Get the control box type code.
*
* @return The control box type code.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getControlBoxType(self: pyaubo_sdk.RobotConfig) -> str
*
* @par Lua function prototype
* getControlBoxType() -> string
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getControlBoxType","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":"cb_ISStation"}
* \endenglish
*/
std::string getControlBoxType();
/**
* \chinese
* 姿() world->base
*
* 使 [0,0,0,0,0,0]
*
* @param pose 姿
* @return 0;
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* setMountingPose(self: pyaubo_sdk.RobotConfig, arg0: List[float]) -> int
*
* @par Lua函数原型
* setMountingPose(pose: table) -> nil
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.setMountingPose","params":[[0.0,0.0,0.0,0.0,0.0,0.0]],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":0}
* \endchinese
* \english
* Set the mounting pose (robot base coordinate system relative to world
* coordinate system) world->base
*
* Typically used in multi-robot systems, default is [0,0,0,0,0,0]
*
* @param pose Mounting pose
* @return Returns 0 on success; error code on failure
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* setMountingPose(self: pyaubo_sdk.RobotConfig, arg0: List[float]) -> int
*
* @par Lua function prototype
* setMountingPose(pose: table) -> nil
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.setMountingPose","params":[[0.0,0.0,0.0,0.0,0.0,0.0]],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":0}
* \endenglish
*/
int setMountingPose(const std::vector<double> &pose);
/**
* \chinese
* 姿()
*
* @return 姿
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getMountingPose(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua函数原型
* getMountingPose() -> table
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getMountingPose","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":[0.0,0.0,0.0,0.0,0.0,0.0]}
* \endchinese
* \english
* Get the mounting pose (robot base coordinate system relative to world
* coordinate system)
*
* @return Mounting pose
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getMountingPose(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua function prototype
* getMountingPose() -> table
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getMountingPose","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":[0.0,0.0,0.0,0.0,0.0,0.0]}
* \endenglish
*/
std::vector<double> getMountingPose();
/**
* \chinese
*
*
* frame ROBOTBASE
* \endchinese
* \english
* Attach the robot base to a coordinate frame. If this frame moves, the
* robot will move accordingly. Used for applications like ground rails or
* gantries. When this function is called, the relationship between the
* frame and ROBOTBASE is fixed. \endenglish
*/
int attachRobotBaseTo(const std::string &frame);
std::string getRobotBaseParent();
/**
* \chinese
*
* \endchinese
* \english
* Set work object data. All programmed points are based on the work object
* coordinate system. \endenglish
*/
int setWorkObjectData(const WObjectData &wobj);
/**
* \chinese
*
*
*
* @param level
* 0:
* 1~9:
* @return 0;
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* setCollisionLevel(self: pyaubo_sdk.RobotConfig, arg0: int) -> int
*
* @par Lua函数原型
* setCollisionLevel(level: number) -> nil
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.setCollisionLevel","params":[6],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":0}
* \endchinese
* \english
* Set the collision sensitivity level.
* The higher the value, the more sensitive.
*
* @param level Collision sensitivity level
* 0: Disable collision detection
* 1~9: Collision sensitivity levels
* @return Returns 0 on success; error code on failure
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* setCollisionLevel(self: pyaubo_sdk.RobotConfig, arg0: int) -> int
*
* @par Lua function prototype
* setCollisionLevel(level: number) -> nil
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.setCollisionLevel","params":[6],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":0}
* \endenglish
*/
int setCollisionLevel(int level);
/**
* \chinese
*
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getCollisionLevel(self: pyaubo_sdk.RobotConfig) -> int
*
* @par Lua函数原型
* getCollisionLevel() -> number
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getCollisionLevel","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":6}
* \endchinese
* \english
* Get the collision sensitivity level.
*
* @return Collision sensitivity level.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getCollisionLevel(self: pyaubo_sdk.RobotConfig) -> int
*
* @par Lua function prototype
* getCollisionLevel() -> number
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getCollisionLevel","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":6}
* \endenglish
*/
int getCollisionLevel();
/**
* \chinese
*
*
* @param type \n
* 0: \n
* 1: \n
* 2:
*
* @return 0;
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* setCollisionStopType(self: pyaubo_sdk.RobotConfig, arg0: int) -> int
*
* @par Lua函数原型
* setCollisionStopType(type: number) -> nil
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.setCollisionStopType","params":[1],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":0}
* \endchinese
* \english
* Set the collision stop type.
*
* @param type Type \n
* 0: Floating after collision, i.e., enters freedrive mode after collision
* \n 1: Stop after collision \n 2: Brake after collision
*
* @return Returns 0 on success; error code on failure
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* setCollisionStopType(self: pyaubo_sdk.RobotConfig, arg0: int) -> int
*
* @par Lua function prototype
* setCollisionStopType(type: number) -> nil
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.setCollisionStopType","params":[1],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":0}
* \endenglish
*/
int setCollisionStopType(int type);
/**
* \chinese
*
*
* @return \n
* 0: \n
* 1: \n
* 2:
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getCollisionStopType(self: pyaubo_sdk.RobotConfig) -> int
*
* @par Lua函数原型
* getCollisionStopType() -> number
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getCollisionStopType","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":1}
*
* \endchinese
* \english
* Get the collision stop type.
*
* @return The collision stop type. \n
* 0: Floating after collision, i.e., enters freedrive mode after collision
* \n 1: Stop after collision \n 2: Brake after collision
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getCollisionStopType(self: pyaubo_sdk.RobotConfig) -> int
*
* @par Lua function prototype
* getCollisionStopType() -> number
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getCollisionStopType","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":1}
*
* \endenglish
*/
int getCollisionStopType();
/**
* \chinese
*
*
* @param positions
* @return 0
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.setHomePosition","params":[[0.0,-0.2617993877991494,1.74532925199433,0.4363323129985824,1.570796326794897,0.0]],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":0}
* \endchinese
* \english
* Set the robot's home position.
*
* @param positions Joint angles
* @return Returns 0 on success; error code on failure
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.setHomePosition","params":[[0.0,-0.2617993877991494,1.74532925199433,0.4363323129985824,1.570796326794897,0.0]],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":0}
* \endenglish
*/
int setHomePosition(const std::vector<double> &positions);
/**
* \chinese
*
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getHomePosition","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":[0.0,-0.2617993877991494,1.74532925199433,0.4363323129985824,1.570796326794897,0.0]}
* \endchinese
* \english
* Get the robot's home position.
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getHomePosition","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":[0.0,-0.2617993877991494,1.74532925199433,0.4363323129985824,1.570796326794897,0.0]}
* \endenglish
*/
std::vector<double> getHomePosition();
/**
* \chinese
*
*
* @param damp
*
* @return 0
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* setFreedriveDamp(self: pyaubo_sdk.RobotConfig, arg0: List[float]) -> int
*
* @par Lua函数原型
* setFreedriveDamp(damp: table) -> number
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.setFreedriveDamp","params":[[0.5,0.5,0.5,0.5,0.5,0.5]],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":0}
*
* \endchinese
* \english
* Set freedrive damping.
*
* @param damp Damping values.
*
* @return Returns 0 on success; error code on failure
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* setFreedriveDamp(self: pyaubo_sdk.RobotConfig, arg0: List[float]) -> int
*
* @par Lua function prototype
* setFreedriveDamp(damp: table) -> number
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.setFreedriveDamp","params":[[0.5,0.5,0.5,0.5,0.5,0.5]],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":0}
*
* \endenglish
*/
int setFreedriveDamp(const std::vector<double> &damp);
/**
* \chinese
*
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getFreedriveDamp(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua函数原型
* getFreedriveDamp() -> table
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getFreedriveDamp","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":[0.5,0.5,0.5,0.5,0.5,0.5]}
* \endchinese
* \english
* Get freedrive damping.
*
* @return Freedrive damping values.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getFreedriveDamp(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua function prototype
* getFreedriveDamp() -> table
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getFreedriveDamp","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":[0.5,0.5,0.5,0.5,0.5,0.5]}
* \endenglish
*/
std::vector<double> getFreedriveDamp();
/**
* \chinese
*
*
* @param damp
*
* @return 0
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* setHandguidDamp(self: pyaubo_sdk.RobotConfig, arg0: List[float]) -> int
*
* @par Lua函数原型
* setHandguidDamp(damp: table) -> number
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.setHandguidDamp","params":[[0.5,0.5,0.5,0.5,0.5,0.5]],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":0}
* \endchinese
* \english
* Set handguiding damping.
*
* @param damp damping coef.
*
* @return return 0 for successreturn rror code for failure
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* setHandguidDamp(self: pyaubo_sdk.RobotConfig, arg0: List[float]) -> int
*
* @par Lua function prototype
* setHandguidDamp(damp: table) -> number
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.setHandguidDamp","params":[[0.5,0.5,0.5,0.5,0.5,0.5]],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":0}
* \endenglish
*/
int setHandguidDamp(const std::vector<double> &damp);
/**
* \chinese
*
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getHandguidDamp(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua函数原型
* getHandguidDamp() -> table
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getHandguidDamp","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":[0.5,0.5,0.5,0.5,0.5,0.5]}
* \endchinese
* \english
* Get handguiding damping.
*
* @return handguuiding damping
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getHandguidDamp(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua fuunction prototype
* getHandguidDamp() -> table
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getHandguidDamp","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":[0.5,0.5,0.5,0.5,0.5,0.5]}
* \endenglish
*/
std::vector<double> getHandguidDamp();
/**
* \chinese
* DH参数
* alpha a d theta beta
*
* @param real (+)
* @return DH参数
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getKinematicsParam(self: pyaubo_sdk.RobotConfig, arg0: bool) -> Dict[str,
* List[float]]
*
* @par Lua函数原型
* getKinematicsParam(real: boolean) -> table
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getKinematicsParam","params":[true],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":{"a":[0.0,-0.0001255999959539622,0.4086348000024445,0.3757601999930339,-0.00018950000230688602,3.7000001611886546e-05],
* "alpha":[0.0,-1.5701173967707458,3.1440308735524347,3.14650750358636,-1.5703093767832055,1.5751177669179182],"beta":[0.0,0.0,0.0,0.0,0.0,0.0],
* "d":[0.122,0.12154769999941345,-4.769999941345304e-05,4.769999941345304e-05,0.10287890000385232,0.116],
* "theta":[3.141592653589793,-1.5707963267948966,0.0,-1.5707963267948966,0.0,0.0]}}
* \endchinese
* \english
* Get the robot's DH parameters: alpha, a, d, theta, beta.
*
* @param real Read real parameters (theoretical + compensation) or
* theoretical parameters.
* @return Returns the robot's DH parameters.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getKinematicsParam(self: pyaubo_sdk.RobotConfig, arg0: bool) -> Dict[str,
* List[float]]
*
* @par Lua function prototype
* getKinematicsParam(real: boolean) -> table
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getKinematicsParam","params":[true],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":{"a":[0.0,-0.0001255999959539622,0.4086348000024445,0.3757601999930339,-0.00018950000230688602,3.7000001611886546e-05],
* "alpha":[0.0,-1.5701173967707458,3.1440308735524347,3.14650750358636,-1.5703093767832055,1.5751177669179182],"beta":[0.0,0.0,0.0,0.0,0.0,0.0],
* "d":[0.122,0.12154769999941345,-4.769999941345304e-05,4.769999941345304e-05,0.10287890000385232,0.116],
* "theta":[3.141592653589793,-1.5707963267948966,0.0,-1.5707963267948966,0.0,0.0]}}
* \endenglish
*/
std::unordered_map<std::string, std::vector<double>> getKinematicsParam(
bool real);
/**
* \chinese
* DH参数补偿值:alpha a d theta beta
*
* @param ref_temperature 20
* @return DH参数补偿值
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getKinematicsCompensate(self: pyaubo_sdk.RobotConfig, arg0: float) ->
* Dict[str, List[float]]
*
* @par Lua函数原型
* getKinematicsCompensate(ref_temperature: number) -> table
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getKinematicsCompensate","params":[20],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":{"a":[0.0,-0.0001255999959539622,0.0006348000024445355,-0.0002398000069661066,-0.00018950000230688602,3.7000001611886546e-05],
* "alpha":[0.0,0.000678930024150759,0.002438219962641597,0.0049148499965667725,0.00048695001169107854,0.004321440123021603],
* "beta":[0.0,0.0,0.0,0.0,0.0,0.0],"d":[0.0,4.769999941345304e-05,-4.769999941345304e-05,4.769999941345304e-05,0.0003789000038523227,0.0],
* "theta":[0.0,0.0,0.0,0.0,0.0,0.0]}}
* \endchinese
* \english
* Get DH parameter compensation values (alpha, a, d, theta, beta) at the
* specified temperature.
*
* @param ref_temperature Reference temperature in , default is 20
* @return Returns DH parameter compensation values.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getKinematicsCompensate(self: pyaubo_sdk.RobotConfig, arg0: float) ->
* Dict[str, List[float]]
*
* @par Lua function prototype
* getKinematicsCompensate(ref_temperature: number) -> table
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getKinematicsCompensate","params":[20],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":{"a":[0.0,-0.0001255999959539622,0.0006348000024445355,-0.0002398000069661066,-0.00018950000230688602,3.7000001611886546e-05],
* "alpha":[0.0,0.000678930024150759,0.002438219962641597,0.0049148499965667725,0.00048695001169107854,0.004321440123021603],
* "beta":[0.0,0.0,0.0,0.0,0.0,0.0],"d":[0.0,4.769999941345304e-05,-4.769999941345304e-05,4.769999941345304e-05,0.0003789000038523227,0.0],
* "theta":[0.0,0.0,0.0,0.0,0.0,0.0]}}
* \endenglish
*/
std::unordered_map<std::string, std::vector<double>>
getKinematicsCompensate(double ref_temperature);
/**
* \chinese
* DH
*
* @param param
*
* @return 0
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
* \endchinese
* \english
* Set standard DH compensation to the robot.
*
* @param param
*
* @return Returns 0 on success; error code on failure
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
* \endenglish
*/
int setKinematicsCompensate(
const std::unordered_map<std::string, std::vector<double>> &param);
/**
* \chinese
*
*
* @param param
*
* @return 0
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* setPersistentParameters(self: pyaubo_sdk.RobotConfig, arg0: str) -> int
*
* @par Lua函数原型
* setPersistentParameters(param: string) -> nil
*
* \endchinese
* \english
* Set parameters to be saved to the interface board base.
*
* @param param Compensation data.
*
* @return Returns 0 on success; error code on failure.
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* setPersistentParameters(self: pyaubo_sdk.RobotConfig, arg0: str) -> int
*
* @par Lua function prototype
* setPersistentParameters(param: string) -> nil
*
* \endenglish
*/
int setPersistentParameters(const std::string &param);
/**
* \chinese
*
*
*
* @param param
*
* @return 0
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
* \endchinese
* \english
* Set custom parameters for the hardware abstraction layer.
* The purpose is to ensure compatibility between different hardware.
*
* @param param Custom parameters.
*
* @return Returns 0 on success; error code on failure.
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
* \endenglish
*/
int setHardwareCustomParameters(const std::string &param);
/**
* \chinese
*
*
* @param
* @return
*
* @throws arcs::common_interface::AuboException
* \endchinese
* \english
* Get custom parameters from the hardware abstraction layer.
*
* @param
* @return Returns custom parameters from the hardware abstraction layer.
*
* @throws arcs::common_interface::AuboException
* \endenglish
*/
std::string getHardwareCustomParameters(const std::string &param);
/**
* \chinese
*
*
* @return 0
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* setRobotZero(self: pyaubo_sdk.RobotConfig) -> int
*
* @par Lua函数原型
* setRobotZero() -> nil
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.setRobotZero","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":0}
* \endchinese
* \english
* Set the robot joint zero position.
*
* @return Returns 0 on success; error code on failure
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* setRobotZero(self: pyaubo_sdk.RobotConfig) -> int
*
* @par Lua function prototype
* setRobotZero() -> nil
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.setRobotZero","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":0}
* \endenglish
*/
int setRobotZero();
/**
* \chinese
*
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getTcpForceSensorNames(self: pyaubo_sdk.RobotConfig) -> List[str]
*
* @par Lua函数原型
* getTcpForceSensorNames() -> table
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getTcpForceSensorNames","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":[]}
*
* \endchinese
* \english
* Get the names of available TCP force sensors.
*
* @return Returns the names of available TCP force sensors.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getTcpForceSensorNames(self: pyaubo_sdk.RobotConfig) -> List[str]
*
* @par Lua function prototype
* getTcpForceSensorNames() -> table
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getTcpForceSensorNames","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":[]}
*
* \endenglish
*/
std::vector<std::string> getTcpForceSensorNames();
/**
* \chinese
*
* 使
*
* @param name
*
* @return 0
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* selectTcpForceSensor(self: pyaubo_sdk.RobotConfig, arg0: str) -> int
*
* @par Lua函数原型
* selectTcpForceSensor(name: string) -> nil
* \endchinese
* \english
* Set the TCP force sensor.
* If there is a built-in TCP force sensor, the built-in sensor will be used
* by default.
*
* @param name Name of the TCP force sensor.
*
* @return Returns 0 on success; error code on failure.
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* selectTcpForceSensor(self: pyaubo_sdk.RobotConfig, arg0: str) -> int
*
* @par Lua function prototype
* selectTcpForceSensor(name: string) -> nil
* \endenglish
*/
int selectTcpForceSensor(const std::string &name);
/**
* \chinese
* 姿
*
* @param sensor_pose 姿
*
* @return 0
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
* \endchinese
* \english
* Set the sensor mounting pose.
*
* @param sensor_pose Sensor mounting pose
*
* @return Returns 0 on success; error code on failure
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
* \endenglish
*/
int setTcpForceSensorPose(const std::vector<double> &sensor_pose);
/**
* \chinese
* 姿
*
* @return 姿
*
* @throws arcs::common_interface::AuboException
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getTcpForceSensorPose","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":[0.0,0.0,0.0,0.0,0.0,0.0]}
* \endchinese
* \english
* Get the sensor mounting pose.
*
* @return Sensor mounting pose.
*
* @throws arcs::common_interface::AuboException
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getTcpForceSensorPose","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":[0.0,0.0,0.0,0.0,0.0,0.0]}
* \endenglish
*/
std::vector<double> getTcpForceSensorPose();
/**
* \chinese
*
*
* @return true; false
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* hasTcpForceSensor(self: pyaubo_sdk.RobotConfig) -> bool
*
* @par Lua函数原型
* hasTcpForceSensor() -> boolean
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.hasTcpForceSensor","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":true}
*
* \endchinese
* \english
* Whether a TCP force sensor is installed.
*
* @return Returns true if installed; false otherwise.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* hasTcpForceSensor(self: pyaubo_sdk.RobotConfig) -> bool
*
* @par Lua function prototype
* hasTcpForceSensor() -> boolean
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.hasTcpForceSensor","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":true}
*
* \endenglish
*/
bool hasTcpForceSensor();
/**
* \chinese
*
*
* @param force_offset
* @return 0;
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* setTcpForceOffset(self: pyaubo_sdk.RobotConfig, arg0: List[float]) -> int
*
* @par Lua函数原型
* setTcpForceOffset(force_offset: table) -> nil
*
* \endchinese
* \english
* Set the TCP force/torque offset.
*
* @param force_offset TCP force/torque offset
* @return Returns 0 on success; error code on failure
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* setTcpForceOffset(self: pyaubo_sdk.RobotConfig, arg0: List[float]) -> int
*
* @par Lua function prototype
* setTcpForceOffset(force_offset: table) -> nil
*
* \endenglish
*/
int setTcpForceOffset(const std::vector<double> &force_offset);
/**
* \chinese
*
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getTcpForceOffset(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua函数原型
* getTcpForceOffset() -> table
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getTcpForceOffset","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":[0.0,0.0,0.0,0.0,0.0,0.0]}
* \endchinese
* \english
* Get the TCP force/torque offset.
*
* @return Returns the TCP force/torque offset.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getTcpForceOffset(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua function prototype
* getTcpForceOffset() -> table
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getTcpForceOffset","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":[0.0,0.0,0.0,0.0,0.0,0.0]}
* \endenglish
*/
std::vector<double> getTcpForceOffset();
/**
* \chinese
*
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getBaseForceSensorNames(self: pyaubo_sdk.RobotConfig) -> List[str]
*
* @par Lua函数原型
* getBaseForceSensorNames() -> table
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getBaseForceSensorNames","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":[]}
*
* \endchinese
* \english
* Get the names of available base force sensors.
*
* @return Returns the names of available base force sensors.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getBaseForceSensorNames(self: pyaubo_sdk.RobotConfig) -> List[str]
*
* @par Lua function prototype
* getBaseForceSensorNames() -> table
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getBaseForceSensorNames","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":[]}
*
* \endenglish
*/
std::vector<std::string> getBaseForceSensorNames();
/**
* \chinese
*
* 使
*
* @param name
*
* @return 0
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* selectBaseForceSensor(self: pyaubo_sdk.RobotConfig, arg0: str) -> int
*
* @par Lua函数原型
* selectBaseForceSensor(name: string) -> nil
* \endchinese
* \english
* Set the base force sensor.
* If there is a built-in base force sensor, the built-in sensor will be
* used by default.
*
* @param name Name of the base force sensor.
*
* @return Returns 0 on success; error code on failure.
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* selectBaseForceSensor(self: pyaubo_sdk.RobotConfig, arg0: str) -> int
*
* @par Lua function prototype
* selectBaseForceSensor(name: string) -> nil
* \endenglish
*/
int selectBaseForceSensor(const std::string &name);
/**
* \chinese
*
*
* @return true;false
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* hasBaseForceSensor(self: pyaubo_sdk.RobotConfig) -> bool
*
* @par Lua函数原型
* hasBaseForceSensor() -> boolean
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.hasBaseForceSensor","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":false}
*
* \endchinese
* \english
* Whether a base force sensor is installed.
*
* @return Returns true if installed; false otherwise.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* hasBaseForceSensor(self: pyaubo_sdk.RobotConfig) -> bool
*
* @par Lua function prototype
* hasBaseForceSensor() -> boolean
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.hasBaseForceSensor","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":false}
*
* \endenglish
*/
bool hasBaseForceSensor();
/**
* \chinese
*
*
* @param force_offset
*
* @return 0
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* setBaseForceOffset(self: pyaubo_sdk.RobotConfig, arg0: List[float]) ->
* int
*
* @par Lua函数原型
* setBaseForceOffset(force_offset: table) -> nil
* \endchinese
* \english
* Set the base force/torque offset.
*
* @param force_offset Base force/torque offset
*
* @return Returns 0 on success; error code on failure
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* setBaseForceOffset(self: pyaubo_sdk.RobotConfig, arg0: List[float]) ->
* int
*
* @par Lua function prototype
* setBaseForceOffset(force_offset: table) -> nil
* \endenglish
*/
int setBaseForceOffset(const std::vector<double> &force_offset);
/**
* \chinese
*
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getBaseForceOffset(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua函数原型
* getBaseForceOffset() -> table
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getBaseForceOffset","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":[]}
*
* \endchinese
* \english
* Get the base force/torque offset.
*
* @return Returns the base force/torque offset.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getBaseForceOffset(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua function prototype
* getBaseForceOffset() -> table
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getBaseForceOffset","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":[]}
*
* \endenglish
*/
std::vector<double> getBaseForceOffset();
/**
* \chinese
* CRC32
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getSafetyParametersCheckSum(self: pyaubo_sdk.RobotConfig) -> int
*
* @par Lua函数原型
* getSafetyParametersCheckSum() -> number
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getSafetyParametersCheckSum","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":2033397241}
*
* \endchinese
* \english
* Get the safety parameter checksum CRC32.
*
* @return Returns the safety parameter checksum.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getSafetyParametersCheckSum(self: pyaubo_sdk.RobotConfig) -> int
*
* @par Lua function prototype
* getSafetyParametersCheckSum() -> number
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getSafetyParametersCheckSum","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":2033397241}
*
* \endenglish
*/
uint32_t getSafetyParametersCheckSum();
/**
* \chinese
* :
* flash或文件
*
* @param parameters
*
* @return 0
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* confirmSafetyParameters(self: pyaubo_sdk.RobotConfig, arg0:
* arcs::common_interface::RobotSafetyParameterRange) -> int
*
* @par Lua函数原型
*
* \endchinese
* \english
* Initiate a request to confirm safety configuration parameters:
* Write safety configuration parameters to the safety interface board flash
* or file.
*
* @param parameters Safety configuration parameters.
*
* @return Returns 0 on success; error code on failure.
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* confirmSafetyParameters(self: pyaubo_sdk.RobotConfig, arg0:
* arcs::common_interface::RobotSafetyParameterRange) -> int
*
* @par Lua function prototype
*
* \endenglish
*/
int confirmSafetyParameters(const RobotSafetyParameterRange &parameters);
/**
* \chinese
* CRC32
*
* @return crc32
*
* @throws arcs::common_interface::AuboException
* \endchinese
* \english
* Calculate the CRC32 checksum of safety parameters.
*
* @return crc32
*
* @throws arcs::common_interface::AuboException
* \endenglish
*/
uint32_t calcSafetyParametersCheckSum(
const RobotSafetyParameterRange &parameters);
/**
* \chinese
*
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getJointMaxPositions(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua函数原型
* getJointMaxPositions() -> table
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getJointMaxPositions","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":[6.283185307179586,6.283185307179586,6.283185307179586,6.283185307179586,6.283185307179586,6.283185307179586]}
* \endchinese
* \english
* Get the joint maximum positions (physical limits).
*
* @return Returns the joint maximum positions.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getJointMaxPositions(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua function prototype
* getJointMaxPositions() -> table
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getJointMaxPositions","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":[6.283185307179586,6.283185307179586,6.283185307179586,6.283185307179586,6.283185307179586,6.283185307179586]}
* \endenglish
*/
std::vector<double> getJointMaxPositions();
/**
* \chinese
*
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getJointMinPositions(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua函数原型
* getJointMinPositions() -> table
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getJointMinPositions","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":[-6.283185307179586,-6.283185307179586,-6.283185307179586,-6.283185307179586,-6.283185307179586,-6.283185307179586]}
* \endchinese
* \english
* Get the joint minimum positions (physical limits).
*
* @return Returns the joint minimum positions.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getJointMinPositions(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua function prototype
* getJointMinPositions() -> table
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getJointMinPositions","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":[-6.283185307179586,-6.283185307179586,-6.283185307179586,-6.283185307179586,-6.283185307179586,-6.283185307179586]}
* \endenglish
*/
std::vector<double> getJointMinPositions();
/**
* \chinese
*
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getJointMaxSpeeds(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua函数原型
* getJointMaxSpeeds() -> table
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getJointMaxSpeeds","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":[3.892084231947355,3.892084231947355,3.892084231947355,3.1066860685499065,3.1066860685499065,3.1066860685499065]}
* \endchinese
* \english
* Get the joint maximum speeds (physical limits).
*
* @return Returns the joint maximum speeds.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getJointMaxSpeeds(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua function prototype
* getJointMaxSpeeds() -> table
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getJointMaxSpeeds","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":[3.892084231947355,3.892084231947355,3.892084231947355,3.1066860685499065,3.1066860685499065,3.1066860685499065]}
* \endenglish
*/
std::vector<double> getJointMaxSpeeds();
/**
* \chinese
*
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getJointMaxAccelerations(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua函数原型
* getJointMaxAccelerations() -> table
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getJointMaxAccelerations","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":[31.104877758314785,31.104877758314785,31.104877758314785,20.73625684294463,20.73625684294463,20.73625684294463]}
* \endchinese
* \english
* Get the joint maximum accelerations (physical limits).
*
* @return Returns the joint maximum accelerations.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getJointMaxAccelerations(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua function prototype
* getJointMaxAccelerations() -> table
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getJointMaxAccelerations","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":[31.104877758314785,31.104877758314785,31.104877758314785,20.73625684294463,20.73625684294463,20.73625684294463]}
* \endenglish
*/
std::vector<double> getJointMaxAccelerations();
/**
* \chinese
* TCP最大速度
*
* @return TCP最大速度
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getTcpMaxSpeeds(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua函数原型
* getTcpMaxSpeeds() -> table
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getTcpMaxSpeeds","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":[2.0,5.0]}
* \endchinese
* \english
* Get the TCP maximum speed (physical limits).
*
* @return Returns the TCP maximum speed.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getTcpMaxSpeeds(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua function prototype
* getTcpMaxSpeeds() -> table
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getTcpMaxSpeeds","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":[2.0,5.0]}
* \endenglish
*/
std::vector<double> getTcpMaxSpeeds();
/**
* \chinese
* TCP最大加速度
*
* @return TCP最大加速度
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getTcpMaxAccelerations(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua函数原型
* getTcpMaxAccelerations() -> table
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getTcpMaxAccelerations","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":[10.0,10.0]}
*
* \endchinese
* \english
* Get the TCP maximum acceleration (physical limits).
*
* @return Returns the TCP maximum acceleration.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getTcpMaxAccelerations(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua function prototype
* getTcpMaxAccelerations() -> table
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getTcpMaxAccelerations","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":[10.0,10.0]}
* \endenglish
*/
std::vector<double> getTcpMaxAccelerations();
/**
* \chinese
* 姿
*
* @param gravity 姿
*
* @return 0
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* setGravity(self: pyaubo_sdk.RobotConfig, arg0: List[float]) -> int
*
* @par Lua函数原型
* setGravity(gravity: table) -> nil
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.setGravity","params":[[0.0,0.0,-9.87654321]],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":0}
* \endchinese
* \english
* Set the robot installation attitude (gravity vector).
*
* @param gravity Installation attitude (gravity vector)
*
* @return Returns 0 on success; error code on failure
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* setGravity(self: pyaubo_sdk.RobotConfig, arg0: List[float]) -> int
*
* @par Lua function prototype
* setGravity(gravity: table) -> nil
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.setGravity","params":[[0.0,0.0,-9.87654321]],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":0}
* \endenglish
*/
int setGravity(const std::vector<double> &gravity);
/**
* \chinese
* 姿
*
* 姿
*
* @return 姿
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getGravity(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua函数原型
* getGravity() -> table
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getGravity","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":[0.0,0.0,-9.87654321]}
*
* \endchinese
* \english
* Get the robot's installation attitude (gravity vector).
*
* If the robot base is equipped with an attitude sensor, data is read from
* the sensor; otherwise, the user setting is used.
*
* @return Returns the installation attitude.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getGravity(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua function prototype
* getGravity() -> table
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getGravity","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":[0.0,0.0,-9.87654321]}
*
* \endenglish
*/
std::vector<double> getGravity();
/**
* \chinese
* TCP偏移
*
* TCP偏移表示形式为(x,y,z,rx,ry,rz)
* xyz是工具中心点TCPm
* rxryrz是工具中心点TCP姿ZYX欧拉角rad
*
* @param offset TCP偏移,(x,y,z,rx,ry,rz)
*
* @return 0
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* setTcpOffset(self: pyaubo_sdk.RobotConfig, arg0: List[float]) -> int
*
* @par Lua函数原型
* setTcpOffset(offset: table) -> nil
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.setTcpOffset","params":[[0.0,0.0,0.0,0.0,0.0,0.0]],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":0}
* \endchinese
* \english
* Set the current TCP offset.
*
* The TCP offset is represented as (x, y, z, rx, ry, rz).
* x, y, z are the position offsets of the Tool Center Point (TCP) relative
* to the flange center in the base coordinate system, in meters. rx, ry, rz
* are the orientation offsets of the TCP relative to the flange center in
* the base coordinate system, as ZYX Euler angles in radians.
*
* @param offset The current TCP offset, in the form (x, y, z, rx, ry, rz)
*
* @return Returns 0 on success; error code on failure
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* setTcpOffset(self: pyaubo_sdk.RobotConfig, arg0: List[float]) -> int
*
* @par Lua function prototype
* setTcpOffset(offset: table) -> nil
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.setTcpOffset","params":[[0.0,0.0,0.0,0.0,0.0,0.0]],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":0}
* \endenglish
*/
int setTcpOffset(const std::vector<double> &offset);
/**
* \chinese
* TCP偏移
*
* TCP偏移表示形式为(x,y,z,rx,ry,rz)
* xyz是工具中心点TCPm
* rxryrz是工具中心点TCP姿ZYX欧拉角rad
*
* @return TCP偏移,(x,y,z,rx,ry,rz)
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getTcpOffset(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua函数原型
* getTcpOffset() -> table
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getTcpOffset","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":[0.0,0.0,0.0,0.0,0.0,0.0]}
* \endchinese
* \english
* Get the current TCP offset.
*
* The TCP offset is represented as (x, y, z, rx, ry, rz).
* x, y, z are the position offsets of the Tool Center Point (TCP) relative
* to the flange center in the base coordinate system, in meters. rx, ry, rz
* are the orientation offsets of the TCP relative to the flange center in
* the base coordinate system, as ZYX Euler angles in radians.
*
* @return The current TCP offset, in the form (x, y, z, rx, ry, rz)
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getTcpOffset(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua function prototype
* getTcpOffset() -> table
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getTcpOffset","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":[0.0,0.0,0.0,0.0,0.0,0.0]}
* \endenglish
*/
std::vector<double> getTcpOffset();
/**
* \chinese
*
*
* @param m
* @param com
* @param inertial
*
* @return 0
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* setToolInertial(self: pyaubo_sdk.RobotConfig, arg0: float, arg1:
* List[float], arg2: List[float]) -> int
*
* @par Lua函数原型
* setToolInertial(m: number, com: table, inertial: table) -> nil
* \endchinese
* \english
* Set tool mass, center of mass, and inertia.
*
* @param m Tool mass
* @param com Center of mass
* @param inertial Inertia
*
* @return Returns 0 on success; error code on failure
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* setToolInertial(self: pyaubo_sdk.RobotConfig, arg0: float, arg1:
* List[float], arg2: List[float]) -> int
*
* @par Lua function prototype
* setToolInertial(m: number, com: table, inertial: table) -> nil
* \endenglish
*/
int setToolInertial(double m, const std::vector<double> &com,
const std::vector<double> &inertial);
/**
* \chinese
*
*
* @param m , : kg
* @param cog , : m, (CoGx, CoGy, CoGz)
* @param aom , : rad, (rx, ry, rz)
* @param inertia , : kg*m^2, (Ixx, Iyy, Izz, Ixy, Ixz,
* Iyz)(Ixx, Ixy, Ixz, Iyx, Iyy, Iyz, Izx, Izy, Izz)
*
* @return 0
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* setPayload(self: pyaubo_sdk.RobotConfig, arg0: float, arg1: List[float],
* arg2: List[float], arg3: List[float]) -> int
*
* @par Lua函数原型
* setPayload(m: number, cog: table, aom: table, inertia: table) -> nil
*
* @par Lua示例
* setPayload(3, {0,0,0}, {0,0,0}, {0,0,0,0,0,0,0,0,0})
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.setPayload","params":[3,[0,0,0],[0,0,0],[0,0,0,0,0,0,0,0,0]],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":0}
* \endchinese
* \english
* Set the payload.
*
* @param m Mass, unit: kg
* @param cog Center of gravity, unit: m, format (CoGx, CoGy, CoGz)
* @param aom Axis of moment, unit: rad, format (rx, ry, rz)
* @param inertia Inertia, unit: kg*m^2, format (Ixx, Iyy, Izz, Ixy, Ixz,
* Iyz) or (Ixx, Ixy, Ixz, Iyx, Iyy, Iyz, Izx, Izy, Izz)
*
* @return Returns 0 on success; error code on failure
* AUBO_BUSY
* AUBO_BAD_STATE
* -AUBO_INVL_ARGUMENT
* -AUBO_BAD_STATE
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* setPayload(self: pyaubo_sdk.RobotConfig, arg0: float, arg1: List[float],
* arg2: List[float], arg3: List[float]) -> int
*
* @par Lua function prototype
* setPayload(m: number, cog: table, aom: table, inertia: table) -> nil
*
* @par Lua example
* setPayload(3, {0,0,0}, {0,0,0}, {0,0,0,0,0,0,0,0,0})
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.setPayload","params":[3,[0,0,0],[0,0,0],[0,0,0,0,0,0,0,0,0]],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":0}
* \endenglish
*/
int setPayload(double m, const std::vector<double> &cog,
const std::vector<double> &aom,
const std::vector<double> &inertia);
/**
* \chinese
*
*
* @return .
* , : kg;
* , : m, (CoGx, CoGy, CoGz);
* , : rad, (rx, ry, rz);
* , : kg*m^2, (Ixx, Iyy, Izz, Ixy, Ixz, Iyz)
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getPayload(self: pyaubo_sdk.RobotConfig) -> Tuple[float, List[float],
* List[float], List[float]]
*
* @par Lua函数原型
* getPayload() -> number, table, table, table
*
* @par Lua示例
* m, cog, aom, inertia = getPayload()
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getPayload","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":[3.0,[0.0,0.0,0.0],[0.0,0.0,0.0],[0.0,0.0,0.0,0.0,0.0,0.0]]}
* \endchinese
* \english
* Get the payload.
*
* @return The payload.
* The first element is the mass in kg;
* The second element is the center of gravity in meters, format (CoGx,
* CoGy, CoGz); The third element is the axis of moment in radians, format
* (rx, ry, rz); The fourth element is the inertia in kg*m^2, format (Ixx,
* Iyy, Izz, Ixy, Ixz, Iyz)
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getPayload(self: pyaubo_sdk.RobotConfig) -> Tuple[float, List[float],
* List[float], List[float]]
*
* @par Lua function prototype
* getPayload() -> number, table, table, table
*
* @par Lua example
* m, cog, aom, inertia = getPayload()
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getPayload","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":[3.0,[0.0,0.0,0.0],[0.0,0.0,0.0],[0.0,0.0,0.0,0.0,0.0,0.0]]}
* \endenglish
*/
Payload getPayload();
/**
* \chinese
* 姿
*
* @param pose 姿
* @return true; false
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* toolSpaceInRange(self: pyaubo_sdk.RobotConfig, arg0: List[float]) -> bool
*
* @par Lua函数原型
* toolSpaceInRange(pose: table) -> boolean
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.toolSpaceInRange","params":[[0.58712,
* -0.15775, 0.48703, 2.76, 0.344, 1.432]],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":true}
* \endchinese
* \english
* Whether the end-effector pose is within the safety range.
*
* @param pose End-effector pose
* @return Returns true if within the safety range; otherwise returns false
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* toolSpaceInRange(self: pyaubo_sdk.RobotConfig, arg0: List[float]) -> bool
*
* @par Lua function prototype
* toolSpaceInRange(pose: table) -> boolean
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.toolSpaceInRange","params":[[0.58712,
* -0.15775, 0.48703, 2.76, 0.344, 1.432]],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":true}
* \endenglish
*/
bool toolSpaceInRange(const std::vector<double> &pose);
/**
* \chinese
*
*
* @param fw : \#
* (#)(,)
* !()
*
* \n
* \n
*
* /tmp/firmware_update-1.0.42-rc.5+2347b0d.firm\#master_mcu!,slace_mcu!,
* base!,tool!,joint1!,joint2!,joint3!,joint4!,joint5!,joint6!
* 6joint1至joint6\n
* all表示所有的节点
* /tmp/firm_XXX.firm\#all
* /tmp/firm_XXX.firm\#all
*
* @return 0; \n
* -AUBO_BAD_STATE: (RuntimeMachine)Stopped,
* AUBO_BAD_STATE的值是1 \n
* -AUBO_TIMEOUT: AUBO_TIMEOUT的值是4 \n
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* firmwareUpdate(self: pyaubo_sdk.RobotConfig, arg0: str) -> int
*
* @par Lua函数原型
* firmwareUpdate(fw: string) -> nil
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.firmwareUpdate","params":["/tmp/firmware_update-1.0.42-rc.12+3e33eac.firm#master_mcu"],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":0}
* \endchinese
* \english
* Initiate a firmware upgrade request. The controller software will enter
* firmware upgrade mode.
*
* @param fw Firmware upgrade path. The format is: firmware package
* path\#upgrade node list. The firmware package path and node list are
* separated by a hash (#), and nodes are separated by commas (,). If a node
* name ends with !, it means to force upgrade (without version check) that
* node; otherwise, the node will be upgraded only if the current version
* differs from the target version. You can flexibly specify which nodes to
* upgrade as needed. For example,
* /tmp/firmware_update-1.0.42-rc.5+2347b0d.firm#master_mcu!,slace_mcu!,base!,tool!,joint1!,joint2!,joint3!,joint4!,joint5!,joint6!
* means to force upgrade the interface board main, interface board slave,
* base, tool, and joints 1-6. "all" means all nodes, e.g.
* /tmp/firm_XXX.firm#all means upgrade all nodes with version check,
* /tmp/firm_XXX.firm#all! means force upgrade all nodes.
*
* @return Returns 0 if the command is sent successfully; otherwise, returns
* an error code. -AUBO_BAD_STATE: The current state of the RuntimeMachine
* is not Stopped, so the firmware upgrade request is rejected.
* AUBO_BAD_STATE = 1. -AUBO_TIMEOUT: Timeout. AUBO_TIMEOUT = 4.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* firmwareUpdate(self: pyaubo_sdk.RobotConfig, arg0: str) -> int
*
* @par Lua function prototype
* firmwareUpdate(fw: string) -> nil
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.firmwareUpdate","params":["/tmp/firmware_update-1.0.42-rc.12+3e33eac.firm#master_mcu"],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":0}
* \endenglish
*/
int firmwareUpdate(const std::string &fw);
/**
* \chinese
*
*
* @return \n
* failed \n
* (0~1)("", 1)
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getFirmwareUpdateProcess(self: pyaubo_sdk.RobotConfig) -> Tuple[str,
* float]
*
* @par Lua函数原型
* getFirmwareUpdateProcess() -> table
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getFirmwareUpdateProcess","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":[" ",0.0]}
*
* \endchinese
* \english
* Get the current firmware upgrade process.
*
* @return The current firmware upgrade process. \n
* The first element is the step name. If it is "failed", the firmware
* upgrade failed. \n The second element is the upgrade progress (0~1). When
* finished, returns ("", 1)
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getFirmwareUpdateProcess(self: pyaubo_sdk.RobotConfig) -> Tuple[str,
* float]
*
* @par Lua function prototype
* getFirmwareUpdateProcess() -> table
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getFirmwareUpdateProcess","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":[" ",0.0]}
*
* \endenglish
*/
std::tuple<std::string, double> getFirmwareUpdateProcess();
/**
* \chinese
* 使
*
* @return 使
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getLimitJointMaxPositions(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua函数原型
* getLimitJointMaxPositions() -> table
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getLimitJointMaxPositions","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":[6.2831854820251465,6.2831854820251465,6.2831854820251465,6.2831854820251465,6.2831854820251465,6.2831854820251465]}
* \endchinese
* \english
* Get the joint maximum positions (currently used limit values).
*
* @return Returns the joint maximum positions (currently used limit
* values).
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getLimitJointMaxPositions(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua function prototype
* getLimitJointMaxPositions() -> table
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getLimitJointMaxPositions","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":[6.2831854820251465,6.2831854820251465,6.2831854820251465,6.2831854820251465,6.2831854820251465,6.2831854820251465]}
* \endenglish
*/
std::vector<double> getLimitJointMaxPositions();
/**
* \chinese
* 使
*
* @return 使
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getLimitJointMinPositions(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua函数原型
* getLimitJointMinPositions() -> table
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getLimitJointMinPositions","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":[-6.2831854820251465,-6.2831854820251465,-6.2831854820251465,-6.2831854820251465,-6.2831854820251465,-6.2831854820251465]}
* \endchinese
* \english
* Get the joint minimum positions (currently used limit values).
*
* @return Returns the joint minimum positions (currently used limit
* values).
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getLimitJointMinPositions(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua function prototype
* getLimitJointMinPositions() -> table
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getLimitJointMinPositions","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":[-6.2831854820251465,-6.2831854820251465,-6.2831854820251465,-6.2831854820251465,-6.2831854820251465,-6.2831854820251465]}
* \endenglish
*/
std::vector<double> getLimitJointMinPositions();
/**
* \chinese
* 使
*
* @return 使
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getLimitJointMaxSpeeds(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua函数原型
* getLimitJointMaxSpeeds() -> table
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getLimitJointMaxSpeeds","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":[3.8920841217041016,3.8920841217041016,3.8920841217041016,3.1066861152648926,3.1066861152648926,3.1066861152648926]}
* \endchinese
* \english
* Get the joint maximum speeds (currently used limit values).
*
* @return Returns the joint maximum speeds (currently used limit values).
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getLimitJointMaxSpeeds(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua function prototype
* getLimitJointMaxSpeeds() -> table
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getLimitJointMaxSpeeds","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":[3.8920841217041016,3.8920841217041016,3.8920841217041016,3.1066861152648926,3.1066861152648926,3.1066861152648926]}
* \endenglish
*/
std::vector<double> getLimitJointMaxSpeeds();
/**
* \chinese
* 使
*
* @return 使
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getLimitJointMaxAccelerations(self: pyaubo_sdk.RobotConfig) ->
* List[float]
*
* @par Lua函数原型
* getLimitJointMaxAccelerations() -> table
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getLimitJointMaxAccelerations","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":[31.104877758314785,31.104877758314785,31.104877758314785,20.73625684294463,20.73625684294463,20.73625684294463]}
* \endchinese
* \english
* Get the joint maximum accelerations (currently used limit values).
*
* @return Returns the joint maximum accelerations (currently used limit
* values).
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getLimitJointMaxAccelerations(self: pyaubo_sdk.RobotConfig) ->
* List[float]
*
* @par Lua function prototype
* getLimitJointMaxAccelerations() -> table
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getLimitJointMaxAccelerations","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":[31.104877758314785,31.104877758314785,31.104877758314785,20.73625684294463,20.73625684294463,20.73625684294463]}
* \endenglish
*/
std::vector<double> getLimitJointMaxAccelerations();
/**
* \chinese
* TCP最大速度使
*
* @return TCP最大速度使
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getLimitTcpMaxSpeed(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua函数原型
* getLimitTcpMaxSpeed() -> table
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getLimitTcpMaxSpeed","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":2.0}
* \endchinese
* \english
* Get the TCP maximum speed (currently used limit value).
*
* @return Returns the TCP maximum speed (currently used limit value).
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getLimitTcpMaxSpeed(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua function prototype
* getLimitTcpMaxSpeed() -> table
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getLimitTcpMaxSpeed","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":2.0}
* \endenglish
*/
double getLimitTcpMaxSpeed();
/**
* \chinese
*
*
* @return
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getSafeguardStopType","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":"None"}
* \endchinese
* \english
* Get the current safeguard stop type.
*
* @return Returns the current safeguard stop type.
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getSafeguardStopType","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":"None"}
* \endenglish
*/
SafeguedStopType getSafeguardStopType();
/**
* \chinese
*
*
* @return
*
* :
* IO触发的安全停止 - 1<<0
* IO触发的安全停止 - 1<<1
* SI输入触发的安全停止 - 1<<2
* - 1<<3
* - 1<<4
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getSafeguardStopSource","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":0}
* \endchinese
* \english
* Get the complete safeguard stop source as a bitmask.
*
* @return Returns all safeguard stop sources.
*
* Reasons for safeguard stop:
* Safeguard stop triggered by configurable safety IO in manual mode - 1<<0
* Safeguard stop triggered by configurable safety IO in automatic mode -
* 1<<1 Safeguard stop triggered by control box SI input - 1<<2 Safeguard
* stop triggered by teach pendant three-position switch - 1<<3 Safeguard
* stop triggered by switching from auto to manual - 1<<4
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getSafeguardStopSource","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":0}
* \endenglish
*/
int getSafeguardStopSource();
/**
* \chinese
*
*
* @return
*
* :
* - 1<<0
* - 1<<1
* - 1<<2
* IO紧急停止触发 - 1<<3
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getRobotEmergencyStopSource","params":[],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":0}
* \endchinese
* \english
* Get the complete robot emergency stop source as a bitmask.
*
* @return Returns all robot emergency stop sources.
*
* Reasons for emergency stop:
* Emergency stop triggered by control box button - 1<<0
* Emergency stop triggered by teach pendant button - 1<<1
* Emergency stop triggered by handle button - 1<<2
* Emergency stop triggered by fixed IO - 1<<3
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getRobotEmergencyStopSource","params":[],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":0}
* \endenglish
*/
int getRobotEmergencyStopSource();
/**
* \chinese
*
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getSelectedTcpForceSensorName(self: pyaubo_sdk.RobotConfig) -> str
*
* @par Lua函数原型
* getSelectedTcpForceSensorName() -> str
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getSelectedTcpForceSensorName","params":[],"id":1}
* \endchinese
* \english
* Get the name of the selected TCP force sensor.
*
* @return The name of the currently selected TCP force sensor.
*
* @throws arcs::common_interface::AuboException
*
* @par Python function prototype
* getSelectedTcpForceSensorName(self: pyaubo_sdk.RobotConfig) -> str
*
* @par Lua function prototype
* getSelectedTcpForceSensorName() -> str
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getSelectedTcpForceSensorName","params":[],"id":1}
* \endenglish
*/
std::string getSelectedTcpForceSensorName();
/**
* \chinese
*
*
* @param m , : kg
* @param cog , : m, (CoGx, CoGy, CoGz)
* @param inertia , : kg*m^2, (Ixx, Iyy, Izz, Ixy,
* Ixz, Iyz)(Ixx, Ixy, Ixz, Iyx, Iyy, Iyz, Izx, Izy, Izz)
* @return 0;
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* attachWeldingGun(self: pyaubo_sdk.RobotConfig, arg0: float, arg1:
* List[float], arg2: List[float]) -> int
*
* @par Lua函数原型
* attachWeldingGun(m: number, cog: table, inertia: table) -> nil
*
* @par Lua示例
* attachWeldingGun(3, {0,0,0}, {0,0,0,0,0,0,0,0,0})
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.attachWeldingGun","params":[3,[0,0,0],[0,0,0,0,0,0,0,0,0]],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":0}
* \endchinese
*/
int attachWeldingGun(double m, const std::vector<double> &cog,
const std::vector<double> &inertia);
/**
* \chinese
*
*
* @param threshold
* @return 0;
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* setCollisionThreshold(self: pyaubo_sdk.RobotConfig, arg0: List[float])
* -> int
*
* @par Lua函数原型
* setCollisionThreshold(threshold: table) -> nil
*
* @par Lua示例
* setCollisionThreshold({99.0,
* 114.0,
* 103.0, 56.0, 51.0, 60.0,54.6111111, 66.22222222, 59.66666667, 28.94444444,
* 27.05555556, 30.11111111,19.1, 28.0, 25.0, 7.3, 7.9, 6.2})
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.setCollisionThreshold","params":[[99.0,
* 114.0,
* 103.0, 56.0, 51.0, 60.0,54.6111111, 66.22222222, 59.66666667, 28.94444444,
* 27.05555556, 30.11111111,19.1, 28.0, 25.0, 7.3, 7.9, 6.2]],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":0}
* \endchinese
* \english
* Enable optimized collision force.
*
* @param threshold
* @return Returns 0 on success; error code on failure.
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.setCollisionThreshold","params":[[99.0,
* 114.0,
* 103.0, 56.0, 51.0, 60.0,54.6111111, 66.22222222, 59.66666667, 28.94444444,
* 27.05555556, 30.11111111,19.1, 28.0, 25.0, 7.3, 7.9, 6.2]],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":"None"}
* \endenglish
*/
int setCollisionThreshold(const std::vector<double> &threshold);
/**
* \chinese
*
*
* @return
*
* @throws arcs::common_interface::AuboException
*
* @par Python函数原型
* getCollisionThreshold(self: pyaubo_sdk.RobotConfig) -> List[float]
*
* @par Lua函数原型
* getCollisionThreshold() -> table
*
* @par JSON-RPC请求示例
* {"jsonrpc":"2.0","method":"rob1.MotionControl.getCollisionThreshold","params":[99.0,
* 114.0, 103.0, 56.0, 51.0, 60.0],"id":1}
*
* @par JSON-RPC响应示例
* {"id":1,"jsonrpc":"2.0","result":1}
* \endchinese
* \english
* Get collision threshold.
*
* @return collision threshold.
*
* @par JSON-RPC request example
* {"jsonrpc":"2.0","method":"rob1.RobotConfig.getCollisionThreshold","params":[[99.0,
* 114.0,
* 103.0, 56.0, 51.0, 60.0,54.6111111, 66.22222222, 59.66666667, 28.94444444,
* 27.05555556, 30.11111111,19.1, 28.0, 25.0, 7.3, 7.9, 6.2]],"id":1}
*
* @par JSON-RPC response example
* {"id":1,"jsonrpc":"2.0","result":"None"}
* \endenglish
*/
std::vector<double> getCollisionThreshold();
protected:
void *d_;
};
using RobotConfigPtr = std::shared_ptr<RobotConfig>;
} // namespace common_interface
} // namespace arcs
#endif // AUBO_SDK_ROBOT_CONFIG_H