• Nenhum resultado encontrado

Área de Robótica

N/A
N/A
Protected

Academic year: 2023

Share "Área de Robótica "

Copied!
76
0
0

Texto

Este projeto desenvolveu um software de alto nível para que um robô pudesse se movimentar de forma autônoma para patrulhar grandes áreas, como prédios, indústrias, fazendas, etc. O Ofro”, que foi utilizado na Copa do Mundo da Alemanha, conseguiu avançar por difíceis terreno, suba escadas e detecte explosivos, armas e pessoas.

PROBLEMATIZAÇÃO

OBJETIVOS

Objetivo Geral

Objetivos Específicos

METODOLOGIA

ESTRUTURA DO TRABALHO

ROBÓTICA

Definições

Máquinas automáticas são aquelas cuja energia provém de uma fonte externa, por exemplo energia elétrica, térmica, etc. As máquinas automáticas também podem ser classificadas de diferentes maneiras, de acordo com o tipo de energia, características construtivas, peso e tamanho.

Tipos de robôs

A terceira classe são as máquinas-ferramentas, ou robôs cuja finalidade é processar determinada matéria-prima, aumentando seu valor agregado, como os robôs de soldagem (PAZOS, 2002). Existem também robôs que não se enquadram nas classificações anteriores, como robôs de uso geral.

Mapeamento espacial

As funções potenciais podem ser vistas como paisagens onde os robôs se movem de locais de “alto valor” para locais de baixo valor, conforme ilustrado na Figura 3. As rotas locais podem ser armazenadas no roteiro, mas isso aumentaria os requisitos de armazenamento do roteiro.

Figura 2. Representação da trajetória do robô  Fonte: Choset et al. (2005).
Figura 2. Representação da trajetória do robô Fonte: Choset et al. (2005).

AUTOMAÇÃO E CONTROLE DE SISTEMAS

  • Controladores
  • Sensores
  • Atuadores
  • Sistemas Embarcados

Os principais sensores de temperatura são: (i) par bimetálico; (ii) sensores de resistência elétrica; (iii) termistores; (iv) junções semicondutoras; (v) termopares ou termopares. Sensores de posição são usados ​​para determinar a posição de um objeto em relação ao dispositivo.

Figura 5. Sensor ótico de barreira  Fonte: Pazzos (2002).
Figura 5. Sensor ótico de barreira Fonte: Pazzos (2002).

SIMULADORES DE ROBÔS

Simulador Khepera

Sistemas embarcados, de acordo com Wayne Wolf (2001), são definidos como “qualquer dispositivo que inclua um computador programável, mas não seja ele próprio um computador de uso geral”. Hoje, os sistemas embarcados podem ser encontrados em quase todas as áreas da atividade humana, como aeronaves, indústria, celulares, impressoras, eletrodomésticos, etc. um robô também é um sistema embarcado e, portanto, seu desenvolvimento deve seguir algum método de desenvolvimento de sistema embarcado.

O simulador já possui diversos ambientes de simulação disponíveis em seus diretórios que podem ser utilizados para executar simulações. O robô móvel simulado pelo simulador Khepera possui oito sensores infravermelhos para detectar objetos e medir os níveis de luz ambiente.

Figura 6. Tela do Simulador Khepera  Fonte: Michel (1997).
Figura 6. Tela do Simulador Khepera Fonte: Michel (1997).

Robocode

Robôs comuns executam apenas uma coisa por vez, mas é possível criar robôs mais avançados nos quais ações assíncronas são definidas e executadas e continuam a ser executadas em paralelo com outras ações possíveis. Existe também a possibilidade de criação de uma equipe de bots colaborativa, na qual os bots podem trocar mensagens entre si utilizando os métodos de transmissão Message (msg serializável) e onMessageReceived (MessageEvent).

Simulador Simbad

O pacote Simbad possui um simulador de robô móvel com modelagem complexa de cenas 3D (simbad), uma biblioteca de redes neurais (NN feed-forward, NN recorrente), bem como uma biblioteca completa de algoritmos evolutivos (algoritmo genético, estratégia evolutiva, programação genética com árvores ou gráficos). Simbad está disponível no site http://simbad.sourceforge.ner/ sob os termos da GLP (GNU General Public License) e requer a plataforma Java (versão 1.4.2 ou posterior) e Sun Java 3D (versão 1.3.1 ou superior). Após instalar e configurar o Java de acordo com o sistema operacional e instalar o Java 3D, basta executar o comando java –jar simbad-[versão].bin.jar para rodar o simulador (SIMBAD, 2007).

