kuavo-humanoid-sdk 1.2.1b3302__tar.gz → 1.2.1b3321__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.

Files changed (191) hide show
  1. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/PKG-INFO +1 -1
  2. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/robot.py +156 -71
  3. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk.egg-info/PKG-INFO +1 -1
  4. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/README.md +0 -0
  5. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/__init__.py +0 -0
  6. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/common/logger.py +0 -0
  7. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/interfaces/__init__.py +0 -0
  8. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/interfaces/data_types.py +0 -0
  9. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/interfaces/end_effector.py +0 -0
  10. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/interfaces/robot.py +0 -0
  11. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/interfaces/robot_info.py +0 -0
  12. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/__init__.py +0 -0
  13. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/core/audio.py +0 -0
  14. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/core/core.py +0 -0
  15. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/core/dex_hand_control.py +0 -0
  16. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/core/leju_claw_control.py +0 -0
  17. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/core/llm_doubao.py +0 -0
  18. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/core/microphone.py +0 -0
  19. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/core/navigation.py +0 -0
  20. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/core/ros/audio.py +0 -0
  21. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/core/ros/camera.py +0 -0
  22. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/core/ros/control.py +0 -0
  23. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/core/ros/microphone.py +0 -0
  24. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/core/ros/navigation.py +0 -0
  25. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/core/ros/observation.py +0 -0
  26. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/core/ros/param.py +0 -0
  27. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/core/ros/sat_utils.py +0 -0
  28. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/core/ros/state.py +0 -0
  29. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/core/ros/tools.py +0 -0
  30. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/core/ros/vision.py +0 -0
  31. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/core/ros_env.py +0 -0
  32. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/core/sdk_deprecated.py +0 -0
  33. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/demo_climbstair.py +0 -0
  34. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/dexterous_hand.py +0 -0
  35. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/leju_claw.py +0 -0
  36. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/logger_client.py +0 -0
  37. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/robot_arm.py +0 -0
  38. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/robot_audio.py +0 -0
  39. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/robot_blockly.py +0 -0
  40. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/robot_climbstair.py +0 -0
  41. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/robot_head.py +0 -0
  42. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/robot_info.py +0 -0
  43. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/robot_microphone.py +0 -0
  44. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/robot_navigation.py +0 -0
  45. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/robot_observation.py +0 -0
  46. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/robot_speech.py +0 -0
  47. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/robot_state.py +0 -0
  48. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/robot_tool.py +0 -0
  49. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo/robot_vision.py +0 -0
  50. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo_strategy/__init__.py +0 -0
  51. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo_strategy/grasp_box/grasp_box_strategy.py +0 -0
  52. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo_strategy/kuavo_strategy.py +0 -0
  53. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo_strategy_v2/common/data_type.py +0 -0
  54. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo_strategy_v2/common/events/base_event.py +0 -0
  55. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo_strategy_v2/common/robot_sdk.py +0 -0
  56. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo_strategy_v2/pick_place_box/case.py +0 -0
  57. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo_strategy_v2/pick_place_box/strategy.py +0 -0
  58. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo_strategy_v2/utils/logger_setup.py +0 -0
  59. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/kuavo_strategy_v2/utils/utils.py +0 -0
  60. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/__init__.py +0 -0
  61. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/__init__.py +0 -0
  62. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_AprilTagDetection.py +0 -0
  63. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_AprilTagDetectionArray.py +0 -0
  64. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_AudioReceiverData.py +0 -0
  65. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_FTsensorData.py +0 -0
  66. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_JoySticks.py +0 -0
  67. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_Metadata.py +0 -0
  68. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_MmDetectionMsg.py +0 -0
  69. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_RobotActionState.py +0 -0
  70. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_TFArray.py +0 -0
  71. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_TaskPoint.py +0 -0
  72. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/__init__.py +0 -0
  73. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_armCollisionCheckInfo.py +0 -0
  74. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_armHandPose.py +0 -0
  75. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_armHandPoseFree.py +0 -0
  76. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_armPoseWithTimeStamp.py +0 -0
  77. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_armTargetPoses.py +0 -0
  78. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_bezierCurveCubicPoint.py +0 -0
  79. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_dexhandCommand.py +0 -0
  80. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_dexhandTouchState.py +0 -0
  81. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_endEffectorData.py +0 -0
  82. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_footPose.py +0 -0
  83. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_footPose6D.py +0 -0
  84. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_footPose6DTargetTrajectories.py +0 -0
  85. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_footPoseTargetTrajectories.py +0 -0
  86. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_footPoseWithVision.py +0 -0
  87. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_footPoseWithVisionArray.py +0 -0
  88. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_footPoses.py +0 -0
  89. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_footPoses6D.py +0 -0
  90. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_fullBodyTargetTrajectories.py +0 -0
  91. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_gaitTimeName.py +0 -0
  92. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_gestureInfo.py +0 -0
  93. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_gestureTask.py +0 -0
  94. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_handPose.py +0 -0
  95. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_headBodyPose.py +0 -0
  96. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_ikSolveError.py +0 -0
  97. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_ikSolveParam.py +0 -0
  98. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_imuData.py +0 -0
  99. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_jointBezierTrajectory.py +0 -0
  100. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_jointCmd.py +0 -0
  101. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_jointData.py +0 -0
  102. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_kuavoModeSchedule.py +0 -0
  103. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_lejuClawCommand.py +0 -0
  104. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_lejuClawState.py +0 -0
  105. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_motorParam.py +0 -0
  106. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_picoPoseInfo.py +0 -0
  107. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_picoPoseInfoList.py +0 -0
  108. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_planArmState.py +0 -0
  109. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_qv.py +0 -0
  110. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_robotArmQVVD.py +0 -0
  111. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_robotBodyMatrices.py +0 -0
  112. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_robotHandPosition.py +0 -0
  113. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_robotHeadMotionData.py +0 -0
  114. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_robotState.py +0 -0
  115. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_sensorsData.py +0 -0
  116. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_switchGaitByName.py +0 -0
  117. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_tagDataArray.py +0 -0
  118. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_touchSensorStatus.py +0 -0
  119. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_twoArmHandPose.py +0 -0
  120. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_twoArmHandPoseCmd.py +0 -0
  121. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_twoArmHandPoseCmdFree.py +0 -0
  122. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_twoArmHandPoseFree.py +0 -0
  123. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_yoloDetection.py +0 -0
  124. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_yoloOutputData.py +0 -0
  125. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_CreatePath.py +0 -0
  126. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_ExecuteArmAction.py +0 -0
  127. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_GetAllMaps.py +0 -0
  128. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_GetCurrentMap.py +0 -0
  129. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_GetTargetPartPoseInCamera.py +0 -0
  130. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_InitialPoseWithTaskPoint.py +0 -0
  131. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_LoadMap.py +0 -0
  132. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_NavigateToTaskPoint.py +0 -0
  133. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_RepublishTFs.py +0 -0
  134. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_SetInitialPose.py +0 -0
  135. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_SetJoyTopic.py +0 -0
  136. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_SetLEDMode.py +0 -0
  137. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_SetLEDMode_free.py +0 -0
  138. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_SpeechSynthesis.py +0 -0
  139. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_TaskPointOperation.py +0 -0
  140. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/__init__.py +0 -0
  141. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_adjustZeroPoint.py +0 -0
  142. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_changeArmCtrlMode.py +0 -0
  143. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_changeArmCtrlModeKuavo.py +0 -0
  144. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_changeMotorParam.py +0 -0
  145. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_changeTorsoCtrlMode.py +0 -0
  146. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_controlLejuClaw.py +0 -0
  147. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_enableHandTouchSensor.py +0 -0
  148. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_fkSrv.py +0 -0
  149. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_footPose6DTargetTrajectoriesSrv.py +0 -0
  150. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_footPoseTargetTrajectoriesSrv.py +0 -0
  151. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_gestureExecute.py +0 -0
  152. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_gestureExecuteState.py +0 -0
  153. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_gestureList.py +0 -0
  154. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_getCurrentGaitName.py +0 -0
  155. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_getMotorParam.py +0 -0
  156. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_getMotorZeroPoints.py +0 -0
  157. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_handForceLevel.py +0 -0
  158. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_jointMoveTo.py +0 -0
  159. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_planArmTrajectoryBezierCurve.py +0 -0
  160. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_planArmTrajectoryCubicSpline.py +0 -0
  161. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_playmusic.py +0 -0
  162. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_setHwIntialState.py +0 -0
  163. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_setMmCtrlFrame.py +0 -0
  164. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_setMotorEncoderRoundService.py +0 -0
  165. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_setTagId.py +0 -0
  166. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_singleStepControl.py +0 -0
  167. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_twoArmHandPoseCmdFreeSrv.py +0 -0
  168. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_twoArmHandPoseCmdSrv.py +0 -0
  169. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/motion_capture_ik/__init__.py +0 -0
  170. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/ocs2_msgs/__init__.py +0 -0
  171. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/__init__.py +0 -0
  172. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_constraint.py +0 -0
  173. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_controller_data.py +0 -0
  174. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_lagrangian_metrics.py +0 -0
  175. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_mode_schedule.py +0 -0
  176. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_mpc_flattened_controller.py +0 -0
  177. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_mpc_input.py +0 -0
  178. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_mpc_observation.py +0 -0
  179. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_mpc_performance_indices.py +0 -0
  180. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_mpc_solver_data.py +0 -0
  181. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_mpc_state.py +0 -0
  182. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_mpc_target_trajectories.py +0 -0
  183. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_multiplier.py +0 -0
  184. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/ocs2_msgs/srv/__init__.py +0 -0
  185. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk/msg/ocs2_msgs/srv/_reset.py +0 -0
  186. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk.egg-info/SOURCES.txt +0 -0
  187. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk.egg-info/dependency_links.txt +0 -0
  188. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk.egg-info/requires.txt +0 -0
  189. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/kuavo_humanoid_sdk.egg-info/top_level.txt +0 -0
  190. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/setup.cfg +0 -0
  191. {kuavo_humanoid_sdk-1.2.1b3302 → kuavo_humanoid_sdk-1.2.1b3321}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: kuavo_humanoid_sdk
