Mudanças entre as edições de "PJI29006-2018-1"
(19 revisões intermediárias por 2 usuários não estão sendo mostradas) | |||
Linha 55: | Linha 55: | ||
*[https://wiki.sj.ifsc.edu.br/index.php/PJI29006-2014-2-Wiki_do_Projeto Projeto de 2014-2] | *[https://wiki.sj.ifsc.edu.br/index.php/PJI29006-2014-2-Wiki_do_Projeto Projeto de 2014-2] | ||
+ | *[http://www.inpharmix.com/jps/PID_Controller_For_Lego_Mindstorms_Robots.html Controle PID motores EV3] | ||
==AULA 2 - Dia 27/02/2018== | ==AULA 2 - Dia 27/02/2018== | ||
Linha 90: | Linha 91: | ||
**Modo autônomo com sistema de localização integrado | **Modo autônomo com sistema de localização integrado | ||
− | ==AULA 3 - Dia 06/ | + | ==AULA 3 - Dia 06/03/2018== |
*Apresentação e Defesa do Projeto | *Apresentação e Defesa do Projeto | ||
Linha 139: | Linha 140: | ||
*API do Motor no EV3 | *API do Motor no EV3 | ||
*Cronograma dos Trabalhos [https://sites.google.com/site/ev3python/learn_ev3_python/using-motors] | *Cronograma dos Trabalhos [https://sites.google.com/site/ev3python/learn_ev3_python/using-motors] | ||
+ | |||
+ | |||
+ | =AULA 9 - Dia 17/04/2018= | ||
+ | |||
+ | *Verificação de etapas | ||
+ | *Demonstração prévia de funcionamento do sistema | ||
+ | |||
+ | =AULA 10 - Dia 24/04/2018= | ||
+ | |||
+ | *Verificação da I1 | ||
+ | *Definição da I2 | ||
+ | |||
+ | =AULA 11 - Dia 8/05/2018= | ||
+ | |||
+ | *Verificação das finalizações da I1; | ||
+ | *Verificação do Andamento da I2: | ||
+ | **Diagramas de Sequência e Classe | ||
+ | |||
+ | |||
+ | =AULA 12 - Dia 15/05/2018= | ||
+ | * Apresentação do Iteração 2 (Implementação SA) | ||
+ | |||
+ | |||
+ | =AULA 13 - Dia 22/05/2018= | ||
+ | |||
+ | * Definição do Tabuleiro de Jogo | ||
+ | **Links Seguidores de Linha | ||
+ | http://englishsourcery.com/KJI2eIobWYg.video | ||
+ | |||
+ | http://www.theroboticist.org/wp-content/uploads/2012/09/FLLkickOffLearning.key.pdf | ||
+ | |||
+ | http://www.bogatech.org/cursos/Curs%20Introduccio%20Lego%20Mindstorms%20NXT/UNIT%209.htm | ||
+ | |||
+ | http://ev3lessons.com/translations/en-us/advanced/LineFollower.pdf | ||
+ | |||
+ | http://www.legoengineering.com/inside-a-two-step-simple-line-follower/ | ||
+ | |||
+ | https://ggclip.com/video/AMBWV_HGYj4/pid-line-follower-for-ev3-the-ultimate-line-follower.html | ||
+ | |||
+ | http://thetechnicgear.com/2014/03/howto-create-line-following-robot-using-mindstorms/ | ||
+ | |||
+ | http://www.inpharmix.com/jps/PID_Controller_For_Lego_Mindstorms_Robots.html | ||
+ | |||
+ | http://www.techbricks.nl/My-NXT-projects/nxtlinefollower.html | ||
+ | |||
+ | https://www.intorobotics.com/line-following-robot-tutorials-how-to-build-programming-code-and-resources/ | ||
+ | |||
+ | * Roteiro para o final da Iteração 3: | ||
+ | ** Teste do caso de uso do CADASTRO de Robô | ||
+ | *** Cadastrar um robô com sucesso | ||
+ | *** Listar os robôs cadastrados | ||
+ | *** Remover um robô da lista | ||
+ | *** Reiniciar o sistema e verificar a persistência da lista de Robôs. | ||
+ | *** Tentar cadastrar um robô com o mesmo nome. | ||
+ | ** Teste do caso de uso do CONFIGURAR partida | ||
+ | *** Visualizar SSs presentes (ativos) no SA | ||
+ | *** Tentar configurar partida com apenas um SS presente (não deve permitir o início da partida) | ||
+ | *** Configurar com sucesso uma partida manual/automático, monstrando na tela dos SSs que eles foram selecionados para a partida. | ||
+ | ** Teste do caso de uso de INICIAR partida | ||
+ | *** Iniciar partida manual/automático com apenas um Robô (SS) presente devido a queda de um SS | ||
+ | *** Iniciar uma partida manual com sucesso mostrando mensagem na tela dos SSs de "início de partida" | ||
+ | *** Iniciar uma partida automática com sucesso mostrando mensagem na tela dos SSs de "início de partida" | ||
+ | ** Teste do caso de uso de PAUSAR partida | ||
+ | *** Pausar/reiniciar partida manual com indicativos nas telas dos SSs | ||
+ | *** Pausar/reiniciar partida automática com indicativos nas telas dos SSs e comportamento do robô adequado | ||
+ | ** Teste do caso de uso de JOGAR MANUAL | ||
+ | *** Realizar uma partida manual com captura e validação pelo árbitro de todas as caças, indicação do vencedor e finalização da partida (botão de voltar para a tela de início do SA). | ||
+ | *** Realizar uma segunda partida manual ou automática após finalização da primeira. | ||
+ | ** Teste do caso de uso de JOGAR AUTOMÁTICO | ||
+ | *** Realizar uma partida automático com captura, sinalização automático da captura e validação pelo árbitro de todas as caças, indicação do vencedor e finalização da partida (botão de voltar para a tela de início do SA). | ||
+ | *** Realizar uma segunda partida manual ou automática após finalização da primeira. | ||
+ | ** Verificar HISTÓRICO de Partidas | ||
+ | *** Verificar o histórico logo após cada partida. | ||
+ | *** Verificar o histórico após reiniciar o SA. | ||
+ | |||
+ | =AULA 14 - Dia 05/06/2018= | ||
+ | |||
+ | ==Perguntas iniciais== | ||
+ | |||
+ | *Onde está a especificação da interface SS/SA caso alguém mais deseje implementar um SS? | ||
+ | *Mostras a relação entre os diagramas de sequência associados a cada caso de uso e as respectivas implementações. | ||
+ | *Onde está o projeto das tabelas do banco de dados? | ||
+ | |||
+ | =AULA 15 - Dia 12/06/2018= | ||
+ | |||
+ | *Entrega do Caso de Uso Jogar Automático | ||
+ | |||
+ | Ausente: Tutui | ||
+ | |||
+ | =AULA 16 - Dia 19/06/2018= | ||
+ | |||
+ | *Entrega do Caso de Uso Jogar Automático | ||
+ | |||
+ | Ausentes: Marina, Luísa | ||
+ | |||
+ | =AULA 17 - Dia 23/06/2018= | ||
+ | |||
+ | *"Extreme Programming" no sábado; | ||
+ | |||
+ | =AULA 18 - Dia 26/06/2018= | ||
+ | |||
+ | |||
+ | =AULA 19 - Dia 3/07/2018= |
Edição atual tal como às 14h33min de 19 de junho de 2018
Dados da Disciplina
Disciplina: Projeto Integrador II (sexta fase da Engenharia de Telecomunicações
Professores: Roberto de Matos e Eraldo Silveira e Silva (apoio do Professor Emerson Mello de STD)
Atendimento Paralelo
A definir
AULAS
AULA 1 - Dia 20/02/2018
- Apresentação do Plano de Ensino/Ementa;
- Discussão do Tema de Trabalho e apresentação das restrições
- Sumário Executivo
- Avaliação
- Resultados Esperados
- Formação de Grupos
TEMA DO TRABALHO
Restrições:
- o projeto deve conter pelo menos um sistema embarcado que se comunica sem fio com um sistema central (desktop/cloud);
- linguagem de programação livre (os professores conhecem C/C++ principalmente);
- o sistema deve ter interação com o mundo real (atuação/sensoreamento);
- uso do Arduino ou EV3 com Linux (http://www.ev3dev.org/)
- usar conceitos de Sistemas Distribuídos/Web Service
Ideias (brainstorming)
- batalha de tanques;
- luta de sumo
- uso da camera IR para posicionamento indoor. Uma equipe poderia trabalhar no sentido de preparar um suporte para a localização baseada no IR.
- Os robôs que temos:
- EV3 Home Edition
- EV3 Education
- Se forem usados, o Linux deverá ser configurado no mesmo.
- uso do genuino com Neural Network e acelerômetro. O Genuino vem com uma rede neural (hardware) que poderia ser usada em um projeto mais avançado.
Sumário Executivo
- Apresentação do Prof.Roberto Matos
- Link para o Modelo a ser usado (baixar o arquivo ZIP)
- Modelo Sumário Executivo
Divisão em Grupo
- Equipes de 2 ou 3;
- A equipe deve eleger um coordenador responsável.
Links Interessantes
AULA 2 - Dia 27/02/2018
- Entrega prévia do sumário executivo
- Ideias de Projeto
- Review Técnicas de Indoor Positioning
- Grupo1-PJI2-2018-1
- Tutui
- Paulo
- Grupo2-PJI2-2018-1
- Natália
- Marina
- Luísa
O que fazer para a próxima aula
- Estudar EV3 e fazer demonstração com o Linux
- Colocar Linux em SD
- Fazer/Colocar programa demonstrando funcionamento básico
- Descrever sensores e atuadores disponíveis
- Se der tempo testar dongle wifi
- Sistema de Localização
- Estudar artigo do Borenstein
- Definir sistema para de localização para a próxima aula
- Definir regras
- tentar fazer regras mais simples possíveis
- Etapas
- Modo Manual
- Modo autônomo com sistema de localização próprio
- Modo autônomo com sistema de localização integrado
AULA 3 - Dia 06/03/2018
- Apresentação e Defesa do Projeto
- Avaliação desta fase;
- Apresentação do modelo de especificação de projeto esperado.
AULA 4 - Dia 13/02/2018
AULA 5 - Dia 20/03/2018
- Lista de Requisitos e Casos de Uso: Discussão por Equipe
ORIENTAÇÔES PARA A CONFECÇÂO DE CASOS DE USO
Em conversa com o Prof.Emerson acertamos alguns pontos sobre os casos de uso:
- Vamos encarar o nosso sistema como 3 (sub)sistemas: o Sistema Robô, o Sistema Supervisório do Robô e o Sistema de Auditoria;
- os casos de uso devem ser confeccionados em separado para cada um destes subsistemas;
- cada equipe faz em separado os 3 subsistemas;
- quando fizer um subsistema os outros dois serão tratados como atores. Por exemplo: do ponto de vista do sistema supervisório o sistema de auditoria e o sistema robô serão atores;
- prever casos de uso: cadastrar robôs, partidas,jogar de forma automática, jogar de forma manual, configurar tabuleiro, auditar pontuação etc; Casos de uso devem usar verbos...
Restrições e lembretes adicionais
- toda a interface com o sistema supervisório e sistema de auditoria deve ser REST;
- a interface com o robô fica a critério de cada equipe: no caso de usar Python, o Emerson sugere o REST. Aviso que podem ter problemas de desempenho...
- o robô não receberá a posição inicial em que está. Esta posição será fornecida pelo Sistema de Auditoria.
- robôs devem ser notificados quando uma caça é capturada e quando o jogo inicia e termina;
- o subsistema robô nunca se comunica direto com o sistema de Auditoria.
AULA 6 - Dia 27/03/2018
- Orientações para a próxima aula:
- Detalhar casos de uso
- Proposta de tabuleiro
AULA 7 - Dia 04/04/2018
- Discussão dos casos de uso. Obs: Colocar o Avaliar Manual;
- Formato tabuleiro
- Etapas,Cronograma e divisão de trabalhos. Definição de coordenador do grupo.
- Uso do Trelo acompanhamento de tarefas
AULA 8 - Dia 10/04/2018
- Rediscussão do caso de uso Jogar Manual
- Diagramas de Sequência associados
- API do Motor no EV3
- Cronograma dos Trabalhos [1]
AULA 9 - Dia 17/04/2018
- Verificação de etapas
- Demonstração prévia de funcionamento do sistema
AULA 10 - Dia 24/04/2018
- Verificação da I1
- Definição da I2
AULA 11 - Dia 8/05/2018
- Verificação das finalizações da I1;
- Verificação do Andamento da I2:
- Diagramas de Sequência e Classe
AULA 12 - Dia 15/05/2018
- Apresentação do Iteração 2 (Implementação SA)
AULA 13 - Dia 22/05/2018
- Definição do Tabuleiro de Jogo
- Links Seguidores de Linha
http://englishsourcery.com/KJI2eIobWYg.video
http://www.theroboticist.org/wp-content/uploads/2012/09/FLLkickOffLearning.key.pdf
http://www.bogatech.org/cursos/Curs%20Introduccio%20Lego%20Mindstorms%20NXT/UNIT%209.htm
http://ev3lessons.com/translations/en-us/advanced/LineFollower.pdf
http://www.legoengineering.com/inside-a-two-step-simple-line-follower/
https://ggclip.com/video/AMBWV_HGYj4/pid-line-follower-for-ev3-the-ultimate-line-follower.html
http://thetechnicgear.com/2014/03/howto-create-line-following-robot-using-mindstorms/
http://www.inpharmix.com/jps/PID_Controller_For_Lego_Mindstorms_Robots.html
http://www.techbricks.nl/My-NXT-projects/nxtlinefollower.html
- Roteiro para o final da Iteração 3:
- Teste do caso de uso do CADASTRO de Robô
- Cadastrar um robô com sucesso
- Listar os robôs cadastrados
- Remover um robô da lista
- Reiniciar o sistema e verificar a persistência da lista de Robôs.
- Tentar cadastrar um robô com o mesmo nome.
- Teste do caso de uso do CONFIGURAR partida
- Visualizar SSs presentes (ativos) no SA
- Tentar configurar partida com apenas um SS presente (não deve permitir o início da partida)
- Configurar com sucesso uma partida manual/automático, monstrando na tela dos SSs que eles foram selecionados para a partida.
- Teste do caso de uso de INICIAR partida
- Iniciar partida manual/automático com apenas um Robô (SS) presente devido a queda de um SS
- Iniciar uma partida manual com sucesso mostrando mensagem na tela dos SSs de "início de partida"
- Iniciar uma partida automática com sucesso mostrando mensagem na tela dos SSs de "início de partida"
- Teste do caso de uso de PAUSAR partida
- Pausar/reiniciar partida manual com indicativos nas telas dos SSs
- Pausar/reiniciar partida automática com indicativos nas telas dos SSs e comportamento do robô adequado
- Teste do caso de uso de JOGAR MANUAL
- Realizar uma partida manual com captura e validação pelo árbitro de todas as caças, indicação do vencedor e finalização da partida (botão de voltar para a tela de início do SA).
- Realizar uma segunda partida manual ou automática após finalização da primeira.
- Teste do caso de uso de JOGAR AUTOMÁTICO
- Realizar uma partida automático com captura, sinalização automático da captura e validação pelo árbitro de todas as caças, indicação do vencedor e finalização da partida (botão de voltar para a tela de início do SA).
- Realizar uma segunda partida manual ou automática após finalização da primeira.
- Verificar HISTÓRICO de Partidas
- Verificar o histórico logo após cada partida.
- Verificar o histórico após reiniciar o SA.
- Teste do caso de uso do CADASTRO de Robô
AULA 14 - Dia 05/06/2018
Perguntas iniciais
- Onde está a especificação da interface SS/SA caso alguém mais deseje implementar um SS?
- Mostras a relação entre os diagramas de sequência associados a cada caso de uso e as respectivas implementações.
- Onde está o projeto das tabelas do banco de dados?
AULA 15 - Dia 12/06/2018
- Entrega do Caso de Uso Jogar Automático
Ausente: Tutui
AULA 16 - Dia 19/06/2018
- Entrega do Caso de Uso Jogar Automático
Ausentes: Marina, Luísa
AULA 17 - Dia 23/06/2018
- "Extreme Programming" no sábado;