Routines to control a humanoid echolocator robot.

Semester Project by Frederike Dümbgen

Acoustic Robot

Prepare

Things that only need to be done once after you decided to do experiments with the echolocator robot.

Clone git repository

Create a clone of the git repository on your computer. To do that, type the following line in the terminal at a location of your choice.
git clone https://github.com/LCAV/AcousticRobot.git
Two branches are created: the branch master, where all files relevant for the experiments can be found, and the branch gh-pages, where all files for this website are located.

Setup network

Turn on the router and try to connect with your computer. The wlan name is "korebot" and the password is "root". The IP address of the router is 172.16.156.1 and there is no password required. If you want to check the router's log history or configure it, the login and password are both "admin".

Install Python 2

All programs of this project are written for Python 2.7.10 or higher but not Python 3 because OpenCV2 was not yet available for Python 3.*. If you don't have python installed, you can download it for free here or use a distributor such as anaconda. With anaconda, it is easy to switch between several python versions. Simply create a new python environment for the required version, for example:
conda create -n python2 python=2.7 anaconda
and type
source activate python2
to switch to this version.

Calibrate cameras

All cameras need to be calibrated before first use. Normally, the calibration has already been done, but if you manually changed the camera's resolution or other intrinsic parameters, or if you would like to use new fisheye lenses, you have to redo the calibration. To perform the calibration, you will need:

Start by opening a terminal and navigating to location.py. Run the program by typing
python location.py -o output_folder -i input_folder -f 0100
where input_folder is where your new camera parameters will be saved (there might already be such a folder with the previous parameters, called "input/") and output_folder is the folder where the images that are taken for calibration will be saved. If the latter are not of interest to you you can delete them when you are done but they can be interesting for keeping a record of how the calibration was done.

The argument -f 0000 is used to specify weather a fisheye lens is used. For every camera, you can save one file with the standard intrinsic parameters and one file with the parameters when a fisheye lens is added. The four numbers of the argument correspond to the four cameras (139,141,143 and 145 respectively) and 0 or 1 indicates weather or not a fisheye lens is used. You can leave out this argument if you are not using fisheye lenses (default is '0000').

The first time you run the program, you may need to install some python modules. If you have not used python before, it's recommended to use package control anaconda (see above) to install the packages. The packages required are numpy, opencv (cv2) and matplotlib.

Download driver for audio

Verify that you have the correct MOTU Drivers installed before going on to the experiments. You can find a list of the most up-to-date drivers for all devices of MOTU under this link.