ARCS SDK API
0.24.0
|
#include <robot_config.h>
Public 成员函数 | |
RobotConfig () | |
virtual | ~RobotConfig () |
std::string | getName () |
获取机器人的名字 更多... | |
int | getDof () |
获取机器人的自由度(从硬件抽象层读取) 更多... | |
double | getCycletime () |
获取机器人的伺服控制周期(从硬件抽象层读取) 更多... | |
int | setSlowDownFraction (int level, double fraction) |
预设缓速模式下的速度缩减比例 更多... | |
double | getSlowDownFraction (int level) |
获取预设的缓速模式下的速度缩减比例 更多... | |
double | getDefaultToolAcc () |
获取默认的工具端加速度,单位m/s^2 更多... | |
double | getDefaultToolSpeed () |
获取默认的工具端速度,单位m/s 更多... | |
double | getDefaultJointAcc () |
获取默认的关节加速度,单位rad/s^2 更多... | |
double | getDefaultJointSpeed () |
获取默认的关节速度,单位rad/s 更多... | |
std::string | getRobotType () |
获取机器人类型代码 更多... | |
std::string | getRobotSubType () |
获取机器人子类型代码 更多... | |
std::string | getControlBoxType () |
获取控制柜类型代码 更多... | |
int | setMountingPose (const std::vector< double > &pose) |
设置安装位姿(机器人的基坐标系相对于世界坐标系) world->base 更多... | |
std::vector< double > | getMountingPose () |
获取安装位姿(机器人的基坐标系相对于世界坐标系) 更多... | |
int | setCollisionLevel (int level) |
设置碰撞灵敏度等级 数值越大越灵敏 更多... | |
int | getCollisionLevel () |
获取碰撞灵敏度等级 更多... | |
int | setCollisionStopType (int type) |
设置碰撞停止类型 更多... | |
int | getCollisionStopType () |
获取碰撞停止类型 更多... | |
int | setHomePosition (const std::vector< double > &positions) |
设置机器人的原点位置 更多... | |
std::vector< double > | getHomePosition () |
获取机器人的原点位置 更多... | |
int | setFreedriveDamp (const std::vector< double > &damp) |
设置拖动阻尼 更多... | |
std::vector< double > | getFreedriveDamp () |
获取拖动阻尼 更多... | |
std::unordered_map< std::string, std::vector< double > > | getKinematicsParam (bool real) |
获取机器人DH参数 alpha a d theta beta 更多... | |
std::unordered_map< std::string, std::vector< double > > | getKinematicsCompensate (double ref_temperature) |
获取指定温度下的DH参数补偿值:alpha a d theta beta 更多... | |
int | setKinematicsCompensate (const std::unordered_map< std::string, std::vector< double >> ¶m) |
设置标准 DH 补偿到机器人 更多... | |
int | setPersistentParameters (const std::string ¶m) |
设置需要保存到接口板底座的参数 更多... | |
int | setHardwareCustomParameters (const std::string ¶m) |
设置硬件抽象层自定义参数 目的是为了做不同硬件之间的兼容 更多... | |
std::string | getHardwareCustomParameters (const std::string ¶m) |
获取硬件抽象层自定义参数 更多... | |
int | setRobotZero () |
设置机器人关节零位 更多... | |
std::vector< std::string > | getTcpForceSensorNames () |
获取可用的末端力矩传感器的名字 更多... | |
int | selectTcpForceSensor (const std::string &name) |
设置末端力矩传感器 如果存在内置的末端力矩传感器,默认将使用内置的力矩传感器 更多... | |
int | setTcpForceSensorPose (const std::vector< double > &sensor_pose) |
设置传感器安装位姿 更多... | |
std::vector< double > | getTcpForceSensorPose () |
获取传感器安装位姿 更多... | |
bool | hasTcpForceSensor () |
是否安装了末端力矩传感器 更多... | |
int | setTcpForceOffset (const std::vector< double > &force_offset) |
设置末端力矩偏移 更多... | |
std::vector< double > | getTcpForceOffset () |
获取末端力矩偏移 更多... | |
std::vector< std::string > | getBaseForceSensorNames () |
获取可用的底座力矩传感器的名字 更多... | |
int | selectBaseForceSensor (const std::string &name) |
设置底座力矩传感器 如果存在内置的底座力矩传感器,默认将使用内置的力矩传感器 更多... | |
bool | hasBaseForceSensor () |
是否安装了底座力矩传感器 更多... | |
int | setBaseForceOffset (const std::vector< double > &force_offset) |
设置底座力矩偏移 更多... | |
std::vector< double > | getBaseForceOffset () |
获取底座力矩偏移 更多... | |
uint32_t | getSafetyParametersCheckSum () |
获取安全参数校验码 CRC32 更多... | |
int | confirmSafetyParameters (const RobotSafetyParameterRange ¶meters) |
发起确认安全配置参数请求: 将安全配置参数写入到安全接口板flash或文件 更多... | |
uint32_t | calcSafetyParametersCheckSum (const RobotSafetyParameterRange ¶meters) |
计算安全参数的 CRC32 校验值 更多... | |
std::vector< double > | getJointMaxPositions () |
获取关节最大位置(物理极限) 更多... | |
std::vector< double > | getJointMinPositions () |
获取关节最小位置(物理极限) 更多... | |
std::vector< double > | getJointMaxSpeeds () |
获取关节最大速度(物理极限) 更多... | |
std::vector< double > | getJointMaxAccelerations () |
获取关节最大加速度(物理极限) 更多... | |
std::vector< double > | getTcpMaxSpeeds () |
获取TCP最大速度(物理极限) 更多... | |
std::vector< double > | getTcpMaxAccelerations () |
获取TCP最大加速度(物理极限) 更多... | |
int | setGravity (const std::vector< double > &gravity) |
设置机器人安装姿态 更多... | |
std::vector< double > | getGravity () |
获取机器人的安装姿态 更多... | |
int | setTcpOffset (const std::vector< double > &offset) |
设置当前的TCP偏移 更多... | |
std::vector< double > | getTcpOffset () |
获取当前的TCP偏移 更多... | |
int | setToolInertial (double m, const std::vector< double > &com, const std::vector< double > &inertial) |
设置工具端质量、质心及惯量 更多... | |
int | setPayload (double m, const std::vector< double > &cog, const std::vector< double > &aom, const std::vector< double > &inertia) |
设置有效负载 更多... | |
Payload | getPayload () |
获取有效负载 更多... | |
bool | toolSpaceInRange (const std::vector< double > &pose) |
末端位姿是否在安全范围之内 更多... | |
int | firmwareUpdate (const std::string &fw) |
发起固件升级请求,控制器软件将进入固件升级模式 更多... | |
std::tuple< std::string, double > | getFirmwareUpdateProcess () |
获取当前的固件升级的进程 更多... | |
std::vector< double > | getLimitJointMaxPositions () |
获取关节最大位置(当前正在使用的限制值) 更多... | |
std::vector< double > | getLimitJointMinPositions () |
获取关节最小位置(当前正在使用的限制值) 更多... | |
std::vector< double > | getLimitJointMaxSpeeds () |
获取关节最大速度(当前正在使用的限制值) 更多... | |
std::vector< double > | getLimitJointMaxAccelerations () |
获取关节最大加速度(当前正在使用的限制值) 更多... | |
double | getLimitTcpMaxSpeed () |
获取TCP最大速度(当前正在使用的限制值) 更多... | |
SafeguedStopType | getSafeguardStopType () |
获取当前安全停止的类型 更多... | |
int | getSafeguardStopSource () |
按位获取完整的安全停止触发源 更多... | |
Protected 属性 | |
void * | d_ |
在文件 robot_config.h 第 16 行定义.
arcs::common_interface::RobotConfig::RobotConfig | ( | ) |
|
virtual |
uint32_t arcs::common_interface::RobotConfig::calcSafetyParametersCheckSum | ( | const RobotSafetyParameterRange & | parameters | ) |
int arcs::common_interface::RobotConfig::confirmSafetyParameters | ( | const RobotSafetyParameterRange & | parameters | ) |
发起确认安全配置参数请求: 将安全配置参数写入到安全接口板flash或文件
parameters | 安全配置参数 |
int arcs::common_interface::RobotConfig::firmwareUpdate | ( | const std::string & | fw | ) |
发起固件升级请求,控制器软件将进入固件升级模式
fw | 固件升级路径。该路径的格式为: 固件安装包路径#升级节点列表。 其中固件安装包路径和升级节点列表以井号(#)分隔,升级节点以逗号(,)分隔。 如果节点名称后带有!,则表示强制(不带版本校验)升级该节点; 反之,则表示带校验版本地升级节点, 即在升级该节点前,会先判断当前版本和目标版本是否相同,如果相同就不升级该节点。 可以根据实际需求灵活设置需要升级的节点。 例如, /tmp/firmware_update-1.0.42-rc.5+2347b0d.firm#master_mcu!,slace_mcu!, base!,tool!,joint1!,joint2!,joint3!,joint4!,joint5!,joint6! 表示强制升级接口板主板、接口板从板、基座、工具和6个关节(joint1至joint6)。 all表示所有的节点,例如 /tmp/firm_XXX.firm#all 表示带校验版本地升级全部节点, /tmp/firm_XXX.firm#all!表示强制升级全部节点 |
std::vector<double> arcs::common_interface::RobotConfig::getBaseForceOffset | ( | ) |
获取底座力矩偏移
std::vector<std::string> arcs::common_interface::RobotConfig::getBaseForceSensorNames | ( | ) |
获取可用的底座力矩传感器的名字
int arcs::common_interface::RobotConfig::getCollisionLevel | ( | ) |
获取碰撞灵敏度等级
int arcs::common_interface::RobotConfig::getCollisionStopType | ( | ) |
获取碰撞停止类型
std::string arcs::common_interface::RobotConfig::getControlBoxType | ( | ) |
获取控制柜类型代码
double arcs::common_interface::RobotConfig::getCycletime | ( | ) |
获取机器人的伺服控制周期(从硬件抽象层读取)
double arcs::common_interface::RobotConfig::getDefaultJointAcc | ( | ) |
获取默认的关节加速度,单位rad/s^2
double arcs::common_interface::RobotConfig::getDefaultJointSpeed | ( | ) |
获取默认的关节速度,单位rad/s
double arcs::common_interface::RobotConfig::getDefaultToolAcc | ( | ) |
获取默认的工具端加速度,单位m/s^2
double arcs::common_interface::RobotConfig::getDefaultToolSpeed | ( | ) |
获取默认的工具端速度,单位m/s
int arcs::common_interface::RobotConfig::getDof | ( | ) |
获取机器人的自由度(从硬件抽象层读取)
std::tuple<std::string, double> arcs::common_interface::RobotConfig::getFirmwareUpdateProcess | ( | ) |
获取当前的固件升级的进程
std::vector<double> arcs::common_interface::RobotConfig::getFreedriveDamp | ( | ) |
获取拖动阻尼
std::vector<double> arcs::common_interface::RobotConfig::getGravity | ( | ) |
获取机器人的安装姿态
如果机器人底座安装了姿态传感器,则从传感器读取数据,否则按照用户设置
std::string arcs::common_interface::RobotConfig::getHardwareCustomParameters | ( | const std::string & | param | ) |
获取硬件抽象层自定义参数
std::vector<double> arcs::common_interface::RobotConfig::getHomePosition | ( | ) |
获取机器人的原点位置
std::vector<double> arcs::common_interface::RobotConfig::getJointMaxAccelerations | ( | ) |
获取关节最大加速度(物理极限)
std::vector<double> arcs::common_interface::RobotConfig::getJointMaxPositions | ( | ) |
获取关节最大位置(物理极限)
std::vector<double> arcs::common_interface::RobotConfig::getJointMaxSpeeds | ( | ) |
获取关节最大速度(物理极限)
std::vector<double> arcs::common_interface::RobotConfig::getJointMinPositions | ( | ) |
获取关节最小位置(物理极限)
std::unordered_map<std::string, std::vector<double> > arcs::common_interface::RobotConfig::getKinematicsCompensate | ( | double | ref_temperature | ) |
获取指定温度下的DH参数补偿值:alpha a d theta beta
ref_temperature | 参考温度 ℃,默认20℃ |
std::unordered_map<std::string, std::vector<double> > arcs::common_interface::RobotConfig::getKinematicsParam | ( | bool | real | ) |
获取机器人DH参数 alpha a d theta beta
real | 读取真实参数(理论值+补偿值)或者理论参数 |
std::vector<double> arcs::common_interface::RobotConfig::getLimitJointMaxAccelerations | ( | ) |
获取关节最大加速度(当前正在使用的限制值)
std::vector<double> arcs::common_interface::RobotConfig::getLimitJointMaxPositions | ( | ) |
获取关节最大位置(当前正在使用的限制值)
std::vector<double> arcs::common_interface::RobotConfig::getLimitJointMaxSpeeds | ( | ) |
获取关节最大速度(当前正在使用的限制值)
std::vector<double> arcs::common_interface::RobotConfig::getLimitJointMinPositions | ( | ) |
获取关节最小位置(当前正在使用的限制值)
double arcs::common_interface::RobotConfig::getLimitTcpMaxSpeed | ( | ) |
获取TCP最大速度(当前正在使用的限制值)
std::vector<double> arcs::common_interface::RobotConfig::getMountingPose | ( | ) |
获取安装位姿(机器人的基坐标系相对于世界坐标系)
std::string arcs::common_interface::RobotConfig::getName | ( | ) |
获取机器人的名字
Payload arcs::common_interface::RobotConfig::getPayload | ( | ) |
获取有效负载
std::string arcs::common_interface::RobotConfig::getRobotSubType | ( | ) |
获取机器人子类型代码
std::string arcs::common_interface::RobotConfig::getRobotType | ( | ) |
获取机器人类型代码
int arcs::common_interface::RobotConfig::getSafeguardStopSource | ( | ) |
按位获取完整的安全停止触发源
安全停止的原因: 手动模式下可配置安全IO触发的安全停止 - 1<<0 自动模式下可配置安全IO触发的安全停止 - 1<<1 控制柜SI输入触发的安全停止 - 1<<2 示教器三态开关触发的安全停止 - 1<<3 自动切手动触发的安全停止 - 1<<4
SafeguedStopType arcs::common_interface::RobotConfig::getSafeguardStopType | ( | ) |
获取当前安全停止的类型
uint32_t arcs::common_interface::RobotConfig::getSafetyParametersCheckSum | ( | ) |
获取安全参数校验码 CRC32
double arcs::common_interface::RobotConfig::getSlowDownFraction | ( | int | level | ) |
获取预设的缓速模式下的速度缩减比例
level | 缓速等级 1, 2 |
std::vector<double> arcs::common_interface::RobotConfig::getTcpForceOffset | ( | ) |
获取末端力矩偏移
std::vector<std::string> arcs::common_interface::RobotConfig::getTcpForceSensorNames | ( | ) |
获取可用的末端力矩传感器的名字
std::vector<double> arcs::common_interface::RobotConfig::getTcpForceSensorPose | ( | ) |
获取传感器安装位姿
std::vector<double> arcs::common_interface::RobotConfig::getTcpMaxAccelerations | ( | ) |
获取TCP最大加速度(物理极限)
std::vector<double> arcs::common_interface::RobotConfig::getTcpMaxSpeeds | ( | ) |
获取TCP最大速度(物理极限)
std::vector<double> arcs::common_interface::RobotConfig::getTcpOffset | ( | ) |
获取当前的TCP偏移
TCP偏移表示形式为(x,y,z,rx,ry,rz)。 其中x、y、z是工具中心点(TCP)在基坐标系下相对于法兰盘中心的位置偏移,单位是m。 rx、ry、rz是工具中心点(TCP)在基坐标系下相对于法兰盘中心的的姿态偏移,是ZYX欧拉角,单位是rad。
bool arcs::common_interface::RobotConfig::hasBaseForceSensor | ( | ) |
是否安装了底座力矩传感器
bool arcs::common_interface::RobotConfig::hasTcpForceSensor | ( | ) |
是否安装了末端力矩传感器
int arcs::common_interface::RobotConfig::selectBaseForceSensor | ( | const std::string & | name | ) |
设置底座力矩传感器 如果存在内置的底座力矩传感器,默认将使用内置的力矩传感器
name | 底座力矩传感器的名字 |
int arcs::common_interface::RobotConfig::selectTcpForceSensor | ( | const std::string & | name | ) |
设置末端力矩传感器 如果存在内置的末端力矩传感器,默认将使用内置的力矩传感器
name | 末端力矩传感器的名字 |
int arcs::common_interface::RobotConfig::setBaseForceOffset | ( | const std::vector< double > & | force_offset | ) |
设置底座力矩偏移
force_offset | 底座力矩偏移 |
int arcs::common_interface::RobotConfig::setCollisionLevel | ( | int | level | ) |
设置碰撞灵敏度等级 数值越大越灵敏
level | 碰撞灵敏度等级 0: 关闭碰撞检测功能 1~9: 碰撞灵敏等级 |
int arcs::common_interface::RobotConfig::setCollisionStopType | ( | int | type | ) |
设置碰撞停止类型
type | 类型 0: 碰撞后浮动,即碰撞之后进入拖动示教模式 1: 碰撞后静止 2: 碰撞后抱闸 |
int arcs::common_interface::RobotConfig::setFreedriveDamp | ( | const std::vector< double > & | damp | ) |
设置拖动阻尼
damp | 阻尼 |
int arcs::common_interface::RobotConfig::setGravity | ( | const std::vector< double > & | gravity | ) |
设置机器人安装姿态
gravity | 安装姿态 |
int arcs::common_interface::RobotConfig::setHardwareCustomParameters | ( | const std::string & | param | ) |
设置硬件抽象层自定义参数 目的是为了做不同硬件之间的兼容
param | 自定义参数 |
int arcs::common_interface::RobotConfig::setHomePosition | ( | const std::vector< double > & | positions | ) |
设置机器人的原点位置
positions | 关节角度 |
int arcs::common_interface::RobotConfig::setKinematicsCompensate | ( | const std::unordered_map< std::string, std::vector< double >> & | param | ) |
设置标准 DH 补偿到机器人
param |
int arcs::common_interface::RobotConfig::setMountingPose | ( | const std::vector< double > & | pose | ) |
设置安装位姿(机器人的基坐标系相对于世界坐标系) world->base
一般在多机器人系统中使用,默认为 [0,0,0,0,0,0]
pose | 安装位姿 |
int arcs::common_interface::RobotConfig::setPayload | ( | double | m, |
const std::vector< double > & | cog, | ||
const std::vector< double > & | aom, | ||
const std::vector< double > & | inertia | ||
) |
设置有效负载
m | 质量, 单位: kg |
cog | 重心, 单位: m, 形式为(CoGx, CoGy, CoGz) |
aom | 力矩轴的方向, 单位: rad, 形式为(rx, ry, rz) |
inertia | 惯量, 单位: kg*m^2, 形式为(Ixx, Ixy, Ixz, Iyx, Iyy, Iyz, Izx, Izy, Izz) |
int arcs::common_interface::RobotConfig::setPersistentParameters | ( | const std::string & | param | ) |
设置需要保存到接口板底座的参数
param | 补偿数据 |
int arcs::common_interface::RobotConfig::setRobotZero | ( | ) |
设置机器人关节零位
int arcs::common_interface::RobotConfig::setSlowDownFraction | ( | int | level, |
double | fraction | ||
) |
预设缓速模式下的速度缩减比例
level | 缓速等级 1, 2 |
fraction |
int arcs::common_interface::RobotConfig::setTcpForceOffset | ( | const std::vector< double > & | force_offset | ) |
设置末端力矩偏移
force_offset | 末端力矩偏移 |
int arcs::common_interface::RobotConfig::setTcpForceSensorPose | ( | const std::vector< double > & | sensor_pose | ) |
设置传感器安装位姿
sensor_pose | 传感器安装位姿 |
int arcs::common_interface::RobotConfig::setTcpOffset | ( | const std::vector< double > & | offset | ) |
设置当前的TCP偏移
TCP偏移表示形式为(x,y,z,rx,ry,rz)。 其中x、y、z是工具中心点(TCP)在基坐标系下相对于法兰盘中心的位置偏移,单位是m。 rx、ry、rz是工具中心点(TCP)在基坐标系下相对于法兰盘中心的的姿态偏移,是ZYX欧拉角,单位是rad。
offset | 当前的TCP偏移,形式为(x,y,z,rx,ry,rz) |
int arcs::common_interface::RobotConfig::setToolInertial | ( | double | m, |
const std::vector< double > & | com, | ||
const std::vector< double > & | inertial | ||
) |
设置工具端质量、质心及惯量
m | 工具端质量 |
com | 质心 |
inertial | 惯量 |
bool arcs::common_interface::RobotConfig::toolSpaceInRange | ( | const std::vector< double > & | pose | ) |
末端位姿是否在安全范围之内
pose | 末端位姿 |
|
protected |
在文件 robot_config.h 第 1554 行定义.