SlideShare uma empresa Scribd logo
1 de 63
Baixar para ler offline
´                     ´
     UNIVERSIDADE TECNOLOGICA FEDERAL DO PARANA
                    ˆ             ˆ             ´
DEPARTAMENTOS ACADEMICOS DE ELETRONICA E INFORMATICA
                                       ¸˜
         CURSO DE ENGENHARIA DE COMPUTACAO



                AGNALDO CESAR COELHO
                 ´
            ANDRE LUIZ CONSTANTINO BOTTA
              LEANDRO ALVES DOS SANTOS




          ¸˜                           ´
   INTEGRACAO DO TRACKER AO TEWNTA: A FISICA NO
                              ˆ
                FUTEBOL DE ROBOS



                             ˜
   PROJETO DE TRABALHO - VERSAO 0.2 - MONOGRAFIA 11A
                       29/06/2011




                    CAMPUS CURITIBA

                          2011
AGNALDO CESAR COELHO
             ´
        ANDRE LUIZ CONSTANTINO BOTTA
          LEANDRO ALVES DOS SANTOS




       ¸˜                           ´
INTEGRACAO DO TRACKER AO TEWNTA: A FISICA NO
                           ˆ
             FUTEBOL DE ROBOS




                                            `
              Este Projeto foi apresentado a Unidade Curricular
                                   ¸˜
              de Oficina de Integracao 1 do Curso de Engenharia
                          ¸˜
              de Computacao da Universidade Tecnol´ gica Fede-
                                                     o
                                                      ¸˜
              ral do Paran´ como requisito para aprovacao.
                          a

              Orientador:      Jo˜ o Alberto Fabro
                                 a

              Co-orientador: Nestor Cortez Savedra Filho




               CAMPUS CURITIBA
                        2011
¸˜
         Integracao do Tracker ao Tewnta: A F´sica no Futebol de Robˆ s
                                             ı                      o
Agnaldo Cesar CoelhoAndr´ Luiz Constantino Botta Leandro Alves dos Santos
                        e


           Autor da imagem da capa: Rafael Jaime Sunyˆ Guinart
                                                     e
RESUMO




Agnaldo Cesar Coelho; Andr´ Luiz Constantino Botta; Leandro Alves dos Santos. Integracao
                            e                                                             ¸˜
do Tracker ao Tewnta: A F´sica no Futebol de Robˆ s. 60 f. Projeto de Trabalho - Vers˜ o 0.2 -
                          ı                     o                                    a
                                                              ¸˜
Monografia 11a 29/06/2011 – Curso de Engenharia de Computacao, Universidade Tecnol´ gica o
Federal do Paran´ . Campus Curitiba, 2011.
                a

Pretende-se neste projeto aperfeicoar o software simulador de Futebol de Robˆ s Tewnta, para
                                    ¸                                         o
que o mesmo possa, da forma mais fiel poss´vel, representar as caracter´sticas e comportamen-
                                            ı                          ı
                              a           ¸˜
tos, tais como velocidade m´ xima, aceleracao e torque de cada robˆ simulado, quando compa-
                                                                  o
                                              ´
rado ao comportamento f´sico real. Para isso, e utilizado o software Tracker como ferramenta
                            ı
b´ sica para a obtenca
 a                  ¸ ˜ o de dados.

Palavras-chave: Simulacao, Futebol de Robˆ s, Tewnta, Tracker
                      ¸˜                 o

Areas de Conhecimento:
AGRADECIMENTOS




    Agradecemos aos professores orientadores Jo˜ o Alberto Fabro e Nestor Cortez Saavedra
                                               a
Filho por terem nos auxiliado durante todo o projeto. Ao aluno Leonardo Pressoto Oliveira
              ¸˜
pela contribuicao ao dividir conosco seus conhecimentos a respeito do Tracker. Aos alunos
Geison Dartora e Matheus Ara´ jo por nos auxiliarem, principalmente, no inicio deste projeto.
                            u
                                                             ¸˜
E tamb´ m aos professores da disciplina de Oficinas de Integracao: Arandi Ginane Bezerra
      e
J´ nior, Andr´ Fabiano Steklain e Luiz Ernesto Merkle por nos ensinarem como proceder na
 u           e
       ¸˜
realizacao de pesquisa cient´fica e na escrita de uma monografia.
                            ı
LISTA DE FIGURAS




                     ¸˜                  ¸˜
FIGURA 1 – VARIACAO DA POSICAO DE UM OBJETO EM FUNCAO DO TEMPO. 13                                    ¸˜
              ´                         ´
FIGURA 2 – METODO PARA O CALCULO DA VELOCIDADE INSTANTANEA (TI-                                                     ˆ
          PLER, 2009). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
FIGURA 3 – LIGA INFANTIL - HUMANOID LEAGUE KIDSIZE. . . . . . . . . . . . . . . . . 18
FIGURA 4 – MIDDLE SIZE LEAGUE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
                  ˆ
FIGURA 5 – ROBOS UTILIZADOS NA SMALL SIZE LEAGUE. . . . . . . . . . . . . . . . . . 19
FIGURA 6 – CAMPO OFICIAL DA SSL LEAGUE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
FIGURA 7 – TELA DE UMA PARTIDA SOCCER SIMULATION LEAGUE 2D. . . . . 20
FIGURA 8 – DESLOCAMENTO DE UMA BOLA EM FUNCAO DO TEMPO. . . . . . 21                    ¸˜
                       ´
FIGURA 9 – TRAJETORIA DO CENTRO DE MASSA. . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
                                                               ˆ
FIGURA 10 – CAMPO DE FUTEBOL DE ROBOS UTILIZADO NAS FILMAGENS. 22
                                              ´
FIGURA 11 – UM REFERENCIAL METRICO, CANTO SUPERIOR ESQUERDO, E                                                                      ´
                                                                ˆ
          UTILIZADO AO FILMAR OS ROBOS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
FIGURA 12 – CAMPO DE FUTEBOL DE ROBOS                          ˆ UTILIZADO NAS FILMAGENS. 24
FIGURA 13 – COMANDO IMPORT LOCALIZADO EM FILE → IMPORT → VIDEO. 25
FIGURA 14 – COMANDO CLIP SETTINGS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
FIGURA 15 – COMANDO CALIBRATION TAPE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
FIGURA 16 – SISTEMA DE COORDENADAS CARTESIANAS. . . . . . . . . . . . . . . . . . . . 27
                    ¸˜
FIGURA 17 – CRIACAO DE UM NOVO PONTO DE MASSA. . . . . . . . . . . . . . . . . . . . . . 27
                            ¸˜
FIGURA 18 – CONFIGURACAO DO NOVO PONTO DE MASSA CRIADO. . . . . . . . 28
FIGURA 19 – ABA TEMPLATE DEFINE A IMAGEM A SER CAPTURADA EM CADA
          FRAME DE V´     IDEO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
FIGURA 20 – A ABA TARGET DETERMINA UM ”ALVO”COMO O PONTO PRIN-
          CIPAL A SER CAPTURADO EM CADA FRAME. . . . . . . . . . . . . . . . . . . . . . 29
FIGURA 21 – NA ABA ACCEPT DETERMINA-SE UM N´                                      IVEL DE PRECISAO PARA             ˜
          A CAPTURA DO MOVIMENTO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
                                     ´
FIGURA 22 – NA ABA SEARCH E DISPONIBILIZADO UM RETANGULO TRACE-                                    ˆ
                                                    ´
          JADO PARA DEMARCAR A AREA DE PROCURA. ESSE RETANGULO                                                      ˆ
                               ´
          DEVE TER EM MEDIA O TAMANHO DO OBJETO PROCURADO. . . . 30
FIGURA 23 – ´
            ICONES DE VELOCIDADE E ACELARACAO DENTRO DO RETANGULO. 31          ¸˜                                            ˆ
FIGURA 24 – ROBO  ˆ EM MOVIMENTO ANGULAR. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
                            ¸˜
FIGURA 25 – CONFIGURACAO PARA O SISTEMA DE COORDENADAS ACOM-
                                                        ˆ
          PANHAR O CENTRO DO ROBO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
                                ´
FIGURA 26 – TABELAS E GRAFICOS EXIBIDOS NO CANTO DIREITO DA TELA. 33
                ´
FIGURA 27 – GRAFICO DO MOVIMENTO ANGULAR, EM THETA RADIANOS,
                         ¸˜
          COM RELACAO AO TEMPO EM SEGUNDOS. O ROBO ROTACIONA                                             ˆ
                                  ´
          NO SENTIDO HORARIO COM VELOCIDADE CONSTANTE. . . . . . . . . . 34
                ´
FIGURA 28 – GRAFICO DO MOVIMENTO ANGULAR, EM THETA RADIANOS,
                         ¸˜
          COM RELACAO AO TEMPO EM SEGUNDOS. O ROBO ROTACIONA                                             ˆ
                                  ´
          NO SENTIDO HORARIO COM TORQUE INICIAL. . . . . . . . . . . . . . . . . . . . 34
                ´
FIGURA 29 – GRAFICO DO MOVIMENTO ANGULAR, EM THETA RADIANOS,
                         ¸˜
          COM RELACAO AO TEMPO EM SEGUNDOS AO QUADRADO. ESTE
´
          GRAFICO FOI OBTIDO AO LINEARIZAR O GRAFICO DA FIGURA                                        ´
          ANTERIOR. O ROBO                ˆ ROTACIONA NO SENTIDO HORARIO COM TOR-                             ´
          QUE INICIAL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
                ´
FIGURA 30 – GRAFICO DO MOVIMENTO ANGULAR, EM THETA RADIANOS,
                           ¸˜
          COM RELACAO AO TEMPO EM SEGUNDOS. O ROBO ROTACIONA                                                    ˆ
                                                      ´
          NO SENTIDO ANTI-HORARIO COM VELOCIDADE CONSTANTE. . . 35
                ´
FIGURA 31 – GRAFICO DO MOVIMENTO ANGULAR, EM THETA RADIANOS,
                           ¸˜
          COM RELACAO AO TEMPO EM SEGUNDOS. O ROBO ROTACIONA                                                    ˆ
                                                      ´
          NO SENTIDO ANTI-HORARIO COM TORQUE INICIAL. . . . . . . . . . . . . . 36
                ´
FIGURA 32 – GRAFICO DO MOVIMENTO ANGULAR, EM THETA RADIANOS,
                           ¸˜
          COM RELACAO AO TEMPO EM SEGUNDOS AO QUADRADO. ESTE
              ´
          GRAFICO FOI OBTIDO LINEARIZANDO O GRAFICO DA FIGURA ??.                               ´
                  ˆ
          O ROBO ROTACIONA NO SENTIDO ANTI-HORARIO COM TORQUE                                       ´
          INICIAL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
                ´
FIGURA 33 – GRAFICO DO DESLOCAMENTO, EM X (METROS), EM FUNCAO                                                                       ¸˜
          DO TEMPO EM SEGUNDOS. O ROBO SE MOVIMENTA COM ACELERACAO        ˆ                                                                  ¸˜
          INICIAL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
                ´
FIGURA 34 – GRAFICO DO DESLOCAMENTO, EM X (METROS), EM FUNCAO                                                                       ¸˜
          DO TEMPO EM SEGUNDOS AO QUADRADO. ESTE GRAFICO FOI                                                           ´
          OBTIDO LINEARIZANDO O GRAFICO DA FIGURA ??. O ROBO SE      ´                                                              ˆ
                                                                ¸˜
          MOVIMENTA COM ACELERACAO INICIAL. . . . . . . . . . . . . . . . . . . . . . . . . 37
                ´
FIGURA 35 – GRAFICO DO DESLOCAMENTO, EM Y (METROS), EM FUNCAO                                                                       ¸˜
          DO TEMPO EM SEGUNDOS. O ROBO SE MOVIMENTA COM ACELERACAO        ˆ                                                                  ¸˜
          INICIAL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
                ´
FIGURA 36 – GRAFICO DO DESLOCAMENTO, EM Y (METROS), EM FUNCAO                                                                       ¸˜
          DO TEMPO EM SEGUNDOS AO QUADRADO. ESTE GRAFICO FOI                                                           ´
          OBTIDO LINEARIZANDO O GRAFICO DA FIGURA ??. O ROBO SE      ´                                                              ˆ
                                                                ¸˜
          MOVIMENTA COM ACELERACAO INICIAL. . . . . . . . . . . . . . . . . . . . . . . . . 38
                ´
FIGURA 37 – GRAFICO DO DESLOCAMENTO, EM Y (METROS), EM FUNCAO                                                                       ¸˜
          DO TEMPO EM SEGUNDOS. O ROBO SE MOVIMENTA COM ACELERACAO        ˆ                                                                  ¸˜
          INICIAL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
                ´
FIGURA 38 – GRAFICO DO DESLOCAMENTO, EM Y (METROS), EM FUNCAO                                                                       ¸˜
          DO TEMPO EM SEGUNDOS AO QUADRADO. ESTE GRAFICO FOI                                                           ´
          OBTIDO LINEARIZANDO O GRAFICO DA FIGURA ??. O ROBO SE      ´                                                              ˆ
                                                                ¸˜
          MOVIMENTA COM ACELERACAO INICIAL. . . . . . . . . . . . . . . . . . . . . . . . . 39
                ´
FIGURA 39 – GRAFICO DO DESLOCAMENTO, EM X (METROS), EM FUNCAO                                                                       ¸˜
          DO TEMPO EM SEGUNDOS. O ROBO                                       ˆ SE MOVIMENTA COM VELO-
          CIDADE CONSTANTE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
                                       ´
FIGURA 40 – INTERFACE GRAFICA DO SIMULADOR TEWNTA. . . . . . . . . . . . . . . . 41
                                                                ¸˜
FIGURA 41 – DIAGRAMA DE COMUNICACAO (APERFEICOAMENTO DO SIMULADOR DE RO
          2011). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
FIGURA 42 – DIAGRAMA DE FLUXO (APERFEICOAMENTO DO SIMULADOR DE ROBOS TEW                                                                        ˆ
          2011). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
FIGURA 43 – PROPETIES. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
FIGURA 44 – CLASSE INDEPENDENTROBOT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
FIGURA 45 – CLASSE INDEPENDENTROBOT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
FIGURA 46 – ENCAPSULAMENTO ALTERADO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
FIGURA 47 – ISINDEPENDENTROBOT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
FIGURA 48   –   SETPLAYERROTATION. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .            49
FIGURA 49   –   SETPLAYERROTATIONVELOCITY. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                          49
FIGURA 50   –   SETPLAYERVELOCITY. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .            50
FIGURA 51   –   ADDROBOT.PNG. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .   51
FIGURA 52   –                                     ¸˜
                MOVIMENTO DE TRANSLACAO E ROTACAO TERRESTRE. . . . . . .     ¸˜                                                   55
FIGURA 53   –   DESLOCAMENTO DE UM CORPO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                           56
FIGURA 54   –   COMPONENTES DO VETOR , EM RELACAO AOS EIXOS Y E X. . .    ¸˜                                                      57
FIGURA 55   –               ¸˜
                REPRESENTACAO DE DOIS VETORES, E , E DO VETOR SOMA, .                                                             57
FIGURA 56   –   EFEITO DA PRIMEIRA LEI DE NEWTON. . . . . . . . . . . . . . . . . . . . . . . . . .                               59
LISTA DE TABELAS




TABELA 1   – DADOS PARA MOVIMENTO LINEAR. . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
TABELA 2   – DADOS PARA MOVIMENTO ANGULAR . . . . . . . . . . . . . . . . . . . . . . . . 34
LISTA DE SIGLAS




UTFPR   Universidade Tecnol´ gica Federal do Paran´
                           o                      a

SSL     Small Size League

UFRGS   Universidade Federal do Rio Grande do Sul

ETL     Electro Technical Laboratory

IJCAI   Conferˆ ncia Internacional de Inteligˆ ncia Artificial
              e                              e

GNU     Genereal Public License
´
                                                                   SUMARIO




                ¸˜
1 INTRODUCAO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .              10
                  ¸˜
1.1 DELIMITACAO DO TEMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                           10
1.2 O PROBLEMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .            10
1.3 OBJETIVOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .       11
1.4 OBJETIVOS ESPEC´          IFICOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .              11
1.5 JUSTIFICATIVA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .           11
       ´
1.6 METODOS DE PESQUISA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                         11
                ¸˜           ´
2 INTRODUCAO TEORICA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                            13
2.1 MOVIMENTO LINEAR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                      13
2.1.1 Velocidade Linear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .         13
Velocidade M´ dia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
             e                                                                                                                                        13
Velocidade Instantˆ nea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
                    a                                                                                                                                 14
              ¸˜
2.1.2 Aceleracao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .    14
2.2 MOVIMENTO ANGULAR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                           15
2.2.1 Velocidade Angular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .            15
              ¸˜
2.2.2 Aceleracao Angular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .            15
3 ROBOCUP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .         17
                              ´
3.1 UMA BREVE HISTORIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                        17
3.1.1 Categorias RoboCup Soccer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                   18
4 TRACKER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .       21
                 ¸˜
4.1 PREPARACAO DO AMBIENTE PARA FILMAGEM . . . . . . . . . . . . . . . . . . . . . . . . . . .                                                        22
                                     ˆ
4.2 FILMAGEM DOS ROBOS EM MOVIMENTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                                                 23
              ¸˜
4.3 DISTORCOES NAS MEDIDAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                              24
             ¸˜
4.4 OBTENCAO DOS DADOS UTILIZANDO O TRACKER . . . . . . . . . . . . . . . . . . . . . . .                                                             24
                 ¸˜
4.4.1 Configuracao Inicial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .           24
           ¸˜
4.5 CRIACAO DO PONTO DE MASSA E OBTENCAO DOS DADOS MANUAL E                          ¸˜
     AUTOMATICAMENTE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                      26
                                      ¸˜
4.6 PASSOS PARA OBTENCAO DOS DADOS COM MOVIMENTO LINEAR . . . . . . .                                                                                 30
                                      ¸˜
4.7 PASSOS PARA OBTENCAO DOS DADOS COM MOVIMENTO ANGULAR . . . .                                                                                      31
4.8 DADOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .   31
5 TEWNTA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .      41
          ˜                        ´
5.1 VISAO GERAL DO CODIGO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                             43
                ¸˜
5.2 ALTERACOERS IMPLEMENTADAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                                       43
            ¸˜
5.2.1 Criacao de novas propriedades no arquivo Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . .                                     43
            ¸˜
5.2.2 Criacao da classe IndependentRobot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                          45
                   ¸˜                                                          ˆ
5.3 ATUALIZACAO DO MOVIMENTO DO ROBO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                                                  47
5.3.1 Inicializar Robˆ Correspondente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
                      o                                                                                                                               49
                 ˜
6 CONCLUSAO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .             52
         ˆ
REFERENCIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .         53
       ˆ                                  ´                                     ´
7 APENDICE - TEORIAS FISICAS E MATEMATICAS . . . . . . . . . . . . . . . . . . . . . . . .                                                            55
7.1 GRANDEZAS ESCALARES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                             55
7.2 GRANDEZAS VETORIAIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                     56
7.2.1 Somas Alg´ bricas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
               e                                                                                                                                56
7.2.2 Soma Geom´ trica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
                 e                                                                                                                              57
7.3 ESTUDO DO MOVIMENTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .                       57
10




1            ¸˜
      INTRODUCAO




1.1            ¸˜
       DELIMITACAO DO TEMA


                          ¸˜ ´
      O ambiente de simulacao e amplamente utilizado em ambiente cient´fico. Simulam-se
                                                                      ı
   o                                e                                     a             `
