Mudanças entre as edições de "Grupo2-PJI2-2018-1"
(→Atores) |
|||
Linha 229: | Linha 229: | ||
= Casos de uso = | = Casos de uso = | ||
== Atores == | == Atores == | ||
+ | === Casos de Uso do Sistema de Auditoria: === | ||
+ | # Juiz | ||
+ | # Sistema supervisor do robô | ||
+ | # Câmera | ||
+ | === Casos de Uso do Sistema Supervisor do Robô: === | ||
+ | # Jogador (modo manual) | ||
# Sistema do robô | # Sistema do robô | ||
# Sistema de auditoria | # Sistema de auditoria | ||
− | # Sistema supervisor | + | === Casos de Uso do Sistema do Robô: === |
− | + | # Sistema supervisor do robô | |
− | |||
− | |||
== Diagramas de Casos de Uso == | == Diagramas de Casos de Uso == |
Edição das 21h51min de 30 de março de 2018
Equipe
Luísa Machado
Marina Souza
Natália Miranda
Cronograma de Atividades
Atividades | 26/02 - 03/03 | 03/03 - 10/03 | 10/03- 17/03 | 17/03 - 24/03 | 24/03 - 31/03 | 31/03 - 07/04 | 10/04 - 17/04 | 17/04 - 24/04 | 24/04 - 01/05 - 08/05 |
---|---|---|---|---|---|---|---|---|---|
Estrutura do EV3 | OK | ||||||||
SD Card com sistema operacional embarcado | OK | ||||||||
Acesso via WiFI | OK | ||||||||
Execução de programas na linguagem Python | OK | ||||||||
Teste de sensores e motor | parcial | ||||||||
Estudo do artigo do Borenstein e pesquisas sobre métodos de localização | OK | ||||||||
Definir método para localização | OK | ||||||||
Definir regras do jogo | OK | ||||||||
Entrega do sumário executivo | OK | ||||||||
Casos de uso e requisitos | parcial |
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 Cor | A | Motor Direita |
2 | Sensor de Toque | B | |
3 | Sensor Ultrassônico | C | |
4 | Sensor de Giro | 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 do Sensor de Toque |
---|
Teste de sensores e motor
Teste dos Motores |
---|
Teste do Sensor de Cor |
---|
Teste do Sensor de Giro |
---|
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
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 do robô
- Câmera
Casos de Uso do Sistema Supervisor do Robô:
- Jogador (modo manual)
- Sistema do robô
- Sistema de auditoria
Casos de Uso do Sistema do Robô:
- Sistema supervisor do robô
Diagramas de Casos de Uso
Casos de Uso do Sistema do Robô
Relatar Alvo Encontrado (CSU-SR01)
Sumário: O sistema informa o Sistema Supervisor do Robô o encontro de alvos.
Ator Primário: Sistema Supervisor do Robô.
Precondições: O Sistema Supervisor do Robô está identificado pelo sistema.
Fluxo Principal:
- O Sistema do Robô localiza um alvo no tabuleiro.
- O sistema informa o Sistema Supervisor do Robô sobre os alvos localizados.
Regras de Negócio: RN03.
Receber Modo de Operação (CSU-SR02)
Sumário: O Sistema Supervisor do Robô informa modo de operação.
Ator Primário: Sistema Supervisor do Robô.
Precondições: O Sistema Supervisor do Robô está identificado pelo sistema.
Fluxo Principal:
- O Sistema Supervisor do Robô 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.
Receber Localização dos Alvos (CSU-SR03)
Sumário: O Sistema Supervisor do Robô informa a localização dos alvos.
Ator Primário: Sistema Supervisor do Robô.
Precondições: O Sistema Supervisor do Robô está identificado pelo sistema.
Fluxo Principal:
- O Sistema Supervisor do Robô 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 do Robô
Casos de Uso do Sistema de Auditoria
Regras de Negócio
Nome | Descrição |
---|---|
Acesso ao Sistema (RN01) | O robô terá acesso constantemente ao sistema 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 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 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. |
(RN08) |