kuavo-humanoid-sdk 1.2.1b3212__tar.gz → 1.2.1b3269__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 (189) hide show
  1. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/PKG-INFO +11 -11
  2. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/core/core.py +21 -10
  3. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/core/ros/param.py +7 -0
  4. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/dexterous_hand.py +7 -7
  5. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/robot.py +24 -20
  6. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/robot_arm.py +14 -12
  7. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/robot_head.py +6 -5
  8. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/robot_info.py +22 -1
  9. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/robot_navigation.py +35 -35
  10. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/robot_state.py +4 -1
  11. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk.egg-info/PKG-INFO +11 -11
  12. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/README.md +0 -0
  13. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/__init__.py +0 -0
  14. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/common/logger.py +0 -0
  15. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/interfaces/__init__.py +0 -0
  16. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/interfaces/data_types.py +0 -0
  17. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/interfaces/end_effector.py +0 -0
  18. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/interfaces/robot.py +0 -0
  19. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/interfaces/robot_info.py +0 -0
  20. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/__init__.py +0 -0
  21. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/core/audio.py +0 -0
  22. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/core/dex_hand_control.py +0 -0
  23. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/core/leju_claw_control.py +0 -0
  24. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/core/llm_doubao.py +0 -0
  25. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/core/microphone.py +0 -0
  26. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/core/navigation.py +0 -0
  27. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/core/ros/audio.py +0 -0
  28. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/core/ros/control.py +0 -0
  29. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/core/ros/microphone.py +0 -0
  30. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/core/ros/navigation.py +0 -0
  31. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/core/ros/observation.py +0 -0
  32. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/core/ros/sat_utils.py +0 -0
  33. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/core/ros/state.py +0 -0
  34. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/core/ros/tools.py +0 -0
  35. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/core/ros/vision.py +0 -0
  36. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/core/ros_env.py +0 -0
  37. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/demo_climbstair.py +0 -0
  38. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/leju_claw.py +0 -0
  39. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/logger_client.py +0 -0
  40. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/robot_audio.py +0 -0
  41. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/robot_blockly.py +0 -0
  42. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/robot_climbstair.py +0 -0
  43. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/robot_microphone.py +0 -0
  44. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/robot_observation.py +0 -0
  45. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/robot_speech.py +0 -0
  46. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/robot_tool.py +0 -0
  47. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo/robot_vision.py +0 -0
  48. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo_strategy/__init__.py +0 -0
  49. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo_strategy/grasp_box/grasp_box_strategy.py +0 -0
  50. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo_strategy/kuavo_strategy.py +0 -0
  51. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo_strategy_v2/common/data_type.py +0 -0
  52. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo_strategy_v2/common/events/base_event.py +0 -0
  53. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo_strategy_v2/common/robot_sdk.py +0 -0
  54. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo_strategy_v2/pick_place_box/case.py +0 -0
  55. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo_strategy_v2/pick_place_box/strategy.py +0 -0
  56. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo_strategy_v2/utils/logger_setup.py +0 -0
  57. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/kuavo_strategy_v2/utils/utils.py +0 -0
  58. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/__init__.py +0 -0
  59. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/__init__.py +0 -0
  60. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_AprilTagDetection.py +0 -0
  61. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_AprilTagDetectionArray.py +0 -0
  62. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_AudioReceiverData.py +0 -0
  63. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_FTsensorData.py +0 -0
  64. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_JoySticks.py +0 -0
  65. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_Metadata.py +0 -0
  66. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_MmDetectionMsg.py +0 -0
  67. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_RobotActionState.py +0 -0
  68. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_TFArray.py +0 -0
  69. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_TaskPoint.py +0 -0
  70. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/__init__.py +0 -0
  71. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_armCollisionCheckInfo.py +0 -0
  72. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_armHandPose.py +0 -0
  73. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_armHandPoseFree.py +0 -0
  74. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_armPoseWithTimeStamp.py +0 -0
  75. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_armTargetPoses.py +0 -0
  76. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_bezierCurveCubicPoint.py +0 -0
  77. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_dexhandCommand.py +0 -0
  78. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_dexhandTouchState.py +0 -0
  79. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_endEffectorData.py +0 -0
  80. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_footPose.py +0 -0
  81. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_footPose6D.py +0 -0
  82. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_footPose6DTargetTrajectories.py +0 -0
  83. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_footPoseTargetTrajectories.py +0 -0
  84. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_footPoseWithVision.py +0 -0
  85. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_footPoseWithVisionArray.py +0 -0
  86. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_footPoses.py +0 -0
  87. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_footPoses6D.py +0 -0
  88. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_fullBodyTargetTrajectories.py +0 -0
  89. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_gaitTimeName.py +0 -0
  90. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_gestureInfo.py +0 -0
  91. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_gestureTask.py +0 -0
  92. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_handPose.py +0 -0
  93. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_headBodyPose.py +0 -0
  94. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_ikSolveError.py +0 -0
  95. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_ikSolveParam.py +0 -0
  96. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_imuData.py +0 -0
  97. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_jointBezierTrajectory.py +0 -0
  98. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_jointCmd.py +0 -0
  99. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_jointData.py +0 -0
  100. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_kuavoModeSchedule.py +0 -0
  101. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_lejuClawCommand.py +0 -0
  102. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_lejuClawState.py +0 -0
  103. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_motorParam.py +0 -0
  104. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_picoPoseInfo.py +0 -0
  105. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_picoPoseInfoList.py +0 -0
  106. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_planArmState.py +0 -0
  107. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_qv.py +0 -0
  108. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_robotArmQVVD.py +0 -0
  109. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_robotBodyMatrices.py +0 -0
  110. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_robotHandPosition.py +0 -0
  111. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_robotHeadMotionData.py +0 -0
  112. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_robotState.py +0 -0
  113. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_sensorsData.py +0 -0
  114. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_switchGaitByName.py +0 -0
  115. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_tagDataArray.py +0 -0
  116. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_touchSensorStatus.py +0 -0
  117. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_twoArmHandPose.py +0 -0
  118. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_twoArmHandPoseCmd.py +0 -0
  119. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_twoArmHandPoseCmdFree.py +0 -0
  120. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_twoArmHandPoseFree.py +0 -0
  121. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_yoloDetection.py +0 -0
  122. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/msg/_yoloOutputData.py +0 -0
  123. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_CreatePath.py +0 -0
  124. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_ExecuteArmAction.py +0 -0
  125. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_GetAllMaps.py +0 -0
  126. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_GetCurrentMap.py +0 -0
  127. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_GetTargetPartPoseInCamera.py +0 -0
  128. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_InitialPoseWithTaskPoint.py +0 -0
  129. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_LoadMap.py +0 -0
  130. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_NavigateToTaskPoint.py +0 -0
  131. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_RepublishTFs.py +0 -0
  132. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_SetInitialPose.py +0 -0
  133. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_SetJoyTopic.py +0 -0
  134. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_SetLEDMode.py +0 -0
  135. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_SetLEDMode_free.py +0 -0
  136. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_SpeechSynthesis.py +0 -0
  137. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_TaskPointOperation.py +0 -0
  138. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/__init__.py +0 -0
  139. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_adjustZeroPoint.py +0 -0
  140. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_changeArmCtrlMode.py +0 -0
  141. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_changeArmCtrlModeKuavo.py +0 -0
  142. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_changeMotorParam.py +0 -0
  143. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_changeTorsoCtrlMode.py +0 -0
  144. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_controlLejuClaw.py +0 -0
  145. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_enableHandTouchSensor.py +0 -0
  146. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_fkSrv.py +0 -0
  147. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_footPose6DTargetTrajectoriesSrv.py +0 -0
  148. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_footPoseTargetTrajectoriesSrv.py +0 -0
  149. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_gestureExecute.py +0 -0
  150. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_gestureExecuteState.py +0 -0
  151. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_gestureList.py +0 -0
  152. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_getCurrentGaitName.py +0 -0
  153. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_getMotorParam.py +0 -0
  154. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_getMotorZeroPoints.py +0 -0
  155. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_handForceLevel.py +0 -0
  156. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_jointMoveTo.py +0 -0
  157. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_planArmTrajectoryBezierCurve.py +0 -0
  158. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_planArmTrajectoryCubicSpline.py +0 -0
  159. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_playmusic.py +0 -0
  160. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_setHwIntialState.py +0 -0
  161. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_setMmCtrlFrame.py +0 -0
  162. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_setMotorEncoderRoundService.py +0 -0
  163. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_setTagId.py +0 -0
  164. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_singleStepControl.py +0 -0
  165. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_twoArmHandPoseCmdFreeSrv.py +0 -0
  166. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/kuavo_msgs/srv/_twoArmHandPoseCmdSrv.py +0 -0
  167. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/motion_capture_ik/__init__.py +0 -0
  168. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/ocs2_msgs/__init__.py +0 -0
  169. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/__init__.py +0 -0
  170. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_constraint.py +0 -0
  171. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_controller_data.py +0 -0
  172. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_lagrangian_metrics.py +0 -0
  173. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_mode_schedule.py +0 -0
  174. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_mpc_flattened_controller.py +0 -0
  175. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_mpc_input.py +0 -0
  176. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_mpc_observation.py +0 -0
  177. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_mpc_performance_indices.py +0 -0
  178. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_mpc_solver_data.py +0 -0
  179. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_mpc_state.py +0 -0
  180. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_mpc_target_trajectories.py +0 -0
  181. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/ocs2_msgs/msg/_multiplier.py +0 -0
  182. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/ocs2_msgs/srv/__init__.py +0 -0
  183. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk/msg/ocs2_msgs/srv/_reset.py +0 -0
  184. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk.egg-info/SOURCES.txt +0 -0
  185. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk.egg-info/dependency_links.txt +0 -0
  186. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk.egg-info/requires.txt +0 -0
  187. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/kuavo_humanoid_sdk.egg-info/top_level.txt +0 -0
  188. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/setup.cfg +0 -0
  189. {kuavo_humanoid_sdk-1.2.1b3212 → kuavo_humanoid_sdk-1.2.1b3269}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: kuavo_humanoid_sdk
