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
: 设置夹爪范围参数。