• Nenhum resultado encontrado

Inversa Filtrada: Uma Solução Alternativa para a Cinemática Inversa de Robôs Manipuladores

N/A
N/A
Protected

Academic year: 2021

Share "Inversa Filtrada: Uma Solução Alternativa para a Cinemática Inversa de Robôs Manipuladores"

Copied!
12
0
0

Texto

(1)

a Cinemática Inversa de Robôs Manipuladores

Lucas V. Vargas, Antonio C. Leite e Ramon R. Costa

Departamento de Engenharia Elétrica, COPPE - Universidade Federal do Rio de Janeiro, Caixa Postal 68504, 21941-972, Rio de Janeiro, RJ, Brasil

{lucasvar,toni,ramon}@coep.ufrj.br

Resumo Este trabalho apresenta uma solução alternativa para o pro-blema de cinemática inversa de robôs manipuladores baseado na cine-mática diferencial e em um algoritmo que calcula a inversa da matriz Jacobiana dinamicamente. A saída do algoritmo proposto pode ser in-terpretada como uma inversa filtrada da matriz Jacobiana. Uma propri-edade interessante do algoritmo de inversão é a sua habilidade para lidar com o problema de singularidades cinemáticas, permitindo também a pri-orização de diferentes objetivos de controle e a consideração de restrições adicionais. A análise de estabilidade e convergência baseia-se na teoria de estabilidade de Lyapunov. Resultados de simulação são apresentados para ilustrar o desempenho e a viabilidade da solução proposta.

c

O material contido nesse artigo é uma parte da Dissertação de Mestrado inti-tulada “Inversa Filtrada: Uma Solução Alternativa para a Cinemática Inversa de Manipuladores Robóticos” de autoria de Lucas Vares Vargas, defendida e aprovada em 25 de março de 2013, sob a orientação de Antonio C. Leite e Ramon R. Costa.

1

Introdução

Nas últimas décadas, um amplo esforço de pesquisa e desenvolvimento tem sido realizado para identificar uma solução genérica e robusta para o problema de cinemática inversa, usualmente encontrado em diversas áreas como biologia, em processos de dobramento de proteínas [1], computação gráfica, na animação 3D de modelos virtuais [2], e robótica, em sistemas de controle de robôs manipu-ladores [3]. Em geral, o problema de cinemática inversa consiste em determinar as variáveis do espaço de configuração de uma estrutura correspondentes a uma determinada posição e orientação no espaço operacional [4].

A principal dificuldade em lidar com o problema de cinemática inversa é a presença de singularidades cinemáticas, isto é, configurações onde a matriz Jacobiana do sistema possui posto incompleto. Em uma configuração singular, pequenas velocidades no espaço operacional podem causar grandes velocidades no espaço de configuração e, consequentemente, a saturação dos atuadores. Além disso, na vizinhança de uma singularidade a mobilidade da estrutura é reduzida e podem existir infinitas soluções para o problema de cinemática inversa [4].

Artigo submetido para o evento II Best MSc Dissertation and PhD Thesis Contest in Robotic

(2)

A maioria das técnicas propostas na literatura para enfrentar esse problema são baseadas em métodos numéricos ou de otimização [5]. Em geral, o desem-penho das soluções apresentadas é avaliado de acordo com a estabilidade, custo computacional e robustez às singularidades [6,7,8]. Outros métodos para soluci-onar o problema de cinemática inversa recorrem a diferentes técnicas de otimiza-ção como, por exemplo, o método CCD (no inglês, cyclic coordinate descent) que é baseado em programação não-linear [9]. O algoritmo DLS (no inglês, damped

least-square), baseado em Jacobiano pseudo-inverso, utiliza um fator de

amor-tecimento para evitar as singularidades estabelecendo um compromisso entre a exatidão e a viabilidade da solução [10]. O método FIK (no inglês, feedback

in-verse kinematics) não requer um fator de amortecimento e emprega um laço de

realimentação para minimizar a diferença entre as velocidades atual e desejada no espaço operacional [11]. Uma discussão sobre os principais desafios do pro-blema de cinemática inversa bem como um estudo de caso para manipuladores redundantes são apresentados em [12].