3
- Version: 1.2.1b3302
3
+ Version: 1.2.1b3321
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']
@@ -1,15 +1,15 @@
1
1
  #!/usr/bin/env python3
2
2
  # coding: utf-8
3
+ import math
3
4
  from kuavo_humanoid_sdk.kuavo.core.ros_env import KuavoROSEnv
4
5
  from kuavo_humanoid_sdk.interfaces.robot import RobotBase
5
6
  from kuavo_humanoid_sdk.common.logger import SDKLogger, disable_sdk_logging
6
- from kuavo_humanoid_sdk.interfaces.data_types import KuavoPose, KuavoIKParams, KuavoManipulationMpcFrame, KuavoManipulationMpcCtrlMode, KuavoManipulationMpcControlFlow
7
+ from kuavo_humanoid_sdk.interfaces.data_types import KuavoPose, KuavoIKParams, KuavoManipulationMpcFrame, KuavoManipulationMpcCtrlMode, KuavoManipulationMpcControlFlow, KuavoArmCtrlMode
7
8
  from kuavo_humanoid_sdk.kuavo.core.core import KuavoRobotCore
9
+ from kuavo_humanoid_sdk.kuavo.core.sdk_deprecated import sdk_deprecated
8
10
 
9
11
  from typing import Tuple
