habitat-sim
habitat-sim copied to clipboard
Spot robot wrapper
Motivation and Context
This PR adds the first draft of a robot wrapper configuration for the BD Spot, including basic parameter definitions for legged mobile manipulators.
TODO: camera sensors are not yet configured for Spot.
How Has This Been Tested
Interactive testing (likely to be removed for final merge):
With BD Spot robot asset downloaded to data/robots/
, run:
python examples/robot_test_viewer.py
Use '0'
to initialize the robot and '1-7'
to run various test functions. See the code for details.
Unit test added (requires asset download, so won't be run on CI):
https://user-images.githubusercontent.com/1445143/141221566-9d94e967-9cff-4c13-a290-b77a7f569add.mp4
Types of changes
- [ ] Docs change / refactoring / dependency upgrade
- [ ] Bug fix (non-breaking change which fixes an issue)
- [x] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to change)
Checklist
- [x] My code follows the code style of this project.
- [ ] My change requires a change to the documentation.
- [ ] I have updated the documentation accordingly.
- [x] I have read the CONTRIBUTING document.
- [x] I have completed my CLA (see CONTRIBUTING)
- [x] I have added tests to cover my changes.
- [x] All new and existing tests passed.
@aclegg3 The third joint of the Spot Arm here does not actually exist on the real robot. On the real robot, the first two joints of the arm comprise a "universal joint" at the base of the arm (see attached image), while the third one bends the elbow. In sim, the first three joints of the arm comprise a spherical joint at the base of the arm, and the fourth one bends the elbow; the ordering of the subsequent arm joints do correctly correspond with the ordering on the real robot via the BD Spot API.
Video attached to demonstrate this sim joint that does not exist on the real robot.
https://user-images.githubusercontent.com/5891456/144764852-00a32fb3-43cb-4209-93b4-3aa22ebfbdb6.mp4
Robot API moved to Habitat-lab.