ROS导航仿真操作(3)
2021/9/12 23:10:25
本文主要是介绍ROS导航仿真操作(3),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
此部分是自建仿真环境然后运行小车
1、启动gazebo
安装运行有问题的先参照资料解决一下
ROS基础(12)——机器人建模之gazebo
gazebo
2、新建文件
3、设计自己的环境
4、保存环境模型
5、设置障碍物
先运行出小车模型
roslaunch racecar_gazebo racecar.launch
对准小车的地方放置刚自建的环境模型
刚开始放障碍物就会无限下沉直到见,结果就是看不到障碍物,但有显示加上了
所以尝试了一下先放障碍物,再放我绘制的墙,就可以了,不知道为什么
6、保存
保存在ROS/src/racecar/racecar_gazebo/worlds
路径下
7、创建并运行启动文件
在ROS/src/racecar/racecar_gazebo/launch路径下新建launch文件
cd ~/ROS/src/racecar/racecar_gazebo/launch gedit try.launch
文件内容:
<?xml version="1.0"?> <launch> <include file="$(find racecar_gazebo)/launch/racecar.launch"> <arg name="world_name" value="try"/> </include> </launch>
保存后开启新终端输入:
roslaunch racecar_gazebo try.launch
8、启动rviz绘制地图
新开启一个终端输入
roslaunch racecar_gazebo slam_gmapping.launch
控制小车跑完环境建出地图
9、保存地图
cd ROS/src/racecar/racecar_gazebo/map/
rosrun map_server map_saver -f mycar_map
10、运行前准备
方法一:修改导航文件
cd ROS/src/racecar/racecar_gazebo/launch
gedit racecar_runway_navigation.launch
将
改为
2、方法二:新建launch文件
cd ~/ROS/src/racecar/racecar_gazebo/launch
gedit try2.launch
内容如下:
<?xml version="1.0"?> <launch> <!-- Launch the racecar --> <include file="$(find racecar_gazebo)/launch/racecar.launch"> <arg name="world_name" value="try"/> </include> <!-- Launch the built-map --> <node name="map_server" pkg="map_server" type="map_server" args="$(find racecar_gazebo)/map/mycar_map.yaml" /> <!--Launch the move base with time elastic band--> <param name="/use_sim_time" value="true"/> <node pkg="move_base" type="move_base" respawn="false" name="move_base" output="screen"> <rosparam file="$(find racecar_gazebo)/config/costmap_common_params.yaml" command="load" ns="global_costmap" /> <rosparam file="$(find racecar_gazebo)/config/costmap_common_params.yaml" command="load" ns="local_costmap" /> <rosparam file="$(find racecar_gazebo)/config/local_costmap_params.yaml" command="load" /> <rosparam file="$(find racecar_gazebo)/config/global_costmap_params.yaml" command="load" /> <rosparam file="$(find racecar_gazebo)/config/teb_local_planner_params.yaml" command="load" /> <param name="base_global_planner" value="global_planner/GlobalPlanner" /> <param name="planner_frequency" value="0.01" /> <param name="planner_patience" value="5.0" /> <!--param name="use_dijkstra" value="false" /--> <param name="base_local_planner" value="teb_local_planner/TebLocalPlannerROS" /> <param name="controller_frequency" value="5.0" /> <param name="controller_patience" value="15.0" /> <param name="clearing_rotation_allowed" value="false" /> </node> </launch>
11、启动导航
1、方法一启动
开启两个终端分别输入如下指令
roslaunch racecar_gazebo racecar_runway_navigation.launch
roslaunch racecar_gazebo racecar_rviz.launch
2、方法二启动
roslaunch racecar_gazebo try2.launch
roslaunch racecar_gazebo racecar_rviz.launch
12、设置导航点
在rviz中使用2D Nav Goal设置目标
13、启动运行程序
rosrun racecar_gazebo path_pursuit.py
这篇关于ROS导航仿真操作(3)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-17机器学习资料入门指南
- 2024-12-06如何用OpenShift流水线打造高效的机器学习运营体系(MLOps)
- 2024-12-06基于无监督机器学习算法的预测性维护讲解
- 2024-12-03【机器学习(六)】分类和回归任务-LightGBM算法-Sentosa_DSML社区版
- 2024-12-0210个必须使用的机器学习API,为高级分析助力
- 2024-12-01【机器学习(五)】分类和回归任务-AdaBoost算法-Sentosa_DSML社区版
- 2024-11-28【机器学习(四)】分类和回归任务-梯度提升决策树(GBDT)算法-Sentosa_DSML社区版
- 2024-11-26【机器学习(三)】分类和回归任务-随机森林(Random Forest,RF)算法-Sentosa_DSML社区版
- 2024-11-18机器学习与数据分析的区别
- 2024-10-28机器学习资料入门指南