10
12
  from kuavo_humanoid_sdk.kuavo.robot_info import KuavoRobotInfo
11
- from kuavo_humanoid_sdk.kuavo.robot_arm import KuavoRobotArm
12
- from kuavo_humanoid_sdk.kuavo.robot_head import KuavoRobotHead
13
13
 
14
14
  """
15
15
  Kuavo SDK - Kuavo机器人控制的Python接口
@@ -93,8 +93,6 @@ class KuavoRobot(RobotBase):
93
93
  super().__init__(robot_type="kuavo")
94
94
 
95
95
  self._robot_info = KuavoRobotInfo()
96
- self._robot_arm = KuavoRobotArm()
97
- self._robot_head = KuavoRobotHead()
98
96
  self._kuavo_core = KuavoRobotCore()
99
97
  def stance(self)->bool:
100
98
  """使机器人进入'stance'站立模式。
@@ -271,161 +269,228 @@ class KuavoRobot(RobotBase):
271
269
 
272
270
  def control_head(self, yaw: float, pitch: float)->bool:
273
271
  """控制机器人的头部关节运动。
274
-
272
+
275
273
  Args:
276
274
  yaw (float): 头部的偏航角,单位弧度,范围[-1.396, 1.396](-80到80度)。
277
275
  pitch (float): 头部的俯仰角,单位弧度,范围[-0.436, 0.436](-25到25度)。
278
-
276
+
279
277
  Returns:
280
278
  bool: 如果头部控制成功返回True,否则返回False。
281
279
  """
