You are on page 1of 43

CLEBER ALEXANDRE DE AZEVEDO

ESTGIO CURRICULAR I CONVERSO DE CDIGO DE FUNES DE MANIPLAO DE UM SIMULADOR ROBTICO

EMPRESA: UDESC SETOR: LARVA SUPERVISOR: ROBERTO SILVIO UBERTINO ROSSO JR. ORIENTADOR: MARCELO DA SILVA HOUNSELL CURSO DE BACHARELADO EM CINCIAS DA COMPUTAO CENTRO DE CINCIAS TECNOLGIAS - CCT UNIVERSIDADE DO ESTADO DE SANTA CATARINA UDESC

JOINVILLE SANTA CATARINA - BRASIL JUNHO DE 2009

APROVADO EM ........./........./.........

ORIENTADOR: .......................................................................................... Marcelo da Silva Hounsell

MEMBRO: ................................................................................................... Carlos N. Vetorazzi Jnior

MEMBRO: .................................................................................................... Fabiano Baldo

UDESC

UNIVERSIDADE DO ESTADO DE SANTA CATARINA - UDESC CENTRO DE CINCIAS TECNOLGICAS - FEJ RELATRIO DE ESTGIO CURRICULAR FOLHA DE AVALIAO FINAL

Carimbo da Empresa

UNIDADE CONCEDENTE

Razo Social: Universidade do Estado de Santa Catarina UDESC Campus Joinville Endereo: Campus Universitrio Prof. Avelino Marcante s/n Bairro: Bom Retiro CEP: 89223-100 Cidade: Joinville UF: SC Fone: 47-4009-7900 Supervisor: Roberto Silvio Ubertino Rosso Jr. Cargo: Professor
ESTAGIRIO

Nome : Cleber Alexandre de Azevedo Endereo: Rua Francisco Gomes de Oliveira, 430 AP 01 CEP: 8221595 Cidade: Joinville UF: SC Curso de : Cincia da Computao

Matrcula: 211010307 Bairro: Sagau Fone: 47-3425-8997

Ttulo do Estgio: Converso de cdigo de funes de manipulao de um simulador robtico Perodo: _31/_03/_09/ a _25/_06/_09/ Carga horria: 180 horas

AVALIAO FINAL DO ESTGIO PELO CENTRO DE CINCIAS TECNOLGICAS

Representada pelo Professor da Disciplina ETG: Carlos N Vetorazzi Jr.

CONCEITO FINAL Excelente (9,1 a 10) Muito Bom (8,1 a 9,0) Bom (7,1 a 8,0) Regular (5,0 a 7,0) Reprovado (0,0 a 4,9)

NOTA

Rubrica do professor da disciplina ETG

Local e data:

UDESC

UNIVERSIDADE DO ESTADO DE SANTA CATARINA - UDESC CENTRO DE CINCIAS TECNOLGICAS - FEJ RELATRIO DE ESTGIO CURRICULAR AVALIAO DO ESTAGIRIO PELA EMPRESA

Nome do Estagirio : Cleber Alexandre de Azevedo QUADRO I a) AVALIAO NOS ASPECTOS PROFISSIONAIS 1 - QUALIDADE DO TRABALHO - Considerando o possvel 2 - ENGENHOSIDADE - Capacidade de sugerir, projetar, executar modificaes ou inovaes. 3 - CONHECIMENTO - Demonstrado no desenvolvimento das atividades programadas. 4 - CUMPRIMENTO DAS TAREFAS - Considerar o volume de atividades dentro do padro razovel 5 - ESPRITO INQUISITIVO - Disposio demonstrada para aprender 6 - INICIATIVA - No desenvolvimento das atividades SOMA Pontuao para o Quadro I e II Sofrvel - 1 ponto, Regular - 2 pontos, Bom - 3 pontos, Muito Bom - 4 pontos, Excelente - 5 pontos. QUADRO II b) AVALIAO DOS ASPECTOS HUMANOS 1 - ASSIDUIDADE - Cumprimento do horrio e ausncia de faltas 2 - .DISCIPLINA - Observncia das normas internas da Empresa. 3 - SOCIABILIDADE - Facilidade de se integrar com os outros no ambiente de trabalho. 4 - COOPERAO - Disposio para cooperar com os demais para atender as atividades. 5 -SENSO DE RESPONSABILIDADE - Zelo pelo material, equipamentos e bens da empresa. SOMA c) AVALIAO FINAL SOMA do Quadro I multiplicada por 7 SOMA do Quadro II multiplicada por 3 SOMA TOTAL Pontos LIMITES PARA CONCEITUAO De 57 a 101 - SOFRVEL De 102 a 146 - REGULAR De 148 a 194 - BOM De 195 a 240 - MUITO BOM De 241 a 285 - EXCELENTE

Pont os

Pont os