3
- Version: 1.2.1b3212
3
+ Version: 1.2.1b3269
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
- - 夹持器(lejuclaw): 位置、速度、力矩、抓取状态
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
- rb_info = make_robot_param()
127
- success, err_msg = self._control.initialize(eef_type=rb_info["end_effector_type"], debug=debug)
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.66 # Minimum allowed COM height in meters
259
- MAX_COM_HEIGHT = 0.86 # Maximum allowed COM height in meters
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
- SDKLogger.warn(f"[Core] Cannot squat lower: COM height {com_height:.2f}m below minimum {MIN_COM_HEIGHT}m")
264
- return None
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
- SDKLogger.warn(f"[Core] Cannot stand higher: COM height {com_height:.2f}m above maximum {MAX_COM_HEIGHT}m")
268
- return None
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
- # TODO(kuavo): 根据实物测试来调整....
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
- """Get the current state of the robot's dexterous hand gesture.
205
+ """获取机器人灵巧手势的当前状态。
206
206
 
207
207
  Returns:
208
- bool: True if the robot's dexterous hand gesture is executing, False otherwise.
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
- """Make predefined gestures for both hands.
213
+ """为双手做预定义的手势(同步等待完成)。
214
214
 
215
215
  Args:
216
- l_gesture_name (str): Name of gesture for left hand. None to skip left hand.
217
- r_gesture_name (str): Name of gesture for right hand. None to skip right hand.
218
- timeout (float, optional): Timeout for the gesture. Defaults to 5.0.
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 if gesture command sent successfully, False otherwise.
221
+ bool: 如果手势执行成功返回True,否则返回False
222
222
  """
223
223
  gesture = []
224
224
  if l_gesture_name is not None:
@@ -158,11 +158,15 @@ class KuavoRobot(RobotBase):
158
158
  """控制机器人的蹲姿高度和俯仰角。
