Eai Pessoal, nós somos a equipe FrancoDroid e iremos explicar um pouco como fazer alinhamento na linha com sensor de luz do EV3. 

Passos do Alinhamento

1°Passo: O robô deve deslocar-se até um dos sensores visualizar um valor menor que a média.                          2°Passo: O robô deve mover o motor relacionado com o sensor oposto ao do 1°passo até ler a média.               3°Passo: O robô deve checar se o sensor que visualizou a linha no 1° passo está lendo a média.                         4°Passo: O robô repetirá o passo 3 e depois o passo 2, mas com os valores negativos e até os seus respectivos sensores lerem um valor maior que a média.                                                                                                           5°Passo: O robô deve realizar os passos 2,3 e 4 novamente para confirmar o êxito do alinhamento.                   Observação: A média é o resultado da média aritmética([a+b]/2) entre o valor de luz do branco e o valor de luz do preto.

Para um melhor entendimento dos passos, será explicado uma situação com fotos:                                                          

1°Passo: O robô se desloca e o sensor 1 visualiza primeiro um valor menor que média.sensor-1-certo

2° Passo: O robô se desloca com o motor B, que está relacionado ao sensor 3, até o sensor 3 ler um valor menor que a média.sensor-1-quase-certo

3° Passo: Através da foto anterior, é possível visualizar que o robô está um pouco inclinado. Dessa forma, o robô se desloca com o motor C até o sensor 1 ler um valor menor que a média.

sensor-1-certo

4° Passo: Entretanto, o robô continua desalinhado. Com isso, o robô repetirá primeiro o passo 3 e depois o passo 2, mas  com os valores negativos e até os seus respectivos sensores lerem um valor maior que a média.                                                                                                          

5° Passo. Posteriormente, ele repetirá o passo 2,3 e 4 por mais uma vez, com o objetivo de confirmar o alinhamento. No fim, o resultado será este: alinhado

Criando Programação

Para começar, o robô deverá deslocar-se até o sensor 1 ou o sensor 3 visualizar um valor menor que a média. Dessa forma, colocaremos um bloco de mover do motor B e C até o sensor 1 ou sensor 3 lerem esse valor.1-alinhar

Em seguida, o robô deverá raciocinar se o sensor 1 visualizou um valor menor que média. Caso esse fato não ocorra, é possível supor que é o sensor 3 que visualizou um valor menor que a média.

2-alinhar

A partir desse momento, o robô poderá executar duas sequências de alinhamento: A primeira é caso o sensor 1 esteja vendo um valor menor que a média e a segunda é caso o sensor 1 esteja vendo um valor maior que a média. 

1°Sequência

A primeira ação é o robô mover o motor B até o sensor 3 visualizar um valor menor que a média. 

1s1

Após essa ação, o robô estará um pouco inclinado. Dessa forma, o robô irá mover o motor C até que o sensor 1 visualize um valor menor que a média.
2s1

A partir dessa próxima ação, o robô executará os mesmos movimentos mas com os motores com forças negativas e com bloco de esperar até o sensor relacionado a cada ação ler um valor maior que a média. 

3s1

A próxima ação, que é a última da sequência, será com o bloco de mover C com força negativa até o sensor 1 ler um valor maior que a média. E por fim, essa sequência estará dentro de um loop de contar até ser executado 2 vezes.

4s1

A 2° sequência, ou seja, caso o sensor 1 leia um valor maior que a média, será semelhante ao da 1° sequência mas terão umas diferenças:

1°Diferença: Quando as ações da 1° sequência tiverem motor B, a 2° sequência terá o bloco do motor C em seu lugar.     2°Diferença: Quando as ações da 1° sequência tiverem motor C, a 2° sequência terá o bloco do motor B em seu lugar.     3°Diferença: Quando as ações da 1° sequência tiverem blocos relacionados ao sensor 1, a 2° sequência terá blocos relacionados ao sensor 3 em seu lugar.                                                                                                                                 4°Diferença: Quando as ações da 1° sequência tiverem blocos relacionados ao sensor 3, a 2° sequência terá blocos relacionados ao sensor 1 em seu lugar.

Aqui segue o link da programação:

https://drive.google.com/open?id=0B4pogXLg7vrBbW1nNmhlTzhlXzhzZm9zR0pWVzl1TVg1MmRJ