No presente trabalho, apresenta-se uma solução alternativa para o problema de cinemática inversa baseada em um algoritmo que estima a inversa da matriz Jacobiana dinamicamente. No caso particular, onde a matriz a ser invertida é invariante no tempo, a saída do algoritmo pode ser interpretada como a sua in-versa filtrada e, por isso, ele é denominado de algoritmo da Inin-versa Filtrada [13]. O algoritmo possui algumas propriedades notáveis e uma delas é a sua habilidade para lidar com singularidades cinemáticas. Pode-se mostrar que a única situação a ser evitada é que a matriz Jacobiana convirja para uma singularidade mais lentamente que uma exponencial, o que não é uma condição restritiva para fins de aplicação. Uma outra propriedade está relacionada a lei de atualização do estimador, que é baseada em sinais de erro que consideram ambas as matrizes inversas à direita e à esquerda, permitindo o rastreamento de trajetórias e mini-mizando o esforço de controle simultaneamente. O algoritmo da Inversa Filtrada também pode ser aplicado a uma matriz Jacobiana aumentada com restrições adicionais, permitindo a priorização de diferentes objetivos de controle a partir do ajuste dos ganhos. Resultados de simulação compreendendo um estudo de caso para o problema de rastreamento de trajetórias para robôs manipuladores na vizinhança de singularidades ilustram a viabilidade da solução proposta.

2

Algoritmo da Inversa Filtrada

Considere uma planta SISO de primeira ordem descrita por:

˙y = k(t) u , (1)

onde u ∈ R é a entrada escalar da planta (assumida ser limitada) ou a variável de controle do sistema, y ∈ R é a saída da planta e k(t) é uma função escalar não-linear e variante no tempo. Supondo que o objetivo de controle seja rastrear uma trajetória de referência r(t), uma lei de controle u(t) que lineariza o sistema (1) e garante a estabilidade assintótica do erro de rastreamento e:=r − y é dada por:

(3)

Agora, considere que a lei de controle u(t) utilize uma função escalar θ(t) atua-lizada dinamicamente, ao invés da inversa de k(t) computada instantaneamente como 1/k(t), tal que, kθ → 1. Então, para estabelecer uma dinâmica adequada para θ(t), define-se o seguinte sinal de erro:

S := kθ − 1 , (3)

e considera-se a função de Lyapunov 2V (S)=S2 cuja derivada temporal é dada por

˙V (S) = S ˙S = S  ˙k θ + k ˙θ . (4) Em vista de (4), escolhe-se a seguinte lei de atualização paramétrica

˙θ = −β S k , β > 0 , (5)

e como resultado obtém-se:

˙V (S) = S ˙k θ − β S2k2. (6) Note que, a lei de atualização (5) garante que o segundo termo em (6) é não-positivo. Porém, o primeiro termo permanece com sinal indefinido e depende de ˙k. A análise do comportamento do algoritmo é iniciada pelo caso mais simples onde ˙k ≡0 e, portanto, ˙V (S)≤0. Neste caso (5) pode ser reescrita como

˙θ = −β ( kθ − 1) k = −β k2θ + β k . (7) Então, usando o operador diferencial s, pode-se explicitar θ como

θ = βk s + β k2 =

1

τ s + 1[1/k] , (8)

onde τ =(1/β k2). Deste modo, θ pode ser interpretado como a saída de um filtro linear onde a entrada é a inversa 1/k, isto é, θ converge exponencialmente para 1/k. Note que, quanto menor é o valor de k e β, maior é a constante do filtro τ e, consequentemente, mais lento é o filtro. Então, motivado por (8), o sinal θ(t) é denominado a inversa filtrada da função k(t).

2.1 Propriedades da Inversa Filtrada

Uma propriedade importante do algoritmo proposto é que para k ≡ 0 tem-se que ˙θ ≡0 e, como consequência, θ(t)=θ(0). A Figura 1 ilustra o plano θ×k com o lugar geométrico de S =0 e algumas trajetórias para diferentes condições iniciais

θ(0). De acordo com a figura pode-se afirmar que para qualquer k constante a

saída θ(t) é limitada.

Considere agora o caso de uma função k(t) variante no tempo. A partir da Figura 1 é evidente que a única possibilidade para θ(t) crescer sem limites está na região delimitada por −1 < S < 0, isto é, na região sombreada no primeiro quadrante. Note que, quanto mais próximo de zero é o valor de k, maior pode

(4)

k θ S = 0 S =1 S < 0 S > 0 k > 0 ˙ θ < 0 S < 0 k > 0 ˙ θ > 0 S > 0 k < 0 ˙ θ > 0 S < 0 k < 0 ˙ θ < 0

Figura 1: Plano θ × k: Trajetórias para diferentes condições iniciais.

ser o valor de θ. Entretanto, pode-se verificar que nesta região 0 < |k| < 1 e 0<| ˙θ|<β, implicando que θ não apresenta escape em tempo finito.

Agora, para o caso onde ˙k 6=0, tem-se que:

dk = dt dt dk = − βkS ˙k . (9)

Se k(t) é um sinal exponencialmente convergente para zero com ˙k =−α k , α>0 pode-se reescrever (9) como: dθ/dk = (β/α) S . Portanto, na região hachurada tem-se que −β/α < dθ/dk < 0 e consequentemente, a função θ(t) é limitada. De fato, isso mostra que a inversa filtrada θ(t) pode eventualmente crescer sem limites. Entretanto, o sinal k(t) deveria convergir para zero mais lentamente que uma exponencial. Consequentemente, a taxa de crescimento de θ(t) deveria também ser mais lenta que uma exponencial. As propriedades do algoritmo (5) podem ser resumidas como:

(P1) k ≡ 0 ⇒ θ(t) = θ(0). (P2) k constante ⇒ θ ∈ L∞.

(P3) k ∈ L⇒ ˙θ ∈ L∞.

(P4) θ(t) não possui escape em tempo finito.

2.2 Inversa Filtrada de Matrizes

O algoritmo (5) pode ser naturalmente generalizado para inverter matrizes. Considere a seguinte planta MIMO de primeira ordem descrita por:

˙y = K(t) u , (10)

onde u ∈ Rn é a entrada da planta ou a variável de controle do sistema, y ∈ Rm

(5)

no tempo e m ≤ n. Note que, no contexto da cinemática diferencial, a matriz

K(t) é conhecida como a matriz Jacobiana. Agora, considerando que o objetivo

de controle seja rastrear uma trajetória de referência r(t), uma lei de controle

u(t) que lineariza o sistema (10) e garante a estabilidade assintótica do erro de

rastreamento e:=r − y é dada por

u = K(t) [ ˙r + Λ e ] , Λ = ΛT> 0 , (11)

onde K∈ Rn×me a pseudo-inversa da matriz K(t). Novamente, considere que a lei de controle u(t) utiliza a matriz Θ(t) atualizada dinamicamente, ao invés da matriz pseudo-inversa K(t). Então, para estabelecer uma dinâmica adequada para Θ(t), introduz-se um sinal de erro Sr∈ Rm×m baseado na inversa à direita

Sr:= KΘ − Im, (12)

e um sinal de erro Sℓ∈ Rn×nbaseado na inversa à esquerda

Sℓ:= ΘK − In. (13)

Considere inicialmente o erro (12) e a função candidata de Lyapunov, defi-nida positiva 2 Vr= tr(SrTSr), onde tr(·) é a função traço. A partir de (12),

a derivada temporal de Vr ao longo das trajetórias do sistema é dada por

2 ˙Vr = 2tr(SrTK Θ) + 2tr(S˙ rTK ˙Θ) . Em vista da equação anterior, escolhe-se

a seguinte lei de atualização ˙

Θ = −ΓrKTSr, Γr= ΓrT> 0 , (14)

onde Γr é uma matriz de ganho de atualização. Como resultado, tem-se

˙Vr= tr(STrK Θ) −tr(S˙ rTK ΓrKTSr)

| {z }

≤0

. (15)

Similarmente, para o erro (13) considera-se a função candidata de Lyapunov, definida positiva 2 Vℓ=tr(SℓTSℓ), com derivada temporal ao longo das trajetórias

do sistema dada por 2 ˙Vℓ=2tr(SℓTΘ ˙K) + 2tr(SℓTΘ K) . Novamente, uma escolha˙

para a lei de adaptação é: ˙

Θ = −ΓℓSℓKT, Γℓ= ΓℓT> 0 , (16)

onde Γℓ é uma matriz de ganho de atualização, resultando em

˙Vℓ= tr(SℓTΘ ˙K) −tr(K ST ΓℓSℓKT)

| {z }

≤0

. (17)

Para o caso onde a matriz Jacobiana K ∈ Rm×n é quadrada (m = n) e não-singular ambas as leis de atualização (14) e (16) podem ser usadas para solucionar o problema de cinemática inversa, uma vez que as matrizes inversa à esquerda e inversa à direita são iguais. Entretanto, para o caso de uma matriz

(6)

Jacobiana K retangular (m 6= n) as matrizes de erro Sr e Sℓ têm dimensões

diferentes. Para uma matriz Jacobiana com posto completo por linhas, isto é,

rank(K) = m, existem infinitas soluções X tal que KX = I, enquanto que não

existe solução Y tal que Y K = I. Uma interpretação preliminar em termos de uma abordagem de controle é que a inversa à direita obtida a partir de (14) − conduzida pela matriz de erro Sr − permite o rastreamento de trajetórias,

porém devido a infinidade de soluções a variável de controle u tem componentes no espaço nulo de K. Por outro lado, pode-se mostrar que a inversa à esquerda obtida a partir de (16) − conduzida pela matriz de erro Sℓ− minimiza a projeção

de u no espaço nulo de K, resultando em uma variável de controle ótima. Desta forma, é proposta uma lei de atualização que considere as duas matrizes de erro,

Sr e Sℓ, simultaneamente:

˙

Θ = −Γ (SℓKT+ KTSr) , Γ = ΓT> 0 , (18)

onde Γ é matriz de ganho de atualização. Pode-se mostrar que a lei de atualização composta (18) é facilmente obtida a partir da função candidata de Lyapunov, definida positiva Vc=Vr+ Vℓ. Como resultado, a derivada temporal de Vcé dada

por ˙Vc= f( ˙K) −tr((SrTK + K SℓT)Γ (SℓKT+ KTSr)) | {z } ≤0 , (19) onde f( ˙K) = tr(ST

ℓΘ ˙K) + tr(SrTKΘ). Para ˙˙ K ≡ 0 tem-se que ˙Vc≤ 0 e, neste caso,

chega-se a ˙Θ = 0 e ˙Vc=0 quando SℓKT+KTSr=0, isto é:

ΘKKT+ KTKΘ = 2KT. (20) Note que (20) é uma equação de Sylvester que tem uma solução única Θ se e so-mente se K tem posto completo, e a solução converge para a pseudo-inversa de K. Se K tem posto incompleto, a solução não é única e a saída do algoritmo depende da condição inicial Θ(0). Pode-se mostrar que ambas as condições KTSr= 0 e

SℓKT=0 são verificadas se (20) for satisfeita.

É válido mencionar que a única condição necessária para aplicar o algoritmo da Inversa Filtrada para solucionar o problema de cinemática inversa é que a tra-jetória de referência r(t) não convirja para uma singularidade mais lentamente que uma exponencial. A propriedade de convergência do algoritmo para a lei de atualização composta (18) é analisada empregando a abordagem de

Decomposi-ção em Valores Singularese pode ser encontrada em [13].

3

Lei de Controle Modificada (u

M

)

Recorrendo a Seção 2, considere o ganho escalar k e sua função inversa k−1. Note que, a inversa é uma função ímpar e tem o mesmo sinal de k. Entretanto, a mesma propriedade não é verificada para a função k e sua inversa filtrada θ. Para recuperar a propriedade de igualdade de sinal propõe-se aqui uma nova forma de aplicar o parâmetro θ na lei de controle u em (2) definindo

(7)

e desta forma tem-se que sign(θM)=sign(k). O comportamento de θ e θM para

um ganho k evoluindo do semi-plano positivo para o negativo é ilustrado em [13]. Para o caso multivariável uma modificação similar também é proposta, e portanto a matriz ΘM é dada por

ΘM = ΘΘTKT, (22)

onde ΘΘT é uma matriz simétrica, positiva semi-definida.

Agora, considere o problema de controle de rastreamento de uma trajetória de referência r(t) tal que a dinâmica do erro é governada por ˙e = ˙r(t) − K u , onde u é a lei de controle e K é a matriz Jacobiana. Escolhendo a função de Lyapunov Vecomo 2Ve=eTΛ e , com Λ = ΛT> 0, sua derivada temporal ao longo

das trajetórias do sistema é dada por: ˙Ve= eTΛ( ˙r−K u). Então, para u = uM e

considerando uM=Θ ΘTKTv , obtém-se

˙Ve=eTΛ(I − N NT) ˙r − eTΛTN NTΛ e

| {z }

Φ

, (23)

onde N = KΘ. Note que, o termo Φ corresponde a um termo negativo semi-definido, independentemente da qualidade da estimativa fornecida pelo algoritmo da Inversa Filtrada (18).

No caso onde K tem posto incompleto, o uso de uM(v) = ΘMv cancela as

componentes de v no espaço nulo de KT, isto é, para v =v

c+vn, onde vc∈ Col(K)

e vn∈ Nul(KT), tem-se que uM(v)=uM(vc). É válido mencionar que Vetambém

é definida em termos da variável de erro ponderada ew=Λe. Então, para o caso

onde a trajetória de referência r(t) está fora de alcance, a matriz de ganho Λ influencia na solução obtida ponderando os diferentes objetivos de controle.

4

Matriz Jacobiana Aumentada (K

+

)

O algoritmo da Inversa Filtrada fornece uma solução para o problema de cinemática inversa mesmo quando trajetórias de referência não-factíveis ou inal-cançáveis são consideradas. Como visto, o algoritmo permite priorizar um dos objetivos de controle primários simplesmente pelo ajuste de um ganho matricial. Nesta seção, mostra-se que é possível incluir uma função objetivo f na solu-ção proposta para satisfazer uma restrisolu-ção adicional ao problema de controle de rastreamento como:  ˙y ˙ f  =  K Kf  u = K+u , (24)

onde Kf∈ R1×n é a matriz Jacobiana da restrição e K+∈ Rme×n é a matriz

Jacobiana aumentada, com me=m + 1. Note que, considerando um objetivo de

controle secundário é possível que me> n, justificando o uso do sinal de erro

baseado na inverva à direita (12). Similar a uM(v) = ΘMv com ΘM= ΘΘTKT,

a lei de controle uM(t) para o problema de cinemática inversa aumentado é:

uM(t) = Θ+Θ

T

(8)

onde a matriz Θ+ é a inversa filtrada da matriz K+ e v+ é o sinal de controle Cartesiano aumentado dado por:

v+=  v vf  = ˙r + Λ e −f  . (26)

A escolha natural para vf deveria ser vf=−λff onde λf≥ 0 é o ganho

propor-cional da função objetivo. Entretanto, escolhe-se incluir a ponderação dada por

λf diretamente no cálculo da função f. A vantagem dessa escolha é que para o

caso onde não existe restrição ou a restrição tem baixa prioridade, os elementos de Kf são iguais a zero ou possuem pequena magnitude, respectivamente. Um

exemplo da aplicação da solução proposta baseada na matriz Jacobiana aumen-tada para o problema de rastreamento de trajetória com desvio de obstáculos é apresentada em [14].

5

Aplicação ao Controle de Robôs Manipuladores

Nesta seção, para ilustrar a aplicabilidade do algoritmo da Inversa Filtrada, considera-se o problema de rastreamento para um sistema MIMO não-linear representado por um robô manipulador.

5.1 Cinemática do Robô

Considere a modelagem cinemática de um robô manipulador com n-DoF (do inglês, degrees of freedom). As variáveis no espaço das juntas são relacionadas as variáveis no espaço operacional por meio dos seguintes mapeamentos de cinemá-tica direta e diferencial:

p = h(q) , ˙p = J(q) ˙q , (27)

onde p, ˙p ∈ Rm denotam a posição e a velocidade linear do efetuador do robô, e

q, ˙q ∈ Rn são a posição e a velocidade das juntas do manipulador. Note que h(q)

é uma função vetorial m-dimensional, em geral não-linear, e J(q) = (∂h/∂q) ∈ Rm×né o Jacobiano analítico.

Agora, considere o problema de controle cinemático para um robô manipula-dor. Neste contexto, o movimento do robô pode ser descrito simplesmente por:

˙qi= ui, (i = 1, · · · , n) , (28)

onde ˙qi é a velocidade angular da i-ésima junta, ui é o sinal de controle de

velocidade aplicado ao drive do motor da i-ésima junta e n é o número de juntas. Esta abordagem é aplicável à maioria dos robôs comerciais com altas taxas de redução nas engrenagens e/ou quando a velocidade de execução da tarefa não é muito elevada. Então, a partir de (27) e considerando a abordagem de controle cinemático (28), obtém-se o seguinte sistema de controle: ˙p = J(q) u .

(9)

Para o caso onde a matriz Jacobiana é retangular (m<n), o sinal de controle de velocidade u∈Rn é dado por:

u(t) = J(q) v , J=JT(J JT)−1, (29)

onde J∈ Rn×m é a pseudo-inversa à direita de J e v ∈ Rm é um sinal de

con-trole Cartesiano a ser projetado. O sinal de concon-trole (29) minimiza localmente a norma das velocidades das juntas, desde que as seguintes hipóteses sejam satis-feitas: (H1) a cinemática do robô é conhecida; (H2) v(t) não conduz o robô para

configurações singulares. A falha nessa ultima condição ainda é um problema

relevante na área de robótica e é o tema de investigação do presente trabalho [13,14]. Note que, para o caso onde a matriz Jacobiana é quadrada (m = n) e não-singular, o sinal de controle de velocidade é dado por: u(t)=J−1(q) v.

Para m < n, devido a presença de n − m graus de liberdade redundantes, a solução (29) pode ser modificada para introduzir um termo pertencente ao espaço nulo de J, isto é:

u(t) = Jv + I − JJ ˙q0, (30) onde ˙q0 é um vetor de velocidades das juntas arbitrário que pode ser especi-ficado para satisfazer uma restrição adicional com uma prioridade secundária (e.g., evitar singularidades ou desviar de obstáculos). Note que, a solução obtida localmente minimiza a norma das velocidades das juntas e permite a geração de movimentos internos para reconfigurar a estrutura do manipulador sem modifi-car a postura do efetuador [4].

Considere o problema de controle de posição para um robô manipulador. O objetivo de controle é rastrear uma trajetória desejada variante no tempo pd(t)

a partir da posição atual do efetuador p, isto é:

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

onde ep∈ Rmé o erro de posição do efetuador. Combinando (27), (28) e (29)

tem-se que ˙p=v e, deste modo, a equação do erro de posição é dada por ˙ep= ˙pd− v.

Então, usando uma lei de controle feedforward e proporcional

v = ˙pd+ Kpep, (31)

onde Kp= kpI, a dinâmica do erro de posição é governada por ˙ep+ Kpep= 0.

Portanto, a partir de uma escolha apropriada de kpcomo uma constante positiva,

o sistema em malha-fechada é exponencialmente estável e, consequentemente, limt→∞ep(t) = 0.

5.2 Resultados de Simulação

Nesta seção, apresenta-se os resultados de simulação obtidos para um parti-cular caso de interesse, utilizando um robô manipulador Zebra Zero (IM Inc.) com 6-DoF, mas sem atuação nas últimas 3 juntas, configurando uma estrutura não-redundante de 3-DoF. No estudo de caso, o desempenho do algoritmo da

(10)

Inversa Filtrada é avaliado a partir do rastreamento de uma trajetória de

refe-rência na presença de singularidades internas, e é comparado com o algoritmo DLS [10] considerando um fator de amortecimento δ =300 e uma vizinhança de singularidade definida pela medida de manipulabilidade limite ω0=103.

Os comprimentos dos elos do robô são l1 = 27,94 cm e l2= 39,36 cm. As condições iniciais e os parâmetros de controle são: q(0) = [ 0 π/2 − π ]Trad,

Θ(0) = 03×3, Λ = 2 I e Γ = I. A Figura 2 ilustra o robô e a trajetória de

referên-cia na vizinhaça de uma singularidade interna (ou singularidade do espaço das juntas), isto é, próxima a uma configuração singular pertencente ao espaço de trabalho do robô. O rastreamento de trajetória para os algoritmos da Inversa

Filtradae DLS, bem como a medida de manipulabilidade são apresentados na

Figura 3 (a) e (b) respectivamente. A norma do erro de rastreamento é ilustrada nas Figuras 3 (c) e (d), onde pode-se observar que o algoritmo proposto permite um rastreamento da trajetória bem sucedido, com erros de pequena magnitude, mesmo na vizinhança de uma configuração singular.

Figura 2: Robô manipulador e trajetória de referência com singularidade interna.

Observação Simulações para outros estudos de caso foram realizadas a fim de avaliar o desempenho e a viabilidade do algoritmo da Inversa Filtrada. Esses re-sultados podem ser encontrados em publicações recentes dos autores [12,13,14,15].

6

Conclusões e Perspectivas

Neste trabalho, apresenta-se uma solução alternativa para o problema de ci-nemática inversa baseada na cici-nemática diferencial e que utiliza a inversa da matriz Jacobiana calculada dinamicamente. A saída do algoritmo pode ser in-terpretada como a sua inversa filtrada e uma propriedade notável do algoritmo é a sua habilidade de lidar com singularidades cinemáticas. Uma generalização da abordagem da inversa filtrada para matrizes retangulares é proposta a partir de uma lei de atualização composta, em termos de sinais de erros baseados nas inversas à direita e à esquerda.

(11)

−10 −5 0 5 10 15 46 48 50 52 54 56 58 60 62 y (cm) z (cm)

(a) Rastreamento de trajetória

Referência Inversa Filtrada DLS 5 10 15 20 −0.5 0 0.5 1 1.5 2 2.5 3 3.5 4 x 104 tempo (s) σ min / σ max (b) Manipulabilidade Inversa Filtrada DLS 0 5 10 15 20 25 0 20 40 60 ||e p || (c) Norma do erro Inversa Filtrada DLS 0 5 10 15 20 25 0 0.5 1 1.5 ||e p ||

(d) Norma do erro (aumentada)

tempo (s)

Inversa Filtrada DLS

Figura 3: Rastreamento de trajetória no plano yz, medida de manipulabilidade e norma do erro de posição.

A combinação da solução proposta com uma apropriada sintonia do ganho de atualização permite a priorização de um dos objetivos de controle primários (e.g., posição ou orientação), quando a trajetória de referência está fora de alcance. Uma matriz Jacobiana aumentada pode ser definida para incluir uma restrição adicional ao problema de controle, com prioridade ajustável. Para o caso de controle de robôs manipuladores essa restrição pode ser utilizada para desviar de obstáculos ou evitar os limites mecânicos das juntas [14].

Comparado aos outros algoritmos de inversão descritos na literatura, a princi-pal vantagem da abordagem proposta está relacionada ao número de parâmetros

de sintonia − apenas o ganho de atualização Γ deve ser ajustado − e a

efi-ciência computacional uma vez que o algoritmo não requer inversão matricial,

decomposição em valor singular ou cálculo de medidas de manipulabilidade. Al-guns tópicos para serem explorados em pesquisas futuras envolvem a aplicação da solução proposta para mecanismos paralelos e o relaxamento da condição de completo conhecimento da matriz Jacobiana, por exemplo, em casos onde a planta apresenta parâmetros incertos.

(12)

Agradecimentos Este trabalho foi parcialmente financiado pelas agências de fomento à pesquisa CNPq, CAPES e FAPERJ.

Referências

1. R. Kolodny, L. Guibas, M. Levitt, and P. Koehl, “Inverse Kinematics in Biology: The Protein Loop Closure Problem,” The International Journal of Robotics

Rese-arch, vol. 24, no. 2-3, pp. 151–163, 2005.

2. L. Unzueta, M. Peinado, R. Boulic, and A. Suescun, “Full-body performance ani-mation with Sequential Inverse Kinematics,” Graphical Models, vol. 70, no. 5, pp. 87–104, 2008.

3. S. Chiaverini, G. Oriolo, and I. D. Walker, “Kinematically Redundant Manipula-tors,” in Springer Handbook of Robotics (B. Siciliano and O. Khatib, eds.), pp. 245– 268, Springer Berlin Heidelberg, 2008.

4. B. Siciliano, L. Sciavicco, L. Villani, and G. Oriolo, Robotics: Modelling, Planning

and Control. Advanced Textbooks in Control and Signal Processing,

Springer-Verlag London Limited, 2009.

5. A. A. Maciejewski and C. A. Klein, “The Singular Value Decomposition: Com-putation and Applications to Robotics,” The International Journal of Robotics

Research, vol. 8, no. 6, pp. 63–79, 1989.

6. C. Wampler, “Manipulator Inverse Kinematic Solutions Based on Vector Formula-tions and Damped Least-Squares Methods,” IEEE TransacFormula-tions on Systems, Man

and Cybernetics, vol. 16, pp. 93–101, Jan 1986.

7. K. Tchon and R. Muszynski, “Singular Inverse Kinematic Problem for Robotic Manipulators: A Normal Form Approach,” IEEE Transactions on Robotics and

Automation, vol. 14, pp. 93–104, Feb 1998.

8. D. N. Nenchev, Y. Tsumaki, and M. Uchiyama, “Singularity-Consistent Parame-terization of Robot Motion and Control,” The International Journal of Robotics

Research, vol. 19, no. 2, pp. 159–182, 2000.

9. L.-C. Wang and C. Chen, “A Combined Optimization Method for Solving the Inverse Kinematics Problems of Mechanical Manipulators,” IEEE Transactions on

Robotics and Automation, vol. 7, pp. 489–499, Aug 1991.

10. Y. Nakamura and H. Hanafusa, “Inverse Kinematic Solutions With Singularity Robustness for Robot Manipulator Control,” ASME Journal of Dynamic Systems,

Measurement and Control, vol. 108, pp. 163–171, Sep 1986.

11. A. N. Pechev, “Inverse Kinematics without Matrix Inversion,” in Proceedings of

the IEEE International Conference on Robotics and Automation, pp. 2005–2012,

May 2008.

12. L. V. Vargas, A. C. Leite, and R. R. Costa, “Cinemática Inversa de Robôs Mani-puladores Utilizando Inversa Filtrada,” in Anais do XIX Congresso Brasileiro de

Automática, (Campina Grande, PB), pp. 3541–3548, Setembro 2012.

13. L. V. Vargas, A. C. Leite, and R. R. Costa, “Kinematic Control of Robot Manipu-lators using Filtered Inverse,” in Proceedings of the 21st Mediterranean Conference

on Control Automation, (Crete, Greece), pp. 27–33, June 2013.

14. L. V. Vargas, A. C. Leite, and R. R. Costa, “Overcoming Kinematic Singulari-ties with the Filtered Inverse Approach,” in Proceedings of the 19th IFAC World

Congress, (Cape Town, South Africa), Accepted for Publication, August 2014. 15. L. V. Vargas, “Inversa Filtrada: Uma Solução Alternativa para a Cinemática

In-versa de Manipuladores Robóticos,” Dissertação de Mestrado, Programa de Pós-Graduação em Engenharia Elétrica, COPPE/Universidade Federal do Rio de Ja-neiro, Março 2013.

Referências

Documentos relacionados

1930. Este periódico emergiu na “Paris Nordestina”, tomando como ponto de partida a abordagem de três questões vinculadas ao cotidiano nos tempos modernos: o viver na urbe

Os testes de laboratório estudados foram: germinação, vigor (primeira contagem de germinação), pureza física, massa de 1.000 sementes, teor de água, teor de óleo, proteína,

a) Órgãos fiscalizam os processos de F&amp;A da CVRD e determinam restrições às suas operações: atualmente, a CVRD está envolvida em 14 processos perante o Conselho

O objetivo era de verificar a consistência entre a estratégia adotada pelas empresas estudadas e as implicações estratégicas das redes de relacionamento, avaliando se esta é capaz

Também falaremos sobre algumas definições básicas como álgebras e suas propriedades básicas, álgebra de Lie, subálgebra, centro de uma álgebra, ideal, álgebras livres, álgebras

Os Cabineiros de Elevador do Município do Rio de Janeiro terão uma correção salarial na ordem de.. Parágrafo Primeiro: Aos admitidos após julho de 2009, será

O propósito deste trabalho foi avaliar os métodos de Mehlich 1, Mehlich 3, RTA em lâminas e RTA em esferas frente à perda de capacidade de extração com o aumento da

Desde que os elos de um robô devem ter rotação e/ou translação com respeito a um quadro de coordenadas de referência, um quadro de coordenadas agregado ao corpo do mecanismo