fenˆ menos da natureza, circuitos el´ tricos e muitos outros desafios que s˜ o propostos a hu-
                  ¸˜
manidade. A simulacao proporciona resultados mais confi´ veis, agilidade nos experimentos,
                                                      a
                                                     e           a                       ¸˜
economia de recursos materiais e financeiros, etc. Por´ m tudo est´ condicionado a utilizacao de
um software que seja capaz de simular o evento em estudo de forma real e confi´ vel.
                                                                             a

      Os estudos envolvendo Rob´ tica se encaixam perfeitamente na vantagem de se utilizar um
                               o
                  ¸˜                                                  ¸˜
software de simulacao. Este trabalho esta focado no software de simulacao de Futebol de Robˆ
                                                                                           o
Tewnta, utilizado na categoria de robˆ s F-180 da RoboCup, assim como no programa Tracker.
                                     o
Pretende-se mostrar que e poss´vel melhorar o Tewnta atrav´ s dos dados coletados pelo Tracker,
                              ı                           e
tornando assim poss´vel obter como resultado final um simulador que seja capaz de representar
                   ı
cada robˆ de forma individual, sabendo que os robˆ s n˜ o apresentam as mesmas caracter´sticas
        o                                        o a                                   ı
de hardware, ou seja, eles respondem de forma diferente ao mesmo comando.

      Este projeto da continuidade ao trabalho realizado por uma equipe do segundo semestre
                                          ¸˜
de 2010 na disciplina de Oficina de Integracao I. A equipe era composta por Matheus Ara´ jo,
                                                                                      u
Geison Dartora, Mayara Lorenzi e Cristiano Ribas, cujo foco foi melhorar o simulador, por´ m,
                                                                                         e
                   ı             ´
segundo as caracter´sticas de um unico robˆ .
                                          o


1.2    O PROBLEMA


                      o ´                   ¸˜
      O Futebol de Robˆ s e fonte de inspiracao, leva aos jovens o esp´rito da ciˆ ncia, pois pro-
                                                                      ı          e
move a interdisciplinaridade, envolvendo pesquisa principalmente em Inteligˆ ncia Artificial,
                                                                           e
F´sica e Matem´ tica (FIRA, 2011).
 ı            a

      A UTFPR trabalha na pesquisa de um time de Futebol de Robˆ s da categoria F-180 da
                                                               o
RoboCup SSL. Para auxiliar no desenvolvimento de estrat´ gias de jogo a UTFPR utiliza o
                                                       e
                      ´
simulador Tewnta, que e um software open source da SSL, desenvolvido na UFRGS por Gabriel
11


                                                                       ¸˜            ¸˜
Girardello Detoni em 2008 (TEWNTA, 2011). No entanto, h´ algumas limitacoes na simulacao
                                                       a
                      o            o               ¸˜
dos movimentos dos robˆ s. Cada robˆ possui aceleracoes e velocidades diferentes, tanto linear
quanto angular. O Tewnta n˜ o leva em conta essas caracter´sticas, sendo que para uma melhor
                          a                               ı
      ¸˜
simulacao esses atributos devem ser considerados. Atrav´ s do Tracker, software open source
                                                       e
para an´ lise e modelagem de v´deos, pode-se coletar esses dados de forma precisa e ent˜ o
       a                      ı                                                        a
adicion´ -los ao Tewnta.
       a


1.3     OBJETIVOS


                  ´
       O objetivo e aperfeicoar o software Tewnta, simulador de Futebol de Robˆ s para a liga
                           ¸                                                  o
F-180, para que este reproduza com precis˜ o os movimentos de cada um dos cinco robˆ s que
                                         a                                         o
comp˜ em a equipe de Futebol de Robˆ s da UTFPR.
    o                              o


1.4     OBJETIVOS ESPEC´
                       IFICOS


      • Simulacao da aceleracao linear e angular, espec´fica de cada robˆ .
              ¸˜            ¸˜                         ı               o

      • Simulacao da velocidade linear e angular de cada robˆ .
              ¸˜                                            o


1.5     JUSTIFICATIVA


                       ´
       Duas principais areas do conhecimento est˜ o relacionadas no desenvolvimento deste pro-
                                                a
                         a           e            ¸˜
jeto, sejam elas a inform´ tica atrav´ s de aplicacao no desenvolvimento de software de compu-
                              ¸˜
tador na linguagem de programacao Java, afim de melhorar o simulador de Futebol de Robˆ s
                                                                                     o
                                                       ¸˜
Tewnta, assim como grandezas f´sicas, tais como aceleracao e velocidade, angular e linear.
                              ı
                            ¸˜                                                ´
Pois, para se ter uma simulacao virtual o mais pr´ xima poss´vel da realidade e preciso levar em
                                                 o          ı
         ¸˜
consideracao os efeitos de eventos f´sicos.
                                    ı


1.6      ´
        METODOS DE PESQUISA


       O m´ todo empregado neste projeto consiste em pesquisa experimental auxiliado pelo soft-
          e
                                                                                          ¸˜
ware Tracker, software este que a partir de v´deos fornece dados como velocidade e aceleracao
                                             ı
de um ou mais objetos. Para alcancar os objetivos deste projeto s˜ o seguidos os seguintes pas-
                                 ¸                               a
sos:


      • Coleta de dados dos robˆ s em movimento retil´neo e angular, utilizando uma cˆ mera de
                               o                     ı                               a
12


   ı                             ı    ´
  v´deo e o software Tracker. O v´deo e importado pelo programa Tracker. Este, por sua
                      ¸˜
  vez, fornece informacoes acerca dos movimentos de cada robˆ .
                                                            o

• Criacao de novas classes e m´ todos no c´ digo fonte do Tewnta para insercao dos dados
      ¸˜                      e           o                                ¸˜
  no c´ digo fonte afim de representar individualmente os robˆ s. Esses m´ todos reprodu-
      o                                                     o           e
                            ı              o                        ¸˜
  zem os movimentos caracter´sticos dos robˆ s, levando em consideracao toda e qualquer
  deficiˆ ncia existente.
       e

• Testes comparativos das aceleracoes e velocidades, angular e linear, de cada robˆ , no
                                 ¸˜                                               o
                                       ¸˜
  simulador, com as respectivas aceleracoes e velocidades dos robˆ s reais.
                                                                 o
13




2            ¸˜    ´
      INTRODUCAO TEORICA




2.1     MOVIMENTO LINEAR

2.1.1    Velocidade Linear

Velocidade M´ dia
            e

                              ¸˜                     ¸˜                 ¸˜
      Ao representar-se a posicao de um objeto em funcao do tempo ( notacao: x(t), sendo x
      ¸˜
a posicao e t o tempo), obt´ m-se um gr´ fico (figura 1), que revela com que rapidez o objeto
                           e           a
se move. V´ rias grandezas est˜ o associadas com a express˜ o “com que rapidez”, entre elas, a
          a                   a                           a
                       ´
velocidade m´ dia, que e a raz˜ o entre o deslocamento
            e                 a                            x e o intervalo de tempo    t, durante o
qual esse deslocamento ocorre (HALLIDAY DAVID; RESNICK, 2009):
                                                x x2 − x1
                                      vmed =      =                                            (1)
                                                t   t2 − t1
                                          ´
 A velocidade, assim como o deslocamento, e uma grandeza vetorial, portanto possui um




                               ¸˜         ¸˜                     ¸˜
                Figura 1: Variacao da posicao de um objeto em funcao do tempo.

                     ¸˜             ´                            ¸˜
m´ dulo e uma orientacao. O m´ dulo e o valor absoluto da inclinacao da reta, e um valor posi-
 o                           o
                        e                      ¸˜
tivo para a velocidade m´ dia (e para a inclinacao) significa que a reta est´ inclinada para cima da
                                                                           a
                                                                                    ¸˜
esquerda para a direita; um valor negativo para a velocidade m´ dia(e para a inclinacao) significa
                                                              e
14


que a reta est´ inclinada para baixo da esquerda para a direita (HALLIDAY DAVID; RESNICK,
              a
2009).


