精华内容
下载资源
问答
  • Turtlebot2-On-Melodic 使您的在ROS Melodic(Ubuntu 18.04)上运行。 这个项目引用了。 多亏了和的工作。 先决条件 Ubuntu 18上的ROS Melodic Turtlebot2 建立Turtlebot2工作区 首先, cd到您的catkin工作区。 ...
  • turtlebot2技术参数

    2018-08-02 14:39:51
    买来的turtlebot没说明书,国内代理商简介也写的很简单,网上找了找turtlebot的相关硬件参数,分享一下
  • Ubuntu 16.04 Turtlebot2 安装(1).txt
  • DoubleDQN_turtlebot2 基于ROS的TurtleBot 2机器人的双重DQN实现 这是Turtlebot 2机器人上Double DQN算法的实现。 Python解释器:Python 3.6 ROS版本:ROS Melodic凉亭:凉亭9您还需要安装openai_ros ROS软件包( ...
  • 导航 Turtlebot2的导航 目的: 该程序包使我们的比赛机器人可以根据预先生成的地图导航室内空间。 总体配置基于此设置
  • #资源达人分享计划#
  • Turtlebot2Turtlebot2+kinect2环境配置 上一篇博文我们已经介绍了如何在ubuntu18.04+melodic下配置turtlebot2的kobuki底盘,这一篇我们将介绍在上面的基础上配置kinect2。 1.安装kinect2驱动 #下载libfreenect2...

    【Turtlebot2】Turtlebot2+kinect2环境配置

    上一篇博文我们已经介绍了如何在ubuntu18.04+melodic下配置turtlebot2的kobuki底盘,这一篇我们将介绍在上面的基础上配置kinect2。

    1.安装kinect2驱动

    #下载libfreenect2源代码
    git clone https://github.com/OpenKinect/libfreenect2.git     
    
    #安装cmake编译器和必要的依赖
    sudo apt-get install build-essential cmake pkg-config libturbojpeg libjpeg-turbo8-dev mesa-common-dev freeglut3-dev libxrandr-dev libxi-dev   
    sudo apt-get install libglfw3-dev
    sudo apt-get install libopenni2-dev
    
    #安装最新版libusb-dev
    sudo apt-get install libusb-dev 
    
    #缺少这个依赖下面会报错[来自github解答][(https://github.com/OpenKinect/libfreenect2/issues/984)](https://github.com/OpenKinect/libfreenect2/issues/984)   
    sudo apt-get install libturbojpeg0-dev
    
    #开始编译过程
    cd libfreenect2
    mkdir build && cd build
    cmake .. -DCMAKE_INSTALL_PREFIX=$HOME/freenect2    #地址可以修改,但是后面对应也有些需要修改。
    make
    sudo make install
    
    #设定udev rules:(填好自己libfreenect2的路径)
    sudo cp libfreenect2/platform/linux/udev/90-kinect2.rules /etc/udev/rules.d/
    

    2.下载iai_kinect2并将iai_kinect2放入turtlebot_ws/src中

    git clone https://github.com/code-iai/iai_kinect2.git     #下载ros和kinect2的接口代码
    cd iai_kinect2
    rosdep install -r --from-paths . 
    cd ~/turtlebot_ws
    catkin_make -DCMAKE_BUILD_TYPE="Release"   //出现100%就是成功了
    #添加环境变量
    echo "source ~/turtlebot_ws/devel/setup.bash" >> ~/.bashrc
    source ~/.bashrc
    

    若在运行rosdep install -r --from-paths 报错,则参考https://answers.ros.org/question/237451/run-rosdep-install-r-from-paths-error-when-i-install-iai_kinect2/,将rosdep install -r --from-paths改为rosdep install --from-paths ~/turtlebot_ws/src/iai_kinect2 --ignore-src -r

    3.安装OpenNI2

    sudo apt-get install libopenni2-dev
    

    4.测试
    按照以上步骤安装好之后,需要将Kinect2重新拔插,之后再运行测试

    #测试
    roslaunch kinect2_bridge kinect2_bridge.launch    #运行kinect2自带的launch
    rosrun kinect2_viewer kinect2_viewer              #查看运行结果。
    
    展开全文
  • Turtlebot2+Ubuntu18.04+melodic环境配置 由于自己的电脑已经安装Ubuntu18.04+melodic,所以为了省事想在不重新安装系统的情况下安装配置Turtlebot2的环境,但是ros官方并为提供turtlebot2的melodic版本,所以在参考...

    Turtlebot2+Ubuntu18.04+melodic环境配置

    由于自己的电脑已经安装Ubuntu18.04+melodic,所以为了省事想在不重新安装系统的情况下安装配置Turtlebot2的环境,但是ros官方并为提供turtlebot2的melodic版本,所以在参考了https://www.ncnynl.com/archives/201903/2884.html完成了底盘kobuki的环境配置。

    安装依赖:

    $ sudo apt-get install ros-melodic-kobuki-*
    $ sudo apt-get install ros-melodic-ecl-streams
    $ sudo apt-get install libusb-dev
    $ sudo apt-get install libspnav-dev
    $ sudo apt-get install ros-melodic-joystick-drivers
    $ sudo apt-get install bluetooth
    $ sudo apt-get install libbluetooth-dev
    $ sudo apt-get install libcwiid-dev
    

    新建工作空间,准备相关包:

    (这里如果下载过慢,可以使用gitee下载,gitee的使用方式可以自行百度)

    $ mkdir -p ~/turtlebot_ws/src 
    $ cd ~/turtlebot_ws/src 
    
    $ git clone https://github.com/turtlebot/turtlebot_simulator
    $ git clone https://github.com/turtlebot/turtlebot.git
    $ git clone https://github.com/turtlebot/turtlebot_apps.git
    $ git clone https://github.com/udacity/robot_pose_ekf
    $ git clone https://github.com/ros-perception/depthimage_to_laserscan.git 
    $ git clone https://github.com/yujinrobot/kobuki_msgs.git
    $ git clone https://github.com/yujinrobot/kobuki_desktop.git
    $ cd kobuki_desktop/
    $ rm -r kobuki_qtestsuite
    $ git clone https://github.com/toeklk/orocos-bayesian-filtering.git
    $ git clone https://github.com/turtlebot/turtlebot_msgs.git
    $ git clone https://github.com/ros-drivers/joystick_drivers.git
    

    复制kobuki和yujin_ocs依赖库到turtlebot_ws/src工作空间下(也可直接手动复制)

    $ mkdir -p ~/repos/
    $ cd ~/repos/
    $ git clone https://github.com/yujinrobot/kobuki.git
    $ cp -r kobuki/* ~/turtlebot_ws/src/
    $ git clone https://github.com/yujinrobot/yujin_ocs.git
    $ cp -r yujin_ocs/yocs_cmd_vel_mux/  yujin_ocs/yocs_controllers  yujin_ocs/yocs_velocity_smoother ~/turtlebot_ws/src/
    

    编译工作空间

    $ cd ~/turtlebot_ws
    $ catkin_make
    

    添加工作空间到bashrc文件

    echo "source ~/turtlebot_ws/devel/setup.bash" >> ~/.bashrc
    

    启用环境变量

    source ~/.bashrc 
    

    测试:

    roslaunch turtlebot_bringup minimal.launch
    

    总结:

    这里的配置仅仅是配置了底盘的启动环境,仅仅能实现运动的功能,要实现复杂功能还要进行相应传感器的配置。本人的turtlebot2使用的是kinect2,所以下一节将介绍如何配置kinect2。

    展开全文
  • turtlebot2的话题3. turtlebot2运动控制3.1 键盘控制运动3.2 代码控制运动4. turtlebot2数据读取4.1 里程计数据4.2 IMU数据参考 1. 启动turtlebot2 roslaunch turtlebot_bringup minimal.launch --screen 参数-...

    1. 运行环境

    • Ubuntu 16.04
    • ROS Kinetic

    2. 启动turtlebot2

    roslaunch turtlebot_bringup minimal.launch --screen
    

    参数--screen可以将启动过程的详细信息输出到终端,可以不加。

    3. turtlebot2的节点和话题

    启动turtlebot2后查询话题

    $ rostopic list
    

    可以看到

    /cmd_vel_mux/active
    /cmd_vel_mux/input/navi
    /cmd_vel_mux/input/safety_controller
    /cmd_vel_mux/input/switch
    /cmd_vel_mux/input/teleop
    /cmd_vel_mux/parameter_descriptions
    /cmd_vel_mux/parameter_updates
    /diagnostics
    /diagnostics_agg
    /diagnostics_toplevel_state
    /joint_states
    /laptop_charge
    /mobile_base/commands/controller_info
    /mobile_base/commands/digital_output
    /mobile_base/commands/external_power
    /mobile_base/commands/led1
    /mobile_base/commands/led2
    /mobile_base/commands/motor_power
    /mobile_base/commands/reset_odometry
    /mobile_base/commands/sound
    /mobile_base/commands/velocity
    /mobile_base/controller_info
    /mobile_base/debug/raw_control_command
    /mobile_base/debug/raw_data_command
    /mobile_base/debug/raw_data_stream
    /mobile_base/events/bumper
    /mobile_base/events/button
    /mobile_base/events/cliff
    /mobile_base/events/digital_input
    /mobile_base/events/power_system
    /mobile_base/events/robot_state
    /mobile_base/events/wheel_drop
    /mobile_base/sensors/bumper_pointcloud
    /mobile_base/sensors/core
    /mobile_base/sensors/dock_ir
    /mobile_base/sensors/imu_data
    /mobile_base/sensors/imu_data_raw
    /mobile_base/version_info
    /mobile_base_nodelet_manager/bond
    /odom
    

    博文turtlebot的mobile_base节点解析对这些节点有具体的说明。

    运行以下命令:

    $ rosrun rqt_graph rqt_graph
    

    在rqt_graph界面进行以下操作:

    1. 选择显示所有活跃的节点和话题:Nodes/Topics(active)
    2. Namespaces改为0
    3. 取消勾选Dead sinks和Leaf topics
    4. 刷新页面

    如下所示:

    在这里插入图片描述
    可以看到:
    在这里插入图片描述
    可知turtlebot2(或者说底盘Kobuki)的产生的主要节点是/mobile_base_nodelet_manager

    本文仅关心以下话题:

    话题名message类型说明类型
    /mobile_base/commands/velocitygeometry_msgs::Twist设置预期速度,控制机器人移动订阅
    /odomnav_msgs::Odometry里程计信息发布
    /mobile_base/sensors/imu_datasensor_msgs::ImuIMU信息发布

    4. turtlebot2运动控制

    4.1 键盘控制运动

    $ roslaunch turtlebot_teleop keyboard_teleop.launch
    

    在这里插入图片描述

    4.2 代码控制运动

    #include <ros/ros.h>
    #include <geometry_msgs/Twist.h>
    int main(int argc, char** argv){
      ros::init(argc, argv, "move_turtle_goforward");
      ros::NodeHandle node;
      ros::Publisher cmdVelPub = node.advertise<geometry_msgs::Twist>("/mobile_base/commands/velocity", 1);	
      ros::Rate rate(10);
      geometry_msgs::Twist speed; 
      while (ros::ok()){
        speed.linear.x = 0.1; 
        speed.angular.z = 0.1; 
        cmdVelPub.publish(speed);
        rate.sleep();
      }
      return 0;
    }
    

    geometry_msgs::Twist的结构如下,由三维线速度和三维角速度构成。

    Vector3  linear
    Vector3  angular
    

    turtlebot2的坐标系为x轴指向前方,y轴指向左方,z轴指向上方,坐标系原点位于机器人中心在地面的投影,因此z坐标始终固定为0。

    地面机器人只能前进后退,不能上升下降,也不能左右平移,因此只需要设置线速度的x分量;只能绕z轴旋转,不能俯仰和翻滚,因此只需要设置角速度的z分量,也就是偏航角yaw。

    线速度和角速度的单位分别为m/s和rad/s。

    5. turtlebot2数据读取

    5.1 里程计数据

    turtlebot2的里程信息通过/odom话题发布,消息类型为nav_msgs::Odometry,对其结构展开如下:

    - nav_msgs::Odometry
    	-- Header header
    		--- uint32 seq
    		--- time stamp
    		--- string frame_id
    	-- string child_frame_id
    	-- geometry_msgs/PoseWithCovariance pose
    		--- geometry_msgs/Pose pose
    			---- geometry_msgs/Point position
    				----- float64 x
    				----- float64 y
    				----- float64 z
    			---- geometry_msgs/Quaternion orientation
    				----- float64 x
    				----- float64 y
    				----- float64 z
    				----- float64 w
    		--- float64[36] covariance
    	-- geometry_msgs/TwistWithCovariance twist
    		--- geometry_msgs/Twist twist
    			---- geometry_msgs/Vector3 linear
    				----- float64 x
    				----- float64 y
    				----- float64 z
    			---- geometry_msgs/Vector3 angular
    				----- float64 x
    				----- float64 y
    				----- float64 z
    		--- float64[36] covariance
    

    所以里程计数据主要包括

    • 时间戳
    • 位姿(位置和姿态)
    • 速度(线速度和角速度)
    • 协方差矩阵(位姿协方差和速度协方差)
    #include <ros/ros.h>
    #include <geometry_msgs/Twist.h>
    #include <geometry_msgs/Pose.h>
    #include <nav_msgs/Odometry.h>
    void odomCallBack(const nav_msgs::Odometry::ConstPtr& msg){
    	/* 时间戳 */
    	double timestamp = msg->header.seq;
    	/* 平移 */
    	int pos_x = msg->pose.pose.position.x;
    	int pos_y = msg->pose.pose.position.y;
    	int pos_z = msg->pose.pose.position.z;
    	/* 旋转(四元数形式) */
    	int rot_x = msg->pose.pose.orientation.x;
    	int rot_y = msg->pose.pose.orientation.y;
    	int rot_z = msg->pose.pose.orientation.z;
    	int rot_w = msg->pose.pose.orientation.w;
    	/* 速度 */
    	float linear = msg->twist.twist.linear.x;
    	float angular = msg->twist.twist.angular.z;
    	ROS_INFO("Seq: [%d]", timestamp);
    	ROS_INFO("Position-> x: [%f], y: [%f], z: [%f]", pos_x, pos_x, pos_z);
    	ROS_INFO("Orientation-> x: [%f], y: [%f], z: [%f], w: [%f]", rot_x, rot_y, rot_z, rot_w);
    	ROS_INFO("Vel-> Linear: [%f], Angular: [%f]",linear, angular);
    }
    int main(int argc, char** argv){
    	ros::init(argc, argv, "read_odom_data");
    	ros::NodeHandle node;
    	ros::Subscriber sub = node.subscribe("/odom", 1000, odomCallBack);
    	ros::spin();
    	return 0;
    }
    

    5.2 IMU数据

    turtlebot2的IMU信息通过/mobile_base/sensors/imu_data话题发布,消息类型为sensor_msgs/Imu,对其结构展开如下:

    - sensor_msgs/Imu
    	-- std_msgs/Header header
    		--- uint32 seq
    		--- time stamp
    		--- string frame_id
    	-- geometry_msgs/Quaternion orientation
    		--- float64 x
    		--- float64 y
    		--- float64 z
    		--- float64 w
    	-- float64[9] orientation_covariance
    	-- geometry_msgs/Vector3 angular_velocity
    		--- float64 x
    		--- float64 y
    		--- float64 z
    	-- float64[9] angular_velocity_covariance
    	-- geometry_msgs/Vector3 linear_acceleration
    		--- float64 x
    		--- float64 y
    		--- float64 z
    	-- float64[9] linear_acceleration_covariance
    

    6. turtlebot2仿真

    本节参考:在gazebo中运行turtlebot机器人模拟gmapping的slam过程

    实现目标:使用gazebo提供turtlebot2机器人以及周围环境的仿真模型,通过键盘控制机器人移动,使用gmapping建立栅格地图,在rviz中显示地图。

    6.1 仿真环境准备

    (1)安装gazebo相关组件

    $ sudo apt-get install ros-kinetic-gazebo-ros-pkgs ros-kinetic-gazebo-ros-control
    

    (2)安装turtlebot相关包:

    $ sudo apt-get install ros-kinetic-turtlebot-*
    

    6.2 开始仿真

    (1)设置环境模型的路径

    $ export TURTLEBOT_GAZEBO_WORLD_FILE=/opt/ros/kinetic/share/turtlebot_gazebo/worlds/playground.world
    

    如果不执行这一步,在启动turtlebot_gazebo时会提示以下错误信息:

    Invalid tag: environment variable ‘TURTLEBOT_GAZEBO_WORLD_FILE’ is not set.
    Arg xml is The traceback for the exception was written to the log file

    (2) 启动Gazebo并加载机器人和环境模型

    $ roslaunch turtlebot_gazebo turtlebot_world.launch
    

    在这里插入图片描述
    (3)启动键盘遥控

    $ roslaunch turtlebot_teleop keyboard_teleop.launch
    

    在这里插入图片描述(4)使用gmapping进行建图

    $ roslaunch turtlebot_gazebo gmapping_demo.launch
    

    (5)启动rviz展示建图过程

    $ roslaunch turtlebot_rviz_launchers view_navigation.launch
    

    在这里插入图片描述

    7. 其他记录

    数据发布频率

    从turtlebot2的硬件参数可以看出/odomimu_data的数据发布频率应该是50Hz:
    在这里插入图片描述通过rostopic命令也可以确定

    $ rostopic hz /odom
    $ rostopic hz /mobile_base/sensors/imu_data
    

    补充:kobuki获取传感器数据是通过时间的方式进行数据实时获取的,可参考:kobuki_driver:Sigslots

    数据延迟

    所谓数据延迟,是指数据产生和到达之间延迟

    $ rostopic delay /odom
    $ rostopic delay /mobile_base/sensors/imu_data
    

    轮子里程计和IMU的数据延迟区别很大,/odom的延迟高达18ms,而imu_data的延迟只有1ms,相差18倍。

    为什么有这种现象?

    从数据结构看,/odom用了37个float64,imu_data用了85个float64,也就差了2.3倍,所以不完全是因为数据量过大引起。通过查看带宽也可以验证:

    $ rostopic bw /odom
    $ rostopic bw /mobile_base/sensors/imu_data
    

    /odomimu_data的带宽分别大约是36KB/s和16KB/s,2.25倍。

    协方差

    位姿协方差:
    ( 0.1 0 0 0 0 0 0 0.1 0 0 0 0 0 0 1 0 10 0 0 0 0 0 0 1 0 10 0 0 0 0 0 0 1 0 10 0 0 0 0 0 0 0.5 ) \begin{pmatrix} 0.1 & 0 & 0 & 0 & 0 & 0\\ 0 & 0.1 & 0 & 0 & 0 & 0\\ 0 & 0 & 10^{10} & 0 & 0 & 0\\ 0 & 0 & 0 & 10^{10} & 0 & 0\\ 0 & 0 & 0 & 0 & 10^{10} & 0\\ 0 & 0 & 0 & 0 & 0 & 0.5\\ \end{pmatrix} 0.10000000.10000001010000000101000000010100000000.5

    速度协方差:
    ( 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ) \begin{pmatrix} 0 & 0 & 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0 & 0 & 0\\ 0 & 0 & 0 & 0 & 0 & 0\\ \end{pmatrix} 000000000000000000000000000000000000

    8. 参考

    [1] turtlebot的mobile_base节点解析
    [2] 简单的代码让turtlebot动起来 (使用kobuki底座)直行与旋转
    [3] 简单的代码让turtlebot动起来II(使用kobuki底座)走三角形
    [4] geometry_msgs/Twist Message
    [5] nav_msgs/Odometry Message
    [6] A C++ code to listen odometry messages from a Pioneer P3At robot using ROS.
    [7] 在gazebo中运行turtlebot机器人模拟gmapping的slam过程
    [8] kobuki doc

    展开全文
  • ROS Turtlebot2驱动安装

    2020-04-21 17:36:27
    ROS及SLAM进阶教程(六)ROS Turtlebot2驱动安装二进制安装Turtlebot2源码安装建立工作空间设置环境变量测试Turtlebot Turtlebot驱动是运行turtlebot机器人的必备文件,很多同学想要更改一些参数却找不到文件包,那...

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


    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 文件,再进行修改。

    mkdir ~/kobuki
    cd ~/kobuki
    wget https://raw.github.com/yujinrobot/yujin_tools/master/rosinstalls/indigo/kobuki.rosinstall
    # 修改 rosinstall 文件
    sudo gedit kobuki.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的相关操作,喜欢的话请点赞收藏关注哦,您的支持是博主最大的动力。

    博主有两年多ROS的使用经验,目前仍在不停研究中。本系列ROS及SLAM进阶教程将涵盖ROS的进阶功能使用、机器人SLAM及导航的设计及研究等领域,持续不断更新中。如果大家有相关问题或发现作者漏洞欢迎私戳,同时欢迎关注收藏。
    同时欢迎关注博主Git:
    https://github.com/redglassli

    展开全文
  • 2)打开rviz,加入机器人模型、点云和雷达信息。rviz中的白线为雷达信息。(3)随着机器人的移动,点云信息和雷达信息也随之更新。SLAM建图(1)打开建图的仿真环境,初始位置如下图所示(2)运行teleop控制节点,...
  • 准备工作 :已经建好图并保存 需要运行的几个launch文件 ...2、自主行驶的launch文件 $ roslaunch turtlebot_navigation amcl_demo.launch 3、在rviz观察tb在地图上的移动的launch文件 $ ro...
  • ubuntu 16.04 ROS kinetic安装turtlebot2

    千次阅读 2018-10-26 17:02:15
    ubuntu 16.04 ROS kinetic安装turtlebot 2 ubuntu 16.04对应的ROS版本为Kinetic,且Kinetic对应turtlebot3 ...但是笔记本上安装的是Ubuntu 16.04和Kinetic,实验室的平台是turtlebot2,所以这有些对应不上,不过...
  • Turtlebot2 + RplidarA2(一)Gmapping手动建图实验准备1.安装Turtlebot2底盘驱动1.1安装对应版本的底盘驱动1.2安装turbot功能包集1.3安装turtlebot_apps功能包集参考文献 实验准备 根据课程要求,本实验涉及的设备...
  • Turtlebot2激光雷达(Rplidar)gmapping构建地图测试环境ubuntu16.04 + kinect 已安装Turtlebot包,具体安装:deb包安装 | 源码安装 依赖包: Turtlebot应用包,https://github.com/ncnynl/turtlebot_apps.git 激光...
  • roslaunch turtlebot_teleop xbox360_teleop.launch 然后压住手柄上的 LB 按钮,然后再使用手柄左上角的摇杆,就可以控制机器人的底座移动了 如果希望更改手柄控制turtlebot2底盘的速度(参考内容),则修改下面这个...
  • Turtlebot2 导航过程中切换地图 在实验中过程中发现切换地图有两种方法,第一种是直接运行rosrun map_server map_server target_map.yaml,这样就可以直接切换到想要的地图。第二种方法是修改map_server的主程序,即...
  • 初始化工作空间接下来我们需要创建一些文件夹,运行下面的命令:$ mkdir -p ~/turtlebot_ws/src 12NOTE: catkin_ws是工作空间的名字,当然你可以随意指定;src是存放功能包的地方,该名称不能自定义,必须是src;-p...
  • 目标 在turtlebot2上添加Hokuyo激光雷达传感器,使用激光雷达调用gmapping进行建图。配置情况 电脑使用Ubuntu 14.04版本,ROS为 Indigo,激光雷达为Hokuyo(型号UST-10LX,网口型接口) PS: 如果ROS上没配置好...
  • turtlebot 2入门(ubuntu 16.04+ROS Kinetic)

    千次阅读 2019-04-27 09:38:08
    本文用来记录在学习使用turtlebot 2的学习经历以及在学习过程中所遇到的问题,仅供大家参考。 文章目录1. 硬件准备2. 测试turtle2.1 准备工作:安装Turtle包2.2 实机测试:Turtlebot 2测试2.2.1 检查别名:2.2.2 ...
  • Ubuntu16.04+Turtlebot2安装

    2021-03-17 09:21:23
    在装turtlebot之前,需要确保已经安装上了ROS,安装ROS详见Ubuntu16.04系统下ROS的安装 去年秋季学期装上了turtlebot,但是今年由于一系列的问题始终不能按官方的教程正常安装,所以尝试了许久终于找到一种比较合适...
  • 初探Turtlebot2

    千次阅读 2019-03-24 14:09:26
    1. kobuki ros驱动安装 1)硬件连接示意图,硬件连接接口都有防误插,...2)ROS为kinetic版本,打开终端,运行如下命令: (也可以下载编码进行编译) sudo apt-get update sudo apt-get install ros-kinetic-...
  • 我这边直接安装的是turtlebot版本,本质上与单纯的cartographer版本的区别就是多了一个turtlebot的依赖包。前面编译步骤没有区别。 第一步:安装相关依赖包 sudo apt-get update sudo apt-get install -y ...
  • ROS套件-Turtlebot2.pdf

    2021-07-31 15:18:56
    ROS套件-Turtlebot2.pdf
  • Ubuntu 16.04 + ROS kinect 环境下配置安装Turtlebot 2,包含四个部分,一步步完成Turtlebot 2的安装与测试。
  • 环境:ubuntu16.04、turtlebot2、F4pro、ros kinetic 分两部分 一、运行激光雷达(简单的来说就是使激光雷达旋转起来) 二、运行建图的文件(能在rviz上显示图像) 需要下载的东西: 1、激光雷达的ROS驱动包...
  • turtlebot2的rviz问题

    2021-10-09 11:52:21
    RLException: [view_robot.launch] is neither a launch file in package [turtlebot_rviz_launchers] nor is [turtlebot_rviz_launchers] a launch file name The traceback for the exception was written to the ...
  • 仿真机器人:turtlebot 前期准备: 1、安装完整版的ROS。 kinetic版的ROS安装完后自带Gazebo7.0,注意,不同版本的ROS推荐使用不同的gazebo,在kinetic版本的ROS下,推荐使用Gazebo7.x,建议安装与自己ROS版本对应的...
  • ubuntu18.04+ROS版本melodic安装turtlebot2过程及问题记录安装步骤1. 安装ubuntu18.04+ROS2. 安装turtlebot2(1)安装依赖(2)创建工作空间准备下载相关包(3)复制kobuki和yujin_ocs依赖库到turtlebot_ws/src工作...
  • Turtlebot2小车机器人驱动包安装、编译和运行问题合集一、Turtlebot2驱动安装二、在Turtlebot2工作空间catkin_make编译时三、在turtlebot2工作空间路径下终端输入roslaunch时四、在roslaunch turtlebot_navigation ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,954
精华内容 2,381
关键字:

turtlebot2