282
- return self._robot_head.control_head(yaw=yaw, pitch=pitch)
280
+ # 发送开始控制头部的日志
281
+ self._kuavo_core.logger.send_log(f"开始控制头部运动: yaw={yaw:.3f}, pitch={pitch:.3f}")
282
+
283
+ limited_yaw = yaw
284
+ limited_pitch = pitch
285
+
286
+ # 原有的代码逻辑保持不变
287
+ # Check yaw limits (-80 to 80 degrees)
288
+ if yaw < -math.pi*4/9 or yaw > math.pi*4/9: # -80 to 80 degrees in radians
289
+ SDKLogger.warn(f"[Robot] yaw {yaw} exceeds limit [-{math.pi*4/9:.3f}, {math.pi*4/9:.3f}] radians (-80 to 80 degrees), will be limited")
290
+ limited_yaw = min(math.pi*4/9, max(-math.pi*4/9, yaw))
291
+ self._kuavo_core.logger.send_log(f"yaw值超限,已限制为: {limited_yaw:.3f}")
292
+
293
+ # Check pitch limits (-25 to 25 degrees)
294
+ if pitch < -math.pi/7.2 - 0.001 or pitch > math.pi/7.2 + 0.001: # -25 to 25 degrees in radians
295
+ SDKLogger.warn(f"[Robot] pitch {pitch} exceeds limit [-{math.pi/7.2:.3f}, {math.pi/7.2:.3f}] radians (-25 to 25 degrees), will be limited")
296
+ limited_pitch = min(math.pi/7.2, max(-math.pi/7.2, pitch))
297
+ self._kuavo_core.logger.send_log(f"pitch值超限,已限制为: {limited_pitch:.3f}")
298
+
299
+ # 执行头部控制
300
+ result = self._kuavo_core.control_robot_head(yaw=limited_yaw, pitch=limited_pitch)
301
+
302
+ # 发送执行结果日志
303
+ self._kuavo_core.logger.send_log(f"头部控制完成: yaw={limited_yaw:.3f}, pitch={limited_pitch:.3f}, 结果={'成功' if result else '失败'}")
304
+
305
+ return result
283
306
 
284
307
  def enable_head_tracking(self, target_id: int)->bool:
285
- """启用头部跟踪 April Tag"""
286
- return self._robot_head.enable_head_tracking(target_id)
308
+ """启用头部跟踪功能,在机器人运动过程中,头部将始终追踪指定的 Apriltag ID
309
+
310
+ Args:
311
+ target_id (int): 目标ID。
312
+
313
+ Returns:
314
+ bool: 如果启用成功返回True,否则返回False。
315
+ """
316
+ return self._kuavo_core.enable_head_tracking(target_id)
287
317
 
288
318
  def disable_head_tracking(self)->bool:
289
- """禁用头部跟踪。"""
290
- return self._robot_head.disable_head_tracking()
319
+ """禁用头部跟踪功能。
320
+
321
+ Returns:
322
+ bool: 如果禁用成功返回True,否则返回False。
323
+ """
324
+ return self._kuavo_core.disable_head_tracking()
291
325
 
292
326
  """ Robot Arm Control """
