====== Trabalho Prático 3: V.I.N.I.C.I.U.S.======
{{:cursos:introrobotica:2009-2:grupo4:yamasora-VINICIUS.png|}}
===== Introdução =====
O TP3 A missão foi desenvolver um robô com o objetivo de nos prepararmos para a prévia/competição batalha final. Ele deveria ser capaz de identificar e seguir uma luz polarizada com visão infra-vermelho, identificar blocos de cores diferentes e ver através de paredes com visão raio-x, seguir uma linha preta marcada no chão, seguir um percurso por uma parede e calibrar os seus motores dinamicamente através de shaft-encoders.
===== Dificuldades =====
Começamos o trabalho a batalha com quatro integrantes gurreiros. Quando estávamos nos aproximando da aprensentação da parte A do primeiro embate, nos deparamos com uma situação crítica: não tínhamos nenhum sensor estávamos com a retaguarda descoberta! A única opção foi não apresentar o trabalho ir para a batalha desarmados.
Sobrevivemos à primeira parte, mas, logo após, tivemos um guerreiro abatido por ferimentos de combate. Restou nos prepararmos para a próxima luta recomeçando tudo do zero. A partir desse ponto, o único problema que tivemos foi com a parte mecânica do robô, que não estava bem projetada, impedindo testes e simulações práticas com os sensores construídos.
Após várias remontagens da parte mecânica, foi possível avançar em alguns aspectos. Mas então nos deparamos com um novo problema: a bateria descarregava muito rápido consumo excessivo de combustível. Tentamos contornar esse problema como possível, mas não o solucionamos.
Apesar de tudo, considerando que tentamos fazer todo o desenvolvimento de três semanas em apenas três dias, devido à necessidade de reformulação do robô e da construção de novos sensores, obtivemos um resultado aceitável.
===== Implementação =====
A implementação final do robô consistiu em uma estrutura alta, com as caixas de engrenagens na vertical e a **Handy Board** posicionada em seu centro, ficando um pouco elevada com relação às rodas.
Uma caixa de luz foi construída para a identificação das cores dos blocos, sendo utilizado um sensor LDR para obter a leitura. Tanto o algoritmo utilizado quanto o esquema de montagem do sensor se mostraram eficientes e robustos, sendo esse o módulo que foi implementado com o maior sucesso.
Para a identificação das luzes polarizadas dois sensores LDRs foram utilizados com filtros de polarização ajustados de forma a obtermos leituras diferentes para as luzes distintas do campo. O controle do robô seguiu um modelo diferencial e se mostrou bastante robusto, dadas as condições de iluminação adequadas.
Para o robô seguir as linhas do campo foram utilizados três sensores de distância que funcionaram perfeitamente ao serem conectados nas portas digitais, infelizmente o tempo não foi suficiente para o desenvolvimento de um bom algoritmo de controle, mas as respostas do robô pela utilização de um algoritmo simples mostrou-se que é possível completar essa tarefa com certa facilidade para as próximas apresentações.
Foram utilizados dois sensores break beam para a construção dos shaft encoders utilizados em ambas as rodas do robô. A biblioteca da **Handy Board** para a leitura básica desses sensores foi carregada com êxito. Infelizmente, um dos sensores não respondeu de forma esperada quanto à leitura, prejudicando o algoritmo desenvolvido.
===== Conclusão =====
Aprendemos na prática que sensores são essenciais para um controle eficiente do robô, mas são suscetíveis a muitos erros. Boa parte da dificuldade do trabalho se localizou na parte do controle e da montagem dos sensores, dado que não possuíamos uma experiência prévia.
No geral, dados os problemas mencionados, o resultado final foi aceitável, já que os módulos que foram concluídos se portaram de forma robusta e eficiente. Para a próxima apresentação iremos nos concentrar nos erros que cometemos no desenvolver deste trabalho.
===== Arquivos =====
{{:cursos:introrobotica:2009-2:grupo4:relatorio.pdf| Relatório}} \\
[[http://homepages.dcc.ufmg.br/~assahaf/arquivo/tp3.ic|Código Fonte]]