Skip to content

Commit

Permalink
initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
Josiah Wong committed Sep 25, 2021
0 parents commit 416b740
Show file tree
Hide file tree
Showing 346 changed files with 340,524 additions and 0 deletions.
4 changes: 4 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
[submodule "oscar/rl_games"]
path = oscar/rl_games
url = https://github.com/cremebrule/rl_games.git
branch = oscar
8 changes: 8 additions & 0 deletions .idea/.gitignore

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions .idea/inspectionProfiles/profiles_settings.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 4 additions & 0 deletions .idea/misc.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 8 additions & 0 deletions .idea/modules.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

16 changes: 16 additions & 0 deletions .idea/oscar.iml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

7 changes: 7 additions & 0 deletions .idea/vcs.xml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions LICENSE.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
Copyright (c) 2021, NVIDIA CORPORATION. All rights reserved.
NVIDIA CORPORATION and its licensors retain all intellectual property
and proprietary rights in and to this software, related documentation
and any modifications thereto. Any use, reproduction, disclosure or
distribution of this software and related documentation without an express
license agreement from NVIDIA CORPORATION is strictly prohibited.
87 changes: 87 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
## OSCAR
This repository contains the codebase used in [OSCAR: Data-Driven Operational Space Control for Adaptive and Robust Robot Manipulation](arxiv_link_TODO).

More generally, this codebase is a modular framework built upon [IsaacGym](https://developer.nvidia.com/isaac-gym), and intended to support future robotics research leveraging large-scale training.

Of note, this repo contains:
- High-quality controller implementations of OSC, IK, and Joint-Based controllers that have been fully parallelized for PyTorch
- Complex Robot Manipulation tasks for benchmarking learning algorithms
- Modular structure enabling rapid prototyping of additional robots, controllers, and environments

## Requirements
- Linux machine
- Conda
- NVIDIA GPU + CUDA

## Getting Started
First, clone this repo:

```bash
git clone https://github.com/NVlabs/oscar.git
```

Next, create a new conda environment to be used for this repo and activate the repo:
```bash
cd oscar
bash create_conda_env_oscar.sh
conda activate oscar
```

This will create a new conda environment named `oscar` and additional install some dependencies. Next, we need IsaacGym. This repo itself does not contain IsaacGym, but is compatible with any version > preview 3.0.

Install and build IsaacGym [HERE](https://developer.nvidia.com/isaac-gym).

Once installed, navigate to the python directory and install the package to this conda environment:

```bash
cd <ISAACGYM_REPO_PATH>/python
pip install -e .
```

Now with IsaacGym installed, we can finally install this repo as a package:

```bash
cd <OSCAR_REPO_PATH>
pip install -e .
```

That's it!

## Prerequisites

- Supported platforms are Linux (Ubuntu 16.04+) and Windows 10 (version 1809 is required).

- Install Git and [Git LFS](https://github.com/git-lfs/git-lfs/wiki/Installation).

- If you wish to develop using Isaac Gym, you should [fork this repository](https://gitlab-master.nvidia.com/carbon-gym/carbgym/forks/new).
* Go to your newly created fork in GitLab, select
* go to "Settings->Repository->Mirroring repositories"
* set "Git repository URL" to https://gitlab-master.nvidia.com/carbon-gym/carbgym.git
* select "Pull" under "Mirror direction".
* clear out the text under "Password".
* check the "Overwrite diverged branches" checkbox.
* go to "Settings->General->Visibility, project features, permissions"
* ensure "Project Visibility" is set to "Public".
* Clone your fork to a local hard drive. On Windows, make sure to use a NTFS drive.

- If you just want to use Isaac Gym as-is, you can clone this repositiory directly to your hard drive (on Windows, make sure to use a NTFS drive).

- On Ubuntu, you should run `./setup.sh` to install some prerequisite software. This only needs to be done once.


## Building

Execute `./build.sh` on Linux or `build.bat` on Windows.

For building in Visual Studio you need VS 2017 with [SDK 10.17763+](https://go.microsoft.com/fwlink/?LinkID=2023014).

The build output will be found in the generated `_build` folder and the make/solution
files will be found in the generated `_compiler` directory.

## Python

See the [Python README](/python/README.md) for information on running the Python examples.

## Contributing

Please read [CONTRIBUTING.md](CONTRIBUTING.md).
13 changes: 13 additions & 0 deletions assets/images/robot_cursive.svg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
152 changes: 152 additions & 0 deletions assets/urdf/franka_description/meshes/collision/finger.obj
Original file line number Diff line number Diff line change
@@ -0,0 +1,152 @@
####
#
# OBJ File Generated by Meshlab
#
####
# Object finger.obj
#
# Vertices: 52
# Faces: 32
#
####
vn 0.999991 0.003723 -0.001919
v 0.010360 0.026403 0.000155
vn 0.019341 -0.997893 -0.061925
v 0.010449 0.002583 0.000147
vn -0.999568 -0.025962 0.013789
v -0.010387 0.002534 0.000132
vn -0.999606 -0.009503 0.026403
v -0.010479 0.016102 0.018988
vn -0.000579 0.001464 -0.999999
v -0.010401 0.026309 0.000167
vn -0.044737 0.976483 0.210900
v -0.010389 0.025220 0.019188
vn -0.871286 -0.490748 0.005227
v -0.008730 -0.000024 0.036165
vn 0.999861 0.006488 0.015354
v 0.010400 0.025253 0.019037
vn 0.377718 0.867563 0.323518
v 0.005840 0.014274 0.053803
vn 0.736099 -0.021564 0.676530
v 0.008616 0.013989 0.051328
vn 0.999373 -0.008600 0.034345
v 0.010495 0.015103 0.018436
vn 0.013041 -0.999896 -0.006124
v 0.008693 -0.000133 0.050166
vn -0.998603 -0.032800 0.041418
v -0.008623 -0.000057 0.050953
vn -0.588468 -0.017705 0.808327
v -0.005481 -0.000091 0.053725
vn 0.004085 -0.008700 0.999954
v -0.005278 0.014293 0.053849
vn -0.691057 -0.012018 0.722700
v -0.007778 0.014218 0.052366
vn -0.665951 0.690851 0.281486
v -0.008841 0.013918 0.050589
vn 0.736099 -0.021564 0.676530
v 0.006138 -0.000021 0.053578
vn -0.002818 0.998255 0.058981
v 0.010360 0.026403 0.000155
vn 0.000073 0.000898 -1.000000
v 0.010360 0.026403 0.000155
vn 0.999898 -0.012431 0.007036
v 0.010449 0.002583 0.000147
vn 0.000724 0.000331 -1.000000
v 0.010449 0.002583 0.000147
vn -0.871286 -0.490748 0.005227
v -0.010387 0.002534 0.000132
vn 0.002403 -0.997480 -0.070914
v -0.010387 0.002534 0.000132
vn 0.000073 0.000898 -1.000000
v -0.010387 0.002534 0.000132
vn -0.004486 0.998354 0.057168
v -0.010401 0.026309 0.000167
vn -0.999988 0.004662 -0.001626
v -0.010401 0.026309 0.000167
vn -0.665951 0.690851 0.281486
v -0.010389 0.025220 0.019188
vn -0.999597 0.009346 0.026807
v -0.010389 0.025220 0.019188
vn 0.006493 -0.999457 -0.032313
v -0.008730 -0.000024 0.036165
vn 0.377718 0.867563 0.323518
v 0.010400 0.025253 0.019037
vn -0.000242 0.983230 0.182372
v 0.010400 0.025253 0.019037
vn 0.665647 0.002096 0.746264
v 0.005840 0.014274 0.053803
vn 0.008418 -0.012115 0.999891
v 0.005840 0.014274 0.053803
vn 0.001757 0.953702 0.300749
v 0.005840 0.014274 0.053803
vn 0.377718 0.867563 0.323518
v 0.008616 0.013989 0.051328
vn 0.998361 0.003310 0.057136
v 0.008616 0.013989 0.051328
vn 0.798906 -0.045001 0.599770
v 0.008693 -0.000133 0.050166
vn 0.998687 -0.025065 0.044683
v 0.008693 -0.000133 0.050166
vn -0.769031 -0.017753 0.638965
v -0.008623 -0.000057 0.050953
vn -0.008996 -0.999957 -0.002185
v -0.008623 -0.000057 0.050953
vn -0.871286 -0.490748 0.005227
v -0.008623 -0.000057 0.050953
vn 0.008418 -0.012115 0.999891
v -0.005481 -0.000091 0.053725
vn -0.002059 -0.999940 0.010793
v -0.005481 -0.000091 0.053725
vn -0.510143 -0.000217 0.860089
v -0.005278 0.014293 0.053849
vn -0.108731 0.943365 0.313433
v -0.005278 0.014293 0.053849
vn -0.665951 0.690851 0.281486
v -0.007778 0.014218 0.052366
vn -0.218924 0.920873 0.322590
v -0.007778 0.014218 0.052366
vn -0.858159 -0.000049 0.513385
v -0.008841 0.013918 0.050589
vn -0.998665 -0.002749 0.051583
v -0.008841 0.013918 0.050589
vn 0.006542 -0.999267 0.037718
v 0.006138 -0.000021 0.053578
vn 0.012751 -0.015529 0.999798
v 0.006138 -0.000021 0.053578
# 52 vertices, 0 vertices normals

f 20//20 22//22 25//25
f 3//3 4//4 27//27
f 27//27 4//4 29//29
f 2//2 30//30 24//24
f 32//32 6//6 35//35
f 25//25 5//5 20//20
f 37//37 11//11 8//8
f 11//11 39//39 21//21
f 37//37 39//39 11//11
f 42//42 23//23 7//7
f 2//2 12//12 30//30
f 12//12 44//44 30//30
f 8//8 11//11 21//21
f 8//8 21//21 1//1
f 32//32 19//19 6//6
f 6//6 46//46 35//35
f 48//48 46//46 6//6
f 40//40 14//14 16//16
f 3//3 13//13 4//4
f 31//31 9//9 36//36
f 19//19 26//26 6//6
f 4//4 50//50 29//29
f 17//17 47//47 28//28
f 34//34 43//43 52//52
f 15//15 43//43 34//34
f 12//12 51//51 44//44
f 18//18 38//38 10//10
f 44//44 41//41 30//30
f 16//16 14//14 45//45
f 13//13 50//50 4//4
f 18//18 10//10 33//33
f 16//16 49//49 40//40
# 32 faces, 0 coords texture

# End of File
Binary file not shown.
Loading

0 comments on commit 416b740

Please sign in to comment.