ROS# is a set of open source software libraries and tools in C# for communicating with ROS from .NET applications, in particular Unity.
Here are some showcases illustrating what can be done with ROS#. Community provided a variety of other application examples for ROS# here. Please don't hesitate to post yours!
Contents
- Libraries: .NET solution for RosBridgeClient, Urdf and MessageGeneration
- ROS: ROS packages used by ROS#.
- Unity3D: Unity project containing
- Unity-specific extensions to RosBridgeClient and Urdf and MessageGeneration
- example scenes and reference code (see Wiki)
Releases
In addition to the source code, Releases contain:
- a Unity Asset Package containing the Unity3D project assets:
- to be imported in other Unity projects using ROS#.
- binaries of RosBridgeClient and Urdf
- to be used in other .NET projects using these libraries.
The latest release is also being published in the Unity Asset Store.
Please get the latest development version directly from the tip of this master branch.
Unity Robotics Hub
In 11/2020 Unity launched Unity Robotics Hub and included a major part of ROS#.
- Short Description on Unity Robotics Hub written by Unity developers
- Differences between ROS# and Unity Robotics Hub
We are in close contact with the developers and decided to run both initiatives in parallel.
Licensing
ROS# is open source under the Apache 2.0 license and is free for commercial use.
External Dependencies
RosBridgeClient requires:
- Newtonsoft.Json (MIT License)
- Newtonsoft.Json.Bson (MIT License)
- websocket-sharp (MIT License), required only when using WebSocketSharpProtocol
Platform Support
-
ROS# is developed for Windows and has successfully been used on a variety of other platforms community members.
-
The RosSharp Visual Studio solution requires .NET Framework 4.6.1 and Visual Studio 2017 or higher.
-
The Unity Project Unity3D has been developed with Unity Version 2019.4.18f (LTS) and should be compatible also with older versions. In Versions below 2019.3, make sure to set the scripting runtime version to
.NET 4.x Equivalent
(see Wiki page). -
Please find a UWP version of ROS# here.
-
Please find a .NET Standard 2.0 version of UrdfImporter here.
Further Info
© Siemens AG, 2017-2021
Author: Dr. Martin Bischoff ([email protected])