Nome da Empresa: LARVA Representada pelo Supervisor: Roberto Silvio Ubertino Rosso Jr. CONCEITO CONFORME SOMA TOTAL Rubrica do Supervisor da Empresa

Local: Data : Carimbo da Empresa

UNIVERSIDADE DO ESTADO DE SANTA CATARINA - UDESC CENTRO DE CINCIAS TECNOLGICAS - CCT PLANO DE ESTGIO CURRICULAR OBRIGATRIO
ESTAGIRIO
Nome: Cleber Alexandre de Azevdo Matrcula: 211010307 Endereo: Rua Francisco Gomes de Oliveira, 430 AP 01 Bairro: Sagau CEP: 8221595 Cidade: Joinville UF: SC Fone:47-3425-8997 Endereo: Campus Universitrio Prof. Avelino Marcante s/n Bairro: Bom Retiro CEP: 89223-100 Cidade: Joinville UF: SC Fone:47-4009-7900 E-mail: cleber.lestat2@gmail.com Regularmente matriculado no semestre: 2009/1 Curso: Cincia da Computao Formatura Semestre/Ano: 2010/1

UNIDADE CONCEDENTE
Razo Social: Universidade do Estado de Santa Catarina UDESC Campus Joinville Endereo: Campus Universitrio Prof. Avelino Marcante s/n Bairro: Bom Retiro CEP: 89223-100 Cidade: Joinville UF: SC Fone: 47-4009-7900 Atividade Principal : Professor Supervisor: Roberto Silvio Ubertino Rosso Jr. Cargo: Professor DADOS DO ESTGIO rea de atuao: Computao grfica Programao Departamento de atuao: DCC GRUPO LARVA Fone: 47-4009-7849 Horrio do estgio: 8:00 as 12:00 na quarta e quinta, 13:30 as 17:30 na tera e sexta Total de horas do Estgio: 180 horas Perodo: 31/03/2009 25/06/2009 Total de horas semanais: 16 Nome do Professor Orientador: Marcelo da Silva Hounsell Departamento: DCC Departamento de Cincia da Computao Disciplina(s) simultnea(s) com o estgio Quantas: 3 Quais: TOCI-09 TOCI-18 TOCI-19 INTERCONEXO DE REDES DE COMPUTADORES MICROPROCESSADORES INTRODUO A ROBTICA

OBJETIVO GERAL Titulo: Converso de cdigo de funes de manipulao de um simulador robtico Converso e Adaptao de funes de manipulao de um simulador robtico fixo de cinco graus de liberdade desenvolvido originalmente em VRML com funes em Java para a nova tecnologia X3D com interfaceamento em Java.

ATIVIDADES

OBJETIVO ESPECFICO - Estudo inicial - Organizao - Preparao de exemplos e material - Ministrao do mini-curso

HORAS 12 hs 4 hs 20 hs

Estudo e preparao de minicurso sobre a tecnologia X3D Bsico (Browser, Editor e Criao de Cenes).

4 hs

- Estudo da integrao X3D com Java - Traduo dos Botes para a lngua Inglesa - Criao de algumas funcionalidades em Java para o simulador robtico convertido de VRML para X3D - Funes do clculo da Cinemtica direta - Manipulao de Arquivos

10 hs

20 hs

20 hs

Desenvolvimento na converso e adaptao do cdigo para X3D.

40 hs

20 hs

- Relatrio de Estgio Documentao e ltimos detalhes a acertar na traduo. Rubrica do Professor Orientador Aprovao do Membro do Comit de Estgio
Data:

20 hs 10 hs

- cone About Rubrica do Coordenador de Estgio Rubrica do Supervisor da Empresa

Data:

Data:

Data:

Carimbo da Empresa

Prof Csar Malutta

TERMO DE COMPROMISSO DE ESTGIO CURRICULAR OBRIGATRIO

UDESC CONCEDENTE Este Termo de Compromisso tem por objetivo a realizao do estgio curricular obrigatrio dos acadmicos da UDESC, no gerando vnculo empregatcio, nos termos da Lei n 11.788/2008.

ESTAGIRIO: Nome: Cleber Alexandre de Azevedo CPF: 05030620907 Data Nasc.: 05/10/1983 Endereo: Rua Francisco G. de Oliveira 430 AP 01 CEP: 89221595 Telefone: 34258997 E-mail: cleber.lestat2@gmail.com Curso: Cincia da Computao Fase: 7 Ano/Semestre: 2009/1 Matrcula: 211010307 O estagirio acima qualificado est segurado pela aplice n ....820010043....

Joinville(SC),_31_ de __maro__ de 2009_.

----------------------------------------Diretor Geral do Centro

------------------------------------------Estgiario

Testemunhas;___________________ ___________________

CRONOGRAMA FSICO REAL


