2021-01-25unity|2021-01-25unity ROS
转自:
https://my.oschina.net/zhangrelay/blog/4822630
[ROS#资讯汇总(ROS、C#、.NET和Unity3D)]
ROS#是C#中的一组软件库和工具,用于.NET应用程序(尤其是Unity)与ROS进行通信。
之前博文涉及windows系统与ROS应用可参考(ROS2有windows版本):链接1、链接2。
文章图片
^_^ 本文是西门子公司的Martin Bischoff客座博客文章。 感谢Martin的更新,感谢西门子对ROS-Industrial Consortium的支持!
ROS#包括如下内容:
- RosBridgeClient, a .NET API to ROS using rosbridge_suite on the ROS side.
- UrdfImporter, a URDF file parser for .NET applications.
- RosSharp.unitypackage, a Unity Asset package providing Unity-specific extensions to RosBridgeClient and UrdfImporter.
- Communicate:通过Windows应用程序与ROS进行通讯:订阅和发布主题,调用和发布服务,设置和获取参数以及使用rosbridge套件提供的所有功能。
文章图片
image
- Import:将机器人的URDF模型作为GameObject导入到Unity3D中。 使用robot_description服务直接从ROS系统导入数据,或通过复制到Unity资源文件夹中的URDF文件导入数据。
文章图片
image
文章图片
image
- Control:通过Unity3D控制真实机器人。
- Visualize:在Unity3D中可视化机器人的实际状态和传感器数据。
文章图片
image
文章图片
image
- Simulate:使用URDF提供的数据在Unity3D中实现机器人仿真(这里不使用与ROS的连接的方式)。 除了网格和纹理的可视化组件之外,还可以导入了刚体的关节参数、质量、CoMs、惯性和碰撞等规格指标。
- And much more:更多功能!ROS#可用于各种应用,如机器学习、人机交互、远程监控、虚拟原型、机器人操作、游戏和娱乐等!
Got Interested? Please do not hesitate to try it out yourself and to get in touch with us! We are very interested in your feedback, applications, improvement suggestions, and contributions!
ROS# Development Team (ros-sharp.ct@siemens.com), Siemens AG, Corporate Technology, 2017
ROS# is a set of open source software libraries and tools in C# for communicating with ROS from .NET applications, in particularUnity3D.
Find some examples what you can do with ROS# here.
Contents: RosBridgeClient
... provides a .NET API to ROS via rosbridge_suite.
UrdfImporter
... provides a URDF file parser for .NET applications.
ROS
... contains code for ROS nodes and ROS launch files which are useful to RosBridgeClient and/or UrdfImporter.
Unity3D
... is a Unity3D reference project providing Unity3D-specifc extensions to
- RosBridgeClient
- UrdfImporter
... contains RosSharp.unitypackage the latest package of ROS# assets from the Unity3D project.
Tutorials
... contains Unity3D tutorial projects described described in the Wiki.
Licensing: ROS# is open source under the Apache 2.0 license and is free for commercial use.
External Dependencies: RosBridgeClient uses the following 3rd party libraries:
-
websocket-sharp.dll
from websocket-sharp provided under MIT License. -
NewtonSoft.Json.dll
from NewtonSoft Json.Net provided under MIT License.
-
MathNet.Numerics.dll
from Math.NET Numerics provided under MIT License. -
System.Threading.dll
from TaskParallelLibrary for .NET 3.5 provided under MS-EULA License.
For Non-Unity3D-Applications blommers kindly provides a .NET Standard 2.0 version of UrdfImporter.
Special Thanks:
- Rahul Warrier for adjusting the code to enable its open source publication.
- Verena Roehrl for providing the Wiki pages and the tutorial projects.
- Karl Henkel for providing the reference for the Unity3D STL mesh importer used in this project.
- Jeremy Fix for providing the CameraImagePublisher and VelocitySubscriber
- Interested in contributing as well?
- Read the Wiki.
- Contact the Project Team.
Author: Dr. Martin Bischoff (martin.bischoff@siemens.com)
User Documentation 1. Installation and Configuration 1.1 Unity3D on Windows
1.2 Ubuntu on Oracle VM
1.3 ROS on Ubuntu
1.4 Robot Setup and Configuration
1.4.1 NextageOpen 1.4.2 TurtleBot2 2. Application examples without ROS connection 2.1 Importing a URDF on Windows
2.2 Simulating a robot model in Unity3D
3. Application examples with ROS connection 3.1 Importing a URDF from ROS
3.2 Animating a robot model in Unity3D via ROS
3.2.1 Animating a robot model using
/joint_states
3.2.2. Animating a robot model using /odom
Developer Documentation
- Hardware Independence
- License Headers
- Namespace Organization
- Unity3D Asset Folder Organization
- Unity3D Class Naming Guidelines
- Application Showcases
- Publications
推荐阅读
- 在珠海賞植物──【粉花夾竹桃】Rose|在珠海賞植物──【粉花夾竹桃】Rose oleander
- 那些藏在记忆里的歌
- 伦敦市长萨迪克汗Crossrail受挫,转进准备引入租金管控。
- 【转自CSDN】《史上最全前端开发面试问题及答案整理》
- Fourth|Fourth season twenty-first episode,Ross invited Rachel to his wedding,what will happen?
- 数字签名是什么(转自阮一峰的博客)
- protobuf编码详解
- 【Java】Java内存模型(JMM)
- ubuntu16.04安装ROS
- redis|redis cross slot error