Mudanças entre as edições de "Grupo1-PJI2-2018-1"

De MediaWiki do Campus São José
Ir para navegação Ir para pesquisar
Linha 49: Linha 49:
 
* Como definido pelos professores, a partir da orientação para  "tentar fazer regras mais simples possíveis" foi definido pelo grupo que:
 
* Como definido pelos professores, a partir da orientação para  "tentar fazer regras mais simples possíveis" foi definido pelo grupo que:
  
Regras:  
+
*Regras:  
  
 
Objetivo: encontrar no tabuleiro as cores sorteadas na ordem correta e em menos tempo possível.
 
Objetivo: encontrar no tabuleiro as cores sorteadas na ordem correta e em menos tempo possível.
Linha 58: Linha 58:
 
** Amarelo
 
** Amarelo
 
** Verde
 
** Verde
 +
(inicialmente)
  
*Sorteio
+
Estando o robô na posição inicial é dado início ao jogo.  
Estando o robô na posição inicial é dado início ao jogo. O servidor sorteia a ordem das cores para que o robô as procure no tabuleiro.
+
O sistema escolhe aleatoriamente as cores a serem procuradas e as envia para o robô.
A localização de cada uma das cores já é conhecida pelo servidor previamente, assim que o sorteio acontece juntamente com cada cor o robô recebe também a localização dela no tabuleiro
+
Os robôs se movimentam sobre o tabuleiro a fim de encontrar as cores sorteadas.  
(cada robô deve receber uma ordem de cores diferente).
 
  
* Procurando as cores
+
{{Collapse bottom}}
Os robôs se movimentam sobre o tabuleiro de acordo com o sistema de localização escolhido pela equipe em busca da sequencia de cores sorteada.
 
Caso aja colisão entre os dois robôs, o robô responsável pela mesma deve retornar à sua posição inicial para então dar continuidade à procura das cores
 
(não será necessário reencontrar as todas as cores, o robô deverá procurar pelas cores ainda não descobertas) .
 
  
* Tabuleiro e servidor
+
{{Collapse top | Encontro 5 - Trabalhando com o robô - 05/03}}
Durante todo o jogo o tabuleiro será monitorado por uma câmera IR (infravermelho) para que as colisões sejam reportadas aos jogadores.
 
A partir da acusação da câmera feita pelo servidor para os robôs, o robô com menor distância indicada pelo seu próprio sensor infravermelho será o culpado pela colisão e deverá voltar para a posição inicial de partida.
 
  
* Extra
+
==Trabalhando com o robô==
Sendo o tabuleiro monitorado pela câmera IR, é possível que os dados das localizações de cada um dos robôs esteja disponível durante a partida.
 
A partir desta informação cada robô dele fazer o possível para que não esbarre no seu adversário.
 
  
O robô que encontrar todas as cores primeiro é o vencedor!
+
* Durante o encontro desenvolvemos um código base para a apresentação do robô em sala. Nesta rotina usamos como atuadores dois motores e como sensores um ultrassônico, um sensor de cores e um sensor de toque.
 +
** O código desenvolvido faz com que o robô, montado no formado te um cachorro ao ser tocado sente e levante, ao aproximar-se de algo, "lata", identifica as cores: vermelho, amarelo, azul e verde.
 +