Esses recursos não estão presentes no Simulador Khepera, pois requer sistema operacional Unix; Seu código-fonte não está disponível, não sendo possível adaptá-lo a outros tipos de robôs ou incluir novas funções, estando necessariamente vinculado ao próprio robô Khepera. Isso motivou a escolha do Simbad Simulator, que possui as mesmas funcionalidades do Robocode, mas possui recursos avançados para simular o ambiente utilizando a plataforma Java 3D e um maior número de sensores disponíveis em sua biblioteca.

Figura 9. Interface do simulador Simbad  Fonte: Hugues e Bredeche (2006)
Figura 9. Interface do simulador Simbad Fonte: Hugues e Bredeche (2006)

TEORIA DOS GRAFOS

  • Definições
  • Representação para Grafos
  • Tipos de Grafos
  • Caminhamento em Grafos
  • Caminho Crítico

Uma grade produz um gráfico onde cada vértice corresponde a um pixel e uma aresta conecta um vértice aos pixels vizinhos. Um grafo G (V,E) é dito conectado se existir pelo menos uma cadeia conectando cada par de vértices deste grafo, conforme mostra a Figura 11 (MARIANI, 2007). Um grafo desconectado G (V,E) é formado por pelo menos dois subgrafos conectados, disjuntos em relação aos vértices e máximos em relação à inclusão.

Um grafo disjunto G (V,E) é formado por pelo menos dois subgrafos conectados, disjuntos em relação aos vértices e máximos em relação à inclusão. Em um grafo G (V, E), que não é fortemente conectado, ele é formado por pelo menos dois subgrafos fortemente conectados, disjuntos em relação aos vértices e máximos em relação à inclusão.

Figura 10. Grafo dirigido (à esquerda) e não dirigido (à direita)   Fonte: Choset et al
Figura 10. Grafo dirigido (à esquerda) e não dirigido (à direita) Fonte: Choset et al

LÓGICA NEBULOSA

O controle desses projetos pode ser feito através do PERT (Program Evaluation and Review Technique), que leva em consideração o risco de não concluir as diversas atividades no prazo ou de nenhuma forma (RABUSQUE, 1992). Segundo Silva (2003), algumas vantagens da utilização deste tipo de abordagem são: (i) conjuntos fuzzy podem ser construídos de forma muito mais intuitiva e natural sem conhecimento matemático completo do sistema em questão; (ii) trabalhar com informações imprecisas; (iii) uma solução pode ser alcançada por diferentes caminhos; (iv) é mais robusto, pois a falta de regras não torna necessariamente o resultado impossível. Além disso, destaca também, no caso dos controles automáticos, as seguintes vantagens: (i) ajustes podem ser feitos tanto nos conjuntos quanto nas funções relevantes (ajustes finos); (ii) a transição entre um nível de produção e outro é gradual e suave; (iii) apresentar bons resultados em processos não lineares, entradas irregulares e restrições conflitantes; (iv) mudanças futuras podem ser facilitadas alterando as regras do sistema fuzzy. i) dificuldades em desenvolver um modelo a partir de um modelo fuzzy; (ii) não existe uma definição matemática precisa como em outros sistemas.

De acordo com Lopes (1999), os especialistas podem expressar até os sistemas mais complexos na forma de regras suaves e verificações de adequação. A lógica fuzzy tenta aumentar essa precisão com um algoritmo baseado na experiência do operador humano e utilizando um conjunto de regras linguísticas para descrever a estratégia de controle a ser utilizada.

TRABALHOS RELACIONADOS

Possui também um sistema de navegação completo, incluindo sensores laser, sonar, codificadores no eixo, sensores de colisão e sistemas de correção giroscópica. Para perceber a localização dos robôs autônomos, uma das soluções mais fáceis é a utilização do GPS (Global Positioning System), através do qual pode ser obtida a posição absoluta do robô em relação à Terra. Já a bússola digital é uma alternativa mais acessível, mas, no entanto, por si só não permite a criação de um sistema de orientação, pois fornece apenas informações de azimute e é sensível a interferências externas.

Outra solução utilizada pelos pesquisadores é a utilização de um sistema de visão computacional, que consiste em uma câmera digital que capta imagens do ambiente e as envia para um computador que as analisa, que determina a posição do robô e de outros objetos estranhos ao ambiente. por radiofrequência. Com ele é possível criar um mapa virtual da localização do robô e encontrar obstáculos a serem superados.

PROJETO

  • Análise de Requisitos
  • Especificação dos Requisitos Funcionais
  • Arquitetura do Sistema
  • Modelagem UML
    • Diagrama de Componentes
    • Diagrama de Caso de Uso
    • Diagrama de Classes
    • Diagrama de Seqüência
  • Controlador Fuzzy

