20100607

Carmen no Ubuntu 9.10

Os procedimentos para se usar CARMEN versão 0.7.4-beta seguem.

Instalação

Tendo as bibliotecas necessárias, algumas mudanças devem ser feitas - aqui descritas em formato diff(1) com comentários. Como se deve imaginar, $original e $changed são os caminhos para os diretórios onde está CARMEN original e modificado respectivamente.

src/Makefile.conf - remove a flag Werror do compilador.
diff $original/src/Makefile.conf $changed/src/Makefile.conf
83c83
< CFLAGS +=  -Wall -W -Werror -D_REENTRANT
---
> CFLAGS +=  -Wall -W -D_REENTRANT
95c95
< CXXFLAGS += -Wall -W -Werror -D_REENTRANT
---
> CXXFLAGS += -Wall -W -D_REENTRANT

src/configure - elimina (porcamente) a verificação da existência da imlib.
diff $original/src/configure $changed/src/configure
273a274,275
>   return $gtk_config;
> 

src/camera/quickcam/Makefile - adiciona caminho para headers específicos de x86.
diff $original/src/camera/quickcam/Makefile $changed/src/camera/quickcam/Makefile
10c10
< IFLAGS += -I$(KERNEL_HEADERS_DIR)
---
> IFLAGS += -I$(KERNEL_HEADERS_DIR) -I/usr/src/linux-headers-2.6.31-16/arch/x86/include
23c23
<  $(CC) -c $(32BIT_MODE) -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DSTDC_HEADERS=1 -DHAVE_INTELCPU=1 -DHAVE_MMX=1 -I$(KERNEL_HEADERS_DIR) -o ccvt_mmx.o ccvt_mmx.S
---
>  $(CC) -c $(32BIT_MODE) -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DSTDC_HEADERS=1 -DHAVE_INTELCPU=1 -DHAVE_MMX=1 -I$(IFLAGS) -o ccvt_mmx.o ccvt_mmx.S

Configuramos com as 'C++ tools' e os 'python bindings', usando o novo servidor de laser e sem nenhuma base, já que o que nos interessa no momento é apenas simulação do robô.
Assim se está apto a rodar a configurar e compilar.

Simulação de uma caminhada

Baseado em http://carmen.sourceforge.net/doc/main.html. Cada comando em um shell diferente.
% cd $changed/bin # caso não tenha instalado
% ./central
% ./param_daemon -r pioneer-I ../data/freiburg.map # pioneer parece não existir mais
% ./simulator
% ./robot
% ./localize
% ./navigator
% ./navigatorgui
% ./robotgui

Na janela de navigatorgui:
Clique em Place Robot e escolha um local para o ponto inicial da caminhada. O segundo ponto pode ficar no mesmo local.
Clique em Place Goal e escola o ponto final.
Clique em Go e observe tanto a visão do cenário (navigatorgui) como do robô (robotgui).

Nenhum comentário:

Postar um comentário