293
327
  def control_hand_wrench(self, left_wrench: list, right_wrench: list) -> bool:
294
328
  """控制机器人末端力/力矩
295
-
329
+
296
330
  Args:
297
331
  left_wrench (list): 左手臂6维力控指令 [Fx, Fy, Fz, Tx, Ty, Tz]
298
332
  right_wrench (list): 右手臂6维力控指令 [Fx, Fy, Fz, Tx, Ty, Tz]
299
333
  单位:
300
334
  Fx,Fy,Fz: 牛顿(N)
301
335
  Tx,Ty,Tz: 牛·米(N·m)
302
-
336
+
303
337
  Returns:
304
338
  bool: 控制成功返回True, 否则返回False
305
339
  """
306
- return self._robot_arm.control_hand_wrench(left_wrench, right_wrench)
340
+ return self._kuavo_core.control_hand_wrench(left_wrench, right_wrench)
307
341
 
308
342
  def arm_reset(self)->bool:
309
343
  """手臂归位
310
-
344
+
311
345
  Returns:
312
346
  bool: 如果手臂归位成功返回True,否则返回False。
313
347
  """
314
- return self._robot_arm.arm_reset()
348
+ return self._kuavo_core.robot_arm_reset()
315
349
 
316
350
  def manipulation_mpc_reset(self)->bool:
317
351
  """重置机器人手臂。
318
-
352
+
319
353
  Returns:
320
354
  bool: 如果手臂重置成功返回True,否则返回False。
321
355
  """
322
- return self._robot_arm.manipulation_mpc_reset()
356
+ return self._kuavo_core.robot_manipulation_mpc_reset()
323
357
 
324
358
  def control_arm_joint_positions(self, joint_positions:list)->bool:
325
359
  """通过关节位置角度控制手臂
326
-
360
+
327
361
  Args:
328
362
  joint_positions (list): 手臂的目标关节位置,单位弧度。
329
-
363
+
330
364
  Returns:
331
365
  bool: 如果手臂控制成功返回True,否则返回False。
332
-
366
+
333
367
  Raises:
334
368
  ValueError: 如果关节位置列表长度不正确。
335
369
  ValueError: 如果关节位置超出[-π, π]范围。
336
370
  RuntimeError: 如果在尝试控制手臂时机器人不在stance状态。
337
371
  """
338
372
  if len(joint_positions) != self._robot_info.arm_joint_dof:
339
- print("The length of the position list must be equal to the number of DOFs of the arm.")
340
- return False
341
-
342
- return self._robot_arm.control_arm_joint_positions(joint_positions)
373
+ raise ValueError("Invalid position length. Expected {}, got {}".format(self._robot_info.arm_joint_dof, len(joint_positions)))
374
+
375
+ # Check if joint positions are within ±180 degrees (±π radians)
376
+ for pos in joint_positions:
377
+ if abs(pos) > math.pi:
378
+ raise ValueError(f"Joint position {pos} rad exceeds ±π rad (±180 deg) limit")
379
+
380
+ return self._kuavo_core.control_robot_arm_joint_positions(joint_data=joint_positions)
343
381
 
344
382
  def control_arm_joint_trajectory(self, times:list, q_frames:list)->bool:
345
383
  """控制机器人手臂的目标轨迹。
346
-
384
+
347
385
  Args:
348
386
  times (list): 时间间隔列表,单位秒。
349
387
  q_frames (list): 关节位置列表,单位弧度。
350
-
388
+
351
389
  Returns:
352
390
  bool: 如果控制成功返回True,否则返回False。
353
-
391
+
354
392
  Raises:
355
393
  ValueError: 如果times列表长度不正确。
356
394
  ValueError: 如果关节位置列表长度不正确。
357
395
  ValueError: 如果关节位置超出[-π, π]范围。
358
396
  RuntimeError: 如果在尝试控制手臂时机器人不在stance状态。
359
-
397
+
360
398
  Warning:
361
399
  异步接口,函数在发送命令后立即返回,用户需要自行等待运动完成。
362
400
  """