159
159
 
160
160
  Args:
161
- height (float): 相对于正常站立高度的高度偏移量,单位米,范围[-0.35, 0.0],负值表示下蹲。
162
- pitch (float): 机器人躯干的俯仰角,单位弧度,范围[-0.4, 0.4]。
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
- SDKLogger.warn(f"[Robot] height {height} exceeds limit [{MIN_HEIGHT}, {MAX_HEIGHT}], will be limited")
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
- SDKLogger.warn(f"[Robot] pitch {pitch} exceeds limit [{MIN_PITCH}, {MAX_PITCH}], will be limited")
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
- """Control the target poses of the robot arm.
359
-
366
+ """控制机器人手臂目标姿态(已废弃)。
367
+
368
+ .. deprecated::
369
+ 请使用 :meth:`control_arm_joint_trajectory` 替代此函数。
370
+
360
371
  Args:
361
- times (list): List of time intervals in seconds.
362
- q_frames (list): List of joint positions in radians.
363
-
372
+ times (list): 时间间隔列表,单位秒
373
+ q_frames (list): 关节位置列表,单位弧度
374
+
364
375
  Returns:
365
- bool: True if the control was successful, False otherwise.
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
- This is an asynchronous interface. The function returns immediately after sending the command.
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
- Control the target poses of the robot arm.
38
- Args:
39
- times (list): List of time intervals in seconds
40
- joint_q (list): List of joint positions in radians
41
- Raises:
42
- ValueError: If the times list is not of the correct length.
43
- ValueError: If the joint position list is not of the correct length.
44
- ValueError: If the joint position is outside the range of [-π, π].
45
- RuntimeError: If the robot is not in stance state when trying to control the arm.
46
- Returns:
47
- bool: True if the control was successful, False otherwise.
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
- Control the head of the robot.
21
+ """控制机器人的头部关节运动。
22
+
23
23
  Args:
24
- yaw (float): The yaw angle of the head in radians, range [-1.396, 1.396] (-80 to 80 degrees).
25
- pitch (float): The pitch angle of the head in radians, range [-0.436, 0.436] (-25 to 25 degrees).
24
+ yaw (float): 头部的偏航角,单位弧度,范围[-1.396, 1.396](-8080)
25
+ pitch (float): 头部的俯仰角,单位弧度,范围[-0.436, 0.436](-2525)
26
+
26
27
  Returns:
27
- bool: True if the head is controlled successfully, False otherwise.
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 f"KuavoRobotInfo(robot_type={self.robot_type}, robot_version={self.robot_version}, end_effector_type={self.end_effector_type}, joint_names={self.joint_names}, joint_dof={self.joint_dof}, arm_joint_dof={self.arm_joint_dof})"
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
- """Interface class for robot navigation."""
10
+ """机器人导航接口类。"""
11
11
 
12
12
  def __init__(self):
13
- """Initialize RobotNavigation object."""
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
- """Navigate to the specified goal.
19
+ """导航到指定目标位置。
20
20
 
21
21
  Args:
22
- x (float): x coordinate of the goal.
23
- y (float): y coordinate of the goal.
24
- z (float): z coordinate of the goal.
25
- roll (float): roll of the goal.
26
- pitch (float): pitch of the goal.
27
- yaw (float): yaw of the goal.
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: Whether navigation succeeded.
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
- """Navigate to the specified task point.
44
+ """导航到指定的任务点。
45
45
 
46
46
  Args:
47
- task_point_name (str): Name of the task point.
47
+ task_point_name (str): 任务点的名称。
48
48
 
49
49
  Returns:
50
- bool: Whether navigation succeeded.
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
- """Stop navigation.
62
+ """停止导航。
63
63
 
64
64
  Returns:
65
- bool: Whether stopping navigation succeeded.
65
+ bool: 停止导航是否成功。
66
66
  """
