API 说明

ae 工控机主控支持的 API

指令号

命令

支持情况

100

获取机械臂程序版本号

支持

101

发送速度数据

支持

102

发送加速度数据

支持

103

发送圆滑过渡参数

支持

104

发送工具坐标系(TCP)参数

支持

105

设置数字量输出

支持

106

SetJointsMovej

支持

107

SetCartMovel

支持

108

SetJoinsMovel

支持

109

SetCartMovej

支持

110

MovejSequence

支持

111

MovelSequence

支持

112

SetJointsMovejDo

不支持

113

SetCartMovelDo

不支持

114

SetJointsMovelDo

不支持

115

SetJointsMovejGroupDo

不支持

116

SetCartMovelGroupDo

不支持

117

SetJointsMovelGroupDo

不支持

118

MovelUntil

支持

119

获取数字量输入状态

支持

120

获取数字量输出状态

支持

121

获取模拟量输入口数值

不支持

122

获取机械臂当前角度

支持

123

获取机械臂当前位姿

支持

200

机械臂后台发送状态

支持

ae 机械臂主控支持的 API

xyzSwitchAPP(app_name)

切换应用

参数

app_name – 应用名称

返回

err_code 为 0表示成功

xyzSwitchFlow(flow_name)

切换工件

参数

flow_name – 流图名称

返回

err_code 为 0表示成功

xyzSwitchTool(tool_name)

切换工具

参数

tool_name – 工具名称

返回

err_code 为 0表示成功

xyzReqCapImg(vision_service_id)

请求拍照

参数

vision_service_id – 视觉服务 id

返回

err_code 为 0表示成功

xyzData::gCapToken 返回的 token

xyzGetCapImg(xyzData::gCapToken)

获取拍照结果

参数

xyzData::gCapToken – 请求拍照时返回的 token

返回

err_code 为 0表示成功

xyzCapImg(vision_service_id)

拍照

参数

vision_service_id – 需要进行拍照操作的工作空间id

返回

err_code 为 0表示成功

xyzReqGraspPose(ws_id)

请求抓取位姿

参数

ws_id – 需要获取抓取点位的工作空间id

返回

err_code 为 0表示成功

xyzData::gGraspToken: 返回的用于获取目标点位时使用的token

xyzGetGraspPose(xyzData::gGraspToken)

获取抓取位姿

参数

grasp_pose_token – 求抓取目标点位时返回的token

返回

err_code 为 0表示成功

xyzData::gGraspPose: 抓取位姿

xyzData::gGraspPoseNum: 可供抓取的点数量

xyzData::gPipelineNum: pipeline文件number

xyzData::gRegisterNum: 用到的注册文件的注册number

xyzReqObjPose(ws_id)

请求物体位姿

参数

ws_id – 需要获取物体位姿的工作空间id

返回

err_code 为 0表示成功

xyzData::gObjToken: 返回的用于物体位姿识别的token

xyzGetObjPose(xyzData::gObjToken)

获取物体位姿

参数

obj_pose_token – 请求物体位姿时得到的token

返回

err_code 为 0表示成功

xyzData::gObjPose: 物体位姿

xyzData::gObjPoseNum: 物体数量

xyzData::gObjPoseType: 当前返回的物体 pose 类型

xyzResetTask()

重置视觉

参数

ws_id – 需要重置的任务id

返回

err_code 为 0表示成功

xyzSendCurrentJoints()

发送机械臂当前角度:j1~j6: 机械臂当前的角度信息,如果机械臂轴数小于6轴,则需要对应位置补零,依旧发送六个数。

返回

err_code 为 0表示成功

xyzSendCurrentCartPose()

发送机械臂法兰当前位姿

返回

err_code 为 0表示成功

xyzSendCurrentExtJoints()

暂不支持。

发送机械臂当前扩展轴位置:j1~j6: 机械臂当前扩展轴的角度信息,如果扩展轴数不足6的,需要补零后发送六个数。

返回

err_code 为 0表示成功

xyzReqPick()

暂不支持。 请求pick动作规划

返回

