• Nenhum resultado encontrado

Um Ambiente Gráfico para Desenvolvimento de Software de Controle para Robôs Móveis Utilizando Simulação 3D

N/A
N/A
Protected

Academic year: 2021

Share "Um Ambiente Gráfico para Desenvolvimento de Software de Controle para Robôs Móveis Utilizando Simulação 3D"

Copied!
33
0
0

Texto

(1)

Um Ambiente Gr´

afico para Desenvolvimento de

Software de Controle para Robˆ

os M´

oveis

Utilizando Simula¸c˜

ao 3D

Humberto Cardoso Marchezi e Hans-Jorg Andreas Schneebeli

Universidade Federal do Esp´ırito Santo

(2)

Estrutura da Apresenta¸c˜

ao

1

Introdu¸c˜ao

2

Projeto

Implementa¸c˜ao

3

Funcionalidades do IRCE

4

Conclus˜

oes e Trabalhos Futuros

(3)

Motiva¸c˜

ao

Para desempenhar tarefas, os robˆos devem ser controlados por

software espec´ıfico, cujo desenvolvimento pode ser complexo.

Para isso, um desenvolvedor de aplica¸c˜oes com robˆos deve poder:

Se concentrar em o que fazer e n˜ao como fazer para

programar um robˆo.

Simular o software do controle de forma segura.

Evitar danos desnecess´arios a um robˆ

o real.

Evitar perigo para vidas humanas quando no mesmo ambiente

do robˆ

o.

Simular sensores e robˆ

os hipot´eticos antes de construir os

mesmos.

(4)

O Projeto Player

Uma alternativa promissora ´e o Projeto Player, inicialmente

desenvolvido pela University of Southern California, que apresenta

as seguintes vantagens:

Consiste em ferramentas para desenvolvimento r´apido de

aplica¸c˜oes envolvendo um robˆos m´oveis e sensores.

´

E considerado um padr˜ao de facto na comunidade que usa

c´odigo aberto em rob´otica.

Possui um n´

umero significativo de usu´arios.

O projeto consiste em trˆes aplicativos principais: Player, Stage e

Gazebo.

(5)

O Projeto Player

Player: Servidor de controle para robˆos que abstrai os

detalhes dos dispositivos rob´oticos para os controladores.

Stage: Simulador 2D que funciona em conjunto com o Player

para testar a execu¸c˜ao de programas controladores.

(6)

Defini¸c˜

ao do Problema

Dificuldades ao utilizar as ferramentas do projeto P/S/G:

V´arios

terminais

devem ser

abertos;

V´arios tipos

de arquivos

devem ser

editados

manualmente.

Para resolver esses problemas, este trabalho prop˜oe a constru¸c˜ao

de um ambiente integrado para o desenvolvimento de aplica¸c˜oes

envolvendo robˆos m´oveis, referido como IRCE.

(7)

Defini¸c˜

ao do Problema

Raz˜oes para uma Simula¸c˜ao 3D:

Ao utilizar um cen´ario tridimensional, a simula¸c˜ao passa a ter

mais fidelidade;

Permite a detec¸c˜ao de certos problemas que n˜ao poderiam ser

previstos por um simulador 2D como o Stage, por exemplo;

Num cen´ario bidimensional, certos detalhes poderiam n˜ao ser

representados adequadamente.

(8)

Defini¸c˜

ao do Problema

O IRCE atende os seguintes objetivos:

Gera¸c˜ao Gr´afica Interativa de Mundo Virtual com Robˆos.

Gera¸c˜ao Interativa de Arquivo de Configura¸c˜ao.

Edi¸c˜ao e Compila¸c˜ao de Arquivos de Controle de Robˆo.

Simula¸c˜ao Facilitada do Projeto.

Aumento da Agilidade do Processo de Desenvolvimento de

Controle para Robˆos M´

oveis.

