AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura...

38
CAPÍTULO 11 TENDÊNCIAS E APLICAÇÕES ESPECIAIS Alberto José Álvares, Sérgio Roberto Gonsalves Tourino Teodiano Freire Bastos Filho, Hansjorg Andreas Schneebeli 11.1 - TELEOPERAÇÃO VIA INTERNET DE SISTEMAS ROBÓTICOS 11.1.1 - Definição Clássica de Sistemas de Teleoperação A Teleoperação é definida como o controle contínuo e direto de um teleoperador/teleoperator. Teleoperador é um manipulador que requer comandos ou supervisão de um operador humano remoto (Nof, 1999). Telepresença refere-se à intensa utilização de realimentação sensorial para a teleoperação, fornecendo realismo para o operador em uma abordagem idealizada de “presença à distância”. Telerobótica amplia o domínio do manipulador em um contexto de controle compartilhado pela máquina e pelo operador humano. Um sistema Teleoperador/Teleoperator (NOF, 1999) consiste de uma unidade remota (manipulador), uma unidade de comando para entrada dos comandos do operador (interface homem/máquina) e um canal de comunicação como elo de ligação da unidade de comando com a unidade remota. Inicialmente desenvolvida para a manipulação de materiais radioativos, a teleoperação permite que um operador exerça força e realize movimentos sobre uma máquina remota, e ainda receba realimentação sensorial, geralmente através de dados visuais, sonoros ou táteis. Com a introdução da tecnologia de teleoperação, foi possível o desenvolvimento de interfaces capazes de prover uma interação satisfatória entre homem e máquina, permitindo que serviços de grande destreza fossem realizados. Foram propostos um grande número de sistemas de classificação para descrever a teleoperação. Um desses categoriza os sistemas de teleoperação tomando como base o grau de automação do sistema. Em um espectro variando da mínima para a máxima autonomia, a teleoperação pode ser classificada como (ZHAI, 1991): controle manual sem auxílio computacional; controle manual com significativo auxílio ou transformação computacional; controle supervisório com predomínio do controle realizado pelo operador humano; controle supervisório com predomínio do controle realizado pelo computador; controle completamente automático, onde os operadores humanos observam o processo sem intervenções.

Transcript of AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura...

Page 1: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

CAPÍTULO 11

TENDÊNCIAS E APLICAÇÕES ESPECIAIS

Alberto José Álvares, Sérgio Roberto Gonsalves Tourino

Teodiano Freire Bastos Filho, Hansjorg Andreas Schneebeli

11.1 - TELEOPERAÇÃO VIA INTERNET DE SISTEMAS ROBÓTICOS

11.1.1 - Definição Clássica de Sistemas de Teleoperação A Teleoperação é definida como o controle contínuo e direto de um teleoperador/teleoperator.

Teleoperador é um manipulador que requer comandos ou supervisão de um operador humano remoto (Nof, 1999). Telepresença refere-se à intensa utilização de realimentação sensorial para a teleoperação, fornecendo realismo para o operador em uma abordagem idealizada de “presença à distância”. Telerobótica amplia o domínio do manipulador em um contexto de controle compartilhado pela máquina e pelo operador humano.

Um sistema Teleoperador/Teleoperator (NOF, 1999) consiste de uma unidade remota (manipulador), uma unidade de comando para entrada dos comandos do operador (interface homem/máquina) e um canal de comunicação como elo de ligação da unidade de comando com a unidade remota.

Inicialmente desenvolvida para a manipulação de materiais radioativos, a teleoperação permite que um operador exerça força e realize movimentos sobre uma máquina remota, e ainda receba realimentação sensorial, geralmente através de dados visuais, sonoros ou táteis. Com a introdução da tecnologia de teleoperação, foi possível o desenvolvimento de interfaces capazes de prover uma interação satisfatória entre homem e máquina, permitindo que serviços de grande destreza fossem realizados.

Foram propostos um grande número de sistemas de classificação para descrever a teleoperação. Um desses categoriza os sistemas de teleoperação tomando como base o grau de automação do sistema. Em um espectro variando da mínima para a máxima autonomia, a teleoperação pode ser classificada como (ZHAI, 1991):

• controle manual sem auxílio computacional; • controle manual com significativo auxílio ou transformação computacional; • controle supervisório com predomínio do controle realizado pelo operador humano; • controle supervisório com predomínio do controle realizado pelo computador; • controle completamente automático, onde os operadores humanos observam o

processo sem intervenções.

Page 2: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

11.1.2 - Modelos de Interação Homem-máquina A teleoperação requer a sinergia entre homem e máquina. Diversos modelos relacionam esta

interface, sendo os seguintes os tipos principais (ZHAI, 1992): a) Modelo Mestre-Escravo

Este modelo descreve o mais tradicional sistema de teleoperação. Neste caso, o operador humano observa o ambiente de trabalho remoto através de um sistema de vídeo e manipula o braço robótico mestre por meio de um ``console'', que controla o braço escravo no local remoto. A estrutura mestre-escravo provê uma interface intuitiva para o controle remoto de sistemas. Embora esse modelo esteja muito evoluído, com o uso de vídeos estéreis e realimentação de força, a maior desvantagem desse sistema é a sua falta de destreza e o cansaço físico que impõe ao operador. b) Modelo de Telepresença

Em um esforço de alcançar uma alta fidelidade nos canais de comunicação entre o mestre e escravo do modelo anterior, foram desenvolvidos sistemas antropomórficos para teleoperação, de forma a oferecer uma melhor forma de transmissão das capacidades humanas de solução de problemas e de manipulação em ambientes hostis. Com a meta de prover um sistema transparente de interface homem-máquina, os sistemas de telepresença utilizam-se de “displays'' montados na cabeça, sensores de movimento montados no corpo do operador, realimentação de força, entre outras tecnologias. A meta final desses sistemas é fazer o operador sentir-se presente no local de trabalho remoto, obtendo-se assim melhores condições de realização de tarefas. O custo técnico da implementação de tais sistemas, entretanto, não é justificado. O cansaço provocado ao operador devido ao volume e peso do equipamento, e ainda a falta de necessidade de um sistema de telepresença, reduzem o uso desse modelo principalmente à pesquisa e não para utilizações práticas. c) Modelo Professor-Aluno

Dado que o aprendizado de sistemas computacionais é uma das áreas mais difíceis na inteligência artificial, o modelo professor-aluno define como função de professor ao operador humano, e assume que o ``aluno'' robô possui inteligência suficiente para reconhecer e atuar em uma situação já aprendida. Embora essas tecnologias ainda devam ser desenvolvidas e integradas para realizar esse modelo, as vantagens potenciais oferecidas por este conceito, em termos de conforto e efetividade, são substanciais. d) Modelo Supervisor-Companheiro

De acordo com esse modelo, um robô baseado em sensores não deve simplesmente repetir os movimentos do operador humano, como no modelo mestre-escravo. Neste caso, o operador humano serve como um supervisor, ao invés de projetar-se no ambiente remoto. Com a companhia do operador humano, o sistema robótico incorpora capacidades computacionais, como precisão e capacidades sensoriais, para a realização das tarefas. A comunicação homem-robô pode ser facilitada com o uso de gráficos interativos, controle com vários graus de liberdade, e interfaces híbridas.

Uma vez estabelecida e efetivada a comunicação entre homem e máquina, deve-se observar a relação entre a máquina remota e seu ambiente. Dessa forma, são propostos esquemas de classificação de modelos de ambientes: e) Ambiente Remoto Totalmente Modelado

Page 3: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

Nesta categoria, os objetos sendo manipulados, o ambiente e os procedimentos operacionais são repetitivos ou variantes, mas previsíveis. No primeiro caso, um robô programável pode realizar suas tarefas com mínima intervenção humana. No último, um operador humano escolhe estratégias de ação pré-programadas, consideradas como uma linguagem de programação do sistema. f) Ambiente Remoto Parcialmente Modelado

Nesta categoria incluem-se operações em ambientes “humanos”, como plataformas espaciais ou plantas industriais, onde todos os potenciais procedimentos operacionais das tarefas não podem ser antecipados em suficientes detalhes para uma pré-programação efetiva. Nesses casos, entretanto, é possível algum conhecimento geométrico do ambiente, podendo ser modelado à priori, mesmo que as relações espaciais entre o local e seus objetos não sejam conhecidas exatamente. g) Ambiente Remoto Desconhecido

Esta categoria difere da anterior pelo fato de que pouca ou nenhuma informação sobre o ambiente e seus objetos é conhecida a priori. Exemplos desse tipo são os de robótica submarina, mineração, limpeza de resíduos nucleares e robótica militar.

11.2 - INTRODUÇÃO À TELEOPERAÇÃO VIA INTERNET DE SISTEMAS ROBÓTICOS

A TeleRobótica utilizando a Internet como link de comunicação é um novo campo de pesquisa que se desenvolve na área da Teleoperação tendo muitos grupos de pesquisa atuando nesta promissora área da Telemática (MONTEIRO et al., 1997), principalmente em função dos baixos custos de acesso à Internet. Uma das primeiras aplicações de TeleRobótica via Internet foi o sistema desenvolvido por Taylor & Trevelyan (1995) na University of Western Australia em 1994. Este sistema é constituído por um Robô Industrial sendo controlado via Interface WWW (World Wide Web), permitindo a manipulação de objetos com a utilização de uma garra. Este sistema pode ser acessado através do endereço http://telerobot.mech.uwa.edu.au. A figura 11.1 apresenta a interface com o usuário deste sistema.

A partir deste sistema, inúmeros outros foram desenvolvidos por vários grupos de pesquisa em todo o mundo. Uma lista de algumas aplicações pode ser encontrada em http://dir.yahoo.com/Computers_and_Internet/Internet/Interesting_Devices_Connected_to_the_Net/ Robots. Dentre estes, têm-se a teleoperação de Robôs Móveis (KLAUS et al., 1997 e HIRZINGER et al., 1997), WebVideo e Manipuladores (ÁLVARES & ROMARIZ, 1998 e WOLF & FREITZHEIN, 1997), Manipuladores, Televigilância (ALMEIDA et al., 1995), entre outras.

A TeleRobótica pode ser definida como sendo uma área da Telemática e da Robótica voltada à teleoperação de sistemas robóticos utilizando-se de um link de comunicação (KLAUSS et al., 1997). Uma nova terminologia está sendo empregada no caso de se utilizar a Rede de Comunicação Internet como link de telecomunicações. Neste caso, designa-se sistemas World Wide Web Robots, WebRobots ou simplesmente Internet Robots. Esta terminologia é válida para aplicações que utilizam Robôs Industriais, Manipuladores, Pan-Tilt, Máquinas de Comando Numérico e outros equipamentos industriais similares.

É desejável o controle e a monitoração de máquinas remotamente, centralizando sua supervisão, possibilitando o compartilhamento de pessoal e de recursos materiais e minimizando custos. Outra vantagem está associada à localização da aplicação que poderá estar na mesma planta industrial ou mesmo em outro país ou continente, possibilitando a conexão e a utilização dos serviços disponibilizados através da Rede de Comunicação Internet.

Page 4: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

A utilização da Internet como link de telecomunicações, na TeleRobótica, possibilita a diminuição de custos de comunicação, viabilizando aplicações voltadas ao suporte técnico, à manutenção e reparos, controle de máquinas e robôs em locais que anteriormente eram inviáveis economicamente. Aplicações típicas de teleoperação no passado incluíam ambientes hostis (deserto, espaço, águas profundas, entre outros) e trabalhos tediosos (inspeção de oleodutos, ferrovias, etc.).

Figura 11.1 - TeleRobot: robô ASEA IRB controlado via Internet Atualmente, com links de comunicação via Internet, Modem e/ou Rádio pode-se estabelecer

uma conexão de qualquer parte do mundo a um Computador Servidor de Tarefas Industriais que pode disponibilizar uma série de serviços para a aplicação em questão.

Plantas industriais, portanto, podem ser monitoradas e supervisionadas remotamente a um custo extremamente baixo (MONTEIRO et al., 1997). Tarefas típicas como telediagnóstico de mal-funcionamento e telemanutenção podem ser executadas diretamente do escritório do fornecedor ou mesmo de outra filial/matriz da empresa situada a milhares de quilômetros. 11.3 - METODOLOGIA: SISTEMAS TELEOPERADOS VIA INTERNET

Sistemas teleoperados remotamente necessitam de dados e/ou imagens do objeto de controle, bem como da transmissão de comandos através de um link de comunicação, que neste caso é baseado em conexão via Rede de Comunicação (WOLF et al., 1997), através do Protocolo Internet (IP).

