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.
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 and Visual Studio 2017 or higher.
-
The Unity Project Unity3D requires Unity Version 2018.3 or higher. 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-2020
Author: Dr. Martin Bischoff (martin.bischoff@siemens.com)