4#ifndef AUBO_SDK_ROBOT_CONTROL_INTERFACE_H
5#define AUBO_SDK_ROBOT_CONTROL_INTERFACE_H
10#include <aubo/global_config.h>
14namespace common_interface {
256 const std::vector<double> &feature);
721#define RobotManage_DECLARES \
722 _FUNC(RobotManage, 0, poweron) \
723 _FUNC(RobotManage, 0, startup) \
724 _FUNC(RobotManage, 0, releaseRobotBrake) \
725 _FUNC(RobotManage, 0, lockRobotBrake) \
726 _FUNC(RobotManage, 0, poweroff) \
727 _FUNC(RobotManage, 1, backdrive, enable) \
728 _FUNC(RobotManage, 1, freedrive, enable) \
729 _FUNC(RobotManage, 2, handguideMode, freeAxes,feature) \
730 _FUNC(RobotManage, 0, exitHandguideMode) \
731 _FUNC(RobotManage, 0, getHandguideStatus) \
732 _FUNC(RobotManage, 0, getHandguideTrigger) \
733 _FUNC(RobotManage, 0, isHandguideEnabled) \
734 _FUNC(RobotManage, 1, setSim, enable) \
735 _FUNC(RobotManage, 1, setOperationalMode, mode) \
736 _FUNC(RobotManage, 0, getOperationalMode) \
737 _FUNC(RobotManage, 0, getRobotControlMode) \
738 _FUNC(RobotManage, 0, isSimulationEnabled) \
739 _FUNC(RobotManage, 0, isFreedriveEnabled) \
740 _FUNC(RobotManage, 0, isBackdriveEnabled) \
741 _FUNC(RobotManage, 0, setUnlockProtectiveStop) \
742 _INST(RobotManage, 1, startRecord, file_name) \
743 _INST(RobotManage, 0, stopRecord) \
744 _INST(RobotManage, 1, pauseRecord, pause) \
745 _FUNC(RobotManage, 0, restartInterfaceBoard) \
746 _FUNC(RobotManage, 1, setLinkModeEnable, enable) \
747 _FUNC(RobotManage, 0, isLinkModeEnabled)
int setUnlockProtectiveStop()
清除防护停机,包括碰撞停机
int exitHandguideMode()
退出拖动示教
int backdrive(bool enable)
发起机器人反向驱动请求
int lockRobotBrake()
发起机器人刹车请求
int handguideMode(const std::vector< int > &freeAxes, const std::vector< double > &feature)
高阶拖动示教
bool isHandguideEnabled()
获取拖动示教使能状态
int setOperationalMode(OperationalModeType mode)
设置机器人操作模式
int releaseRobotBrake()
发起机器人松开刹车请求
OperationalModeType getOperationalMode()
获取机器人操作模式
bool isBackdriveEnabled()
是否使能了反向驱动模式
RobotControlModeType getRobotControlMode()
获取控制模式
int setSim(bool enable)
发起机器人进入/退出仿真模式请求
int getHandguideTrigger()
获取拖动示教器触发源
int freedrive(bool enable)
发起机器人自由驱动请求 接口在软件版本 0.31.x 后已废弃,使用 handguideMode 接口替换 handguideMode({1,1,1,1,1}, {0,...
bool isFreedriveEnabled()
是否使能了拖动示教模式
int startRecord(const std::string &file_name)
开始实时轨迹的记录
bool isSimulationEnabled()
是否使能了仿真模式
int pauseRecord(bool pause)
暂停实时记录
int getHandguideStatus()
获取拖动示教器的状态(是否处于奇异空间)
int restartInterfaceBoard()
重置安全接口板,一般在机器人断电之后需要重置时调用,比如机器人急停、故障等之后
int setLinkModeEnable(bool enable)
发起机器人进入/退出联动模式请求, 只有操作模式为自动或者无时,才能使能联动模式
bool isLinkModeEnabled()
是否使能了联动模式,联动模式下用户可以通过外部IO控制机器人(用户可以对IO的功能进行配置)
RobotControlModeType
机器人控制模式
std::shared_ptr< RobotManage > RobotManagePtr