A metodologia proposta, implementada e testada para TeleRobótica utilizando a Internet como link de comunicação é baseada na Arquitetura Cliente/Servidor utilizando o Protocolo HTTP (Hypertext Transfer Protocol) através de um Servidor WWW convencional (CERN, NCSA ou APACHE) que disponibiliza uma interface multimídia. Esta pode ser acessada através de um Cliente WWW (browser) como o Netscape, Arena ou Internet Explorer (ECKEL & HARE, 1995). A arquitetura proposta do sistema é apresentada na figura 11.2.

Como exemplos de equipamentos teleoperados têm-se: manipuladores com vários graus de liberdade; câmeras de vídeo, pan-tilt, robôs industriais, robôs móvel, máquinas de soldagem, máquinas de comando numérico, controladores lógicos programáveis, brinquedos; entre outros.

Page 5: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

Estes equipamentos são conectados ao servidor WWW, normalmente, através de uma interface serial, paralela, proprietária ou mesmo, via Rede Local de Comunicação Ethernet. O Browser WWW conecta-se ao Servidor WWW através do protocolo TCP/IP (Transport Control Protocol/Internet Protocol) podendo utilizar ligação discada (115 kbps) ou uma linha dedicada T1 ou T3 a 1,4 Mbps e 45 Mbps, respectivamente.

R o b ôE q u ip a m e n t oT e le o p e r a d o

S e r v i d o rW W W

B r o w s e rW W W

N e t s c a p e

R e t o r n a S t a t u se /o u I m a g e m

R e t o r n a S t a t u se /o u I m a g e m

A ç ã o d eC o n t r o le

S o li c i t aS e r v iç o s

Figura 11.2 - Arquitetura para teleoperação O cliente interage com o Servidor WWW utilizando a linguagem de programação HTML

(Hypertext Markup Language). Os dados enviados ou solicitados pelo cliente utilizam o mecanismo de solicitação/resposta do Protocolo HTTP, disponibilizado pelo servidor. Os dados solicitados/enviados pelo usuário são codificados em URI/URL (Universal Resource Identifier/Uniform Resource Locator) e enviados para o Servidor HTTP. 11.3.1 - Ambiente WWW

O servidor extrai as informações da URI, mais especificamente da URL, processa-as e retorna uma resposta HTTP. Uma URL é um subset de uma URI, sendo esta o endereço de um arquivo acessado via Internet (http://www.whatis.com/url.htm). A figura 11.3 apresenta este mecanismo.

ClienteWWW

ServidorWWW

O CLIENTE solicita umaURL ao SERVIDOR

O CLIENTEformata eapresenta ainformaçãorecebida

CGI OutrosProgramas

A URLsolicitad a é umCGI e oSERVIDORexecuta o CGI

O CGI trabalhachamando outrosprogramas

Figura 11.3 - Servidor HTTP (Otsuka, 1996)

O Servidor HTTP utiliza-se de um recurso muito poderoso chamado CGI (Commom Gateway Interface). Através desta extensão do HTTP (ECKEL & HARE,1997) é possível executar um programa em “C” ou Perl, ou em outra linguagem ou script, para realizar uma determinada tarefa. Por exemplo, pode-se executar um programa compilado especialmente para ser utilizado em um Servidor WWW, que controla o acionamento de um motor de passo através da conexão a um drive de potência do motor à interface paralela do servidor (ÁLVARES & ROMARIZ, 1998). A

Page 6: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

figura 11.4 apresenta o mecanismo CGI, onde a URI aponta para o programa executável. A figura 11.5 apresenta uma parte do código fonte deste programa em linguagem “C” para controlar o acionamento de um motor de passo.

HTTP Server

Sistema deArquivos

HTTPSolicita

HTTPResposta

HTTPSolicita

HTTPResposta

Servidor HTTP

CGIServidor de Controle

Figura 11.4 - Servidor HTTP e CGI.

Program a pm p.c#include <stdio.h>#include "interfac.C"#include "m otor.C"#include <string.h>#include <stdlib.h>char nom e[80] = "esquerda.m ot";void Le_com anda (void){int inteiro;float real;F ILE *arquivo;char com ando[5],param etro [5];c lass Motor M; if ((arquivo = fopen (nom e,"rt")) == NULL) { puts ("Arquivo nao existe.”); exit (0);} while (fscanf (arquivo,"% s",&com ando) > 0) { if (s trcm p (com ando,"S ") == 0) { fscanf (arquivo,"% s",&param etro); inteiro = atoi (param etro); M .set (inteiro);} if (s trcm p (com ando,"P ") == 0) { fscanf (arquivo,"% s",&param etro); real = atof (param etro); M .precision (real);} if (s trcm p (com ando,"D") == 0) { fscanf (arquivo,"% s",&param etro); inteiro = atoi (param etro); M .delay (inteiro);}int m ain (int argc,char *argv []){ printf("Content -type: text/htm l\n\n"); printf("<htm l><title>Controle de m otor de passo</title>\n"); printf("<body bgcolor=\"#BBB111 \" text=\" ffffff\"><body>\n "); printf("<h1><center>Posic ionam ento Efetuado. De o Com ando BAC K paravoltar a pagina de controle<h1></htm l>\n"); printf("<a href=\"http ://graco.unb .br/robwebcam _m enu.htm l\"T arget=\"MENU\">\n"); printf("<b>Back Joystick</b></a></center></htm l>\n");

Le_comanda ();}

Figura 11.5 - Programa CGI em “C ++” (pmp.c) para acionamento de motor de passo via interface paralela utilizado no sistema RobWebCam (ÁLVARES & ROMARIZ, 1998).

Page 7: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

11.3.2 - Servidor WWW: servidor WebCam e servidor de teleserviços industriais (WebRobot)

O Servidor HTTP (WWW) deve, preferencialmente, ser baseado em plataforma Unix o que possibilita maior robustez, flexibilidade, modularidade e até mesmo a necessidade de máquinas com menor capacidade de processamento, quando comparado ao ambiente Windows NT.

O Sistema Operacional Linux em plataforma PC (Personal Computer) é uma opção extremamente atraente satisfazendo todos os requisitos das aplicações de teleserviços para teleoperação de Robôs.

Neste contexto, o Servidor HTTP deve disponibilizar dois tipos de serviços básicos, que estão respresentados na figura 11.6 através de dois módulos:

. WebCam: Visualização do objeto teleoperado, através de vídeo e/ou imagem;

. WebRobot: Disponibilização de funções de controle remoto do objeto teleoperado. • Servidor WebCam: visualização do objeto teleoperado: Este módulo é responsável pela captura de imagens através de câmeras CCD (Charge Coupled Device) utilizando-se da tecnologia WebCam (Álvares & Romariz, 1998) ou WebVideo (WOLF & FROITZHEIM, 1997).

Imagens estáticas podem ser adquiridas em vários formatos como GIF (Graphics Interchaning Format) e JPEG (Joint Photographic Experts Group). O formato preferido devido à compressão de dados obtida é o JPEG.

Imagens dinâmicas, no formato de vídeo digital, podem ser utilizadas com ou sem compressão de dados. Entre os padrões utilizados têm-se o MPEG (Moving Picture Experts Group), UYVY, RealVideo, M-JPEG (seqüência de imagens JPEG), CellB (Cell) e CuSee-Me, entre outros (SUN, 1994), (CONNECTIX, 1996). O sistema de vídeo (placa de captura mais software) deve capturar, digitalizar e comprimir um sinal de vídeo NTSC ou PAL não modularizado (composto ou S-Vídeo). O vídeo comprimido pode então ser armazenado em disco e/ou transmitido via rede para o cliente em um determinado padrão de compressão.

EQUIPAMENTOS – Robô e Câmera

Controle Dados, Status, Vídeo

SolicitaServiço

Programas CGITeleoperação

VídeoStatus

CGI – ProgramasServidor

WebRobot

CGI – ProgramasServidorWebCam

ServiçosTeleoperação

Realimentação:Vídeo e Texto

BrowserWWW

Figura 11.6 - Servidor HTTP: módulos WebCam e WebRobot. No caso de se utilizar seqüência de imagens JPEG, a taxa de compressão é muito baixa

quando comparada com a MPEG ou RealVideo. A principal vantagem é que se pode enviar as imagens de vídeo utilizando o mecanismo server-push do Servidor HTTP diretamente para o

Page 8: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

cliente WWW, como o Netscape, sem a necessidade de se utilizar um software especial ou um plugin para receber o formato de vídeo (OTSUKA, 1996).

Para utilizar a compressão é necessário um software específico (plugin) que deverá ser instalado pelo cliente e ajustado ao ambiente para receber imagens no formato especificado, normalmente, MPEG ou RealVideo (MELCHIORS, 1996).

Com relação ao hardware para captura de imagens pode-se utilizar: câmeras de vídeo (NTSC ou PAL) conectadas a uma placa para frame grabber (SUN, 1994); ou câmeras com placa para captura de imagens com CCD utilizando a interface paralela como entrada de vídeo para o micro-computador, como no caso da QuickCam (CONNECTIX, 1996). A grande desvantagem da utilização deste hardware esta associada a menor qualidade e a baixa velocidade de captura de imagens obtida, devido às restrições de velocidade da interface paralela. • Servidor WebRobot: funções de controle remoto do objeto teleoperado: A fim de teleoperar o sistema Robótico é necessário que o mesmo tenha como pré-requisito alguma capacidade de comunicação remota utilizando um protocolo de comunicação aberto através de uma interface serial, paralela ou mesmo de uma Ethernet, permitindo a conexão a um Microcomputador ou a uma Workstation. Utilizando-se desta capacidade é possível que qualquer equipamento industrial possa ser teleoperado via Internet.

A partir desta abordagem, disponibiliza-se um Servidor Robótico, denominado WebRobot, conectado ao equipamento industrial através da interface de comunicação do equipamento. Este servidor pode ser um servidor HTTP, de forma similar ao descrito para o WebCam (Figura 11.6).

O mecanismo de acesso às funções do objeto teleoperado é também baseado em programas CGI e HTML. Para cada função disponibilizada pelo protocolo de comunicação do Robô existe um programa CGI que é acessado no servidor WebRobot pelo cliente utilizando um browser WWW. Pode-se utilizar o mesmo equipamento para disponibilizar os dois serviços: WebCam e WebRobot. Por outro lado, pode-se também utilizar dois ou mais servidores para realizar as funções de WebCam e WebRobot.

Uma segunda abordagem é utilizar um único Servidor WWW conectado a um ou mais PC servidores via sockets TCP/IP. Estes PC servidores não são necessariamente servidores WWW. São servidores específicos para controle do Robô e para captura de imagem, sendo que todo o tratamento das informações obtidas é realizado pelo Servidor WWW, concentrando todas as ações. A figura 11.7 apresenta esta abordagem.

Internet

Serv idor W W W P C Servido r P C Servido r

Vídeo / Status

Controle

RS-232 P aralelaP rop rietá ria

R obô C âmera

B row s er W W WCliente

Figura 11.7 - Servidor WWW centralizado. Nesta configuração todas as informações solicitadas passam pelo Servidor WWW que

estabelece a comunicação via Rede Local de Comunicação (Intranet) através de sockets TCP/IP utilizando-se de programas CGI ou mesmo de servidores específicos.

Page 9: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

11.4 - RESTRIÇÕES DO PROTOCOLO INTERNET - TCP/IP

A Rede de Comunicação Internet apresenta uma largura de banda heterogênea e com taxas de transmissão não determinísticas que variam de 10 kbps (conexão wirelless) a mais de 10 Mbps em rede local, dependendo da conexão Internet e do tráfego.

Com esta limitação de largura de banda, aplicações em tempo real para captura de vídeo apresentam sérias restrições. Para vencer estas restrições é necessário utilizar compressão de dados e conexão de grande velocidade à Internet. Taxas típicas de transmissão de vídeo com compressão necessitam de 20 Kbps (RealVideo), e sem compressão, de 100 Kbps (seqüência de imagens JPEG) com 5 quadros/s (MELCHIORS,1996).

Outra limitação é o delay (atraso) inerente ao protocolo TCP, pois os pacotes enviados não necessariamente estão na mesma ordem dos pacotes recebidos pelo cliente, o que não é desejável para aplicações em tempo real.

Esta restrição pode ser resolvida adicionando algum grau de autonomia para a aplicação, no caso um Robô, de tal forma a contornar situações de emergência, bem como, situações perigosas. Este nível de autonomia é obtido localmente no Servidor WebRobot, que deve monitorar estas condições limites (HIRZINGER et al., 1997).