Velocidade Instantˆ nea
                  a

                                       `
    Analisando o gr´ fico da (figura 2), a medida que considera-se intervalos de tempo sucessiva-
                   a
                                                                                           ¸˜
mente menores, iniciando em tp, a velocidade m´ dia para o intervalo se aproxima da inclinacao
                                              e
da reta tangente em tp.




           Figura 2: M´ todo para o c´ lculo da velocidade instantˆ nea (TIPLER, 2009).
                      e              a                            a


                      ¸˜                                                               ´
    Define-se a inclinacao desta tangente como a velocidade instantˆ nea. Esta tangente e o
                                                                  a
                         x
limite da raz˜ o de
             a           t   quando   t tende a zero (TIPLER, 2009).

                                                        x dx
                                           v = lim        =                                 (2)
                                                t→0     t   dt


2.1.2           ¸˜
         Aceleracao

                                                                                            ¸˜
    Quando a velocidade de uma objeto ou part´cula varia, diz-se que este sofreu uma aceleracao
                                             ı
                                                             ¸˜
(ou foi acelerado) (HALLIDAY DAVID; RESNICK, 2009). A aceleracao m´ dia em um inter-
                                                                  e
valo de tempo       ´
                  t e:


                                                     v v2 − v1
                                          amed =       =                                    (3)
                                                     t   t2 − t1
15

                                                          v
               ¸˜               ´
      A acelerecao instantˆ nea e o limite da raz˜ o de
                          a                      a        t   quando   t tende a zero (TIPLER, 2009).

                                                      v dv
                                         a = lim        =                                         (4)
                                                t→0   t   dt

                      ¸˜ ´                                    ¸˜
      Assim, a aceleracao e a derivada da velocidade v em relacao ao tempo. Como a velocidade
´                   ¸˜           ¸˜                       ¸˜ ´
e a derivada da posicao x em relacao ao tempo t, a aceleracao e a derivada de segunda ordem de
         ¸˜
x em relacao a t (HALLIDAY DAVID; RESNICK, 2009).

                                            dv   d dx d 2 x
                                       a=      =       = 2                                        (5)
                                            dt   dt dt  dt

2.2     MOVIMENTO ANGULAR


                                             ¸˜
      Para o movimento rotacional tem-se equacoes an´ logas ao do movimento linear:
                                                    a


2.2.1    Velocidade Angular

                      ¸˜              ¸˜
      Um corpo em rotacao est´ na posicao angular θ1 no instante t1 , e na angular θ2 no instante
                             a
t2 . Define-se como velocidade angular m´ dia do corpo no intervalo de tempo
                                       e                                                 t (YOUNG
HUGH D.; FREEDMAN, 2009):
                                              θ2 − θ1          θ
                                         ω=           =                                           (6)
                                              t2 − t1          t
                                      ´                           ¸˜
A velocidade angular (instantˆ nea) ω e o limite da raz˜ o da equacao da velocidade angular
                             a                         a
m´ dia quando
 e                 tt tende a zero (YOUNG HUGH D.; FREEDMAN, 2009):
                                                      θ   dθ
                                        ω = lim         =                                         (7)
                                                t→0   t   dt


2.2.2           ¸˜
         Aceleracao Angular

                                                 ¸˜ a ´
      Se a velocidade angular de um corpo em rotacao n˜ o e constante, o corpo possui uma
       ¸˜
aceleracao angular. Sejam ω1 e ω2 as velocidades nos instantes t1 e t2, respectivamente. A
       ¸˜                                 ¸˜                         ´
aceleracao angular m´ dia do corpo em rotacao no intervalo t1 at´ t2 e definida atrav´ s da
                    e                                           e                   e
    ¸˜
equacao (8) (YOUNG HUGH D.; FREEDMAN, 2009):
                                                ω2 − ω1            ω
                                       αmed =            =                                        (8)
                                                 t2 − t1           t
16


         ¸˜                           ´
A aceleracao angular (instantˆ nea) α e o limite dessa grandeza quando
                             a                                           t tende a zero (YOUNG
HUGH D.; FREEDMAN, 2009):
                                                 ω   dω
                                    α = lim        =                                      (9)
                                           t→0   t   dt
17




3     ROBOCUP




      ´
      E jogado por robˆ s especializados em reproduzir diversos eventos que ocorrem em um jogo
                      o
                                      ¸˜
de futebol real. As principais competicoes s˜ o organizadas pela Fira e RoboCup e ocorrem a
                                            a
cada ano (ROBOT, 2011).


3.1                  ´
       UMA BREVE HISTORIA


      Em outubro de 1992 um grupo de pesquisadores japoneses, com o objetivo de discutir pro-
blemas desafiadores em inteligˆ ncia artificial, organizou um Workshop na cidade de T´ quio,
                             e                                                     o
Jap˜ o. Este encontro os levou a crer que seria poss´vel usar o futebol para promover ciˆ ncia e
   a                                                ı                                   e
tecnologia. Ap´ s muitos estudos sobre viabilidade financeira, tecnol´ gica e poss´veis impactos
              o                                                     o            ı
sociais eles decidiram dar inicio ao futebol de robˆ s, elaborando regras e inclusive desenvol-
                                                   o
          o                           ¸˜
vendo prot´ tipos e sistemas de simulacao. Ap´ s esse encontro em junho 1993, um grupo de
                                             o
pesquisadores, incluindo Minoru Asada, Yasuo Kuniyoshi e Hiroaki Kitano, decidiu lancar
                                                                                    ¸
           ¸˜                                                         ¸˜
uma competicao, provisoriamente chamado de Robˆ J-League. Essa competicao teve reper-
                                              o
cuss˜ o internacional e diversos pesquisadores de outros pa´ses se interessaram na ideia. Devido
    a                                                      ı
a isso, eles alteraram o nome do projeto para Robot World Cup Initiative, ”RoboCup”. Pouco
tempo depois, Itsuki Noda pesquisador da ETL, desenvolveu um simulador que mais tarde se
tornaria o servidor de futebol oficial da RoboCup (ROBOT, 2011).

      O an´ ncio para realizar a primeira Copa do Mundo de Futebol de Robˆ s foi feita durante
          u                                                              o
a (IJCAI-95) IJCAI realizada em Montreal, Canad´ , agosto de 1995. Mas a primeira Copa
                                               a
oficial de robos ocorre 1997 e foi um sucesso. Mais de quarenta equipes de varias partes do
mundo participaram, al´ m disso o n´ mero de espectadores foi maior que cinco mil (ROBOCUP,
                      e            u
2011a).

      Alcancando o Estado da Arte
           ¸

             ¸˜                            ´
      A intencao dos fundadores da RoboCup e utilizar esta para promover a rob´ tica e pesquisa
                                                                              o
em inteligˆ ncia artificial. Para eles, construir um robˆ para jogar futebol em si n˜ o gera impacto
          e                                            o                           a
18


                                               ¸˜             ´
social e econˆ mico significativo, mas a realizacao certamente e considerada como uma grande
             o
conquista do campo (ROBOCUP, 2011b).

    A RoboCup possui atualmente as seguintes modalidades: RoboCup Rescue, RoboCup@Home,
                                            ´
RoboCup Junior e RoboCup Soccer, sendo esta ultima foco de nosso estudo.


3.1.1   Categorias RoboCup Soccer

    Humanoid League

    Nesta liga, robˆ s autˆ nomos parecidos com humanos disputam uns contra os outros. Est´
                   o      o                                                               a
´
e a categoria mais complexa da RoboCup, pois os robˆ s tem que chutar a bola, ter um andar
                                                   o
   a                                 ı        e                                   ¸˜
dinˆ mico e correr sem perder o equil´brio, al´ m da necessidade de haver a percepcao visual da
bola, por parte deles. Os melhores robˆ s human´ ides do mundo disputam nesta liga (HUMA-
                                      o        o
NOID LEAGUE, 2011).

              ´
    Esta liga e divida em trˆ s subligas: KidSize (pequeno) com medidas 30 cm a 60 cm de
                            e
altura, TeenSize (m´ dio) de 100 cm a 120 cm, e AdultSize (grande) de 130 cm ou maior (HU-
                   e
MANOID LEAGUE, 2011).figura 3




                      Figura 3: Liga infantil - Humanoid League KidSize.


    Middle Size League

    Robˆ s de tamanho m´ dio n˜ o superior a 50 cm de diˆ metro disputam em equipes de no
       o               e      a                         a
m´ ximo seis, com bola de futebol de tamanho regular da FIFA em um campo similar a um
 a
campo de futebol em escala humana. Todos os sensores s˜ o on-board e os robˆ s podem usar a
                                                      a                    o
rede sem fio para se comunicar (MIDDLE SIZE LEAGUE, 2011).figura 4

    Soccer Small Size League

    Nesta liga se encaixam os robˆ s da UTFPR, o objetivo de pesquisa deste trabalho. Esta
                                 o
19




                                Figura 4: Middle Size League.

                                           ´
categoria de tamanho pequeno ou liga F180, e uma das mais antigas da RoboCup. Incide sobre
                     ¸˜
o problema da cooperacao multi-robot agente inteligente e controle em um ambiente altamente
dinˆ mico, com um sistema h´brido centralizado/distribu´do.figura 5
   a                       ı                           ı




                       Figura 5: Robˆ s utilizados na Small Size League.
                                    o


    As equipes s˜ o formadas por no m´ ximo cinco robˆ s. Eles possuem 18 cm de diˆ metro e
                a                    a               o                            a
n˜ o s˜ o maiores que 15 cm de altura. Os robˆ s jogam com uma bola de golfe laranja em um
 a a                                         o
campo verde de dimens˜ es de 605 cm de comprimento por 405 cm de largura (SMALL SIZE LEAGUE,
                     o
2011). figura 6




                            Figura 6: Campo oficial da SSL league.


    Todos os objetos no campo s˜ o controlados por um sistema de vis˜ o padronizado que pro-
                               a                                    a
cessa os dados fornecidos pelas duas cˆ meras que est˜ o ligados a uma barra de cˆ mera locali-
                                      a              a                           a
                                                                ´
zada 4 m acima do campo. O sistema de vis˜ o chamado SSL-Vision e um projeto open source
                                         a
mantido pela comunidade da liga (SMALL SIZE LEAGUE, 2011).
20


   Soccer Simulation League

   Nesta categoria n˜ o h´ robˆ s reais em cena. Jogadores virtuais e independentes (agentes)
                    a a       o
jogam futebol num campo virtual dentro de um computador. H´ duas subligas: 2D e 3D (STAN-
                                                          a
DARD PLATFORM SOCCER, 2011).figura 7




                 Figura 7: Tela de uma partida Soccer Simulation League 2D.


   Soccer Standard Platform League

                                           o e                   a                   a ´
   Nesta liga todas as equipes utilizam robˆ s idˆ nticos e a vis˜ o omnidirecional n˜ o e permi-
tida. O campeonato substituiu o Four-Legged League, baseada em robˆ s c˜ es AIBO da Sony,
                                                                  o a
        ´
e agora e baseada em human´ ides Aldebaran de Nao (STANDARD PLATFORM SOCCER,
                          o
2011).
21




4   TRACKER




              ´
    O Tracker e um software open source licenciado sobre os termos de GNU General Public
License para an´ lise e modelagem de v´deos. Foi projetado por Douglas Brown com o objetivo
               a                      ı
de auxiliar no estudo da F´sica (TRACKER, 2011). Esta ferramenta pode ser utilizada em
                          ı
              ¸˜                                                                    ´
diversas situacoes onde se queira analisar o movimento de objetos no tempo. Com ele e poss´vel
                                                                                          ı
                         ¸˜
obter gr´ ficos da aceleracao angular e linear, velocidade angular e linear, deslocamento, energia
        a
cin´ tica, momento linear, etc. A figura 8 mostra o gr´ fico do deslocamento de uma bola em
   e                                                 a
   ¸˜
funcao do tempo, obtido com Tracker.




                                                            ¸˜
                   Figura 8: Deslocamento de uma bola em funcao do tempo.


    Para utilizar o Tracker basta gravar um v´deo do(s) objeto (s), em movimento, que se quer
                                             ı
                          ı                        a           ¸˜
analisar e importar este v´deo para o programa. Ent˜ o com a opcao Autotrack obt´ m-se a
                                                                                e
      o                                                          ´
trajet´ ria dos itens selecionados. O diferencial neste software e a eficiˆ ncia em capturar essa
                                                                         e
trajet´ ria. Pode-se tamb´ m obter o trajeto do centro de massa de um sistema formado por
      o                  e
v´ rios objetos. A figura 9 mostra uma trajet´ ria do centro de massa do sistema formado por
 a                                          o
duas part´culas, obtido com Tracker.
         ı

    A partir dos dados coletados, atrav´ s do Autotrack ou manualmente, o Tracker ent˜ o dispo-
                                       e                                             a
                                                             ¸˜
nibiliza tabelas e gr´ ficos com praticamente todas as informacoes referentes ao deslocamento
                     a
                                                                                 ¸˜
da(s) part´cula(s) em estudo. Para fazer o download do Tracker e manual de instrucao do
          ı
22




                            Figura 9: Trajet´ ria do centro de massa.
                                            o


mesmo, basta acessar http://www.cabrillo.edu/ dbrown/tracker/. Recomenda-se sempre veri-
                       ¸˜                         ¸˜
ficar por novas atualizacoes desse software. Nas secoes que seguem s˜ o descritos todos os
                                                                   a
                                    ¸˜                                            ¸˜
procedimentos utilizados at´ a obtencao dos dados para as tabelas, gr´ ficos e equacoes de mo-
                           e                                         a
vimento de cada robˆ , empregando o Tracker.
                   o


4.1           ¸˜
       PREPARACAO DO AMBIENTE PARA FILMAGEM


                                              ¸˜                            ´
      Primeiramente, antes de iniciar as gravacoes dos robˆ s em movimento, e feito o ajuste
                                                          o
correto da cˆ mera, de modo que seja poss´vel visualizar todo o campo figura 10. Neste caso, a
            a                            ı
cˆ mera fica posicionada a aproximadamente dois metros acima do centro do campo.
 a




                  Figura 10: Campo de futebol de robˆ s utilizado nas filmagens.
                                                    o


      O uso de uma superf´cie que diminui o reflexo da luz, como o carpete na figura 10, e uma
                         ı
 a                                 e                                        ¸˜ ´
cˆ mera de boa qualidade, de preferˆ ncia acima de oito megapixels de resolucao, e muito im-
                                   ¸˜
portante. Pois, facilita-se a obtencao da trajet´ ria dos robˆ s com uso do Autotrack, ferramenta
                                                o            o
       a                        ¸˜                o                  a              ´
que ser´ melhor detalhada nas secoes seguintes. Ap´ s os ajustes de cˆ mera e campo e definido
                                                                                      ´
um referencial m´ trico, como o mostrado no canto superior esquerdo da figura 11. Este e fu-
                e
turamente configurado no Tracker. O software define uma medida, relacionando a quantidade
23


                                                          ¸˜
de pixels ao valor aferido para o objeto. Para a determinacao deste referencial recomenda-se
o uso de algum objeto como, por exemplo, uma r´ gua de um metro ou mesmo marcas sobre o
                                              e
campo. O valor aferido ao objeto ser´ futuramente configurado no Tracker. Pois, este define
                                    a
uma medida, relacionando a quantidade de pixeis ao valor aferido para o objeto. No caso da
                                                                              ´
figura 11, o valor de 8.820E-1 significa que a medida entre os extremos da seta e de 0,882
metros.




                                 e                                 ´
      Figura 11: Um referencial m´ trico, canto superior esquerdo, e utilizado ao filmar os robˆ s.
                                                                                              o



4.2                     ˆ
        FILMAGEM DOS ROBOS EM MOVIMENTO


                ´
      A cˆ mera e, preferencialmente, conectada a um computador onde as imagens capturadas
         a
                                 ´                               ¸˜
s˜ o armazenadas. Desta maneira, e poss´vel parar e iniciar gravacoes sem a necessidade de
 a                                     ı
mexer na filmadora j´ devidamente ajustada. Para isso, utiliza-se um software de captura e
                   a
       ¸˜
reproducao de v´deos como, por exemplo, o Xuggle (programa usado pelo Tracker para an´ lise
               ı                                                                     a
e modelagem de v´deos). Observa-se tamb´ m, a facilidade em administrar os arquivos de v´deo
                ı                      e                                                ı
quando estes s˜ o armazenados, em tempo real, no computador.
              a

                            o ´
      Para a filmagem dos robˆ s, e ideal que se reproduza o mesmo movimento por no m´nimo
                                                                                    ı
                                                  ¸˜
trˆ s vezes. Pois, geralmente ocorre pequena variacao no percurso de cada um deles. Fazendo
  e
isto, pode-se escolher um trajeto no qual o robˆ tende a reproduzir com mais frequˆ ncia. Nos
                                               o                                  e
experimentos deste projeto, foi repetido por quatro vezes cada movimento (movimento linear e
angular para a direita e esquerda) dos robˆ s 03, 07, 08 e robˆ 10. O robˆ 04 n˜ o foi filmado de-
                                          o                   o          o     a
vido a este estar com problemas. Cada ente rob´ tico foi acionado por meio de um computador.
                                              o
          ¸˜                  o ´
A comunicacao deste com os robˆ s e feita atrav´ s de ondas de r´ dio FM. Para determinar em
                                               e                a
                                      ´
que sentido cada robˆ deve dirigir-se e utilizado software de controle instalado no computador
                    o
em quest˜ o.
        a
24


4.3           ¸˜
        DISTORCOES NAS MEDIDAS


      Foram realizadas medidas do campo filmado e comparado com as medidas, deste campo,
obtidas com o Tracker (figura 12). Observou-se ent˜ o, exceto no centro, algumas diferencas.
                                                 a                                     ¸
                            ¸˜
Isso ocorre devido as distorcoes causadas pela lente da filmadora. Quanto mais longe do centro
               ´            ¸˜
do campo maior e essa distorcao. Por exemplo, o comprimento real das linhas laterais do campo
´
e de 232,5 cm, enquanto que com o Tracker foi obtido uma medida de 224,4 cm. Pode-se
verificar outras medidas na figura 12.

                   ¸    a                             ¸˜
      Essas diferencas n˜ o foram levadas em consideracao. Por´ m, para minimizar este pro-
                                                              e
                                                           ´                     ¸˜ ´
blema, foram coletadas imagens dos robˆ s em movimento nas areas onde esta distorcao e me-
                                      o
nor ou praticamente nula. Por exemplo, para a captura do movimento angular os robˆ s foram
                                                                                 o
mantidos pr´ ximos ao c´rculo central do campo.
           o           ı




                  Figura 12: Campo de futebol de robˆ s utilizado nas filmagens.
                                                    o



4.4          ¸˜
        OBTENCAO DOS DADOS UTILIZANDO O TRACKER

4.4.1            ¸˜
         Configuracao Inicial

                       a             ı                      ´
      Para iniciar a an´ lise de um v´deo, o primeiro passo e carregar o v´deo, fazendo uma
                                                                          ı
importacao deste atrav´ s do comando import, localizado no menu file → import → video
       ¸˜             e
25




               Figura 13: Comando import localizado em file → import → video.


    Para an´ lise e modelagem dos v´deos o Tracker utiliza o Xuggle, software open source que
           a                       ı
”lˆ ”diversos formatos de arquivos de v´deo, inclusive AVI E MPG (j´ incluso no pacote de
  e                                    ı                           a
       ¸˜                                  ¸˜
instalacao do Tracker 4.0). Ap´ s a importacao do v´deo deve-se configurar o intervalo a ser
                              o                    ı
analisado. Isto e feito, definindo o frame inicial e final. Ao clicar no ´cone Clip Settings (´cone
                ´                                                      ı                    ı
de v´deo indicado pela flecha na figura 14) uma janela, Clip Settings, para os ajustes do v´deo
    ı                                                                                    ı
´
e aberta. Na primeira e terceira caixas de di´ logo, Start frame e End frame, define-se o frame
                                             a
inicial e o frame final, respectivamente.




                               Figura 14: Comando Clip Settings.


    Na caixa de di´ logo Step size determina-se a quantidade de frames que o programa deve
                  a
                    ¸˜                               ´
”pular”em cada iteracao, sendo o padr˜ o 1. Em Frame e mostrado a taxa de frames por segundo,
                                     a
                                         a ´
a ser considerado, sendo que o valor padr˜ o e o m´ ximo determinado pelo equipamento de fil-
                                                  a
                                         ¸˜
magem. Na sequˆ ncia, determina-se a relacao entre quantidade de pixels e unidades de medida,
              e
26


como cent´metros, metros, polegadas, etc. Para isto, basta clicar no ´cone (figura 15) ao lado
         ı                                                           ı
do ´cone de v´deo e escolher, preferencialmente, Calibration Tape. Ent˜ o uma seta com duas
   ı         ı                                                        a
       ´
pontas e mostrado. Os extremos da seta s˜ o fixados de acordo com o referencial m´ trico esco-
                                        a                                       e
lhido (discutido anteriormente), arrastando-se a flecha ou qualquer uma de suas pontas. Ap´ s,
                                                                                         o
define-se a medida de um extremo ao outro (metros, cent´metros ou qualquer outra unidade de
                                                      ı
medida) clicando no centro da seta ou pela caixa de di´ logo length.
                                                      a




                              Figura 15: Comando Calibration Tape.


        ´                                  ´
      O ultimo referencial a ser verificado e o sistema de coordenadas cartesianas. Para configur´ -
                                                                                               a
lo e necess´ rio clicar no ´cone mostrado na figura 16. Ap´ s isto, o sistema de coordenadas fica
   ´       a               ı                             o
                                     a       e       ¸˜
vis´vel, podendo-se em seguida arrast´ -lo at´ a posicao referenciada como origem ou at´ mesmo
   ı                                                                                   e
            ˆ                          ´
alterar seu angulo. Um ponto de origem e definido, arrastando-se o sistema de coordenadas. Da
             ´                                ˆ
mesma forma, e poss´vel, inclusive, alterar o angulo do sistema.
                   ı


4.5        ¸˜                           ¸˜
       CRIACAO DO PONTO DE MASSA E OBTENCAO DOS DADOS MANUAL E AU-
       TOMATICAMENTE


                      ¸˜                                                              ´
      Ap´ s a configuracao inicial, deve-se criar um novo Ponto de Massa. Este m´ todo e utilizado
        o                                                                      e
para an´ lise individual de objetos em movimento (se for necess´ rio analisar o movimento de um
       a                                                       a
                                            ¸˜
sistema de part´culas, pode-se utilizar a opcao Centro de Massa, abaixo de Point of Mass). Para
               ı
criar o Ponto de Massa (figura 17) deve-se clicar no menu Tracks → New → Point of Mass.
Logo ap´ s, a janela Track Control torna-se vis´vel, sendo ent˜ o poss´vel determinar a trajet´ ria
       o                                       ı              a       ı                       o
do Ponto de Massa mencionado.

      ´       a                                        o                         ´
      E necess´ rio, agora, relacionar o trajeto do robˆ ao Ponto de Massa. Isto e poss´vel fazer
                                                                                       ı
27




                        Figura 16: Sistema de coordenadas cartesianas.




                                       ¸˜
                        Figura 17: Criacao de um novo Ponto de Massa.


tanto manual quanto automaticamente. Para obter o percurso do robˆ manualmente, coloca-
                                                                 o
        o        ¸˜
se o robˆ na posicao inicial e ent˜ o com a tecla Shift pressionada clica-se, utilizando o bot˜ o
                                  a                                                           a
                                        o          o                     ´
esquerdo do mouse, sobre o centro do robˆ . Logo ap´ s, o frame seguinte e mostrado. Essa
     ¸˜                               ¸˜
operacao deve ser repetida at´ a obtencao do trajeto total desejado. Para obter o percurso au-
                             e
tomaticamente, deve-se clicar sobre o novo Ponto de Massa criado, item destacado na Janela
Track Control (figura 18). Nesta etapa determina-se automaticamente o trajeto do robˆ . Em
                                                                                   o
28


                                   ´
seguida, uma janela do Autotracker e aberta, sendo necess´ rio clicar sobre o robˆ para iniciar a
                                                         a                       o
        ¸˜
configuracao.




                                      ¸˜
                   Figura 18: Configuracao do Novo Ponto de Massa Criado.


    A aba Template, na janela Autotracker (figura 19), define a imagem a ser capturada em cada
          ı         ı      ´
frame de v´deo. Um c´rculo e disponibilizado para selecionar o objeto a ser capturado. Para um
                                                                              ´
melhor desempenho recomenda-se envolver, com esse c´rculo, apenas uma pequena area com
                                                   ı
maior contraste no objeto, como o que foi feito com o robˆ da (figura 19) . A barra Evolution
                                                         o
                                                `
Rate define a rapidez com que Template se adapta a mudanca de forma e cor do objeto com o
                                                       ¸
tempo, sendo 10 % a taxa padr˜ o.
                             a

                                                   ¸˜
    Na aba Target os passos ser˜ o marcados em relacao a Template. O Tracker seleciona o
                               a
