Tabela de conteúdos
Trabalho Prático 2
Controle de trajetória e programação multi-tarefas
Data de apresentacao: 29/09/09 01/10/2009
Objetivos
- Avaliação experimental dos erros de atuação
- Desenvolvimento de controle simples para o robô
- Programação de tarefas concorrentes
Material para consulta
- Diversos links na página do curso.
Instruções
- Registre no site suas idéias, metodologias utilizadas na realização dos experimentos.
- O trabalho desenvolvido deve ser mostrado em funcionamento na data marcada para a apresentação e todo grupo deve estar presente e ser capaz de responder perguntas.
- O relatório deve ser entregue para o monitor do curso via email e postado na página do grupo até a data de apresentação. O relatório deve conter as principais decisões tomadas e desafios encontrados, assim como uma pequena explicação do funcionamento da robô. Fotos e videos podem ser de grande ajuda para ilustrar determinados pontos.
Tarefas
- Estrutura e Controle: Desenvolva um robô apenas com peças do kit Lego (incluindo as rodas) e dois motores. Esse robô será controlado apenas pela HandyBoard.
- Menu: Todas as tarefas devem ser acessadas facilmente por meio de um menu, do potenciômetro e dos botões. A usabilidade dessa interface será avaliada.
- Erros de translação e rotação: Para auxiliá-lo nessas tarefas, crie um dispositivo que levante e abaixe uma marcador (pincel atômico, marcador de quadro branco, caneta hidrográfica, etc.) sobre uma cartolina ou papel, no qual o robô trafegará (lembre-se de levar um idêntico para a apresentação). Dessa forma as trajetórias ficarão claramente marcadas e poderão ser medidas e verificadas com maior facilidade e precisão.
- Calibração: para determinar a distância percorrida ou o ângulo de rotação em função do tempo de acionamento dos motores, realize uma “calibração” prévia. Para isso faça, pelo menos, 10 testes para cada valor de potência P. Apresente uma tabela onde para cada tempo t haja, pelo menos, 10 colunas com valores das distâncias (ângulos) percorridas. Plote um gráfico t x d (t-tempo; d-distância percorrida pelo robô ou theta - ângulo de rotação do robô). (P e t devem ser selecionados no menu). O gráfico deve mostrar o valor médio e a barra de erro correspondente de um desvio padrão em torno da média, como mostrado abaixo:
Com as tabelas de calibração, é possível ajustar curvas (polinômios) que possam ser utilizados para se obter distâncias e ângulos quaisquer (interpolação).
Experimentos
- Translação linear - O valor de distância desejado deve ser informado por meio do potenciômetro e o valor correspondente mostrado no display. Para cada um dos 3 valores de distância: 10cm, 20cm e 30cm, meça a distância real e plote em um gráfico como na etapa de calibração. Estime o erro médio e o desvio padrão de suas medidas.
- Rotação - O valor de ângulo desejado deve ser informado por meio do potenciômetro e o valor correspondente mostrado no display. Para cada um dos 3 valores de ângulo: 30 graus, 60 graus e 90 graus, meça o ângulo real com um transferidor e plote em um gráfico como na etapa de calibração. Estime o erro médio e o desvio padrão de suas medidas. Dica: para medir o ângulo, monte uma haste próxima ao nível do piso.
- Leds: Escreva um programa que faça um grupo de 4 leds funcionar em seqüência. Utilize os botões start e stop para inicializar e parar a seqüência dos leds. A cada 'start' o robô deve executar uma seqüência diferente. Dica: Utilize as Digital Outputs da Handyboard através do SPI para acionar os Leds.
- Multitarefa: Utilize a característica multitarefa do IC para ligar os leds enquanto o robô se move (trajetória livre) . O robô e os leds devem ficar em execução durante exatos 30 segundos, interrompendo ambas tarefas após esse tempo.
- Tarefa a ser mostrada no dia da apresentação: Fazer o robô realizar autonomamente uma trajetória quadrada de 30cm de lado. Logo após, uma trajetória circular de 25 cm de raio, ambos por 3 vezes consecutivas. O robô deve desenhar numa cartolina sobre o chão a trajetória (cada grupo deve trazer sua própria cartolina no dia). As tarefas também serão avaliadas no dia da apresentação.
- OBS : Não devem ser utilizados sensores.