Apesar dos datagramas com informações de controle enviados para o Robô pelo cliente via Protocolo TCP/IP serem pequenos, da ordem de 2 a 3 Kbytes, o Protocolo TCP não garante aplicações em tempo real. Uma alternativa para o futuro é utilizar o Protocolo RTP (Real-Time Transport Protocol) para aplicações em tempo real (OTSUKA, 1996).

11.5 - INTERFACE COM O USUÁRIO

A interface gráfica com o usuário (GUI – Graphical User Interface) deve ser baseada nas linguagens de programação HTML, JAVAScript e JAVA (OTSUKA, 1996). A utilização de JAVA permite uma independência de arquitetura de hardware, pois o applet escrito em JAVA (aplicação JAVA) pode ser executado em qualquer plataforma com um browser WWW que tenha suporte para esta linguagem.

O programa em JAVA/HTML permite que o cliente tenha uma interface amigável com o sistema de teleoperação aceitando comandos e disparando os programas CGI necessários para executar as funções disponibilizadas e apresentando as informações necessárias para o usuário que são recebidas pelo servidor (figuras 11.8 e 11.9).

Page 10: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

Figura 11.8 - Sistema RobWebLink: interface com o usuário. A realimentação visual é feita através do Servidor WebCam que do lado do cliente apresenta

uma interface amigável que recebe as imagens em formato comprimido (MPEG ou RealVideo) ou em uma seqüência de imagens JPEG.

