Vous êtes sur la page 1sur 6

Clube de Programao e Eletrnica

PROJETO LEGO MINDSTORMS EV3 Est disponvel em https://www.youtube.com/watch?v=lqU8BTAvkOg um vdeo com a


demonstrao dos exerccios propostos neste captulo.

5. Exerccios seguidores de linha

Neste captulo, exploraremos alguns exerccios seguidores de linha com robs EV3.

5.1. Usando um sensor de cor, seguir a linha pela direita

O programa mais simples que se pode fazer usando um sensor de cor modo intensidade de luz refletida - junto ao
cho (como na figura ao lado) e colocar o rob de um dos lados da linha. Neste exerccio, vamos coloc-lo do lado
direito.

Se movermos o rob para fora e para cima da linha, podemos medir a luz refletida no Port View do software do EV3
(canto inferior direito). Quando o rob se encontra fora da linha, a superfcie deve ser branca e a luz refletida encontra-
se perto do valor 100. Esse valor baixa muito medida que pomos o rob sobre a linha preta.

Como decidimos fazer o rob contornar a linha pela direita, quando o valor da intensidade luminosa refletida aumenta,
significa que o rob se est a afastar da linha e deve rodar para a esquerda; caso o valor da intensidade luminosa
refletida diminua, significa que o rob est a colocar-se sobre a linha preta e, por isso, deve rodar para a direita.

26
Lego Ev3 Exerccios introdutrios
Clube de Programao e Eletrnica
Um programa possvel para concretizar a ideia proposta :

Resultados: O movimento revela-se pouco suave; a velocidade do rob tem de ser baixa; a capacidade de realizar ngulos apertados reduzida.

27
Lego Ev3 Exerccios introdutrios
Clube de Programao e Eletrnica

5.2. Usando dois sensores de cor

O uso de dois sensores de cor modo intensidade de luz refletida instalados como se indica na figura ao lado, simplifica
a programao. Os sensores tm de estar instalados de forma a que a linha que o rob deve seguir se encontre no meio
dos dois.

Se a deteo de luz refletida do sensor da direita for superior deteo da luz do sensor da esquerda, o rob deve rodar
para a esquerda; caso a deteo de luz refletida pelo sensor da esquerda seja superior ao valor detetado pelo sensor da
esquerda, o rob deve rodar para a direita.

Um programa possvel para concretizar a ideia proposta :

Resultados: O movimento ainda pouco


suave; a velocidade do rob tem de ser
baixa; a capacidade de realizar ngulos
apertados reduzida. Tem a vantagem,
relativamente ao programa anterior, de
no ter de definir qual o lado da linha que
vai ser contornado.

28
Lego Ev3 Exerccios introdutrios
Clube de Programao e Eletrnica

5.3. Usando dois sensores de cor e suavizando o movimento

O movimento do rob com dois sensores como o descrito em 5.2., pode ser suavizado se for calculada a diferena entre os valores lidos pelos dois sensores. Caso essa
diferena seja muito grande, o rob deve rodar com um ngulo apertado. Caso a diferena seja pequena, o rob deve rodar com um valor de ngulo pequeno; finalmente,
caso a diferena entre as medidas da luz refletida seja nula, o rob deve seguir em frente. O sentido da rotao determinado pelo sinal da operao de subtrao
realizada.

Um programa possvel para concretizar a ideia proposta :

Resultados: O movimento suaviza bastante relativamente aos exerccios anteriores. Tem o inconveniente de , caso perca a linha, de seguir em frente.

29
Lego Ev3 Exerccios introdutrios
Clube de Programao e Eletrnica

5.4. Usando dois sensores de cor, suavizando o movimento e procurando a linha caso a perca

No exerccio 5.3., quando o rob perdia a linha, como a diferena entre as intensidades medidas pelos dois robs era nula, o rob seguia em frente. Neste exerccio, a
diferena entre os valores medidos pelos sensores calculada. Caso esse valor seja superior, em mdulo, a 10, o rob sujeito a instrues iguais s do exerccio anterior.
Caso esse valor seja inferior, significa que o valor lido pelos dois sensores muito prximo. Nesse caso, os valores medidos so somados. Caso a soma seja superior a
180, significa que rob se encontra sobre a superfcie branca (o valor lido pelos sensores elevado) e deve rodar at encontrar de novo a linha; caso a soma seja inferior
a 180, significa que o rob se encontra sobre a linha preta (o valor lido pelos sensores baixo) e por isso deve seguir em frente.

Um programa possvel para concretizar a ideia proposta :

Resultados: O movimento mantm-se suave. Caso o


rob perca a linha, gira sobre si prprio at que a
encontre de novo.

30
Lego Ev3 Exerccios introdutrios
Clube de Programao e Eletrnica

5.5. Usando um sensor de cor, suavizando o movimento

Este exerccio baseia-se na proposta do canal de Youtube Blue Angel: https://www.youtube.com/watch?v=ODAGVeeDagk

Esta proposta, que assume o rob com apenas um sensor de cor modo intensidade de luz refletida e que o contorno da linha ser feito pelo lado direito da mesma, a
velocidade de cada um dos motores controlada individualmente. Para tal, recorre-se diferena entre o valor lido pelo sensor e o valor que seria lido caso este estivesse
sobre a parte branca da pista e diferena entre o valor lido pelo sensor e o valor que seria lido caso este estivesse sobre a linha preta. Cada uma destas diferenas
multiplicada por um fator de 0,3 e enviada para a velocidade com que os motores da direita e da esquerda, respetivamente, se devem movimentar. O fator de 0,3 pretende
reduzir a velocidade do motor (relativamente obtida caso a diferena fosse colocada em bruto na velocidade de cada motor) e pode ser modificado.

O programa proposto o seguinte:

Resultados: O movimento mantm-se suave, mas menos rigoroso no seguimento da linha que o obtido no exerccio 5.4.

31
Lego Ev3 Exerccios introdutrios

Vous aimerez peut-être aussi