Script de Instalação do Carmen

De LCAD
Revisão de 11h43min de 25 de outubro de 2011 por Ranik (discussão | contribs)
Ir para: navegação, pesquisa

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

Instale as seguintes bibliotecas:

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 \
boost.x86_64 boost-devel.x86_64

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)

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

Caso você esteja realizando a instalação no Fedora 14 (recomendamos fortemente que seja usado o Fedora 11), edite os arquivos usbcanII/usbcanHWIf.c e leaf/leafHWIf.c incluindo as linhas abaixo apos os #defines presentes nos arquivos:

#define usb_buffer_alloc usb_alloc_coherent
#define usb_buffer_free usb_free_coherent

Para finalizar:

make
make install

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

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=RELEASE -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://code.google.com/p/bullet/downloads/detail?name=bullet-2.78-r2387.tgz&can=2&q=)

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

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:

export JAVA_HOME=/usr/lib/jvm/java
export PKG_CONFIG_PATH+=/usr/local/lib/pkgconfig
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
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.4... 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

Caso você esteja realizando a instalação no Fedora 14 (recomendamos fortemente que seja usado o Fedora 11), altere o aquivo base/Makefile difinindo expelicitamente os robos de interesse na variavel SUBDIRS e deletando as linhas abaixo que aparecem no neste Makefile:

++++++
SUBDIRS = 
for robs in $(ROBOT_TYPES); do 	\
  ifeq ($$robs,pioneer) 	SUBDIRS += pioneerlib ; endif ; \
  ifeq ($$robs,rflex)    	SUBDIRS += rflexlib ; endif ; \
  ifeq ($$robs,scout) 	SUBDIRS += scoutlib ; endif ; \
  ifeq ($$robs,xr4000) 	SUBDIRS += xr4000_base ; endif ; \
  ifeq ($$robs,seqway) 	SUBDIRS += segway_base ; endif ; \
  ifeq ($$robs,orc4) 	SUBDIRS += orcbotlibv4 ; endif ; \
  ifeq ($$robs,orc5) 	SUBDIRS += orcbotlib ; 	endif ; \
done
++++++

Caso você esteja realizando a instalação no Fedora 14 (recomendamos fortemente que seja usado o Fedora 11), retire o opção -WError da diretiva CFLAGS do arquivo Makefile.conf. Por fim, adicone ao arquivo logtools/magick-utils.c o seguinte define:

#define DestroyConstitute ConstituteComponentTerminus

Obs: Caso de erro no arquivo logtools/magick-utils.c comente a linha acima (Fedora 11)

Altere a linha abaixo do arquivo ipc/formatters.h

#elif #machine (sparc)

para:

#elif 0 

Em seguida, digite:

make

Como rodar o carmen

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.