Note: This tutorial assumes that you have completed the previous tutorials: This tutorial assumes you have installed your robot and setup networking for instructions see TurtleBot#installation.
(!) Please ask about problems and questions regarding this tutorial on answers.ros.org. Don't forget to include in your question the link to this page, the versions of your OS & ROS, and also add appropriate tags.

TurtleBot Bringup

Description: How to start the TurtleBot software.

Tutorial Level: BEGINNER

Next Tutorial: TurtleBot Care and Feeding

Prerequisites

This assumes you have followed the instructions for installing software on the turtlebot and your workstation

Bringup

Close the lid of your TurtleBot laptop, place it on the TurtleBot and connect the USB cables. Press the power button of the Create so that the green light turns on. The Power Button is on top of the create on the left, hidden behind the edge of the lowest deck. Now ssh into your TurtleBot computer from your workstation computer (Need more help) .

  • To ssh in to a TurtleBot from a workstation computer:

    • determine the IP_OF_TURTLEBOT by using ifconfig (Need more help)

      To determine a computer's IP address and network interface in linux:

      • ifconfig

      You will see something like:

      • lo        Link encap:Local Loopback  
                  inet addr:127.0.0.1  Mask:255.0.0.0
                  inet6 addr: ::1/128 Scope:Host
                  UP LOOPBACK RUNNING  MTU:16436  Metric:1
                  RX packets:6658055 errors:0 dropped:0 overruns:0 frame:0
                  TX packets:6658055 errors:0 dropped:0 overruns:0 carrier:0
                  collisions:0 txqueuelen:0 
                  RX bytes:587372914 (587.3 MB)  TX bytes:587372914 (587.3 MB)
        
        wlan1     Link encap:Ethernet  HWaddr 48:5d:60:75:58:90  
                  inet addr:10.0.129.17  Bcast:10.0.129.255  Mask:255.255.254.0
                  inet6 addr: fe80::4a5d:60ff:fe75:5890/64 Scope:Link
                  UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
                  RX packets:101983 errors:0 dropped:0 overruns:0 frame:0
                  TX packets:37244 errors:0 dropped:0 overruns:0 carrier:0
                  collisions:0 txqueuelen:1000 
                  RX bytes:49326141 (49.3 MB)  TX bytes:7588044 (7.5 MB)
      • the network interface for the wireless card is wlan1

      • the IP address of the computer is 10.0.129.17


    • use ssh to connect to the TurtleBot

      ssh turtlebot@IP_OF_TURTLEBOT

On Your TurtleBot

Now that you have powered up the Create and ssh-ed into your TurtleBot, you can use a service to start and stop the TurtleBot, when the TurtleBot laptop boots the service will start automatically. Try to stop and start the service now.

Stop the TurtleBot:

  • $ sudo service turtlebot stop

Start the TurtleBot Watch the Video :


  • $ sudo service turtlebot start

    Note: the service will be restarted when a new IP is achieved.

This brings up the basic TurtleBot software. Now you can run the TurtleBot applications in turtlebot_apps.

If you do not have the service installed on your TurtleBot, you can install it:

  • $ roscd turtlebot_bringup/upstart
    $ sudo ./install.bash <WIRELESS_NETWORK_INTERFACE>

Then you can use the service:

  • $ sudo service turtlebot start

(Need more help looking up WIRELESS_NETWORK_INTERFACE)

  • To determine a computer's IP address and network interface in linux:

    • ifconfig

    You will see something like:

    • lo        Link encap:Local Loopback  
                inet addr:127.0.0.1  Mask:255.0.0.0
                inet6 addr: ::1/128 Scope:Host
                UP LOOPBACK RUNNING  MTU:16436  Metric:1
                RX packets:6658055 errors:0 dropped:0 overruns:0 frame:0
                TX packets:6658055 errors:0 dropped:0 overruns:0 carrier:0
                collisions:0 txqueuelen:0 
                RX bytes:587372914 (587.3 MB)  TX bytes:587372914 (587.3 MB)
      
      wlan1     Link encap:Ethernet  HWaddr 48:5d:60:75:58:90  
                inet addr:10.0.129.17  Bcast:10.0.129.255  Mask:255.255.254.0
                inet6 addr: fe80::4a5d:60ff:fe75:5890/64 Scope:Link
                UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
                RX packets:101983 errors:0 dropped:0 overruns:0 frame:0
                TX packets:37244 errors:0 dropped:0 overruns:0 carrier:0
                collisions:0 txqueuelen:1000 
                RX bytes:49326141 (49.3 MB)  TX bytes:7588044 (7.5 MB)
    • the network interface for the wireless card is wlan1

    • the IP address of the computer is 10.0.129.17


OR launch the following:

  • $ roslaunch turtlebot_bringup minimal.launch

(More information to disable the upstart script on your Turtlebot)

  • Disable Upstart Script

    After you install the Turtlebot image, the Turtlebot node will start up automatically by default. To disable this feature, simply remove the turtlebot.conf file in /etc/init. A copy of this file is stored in the turtlebot_bringup package if you need to restore it.

On Your Workstation

ROS Install

This assumes you have installed ROS on your workstation, as well as the ros-<distro>-turtlebot-desktop variant. If not, see workstation install instructions

Connectivity

This assumes that you have set ROS_MASTER_URI and ROS_HOSTNAME. If not, look at TurtleBot network setup instructions

Dashboard

To see what is happening on the TurtleBot please keep the turtlebot_dashboard up as much as possible when running the robot.

$ rosrun turtlebot_dashboard turtlebot_dashboard&

You should see the TurtleBot dashboard appear.

  • turtlebot_dashboard/turtlebot_dashboard.png

If buttons remain grey, your ROS_MASTER_URI or ROS_IP are not set, see above.

Notes

  • After charging the TurtleBot restarting the openni_camera nodelet is required. (roslaunch openni_camera openni_node.launch) Ticketed to be fixed. If a seperate roscore is started, you can Ctrl-C robot.launch and relaunch it with all other systems running.

  • The use of GNU screen is highly recommended. Also the byobu wrapper makes for a slightly easier user interface.

Now that your TurtleBot is up and running let's learn how to care for the TurtleBot.

Wiki: turtlebot_bringup/Tutorials/pre_groovy/TurtleBot Bringup (last edited 2013-01-29 09:45:58 by DanielStonier)