SCENe interfAces for Robot Input/Output.
Project description
ScenarIO
SCENe interfAces for Robot Input / Output.
Description
ScenarIO is a C++ abstraction layer to interact with simulated and real robots.
It mainly provides the following C++ interfaces:
scenario::core::World
scenario::core::Model
scenario::core::Link
scenario::core::Joint
These interfaces can be implemented to operate on different scenarios, including robots operating on either simulated worlds or in real-time.
ScenarIO currently fully implements Gazebo ScenarIO, a simulated back-end that interacts with Ignition Gazebo. The result allows stepping the simulator programmatically, ensuring a fully reproducible behaviour. It relates closely to other projects like pybullet and mujoco-py.
A real-time backend that interacts with the YARP middleware is under development.
ScenarIO can be used either from C++ (APIs) or from Python (APIs).
If you're interested to know the reasons why we started developing ScenarIO and why we selected Ignition Gazebo for our simulations, visit the Motivations section of the website.
Installation
ScenarIO only supports a single distribution of the Ignition suite. Visit our Support Policy to check the distribution currently supported.
Then, install the supported Ignition suite following the official instructions.
Python
Execute, preferably in a virtual environment:
pip install scenario
C++
You can either clone and install the standalone project:
git clone https://github.com/robotology/gym-ignition
cd gym-ignition/scenario
cmake -S . -B build/
cmake --build build/ --target install
or include it in your CMake project with
FetchContent
.
Usage
You can find some examples that show the usage of ScenarIO in the Getting Started section of the website.
Contributing
Please visit the Limitations section of the website and check the
good first issue
and
help wanted
issues.
You can visit our community forum hosted in GitHub Discussions. Even without coding skills, replying user's questions is a great way of contributing. If you use ScenarIO in your application and want to show it off, visit the Show and tell section!
Pull requests are welcome.
For major changes, please open a discussion first to propose what you would like to change.
Citation
@INPROCEEDINGS{ferigo2020gymignition,
title={Gym-Ignition: Reproducible Robotic Simulations for Reinforcement Learning},
author={D. {Ferigo} and S. {Traversaro} and G. {Metta} and D. {Pucci}},
booktitle={2020 IEEE/SICE International Symposium on System Integration (SII)},
year={2020},
pages={885-890},
doi={10.1109/SII46433.2020.9025951}
}
License
LGPL v2.1 or any later version.
We vendor some resources from the Ignition code base. For this reason, Gazebo ScenarIO is double-licensed with the Apache License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
File details
Details for the file scenario-1.3.1.tar.gz
.
File metadata
- Download URL: scenario-1.3.1.tar.gz
- Upload date:
- Size: 151.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 71b697753fe814b7697f2323a61a96225bdb14d46a70c86a64540d617faf189a |
|
MD5 | 5b3dbb80ac61cb6753e830be3d05f9a8 |
|
BLAKE2b-256 | 347c1dabaafb03876af82b53c450322464c9a43e05674207047a3b94ca08dc81 |
File details
Details for the file scenario-1.3.1-cp39-cp39-manylinux2014_x86_64.whl
.
File metadata
- Download URL: scenario-1.3.1-cp39-cp39-manylinux2014_x86_64.whl
- Upload date:
- Size: 4.0 MB
- Tags: CPython 3.9
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bb78bb7360338b01b0d38b34314d2fe4c05d7bd0fc23472bed637939235c26b1 |
|
MD5 | 264ff033143d20226b43a87aa1700c2f |
|
BLAKE2b-256 | 10594096bf4dc9c8243070427bdfb0db6bcc7c80088421ca969a3f2c98f9c850 |
File details
Details for the file scenario-1.3.1-cp38-cp38-manylinux2014_x86_64.whl
.
File metadata
- Download URL: scenario-1.3.1-cp38-cp38-manylinux2014_x86_64.whl
- Upload date:
- Size: 4.0 MB
- Tags: CPython 3.8
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.7
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 760f04fbb098172c54ee646d29eb14b73b88797af4da69d221aebf8648734db8 |
|
MD5 | b382790ed05a1c6986bd1f2110e72426 |
|
BLAKE2b-256 | c4c3ac5b66721f6c192088237e41d6a20c1216564d735c1ada1682265a5d1d72 |