45 lines
2.7 KiB
Protocol Buffer
45 lines
2.7 KiB
Protocol Buffer
syntax = "proto3";
|
||
|
||
package cmvr.api;
|
||
|
||
import "cmvr/api/common.proto";
|
||
import "cmvr/api/arm_command.proto";
|
||
|
||
// 机械臂控制服务。除特别说明外,所有接口通过请求头中的 device_id 选择机械臂。
|
||
service ArmService {
|
||
// 机械臂下电/去使能;不包含数值参数,无单位。
|
||
rpc torqueOff(CommandHeader.Request) returns (CommandHeader.Feedback);
|
||
// 机械臂上电并使能;不包含数值参数,无单位。
|
||
rpc torqueOn(CommandHeader.Request) returns (CommandHeader.Feedback);
|
||
// 清除机械臂可恢复故障;不包含数值参数,无单位。
|
||
rpc clearFault(CommandHeader.Request) returns (CommandHeader.Feedback);
|
||
// 执行关节空间点到点运动;目标角度单位为 rad。
|
||
rpc moveJ(MoveJ.Request) returns (MoveJ.Response);
|
||
// 执行 TCP 笛卡尔直线运动;位置单位为 m,姿态单位为 rad。
|
||
rpc moveL(MoveL.Request) returns (MoveL.Response);
|
||
// 查询可用基准坐标系名称;返回名称列表,无单位。
|
||
rpc ListBaseFrame(ListFrame.Request) returns (ListFrame.Response);
|
||
// 查询可用 TCP 坐标系名称;返回名称列表,无单位。
|
||
rpc ListTCPFrame(ListFrame.Request) returns (ListFrame.Response);
|
||
// 执行关节速度运动;角速度单位为 rad/s,加速度单位为 rad/s^2。
|
||
rpc speedJ(SpeedJ.Request) returns (SpeedJ.Response);
|
||
// 执行 TCP 速度运动;线速度单位为 m/s,角速度单位为 rad/s。
|
||
rpc speedL(SpeedL.Request) returns (SpeedL.Response);
|
||
// 下发单周期关节位置伺服目标;目标角度单位为 rad。
|
||
rpc servoJ(ServoJ.Request) returns (ServoJ.Response);
|
||
// 停止当前机械臂运动;不包含数值参数,无单位。
|
||
rpc stopMotion(CommandHeader.Request) returns (CommandHeader.Feedback);
|
||
// 读取关节状态;角度 rad、角速度 rad/s、力矩 N·m。
|
||
rpc getJointState(JointRequest) returns (JointResponse);
|
||
// 读取 TCP 位姿;位置单位为 m,姿态单位为 rad。
|
||
rpc getPose(GetPose.Request) returns (GetPose.Response);
|
||
// 对指定关节执行零位标定;关节名称无单位。
|
||
rpc calibrateZeroQ(CalibrateZeroQ.Request) returns (CalibrateZeroQ.Response);
|
||
// 查询两个坐标系之间的齐次变换矩阵;平移元素单位为 m。
|
||
rpc getPoseMatrix(GetPoseMatrix.Request) returns (GetPoseMatrix.Response);
|
||
// 根据关节角计算正运动学矩阵;输入角度 rad,输出平移元素 m。
|
||
rpc computeForwardKinematics(ComputeForwardKinematics.Request) returns (ComputeForwardKinematics.Response);
|
||
// 执行机械臂厂商扩展 JSON 命令;当前用于 AUBO 控制柜 Standard DI/DO。
|
||
rpc ExecuteJsonCommand(JsonDeviceCommand.Request) returns (JsonDeviceCommand.Feedback);
|
||
}
|