363
- return self._robot_arm.control_arm_joint_trajectory(times, q_frames)
401
+ if len(times) != len(q_frames):
402
+ raise ValueError("Invalid input. times and joint_q must have thesame length.")
403
+
404
+ # Check if joint positions are within ±180 degrees (±π radians)
405
+ q_degs = []
406
+ for q in q_frames:
407
+ if any(abs(pos) > math.pi for pos in q):
408
+ raise ValueError("Joint positions must be within ±π rad (±180 deg)")
409
+ if len(q) != self._robot_info.arm_joint_dof:
410
+ raise ValueError("Invalid position length. Expected {}, got {}".format(self._robot_info.arm_joint_dof, len(q)))
411
+ # Convert joint positions from radians to degrees
412
+ q_degs.append([(p * 180.0 / math.pi) for p in q])
364
413
 
414
+ return self._kuavo_core.control_robot_arm_joint_trajectory(times=times, joint_q=q_degs)
415
+
416
+ @sdk_deprecated(reason="接口重复", version="1.2.2", replacement="KuavoRobot.control_arm_joint_trajectory", remove_date="2026-06-30")
365
417
  def control_arm_target_poses(self, times: list, q_frames: list) -> bool:
366
418
  """控制机器人手臂目标姿态(已废弃)。
367
-
368
- .. deprecated::
419
+
420
+ .. deprecated::
369
421
  请使用 :meth:`control_arm_joint_trajectory` 替代此函数。
370
-
422
+
371
423
  Args:
372
424
  times (list): 时间间隔列表,单位秒
373
425
  q_frames (list): 关节位置列表,单位弧度
374
-
426
+
375
427
  Returns:
376
428
  bool: 控制成功返回True,否则返回False
377
-
429
+
378
430
  Note:
379
431
  此函数已废弃,请使用 :meth:`control_arm_joint_trajectory` 函数。
380
432
  """
381
- return self._robot_arm.control_arm_target_poses(times, q_frames)
433
+ if len(times) != len(q_frames):
434
+ raise ValueError("Invalid input. times and joint_q must have thesame length.")
435
+
436
+ # Check if joint positions are within ±180 degrees (±π radians)
437
+ q_degs = []
438
+ for q in q_frames:
439
+ if any(abs(pos) > math.pi for pos in q):
440
+ raise ValueError("Joint positions must be within ±π rad (±180 deg)")
441
+ if len(q) != self._robot_info.arm_joint_dof:
442
+ raise ValueError("Invalid position length. Expected {}, got {}".format(self._robot_info.arm_joint_dof, len(q)))
443
+ # Convert joint positions from radians to degrees
444
+ q_degs.append([(p * 180.0 / math.pi) for p in q])
445
+
446
+ return self._kuavo_core.control_robot_arm_target_poses(times=times, joint_q=q_degs)
382
447
  def set_fixed_arm_mode(self) -> bool:
383
448
  """固定/冻结机器人手臂。
384
-
449
+
385
450
  Returns:
386
451
  bool: 如果手臂固定/冻结成功返回True,否则返回False。
387
452
  """
388
- return self._robot_arm.set_fixed_arm_mode()
453
+ return self._kuavo_core.change_robot_arm_ctrl_mode(KuavoArmCtrlMode.ArmFixed)
389
454
 
390
455
  def set_auto_swing_arm_mode(self) -> bool:
391
456
  """机器人手臂自动摆动。
392
-
457
+
393
458
  Returns:
394
459
  bool: 如果切换手臂自动摆动模式成功返回True,否则返回False。
395
460
  """
396
- return self._robot_arm.set_auto_swing_arm_mode()
461
+ return self._kuavo_core.change_robot_arm_ctrl_mode(KuavoArmCtrlMode.AutoSwing)
397
462
 
398
463
  def set_external_control_arm_mode(self) -> bool:
399
464
  """切换手臂控制模式到外部控制模式。
400
-
465
+
401
466
  Returns:
402
467
  bool: 如果切换手臂控制模式到外部控制模式成功返回True,否则返回False。
403
468
  """
