|
|
Linha 4: |
Linha 4: |
| ---- | | ---- |
| | | |
− | =Cronograma de Atividades Pré implementação= | + | =Cronograma de Atividades Pré= |
| {| class="wikitable" | | {| class="wikitable" |
| ! style="text-align: center;" | Atividades | | ! style="text-align: center;" | Atividades |
Edição das 00h56min de 7 de maio de 2018
Equipe
Luísa Machado
Marina Souza
Natália Miranda
Cronograma de Atividades Pré
Estrutura do EV3
A equipe optou por utilizar um modelo adaptado do Gyro Boy LEGO® MINDSTORMS® Education EV3.
As interfaces de entrada e saída utilizadas no controle do robô seguem a nomenclatura tabela:
Interfaces
|
Input
|
Output
|
1
|
Sensor de Toque
|
A
|
Motor Direita
|
2
|
Sensor Ultrassônico
|
B
|
|
3
|
Sensor de Giro
|
C
|
|
4
|
Sensor de Cor
|
D
|
Motor Esquerda
|
Acesso via WiFI
Para acessar o robô via rede Wi-Fi utilizamos um dispositivo Wi-Fi (TP-Link N500) conectado à porta USB do EV3 e acessamos as configurações de rede na tela do EV3 para obter o endereço IP.
A partir de um computador conectado na mesma rede local que o robô, configuramos o software Moba para gerar uma interface gráfica de programação e permitir o envio de arquivos via SSH ao software do EV3.
O tutorial completo pode acessado neste link.
Execução de programas na linguagem Python
O primeiro código em Python enviado ao EV3 foi um teste no sensor de toque. O objetivo do programa é acionar o led verde do EV3 quando o sensor de toque for pressionado.
Teste de sensores e motor
Teste do Sensor de Ultrassônico
|
|
Estudo do artigo do Borenstein e pesquisas sobre métodos de localização
Review Técnicas de Indoor Positioning
Implementação e Teste de Soluções de Navegação de Robôs Móveis com Base no Sistema NXT/EV3 da LEGO®
Mobile Robot Positioning & Sensors and Techniques
Sumário Executivo
Arquivo:SumarioExecutivo.pdf
Levantamento de Requisitos
Requisitos Funcionais
|
RF01 O robô entra em funcionamento a partir de instruções originadas no sistema de auditoria.
RF02 O robô inicia em uma posição aleatória.
RF03 O robô deve descobrir sua localização no tabuleiro.
RF04 O robô deve encontrar alvos aleatoriamente escolhidos pelo sistema.
RF05 O robô deve informar ao sistema supervisor quando um alvo for encontrado.
RF06 O robô deve funcionar de modo autônomo ou manual.
RF07 O robô em modo autônomo deve ser capaz de tomar decisões quanto ao seu deslocamento evitando chocar-se com outro robô.
RF08 O sistema de auditoria notifica o sistema supervisor sobre o início e o término de uma partida e quando um alvo for alcançado por um adversário.
RF09 O sistema de auditoria deve gerenciar os dados da partida e ser capaz de apresentar esses dados ao público em tempo real.
RF10 O sistema de auditoria deve gerar randomicamente a quantidade de alvos escolhido pelo juiz.
RF11 O sistema de auditoria deve permitir a pausa, reinício ou término de uma partida.
RF12 O sistema de auditoria deve permitir que se escolha o modo de funcionamento manual ou autônomo para o robô.
RF13 O sistema supervisor deve repassar ao robô as informações sobre a partida recebidas do sistema de auditoria.
|
Requisitos Não Funcionais
|
RNF01 O sistema de auditoria deve ser compartilhado entre os robôs.
RNF02 O sistema de auditoria deve conter um banco de dados com as informações sobre os alvos e um placar para consulta dos robôs.
RNF03 O tabuleiro deve ter dimensões de 2 metros por 2 metros.
RNF04 O tabuleiro deve ser formado por 100 blocos com dimensões de 0,2 metros por 0,2 metros.
RNF05 O tabuleiro deve ter 6 cores (vermelho, azul, amarelo, verde, branco e marrom).
RNF06 Ao redor do tabuleiro deve ter um contorno preto de 0,15 metros.
RNF07 Cada robô deve ter uma cor para identificação.
|
Restrições
|
As limitações encontradas pela equipe para o desenvolvimento do projeto envolvem:
- A quantidade de sensores disponíveis para integrar ao robô.
- Atraso no processamento de programas grandes ou travamento da plataforma do EV3.
- Limitação de horas livres semanalmente que a equipe pode se dedicar ao desenvolvimento do projeto.
|
Casos de uso
Atores
|
Casos de Uso do Sistema de Auditoria:
- Juiz
- Sistema Supervisor
- Câmera
Casos de Uso do Sistema Supervisor:
- Jogador (modo manual)
- Sistema do Robô
- Sistema de Auditoria
Casos de Uso do Sistema do Robô:
- Sistema Supervisor
- Sensor Ultrassônico
|
Diagramas de Casos de Uso
|
Casos de Uso do Sistema do Robô
|
Receber Modo de Operação (CSU-SR01)
Sumário: O Sistema Supervisor informa modo de operação.
Ator Primário: Sistema Supervisor.
Fluxo Principal:
- O Sistema Supervisor informa ao sistema qual modo de operação.
- O sistema habilita o modo de operação selecionado, modo autônomo ou modo manual.
Regras de Negócio: RN08.
Jogar Manual (CSU-SR02)
Sumário: O Sistema do Robô joga em modo manual.
Ator Primário: Sistema Supervisor.
Ator Secundário: Sensor Ultrassônico.
Precondições: Receber a operação modo manual do Sistema Supervisor.
Fluxo Principal:
- O Sistema Supervisor habilita o Sistema do Robô para jogar em modo manual.
- Ao detectar algum obstáculo o Sensor Ultrassônico dispara uma exceção no Sistema do Robô executando uma função de desvio de rota.
Jogar Automático (CSU-SR03)
Sumário: O Sistema do Robô joga em modo automático.
Ator Primário: Sistema Supervisor.
Precondições: Receber a operação modo automático do Sistema Supervisor.
Fluxo Principal:
- O Sistema Supervisor informa ao Sistema do Robô o modo de operação automático;
- O Sistema do Robô joga em modo automático.
Detectar Robô (CSU-SR04)
Sumário: O Sensor Ultrassônico detecta a presença de outro robô.
Ator Primário: Sensor Ultrassônico.
Fluxo Principal:
- O Sensor Ultrassônico verifica com frequência a presença de outro robô ao redor do perímetro;
- O sensor pode ser utilizado pelo modo automático ou pelo modo manual;
Relatar Alvo Encontrado (CSU-SR05)
Sumário: O sistema informa o Sistema Supervisor o encontro de alvos.
Ator Primário: Sistema Supervisor.
Precondições: O Sistema Supervisor está identificado pelo sistema, o sistema deve estar em modo automático.
Fluxo Principal:
- O Sistema do Robô localiza um alvo no tabuleiro.
- O sistema informa o Sistema Supervisor sobre os alvos localizados.
Regras de Negócio: RN03.
Receber Localização dos Alvos (CSU-SR06)
Sumário: O Sistema Supervisor informa a localização dos alvos.
Ator Primário: Sistema Supervisor.
Precondições: O Sistema Supervisor está identificado pelo sistema.
Fluxo Principal:
- O Sistema Supervisor informa ao sistema a localização dos alvos.
- O Sistema do Robô usa a informação sobre a localização dos alvos para decidir sobre qual o próximo movimento a ser feito.
|
Casos de Uso do Sistema Supervisor
|
Jogar Manual (CSU-SS01)
Sumário: O Sistema Supervisor foi habilitado para operar manualmente.
Ator Primário: Sistema do Robô.
Atores Secundários: Sistema de Auditoria e Jogador
Fluxo Principal:
- O Sistema Supervisor habilita o Sistema do Robô para jogar em modo manual.
- O Sistema Supervisor disponibilizada ao jogador o acesso a interface de comandos do robô.
- O jogador opera em modo manual, determinando a direção de locomoção do robô.
Gerenciar Jogo Automático (CSU-SS02)
Sumário: O Sistema Supervisor foi habilitado para operar de forma autônoma.
Ator Primário: Sistema de Auditoria.
Ator Secundário: Sistema do Robô.
Precondições: O jogador deve optar pela opção autônoma.
Fluxo Principal:
- O Sistema de Auditoria define o modo autônomo no Sistema Supervisor.
- O modo de operação será autônomo.
Relatar Alvo Encontrado (CSU-SS03)
Sumário: O Sistema Supervisor informa ao Sistema de Auditoria que um alvo foi encontrado.
Ator Primário: Sistema do Robô.
Ator Secundário: Sistema de Auditoria.
Precondições: O Sistema do Robô encontrou um alvo.
Fluxo Principal:
- O Sistema do Robô informa ao Sistema Supervisor que encontrou um alvo.
- O Sistema de Supervisor relata ao Sistema de Auditoria para conferência.
Regras de Negócio: RN03.
Validar Robô (CSU-SS04)
Sumário: Verificar se o Robô está cadastrado no Sistema de Auditoria.
Ator Primário: Robô.
Ator Secundário: Sistema de Auditoria.
Fluxo Principal:
- O Sistema Supervisor consulta o Sistema de Auditoria para verificar se o robô está ou não está cadastrado.
Regras de Negócio: RN07.
|
Casos de Uso do Sistema de Auditoria
|
Configurar Partida (CSU-SA01)
Sumário: Juiz utiliza o Sistema de Auditoria para configurar os dados para a partida.
Ator Primário: Juiz.
Fluxo Principal:
- O Juiz adiciona os dados dos jogadores cadastrados.
- O sistema apresenta frequentemente as posições dos alvos no tabuleiro.
Verificar Histórico (CSU-SA02)
Sumário: O Juiz verifica o histórico das partidas.
Ator Primário: Juiz.
Ator Secundário: Sistema Supervisor.
Fluxo Principal:
- O Juiz solicita ao Sistema de Auditoria o histórico das partidas.
- O Juiz envia o histórico ao Sistema Supervisor.
Fluxo Alternativo:
- Se o sistema não possuir o registro de partidas anteriores, ou seja, se não tiver ocorrido partidas anteriormente, o mesmo informa ao Juiz a não ocorrência de partidas.
Regras de Negócio: RN01.
Cadastrar Robôs (CSU-SA03)
Sumário: O Juiz realiza o cadastro dos jogadores e robôs para a partida.
Ator Primário: Juiz.
Ator Secundário: Sistema Supervisor.
Fluxo Principal:
- Os robôs que participaram da partida, são cadastrados pelo Juiz através do Sistema de Auditoria.
- São realizados dois cadastros por partida.
- O cadastro consiste no nome do robô.
- Os cadastros são enviados para os Sistemas Supervisor de cada jogador.
Fluxo Alternativo:
- Caso o robô já esteja cadastrado, o sistema informará ao Juiz.
Fluxo de Exceção:
- Se o nome do robô já estiver cadastrado na partida, o sistema informará ao Juiz. Este deve escolher outro nome.
Regras de Negócio: RN01, RN07.
Iniciar Partida (CSU-SA04)
Sumário: O Juiz inicia a partida através do Sistema de Auditoria.
Ator Primário: Juiz.
Ator Secundário: Sistema Supervisor.
Precondições: O Juiz está identificado pelo Sistema de Auditoria.
Fluxo Principal:
- O Juiz solicita ao sistema a geração randômica das posições dos alvos.
- As posições dos alvos são enviadas para o Sistema Supervisor de cada jogador.
- A partir das posições enviadas e dos cadastros realizados o Juiz envia ao Sistema de Auditoria a requisição do início da partida.
- O Sistema de Auditoria apresenta ao Juiz o tabuleiro com os alvos posicionados e a contagem do tempo de início da partida.
Regras de Negócio: RN01, RN05.
Pausar Partida (CSU-SA05)
Sumário: O Juiz usa o Sistema de Auditoria para pausar a partida.
Ator Primário: Juiz.
Ator Secundário: Sistema Supervisor.
Fluxo Principal:
- O Sistema de Auditoria apresenta o encontro de todos os alvos para o Juiz, este envia ao Sistema de Auditoria a requisição de término da partida.
- O Juiz, quando necessário, requisita uma pausa na partida ao Sistema de Auditoria.
Regras de Negócio: RN01.
Validar Alvo (CSU-SA06)
Sumário: A Câmera valida o encontro do alvo usando o Sistema de Auditoria.
Ator Primário: Câmera.
Ator Secundário: Juiz.
Fluxo Principal:
- A Câmera visualiza o tabuleiro e os jogadores.
- Ao ocorrer o encontro do jogador com o alvo a Câmera envia uma mensagem ao Sistema de Auditoria validando o encontro do alvo.
|
|
Regras de Negócio
|
Nome
|
Descrição
|
Acesso ao Sistema (RN01) |
O Sistema Supervisor terá acesso constantemente ao Sistema de auditoria para verificar o mapeamento e as posições dos alvos no tabuleiro.
|
Tomada de Decisão (RN02) |
Ao realizar a leitura da cor através do sensor de cor, o robô saberá seu posicionamento atual e por consequência tomará a decisão referente ao posicionamento seguinte.
|
Atualização do Placar (RN03) |
Ao encontrar um alvo o Sistema do Robô enviará uma mensagem ao sistema, para atualização do placar.
|
Delimitação do Tabuleiro (RN04) |
A faixa preta ao redor do tabuleiro indicará as limitações do mesmo.
|
Sorteio de Posições (RN05) |
O Sistema de Auditoria gerará randomicamente as posições dos alvos.
|
Detecta Adversário (RN06) |
Através do sensor ultrassônico o robô detecta outro robô e altera seu caminho.
|
Quantidade de Jogadores (RN07) |
São cadastrados dois jogadores por partida.
|
Modo de Operação (RN08) |
O Sistema Supervisor habilita o modo de operação selecionado, modo autônomo ou modo manual.
|
|
Diagrama de Classe
Diagrama de Sequência
Links Auxiliares