OpenRR (pronounced like "opener") is Open Rust Robotics platform.
It's heavily under development.
OS | Core | GUI | ROS |
---|---|---|---|
Linux (Ubuntu) | ✔ | ✔ | ✔ |
MacOS | ✔ | ✔ | ✔ |
Windows | ✔ | ✔ |
sudo apt install cmake build-essential libudev-dev xorg-dev libglu1-mesa-dev libasound2-dev
- cmake build-essential (openrr-planner (assimp-sys))
- libudev-dev (arci-gamepad-gilrs)
- xorg-dev libglu1-mesa-dev (openrr-gui (iced))
- libasound2-dev (arci-speak-audio)
arci
is a hardware abstraction layer for openrr.
Currently ROS1 and urdf-viz (as a static simulator (actually it's just a viewer)) are implemented.
You can write platform/hardware independent code if you use arci
traits.
OpenRR contains..
- abstract robot interfaces (
arci
) - concrete implementation of the interfaces (
arci-ros
,arci-urdf-viz
, ...) - library which uses the interfaces (
openrr-client
, ...) - tools (
openrr-apps
) - pure libraries nothing to do with
arci
(openrr-planner
,openrr-sleep
, ...)
Currently we have some tools to control real/sim robots.
See openrr-apps for details.
Inspired by joint_state_publisher_gui
You can use this GUI not only for ROS but anything if you implement arci::JointTrajectoryClient
and write a small binary main function.
General CLI to access arci
robot clients. It supports not only sending joint trajectory directly but it supports inverse kinematics with self-collision check, and navigation.
Apache2
- k : kinematics library
- ros-nalgebra : rosrust nalgebra converter generator
- rrt : RRT-dual-connect path planner
- trajectory : trajectory interpolator
- urdf-rs : URDF parser
- urdf-viz: URDF visualizer
gear: (deprecated) motion planning library, but it is openrr-planner now.
We strongly believe that Rust is the future of robotics. OpenRR is the world first robotics platform which is made by Rust, made for Rust. It can be a reference, a base for the future robotic people, like us.
We appreciate for your any contributions! Create an issue at first!