01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 PERODO ATIVIDADES Estudo inicial da tecnologia X3D X X Organizao do contedo de X3D X Preparao de exemplos e material X X X para o mini-curso de X3D Ministrao do mini-curso X Estudo da interao X3D com Java X X Traduo dos botes para a lngua X X X Inglesa Criao de algumas funcionalidades X X X X em Java para o simulador robtico convertido de VRML para X3D Funo do clculo da Cinemtica X X X X X X 2 direta Manipulao de Arquivos3 X X X Relatrio de Estgio X X X X 3 cone About X X 1 O somatrio das atividades de um perodo igual a 8 horas 2 A funo de clculo de Cinemtica direta teve um tempo de desenvolvimento menor do que o proposto porque grande parte do calculo foi reutilizado do modelo antigo, assim s foi preciso um reajuste. 3 A manipulao de arquivo e a criao do cone About sero realizados no tempo restante de estgio.
1

SUMRIO

Lista de Ilustraes................................................................................................................10 Lista de Quadros....................................................................................................................11 Lista de Abreviaes..............................................................................................................12 Resumo..................................................................................................................................13 1. Introduo..........................................................................................................................14 1.1. Objetivo......................................................................................................................15 1.1.1. Gerais...............................................................................................................15 1.1.2. Especficos.......................................................................................................15 1.2. Justificativa...............................................................................................................16 1.3. Organizao do trabalho...........................................................................................17 2. Apresentao dos conceitos...............................................................................................18 2.1. Histrico....................................................................................................................18 2.2. Integrantes e principais produtos..............................................................................18 3. Desenvolvimento...............................................................................................................20 3.1. Estudo inicial sobre X3D...............................................................................................20 3.2. Organizao do contedo X3D estudado..................................................................21 3.3. Preparao de exemplos e material............................................................................22 3.4. Administrao do mini-curso....................................................................................22 3.5. Estudo da integrao X3D com Java........................................................................23 3.6. Traduo dos Botes para a lngua Inglesa...............................................................23 3.7. Criao de algumas funcionalidades em Java para o simulador robtico convertido de VRML para X3D ....................................................................................................................25 3.7.1. Adaptao das sub-janelas em relao a janela principal..................................25 3.7.2. Funo para mostrar o ponto final do rob........................................................26 3.7.3. Funo para mostrar Eixo..................................................................................27 3.8. Funes do clculo da Cinemtica direta..................................................................27 3.8.1. Mostrar na tela CD os valores X, Y, Z.............................................................27 3.8.2. Interpolao do rob.........................................................................................28 4. Consideraes finais...........................................................................................................30 5. Anexos................................................................................................................................31 6. Glossrio.............................................................................................................................42 7. Referncias bibliogrficas..................................................................................................43

10

LISTA DE ILUSTRAES

Figura 1: Rob SCORBOT-ER 4pc...................................................................................15 Figura2: Rob antes do estgio..........................................................................................16 Figura 3: Integrantes do LARVA......................................................................................19 Figura 4: Projetos de pesquisa concludos.........................................................................19 Figura 5: XJ3D-Browser....................................................................................................20 Figura 6: X3D-Edit............................................................................................................21 Figura 7: Escolha de idiomas para ingls ou portugus.....................................................24 Figura 8: Local de cada sub-janela em relao a janela principal......................................25 Figura 9: Mostra na tela Cinemtica Direta os valores X, Y, Z.........................................28

11

LISTA DE QUADROS

Quadro 1: Funo idioIngles e idioPortugues ..................................................................24 Quadro 2: Construo da esfera e a funo de mudana da transparncia do PFP .........26 Quadro 3: Chamada em Java da transparncia d PFP ......................................................26 Quadro 4: Colocada do switch no grupo dos eixos ..........................................................27 Quadro 5: Funes no x3d para que a interpolao seja feita...........................................29

12

LISTA DE ABREVIAES

CD Cinemtica Direta. CI Cinemtica Inversa. ISO International Standard Organization. LARVA Laboratrio de Realidade Virtual Aplicada. UDESC Universidade do Estado de Santa Catarina. VRML - Virtual Reality Modeling Languag. X3D Extensible 3D. Xj3D Extensible Java 3D. XML Extensible Markup Language. PFP Ponto final da pinsa.

13

RESUMO

Este estgio tem como objetivo a converso e adaptao de um simulador robtico fixo de cinco graus de liberdade desenvolvido originalmente em VRML com funes em Java Applet para a nova tecnologia X3D com interfaceamento em Java. O estgio apresenta a construo de um mini-curso sobre a tecnologia X3D bsico que foi dividido em: estudo inicial sobre a linguagem X3D, organizao do contedo X3D estudado, preparao de exemplos e material para o mini-curso e administrao do mini-curso. O mini-curso foi focado no ensino de com usar o Browser XJ3D e X3D-Editor, e o ensino de como fazer uma criao de cenas em X3D. apresentado tambm o estudo da integrao X3D com Java, a traduo dos botes para a lngua Inglesa, a criao de algumas funcionalidades em Java para o simulador robtico convertido de VRML para X3D, que foi dividido em adaptao das sub-telas para ficarem no canto da tela principal, funo para mostrar Eixo da sala e funo para mostrar PFP do rob.

