Projeto

Geral

Perfil

Atividade #1206

Atualizado por Gabriel Pinheiro Teodoromais de 4 anos

**Introdução** 
 Houve uma atualização dos parâmetros enviados como referee da SSL - a tarefa então serve para abranger também a leitura dos novos dados e adequar às alterações da nova versão. 
 Os pacotes transmitidos sob o protocolo UDP durante a competição são tratados pelo componente *SSLUDPreceiver* no nosso projeto, que extrai o conteúdo desses pacotes e as remete ao decodificador (exibido nas fotos abaixo). 
 O decodificador serializa os dados hexadecimais de acordo com os formatos das variáveis do projeto. 

 **Objetivo** 
 Corrigir alguns dos dados obtidos no componente para adequar ao novo padrão de transmissão 

 **Desenvolvimento** 

 Precisei, primeiramente, de me ambientar melhor ao projeto antes de começar a fazer mudanças efetivas e, após estudar melhor os componentes, pude sintetizar a resolução dessa tarefa da seguinte forma: 

 Basicamente, precisamos editar os decodificadores a partir do componente *Decode SSL Wrapper Package* - uma parte da informação é particionada no *SSL detection frame*, a outra no *SSL geometry data*. 
 Em cada um destes dois componentes, precisamos adequar os índices da protobuf ao novo padrão usando os componentes de serialização de acordo com os tipos de variáveis presentes (podem ser tipos primitivos ou até structs,    conforme exemplificados na úlitima foto pelas vis com nome "proto"). 
 Na entrada de cada componente, devemos inserir o conteúdo proveniente do *element* e um índice de uma das variaveis do protobof. Como saída, teremos uma partição do valor do conteúdo, que corresponde à variável correspondente no índice da protobuf, e outra partição composta pelos bits restantes, que devem continuar na entrada do próximo componente de serialização. 


 Obs.: 
 * Tarefa associada à branch refereeCorrection 
 * Algumas informações vindas do pacote do juiz não são corretamente decodificadas pelo nosso código, como cartões, por exemplo.  
 * Há algumas redundâncias no processamento dos bits obtidos no element do referee 
 * Dados recebidos são serializados em protobuf (está bem documentado no link: https://developers.google.com/protocol-buffers/docs/encoding) 

 **Objetivo** 
 Aprimorar o processamento dos bits e corrigir alguns dos dados obtidos no componente após a atualização do package do referree 

 **Observações:** 
 * Versão do LabView 2019 
 * Implementado em OSX 
 * Se for preciso criar uma *protobuf message* manualmente, podemos estudar melhor pelo link: https://github.com/smithed/experiments/tree/master/Protocol%20Buffers 

Voltar