Vizzy PC104

From ISRWiki
Revision as of 12:50, 7 September 2012 by Daragao (talk | contribs) (→‎Dragonfly2)
Jump to navigation Jump to search

Debian Linux installation on the PC104

Due to the constraints of PCAN bus module, the Debian version must be 4.0 (etch)

  Linux version 2.6.24-etchnhalf.1-686

The repositories of this version are not online anymore, so in order to install the system, you should:

  • Download the netinstaller and the DVDs containing the packages, http://www.debian.org/releases/etch/debian-installer/
  • During installation, there will be a problem due to the unavailability of the packages. At this point continue the install procedure and when rebooting the system you will be able to add manually all the packages you need.

Configuration files

  • iCubInterface config
	/icub/app/iCubLisboa01/conf/vizzyInterfaceCartesian.ini
  • Motor configuration
	/icub/app/iCubLisboa01/conf/file_part.ini
  • Calibration C++ files
	/icub/main/src/libraries/icubmod/

PCAN bus driver

Installation

The original installation procedure is on the robotCub wiki, http://eris.liralab.it/wiki/The_Linux_on_the_pc104 and http://eris.liralab.it/wiki/Compilation_on_the_pc104 . We follow the same procedure,

1) In addition to the iCub and YARP environment variables, and depending on the device you use you will also need:

 PLXCANAPI_DIR=/usr/local/src/robot/drivers/plxCanApi

It is recommended to add this variable to the /etc/bash.bashrc (as root)

   export PLXCANAPI_DIR=/usr/local/src/robot/drivers/plxCanApi

2) Uncompress the file http://eris.liralab.it/iCub/downloads/drivers/linux/pc104etchnhalf-bin-1.2.tgz in the folder /usr/local/src/robot/.

3) Compilation of the iCub repository, which it needs to enable the follwing flags:

ENABLE_icubmod_pcan
ENABLE_icubmod_canmotioncontrol
ENABLE_icubmod_dragonfly2
ENABLE_icubmod_logpolarclient
ENABLE_icubmod_logpolargrabber
ENABLE_icubmod_xsensmtx

ToDo: Check the source code provided by IIT in order to compile it against newer or other Linux versions.

Start up script for PCAN bus driver

Add the following lines to /etc/rc.local script:

  declare -x PLX_SDK_DIR=/usr/local/src/robot/drivers/plxCanApi
  bash -c "$PLX_SDK_DIR/Bin/Plx_load 9030"

The lines above allow the PLX module loading during the pc104 boot.

Enviroment variables

For running the iCubInterface

Add the following lines to /etc/bash.bashrc (as root)

   export ICUB_DIR=/iCub
   export ICUB_ROOT=/iCub
   export YARP_DIR=/yarp2/build
   export YARP_ROOT=/yarp2

We recommend to add the lines above before the following lines on /etc/bash.bashrc

   # If not running interactively, don't do anything
   [ -z "$PS1" ] && return

The proper placing of the environment variables will allow to access their values on a non-interactive login.

For remote login

For remote access such as ssh (putty on Windows), you should add the following line to /etc/profile (as root), right at the beginning:

   /source /etc/bash.bashrc

Dragonfly2

The dragonfly2 requires a libdc1394 library with version >= 2.0.0, which needs to be compiled for this debian version. In addition, we added the following line to the /etc/rc.local script:

   chmod a+rw /dev/raw1394

in order to allow all the users to access the firewire devices.

The vizzyInterface does not activate the cameras automatically, so it is needed to activate the cameras by hand on the PC104. The icubmoddev is used to activate the camera device and setup video ports. This is an example to activate the left camera on Vizzy (the gains are set to better detect the red ball with the ball tracker, this can be adjusted depending on the goal):

   icubmoddev --device grabber --subdevice dragonfly2 --width 320 --height 240 --video_type 1 --white_balance 0.474 0.648 --gain 0.312 --shutter 0.592 --name /vizzy/cam/left  --brightness 0 --DR2 --stamp --d 0 --sharpness 0.5 --hue 0.48 --gamma 0.4 --saturation 0.826 --framerate 30

<< Back to Vizzy wiki homepage