As figuras 11.8 e 11.9 apresentam alguns exemplos de interfaces com usuários, que foram desenvolvidas em projetos de teleoperação executados no GRACO (Grupo de Automação e Controle) da Universidade de Brasília. A figura 11.8 apresenta a interface do sistema RobWebLink (http://webrobot.graco.unb.br) e a figura 11.9 do sistema RobWebCam (http://www.graco.unb.br/ robwebcam).

Outra abordagem é a utilização de VRML (Virtual Reality Modeling Language). VRML é uma linguagem de descrição de simulações interativas com vários participantes se comunicando através da Internet (OTSUKA, 1996). O objetivo do desenvolvimento desta linguagem é torna-la um padrão para a descrição de simulações interativas no WWW, assim como a linguagem HTML é o padrão para descrição de páginas Web. Sua principal característica para aplicações de TeleRobótica está associada a capacidade de operar em conexões com pequena largura de banda, o que a torna uma candidata em potencial para ser utilizada

Page 11: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

Figura 11.9 - Sistema RobWebCam: interface com o usuário.

11.6 - APLICAÇÕES DESENVOLVIDAS São apresentadas quatro aplicações desenvolvidas utilizando esta metodologia:

RobWebCam (figura 11.9) e RobWebLink (figura 11.8), Robô Móvel MRL 1.0 e a teleoperação do robô Nomad XR4000, o que possibilitou a validação da metodologia.

11.6.1 - Sistema RobWebCam (http://www.graco.unb.br/robwebcam)

O Sistema RobWebCam é constituído por um manipulador com dois DOF (Degree-of-Freedom), que suporta uma câmera de vídeo, sendo acionado por motores de passo. Estes motores são controlados através de uma placa de circuito impresso, que contém o driver de potência e o módulo de alimentação elétrica do equipamento. A placa comunica-se com o servidor do manipulador (WebRobot) através da interface paralela. Este servidor, WebRobot, contém os programas de controle. A câmera (SunVideo) possui alimentação própria de energia e é interligada ao servidor WebCam através de um cabo de sinal de vídeo conectado na placa de captura de vídeo do Servidor. No Servidor WebCam estão alocados o driver (programa em CGI) para receber as imagens e as páginas WWW utilizadas para teleoperar o sistema. O cliente, via browser (figura 11.9), recebe as imagens e os comandos deste servidor via Internet. Esta arquitetura é minuciosamente descrita em ÁLVARES & ROMARIZ (1998). O sistema pode ser acessado através do endereço http://www.graco.unb.br/robwebcam.

11.6.2 - Sistema RobWebLink (http://webrobot.graco.unb.br)

Este sistema permite o controle remoto do Robô Industrial com seis graus de liberdade IRB 2000 da Asea Brown Boveri utilizando a Internet como via de controle. O controlador do Robô ABB IRB 2000 tem incorporado um sistema de controle remoto através da interface serial RS-232 baseado em 42 funções, que se utilizam de um protocolo de comunicação proprietário.

Page 12: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

A partir desta capacidade de comunicação remota, desenvolveu-se um servidor WWW (WebRobot) conectado ao robô via interface serial, disponibilizando o controle remoto do robô, através das 42 funções, em rede de comunicação utilizando o protocolo TCP/IP.

A operação de controle remoto é monitorada através de captura de imagem em tempo real, utilizando o sistema RobWebCam (Servidor WebCam), além de informações e status do Robô enviadas pelo seu controlador. O sistema de teleoperação desenvolvido está disponível no endereço http://webrobot.graco.unb.br e pode ser operado remotamente permitindo a comunicação entre o servidor WWW e o Controlador do Robô.

A velocidade de transmissão de dados requerida para os serviços disponibilizados referentes aos comandos das funções do Robô é baixa, não comprometendo o sistema de teleoperação, apesar da latência inerente à Internet. Entretanto, esta latência faz com que a realimentação gráfica, através de vídeo on-line, seja viável quando se utiliza de velocidades de transmissão acima de 64 Kbps. Recomenda-se também a utilização de compressão de dados. O sistema está em operação desde maio de 1998.

Só é permitido acesso a clientes devidamente cadastrados. Assim, o Servidor WebRobot solicita senha e password ao usuário do sistema, por questões de segurança (usuário devidamente cadastrado), bem como, devido à resposta do Robô e do Servidor WWW que pode ser degradada em função de atrasos de comunicação entre o servidor WWW e o cliente.

Por outro lado, serviços que necessitam de uma pequena largura de banda, como inicialização do Robô, iniciar programa, ligar e desligar Robô, dowload e upload de programas, entre outros, são plenamente satisfeitos. A evolução do sistema é prevista aplicando a mesma metodologia para controlar via Internet uma Célula Flexível de Soldagem.

11.6.3 - Teleoperação do Robô Móvel MRL 1.00 (http://robomovel.graco.unb.br) Este sistema é um Robô Móvel Autônomo controlado remotamente via Internet utilizando o

sistema operacional Linux como plataforma de controle e comunicação. A locomoção é realizada através de motores de passo, controlados por um driver de potência e programas em linguagem C. A estrutura do robô foi fabricada em alumínio, consistindo em um chassi com três níveis: o primeiro contendo motores e alimentação elétrica (baterias ou alimentação elétrica externa). O segundo abrigando uma placa mãe Pentium (responsável pelo controle do sistema) e uma placa de Rede Ethernet. O terceiro nível é constituído por um link de comunicação via rádio/Internet (Adaptador Ethernet) e uma câmera CCD (Charge Coupled Device). O controle via Internet é realizado através de uma interface Java/CGI (Common Gateway Interface) que envia os comandos do usuário para o sistema de navegação do robô (via rádio) tendo uma realimentação visual através de um sistema de captura de vídeo baseado em uma WebCam.

11.6.4 - Teleoperação do Robô Nomad XR4000 (http://upper.graco.unb.br)

Este sistema permite a guiagem do robô XR4000 da Nomadic via Internet . O sistema de teleoperação utiliza como ferramenta de comunicação de dados a linguagem de programação Java, apresentando ao usuário imagens obtidas do ambiente remoto assim como dados sensoriais do robô, permitindo o controle de movimentos do robô e da câmera embarcada no sistema. Devido às restrições de velocidade de comunicação as imagens capturadas são comprimidas no formato JPEG, permitindo assim um menor consumo de banda de comunicação e melhorando a apresentação das imagens ao usuário. A necessidade de um sistema seguro de controle do robô e devido aos atrasos inerentes à comunicação via Internet levaram à utilização de um sistema de controle de velocidade do robô baseado na lógica fuzzy. Este controlador é responsável pela segurança do sistema, através do monitoramento dos dados sensoriais do

Page 13: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

ambiente e do controle da velocidade do robô. Testes realizados com o sistema validaram a metodologia de teleoperação desenvolvida.

11.7 - TELEROBÓTICA : TELEOPERAÇÃO DO ROBÔ ABB IRB 2000 VIA INTERNET

O controlador do Robô ABB IRB 2000 tem incorporado um sistema de controle remoto via interface serial RS-232 baseado em 42 funções. O sistema utiliza-se desta capacidade de comunicação remota interligando o sistema, em rede local de comunicação, utilizando o protocolo TCP/IP (Transport Control Protocol/Internet Protocol). O sistema concebido é baseado na arquitetura cliente/servidor, tendo como servidor uma plataforma UNIX (Linux) que disponibiliza o serviço WWW, que será acessado pelo cliente utilizando um browser (Netscape ou Explorer). O servidor WWW conectado ao Robô via interface serial disponibiliza as funções de controle. A teleoperação é monitorada através da captura de imagem em tempo real e informações/status do Robô são enviadas pelo seu controlador.

11.7.1 - Arquitetura do Sistema (Módulos WebCam e WebRobot): requisitos para teleoperação

Sistemas teleoperados remotamente necessitam de dados e/ou imagens do objeto de controle, bem como, da transmissão de comandos através de um link de comunicação, que neste caso é baseado em conexão via Rede de Comunicação (SCHILLING et al., 1997), através do Protocolo Internet (IP). A figura 11.10 apresenta a arquitetura do sistema, onde o Servidor Unix HTTP (Hypertext Transfer Protocol) disponibiliza dois tipos de serviços básicos, que estão representados na figura 11.1 através de dois módulos: WebCam e WebRobot, já descritos anteriormente. • Servidor WebCam: visualização do objeto teleoperado: É utilizado o sistema RobWebCam desenvolvido no GRACO em 1997 (ÁLVARES & ROMARIZ, 1998) como servidor WebCam.

O sistema de vídeo é baseado na SunVideo (SUN, 1994) que possibilita a captura, digitalização e compressão em formato JPEG (Joint Photographic Experts Group) de um sinal de vídeo NTSC ou PAL não modularizado (composto ou S-Vídeo). Assim, utilizou-se a plataforma Solaris como WebCam. Cabe destacar que o sistema RobWebCam tem um manipulador (Pan-tilt) que pode posicionar a câmera para possibilitar uma melhor monitoração do ambiente (ÁLVARES & ROMARIZ, 1998).

Utiliza-se uma seqüência de imagens JPEG, cuja principal vantagem está associada no envio de imagens de vídeo utilizando o mecanismo server-push do Servidor HTTP diretamente para o cliente WWW, como o Netscape, sem a necessidade de se utilizar um software especial ou um plugin para receber o formato de vídeo (OTSUKA, 1996).

Page 14: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

Camera de vídeo

Figura 11.10 - Arquitetura do sistema de teleoperação via Internet: WebCam e WebRobot.

O driver WebCam utilizado pode ser obtido no endereço: http://lrcwww.epfl.ch/~oechslin/ wc_download.html. O WebCam possui um modo de operação que permite a renovação periódica da imagem de maneira que o cliente possa visualizar a última imagem atualizada. Este driver é um aplicativo escrito em linguagem C para plataforma Solaris que pode ser utilizado como um programa CGI (Commom Gateway Interface)a partir do servidor HTTP. Este pode reproduzir desde imagens JPEG simples até seqüências de imagens JPEG formatadas em mensagens MIME de múltiplas partes.

• Servidor WebRobot: funções de controle remoto do objeto teleoperado: A fim de teleoperar o Robô utiliza-se o protocolo de comunicação ADLP-10 da ABB através de uma interface de comunicação serial conectado ao Servidor HTTP - WebRobot. O servidor WebRobot é implementado no sistema operacional Linux.

O mecanismo de acesso às funções do objeto teleoperado é também baseado em programas CGI e HTML (Hypertext Markup Language). Para cada função disponibilizada pelo protocolo de comunicação do Robô existe um programa CGI que é acessado no servidor WebRobot pelo cliente utilizando-se de um browser WWW. 11.7.2 - Definição dos sub-sistemas para a interface de teleoperação

A partir da arquitetura definida para o sistema implementou-se o ambiente de teleoperação em uma plataforma multiusuário utilizando os Sistemas Operacional Linux e Solaris, desenvolvendo-se três sub-sistemas de interface com o usuário (figura 11.11):

• a interface cliente/servidor (Páginas visualizadas com Browser); • a interface de comunicação servidor/controlador do Robô (Servidor HTTP - WebRobot); • a interface de monitoração visual do sistema (Servidor HTTP - WebCam).

• Interface cliente e servidor: A utilização do protocolo TCP/IP, Internet/Intranet (ECKEL & HARE, 1995), para a comunicação entre o cliente e o servidor é bastante atrativa devido a sua presença no mundo inteiro, através da Internet. Há alguns problemas quando se utiliza o protocolo TCP/IP, pois a aplicação pode sofrer

Page 15: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

atrasos (delays) não apresentando um tempo determinístico de acesso, o que não é desejável para aplicações em tempo real.

A utilização de servidor WWW apresenta uma interface rica e simples de ser utilizada. Os clientes/navegadores apresentam texto, gráficos, vídeo e áudio, permitindo uma comunicação multimídia entre cliente e servidor. O cliente acessa o servidor UNIX via WWW, e de maneira interativa define as tarefas a serem executadas pelo Robô, que retornará uma confirmação ou negação da execução para o cliente, bem como, uma imagem em tempo real do ambiente onde se encontra o Robô.

Figura 11.11 - Sub-sistemas do sistema telerobótico RobWebLink (Robot Web Link). • Servidor e controlador: O Robô ABB IRB 2000 dispõe de uma porta serial para a comunicação com um computador pessoal (Computer Link) através do protocolo ADLP-10 (ABB Data Link Protocol) (ABB Robotics, 1993), utilizando comunicação assíncrona entre o servidor UNIX e o controlador do Robô, com palavras de oito bits, paridade e stop bit. A função básica do protocolo é estabelecer a comunicação, coordenando o envio e recebimento de dados, enviados em bloco. Cada bloco de dados é composto de um telegrama, que por sua vez é descrito pela biblioteca ARAP (ABB Robot Aplication Protocol). O procedimento de comunicação é somente aplicável ponto-a-ponto, ou seja a comunicação de duas unidades de equipamento onde uma é superior a outra (master/slave).

A biblioteca ARAP é composta de 42 funções de troca de dados entre o Robô e o computador, descrevendo a forma como os dados e respostas do Robô são enviados e códigos de erro que podem ocorrer em uma transmissão de dados. • Monitoramento: Para garantir a segurança na execução das funções de comando, além das respostas enviadas pelo controlador do Robô, é necessário o monitoramento através da captura de imagens em tempo real. Outro fator importante para a segurança é verificar quais são os usuários que estão acessando o servidor e controla-lo por meio de senhas.

O monitoramento por vídeo é feito por uma câmera (SUN, 1994) conectada a um servidor que envia as imagens via WWW. A realimentação gráfica é viável quando se utiliza de velocidades de transmissão acima de 64 Kbps.

Page 16: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

11.7.3 - Especificação do hardware: WebRobot

O hardware utilizado para o sistema é composto pelo Robô ABB IRB 2000, pelos servidores WWW (Linux e Solaris) e pelo cliente que acessará os servidores que controlam a teleoperação do Robô, a captura de imagem e posicionamento da câmera que possibilita a realimentação visual.

O modelo IRB 2000 da Asea Brown Boveri, é um manipulador industrial equipado com funções para soldagem a arco, com seis graus de liberdade, capacidade máxima de carga de 10 kg e sua linguagem de programação nativa é a ARLA.

Os servidores UNIX são: um computador pessoal com o sistema operacional (OS) Linux e uma Workstation Sparc20 com OS Solaris 2.6.

11.7.4 - Descrição do protocolo ADLP-10/ARAP

O protocolo ADLP-10 é um procedimento para comunicação assíncrona entre duas estações com um sistema de hierarquia, transmissão assíncrona serial no modo half-duplex, possibilidade de início de transmissão por ambos os lados (superior e subordinado). O quadro de dados é composto por: palavra de 8 bits + 1 bit de paridade + 1 stop bit. A função básica do ADLP-10 é estabelecer a comunicação verificando o envio e recebimento de mensagens, que são divididas em blocos, garantindo a integridade dos dados transmitidos. A verificação da integridade é feita através da paridade e pela soma de checagem do bloco. Cada bloco de dados é composto de um telegrama, descrito pela biblioteca ARAP. • protocolo ADLP-10: O protocolo de comunicação define alguns sinais que podem ser utilizados por qualquer uma das estações (computador ou Robô) para iniciar uma comunicação. Cada sinal tem uma função durante o processo de comunicação. Se os sinais não forem enviados de maneira correta a comunicação é interrompida.

Para iniciar a comunicação a estação envia um ENQ (enquiry) dessa forma ela espera uma resposta da outra estação para verificar se ela está pronta para continuar o processo de comunicação. As respostas possíveis são: ACK (acknowledge) que a estação receptora responde quando está pronta para comunicar-se; WACK (wait and acknoeledge) indica que a estação receptora está funcionando mas não está pronta para a comunicação; RVI (reverse interrupt) indica que a estação deseja enviar a mensagem e não recebê-la; NAK (negative acknowledgement) indica que a estação receptora não reconhece a comunicação.

Para o controle do telegrama existem outros sinais: DLE (Data Link Escape) indica quando inicia e quando termina o campo de dados do telegrama, STX (Start of text) verifica a paridade do envio de mensagens podendo ser par ou ímpar e EOT (End of Transmission) que finaliza a comunicação entre as estações. • A biblioteca ARAP: A Biblioteca ARAP descreve 42 funções de troca de dados entre o Robô e o computador e a formatação dos telegramas de envio de dados e de recebimento, bem como, os códigos de erro respondidos pelo Robô. Um telegrama sempre consiste de um Cabeçalho e um Campo de Dados. Todos os dados enviados pelo telegrama são enviados na forma binária. O Cabeçalho sempre possui o mesmo número de bytes e é composto por campos que estão sempre na mesma posição. O campo de dados possui tamanho e conteúdo variável dependendo da função a ser executada. O cabeçalho contém informações a respeito do tamanho do telegrama e do tipo do telegrama. O código da função a ser executada, pode ser visualizada na estrutura do telegrama na figura 11.12.

Page 17: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

O Number of Bytes ou NOB determina o número de bytes pelos quais o telegrama é composto. Este ocupa dois bytes do cabeçalho.

O Destination Adress determina quem será o a estação receptora do telegrama, utiliza-se normalmente1 para o Robô e zero para o computador, esse byte (byte 2) é semelhante ao Source Adress que determina a estação que enviou o telegrama.

Figura 11.12 - Estrutura do telegrama definido pela biblioteca ARAP.

O Function Code especifica o número da função a ser executada. As funções foram

divididas em três grupos de operações básicas: as funções de programa, as funções de leitura e as funções de escrita.

Os valores para MLI (Message Lenght Indicator), RS (Response Status) e TT (Telegram Type) são alinhados e enviados como um único byte. O MLI refere-se ao comprimento do telegrama (se possui ou não uma continuação). O RS comunica se a resposta é ou não um código de erro. O TT indica se o telegrama é um comando, uma resposta ou uma mensagem espontânea enviada pelo Robô. O Function Suffix é específico para cada função dando opções para o uso daquela função.

11.7.5 - Especificação do software de teleoperação do Robô: interface RobWebLink

As funções especificadas pela biblioteca ARAP foram divididas em três grupos, conforme apresentado na figura 11.13.

Controlador do Robô:- funções de leitura- funções de escrita- funções de programa- mensagens de erro

Servidor RobWebLink:- Programas CGI;- Porta serial ligada

ao controlador- Protocolo ADLP-10

Câmera de Vídeo

Cliente:NetscapeExplorer

Escrita:TCPFrameOutputRegisterLocationSensorConfigurationArc WeldManoeuvring

Leitura:TCPFrameInputOutputRegisterLocationSensorResolversConfigurationArc WeldVersionStatus

Programa:StartStopListEraseDownloadUpload

INTERNET

TCP/IP

SERIAL

TCP/IP

Figura 11.13 - Arquitetura, fluxo de dados e funções disponibilizadas pelo RobWebLink.

Através das funções de leitura são obtidos os dados de configuração e memória do Robô. Com as funções de escrita o usuário pode alterar as configurações. Com as funções de programa

Page 18: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

o usuário pode fazer uploads e downloads de programas, bem como executar programas que estejam na memória do Robô. Utilizou-se para o desenvolvimento do sistema as linguagens de programação C, HTML, CGI, JAVA e JAVASCRIPT (MONTEIRO et al., 1997). O sistema de teleoperação desenvolvido está disponível em http://webrobot.graco.unb.br/.

O cliente acessa a homepage com uma tela de comando dividida em frames correspondentes as funções, bem como às várias informações referentes ao Robô. Cada função possui uma página WWW correspondente, que descreve o funcionamento da função e pede para que o usuário defina os parâmetros da função. A leitura desses parâmetros é feita por um CGI, programado em C da GNU. A interface entre o servidor e o controlador do Robô estabelece a comunicação segundo o protocolo ADLP-10, enviando via RS232C os telegramas e recebendo suas respectivas respostas ou mensagens de erro, que são apresentadas no formato html e visualizadas na tela de comando.

11.7.6 - Implementação do sistema RobWebLink (http://webrobot.graco.unb.br)

O sistema implementado é baseado em uma arquitetura cliente/servidor em plataforma UNIX, utilizando o Linux, como servidor HTTP para a disponibilização do serviço WWW. Para o monitoramento utiliza-se o sistema RobWebCam (ÁLVARES & ROMARIZ, 1998).

A figura 11.14 apresenta a estrutura do sistema. O cliente conecta-se ao Robô através do servidor Telerobótico (WebRobot). O cliente envia formulários WWW e recebe os telegramas de resposta do Robô. O servidor WebCam está conectado ao WebRobot fazendo a captura de vídeo e enviando comandos para a movimentação da câmera. O acesso ao sistema é permitido a partir de senhas. • Interface cliente/servidor: Foi desenvolvida uma Interface com o usuário onde são controladas todas as funções (figura 11.8). Através dos menus pode-se acessar os arquivos correspondentes as funções da biblioteca ARAP. Foi criado um arquivo HTML para cada função que pode ser executada pelo Robô, que aparece na tela de funções. Há um menu de opções que permite ativar a realimentação gráfica. A tela de status permite que o estado do Robô apareça na tela (posição, modo de operação e configurações principais). A tela de envio (caixa de envio) apresenta o telegrama a ser enviado, podendo ser corrigido ou editado antes do envio. A tela de recebimento mostra o campo de dados do telegrama recebido do Robô. A figura 11.8 apresenta a tela principal do Sistema RobWebLink, onde pode ser visualizado nos frames superiores os menus onde o usuário seleciona as funções. Na segunda linha de frames as três janelas são: a janela de status, a janela de realimentação gráfica e a janela de função. Na terceira linha estão as janelas de envio e recebimento de mensagens.

Figura 11.14 - Estrutura: Diagrama de fluxo de dados do sistema.

Page 19: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

Utilizou-se os formulários eletrônicos do HTML para permitir o envio de parâmetros necessários em cada uma das diferentes funções. Cada função é tratada individualmente por um CGI, de forma modular. • Servidor e Controlador: O sistema foi desenvolvido em C++ da GNU para Linux. Desenvolveu-se os programas para serem executados via WWW/HTTP por programas CGI, que implementam o protocolo ADLP/10. Desta forma cada uma das funções tem o seu programa correspondente. Cada programa CGI possui módulos que realizam as seguintes tarefas:

Leitura dos dados enviados pelo formulário; Montagem do Telegrama a ser enviado; Inicialização da Porta Serial; Estabelecimento da comunicação com o Robô; Envio e recebimento de Telegramas; Verificação do telegrama recebido; Montagem da Homepage que será apresentada ao usuário com a resposta. • Monitoramento - RobWebCam (http://www.graco.unb.br/robwebcam) Foi utilizado o sistema RobWebCam (ALVARES & ROMARIZ, 1998) para monitoração visual da operação do sistema. O usuário pode acessar o menu de opções e movimentar a câmera através de um joystick virtual (figura 11.9). O ideal seria ter várias câmeras em várias posições diferentes para que o usuário escolhesse a melhor visão, detalhada e/ou global.

11.7.7 - Restrições Do Protocolo Internet (TCP/IP) E Segurança

Como a Internet apresenta limitação de largura de banda, aplicações em tempo real para captura de vídeo apresentam sérias restrições. Para vencer estas restrições é necessário utilizar compressão de dados e conexão de grande velocidade à Internet.

Outra limitação é o delay (atraso) inerente ao protocolo TCP, pois os pacotes enviados não necessariamente estão na mesma ordem dos pacotes recebidos pelo cliente, o que não é desejável para aplicações em tempo real.

Esta restrição pode ser resolvida adicionando algum grau de autonomia para a aplicação, no caso um Robô, de tal forma a contornar situações de emergência, bem como, situações perigosas. Este nível de autonomia é obtido localmente no Servidor WebRobot, que deve monitorar estas condições limites (HIRZINGER et al., 1997).

Apesar dos datagramas com informações de controle enviados para o Robô pelo cliente via Protocolo TCP/IP serem pequenos, da ordem de 2 a 3 Kbytes, o Protocolo TCP não garante aplicações em tempo real. Uma alternativa para o futuro é utilizar o Protocolo RTP (Real-Time Transport Protocol) para aplicações em tempo real (MELCHIORS, 1996). 11.8 - TELEROBÓTICA : TELEOPERAÇÃO DO ROBÔ MÓVEL MRL 1.0 VIA INTERNET

A arquitetura do sistema baseia-se no modelo cliente-servidor, que divide as atribuições do sistema em um servidor, representado pela página HTML (Hiper Text Markup Language) e programas CGI localizados no robô móvel; e o cliente, representado pelo applet Java, funcionando no browser do usuário. Entre o cliente e o servidor encontra-se a rede Internet, que permite a comunicação entre os módulos (figura 11.15). O servidor MRL é composto de dois módulos principais (ÁLVARES, 1999): WebCam e WebRobot.

O applet Java, carregado no browser do usuário no instante que o mesmo acessa a página HTML do sistema (http://robomovel.graco.unb.br), é responsável pelo envio de comandos de movimentação do robô, através de requisições a programas CGI-BIN, desenvolvidos em linguagem C, localizados no servidor. O servidor, além de processar os comandos CGI, é

Page 20: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

responsável pela captura de vídeo WebCam e o envio das imagens para o browser. Tem-se, assim, uma interação entre o usuário e o ambiente em que o robô se encontra.

Figura 15 - Arquitetura do sistema de teleoperação.

11.8.1 - Implementação Física

A estrutura desenvolvida visa a modularização, sendo organizada em níveis: na parte inferior (primeiro nível) encontram-se os sistemas de movimentação, sensorial e energia; no segundo nível tem-se o controlador (placa mãe de um Pentium de 75 Mhz); e no terceiro nível o sistema de comunicação e vídeo (figura 11.16). A figura 11.17 mostra um diagrama de fluxo de dados entre os módulos do sistema.

O sistema de alimentação é representado por uma fonte de tensão de computador ligada à rede elétrica, colocada na parte posterior do nível inferior. Uma implementação futura incluirá a utilização de baterias recarregáveis para permitir uma maior autonomia do sistema. Ainda no primeiro nível estão presentes duas “antenas” ou whiskers que funcionam como sensores de toque para o reconhecimento de obstáculos pelo robô. São utilizados sensores binários, tipo liga-desliga, conectados às entradas da interface paralela do controlador. No futuro serão utilizados sensores para medição de distâncias ultrasônico e infravermelho com saída TTL (Transistor-Transistor Logic) conectados diretamente à interface paralela.

O sistema de locomoção é composto por um conjunto de motores de passo, que controlam os movimentos do robô através do deslocamento diferencial de duas rodas. Uma terceira roda de borracha é utilizada como apoio do conjunto. Os motores são alimentados através de um driver de potência, baseado no chip ULN 2003A (GADRE, 1998) e no transístor TIP 120. Este driver é controlado através da interface paralela do módulo controlador. A figura 6 mostra um esquema do circuito desenvolvido. O controlador é representado por um computador pessoal tipo PC (Personal Computer) Pentium, funcionando sob o sistema operacional Linux e programado através da linguagem C.

O sistema de comunicação utilizado (terceiro nível) baseia-se em um rádio adaptador Ethernet da Proxim (figura 11.17), que conecta-se a um bridge (RangeLan2 7510, Proxim) presente no laboratório, interligando o sistema à rede Internet. A utilização de um sistema de rádio para a comunicação com o robô deu-se devido aos seguintes fatores: mobilidade, ou seja, um sistema robótico móvel não deve possuir cabos ligando-o a uma base fixa; sistemas a rádio são adequados para pequenas distâncias (300 m), entre o adaptador e o bridge, ou para maiores distâncias utilizando antenas mais potentes e vários repetidores/bridge em um ambiente de células, similar à telefonia celular.

UsuárioRobô MRL 1.00

robomovel.graco.unb.br

ServidorWebCam

ServidorWebRobot

InternetWWW

ClienteApplet Java

Vídeo

Comandos

Sensores

Page 21: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

Figura 11.16 - (a) Arquitetura física do robô desenvolvido ; (b) Circuito de potência dos motores de passo; (c) Adaptador Ethernet utilizado no robô móvel (RangeLan 2 7921, Proxim).

Figura 11.17 - Módulos integrantes do sistema

A figura 11.18 apresenta a infraestrutura de comunicação utilizada no laboratório do GRACO, incluindo o servidor, o robô móvel desenvolvido e o robô Nomad XR4000 (http://www. robots. com), também integrante do ambiente. Observa-se que o bridge é a parte responsável pela interconexão entre os diversos adaptadores móveis à rede local do laboratório.

A captura de imagens é realizada através de uma câmera tipo WebCam (ÁLVARES, 1998), que envia suas imagens através de um driver para páginas HTML (Hiper Text Markup Language)

(c) (b)

(a)

Comunicação,Vídeo

Controlador (PC)

Movimentação,Energia

ServidorWebRobot

Sensores detoque

InterfaceParalela

Dados ambientais

Movimentação

Dados

ServidorWebCam

CâmeraQuickCamConnectix

ServidorHTTP

Cliente

Driver dePotência

(ULN2003A)

PlacaEthernet

AdaptadorProxim

RangeLan 2

BrigdeProxim

RangeLan 2

PC Pentium 75 MHz 32 MbOS: Linux

Inte

rnet

Fonte dealimentação

Rede110/220 V

Motores dePasso

Astrosyn

Page 22: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

ou aplicativos Java. O sistema de animação utilizado para as imagem é provido automaticamente pelo browser utilizado pelo usuário.

Figura 11.18 - Arquitetura de comunicação utilizada no robô móvel. A figura 11.19 apresenta fotos do robô desenvolvido, onde podem ser observados os

módulos.

Figura 11.19 - Robô móvel desenvolvido no GRACO (MRL 1.00).

11.8.2 - GUI (Graphical User Interface) Para Teleoperação

A interface de teleoperação (GUI) desenvolvida é baseada na linguagem de programação Java, permitindo uma boa interação usuário-robô. São utilizados quatro botões que controlam a translação e a rotação do robô, no plano XY, e um quinto botão responsável pela implementação do algoritmo de navegação autônoma. A figura 11.20(a) apresenta a página de entrada do sistema na Internet. Na figura 11.20(b) pode ser vista a interface desenvolvida. Na parte superior do console encontra-se a imagem recebida pela câmera localizada no robô, o que possibilita a visualização do ambiente remoto.

A parte inferior do console é responsável pelo controle posicional do robô. Destaca-se nesta parte o botão Walk, responsável pela navegação autônoma do sistema. Assim, se o usuário deseja que o robô caminhe 3 metros adiante, evitando possíveis obstáculos, deve ajustar a distância D para 3000 mm, ativar o sistema autônomo através do checklist Auto, e enviar o

Page 23: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

comando através do botão Walk. O robô tentará então, utilizando seus sensores de toque, navegar de forma autônoma até o ponto final desejado, a 3 metros a frente.

Ainda na parte inferior são localizados dois botões, Help e Configure, responsáveis, respectivamente, pela abertura de uma janela de ajuda ao usuário, contendo instruções sobre o funcionamento do sistema; e pela configuração de aspectos relativos à recepção da imagem, como luminosidade e qualidade, permitindo assim uma melhor interação usuário-ambiente remoto.

11.8.3 - Análise dos Resultados

A aplicação de sistemas robóticos de teleoperação implica a utilização de um sistema em tempo real. Entretanto, o ambiente WWW e o protocolo TCP/IP não são adequados para aplicações em tempo real, devido à sua limitação de largura de banda (para transmissão de vídeo) e o delay (atraso) do envio dos pacotes TCP entre servidor e cliente. Parte desses problemas podem ser reduzidos através do uso de imagens JPG (compactadas) e a implementação de um certo grau de autonomia no robô (sensoriamento e navegação autônoma), inseridos no sistema desenvolvido.

(a) (b) Figura 11.20 - (a) Página HTML do sistema de teleoperação; (b) Applet Java desenvolvido

para a teleoperação. A utilização do Linux como sistema operacional foi guiada pela capacidade deste de prover

serviços gerais (como conexão Internet, HTTP) assim como permitir, através da linguagem C, controle sobre dispositivos como sensores e motores. A sua robustez e confiabilidade, quando comparados a outros sistemas operacionais, tornam-no adequado à aplicações em robótica.

A necessidade de aplicação em tempo real, internamente ao robô, para gerenciar simultaneamente captura de vídeo e navegação, foi implementada através da definição de prioridades para os processos: assim, o processo responsável pela navegação é disparado com maior prioridade que os demais processos, garantindo a segurança do sistema, embora reduzindo a transmissão das imagens capturadas. Uma outra abordagem possível para o problema seria a utilização da extensão de tempo real para o Linux (RTLinux, 1999), o que permitiria uma melhor aplicação do sistema ao controle do robô.

O algoritmo de navegação implementado foi simulado através do software MatLab, sendo realizados testes em diversas configurações de obstáculos, com a simulação de um sistema de sensores de toque. Verificou-se uma boa estabilidade do método, embora em alguns casos o

Page 24: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

sistema demore a convergir. A futura substituição dos sensores de toque para sensores do tipo sonar no robô é compatível com o algoritmo implementado, já tendo sido inclusive realizados testes do mesmo nessa nova configuração.

11.9 - TELEROBÓTICA : TELEOPERAÇÃO DO ROBÔ NOMAD XR4000 A arquitetura do sistema baseia-se no modelo cliente-servidor, que divide as atribuições do

sistema em um servidor, representado pela página HTML (Hiper Text Markup Language) e programas em linguagem C localizados no robô móvel XR4000 (figura 11.21); e o cliente, representado por applets Java, funcionando no browser do usuário. Como pode ser observado na figura 11.22, o robô XR4000 possui dois computadores embarcados, um responsável pelo controle de movimentos do sistema (servidor de controle) e um responsável pela captura e processamento das imagens de uma câmera CCD (servidor de vídeo).

Figura 11.21 - Robô Nomad XR4000.

O robô móvel XR4000, produzido pela Nomadic Technologies, é um sistema avançado de robótica móvel, compreendendo sistemas de controle, sensores, comunicação e programação necessários para pesquisa e desenvolvimento na área de manipulação robótica, visão computacional, navegação por sensores e aprendizado.

Figura 11.22 – Arquitetura de teleoperação do sistema.

11.9.1 - Servidores desenvolvidos

Os servidores desenvolvidos no sistema de teleoperação do robô utilizam o servidor inetd como gerenciador das conexões Internet, diferentemente dos servidores CGI utilizados nos demais projetos de teleoperação do laboratório.

O servidor de controle é composto por três serviços em linguagem C, localizados na máquina lower: robserver, responsável pelo controle de movimentos do robô, contendo um sistema de controle fuzzy de velocidade; stopserver, responsável pela segurança através de uma parada de emergência; e senserver, que realiza a captura de dados sensoriais do robô e o envia para o applet Java.

Page 25: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

O servidor de imagens é composto por três serviços localizados na máquina upper e programados em linguagem C: camserver, responsável pelo controle de orientação do pan-tilt da câmera; JPGStd, que realiza a captura de uma imagem de alta qualidade no formato JPEG; e JPGPush, que realiza a captura e animação de imagens JPEG de baixa qualidade através do mecanismo de animação push-server do browser Netscape.

11.9.2 - Sistema de controle de velocidade baseado em Lógica Fuzzy

Aplicações de teleoperação necessitam de uma certa autonomia para se garantir a segurança do sistema, visto que o tempo entre o envio de um comando e o recebimento das imagens ou dados sensoriais pode ser da ordem de segundos. Este sistema utiliza-se da lógica fuzzy como forma de controle de velocidade do robô móvel, baseando a velocidade de saída na distância a ser percorrida (definida pelo usuário) e na distância dos obstáculos presentes no ambiente (aleatórios e transientes).

Foram utilizados duas variáveis de entrada: distância a ser percorrida, definida em cinco conjuntos fuzzy; e a distância dos obstáculos (obtida através de sensores ultrasônicos), definida em cinco conjuntos fuzzy. Utilizando-se o método de desfuzzyficação do centróide e de regras do tipo “se a distância é longe e o obstáculo é médio então a velocidade é média”, obteve-se a superfície de resposta do controlador mostrada na figura 11.23.

Figura 11.23 – Superfície de resposta do controlador fuzzy.

11.9.3 - GUI de Teleoperação do sistema baseado em Applets Java

A interface de controle do sistema é baseada na linguagem de programação Java, atualmente a plataforma de desenvolvimento de software mais adequada para aplicações na Internet. O sistema desenvolvido consiste em dois applets, ou seja, programas carregados pelo browser que funcionam na máquina remota do cliente. Esses applets conectam-se com os servidores localizados no robô móvel, permitindo assim o envio e recebimento de dados entre o usuário e o robô.

O applet de controle do pan-tilt é responsável pelo posicionamento da câmera de vídeo do robô, possibilitando uma visualização do ambiente no qual o robô se encontra, seja na direção de seu movimento como em outras direções. O applet de controle de movimentos é responsável pela interface entre o usuário e os servidores robserver, sensenver e stopserver localizados no robô. Com base nesta interface, o cliente é capaz de posicionar o robô no plano, realizar ajustes de deslocamento linear e angular assim como receber dados sensoriais e o estado geral das baterias do robô.

A recepção das imagens animadas pelo servidor é responsabilidade do navegador Netscape. Durante o funcionamento do sistema o usuário inicialmente visualiza a animação gerada pelo sistema, sendo capaz de movimentar e explorar o ambiente remoto através dessas imagens. Caso seja necessário, o usuário pode realizar um ``zoom'' da imagem pressionando o mouse sobre a animação, sendo então mostrada uma imagem estática ampliada do servidor de imagens do robô (servidor JPGStd).

Page 26: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

A figura 11.24 apresenta a página Internet de teleoperação do sistema. Na parte superior direita encontra-se o applet de controle do pan-tilt. Na parte inferior direita encontra-se o applet de controle de movimentos. Na parte superior esquerda apresenta-se as imagens capturadas pelo robô (animação JPEG) e na inferior esquerda apresenta-se imagens do laboratório através de uma câmera externa ao robô.

Figura 11.24 – GUI de teleoperação do sistema.

11.9.4 - Análise dos Resultados

A tecnologia de teleoperação via Internet encontra-se em seu estágio inicial de desenvolvimento, tendo sua aplicabilidade ainda reduzida devido à baixa velocidade de transmissão de dados da atualidade. Neste trabalho foi apresentado o desenvolvimento de um sistema de guiagem do robô XR4000 via Internet para a inspeção de tubulações industriais soldadas. Este sistema de teleoperação utiliza como ferramenta de comunicação de dados a linguagem de programação Java, atualmente a plataforma mais adequada ao desenvolvimento de aplicações na Internet. O sistema apresenta ao usuário imagens obtidas do ambiente remoto assim como dados sensoriais do robô, e permite ao mesmo o controle de movimentos do robô e da câmera embarcada no sistema. Devido às restrições de velocidade de comunicação as imagens capturadas são comprimidas no formato JPEG, permitindo assim um menor consumo de banda de comunicação e melhorando a apresentação das imagens ao usuário. A necessidade de um sistema seguro de controle do robô e devido aos atrasos inerentes à comunicação via Internet levaram à utilização de um sistema de controle de velocidade do robô baseado na lógica fuzzy. Este controlador é responsável pela segurança do sistema, através do monitoramento dos dados sensoriais do ambiente e do controle da velocidade do robô. Foi verificado, através de

Page 27: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

experimentos, que o controlador fuzzy é sensível aos dados obtidos através dos sensores ultrasônicos do robô, o que leva à necessidade de se desenvolver uma espécie de filtro de dados sensoriais para obter uma maior estabilidade e confiabilidade no sistema de controle de velocidade. A utilização do sistema teleoperado em ambientes conhecidos também requer o posterior desenvolvimento de um sistema autônomo de navegação, o que simplificaria a teleoperação do robô móvel XR4000 em ambientes estruturados.

11.10 - ROBÔS MÓVEIS Desde a década de 60, quando a empresa Unimation instalou o primeiro robô manipulador

industrial, já se contabilizam mais de 700.000 robôs em todo o mundo (ver Capítulo 1). Inclusive, prevê-se um rápido crescimento desse número principalmente devido ao aumento do custo da mão de obra, à necessidade de aumento de produtividade e melhoria da qualidade final, à necessidade de realização de tarefas perigosas, as quais o homem não pode realizar, e à queda do custo dos robôs.

Os robôs manipuladores vêm sendo bastante utilizados na indústria, para tarefas como soldagem, pintura, montagem de peças e inspeção de defeitos. Ultimamente também vêm sendo utilizados robôs manipuladores em cirurgias delicadas, através de teleoperação (ver www.recope.br/robo/telecirurgia) e como próteses mioelétricas (ver www.recope.br/robo/protese).

Entretanto, um outro tipo de robô, os chamados robôs móveis, vêm sendo amplamente pesquisados e são utilizados desde para o transporte de peças em uma indústria, até para substituir o homem em explorações de locais arriscados, tais como águas profundas, áreas radioativas, crateras de vulcões, ambientes espaciais e até outros planetas. Diferentemente dos robôs manipuladores, cuja base fixa serve de referência tanto para os movimentos do robô quanto para a área de trabalho, um robô móvel autônomo é livre para mover-se em todas as direções e não tem como referenciar-se de forma direta ao meio que o rodeia. As três formas mais comuns de movimento são por rodas, esteiras e patas, embora existam robôs que saltam, escalam, voam e até se deslocam por propulsão no fundo do mar.

Sem o intuito de esgotar o tema, mesmo porque o avanço tecnológico pode rapidamente tornar obsoleto qualquer desenvolvimento, são apresentados neste capítulo os robôs que se destacam pela novidade apresentada ou por terem uma aplicação especial.

11.10.1 – Evolução dos Robôs Móveis Na década de 70 começaram os primeiros desenvolvimentos na área de robôs móveis:

surgiram os robôs móveis não-autônomos, que são robôs que se movem unicamente sobre trajetórias fixas, restritas de alguma forma (por exemplo, trilhos), ou seguindo marcas contínuas ou espaçadas, pintadas sobre o solo. Estes robôs são normalmente classificados como veículos auto-guiados ou AGV (‘Auto-Guided Vehicle’) de caminho fixo, e realizam operações de transporte automatizado, com diferentes graus de complexidade, em fábricas e armazéns.

Na década de 80 apareceram os primeiros robôs autônomos, ou AGV de caminho indefinido, os quais não estão restringidos a um espaço de trabalho fixo. Os robôs autônomos são mais versáteis, entretanto isso requer um sistema de sensoriamento mais sofisticado e são necessários computadores de bordo mais poderosos, capazes de atender às exigências dos sistemas de sensoriamento, navegação e controle. Este tipo de robôs são atualmente objeto de amplo estudo: pretende-se chegar a sistemas capazes de operar autonomamente nas mais diversas situações possíveis, desde em ambientes fechados e estruturados, até locais abertos, desconhecidos, acidentados e dinâmicos. Para isso, seria necessário reproduzir praticamente toda a capacidade humana de percepção sensorial, habilidade motora e discernimento abstrato, obtendo sistemas capazes de operar sem a presença humana, ou com sua mínima intervenção

Page 28: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

(JONES, 1999). O exemplo mais recente de aplicações destes tipos de robôs é o robô Sojourner que a NASA enviou recentemente a Marte.

Entre os tipos de movimento utilizados em robôs, os robôs móveis a rodas são os mais populares por razões práticas, já que são mais simples e fáceis de construir. Os robôs com patas ou com esteiras normalmente requerem hardware mais complexo e de maior peso que os robôs a rodas projetados para suportar a mesma carga útil. A principal desvantagem dos robôs móveis a rodas é que têm um pior desempenho em terrenos acidentados, já que como regra geral, um veículo com rodas tem problemas se a altura do obstáculo que ele deve transpor se aproxima ao raio de suas rodas (JONES, 1999).

11.10.2 - Robôs com Esteiras Para robôs que devem operar em um ambiente natural, os robôs com esteiras são mais

interessantes porque as esteiras permitem ao robô transpor obstáculos relativamente mais altos. Assim, estes robôs são menos suscetíveis que as rodas a terrenos acidentados, tais como terras soltas e pedras. A principal desvantagem das esteiras é sua ineficiência, pois o atrito nas esteiras dissipa potência, fazendo com que a energia seja desperdiçada sempre que o robô se movimenta (JONES, SEIGER, FLYNN, 1999). Alguns exemplos de robôs com esteiras desenvolvidos em vários centros de pesquisa do mundo são o ATR6000 (www.recope.br/robo/esteira1), o MRK-41 (www.recope.br/robo/esteira2) e o Hazbot III (www.recope.br/robo/esteira3).

11.10.2 - Robôs com Patas Os robôs com patas, ou caminhantes, têm a possibilidade de intervenção em meios

submarinos, espaciais e terrestres. Além disso, os robôs com patas podem superar a maioria dos problemas de locomoção em terrenos acidentados do que qualquer robô com rodas ou esteiras. Entretanto, um dos fatores que vem dificultando o desenvolvimento de robôs caminhantes é o entendimento da complexidade de coordenação de movimento de suas patas. Isto se deve ao modo de caminhar, à estabilidade do corpo sob a ação de movimento, e à arquitetura das mesmas. O modo de caminhar está associado à coordenação harmônica das patas no movimento de locomoção; a estabilidade do corpo está associada à distribuição de massas em relação às patas, quando estão em movimento; e a arquitetura mecânica se deve principalmente ao número de graus de liberdade, tipo de configuração, e formação mecânica das juntas (JONES, 1999).

Embora exista um grande interesse no desenvolvimento de sistemas práticos, o robô caminhante ainda tem que superar alguns desafios. Muitos destes desafios são devido ao grande número de graus de liberdade requeridos por este tipo de robôs. Como cada pata deve ter pelo menos dois motores, o custo de construir um robô com patas é relativamente mais alto do que o dos robôs com rodas ou esteiras. Além disso, o mecanismo de caminhar é mais complexo e portanto mais propenso a falhar, sendo que o algoritmo de controle fica comprometido, dado que existem mais movimentos a coordenar.

O controle ótimo de robôs caminhantes é ainda uma área ativa de pesquisa e existe até um site dedicado a construtores de robôs com patas (www.recope.br/robo/patas). Como exemplos de robôs com patas desenvolvidos em diferentes centros de pesquisa do mundo, estão o robô de seis patas Katharina (www.recope.br/robo/seispatas), o robô de quatro patas RVL (www.recope.br/robo/quatropatas1), os robôs bípedes Planar (www.recope.br/robo/duaspatas1) e o robô humanóide da Honda (www.recope.br/robo/duaspatas2), e finalmente, o robô de uma pata OLIE (www.recope.br/robo/umapata).

Page 29: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

Como exemplo de robô com patas desenvolvido no Brasil está o robô ROQUE (figura 11.25), desenvolvido no Departamento de Engenharia Elétrica da UFES (Maiores informações, com o vídeo sobre a operação deste robô, estão disponíveis em www.recope.br/robo/quatropatas2).

Figura 11.25 - Robô com quatro patas ROQUE.

11.10.4 - Robôs com Rodas Tal como mencionado anteriormente, os robôs móveis a rodas são mais simples e fáceis de

construir. Existem vários arranjos de rodas tracionadas e de direção para este tipo de robôs. Entre eles estão os de tração diferencial, tração sincro, tração triciclo, e tração carro (JONES, 1999).

Muitas empresas desenvolveram robôs móveis a rodas comerciais. Alguns exemplos são os robôs Nomad (www.recope.br/robo/rodas1), Pioneer (www.recope.br/robo/rodas2), RoboSoft (www.recope.br/robo/rodas3), RWI (www.recope.br/robo/rodas4), Rug Warrior (www.recope.br/robo/rodas5), existindo até sites no Brasil que comercializam robôs móveis: www.recope.br/robo/rodas6 e www.recope.br/robo/rodas7.

A Figura 11.26 mostra um robô móvel a rodas de tração diferencial desenvolvido no Departamento de Engenharia Elétrica da UFES, o qual consta de sensores de ultra-som, sensores de infravermelho, sensores de contato e câmara de vídeo, e pode ser comandado por voz e teleoperado pela Internet. Maiores informações, com o vídeo sobre a operação deste robô e link para sua teleoperação pela Internet, estão disponíveis em www.recope.br/robo/rodas6.

Page 30: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

Figura 11.26 - Robô móvel a rodas de tração diferencial “Brutus”.

11.10.5 - Robôs de Limpeza

11.10.5.1 - Limpeza de pisos domésticos e industriais

Existem trabalhos pioneiros no uso de robôs de limpeza de piso para ambientes domésticos, tal como o robô móvel a rodas RoboScrub, surgido em 1991, desenvolvido pelas empresas Denning Mobile Robotics e Windsor Industries. Entretanto, esse pioneirismo não garantiu um sucesso comercial, devido a várias razões. Primeiro, o robô algumas vezes se chocava com os móveis, danificando-os. Segundo, o custo do robô era bastante alto: o salário de um empregado de limpeza saía bem mais em conta. Por esta razão, o RobScrub foi posteriormente destinado para limpeza de grandes salões, de forma a justificar seu alto custo, embora não se garantia a limpeza completa do ambiente (fora do alcance do robô).

Um outro desenvolvimento de robô de limpeza de pisos é o robô móvel a rodas RoboKent, desenvolvido pela Kent Corporation (www.recope.br/robo/limpeza1). Este talvez seja o robô de limpeza de maior sucesso até o momento. Embora de tecnologia básica similar ao RoboScrub, diferencia-se deste em que, uma vez situado na área a ser limpada, pode tanto realizar a limpeza de forma autônoma (em ambientes de geometria retangular), quanto ser totalmente guiado pelo operador. A Robosoft (www.recope.br/robo/limpeza2) também fabrica robôs de limpeza de pisos de ambientes industriais, tais como o Auto VacC 6, o qual pode realizar a limpeza de ambientes de forma remota, através de ensino-repetição ou autonomamente. Esta empresa fabrica também robôs para limpeza de fachadas de edifícios e até de telhados de vidro.

A empresa Dyson (www.recope.br/robo/limpeza3) comercializa um robô móvel de limpeza de pisos domésticos. É o DC06, um robô a rodas, autônomo e de pequenas dimensões, o qual realiza aspiração automática à vácuo. Seu pequeno tamanho permite deslocar-se por baixo de cadeiras e mesas, efetuando a limpeza desses locais que seriam inacessíveis para os outros robôs de limpeza. Além disso, utiliza 50 sensores, para, entre outras funções, detectar e desviar de obstáculos, detectar escadas (de forma a não cair da mesma) e até para proteger-se, ou seja, pára o seu funcionamento quando por exemplo é atacado por um animal ou agarrado por alguém. Além disso, durante a operação de aspiração de pó, executa uma trajetória em espiral, o que implica em cobertura eficiente da área sob limpeza.

Page 31: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

11.10.5.2 - Limpeza de tubulações de esgoto, dutos de ar condicionado e de usinas nucleares

Robôs para limpeza de tubulações de esgoto comerciais vêm sendo utilizados em diversas cidades (ver www.recope.br/robo/esgoto1). Nesta aplicação, um operador humano controla remotamente os movimentos do robô enquanto recebe as imagens da tubulação interna a ser limpa. Existem pesquisas sendo desenvolvidas para a construção de robôs que realizem esta limpeza de forma autônoma (www.recope.br/robo/esgoto2). Uma outra aplicação de robôs de limpeza é para limpeza de dutos de ar condicionado (www.recope.br/robo/ar) e de usinas nucleares (www.recope.br/robo/nuclear).

A UNESP (Baurú) e a USP desenvolveram um protótipo (DAVID) para navegar em tubulações e dela extrair informações ou interagir neste meio. Ele possui uma estrutura mecânica adequada a tubulações de seção circular, podendo ser alterada segundo as restrições impostas pelo ambiente. O DAVID está equipado com sensores para realizar medições de diâmetro, declividade e “embarrigamento” da tubulação.

Figura 11.27 - Telerobô de inspeção de dutos - DAVID.

11.10.5.3 - Limpeza de cascos de navios

Os robôs podem ser utilizados até para a limpeza de cascos de navios. Por exemplo, a empresa Barnes and Reineke desenvolveu um robô manipulador de grandes dimensões para efetuar este tipo de limpeza (Everett, H.R., 1995).

11.10.6 - Robô Cortador de Grama Uma outra aplicação de robôs destinada a ambientes domésticos é o robô cortador de grama

(ver www.recope.br/robo/grama1). O robô RL500 (www.recope.br/robo/grama2) inclusive já se encontra à venda. Um outro desenvolvimento é o robô Lawn Nibbler (www.recope.br/robo/grama3). Este robô corta a grama em uma área definida, cujo perímetro é demarcado por emissores de rádio-frequência. Enquanto corta a grama, o robô é capaz de desviar-se de obstáculos (árvores, brinquedos, animais, crianças, etc.).

11.10.7 - Robô de Segurança Os robôs móveis também podem realizar a função de sentinelas, tais como é o caso do robô

a rodas Denning Sentry (www.recope.br/robo/seguranca1), desenvolvido pela Denning Mobile Robotics. Este robô conta com sensores de ultra-som para detecção de obstáculos, sensor de movimento por infravermelho e por microondas, para detecção de intrusos, câmara de vídeo,

Page 32: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

microfone para sensoriamento acústico do ambiente e transmissor de sinais para transmitir informação para a estação de controle. Além disso, contém um sensor de nível de bateria que permite que o robô busque autonomamente a estação de recarga quando sua bateria estiver baixa. Entretanto, este robô, além de ser de alto custo, é incapaz de executar tarefas tão simples para um vigilante humano quanto verificar se as portas do ambiente sob vigilância estão fechadas, se os equipamentos foram desligados e se as lâmpadas do ambiente foram apagadas (JONES, SEIGER, FLYNN, 1999). A Robosoft (www.recope.br/robo/seguranca2) é outra empresa que também fabrica robôs de segurança, tal como é o caso do robô SMIS.

Um exemplo de robô de segurança para usinas nucleares é o robô com patas Robug II (www.recope.br/robo/seguranca3), desenvolvido pela Universidade de Portsmouth, Inglaterra. Este robô foi idealizado para realizar tarefas de vigilância de indústrias de alto risco, sendo capaz de deslocar-se entre obstáculos e até de subir escadas.

11.10.8 - Robô Bombeiro O robô Fire Spy (www.recope.br/robo/bombeiro1), desenvolvido por UK's West Fire

Service/JCB, foi projetado para apagar incêndios, suportando temperaturas de até 800oC. O Fire Spy pode ser controlado remotamente desde até 100 m de distância, sendo que o operador recebe as imagens do ambiente ao redor do robô através de duas câmaras de vídeo (normal e infravermelha), instaladas no robô. É tal o interesse neste tipo de aplicação que existe até uma competição anual (www.recope.br/robo/bombeiro2) cujo objetivo é construir robôs que sejam capazes de, no menor tempo possível, encontrar e extinguir focos de incêndio em uma casa.

11.10.8 - Robô Hospitalar A HelpMate Robotics desenvolveu um robô móvel a rodas de aplicações hospitalares,

chamado HelpMate (www.recope.br/robo/hospital), capaz de realizar uma tarefa corriqueira em um hospital: transportar documentos e medicamentos entre as salas do hospital. É uma tarefa simples, mas que toma bastante tempo de auxiliares de enfermagem, enfermeiras e trabalhadores de um hospital. Ao ser capaz de resolver esta simples tarefa de transporte de uma forma eficiente, o HelpMate tornou-se um sucesso em mais de 100 hospitais do mundo (JONES, 1999).

11.10.10 - Robô Agrícola Algumas pesquisas vêm sendo realizadas para o uso de robôs em aplicações agrícolas, tais

como o controle de ervas daninhas (www.recope.br/robo/agricola1), colheita de frutas, fumigamento, monitoramento de estufas, do Projeto Agrobot da Itália e do Projeto Agrobot da Espanha (www.recope.br/robo/agricola2 e www.recope.br/robo/agricola3).

11.10.11 - Robô Explorador de Vulcões Em 1994, o robô móvel a patas Dante II (www.recope.br/robo/vulcoes), composto de 8 patas,

foi capaz de se locomover em um vulcão ativo no Alaska. Neste caso, utilizou-se o robô para substituir o homem em tarefas arriscadas. Note que em 1993, em duas explorações separadas, oito vulcanologistas foram mortos enquanto monitoravam e retiravam amostras de vulcões.

11.10.12 - O Robô Sojourner Em 1997, a missão espacial da sonda Pathfinder levou a bordo o robô móvel a rodas

Sojourner (www.recope.br/robo/marte), o qual fez a exploração do planeta Marte. Este robô

Page 33: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

utilizava uma configuração especial de rodas e sistema de suspensão que possuía uma funcionalidade similar a esteiras, podendo transpor obstáculos de grandes dimensões. O Sojourner podia ser teleoperado desde a terra, mas também era capaz de executar tarefas autonomamente, tais como detectar e desviar de obstáculos. Por exemplo, quando a comunicação com a Terra era perdida, o Sojourner era capaz de continuar executando a exploração de forma autônoma.

11.10.13 - Robô Buscador de Bombas e Detector de Minas Explosivas O robô móvel Fetch, desenvolvido pela IS Robotics (www.recope.br/robo/bombas), utiliza

esteiras para sua locomoção. A bordo do mesmo, existe um braço manipulador contendo um ímã em sua extremidade. Este robô tem como função inicial a busca de pequenos artefatos de bombas e munições não explodidas, dispersas em um campo de batalha, e logo a sua remoção para um local onde serão explodidas com segurança. Alguns estudos também estão sendo feitos para possibilitar a um robô detectar minas terrestres explosivas (www.recope.br/robo/minas).

11.10.14 - Robô Tosador de Ovelhas Uma aplicação bastante interessante de robôs é na extração de lãs. Um robô tosador de

ovelhas, desenvolvido na University of Western da Austrália (www.recope.br/robo/tosador) permitiu um aumento de produtividade na extração de lã.

11.10.15 - Robô Saltador O Jet Propulsion Laboratory (JPL) da Califórnia, Estados Unidos, desenvolveu recentemente

um robô móvel de forma esférica, destinado à exploração de planetas de baixa gravidade. O robô é equipado com câmara de vídeo e transmissor de imagem, e se desloca através de saltos. Para isto, possui um mecanismo de propulsão e orientação, de forma que possa superar obstáculos de grande altura (ver www.recope.br/robo/saltador).

11.10.16 – Robô Escalador O Instituto de Automática Industrial da Espanha desenvolveu um robô capaz de escalar o

casco de um navio, soldando a estrutura do mesmo (Grieco, 1994). Um outro projeto é um robô escalador de paredes, com sistema de sucção nas patas, o qual vem sendo construído nos Estados Unidos para exploração de ambientes reduzidos (www.recope.br/robo/microrrobo2).

11.10.17 – Robô Aéreo O Centro Tecnológico para a Informática (CTI) de Campinas está construindo um robô aéreo

(Projeto Aurora) para a realização de tarefas de inspeção aérea de florestas, estradas, fazendas, cidades, cursos de rios, etc. (www.recope.br/robo/aereo1). Um outro centro envolvido com este tipo de pesquisas é o SPAWAR Systems Center San Diego (www.recope.br/robo/aereo2), o qual desenvolve robôs aéreos para várias aplicações: controle de incêndios, detecção de áreas minadas e com armadilhas militares, proteção de tropas militares, exploração de áreas contaminadas (químicas, biológicas e nucleares), etc.

Page 34: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

11.10.18 - Robô Submarino Existem basicamente dois tipos de robôs submarinos, um denominado ROV (Remote

Operated Vehicle), que pode ser controlado remotamente, e o outro denominado AUV (Autonomous Underwater Vehicle), o qual opera autonomamente. Estes robôs têm sido aprimorados para operarem em profundidades e áreas de risco onde os mergulhadores não podem operar. Os ROVs podem realizar diversos tipos de tarefas, utilizando para isto braços mecânicos e ferramentas especializadas. Dentre as aplicações para estes robôs, podem-se citar: • investigação visual das partes submersas de navios, pontes e plataformas • monitoramento de colônias de peixes • controle de poluição subaquáticas • controle de devastação da vida marinha • localização de depósitos de combustíveis nucleares • execução de operações tecnológicas em plataformas marítimas • inspeção visual de estruturas subaquáticas de oleodutos e gasodutos • inspeção de barragens • explorações marítimas para fins de pesquisa

Tipicamente, os ROVs operam conectados a uma embarcação de superfície através de um cabo umbilical. Por este cabo, o ROV recebe a energia necessária para sua operação e se comunica com a Unidade de Comando enviando sinais de vídeo e recebendo sinais de controle. Entretanto, este cabo limita a velocidade e o alcance deste tipo de robô, além de que o cabo pode se enredar tanto com o robô quanto com um obstáculo. Estes veículos são normalmente acionados por propulsores elétricos, que representam um conjunto constituído pelo motor e pelo hélice.

Os AUVs são de tecnologia mais recente e operam de forma autônoma, eliminando o uso de cabos umbilicais. Entretanto, essa autonomia é limitada pela duração de suas baterias. Isto pode ser contornado, mantendo-se um navio de recarga de baterias próximo ao ponto onde o AUV realiza suas operações.

Existem diversos sites na Internet contendo informações sobre robôs submarinos. O site www.recope.br/robo/submarino1 é apenas um dos pontos de partida. O Departamento de Engenharia Elétrica da Universidade Federal do Espírito Santo está na fase inicial de desenvolvimento de um ROV híbrido, com características mostradas na Figura 11.28. Este robô terá cinco graus de liberdade, seis propulsores elétricos, possuirá baterias a bordo, mas será controlado desde a superfície através de um cabo de fibra ótica. As dimensões do robô serão 150x70x50 cm, pesará cerca de 55 Kg e está previsto que atinja profundidades de até 150 m. Será utilizada uma rede de microcontroladores para controlar os diversos processos envolvidos. O objetivo inicial deste ROV é a inspeção subaquática. Maiores informações e vídeo sobre o projeto deste robô estão disponíveis em www.recope.br/robo/submarino2.

Page 35: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

Figura 11.28 - Projeto do robô submarino com cinco graus de liberdade.

Outro projeto relacionado a robótica submarina refere-se ao desenvolvimento de um dispositivo automático para compensar os desvios de posicionamento de ROV, causados pela ação da correnteza. Trata-se de um braço passivo sensorizado capaz de informar a um computador embarcado no ROV, qual o valor da correção que deve ser realizada para que o ROV mantenha inalterado o seu posicionamento inicial. Este projeto foi desenvolvido pela COPPE/UFRJ (LabRob-PEM e PEE) para o CENPES/Petrobrás. A figura 11.29 apresenta o braço acoplado a um ROV.

Figura 11.29 - Braço Mecânico Passivo acoplado a ROV.

11.10.19 - Sistemas Multi-Robôs Existem ambientes onde é empregado mais de um robô na realização de determinada tarefa,

dando origem a sistemas multi-robôs. Estes sistemas podem ser compostos de robôs que compartilham um mesmo ambiente, robôs que compartilham uma mesma carga, mãos artificiais (cada dedo é um robô de dois ou mais graus de liberdade) ou robôs com patas (cada pata é um robô de dois ou mais graus de liberdade). Um exemplo de sistemas multi-robôs é um time de futebol composto por robôs móveis a rodas. Existem até projetos internacionais como o RoboCup (www.recope.br/robo/futebol1) e o Mirosot (www.recope.br/robo/futebol2) que utilizam um jogo de futebol de robôs como foco central de pesquisa em técnicas de inteligência artificial aplicada à robótica. A Escola Politécnica da USP possui um time de futebol de robôs, o FUTEPOLI que foi classificado em segundo lugar no torneio internacional Mirosot em 1998 na França. Algumas instituições no Brasil também desenvolveram equipes de futebol de robôs como a BRAVO (FCTI -

Page 36: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

Campinas), MIneirROSOT (UFMG), UNESP (UNESP - Baurú), entre outras. Fotos dos times e vídeos dos jogos podem ser vistos em www.recope.br/robo/futebol2) e o artigo completo sobre o trabalho de pesquisa do FUTEPOLI está disponível em www.recope.br/robo/futebol3.

11.10.20 - Robôs para Entretenimento Vários robôs de estimação estão sendo lançados no mercado. Pesquisadores japoneses da

Mitsubishi Electric Corporation desenvolveram em 1999 um peixe robô, com aspecto tão realista que somente uma inspeção minuciosa permite verificar que não se trata de um peixe real. O custo de desenvolvimento desse robô mais um aquário especial composto de diversos sensores para a realização de experiências foi divulgado ser da ordem de um milhão de dólares (www.recope.br/robo/peixe). Já a Sony (www.recope.br/robo/cachorro1) desenvolveu o robô cachorro Aibo. Este robô pesa cerca de 1,6 kg e utiliza as mais recentes tecnologias da Sony na área digital. Os recursos de inteligência artificial embutidos no robô também lhe dão a capacidade de aprender novos truques. Segundo a Sony, o robô aprende através da técnica de tentativa e erro ao levar bronca do seu dono. Assim ele descobre o que pode ou não fazer. O Aibo utiliza baterias de lítio e possui orelhas que respondem a comandos de voz. O preço de venda inicial que era de 2500 dólares (www.recope.br/robo/cachorro2) caiu para 1500 dólares (www.recope.br/robo/cachorro3). Um outro robô recentemente desenvolvido pela Sony, que é uma adaptação do Aibo, é o robô humanóide SDR-3X, de 50 cm de altura e 5 Kg de peso. Este robô joga futebol e até dança (www.recope.br/robo/duaspatas3).

11.10.21 - Microrrobôs Ultimamente têm surgidos vários projetos de desenvolvimento de microrrobôs, com vista à

exploração de ambientes de dimensões reduzidas, como pode ser a exploração interna humana. Um desses projetos é o desenvolvido no MIT, Estados Unidos (www.recope.br/robo/microrrobo1), que está construindo um robô menor que 4 cm para a detecção de doenças do colon. Um outro projeto é o Projeto DARPA (www.recope.br/robo/microrrobo2) que está construindo um microrrobô de 8 cm de comprimento, o qual contém um sistema de sucção nos patas, que o torna apto a explorações de ambientes reduzidos, sendo capaz inclusive de subir paredes e passar por cima de obstáculos. Existe até um comitê técnico que reúne interessados nas tecnologias dos micro e nano robôs (www.recope.br/robo/microrrobo3).

11.10.22 - Tendência Futura Há um certo consenso em que o futuro da robótica se concentrará no desenvolvimento de

robôs móveis mais avançados para ambientes industriais e para explorações espaciais. Como conseqüência, se prevê a introdução de robôs em nosso dia-a-dia (casa, escritório, escola, etc.). Por exemplo, a faxineira andróide Tmsuk de 1,40 m e 98 kg, um recente desenvolvimento da empresa japonesa Personal Robotics Solutions (www.recope.br/robo/faxina), pode ser comandada, de forma limitada, para cuidar da casa, limpar janelas, carregar móveis, buscar encomendas e até aplicar massagens.

Uma outra conseqüência é o uso de colônia de robôs (sistemas multi-robôs), ou seja, utilizar os robôs móveis em tarefas cooperativas, seja navegando em um mesmo ambiente e realizando tarefas que um único robô não possa executar, ou executando as tarefas de uma forma mais eficiente. Alguns centros de pesquisa já vêm realizando pesquisas neste sentido como pode ser observado em www.recope.br/robo/multirobo1, www.recope.br/robo/multirobo2 e www.recope.br/robo/multirobo3.

Page 37: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

Em resumo, uma grande fonte de informações sobre novidades em robótica pode ser encontrada na referência JONES (1999). Entretanto, a melhor forma de estar atualizado sobre aplicações especiais de robôs e as novas tendências é através da Internet. Para isso, existem sites especializados de busca tais como www.recope.br/robo/busca1, www.recope.br/robo/busca2 e www.recope.br/robo/busca3. Também existem sites com links para vários outros sites relacionados à robótica (www.recope.br/robo/robotica1, www.recope.br/robo/robotica2, www.recope.br/robo/robotica3 ou www.recope.br/robo/robotica4) e ainda um site especializado em apresentar respostas para as indagações mais freqüentes na área de robótica (www.recope.br/robo/robotica5). Obviamente, essas são apenas algumas sugestões diante dos inúmeros sites que tratam de temas relacionados à robótica.

11.10.23 - REFERÊNCIAS

ALMEIDA, R., ALMEIDA, F. and CARVALHO, R., 1995, Sistema de televigilância, ISR Project Report. ÁLVARES, A. J. & ROMARIZ, L. J., ”Desenvolvimento de um Manipulador Com Dois Graus de Liberdade Controlado Remotamente Via Internet”, V Congresso de Engenharia Mecânica Norte e Nordeste, pp. 529-536, Fortaleza, 1998. ÁLVARES, A. J. & ROMARIZ, L. J., “TeleRobótica: Metodologia Para o Desenvolvimento de Sistemas Robóticos Teleoperados Via Internet”, XV Congresso Brasileiro de Engenharia Mecânica, Águas de Lindóia, 1999. BASTOS FILHO, T. F., SARCINELLI Filho, M., e FREITAS, R. A. C., "An Efficient Obstacle Recognition System for Helping Mobile Robot Navigation", Latin American Applied Research – An International Journal (ISSN 0327-0793), Bahia Blanca, v. 30, n. 1, pp. 157-162, 2000. BENPORAD, A. De Luca, A., ORIOLO, G., “Local Incremental Planning for a Car-Like Robot Navigating among Obstacles”, Proceedings of the 1996 IEEE, Mineapolis, 1996. COMMECTIX, QuickCam color - Guia do Usuário, 1996. DOWELING, K., Robotics: comp.robotics Frequently Asked Questions, Available as a hypertext document at www.frc.ri.cmu.edu/robotics-faq. 90+ pages, 1996. ECKEL, G. & HARE, C., Building a linux internet server, New Riders Publishing, Indianapolis, 1995. ENGELBERGER, J. F., "Robotics in the 21st Century", Scientific American, p. 132, 1995. EVERETT, H. R., “Sensors for Mobile Robots, Theory and Application”, A. K. Peters, Massachusetts, 1995. FREIRE, E. O., T. F., BASTOS FILHO, T. F, Freitas, R. A. C., Schneebeli, H. A. e SARCINELLI Filho, M., "Um Sistema de Sensoriamento Externo para Robôs Móveis com Controle Baseado em Agentes", XII Congresso Brasileiro de Automática, Uberlândia, pp. 581-586, 1998. FURUKAWA, C. M., ‘Navegação de um Veículo Autônomo por Ultra-Som em Ambiente Estruturado’, Dissertação de Mestrado, Escola Politécnica da Universidade de São Paulo, 1992. GADRE, D., “Programming the Parallel Port: Interfacing The PC for Data Acquisition and Process Control”, R&D Publishing, 1998. GOODALL, K., “Mars pathfinder - Welcome to Mars”, http://mars.jpl.nasa.gov/default, 2000. HIRZINGER, G. et al, “Teleoperating space robots - impact for the design of industrial robots", IEEE International Symposium on Industrial Electronics, Portugal, pp. 250-256, 1997. ISHIHARA, W. M., "Desenvolvimento e Construção de um Robô de 4 Patas", Dissertação de Mestrado, Universidade Federal do Espírito Santo, Vitória, ES, 1998.

Page 38: AVALIAÇÃO DE DESEMPENHO DE ROBÔS INDUSTRIAIShermini/Robotica/livro/cap.11.pdf · arquitetura proposta do sistema é apresentada na figura 11.2. Como exemplos de equipamentos teleoperados

JONES, J. L, SEIGER, B. A., FLYNN, A. M., “Mobile Robots: Inspiration to Implementation.”A K Peters, Massachusetts, 1999. MELCHIORS, C., Sistemas interpessoais de videoconferência (mbone)”, http://www.penta. ufrgs.br/~cristina/mbone/ti/indiceti.htm, 1996. MONTEIRO F. et al., “Teleoperating a mobile robot - a solution based on java language”, IEEE International Symposium on Industrial Electronics, Portugal, pp. 263-267, 1997. NEHMZOW, U., BÜHLMEIER, A., DÜRER, H., “Remote Control of Mobile Robot via Internet”, Manchester, 1996. NOF, S. Y. et al., "HandBook of Industrial Robotics”, John Wiley & Sons, 2 ed.., Canada, 1999. NOMADIC TECHNOLOGIES, “XR4000 Mobile Robot”, Disponível na Internet via WWW, URL: http://www.robots.com/products.htm, 1999. OTSUKA, J., “Fatores Determinantes na Efetividade de Ferramentas de Comunicação Mediada por Computador no Ensino à Distância”, http://penta.ufrgs.br:80/pesquisa/joice/ joice_ti.html., 1996. SCHILLING, K., ROTH, H., and Lieb, R., "Teleoperations of Rovers - From Mars to Education", IEEE International Symposium on Industrial Electronics, pp. 257-262, Portugal, 1997. SUN, Sun video user’s guide, 1994. SUPER INTERESSANTE, n. 6, Junho, 2000. TAYLOR, K., & TREVELYAN, J., "A Telerobot on the World Wide Web", National Conference of the Australian Robot Association, Melbourne, http://telerobot.mech.uwa.edu.au., 1995. WOLF, H., & FROITZHEIM, K., "Webvideo - A tool for www based teleoperation", IEEE International Symposium on Industrial Electronics, pp. 268-273, Portugal, 1997. ZHAI, S., MILGRAM, P., “A Telerobotic Virtual Control System”, Proceedings SPIE. Boston, 1991. ZHAI, S., MILGRAM, P., “Human Robot Synergism and Virtual Telerobotic Control”, Proc. HFAC, Canada, 1992.