Script de Instalação do Carmen

De LCAD
Ir para: navegação, pesquisa

Preparação para a instalação do Carmen

Recomendamos fortemente que você use Fedora 15 para que tudo listado abaixo funcione.

Instale as seguintes bibliotecas: Copie e cole o comanto inteiro no Terminal:

yum install swig gtk2.x86_64 gtk2-devel.x86_64 qt-devel.x86_64 qt3 qt3-devel \
gdk-pixbuf.x86_64 gdk-pixbuf-devel.x86_64 imlib imlib-devel \
ImageMagick-devel.x86_64 tcp_wrappers-devel.x86_64 java-1.6.0-openjdk-devel.x86_64 \
kernel-devel kernel-headers ncurses-devel ncurses gsl.x86_64 gsl-devel.x86_64 \
libdc1394 libdc1394-devel cmake gsl \
gtkglext-devel.x86_64 gtkglext-libs.x86_64 \
libglade2.x86_64 libglade2-devel.x86_64 espeak espeak-devel \
boost.x86_64 boost-devel.x86_64 freeglut freeglut-devel \
libcurl.x86_64 libcurl-devel.x86_64 glew-devel libkml-devel uriparser-devel

Caso utilize o Fedora 17 +, execute:

yum install swig gtk2.x86_64 gtk2-devel.x86_64 qt-devel.x86_64 qt3 qt3-devel \
imlib imlib-devel java-1.7.0-openjdk-devel.x86_64 opencv-devel \
ImageMagick-devel.x86_64 tcp_wrappers-devel.x86_64 \
kernel-devel kernel-headers ncurses-devel ncurses gsl.x86_64 gsl-devel.x86_64 \
libdc1394 libdc1394-devel cmake espeak espeak-devel \
gtkglext-devel.x86_64 gtkglext-libs.x86_64 \
libglade2.x86_64 libglade2-devel.x86_64 \
boost.x86_64 boost-devel.x86_64 freeglut freeglut-devel \
libcurl.x86_64 libcurl-devel.x86_64 glew-devel libkml-devel uriparser-devel


Faça o seguintes link:

ln -s /usr/lib64/libgdk_imlib.so.1.9.15 /usr/lib64/libgdk_imlib.a
ln -s /usr/src/kernels/2.6.30.10-105.2.23.fc11.x86_64/ /usr/src/linux

Instale o driver kvaser (Baixe-o aqui) (Caso utilize o fedora 16 ignore esse trecho)

mkdir /usr/local/Kvaser
mv linuxcan.tar.gz /usr/local/Kvaser/
cd /usr/local/Kvaser/
tar xvzf linuxcan.tar.gz
cd linuxcan_v4/

Para finalizar:

make
make install

Instale o OpenCV na versão 2.1 (Baixe-o aqui)

  • No Fedora 15 e posteriores, instale a versão 2.2 pelo yum install opencv-devel

Copie-o e descompacte-o para uma pasta, (OPENCV_HOME de preferência). Para instalar execute os seguintes comandos de dentro da pasta descompactada que você baixou:

mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=DEBUG -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_PYTHON_SUPPORT=ON -D BUILD_EXAMPLES=ON ..
make
make install (como root)


Instale a Bullet Phisycs na Versão 2.78 (http://bullet.googlecode.com/files/bullet-2.78-r2387.tgz)

mkdir /usr/local/bullet
mv bullet-2.78-r2387.tgz  /usr/local/bullet/
cd /usr/local/bullet/bullet-2.78
tar xzvf bullet-2.78-r2387.tgz 
$ ./configure 
$ make
# make install (como root)

Instale o cvBlob (http://cvblob.googlecode.com/files/cvblob-0.10.3-src.tgz)

# mkdir /usr/local/cvblob
# mv cvblob-0.10.3-src.tgz  /usr/local/cvblob
# cd /usr/local/cvblob
# tar xzvf cvblob-0.10.3-src.tgz
# mkdir cvblob/build
# cd cvblob/build
# cmake ..
# make
# make install

Instalação do carmen

Crie o diretório roboticaprobabilistica/code/ em sua home:

$ mkdir ~/roboticaprobabilistica/
$ mkdir ~/roboticaprobabilistica/code/

Execute um checkout de http://www.lcad.inf.ufes.br/svn/roboticaprobabilistica/code/carmen na pasta ~/roboticaprobabilistica/code/

$ cd ~/roboticaprobabilistica/code/
$ svn co http://www.lcad.inf.ufes.br/svn/roboticaprobabilistica/code/carmen 

Instale e configure a câmera Kinect no linux. Siga as instruções em Configurando o Pioneer 3DX no CARMEN

Instale e configure o gmapping. Siga as instruções em Como Instalar e Usar o Gmapping

Colocar no arquivo .bashrc do usuario:

#CARMEN
export JAVA_HOME=/usr/lib/jvm/java
export PYTHONPATH=$PYTHONPATH:/opt/ipc/lib/Linux-3.13:/opt/ipc/python
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib:/usr/lib64/libkml
export CARMEN_HOME=~/roboticaprobabilistica/code/carmen

Depois dos passos acima, no diretorio src de carmen:

./configure --nocuda --nojava
   Should the C++ tools be installed for CARMEN: [Y/n] Y
   Should Python Bindings be installed: [y/N] y
   Searching for Python2.7... Should the old laser server be used instead of the new one: [y/N] N
   Install path [/usr/local/]: 
   Robot numbers [*]: 1,2

Caso você queira usar versões mais novas do IPC do que as que acompanham o Carmen, baixe de: http://www.cs.cmu.edu/afs/cs/project/TCA/www/ipc/index.html

Para instalar uma nova versão do IPC, logue como root e copie o .tar.gz para /usr/local e instale:

cd /usr/local
tar xzvf ipc-3.9.0.tar.gz
cd ipc-3.9.0
gmake install /* este comando pode gerar mas ainda assim estar tudo OK, ver abaixo */
ln -s ipc-3.9.0 ipc

Para saber se está tudo OK, verifique se a instalação produziu o central e libipc.a:

ls /usr/local/ipc/bin/Linux-2.6/
ls /usr/local/ipc/lib/Linux-2.6/

Finalmente, para configurar Carmen com um IPC novo, use o comando configure:

./configure --nocuda --nojava --ipc=/usr/local/ipc

Para compilar o carmen rode:

make

Como rodar o carmen

Para rodar o carmen digite os comandos abaixo:

cd $CARMEN_HOME/bin
./central &
./proccontrol

Para gerar um log digite:

cd $CARMEN_HOME/bin
./central &
./logger &
./proccontrol

Foram criados dois scripts auto-explicativos:

run_all.bat
all_stop.bat

Para gerar um log:

logger log.txt &
run_all.bat &

Navegue o robô clicando nele, segurando o botão do mouse, e movendo o mouse para onde se deseja ir.


Outros métodos de instalação

instalação para Ubuntu

Problemas Conhecidos

Câmera Bumblebee

A câmera bumblebee pode não funcionar com o erro:

Failed to initialize camera

Isso foi corrigido em uma máquina alterando as permissões do dispositivo /dev/fw*:

chmod 666 /dev/fw*

Note que o dispositivo usado pela câmera (/dev/fw0, /dev/fw1, etc) só aparece quando a câmera está ligada.