Frequently Asked Questions

This page contains answers to some questions that students have already asked (in this case "frequently" means "one or more times"). It should be a good place to start looking for the answers to your questions.

If you have questions that aren't answered here, or if you don't understand the answer given here, please ask your question either in class, in my office hour, or by e-mail.

The questions are organized by topic, as follows.

  1. Kit
  2. Repository
  3. Deliverables
  4. Demo 1
  5. Demo 2
  6. Competition


  1. Can we modify the kit components (e.g., take the camera off that funny base)?
    Not in general. We need to keep all of this equipment in a reusable state. In particular the camera base looks to be attached with springs etc. which I doubt you'll get back together right.
  2. Can we use component ...?
    The following is the list of components that we've been asked about, together with our decision on them:
  3. In what form will the judging software be made available?
    We'll provide a jar file (executable) and one or two sample course files.
  4. When can we expect to get the judging software?
    Here it is. Also here is a simple test client, which you may find useful.
  5. How can we generate our own waypoint images for testing?
    They can be produced in Matlab using createBlockImages.m and blockGeneration.m.
  6. I get an error java.lang.ClassNotFoundException: org.apache.xerces.parsers.SAXParser when I try to load a course map in the Judge software. How do I fix that?
    This indicates that the SAXParser isn't in your classpath. You're looking for files called xercesImpl.jar and xmlParserAPIs.jar or xml-apis.jar, depending on the version. You can get these from Apache Xerces2 Java. The easiest way to use these is to put the jars all in the same directory and pass them all in the classpath argument, as in judge.bat.
  7. The Judge software always answers no in response to queryAt wp even if we're clearly at the waypoint. How do we fix this?
    You need to tell the Judge software that your robot has reached the waypoint by clicking on the pending waypoint (coloured red) on the Judge user interface. The waypoint will turn yellow until the correct to wp message has been received, at which point it will turn green. In the competition the TA will be operating the Judge software and will click the pending waypoint when the robot enters the vicinity of the waypoint.
  8. Will the Judge software be running on the same computer as the team software?
  9. How will we connect to the judge software?
    Via the network. You can use your laptops on the wireless network or one of the lab PCs on the wired net. (I have tested and both of these work.) You should test your set up to ensure that you do not run into some connection problems (e.g., firewall software blocking the port). Also be sure that you have a way to enter the IP address of the judge (i.e., it won't be "localhost").
  10. The wireless is flaky, can we use a crossover cable?
    Ok, you will have the option to connect to the judge using a crossover cable or via the net (we'll have two computers running the Judge software).


  1. Where is the subversion repository?
    It's at svn://, where n is the letter name for your team, as a capital letter. So if you're on outtaControl (Team A), for example, your repository is at svn:// I've set up the repositories to have the recommended trunk and tags directories in the base, so you should check out, e.g., svn:// as your working copy.
  2. What should we do with the files already in the repository?
    The repositories are structured as follows:
    DocPut all your documentation here.
    Doc/DesignContains template design document. Edit this to describe your own design and schedule. See Doc/Design/readMe.htm for some instructions.
    Doc/timesheet.xlsFill in your hours here.
    SrcProgram source code should go here. I'd encourage you to make separate sub-directories for parts that will be built separately, such as PIC code or Java code.
  3. What should we put in the repository?
    You can put anything you like in there, but you should focus on source files, not files that are derrived from other files (e.g., put in .java or .c, but not .class, .jar or .obj, unless you don't have source for them). Subversion works best with text based files.
  4. How do I get the automatic revision #, date stamps etc. to work right?
    These are controlled by the svn property "svn:keywords", which needs to include "Id Date Revision Author". The easiest way to set this is to create a file, say called prop.txt, that contains the following:
    Id Date Author Revision
    use the command line
    svn propset svn:keywords --file prop.txt file
    to set the keywords.


  1. When are the timesheets due?
    Until the repositories are set up, just record your hours. Once they're set up, I will be looking for them by 5:00 pm each Monday.
  2. Do you want "In Progress" or "Final Results" documentation?
    We want the documents to be live design documents. That is, they should describe your design as you currently understand it. Note that a design document is different from a description of the implementation in two ways:
    1. The implementation is what you've actually constructed, whereas the design describes what you plan to construct. The live aspect of this is a recognition that the design will probably change as you progress through the project. Also for components that aren't required in the current increment, it is acceptable for the design to be less specific.
    2. The design should be more abstract (i.e., "higher level") than the implementation. To put it in software terms, a design will describe modules/classes and functions/methods, whereas the implementation is the code itself.
    That said, it is appropriate to discuss the current state of your implementation, and to reflect on how the design has changed since the previous versions.
  3. When is the final documentation due?
    Midnight on Friday Nov. 30. We will take a snapshot of your repository sometime shortly after then.
  4. What do we do with the logbooks?
    You can pass them to either Dr. O'Young or Dr. Peters or submit them to the General Office addressed to one of us.

Demo 1

  1. How close to the wall is the robot expected to achieve?
    There is no explicit requirement for stopping distance from the wall, only the following:
    1. You must move forward from the starting point, turn and move again.
    2. You must report the distance from the starting put to the wall (i.e., not the distance travelled).
  2. How do we report the distance?
    You must output the distance in some human readable form. The most obvious solution is to send it to the PC via the serial port. You do not have to interact with the judge software in Demo 1.
  3. Do we have to take into account turning radii etc.?
    Yes. To be more clear, consider the following figure:
    We will choose the starting point, S. You must report the distances x and y, as indicated. How you measure those is up to you (but your robot must do the measuring). Note however that the motion (i.e., move, turn, move) is also a required part of the demo.
  4. Can we (human operators) interact with the robot during the demo?
    You are permitted to signal your robot to start and inform it that it is done, but no more than that. At the time of issuing each of these signals the robot must not be moving.
  5. Can software on the PC interact with the robot during the demo?
    The software on the PC is considered to be part of your robot system, so it can interact with the physical robot in any way you choose, as long as the human interactions with the software don't go beyond the above.
  6. Can we run the demo with a power tether?
    No. (If you think you need to use a power tether, talk to us.)

Demo 2

  1. Is the judge software involved in demo 2?

Final Competition

  1. What is the starting point for the robot in the competition?
    At the begining of each trial you will be told which waypoint to place your robot in the vicinity of (as defined in the project description). You may place your robot anywhere in that vicinity. You will not be permitted to "tell" the start waypoint information to either your robot or your control software, but the control software will be informed of the start waypoint by the judge software.
  2. Can we put up white backgrounds on the arena walls?

back to 6806 Homepage

Last modified: $Date: 2007-11-29 22:25:55 -0330 (Thu, 29 Nov 2007) $ ($Revision: 259 $) by $Author: dpeters $.