** Todo o código encontra-se no projeto "puppy.Ev3" no [https://github.com/paulosell/puppy_ev3 github].
  
— Todas as regras serão iguais para os dois modos de operação
+
{{Collapse bottom}}
* Modo manual
 
* Modo autônomo com sistema de localização
 
  
— A comunicação entre os robôs e o servidor será feita por meio de uma API comum entre os participantes.
+
{{Collapse top | Encontro 6 - Sala de aula - 06/03}}
  
 +
==Sala de aula==
  
* PENDÊNCIA - REFAZER AS REGRAS
+
* Perguntas
  
{{Collapse bottom}}
+
* Qual o tamanho do tablado? Quantos quadrados?
 +
R: 2x2 metros. Provavelmente 20x20 cm. O tablado deve ter ter uma borda extra de aproximadamente 5 cm.
 +
 
 +
* Quantos quadrados?
 +
R: 100 quadrados.
 +
 
 +
* Como as cores vão ser distribuídas?
 +
R: Randomicamente.
 +
 
 +
* Quantos alvos (tesouros)? Serão comuns?
 +
 
 +
* Como as caças serão auditadas? Quem ganhará o tesouro?
 +
 
 +
* Como será o sistema de sinalização ao público?
 +
R: Cada grupo terá que mostrar para os
 +
 
 +
* Como será a central de controle?
 +
R: Fica a critério de cada grupo.
 +
 
 +
* Sistema de localização auxiliar?
 +
R: Fica a critério de cada grupo.
 +
 
 +
* Quantas cores podem ser reconhecidas?
 +
R: A princípio 7.
  
{{Collapse top | Encontro 5 - Trabalhando com o robô - 05/03}}
+
* As cores serão fixadas?
 +
R: Sim. O tabuleiro será impresso já com as cores.
  
==Trabalhando com o robô==
+
* Quem fará o sorteio das posições?
 +
R: Um servidor será responsável.
  
* Durante o encontro desenvolvemos um código base para a apresentação do robô em sala. Nesta rotina usamos como atuadores dois motores e como sensores um ultrassônico, um sensor de cores e um sensor de toque.
+
* Para semana que vem
** O código desenvolvido faz com que o robô, montado no formado te um cachorro ao ser tocado sente e levante, ao aproximar-se de algo, "lata", identifica as cores: vermelho, amarelo, azul e verde.
+
** Responder a todas as perguntas
** Todo o código encontra-se no projeto "puppy.Ev3" no [https://github.com/paulosell/puppy_ev3 github].
+
** Sumário executivo

Edição das 15h23min de 6 de março de 2018

Apresentação inicial

Encontro 1 - Decisão de robô, montagem e instalação do Ev3Dev - 27/02

Decisão de robô, montagem e instalação do Ev3Dev

  • "Montagem:" Após a análise das peças disponíveis no box Lego Mindstorms Ev3 Education 45544, escolhemos o robô a ser montado, sendo o escolhido: Puppy


PuppyEv3.jpeg


  • "Ev3Dev:" Instalação do Ev3Dev, um sistema operacional baseado em Debian que roda no bloco EV3, como num dual boot. A partir da utilização deste SO pode-se programar o robô utilizando linguagem de programação C, Python, por exemplo. A instalação foi feita com base no site do desenvolvedor.
Encontro 2 - Conectividade WiFi e sensores - 01/03

Conectividade WiFi e sensores

  • A partir da página do Ev3Dev estabelecemos com sucesso as conexões via Bluetooh, Wi-Fi (usando um dongle e a rede de dados móveis) utilizando SSH.

- A conexão Wi-Fi através da rede do IFSC não foi possível por ser uma rede baseada em EAP (Protocolo de Autenticação Extensiva).

  • Neste encontro testamos os motores do robô, bem como o auto falante integrado.
Encontro 3 - Conhecendo robô - 02/03

Conhecendo robô

  • Definição da linguagem de programação que será utilizada e estudo da mesma: Python.
  • Foram feitos testes com o sensor de toque, LEDs embutidos na base do robô.
  • Estudo do artigo do Borenstein.
Encontro 4 - Escolha do modelo do sistema de localização e definição das regras - 03/03

Escolha do modelo do sistema de localização e definição das regras

  • Após a leitura e análise das condições atuais do robô (sensores já disponíveis) foi decidido que o modelo a ser utilizado será baseado em:

- Odometria, por proporcionar altas taxas de amostragem, e basear-se no movimento da roda.

- Navegação inercial, por já termos disponível um giroscópio.

- Navegação Landmark, pela possibilidade de usar marcos artificiais e termos disponível um sensor de cores.

  • Como definido pelos professores, a partir da orientação para "tentar fazer regras mais simples possíveis" foi definido pelo grupo que:
  • Regras:

Objetivo: encontrar no tabuleiro as cores sorteadas na ordem correta e em menos tempo possível.

  • Encontrar cores no tabuleiro
    • Azul
    • Vermelho
    • Amarelo
    • Verde

(inicialmente)

Estando o robô na posição inicial é dado início ao jogo. O sistema escolhe aleatoriamente as cores a serem procuradas e as envia para o robô. Os robôs se movimentam sobre o tabuleiro a fim de encontrar as cores sorteadas.

Encontro 5 - Trabalhando com o robô - 05/03

Trabalhando com o robô

  • Durante o encontro desenvolvemos um código base para a apresentação do robô em sala. Nesta rotina usamos como atuadores dois motores e como sensores um ultrassônico, um sensor de cores e um sensor de toque.
    • O código desenvolvido faz com que o robô, montado no formado te um cachorro ao ser tocado sente e levante, ao aproximar-se de algo, "lata", identifica as cores: vermelho, amarelo, azul e verde.
    • Todo o código encontra-se no projeto "puppy.Ev3" no github.
Encontro 6 - Sala de aula - 06/03

Sala de aula

  • Perguntas
  • Qual o tamanho do tablado? Quantos quadrados?

R: 2x2 metros. Provavelmente 20x20 cm. O tablado deve ter ter uma borda extra de aproximadamente 5 cm.

  • Quantos quadrados?

R: 100 quadrados.

  • Como as cores vão ser distribuídas?

R: Randomicamente.

  • Quantos alvos (tesouros)? Serão comuns?
  • Como as caças serão auditadas? Quem ganhará o tesouro?
  • Como será o sistema de sinalização ao público?

R: Cada grupo terá que mostrar para os

  • Como será a central de controle?

R: Fica a critério de cada grupo.

  • Sistema de localização auxiliar?

R: Fica a critério de cada grupo.

  • Quantas cores podem ser reconhecidas?

R: A princípio 7.

  • As cores serão fixadas?

R: Sim. O tabuleiro será impresso já com as cores.

  • Quem fará o sorteio das posições?

R: Um servidor será responsável.

  • Para semana que vem
    • Responder a todas as perguntas
    • Sumário executivo