14

1. INTRODUO

Este estgio teve como com base as ferramentas VRML, X3D, Java e um rob de cinco graus de liberdade. O VRML (Virtual Reality Modeling Language) uma linguagem para modelar realidades no meio virtual, que serve para gerar objetos e ambientes 3D que podem ser usados na internet e tm a possibilidade de animaes de objetos (IPOLITO,2009). O X3D uma combinao de API de programao e formato de arquivo para troca de geometrias que surgiu de uma reviso da especificao ISO VRML97 (ISO; IEC,2002). Ele um padro aberto e serve para desenvolvimento de objetos e ambientes 3D; funciona usando somente uma interface de programao de aplicao, o que o torna bem mais claro, e suporta vrios tipos de codificaes com VRML, XML e binrio comprimido (HORSTMANN; CORNELL,2003). As diferenas entre VRML e X3D comeam com a mudana da estrutura base para uma maior flexibilidade de desenvolvimento no X3D e as especificaes do X3D foram divididas em trs tipos: conceitos abstratos, acesso a linguagem de programao e o formato de codificao para arquivos. Outras diferenas entre o X3D e o VRML so: - Aumento da preciso de vrios componentes, como por exemplo a luminosidade; - Varias componentes tambm tiveram seu nome mudado para maior consistncia (WEB3D Consortium,2009). O Java uma linguagem de programao orientada a objetos que tem a sintaxe similar a linguagem C e tem como uma das principais caracterstica a questo de ser executada sobre uma mquina virtual, sendo assim uma linguagem multi-plataforma (HORSTMANN;

CORNELL,2003). O rob (Figura 1) que apresentado aqui de cinco graus de liberdade, todos os graus de liberdade so rotacionais, sendo o primeiro do corpo em torno da base, o segundo do ante-brao, o terceiro no brao, o quarto e quinto na garra. Seu nome SCORBOT-ER 4pc e ele composto de uma base fixa, um corpo, um ante-brao, um brao e uma garra de fixao (Eshed robotec,1999).

15

Figura 1 Rob SCORBOT-ER 4pc (Fonte: Eshed robotec) 1.1. Objetivo

1.1.1. Gerais

Converso e adaptao de funes de manipulao de um simulador robtico fixo de cinco graus de liberdade desenvolvido originalmente em VRML com funes em Java Applet para a nova tecnologia X3D com interface grfica com funo desenvolvida em Java.

1.1.2. Especficos

Os objetivos especficos desse estgio foram: - Estudo inicial sobre X3D; - Organizao do contedo X3D estudado; - Preparao de exemplos e material para um mini-curso; - Ministrao do mini-curso; - Estudo da integrao X3D com Java; - Traduo dos botes para a lngua Inglesa; - Converso do simulador robtico feito em VRML para X3D, em especial as interfaces (em Java); - Funes do clculo da Cinemtica direta; - Manipulao de arquivos; - Relatrio de estgio; - cone About.

16

1.2. JUSTIFICATIVA

A necessidade desse estgio parte do ponto de que era preciso a converso de algumas funes ainda pendentes da linguagem de VRML para a linguagem X3D. Entre algumas funes que mudaram com a converso para X3D foi: a escolha de idiomas no menu configuraes assim como o idioma inicial o ingls, a possibilidade de retirar o eixos x,y,z, a possibilidade de colocar e tirar o ponto PFP (Ponto final da pinsa, uma ponto para determinar onde final da garra do rob), a viso de onde o ponto final da garra do rob se encontra, atravs da janela de Cinemtica, direta e as sub-janelas ficarem organizadas no canto da janela principal. A (Figura 2) mostra o modelo antigo. Com o resultado desse estgio o rob virtual em X3D estar mais adaptado para o usurio: tanto para pessoas que entendem s a lngua inglesa como tambm para as pessoas que s entendem a lngua portuguesa, na melhor disposio das sub-telas assim como a possibilidade de tirar e colocar o eixo x,y,z e o PFP para melhor visualizao, a possibilidade de ver o rob se deslocando de uma posio para outra quando passado s o valor dos dois pontos, a possibilidade de colocar esferas, cilindros e cubos em cima da mesa, a possibilidade de salvar em arquivos o que o usurio criou e a possibilidade da acessar a janela About para descries dos botes da janela de Cinemtica direta e Cinemtica inversa.

Figura 2 Rob antes do estgio

17

1.3. ORGANIZAO DO TRABALHO

Este trabalho esta dividido em quatro captulos: O captulo 1 mostra a introduo do que apresentado no trabalho, assim como a descrio de alguns tpicos correlacionados. O captulo 2 apresenta o ambiente de trabalho, para que foi criado o laboratrio, membros atuantes e principais ferramentas desenvolvidas nesse ambiente. O captulo 3 apresenta o desenvolvimento do trabalho, descrevendo todos os passos para concluir cada tpico apresentado no objetivo. O captulo 4 apresenta as concluses gerais das experincias com este estgio, assim como a descrio de possveis trabalhos que podero ser feito nessa rea.

