`C_PiperInterface` 类接口功能列表

发布于:2025-05-11 ⋅ 阅读:(18) ⋅ 点赞:(0)

C_PiperInterface 类接口功能列表

C_PiperInterface 提供了全面的接口,用于控制 Piper 机械臂的运动、查询状态、设置参数以及管理 SDK 限制。

以下是 C_PiperInterface 类中所有接口的功能总结:


1. 初始化与连接相关接口

  • __new__: 实现单例模式,确保相同参数只创建一个实例。
  • __init__: 初始化 Piper 接口,包括 CAN 通信、正向运动学、参数管理等。
  • ConnectPort: 连接 CAN 端口,启动数据读取线程并初始化机械臂。
  • DisconnectPort: 断开 CAN 端口,停止数据读取线程。
  • PiperInit: 初始化 Piper 机械臂,查询电机角度、速度、加速度限制等。

2. 状态获取接口

  • GetCurrentInterfaceVersion: 获取当前接口版本。
  • GetCurrentSDKVersion: 获取当前 SDK 版本。
  • GetCurrentProtocolVersion: 获取当前协议版本。
  • GetCanFps: 获取 CAN 模块的帧率。
  • GetArmStatus: 获取机械臂状态(控制模式、运动状态、错误码等)。
  • GetArmEndPoseMsgs: 获取机械臂末端位姿(X, Y, Z, RX, RY, RZ)。
  • GetArmJointMsgs: 获取机械臂关节状态(角度、速度等)。
  • GetFK: 获取机械臂正向运动学解(关节位姿)。
  • GetArmGripperMsgs: 获取夹爪状态(角度、力矩等)。
  • GetArmHighSpdInfoMsgs: 获取机械臂高速反馈信息(转速、电流、位置等)。
  • GetArmLowSpdInfoMsgs: 获取机械臂低速反馈信息(电压、温度、状态等)。
  • GetCurrentMotorAngleLimitMaxVel: 获取当前电机角度限制和最大速度。
  • GetCurrentEndVelAndAccParam: 获取末端速度和加速度参数。
  • GetCrashProtectionLevelFeedback: 获取碰撞防护等级反馈。
  • GetCurrentMotorMaxAccLimit: 获取当前电机最大加速度限制。
  • GetArmJointCtrl: 获取关节控制指令(目标值)。
  • GetArmGripperCtrl: 获取夹爪控制指令。
  • GetArmCtrlCode151: 获取 0x151 控制指令(模式控制)。
  • GetAllMotorMaxAccLimit: 获取所有电机的最大加速度限制。
  • GetAllMotorAngleLimitMaxSpd: 获取所有电机的角度和速度限制。
  • GetPiperFirmwareVersion: 获取 Piper 固件版本。
  • isOk: 检查 CAN 数据读取线程是否正常。

3. 控制接口

3.1 运动控制
  • MotionCtrl_1: 发送运动控制指令 1(急停、轨迹控制、拖动示教)。
  • EmergencyStop: 紧急停止或恢复。
  • MotionCtrl_2: 发送运动控制指令 2(控制模式、运动模式、速度百分比)。
  • ModeCtrl: 设置机械臂模式(待机、CAN 控制、以太网控制等)。
  • EndPoseCtrl: 控制机械臂末端位姿(X, Y, Z, RX, RY, RZ)。
  • JointCtrl: 控制机械臂关节角度(关节 1-6)。
  • MoveCAxisUpdateCtrl: 更新 MoveC 模式的坐标点(起点、中点、终点)。
  • GripperCtrl: 控制夹爪(角度、力矩、状态)。
3.2 参数设置
  • MasterSlaveConfig: 设置主从模式(联动设置、偏移值)。
  • DisableArm: 失能电机。
  • EnableArm: 使能电机。
  • SearchMotorMaxAngleSpdAccLimit: 查询电机角度、速度、加速度限制。
  • SearchAllMotorMaxAngleSpd: 查询所有电机的角度和速度限制。
  • SearchAllMotorMaxAccLimit: 查询所有电机的最大加速度限制。
  • MotorAngleLimitMaxSpdSet: 设置电机角度限制和最大速度。
  • JointConfig: 设置关节参数(零点、加速度、清除错误)。
  • JointMaxAccConfig: 设置关节最大加速度。
  • SetInstructionResponse: 设置指令应答。
  • ArmParamEnquiryAndConfig: 查询或设置机械臂参数(速度、加速度、碰撞等级等)。
  • EndSpdAndAccParamSet: 设置末端速度和加速度参数。
  • CrashProtectionConfig: 设置碰撞防护等级。
  • SearchPiperFirmwareVersion: 查询 Piper 固件版本。

4. 内部辅助

  • __ValidateEndPoseValue: 验证末端位姿值是否有效。
  • __CartesianCtrl_XY: 控制末端 X 和 Y 坐标。
  • __CartesianCtrl_ZRX: 控制末端 Z 和 RX 坐标。
  • __CartesianCtrl_RYRZ: 控制末端 RY 和 RZ 坐标。
  • __JointCtrl_12: 控制关节 1 和 2。
  • __JointCtrl_34: 控制关节 3 和 4。
  • __JointCtrl_56: 控制关节 5 和 6。
  • __CalJointSDKLimit: 计算关节角度限制。
  • __CalGripperSDKLimit: 计算夹爪角度限制。
  • __UpdateArmStatus: 更新机械臂状态。
  • __UpdateArmEndPoseState: 更新末端位姿状态。
  • __UpdateArmJointState: 更新关节状态。
  • __UpdateArmGripperState: 更新夹爪状态。
  • __UpdateDriverInfoHighSpdFeedback: 更新高速反馈信息。
  • __UpdateDriverInfoLowSpdFeedback: 更新低速反馈信息。
  • __UpdateCurrentMotorAngleLimitMaxVel: 更新当前电机角度和速度限制。
  • __UpdateCurrentMotorMaxAccLimit: 更新当前电机最大加速度限制。
  • __UpdateAllCurrentMotorAngleLimitMaxVel: 更新所有电机角度和速度限制。
  • __UpdateAllCurrentMotorMaxAccLimit: 更新所有电机最大加速度限制。
  • __UpdateCurrentEndVelAndAccParam: 更新末端速度和加速度参数。
  • __UpdateCrashProtectionLevelFeedback: 更新碰撞防护等级反馈。
  • __UpdateArmJointCtrl: 更新关节控制指令。
  • __UpdateArmGripperCtrl: 更新夹爪控制指令。
  • __UpdateArmCtrlCode151: 更新 0x151 控制指令。
  • __UpdatePiperFirmware: 更新 Piper 固件信息。
  • __UpdatePiperFeedbackFK: 更新 Piper 反馈正向运动学解。
  • __UpdatePiperCtrlFK: 更新 Piper 控制正向运动学解。

5. SDK 参数管理接口

  • GetSDKJointLimitParam: 获取关节角度限制参数。
  • GetSDKGripperRangeParam: 获取夹爪范围参数。
  • SetSDKJointLimitParam: 设置关节角度限制参数。
  • SetSDKGripperRangeParam: 设置夹爪范围参数。