10
Departamento de Engenharia Elétrica SISTEMA INTELIGENTE DE NAVEGAÇÃO E LOCALIZAÇÃO DE ROBÔS MÓVEIS Aluno: Adriel Barbosa de Souza/Wellington Bezerra da Silva Orientadores: Karla Tereza Figueiredo Leite Introdução As aplicações da robótica fora do contexto industrial têm crescido e se diversificado em campos como: a medicina, com aplicação da teleoperação em cirurgias; na área militar, desenvolvimento de robôs móveis que levam suprimentos no meio de conflito; e até no ambiente doméstico, com o surgimento da automação doméstica, em que robôs limpam sua casa ou tomam conta de idosos. Dentro desse contexto de interação com um ambiente, ou até com humanos, robôs, principalmente móveis, precisam de conhecimento sobre o espaço ao seu redor, paredes, portas, limites do terreno e quaisquer empecilhos existentes. O robô sem essas informações pode ser comparado com um ser humano, que precisa executar alguma tarefa, em um quarto escuro. Entretanto nem sempre é possível obter um mapa, localização de todos os itens do ambiente, ou obter informações suficientes previamente, pontos de referência, necessários para a localização. Um sistema de navegação para um robô móvel é uma área em constante pesquisa e desenvolvimento, entre as grandes motivações estão: a substituição de trabalhadores por robôs em tarefas repetitivas, perigosas e/ou insalubres, como soldas submarinas, reparos em usinas nucleares ou reparos em tubulações de gás, esgoto e petróleo. Este trabalho propõe um estudo típico para a área de navegação de robôs móveis, o desenvolvimento de um método para que um robô percorra um labirinto, montado em um ambiente fechado, evitando todos os obstáculos. Essa tarefa pode ser realizada obtendose os dados do ambiente ao redor do robô, usando sensores e processando essa informação. Hardware Os sensores são dispositivos que reagem a determinadas variáveis do ambiente externo como por exemplo, pressão, umidade, luminosidade, aceleração, etc. Eles podem ser digitais ou analógicos. O sinal de saída de um sensor digital é binário, pois é interpretado por apenas dois valores, sendo eles zero ou um. Já o sinal de saída do sensor analógico é contínuo, pois varia com o tempo estando ele dentro de uma faixa de operação. Todos os dispositivos de medida possuem um intervalo mínimo e máximo dos valores medidos, recebidos e transmitidos, pois os dados lidos podem variar por conta da instabilidade das variáveis do ambiente externo. Por isso, o valor medido pelo sensor acaba sendo o valor real mais o erro que pode ser sistemático ou previsível. O erro previsível é próprio do instrumento de medida, sendo ele proporcional ao valor de entrada e podendo ser eliminado a partir de uma calibração do sensor. Já o erro sistemático, ou seja, fortuitos, ocorre de forma inesperada, não

SISTEMA INTELI G EN TE D E N AVEG AÇÃO E L O CAL IZ …

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: SISTEMA INTELI G EN TE D E N AVEG AÇÃO E L O CAL IZ …

Departamento de Engenharia Elétrica

SISTEMA INTELIGENTE DE NAVEGAÇÃO E LOCALIZAÇÃO DE ROBÔS MÓVEIS

Aluno: Adriel Barbosa de Souza/Wellington Bezerra da Silva Orientadores: Karla Tereza Figueiredo Leite

Introdução

As aplicações da robótica fora do contexto industrial têm crescido e se diversificado em campos como: a medicina, com aplicação da teleoperação em cirurgias; na área militar, desenvolvimento de robôs móveis que levam suprimentos no meio de conflito; e até no ambiente doméstico, com o surgimento da automação doméstica, em que robôs limpam sua casa ou tomam conta de idosos.

Dentro desse contexto de interação com um ambiente, ou até com humanos, robôs, principalmente móveis, precisam de conhecimento sobre o espaço ao seu redor, paredes, portas, limites do terreno e quaisquer empecilhos existentes. O robô sem essas informações pode ser comparado com um ser humano, que precisa executar alguma tarefa, em um quarto escuro. Entretanto nem sempre é possível obter um mapa, localização de todos os itens do ambiente, ou obter informações suficientes previamente, pontos de referência, necessários para a localização.

Um sistema de navegação para um robô móvel é uma área em constante pesquisa e desenvolvimento, entre as grandes motivações estão: a substituição de trabalhadores por robôs em tarefas repetitivas, perigosas e/ou insalubres, como soldas submarinas, reparos em usinas nucleares ou reparos em tubulações de gás, esgoto e petróleo.

Este trabalho propõe um estudo típico para a área de navegação de robôs móveis, o desenvolvimento de um método para que um robô percorra um labirinto, montado em um ambiente fechado, evitando todos os obstáculos. Essa tarefa pode ser realizada obtendo­se os dados do ambiente ao redor do robô, usando sensores e processando essa informação. Hardware