18

2.

APRESENTAO DOS CONCEITOS

2.1. HISTRICO

O LARVA (Laboratrio de Realidade Virtual Aplicada) um grupo de pesquisas, sendo o primeiro a ser criado dentro do Departamento de Cincias da Computao (DCC), da UDESC. Sua data de criao foi em 28/06/2002 e est em pleno desenvolvimento at hoje. Seu espao fsico foi oficializado em 25/05/2005, sendo o primeiro laboratrio destinado a pesquisa dentro do DCC e que hoje conta com vrios dispositivos como: - Webcam; - Mesa digitalizadora; - HMD- i-glasses PCVIDEO; - Fone de ouvido; - Caixa de som; - Impressora. Esses dispositivos ajudam no desenvolvimento dos projetos do LARVA, assim como outra reas fora do LARVA. O grupo tem como objetivo se concentra em aplicaes grficas 3D interativas e a dividindo em dois tipos, a que usa a Realidade virtual como meio, e outra que usa a realidade virtual como fim (LARVA,2009).

2.2. INTEGRANTES E PRINCIPAIS PRODUTOS

O grupo LARVA composto por uma equipe de professores, discentes e colaboradores cujo o compromisso de cada membro com seu tipo de atividade atualizado no site do LARVA (LARVA,2009) a cada semestre, sendo assim o Larva j tem uma lista grande de pessoas que executaram alguma atividade e hoje no se encontram mais ligados ao mesmo, o printsceen (Figura 3) reproduzido a seguir serve para facilitar a consulta dos membros atuantes no primeiro semestre do ano de 2009 .

19

Figura 3: Integrantes do LARVA (Fonte: LARVA)

Entre os produtos j desenvolvidos no grupo esto os de projetos de pesquisa que tem mais projetos concludos e o printscreen (Figura 4) reproduzido a seguir serve para facilitar a consulta, nos projetos de ensino temos o Site do LARVA (v 1.0) e nos projetos de extenso temos o CoGrapi - Colquios em Computao Grfica e Processamento de Imagens (LARVA,2009).

Figura 4: Projetos de pesquisa concludos (Fonte: LARVA)

20

3.

DESENVOLVIMENTO

Este Estgio I composto de cento e oitenta horas e foram divididas em vrias atividades.

3.1. ESTUDO INICIAL SOBRE X3D

Nessa parte do estgio, foi feito uma pesquisa do material para o estgio relacionado a linguagem X3D, com a procura de livros e contedos na internet. Depois de encontrado e separado esse material dos outros existentes, foi feita uma leitura e verificao de exemplos para ver quais as funcionalidade que o X3D apresenta. Assim, foi descoberto os vrios tpicos que ele aborda, sendo eles os tipos de geometrias primitivas, os tipos de grupos, os tipos de aparncia do material e textura, as geometria de pontos, as linhas e polgonos, os eventos de animao e interpolao, o uso de interatividade, os eventos utilizando scripting, a geometria 2D, a iluminao e efeitos ambientais, o sensor de som ambiente, a geometria com tringulos e os quadrados e prottipos (BRUTZMAN; DALY,2009). Em seguida, foram vistos as ferramentas usadas para visualizao dos arquivos X3D que se dividem em um plugin chamado BitManagements BS Contact (Bitmanagement Software,2009), para o navegador Internet Explorer, e um browser chamado XJ3D-Browser1.0 (WEB3D Consortium,2009)(Figura 5). Foi visto uma das ferramentas para facilitar o desenvolvimento chamada X3D-Edit3.2 (Savage,2009) (Figura 6).

Figura 5 XJ3D-Browser (Fonte: WEB3D Consortium)

21

Figura 6 X3D-Edit (Fonte: Savage)

3.2. ORGANIZAO DO CONTEDO X3D ESTUDADO

O X3D usa de um estrutura XML (Extensible Markup Language) para mtodos e campos, o XML uma linguagem de marcao de dados, que facilita a identificao a busca de dados por vrios tipos diferentes de mltiplas plataformas, tem a possibilidade da criao de infinitas tags (palavras encapsuladas por sinais '<' e '>'), cada tag composta de duas parte, uma que inicia e outra que finaliza a tag (BENEDITO, Miguel,2009). O contedo pesquisado sobre X3D foram encontrados principalmente no site do BRUTZMAN, Don e DALY, Leonard (BRUTZMAN, Don; DALY, Leonard,2009), e foram divididos nos mais diferentes mtodos e campos, dentro de cada tpico especificado no estudo inicial sobre X3D. Foi verificado o que uma parte dos mtodos e campos tm como possibilidade de uso. Exemplo: Tipos de estruturas: <Sphere/>, <Box/>, <Cone/>, <Cylinder/>, <Text/>, <FontStyle/> Campos das estruturas: Sphere: radius (um valor), solid (booleano) Box: size (trs valores: x y z), solid (booleano) Cone: bottom, side, solid (booleano), bottomRadius (um valor), height (um valor) Cylinder: bottom, side, solid, top (booleano), radius (um valor), height (um valor)

