New to Team CajunBot?

From CajunBot Wiki

(Redirected from I am new to Team CajunBot)
Jump to: navigation, search

This document is geared toward new members of the team. It should help newcomers get acquainted with some of the things we commonly do. Often, as time goes on, things get forgotten, seem trivial, etc., so it is a good idea to keep this document current and whenever you encounter & solve a problem: document it.

If you are new to the team, please add to this document to help someone else in the future.

Contents

[edit] CajunBot Accounts

Be sure that you have your various accounts set up. This includes:

  • lab login
  • wiki
  • copper
  • mailing lists (2 of them)

[edit] Other Setup

  • Watch the driver training videos for university certification. Fill out the questions pages and also the required forms. Bring these forms to Cathy Pomier or Rochelle Brasseaux in CACS.
  • When you pass, you'll get a certificate, at which point you can drive any university vehicle, including the Bot.

[edit] CajunBot Overview Paper

Read the CajunBot Architecture and Algorithms document to get an overall understanding of the entire system.

[edit] Linux & the Terminal

At CajunBot Lab, we primarily use the Linux operating system for development and testing. All of our lab machines are Linux-based, and because of that, you'll need to become familiar with using Linux and more specifically the Linux Terminal.

What is a terminal? Well, a gross oversimplification would be to say that it is like the Windows command line, where you can type commands in and see the results. But the Linux terminal is so much more...but anyways:

In most Linux distributions (based on GNOME), you can run a terminal by going to:

  • Applications -> Accessories -> Terminal or Applications -> System Tools -> Terminal.
  • You can also press Alt+F2 and type "gnome-terminal", then click "Run".
Run application dialog.
Gnome Terminal with the BASH shell.

You'll most likely be in your home directory, usually represented by "~".

If you're using BASH (which most likely, you are), then there is a configuration file in your home directory with the filename .bashrc

In this file, you'll need to setup some Environmental Variables (See Synopsis of Environmental Variables and UNIX Environmental Variables).

See the also the document example additions to .bashrc to see what should be added.

Specifically pay attention to put your username for the CVSROOT variable.

[edit] Remote login

If you want to log into cbserver remotely, you'll need to use SSH from a terminal. For example:

[billybob@myhomepc ~] $ ssh billybob@cbserver.cacs.louisiana.edu 
  • If you've copied the example .bashrc from above, you could also do the following:

$ ssh $CBUSERNAME@$CBSERVER 

or:

$ ssh billybob@$CBSERVER

[edit] Getting & Compiling the Code

If you want to check out the code onto your home machine, do some work, play around with it, etc, then (assuming you've set up the CVSROOT variable correctly):

  • Just to be safe, re-source your .bashrc:

source ~/.bashrc 
  • This will reload the environmental variables in the file.
  • Make sure you are in your home directory (from a terminal), any of these commands will work:

$ cd

$ cd ~

$ cd $HOME
  • Use CVS to check out the code from cbserver into your home directory, any of these commands will work:

cvs co cbsystem

cvs -d $CBUSERNAME@$CBSERVER:/local/cajunbot/repository co cbsystem

cvs -d $CVSROOT co cbsystem

If you're on your home machine:

  • This should prompt you for your cbserver password (if doing it remotely) and then copy the code to your computer.
  • Make sure you've copied the cbsupport libraries and install any extra packages that need to be installed if you're on your home machine.
  • On the server, $CBSUPPORT is located in '/local/cbsupport'. To copy this to your home computer:
    • As root:
cd /
    • As root:
mkdir -p /local/cbserver
    • As root:
chown -R yourusername.yourgroup /local
    • As normal user:
cd /local/cbserver
    • Use SCP to copy the files:
    • As normal user:
scp -r $CBUSERNAME@$CBSERVER:/local/cbserver/* .
    • This will recursively copy (-r) the files from yourusername@remotemachine:location to the current directory (.) (which should be /local/cbserver).
    • Follow the INSTALL document (also in ~/cbsystem/INSTALL) to install extra or missing packages.
    • This might be a troublesome process if you are not familiar installing and compiling third party packages, you may need to seek help from another team member if you have difficulties.

Compile the code by typing the following in the "cbsystem/src" directory:

source ~/.bashrc
cd $CBHOME/src
make 

This is the same as:

cd
source ~/.bashrc
cd cbsystem/src
make 

You can have multiple execution threads of make by using the -j switch and the number of threads. So for example, to have 3 execution threads:

make -j 3 

Run the simulator using a command such as the following:

start_simulator -r $CBCONF/rndf/grid_network.rndf -m $CBCONF/mdf/grid_network.mdf -L 

[edit] Things you are expected to become familiar with

[edit] See also

Personal tools