Robot beta02 – Fluxo de decisão

Não sei se será totalmente perceptível na imagem mas deixo aqui o diagrama de fluxo da lógica do robot. Penso que seja mais fácil de seguir que o diagrama de estados apresentado no robot beta01.

O fluxograma é simples de seguir mas aqui fica a explicação. A primeira coisa que é feita é validar o estado dos sensores no parachoques. Se o sinal lógico estiver a “zero” (estou a usar as resistências pullup internas do Arduino, lógica negativa), dependendo se é o interruptor direito ou esquerdo, o robot recua e roda para a esquerda ou direita.

Em seguida, no caso de o sensor de distância indicar um valor superior a 170, o robot irá parar, o servo irá virar o sensor para a direita e depois para a esquerda para se obter leituras de distância nos extremos do servo. O valor mais baixo devolvido pelo sensor IR irá ditar se o robot vai virar à esquerda ou à direita antes de continuar a marcha.

Se acontecer a leitura à direita, ou a leitura à esquerda foram superiores ao valor definido como estando demasiado próximo de um obstáculo, o robot irá recuar e virar 180º. Em qualquer outro caso, o robot segue a marcha em frente até encontrar um obstáculo detectado pelos sensores no parachoques ou pelo sensor de distância.

Deixe uma Resposta

Preencha os seus detalhes abaixo ou clique num ícone para iniciar sessão:

Logótipo da WordPress.com

Está a comentar usando a sua conta WordPress.com Terminar Sessão / Alterar )

Imagem do Twitter

Está a comentar usando a sua conta Twitter Terminar Sessão / Alterar )

Facebook photo

Está a comentar usando a sua conta Facebook Terminar Sessão / Alterar )

Google+ photo

Está a comentar usando a sua conta Google+ Terminar Sessão / Alterar )

Connecting to %s


%d bloggers like this: