Projeto

Geral

Perfil

Arquitetura de Software » Histórico » Revisão 13

Revisão 12 (Luciano Barreira, 04/05/2017 19:42 h) → Revisão 13/56 (Luciano Barreira, 13/05/2017 19:58 h)

# h1. ARQUITERURA 

 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. 
 Os módulos que compõem estes estágios estão descritos a seguir: 
 1. * Leitura : SSL-Vision e Ref Box 
 2. * Pré-Processamento: Game State e Judge State 
 3. * Tomada de Decisão: Role Set e Tactics 
 4. * Controle : Obstacle Avoidance e Path Planning 
 5. * Transmissão : Transmission 

 --- 

 ## h2. Leitura 

 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. 

 --- 

 ## h2. Pré-Processamento 

 * 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 "Filtro de Kalman](http://robotsforroboticists.com/kalman-filtering/) 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. 
 * 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. 

 ## h2. Inteligência Artificial 

 --- 

 ### h3. [[Decisão de Personalidades (Role Set)]] 

 Neste módulo é definido o papel de cada robô consoante estado de jogo. 

 ### h3. [[PERSONALIDADES]] 

 Neste módulo é definido o comportamento de cada personalidade de acordo com o estado do jogo. 

 --- 

 ## h2. Controle 

 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. 

 --- 

 ## h2. Transmissão 

 Responsável pelo envio de informação para o robô ou para o simulador.