turtlebot学习记录for ros

具体参考:http://wiki.ros.org/Robots/TurtleBot

1. 安装:

    sudo apt-get install ros-hydro-turtlebot ros-hydro-turtlebot-apps ros-    hydro-turtlebot-viz ros-hydro-turtlebot-simulator ros-hydro-kobuki-ftdi> . /opt/ros/hydro/setup.bash
      rosrun kobuki_ftdi create_udev_rules
环境配置: echo "source /opt/ros/hydro/setup.bash" >> ~/.bashrc

注:        wstool provides commands to manage several local SCM repositories
    (supports git, mercurial, subversion, bazaar) based on a single
     workspace definition file (.rosinstall).
        wstool replaces the rosws tool for catkin workspaces.
        wstool is not a rewrite. It is intended to reuse most of the rosws
     tool     code and thus also produce .rosinstall files that are compatible      with     those used by rosws.

创建工作空间
    > mkdir ~/turtlebot
    > cd ~/turtlebot
    > wstool init src https://raw.github.com/turtlebot/turtlebot/hydro/turtlebot.rosinstall -j8
    > source /opt/ros/hydro/setup.bash
    > rosdep install --from-paths src -i -y
    > catkin_make

    kobuki :
    source ~/turtlebot/devel/setup.bash
    > rosrun kobuki_ftdi create_udev_rules

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

Network Time Protocol
Install Chrony
    sudo apt-get install chrony

manually sync NTP
    sudo ntpdate ntp.ubuntu.com

网络配置:(无工作站就可不用设)


2. bringup

Deb Bringup Instructions
    > source /opt/ros/hydro/setup.bash
    # Without the app manager/android capabilities
    > roslaunch turtlebot_bringup minimal.launch
    # Launching with the app manager
    > roslaunch turtlebot_bringup minimal_with_appmanager.launch
    # For dual master app manager/android connectivity
    > rocon_launch turtlebot_bringup bringup.concert

Create dashboard
    rqt -s kobuki_dashboard
    > roslaunch turtlebot_dashboard turtlebot_dashboard.launch

3. 维护与保养  (dashboard)
Power Management

4.3D Visualisation(显示)
    roslaunch turtlebot_bringup minimal.launch
    roslaunch turtlebot_bringup 3dsensor.launch
    roslaunch turtlebot_rviz_launchers view_robot.launch
选中: DepthCloud Registered DepthCloud Image PointCloud Registered PointCloud



5. 键盘控制
roslaunch turtlebot_teleop keyboard_teleop.launch

6 交互式标记控制 Interactive Markers Teleop
安装:
    sudo apt-get install ros-hydro-turtlebot-interactive-markers
服务:turtlebot_marker_server:
    roslaunch turtlebot_interactive_markers interactive_markers.launch
rviz:
    roslaunch turtlebot_rviz_launchers view_robot.launch
控制方法:
    勾中"Interactive Makers" ,选中面板工具顶部 "Interact"

7.校正:(    http://wiki.ros.org/turtlebot_calibration/Tutorials/Calibrate%20Odometry%20and%20Gyro    )
    roslaunch turtlebot_calibration calibrate.launch
(First position TurtleBot at the center of a long straight wall (at least 2 meters long)rosrun rqt_reconfigure rqt_reconfigure , facing towards the wall, at about 30 cm away from the wall. )
 
 set the parameters :
rosrun rqt_reconfigure rqt_reconfigure


高级应用:导航
8  使用gmapping建图:SLAM Map Building with TurtleBot
8.1导航功能介绍 Setup the Navigation Stack for TurtleBot
    网址:http://wiki.ros.org/turtlebot_navigation/Tutorials/Setup%20the%20Navigation%20Stack%20for%20TurtleBot
    Key files: turtlebot_navigation package
    Move base:Planner
         Change speed limits
         Goal tolerance
         Cost computing biases
    Amcl (localization)
    Gmapping (map building)

8.2 Launch the gmapping app
    Bring up the robot
        roslaunch turtlebot_bringup minimal.launch
    Run the gmapping demo app
        roslaunch turtlebot_navigation gmapping_demo.launch
    Launch rviz:
    # Groovy or later
        roslaunch turtlebot_rviz_launchers view_navigation.launch
    Drive the robot and Save the map  
        rosrun map_server map_saver -f /tmp/my_map


9 自动导航    (http://wiki.ros.org/turtlebot_navigation)
Autonomous Navigation of a Known Map with TurtleBot
This tutorial describes how to use the TurtleBot with a previously known map.
启动;
    roslaunch turtlebot_bringup minimal.launch
运行导航DEMO并加载地图
    roslaunch turtlebot_navigation amcl_demo.launch map_file:=/tmp/my_map.yaml
RVIZ显示
    # Groovy or later
    roslaunch turtlebot_rviz_launchers view_navigation.launch --screen

9.1导航操作:
1. 定位turtlebot(初始化): 2D Pose Estimate
2. 远程操作:可以与导航同时进行。远程控制优先级高于导航。
3. 发送目标:2D Nav Goal
    注:如果要在导航目标到达前让他停止,发送短一点到目标。


10 跟随    (http://wiki.ros.org/turtlebot_follower)
 寻找窗口前方的目标,寻找质心并保持相应距离跟随。
10.1 跟随参数到更改
 # groovy or later
rosrun rqt_reconfigure rqt_reconfigure
Select camera/follower on the reconfigure gui
Play with the parameters using the sliders; you will see the TurtleBot's following behavior change as you move the sliders.

11 全景演示  The TurtleBot Panorama Demo
    (http://wiki.ros.org/turtlebot_panorama)
Turtlebot-Android Pairing
    (http://wiki.ros.org/turtlebot_android/Tutorials/hydro/Turtlebot-Android%20Pairing)
turtlebot_android(http://wiki.ros.org/turtlebot_android)





你可能感兴趣的:(ROS)