(四)Unity3d-ROS联合仿真:turtlebot在Unity3d中仿真
运行环境Ubuntu20.04+Unity3d。
运行环境Ubuntu20.04+Unity3d
1.下载运行
(1)项目下载地址:
Robotics-Nav2-SLAM-Example
最好执行下面命令能将子模块也下载
git clone --recurse-submodule git@github.com:Unity-Technologies/Robotics-Nav2-SLAM-Example.git
git submodule update --init --recursive
以上两个都失败,直接进入github界面
https://github.com/Unity-Technologies/Robotics-Nav2-SLAM-Example
然后点ROS-TCP-Endpoint目录。
手动下载解压
(2)配置好unity3d环境
Ubuntu20.04+Unity3d环境配置
Unity3d中选择Nav2SLAMExampleProject路径打开工程
打开后点下面的Scenens,选择SimpleWarehouseScene
如图
2.启动ros2端
进入colcon_ws目录编译
cd colcon_ws
colcon build
source install/setup.bash
source /opt/ros/foxy/setup.bash
ros2 launch unity_slam_example unity_slam_example.py
执行出现错误
LookupError: Could not find the resource ‘nav2_bringup’ of type ‘packages’
解决方法:
sudo apt install ros-foxy-navigation2 ros-foxy-nav2-bringup
再次运行成功后在unity3d中点击play按钮就可以控制机器人运动了。
给机器人设置目标位置方法如
run_example.md中介绍
其他错误解决:
(1)导入错误NavMeshSurface’ does not contain a definition for ‘IsPartOfPrefab’
解决方法:
更新到官方 com.unity.ai.navigation 包:
移除旧版 NavMeshComponents 文件(Assets 中的 NavMeshComponents 文件夹)。
通过 Unity Package Manager 安装官方包:
菜单栏 → Window > Package Manager
点击 + → Add package by name
输入:com.unity.ai.navigation
版本选择 1.1.5 或更高(兼容 Unity 2019.4+)
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐

所有评论(0)