404
- return self._robot_arm.set_external_control_arm_mode()
469
+ return self._kuavo_core.change_robot_arm_ctrl_mode(KuavoArmCtrlMode.ExternalControl)
405
470
 
406
471
  def set_manipulation_mpc_mode(self, ctrl_mode: KuavoManipulationMpcCtrlMode) -> bool:
407
- """
408
- 设置 Manipulation MPC 模式。
472
+ """设置 Manipulation MPC 模式。
473
+
409
474
  Returns:
410
475
  bool: 如果 Manipulation MPC 模式设置成功返回True,否则返回False。
411
476
  """
412
- return self._robot_arm.set_manipulation_mpc_mode(ctrl_mode)
477
+ return self._kuavo_core.change_manipulation_mpc_ctrl_mode(ctrl_mode)
413
478
 
414
479
  def set_manipulation_mpc_control_flow(self, control_flow: KuavoManipulationMpcControlFlow) -> bool:
415
- """
416
- 设置 Manipulation MPC 控制流。
480
+ """设置 Manipulation MPC 控制流。
481
+
417
482
  Returns:
418
483
  bool: 如果 Manipulation MPC 控制流设置成功返回True,否则返回False。
419
- """
420
- return self._robot_arm.set_manipulation_mpc_control_flow(control_flow)
484
+ """
485
+ return self._kuavo_core.change_manipulation_mpc_control_flow(control_flow)
421
486
 
422
487
  def set_manipulation_mpc_frame(self, frame: KuavoManipulationMpcFrame) -> bool:
423
- """
424
- 设置 Manipulation MPC 坐标系。
488
+ """设置 Manipulation MPC 坐标系。
489
+
425
490
  Returns:
426
491
  bool: 如果 Manipulation MPC 坐标系设置成功返回True,否则返回False。
427
492
  """
428
- return self._robot_arm.set_manipulation_mpc_frame(frame)
493
+ return self._kuavo_core.change_manipulation_mpc_frame(frame)
429
494
 
430
495
  """ Arm Forward kinematics && Arm Inverse kinematics """