Apoio `a Pesquisa de Controladores Inteligentes.

Apoio ao Aprendizado de Rob´otica.

(9)

Trabalhos Relacionados

Webots:

Vantagens:

Possui um editor para o mundo virtual;

Simula¸c˜ao real´ıstica de f´ısica mecˆanica;

Permite programar robˆos nas linguagens C, C++ e Java;

Permite transferir o controle para robˆos m´oveis reais.

Desvantagens:

´

E um pacote fechado, logo n˜ao permite extens˜oes e altera¸c˜oes

no c´odigo-fonte;

Custo da licen¸ca pode ser proibitivo para universidades

brasileiras.

(10)

Trabalhos Relacionados

Webots:

Vantagens:

Possui um editor para o mundo virtual;

Simula¸c˜ao real´ıstica de f´ısica mecˆanica;

Permite programar robˆos nas linguagens C, C++ e Java;

Permite transferir o controle para robˆos m´oveis reais.

Desvantagens:

´

E um pacote fechado, logo n˜ao permite extens˜oes e altera¸c˜oes

no c´odigo-fonte;

Custo da licen¸ca pode ser proibitivo para universidades

brasileiras.

(11)

Trabalhos Relacionados

Webots:

Vantagens:

Possui um editor para o mundo virtual;

Simula¸c˜ao real´ıstica de f´ısica mecˆanica;

Permite programar robˆos nas linguagens C, C++ e Java;

Permite transferir o controle para robˆos m´oveis reais.

Desvantagens:

´

E um pacote fechado, logo n˜ao permite extens˜oes e altera¸c˜oes

no c´odigo-fonte;

Custo da licen¸ca pode ser proibitivo para universidades

brasileiras.

(12)

Implementa¸c˜

ao

A linguagem de programa¸c˜ao e as bibliotecas utilizadas para a

implementa¸c˜ao do IRCE foram preferencialmente as mesmas

utilizadas pelo Gazebo:

Linguagem de Programa¸c˜ao C/C++;

OpenGL;

wxWidgets;

TinyXML.

(13)

Implementa¸c˜

ao

Arquitetura do Aplicativo segue o Padr˜ao MVC (Model View

-Controller).

(14)

Implementa¸c˜

ao

(15)

Montagem do Mundo Virtual

Incluir diretamente o c´odigo dos modelos do Gazebo mostrou

ser demasiado complexo, pois o os modelos do Gazebo

dificultam o reuso, j´a que cont´em outras informa¸c˜oes

desnecess´arias;

Os modelos do IRCE s˜ao desenhados atrav´es do m´etodo Draw

herdado de uma classe b´asica Model;

(16)

Montagem do Mundo Virtual

Cada modelo 3D (Model) contem um mapa de propriedades para

serializa¸c˜ao e deserializa¸c˜ao em arquivo XML o que ´e feito

separadamente pela classe XMLCommand;

(17)

O IRCE possui as seguintes funcionalidades principais:

Gerˆencia de Projetos IRCE;

Montagem de Mundo Virtual;

Configura¸c˜ao de Robˆo e seus Sensores;

Programa¸c˜ao de Controle;

(18)
(19)
(20)
(21)
(22)
(23)
(24)

Gerˆ

encia de Projeto IRCE

Um arquivo de projeto para o IRCE baseado no padr˜ao XML

foi criado;

(25)

Montagem do Mundo Virtual

Um mundo virtual pode ser adicionado ap´

os a cria¸c˜ao do projeto

pelo menu (Virtual World - New World File);

(26)

Montagem do Mundo Virtual

Um modelo 3D pode

ser adionado pelo menu

(Virtual World - Add

3D Model);

Ao serem selecionados, os modelos

listam as suas propriedades;

(27)

Configura¸c˜

ao de Robˆ

o e seus Sensores

Atrav´es do menu

(Configuration - Add

Configuration File), pode-se

adicionar um arquivo de

configura¸c˜ao ao projeto;

(28)

Configura¸c˜

ao de Robˆ

o e seus Sensores

Painel para a

configura¸c˜ao do robˆo e

seus sensores mostra a

configura¸c˜ao do

simulador (Gazebo) e a

configura¸c˜ao de cada

modelo (robˆo) e seus

sensores.

(29)

Programa¸c˜

ao de Controle

Um projeto IRCE pode ser compostos

por v´arios programas de controle.

Um programa de controle (em

C++ apenas), pode ser

adicionado pelo menu (Control

Programs - Add Program

File);

(30)
(31)

Simula¸c˜

ao

(32)

Os seguintes requisitos foram implementados no IRCE:

Gerˆencia de Projeto IRCE;

Montagem do Mundo Virtual;

Configura¸c˜ao do Robˆo e seus Sensores;

Programa¸c˜ao de Controle;

Simula¸c˜ao.

O prot´

otipo do ambiente ´e us´avel e pode ser utilizado pela

comunidade rob´otica como um software de c´odigo-livre.

Por outro lado, as seguintes melhorias podem ser feitas na

ferramenta proposta:

Implementar os modelos 3D restantes suportados pelo Gazebo;

Implementar a transferˆencia de controle para os respectivos

robˆos reais;

(33)

Perguntas ??????

Referências

Documentos relacionados