Logótipo sheen.bot

Perspetivas

Robôs seguidores de linha: a física e o código

17/09/2025·Sheen Robotics
Robôs seguidores de linha: a física e o código

Um robô seguidor de linha lê a luz refletida, converte-a por limiar em sobre a linha ou fora da linha e dirige-se com um ciclo de controlo. Aqui ficam a física, o código e a razão pela qual a afinação é a verdadeira lição.

Um robô seguidor de linha funciona lendo quanta luz é devolvida pelo chão por baixo dele, decidindo se cada sensor está sobre a linha escura ou sobre a superfície clara e, depois, dirigindo-se de modo a manter a linha ao centro. A física é a refletância. O código é um pequeno ciclo de controlo que corre algumas centenas de vezes por segundo. Acerte nos dois e o robô agarra-se a uma curva apertada; erre na afinação e ele oscila até embater na perna de uma mesa. Este guia explica como funciona, os dois métodos de direção mais comuns e por que razão é a afinação que verdadeiramente ensina engenharia.

Como o sensor lê a linha

A peça central é um sensor de refletância por infravermelhos. Junta um pequeno LED infravermelho a um fototransístor que mede quanta dessa luz regressa. Uma linha escura absorve a maior parte do infravermelho, pelo que regressa pouco. Um pavimento claro reflete quase tudo, pelo que regressa muito. O sensor fica a alguns milímetros do chão e devolve um valor analógico, normalmente lido como um número vindo de um conversor analógico-digital (ADC).

A maioria dos robôs para principiantes usa dois ou mais destes sensores lado a lado, ladeando a linha. Quando a linha desliza para debaixo do sensor esquerdo, a leitura da esquerda desce. Quando desliza para a direita, desce a leitura da direita. Essa diferença é toda a base da direção. Há aqui duas verdades práticas que contam: a altura do sensor altera a leitura e a luz ambiente infiltra-se. Um robô testado sob as luzes da sala de aula pode comportar-se de outra forma junto a uma janela soalheira, e é por isso que a calibração vem a seguir.

Transformar uma leitura numa decisão

Um número bruto do ADC não serve por si só, porque varia com a superfície, com a iluminação e até com uma bateria a esgotar-se. A solução é a definição de limiar. Passa-se lentamente com os sensores sobre a linha e sobre o chão, registam-se as leituras mais baixa e mais alta e fixa-se o limiar no ponto médio. Tudo o que fique abaixo do limiar conta como estar sobre a linha e tudo o que fique acima conta como estar sobre o chão — ou o inverso, consoante as ligações.

Este passo de calibração não é opcional. Faça-o na pista real, na sala real, sempre que mudar de sítio. Fita isoladora preta e mate sobre um chão claro dá um contraste limpo; fita brilhante ou um chão de mosaico escuro dá um contraste fraco. Dez minutos de calibração poupam mais tarde uma hora de depuração confusa.

Duas formas de dirigir: bang-bang e proporcional

O controlo mais simples é o bang-bang, também chamado tudo-ou-nada. A lógica é esta: se o sensor esquerdo vê a linha, vira à esquerda; se o sensor direito vê a linha, vira à direita; caso contrário, segue em frente. É fácil de escrever e fácil de perceber, mas dirige aos solavancos. O robô faz ziguezague ao longo de uma reta e tem de andar devagarinho para se aguentar nas curvas, porque só sabe se está dentro ou fora, nunca a que distância está.

O controlo proporcional resolve isso usando as leituras analógicas em vez de um sim ou não. Calcula-se um erro, por exemplo error = left - right, e faz-se a intensidade da curva variar com ele: turn = Kp * error. Um erro pequeno produz uma correção suave; um erro grande produz uma correção forte. Um único número, Kp, o ganho proporcional, decide com que agressividade o robô responde. É a primeira prova a sério de teoria de controlo e chega para fazer um robô deslizar por uma pista que o bang-bang percorreria aos trambolhões. Acrescentar os termos I e D para obter um ciclo PID completo é o passo seguinte natural, assim que o proporcional estiver seguro.

A afinação é a verdadeira lição

