kuavo-humanoid-sdk 1.2.1b3212__tar.gz → 1.2.1b3279__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of kuavo-humanoid-sdk might be problematic. Click here for more details.
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/PKG-INFO +11 -11
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/core/core.py +21 -10
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/core/ros/param.py +7 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/dexterous_hand.py +7 -7
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/robot.py +24 -20
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/robot_arm.py +14 -12
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/robot_head.py +6 -5
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/robot_info.py +22 -1
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/robot_navigation.py +35 -35
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/robot_state.py +4 -1
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk.egg-info/PKG-INFO +11 -11
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/README.md +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/__init__.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/common/logger.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/interfaces/__init__.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/interfaces/data_types.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/interfaces/end_effector.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/interfaces/robot.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/interfaces/robot_info.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/__init__.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/core/audio.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/core/dex_hand_control.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/core/leju_claw_control.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/core/llm_doubao.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/core/microphone.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/core/navigation.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/core/ros/audio.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/core/ros/control.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/core/ros/microphone.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/core/ros/navigation.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/core/ros/observation.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/core/ros/sat_utils.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/core/ros/state.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/core/ros/tools.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/core/ros/vision.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/core/ros_env.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/demo_climbstair.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/leju_claw.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/logger_client.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/robot_audio.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/robot_blockly.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/robot_climbstair.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/robot_microphone.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/robot_observation.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/robot_speech.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/robot_tool.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/robot_vision.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo_strategy/__init__.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo_strategy/grasp_box/grasp_box_strategy.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo_strategy/kuavo_strategy.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo_strategy_v2/common/data_type.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo_strategy_v2/common/events/base_event.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo_strategy_v2/common/robot_sdk.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo_strategy_v2/pick_place_box/case.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo_strategy_v2/pick_place_box/strategy.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo_strategy_v2/utils/logger_setup.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo_strategy_v2/utils/utils.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/__init__.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/__init__.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_AprilTagDetection.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_AprilTagDetectionArray.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_AudioReceiverData.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_FTsensorData.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_JoySticks.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_Metadata.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_MmDetectionMsg.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_RobotActionState.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_TFArray.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_TaskPoint.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/__init__.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_armCollisionCheckInfo.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_armHandPose.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_armHandPoseFree.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_armPoseWithTimeStamp.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_armTargetPoses.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_bezierCurveCubicPoint.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_dexhandCommand.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_dexhandTouchState.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_endEffectorData.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_footPose.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_footPose6D.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_footPose6DTargetTrajectories.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_footPoseTargetTrajectories.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_footPoseWithVision.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_footPoseWithVisionArray.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_footPoses.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_footPoses6D.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_fullBodyTargetTrajectories.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_gaitTimeName.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_gestureInfo.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_gestureTask.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_handPose.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_headBodyPose.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_ikSolveError.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_ikSolveParam.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_imuData.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_jointBezierTrajectory.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_jointCmd.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_jointData.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_kuavoModeSchedule.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_lejuClawCommand.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_lejuClawState.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_motorParam.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_picoPoseInfo.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_picoPoseInfoList.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_planArmState.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_qv.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_robotArmQVVD.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_robotBodyMatrices.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_robotHandPosition.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_robotHeadMotionData.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_robotState.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_sensorsData.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_switchGaitByName.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_tagDataArray.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_touchSensorStatus.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_twoArmHandPose.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_twoArmHandPoseCmd.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_twoArmHandPoseCmdFree.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_twoArmHandPoseFree.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_yoloDetection.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_yoloOutputData.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_CreatePath.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_ExecuteArmAction.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_GetAllMaps.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_GetCurrentMap.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_GetTargetPartPoseInCamera.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_InitialPoseWithTaskPoint.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_LoadMap.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_NavigateToTaskPoint.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_RepublishTFs.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_SetInitialPose.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_SetJoyTopic.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_SetLEDMode.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_SetLEDMode_free.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_SpeechSynthesis.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_TaskPointOperation.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/__init__.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_adjustZeroPoint.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_changeArmCtrlMode.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_changeArmCtrlModeKuavo.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_changeMotorParam.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_changeTorsoCtrlMode.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_controlLejuClaw.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_enableHandTouchSensor.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_fkSrv.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_footPose6DTargetTrajectoriesSrv.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_footPoseTargetTrajectoriesSrv.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_gestureExecute.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_gestureExecuteState.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_gestureList.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_getCurrentGaitName.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_getMotorParam.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_getMotorZeroPoints.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_handForceLevel.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_jointMoveTo.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_planArmTrajectoryBezierCurve.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_planArmTrajectoryCubicSpline.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_playmusic.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_setHwIntialState.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_setMmCtrlFrame.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_setMotorEncoderRoundService.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_setTagId.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_singleStepControl.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_twoArmHandPoseCmdFreeSrv.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_twoArmHandPoseCmdSrv.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/motion_capture_ik/__init__.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/ocs2_msgs/__init__.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/__init__.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_constraint.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_controller_data.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_lagrangian_metrics.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_mode_schedule.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_mpc_flattened_controller.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_mpc_input.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_mpc_observation.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_mpc_performance_indices.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_mpc_solver_data.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_mpc_state.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_mpc_target_trajectories.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_multiplier.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/ocs2_msgs/srv/__init__.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/msg/ocs2_msgs/srv/_reset.py +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk.egg-info/SOURCES.txt +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk.egg-info/dependency_links.txt +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk.egg-info/requires.txt +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk.egg-info/top_level.txt +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/setup.cfg +0 -0
- {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/setup.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: kuavo_humanoid_sdk
|
|
3
|
-
Version: 1.2.
|
|
3
|
+
Version: 1.2.1b3279
|
|
4
4
|
Summary: A Python SDK for kuavo humanoid robot.
|
|
5
5
|
Home-page: https://gitee.com/leju-robot/kuavo-ros-opensource/
|
|
6
6
|
Author: ['lejurobot']
|
|
@@ -37,7 +37,7 @@ Description-Content-Type: text/markdown
|
|
|
37
37
|
- 躯干状态(位置、姿态、速度)
|
|
38
38
|
- 里程计信息
|
|
39
39
|
- 末端执行器状态:
|
|
40
|
-
-
|
|
40
|
+
- 夹爪(lejuclaw): 位置、速度、力矩、抓取状态
|
|
41
41
|
- 灵巧手(qiangnao): 位置、速度、力矩
|
|
42
42
|
- 触觉灵巧手(qiangnao_touch): 位置、速度、力矩、触觉状态
|
|
43
43
|
- 末端执行器位置和姿态
|
|
@@ -50,7 +50,7 @@ Description-Content-Type: text/markdown
|
|
|
50
50
|
- 用于计算末端执行器位姿的正运动学(FK)
|
|
51
51
|
- 复杂动作的关键帧序列控制
|
|
52
52
|
- 末端执行器控制
|
|
53
|
-
-
|
|
53
|
+
- 夹爪控制(可配置速度和力矩的位置控制)
|
|
54
54
|
- 灵巧手控制
|
|
55
55
|
- 位置控制
|
|
56
56
|
- 预定义手势(OK、666、握拳等)控制
|
|
@@ -228,13 +228,13 @@ https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid
|
|
|
228
228
|
|
|
229
229
|
一个获取机器人基本信息的示例。
|
|
230
230
|
|
|
231
|
-
[https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/robot_info_example.py](https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/robot_info_example.py)
|
|
231
|
+
[https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/atomic_skills/robot_info_example.py](https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/atomic_skills/robot_info_example.py)
|
|
232
232
|
|
|
233
233
|
### 运动控制示例
|
|
234
234
|
|
|
235
235
|
一个基本示例,用于初始化 SDK 并控制机器人运动。
|
|
236
236
|
|
|
237
|
-
[https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/motion_example.py](https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/motion_example.py)
|
|
237
|
+
[https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/atomic_skills/motion_example.py](https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/atomic_skills/motion_example.py)
|
|
238
238
|
|
|
239
239
|
### 末端执行器控制示例
|
|
240
240
|
|
|
@@ -242,37 +242,37 @@ https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid
|
|
|
242
242
|
|
|
243
243
|
展示如何控制 LejuClaw 夹爪末端执行器的示例,包括位置、速度和力矩控制。
|
|
244
244
|
|
|
245
|
-
[https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/lejuclaw_example.py](https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/lejuclaw_example.py)
|
|
245
|
+
[https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/atomic_skills/lejuclaw_example.py](https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/atomic_skills/lejuclaw_example.py)
|
|
246
246
|
|
|
247
247
|
#### QiangNao 灵巧手
|
|
248
248
|
|
|
249
249
|
展示如何控制 QiangNao 灵巧手的示例,这是一个具有多个自由度的灵巧机器人手,可用于复杂的操作任务。
|
|
250
250
|
|
|
251
|
-
[https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/dexhand_example.py](https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/dexhand_example.py)
|
|
251
|
+
[https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/atomic_skills/dexhand_example.py](https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/atomic_skills/dexhand_example.py)
|
|
252
252
|
|
|
253
253
|
### 手臂控制示例
|
|
254
254
|
|
|
255
255
|
展示手臂轨迹控制和目标姿态控制的示例。
|
|
256
256
|
|
|
257
|
-
[https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/ctrl_arm_example.py](https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/ctrl_arm_example.py)
|
|
257
|
+
[https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/atomic_skills/ctrl_arm_example.py](https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/atomic_skills/ctrl_arm_example.py)
|
|
258
258
|
|
|
259
259
|
### 手臂正向运动学和逆向运动学示例
|
|
260
260
|
|
|
261
261
|
展示如何使用正向运动学(FK)从关节角度计算末端执行器位置,以及如何使用逆向运动学(IK)计算实现期望末端执行器姿态所需的关节角度的示例。
|
|
262
262
|
|
|
263
|
-
[https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/arm_ik_example.py](https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/arm_ik_example.py)
|
|
263
|
+
[https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/atomic_skills/arm_ik_example.py](https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/atomic_skills/arm_ik_example.py)
|
|
264
264
|
|
|
265
265
|
### 头部控制示例
|
|
266
266
|
|
|
267
267
|
展示如何控制机器人头部运动的示例,包括点头(俯仰)和摇头(偏航)动作。
|
|
268
268
|
|
|
269
|
-
[https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/ctrl_head_example.py](https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/ctrl_head_example.py)
|
|
269
|
+
[https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/atomic_skills/ctrl_head_example.py](https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/atomic_skills/ctrl_head_example.py)
|
|
270
270
|
|
|
271
271
|
### 单步控制示例
|
|
272
272
|
|
|
273
273
|
展示如何控制机器人按照自定义落足点轨迹运动的示例。
|
|
274
274
|
|
|
275
|
-
[https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/step_control_example.py](https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/step_control_example.py)
|
|
275
|
+
[https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/atomic_skills/step_control_example.py](https://gitee.com/leju-robot/kuavo-ros-opensource/tree/master/src/kuavo_humanoid_sdk/examples/atomic_skills/step_control_example.py)
|
|
276
276
|
|
|
277
277
|
|
|
278
278
|
## 许可证
|
|
@@ -123,8 +123,8 @@ class KuavoRobotCore:
|
|
|
123
123
|
raise RuntimeError(f"[Core] initialize failed: \n"
|
|
124
124
|
f"{e}, please check the robot is launched, "
|
|
125
125
|
f"e.g. `roslaunch humanoid_controllers load_kuavo_real.launch`")
|
|
126
|
-
|
|
127
|
-
success, err_msg = self._control.initialize(eef_type=
|
|
126
|
+
self._rb_info = make_robot_param()
|
|
127
|
+
success, err_msg = self._control.initialize(eef_type=self._rb_info["end_effector_type"], debug=debug)
|
|
128
128
|
if not success:
|
|
129
129
|
raise RuntimeError(f"[Core] initialize failed: \n{err_msg}, please check the robot is launched, "
|
|
130
130
|
f"e.g. `roslaunch humanoid_controllers load_kuavo_real.launch`")
|
|
@@ -228,6 +228,14 @@ class KuavoRobotCore:
|
|
|
228
228
|
if abs(pitch) > MAX_PITCH:
|
|
229
229
|
SDKLogger.warn(f"[Core] pitch {pitch} exceeds limit [{MIN_PITCH}, {MAX_PITCH}], will be limited")
|
|
230
230
|
|
|
231
|
+
# 结合当前高度做过滤
|
|
232
|
+
target_height = self._rb_info['init_stand_height'] + limited_height
|
|
233
|
+
# 躯干上升运动变化不宜过大, 目标高度减去实时躯干高度大于阈值
|
|
234
|
+
HEIGHT_CHANGE_THRESHOLD = 0.25
|
|
235
|
+
if (self._rb_state.com_height < target_height) and (target_height - self._rb_state.com_height) >= HEIGHT_CHANGE_THRESHOLD:
|
|
236
|
+
limited_height = (self._rb_state.com_height + HEIGHT_CHANGE_THRESHOLD) - self._rb_info['init_stand_height']
|
|
237
|
+
print(f"\033[33mWarning! Height change too large, limiting to safe range,reset height to {limited_height}\033[0m")
|
|
238
|
+
|
|
231
239
|
return self._control.control_torso_height(limited_height, limited_pitch)
|
|
232
240
|
|
|
233
241
|
def step_control(self, target_pose:list, dt:float=0.4, is_left_first_default:bool=True, collision_check:bool=True)->bool:
|
|
@@ -255,17 +263,21 @@ class KuavoRobotCore:
|
|
|
255
263
|
com_height = self._rb_state.com_height
|
|
256
264
|
# print(f"[Core] Current COM height: {com_height:.2f}m")
|
|
257
265
|
# Check height limits based on current COM height
|
|
258
|
-
MIN_COM_HEIGHT = 0.
|
|
259
|
-
MAX_COM_HEIGHT = 0.
|
|
266
|
+
MIN_COM_HEIGHT = self._rb_info['init_stand_height'] - 0.15 # Minimum allowed COM height in meters
|
|
267
|
+
MAX_COM_HEIGHT = self._rb_info['init_stand_height'] + 0.02 # Maximum allowed COM height in meters
|
|
260
268
|
|
|
269
|
+
if com_height < MIN_COM_HEIGHT:
|
|
270
|
+
print(f"\033[31m[Core] Torso height too low, control failed: current COM height {com_height:.2f}m is below the minimum allowed height {MIN_COM_HEIGHT}m\033[0m")
|
|
271
|
+
return False
|
|
272
|
+
|
|
261
273
|
# Validate COM height constraints
|
|
262
274
|
if target_pose[2] < 0 and com_height < MIN_COM_HEIGHT:
|
|
263
|
-
|
|
264
|
-
return
|
|
275
|
+
print(f"\033[33mWarning! Cannot squat lower: COM height {com_height:.2f}m below minimum {MIN_COM_HEIGHT}m\033[0m")
|
|
276
|
+
return False
|
|
265
277
|
|
|
266
278
|
if target_pose[2] > 0 and com_height > MAX_COM_HEIGHT:
|
|
267
|
-
|
|
268
|
-
return
|
|
279
|
+
print(f"\033[33mWarning! Cannot stand higher: COM height {com_height:.2f}m above maximum {MAX_COM_HEIGHT}m\033[0m")
|
|
280
|
+
return False
|
|
269
281
|
|
|
270
282
|
# Ensure target height is within allowed range if height change requested
|
|
271
283
|
if target_pose[2] != 0:
|
|
@@ -277,8 +289,7 @@ class KuavoRobotCore:
|
|
|
277
289
|
SDKLogger.warn(f"[Core] Target height {target_height:.2f}m above maximum {MAX_COM_HEIGHT}m, limiting")
|
|
278
290
|
target_pose[2] = MAX_COM_HEIGHT - com_height
|
|
279
291
|
|
|
280
|
-
|
|
281
|
-
if com_height > 0.82:
|
|
292
|
+
if com_height > (self._rb_info['init_stand_height']-0.03):
|
|
282
293
|
max_x_step = 0.20
|
|
283
294
|
max_y_step = 0.20
|
|
284
295
|
max_yaw_step = 90
|
|
@@ -62,6 +62,12 @@ class RosParameter:
|
|
|
62
62
|
rospy.logerr("initial_state parameter not found")
|
|
63
63
|
return None
|
|
64
64
|
return rospy.get_param('/initial_state')
|
|
65
|
+
def init_stand_height(self)->float:
|
|
66
|
+
if not rospy.has_param('/com_height'):
|
|
67
|
+
rospy.logerr("com_height parameter not found")
|
|
68
|
+
# KUAVO-4PRO
|
|
69
|
+
return 0.8328437523948975
|
|
70
|
+
return rospy.get_param('/com_height')
|
|
65
71
|
|
|
66
72
|
kuavo_ros_param = RosParameter()
|
|
67
73
|
|
|
@@ -179,6 +185,7 @@ def make_robot_param()->dict:
|
|
|
179
185
|
'end_effector_type': kuavo_ros_param.end_effector_type(),
|
|
180
186
|
'joint_names': joint_names(),
|
|
181
187
|
'end_frames_names': end_frames_names(),
|
|
188
|
+
'init_stand_height': kuavo_ros_param.init_stand_height()
|
|
182
189
|
}
|
|
183
190
|
|
|
184
191
|
for key, value in kuavo_ros_info.items():
|
|
@@ -202,23 +202,23 @@ class TouchDexterousHand(DexterousHand):
|
|
|
202
202
|
return self._rb_state.eef_state.state
|
|
203
203
|
|
|
204
204
|
def get_dexhand_gesture_state(self)->bool:
|
|
205
|
-
"""
|
|
205
|
+
"""获取机器人灵巧手势的当前状态。
|
|
206
206
|
|
|
207
207
|
Returns:
|
|
208
|
-
bool: True
|
|
208
|
+
bool: 如果机器人灵巧手势正在执行返回True,否则返回False。
|
|
209
209
|
"""
|
|
210
210
|
return self._rb_state._srv_get_dexhand_gesture_state()
|
|
211
211
|
|
|
212
212
|
def make_gesture_sync(self, l_gesture_name: str, r_gesture_name: str, timeout:float=5.0)->bool:
|
|
213
|
-
"""
|
|
213
|
+
"""为双手做预定义的手势(同步等待完成)。
|
|
214
214
|
|
|
215
215
|
Args:
|
|
216
|
-
l_gesture_name (str):
|
|
217
|
-
r_gesture_name (str):
|
|
218
|
-
timeout (float, optional):
|
|
216
|
+
l_gesture_name (str): 左手手势的名称。None表示跳过左手。
|
|
217
|
+
r_gesture_name (str): 右手手势的名称。None表示跳过右手。
|
|
218
|
+
timeout (float, optional): 手势超时时间。默认为5.0秒。
|
|
219
219
|
|
|
220
220
|
Returns:
|
|
221
|
-
bool: True
|
|
221
|
+
bool: 如果手势执行成功返回True,否则返回False。
|
|
222
222
|
"""
|
|
223
223
|
gesture = []
|
|
224
224
|
if l_gesture_name is not None:
|
{kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3279}/kuavo_humanoid_sdk/kuavo/robot.py
RENAMED
|
@@ -158,11 +158,15 @@ class KuavoRobot(RobotBase):
|
|
|
158
158
|
"""控制机器人的蹲姿高度和俯仰角。
|
|
159
159
|
|
|
160
160
|
Args:
|
|
161
|
-
|
|
162
|
-
|
|
161
|
+
height (float): 相对于正常站立高度的高度偏移量,单位米,范围[-0.35, 0.0],负值表示下蹲。
|
|
162
|
+
正常站立高度参考 :attr:`KuavoRobotInfo.init_stand_height`
|
|
163
|
+
pitch (float): 机器人躯干的俯仰角,单位弧度,范围[-0.4, 0.4]。
|
|
163
164
|
|
|
164
165
|
Returns:
|
|
165
166
|
bool: 如果蹲姿控制成功返回True,否则返回False。
|
|
167
|
+
|
|
168
|
+
Note:
|
|
169
|
+
下蹲和起立不要变化过快,一次变化最大不要超过0.2米。
|
|
166
170
|
"""
|
|
167
171
|
# Limit height range
|
|
168
172
|
MAX_HEIGHT = 0.0
|
|
@@ -174,13 +178,13 @@ class KuavoRobot(RobotBase):
|
|
|
174
178
|
|
|
175
179
|
# Check if height exceeds limits
|
|
176
180
|
if height > MAX_HEIGHT or height < MIN_HEIGHT:
|
|
177
|
-
|
|
181
|
+
print(f"\033[33m[Robot] height {height} exceeds limit [{MIN_HEIGHT}, {MAX_HEIGHT}], will be limited\033[0m")
|
|
178
182
|
# Limit pitch range
|
|
179
183
|
limited_pitch = min(MAX_PITCH, max(MIN_PITCH, pitch))
|
|
180
184
|
|
|
181
185
|
# Check if pitch exceeds limits
|
|
182
186
|
if abs(pitch) > MAX_PITCH:
|
|
183
|
-
|
|
187
|
+
print(f"\033[33m[Robot] pitch {pitch} exceeds limit [{MIN_PITCH}, {MAX_PITCH}], will be limited\033[0m")
|
|
184
188
|
|
|
185
189
|
return self._kuavo_core.squat(limited_height, limited_pitch)
|
|
186
190
|
|
|
@@ -204,6 +208,10 @@ class KuavoRobot(RobotBase):
|
|
|
204
208
|
你可以调用 :meth:`KuavoRobotState.wait_for_step_control` 来等待机器人进入step-control模式。
|
|
205
209
|
你可以调用 :meth:`KuavoRobotState.wait_for_stance` 来等待step-control完成。
|
|
206
210
|
|
|
211
|
+
Warning:
|
|
212
|
+
如果当前机器人的躯干高度过低(相对于正常站立高度低于-0.15m),调用该函数会返回失败。
|
|
213
|
+
正常站立高度参考 :attr:`KuavoRobotInfo.init_stand_height`
|
|
214
|
+
|
|
207
215
|
tips:
|
|
208
216
|
坐标系: base_link坐标系
|
|
209
217
|
执行误差: 0.005~0.05m, 0.05°以下
|
|
@@ -262,7 +270,7 @@ class KuavoRobot(RobotBase):
|
|
|
262
270
|
return self._kuavo_core.control_command_pose_world(target_pose_x, target_pose_y, target_pose_z, target_pose_yaw)
|
|
263
271
|
|
|
264
272
|
def control_head(self, yaw: float, pitch: float)->bool:
|
|
265
|
-
"""
|
|
273
|
+
"""控制机器人的头部关节运动。
|
|
266
274
|
|
|
267
275
|
Args:
|
|
268
276
|
yaw (float): 头部的偏航角,单位弧度,范围[-1.396, 1.396](-80到80度)。
|
|
@@ -355,24 +363,20 @@ class KuavoRobot(RobotBase):
|
|
|
355
363
|
return self._robot_arm.control_arm_joint_trajectory(times, q_frames)
|
|
356
364
|
|
|
357
365
|
def control_arm_target_poses(self, times: list, q_frames: list) -> bool:
|
|
358
|
-
"""
|
|
359
|
-
|
|
366
|
+
"""控制机器人手臂目标姿态(已废弃)。
|
|
367
|
+
|
|
368
|
+
.. deprecated::
|
|
369
|
+
请使用 :meth:`control_arm_joint_trajectory` 替代此函数。
|
|
370
|
+
|
|
360
371
|
Args:
|
|
361
|
-
times (list):
|
|
362
|
-
q_frames (list):
|
|
363
|
-
|
|
372
|
+
times (list): 时间间隔列表,单位秒
|
|
373
|
+
q_frames (list): 关节位置列表,单位弧度
|
|
374
|
+
|
|
364
375
|
Returns:
|
|
365
|
-
bool: True
|
|
366
|
-
|
|
367
|
-
Raises:
|
|
368
|
-
ValueError: If the times list is not of the correct length.
|
|
369
|
-
ValueError: If the joint position list is not of the correct length.
|
|
370
|
-
ValueError: If the joint position is outside the range of [-π, π].
|
|
371
|
-
RuntimeError: If the robot is not in stance state when trying to control the arm.
|
|
372
|
-
|
|
376
|
+
bool: 控制成功返回True,否则返回False
|
|
377
|
+
|
|
373
378
|
Note:
|
|
374
|
-
|
|
375
|
-
Users need to wait for the motion to complete on their own.
|
|
379
|
+
此函数已废弃,请使用 :meth:`control_arm_joint_trajectory` 函数。
|
|
376
380
|
"""
|
|
377
381
|
return self._robot_arm.control_arm_target_poses(times, q_frames)
|
|
378
382
|
def set_fixed_arm_mode(self) -> bool:
|
|
@@ -33,18 +33,20 @@ class KuavoRobotArm:
|
|
|
33
33
|
return self._kuavo_core.robot_manipulation_mpc_reset()
|
|
34
34
|
|
|
35
35
|
def control_arm_target_poses(self, times: list, q_frames: list) -> bool:
|
|
36
|
-
"""
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
36
|
+
"""控制机器人手臂目标姿态(已废弃)。
|
|
37
|
+
|
|
38
|
+
.. deprecated::
|
|
39
|
+
请使用 :meth:`control_arm_joint_trajectory` 替代此函数。
|
|
40
|
+
|
|
41
|
+
Args:
|
|
42
|
+
times (list): 时间间隔列表,单位秒
|
|
43
|
+
q_frames (list): 关节位置列表,单位弧度
|
|
44
|
+
|
|
45
|
+
Returns:
|
|
46
|
+
bool: 控制成功返回True,否则返回False
|
|
47
|
+
|
|
48
|
+
Note:
|
|
49
|
+
此函数已废弃,请使用 :meth:`control_arm_joint_trajectory` 函数。
|
|
48
50
|
"""
|
|
49
51
|
if len(times) != len(q_frames):
|
|
50
52
|
raise ValueError("Invalid input. times and joint_q must have thesame length.")
|
|
@@ -18,13 +18,14 @@ class KuavoRobotHead:
|
|
|
18
18
|
|
|
19
19
|
|
|
20
20
|
def control_head(self, yaw: float, pitch: float) -> bool:
|
|
21
|
-
"""
|
|
22
|
-
|
|
21
|
+
"""控制机器人的头部关节运动。
|
|
22
|
+
|
|
23
23
|
Args:
|
|
24
|
-
yaw (float):
|
|
25
|
-
pitch (float):
|
|
24
|
+
yaw (float): 头部的偏航角,单位弧度,范围[-1.396, 1.396](-80到80度)。
|
|
25
|
+
pitch (float): 头部的俯仰角,单位弧度,范围[-0.436, 0.436](-25到25度)。
|
|
26
|
+
|
|
26
27
|
Returns:
|
|
27
|
-
bool: True
|
|
28
|
+
bool: 如果头部控制成功返回True,否则返回False。
|
|
28
29
|
"""
|
|
29
30
|
# 发送开始控制头部的日志
|
|
30
31
|
self._send_log(f"开始控制头部运动: yaw={yaw:.3f}, pitch={pitch:.3f}")
|
|
@@ -21,6 +21,8 @@ class KuavoRobotInfo(RobotInfoBase):
|
|
|
21
21
|
self._head_joint_dof = kuavo_ros_param['head_dof']
|
|
22
22
|
self._head_joint_names = self._joint_names[-2:]
|
|
23
23
|
self._arm_joint_names = self._joint_names[12:self._arm_joint_dof + 12]
|
|
24
|
+
self._init_stand_height = kuavo_ros_param['init_stand_height']
|
|
25
|
+
|
|
24
26
|
@property
|
|
25
27
|
def robot_version(self) -> str:
|
|
26
28
|
"""返回 Kuavo 机器人的版本。
|
|
@@ -108,6 +110,25 @@ class KuavoRobotInfo(RobotInfoBase):
|
|
|
108
110
|
例如 ("zarm_l7_link", "zarm_r7_link") \n
|
|
109
111
|
"""
|
|
110
112
|
return self._end_frames_names[1], self._end_frames_names[2]
|
|
113
|
+
|
|
114
|
+
@property
|
|
115
|
+
def init_stand_height(self) -> float:
|
|
116
|
+
"""返回 Kuavo 机器人初始化站立时的质心高度。
|
|
117
|
+
|
|
118
|
+
Returns:
|
|
119
|
+
float: 初始化站立时的质心高度
|
|
120
|
+
"""
|
|
121
|
+
return self._init_stand_height
|
|
111
122
|
|
|
112
123
|
def __str__(self) -> str:
|
|
113
|
-
return
|
|
124
|
+
return (
|
|
125
|
+
f"KuavoRobotInfo("
|
|
126
|
+
f"robot_type={self.robot_type}, "
|
|
127
|
+
f"robot_version={self.robot_version}, "
|
|
128
|
+
f"end_effector_type={self.end_effector_type}, "
|
|
129
|
+
f"joint_names={self.joint_names}, "
|
|
130
|
+
f"joint_dof={self.joint_dof}, "
|
|
131
|
+
f"arm_joint_dof={self.arm_joint_dof}, "
|
|
132
|
+
f"init_stand_height={self.init_stand_height}"
|
|
133
|
+
f")"
|
|
134
|
+
)
|
|
@@ -7,27 +7,27 @@ import rospy
|
|
|
7
7
|
import time
|
|
8
8
|
|
|
9
9
|
class RobotNavigation:
|
|
10
|
-
"""
|
|
10
|
+
"""机器人导航接口类。"""
|
|
11
11
|
|
|
12
12
|
def __init__(self):
|
|
13
|
-
"""
|
|
13
|
+
"""初始化 RobotNavigation 对象。"""
|
|
14
14
|
self.robot_navigation = KuavoRobotNavigationCore()
|
|
15
15
|
|
|
16
16
|
def navigate_to_goal(
|
|
17
17
|
self, x: float, y: float, z: float, roll: float, pitch: float, yaw: float
|
|
18
18
|
) -> bool:
|
|
19
|
-
"""
|
|
19
|
+
"""导航到指定目标位置。
|
|
20
20
|
|
|
21
21
|
Args:
|
|
22
|
-
x (float): x
|
|
23
|
-
y (float): y
|
|
24
|
-
z (float): z
|
|
25
|
-
roll (float):
|
|
26
|
-
pitch (float):
|
|
27
|
-
yaw (float):
|
|
22
|
+
x (float): 目标点的x坐标。
|
|
23
|
+
y (float): 目标点的y坐标。
|
|
24
|
+
z (float): 目标点的z坐标。
|
|
25
|
+
roll (float): 目标点的横滚角。
|
|
26
|
+
pitch (float): 目标点的俯仰角。
|
|
27
|
+
yaw (float): 目标点的偏航角。
|
|
28
28
|
|
|
29
29
|
Returns:
|
|
30
|
-
bool:
|
|
30
|
+
bool: 导航是否成功。
|
|
31
31
|
"""
|
|
32
32
|
orientation = tf.transformations.quaternion_from_euler(yaw, pitch, roll)
|
|
33
33
|
goal = Pose(position=Point(x=x, y=y, z=z), orientation=Quaternion(x=orientation[0], y=orientation[1], z=orientation[2], w=orientation[3]))
|
|
@@ -41,13 +41,13 @@ class RobotNavigation:
|
|
|
41
41
|
return True
|
|
42
42
|
|
|
43
43
|
def navigate_to_task_point(self, task_point_name: str) -> bool:
|
|
44
|
-
"""
|
|
44
|
+
"""导航到指定的任务点。
|
|
45
45
|
|
|
46
46
|
Args:
|
|
47
|
-
task_point_name (str):
|
|
47
|
+
task_point_name (str): 任务点的名称。
|
|
48
48
|
|
|
49
49
|
Returns:
|
|
50
|
-
bool:
|
|
50
|
+
bool: 导航是否成功。
|
|
51
51
|
"""
|
|
52
52
|
self.robot_navigation.navigate_to_task_point(task_point_name)
|
|
53
53
|
while self.get_current_status() is not NavigationStatus.ACTIVE:
|
|
@@ -59,36 +59,36 @@ class RobotNavigation:
|
|
|
59
59
|
return True
|
|
60
60
|
|
|
61
61
|
def stop_navigation(self) -> bool:
|
|
62
|
-
"""
|
|
62
|
+
"""停止导航。
|
|
63
63
|
|
|
64
64
|
Returns:
|
|
65
|
-
bool:
|
|
65
|
+
bool: 停止导航是否成功。
|
|
66
66
|
"""
|
|
67
67
|
return self.robot_navigation.stop_navigation()
|
|
68
68
|
|
|
69
69
|
def get_current_status(self) -> str:
|
|
70
|
-
"""
|
|
70
|
+
"""获取当前导航状态。
|
|
71
71
|
|
|
72
72
|
Returns:
|
|
73
|
-
str:
|
|
73
|
+
str: 当前导航状态。
|
|
74
74
|
"""
|
|
75
75
|
return self.robot_navigation.get_current_status()
|
|
76
76
|
|
|
77
77
|
def init_localization_by_pose(
|
|
78
78
|
self, x: float, y: float, z: float, roll: float, pitch: float, yaw: float
|
|
79
79
|
) -> bool:
|
|
80
|
-
"""
|
|
80
|
+
"""通过位姿初始化定位。
|
|
81
81
|
|
|
82
82
|
Args:
|
|
83
|
-
x (float): x
|
|
84
|
-
y (float): y
|
|
85
|
-
z (float): z
|
|
86
|
-
roll (float):
|
|
87
|
-
pitch (float):
|
|
88
|
-
yaw (float):
|
|
83
|
+
x (float): 位姿的x坐标。
|
|
84
|
+
y (float): 位姿的y坐标。
|
|
85
|
+
z (float): 位姿的z坐标。
|
|
86
|
+
roll (float): 位姿的横滚角。
|
|
87
|
+
pitch (float): 位姿的俯仰角。
|
|
88
|
+
yaw (float): 位姿的偏航角。
|
|
89
89
|
|
|
90
90
|
Returns:
|
|
91
|
-
bool:
|
|
91
|
+
bool: 定位初始化是否成功。
|
|
92
92
|
"""
|
|
93
93
|
orientation = tf.transformations.quaternion_from_euler(yaw, pitch, roll)
|
|
94
94
|
pose = Pose(position=Point(x=x, y=y, z=z), orientation=Quaternion(x=orientation[0], y=orientation[1], z=orientation[2], w=orientation[3]))
|
|
@@ -97,39 +97,39 @@ class RobotNavigation:
|
|
|
97
97
|
def init_localization_by_task_point(
|
|
98
98
|
self, task_point_name: str
|
|
99
99
|
) -> bool:
|
|
100
|
-
"""
|
|
100
|
+
"""通过任务点初始化定位。
|
|
101
101
|
|
|
102
102
|
Args:
|
|
103
|
-
task_point_name (str):
|
|
103
|
+
task_point_name (str): 任务点的名称。
|
|
104
104
|
|
|
105
105
|
Returns:
|
|
106
|
-
bool:
|
|
106
|
+
bool: 定位初始化是否成功。
|
|
107
107
|
"""
|
|
108
108
|
return self.robot_navigation.init_localization_by_task_point(task_point_name)
|
|
109
109
|
|
|
110
110
|
def load_map(self, map_name: str) -> bool:
|
|
111
|
-
"""
|
|
111
|
+
"""加载地图。
|
|
112
112
|
|
|
113
113
|
Args:
|
|
114
|
-
map_name (str):
|
|
114
|
+
map_name (str): 地图名称。
|
|
115
115
|
|
|
116
116
|
Returns:
|
|
117
|
-
bool:
|
|
117
|
+
bool: 加载地图是否成功。
|
|
118
118
|
"""
|
|
119
119
|
return self.robot_navigation.load_map(map_name)
|
|
120
120
|
|
|
121
121
|
def get_all_maps(self) -> list:
|
|
122
|
-
"""
|
|
122
|
+
"""获取所有地图名称。
|
|
123
123
|
|
|
124
124
|
Returns:
|
|
125
|
-
list:
|
|
125
|
+
list: 地图名称列表。
|
|
126
126
|
"""
|
|
127
127
|
return self.robot_navigation.get_all_maps()
|
|
128
128
|
|
|
129
129
|
def get_current_map(self) -> str:
|
|
130
|
-
"""
|
|
130
|
+
"""获取当前地图名称。
|
|
131
131
|
|
|
132
132
|
Returns:
|
|
133
|
-
str:
|
|
133
|
+
str: 当前地图名称。
|
|
134
134
|
"""
|
|
135
135
|
return self.robot_navigation.get_current_map()
|
|
@@ -50,10 +50,13 @@ class KuavoRobotState:
|
|
|
50
50
|
|
|
51
51
|
@property
|
|
52
52
|
def com_height(self)->float:
|
|
53
|
-
"""
|
|
53
|
+
"""获取机器人实时的质心高度。
|
|
54
54
|
|
|
55
55
|
Returns:
|
|
56
56
|
float: 机器人质心高度,单位为米。
|
|
57
|
+
|
|
58
|
+
Note:
|
|
59
|
+
如果需要获取机器人初始化站立时的质心高度,请使用 :attr:`KuavoRobotInfo.init_stand_height` 属性。
|
|
57
60
|
"""
|
|
58
61
|
return self._rs_core.com_height
|
|
59
62
|
|