Get started

This first week, you need to make sure you learn the basics. This includes Git (for code management) and ROS (a framework for robot software).

  1. For ROS/Linux, use Ubuntu 16.04 LTS with ROS kinetic. These tutorials are a good way of becoming familiar with ROS. In particular, focus on 1.1-1.17. Make sure that you understand the following concepts after you finish the tutorial:

    node – a script which is communicating with ROS

    topic – the name of a channel that messages are published to

    msg – a unit of information that is published on a topic

    srv – a service for sending specific commands

    param – parameters that you can set and load to use in your scripts

    You should also be able to write subscribers and publishers (as a part of a node) as well as Launch files (for launching multiple nodes).
    I suggest that you as a group start thinking about this project in the terms above - what nodes do you imagine that you have to create, what services should be implemented, and for what can you use parameters? Some things will be fixed but the overall architecture is up to you.

  2. For Git, a good reference can be found here in particular, the first three chapters are interesting for what you will do in this course. Basically, after the tutorial you should be able to

    • Pull (fetch+merge) a remote repository. Basically downloading the latest changes that your coworkers have done.
    • Edit the code
    • Push changes to the repository - that is update the remote so that your coworkers can access the code as well. And possibly also create and merge branches.