前言:因为是第一次接触,所知甚少,只是从网上找到了相关资源,经验证无误,故作笔记记录,防止以后用到
【参考博客】:
rbx1 package 下载安装过程、
ROS笔记(16) ArbotiX、
install rbx1 and ROS工具包和Rviz仿真器、
rbx1 ubuntu 18安装、
RViz仿真rbx1
一、准备工作:
-
安装一些以后可能用到的软件包,这里在rbx1中只有indigo版本的,我上网找了一下melodic版本的,不知道能不能用,目前是能用,先用着吧,以后出错再说。
sudo apt-get install ros-melodic-arbotix ros-melodic-openni-camera \ ros-melodic-rosbridge-suite \ ros-melodic-rgbd-launch \ ros-melodic-turtlebot-* ros-melodic-kobuki-* ros-melodic-moveit-python \ python-pygraph python-pygraphviz python-easygui \ mini-httpd ros-melodic-laser-pipeline ros-melodic-ar-track-alvar \ ros-melodic-laser-filters \ ros-melodic-depthimage-to-laserscan ros-melodic-shape-msgs \ ros-melodic-gazebo-ros ros-melodic-gazebo-ros-pkgs \ ros-melodic-gazebo-msgs ros-melodic-gazebo-plugins \ ros-melodic-gazebo-ros-control ros-melodic-cmake-modules \ ros-melodic-smach ros-melodic-smach-ros ros-melodic-grasping-msgs \ ros-melodic-executive-smach ros-melodic-smach-viewer \ ros-melodic-tf2-web-republisher \ ros-melodic-move-base-msgs ros-melodic-fake-localization \ graphviz-dev libgraphviz-dev gv python-scipy liburdfdom-tools \ ros-melodic-ar-track-alvar* \ ros-melodic-map-server ros-melodic-move-base* \ ros-melodic-simple-grasping
这是安装turtlebot3的相关依赖,可以挑着用:
sudo apt install ros-melodic-desktop-full ros-melodic-joy ros-melodic-teleop-twist-joy ros-melodic-teleop-twist-keyboard ros-melodic-laser-proc ros-melodic-rgbd-launch ros-melodic-depthimage-to-laserscan ros-melodic-rosserial-arduino ros-melodic-rosserial-python ros-melodic-rosserial-server ros-melodic-rosserial-client ros-melodic-rosserial-msgs ros-melodic-amcl ros-melodic-map-server ros-melodic-move-base ros-melodic-urdf ros-melodic-xacro ros-melodic-compressed-image-transport ros-melodic-rqt-image-view ros-melodic-gmapping ros-melodic-navigation ros-melodic-interactive-markers ros-melodic-turtlebot3-gazebo
注1:本命令事实上可以在2.4运行,直接把所有的都装完了。
注2:ros-melodic-turtlebot3-gazebo此项在Kinect的安装教程中没有,但是实际也在运行中依赖,需要安装 -
安装ArbotiX。
$ sudo apt-get install ros-melodic-arbotix-*
二、安装rbx1
cd ~/catkin_ws/src
git clone https://github.com/pirobot/rbx1.git
cd rbx1
git checkout indigo-devel
cd ~/catkin_ws
catkin_make
source ~/catkin_ws/devel/setup.bash
rospack profile
如果采用以上的方法安装,是可以编译成功的。编译成功如下,初次编译可能时间比较长,显示也与下面图片不一样,下面的图片只是证明确实是可以编译成功的:
三、测试
-
测试 ARBOTIX SIMULATOR
我们主要使用arbotix_python仿真器来测试代码应用到机器人上面的效果,之前的一堆指令中已经安装过arbotix。打开一个终端,输入如下指令来运行rbx1下面的代码:roslaunch rbx1_bringup fake_turtlebot.launch
如果如上图所示的话,说明是正常安装的,并且能够运行的。 -
在上面1.中打开fake_turtlebot.launch的基础上再新开一个终端来开启rviz,会看到一个模拟机器人
rosrun rviz rviz -d `rospack find rbx1_nav`/sim.rviz
如图:
-
发布话题消息,让机器人动起来
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}}'
新开一个终端,输入上面的消息,可以看到:
分割线:以上内容完全可以正确运行,以下内容是我在其他博客上看到的一些其他额外的准备阶段的软件包,我当时就给下载下来了,但是编译报错。
因为rbx1这本书中目前截至到第五章安装rbx1代码为止,并没有提到下面的两个包,所以目前我没有去解决这两个问题,待以后需要时,在解决吧。
-
安装gmapping(报错,未解决):
cd ~/catkin_ws/src git clone https://github.com/ros-perception/slam_gmapping.git
安装这个之后,在进行编译的时候会报错,提示缺少相关的包,我下载了相关的包,但是还是报错,没办法了。我下载的包是这个:
cd ~/catkin_ws/src/slam_gmapping git clone https://github.com/ros-perception/openslam_gmapping.git
-
安装amcl(报错,未解决):
cd ~/catkin_ws/src git clone https://github.com/ros-planning/navigation.git
安装这个之后,在进行编译的时候会报错,提示缺少相关的包,我下载了相关的包,但是还是报错,没办法了。我下载的包是这个:
cd ~/catkin_ws/src/navigation git clone https://github.com/ros/geometry2.git