22

Text: solid (booleano), length, maxExtent (maximo de um valor por linha), string (onde vai o texto, cada conjunto de aspas uma linha) FontStyle: Configurao da fonte (como o word)

3.3. PREPARAO DE EXEMPLOS E MATERIAL

Nessa parte do estgio foram feitos as construes de arquivos no formato X3D para ser usado como exemplo no mini-curso, a preparao dos slides e a instalao das ferramentas BitManagements BS Contact, XJ3D-Browser e X3D-Edit no laboratrio usado para apresentao do mini curso. A apresentao do mini-curso se encontra no site do LARVA na parte de links/Downloads, definido como mini-curso X3D bsico, e na parte de anexos desse relatrio. O projeto de como ficou a seqncia de slides para serem mostrados no mini-curso descrito abaixo: 1) Uma introduo do que o X3D e para que ele pode ser usado; 2) Mostrar browser e editor; 3) Mostrar primeiros passos para conseguir fazer o bsico em X3D; 4) Dar um exemplo de uma aplicao de X3D, pedir que os alunos o implementem; 5) Mostrar estruturas bsicas (cone, esfera, quadrado, cilindro, texto e fonte de estilo); 6) Pedir para fazer um cdigo usando alguma estrutura; 7) Mostrar funes que melhoram esses objetos; 8) Pedir que os alunos coloquem uma nova cor e deixar transparente o objeto; 9) Mostrar funes para criar grupos de funes; 10) Mostrar tipos de navegaes e vises; 11) Pontos, linhas e polgonos; 12) Animao e interpolao.

3.4. MINISTRAO DO MINI-CURSO

O mini-curso, que fez parte do VI SICGRAPI do LARVA, foi realizado no dia 19 de maio de 2009 com durao de quatro horas e contou com participao de quatro alunos que assistiram o mini-curso, foram usados cinco computadores e um projetor multimdia. No mini-curso, os alunos tiveram oportunidade de conhecer a linguagem X3D, algumas ferramentas usadas para amostragem e construo dos arquivos X3D, tambm tiveram a oportunidade de ver vrios mtodos do X3D e a possibilidade de construrem alguns exemplos em X3D. Como concluso

23

foi visto que os alunos gostaram do mini-curso e que se interessaram no X3D, tiveram facilidade em aprender o que foi passado no mini-curso, pois conseguiram fazer todos os exerccios propostos no mesmo. Assim sendo, foi de grande experincia para o ministrador do mini-curso na questo da viso de como ministrada uma aula e como verificar o aprendizado do aluno e para os alunos foi de grande utilidade para estenderem melhor com funciona a programao em 3D e aprenderem desenvolverem aplicaes em X3D.

3.5. ESTUDO DA INTEGRAO X3D COM JAVA

Foi feito uma pesquisa na internet sobre a integrao de X3D com Java, em seguida foi feito um estudo sobre o cdigo que esta sendo desenvolvido no simulador do rob virtual por HOSS, Alessandro (HOSS, Alessandro,2008). Nessa etapa foi entendido como o Java faz para estabelecer a comunicar com o X3D. Criando uma varivel no Java X3DScrene que recebe todo um cdigo X3D relacionado a um arquivo atravs da funo Java

Browser.createX3DFromURL(String[] arg0) ,sendo o Browser um navegador para X3D; e uma varivel no Java X3DNode que recebe um mtodo definido no arquivo X3D, atravs da funo do Java X3DScrene.getNamedNode(nome do mtodo), com os arquivos desenvolvidos em X3D, tambm foi entendido com o Java busca vrios tipos de dados do X3D atravs do da funo Java getFild(nome da fild), que pega uma varivel declarada no mtodo fild do cdigo X3D, o fild um mtodo de define vrios tipos de variveis sendo eles desde SFBool at MFNode, onde o SF usado quando a varivel singular e MF usado quando so varias variveis do tipo.

3.6. TRADUO DOS BOTES PARA A LNGUA INGLESA

Nesta etapa foi feito uma anlise dos nomes de cada campo do programa de simulao do rob e buscada a traduo para cada um desses campos. Tambm foi preciso criar duas funes no arquivo do Java JanelaPrincipal, chamadas de idioIngles e idioPortugues (Quadro 1), que usa a funo setText para mudar o texto do campo da janela principal e chamado uma funo setIdioma das sub-janelas para que elas tambm mudem o texto dos seus campos, assim como um campo na barra-de-menu que tem dois campos de escolha a de portugus ou ingls (Figura 7). Tambm foi preciso adaptar os campos de cada janela, pois os tamanhos das palavras em ingls e em portugus variam.

