2º SIMPÓSIO BRASILEIRO DE AUTOMAÇÃO INTELIGENTE CEFET-PR, 13 a 15 de Setembro de 1995 Curitiba Paraná Planejamento De Caminhos Para Manipuladores Robóticos Articulados Em Presença De Obstáculos Usando Uma Descrição Probabilística Tecelada Do Ambiente Maurício Amaral de Almeida Divisão de Automação e Inteligência Artificial Laboratório de Sistemas Integrados Universidade de São Paulo (DAIAlLSIIUSP) malmeida@lsi.usp.br Resumo o problema de planejamento de caminhos para manipuladores robóticos em presença de obstáculos consiste basicamente em buscar uma seqüência de movimentos que permitam ao manipulador mover-se entre os obstáculos, preservando a integridade tanto do manipulado r como do ambiente. O presente trabalho apresenta um método de planejamento de caminhos que aplica grades de ocupação em todas as fases da solução. 1. INTRODUÇÃO O desenvolvimento de robôs "inteligentes~' com alto grau de autonomia tem sido uma importante área de pesquisa de diversos grupos. Para este tipo de robô existe, entre outros, a nessecidade de um sistema capaz de planejar convenientemente os caminhos a serem percorridos durante as atividades de manipulação e deslocamento (Nitsan [12]). Embora os robôs existentes possam realizar tarefas sofisticadas, a maioria destas tarefas pode ser dividida em sub-tarefas do tipo "pick and place"(roach [11]). Estes robôs inteligentes estão normalmente acoplados com outros subsistemas formando um conjunto, como por exemplo, uma célula flexível de manufatura. Para este tipo de célula diversas estruturas de controle, planejamento e administração podem ser propostas. Graham [06] propõe um esquema hierárquico, para uma célula flexível de manufatura, no qual os manipuladores são controlados por um planejador de tarefas. O planejador de tarefas é responsável pela construção de uma seqüência de sub-tarefas que executem a tarefa atribuida a um manipulador. O manipulador deverá também receber uma descrição do ambiente que será construída a partir da informação sensorial disponível. No sentido de executar as instruções recebidas e de fazer um uso adequado da descrição do ambiente o manipulador deverá apresentar um certo grau de inteligência. Esta inteligência tem como componente, entre outras, a habilidade de planejar caminhos. O presente trabalho discute o problema de planejamento para manipuladores robóticos em presença de obstáculos e propõe uma solução baseada em uma descrição em termos de grades de ocupação (EIfes [04]). 2. TRABALHOS ANTERIORES Tradicionalmente são três as abordagens para o planejamento de caminhos [03], [05], [01]: -Método da hipótese e teste. -Método das penalidades. -Métodos dos caminhos livres.
190 2! SIMPÓSIO BRASILEIRO DE ~ 2_'~ o método da hipótese e teste consiste em formular uma hipótese inicial para o movimento e testar esta hipótese contra as possíveis colisões com os obstáculos do ambiente. Se a tentativa falha, i.e. uma colisão é encontrada, o sistema propõe uma nova hipótese que busque transpor o objeto contra o qual houve a colisão e o método é aplicado novamente. O processo continua até que uma solução seja encontrada. Lozano-Perez [11], entretanto, argumenta que mesmo em alguns casos onde a solução existe, este processo pode não encontrá-la, particularmente quando o ambiente é muito complexo. Outro problema desta abordagem é que não existe nenhuma preocupação com a otimalidade do caminho encontrado, assim o caminho encontrado pode não ser viável na prática. O método das penalidades faz uma descrição do ambiente em termos das funções de. penalidades. Estas funções atribuem a cada posição do espaço um valor, que diminui com a distância do ponto aos obstáculos do ambiente. Uma vez de posse desta descrição a busca é feita através das regiões de penalidade mínima. O maior problema com esta abordagem é a possibilidade da existência de mínimos locais na função global de penalidade. O método dos espaços livres consiste basicamente em mapear as regiões livres de colisão e navegar através destas regiões. Lozano-Perez [09]. propõe uma descrição de ambiente usando obstáculos poliédricos convexos e posteriormente dividindo a região livre em poliedros convexos. Neste método, os poliedros que compõem as regiões livres são conectados por um grafo, no qual é feita a busca de caminho. Brooks [02] apresenta uma variante deste método utilizando cones generalizados. Takahashi [14] propõe uma solução baseada em diagramas de Voronoi. Jacak [07] apresenta uma solução do problema no espaço cartesiano usando uma função de penalidades e uma análise junta a junta aplicando os métodos de hipótese e teste e das penalidades ao mesmo tempo. Muitos autores [08], [09], [10], tem feito planejamento de caminhos tal como descrito em [11]. Neste método os obstáculos no ambiente do manipulador são convertidos para o espaço de configuração. No espaço de configuração o manipulador é descrito como um ponto, o que simplifica muito o processo de busca. 3. O SISTEMA DE PLANEJAMENTO DE CAMINHOS 3.1. As interfaces do sistema O sistema de planejamento de caminhos proposto aqui tem duas entradas e duas saídas. As entradas são: - A instrução de movimento. - A descrição do ambiente. As saídas são: - Mensagem de sucesso/falha - O caminho. A instrução de movimento tem a seguinte forma: Mova de Pjs para P jg onde P' s é o ponto de partida para o manip~dor e Pjg é a posição de chegada, ambas descritas em coordenadas de juntas. A mensagem de sucesso ou falha será: Sucesso/Falha na operação A descrição do ambiente será discutida na próxima seção. Finalmente o caminho será descrito como uma seqüência de pontos {XjO,Xj 1,...,Xjn} onde XjO é o ponto Pjs,.Xjn é o ponto ~jg e os outro pontos são o cannnho a ser segmdo descrito em coordenadas de juntas. 3.1.1. A grade de ocupaçlo Figura 3.1 Um ambiente composto por duas caixas. Elfes[04] apresenta um método para descrição de ambientes utilizando as chamadas grades de ocupação. Neste método, o ambiente é
2! SIMPÓSIO BRASILEIRO DE 191 '- descrito como uma grade onde cada célula tem uma probabilidade P de estar ocupada. Esta descrição foi escolhida por ser particularmente simples de ser construída e porque a probabilidade de ocupação é a única informação necessária para a busca de caminho. As figuras 3.1. e 3.2. apresentam um exemplo da construção de uma grade de ocu -o. Figura 3.2. As caixas descritas como um conjunto de células ocupadas. 3.2 A solução: A abordagem de espaço de configuração em uma descrição tecelada. A solução escolhida aqui baseia-se nos trabalhos de Lozano-Perez [01], [08], [09], [10] e Lozano-Perez and Wesley [11], e consiste em planejar o caminho do manipulador no seu espaço de configuração. Brady [O I] observa que este método tem a melhor possibilidade de encontrar um caminho, caso este exista. Neste trabalho será utilizada a descrição tecelada do espaço de configuração, o que apresenta certas facilidades especialmente quando se parte de uma descrição do ambiente já na forma de grades de ocupação. 3.2.1. Os obstáculos de configuração (Co) no espaço de configuração tecelado.. Lozano-Perez [08], afirma que qualquer objeto dentro do espaço de trabalho de um manipulador pode ser mapeado no seu espaço de configuração. A este mapa do objeto chamaremos de obstáculo de configuração (Co). No caso do problema de busca de caminhos o Co será o conjunto de configurações que causam colisão entre o obstáculo e o manipulador. Assim o Co será calculado aplicando-se as relações da cinemática inversa do manipulador (F-I) a cada ponto do obstáculo. Isso se toma particularmente simples devido à descrição tecelada do ambiente, pois para cada célula não zero (Ci),. calcula-se a (F-I), e o resultado será um conjunto de células (C r ) no espaço de configurações tecelado (C ST ). Ao conjunto (C r ) será associada a probabilidade P da célula original (Ci). Se mais de uma célula Cj for mapeada em uma célula C r ' a probabilidade associada a esta última será igual à maior das probabilidades entre as Cio 3.2.2. A busca de caminho no espaço de configuração tecelado. Uma vez completado o C s a busca de T caminho pode ser implementada por um algoritmo A que dará como saída uma seqüência de pontos no espaço de configuração. 3.3. A estrutura do sistema de planejamento. A estrutura do sistema é apresentada na fi 3.3. Figura 3.3. A estrutura do sistema de planejamento. A primeira etapa do processo é responsável por considerar o volume dos segmentos do manipulador. Este processo é chamado de crescimento, por analogia ao método proposto por Lozano-Perez e Wesley [11]. Este processo será detalhado na sessão 3.4. Em seguida é construído o Co no C ST que passa a ser chamado de C SOT O módulo responsável por essa tarefa é chamado de crescimento.
192 ~-'~,\' 2! SIMPÓSIO BRASILEIRO DE ~ Finalmente é feita a busca do caminho entre Pjs e Pjg como descrito acima. 3.4. O crescimento A cinemática inversa não considera o volume dos segmentos do manipulador. Assim é necessário um modelo de manipulador que possibilite considerar o volume dos segmentos. 3.4.1. O modelo do manipulador o elemento escolhido para modelar cada segmento do manipulador é apresentado na. figura 3.4. sendo composto por um cilindro com uma meia esfera em cada extremidade. 3.4.2. O processo de crescimento. Se um elemento como o proposto está em contato com um "ponto sólido" e deseja-se substituir o elemento pelo segmento de reta interno, mantendo o contato e a configuração, é necessário substituir o ponto por uma esfera de raio igual ao raio do segmento. Esta situação e ser vista nas fi s 3.6. e 3.7. Q) (D Figura 3.6. O segmento em contato com um "ponto sólido". I \ / \!! \ / \ I Figure 3.4. O elemento que modela os segmentos do manipulador. Este elemento tem a propriedade de que cada ponto da sua superficie tem a mesma distância R do segmento de reta central. O efetuador será modelado como uma esfera. A figura 3.5 apresenta um manipulador RRR ti ico modelado com este elemento. (o) Figura 3.7. O segmento interno em contato com o ponto crescido mantendo a configuração. No presente sistema o ponto eqüivale a uma célula ocupada na grade de ocupação e a substituição pela esfera eqüivale, por sua vez, a uma substituição por um conjunto esférico de células com probabilidade igual à probabilidade da célula central. Se houver várias células adjacentes ocupadas, a ocupação final da cada célula será o valor máximo entre os valores possíveis. Este processo é análogo ao processo apresentado em Lozano-Perez e Wesley[ 11]. (lo) 3.5. A construção do C SOT O próximo passo é construir o C SOT Figura 3.5. Um manipulador RRR. típico modelado com o elemento proposto. Este processo pode ser implementado sobre a grade de ocupação simplesmente aplicando as relações da cinemática inversa a cada célula não zero da grade. O resultado obtido sobre cada célula será uma ou mais células, da grade de ocupação relativa ao espaço de configuração, dependendo de haver ou não redundância no manipulador.
2' SIMPÓSIO BRASILEIRO DE 193 t; Às células ocupadas no espaço de configuração serão associadas as mesmas probabilidades de ocupação associadas às células que as geraram. 3.6. A busca Como citado acima, a busca de caminho no C SOT será feita utilizando-se um algoritmo A *. É importante entretanto notar que a função custo g(n) do algoritmo deverá ser proporcional à probabilidade associada a cada célula. (e) (f) 4. RESULTADOS E CONCLUSOES 4.1. Resultados o sistema proposto foi implementado em um computador 486 no Laboratório de Sistemas Digitais da Universidade de São Paulo. O sistema pode encontrar caminhos para ambientes simples em poucos segundos, tempo que foi considerado satisfatório para a plataforma. (g) Figura 4.1. Exemplo do caminho encontrado para um manipulador plano de dois segmentos. ~o 4.1.1. Exemplos As figuras 4.1. e 4.2 apresentam exem los dos resultados obtidos lo sistema. [~ j ~ [ a (c) (b) (d) ~ t (b) ~ fi?~ /.f/ :' <... /' :70 " ~ /? -IBJ Qu (c)
194 2! SIMPÓSIO BRASILEIRO DE o [05] FU, K.S.; GONSALES, R.C.: LEE C.G.S. Robotics control, sensing, VISlon and inteligence. New York, MeGraw RiU, 1987. [06] GRAHAM, lh. Speeial computer architecture for roboties: tutorial and survey. IEEE Transactions on Robotics ans Automation, v, 5, n.5, p.543-54, Oet. 1987. (d) Figura 4.2. Exemplo do cominho encontrado para um manipulador tipo RRT em um ambiente 3D. 4.2. Conclusões o sistema foi capaz de encontrar caminhos para a maioria dos ambientes propostos eo método foi considerado válido. Alguns dos desenvolvimentos futuros incluem considerações sobre obstáculos móveis, geração do e so em tempo real, e coordenação T de múltiplos manipuladores. AGRADECIMENTOS Gostaria de agradecer ao Dr. Alberto Elfes pelas sugestões e ao Prof. Dr. Márcio Rillo por seu apoio e orientação. Bibliografia [01] BRADY, M.et alo Robot motion: planning and control Cambridge,MIT Press, 1982. [02] BROOKS, RA. Solving the find-path problem by good representation of free space. IEEE Transactions on Systens, Man and Cybemetics, v.i3, n.3, p.190-7, MarJApr.1983. [03] CRAIG, 1.1. Introduction to robotic mechanics and control. Reading, Addison - Wesley, 1986. [04] ELFES, A. Sonar-based real-word mapping and navigation.ieee Joumal 01 Robotics and Automation, v.3, n.3, p.249-65, June 1987. [07] JACAK, W. A discret kinematie model for robots in cartesian spaee. IEEE TransactioDs of Robotics and Automation, v.5, n.4, p.435-43, Aug. 1989. [08] LOSANO-PEREZ, T. A simple motion planning algorithm for general robot manipulators. IEEE Joumal of Robotics and Automation, v 3, n.3, p.224-38, June 1987. [09] LOSANO-PEREZ, T. Automatic planning manipulators transfer movirnents. IEEE Transactions 00 Systens, Man and Cybemetics, v 11, n.l0, p.681-97, Oct. 1981. [10] LOSANO-PEREZ, T. Spacial planing: a configuration space approach. IEEE Transactions on Computers, v 32, n.2, p.l08-20, Feb. 1983. [11] LOSANO-PEREZ, T.; WESLEY, M.A. An algorithrn for planning coilision-free paths among polyedral obstacles. Communications oftheacm, v.22,n.l0, p.560-70, Oct. 1979. [12] NITZAN, D. Developrnent of inteligent robots: archievements and insues. IEEE Joumal of Robotics and Automation, v.i, n.i, p.3-13, Mar. 1985. [13] ROACH, lw.; BOAZ, M.N.Coordinating the motion of robot arms in a common workspace. IEEE Joumal of Robotics and Automation, v.3, n.5, p.437-44, Oct.1987. [14] TAKAHASHI, O.; SCHILLING, Rl Motion planning in a plane using generalized Voroni diagrams. IEEE Transactions on Robotics and Automation, n.5, n 2, p.143-50, Apr.1989.