431
496
  def arm_ik(self,
@@ -458,45 +523,65 @@ class KuavoRobot(RobotBase):
458
523
  Warning:
459
524
  此函数需要在初始化SDK时设置 :attr:`KuavoSDK.Options.WithIK` 选项。
460
525
  """
461
- return self._robot_arm.arm_ik(left_pose, right_pose, left_elbow_pos_xyz, right_elbow_pos_xyz, arm_q0, params)
462
- def arm_ik_free(self,
463
- left_pose: KuavoPose,
464
- right_pose: KuavoPose,
526
+ return self._kuavo_core.arm_ik(left_pose, right_pose, left_elbow_pos_xyz, right_elbow_pos_xyz, arm_q0, params)
527
+ def arm_ik_free(self,
528
+ left_pose: KuavoPose,
529
+ right_pose: KuavoPose,
465
530
  left_elbow_pos_xyz: list = [0.0, 0.0, 0.0],
466
531
  right_elbow_pos_xyz: list = [0.0, 0.0, 0.0],
467
532
  arm_q0: list = None,
468
533
  params: KuavoIKParams=None) -> list:
469
- """Inverse kinematics for the robot arm.
534
+ """机器人手臂自由空间逆向运动学求解
535
+
536
+ Args:
537
+ left_pose (KuavoPose): 左手臂目标姿态,包含xyz位置和四元数方向
538
+ right_pose (KuavoPose): 右手臂目标姿态,包含xyz位置和四元数方向
539
+ left_elbow_pos_xyz (list): 左肘部位置。如果为[0.0, 0.0, 0.0],则忽略
540
+ right_elbow_pos_xyz (list): 右肘部位置。如果为[0.0, 0.0, 0.0],则忽略
541
+ arm_q0 (list, optional): 初始关节位置,单位为弧度。如果为None,则忽略
542
+ params (KuavoIKParams, optional): 逆向运动学参数。如果为None,则忽略
543
+
544
+ Returns:
545
+ list: 关节位置列表,单位为弧度。如果计算失败返回None
546
+
547
+ Warning:
548
+ 此函数需要在初始化SDK时设置 :attr:`KuavoSDK.Options.WithIK` 选项。
470
549
  """
471
- return self._robot_arm.arm_ik_free(left_pose, right_pose, left_elbow_pos_xyz, right_elbow_pos_xyz, arm_q0, params)
550
+ return self._kuavo_core.arm_ik_free(left_pose, right_pose, left_elbow_pos_xyz, right_elbow_pos_xyz, arm_q0, params)
472
551
 
473
552
  def arm_fk(self, q: list) -> Tuple[KuavoPose, KuavoPose]:
474
553
  """机器人手臂的正运动学求解
475
-
554
+
476
555
  Args:
477
556
  q (list): 关节位置列表,单位弧度。
478
-
557
+
479
558
  Returns:
480
559
  Tuple[KuavoPose, KuavoPose]: 左手臂和右手臂的位姿元组,
481
560
  如果正运动学失败则返回(None, None)。
482
561
 
483
562
  Warning:
484
- 此函数需要使用 :attr:`KuavoSDK.Options.WithIK` 选项初始化SDK。
563
+ 此函数需要使用 :attr:`KuavoSDK.Options.WithIK` 选项初始化SDK。
485
564
  """
486
- return self._robot_arm.arm_fk(q)
565
+ if len(q) != self._robot_info.arm_joint_dof:
566
+ raise ValueError("Invalid position length. Expected {}, got {}".format(self._robot_info.arm_joint_dof, len(q)))
567
+
568
+ result = self._kuavo_core.arm_fk(q)
569
+ if result is None:
570
+ return None, None
571
+ return result
487
572
 
488
573
  def control_robot_end_effector_pose(self, left_pose: KuavoPose, right_pose: KuavoPose, frame: KuavoManipulationMpcFrame)->bool:
489
574
  """通过手臂末端执行器的位姿控制机器人手臂
490
-
575
+
491
576
  Args:
492
577
  left_pose (KuavoPose): 左手臂的位姿,包含xyz和四元数。
493
578
  right_pose (KuavoPose): 右手臂的位姿,包含xyz和四元数。
494
579
  frame (KuavoManipulationMpcFrame): 手臂的坐标系。
495
-
580
+
496
581
  Returns:
497
582
  bool: 如果控制成功返回True,否则返回False。
498
583
  """
499
- return self._robot_arm.control_robot_end_effector_pose(left_pose, right_pose, frame)
584
+ return self._kuavo_core.control_robot_end_effector_pose(left_pose, right_pose, frame)
500
585
 
501
586
  def change_motor_param(self, motor_param:list)->Tuple[bool, str]:
502
587
  """更改电机参数
@@ -532,26 +617,26 @@ class KuavoRobot(RobotBase):
532
617
 
533
618
  def is_arm_collision(self)->bool:
534
619
  """判断当前是否发生碰撞
535
-
620
+
536
621
  Returns:
537
622
  bool: 发生碰撞返回True,否则返回False
538
623
  """
539
- return self._robot_arm.is_arm_collision()
624
+ return self._kuavo_core.is_arm_collision()
540
625
 
541
626
  def wait_arm_collision_complete(self):
542
627
  """等待碰撞完成
543
628
  """
544
- self._robot_arm.wait_arm_collision_complete()
629
+ self._kuavo_core.wait_arm_collision_complete()
545
630
 
546
631
  def release_arm_collision_mode(self):
547
632
  """释放碰撞模式
548
633
  """
549
- self._robot_arm.release_arm_collision_mode()
634
+ self._kuavo_core.release_arm_collision_mode()
550
635
 
551
636
  def set_arm_collision_mode(self, enable: bool):
552
637
  """设置碰撞模式
553
638
  """
554
- self._robot_arm.set_arm_collision_mode(enable)
639
+ self._kuavo_core.set_arm_collision_mode(enable)
555
640
 
556
641
  if __name__ == "__main__":
557
642
  robot = KuavoRobot()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: kuavo-humanoid-sdk
3
- Version: 1.2.1b3302
3
+ Version: 1.2.1b3321
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']