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!
With ROS# you can now generate C# classes of any ROS message, service or action type.
For example, the auto-generated class of sensor_msgs/JointState.msg is JointState.cs.
Please find the new library here and the console tool sources here. Please also note the new Unity Editor menu features.
Check out the new Wiki page for further info.
We moved both ActionClient and ActionServer into the library.
Please also find the new console examples for ActionClient, for ActionServer, and a Unity example scene here.
We had to update the namespaces as follows:
old | new |
---|---|
RosSharp.RosBridgeClient.Messages |
RosSharp.RosBridgeClient.MessageTypes |
RosSharp.RosBridgeClient.Services |
RosSharp.RosBridgeClient.MessageTypes |
RosSharp.RosBridgeClient.Messages.Standard |
RosSharp.RosBridgeClient.MessageTypes.Std |
RosSharp.RosBridgeClient.Messages.Navigation |
RosSharp.RosBridgeClient.MessageTypes.Nav |
- 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)
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.
ROS# is open source under the Apache 2.0 license and is free for commercial use.
RosBridgeClient requires:
- Newtonsoft.Json (MIT License)
- Newtonsoft.Json.Bson (MIT License)
- websocket-sharp (MIT License), required only when using WebSocketSharpProtocol
-
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.
-
The Unity Project Unity3D requires Unity Version 2018.3 and 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.
© Siemens AG, 2017-2019
Author: Dr. Martin Bischoff ([email protected])