Universidade Federal do Rio Grande do Norte
Departamento de Engenharia de
Computação e Automação
Visão Robótica
Cursos: Pós-graduação em Engenharia
Mecatrônica, em Engenharia Elétrica e de Computação e em Sistemas e Computação
Disciplina: Visão Robótica
Informação Administrativa
Local e data-hora: Ter-Qui, 08:55 - 10:35 Sala DCA-02, DCA
Instrutor:
Luiz M. G. Goncalves
Recursos Online
A página Web da disciplina está
em:
http://www.dca.ufrn.br/~lmarcos/courses/robotica/index.html
Esta página é a melhor fonte para voce obter
informação a respeito da disciplina, incluindo trabalhos
práticos, notas de aula e detalhes administrativos. Se houver
material disponível, recomendo fazer download e usá-lo em
sala, melhorando-o. Muito material estará em
Inglês. É suposto que voce já tenham tido
inglês técnico durante os cursos de graduação.
Para questões urgentes, procurem-me na sala acima ou use email ou
telefone:-).
Objetivos
- O objetivo deste curso é abordar os princípios
fundamentais da robótica eprceptual, incluindo vis;ão. A
robótica tem tido um papel cada vez mais relevante para o homem,
na medida em que ela passa a colaborar em diversas tarefas essenciais,
em particular no setor produtivo. Trata-se de uma área de
pesquisa que é inerentemente multidisciplinar, e onde os
conhecimentos da computação além de fundamentais,
são aplicados extensivamente, ou seja, esta disciplina envolve
implementações de algoritmos de percepção em robôs..
- Não menos importante, o segundo objetivo do curso
é prover ao aluno conceitos básicos de projeto completo de
um PRODUTO que está em contato com o mundo real. Isso
implica em uma melhor compreensão da distância que existe
entre abstração e a implementação
prática. Nesse sentido, durante o curso, os alunos estarão
projetando e implementando robôs móveis para realizarem
tarefas em um ambiente semi-estruturado, porém dinâmico.
Esses robôs serão desenvolvidos em grupos de 3 alunos. O
material do curso será coberto por meio de aulas expositivas e
de laboratório.
Pré-requisitos
- Conhecimentos prévios sobre %Aacute;lgebra Linear, Cálculo Vetorial e
Física Básica (especialmente Mecânica
Clássica) são desejados. A linguagem de programação a ser
utlizada no curso será C (ou C++) e também uma liguagem
(visual) provida pelo fabricante dos produtos.
Livros Texto
- Fred G. Martin. Robotic Explorations: A
Hands-on Introduction to Engineering. Prentice Hall CO. 2001.
- Craig, J.J., Introduction to Robotics -
Mechanics and Control - 2nd. Ed., Addison-Wesley,Reading, MA, 1989, ISBN
0-201-09528-9.
- Jones, J. and Flynn, A.M., Mobile Robots -
Inspiration to Implementation -A. K. Peters, Wellesley, MA, 1993, ISBN
1-56881-011-3.
- Computer Vision. Ballard e Brown. Wedson Wesley.
Avaliação do Aprendizado
- A avaliação do aprendizado se dará
através de trabalhos
práticos, provas e um projeto final. A tabela a seguir é
uma primeira aproximação da distribuição de
valores para cada etapa como cada aluno será avaliado de valores
se encontra na tabela a seguir.
- Trabalhos práticos (robô): total de 50%
- Robôs: 30% (hardware + software)
- Página + seminários + caderno : 20%
- Parte teórica: total de 50%
- Provas: 50% (25 + 25)
- Assume-se que o robô deve participar funcionalmente da
competição final.
- Datas importantes:
- primeiro trabalho prático: 30 de agosto
- primeira prova: 20 de setembro
- segundo trabalho prático: 27 de setembro
- terceiro trabalho prático: 25 de outubro
- segunda prova: 22 de novembro
- quarto trabalho prático: 29 de novembro
- Competição final: 01 de dezembro
Trabalhos Práticos
- A finalidade dos trabalhos práticos é se construir
o conhecimento referente a cada um dos aspectos de um projeto maior, que
será o desenvolvimento de um robô móvel capaz de
executar com sucesso tarefas previamente especificadas. Cada detalhe,
idéia, desde a concepção até a
implementação deverá constar no caderno de
laboratório (veja a seguir). É indispensável que o
projeto seja acompanhado do planejamento dos testes. Testes
deverão ser realizados de forma exaustiva para se garantir que o
projeto está correto. Dessa maneira, ao se implementar as
soluções planejadas, os testes correspondentes
(previamente planejados) serão aplicados para
verificação. Implemente e teste pequenas porçoes do
projeto maior. Lembre-se que embora tedioso, esse processo consistente
e sistemático é a chave de uma
implementação bem sucedida. Esses ``pequenos detalhes''
é que fazem a diferença!
- Os trabalhos práticos foram projetados de tal maneira a
preparar para a competição final, que consistirá da
integração dos diversos subsistemas de hardware
(estrutura mecânica, sensores, atuadores) e software (controle do
robô).
- Os trabalhos práticos serão realizados em grupo e
deverão ser apresentados conforme instruções
constantes na página do curso. Todos os membros do grupo
deverão estar presentes na apresentação de cada
trabalho prático. A participação individual de cada
membro será avaliada.
Caderno de Laboratório
- Esse será o seu companheiro de todas as horas. Cada aluno
deverá ter o seu próprio caderno. Recomenda-se fortemente
que o caderno seja pequeno, tipo brochura (não pode ser espiral),
de capa dura e com cerca de 80 páginas. Nele serão
anotadas idéias de mecanismos, estratégias, algoritmos,
etc. Deve ser bem cuidado e de fácil leitura (se não
entendermos o que está escrito, não tem como avaliar),
mas pode (e deve) conter rascunhos, fuguras desenhadas a mao, etc.
Figuras, fotos, gráficos e tabelas obtidos de
calibração de sensores, podem ser colados diretamente nas
págians do caderno. Farei verificações
aleatórias durante o decorrer do curso para verificar o caderno.
Seminário
- Os seminários serão preparados e apresentados por
cada grupo antes da apresentação de cada tarefa,
discorrendo sobre cada projeto, dificuldades, resultados esperados,
resultados alcançados, etc. A avaliação será
feita pelo conjunto apresentado. Sugere-se suar PowerPoinmt, cujo
arquivo será disponibilizado na página do grupo (ver
abaixo). Nos seminários, cada grupo fará uma
apresentação do seu projeto (incluindo o robô), que
deverá conter:
- Descrição do hardware, detalhando acionamento,
transmissão, etc., justificando as opções de
projeto;
- Descrição dos sensores - justificando as
opções de projeto;
- Descrição do software de controle, justificando as
opções de projeto;
- Dificuldades encontradas.
Competição
- A competição será divulgada em data
estabelecida posteriormente (a princípio em dezembro). O projeto
consistirá na construção de um robô
móvel autônomo com capacidade de percepço (visão).
estrutura mecânica dos robôs
será implementada, possivelmente, com componentes LEGO, bem como a parte
eletrônica. Os robôs serão desenvolvidos em grupos de,
no máximo, 3 alunos.
Página WWW
- A documentação, que faz parte integrante do projeto
e também será avaliada, estará contida na Home Page
que cada grupo irá manter ao longo do curso. As atividades de
cada semana, comentários, links interessantes, e outras
informações úteis deverão estar
disponíveis a cada segunda-feira pela manhã. Esta
página deverá ser disponibilizada em algum lugar publico
(preferencialmente no DCA).
- Cada grupo deverá ter um nome, pelo qual o seu robô
também será conhecido. Toda a evolução do
seu projeto deverá ser documentada com fotos digitais a serem
incorporadas na página do grupo. Essas imagens deverão
mostrar detalhes construtivos em ``close-up''. É interessante que
a página contenha uma foto dos membros do grupo. Haverá
um link na página do curso para página de cada grupo.
Assim, preciso apenas do endereço desta página para
endereçar cada grupo. Farei verificações
aleatórias durante o decorrer do curso para verificar a
página.
Política com relação a cola
A cola não será tolerada, tanto em programas quanto na
parte teórica (trabalhos escritos e provas). Se alguem for pego
colando, será enquadrado no regulamento da UNICAMP (lembro que
este regulamento prevê no mínimo Zero na disciplina, ou
seja, reprovação, e, dependendo da gravidade, o aluno
poderá ser convidado a deixar a UNICAMP).
O que é considerado cola?
- Copiar o código de alguem para usar em seu programa.
- Copiar o trabalho de alguem nas tarefas escritas.
- Olhar/copiar da prova de outro.
- Deixar outro aluno olhar seu código ou deixar o
código livre num local público.
O que não é considerado cola?
- Discutir algoritmos ou idéias com qualquer um para
implementar um programa ou para os trabalhos de casa.
- Trocar código com seus colegas de grupo (em caso de
trabalhos cooperativos).
- Perguntar ao instrutor sobre qualquer coisa.
Se voce encontrar algo que não esteja claro, por favor, me
consulte para esclarecimentos.
Luiz Marcos
Last
modified: Sunday, 05 Aug 2001