centro do c´rculo por padr˜ o (sinal de + no centro da (figura 20). Para alterar basta arrastar, para
           ı              a
qualquer lado, o ponto considerado como ”alvo”.

                  ´
    Na aba Accept e determinado um n´vel de precis˜ o para a captura do movimento. Redu-
                                    ı             a
zindo o valor da barra Accept Scores Above aumenta a probabilidade de erros. Recomenda-se
                                   ´
utilizar o padr˜ o do software que e de quatro unidades.
               a

                 ´                             ´                                     ´
    A aba Search e utilizada para determinar a area de procura do objeto. Nesta guia e dispo-
                 a                                  ´
nibilizado um retˆ ngulo tracejado para delimitar a area de procura. Esse retˆ ngulo deve ter em
                                                                             a
m´ dia o tamanho do objeto procurado. A cada frame seguinte, o Tracker tenta atualizar essa
 e
´                        ¸˜
area de acordo com a posicao atual do objeto. Para melhorar a busca, recomenda-se demarcar o
                                                                    ¸˜
campo com, aproximadamente, as dimens˜ es do objeto. A caixa de selecao Look Ahead deve
                                     o
29




       Figura 19: Aba Template define a imagem a ser capturada em cada frame de v´deo.
                                                                                ı




Figura 20: A aba Target determina um ”alvo”como o ponto principal a ser capturado em cada
frame.

estar assinalada.

    Feito os devidos ajustes, pode-se agora determinar a trajet´ ria do robˆ , clicando no bot˜ o
                                                               o           o                  a
                               ´
Search (figura 22). Na figura 23 e mostrada a trajet´ ria de um robˆ obtida com o Autotracker.
                                                  o              o
Clicando sobre os ´cones de velocidade ou aceleracao (´cones envolvidos pela caixa retangular
                  ı                              ¸˜ ı
                 ´
preta, figura 23) e poss´vel visualizar ou ocultar os respectivos vetores.
                       ı

                                 ´ a
    Para utilizar o Autotracker, e v´ lido lembrar que o v´deo a ser analisado deve ter uma boa
                                                          ı
     ¸˜
definicao e conter imagens n´tidas, como citado anteriormente. Do contr´ rio, recomenda-se
                           ı                                          a
obter manualmente o percurso do robˆ .
                                   o
30




  Figura 21: Na aba Accept determina-se um n´vel de precis˜ o para a captura do movimento.
                                            ı             a




                            ´                                                      ´
Figura 22: Na aba Search e disponibilizado um retˆ ngulo tracejado para demarcar a area de
                                                     a
procura. Esse retˆ ngulo deve ter em m´ dia o tamanho do objeto procurado.
                 a                    e


4.6                     ¸˜
       PASSOS PARA OBTENCAO DOS DADOS COM MOVIMENTO LINEAR


      Para obter o percurso do robˆ em movimento linear basta seguir os passos citados at´ aqui.
                                  o                                                      e
31




                            ´                             ¸˜
                 Figura 23: Icones de velocidade e acelaracao dentro do retˆ ngulo.
                                                                           a


4.7                     ¸˜
       PASSOS PARA OBTENCAO DOS DADOS COM MOVIMENTO ANGULAR


                  ¸˜
      Para a obtencao dos dados com movimento angular, al´ m dos procedimentos j´ citados,
                                                         e                      a
deve-se fixar o referencial, para o sistema de coordenadas, no centro do ente rob´ tico, fazendo
                                                                                o
com que a origem do sistema acompanhe o centro do robˆ em movimento. Ou seja, a origem
                                                     o
do sistema de coordenadas acompanha o centro do robˆ em movimento. (figura 24).
                                                   o

      Para este procedimento deve-se criar um segundo Ponto de Massa, no qual seu percurso
acompanha o centro do robˆ . Logo ap´ s, pode-se determinar o ponto de referˆ ncia para o plano
                         o          o                                       e
cartesiano atrav´ s do menu Coordinate System → Reference Frame, onde e poss´vel escolher o
                e                                                     ´     ı
Ponto que acompanha o centro como referˆ ncia (figura 25).
                                       e


4.8    DADOS


    Ap´ s criar a trajet´ ria dos movimentos, o Tracker disponibiliza diversas tabelas e gr´ ficos
       o                o                                                                  a
                                        `
dos dados (canto direito), (figura 26). A direita s˜ o mostrados o gr´ fico e tabela gerados pelo
                                                   a                 a
Tracker a partir do deslocamento do robˆ , Neste projeto foram utilizados apenas os relacionados
                                       o
                                        ¸˜
ao deslocamento linear e angular em relacao ao tempo. Para obter dados referentes a outras
vari´ veis, basta clicar em Table no canto superior esquerdo da tabela e selecionar os itens.
    a

                                          ¸˜
      Seguindo o procedimento citado na secao anterior foram obtidos dados, dos quais utiliza-
                  ¸˜
mos para a construcao das tabelas 1 e 2, abaixo. Os dados mostrados s˜ o para os robˆ s 03, 07,
                                                                     a              o
32




                            Figura 24: Robˆ em movimento angular.
                                          o




                        ¸˜
     Figura 25: Configuracao para o sistema de coordenadas acompanhar o centro do robˆ .
                                                                                    o


08 e 10. O robˆ 04 n˜ o foi filmado devido a este apresentar problemas.
              o     a

                                                               `      ¸˜
    Os dados relativo ao movimento linear constante referem-se a variacao de deslocamento
dos momentos em que o robˆ inicia o movimento com velocidade constante at´ o momento
                         o                                               e
                                      ¸˜
anterior a este iniciar sua desaceleracao.

           ¸˜                                                   ¸˜
    Em relacao ao movimento linear inicial, levamos em consideracao apenas a trajet´ ria entre
                                                                                   o
      ¸˜                       ¸˜
a posicao de repouso at´ a posicao em que o robˆ atinge a velocidade constante.
                       e                       o
33




                    Figura 26: Tabelas e gr´ ficos exibidos no canto direito da tela.
                                           a

                                 Tabela 1: Dados para Movimento Linear.
                              MOVIMENTO LINEAR                                 MOVIMENTO LINEAR INICIAL
             Aceleracao em Y (m/s2 ) Velocidade constante em X (m/s)
                    ¸˜                                                 Aceleracao em Y (m/s2 ) Aceleracao em X (m/s2 )
                                                                              ¸˜                      ¸˜
   Robˆ 3
       o             0,8859                      0,0574                        0,0330                  0,7152
   Robˆ 7
       o             0,1241                      1,5835                        0,1636                  1,5938
   Robˆ 8
       o              0,154                      1,7789                        0,0676                  1,0932
   Robˆ 10
      o              0,2734                       1,674                        0,3194                   1,718



                                                              `      ¸˜
    Os dados relativo ao movimento angular inicial referem-se a variacao de deslocamento
angular dos momentos em que o robˆ inicia o movimento com velocidade constante at´ o mo-
                                 o                                               e
                                            ¸˜
mento anterior a este iniciar sua desaceleracao.

           ¸˜                                                    ¸˜
    Em relacao ao movimento angular inicial, levamos em consideracao apenas o deslocamento
                    ¸˜                       ¸˜
angular entre a posicao de repouso at´ a posicao em que o robˆ atinge a velocidade angular
                                     e                       o
constante.

    Utilizando os mesmos dados para criar as tabelas 1 e 2 foram plotados, para o robˆ 08,
                                                                                     o
     a                e                               ¸˜
os gr´ ficos abaixo. Al´ m disso, foram geradas as equacoes de cada movimento (canto inferior
direito de cada figura):
34



                                  Tabela 2: Dados para Movimento Angular
                    MOVIMENTO ANGULAR ESQUERDA                                MOVIMENTO ANGULAR DIREITA
              Torque inicial (rad/s2 ) Velocidade constante (rad/s)   Torque inicial (rad/s2 ) Velocidade constante (rad/s)
    Robˆ 3
        o            32,7286                     10,7878                    -18,8166                     -9,8331
    Robˆ 7
        o            35,8936                     21,0474                    -27,8734                    -18,7874
    Robˆ 8
        o            33,9293                     20,7332                    -30,1496                    -21,0915
    Robˆ 10
       o             59,7220                     22,5444                    -41,1899                    -20,4160




                                                                    ¸˜
Figura 27: Gr´ fico do movimento angular, em theta radianos, com relacao ao tempo em segundos.
              a
O robˆ rotaciona no sentido hor´ rio com velocidade constante.
     o                         a




                                                                    ¸˜
Figura 28: Gr´ fico do movimento angular, em theta radianos, com relacao ao tempo em segundos.
              a
O robˆ rotaciona no sentido hor´ rio com torque inicial.
     o                         a
35




                                                                         ¸˜
Figura 29: Gr´ fico do movimento angular, em theta radianos, com relacao ao tempo em segundos
               a
ao quadrado. Este gr´ fico foi obtido ao linearizar o gr´ fico da figura anterior. O robˆ rotaciona no
                     a                                 a                             o
sentido hor´ rio com torque inicial.
           a




                                                                    ¸˜
Figura 30: Gr´ fico do movimento angular, em theta radianos, com relacao ao tempo em segundos.
              a
O robˆ rotaciona no sentido anti-hor´ rio com velocidade constante.
     o                              a
36




                                                                    ¸˜
Figura 31: Gr´ fico do movimento angular, em theta radianos, com relacao ao tempo em segundos.
              a
O robˆ rotaciona no sentido anti-hor´ rio com torque inicial.
     o                              a




                                                                    ¸˜
Figura 32: Gr´ fico do movimento angular, em theta radianos, com relacao ao tempo em segundos
              a
ao quadrado. Este gr´ fico foi obtido linearizando o gr´ fico da figura 31. O robˆ rotaciona no
                        a                             a                        o
sentido anti-hor´ rio com torque inicial.
                a
37




             a                                           ¸˜
Figura 33: Gr´ fico do deslocamento, em X (metros), em funcao do tempo em segundos. O robˆ se
                                                                                        o
                       ¸˜
movimenta com aceleracao inicial.




                                                            ¸˜
Figura 34: Gr´ fico do deslocamento, em X (metros), em funcao do tempo em segundos ao qua-
               a
drado. Este gr´ fico foi obtido linearizando o gr´ fico da figura 33. O robˆ se movimenta com
                a                               a                       o
       ¸˜
aceleracao inicial.
38




             a                                           ¸˜
Figura 35: Gr´ fico do deslocamento, em Y (metros), em funcao do tempo em segundos. O robˆ se
                                                                                        o
movimenta com aceleraca¸ ˜ o inicial.




                                                            ¸˜
Figura 36: Gr´ fico do deslocamento, em Y (metros), em funcao do tempo em segundos ao qua-
               a
drado. Este gr´ fico foi obtido linearizando o gr´ fico da figura 35. O robˆ se movimenta com
                a                               a                       o
       ¸˜
aceleracao inicial.
39




             a                                           ¸˜
Figura 37: Gr´ fico do deslocamento, em Y (metros), em funcao do tempo em segundos. O robˆ se
                                                                                        o
movimenta com aceleraca¸ ˜ o inicial.




                                                            ¸˜
Figura 38: Gr´ fico do deslocamento, em Y (metros), em funcao do tempo em segundos ao qua-
               a
drado. Este gr´ fico foi obtido linearizando o gr´ fico da figura 37. O robˆ se movimenta com
                a                               a                       o
       ¸˜
aceleracao inicial.
40




             a                                           ¸˜
Figura 39: Gr´ fico do deslocamento, em X (metros), em funcao do tempo em segundos. O robˆ se
                                                                                        o
movimenta com velocidade constante.
41




5   TEWNTA




                      ´
    O software Tewnta e um simulador open source, sob a licenca GNU, com interface gr´ fica
                                                             ¸                       a
                           ¸˜
(figura 40), para a competiccao de Futebol de Robˆ s da categoria SSL, desenvolvido pelo aluno
                                                o
                                                           ¸˜
Gabriel Detoni da UFRGS, utilizando a linguagem de programacao Java. Sua principal fina-
       ´             ¸˜
lidade e prever situacoes reais de jogo. Desta maneira, reduz o tempo no desenvolvimento de
estrat´ gias, por permitir que diferentes t´ ticas de jogo sejam testadas concorrentemente, auxili-
      e                                    a
            ¸˜
ando na reducao do desgaste de hardware ocasionado pelos testes com os robˆ s.
                                                                          o




                        Figura 40: Interface gr´ fica do simulador Tewnta.
                                               a


    Segundo a monografia do semestre 2010.2
                                    ˆ
(APERFEICOAMENTO DO SIMULADOR DE ROBOS TEWNTA, 2011)

    ”O Tewnta trabalha em duas camadas, a primeira atua como Servidor e e respons´ vel pela
                                                                        ´        a
simulacao f´sica e interpretacao das regras do Futebol de Robˆ s. Uma segunda camada atua
      ¸˜ ı                   ¸                               o
como Cliente e nela est˜ o denidas as acoes que devem ser tomadas pelos robˆ s. Para cada um
                       a               ¸˜                                  o
42


dos times h´ uma aplicacao cliente sendo executada. Essas duas camadas s˜ o executadas em
           a           ¸˜                                               a
aplicacooes diferentes que se comunicam atrav´ s de protocolo IP (Internet Protocol).”
      ¸˜                                     e

                                                 ¸˜
    Segue diagrama representativo para a comunicacao e funcionamento do programa figura 41
e figura 42




Figura   41:         Diagrama    de                ¸˜
                                           comunicacao                       (APERFEICOA-
MENTO DO SIMULADOR DE ROBOSˆ TEWNTA, 2011).




                                                                ˆ
Figura 42: Diagrama de fluxo (APERFEICOAMENTO DO SIMULADOR DE ROBOS TEWNTA,
2011).
43


5.1        ˜            ´
        VISAO GERAL DO CODIGO


      O c´ digo original est´ dividido em nove pacotes
         o                  a
                                    ˆ
(APERFEICOAMENTO DO SIMULADOR DE ROBOS TEWNTA, 2011)1 :

      br.ufrgs.f180.math

      br.ufrgs.f180.api

      br.ufrgs.f180.api.model

      br.ufrgs.f180.elements

      br.ufrgs.f180.guibr.ufrgs.f180.resources

      br.ufrgs.f180.server

      br.ufrgs.f180.teamcom.cloudgarden.resource

                          ¸˜
      As principais alteracoes realizadas por esta equipe foram criadas, via o pacote br.utfpr.f180.IndependentR
sendo que o c´ digo original modificado, em sua maior parte, foi alterado apenas para que se
             o
          `                        ¸˜
adaptasse as novas classes, sem adicao de funcionalidades novas.


5.2           ¸˜
        ALTERACOERS IMPLEMENTADAS


                                    ¸˜                                              ¸˜
      Visava-se por meio das modificacoes implementadas no c´ digo, a real representacao de
                                                           o
cada um dos quatro robˆ s, em funcionamento, que comp˜ em a equipe de Futebol de Robˆ s da
                      o                              o                              o
                                                          ¸˜
UTFPR. Para tanto, foram-se inseridas as seguintes modificacoes no c´ digo:
                                                                   o


5.2.1          ¸˜
           Criacao de novas propriedades no arquivo Properties

                   ¸˜             ¸˜              `         ¸˜
      Ap´ s a obtencao das informacoes referentes as aceleracoes e velocidades, angular e linear,
        o
                            ¸˜                                     ¸˜
para cada robˆ com a utilizacao do software Tracker (detalhes na secao 4), era necess´ rio inserir
             o                                                                       a
esses valores no c´ digo do Tewnta. O arquivo Properties cont´ m as propriedades referentes ao
                  o                                          e
diversos elementos que comp˜ em o jogo, incluindo o campo, a bola e os robˆ s. No arquivo
                           o                                              o
           ı                          ¸˜
foram inclu´dos os valores das aceleracoes e velocidades para cada robˆ (figura 43).
                                                                      o


      • Pacote

            – com.cloudgarden.resource
  1 Para                 ¸˜
             uma descricao completa dos Pacotes       e   Classes   presentes   no   Tewnta,   acesse
http://dl.dropbox.com/u/12362738/monografia final.pdf
44




                                     Figura 43: Propeties.


   • Arquivo modificado

         – game.properties


          ¸˜
    DESCRICAO

    As propriedades targetVelocityX e targetVelocityY representam as velocidades do robˆ em
                                                                                       o
seu movimento linear, assim como linearAccelerationX e linearAccelerationY representam as
       ¸˜
aceleracoes, respectivamente, nos eixos x e y. A propriedade rotationAcceleration representa a
       ¸˜
aceleracao angular do robˆ , e rotationVelocity sua velocidade angular.
                         o
45


5.2.2       ¸˜
        Criacao da classe IndependentRobot

    Classe para representar qualquer robˆ que tenha seus dados no arquivo game.properties
                                        o
(figura 44 e 45).




                            Figura 44: Classe IndependentRobot.
46




                             Figura 45: Classe IndependentRobot.


          ¸˜
    DESCRICAO O DA CLASSE IndependentRobot

            o                     ı         o                      ¸˜
    Cada robˆ precisa ter caracter´sticas pr´ prias para as aceleracoes linear e angular, para que
esses valores correspondam com o comportamento f´sico real dos robˆ s, os m´ todos: getRo-
                                                ı                 o        e
tationAcceleration() e getAcceleration() foram sobrecritos para que estes retornassem o valor
contido no arquivo game.properties.
47


      O m´ todo getAcceleration() retorna a quem o chamou uma instˆ ncia da classe Vector (pa-
         e                                                        a
cote br.ufrgs.f180.math.Vector), que representa um vetor, contendo componentes no eixo das
abscissas e no eixo das ordenadas. O m´ todo getRotationAcceleration() retorna um double,
                                      e
sendo ent˜ o necess´ rio que este simplesmente retorne o valor contido no arquivo game.properties
         a         a
              ¸˜
para a aceleracao angular do robˆ em quest˜ o.
                                o         a

                   ´
      A velocidade e representada por outra instˆ ncia da classe Vector, protected Vector targetVe-
                                                a
locity, que est´ presente na classe Robot, tendo sido alterado o tipo de encapsulamento deste, de
               a
private para protected, permitindo assim, que classes derivadas tenham acesso a esta vari´ vel.
                                                                                         a
Al´ m de targetVelocity, protected static final double ROBOT MAX VELOCITY e protected
  e
static final double ROBOT MAX FORCE tiveram seus modificadores de acesso alterados de
private para protected com a mesma finalidade (figura 46). Em raz˜ o da estruturac˜ o do c´ digo,
                                                               a                a       o




                               Figura 46: Encapsulamento Alterado.


teve-se que ser criada duas vari´ veis booleanas para especificar se o robˆ est´ em um movimento
                                a                                        o a
linear ou angular, protected boolean isLinearMovement e protected boolean isRotationalMove-
ment, respectivamente, ou em ambos. Aos m´ todos private void linearMovement (double ti-
                                         e
                                                                                     ¸˜
meElapsed) e private void rotationalMovement (double timeElapsed), compete a atualizacao do
movimento do robˆ . O m´ todo public void calculatePosition(double time-Elapsed), da classe
                o      e
Robot, foi sobrescrito para que considerasse apenas movimentos v´ lidos, evitando-se que ao
                                                                a
se dar o comando de andar para o robˆ , este tamb´ m rotacione indevidamente, atualizando em
                                    o            e
              ¸˜
seguida a posicao do robˆ no campo.
                        o


5.3            ¸˜                     ˆ
       ATUALIZACAO DO MOVIMENTO DO ROBO


                     ¸˜         ¸˜
      Para a atualizacao da posicao para os robˆ s da UTFPR, foi necess´ rio alterar o c´ digo para
                                               o                       a                o
que este respondesse corretamente aos comandos de movimentar-se linearmente ou rotacio-
                 `           ¸˜                        ¸˜
nar, pois devido a implementacao original, a representacao do movimento tornava-se imprecisa
quando este era uma instˆ ncia de uma das classes IndependentRobot, fazendo com que o robˆ
                        a                                                                o
rotacionasse quando este deveria apenas mover-se linearmente, ou vice-versa.
Integração do Tracker ao Tewnta para simulação física de futebol de robôs
Integração do Tracker ao Tewnta para simulação física de futebol de robôs
Integração do Tracker ao Tewnta para simulação física de futebol de robôs
Integração do Tracker ao Tewnta para simulação física de futebol de robôs
Integração do Tracker ao Tewnta para simulação física de futebol de robôs
Integração do Tracker ao Tewnta para simulação física de futebol de robôs
Integração do Tracker ao Tewnta para simulação física de futebol de robôs
Integração do Tracker ao Tewnta para simulação física de futebol de robôs
Integração do Tracker ao Tewnta para simulação física de futebol de robôs
Integração do Tracker ao Tewnta para simulação física de futebol de robôs
Integração do Tracker ao Tewnta para simulação física de futebol de robôs
Integração do Tracker ao Tewnta para simulação física de futebol de robôs
Integração do Tracker ao Tewnta para simulação física de futebol de robôs

Mais conteúdo relacionado

Destaque

Bag scenen online haj hangouts
Bag scenen  online haj hangoutsBag scenen  online haj hangouts
Bag scenen online haj hangoutsOnline Haj
 
PresentacióN De Microsoft Powerpoint
PresentacióN De Microsoft PowerpointPresentacióN De Microsoft Powerpoint
PresentacióN De Microsoft Powerpointdrugger1
 
Yokogawa ProSafe-RS Engineering
Yokogawa ProSafe-RS EngineeringYokogawa ProSafe-RS Engineering
Yokogawa ProSafe-RS EngineeringHamed AL Aamri
 
LETTER OF COMMENDATION
LETTER OF COMMENDATIONLETTER OF COMMENDATION
LETTER OF COMMENDATIONHelen Okoro
 
MCTS-AdminDepSC12ConfMgr-logo-BW
MCTS-AdminDepSC12ConfMgr-logo-BWMCTS-AdminDepSC12ConfMgr-logo-BW
MCTS-AdminDepSC12ConfMgr-logo-BWabhishek yadav
 
Clasificación2 05/05/2013
Clasificación2 05/05/2013Clasificación2 05/05/2013
Clasificación2 05/05/2013chinito180
 
Regra de sinais
Regra de sinaisRegra de sinais
Regra de sinaisalvarobr2
 
Verdades bíblicas tema 18
Verdades bíblicas tema 18Verdades bíblicas tema 18
Verdades bíblicas tema 18rogeriodjeid
 
5ºD - Rebeca e Yorrana
5ºD - Rebeca e Yorrana5ºD - Rebeca e Yorrana
5ºD - Rebeca e Yorranalaurasvdigital
 
斜版特色
斜版特色斜版特色
斜版特色hengchy
 
あしたの郊外プラン概要
あしたの郊外プラン概要あしたの郊外プラン概要
あしたの郊外プラン概要akitomomitsuharu
 

Destaque (17)

Bag scenen online haj hangouts
Bag scenen  online haj hangoutsBag scenen  online haj hangouts
Bag scenen online haj hangouts
 
admission
admissionadmission
admission
 
PresentacióN De Microsoft Powerpoint
PresentacióN De Microsoft PowerpointPresentacióN De Microsoft Powerpoint
PresentacióN De Microsoft Powerpoint
 
SC Living Jenks Farmer
SC Living Jenks FarmerSC Living Jenks Farmer
SC Living Jenks Farmer
 
Yokogawa ProSafe-RS Engineering
Yokogawa ProSafe-RS EngineeringYokogawa ProSafe-RS Engineering
Yokogawa ProSafe-RS Engineering
 
TECH Mywork1A
TECH Mywork1ATECH Mywork1A
TECH Mywork1A
 
LETTER OF COMMENDATION
LETTER OF COMMENDATIONLETTER OF COMMENDATION
LETTER OF COMMENDATION
 
MCTS-AdminDepSC12ConfMgr-logo-BW
MCTS-AdminDepSC12ConfMgr-logo-BWMCTS-AdminDepSC12ConfMgr-logo-BW
MCTS-AdminDepSC12ConfMgr-logo-BW
 
certificate
certificatecertificate
certificate
 
Clasificación2 05/05/2013
Clasificación2 05/05/2013Clasificación2 05/05/2013
Clasificación2 05/05/2013
 
Semana cultural Medellín 2013-1
Semana cultural Medellín 2013-1Semana cultural Medellín 2013-1
Semana cultural Medellín 2013-1
 
Regra de sinais
Regra de sinaisRegra de sinais
Regra de sinais
 
Verdades bíblicas tema 18
Verdades bíblicas tema 18Verdades bíblicas tema 18
Verdades bíblicas tema 18
 
5ºD - Rebeca e Yorrana
5ºD - Rebeca e Yorrana5ºD - Rebeca e Yorrana
5ºD - Rebeca e Yorrana
 
PAnchang
PAnchangPAnchang
PAnchang
 
斜版特色
斜版特色斜版特色
斜版特色
 
あしたの郊外プラン概要
あしたの郊外プラン概要あしたの郊外プラン概要
あしたの郊外プラン概要
 

Semelhante a Integração do Tracker ao Tewnta para simulação física de futebol de robôs

TCC - Kinect para Reabilitação Fatec Carapicuíba
TCC - Kinect para Reabilitação Fatec CarapicuíbaTCC - Kinect para Reabilitação Fatec Carapicuíba
TCC - Kinect para Reabilitação Fatec CarapicuíbaVanessa Alves Nascimento
 
TCC Técnico em Mecatrônica
TCC Técnico em MecatrônicaTCC Técnico em Mecatrônica
TCC Técnico em Mecatrônicamoises medeiros
 
Pim i terminais de consulta copa 2014_olímpiadas 2016(rev final)_11 05 2013
Pim i terminais de consulta copa 2014_olímpiadas 2016(rev  final)_11 05 2013Pim i terminais de consulta copa 2014_olímpiadas 2016(rev  final)_11 05 2013
Pim i terminais de consulta copa 2014_olímpiadas 2016(rev final)_11 05 2013Cesar Jardim
 
ROBÔ LOCALIZADOR DE SERES HUMANOS
ROBÔ LOCALIZADOR DE SERES HUMANOSROBÔ LOCALIZADOR DE SERES HUMANOS
ROBÔ LOCALIZADOR DE SERES HUMANOSAgnaldo Coelho
 
Troca de contexto segura em sistemas operacionais embarcados utilizando técni...
Troca de contexto segura em sistemas operacionais embarcados utilizando técni...Troca de contexto segura em sistemas operacionais embarcados utilizando técni...
Troca de contexto segura em sistemas operacionais embarcados utilizando técni...Rodrigo Almeida
 
Estudo de caso sobre business intelligence
Estudo de caso sobre business intelligenceEstudo de caso sobre business intelligence
Estudo de caso sobre business intelligenceTalita Lima
 
Manual de pavimentacao 05.12.06
Manual de pavimentacao 05.12.06Manual de pavimentacao 05.12.06
Manual de pavimentacao 05.12.06Synardo Pereira
 
Aplicac3a7c3a3o da-abordagem-gqm-para-a-definic3a7c3a3o-de-um-processo-de-eng...
Aplicac3a7c3a3o da-abordagem-gqm-para-a-definic3a7c3a3o-de-um-processo-de-eng...Aplicac3a7c3a3o da-abordagem-gqm-para-a-definic3a7c3a3o-de-um-processo-de-eng...
Aplicac3a7c3a3o da-abordagem-gqm-para-a-definic3a7c3a3o-de-um-processo-de-eng...JADSON SANTOS
 
Toturial autocad2009(1)
Toturial autocad2009(1)Toturial autocad2009(1)
Toturial autocad2009(1)abrito1966
 

Semelhante a Integração do Tracker ao Tewnta para simulação física de futebol de robôs (20)

TCC - Kinect para Reabilitação Fatec Carapicuíba
TCC - Kinect para Reabilitação Fatec CarapicuíbaTCC - Kinect para Reabilitação Fatec Carapicuíba
TCC - Kinect para Reabilitação Fatec Carapicuíba
 
2014 Monografia Final
2014 Monografia Final2014 Monografia Final
2014 Monografia Final
 
TCC Técnico em Mecatrônica
TCC Técnico em MecatrônicaTCC Técnico em Mecatrônica
TCC Técnico em Mecatrônica
 
TG KickGames
TG KickGamesTG KickGames
TG KickGames
 
Pim i terminais de consulta copa 2014_olímpiadas 2016(rev final)_11 05 2013
Pim i terminais de consulta copa 2014_olímpiadas 2016(rev  final)_11 05 2013Pim i terminais de consulta copa 2014_olímpiadas 2016(rev  final)_11 05 2013
Pim i terminais de consulta copa 2014_olímpiadas 2016(rev final)_11 05 2013
 
ROBÔ LOCALIZADOR DE SERES HUMANOS
ROBÔ LOCALIZADOR DE SERES HUMANOSROBÔ LOCALIZADOR DE SERES HUMANOS
ROBÔ LOCALIZADOR DE SERES HUMANOS
 
Monografia - UNISUL
Monografia - UNISULMonografia - UNISUL
Monografia - UNISUL
 
TCC Aporano Play'ed SCRUM'ces
TCC Aporano Play'ed SCRUM'cesTCC Aporano Play'ed SCRUM'ces
TCC Aporano Play'ed SCRUM'ces
 
Troca de contexto segura em sistemas operacionais embarcados utilizando técni...
Troca de contexto segura em sistemas operacionais embarcados utilizando técni...Troca de contexto segura em sistemas operacionais embarcados utilizando técni...
Troca de contexto segura em sistemas operacionais embarcados utilizando técni...
 
Estudo de caso sobre business intelligence
Estudo de caso sobre business intelligenceEstudo de caso sobre business intelligence
Estudo de caso sobre business intelligence
 
Relatório técnico i fc 29-07
Relatório técnico i   fc 29-07Relatório técnico i   fc 29-07
Relatório técnico i fc 29-07
 
Monografia Arduino
Monografia ArduinoMonografia Arduino
Monografia Arduino
 
Rastreamento
RastreamentoRastreamento
Rastreamento
 
719 manual de_pavimentacao
719 manual de_pavimentacao719 manual de_pavimentacao
719 manual de_pavimentacao
 
Manual de pavimentacao 05.12.06
Manual de pavimentacao 05.12.06Manual de pavimentacao 05.12.06
Manual de pavimentacao 05.12.06
 
Aplicac3a7c3a3o da-abordagem-gqm-para-a-definic3a7c3a3o-de-um-processo-de-eng...
Aplicac3a7c3a3o da-abordagem-gqm-para-a-definic3a7c3a3o-de-um-processo-de-eng...Aplicac3a7c3a3o da-abordagem-gqm-para-a-definic3a7c3a3o-de-um-processo-de-eng...
Aplicac3a7c3a3o da-abordagem-gqm-para-a-definic3a7c3a3o-de-um-processo-de-eng...
 
Auto cad
Auto cadAuto cad
Auto cad
 
Toturial autocad2009(1)
Toturial autocad2009(1)Toturial autocad2009(1)
Toturial autocad2009(1)
 
TCC - Tiago Antonio Jacobi
TCC - Tiago Antonio JacobiTCC - Tiago Antonio Jacobi
TCC - Tiago Antonio Jacobi
 
Apostila danfe
Apostila danfeApostila danfe
Apostila danfe
 

Último

Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Ilda Bicacro
 
11oC_-_Mural_de_Portugues_4m35.pptxTrabalho do Ensino Profissional turma do 1...
11oC_-_Mural_de_Portugues_4m35.pptxTrabalho do Ensino Profissional turma do 1...11oC_-_Mural_de_Portugues_4m35.pptxTrabalho do Ensino Profissional turma do 1...
11oC_-_Mural_de_Portugues_4m35.pptxTrabalho do Ensino Profissional turma do 1...licinioBorges
 
Noções de Farmacologia - Flávia Soares.pdf
Noções de Farmacologia - Flávia Soares.pdfNoções de Farmacologia - Flávia Soares.pdf
Noções de Farmacologia - Flávia Soares.pdflucassilva721057
 
Ficha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdfFicha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdfFtimaMoreira35
 
Revista-Palavra-Viva-Profetas-Menores (1).pdf
Revista-Palavra-Viva-Profetas-Menores (1).pdfRevista-Palavra-Viva-Profetas-Menores (1).pdf
Revista-Palavra-Viva-Profetas-Menores (1).pdfMárcio Azevedo
 
Manual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envioManual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envioManuais Formação
 
Música Meu Abrigo - Texto e atividade
Música   Meu   Abrigo  -   Texto e atividadeMúsica   Meu   Abrigo  -   Texto e atividade
Música Meu Abrigo - Texto e atividadeMary Alvarenga
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...azulassessoria9
 
VARIEDADES LINGUÍSTICAS - 1. pptx
VARIEDADES        LINGUÍSTICAS - 1. pptxVARIEDADES        LINGUÍSTICAS - 1. pptx
VARIEDADES LINGUÍSTICAS - 1. pptxMarlene Cunhada
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Ilda Bicacro
 
Aula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdfAula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdfFernandaMota99
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.Mary Alvarenga
 
o ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfo ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfCamillaBrito19
 
Dicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelDicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelGilber Rubim Rangel
 
Pedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxPedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxleandropereira983288
 
2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental
2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental
2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamentalAntônia marta Silvestre da Silva
 
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕESCOMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕESEduardaReis50
 
Rotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riquezaRotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riquezaronaldojacademico
 

Último (20)

Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!Rota das Ribeiras Camp, Projeto Nós Propomos!
Rota das Ribeiras Camp, Projeto Nós Propomos!
 
11oC_-_Mural_de_Portugues_4m35.pptxTrabalho do Ensino Profissional turma do 1...
11oC_-_Mural_de_Portugues_4m35.pptxTrabalho do Ensino Profissional turma do 1...11oC_-_Mural_de_Portugues_4m35.pptxTrabalho do Ensino Profissional turma do 1...
11oC_-_Mural_de_Portugues_4m35.pptxTrabalho do Ensino Profissional turma do 1...
 
Noções de Farmacologia - Flávia Soares.pdf
Noções de Farmacologia - Flávia Soares.pdfNoções de Farmacologia - Flávia Soares.pdf
Noções de Farmacologia - Flávia Soares.pdf
 
Ficha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdfFicha de trabalho com palavras- simples e complexas.pdf
Ficha de trabalho com palavras- simples e complexas.pdf
 
Revista-Palavra-Viva-Profetas-Menores (1).pdf
Revista-Palavra-Viva-Profetas-Menores (1).pdfRevista-Palavra-Viva-Profetas-Menores (1).pdf
Revista-Palavra-Viva-Profetas-Menores (1).pdf
 
Manual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envioManual da CPSA_1_Agir com Autonomia para envio
Manual da CPSA_1_Agir com Autonomia para envio
 
Música Meu Abrigo - Texto e atividade
Música   Meu   Abrigo  -   Texto e atividadeMúsica   Meu   Abrigo  -   Texto e atividade
Música Meu Abrigo - Texto e atividade
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
 
VARIEDADES LINGUÍSTICAS - 1. pptx
VARIEDADES        LINGUÍSTICAS - 1. pptxVARIEDADES        LINGUÍSTICAS - 1. pptx
VARIEDADES LINGUÍSTICAS - 1. pptx
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"
 
Aula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdfAula de História Ensino Médio Mesopotâmia.pdf
Aula de História Ensino Médio Mesopotâmia.pdf
 
Atividade - Letra da música Esperando na Janela.
Atividade -  Letra da música Esperando na Janela.Atividade -  Letra da música Esperando na Janela.
Atividade - Letra da música Esperando na Janela.
 
o ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdfo ciclo do contato Jorge Ponciano Ribeiro.pdf
o ciclo do contato Jorge Ponciano Ribeiro.pdf
 
Dicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelDicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim Rangel
 
Pedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptxPedologia- Geografia - Geologia - aula_01.pptx
Pedologia- Geografia - Geologia - aula_01.pptx
 
Bullying, sai pra lá
Bullying,  sai pra láBullying,  sai pra lá
Bullying, sai pra lá
 
2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental
2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental
2° ano_PLANO_DE_CURSO em PDF referente ao 2° ano do Ensino fundamental
 
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕESCOMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
COMPETÊNCIA 4 NO ENEM: O TEXTO E SUAS AMARRACÕES
 
Rotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riquezaRotas Transaarianas como o desrto prouz riqueza
Rotas Transaarianas como o desrto prouz riqueza
 

Integração do Tracker ao Tewnta para simulação física de futebol de robôs

  • 1. ´ ´ UNIVERSIDADE TECNOLOGICA FEDERAL DO PARANA ˆ ˆ ´ DEPARTAMENTOS ACADEMICOS DE ELETRONICA E INFORMATICA ¸˜ CURSO DE ENGENHARIA DE COMPUTACAO AGNALDO CESAR COELHO ´ ANDRE LUIZ CONSTANTINO BOTTA LEANDRO ALVES DOS SANTOS ¸˜ ´ INTEGRACAO DO TRACKER AO TEWNTA: A FISICA NO ˆ FUTEBOL DE ROBOS ˜ PROJETO DE TRABALHO - VERSAO 0.2 - MONOGRAFIA 11A 29/06/2011 CAMPUS CURITIBA 2011
  • 2. AGNALDO CESAR COELHO ´ ANDRE LUIZ CONSTANTINO BOTTA LEANDRO ALVES DOS SANTOS ¸˜ ´ INTEGRACAO DO TRACKER AO TEWNTA: A FISICA NO ˆ FUTEBOL DE ROBOS ` Este Projeto foi apresentado a Unidade Curricular ¸˜ de Oficina de Integracao 1 do Curso de Engenharia ¸˜ de Computacao da Universidade Tecnol´ gica Fede- o ¸˜ ral do Paran´ como requisito para aprovacao. a Orientador: Jo˜ o Alberto Fabro a Co-orientador: Nestor Cortez Savedra Filho CAMPUS CURITIBA 2011
  • 3. ¸˜ Integracao do Tracker ao Tewnta: A F´sica no Futebol de Robˆ s ı o Agnaldo Cesar CoelhoAndr´ Luiz Constantino Botta Leandro Alves dos Santos e Autor da imagem da capa: Rafael Jaime Sunyˆ Guinart e
  • 4. RESUMO Agnaldo Cesar Coelho; Andr´ Luiz Constantino Botta; Leandro Alves dos Santos. Integracao e ¸˜ do Tracker ao Tewnta: A F´sica no Futebol de Robˆ s. 60 f. Projeto de Trabalho - Vers˜ o 0.2 - ı o a ¸˜ Monografia 11a 29/06/2011 – Curso de Engenharia de Computacao, Universidade Tecnol´ gica o Federal do Paran´ . Campus Curitiba, 2011. a Pretende-se neste projeto aperfeicoar o software simulador de Futebol de Robˆ s Tewnta, para ¸ o que o mesmo possa, da forma mais fiel poss´vel, representar as caracter´sticas e comportamen- ı ı a ¸˜ tos, tais como velocidade m´ xima, aceleracao e torque de cada robˆ simulado, quando compa- o ´ rado ao comportamento f´sico real. Para isso, e utilizado o software Tracker como ferramenta ı b´ sica para a obtenca a ¸ ˜ o de dados. Palavras-chave: Simulacao, Futebol de Robˆ s, Tewnta, Tracker ¸˜ o Areas de Conhecimento:
  • 5. AGRADECIMENTOS Agradecemos aos professores orientadores Jo˜ o Alberto Fabro e Nestor Cortez Saavedra a Filho por terem nos auxiliado durante todo o projeto. Ao aluno Leonardo Pressoto Oliveira ¸˜ pela contribuicao ao dividir conosco seus conhecimentos a respeito do Tracker. Aos alunos Geison Dartora e Matheus Ara´ jo por nos auxiliarem, principalmente, no inicio deste projeto. u ¸˜ E tamb´ m aos professores da disciplina de Oficinas de Integracao: Arandi Ginane Bezerra e J´ nior, Andr´ Fabiano Steklain e Luiz Ernesto Merkle por nos ensinarem como proceder na u e ¸˜ realizacao de pesquisa cient´fica e na escrita de uma monografia. ı
  • 6. LISTA DE FIGURAS ¸˜ ¸˜ FIGURA 1 – VARIACAO DA POSICAO DE UM OBJETO EM FUNCAO DO TEMPO. 13 ¸˜ ´ ´ FIGURA 2 – METODO PARA O CALCULO DA VELOCIDADE INSTANTANEA (TI- ˆ PLER, 2009). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 FIGURA 3 – LIGA INFANTIL - HUMANOID LEAGUE KIDSIZE. . . . . . . . . . . . . . . . . 18 FIGURA 4 – MIDDLE SIZE LEAGUE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 ˆ FIGURA 5 – ROBOS UTILIZADOS NA SMALL SIZE LEAGUE. . . . . . . . . . . . . . . . . . 19 FIGURA 6 – CAMPO OFICIAL DA SSL LEAGUE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 FIGURA 7 – TELA DE UMA PARTIDA SOCCER SIMULATION LEAGUE 2D. . . . . 20 FIGURA 8 – DESLOCAMENTO DE UMA BOLA EM FUNCAO DO TEMPO. . . . . . 21 ¸˜ ´ FIGURA 9 – TRAJETORIA DO CENTRO DE MASSA. . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 ˆ FIGURA 10 – CAMPO DE FUTEBOL DE ROBOS UTILIZADO NAS FILMAGENS. 22 ´ FIGURA 11 – UM REFERENCIAL METRICO, CANTO SUPERIOR ESQUERDO, E ´ ˆ UTILIZADO AO FILMAR OS ROBOS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 FIGURA 12 – CAMPO DE FUTEBOL DE ROBOS ˆ UTILIZADO NAS FILMAGENS. 24 FIGURA 13 – COMANDO IMPORT LOCALIZADO EM FILE → IMPORT → VIDEO. 25 FIGURA 14 – COMANDO CLIP SETTINGS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 FIGURA 15 – COMANDO CALIBRATION TAPE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 FIGURA 16 – SISTEMA DE COORDENADAS CARTESIANAS. . . . . . . . . . . . . . . . . . . . 27 ¸˜ FIGURA 17 – CRIACAO DE UM NOVO PONTO DE MASSA. . . . . . . . . . . . . . . . . . . . . . 27 ¸˜ FIGURA 18 – CONFIGURACAO DO NOVO PONTO DE MASSA CRIADO. . . . . . . . 28 FIGURA 19 – ABA TEMPLATE DEFINE A IMAGEM A SER CAPTURADA EM CADA FRAME DE V´ IDEO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 FIGURA 20 – A ABA TARGET DETERMINA UM ”ALVO”COMO O PONTO PRIN- CIPAL A SER CAPTURADO EM CADA FRAME. . . . . . . . . . . . . . . . . . . . . . 29 FIGURA 21 – NA ABA ACCEPT DETERMINA-SE UM N´ IVEL DE PRECISAO PARA ˜ A CAPTURA DO MOVIMENTO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 ´ FIGURA 22 – NA ABA SEARCH E DISPONIBILIZADO UM RETANGULO TRACE- ˆ ´ JADO PARA DEMARCAR A AREA DE PROCURA. ESSE RETANGULO ˆ ´ DEVE TER EM MEDIA O TAMANHO DO OBJETO PROCURADO. . . . 30 FIGURA 23 – ´ ICONES DE VELOCIDADE E ACELARACAO DENTRO DO RETANGULO. 31 ¸˜ ˆ FIGURA 24 – ROBO ˆ EM MOVIMENTO ANGULAR. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 ¸˜ FIGURA 25 – CONFIGURACAO PARA O SISTEMA DE COORDENADAS ACOM- ˆ PANHAR O CENTRO DO ROBO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 ´ FIGURA 26 – TABELAS E GRAFICOS EXIBIDOS NO CANTO DIREITO DA TELA. 33 ´ FIGURA 27 – GRAFICO DO MOVIMENTO ANGULAR, EM THETA RADIANOS, ¸˜ COM RELACAO AO TEMPO EM SEGUNDOS. O ROBO ROTACIONA ˆ ´ NO SENTIDO HORARIO COM VELOCIDADE CONSTANTE. . . . . . . . . . 34 ´ FIGURA 28 – GRAFICO DO MOVIMENTO ANGULAR, EM THETA RADIANOS, ¸˜ COM RELACAO AO TEMPO EM SEGUNDOS. O ROBO ROTACIONA ˆ ´ NO SENTIDO HORARIO COM TORQUE INICIAL. . . . . . . . . . . . . . . . . . . . 34 ´ FIGURA 29 – GRAFICO DO MOVIMENTO ANGULAR, EM THETA RADIANOS, ¸˜ COM RELACAO AO TEMPO EM SEGUNDOS AO QUADRADO. ESTE
  • 7. ´ GRAFICO FOI OBTIDO AO LINEARIZAR O GRAFICO DA FIGURA ´ ANTERIOR. O ROBO ˆ ROTACIONA NO SENTIDO HORARIO COM TOR- ´ QUE INICIAL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 ´ FIGURA 30 – GRAFICO DO MOVIMENTO ANGULAR, EM THETA RADIANOS, ¸˜ COM RELACAO AO TEMPO EM SEGUNDOS. O ROBO ROTACIONA ˆ ´ NO SENTIDO ANTI-HORARIO COM VELOCIDADE CONSTANTE. . . 35 ´ FIGURA 31 – GRAFICO DO MOVIMENTO ANGULAR, EM THETA RADIANOS, ¸˜ COM RELACAO AO TEMPO EM SEGUNDOS. O ROBO ROTACIONA ˆ ´ NO SENTIDO ANTI-HORARIO COM TORQUE INICIAL. . . . . . . . . . . . . . 36 ´ FIGURA 32 – GRAFICO DO MOVIMENTO ANGULAR, EM THETA RADIANOS, ¸˜ COM RELACAO AO TEMPO EM SEGUNDOS AO QUADRADO. ESTE ´ GRAFICO FOI OBTIDO LINEARIZANDO O GRAFICO DA FIGURA ??. ´ ˆ O ROBO ROTACIONA NO SENTIDO ANTI-HORARIO COM TORQUE ´ INICIAL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 ´ FIGURA 33 – GRAFICO DO DESLOCAMENTO, EM X (METROS), EM FUNCAO ¸˜ DO TEMPO EM SEGUNDOS. O ROBO SE MOVIMENTA COM ACELERACAO ˆ ¸˜ INICIAL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 ´ FIGURA 34 – GRAFICO DO DESLOCAMENTO, EM X (METROS), EM FUNCAO ¸˜ DO TEMPO EM SEGUNDOS AO QUADRADO. ESTE GRAFICO FOI ´ OBTIDO LINEARIZANDO O GRAFICO DA FIGURA ??. O ROBO SE ´ ˆ ¸˜ MOVIMENTA COM ACELERACAO INICIAL. . . . . . . . . . . . . . . . . . . . . . . . . 37 ´ FIGURA 35 – GRAFICO DO DESLOCAMENTO, EM Y (METROS), EM FUNCAO ¸˜ DO TEMPO EM SEGUNDOS. O ROBO SE MOVIMENTA COM ACELERACAO ˆ ¸˜ INICIAL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 ´ FIGURA 36 – GRAFICO DO DESLOCAMENTO, EM Y (METROS), EM FUNCAO ¸˜ DO TEMPO EM SEGUNDOS AO QUADRADO. ESTE GRAFICO FOI ´ OBTIDO LINEARIZANDO O GRAFICO DA FIGURA ??. O ROBO SE ´ ˆ ¸˜ MOVIMENTA COM ACELERACAO INICIAL. . . . . . . . . . . . . . . . . . . . . . . . . 38 ´ FIGURA 37 – GRAFICO DO DESLOCAMENTO, EM Y (METROS), EM FUNCAO ¸˜ DO TEMPO EM SEGUNDOS. O ROBO SE MOVIMENTA COM ACELERACAO ˆ ¸˜ INICIAL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 ´ FIGURA 38 – GRAFICO DO DESLOCAMENTO, EM Y (METROS), EM FUNCAO ¸˜ DO TEMPO EM SEGUNDOS AO QUADRADO. ESTE GRAFICO FOI ´ OBTIDO LINEARIZANDO O GRAFICO DA FIGURA ??. O ROBO SE ´ ˆ ¸˜ MOVIMENTA COM ACELERACAO INICIAL. . . . . . . . . . . . . . . . . . . . . . . . . 39 ´ FIGURA 39 – GRAFICO DO DESLOCAMENTO, EM X (METROS), EM FUNCAO ¸˜ DO TEMPO EM SEGUNDOS. O ROBO ˆ SE MOVIMENTA COM VELO- CIDADE CONSTANTE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 ´ FIGURA 40 – INTERFACE GRAFICA DO SIMULADOR TEWNTA. . . . . . . . . . . . . . . . 41 ¸˜ FIGURA 41 – DIAGRAMA DE COMUNICACAO (APERFEICOAMENTO DO SIMULADOR DE RO 2011). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 FIGURA 42 – DIAGRAMA DE FLUXO (APERFEICOAMENTO DO SIMULADOR DE ROBOS TEW ˆ 2011). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 FIGURA 43 – PROPETIES. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 FIGURA 44 – CLASSE INDEPENDENTROBOT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 FIGURA 45 – CLASSE INDEPENDENTROBOT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 FIGURA 46 – ENCAPSULAMENTO ALTERADO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 FIGURA 47 – ISINDEPENDENTROBOT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
  • 8. FIGURA 48 – SETPLAYERROTATION. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 FIGURA 49 – SETPLAYERROTATIONVELOCITY. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 FIGURA 50 – SETPLAYERVELOCITY. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 FIGURA 51 – ADDROBOT.PNG. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 FIGURA 52 – ¸˜ MOVIMENTO DE TRANSLACAO E ROTACAO TERRESTRE. . . . . . . ¸˜ 55 FIGURA 53 – DESLOCAMENTO DE UM CORPO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 FIGURA 54 – COMPONENTES DO VETOR , EM RELACAO AOS EIXOS Y E X. . . ¸˜ 57 FIGURA 55 – ¸˜ REPRESENTACAO DE DOIS VETORES, E , E DO VETOR SOMA, . 57 FIGURA 56 – EFEITO DA PRIMEIRA LEI DE NEWTON. . . . . . . . . . . . . . . . . . . . . . . . . . 59
  • 9. LISTA DE TABELAS TABELA 1 – DADOS PARA MOVIMENTO LINEAR. . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 TABELA 2 – DADOS PARA MOVIMENTO ANGULAR . . . . . . . . . . . . . . . . . . . . . . . . 34
  • 10. LISTA DE SIGLAS UTFPR Universidade Tecnol´ gica Federal do Paran´ o a SSL Small Size League UFRGS Universidade Federal do Rio Grande do Sul ETL Electro Technical Laboratory IJCAI Conferˆ ncia Internacional de Inteligˆ ncia Artificial e e GNU Genereal Public License
  • 11. ´ SUMARIO ¸˜ 1 INTRODUCAO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 ¸˜ 1.1 DELIMITACAO DO TEMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.2 O PROBLEMA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.3 OBJETIVOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 1.4 OBJETIVOS ESPEC´ IFICOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 1.5 JUSTIFICATIVA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 ´ 1.6 METODOS DE PESQUISA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 ¸˜ ´ 2 INTRODUCAO TEORICA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.1 MOVIMENTO LINEAR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.1.1 Velocidade Linear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Velocidade M´ dia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e 13 Velocidade Instantˆ nea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . a 14 ¸˜ 2.1.2 Aceleracao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.2 MOVIMENTO ANGULAR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.2.1 Velocidade Angular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 ¸˜ 2.2.2 Aceleracao Angular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 3 ROBOCUP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 ´ 3.1 UMA BREVE HISTORIA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 3.1.1 Categorias RoboCup Soccer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 4 TRACKER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 ¸˜ 4.1 PREPARACAO DO AMBIENTE PARA FILMAGEM . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 ˆ 4.2 FILMAGEM DOS ROBOS EM MOVIMENTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 ¸˜ 4.3 DISTORCOES NAS MEDIDAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 ¸˜ 4.4 OBTENCAO DOS DADOS UTILIZANDO O TRACKER . . . . . . . . . . . . . . . . . . . . . . . 24 ¸˜ 4.4.1 Configuracao Inicial . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 ¸˜ 4.5 CRIACAO DO PONTO DE MASSA E OBTENCAO DOS DADOS MANUAL E ¸˜ AUTOMATICAMENTE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 ¸˜ 4.6 PASSOS PARA OBTENCAO DOS DADOS COM MOVIMENTO LINEAR . . . . . . . 30 ¸˜ 4.7 PASSOS PARA OBTENCAO DOS DADOS COM MOVIMENTO ANGULAR . . . . 31 4.8 DADOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 5 TEWNTA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 ˜ ´ 5.1 VISAO GERAL DO CODIGO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 ¸˜ 5.2 ALTERACOERS IMPLEMENTADAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 ¸˜ 5.2.1 Criacao de novas propriedades no arquivo Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 ¸˜ 5.2.2 Criacao da classe IndependentRobot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 ¸˜ ˆ 5.3 ATUALIZACAO DO MOVIMENTO DO ROBO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 5.3.1 Inicializar Robˆ Correspondente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 49 ˜ 6 CONCLUSAO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 ˆ REFERENCIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 ˆ ´ ´ 7 APENDICE - TEORIAS FISICAS E MATEMATICAS . . . . . . . . . . . . . . . . . . . . . . . . 55 7.1 GRANDEZAS ESCALARES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
  • 12. 7.2 GRANDEZAS VETORIAIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 7.2.1 Somas Alg´ bricas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e 56 7.2.2 Soma Geom´ trica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . e 57 7.3 ESTUDO DO MOVIMENTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
  • 13. 10 1 ¸˜ INTRODUCAO 1.1 ¸˜ DELIMITACAO DO TEMA ¸˜ ´ O ambiente de simulacao e amplamente utilizado em ambiente cient´fico. Simulam-se ı o e a ` fenˆ menos da natureza, circuitos el´ tricos e muitos outros desafios que s˜ o propostos a hu- ¸˜ manidade. A simulacao proporciona resultados mais confi´ veis, agilidade nos experimentos, a e a ¸˜ economia de recursos materiais e financeiros, etc. Por´ m tudo est´ condicionado a utilizacao de um software que seja capaz de simular o evento em estudo de forma real e confi´ vel. a Os estudos envolvendo Rob´ tica se encaixam perfeitamente na vantagem de se utilizar um o ¸˜ ¸˜ software de simulacao. Este trabalho esta focado no software de simulacao de Futebol de Robˆ o Tewnta, utilizado na categoria de robˆ s F-180 da RoboCup, assim como no programa Tracker. o Pretende-se mostrar que e poss´vel melhorar o Tewnta atrav´ s dos dados coletados pelo Tracker, ı e tornando assim poss´vel obter como resultado final um simulador que seja capaz de representar ı cada robˆ de forma individual, sabendo que os robˆ s n˜ o apresentam as mesmas caracter´sticas o o a ı de hardware, ou seja, eles respondem de forma diferente ao mesmo comando. Este projeto da continuidade ao trabalho realizado por uma equipe do segundo semestre ¸˜ de 2010 na disciplina de Oficina de Integracao I. A equipe era composta por Matheus Ara´ jo, u Geison Dartora, Mayara Lorenzi e Cristiano Ribas, cujo foco foi melhorar o simulador, por´ m, e ı ´ segundo as caracter´sticas de um unico robˆ . o 1.2 O PROBLEMA o ´ ¸˜ O Futebol de Robˆ s e fonte de inspiracao, leva aos jovens o esp´rito da ciˆ ncia, pois pro- ı e move a interdisciplinaridade, envolvendo pesquisa principalmente em Inteligˆ ncia Artificial, e F´sica e Matem´ tica (FIRA, 2011). ı a A UTFPR trabalha na pesquisa de um time de Futebol de Robˆ s da categoria F-180 da o RoboCup SSL. Para auxiliar no desenvolvimento de estrat´ gias de jogo a UTFPR utiliza o e ´ simulador Tewnta, que e um software open source da SSL, desenvolvido na UFRGS por Gabriel
  • 14. 11 ¸˜ ¸˜ Girardello Detoni em 2008 (TEWNTA, 2011). No entanto, h´ algumas limitacoes na simulacao a o o ¸˜ dos movimentos dos robˆ s. Cada robˆ possui aceleracoes e velocidades diferentes, tanto linear quanto angular. O Tewnta n˜ o leva em conta essas caracter´sticas, sendo que para uma melhor a ı ¸˜ simulacao esses atributos devem ser considerados. Atrav´ s do Tracker, software open source e para an´ lise e modelagem de v´deos, pode-se coletar esses dados de forma precisa e ent˜ o a ı a adicion´ -los ao Tewnta. a 1.3 OBJETIVOS ´ O objetivo e aperfeicoar o software Tewnta, simulador de Futebol de Robˆ s para a liga ¸ o F-180, para que este reproduza com precis˜ o os movimentos de cada um dos cinco robˆ s que a o comp˜ em a equipe de Futebol de Robˆ s da UTFPR. o o 1.4 OBJETIVOS ESPEC´ IFICOS • Simulacao da aceleracao linear e angular, espec´fica de cada robˆ . ¸˜ ¸˜ ı o • Simulacao da velocidade linear e angular de cada robˆ . ¸˜ o 1.5 JUSTIFICATIVA ´ Duas principais areas do conhecimento est˜ o relacionadas no desenvolvimento deste pro- a a e ¸˜ jeto, sejam elas a inform´ tica atrav´ s de aplicacao no desenvolvimento de software de compu- ¸˜ tador na linguagem de programacao Java, afim de melhorar o simulador de Futebol de Robˆ s o ¸˜ Tewnta, assim como grandezas f´sicas, tais como aceleracao e velocidade, angular e linear. ı ¸˜ ´ Pois, para se ter uma simulacao virtual o mais pr´ xima poss´vel da realidade e preciso levar em o ı ¸˜ consideracao os efeitos de eventos f´sicos. ı 1.6 ´ METODOS DE PESQUISA O m´ todo empregado neste projeto consiste em pesquisa experimental auxiliado pelo soft- e ¸˜ ware Tracker, software este que a partir de v´deos fornece dados como velocidade e aceleracao ı de um ou mais objetos. Para alcancar os objetivos deste projeto s˜ o seguidos os seguintes pas- ¸ a sos: • Coleta de dados dos robˆ s em movimento retil´neo e angular, utilizando uma cˆ mera de o ı a
  • 15. 12 ı ı ´ v´deo e o software Tracker. O v´deo e importado pelo programa Tracker. Este, por sua ¸˜ vez, fornece informacoes acerca dos movimentos de cada robˆ . o • Criacao de novas classes e m´ todos no c´ digo fonte do Tewnta para insercao dos dados ¸˜ e o ¸˜ no c´ digo fonte afim de representar individualmente os robˆ s. Esses m´ todos reprodu- o o e ı o ¸˜ zem os movimentos caracter´sticos dos robˆ s, levando em consideracao toda e qualquer deficiˆ ncia existente. e • Testes comparativos das aceleracoes e velocidades, angular e linear, de cada robˆ , no ¸˜ o ¸˜ simulador, com as respectivas aceleracoes e velocidades dos robˆ s reais. o
  • 16. 13 2 ¸˜ ´ INTRODUCAO TEORICA 2.1 MOVIMENTO LINEAR 2.1.1 Velocidade Linear Velocidade M´ dia e ¸˜ ¸˜ ¸˜ Ao representar-se a posicao de um objeto em funcao do tempo ( notacao: x(t), sendo x ¸˜ a posicao e t o tempo), obt´ m-se um gr´ fico (figura 1), que revela com que rapidez o objeto e a se move. V´ rias grandezas est˜ o associadas com a express˜ o “com que rapidez”, entre elas, a a a a ´ velocidade m´ dia, que e a raz˜ o entre o deslocamento e a x e o intervalo de tempo t, durante o qual esse deslocamento ocorre (HALLIDAY DAVID; RESNICK, 2009): x x2 − x1 vmed = = (1) t t2 − t1 ´ A velocidade, assim como o deslocamento, e uma grandeza vetorial, portanto possui um ¸˜ ¸˜ ¸˜ Figura 1: Variacao da posicao de um objeto em funcao do tempo. ¸˜ ´ ¸˜ m´ dulo e uma orientacao. O m´ dulo e o valor absoluto da inclinacao da reta, e um valor posi- o o e ¸˜ tivo para a velocidade m´ dia (e para a inclinacao) significa que a reta est´ inclinada para cima da a ¸˜ esquerda para a direita; um valor negativo para a velocidade m´ dia(e para a inclinacao) significa e
  • 17. 14 que a reta est´ inclinada para baixo da esquerda para a direita (HALLIDAY DAVID; RESNICK, a 2009). Velocidade Instantˆ nea a ` Analisando o gr´ fico da (figura 2), a medida que considera-se intervalos de tempo sucessiva- a ¸˜ mente menores, iniciando em tp, a velocidade m´ dia para o intervalo se aproxima da inclinacao e da reta tangente em tp. Figura 2: M´ todo para o c´ lculo da velocidade instantˆ nea (TIPLER, 2009). e a a ¸˜ ´ Define-se a inclinacao desta tangente como a velocidade instantˆ nea. Esta tangente e o a x limite da raz˜ o de a t quando t tende a zero (TIPLER, 2009). x dx v = lim = (2) t→0 t dt 2.1.2 ¸˜ Aceleracao ¸˜ Quando a velocidade de uma objeto ou part´cula varia, diz-se que este sofreu uma aceleracao ı ¸˜ (ou foi acelerado) (HALLIDAY DAVID; RESNICK, 2009). A aceleracao m´ dia em um inter- e valo de tempo ´ t e: v v2 − v1 amed = = (3) t t2 − t1
  • 18. 15 v ¸˜ ´ A acelerecao instantˆ nea e o limite da raz˜ o de a a t quando t tende a zero (TIPLER, 2009). v dv a = lim = (4) t→0 t dt ¸˜ ´ ¸˜ Assim, a aceleracao e a derivada da velocidade v em relacao ao tempo. Como a velocidade ´ ¸˜ ¸˜ ¸˜ ´ e a derivada da posicao x em relacao ao tempo t, a aceleracao e a derivada de segunda ordem de ¸˜ x em relacao a t (HALLIDAY DAVID; RESNICK, 2009). dv d dx d 2 x a= = = 2 (5) dt dt dt dt 2.2 MOVIMENTO ANGULAR ¸˜ Para o movimento rotacional tem-se equacoes an´ logas ao do movimento linear: a 2.2.1 Velocidade Angular ¸˜ ¸˜ Um corpo em rotacao est´ na posicao angular θ1 no instante t1 , e na angular θ2 no instante a t2 . Define-se como velocidade angular m´ dia do corpo no intervalo de tempo e t (YOUNG HUGH D.; FREEDMAN, 2009): θ2 − θ1 θ ω= = (6) t2 − t1 t ´ ¸˜ A velocidade angular (instantˆ nea) ω e o limite da raz˜ o da equacao da velocidade angular a a m´ dia quando e tt tende a zero (YOUNG HUGH D.; FREEDMAN, 2009): θ dθ ω = lim = (7) t→0 t dt 2.2.2 ¸˜ Aceleracao Angular ¸˜ a ´ Se a velocidade angular de um corpo em rotacao n˜ o e constante, o corpo possui uma ¸˜ aceleracao angular. Sejam ω1 e ω2 as velocidades nos instantes t1 e t2, respectivamente. A ¸˜ ¸˜ ´ aceleracao angular m´ dia do corpo em rotacao no intervalo t1 at´ t2 e definida atrav´ s da e e e ¸˜ equacao (8) (YOUNG HUGH D.; FREEDMAN, 2009): ω2 − ω1 ω αmed = = (8) t2 − t1 t
  • 19. 16 ¸˜ ´ A aceleracao angular (instantˆ nea) α e o limite dessa grandeza quando a t tende a zero (YOUNG HUGH D.; FREEDMAN, 2009): ω dω α = lim = (9) t→0 t dt
  • 20. 17 3 ROBOCUP ´ E jogado por robˆ s especializados em reproduzir diversos eventos que ocorrem em um jogo o ¸˜ de futebol real. As principais competicoes s˜ o organizadas pela Fira e RoboCup e ocorrem a a cada ano (ROBOT, 2011). 3.1 ´ UMA BREVE HISTORIA Em outubro de 1992 um grupo de pesquisadores japoneses, com o objetivo de discutir pro- blemas desafiadores em inteligˆ ncia artificial, organizou um Workshop na cidade de T´ quio, e o Jap˜ o. Este encontro os levou a crer que seria poss´vel usar o futebol para promover ciˆ ncia e a ı e tecnologia. Ap´ s muitos estudos sobre viabilidade financeira, tecnol´ gica e poss´veis impactos o o ı sociais eles decidiram dar inicio ao futebol de robˆ s, elaborando regras e inclusive desenvol- o o ¸˜ vendo prot´ tipos e sistemas de simulacao. Ap´ s esse encontro em junho 1993, um grupo de o pesquisadores, incluindo Minoru Asada, Yasuo Kuniyoshi e Hiroaki Kitano, decidiu lancar ¸ ¸˜ ¸˜ uma competicao, provisoriamente chamado de Robˆ J-League. Essa competicao teve reper- o cuss˜ o internacional e diversos pesquisadores de outros pa´ses se interessaram na ideia. Devido a ı a isso, eles alteraram o nome do projeto para Robot World Cup Initiative, ”RoboCup”. Pouco tempo depois, Itsuki Noda pesquisador da ETL, desenvolveu um simulador que mais tarde se tornaria o servidor de futebol oficial da RoboCup (ROBOT, 2011). O an´ ncio para realizar a primeira Copa do Mundo de Futebol de Robˆ s foi feita durante u o a (IJCAI-95) IJCAI realizada em Montreal, Canad´ , agosto de 1995. Mas a primeira Copa a oficial de robos ocorre 1997 e foi um sucesso. Mais de quarenta equipes de varias partes do mundo participaram, al´ m disso o n´ mero de espectadores foi maior que cinco mil (ROBOCUP, e u 2011a). Alcancando o Estado da Arte ¸ ¸˜ ´ A intencao dos fundadores da RoboCup e utilizar esta para promover a rob´ tica e pesquisa o em inteligˆ ncia artificial. Para eles, construir um robˆ para jogar futebol em si n˜ o gera impacto e o a
  • 21. 18 ¸˜ ´ social e econˆ mico significativo, mas a realizacao certamente e considerada como uma grande o conquista do campo (ROBOCUP, 2011b). A RoboCup possui atualmente as seguintes modalidades: RoboCup Rescue, RoboCup@Home, ´ RoboCup Junior e RoboCup Soccer, sendo esta ultima foco de nosso estudo. 3.1.1 Categorias RoboCup Soccer Humanoid League Nesta liga, robˆ s autˆ nomos parecidos com humanos disputam uns contra os outros. Est´ o o a ´ e a categoria mais complexa da RoboCup, pois os robˆ s tem que chutar a bola, ter um andar o a ı e ¸˜ dinˆ mico e correr sem perder o equil´brio, al´ m da necessidade de haver a percepcao visual da bola, por parte deles. Os melhores robˆ s human´ ides do mundo disputam nesta liga (HUMA- o o NOID LEAGUE, 2011). ´ Esta liga e divida em trˆ s subligas: KidSize (pequeno) com medidas 30 cm a 60 cm de e altura, TeenSize (m´ dio) de 100 cm a 120 cm, e AdultSize (grande) de 130 cm ou maior (HU- e MANOID LEAGUE, 2011).figura 3 Figura 3: Liga infantil - Humanoid League KidSize. Middle Size League Robˆ s de tamanho m´ dio n˜ o superior a 50 cm de diˆ metro disputam em equipes de no o e a a m´ ximo seis, com bola de futebol de tamanho regular da FIFA em um campo similar a um a campo de futebol em escala humana. Todos os sensores s˜ o on-board e os robˆ s podem usar a a o rede sem fio para se comunicar (MIDDLE SIZE LEAGUE, 2011).figura 4 Soccer Small Size League Nesta liga se encaixam os robˆ s da UTFPR, o objetivo de pesquisa deste trabalho. Esta o
  • 22. 19 Figura 4: Middle Size League. ´ categoria de tamanho pequeno ou liga F180, e uma das mais antigas da RoboCup. Incide sobre ¸˜ o problema da cooperacao multi-robot agente inteligente e controle em um ambiente altamente dinˆ mico, com um sistema h´brido centralizado/distribu´do.figura 5 a ı ı Figura 5: Robˆ s utilizados na Small Size League. o As equipes s˜ o formadas por no m´ ximo cinco robˆ s. Eles possuem 18 cm de diˆ metro e a a o a n˜ o s˜ o maiores que 15 cm de altura. Os robˆ s jogam com uma bola de golfe laranja em um a a o campo verde de dimens˜ es de 605 cm de comprimento por 405 cm de largura (SMALL SIZE LEAGUE, o 2011). figura 6 Figura 6: Campo oficial da SSL league. Todos os objetos no campo s˜ o controlados por um sistema de vis˜ o padronizado que pro- a a cessa os dados fornecidos pelas duas cˆ meras que est˜ o ligados a uma barra de cˆ mera locali- a a a ´ zada 4 m acima do campo. O sistema de vis˜ o chamado SSL-Vision e um projeto open source a mantido pela comunidade da liga (SMALL SIZE LEAGUE, 2011).
  • 23. 20 Soccer Simulation League Nesta categoria n˜ o h´ robˆ s reais em cena. Jogadores virtuais e independentes (agentes) a a o jogam futebol num campo virtual dentro de um computador. H´ duas subligas: 2D e 3D (STAN- a DARD PLATFORM SOCCER, 2011).figura 7 Figura 7: Tela de uma partida Soccer Simulation League 2D. Soccer Standard Platform League o e a a ´ Nesta liga todas as equipes utilizam robˆ s idˆ nticos e a vis˜ o omnidirecional n˜ o e permi- tida. O campeonato substituiu o Four-Legged League, baseada em robˆ s c˜ es AIBO da Sony, o a ´ e agora e baseada em human´ ides Aldebaran de Nao (STANDARD PLATFORM SOCCER, o 2011).
  • 24. 21 4 TRACKER ´ O Tracker e um software open source licenciado sobre os termos de GNU General Public License para an´ lise e modelagem de v´deos. Foi projetado por Douglas Brown com o objetivo a ı de auxiliar no estudo da F´sica (TRACKER, 2011). Esta ferramenta pode ser utilizada em ı ¸˜ ´ diversas situacoes onde se queira analisar o movimento de objetos no tempo. Com ele e poss´vel ı ¸˜ obter gr´ ficos da aceleracao angular e linear, velocidade angular e linear, deslocamento, energia a cin´ tica, momento linear, etc. A figura 8 mostra o gr´ fico do deslocamento de uma bola em e a ¸˜ funcao do tempo, obtido com Tracker. ¸˜ Figura 8: Deslocamento de uma bola em funcao do tempo. Para utilizar o Tracker basta gravar um v´deo do(s) objeto (s), em movimento, que se quer ı ı a ¸˜ analisar e importar este v´deo para o programa. Ent˜ o com a opcao Autotrack obt´ m-se a e o ´ trajet´ ria dos itens selecionados. O diferencial neste software e a eficiˆ ncia em capturar essa e trajet´ ria. Pode-se tamb´ m obter o trajeto do centro de massa de um sistema formado por o e v´ rios objetos. A figura 9 mostra uma trajet´ ria do centro de massa do sistema formado por a o duas part´culas, obtido com Tracker. ı A partir dos dados coletados, atrav´ s do Autotrack ou manualmente, o Tracker ent˜ o dispo- e a ¸˜ nibiliza tabelas e gr´ ficos com praticamente todas as informacoes referentes ao deslocamento a ¸˜ da(s) part´cula(s) em estudo. Para fazer o download do Tracker e manual de instrucao do ı
  • 25. 22 Figura 9: Trajet´ ria do centro de massa. o mesmo, basta acessar http://www.cabrillo.edu/ dbrown/tracker/. Recomenda-se sempre veri- ¸˜ ¸˜ ficar por novas atualizacoes desse software. Nas secoes que seguem s˜ o descritos todos os a ¸˜ ¸˜ procedimentos utilizados at´ a obtencao dos dados para as tabelas, gr´ ficos e equacoes de mo- e a vimento de cada robˆ , empregando o Tracker. o 4.1 ¸˜ PREPARACAO DO AMBIENTE PARA FILMAGEM ¸˜ ´ Primeiramente, antes de iniciar as gravacoes dos robˆ s em movimento, e feito o ajuste o correto da cˆ mera, de modo que seja poss´vel visualizar todo o campo figura 10. Neste caso, a a ı cˆ mera fica posicionada a aproximadamente dois metros acima do centro do campo. a Figura 10: Campo de futebol de robˆ s utilizado nas filmagens. o O uso de uma superf´cie que diminui o reflexo da luz, como o carpete na figura 10, e uma ı a e ¸˜ ´ cˆ mera de boa qualidade, de preferˆ ncia acima de oito megapixels de resolucao, e muito im- ¸˜ portante. Pois, facilita-se a obtencao da trajet´ ria dos robˆ s com uso do Autotrack, ferramenta o o a ¸˜ o a ´ que ser´ melhor detalhada nas secoes seguintes. Ap´ s os ajustes de cˆ mera e campo e definido ´ um referencial m´ trico, como o mostrado no canto superior esquerdo da figura 11. Este e fu- e turamente configurado no Tracker. O software define uma medida, relacionando a quantidade
  • 26. 23 ¸˜ de pixels ao valor aferido para o objeto. Para a determinacao deste referencial recomenda-se o uso de algum objeto como, por exemplo, uma r´ gua de um metro ou mesmo marcas sobre o e campo. O valor aferido ao objeto ser´ futuramente configurado no Tracker. Pois, este define a uma medida, relacionando a quantidade de pixeis ao valor aferido para o objeto. No caso da ´ figura 11, o valor de 8.820E-1 significa que a medida entre os extremos da seta e de 0,882 metros. e ´ Figura 11: Um referencial m´ trico, canto superior esquerdo, e utilizado ao filmar os robˆ s. o 4.2 ˆ FILMAGEM DOS ROBOS EM MOVIMENTO ´ A cˆ mera e, preferencialmente, conectada a um computador onde as imagens capturadas a ´ ¸˜ s˜ o armazenadas. Desta maneira, e poss´vel parar e iniciar gravacoes sem a necessidade de a ı mexer na filmadora j´ devidamente ajustada. Para isso, utiliza-se um software de captura e a ¸˜ reproducao de v´deos como, por exemplo, o Xuggle (programa usado pelo Tracker para an´ lise ı a e modelagem de v´deos). Observa-se tamb´ m, a facilidade em administrar os arquivos de v´deo ı e ı quando estes s˜ o armazenados, em tempo real, no computador. a o ´ Para a filmagem dos robˆ s, e ideal que se reproduza o mesmo movimento por no m´nimo ı ¸˜ trˆ s vezes. Pois, geralmente ocorre pequena variacao no percurso de cada um deles. Fazendo e isto, pode-se escolher um trajeto no qual o robˆ tende a reproduzir com mais frequˆ ncia. Nos o e experimentos deste projeto, foi repetido por quatro vezes cada movimento (movimento linear e angular para a direita e esquerda) dos robˆ s 03, 07, 08 e robˆ 10. O robˆ 04 n˜ o foi filmado de- o o o a vido a este estar com problemas. Cada ente rob´ tico foi acionado por meio de um computador. o ¸˜ o ´ A comunicacao deste com os robˆ s e feita atrav´ s de ondas de r´ dio FM. Para determinar em e a ´ que sentido cada robˆ deve dirigir-se e utilizado software de controle instalado no computador o em quest˜ o. a
  • 27. 24 4.3 ¸˜ DISTORCOES NAS MEDIDAS Foram realizadas medidas do campo filmado e comparado com as medidas, deste campo, obtidas com o Tracker (figura 12). Observou-se ent˜ o, exceto no centro, algumas diferencas. a ¸ ¸˜ Isso ocorre devido as distorcoes causadas pela lente da filmadora. Quanto mais longe do centro ´ ¸˜ do campo maior e essa distorcao. Por exemplo, o comprimento real das linhas laterais do campo ´ e de 232,5 cm, enquanto que com o Tracker foi obtido uma medida de 224,4 cm. Pode-se verificar outras medidas na figura 12. ¸ a ¸˜ Essas diferencas n˜ o foram levadas em consideracao. Por´ m, para minimizar este pro- e ´ ¸˜ ´ blema, foram coletadas imagens dos robˆ s em movimento nas areas onde esta distorcao e me- o nor ou praticamente nula. Por exemplo, para a captura do movimento angular os robˆ s foram o mantidos pr´ ximos ao c´rculo central do campo. o ı Figura 12: Campo de futebol de robˆ s utilizado nas filmagens. o 4.4 ¸˜ OBTENCAO DOS DADOS UTILIZANDO O TRACKER 4.4.1 ¸˜ Configuracao Inicial a ı ´ Para iniciar a an´ lise de um v´deo, o primeiro passo e carregar o v´deo, fazendo uma ı importacao deste atrav´ s do comando import, localizado no menu file → import → video ¸˜ e
  • 28. 25 Figura 13: Comando import localizado em file → import → video. Para an´ lise e modelagem dos v´deos o Tracker utiliza o Xuggle, software open source que a ı ”lˆ ”diversos formatos de arquivos de v´deo, inclusive AVI E MPG (j´ incluso no pacote de e ı a ¸˜ ¸˜ instalacao do Tracker 4.0). Ap´ s a importacao do v´deo deve-se configurar o intervalo a ser o ı analisado. Isto e feito, definindo o frame inicial e final. Ao clicar no ´cone Clip Settings (´cone ´ ı ı de v´deo indicado pela flecha na figura 14) uma janela, Clip Settings, para os ajustes do v´deo ı ı ´ e aberta. Na primeira e terceira caixas de di´ logo, Start frame e End frame, define-se o frame a inicial e o frame final, respectivamente. Figura 14: Comando Clip Settings. Na caixa de di´ logo Step size determina-se a quantidade de frames que o programa deve a ¸˜ ´ ”pular”em cada iteracao, sendo o padr˜ o 1. Em Frame e mostrado a taxa de frames por segundo, a a ´ a ser considerado, sendo que o valor padr˜ o e o m´ ximo determinado pelo equipamento de fil- a ¸˜ magem. Na sequˆ ncia, determina-se a relacao entre quantidade de pixels e unidades de medida, e
  • 29. 26 como cent´metros, metros, polegadas, etc. Para isto, basta clicar no ´cone (figura 15) ao lado ı ı do ´cone de v´deo e escolher, preferencialmente, Calibration Tape. Ent˜ o uma seta com duas ı ı a ´ pontas e mostrado. Os extremos da seta s˜ o fixados de acordo com o referencial m´ trico esco- a e lhido (discutido anteriormente), arrastando-se a flecha ou qualquer uma de suas pontas. Ap´ s, o define-se a medida de um extremo ao outro (metros, cent´metros ou qualquer outra unidade de ı medida) clicando no centro da seta ou pela caixa de di´ logo length. a Figura 15: Comando Calibration Tape. ´ ´ O ultimo referencial a ser verificado e o sistema de coordenadas cartesianas. Para configur´ - a lo e necess´ rio clicar no ´cone mostrado na figura 16. Ap´ s isto, o sistema de coordenadas fica ´ a ı o a e ¸˜ vis´vel, podendo-se em seguida arrast´ -lo at´ a posicao referenciada como origem ou at´ mesmo ı e ˆ ´ alterar seu angulo. Um ponto de origem e definido, arrastando-se o sistema de coordenadas. Da ´ ˆ mesma forma, e poss´vel, inclusive, alterar o angulo do sistema. ı 4.5 ¸˜ ¸˜ CRIACAO DO PONTO DE MASSA E OBTENCAO DOS DADOS MANUAL E AU- TOMATICAMENTE ¸˜ ´ Ap´ s a configuracao inicial, deve-se criar um novo Ponto de Massa. Este m´ todo e utilizado o e para an´ lise individual de objetos em movimento (se for necess´ rio analisar o movimento de um a a ¸˜ sistema de part´culas, pode-se utilizar a opcao Centro de Massa, abaixo de Point of Mass). Para ı criar o Ponto de Massa (figura 17) deve-se clicar no menu Tracks → New → Point of Mass. Logo ap´ s, a janela Track Control torna-se vis´vel, sendo ent˜ o poss´vel determinar a trajet´ ria o ı a ı o do Ponto de Massa mencionado. ´ a o ´ E necess´ rio, agora, relacionar o trajeto do robˆ ao Ponto de Massa. Isto e poss´vel fazer ı
  • 30. 27 Figura 16: Sistema de coordenadas cartesianas. ¸˜ Figura 17: Criacao de um novo Ponto de Massa. tanto manual quanto automaticamente. Para obter o percurso do robˆ manualmente, coloca- o o ¸˜ se o robˆ na posicao inicial e ent˜ o com a tecla Shift pressionada clica-se, utilizando o bot˜ o a a o o ´ esquerdo do mouse, sobre o centro do robˆ . Logo ap´ s, o frame seguinte e mostrado. Essa ¸˜ ¸˜ operacao deve ser repetida at´ a obtencao do trajeto total desejado. Para obter o percurso au- e tomaticamente, deve-se clicar sobre o novo Ponto de Massa criado, item destacado na Janela Track Control (figura 18). Nesta etapa determina-se automaticamente o trajeto do robˆ . Em o
  • 31. 28 ´ seguida, uma janela do Autotracker e aberta, sendo necess´ rio clicar sobre o robˆ para iniciar a a o ¸˜ configuracao. ¸˜ Figura 18: Configuracao do Novo Ponto de Massa Criado. A aba Template, na janela Autotracker (figura 19), define a imagem a ser capturada em cada ı ı ´ frame de v´deo. Um c´rculo e disponibilizado para selecionar o objeto a ser capturado. Para um ´ melhor desempenho recomenda-se envolver, com esse c´rculo, apenas uma pequena area com ı maior contraste no objeto, como o que foi feito com o robˆ da (figura 19) . A barra Evolution o ` Rate define a rapidez com que Template se adapta a mudanca de forma e cor do objeto com o ¸ tempo, sendo 10 % a taxa padr˜ o. a ¸˜ Na aba Target os passos ser˜ o marcados em relacao a Template. O Tracker seleciona o a centro do c´rculo por padr˜ o (sinal de + no centro da (figura 20). Para alterar basta arrastar, para ı a qualquer lado, o ponto considerado como ”alvo”. ´ Na aba Accept e determinado um n´vel de precis˜ o para a captura do movimento. Redu- ı a zindo o valor da barra Accept Scores Above aumenta a probabilidade de erros. Recomenda-se ´ utilizar o padr˜ o do software que e de quatro unidades. a ´ ´ ´ A aba Search e utilizada para determinar a area de procura do objeto. Nesta guia e dispo- a ´ nibilizado um retˆ ngulo tracejado para delimitar a area de procura. Esse retˆ ngulo deve ter em a m´ dia o tamanho do objeto procurado. A cada frame seguinte, o Tracker tenta atualizar essa e ´ ¸˜ area de acordo com a posicao atual do objeto. Para melhorar a busca, recomenda-se demarcar o ¸˜ campo com, aproximadamente, as dimens˜ es do objeto. A caixa de selecao Look Ahead deve o
  • 32. 29 Figura 19: Aba Template define a imagem a ser capturada em cada frame de v´deo. ı Figura 20: A aba Target determina um ”alvo”como o ponto principal a ser capturado em cada frame. estar assinalada. Feito os devidos ajustes, pode-se agora determinar a trajet´ ria do robˆ , clicando no bot˜ o o o a ´ Search (figura 22). Na figura 23 e mostrada a trajet´ ria de um robˆ obtida com o Autotracker. o o Clicando sobre os ´cones de velocidade ou aceleracao (´cones envolvidos pela caixa retangular ı ¸˜ ı ´ preta, figura 23) e poss´vel visualizar ou ocultar os respectivos vetores. ı ´ a Para utilizar o Autotracker, e v´ lido lembrar que o v´deo a ser analisado deve ter uma boa ı ¸˜ definicao e conter imagens n´tidas, como citado anteriormente. Do contr´ rio, recomenda-se ı a obter manualmente o percurso do robˆ . o
  • 33. 30 Figura 21: Na aba Accept determina-se um n´vel de precis˜ o para a captura do movimento. ı a ´ ´ Figura 22: Na aba Search e disponibilizado um retˆ ngulo tracejado para demarcar a area de a procura. Esse retˆ ngulo deve ter em m´ dia o tamanho do objeto procurado. a e 4.6 ¸˜ PASSOS PARA OBTENCAO DOS DADOS COM MOVIMENTO LINEAR Para obter o percurso do robˆ em movimento linear basta seguir os passos citados at´ aqui. o e
  • 34. 31 ´ ¸˜ Figura 23: Icones de velocidade e acelaracao dentro do retˆ ngulo. a 4.7 ¸˜ PASSOS PARA OBTENCAO DOS DADOS COM MOVIMENTO ANGULAR ¸˜ Para a obtencao dos dados com movimento angular, al´ m dos procedimentos j´ citados, e a deve-se fixar o referencial, para o sistema de coordenadas, no centro do ente rob´ tico, fazendo o com que a origem do sistema acompanhe o centro do robˆ em movimento. Ou seja, a origem o do sistema de coordenadas acompanha o centro do robˆ em movimento. (figura 24). o Para este procedimento deve-se criar um segundo Ponto de Massa, no qual seu percurso acompanha o centro do robˆ . Logo ap´ s, pode-se determinar o ponto de referˆ ncia para o plano o o e cartesiano atrav´ s do menu Coordinate System → Reference Frame, onde e poss´vel escolher o e ´ ı Ponto que acompanha o centro como referˆ ncia (figura 25). e 4.8 DADOS Ap´ s criar a trajet´ ria dos movimentos, o Tracker disponibiliza diversas tabelas e gr´ ficos o o a ` dos dados (canto direito), (figura 26). A direita s˜ o mostrados o gr´ fico e tabela gerados pelo a a Tracker a partir do deslocamento do robˆ , Neste projeto foram utilizados apenas os relacionados o ¸˜ ao deslocamento linear e angular em relacao ao tempo. Para obter dados referentes a outras vari´ veis, basta clicar em Table no canto superior esquerdo da tabela e selecionar os itens. a ¸˜ Seguindo o procedimento citado na secao anterior foram obtidos dados, dos quais utiliza- ¸˜ mos para a construcao das tabelas 1 e 2, abaixo. Os dados mostrados s˜ o para os robˆ s 03, 07, a o
  • 35. 32 Figura 24: Robˆ em movimento angular. o ¸˜ Figura 25: Configuracao para o sistema de coordenadas acompanhar o centro do robˆ . o 08 e 10. O robˆ 04 n˜ o foi filmado devido a este apresentar problemas. o a ` ¸˜ Os dados relativo ao movimento linear constante referem-se a variacao de deslocamento dos momentos em que o robˆ inicia o movimento com velocidade constante at´ o momento o e ¸˜ anterior a este iniciar sua desaceleracao. ¸˜ ¸˜ Em relacao ao movimento linear inicial, levamos em consideracao apenas a trajet´ ria entre o ¸˜ ¸˜ a posicao de repouso at´ a posicao em que o robˆ atinge a velocidade constante. e o
  • 36. 33 Figura 26: Tabelas e gr´ ficos exibidos no canto direito da tela. a Tabela 1: Dados para Movimento Linear. MOVIMENTO LINEAR MOVIMENTO LINEAR INICIAL Aceleracao em Y (m/s2 ) Velocidade constante em X (m/s) ¸˜ Aceleracao em Y (m/s2 ) Aceleracao em X (m/s2 ) ¸˜ ¸˜ Robˆ 3 o 0,8859 0,0574 0,0330 0,7152 Robˆ 7 o 0,1241 1,5835 0,1636 1,5938 Robˆ 8 o 0,154 1,7789 0,0676 1,0932 Robˆ 10 o 0,2734 1,674 0,3194 1,718 ` ¸˜ Os dados relativo ao movimento angular inicial referem-se a variacao de deslocamento angular dos momentos em que o robˆ inicia o movimento com velocidade constante at´ o mo- o e ¸˜ mento anterior a este iniciar sua desaceleracao. ¸˜ ¸˜ Em relacao ao movimento angular inicial, levamos em consideracao apenas o deslocamento ¸˜ ¸˜ angular entre a posicao de repouso at´ a posicao em que o robˆ atinge a velocidade angular e o constante. Utilizando os mesmos dados para criar as tabelas 1 e 2 foram plotados, para o robˆ 08, o a e ¸˜ os gr´ ficos abaixo. Al´ m disso, foram geradas as equacoes de cada movimento (canto inferior direito de cada figura):
  • 37. 34 Tabela 2: Dados para Movimento Angular MOVIMENTO ANGULAR ESQUERDA MOVIMENTO ANGULAR DIREITA Torque inicial (rad/s2 ) Velocidade constante (rad/s) Torque inicial (rad/s2 ) Velocidade constante (rad/s) Robˆ 3 o 32,7286 10,7878 -18,8166 -9,8331 Robˆ 7 o 35,8936 21,0474 -27,8734 -18,7874 Robˆ 8 o 33,9293 20,7332 -30,1496 -21,0915 Robˆ 10 o 59,7220 22,5444 -41,1899 -20,4160 ¸˜ Figura 27: Gr´ fico do movimento angular, em theta radianos, com relacao ao tempo em segundos. a O robˆ rotaciona no sentido hor´ rio com velocidade constante. o a ¸˜ Figura 28: Gr´ fico do movimento angular, em theta radianos, com relacao ao tempo em segundos. a O robˆ rotaciona no sentido hor´ rio com torque inicial. o a
  • 38. 35 ¸˜ Figura 29: Gr´ fico do movimento angular, em theta radianos, com relacao ao tempo em segundos a ao quadrado. Este gr´ fico foi obtido ao linearizar o gr´ fico da figura anterior. O robˆ rotaciona no a a o sentido hor´ rio com torque inicial. a ¸˜ Figura 30: Gr´ fico do movimento angular, em theta radianos, com relacao ao tempo em segundos. a O robˆ rotaciona no sentido anti-hor´ rio com velocidade constante. o a
  • 39. 36 ¸˜ Figura 31: Gr´ fico do movimento angular, em theta radianos, com relacao ao tempo em segundos. a O robˆ rotaciona no sentido anti-hor´ rio com torque inicial. o a ¸˜ Figura 32: Gr´ fico do movimento angular, em theta radianos, com relacao ao tempo em segundos a ao quadrado. Este gr´ fico foi obtido linearizando o gr´ fico da figura 31. O robˆ rotaciona no a a o sentido anti-hor´ rio com torque inicial. a
  • 40. 37 a ¸˜ Figura 33: Gr´ fico do deslocamento, em X (metros), em funcao do tempo em segundos. O robˆ se o ¸˜ movimenta com aceleracao inicial. ¸˜ Figura 34: Gr´ fico do deslocamento, em X (metros), em funcao do tempo em segundos ao qua- a drado. Este gr´ fico foi obtido linearizando o gr´ fico da figura 33. O robˆ se movimenta com a a o ¸˜ aceleracao inicial.
  • 41. 38 a ¸˜ Figura 35: Gr´ fico do deslocamento, em Y (metros), em funcao do tempo em segundos. O robˆ se o movimenta com aceleraca¸ ˜ o inicial. ¸˜ Figura 36: Gr´ fico do deslocamento, em Y (metros), em funcao do tempo em segundos ao qua- a drado. Este gr´ fico foi obtido linearizando o gr´ fico da figura 35. O robˆ se movimenta com a a o ¸˜ aceleracao inicial.
  • 42. 39 a ¸˜ Figura 37: Gr´ fico do deslocamento, em Y (metros), em funcao do tempo em segundos. O robˆ se o movimenta com aceleraca¸ ˜ o inicial. ¸˜ Figura 38: Gr´ fico do deslocamento, em Y (metros), em funcao do tempo em segundos ao qua- a drado. Este gr´ fico foi obtido linearizando o gr´ fico da figura 37. O robˆ se movimenta com a a o ¸˜ aceleracao inicial.
  • 43. 40 a ¸˜ Figura 39: Gr´ fico do deslocamento, em X (metros), em funcao do tempo em segundos. O robˆ se o movimenta com velocidade constante.
  • 44. 41 5 TEWNTA ´ O software Tewnta e um simulador open source, sob a licenca GNU, com interface gr´ fica ¸ a ¸˜ (figura 40), para a competiccao de Futebol de Robˆ s da categoria SSL, desenvolvido pelo aluno o ¸˜ Gabriel Detoni da UFRGS, utilizando a linguagem de programacao Java. Sua principal fina- ´ ¸˜ lidade e prever situacoes reais de jogo. Desta maneira, reduz o tempo no desenvolvimento de estrat´ gias, por permitir que diferentes t´ ticas de jogo sejam testadas concorrentemente, auxili- e a ¸˜ ando na reducao do desgaste de hardware ocasionado pelos testes com os robˆ s. o Figura 40: Interface gr´ fica do simulador Tewnta. a Segundo a monografia do semestre 2010.2 ˆ (APERFEICOAMENTO DO SIMULADOR DE ROBOS TEWNTA, 2011) ”O Tewnta trabalha em duas camadas, a primeira atua como Servidor e e respons´ vel pela ´ a simulacao f´sica e interpretacao das regras do Futebol de Robˆ s. Uma segunda camada atua ¸˜ ı ¸ o como Cliente e nela est˜ o denidas as acoes que devem ser tomadas pelos robˆ s. Para cada um a ¸˜ o
  • 45. 42 dos times h´ uma aplicacao cliente sendo executada. Essas duas camadas s˜ o executadas em a ¸˜ a aplicacooes diferentes que se comunicam atrav´ s de protocolo IP (Internet Protocol).” ¸˜ e ¸˜ Segue diagrama representativo para a comunicacao e funcionamento do programa figura 41 e figura 42 Figura 41: Diagrama de ¸˜ comunicacao (APERFEICOA- MENTO DO SIMULADOR DE ROBOSˆ TEWNTA, 2011). ˆ Figura 42: Diagrama de fluxo (APERFEICOAMENTO DO SIMULADOR DE ROBOS TEWNTA, 2011).
  • 46. 43 5.1 ˜ ´ VISAO GERAL DO CODIGO O c´ digo original est´ dividido em nove pacotes o a ˆ (APERFEICOAMENTO DO SIMULADOR DE ROBOS TEWNTA, 2011)1 : br.ufrgs.f180.math br.ufrgs.f180.api br.ufrgs.f180.api.model br.ufrgs.f180.elements br.ufrgs.f180.guibr.ufrgs.f180.resources br.ufrgs.f180.server br.ufrgs.f180.teamcom.cloudgarden.resource ¸˜ As principais alteracoes realizadas por esta equipe foram criadas, via o pacote br.utfpr.f180.IndependentR sendo que o c´ digo original modificado, em sua maior parte, foi alterado apenas para que se o ` ¸˜ adaptasse as novas classes, sem adicao de funcionalidades novas. 5.2 ¸˜ ALTERACOERS IMPLEMENTADAS ¸˜ ¸˜ Visava-se por meio das modificacoes implementadas no c´ digo, a real representacao de o cada um dos quatro robˆ s, em funcionamento, que comp˜ em a equipe de Futebol de Robˆ s da o o o ¸˜ UTFPR. Para tanto, foram-se inseridas as seguintes modificacoes no c´ digo: o 5.2.1 ¸˜ Criacao de novas propriedades no arquivo Properties ¸˜ ¸˜ ` ¸˜ Ap´ s a obtencao das informacoes referentes as aceleracoes e velocidades, angular e linear, o ¸˜ ¸˜ para cada robˆ com a utilizacao do software Tracker (detalhes na secao 4), era necess´ rio inserir o a esses valores no c´ digo do Tewnta. O arquivo Properties cont´ m as propriedades referentes ao o e diversos elementos que comp˜ em o jogo, incluindo o campo, a bola e os robˆ s. No arquivo o o ı ¸˜ foram inclu´dos os valores das aceleracoes e velocidades para cada robˆ (figura 43). o • Pacote – com.cloudgarden.resource 1 Para ¸˜ uma descricao completa dos Pacotes e Classes presentes no Tewnta, acesse http://dl.dropbox.com/u/12362738/monografia final.pdf
  • 47. 44 Figura 43: Propeties. • Arquivo modificado – game.properties ¸˜ DESCRICAO As propriedades targetVelocityX e targetVelocityY representam as velocidades do robˆ em o seu movimento linear, assim como linearAccelerationX e linearAccelerationY representam as ¸˜ aceleracoes, respectivamente, nos eixos x e y. A propriedade rotationAcceleration representa a ¸˜ aceleracao angular do robˆ , e rotationVelocity sua velocidade angular. o
  • 48. 45 5.2.2 ¸˜ Criacao da classe IndependentRobot Classe para representar qualquer robˆ que tenha seus dados no arquivo game.properties o (figura 44 e 45). Figura 44: Classe IndependentRobot.
  • 49. 46 Figura 45: Classe IndependentRobot. ¸˜ DESCRICAO O DA CLASSE IndependentRobot o ı o ¸˜ Cada robˆ precisa ter caracter´sticas pr´ prias para as aceleracoes linear e angular, para que esses valores correspondam com o comportamento f´sico real dos robˆ s, os m´ todos: getRo- ı o e tationAcceleration() e getAcceleration() foram sobrecritos para que estes retornassem o valor contido no arquivo game.properties.
  • 50. 47 O m´ todo getAcceleration() retorna a quem o chamou uma instˆ ncia da classe Vector (pa- e a cote br.ufrgs.f180.math.Vector), que representa um vetor, contendo componentes no eixo das abscissas e no eixo das ordenadas. O m´ todo getRotationAcceleration() retorna um double, e sendo ent˜ o necess´ rio que este simplesmente retorne o valor contido no arquivo game.properties a a ¸˜ para a aceleracao angular do robˆ em quest˜ o. o a ´ A velocidade e representada por outra instˆ ncia da classe Vector, protected Vector targetVe- a locity, que est´ presente na classe Robot, tendo sido alterado o tipo de encapsulamento deste, de a private para protected, permitindo assim, que classes derivadas tenham acesso a esta vari´ vel. a Al´ m de targetVelocity, protected static final double ROBOT MAX VELOCITY e protected e static final double ROBOT MAX FORCE tiveram seus modificadores de acesso alterados de private para protected com a mesma finalidade (figura 46). Em raz˜ o da estruturac˜ o do c´ digo, a a o Figura 46: Encapsulamento Alterado. teve-se que ser criada duas vari´ veis booleanas para especificar se o robˆ est´ em um movimento a o a linear ou angular, protected boolean isLinearMovement e protected boolean isRotationalMove- ment, respectivamente, ou em ambos. Aos m´ todos private void linearMovement (double ti- e ¸˜ meElapsed) e private void rotationalMovement (double timeElapsed), compete a atualizacao do movimento do robˆ . O m´ todo public void calculatePosition(double time-Elapsed), da classe o e Robot, foi sobrescrito para que considerasse apenas movimentos v´ lidos, evitando-se que ao a se dar o comando de andar para o robˆ , este tamb´ m rotacione indevidamente, atualizando em o e ¸˜ seguida a posicao do robˆ no campo. o 5.3 ¸˜ ˆ ATUALIZACAO DO MOVIMENTO DO ROBO ¸˜ ¸˜ Para a atualizacao da posicao para os robˆ s da UTFPR, foi necess´ rio alterar o c´ digo para o a o que este respondesse corretamente aos comandos de movimentar-se linearmente ou rotacio- ` ¸˜ ¸˜ nar, pois devido a implementacao original, a representacao do movimento tornava-se imprecisa quando este era uma instˆ ncia de uma das classes IndependentRobot, fazendo com que o robˆ a o rotacionasse quando este deveria apenas mover-se linearmente, ou vice-versa.