programa de engenharia elétrica / coppe universidade ...toni/files/papers/alfhl100211-cba12.pdf ·...

8
3846 Anais do XIX Congresso Brasileiro de Automática, CBA 2012. ISBN: 978-85-8001-069-5 ALGORITMOS DE CONTROLE CINEMÁTICO COM DESVIO DE OBSTÁCULOS APLICADOS A ROBÔS DO TIPO PÓRTICO Thiago B. de Almeida-Antonio * , Antonio C. Leite * , Pål J. From , Liu Hsu * , Fernando Lizarralde * * Programa de Engenharia Elétrica / COPPE Universidade Federal do Rio de Janeiro - UFRJ Rio de Janeiro, RJ, Brasil Department of Mathematical Sciences and Technology Norwegian University of Life Sciences Ås, Norway Emails: [email protected], [email protected], [email protected], [email protected], [email protected] Abstract— In this work, the problem of kinematic control and obstacle avoidance for a gantry robot is considered. The proposed control methods use the concept of artificial potential fields to perform fixed and mobile obstacle avoidance, during the execution of reference trajectory tracking tasks. To achieve this aim, two obstacle avoidance algorithms are considered: the Gradient Projection Method and the Artificial Potential Fields Method. Simulation results obtained from the obstacle avoidance algorithms as well as the position and orientation kinematic control algorithms illustrate the performance and viability of the presented scheme. Keywords— Obstacle Avoidance, Potential Fields, Kinematic Control, Redundant Manipulators. Resumo— Neste trabalho, considera-se o problema de controle cinemático e desvio de obstáculos para robôs do tipo pórtico. Os métodos de controle propostos utilizam o conceito de funções potenciais artificiais para realizar o desvio de obstáculos fixos e móveis, durante a execução de tarefas de rastreamento de trajetória. Para alcançar esse objetivo dois algoritmos de desvio de obstáculo são considerados: o Método da Projeção do Gradiente e o Método de Campos Potenciais Artificiais. Resultados de simulação para os algoritmos de desvio de obstáculos bem como para os algoritmos de controle cinemático de posição e orientação ilustram o desempenho e a viabilidade do esquema apresentado. Palavras-chave— Desvio de Obstáculos, Campos Potenciais, Controle Cinemático, Robôs Redundantes. 1 Introdução Em diversas aplicações práticas da robótica geral- mente é necessário que os robôs realizem tarefas em ambientes pouco estruturados repletos de objetos físi- cos, que representam obstáculos aos seus movimentos. Por exemplo, um AUV (no inglês, autonomous un- derwater vehicle) realizando missões de inspeção e in- tervenção submarina em uma estrutura offshore, deve navegar entre dutos, válvulas e outros equipamentos evitando colisões (Pascoal et al., 1997). Planejar uma trajetória a priori pode ser útil para o caso onde objetos fixos estão presentes no ambiente, mas o planejamento de trajetórias para objetos móveis não é trivial. O objetivo do planejamento é gerar uma trajetória livre de colisões para o sistema de controle, assegurando a execução bem sucedida da tarefa dese- jada. Neste caso, é considerado que o modelo do robô e o cenário são perfeitamente conhecidos. A vanta- gem das técnicas de planejamento é que elas fornecem soluções globais para o problema. Contudo, quando a vizinhança do ambiente é desconhecida e imprevi- sível, essas técnicas podem falhar (Kavraski and La- valle, 2008). Uma forma complementar para resolver esse pro- blema é utilizar um esquema de desvio de obstáculos online ou reativo, onde o objetivo é realizar a tarefa enquanto o manipulador movimenta-se por um cami- nho livre de colisões com os obstáculos detectados pe- los sensores. A vantagem de usar um algoritmo do tipo reativo para desvio de obstáculos é computar o movi- mento do manipulador introduzindo as informações dos sensores dentro da malha de controle, usada para adaptar o movimento para qualquer situação incompa- tível com o planejamento inicial (Minguez et al., 2008). A desvantagem principal em considerar as informações do mundo real durante a execução do algoritmo é que somente garante resultados locais, uma vez que os obs- táculos que estão fora do alcance de leitura dos senso- res não serão detectados. Apesar dessa limitação, as técnicas de desvio de obstáculo são obrigatórias para lidar com o problema de mobilidade de sistemas robó- ticos em ambientes desconhecidos. Neste contexto, di- versos métodos têm sido desenvolvidos para combinar soluções globais de planejamento de movimento com soluções locais de desvio de obstáculos. Essas técnicas são comumente denominadas de Planejamento de Mo- vimento baseado em Sensores (Minguez et al., 2008). Os principais algoritmos projetados podem ser divididos em dois grupos, de acordo com o número de passos utilizados para computar o movimento li- vre de colisão (Minguez et al., 2008). Os métodos de um passo transformam diretamente a informação dos sensores em controle de movimento. Em (Lumelsky, 1987) o desvio de obstáculos é realizado utilizando um método heurístico, que é derivado de métodos clássi- cos de planejamento. Em (Singh et al., 1996; Kha- tib, 1985; Chung et al., 1997) são apresentados mé- todos baseados em analogias físicas que consideram o desvio de obstáculos como um problema físico conhe- cido. Por outro lado, os métodos com mais de um passo computam uma informação intermediária que é processada em seguida para obter o movimento li- vre de colisão e são classificados em: (i) métodos de

Upload: vuongphuc

Post on 08-Jan-2019

213 views

Category:

Documents


0 download

TRANSCRIPT

3846

Anais do XIX Congresso Brasileiro de Automática, CBA 2012.

ISBN: 978-85-8001-069-5

ALGORITMOS DE CONTROLE CINEMÁTICO COM DESVIO DE OBSTÁCULOSAPLICADOS A ROBÔS DO TIPO PÓRTICO

Thiago B. de Almeida-Antonio∗, Antonio C. Leite∗, Pål J. From†, Liu Hsu∗, Fernando Lizarralde∗

∗Programa de Engenharia Elétrica / COPPEUniversidade Federal do Rio de Janeiro - UFRJ

Rio de Janeiro, RJ, Brasil†Department of Mathematical Sciences and Technology

Norwegian University of Life SciencesÅs, Norway

Emails: [email protected], [email protected], [email protected], [email protected],[email protected]

Abstract— In this work, the problem of kinematic control and obstacle avoidance for a gantry robot isconsidered. The proposed control methods use the concept of artificial potential fields to perform fixed andmobile obstacle avoidance, during the execution of reference trajectory tracking tasks. To achieve this aim,two obstacle avoidance algorithms are considered: the Gradient Projection Method and the Artificial PotentialFields Method. Simulation results obtained from the obstacle avoidance algorithms as well as the position andorientation kinematic control algorithms illustrate the performance and viability of the presented scheme.

Keywords— Obstacle Avoidance, Potential Fields, Kinematic Control, Redundant Manipulators.

Resumo— Neste trabalho, considera-se o problema de controle cinemático e desvio de obstáculos para robôsdo tipo pórtico. Os métodos de controle propostos utilizam o conceito de funções potenciais artificiais pararealizar o desvio de obstáculos fixos e móveis, durante a execução de tarefas de rastreamento de trajetória.Para alcançar esse objetivo dois algoritmos de desvio de obstáculo são considerados: o Método da Projeção doGradiente e o Método de Campos Potenciais Artificiais. Resultados de simulação para os algoritmos de desvio deobstáculos bem como para os algoritmos de controle cinemático de posição e orientação ilustram o desempenhoe a viabilidade do esquema apresentado.

Palavras-chave— Desvio de Obstáculos, Campos Potenciais, Controle Cinemático, Robôs Redundantes.

1 Introdução

Em diversas aplicações práticas da robótica geral-mente é necessário que os robôs realizem tarefas emambientes pouco estruturados repletos de objetos físi-cos, que representam obstáculos aos seus movimentos.Por exemplo, um AUV (no inglês, autonomous un-derwater vehicle) realizando missões de inspeção e in-tervenção submarina em uma estrutura offshore, devenavegar entre dutos, válvulas e outros equipamentosevitando colisões (Pascoal et al., 1997).

Planejar uma trajetória a priori pode ser útil parao caso onde objetos fixos estão presentes no ambiente,mas o planejamento de trajetórias para objetos móveisnão é trivial. O objetivo do planejamento é gerar umatrajetória livre de colisões para o sistema de controle,assegurando a execução bem sucedida da tarefa dese-jada. Neste caso, é considerado que o modelo do robôe o cenário são perfeitamente conhecidos. A vanta-gem das técnicas de planejamento é que elas fornecemsoluções globais para o problema. Contudo, quandoa vizinhança do ambiente é desconhecida e imprevi-sível, essas técnicas podem falhar (Kavraski and La-valle, 2008).

Uma forma complementar para resolver esse pro-blema é utilizar um esquema de desvio de obstáculosonline ou reativo, onde o objetivo é realizar a tarefaenquanto o manipulador movimenta-se por um cami-nho livre de colisões com os obstáculos detectados pe-los sensores. A vantagem de usar um algoritmo do tiporeativo para desvio de obstáculos é computar o movi-mento do manipulador introduzindo as informações

dos sensores dentro da malha de controle, usada paraadaptar o movimento para qualquer situação incompa-tível com o planejamento inicial (Minguez et al., 2008).A desvantagem principal em considerar as informaçõesdo mundo real durante a execução do algoritmo é quesomente garante resultados locais, uma vez que os obs-táculos que estão fora do alcance de leitura dos senso-res não serão detectados. Apesar dessa limitação, astécnicas de desvio de obstáculo são obrigatórias paralidar com o problema de mobilidade de sistemas robó-ticos em ambientes desconhecidos. Neste contexto, di-versos métodos têm sido desenvolvidos para combinarsoluções globais de planejamento de movimento comsoluções locais de desvio de obstáculos. Essas técnicassão comumente denominadas de Planejamento de Mo-vimento baseado em Sensores (Minguez et al., 2008).

Os principais algoritmos projetados podem serdivididos em dois grupos, de acordo com o númerode passos utilizados para computar o movimento li-vre de colisão (Minguez et al., 2008). Os métodos deum passo transformam diretamente a informação dossensores em controle de movimento. Em (Lumelsky,1987) o desvio de obstáculos é realizado utilizando ummétodo heurístico, que é derivado de métodos clássi-cos de planejamento. Em (Singh et al., 1996; Kha-tib, 1985; Chung et al., 1997) são apresentados mé-todos baseados em analogias físicas que consideram odesvio de obstáculos como um problema físico conhe-cido. Por outro lado, os métodos com mais de umpasso computam uma informação intermediária queé processada em seguida para obter o movimento li-vre de colisão e são classificados em: (i) métodos de

3847

Anais do XIX Congresso Brasileiro de Automática, CBA 2012.

ISBN: 978-85-8001-069-5

subconjuntos de controle, que computam um conjuntointermediário de sinais de controle, baseados em dire-ções ou velocidades, escolhendo-se um deles como so-lução (Borenstein and Koren, 1991; Fox et al., 1997);(ii) métodos que computam informações intermediá-rias de alto nível, que são transformadas em movi-mento, por exemplo, o método de navegação por dia-grama de proximidade (Minguez and Montano, 2004).

Neste trabalho, considera-se o problema de con-trole cinemático e desvio de obstáculos para robôs re-dundantes do tipo pórtico. Os algoritmos de controlepropostos1 são baseados nos métodos da Projeção doGradiente e de Campos Potenciais Artificiais para re-alizar o desvio de obstáculos fixos e móveis, durante aexecução de tarefas de rastreamento de trajetória. Umestudo comparativo entre ambos os métodos é apre-sentado, destacando as vantagens e desvantagens decada abordagem. Resultados de simulação ilustram odesempenho e a viabilidade do esquema apresentado.

2 Formulação do Problema

Considere o problema de rastreamento de trajetóriaspara robôs do tipo pórtico, na presença de obstáculosfixos e móveis (Figura 1). Um robô tipo pórtico possuiuma estrutura cinemática redundante, composta porum manipulador com 6-DoF (no inglês, degrees of free-dom) suspenso por um sistema de trilhos (ou grua) quepermite movimentos em 3-DoF ao longo de um eixovertical z e dois eixos horizontais perpendiculares, xe y. Esse mecanismo é também denominado de robôcartesiano ou linear, e em geral é um sistema robóticode grande porte que realiza aplicações de transporte deobjetos, mas que pode ser utilizado para outras apli-cações como, por exemplo, soldagem, montagem dotipo pick-and-place e manipulação de materiais (Hanet al., 1999).

A ideia consiste em usar os graus de mobilidadeextras (ou redundantes) do robô para realizar o desviode obstáculos, enquanto que os graus de mobilidaderestantes (ou não-redundantes) são usados para reali-zar a tarefa desejada. Aqui, assume-se que a trajetó-ria de referência é conhecida e previamente planejadaa partir de um algoritmo de planejamento de traje-tórias no espaço das juntas ou no espaço operacional.

3 Modelagem e Controle Cinemático

Considere o problema de controle cinemático para umrobô manipulador com n-DoF. O movimento do ma-nipulador pode ser descrito por:

θi = ui, i = 1, · · · , n, (1)

onde θi é a velocidade angular da i-ésima junta e uié o sinal de controle de velocidade aplicado ao drivedo motor da i-ésima junta. Essa abordagem pode seraplicada à maioria dos robôs comerciais com altas ta-xas de redução nas engrenagens ou quando baixas ve-locidades são empregadas para realizar a tarefa de in-teresse.

1Os algoritmos propostos no presente trabalho são clas-sificados como métodos de um passo utilizando analogiasfísicas.

Obstáculo móvel Obstáculo Fixo

Grua

Manipulador

Trajetória

~ze

~ye~xe

~zb~yb

~xb

Figura 1: Robô do tipo pórtico realizando o rastre-amento de uma trajetória, na presença de obstáculosfixos e móveis.

Seja p ∈ R3 a posição do efetuador do manipu-lador com respeito a sua base, expresso no sistemade coordenadas da base Eb e Rbe a matriz de rotaçãodo sistema de coordenadas da ferramenta Ee com res-peito ao sistema de coordenadas da base Eb. Agoraconsidere que q = [qs qTv ]T é a representação de qua-ternion unitário para Rbe, onde qs ∈ R e qv ∈ R3 sãoas partes escalar e vetorial do quaternion respectiva-mente, sujeitas a restrição qT q = 1. Nesse contexto,a configuração do efetuador x ∈ Rm é obtida pelaequação de cinemática direta:

x =[pq

]= h(θ), (2)

onde θ ∈ Rn é vetor das variáveis das juntas do mani-pulador. Em geral, h(·) :Rn 7→Rm é um mapeamentonão-linear, descrevendo a relação entre o espaço dasjuntas Q e o espaço operacional O. Note que, consi-derando um robô do tipo pórtico com nove graus demobilidade (9-DoF), m=7 e n=9.

A equação da cinemática diferencial pode ser ob-tida pela derivada temporal de cinemática direta (2):

x =[pq

]= Ja(θ)θ, (3)

onde Ja(θ) = ∂h(θ)∂θ∈ Rm×n é o Jacobiano analítico.

A velocidade do efetuador v = [p ω]T , composta pelavelocidade linear p e a velocidade angular ω pode serescrita como:

v = J(θ)θ, (4)onde J(θ) ∈ Rm×n é o Jacobiano do manipulador. Arelação entre a velocidade angular ω e a derivada doquaternion q pode ser expressa por:

ω = 2 Jr(q) q , (5)

onde Jr(q) = [−qv qsI−(qv×)] é o Jacobiano da repre-sentação (Siciliano et al., 2009). Então, considerandoa abordagem de controle cinemático (1) e a partir de(4), pode-se obter o seguinte sistema de controle:

v = J(θ)u . (6)

Uma lei de controle cartesiana vc pode ser trans-formada em sinais de controle das juntas utilizando:

u = J†(θ)vc = J†(θ)[vpvq

], (7)

3848

Anais do XIX Congresso Brasileiro de Automática, CBA 2012.

ISBN: 978-85-8001-069-5

onde J†=JT (J JT )−1 é a pseudo-inversa a direita deJ . Note que, a validade de (7) é restrita a movimen-tos que não conduzam o robô para uma configuraçãosingular. Combinando (6) e (7), tem-se que:[

]=[vpvq

], (8)

e, naturalmente, vp e vq são projetadas para contro-lar a posição e a orientação do efetuador, respectiva-mente.

Note que com os graus de mobilidades extras épossível gerar movimentos internos nas juntas do ma-nipulador sem modificar a posição e a orientação doefetuador. Isso pode ser alcançado acrescentando em(7) um termo de velocidade das juntas arbitrário, quedeve ser especificado para satisfazer uma restrição adi-cional (Siciliano et al., 2009; Liégeois, 1977). Então, alei de controle resultante assume a forma:

u = J†(θ)vc + α(I − J†J)θ0 , (9)

onde α é um coeficiente escalar indicando a prioridadede realização da restrição adicional especificada poratravés de θ0. A matriz (I − J†J) permite a projeçãodo vetor θ0 no espaço nulo do Jacobiano, de modo anão violar a restrição cinemática (6). Uma escolhatípica para o vetor θ0 é dada por:

θ0 =(∂g(θ)∂θ

)T, (10)

onde g(θ) é uma função objetivo em termos dos ân-gulos das juntas. Uma função objetivo típica, ondeobjetivo é maximizar a distância mínima a um obstá-culo, é dada por:

g(θ) = minp,o ||p(θ)− o|| , (11)

onde o ∈ R3 é o vetor posição de um ponto localizadosobre o obstáculo (e.g., o centro de massa) e p é ovetor posição de um ponto genérico na estrutura domanipulador (e.g., uma junta ou um elo). Note que,outros tipos de funções objetivo podem ser utilizadascomo, por exemplo, a distância do limite mecânico dasjuntas e a medida de manipulabilidade (Siciliano et al.,2009). Neste trabalho, a função objetivo utilizada ésimilar a um campo potencial repulsivo.

3.1 Controle de Posição

Considerando o problema de controle cinemático deposição para um robô manipulador, assume-se queo objetivo de controle para uma determinada tarefaseja alcançar uma posição desejada variante no tempopd(t) a partir da posição inicial p. Então, o objetivode controle é descrito por:

p→ pd(t), ep = pd(t)− p → 0 , (12)

onde ep é o erro de posição. A partir de (8) tem-seque p = vp e usando uma lei de controle com açãoproporcional e feedforward:

vp = Kpep + pd , (13)

onde Kp=kp I e a dinâmica do erro de posição é go-vernada por ep+Kpep = 0. Portanto, a partir de umaescolha adequada de kp como uma constante positiva,o sistema do erro em malha-fechada é exponencial-mente estável e, consequentemente, limt→∞ ep(t) = 0.

3.2 Controle de Orientação

Considerando o problema de controle cinemático deorientação para um robô manipulador, assume-se queo objetivo de controle para uma determinada tarefaseja alcançar uma orientação desejada variante notempo Rd(t) a partir da orientação inicial do efetua-dor R, usando o quaternion unitário para representara orientação. Então, o objetivo de controle é descritopor:

R→ Rd(t), Rφ = RT Rd → I, (14)

onde Rφ ∈ SO(3) é a matriz do erro de orientação.Considere eq = [eqs eTqv]T a representação de quater-nion unitário para Rφ com eq = q−1 ∗ qd(t), onde qd éa representação de quaternion unitário de Rd e o sím-bolo “∗” denota o operador produto de quaternion.Note que eq = [1 0T ]T se e somente se R e Rd estãoalinhadas. Então, a partir de (8) tem-se que ω = vqe usando uma lei de controle com ação proporcional efeedforward:

vq = ωd +Ko eqv , (15)

onde ωd é a velocidade angular desejada e Ko éuma matriz positiva definida, o ponto de equilíbrio(eqs, eqv) = (±1, 0T ) é quase-globalmente assintotica-mente estável (Wen and Kreutz-Delgado, 1991). Umaanálise de estabilidade e convergência para o esquemade controle de orientação é apresentada em (Leiteet al., 2009).

4 Algoritmos de Desvio de Obstáculo

Uma abordagem eficiente para planejamento onlineé baseada no uso de campos potenciais artificiais, queconsiste em criar potenciais atrativos e repulsivos paraque o robô realize uma tarefa desejada na presençade obstáculos. Essa abordagem é baseada no con-ceito de que um ponto de interesse P localizado sobreo manipulador pode se mover pelo espaço cartesianosob influência de um campo potencial U , obtido pelasuperposição de um potencial atrativo Ua que con-duz o ponto P para o objetivo primário (e.g., regu-lação ou rastreamento), e um potencial repulsivo Urque afasta o ponto P de possíveis obstáculos. Nestecontexto, dois métodos de desvio de obstáculos serãoinvestigados no presente trabalho: (i) o método daProjeção do Gradiente (Chung et al., 1997; Sicilianoet al., 2009) e (ii) o método de Campos PotenciaisArtificiais (Siciliano et al., 2009; Khatib, 1985).

4.1 Método da Projeção do Gradiente

Esse método consiste na projeção de um termo de ve-locidade arbitrária no espaço nulo do Jacobiano e naotimização de uma função objetivo, similar a um po-tencial repulsivo, para assegurar a execução da tarefacom desvio de obstáculos (Chung et al., 1997). Então,substituindo o termo θ0 em (9) por um termo ∇H(θ)é possível realizar o controle de posição, bem como ocontrole de posição e orientação, como será mostradoa seguir.

Para solucionar o problema de controle de posiçãocom desvio de obstáculos adota-se o seguinte sinal decontrole:

u = J†p vp + α(I − J†p Jp)∇H(θ), (16)

3849

Anais do XIX Congresso Brasileiro de Automática, CBA 2012.

ISBN: 978-85-8001-069-5

onde Jp é composto pelas três primeiras linhas do Ja-cobiano do manipulador, α é um coeficiente escalarnegativo e ∇H(θ) é a função objetivo baseada em umpotencial repulsivo, escolhido para evitar a colisão domanipulador com obstáculos durante a execução datarefa. Em particular, a ideia é construir uma barreirapotencial ao redor do obstáculo, repelindo o manipu-lador dessa região. Para cada obstáculo i, o potencialrepulsivo associado é

Ur,i(θ) =

{kr,i

γ

(1

ηi(θ) −1η0,i

)γ, ηi(θ) ≤ η0,i,

0 , ηi(θ) > η0,i,

(17)onde kr,i > 0, ηi(θ) é a distância mínima entre o obs-táculo e um ponto de interesse no manipulador, η0,ié o raio de influência do obstáculo (i.e. a distânciamínima estipulada para que o manipulador perceba apresença do obstáculo) e γ é um fator de escalamento.Um escolha típica é γ=2 (Chung et al., 1997). O po-tencial Ur,i é nulo fora do raio de influência e positivodentro, e tende para infinito conforme a vizinhançado obstáculo se aproxima, e mais abruptamente con-forme γ aumenta. Então, a função objetivo em termosda força repulsiva resultante é:

∇H(θ) =no∑r,i

∇Ur,i(θ) , (18)

onde no é o número de obstáculos e o gradiente dopotencial repulsivo ∇Ur,i dentro do raio de influênciaé dado por:

∇Ur,i(θ) = kr,iη2i (θ)

(1

ηi(θ)− 1η0,i

)∇ηi(θ), (19)

onde ∇ηi(θ) é a derivada da distância que será de-finida a posteriori. É válido ressaltar que, ∇Ur,i énulo fora do raio de influência, e que os valores dosparâmetros kr,i e η0,i são assumidos constantes paratodos os obstáculos. Note que nessa abordagem maisde um ponto de interesse pode ser considerado parao mesmo obstáculo, ou seja, ∇Ur,i ∈ Rk×1, onde k éo número de pontos de interesse. Agora, para soluci-onar o problema de controle de posição e orientaçãosimultaneamente, com desvio de obstáculos adota-seo seguinte sinal de controle:

u = J†[vpvq

]+ α(I − J†J)∇H(θ), (20)

onde α é um coeficiente escalar negativo, ∇H(θ) é afunção objetivo (18), vp e vq são os sinais de controlede posição e orientação, definidos por (13) e (15) res-pectivamente.

4.2 Método de Campos Potenciais Artificiais

O método de Campos Potenciais Artificiais utiliza umsinal de controle dependente de potenciais atrativos erepulsivos, para garantir a execução bem sucedida datarefa na presença de obstáculos (Khatib, 1985). Apartir desse método considera-se apenas o problemade controle de posição, uma vez que o controle de ori-entação por meio de campos potenciais não é umaabordagem simples e intuitiva.

Seja pc,i(θ) para i = 1, · · · , k − 1 os pontos decontrole localizados nos elos ou nas juntas do mani-pulador sujeitos somente a um potencial repulsivo Ur,

e pc,k(θ) o ponto de controle localizado no efetuador,sujeito a um potencial total Ut = Ua + Ur. Então,o sinal de controle u baseado no método de CamposPotenciais Artificiais é dado por:

u = −k−1∑i=1

JTc,i(θ)∇Ur(pc,i)− JTc,k(θ)∇Ut(pc,k) , (21)

onde pc,i é utilizado no cálculo de ηi e Jc,i(θ) é o Ja-cobiano associado ao ponto de controle pc,i(θ) parai = 1, · · · , k. Note que, o Jacobiano Jc,i é calculadoda mesma forma que o Jacobiano geométrico, consi-derando o ponto de controle pc,i como o efetuador ezerando todas as colunas posteriores:

Jc,i =[~h1 × ρi,1 · · · ~hi−1 × ρi,i−1 0 · · · 0~h1 · · · ~hi−1 ~hi · · · 0

],

onde ~hi é o vetor unitário na direção do eixo de rotaçãoda i-ésima junta, ρi,j = (pc,i−pc,j) e para o caso ondeo manipulador possui uma junta prismática, a colunado Jacobiano não se altera. Então, os gradientes dospotenciais repulsivo e total são dados por:

∇Ur(θ) =no∑i=1

∇Ur,i, (22)

∇Ut(θ) = ∇Ua(θ) +no∑i=1

∇Ur,i , (23)

onde ∇Ua(θ) é o gradiente do potencial atrativo. Opotencial atrativo é projetado para guiar o manipu-lador para uma posição desejada e pode ser do tipoparaboloide ou cônico:1. Paraboloide com vértice em pd:

Ua1(θ) =12Kae

Tp (θ)ep(θ) =

12Ka ||ep(θ)||2 , (24)

onde Ka > 0. Essa função é sempre positiva e possuimínimo global em pd, igual a zero. A força atrativaresultante, em termos do gradiente de (24), é definidapor:

∇Ua1(θ) = −fa1(θ) = −Kaep(θ) , (25)e converge linearmente para zero quando o manipula-dor tende para a posição desejada;2. Cônico com vértice em pd:

Ua2(θ) = Ka ||ep(θ)|| . (26)

Essa função é sempre positiva e possui mínimoglobal em pd, igual a zero. A força atrativa resultante,em termos do gradiente de (26), é descrita por:

∇Ua2(θ) = fa2(θ) = −Kaep(θ)||ep(θ)||

, (27)

que é constante em módulo. Note que, o gradiente dopotencial atrativo parabólico tende a crescer indefini-tivamente conforme a norma do vetor do erro ep au-menta, enquanto que o gradiente do potencial atrativocônico é indefinido em pd. Uma escolha que combinaas vantagens de cada um dos potenciais é definir umpotencial atrativo como uma superfície cônica longeda posição desejada e uma superfície paraboloide nasua vizinhança. Em particular, colocando a transição

3850

Anais do XIX Congresso Brasileiro de Automática, CBA 2012.

ISBN: 978-85-8001-069-5

entre os dois potenciais onde ||ep(θ)|| = 1 (i.e., na su-perfície da esfera de raio unitário centrada em pd), ogradiente do potencial atrativo, e consequentemente aforça atrativa, é contínuo para qualquer configuraçãode ângulo das juntas. Então, o gradiente do potencialatrativo assume a forma:

∇Ua(θ) ={

−Kaep , ||ep|| < 1 ,−Ka

ep

||ep|| , ||ep|| ≥ 1 .

Por outro lado, o potencial repulsivo é definidoda mesma forma que no método da Projeção do Gra-diente, e a constante kr,i é substituída por br,i umavez que elas não são definidas necessariamente com omesmo valor.

4.3 Cálculo da Distância Mínima

O problema de desvio obstáculos para manipulado-res redundantes pode ser formulado em termos daprevenção de colisão do efetuador e dos elos comos obstáculos do ambiente. Essa abordagem é va-lidada controlando-se continuamente a posição deum ponto do elo localizado mais próximo do obstá-culo (Khatib, 1985). A ideia é utilizar os pontos decontrole previamente escolhidos (as juntas, por exem-plo) para localizar em cada elo o ponto mais próximodo obstáculo. Na cadeia do manipulador, um elo podeser representado como um segmento de linha definidopelas posições cartesianas das suas duas juntas vizi-nhas. Então, um ponto p do elo ligado ao ponto p1da junta anterior e ao ponto p2 da junta posterior édescrito, com respeito a um sistema de coordenadasde referência, pela seguinte equação paramétrica:

p = p1 + λ (p2 − p1) , (28)

onde λ é uma constante de parametrização a ser defi-nida. A dificuldade para obter a distância mínima deum elo a um obstáculo pode ser reduzida ao cálculo doponto do elo mais próximo a um vértice, um lado ouuma face. Nesse trabalho, os obstáculos consideradosforam representados por vértices. Note que um con-junto de vértices pode formar um objeto. Considereuma reta parametrizada na forma (28) e um ponto p0,por exemplo, um ponto localizado no obstáculo. Cal-culando o quadrado da distância entre um ponto destalinha e o ponto p0 e minimizando este valor, pode-seobter o parâmetro λ por (Weisstein, 2012)

λ = − (p1 − p0) · (p2 − p1)|p2 − p1|2

. (29)

Então, obtendo-se o parâmetro λ, pode-se cal-cular o ponto do elo p mais próximo do obstáculo.Para o caso em que λ ≤ 0, p = p1, enquanto quepara λ ≥ 1, p = p2; nos demais casos p é obtidopor (28). Portanto, a distância mínima ηi é calculadapor (Khatib, 1985):

ηi(θ) =

||(p0−p1)×(p0−p2)||

||p2−p1||, 0 < λ < 1,

||(p0 − p1)|| , λ ≤ 0,||(p0 − p2)|| , λ ≥ 1.

(30)

A derivada parcial da distância mínima é dife-rente para cada método utilizado. No método da Pro-jeção do Gradiente, deriva-se a distância em relação

as variáveis das juntas do manipulador:

∇ηi(θ) =

∂ηi(θ)∂θ1...

∂ηi(θ)∂θn

, (31)

enquanto que no método dos Campos Potenciais Arti-ficiais, deriva-se a distância em relação às coordenadascartesianas obtendo-se

∇ηi(θ) = l

ηi(θ), (32)

onde l definido como

l =

{ p , 0 < λ < 1,p1, λ ≤ 0 ,p2, λ ≥ 1 .

(33)

4.4 Estudo Comparativo entre os Métodos

É válido ressaltar que a utilização da abordagem decampos potenciais artificiais não garante que a ta-refa de interesse seja executada satisfatoriamente (Fi-gura 2). Note que, na ilustração da esquerda a exe-cução da tarefa é bem sucedida e permite um mo-vimento sem colisões entre a posição inicial (S) e aposição desejada (G). Por outro lado, na ilustraçãoda direita ocorre uma condição de falha e por isso omanipulador permanece preso em uma configuraçãode equilíbrio de forças. De fato, as diversas forças (oupuramente atrativas, ou repulsivas e atrativas) atu-ando sobre os pontos de controle podem neutralizarumas às outras, bloqueando o movimento do mani-pulador. Como consequência é recomendado utilizarmétodos de campos potenciais artificiais no espaço detrabalho em conjunto com um algoritmo de ajusterandômico (Barraquand and Latombe, 1991; Sicilianoet al., 2009; Minguez et al., 2008).

S

G

S

G

Figura 2: Manipulador planar com 3 juntas de revo-lução realizando uma tarefa de regulação, com desviode obstáculos (Siciliano, et. al., 2009).

Por outro lado, utilizando o método da Proje-ção do Gradiente (Chung et al., 1997) é possívelimplementar uma estratégia de controle cinemáticode posição e orientação simultaneamente, enquantoque com o método de Campos Potenciais Artifici-ais (Khatib, 1985) isso não foi possível, uma vez queo emprego de um potencial atrativo para modificara orientação não uma abordagem simples e intuitiva.Outra vantagem da utilização do método da Projeçãodo Gradiente é que outros tipos de função objetivopodem ser otimizadas durante a execução da tarefa,por exemplo, a manipulabilidade e o limite mecânicodas juntas. Contudo, como o método dos Campos Po-tenciais Artificiais não depende da inversa da matriz

3851

Anais do XIX Congresso Brasileiro de Automática, CBA 2012.

ISBN: 978-85-8001-069-5

Jacobiana, ele pode ser mais vantajoso quando o ma-nipulador encontra-se na vizinhança de configuraçõessingularidades.

Uma outra característica é que ambos os métodosnão são robustos à escolha da posição inicial para o efe-tuador, pois como eles utilizam um potencial repulsivoque depende da inversa da distância ao quadrado, apresença de obstáculos muito próximos pode produziruma força muito elevada impedindo o movimento doefetuador na direção desejada.

5 Simulações

Nesta seção, apresentam-se os resultados das simu-lações obtidos com um robô do tipo pórtico com 9-DoF para ilustrar o desempenho e a viabilidade dosalgoritmos de desvio de obstáculos investigados. Omanipulador utilizado foi o PUMA 560 e a faixa dealcance máximo para as juntas prismáticas do pór-tico são dadas por: x ∈ [−1, 1] m, y ∈ [−1, 1] me z ∈ [−1, 0.3] m. Os parâmetros de controle,ajustados empiricamente, são Kp = Ka = 70I s−1,Ko = 50I rad s−1, α = −10−2, kr,i = 10 e br,i = 10−4.A tarefa de interesse consiste no rastreamento deuma trajetória de referência, ao redor posição inicialdo efetuador e paralela ao plano YZ, descrita porpd(t) = [0 (−r sin(wnt)) (−r cos(wnt) + r)]T , onder = 0, 2m e wn = π

10 rad s−1 são o raio e a veloci-

dade angular da trajetória respectivamente.Nas simulações, considera-se a presença de um

obstáculo fixo (objeto 1), localizado na posição(x, y, z) = (0.0684, 0.5362,−0.4586)m de tal formaque colida com a junta 6 do manipulador quando re-alizar controle de posição sem desvio de obstáculos, eum obstáculo móvel (objeto 2), começando no ponto(x, y, z) = (0.2,−0.2, 0)m e se movimentando arbi-trariamente. Nas Figuras 3 a 7, considera-se apenas oproblema de controle de posição, enquanto que a par-tir da Figura 9 considera-se o problema de controlede posição e orientação. Nos gráficos referentes àstrajetórias do efetuador não são apresentados os obs-táculos, uma vez que a presença destes altera somentea trajetória das juntas.

A Figura 3 apresenta a evolução no tempo do errode posição durante a execução da tarefa e a menordistância entre os obstáculos e o manipulador, semdesvio de obstáculos. Note que, durante a execuçãoda tarefa o manipulador colide uma vez com o objeto1 em t=5 s.

A Figura 4 apresenta a evolução no tempo do errode posição durante a execução da tarefa e a menor dis-tância entre os obstáculos e o manipulador, para o mé-todo da Projeção do Gradiente, onde pode-se concluirque os erros de posição são da mesma ordem de gran-deza e o desvio do obstáculo é satisfatório. A Figura 5ilustra o rastreamento da trajetória de referência pd(t)sem desvio (superior) e com o desvio de obstáculos uti-lizando o método da Projeção do Gradiente (inferior),onde é possível notar a diferença entre os caminhosseguidos pelo efetuador para os dois casos.

A Figura 6 apresenta a evolução no tempo do errode posição durante a execução da tarefa e a menordistância entre os obstáculos e o manipulador, para ométodo dos Campos Potenciais Artificias. Note que,neste caso, a ordem de grandeza do erro de posição

0 5 10 15 20−5

0

5

x 10−6

[m]

(a) Erro de Posição

e

pxe

pye

pz

0 5 10 15 200

0.2

0.4

0.6

0.8

[s]

[m]

(b) Distâncias Mínimas

Obstáculo 1Obstáculo 2

Figura 3: Erro de Posição e Menor distância entre osobstáculos e o manipulador - Controle de Posição semdesvio de obstáculos.

0 5 10 15 20−5

0

5

x 10−6

[m]

(a) Erro de Posição

epx

epy

epz

0 5 10 15 200

0.2

0.4

0.6

0.8

[s]

[m]

(b) Distâncias Mínimas

Obstáculo 1Obstáculo 2

Figura 4: Erro de Posição e Menor distância entre osobstáculos e o manipulador - Método da Projeção doGradiente - Controle de Posição.

0.3910.391

0.391

−0.4−0.2

00.2

−0.6

−0.4

−0.2

0

x [m]

(a) Trajetória sem Desvio

y [m]

z [m

]

0.3910.391

−0.4−0.2

00.2

−0.6

−0.4

−0.2

0

x [m]

(b) Trajetória com Desvio

y [m]

z [m

]

pd

p

Figura 5: Comparação entre as Trajetórias - Métododa Projeção do Gradiente

3852

Anais do XIX Congresso Brasileiro de Automática, CBA 2012.

ISBN: 978-85-8001-069-5

aumenta mas o desvio de obstáculo continua satisfa-tório. A Figura 7 ilustra o rastreamento da trajetóriade referência pd(t) sem desvio (superior) e com o des-vio de obstáculos utilizando o método dos CamposPotenciais Artificiais (inferior).

0 5 10 15 20−2

−1

0

1

2x 10

−3

[m]

(a) Erro de Posição

epx

epy

epz

0 5 10 15 200

0.2

0.4

0.6

0.8

[s]

[m]

(b) Distâncias Mínimas

Obstáculo 1Obstáculo 2

Figura 6: Erro de Posição e Menor distância entreos obstáculos e o manipulador - Método dos CamposPotenciais Artificiais.

0.3910.391

0.391

−0.4−0.2

00.2

−0.6

−0.4

−0.2

0

x [m]

(a) Trajetória sem Desvio

y [m]

z [m

]

0.391

0.3912

−0.4−0.2

00.2

−0.6

−0.4

−0.2

0

x [m]

(b) Trajetória com Desvio

y [m]

z [m

]

pd

p

Figura 7: Comparação entre as Trajetórias - Métododos Campos Potenciais Artificiais.

A Figura 8 apresenta a evolução no tempo dos er-ros de posição e orientação durante a execução da ta-refa e a menor distância entre os obstáculos e o mani-pulador, sem desvio de obstáculos, onde pode-se notarque para a configuração escolhida não houve colisão.Esse fato é devido a presença da malha de controle deorientação, embora não seja possível garantir o desviode obstáculo em outras configurações.

A Figura 9 apresenta a evolução no tempo doserros de posição e orientação durante a execução datarefa e a menor distância entre os obstáculos e o ma-nipulador, para o método da Projeção do Gradiente,onde pode-se verificar que os erros de posição são damesma ordem de grandeza, enquanto que neste casoa ordem de grandeza do erro de orientação aumentou.A Figura 10 ilustra o rastreamento da trajetória de re-ferência pd(t) sem desvio (superior) e com o desvio de

0 5 10 15 20−5

0

5x 10

−6

[m]

(a) Erro de Posição

epx

epy

epz

0 5 10 15 20−5

0

5x 10

−8 (b) Erro de Orientação

eox

eoy

eoz

0 5 10 15 200

0.5

[s]

[m]

(c) Distâncias Mínimas

Obstáculo 1Obstáculo 2

Figura 8: Erro de Posição e orientação e Menor dis-tância entre os obstáculos e o manipulador - Controlede Posição e Orientação sem desvio de obstáculos.

obstáculos utilizando o método da Projeção do Gra-diente (inferior), onde pode-se notar a diferença entreos caminhos seguidos pelo efetuador.

0 5 10 15 20−5

0

5x 10

−6

[m]

(a) Erro de Posição

e

pxe

pye

pz

0 5 10 15 20

−2

0

2

x 10−6 (b) Erro de Orientação

eox

eoy

eoz

0 5 10 15 200

0.5

[s]

[m]

(c) Distâncias Mínimas

Obstáculo 1Obstáculo 2

Figura 9: Erro de Posição e orientação e Menor dis-tância entre os obstáculos e o manipulador - Métododa Projeção do Gradiente - Controle de Posição e Ori-entação.

6 Conclusões e Trabalhos Futuros

Neste trabalho, considera-se o problema de controlecinemático com desvio de obstáculos para robôs re-dundantes do tipo pórtico. Dois métodos de controlede posição e orientação com desvio de obstáculos fo-ram investigados o método da Projeção do Gradientee o método dos Campos Potenciais Artificiais. Am-bos os métodos são baseados na utilização de campospotenciais repulsivos para desviar de obstáculos fixose móveis. O Método da Projeção do Gradiente uti-liza uma estratégia de controle cinemático baseada nainversa da matriz Jacobiana e na projeção de um si-nal de controle auxiliar no espaço nulo do Jacobianopara realizar objetivos primários (e.g., regulação ou

3853

Anais do XIX Congresso Brasileiro de Automática, CBA 2012.

ISBN: 978-85-8001-069-5

0.3910.391

0.391

−0.4−0.20

0.2

−0.6

−0.4

−0.2

0

x [m]

(b) Trajetória com Desvio

y [m]

z [m

]

pd

p

0.3910.391

0.391

−0.4−0.20

0.2

−0.6

−0.4

−0.2

0

x [m]

(a) Trajetória sem Desvio

y [m]

z [m

]

Figura 10: Comparação entre as Trajetórias - Métododa Projeção do Gradiente - Controle de Posição e Ori-entação.

rastreamento de trajetória) e secundários (e.g., des-vio de obstáculos), enquanto que o método dos Cam-pos Potenciais Artificiais utiliza o conceito de cam-pos potenciais atrativos e repulsivos para alcançar oobjetivo desejado e desviar de obstáculos simultanea-mente. Resultados de simulações para um robô tipopórtico com 9-DoF, ilustram o desempenho e a viabi-lidade dos métodos propostos.

A partir dos resultados apresentados pode-se con-cluir que o método da Projeção do Gradiente apre-senta melhores resultados, com erros de posição me-nores e distâncias mínimas relativas aos obstáculosmaiores, quando comparados com os resultados ob-tidos com o método de Campos Potenciais Artificiais.Uma outra vantagem é que o método da Projeção doGradiente pode ser utilizado para realizar controle deposição e orientação simultaneamente, enquanto quea formulação do problema de controle de orientaçãoa partir do método de Campos Potenciais Artificiaisnão é trivial.

Alguns tópicos de pesquisas futuras seguindo asideias apresentadas aqui são: considerar o modelo di-nâmico do robô no projeto de controle, desenvolver umalgoritmo de desvio de obstáculos usando informaçãovisual e fusão sensorial, implementar algoritmos deplanejamento de trajetórias para resolver o problemada escolha da posição inicial e da existência de míni-mos locais.

Agradecimentos

Trabalho financiado pelo CENPES/PETROBRAS noconvênio COPPETEC intitulado "Sistemas de Produ-ção Offshore com Alto Grau de Automação", e peloCNPq, FAPERJ e CAPES.

Referências

Barraquand, J. and Latombe, J.-C. (1991). Robot mo-tion planning: a distributed representation ap-proach, Int. Jour. of Rob. Res. 10(6): 628–649.

Borenstein, J. and Koren, Y. (1991). The vector fi-eld histogram-fast obstacle avoidance for mobilerobots, IEEE Trans. on Robot. Autom. 7(3): 278–288.

Chung, C. Y., Lee, B. H. and Lee, J. H. (1997). Obsta-cle avoidance for kinematically redundant robotsusing distance algorithm, Proc. IEEE/RSJ Int.Conf. Intel. Rob. Syst., Grenoble, pp. 1787–1793.

Fox, D., Burgard, W. and Thrun, S. (1997). The dy-namic window approach to collision avoidance,IEEE Robot. Autom. Mag. 4(1): 23–33.

Han, S.-S., Choi, S.-B. and Kim, J.-H. (1999). Posi-tion control of a flexible gantry robot arm usingsmart material actuators, Jour. of Robot. Syst.16(10): 581–595.

Kavraski, L. E. and Lavalle, S. M. (2008). Motionplanning, in Siciliano and Khatib (eds), Hand-book of Robotics, Springer, pp. 109–131.

Khatib, O. (1985). Real-time obstacle avoidance formanipulators and mobile robots, Proc. IEEE Int.Conf. on Rob. & Autom., St. Louis, MO, pp. 500–505.

Leite, A. C., Lizarralde, F. and Hsu, L. (2009). Hy-brid adaptive vision-force control for robot mani-pulators interacting with unknown surfaces, Int.Jour. of Rob. Res. 28(7): 911–926.

Liégeois, A. (1977). Automatic supervisory control ofthe configuration and behavior of multibody me-chanisms, IEEE Trans. on Syst. Man and Cyber.7(12): 868–871.

Lumelsky, V. (1987). Effect of kinematics on motionplanning for planar robot arms moving amidstunknown obstacles, IEEE Jour. of Robot. andAutom. 3(3): 207–223.

Minguez, J., Lamiraux, F. and Laumond, J.-P. (2008).Motion planning and obstacle avoidance, in Si-ciliano and Khatib (eds), Handbook of Robotics,Springer, pp. 827–852.

Minguez, J. and Montano, L. (2004). Nearness di-agram (ND) navigation: collision avoidance introublesome scenarios, Proc. IEEE Trans. on Ro-bot. Autom. 20(1): 45–59.

Pascoal, A., Oliveira, P., Silvestre, C., Bjerrum, A.,Ishoy, A., Pignon, J.-P., Ayela, G. and Petzelt, C.(1997). MARIUS: An Autonomous UnderwaterVehicle for Coastal Oceanography, IEEE Robot.Autom. Mag. 4(4): 46–59.

Siciliano, B., Sciavicco, L., Villani, L. and Oriolo, G.(2009). Robotics: Modeling, Planning and Con-trol, Springer-Verlag London Ltd.

Singh, L., Stephanou, H. and Wen, J. T. (1996). Real-time robot motion control with circulatory fields,Proc. IEEE Int. Conf. on Rob. & Autom., Min-neapolis, MN, pp. 2737–2742.

Weisstein, E. W. (2012). Point-line distance3-dimensional, MathWorld - A WolframWeb Resource, Last access: 23 Jan 2012.http://mathworld.wolfram.com/Point-LineDistance3-Dimensional.html.

Wen, J. T.-Y. and Kreutz-Delgado, K. (1991). Theattitude control problem, IEEE Trans. Autom.Contr. 36(10): 1148–1162.