24

Quadro 1 Funo idioIngles e idioPortugues

Figura 7 Escolha de idiomas para ingls ou portugus

25

3.7. CRIAO DE ALGUMAS FUNCIONALIDADES EM JAVA PARA O SIMULADOR ROBTICO CONVERTIDO DE VRML PARA X3D

3.7.1. Adaptao das sub-janelas em relao a janela principal

Aqui tnhamos o problema de que quando de chamava as sub-janelas da janela principal do simulador do rob, elas iniciavam em lugares que atrapalhavam a viso do usurio. Para que as sub-janelas no ficassem atrapalhando tanto a viso do usurio, como solua foi proposto que as sub-janelas, quando chamadas, sejam abertas no canto da janela principal. Para isso foi preciso passar o valor do tamanho da janela principal, para os arquivos das sub-janelas para que as subjanelas tenham o tamanho delas acrescentadas ou tiradas do tamanho da tela principal para que fiquem no local adequado (Figura 8).

Figura 8 Local de cada sub-janela em relao a janela principal

26

3.7.2. Funo para mostrar o ponto final do rob

Essa parte no existia no simulador do rob em VRML. Para esse caso foi criado no arquivo rob do X3D, e se trata de uma esfera semi-transparente, que fica no ponto estremo da garra do rob, para melhor visualizao de onde este localizado esse ponto que chamado de PFP (Ponto final da pinsa). Para isso foi acrescentado no mtodo da garra uma esfera semi-transparente que representa o PFP e foi preciso fazer uma funo na parte de script do programa para mudar a transparncia da esfera, o (Quadro 2) mostra na parte de cima o cdigo em X3D da esfera e na parte de baixo mostra a funo que pode ser chamado pelo Java para deixar a esfera totalmente ou parcialmente transparente. No Java foi feito uma funo para chamar a funo inPFPVisivel2 no arquivo X3D, passando como valor true para que a esfera fique parcialmente transparente quando o usurio marca a opo Show Axes da janela Parameters do simulador do rob e passando como valor false para que a esfera fique totalmente transparente quando o usurio desmarca a opo Show PFP da janela Parameters do simulador do rob do Java(Quadro 3).

Quadro 2 Construo da esfera e a funo de mudana da transparncia do PFP

Quadro 3 Chamada em Java da transparncia d PFP

27

3.7.3. Funo para mostrar Eixo

Essa funo j existia no VRML e composto dos eixos X,Y, Z, situado na base do rob que ficava transparente quando o usurio desmarcava um campo, mas a funo teve um problema quando convertido para X3D: a questo do browser no aceitar a transparncia das linhas do Eixo. O problema foi resolvido com a insero de um Switch no grupo dos eixos criados no arquivo do rob X3D e em vez da alterao a transparncia, os eixos so removidos e recolocados quando a funo inEixosVisivel do arquivo rob X3D chamada, mudando o campo whichChoice para 1 ou para 0 se o usurio desmarca ou marca o campo Show Axes na janela Parameters do simulador do rob do Java (Quadro 4).

Quadro 4 Especificao do switch no grupo dos eixos

3.8. FUNES DO CLCULO DA CINEMTICA DIRETA

3.8.1. Mostrar na sub-janela Cinemtica Direta os valores X, Y, Z

Nessa etapa, foram necessrios trs campos, X, Y, Z, na sub-janela Cinemtica Direta, que recebem o valor do estremo do rob em X, Y, Z, em relao com os eixos X, Y, Z da base. Sendo que qualquer movimento que o rob execute, deve ser feito um novo calculo para os campos. Para tanto foi criado os campos X, Y, Z, logo a cima do campo de abordagem e foi preciso fazer uma anlise para encontrar as funo getPontoX, getPontoY, getPontoZ j existente no arquivo CenaX3D do Java, essas funes pegam os valores dos pontos X, Y, Z do estremo do rob contidas no arquivo rob X3D, com uma medida menor que a de milmetros. Ento foi preciso verificar o tamanho do rob real e fazer uma transformao com o valor pego com as funes getPontoX, getPontoY, getPontoZ para que o resultado seja dado de forma mais parecida com o rob real, com a medida em milmetros (Figura 9)

28

Figura 9 Mostra na sub-janela Cinemtica Direta os valores X, Y, Z

3.8.2. Interpolao do rob