O código acima é curto. Quase toda a aprendizagem está em afiná-lo, e isso é uma vantagem, não uma maçada. É na afinação que os alunos encontram o método da engenharia: mudar uma variável, testar, observar, repetir. Avance por esta ordem:

  • Calibre na pista real e sob as luzes reais antes de mexer em qualquer outra coisa.
  • Defina uma velocidade base suficientemente lenta para conseguir observar o robô e agarrá-lo.
  • Comece com um Kp pequeno e vá subindo até o robô seguir a linha em vez de se desviar.
  • Se começar a oscilar, a serpentear de um lado para o outro, baixe um pouco o Kp ou reduza a velocidade base.
  • Teste na curva mais apertada da pista, não na reta fácil. A reta mente-lhe.

Mantenha um caderno e mude uma coisa de cada vez. Um aluno que anota que um ganho alto pôs o robô a serpentear aprende mais do que um que mexe nos números ao acaso até a coisa funcionar por sorte.

Falhas comuns e como as depurar

A maioria dos problemas de um seguidor de linha cai num punhado de padrões. Faça corresponder o sintoma à causa provável antes de reescrever seja que código for:

  • O robô ignora a linha por completo: o limiar está errado, os sensores estão montados demasiado alto ou a bateria está fraca ao ponto de enfraquecer os LED.
  • Ziguezague violento: o Kp ou a velocidade base estão demasiado altos. Reduza um de cada vez.
  • Sai disparado nas curvas apertadas: vai depressa demais, ou os dois sensores estão demasiado juntos para dar pela curva a tempo.
  • Desvia-se para um dos lados numa reta: os dois motores não estão perfeitamente equilibrados. Acrescente uma pequena compensação fixa de um dos lados.
  • Funciona de manhã e falha depois do almoço: a luz do sol alterou as leituras. Volte a calibrar para a nova iluminação.
  • Todos os sensores dão quase a mesma leitura: verifique as ligações e os números dos pinos e confirme que a fita é mate e não brilhante.

Experimentar na sala de aula

Um seguidor de linha é um dos melhores primeiros projetos de robótica, porque todo o ciclo — detetar, decidir, atuar — é visível numa única passagem pelo chão. A construção do rover na placa sheenbot∞ dá aos alunos os sensores de refletância e o controlo dos motores de que precisam numa só placa, e há kits completos disponíveis na loja. Se preferir que lho ensinem, a academia na Cidade do Cabo dá aulas semanais e workshops de férias em que o seguimento de linha é uma construção habitual.

Em resumo

A deteção por refletância diz ao robô onde está a linha, o limiar transforma isso numa decisão clara e o controlo proporcional transforma a decisão numa direção suave. O código é curto de propósito. A verdadeira competência está na afinação paciente, uma alteração de cada vez, que leva um robô oscilante a aguentar uma curva — e essa competência transita para quase todos os outros projetos. Para mais relatos de construções, veja a sala de imprensa da sheen.bot.

Perguntas frequentes

De quantos sensores precisa um seguidor de linha?

Dois chegam para dirigir, porque a direção só precisa de saber se a linha se desviou para a esquerda ou para a direita. Acrescentar mais sensores, sendo cinco um número comum, permite ao robô avaliar com mais precisão a que distância está e lidar com curvas mais apertadas, o que torna o controlo proporcional mais suave.

Porque é que o meu robô segue a linha numa sala e noutra não?

A luz ambiente e a cor do chão alteram a quantidade de infravermelhos que é devolvida, pelo que o limiar calibrado numa sala está errado noutra. Volte a calibrar na nova superfície e sob a nova iluminação sempre que mudar o robô de sítio.

O controlo proporcional é o mesmo que PID?

O proporcional é o P do PID e é o primeiro e mais importante termo. O PID acrescenta um termo integral para anular o desvio persistente e um termo derivativo para amortecer o sobreimpulso. A maioria dos projetos de adolescentes funciona bem só com o proporcional, acrescentando depois os outros dois como melhoria.

#robótica#seguimento de linha#sensores#programação#projetos

Mais Perspetivas