Projeto

Geral

Perfil

Arquitetura de Software » Histórico » Versão 16

Onias Castelo Branco, 01/06/2017 22:49 h

1 14 Luciano Barreira
# Arquitetura de Software
2 1 Luciano Barreira
3 2 Luciano Barreira
O Software é basicamente subdividido em cinco estágios, conforme fluxo de informação: Leitura, Pré-Processamento, Tomada de Decisão (Inteligência Artificial), Controle e Transmissão.
4
Os módulos que compõem estes estágios estão descritos a seguir:
5 13 Luciano Barreira
1. Leitura : SSL-Vision e Ref Box
6
2. Pré-Processamento: Game State e Judge State
7
3. Tomada de Decisão: Role Set e Tactics
8
4. Controle : Obstacle Avoidance e Path Planning
9
5. Transmissão : Transmission
10 1 Luciano Barreira
11 13 Luciano Barreira
---
12 1 Luciano Barreira
13 13 Luciano Barreira
## Leitura
14
15 1 Luciano Barreira
Os módulos SSL-Vision e Ref Box são responsáveis por receber os pacotes, respectivamente, do SSLVision e do RefBox, softwares padronizados da liga. As informações coletadas são então enviadas para os módulos Game State e Judge State, responsáveis por processar estas informações.
16 3 Luciano Barreira
17 16 Onias Castelo Branco
Há a opção também de se rodar um log, seja de partida ou um treinamento. Mais informações de como a leitura do log funciona aqui.[[Log]]
18
19 13 Luciano Barreira
---
20 1 Luciano Barreira
21 13 Luciano Barreira
## Pré-Processamento
22
23
* Game State : Neste módulo é estimado um estado de jogo confiável, ou seja, é neste módulo em que ocorrem filtragens, com objetivo de mitigar erros de observação das câmeras. O principal algoritmo utilizado para filtragem é um [Filtro de Kalman](http://robotsforroboticists.com/kalman-filtering/) . É possível escolher entre métodos de filtragem na interface gráfica (GUI) principal e observar as diferenças em tempo real entre os métodos.
24 4 Luciano Barreira
* Ref Box : Com base em comandos atuais e anteriores, é possível obter uma relação entre os comandos enviados pelo Juiz e estados da partida, como Meio de Campo, Tiro Direto e Pênalti. Neste módulo, são tratados os modos do Juiz a fim de gerar informações mais "amigáveis" para o desenvolvimento de algoritmos de tomada de decisão.
25 1 Luciano Barreira
26 13 Luciano Barreira
## Inteligência Artificial
27 1 Luciano Barreira
28 13 Luciano Barreira
---
29 5 Luciano Barreira
30 13 Luciano Barreira
### [[Decisão de Personalidades (Role Set)]]
31
32 1 Luciano Barreira
Neste módulo é definido o papel de cada robô consoante estado de jogo.
33 5 Luciano Barreira
34 15 Luciano Barreira
### [[Personalidades]]
35 1 Luciano Barreira
36 8 Luciano Barreira
Neste módulo é definido o comportamento de cada personalidade de acordo com o estado do jogo.
37
38 13 Luciano Barreira
---
39 6 Luciano Barreira
40 13 Luciano Barreira
## Controle
41
42 9 Luciano Barreira
Responsável pelo controle do robô em campo. Neste módulo é feito o cálculo de trajetória dos robôs, de modo a atingir o objetivo de maneira ótima e evitar colisão com outros robôs.
43
44 13 Luciano Barreira
---
45
46
## Transmissão
47 12 Luciano Barreira
48
Responsável pelo envio de informação para o robô ou para o simulador.