err_code 为 0表示成功

xyzReqPlace()

暂不支持。 请求place动作规划

返回

err_code 为 0表示成功

xyzReqPickPlace(ws_id)

请求pick和place规划

参数

ws_id – 需要抓取的工作空间id

返回

err_code 为 0表示成功

xyzGetPickin(ws_id)

获取取料入框轨迹

参数

ws_id – 规划空间id,默认填 0

返回

err_code 为 0表示成功

xyzData::gPipelineNum pipeline文件number

xyzData::gRegisterNum 用到的注册文件的注册number

xyzGetPickout(ws_id)

获取取料出框轨迹

参数

ws_id – 规划空间id,默认填 0

返回

err_code 为 0表示成功

xyzData::gPipelineNum pipeline文件number

xyzData::gRegisterNum 用到的注册文件的注册number

xyzGetPlacein(ws_id)

获取放料入框轨迹

参数

ws_id – 规划空间id,默认填 0

返回

err_code 为 0表示成功

xyzData::gPipelineNum pipeline文件number

xyzData::gRegisterNum 用到的注册文件的注册number

xyzGetPlaceout(ws_id)

获取放料出框轨迹

参数

ws_id – 规划空间id,默认填 0

返回

err_code 为 0表示成功

xyzData::gPipelineNum pipeline文件number

xyzData::gRegisterNum 用到的注册文件的注册number

xyzSwitchStrat(strategy_name)

请求切换策略

参数

strategy_name – 策略名称

返回

err_code 为 0表示成功

xyzUpdateTotePose(err_code)

料箱重定位

返回

err_code 为 0表示成功

tote_pose: 料箱位姿

xyzUpdateObjPoseOnHand(err_code)

工件在上手的二次定位

返回

err_code 为 0表示成功

xyzUpdateObjPoseToHand()

工件不在手上的二次定位

返回

err_code 为 0表示成功

xyzData::gPipelineNum pipeline文件number

xyzData::gRegisterNum 用到的注册文件的注册number

xyzGetObjPoseType()

获取工件姿态类型

返回

err_code 为 0表示成功

xyzData::gObjPoseType: 工件姿态类型

xyzResetPalletStatus()

重置工业码垛状态

返回

err_code 为 0表示成功

xyzSwitchItem(item_codename)

切换工件

参数
  • xyzData::gWsId – 工作空间id

  • item_codename – 工件名称

返回

err_code 为 0表示成功

xyzCalculateGraspPose(ws_id)

计算抓取位姿

参数

ws_id – 工作空间id

返回

err_code 为 0表示成功

xyzData::gGraspPose: 抓取位姿

xyzData::gGraspPoseNum: 可供抓取的点数量

xyzData::gPipelineNum: pipeline文件number

xyzData::gRegisterNum: 用到的注册文件的注册number

xyzCalculateObjPose(ws_id)

计算物体位姿

参数

ws_id – 工作空间id

返回

err_code 为 0表示成功

xyzData::gObjPose: 物体位姿

xyzData::gObjPoseNum: 物体数量

xyzData::gObjPoseType: 当前返回的物体 pose 类型

xyzUserCommand()

用户自定义发送数据。使用请按照参照 xyz-master_api

发送给工控机:

xyzData::out_str :提供5个字符串供用户输入

xyzData::out_double:提供10个整数类型供用户输入

xyzData::out_double:提供10个浮点数供用户输入

xyzData::out_pose :cart_pose点位坐标,如果机器人是欧拉角形式,则只需给a,b,c赋值,d赋值0即可

xyzData::out_joint:关节角坐标值

工控机返回:

xyzData::out_str :返回5个字符串

xyzData::in_int :提供10个整数类型供用户输入:返回10个整数值

xyzData::in_double :提供10个浮点数供用户输入:返回10个浮点数

xyzData::in_pose :cart_pose点位坐标,如果机器人是欧拉角形式,则只需给a:返回一个笛卡尔位姿数据

xyzData::in_joint :关节角坐标值:返回一个关节坐标

返回

err_code 为 0表示 成功