ROS进阶教程(六)ROS Turtlebot2驱动安装

283
0
2020年7月24日 14时19分

Turtlebot驱动是运行turtlebot机器人的必备文件,很多同学想要更改一些参数却找不到文件包,那就是安装的方法或者对包的理解不够。

 

二进制安装

sudo apt-get install ros-kinetic-turtlebot ros-kinetic-turtlebot-apps ros-kinetic-turtlebot-interactions ros-kinetic-kobuki-ftdi ros-kinetic-ar-track-alvar-msgs ros-kinetic-turtlebot-simulator
#Kobuki 测试
$ rosrun kobuki_ftdi create_udev_rules
$ roslaunch kobuki_node minimal.launch
$ roslaunch kobuki_keyop keyop.launch

 

其 中 ros-kinetic-rocon-remocon 以 及 ros-kinetic-rocon-qt-libraryros-kinetic-turtlebot-simulator 一般无法二进制安装,故我们采用源码安装。

 

安装编译所需依赖环境
sudo apt-get install pyqt4-dev-tools pyqt5-dev-tools
下载并编译源码
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
git clone https://github.com/robotics-in-concert/rocon_qt_gui.git
git clone https://github.com/turtlebot/turtlebot_simulator.git
cd ..
catkin_make
echo "source ~/catkin_ws/devel/setup.bash" >> ~/.bashrc
source ~/catkin_ws/devel/setup.bash

 

Turtlebot2源码安装

建立工作空间

分别建立三个工作空间 rocon、 kobuki 以及 turtlebot,下载并且编译对应源码。

1.rocon

 

mkdir ~/rocon
cd ~/rocon
wstool init -j12 src https://raw.github.com/robotics-in-concert/rocon/release/kinetic/rocon.rosinstall
source /opt/ros/kinetic/setup.bash
rosdep install --from-paths src -i -y
catkin_make

 

Note:此处的 wstool init -j12 src 中的 -j12 表示以十二线程运行,这取决于你电脑CPU 的线程数,下同

 

2. Kobuki

由于 kobuki 没有直接对应的 ROS kinect 版本的 rosinstall 文件,所以需要先下载 ROS indigo 版本的 rosinstall 文件,再进行修改。

 

##############################################################################
#
# If no debs, overlay on top of the rocon and ecl rosinstallers.
#
##############################################################################

# Kobuki / Yujin stacks

- git: {local-name: yocs_msgs, version: release/0.6-indigo, uri: 'https://github.com/yujinrobot/yocs_msgs.git'}
- git: {local-name: yujin_ocs, version: indigo, uri: 'https://github.com/yujinrobot/yujin_ocs.git'}
- git: {local-name: kobuki_msgs, version: indigo, uri: 'https://github.com/yujinrobot/kobuki_msgs.git'}
- git: {local-name: kobuki_core, version: indigo, uri: 'https://github.com/yujinrobot/kobuki_core.git'}
- git: {local-name: kobuki, version: indigo, uri: 'https://github.com/yujinrobot/kobuki.git'}
- git: {local-name: kobuki_desktop, version: indigo, uri: 'https://github.com/yujinrobot/kobuki_desktop.git'}

#- git: {local-name: capabilities, version: master, uri: 'https://github.com/osrf/capabilities.git'}
#- git: {local-name: std_capabilities, version: master, uri: 'https://github.com/osrf/std_capabilities.git'}

 

Note:修改后保存文件可能会提醒报错,此时继续执行:

 

wstool init src -j12 kobuki.rosinstall
source ~/kobuki/devel/setup.bash
rosdep install --from-paths src -i -y
catkin_make

 

如果执行不通过,可能是修改文件的某处格式出了问题(比如空格、tab、换行等),大家可以参考原文件调整文件格式。
如果无法正常安装,可以根据上述rosinstall文件中的git链接自行逐个拷贝到自己的文件中然后编译。

 

3. turtlebot

由于 turtlebot 也没有直接对应的 ROS kinect 版本的 rosinstall 文件,故需作同样的处理

 

mkdir ~/turtlebot
cd ~/turtlebot
wget https://raw.github.com/yujinrobot/yujin_tools/master/rosinstalls/indigo/turtlebot.rosinstall

 

修改rosinstall文件

 

sudo gedit turtlebot.rosinstall

 

将全部内容替换如下:

 

##############################################################################
#
# If no debs, overlay on top of the kobuki, rocon and ecl rosinstallers.
#
##############################################################################

- git: {local-name: turtlebot_msgs, version: indigo, uri: 'https://github.com/turtlebot/turtlebot_msgs.git'}
- git: {local-name: turtlebot_create, version: indigo, uri: 'https://github.com/turtlebot/turtlebot_create.git'}
- git: {local-name: turtlebot, version: kinetic, uri: 'https://github.com/turtlebot/turtlebot.git'}
- git: {local-name: turtlebot_apps, version: indigo, uri: 'https://github.com/turtlebot/turtlebot_apps.git'}
- git: {local-name: turtlebot_interactions, version: indigo, uri: 'https://github.com/turtlebot/turtlebot_interactions.git'}
- git: {local-name: turtlebot_simulator, version: indigo, uri: 'https://github.com/turtlebot/turtlebot_simulator.git'}
- git: {local-name: turtlebot_create_desktop, version: kinetic, uri: 'https://github.com/turtlebot/turtlebot_create_desktop.git'}

 

修改完后保存文件,继续执行

 

wstool init src -j12 turtlebot.rosinstall
source ~/turtlebot/devel/setup.bash
rosdep install --from-paths src -i -y
catkin_make

 

现在已经完成了 Turtlebot 2 的源码安装,还有最后一步设置环境变量。

 

设置环境变量

echo "source ~/rocon/devel/setup.bash" >> ~/.bashrc
echo "source ~/kobuki/devel/setup.bash" >> ~/.bashrc
echo "source ~/turtlebot/devel/setup.bash" >> ~/.bashrc

 

Note:turtlebot文件可能在环境变量中与catkin_ws文件冲突,比如替换掉另一个环境变量,当你运行某个包的时候会出现下述问题:

 

[rospack] Error:package '...' not found

 

这时候只需要在bashrc文件中调整两个的位置重新编译即可解决。

 

到此处我们就完成了 Ubuntu 16.04 + ROS kinect 环境下的 Turtlebot 2 安装,接下来可以测试安装是否成功。

 

测试Turtlebot

首先将 Tuetlebot 2 打开电源并与笔记本相连,在终端中运行检测命令

 

ls /dev/kobuki
#如果连接正常会显示
/dev/kobuki
#进入三个终端,并依次运行
roscore
roslaunch turtlebot_bringup minimal.launch
roslaunch turtlebot_teleop keyboard_teleop.launch

 

为了方便大家使用ROS,下期将会再更新ROS关于package、Node、Topic、Service和Bag的相关操作,喜欢的话请点赞收藏关注哦,您的支持是博主最大的动力。

 

 

本文转载自CSDN,原文链接:https://blog.csdn.net/qq_33742147/article/details/105662524

发表评论

后才能评论