Os sensores são dispositivos que reagem a determinadas variáveis do ambiente externo como por exemplo, pressão, umidade, luminosidade, aceleração, etc. Eles podem ser digitais ou analógicos. O sinal de saída de um sensor digital é binário, pois é interpretado por apenas dois valores, sendo eles zero ou um. Já o sinal de saída do sensor analógico é contínuo, pois varia com o tempo estando ele dentro de uma faixa de operação.

Todos os dispositivos de medida possuem um intervalo mínimo e máximo dos valores medidos, recebidos e transmitidos, pois os dados lidos podem variar por conta da instabilidade das variáveis do ambiente externo. Por isso, o valor medido pelo sensor acaba sendo o valor real mais o erro que pode ser sistemático ou previsível. O erro previsível é próprio do instrumento de medida, sendo ele proporcional ao valor de entrada e podendo ser eliminado a partir de uma calibração do sensor. Já o erro sistemático, ou seja, fortuitos, ocorre de forma inesperada, não

Page 2: SISTEMA INTELI G EN TE D E N AVEG AÇÃO E L O CAL IZ …

Departamento de Engenharia Elétrica

sendo possível saber o motivo de sua causa e, na maioria das vezes, não pode ser eliminado.

Figura 1: Como o robô foi projetado.

Figura 2: Algumas vistas do projeto.

Page 3: SISTEMA INTELI G EN TE D E N AVEG AÇÃO E L O CAL IZ …

Departamento de Engenharia Elétrica

1. Raspberry Pi 2B Tal periférico é considerado um computador de baixo custo que foi

desenvolvido no Reino Unido pela fundação Raspberry Pi sem fins lucrativos que visa a inclusão digital. Esse dispositivo foi criado para fins educacionais, como por exemplo a aprendizagem de linguagens de programação. Além disso, ele é um pequeno computador que pode ser utilizado para navegar na internet, ouvir música, escrever textos e ver vídeos de alta definição.

O Raspberry Pi 2B é um dispositivo que possui um processamento eficiente com baixo consumo de energia e consegue interagir com diferentes sensores pois ele tem uma alta velocidade de executar operações (Clock Speed).

Figura 2: Raspberry Pi 2 Model B

Processador 900MHz Quad­Core ARM Cortex­A7 CPU; Clock 900 MHz; Memória RAM: 1GB; Conector de vídeo HDMI; 4 portas USB 2.0; Conector Ethernet; Interface para câmera (CSI); Interface para display (DSI); Slot para cartão microSD; Conector de áudio e vídeo; GPIO de 40 pinos; Dimensões: 86 x 56 x 20mm.

Page 4: SISTEMA INTELI G EN TE D E N AVEG AÇÃO E L O CAL IZ …

Departamento de Engenharia Elétrica

2. Sensor Lidar O sensor Lidar URG­04LX­UG01 é utilizado para o escaneamento em

ambientes indoor a partir do uso de infravermelhos a laser com 785 nm de comprimento de onda. Ele consegue realizar um escaneamento de, no máximo, 4 metros de distância de cada ponto do espaço “varrido”. A medição da distância é feita a partir da diferença de fase, sendo possível obter um resultado estável, com a menor interferência da cor dos objetos.

Protocolo de comunicação é a forma como os dados são organizados e enviados para o próximo estágio do processo de comunicação. Esse dispositivo utiliza o protocolo SCIP 2.0 que é um padrão de transmissão de forma que as informações possam ser interpretadas por diferentes dispositivos eletrônicos .

A imagem abaixo mostrará como a leitura dos dados é realizada pelo sensor Lidar: a área de DETECTION RANGE mostra o máximo ângulo que o sensor pode atingir para fazer o escaneamento dos objetos no ambiente, o STEP 0 representa o ponto em que a primeira medida é realizada, o STEP A representa a primeira medida do RANGE que foi detectada, STEP C é o ponto final da detecção e o STEP D é a última medição a ser realizada.

Figura 3: Esquerda: Esquema de medição. Direita: Sensor LIDAR.

Portanto, o sensor para o mapeamento de ambiantes indoor escolhido para o projeto foi o Lidar URG­04LX­UG01, com as especificações:

Fonte de energia: 5V DC; Consumo: 500mA ou menos; Distância de detecção: 20mm ~ 4000mm; Resolução: 1mm; Ângulo de escaneamento: 240°; Resolução angular: 0,36°; Tempo de varredura de 100 ms / escaneamento; Peso: 160g; Dimensão: 50 x 50 x 70 mm.

Page 5: SISTEMA INTELI G EN TE D E N AVEG AÇÃO E L O CAL IZ …

Departamento de Engenharia Elétrica

