Académique Documents
Professionnel Documents
Culture Documents
Neste captulo, exploraremos alguns exerccios seguidores de linha com robs EV3.
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
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.
28
Lego Ev3 Exerccios introdutrios
Clube de Programao e Eletrnica
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.
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.
30
Lego Ev3 Exerccios introdutrios
Clube de Programao e Eletrnica
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.
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