Using Pico: Difference between revisions

From Control Systems Technology Group
Jump to navigation Jump to search
No edit summary
Line 11: Line 11:
= Setting up your software =
= Setting up your software =


Your software runs on Pico's laptop. Jazz is connected to this laptop through a dedicated wired network. To get your software up and running:
Your software runs on Pico's laptop. Pico is connected to this laptop through a dedicated wired network. To get your software up and running:


* Connect to the RoboEarth network (see the network icon in the upper-right corner).
* Connect to the RoboEarth network (see the network icon in the upper-right corner).
Line 42: Line 42:
# On the laptop, run ''sshpicolaptop''
# On the laptop, run ''sshpicolaptop''
# Run ''pstart''
# Run ''pstart''
# Test whether you have a working connection with Jazz:
# Test whether you have a working connection with Pico:
#* <pre>rostopic list</pre> should give an overview of Jazz' ROS topics
#* <pre>rostopic list</pre> should give an overview of Pico's ROS topics
#* <pre>rostopic echo /odom</pre> should output Jazz' odometry information
#* <pre>rostopic echo /odom</pre> should output Pico's odometry information
# '''Hold the emergency switch, and keep an eye on the robot.'''
# '''Hold the emergency switch, and keep an eye on the robot.'''
# Unplug Jazz from the power supply
# Unplug Pico from the power supply
# Run your software
# Run your software
# '''NB if Jazz is not driving:
# '''NB if Pico is not driving:
## Press and release the emergency button to make sure it's off
## Press and release the emergency button to make sure it's off
## Check your topics: <pre>rostopic echo /cmd_vel</pre> should output the commands you send to Jazz
## Check your topics: <pre>rostopic echo /cmd_vel</pre> should output the commands you send to Pico




Line 63: Line 63:
When you stop testing:
When you stop testing:


# Switch off Jazz (simply use the switch at the back)
# Switch off Pico (simply use the switch at the back)
# Put Jazz back at the table
# Put Pico back at the table
# Plug in the the power supply
# Plug in the the power supply
# Remove your package from the laptop:<pre>cd ~/ros/emc/groups</pre><pre>rm emc<GROUP_NUMBER> -rf</pre>
# Remove your package from the laptop:<pre>cd ~/ros/emc/groups</pre><pre>rm emc<GROUP_NUMBER> -rf</pre>
# Switch off the laptop
# Switch off the laptop
# Lock the test area, and hand the key to one of the students in the lab
# Put Pico back in the robotics test area, lock it, and hand the key to one of the students in the lab

Revision as of 15:14, 3 September 2013

IMPORTANT

Make sure to ALWAYS obey the following rules:

  • If Pico is not connected to the power supply, always hold the emergency switch (Tyro remote) and keep an eye on the robot. If you only have the slightest idea that something may go wrong, press the red button. You can release the emergency switch by turning the red button clockwise.
  • If Pico is not driving around, always plug in the power supply. The batteries only last about 3.5 hours and we need at least 5 test hours per day.
  • Fill in the log book! Make sure you at least write down your name, what you tested and if any problems occured during testing.


You should test on the MSL soccer field. Pico will be in the robotics test area (the room opposite of the MSL socces field). You can get the key by asking one of the students in the robotics lab.

Setting up your software

Your software runs on Pico's laptop. Pico is connected to this laptop through a dedicated wired network. To get your software up and running:

  • Connect to the RoboEarth network (see the network icon in the upper-right corner).
  • Open a terminal, and type sshpicolaptop, to connect to Pico's laptop via SSH.
  • cd to ~/ros/emc/groups
  • Do an svn up. You will be prompted for your group's account name and password.
  • Build your package(s)
    • If you get a cmake error that your paths are incorrect, it might be the case that you also checked in the (auto-generated) build files (i.e., the build folder in the package). Then you should:
      • Build with the --pre-clean flag:
        rosmake --pre-clean
        , and
      • Remove the build folder from the SVN!

Following your software from the DevPc

  • Connect to the RoboEarth network (see the network icon in the upper-right corner).
  • If you use your own visualisation:
    • Open a terminal, and cd to ~/ros/emc/groups
    • Do an svn up. You will be prompted for your group's account name and password.
    • Build your package(s)
  • If you use Rviz:
    • Open a terminal and run rviz

If you do not use the SVN

  • Please start doing so! It is so useful once you are used to it (for managing your project, tracking changes, working on different computers, etc...), and setting up your software on the laptop will be a piece of cake!
  • You will have to transfer your package to the laptop in another way, e.g. using webmail or a USB stick. When you do, make sure to put your package in the ~/ros/emc/groups folder.

Test

  1. Switch on the robot (use the switch on its back). It is ready to use once you see its 'eyes' on the display.
  2. On the laptop, run sshpicolaptop
  3. Run pstart
  4. Test whether you have a working connection with Pico:
    • rostopic list
      should give an overview of Pico's ROS topics
    • rostopic echo /odom
      should output Pico's odometry information
  5. Hold the emergency switch, and keep an eye on the robot.
  6. Unplug Pico from the power supply
  7. Run your software
  8. NB if Pico is not driving:
    1. Press and release the emergency button to make sure it's off
    2. Check your topics:
      rostopic echo /cmd_vel
      should output the commands you send to Pico


To debug and develop:

  • You can use Rviz to visualize the laser data, camera images, etc.
  • Eclipse is installed on the laptop and you are free to use it to improve / debug your package(s).
  • It may be useful to record topics such that you can play and analyse them off-line, so be sure to check out the rosbag command on the ROS wiki. You may encounter problems when replaying the data due to time differences between the recorded topics and current time. To also simulate the ROS time (setting it to the time of recording), set the ROS parameter use_sim_time to true:
    rosparam set use_sim_time true
    Furthermore when playing the data, make sure rosbag outputs the time of recording using the --clock option:
     rosbag play <BAG FILE> --clock

Clean-up

When you stop testing:

  1. Switch off Pico (simply use the switch at the back)
  2. Put Pico back at the table
  3. Plug in the the power supply
  4. Remove your package from the laptop:
    cd ~/ros/emc/groups
    rm emc<GROUP_NUMBER> -rf
  5. Switch off the laptop
  6. Put Pico back in the robotics test area, lock it, and hand the key to one of the students in the lab