====== Prévia da Competição ====== ===== Introdução ===== O último trabalho prático consiste em criar um robô autônomo utilizando peças Lego para participar da competição entre os robôs, o Robô Vírus. A apresentação para a prévia consiste nas habilidades de: ser possível ser calibrado em 60 segundos, identificar a luz de partida, ter capacidade de se orientar no campo autonomamente, coletar um bloco que se encontra sobre a linha, reconhecer a cor do bloco, carregar o bloco até a base, subir e descer rampa e por fim, desligar todos os atuadores após 60 segundos de acendida a luz de partida. ===== Objetivos ===== O objetivo deste último trabalho é reunir todo o conhecimento e experiência adquiridos ao longo do curso e com os outros trabalhos já desenvolvidos para construir um robô que tenha a capacidade de participar da competição final. ===== Desenvolvimento ===== Inicialmente, optamos por manter a estrutura básica do robô que tínhamos até então do trabalho prático anterior. Fizemos alterações de acordo com as decisões para adptarmos o robô aos objetivos da competição. A primeira decisão tomada foi a de que o robô teria dois braços nas extremidades para servir como um receptáculo para os blocos. Os braços se estendem respeitando o limite máximo de comprimento que o robô pode ter que é de 30 cm. Nosso algoritmo de orientação se baseou em encontrar o melhor valor de luz polarizada (calibrado) e se chocar contra a parede. O choque, lido pelos sensores de toque garantiria a posição em frente a luz. Faz-se uma curva, e anda-se reto até que a parede é encontrada através do choque com a mesma. Outra curva é feita e a orientação está completa. A partir de então o robô procura por blocos, ao encontrá-los reconhece sua cor e retorna sua base onde ao encontrá-la, por mais um choque, para até esperar os 60 segundos. Evidentemente que esse algoritmo foi desenvolvido apenas para a prévia, haverão serveras modificações para a competição, mas as diretivas básicas foram mostradas e certificadas, uma vez que essas são básicas para a atuação na competição. Dos sensores no robô: * **Um sensor para reconhecimento de cores:** 4 leds (vermelho, verde, amarelo e azul) e 1 sensor LDR (Light Dependent Resistor); * ** Um sensor para identificar luz de partida:** 1 sensor LDR (Light Dependent Resistor); * **Um sensor para identificação de luz polarizada:** 2 sensores LDR (Light Dependent Resistor) com 2 filtros de luz polarizada para ajustados para cada tipo de luz; * **Um sensor para seguir parede:** 1 sensor óptico de proximidade; * **Um sensor para detecção de proximidade:** 1 par emissor/ receptor infravermelho; * **Dois sensores para detectar toque:** 2 chaves de contato. Para o reconhecimento de cores, usou-se a mesma estrutura montada no trabalho anterior. Para o sensor de luz polarizada mudamos o circuito implementado no trabalho anterior, fizemos um sensor diferencial, que gasta apenas uma porta analógica somente, tal que quando apontado para uma luz polarizada, retornaria um valor próximo de 0 e quando apontado para a luz polarizada no sentido oposto retornaria um valor próximo de 255. O algoritmo para reconhecimento do melhor valor para luz se baseia no seguinte: sabendo que o robô começa defasado de múltiplos de 90° sempre no campo, então, calibra-se a medida lida do sensor quando o robô está de frente para a luz polarizada e quando a competição começa o robô fica girando 90° até que o valor lido do sensor seja igual, a menos de um erro permitido, ao valor calibrado previamente. Os dois sensores de toque são utilizados para detectar colisão com as paredes do campo, para saber quando o robô deve fazer o giro de 90°. A subida da rampa, exigiu contra-pesos na estrutura uma vez que durante a subida, o desequilíbrio do peso do robô fazia-o cair. Outro problema que tivemos foi em relação ao grande espaço entre as duas garras, pois quando o bloco entrava entre as garras ele não ficava alinhado com o sensor de detecção de luz impossibilitando a identificação da cor do bloco. Uma alternativa que adotamos para tal, foi o uso de um barbante que direcionasse o bloco para a frente do sensor de identificação de cor. Medida até então provisória. ===== Fotos ===== {{:cursos:introrobotica:2009-2:grupo5:previa_1.jpg|}} {{:cursos:introrobotica:2009-2:grupo5:previa_2.jpg|}} {{:cursos:introrobotica:2009-2:grupo5:previa_4.jpg|}} {{:cursos:introrobotica:2009-2:grupo5:previa_3.jpg|}} ===== Código ===== {{:cursos:introrobotica:2009-2:grupo5:codigo_previa.tar.gz|}} ===== Documentação ===== Relatório: {{:cursos:introrobotica:2009-2:grupo5:relatorio_previa.pdf|}}