Essa funo j existia no simulador robtico em VRML. Ele serve para que quando o usurio passar pontos de destinos na sub-janela Programao e apertar o boto executar o rob, faa um movimento que passe por vrios pontos entre o local onde o rob se encontra e seu destino. Por tanto foi feito vrios testes para saber quais as mudanas necessria na funo do simulador robtico em VRML fosse adaptada, com estes testes foi descoberto que era preciso fazer uma alterao diminuindo o valor relativo ao tempo que o Java pega do relgio do computador, para ento enviar para o arquivo rob X3D, pois o valor do tempo no Java que pego do relgio do computador de maior preciso do que o tempo pego do relgio do computador no X3D, tambm foi alterado o campo relgio no mtodo Field (mtodo de declarao de varivel) que era um n e foi transformado em estilo time e quando chamado a funo de interpolao ele passe esse valor para o mtodo TimeSensor, que inicia o processo de interpolao, tambm foi alterado os campos de tipo n que recebiam os ngulos do rob para o calculo do ponto determinado, para o campos j existente de multi-rotaes, pois so de melhor entendimento para o programado (Quadro 5).

29

Quadro 5 Funes no X3D para que a interpolao seja feita

30

4.

CONSIDERAES FINAIS

O estgio ainda no terminou, as funes em desenvolvimento sero terminados no tempo previsto. Este estgio esta sendo de grande experincia para o desenvolvedor no mercado de trabalho em vista de que esse seu primeiro trabalho, o aprendizado sobre a linguagem X3D tanto como a de comando em Java que ainda no conhecia ser de grande ajuda para possveis trabalhos com essas linguagens. Tambm a responsabilidade de ter um horrio, a necessidade de construo de planos de desenvolvimento e a responsabilidade de cumprir no prazo os planos propostos foram de utilidade para toda a vida. As conversas com orientador e com outros desenvolvedores mostraram ao desenvolvedor que muito importante se manter uma conversa entre as pessoas envolvidas com o trabalho para no causar desentendimento no futuro. Como trabalho futuro recomendado o tratamento de coliso do rob, a interao do rob com outros objetos e a implementao de outros tipos de garras para o rob. Por ultimo este estagio esta sendo de grande aprendizado sobre a questo de robs e como otimiz-los em um simulador. As dificuldades encontradas esto sendo o tempo gasto para saber se j existia a funo no simulador robtico VRML e onde se encontrava, e a questo de desenvolvimento e entrega de relatrio que era de pouco entendimento para o desenvolvedor. Os pontos fortes do estagio esto sendo a questo de que agora o rob tem bem mais funes do que antes e esta com uma visualizao mais parecida com a real.

31

5.

ANEXOS

Slides do mini-curso:

32

33

34

35

36

37

38

39

40

41

42

6. GLOSSRIO

X3D linguagem para desenvolvimento de modelos 3D para web. Browser XJ3D ferramenta para visualizao de dos modelos do X3D. X3D-Edit ferramenta para que facilita o desenvolvimento em X3D. Java linguagem de alto nvel que no depende de plataforma. VRML Linguagem usada para desenvolvimento de realidade virtual Cinemtica direta o calculo atravs das coordenada das juntas do rob para saber onde esta seu ponto final no eixo X, Y, Z. Cinemtica inversa o calculo atravs do ponto final do rob em X, Y, Z para determinar a coordenada das juntas.

43

7. REFERNCIAS

BENEDITO,

Miguel.

XML

Extensible

Markup

Language.

Disponvel

em:

<http://www.gta.ufrj.br/grad/00_1/miguel/>. Acessado em: 18 de junho 2009. Bitmanagement Software. Bitmanagement Software GmbH. Disponvel em:

<http://www.bitmanagement.de/>. Acessado em: 01 de junho 2009. BRUTZMAN, Don; DALY, Leonard. X3D Extensible 3D Graphics for web authors. Disponvel em: <http://x3dgraphics.com/>. Acessado em: 16 de maio de 2009. Eshed robotec. SCORBOT-ER 4pc users manual. Eshed robotic, 1999. HORSTMANN, Cay; CORNELL, Gary. Core Java 2 volume 1 e 2. Pearson Education Brasil, 1 edio, 2003. HOSS, Alessandro. Interatividade cinemtica em um rob virtual. Trabalho de Concluso de Curso de bacharelado em cincia da computao UDESC, 2008. IPOLITO Juliano. VRML virtual reality modeling language. Disponivel em:

<http://www2.dc.ufscar.br/~grv/vrml/tutoriais/vrml10/>. Acessado em: 01 de junho de 2009. ISSO; IEC. ISO/IEC 14772-1:1997/Amd. 1:2002 VRML97 Amendment 1. 2002. LARVA. LARVA Laboratrio de Realidade Virtual Aplicada. Disponvel em:

<http://www2.joinville.udesc.br/~larva/portal/index.php>. Acessado em: 20 de maio 2009. Savage. Disponvel em: <https://savage.nps.edu/X3D-Edit>. Acessado em: 16 de maio 2009. XJ3D. The XJ3D Project. Disponvel em: <http://www.xj3d.org/>. Acessado em: 16 de maio de 2009. WEB3D Consortium. Disponvel em: <http://www.web3d.org/x3d/xj3d/>. Acessado em: 16 de maio de 2009.

You might also like