3. Sensor Infravermelho O GP2Y0A02YK0F é um sensor de proximidade e a distância de detecção

corresponde a tensão gerada por esse componente. Ele é muito utilizado em robôs que precisam detectar objetos a um curto alcance, em controle de luminosidade e também para poupar energia. Além disso, a saída desse dispositivo produz um sinal analógico que pode ser interpelada por diferentes controladores, como o Arduino e Raspberry.

Figura 4: Sensor Sharp Infravermelho.

Faixa de medição da distância: 20 a 150 cm; Dimensão: 29,5 × 13 × 21,6 mm; Consumo: 33 mA; Tensão de alimentação: 4,5 a 5,5 V.

4. Regulador de tensão

Construído por componentes discretos(diodos zeners e transistores), o regulador de tensão tem por finalidade a manutenção na tensão de saída em um circuito elétrico. Mesmo havendo variações na tensão de entrada, esse dispositivo mantém a tensão de saída estabilizada dentro de certos limites.

Figura 5: Regulador de tensão LM2576.

Page 6: SISTEMA INTELI G EN TE D E N AVEG AÇÃO E L O CAL IZ …

Departamento de Engenharia Elétrica

Tensão de entrada: 3,2­40v; Tensão de saída: 1,5­35v (ajustável, entrada deve ser 1,5v maior que a saída); Corrente de saída: 2A corrente nominal, 3A máxima (é recomendado

adicionar dissipador de calor se potência maior que 15W); Eficiência de conversão: até 92% (quanto maiot a tensão de saída, maior a

eficiência); Tensão suspensa mínima: 1,5v; Velocidade de comutação: até 150KHz; Velocidade de resposta dinâmica: 5% 200US; Circuito de proteção: SS36; Temperatura de operação: classe industrial (­40 a 85 ) (potência de

saída de 10W ou menos); Regulação de carga: ± 0,5%; Dimensões aproximadas: 46x22mm.

5. Motor DC

O motor DC é um motor de corrente contínua que transforma energia elétrica em energia mecânica. Quando a bobina estiver conectada a uma corrente elétrica contínua, um campo magnético será gerado que irá interagir com o campo magnético dos ímãs. Esta interação produzirá um torque sobre o rotor(armadura) fazendo com que ele se mova em torno de si mesmo.

Figura 6: Esquerda: Esquema do movimento. Direita: Motor usado.

Eixo duplo; Tensão de Operação: 3­6V; Redução: 1:48; Peso: 30g; Corrente sem carga: ≤200mA (6V) e ≤150mA (3V); Velocidade sem carga: 200RPM (6V) e 90RPM (3V).

Page 7: SISTEMA INTELI G EN TE D E N AVEG AÇÃO E L O CAL IZ …

Departamento de Engenharia Elétrica

6. Shield Motor Driver 2x2A É um dispositivo que tem como funcionalidade o controle da velocidade e o

sentido da rotação de até dois motores DC de 7,5 a 20v, de forma independente. Os motores estarão conectados por um canal que poderá liberar uma corrente de até 2A.

Figura 7: Arduino Shield ­ Motor Driver 2x2A.

Tensão da lógica: 5V (proveniente do Raspberry Pi); Tensão que pode ser drenada aos motores: 7,5V a 12V (através do pino VIN)

ou 7,5V a 20V (através de fonte externa ­selecionável via jumper ); Controle de velocidade em ambos os sentidos de maneira independente; Até 2A de corrente para cada motor; Pinos usados para mover 2 motores: ~5, ~6, 7 e 8 (~ indica PWM ); Controle de velocidade via PWM, proveniente do Raspberry Pi.

7. Comunicador de Rádio Frequência

Após a coleta dos dados pelos sensores apresentados, será necessário o uso de algum artifício de comunicação. O NRF24L01+ foi escolhido pois apresenta uma ótima rapidez, baixo consumo e excelente alcance.

Figura 8: Transceptor NRF24L01+

Page 8: SISTEMA INTELI G EN TE D E N AVEG AÇÃO E L O CAL IZ …

Departamento de Engenharia Elétrica

Tensão de alimentação: 1,9 ­ 3,6v; Corrente de alimentação: 1uA (modo Power Down); Frequência: 2.4Ghz (Antena embutida); Velocidade de Operação: 2Mbps (máx); Modulação GFSK; Regulador de voltagem embutido; Comunicação multi­ponto 125 canais; Dimensões: 3,3 x 1,4 x 0,5cm.

8. Bateria

A bateria possui uma placa positiva e uma placa negativa que estão mergulhadas em uma solução conhecida como eletrólito. Ela garante o fornecimento de corrente contínua para manter circuitos elétricos em funcionamento.

Figura 9: Turningy NanoTech 3S.

