Você está na página 1de 10

Machine Translated by Google

Veja metadados, citações e artigos semelhantes em core.ac.uk trazido a você pela CORE
fornecido pelo International Journal of Computer (IJC - Sociedade Global de Pesquisa Científica e...
Revista Internacional de Computação (IJC)
ISSN 2307-4523 (impresso e on-line)
© Sociedade Global de Pesquisa Científica e Pesquisadores

http://ijcjournal.org/

Algoritmo para robôs seguidores de linha seguirem o ponto crítico


Caminhos com Número Mínimo de Sensores

Nakib Hayat Chowdhurya *, Deloara Khushib, Mamunur Rashidc

a,b,cDepartamento de Ciência da Computação e Engenharia, BAUST, Saidpur Cantonment, Nilphamari, Bangladesh

e -mail: nakib2025@gmail.com

bE-mail: khushi.hstu@gmail.com

c E-mail: mamunst2003@yahoo.com

Abstrato

Este artigo apresenta uma abordagem que ajuda um robô seguidor de linha a alcançar a capacidade de autonomamente

siga um caminho que tenha linhas retas, curvas, curvas de 90 graus, junções em T e junções + usando mínimo

sensores. Geralmente, um robô seguidor de linha usa uma matriz de sensores para atingir essa capacidade. Este artigo discute sobre

o algoritmo através do qual um seguidor de linha pode fazer a mesma coisa usando uma matriz de sensores com mínimo

número de sensores. Porque, se conseguirmos diminuir o número de sensores, podemos diminuir a complexidade do robô.

Além disso, também reduz o custo. Mas aqui o principal desafio é garantir a eficiência. Como sabemos, para uma linha

robô seguidor, é difícil detectar e seguir junções em T, curvas de 90 graus e junções de grade. Superar

neste desafio, as pessoas adicionam sensores extras para detectar curvas de 90 graus, junções em T e junções + e projetar

algoritmo para segui-los. Se reduzirmos o sensor, esses robôs não serão capazes de detectar essas junções críticas e assim,

perder sua eficiência. Este artigo discute a configuração dos sensores de linha, suas posições e também desenvolve um

algoritmo para que um robô possa seguir um caminho com curva, curvas de 90 graus, junções em T e junções + usando apenas

quatro sensores.

Palavras-chave: Seguidor de linha autônomo; Sensor IR; Sensores Mínimos; Curvas de 90 graus; Junções em T; + junções.

1. Introdução

Os robôs seguidores de linha são robôs autônomos com a capacidade de detectar e seguir uma linha usando a bordo

circuito de controle conectado [1,2]. Hoje em dia, para reduzir o esforço humano e garantir um transporte automático eficiente

os seguidores da linha do sistema estão se tornando populares. Especialmente em áreas industriais, estes são utilizados em grande número [3].

-------------------------------------------------- ---------------------

* Autor correspondente.

13
Machine Translated by Google

International Journal of Computer (IJC) (2017) Volume 24, No 1, pp 13-22

Para serem um elemento industrial ideal, esses robôs precisam fornecer alta eficiência a um custo mínimo. Ou seja, robô

deve ter a capacidade de seguir linhas complexas e por outro lado, deve ser simples, fácil de operar e

barato. Além de todas as outras coisas, se reduzirmos o número de sensores, isso reduzirá a complexidade e o custo.

Mas, se reduzirmos o sensor, torna-se muito difícil para um seguidor de linha detectar anjos críticos como 90

curvas de grau, junções em T e junções +. Assim, para alcançar alta eficiência com menos sensores, temos que encontrar um

algoritmo apropriado, bem como temos que definir os sensores nas posições apropriadas [4]. Aqui, discutimos sobre

algum resultado experimental sobre o posicionamento do sensor e estratégia de controle do nosso robô (figura 1) para desenvolver um

algoritmo através do qual um robô seguidor de linha pode detectar junção em T, junção + e giro de 90 graus com precisão

com sensor mínimo. Testamos nosso robô em um caminho de amostra que foi construído com base nos requisitos de um

linha seguindo competição de robôs, RoboTour, 2015, organizada pelo IEEE RUET Student Branch [5], conforme mostrado em

Figura 2.

Figura 1: Robô Seguidor de Linha Figura 2: RoboTour, pista de competição de 2015

2. Materiais e métodos

2.1 Hardware do Robô

Usamos o Arduino Uno como placa de circuito principal do nosso robô. Para detectar a linha, ele usou um conjunto de quatro sensores

unidades. Cada unidade contém um transmissor IR e um receptor IR. Conforme mostrado na figura 3, o sensor IR reflete a luz quando

está na superfície branca, mas não reflete na superfície preta [6]. Usar esta propriedade do robô sensor IR pode

detectar facilmente uma linha branca de superfície preta ou vice-versa. Nosso robô também usou um comparador para ajustar o valor dos sensores.

Figura 3: Princípio de funcionamento do sensor IR

14
Machine Translated by Google

International Journal of Computer (IJC) (2017) Volume 24, No 1, pp 13-22

Este robô usou dois motores de 12 V DC para movimento, um controlador de motor para controlar a velocidade desses dois motores. Nisso

papel, não estamos discutindo sobre os detalhes do hardware do robô, como circuito subjacente, unidade de fonte de alimentação,

circuito de conjunto de sensores, controlador de motor, etc. Em vez disso, este artigo discute como um robô pode seguir uma linha complexa com

sensores mínimos.

2.2 Análise do caminho do robô

Como mencionado anteriormente, o caminho do robô foi construído com base em uma pista projetada para competição de robôs seguindo linha [5]. Nós

também seguiu todas as suas regras e regulamentos. Isso garante que o caminho da amostra seja complexo o suficiente para testar

eficiência de um robô seguidor de linha. Referindo-se à Figura 2, o robô deve seguir uma linha branca na superfície preta. Como

mostrado na Figura 4, a linha branca tem 4 cm de largura e está no meio de uma superfície preta de 30 cm.

Figura 4: Exemplo de Dimensão da Trilha Rodoviária

Conforme mostrado na figura 2, este caminho tem três curvas de 90 graus à esquerda, duas curvas de 90 graus à direita, três junções em T e

um + junção. Este campo de amostra também possui uma caverna de 45 cm e um obstáculo a evitar. Mas este artigo se concentra apenas em

algoritmo de seguimento de linha com sensores mínimos, então deixamos esses.

2.3 Disposição dos sensores

Para uma navegação bem-sucedida em caminhos críticos, o número de sensores e sua posição desempenham um papel vital. Em geral, um

matriz de sensores com oito sensores ou pelo menos seis sensores torna um robô capaz de detectar junções críticas. Na nossa

robô, realizamos diferentes experimentos com sensores para reduzir seu número. Para detectar qualquer linha, no mínimo dois sensores

são necessários [7]. Usando esses dois sensores, um robô pode facilmente seguir uma linha reta ou uma linha ondulada simples. Na nossa

robô, usamos um conjunto de apenas quatro sensores, onde os dois sensores do meio foram configurados para seguir uma linha simples. Montamos

estes dois sensores de forma que na posição ideal a linha permaneça apenas entre esses sensores. Mas usando apenas dois sensores não é possível

detectar uma junção em T, junção + ou qualquer ângulo de 900º. Assim, adicionamos dois sensores adicionais em ambos os lados, o que ajudou nosso

robô a detectar a junção em T e o ângulo de 900. Porém, usando apenas quatro sensores, nosso robô ainda

não é capaz de detectar diretamente uma junção +. Porém, desenvolvemos um algoritmo baseado em feedback de forma que, sempre que qualquer +

aparece o cruzamento, nosso robô é capaz de escolher o caminho correto entre três opções alternativas: seguir em frente, virar 900 à esquerda ou virar

900 à direita. A Figura 5, 6 mostra a disposição completa do sensor.

Figura 5: Matriz de sensores

15
Machine Translated by Google

International Journal of Computer (IJC) (2017) Volume 24, No 1, pp 13-22

Figura 6: Diagrama de blocos do robô

Aqui, os dois sensores intermediários SR e SL são usados para detectar linha simples. O sensor externo esquerdo SLL foi configurado para detectar 900 curvas à

esquerda e o sensor externo direito SRR para detectar 900 curvas à direita. A distância entre os sensores SR e SL é de 6 cm. Então, no ideal

posição estes dois permaneceram a 1 cm da linha de base principal. Distância entre os sensores SRR a SR e SLL a SL

foram fixados 5 cm para ambos os casos.

2.4 Algoritmo de seguimento de linha

O fluxograma a seguir (figura 7) descreve o princípio básico de funcionamento do nosso robô.

Figura 7: Princípio básico de funcionamento.

Conforme mostrado neste fluxograma, a estratégia de navegação é dividida em duas partes: detecção de linha simples e detecção simples de linha.

algoritmo de seguimento de linha, detecção de ângulo de 90 graus e algoritmo de giro de 90 graus.

2.5 Detecção de linha simples e algoritmo de seguimento de linha simples

Este robô detecta uma linha como linha simples e segue o algoritmo de seguimento de linha simples se e somente se ambas as suas linhas externas

sensores (SLL, SRR) estão na superfície preta. Aqui podem acontecer três situações, conforme mostram as figuras 8, 9 e 10.

16
Machine Translated by Google

International Journal of Computer (IJC) (2017) Volume 24, No 1, pp 13-22

Figura 8: Situação ideal, siga em frente

Considere a figura 8, quando todos os sensores estão na superfície preta. Esta é a posição ideal para o robô. Nesta situação

o robô avançará a toda velocidade girando ambos os motores em rpm máximas.

Figura 9: Curva normal à direita

Na segunda situação (Figura 9), ambos os sensores externos (SLL, SRR) e o sensor central esquerdo (SL) estão na superfície preta,

apenas o sensor central direito (SR) está na linha branca. Então, o robô precisa se mover para a direita até o sensor central direito (SR)

costas para a superfície preta (para voltar à posição ideal). Para fazer isso, este robô reduz a velocidade correta do motor para

metade e mantenha o motor esquerdo na velocidade mais alta. Em vez de parar o motor certo, reduzimos a sua velocidade para ganhar

melhor navegação.

Figura 10: Viragem normal à esquerda

Na terceira situação (figura 10), o sensor central esquerdo (SL) está na linha branca e os outros três sensores estão na superfície preta.

17
Machine Translated by Google

International Journal of Computer (IJC) (2017) Volume 24, No 1, pp 13-22

Portanto, o robô precisa se mover para a esquerda até que o sensor central esquerdo (SL) volte para a superfície preta. Então, reduzimos o motor esquerdo

velocidade para metade e manter a dos outros alta. O algoritmo a seguir descreve o procedimento completo.

Algoritmo de seguimento de linha simples

Figura 11: Algoritmo de seguimento de linha simples

2.6 Detecção de ângulo de 90 graus e algoritmo de giro de 90 graus

Se o robô detectar qualquer ângulo de 90 graus em seu caminho, ele seguirá o algoritmo de giro de 90 graus. Isso pode ser

acontecer de duas maneiras: curva de 90 graus à esquerda ou curva de 90 graus à direita.

Figura 12: giro de 90 graus – esquerda Figura 13: giro de 90 graus – direita

Conforme mostrado na figura 12 e na figura 13, nosso robô detectará um segmento de caminho como um ângulo de 90 graus se ambos SL

e os sensores SLL estão na linha branca ou ambos os sensores SR e SRR estão na linha branca. Se SL e SLL estiverem em branco

18
Machine Translated by Google

International Journal of Computer (IJC) (2017) Volume 24, No 1, pp 13-22

linha, este robô fará uma curva de 90 graus à esquerda. Para fazer isso, giramos o motor esquerdo no sentido inverso com velocidade máxima e

gire o motor direito para frente com velocidade total, até que os sensores SRR e SLL estejam de volta na superfície preta. Para

viramos 90 graus à direita, fazemos a mesma coisa no sentido inverso. O algoritmo a seguir descreve o procedimento completo.

Figura 14: Algoritmo de seguimento de linha simples

3 Resultados e discussão

Nosso robô é capaz de seguir todas as partes do caminho do teste da amostra sem problemas. Usando os dois algoritmos acima, este robô é facilmente

capaz de detectar e seguir linhas retas, curvas simples e 900 curvas à esquerda ou à direita. Mas sempre que qualquer entroncamento ou

+ junção aparece no caminho, nosso robô precisa de instruções adicionais para escolher os caminhos corretos entre as alternativas.

Uma junção em T abre dois caminhos alternativos para o robô: uma curva de 900 à esquerda ou uma curva de 900 à direita. Como mencionado

anteriormente, em um cruzamento +, o robô deve escolher o caminho correto entre três alternativas: seguir em frente, virar à esquerda 900 ou pegar uma

900 curva à direita.

Se analisarmos de perto essas opções alternativas tanto da junção T quanto da junção +, podemos ver que nosso robô

pode seguir qualquer um deles usando os dois algoritmos acima. Só precisa escolher a opção correta. Para fazer isso, temos

usou uma variável de contador com valor inicial 0.

Como mostrado na figura 15, quando todos os sensores estavam na linha branca, o robô detectou-a como uma junção em T. Novamente, por +

junção, este robô irá detectá-la como junção em T porque possui apenas um conjunto de quatro sensores.

19
Machine Translated by Google

International Journal of Computer (IJC) (2017) Volume 24, No 1, pp 13-22

Figura 15: Detecção de junção em T Figura 16: Entroncamentos em T e entroncamento + na via

Considere nosso caminho de amostra, havia três junções em T e uma junção + (figura 16). No primeiro entroncamento, nosso

o robô detectou uma curva à direita de 90 graus porque aqui o sensor SR e o sensor SRR estavam na linha branca. Então, demorou 90

curva à direita de grau usando algoritmo de giro de 90 graus. Qual era a opção correta, então não precisávamos tomar nenhuma

atividades adicionais para a junção.

Depois disso, o robô alcançou o cruzamento +. Como mencionado anteriormente, nosso robô detecta esta junção + como uma junção em T. Esse

foi a primeira detecção de junção em T pelo robô e aqui o valor do contador foi 0.

Aqui, o robô tinha três opções e entre elas, virar à direita em 90 graus era a opção correta. Então, estabelecemos uma condição

em nosso algoritmo de forma que, se o robô detectar qualquer junção em T e o valor da variável do contador for 0, então faça 90 graus

vire à direita e defina o valor da variável do contador como 1.

No segundo entroncamento, o robô teve que virar 90 graus para a esquerda e aqui o valor da variável do contador era 1. Então, definimos

a condição, se o robô detectar qualquer junção em T e o valor da variável do contador for 1, então vire 90 graus à direita e

defina o valor da variável do contador como 2. A terceira junção em T não apareceu no caminho do robô. Ao seguir esta estratégia,

Se isso for feito, nosso robô terá a capacidade de seguir qualquer caminho com qualquer número de junções em T ou junções +.

Novamente, a posição do sensor no robô é outra questão importante a considerar. Porém, usamos quatro sensores

colocados em linha reta, a distância entre os sensores é muito importante. Por exemplo, se aumentarmos a distância

entre o robô SR e SL tremerá muito e criará anjos difíceis. Isto também reduz a velocidade do

robô.

Por outro lado, para dois sensores externos (SLL e SRR), se colocarmos estes sensores muito longe dos sensores internos

(SL e SR), estes podem levar o robô a uma posição complexa ao entrar em qualquer curva de 90 graus. Ao contrário, se

eles estão dois próximos e não seriam capazes de detectar nenhuma curvatura de 90 graus. A Figura 16 ilustra esses dois problemas.

20
Machine Translated by Google

International Journal of Computer (IJC) (2017) Volume 24, No 1, pp 13-22

Figura 16: Disposição dos sensores: (a) sensores colocados muito próximos, (b) sensores colocados muito longe

Para determinar a distância entre dois sensores externos, podemos usar a equação 1 [6].

(1)

Aqui é o ângulo crítico permitido para entrar em uma curva de 90 graus.

Se permitíssemos um ângulo crítico máximo de 20 graus (o que é bastante razoável) para entrar em uma curva de 90 graus, o

a distância entre dois sensores externos seria

Aqui a largura da linha determinada pelo RoboTour foi de 4 cm (RoboTour 2015). Então a distância

< 11 cm (aproximadamente)

Assim, definimos a distância entre os sensores SRR a SR e SLL a SL em 5 cm para ambos os casos conforme mencionado anteriormente.

4. Conclusão e recomendações futuras

Porém, o uso de robô seguidor de linha é muito comum hoje. Mas, selecione sensores ideais para alcançar alta

a eficiência ainda é um grande desafio. Este artigo fornece uma solução sobre esse assunto. Discute sobre o algoritmo

através do qual um robô seguidor de linha é capaz de seguir quaisquer curvas de 90 graus, junções T ou + usando mínimo

número de sensores. Também discute o número de sensores que um robô precisa para seguir uma linha simples e calcular

o número mínimo de sensores que um robô deve ter se precisar seguir um caminho com seções críticas como 90

curva de grau, junção em T e junção + usando este algoritmo. Nosso robô conseguiu seguir a amostra com sucesso

caminho. O que comprova a eficácia do nosso método proposto. No entanto, este robô também tinha algumas limitações.

Quando tentamos aumentar a velocidade do robô, algum problema ocorre em curvas e junções de 90 graus. Foi por causa

21
Machine Translated by Google

International Journal of Computer (IJC) (2017) Volume 24, No 1, pp 13-22

o impulso do robô passou por uma velocidade mais alta. Nós resolvemos esse problema reduzindo a velocidade do robô em

curvas e junções. No futuro, poderemos alargar o nosso trabalho neste ponto para garantir eficiência a uma velocidade mais elevada.

Referências

[1]. Pakdaman,M.Sanaatiyan,MM,"Projeto e Implementação de Robô Seguidor de Linha", Segundo

Conferência Internacional de Engenharia Elétrica e de Computação TCCEE '09, vol.2, pp.585-

590, dez.2009.

[2]. PriyankPatil,"AVR Line Following Robot", Departamento de Tecnologia da Informação K. 1. Somaiya

Faculdade de Engenharia de Mumbai, Índia. 5 de março de 2010.

[3]. Aziz, ARA, Projetando e Construindo um Veículo de Direção Automática (AGV), no Departamento de Elétrica

Engenharia. 2004, Universidade Tenaga Nasional: Malásia. pág. 50.

[4]. Ashari, S., Sensores de Linha, Gap e Cor, no Departamento de Engenharia Elétrica. 2004, Universidade Tenaga

Nacional: Malásia. pág. 70.

[5]. “RoboTour and Programming Contest, 2015”, organizado pelo IEEE RUET Student Branch, Bangladesh

[6]. M. Zafri Baharuddin, Izham Z. Abidin, S. Sulaiman Kaja Mohideen, “Análise do Sensor de Linha

Configuração para o Robô Seguidor de Linha Avançado”, Departamento de Engenharia Elétrica,

Universidade Tenaga Nasional, Malásia

[7]. Bajestani, SEM, Vosoughinia, A., “Relatório Técnico de Construção de um Robô Seguidor de Linha”

Conferência Internacional sobre Engenharia Eletrônica e da Informação (ICEIE 2010), vol 1, pp.

5, 2010.

22

Você também pode gostar