Mudanças entre as edições de "Script de Instalação do Carmen"
(39 revisões intermediárias por 10 usuários não estão sendo mostradas) | |||
Linha 1: | Linha 1: | ||
+ | [[category:Carmen]] | ||
= Preparação para a instalação do Carmen = | = 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: | 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 \ | yum install swig gtk2.x86_64 gtk2-devel.x86_64 qt-devel.x86_64 qt3 qt3-devel \ | ||
Linha 8: | Linha 12: | ||
kernel-devel kernel-headers ncurses-devel ncurses gsl.x86_64 gsl-devel.x86_64 \ | kernel-devel kernel-headers ncurses-devel ncurses gsl.x86_64 gsl-devel.x86_64 \ | ||
libdc1394 libdc1394-devel cmake gsl \ | 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 \ | gtkglext-devel.x86_64 gtkglext-libs.x86_64 \ | ||
libglade2.x86_64 libglade2-devel.x86_64 \ | libglade2.x86_64 libglade2-devel.x86_64 \ | ||
− | boost.x86_64 boost-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: | Faça o seguintes link: | ||
Linha 16: | Linha 34: | ||
ln -s /usr/src/kernels/2.6.30.10-105.2.23.fc11.x86_64/ /usr/src/linux | ln -s /usr/src/kernels/2.6.30.10-105.2.23.fc11.x86_64/ /usr/src/linux | ||
− | Instale o driver kvaser (Baixe-o [http://www.kvaser.com/en/developer/canlib.html aqui]) | + | Instale o driver kvaser (Baixe-o [http://www.kvaser.com/en/developer/canlib.html aqui]) (Caso utilize o fedora 16 ignore esse trecho) |
mkdir /usr/local/Kvaser | mkdir /usr/local/Kvaser | ||
− | mv | + | mv linuxcan.tar.gz /usr/local/Kvaser/ |
cd /usr/local/Kvaser/ | cd /usr/local/Kvaser/ | ||
− | tar xvzf | + | tar xvzf linuxcan.tar.gz |
cd linuxcan_v4/ | cd linuxcan_v4/ | ||
− | |||
− | |||
− | |||
− | |||
Para finalizar: | Para finalizar: | ||
make | make | ||
Linha 32: | Linha 46: | ||
Instale o OpenCV na versão 2.1 (Baixe-o [http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/2.1/ aqui]) | Instale o OpenCV na versão 2.1 (Baixe-o [http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/2.1/ 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: | 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 | mkdir build | ||
cd build | cd build | ||
− | cmake -D CMAKE_BUILD_TYPE= | + | cmake -D CMAKE_BUILD_TYPE=DEBUG -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_PYTHON_SUPPORT=ON -D BUILD_EXAMPLES=ON .. |
make | make | ||
make install (como root) | make install (como root) | ||
− | Instale a Bullet Phisycs na Versão 2.78 (http:// | + | Instale a Bullet Phisycs na Versão 2.78 (http://bullet.googlecode.com/files/bullet-2.78-r2387.tgz) |
mkdir /usr/local/bullet | mkdir /usr/local/bullet | ||
mv bullet-2.78-r2387.tgz /usr/local/bullet/ | mv bullet-2.78-r2387.tgz /usr/local/bullet/ | ||
− | cd /usr/local/bullet/ | + | cd /usr/local/bullet/bullet-2.78 |
tar xzvf bullet-2.78-r2387.tgz | tar xzvf bullet-2.78-r2387.tgz | ||
$ ./configure | $ ./configure | ||
Linha 51: | Linha 65: | ||
# make install (como root) | # make install (como root) | ||
+ | <s>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 | ||
+ | </s> | ||
= Instalação do carmen = | = Instalação do carmen = | ||
Crie o diretório roboticaprobabilistica/code/ em sua home: | Crie o diretório roboticaprobabilistica/code/ em sua home: | ||
− | mkdir ~/roboticaprobabilistica/ | + | $ mkdir ~/roboticaprobabilistica/ |
− | mkdir ~/roboticaprobabilistica/code/ | + | $ mkdir ~/roboticaprobabilistica/code/ |
Execute um checkout de http://www.lcad.inf.ufes.br/svn/roboticaprobabilistica/code/carmen na pasta ~/roboticaprobabilistica/code/ | Execute um checkout de http://www.lcad.inf.ufes.br/svn/roboticaprobabilistica/code/carmen na pasta ~/roboticaprobabilistica/code/ | ||
− | cd ~/roboticaprobabilistica/code/ | + | $ cd ~/roboticaprobabilistica/code/ |
− | svn co http://www.lcad.inf.ufes.br/svn/roboticaprobabilistica/code/carmen | + | $ 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 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]] | + | <s>Instale e configure o gmapping. Siga as instruções em [[Como Instalar e Usar o Gmapping]]</s> |
Colocar no arquivo .bashrc do usuario: | Colocar no arquivo .bashrc do usuario: | ||
+ | #CARMEN | ||
export JAVA_HOME=/usr/lib/jvm/java | export JAVA_HOME=/usr/lib/jvm/java | ||
− | export PKG_CONFIG_PATH | + | export PYTHONPATH=$PYTHONPATH:/opt/ipc/lib/Linux-3.13:/opt/ipc/python |
− | export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib | + | 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 | export CARMEN_HOME=~/roboticaprobabilistica/code/carmen | ||
Linha 77: | Linha 104: | ||
Should the C++ tools be installed for CARMEN: [Y/n] Y | Should the C++ tools be installed for CARMEN: [Y/n] Y | ||
Should Python Bindings be installed: [y/N] y | Should Python Bindings be installed: [y/N] y | ||
− | Searching for Python2. | + | Searching for Python2.7... Should the old laser server be used instead of the new one: [y/N] N |
Install path [/usr/local/]: | Install path [/usr/local/]: | ||
Robot numbers [*]: 1,2 | Robot numbers [*]: 1,2 | ||
Linha 98: | Linha 125: | ||
./configure --nocuda --nojava --ipc=/usr/local/ipc | ./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 | ||
− | + | <s>Foram criados dois scripts auto-explicativos: | |
− | Foram criados dois scripts auto-explicativos: | ||
run_all.bat | run_all.bat | ||
all_stop.bat | all_stop.bat | ||
Linha 132: | Linha 148: | ||
Para gerar um log: | Para gerar um log: | ||
logger log.txt & | logger log.txt & | ||
− | run_all.bat & | + | run_all.bat &</s> |
Navegue o robô clicando nele, segurando o botão do mouse, e movendo o mouse para onde se deseja ir. | Navegue o robô clicando nele, segurando o botão do mouse, e movendo o mouse para onde se deseja ir. | ||
Linha 140: | Linha 156: | ||
[[instalação para Ubuntu]] | [[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. |
Edição atual tal como às 07h18min de 22 de outubro de 2014
Índice
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
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.