Capacidade: 1300mAh; Tensão: 3S1P / 3 células / 11.1V; Descarga: 25C constante / 50C por curtos períodos de tempo; Peso: 119g (incluindo cabo, plug e rótulo); Dimensões: 70x34x22mm; Plug Balanceador: JST­XH; Plug de Descarga: XT60 (esta bateria é muito potente para um plug menor).

Page 9: SISTEMA INTELI G EN TE D E N AVEG AÇÃO E L O CAL IZ …

Departamento de Engenharia Elétrica

Software 1. Lógica Fuzzy

A lógica Fuzzy tem como ideia tratar informação de maneira dinâmica atribuindo graus de pertinência a cada valor e separando os valores em conjuntos que recebemsignificados, como exemplo muito perto, perto, longe, muito longe e com cada grau diferentesregras, tomadas de decisão, são executadas. Como no exemplo do carro, estar muito longe dopróximo carro faria o condutor acelerar ou estar perto varia o condutor reduzir a velocidade ou até retroceder.

A implementação da lógica Fuzzy passa por três etapas básicas, a fuzzificação, uma conversão, dos dados recebidos em valores Fuzzy, valores entre 0 e 1 de acordo com funções que dão forma aos conjuntos e determinam o grau de pertinência do valor. Em seguida, de acordo com um grupo de regras que determinam que tipo de conjunto da entrada ativa um conjunto da saída, por exemplo, um dado de entrada que pertença ao conjunto “muito longe” ativará a saída “muito alto” para a potência do motor. Por fim, a defuzzificação converte os valores encontrados para a saída em dados discretos novamente. 2. SLAM

As aplicações da robótica fora do contexto industrial têm começado a crescer em campos como medicina, na área militar, automação doméstica. Um dos motivos dessa disparidade é a diferença entre o ambiente controlado das fábricas, onde o robô normalmente realiza um trabalho repetitivo, e os outros ambientes que são dinâmicos e imprevisíveis. Um dos maiores desafios para um robô completamente autônomo é a capacidade que este possui de localizar­se e mapear o ambiente ao seu redor. Quando existe a necessidade de executar uma tarefa, em que mover­se e interagir com o ambiente é fundamental, uma das limitações iniciais é como o robô será capaz disso sem informações prévias do ambiente? A esta tarefa é dado o nome de Localização e Mapeamento Simultâneos ou SLAM.

As aplicações do SLAM para robôs móveis buscam resolver um problema baseando­se na plataforma utilizada, os recursos disponíveis, as formas de obtenção de dados definidas pelos sensores, as tarefas a serem realizadas e um estudo sobre as informações prévias fornecidas pelo ambiente, as quais o robô poderá usar.

O problema da localização e mapeamento simultâneos, também conhecido como SLAM (Simultaneous Localization and Mapping), é um dos problemas fundamentais na robótica móvel. A problemática ocorre quando o robô não tem acesso a um mapa do ambiente em que está inserido e também não conhece a sua posição. As informações disponíveis são apenas: medições dos sensores e sinais de comando. Usualmente considera­se que o robô conhece sua posição inicial, ou que a sua posição inicial está no centro do sistema de coordenadas do mundo.

Page 10: SISTEMA INTELI G EN TE D E N AVEG AÇÃO E L O CAL IZ …

Departamento de Engenharia Elétrica

A complexidade do SLAM reside na imprecisão dos sensores e dos componentes mecânicos que formam o robô. Idealmente é possível conhecer a posição exata do robô sabendo apenas a sua posição inicial e as leituras dos encoders através da odometria. Conclusões

A partir de alguns testes realizados com o robô, concluímos que os dois motores DC responsáveis pelo seu deslocamento não estavam rotacionando da mesma forma. Para solucionar esse problema, foram utilizados dois Encoders, um em cada motor, para medir a rotação angular de cada um para garantir o movimentos assíncrono e preciso deles.

Concluímos também que para que o sensor Lidar tivesse um bom funcionamento, foi necessário utilizar duas portas USB`s para fornecer uma tensão adequada a esse dispositivo e além disso, será necessario o uso de uma biblioteca especial chamada PWMRasp para que seja ativada as duas portas PWM do Raspberry Pi. Referências [1] Ferrer, Rafael Forcada. Implementación de Algoritmo SLAM Basado EN Sensor Láser HOKUYO 04LX ­ UG01. Trabajo Fin de Grado en Ingeniería en Tecnologías Industriales, UPV, 2013.

[2] hackaday, how to use lidar with the raspberry pi. Disponível em: <http://hackaday.com/2016/01/22/how­to­use­lidar­with­the­raspberry­pi/>. Acesso em 20 de maio de 2016.

[3] Ulrich, Jonathan; Watson, Andrew. Pidar: 3D Laser Range Finder. Robotics Club at the University of Central Florida, UCF, 2002.