Add configurable stand_height to Droid embodiment#911
Conversation
d778302 to
cfdcc94
Compare
Greptile SummaryThis PR makes the Droid stand scale configurable. The main changes are:
Confidence Score: 5/5This looks safe to merge.
Important Files Changed
Reviews (1): Last reviewed commit: "Add configurable stand_scale to Droid em..." | Re-trigger Greptile |
| registry_name: droid_abs_joint_pos | ||
| params: {} | ||
| params: | ||
| stand_scale: [1.2, 1.2, 1.7] |
There was a problem hiding this comment.
🔵 This override equals the default
[1.2, 1.2, 1.7] is exactly _DEFAULT_STAND_SCALE, so this env behaves the same as it did with params: {} — the line is a no-op. Was the intent just to surface the knob? If so a short comment might read more clearly; otherwise this could stay {} and the feature is still available to anyone who wants a non-default stand.
🤖 Isaac Lab-Arena Review BotSummaryAdds a Findings🔵 Improvement — Test Coverage
VerdictShip it — one optional nit on the no-op YAML override. |
alexmillane
left a comment
There was a problem hiding this comment.
Looks good.
I have one comment about renaming the scale to make the purpose clear to a user.
| initial_joint_pose: list[float] | None = None, | ||
| concatenate_observation_terms: bool = False, | ||
| arm_mode: ArmMode | None = None, | ||
| stand_scale: tuple[float, float, float] = _DEFAULT_STAND_SCALE, |
There was a problem hiding this comment.
What's the goal of the scale? I'm thinking that the goal is likely to be able to adjust the height? Am I correct there, the PR description doesn't mention the intention here.
I'm wondering if the goal is to be able to adjust the robot height, if we should expose that in another way. I.e. add a constructor variable stand_height. Right now the user has to know that the stand scale can be used to affect the height. They have to know that the stand stretches around the robot base (rather than for example scaling around the stand's center which would cause collisions).
There was a problem hiding this comment.
yeah it's for adjusting the height. taking your suggestion. thx
Signed-off-by: Xinjie Yao <xyao@nvidia.com>
Signed-off-by: Xinjie Yao <xyao@nvidia.com>
Signed-off-by: Xinjie Yao <xyao@nvidia.com>
41a314d to
9b2f18b
Compare
qianl-nv
left a comment
There was a problem hiding this comment.
Thanks for the change, a few nits.
| initial_joint_pose: list[float] | None = None, | ||
| concatenate_observation_terms: bool = False, | ||
| arm_mode: ArmMode | None = None, | ||
| stand_height: float = _DEFAULT_STAND_HEIGHT_SCALE, |
There was a problem hiding this comment.
stand_height sounds like a metric value by name but is actually a scale.
I'd prefer to update the implementation to actually treat it as an absolute height in meter. the default 1.7 scale is a bit arbitrary anyway
| _FALLBACK_STAND_UNIT_HEIGHT_M: float = 0.795 | ||
|
|
||
|
|
||
| @functools.cache |
There was a problem hiding this comment.
move this private helper to the back of the file.
nicer to see class DroidEmbodimentBase at the top...
| _STAND_FOOTPRINT_SCALE_XY: tuple[float, float] = (1.2, 1.2) | ||
| _DEFAULT_STAND_HEIGHT_SCALE: float = 1.7 | ||
|
|
||
| # The stand's top is pinned at the robot base and it extends downward to the floor, so scaling its |
There was a problem hiding this comment.
these docstring should move to line 107.
Summary
Add configurable stand_height to Droid embodiment.
Detailed description
3.0


1.7