The software should run under Linux, Windows and OS X.
1. Java Runtime Environment (JDK7 or newer) and Eclipse SDK (version 3.7.2 or newer).
2. ØMQ The Intelligent Transport Layer (version 2.2) with the language bindings Java and Python.
Download the JDK7 form Oracle as tar.gz
tar -xvf jdk-7u4-linux-i586.tar.gz
sudo mv ./jdk1.7.0_04 /usr/lib/jvm/jdk1.7.0
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/lib/jvm/jdk1.7.0/bin/java" 1
sudo update-alternatives --install "/usr/bin/javac" "javac" "/usr/lib/jvm/jdk1.7.0/bin/javac" 1
sudo update-alternatives --install "/usr/bin/javaws" "javaws" "/usr/lib/jvm/jdk1.7.0/bin/javaws" 1
Choose the number for jdk1.7.0
sudo update-alternatives --config java
Check the version of you new JDK 7 installation:
java -version
Repeat the above for:
sudo update-alternatives --config javac
sudo update-alternatives --config javaws
sudo apt-get install libtool autoconf automake uuid-dev
wget http://download.zeromq.org/zeromq-2.2.0.tar.gz
tar -xvf zeromq-2.2.0.tar.gz
cd zeromq-2.2.0
./configure
make
sudo make install
sudo ldconfig
Install [ØMQ Java binding] (http://www.zeromq.org/bindings:java)
git clone https://github.com/zeromq/jzmq.git
cd jzmq
./autogen.sh
./configure
make
sudo make install
sudo ldconfig
sudo echo "CLASSPATH=/usr/local/share/java/zmq.jar:." >> /etc/environment # if you troubles with permission, add the line manually
echo "export LD_LIBRARY_PATH=/usr/local/lib" >> ~/.bashrc
Finally logout and login in again to make the changes work.
Install ØMQ Python binding
sudo apt-get install python-setuptools
sudo easy_install pyzmq
- Open Eclipse SDK
- Import Project by File -> Import choose in General "Existing Projects into Workspace" than choose the RefereePkg folder
- Right click -> Build Path -> Configure Build Path -> navigate to Libraries tab -> click on Add External JARs navigate to “/usr/local/share/java/zmq.jar”.
- And from the same tab click on Add External Class Folder navigate to “jzmq/perf” and click OK.
- Active the JRE and zmq.jar under "Java Build Path" -> "Order and Export"
- Run the project. For Referee System drop the RefereePkg src right click on the RefereeSystem.java select Run As Java Application. For Robot System drop the RobotPkg src right click on the JavaClientGUI.java select Run As Java Application.
The Referee Box (server) can be found in the folder RefereePkg. The C++, Python, Java client can be found in the folder RobotPkg.
After you started the Referee Box you first have to load a scenario configuration file. Which you can find in the folder config. Now you are able to create a sequence of triplet for the basic navigation test. (Right now only the basic navigation test is implemented.) When you are finished save the sequence with the save button. Now you are able to start the timer for the setup time. When a team is connected to the server, by using one of the client implementations, you can send the triplet to the client. Automatically when the task specification is send to the team the run timer will start.
The sequence in short:
- edit the server IP address int the config/config.txt file
- start Referee Box application
- load scenario configuration file
- load or create task specification
- save the task specification
- client gets connected
- start setup timer
- send task specification
- monitor the run and tick passed are failed for the way points
- when the team is finished stop the run timer.
- save the competition to a file with the Competition Finished button