ROS入门跑仿真机器人

安装一个模拟器 Arbotix
安装:sudo apt-get install ros-kinetic-arbotix*
现在需要确保ROS能找到新包,常常在发生变化之后,使用rospack profile识别新目录。
例如: rospack profile
下载代码

一、在仿真平台上启动机器人
1.创建工作空间
simulation_catkin_ws
2.安装ROS-BY-EXAMPLE书配套的代码包rbx1,下载到simulation_catkin_ws
git clone https://github.com/pirobot/rbx1.git
注:然后在simulation_catkin_ws下面打开rbx1,可以看到很多包,但这时候是不能使用的,要把这些放到src文件下面再用catkin_make编译,因此,在rbx1目录下面新建一个src文件夹,把除src外的文件都放到src里面,然后执行catkin_make
3.编译通过
catkin_make
注:编译完以后,要让终端找到你安装的包,需要把路径加入到source里面,具体如下,但这是暂时的保存,新开启一个终端就失效了,如果要永久保存在终端输入sudo gedit ~/.bashrc 在最末尾把路径加进去source ~/simulation_catkin_ws/rbx1/devel/setup.bash,然后重启终端,有时候找不到包还需要加入包的路径export ROS_PACKAGE_PATH=~/simulation_catkin_ws/rbx1/src:$ROS_PACKAGE_PATH这里就用暂时的source
4.加入路径
source ~/simulation_catkin_ws/rbx1/devel/setup.bash
rospack profile 
5.启动ros
roscore
注:可以不用roscore因为roslaunch的时候会默认开启roscore,如果是rosrun就必须要roscore
6.启动安装好的程序文件
开启一个机器人模型,模型位于/rbx1/rbx1_bringup/launch目录下:
roslaunch rbx1_bringup fake_pi_robot.launch
7.启动rviz仿真
rosrun rviz rviz -d `rospack find rbx1_nav`/sim.rviz
注:这时候因为要新开启一个终端,但刚才做的时候是暂时保存路径,因此,新的终端里面还需要再操作一遍第4步
注:这时候打开是没有画面的,需要在左边配置一下参数,具体照图片
8.让机器人跑起来
rostopic pub -r 10 /cmd_vel geometry_msgs/Twist '{linear: {x: 0.2, y: 0, z: 0}, angular: {x: 0, y: 0, z: 0.5}}'
注:又需要重开一个终端,所以还要再操作一遍上述第4步

在这里插入图片描述二、机器人在虚拟环境下自主导航
安装navigation包
安装navigation
sudo apt-get install ros-kinetic-navigation

2.1在障碍物环境下导航

$roscore 
$roslaunch rbx1_bringup fake_turtlebot.launch //加载一个模拟机器人 
$roslaunch rbx1_nav fake_move_base_map_with_obstacles.launch //加载一张带障碍物的地图 
$rosrun rviz rviz -d `rospack find rbx1_nav`/nav_obstacles.rviz //加载rviz 带障碍物的导航 
$rosrun rbx1_nav move_base_square.py //使其自动走一个正方形

2.2复杂地图下导航
使用AMCL(Adaptive Monte Carlo Localization) 进行导航功能的测试。

$roscore $roslaunch rbx1_bringup fake_turtlebot.launch //运行一个机器人
$roslaunch rbx1_nav fake_amcl.launch //运行fake_amcl.launch调用已有的测试地图 
$rosrun rviz rviz -d `rospack find rbx1_nav`/amcl.rviz //启动rviz 并调用amcl配置文件 也可以手动指定要调用的地图: 
$roslaunch rbx1_nav fake_amcl.launch map:=test_map.yaml //这句命令是启动保存在fake_amcl.launch文件下面的地图

点击2D NEW GOAL给机器人设定导航目标
在这里插入图片描述

发布了8 篇原创文章 · 获赞 1 · 访问量 177

猜你喜欢

转载自blog.csdn.net/Savage888777/article/details/105168389