67
67
  return self.robot_navigation.stop_navigation()
68
68
 
69
69
  def get_current_status(self) -> str:
70
- """Get the current navigation status.
70
+ """获取当前导航状态。
71
71
 
72
72
  Returns:
73
- str: Current navigation status.
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
- """Initialize localization by pose.
80
+ """通过位姿初始化定位。
81
81
 
82
82
  Args:
83
- x (float): x coordinate of the pose.
84
- y (float): y coordinate of the pose.
85
- z (float): z coordinate of the pose.
86
- roll (float): roll of the pose.
87
- pitch (float): pitch of the pose.
88
- yaw (float): yaw of the pose.
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: Whether localization initialization succeeded.
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
- """Initialize localization by task point.
100
+ """通过任务点初始化定位。
101
101
 
102
102
  Args:
103
- task_point_name (str): Name of the task point.
103
+ task_point_name (str): 任务点的名称。
104
104
 
105
105
  Returns:
106
- bool: Whether localization initialization succeeded.
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
- """Load a map.
111
+ """加载地图。
112
112
 
113
113
  Args:
114
- map_name (str): Name of the map.
114
+ map_name (str): 地图名称。
115
115
 
116
116
  Returns:
117
- bool: Whether loading the map succeeded.
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
- """Get all map names.
122
+ """获取所有地图名称。
123
123
 
124
124
  Returns:
125
- list: List of map names.
125
+ list: 地图名称列表。
126
126
  """
127
127
  return self.robot_navigation.get_all_maps()
128
128
 
129
129
  def get_current_map(self) -> str:
130
- """Get the current map name.
130
+ """获取当前地图名称。
131
131
 
132
132
  Returns:
133
- str: Current map name.
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