Sie sind auf Seite 1von 4

SCC-120 Introduo Cincia da Computao

Estagirio PAE: Bilz Marques de Arajo


Prof. Ricardo J . G. B. Campello

Descrio do Projeto
Data mxima para entrega: 15/06/2011
(Em dupla)

A navegao autnoma de robs mveis um problema bastante estudado na robtica.
Conceitualmente, o ato de navegar consiste em guiar um rob em um espao de trabalho
(ambiente), durante um determinado intervalo de tempo, atravs de um caminho que leve
o rob de uma posio e orientao iniciais para uma posio e orientao finais. Uma
das tarefas principais nesse problema o planejamento da trajetria. Essa tarefa
realizada por um sistema, denominado sistema de navegao, que considera as restries
de locomoo do rob, bem como obstculos no espao de trabalho, gerando como sada
um conjunto de instrues (comandos) executveis pelo rob. Cada instruo est
associada a um trecho da trajetria que ser realizada pelo rob em um perodo de tempo.

Objetivo

O objetivo do presente trabalho desenvolver um simulador de trajetrias. Dados como
entrada a posio inicial do rob e um conjunto de instrues geradas por um sistema de
navegao, o simulador dever atualizar a posio e orientao do rob devido a cada
instruo e, ao final, exibir a posio e orientao finais. Considere para isso um rob
mvel sobre duas rodas com giroscpio que, a cada instruo, capaz apenas de girar em
torno do prprio eixo e realizar uma trajetria retilnea com velocidade uniforme em um
dos 8 seguintes sentidos: norte (N), nordeste (NE), leste (E), sudeste (SE), sul (S),
sudoeste (SO), oeste (O) e noroeste (NO). Foras contrrias ao movimento, tais como
atrito, no sero consideradas, a fim de simplificar o problema. Pelo mesmo motivo, o
sentido da trajetria em cada instruo ser representado por 4 nmeros, de acordo com
os seguintes padres:

N E S O
N 1 0 0 0
NE 1 1 0 0
E 0 1 0 0
SE 0 1 1 0
S 0 0 1 0
SO 0 0 1 1
O 0 0 0 1
NO 1 0 0 1

Padres diferentes desses no devem ser considerados, devendo o rob, nesse caso,
manter a sua posio e orientao atual. Alm do sentido, em cada instruo, ser
tambm especificado o tempo de execuo da trajetria retilnea uniforme, em
milissegundos. Por exemplo, a instruo 1 1 0 0 300 indica que o rob deve mover-se
no sentido nordeste durante 0.3 segundos. Dadas as restries de locomoo do rob,
pode-se inferir que, ao receber uma instruo, o rob ir girar em torno do seu prprio
eixo at atingir o sentido especificado e, ento, executar a trajetria retilnea uniforme
durante o perodo de tempo especificado. A figura a seguir ilustra o comportamento do
rob ao receber a instruo 1 1 0 0 300.



Para o desenvolvimento do simulador utilize a linguagem de programao C. O
simulador deve ser capaz de computar um ou mais casos de teste, apresentados segundo o
padro de entrada definido a seguir.

Entrada

A entrada comea com um valor inteiro que indica o nmero de casos de teste a serem
simulados. A primeira linha de cada caso de teste composta por dois nmeros
representando as coordenadas (em metros) da posio inicial do rob no plano y x . A
segunda linha de cada caso de teste apresenta a velocidade do rob em metros por
segundo (m/s). A terceira linha de cada caso de teste apresenta o nmero de instrues do
caso de teste. Pelo menos uma instruo executvel ser apresentada em cada caso de
teste. Cada linha de instruo de cada caso de teste composta por 5 nmeros. Os quatro
primeiros indicam o sentido da trajetria, segundo o padro estabelecido, e o quinto
nmero indica o tempo de execuo em milissegundos.

Sada

Para cada caso de teste, o simulador deve exibir como sada dois nmeros e uma string,
informando, respectivamente, as coordenadas finais, x e y , e a orientao final, do rob.



Exemplo

Considere como exemplo a seguinte entrada com 2 casos de teste e a sada esperada,
conforme o padro especificado:

Entrada Sada

2
0 0
0. 1
3
1 0 0 0 200
1 1 0 0 300
0 1 0 0 100
10 10
- 0. 1
1
1 0 0 1 100

0. 031213 0. 041213 E
10. 007071 9. 992929 NO

Na primeira linha da entrada, o valor 2 indica o nmero de casos de teste. Os valores 0 0
indicam os valores das coordenadas x e y da posio inicial do rob no primeiro caso de
teste, enquanto que o valor 0. 1, na linha seguinte, indica o valor da velocidade do rob
(m/s) no primeiro caso de teste. Na quarta linha, o valor 3 indica o nmero de instrues
que sero apresentadas ao rob no primeiro caso de teste. Cada uma das instrues
apresentada em cada uma das 3 linhas subsequentes. Em seguida, apresentado o
segundo caso de teste, com coordenadas iniciais x =10 e y =10, velocidade igual a - 0. 1
m/s, e uma instruo. Caso existissem mais casos de teste, estes estariam representados
em seguida, de acordo com o padro estabelecido. A sada 0. 031213 0. 041213 E
corresponde s coordenadas e direo finais do primeiro caso de teste, enquanto que
10. 007071 9. 992929 NO corresponde s coordenadas e direo finais do segundo caso
de teste.

Para verificar o funcionamento do simulador, as entradas podem ser apresentadas
atravs do dispositivo de entrada padro, isto o teclado, e as sadas podem ser exibidas
atravs do dispositivo de sada padro, o monitor. O comando de leitura scanf ser
suficiente para a leitura das entradas, e o comando pr i nt f ser suficiente para exibio
das sadas. Entretanto, para a avaliao do funcionamento do simulador, ser utilizado
um mecanismo de teste, no qual sero apresentados vrios casos de teste. Logo,
imprescindvel que o simulador seja capaz de processar o padro de entrada, acima
especificado, risca, e exibir a sada, igualmente, de acordo com o padro especificado
acima. Para verificar se a sua verso do simular est funcionando corretamente de acordo
com os padres estabelecidos, e assim garantir a sua nota, sugerido que voc procure o
estagirio PAE antes da data mxima de entrega, levando consigo a sua implementao,
para que seja aplicado o mecanismo de teste. Caso queira, no entanto, realizar essa
verificao por conta prpria, assumindo a responsabilidade e risco de eventuais erros,
verifique as instrues no arquivo de Instruo de Teste, em anexo.


Avaliao

Como instrumentos de avaliao do projeto, devem ser entregues o cdigo fonte do
simulador de trajetria e um relatrio de no mximo 2 pginas explicando as decises de
projeto. Estes arquivos devem ser entregues pessoalmente ao estagirio PAE em horrio
de atendimento, s quartas-feiras, das 18h30 s 20h30, na sala 1-106 do ICMC-USP, ou
em horrio previamente agendado. Lembre-se que a data mxima para entrega do
trabalho 15/06/2011. Evite transtornos no deixando o trabalho para ltima hora e
realizando a verificao do funcionamento do simulador e entrega final do trabalho antes
da data mxima.

A critrio do professor e do estagirio PAE, outros instrumentos de avaliao podero
ser aplicados, como, por exemplo, a arguio sobre as decises de projeto e/ou sobre o
cdigo do simulador. Durante o desenvolvimento do trabalho, no deixe de discutir as
decises de projeto com o seu companheiro de dupla.

Bom trabalho!

Das könnte Ihnen auch gefallen