Skip to content
This repository has been archived by the owner on Apr 8, 2020. It is now read-only.

OpenDaVINCI msv getting started

Ashfaq edited this page Mar 24, 2015 · 1 revision
  1. Download Ubuntu 11.10: http://releases.ubuntu.com/11.10/ubuntu-11.10-desktop-i386.iso

  2. Install Ubuntu 11.10 and install its latest package updates:

    sudo apt-get update

    sudo apt-get upgrade

    sudo apt-get dist-upgrade

    sudo apt-get clean

  3. Install development packages for OpenDaVINCI & MSV skeleton sources:

    sudo apt-get install build-essential libcv-dev libhighgui-dev cmake

    sudo apt-get clean

  4. Install the latest git:

    sudo apt-get install python-software-properties

    sudo add-apt-repository ppa:git-core/ppa

    sudo apt-get update

    sudo apt-get install git

    sudo apt-get clean

  5. Clean up installation:

    sudo apt-get autoremove

  6. Create an install folder like /opt/msv and make it writeable:

    chown YOUR_USER:YOUR_GROUP.

  7. Clone the MSV git repository:

    git clone https://github.com/se-research/CaroloCup.git

  8. Change to the source folder and create a build directory:

    cd 2015-CaroloCup/sources/OpenDaVINCI-msv && mkdir build

  9. Use cmake to create the build scripts for your build folder:

    cd build && cmake -D CMAKE_INSTALL_PREFIX=/opt/msv ..

Hereby, /opt/msv is the final install folder. By using cmake, you can also generate the necessary project description files for your favorite IDE (like Eclipse CDT, Visual Studio, ...).

  1. Build the OpenDaVINCI sources:

    make all

  2. Run the tests for OpenDaVINCI (Attention! That takes a couple of minutes!):

    make test

  3. Install the binaries, libraries, and header files to /opt/msv/group-1:

    make install

  4. Open three new shells and change to /opt/msv/group-1/bin in each shell.

  5. Shell-1: Run supercomponent: ./supercomponent --cid=111

You should get an update like this (your IP addresses may differ):

No runtime frequency set. Assuming a frequency of 1 Hz.

Creating multicast UDP receiver at 225.0.0.111:19751.

(supercomponent) parsing configuration file...

(supercomponent) server information: IP: 0.0.0.0, Port: 19866

(supercomponent) creating discoverer server...

Creating multicast UDP receiver at 225.0.0.111:19750.

(supercomponent) creating connection server...

Creating multicast UDP receiver at 225.0.0.111:12175.

(DMCP-DiscovererServer) responding to DMCP_DISCOVER

  1. Shell-2: Run testsensorboardsender: ./testsensorboardsender --cid=111

You should get an update like this (your IP addresses may differ):

No runtime frequency set. Assuming a frequency of 1 Hz.

Creating multicast UDP receiver at 225.0.0.111:12175.

Creating multicast UDP receiver at 225.0.0.111:19751.

(ClientModule) discovering supercomponent...

(ClientModule) supercomponent found at IP: 192.168.1.30, Port: 19866

(ClientModule) connecting to supercomponent...

(DMCP-ConnectionClient) sending configuration request...IP: 192.168.1.30, Port: 19866

(DMCP-Client) Received Configuration

global.examplekey=exampleValue

  1. Shell-3: Run sensorboard: ./sensorboard --cid=111

You should get an update like this (your IP addresses may differ and the transferred values are random values in the test program):

No runtime frequency set. Assuming a frequency of 1 Hz.

Creating multicast UDP receiver at 225.0.0.111:12175.

Creating multicast UDP receiver at 225.0.0.111:19751.

(ClientModule) discovering supercomponent...

(ClientModule) supercomponent found at IP: 192.168.1.30, Port: 19866

(ClientModule) connecting to supercomponent...

(DMCP-ConnectionClient) sending configuration request...IP: 192.168.1.30, Port: 19866

(DMCP-Client) Received Configuration

global.examplekey=exampleValue

(ClientModule) connecting to supercomponent...done Received Container from user-defined data type F, content: 1=0.8 2=2.1

Received Container from user-defined data type F, content: 1=0.2 2=0.4

Received Container from user-defined data type F, content: 1=0.1 2=3.7

Received Container from user-defined data type F, content: 1=0.9 2=1.8

Received Container from user-defined data type F, content: 1=0.5 2=3.1

Received Container from user-defined data type F, content: 1=0.4 2=4.3

Clone this wiki locally