A Figura 23 ilustra a classe Strategist e sua interação com as classes Route Planner, Communication Engine e Fuzzy Controller. O Planejador de Rota aciona então o mecanismo de locomoção que processa as coordenadas recebidas e aciona os Atuadores, que movimentam o robô. O Estrategista pode optar por enviar ou receber uma mensagem, para enviar o Estrategista ativa o Mecanismo de Comunicação e envia uma mensagem para ele, que pega essa mensagem e salva em um arquivo de texto.

Para receber mensagens, o estrategista verifica junto ao mecanismo de comunicação se há mensagem, que então lê o arquivo de texto e processa essas informações e devolve a mensagem para. Se DISTÂNCIA for MÉDIA e VELOCIDADE BAIXA, retorne “ACCELERATE”; e se DISTÂNCIA for MÉDIA e VELOCIDADE for alta, você retorna “FREIO”.

Figura 18. Estrutura de Camadas de Software
Figura 18. Estrutura de Camadas de Software

IMPLEMENTAÇÃO

Execução do Sistema

  • Testes de validações

A Figura 29 ilustra o log obtido quando o robô verifica uma variação muito grande no ambiente, já que por exemplo neste caso capturou pequenos valores nos sensores. Este valor é então passado para o Controlador Fuzzy, que realiza os cálculos e retorna a ação Check, para que o robô possa verificar o motivo de tal variação e, como no caso anterior, o Estrategista então chama o Planejador de Rota, que é responsável para levar o robô ao local. Onde, (i) a primeira tela ilustra o ambiente visto pelo robô através dos sensores; (ii) a segunda tela mostra o robô em sua posição inicial; (iii) a terceira tela mostra o momento em que o robô encontra uma parede e muda sua trajetória; (iv) a quarta tela ilustra o movimento do robô após evitar a parede; v) a quinta tela mostra o momento em que o robô identifica o tipo de terreno como água; vi) a sexta tela mostra o momento em que o robô evita a água; (vii) a sétima tela mostra o momento em que o robô encontra uma inclinação no terreno que não consegue superar; e (viii) a oitava tela, ilustrando o momento em que o robô evita o buraco.

A Figura 32 mostra o robô quando encontra uma mudança no ambiente e comunica essa mudança ao centro de controle. Portanto (i) a primeira tela mostra o robô em seu estado inicial; ii) a segunda tela ilustra o momento em que o robô encontra uma parede e a evita indo na direção oposta; (iii) a terceira tela mostra o momento em que é detectada uma alteração no ambiente durante o patrulhamento através do sensor de temperatura, que determina que a temperatura naquele local está muito elevada e envia uma mensagem para informar a central sobre a alteração detectada no ambiente . ; ; (iv) a quarta tela ilustra o momento em que a Central confirma o recebimento da mensagem enviada pelo robô; (v) a quinta tela mostra o momento em que o robô sai do local para manter sua integridade. Onde (i) a primeira tela mostra o robô na posição inicial; (ii) a segunda tela mostra o robô patrulhando o entorno; (iii) a terceira tela mostra o momento em que o robô recebe uma mensagem da central de controle comandando-o para se deslocar até determinado ponto; (iv) a quarta tela mostra o robô confirmando o recebimento.

Portanto (i) a primeira tela mostra o robô em seu estado inicial; (ii) a segunda tela mostra o robô durante o patrulhamento; (iii) a terceira tela mostra o momento em que o robô detecta a presença de outro robô e o identifica como central e que tem permissão para estar naquele setor; (iv) a quarta tela mostra o momento em que o robô retorna ao patrulhamento; (v) a quinta tela ilustra o momento em que o robô encontra um intruso; vi) a sexta tela ilustra o momento em que o robô envia uma mensagem ao centro de controle sobre a presença de um intruso; (vii) a sétima tela mostra o momento em que a central confirma o recebimento da mensagem; (viii) a oitava tela mostra o robô retornando para patrulhar; (ix) a nona tela ilustra o momento em que o robô encontra um funcionário da empresa e, ao ser identificado, verifica se ele não possui autorização de permanência neste setor; (x) a décima tela mostra o momento em que o robô envia uma mensagem sobre sua presença para o painel de controle; (xi) a décima primeira tela mostra a central confirmando o recebimento da mensagem.

Figura 28. Log obtido quando Robô detecta obstáculo próximo
Figura 28. Log obtido quando Robô detecta obstáculo próximo

Imagem

Figura 1. Possível classificação para máquinas   Fonte: Silva (2003).
Figura 2. Representação da trajetória do robô  Fonte: Choset et al. (2005).
Figura  3.  Propagação  do  algoritmo  do brushfire  com  conexão de oito – ponto
Figura  4.  Diferentes  formas  de  representar  um  ambiente:  topológica,  geométrica e grades
+7

Referências

Documentos relacionados

Conclusões O ambiente educacional utilizado no curso de graduação em Engenharia Química com ênfase em Operação Petroquímica a distância da PUCRS, mostrou-se adequado para o ensino a