ROBÔ AUTÔNOMO COM CONTROLE DE VELOCIDADE BASEADO EM LÓGICA FUZZY
Por: ghbcardoso • 19/9/2019 • Artigo • 2.529 Palavras (11 Páginas) • 233 Visualizações
[pic 2]
ROBÔ AUTÔNOMO COM CONTROLE DE VELOCIDADE BASEADO EM LÓGICA FUZZY
Yuri G. Ribeiro1, Marcos O. Miquelin1, Gustavo H. B. Cardoso1, Carlos Roberto da S. Junior 1,
yuritos12@gmail.com, marcos.m.mozar@gmail.com, ghbcardoso@gmail.com, carlos.junior@ifg.edu.br
1 Instituto Federal de Educação, Ciência e Tecnologia de Goiás – Câmpus Goiânia
Departamento de Áreas Acadêmicas IV
Bacharelado em Engenharia Elétrica
Categoria: ARTIGO SUPERIOR / MULTIMÍDIA
Resumo: Esse artigo a apresenta a implementação do controle de velocidade de um robô móvel baseado em Lógica Fuzzy. O robô foi configurado com sensor tipo ultrassom e a partir deste, deverá “perceber” o ambiente no qual está inserido, desviando -se de possíveis obstáculos, dinâmicos e estáticos, que venha a encontrar, independente do ambiente que estiver navegando e, por intermédio do controle Fuzzy, deverá realizar o controle de velocidade. O robô foi projetado utilizando uma placa Arduino como microcontrolador, programado em C++ e tem como base na implementação da Lógica Fuzzy a biblioteca eFLL
Palavras Chaves: Lógica Fuzzy; Robô Autônomo; Sensor Ultrassônico; Arduino; C++; eFLL.
Abstract: This paper presents the implementation of the speed control of a mobile robot based on Fuzzy Logic. The robot has been configured with an ultrasonic sensor and from this, it must "perceive" the environment in which it is inserted, avoiding possible dynamic and static obstacles that it finds, regardless of the environment that is navigating and, through of the Fuzzy control, perform the speed control. The robot was designed using an Arduino board as microcontroller and programmed in C ++ and it has as bases on the implementation of the Fuzzy Logic the eFLL library.
Keywords: Fuzzy Logic, Autonomous Robot, Ultrassonic Sensor, Arduino, C++, eFLL.
Introdução
Com o avanço da robótica surgiram diversos tipos de robôs com formas, funções e ambientes de atuação distintos.
Atualmente as aplicações em robótica são as mais variadas possíveis, os robôs móveis, além das aplicações industriais com plataformas para movimentação de carga, possuem grande atuação na área de petróleo, para inspeção de dutos e atividades relacionadas a lançamento de linhas. Outra aplicação da robótica móvel que vem se popularizando é no auxílio nas tarefas domésticas com robôs que são capazes de exercer atividades como limpeza de piscinas, chão e cortar grama de maneira autônoma. (LEITE, 2013).
Além do mais, a demanda está aumentando a cada dia que passa para novos eletrodomésticos capazes de tornar até mesmo os trabalhos mais entediantes suportáveis, como passar roupa ou limpeza em geral. Em um mundo ideal, os aparelhos domésticos do mundo atual podem ser substituídos por novos aparelhos com capacidade de realizar tarefas de maneira totalmente independente, que é o lugar onde conceitos como domótica e robôs domésticos entram. (MARURI et al., 2006)
Visto as diversas e interessantes aplicações dos robôs móveis este trabalho teve por objetivo desenvolver um sistema de controle de velocidade usando lógica Fuzzy para robô móvel, este pode servir de base para várias aplicações com as crescentes demandas observadas anteriormente.
LÓGICA FUZZY
A lógica fuzzy foi introduzida nos meios científicos em 1965 por Lofti Asker Zadeh, com o objetivo de fornecer meios para modelar o modo aproximado de raciocínio, tentando imitar a habilidade humana de tomar decisões racionais em um ambiente de incerteza e imprecisão. Ela difere da característica binária da lógica clássica, na qual um valor pertence ou não a um conjunto: o valor passa a ter um grau de compatibilidade que varia de 0 a 1. Dessa maneira, uma variável pode pertencer a mais de um conjunto fuzzy com diferentes graus de compatibilidade (ou graus de pertinência).
As chamadas variáveis linguísticas são variáveis cujos valores são nomes de conjuntos fuzzy. Um exemplo disso é a velocidade de rotação de um motor em um determinado processo, em que pode ser uma variável linguística assumindo valores como baixo, médio e alto. Tais valores descrevem conjuntos fuzzy representados por funções de pertinência, conforme a figura 1.
Figura 1 – Funções de Pertinência[pic 3]
Sua principal função é fornecer uma maneira sistemática de aproximação de fenômenos complexos ou mal definidos. As funções de pertinência descrevem a distribuição dos valores pertencentes a um dado conjunto fuzzy, podendo ter diferentes formas dependendo do conceito e das características do problema que se deseja retratar. As formas mais comumente utilizadas para a área de controle são triangulares, trapezoidais e gaussianas.
O tratamento de problemas por meio dessas variáveis, nos permite modelar de maneira mais simples problemas complexos de serem modelados por meio das técnicas matemáticas convencionais. Em aplicações que buscam se assemelhar a tomada de decisão de operadores humanos, a Lógica Fuzzy se prova muito útil, tomando decisões, decisões complexas baseadas em informações de caráter impreciso e vago, pois ela consegue tratar os modos imprecisos do raciocínio.
Controle é apenas uma das diversas aplicações da Lógica Fuzzy, que ocorrem por meio de um sistema de inferência fuzzy. Este sistema está descrito na figura 2.[pic 4]
Figura 2 – Sistema de Inferência Fuzzy
Para aplicações de controle, as variáveis de entrada normalmente são fornecidas a partir da leitura de sensores. Para que essas variáveis possam ser tratadas no Sistema Fuzzy, elas devem passar por um processo conhecido como fuzzificação. Este processo consiste em transformar uma variável precisa em uma variável fuzzy. Fazemos isso verificando o grau de pertinência do valor preciso aos conjuntos fuzzy que representam as variáveis de entrada. Estes conjuntos são modelados por suas respectivas funções de pertinência.
A etapa da inferência fuzzy, também chamada lógica de tomada de decisão, é onde são avaliados os termos primários das variáveis de entrada aplicando as regras de produção e atribuindo respostas ao processamento. O procedimento de inferência é responsável por processar os dados fuzzy de entrada juntamente com as regras, de modo a inferir as contribuições na saída fuzzy do sistema de inferência.
O valor da saída precisa variar de acordo com o método escolhido, portanto é necessário avaliar qual método representa melhor a natureza do problema que está sendo avaliado.
...