• Nenhum resultado encontrado

CONTROLE DE ROBÔS EM CONFIGURAÇÕES SINGULARES

N/A
N/A
Protected

Academic year: 2021

Share "CONTROLE DE ROBÔS EM CONFIGURAÇÕES SINGULARES"

Copied!
16
0
0

Texto

(1)

CONTROLE DE ROBÔS EM CONFIGURAÇÕES SINGULARES

Aluno: André de Freitas Serapião Orientador: Antonio Candea Leite

Introdução

A importância do desenvolvimento dos sistemas robóticos e a aplicabilidade da robótica tem sido notória, permitindo maior eficiência na realização de tarefas repetitivas como soldagem ou movimentação de peças, e vem se mostrando uma alternativa para o trabalho humano em ambientes hostis e não-estruturados.

O estudo de sistemas robóticos evoluiu rapidamente e a aplicação destes sistemas não se limitou apenas às linhas de produção industriais como, por exemplo, montadoras de veículos, mas se expandiu significativamente e podemos contemplar hoje a robótica como elemento crucial em locais onde o ser humano não poderia atuar devido à exposição ao perigo. Além disso, a robótica também tem sido utilizada na exploração espacial, em aplicações submarinas submetidas à alta pressão, na medicina, no desarmamento de bombas e cada vez mais se faz presente no cotidiano para a segurança e otimização de processos.

A abordagem de controle cinemático pode ser aplicada para sistemas robóticos de maneira eficiente quando a tarefa de interesse não requer velocidades e acelerações elevadas. Nesse enfoque, podemos considerar dois problemas de interesse: o problema de cinemática direta e o problema de cinemática inversa. O primeiro consiste em calcular a posição e a orientação (pose) do robô a partir do conhecimento da posição das juntas e das dimensões dos elos do robô. O segundo consiste no problema inverso, isto é, obter a configuração das juntas do robô a partir do conhecimento da pose do robô no espaço operacional [5].

O controle cinemático pode ser implementado a partir do conhecimento da equação de cinemática diferencial do robô que consiste em obter a relação entre as velocidades das juntas e as velocidades linear e angular do robô. Essa relação é comumente descrita por uma matriz denominada Jacobiano geométrico. Em geral, o objetivo de controle é minimizar um índice de desempenho, por exemplo, um erro de posição ou um erro de orientação, ou mesmo ambos simultaneamente. Esses erros são definidos em termos de uma grandeza desejada variante no tempo (i.e., problema de rastreamento) ou constante (i.e., problema de regulação).

Na solução do problema de cinemática inversa surgem diversas dificuldades do ponto de vista matemático em decorrência da existência de termos não-lineares na equação a ser resolvida. Por isso, esse problema pode tornar-se muito mais complexo que o problema de cinemática direta devido as seguintes razões: (i) podem não haver soluções admissíveis; (ii) não é sempre possível encontrar uma solução na forma fechada; (iii) podem existir múltiplas ou infinitas soluções devido a redundância cinemática da estrutura do robô.

Por outro lado, sabe-se que a existência de soluções pode ser assegurada somente se uma particular pose do efetuador pertence ao espaço de trabalho de destreza W do mecanismo e a maior dificuldade em lidar com o problema de cinemática inversa é a existência de “singularidades cinemáticas”, isto é, aquelas configurações do mecanismo nas quais a matriz Jacobiana do sistema tem posto deficiente. Na vizinhança de uma singularidade, baixas velocidades no espaço operacional podem produzir elevadas velocidades no espaço de configuração e, consequentemente, a saturação dos atuadores. Elevadas forças generalizadas nas juntas também podem ocorrer na vizinhança de poses singulares, o que pode resultar na quebra do mecanismo. Além disso, em uma configuração singular o número de graus de mobilidade da estrutura mecânica pode ser reduzido e podem existir infinitas soluções para o problema de cinemática inversa [5].

(2)

A dificuldade para obtenção de soluções admissíveis surge sempre que (i) o efetuador atinge uma posição ou orientação particular no espaço operacional onde, por exemplo, duas ou mais juntas de revolução são colineares; (ii) a estrutura cinemática do manipulador é complexa e não é possível relacionar a postura do efetuador com diferentes configurações de variáveis das juntas; (iii) o manipulador é cinematicamente redundante. Essas limitações são, em geral, devidas à relação não-linear entre as variáveis no espaço das juntas e as variáveis no espaço operacional. Por outro lado, a equação de cinemática diferencial representa um mapeamento linear entre a velocidade no espaço das juntas e a velocidade no espaço operacional, embora esta relação, representada pela matriz Jacobiana dependa da configuração atual dos ângulos das juntas. Este fato sugere que é possível utilizar a abordagem diferencial para resolver o problema de cinemática inversa e esta proposta é tipicamente citada na literatura como algoritmo iterativo. Uma solução alternativa para solucionar o problema de cinemática inversa consiste em explorar os graus de mobilidade redundantes dos mecanismos. Nesse contexto, os novos algoritmos de controle procuram evitar configurações singulares e otimizar índices de desempenho relevantes, tais como a distância dos limites mecânicos das juntas, as medidas de manipulabilidade, a distância de obstáculos e consumo de energia.

Uma outra solução, recente e promissora, é o método da Inversa Filtrada que é baseado na equação de cinemática diferencial e consiste em um algoritmo que estima dinamicamente a inversa da matriz Jacobiana, ao invés de computar a inversa instantaneamente [2]. O algoritmo possui a característica notável de ser robusto a singularidades e possuir apenas um parâmetro (i.e., um ganho de atualização) a ser sintonizado. Além disso, é possível estender o método incluindo na estimação dinâmica uma função custo a ser otimizada (e.g., limite mecânico das juntas, desvio de obstáculos). Então, a ideia chave consiste em substituir a inversa do Jacobiano no algoritmo iterativo pela sua inversa filtrada e atualizar a estimativa da matriz inversa utilizando uma lei de atualização tipo gradiente.

Modelagem

Um manipulador robótico pode ser esquematicamente representado sob o ponto de vista mecânico como uma cadeia de corpos rígidos, os elos, conectados por meio de juntas, prismáticas ou de revolução. No início desta cadeia é estabelecida a origem, tipicamente a referência inercial escolhida para o sistema e, ao seu final, é montado o efetuador. O movimento resultante de toda a estrutura é obtido pela composição dos movimentos elementares de cada elo com respeito ao elo anterior [5]. De forma a possibilitar a manipulação de um objeto no espaço de trabalho pelo efetuador, torna-se necessária a descrição de sua posição e orientação. O estudo da cinemática de manipuladores robóticos tem início, portanto, com o estudo do movimento do corpo rígido. O interesse da robótica consiste na análise do movimento coletivo destas partículas, como em um elo de um manipulador. Assim, define-se formalmente um corpo rígido como um conjunto de partículas tal que a distância entre elas permanece fixa para todo tempo, independente do movimento realizado e das forças exercidas sobre o corpo. De maneira menos formal, o corpo rígido nada mais é que um corpo imune a distorções.

A extensão para uma cadeia de corpos rígidos é natural, sendo obtidas as chamadas equações de cinemática direta, que relacionam o espaço das juntas e o espaço operacional, tendo como base a convenção de Denavit-Hartenberg [5]. O início da estrutura mecânica é denominado base e a extremidade final é chamada efetuador, uma vez que corresponde ao ponto da cadeia que realizará efetivamente a manipulação de objetos no espaço de trabalho. Um exemplo de manipulador robótico é mostrado na Figura 1:

(3)

Figura 1- Manipulador robótico Scara

A posição e orientação do manipulador podem ser definidas em termos do mapeamento de cinemática direta 𝑘(⋅): 𝑄 ↦ 𝑂 ou da matriz de transformação homogênea 𝑇como:

onde 𝑝 ∈ ℝ3 é a posição do efetuador, 𝜙 ∈ ℝ3 é a orientação do efetuador expressa em termos de uma representação mínima (e.g., ângulos de Euler), 𝑘 é uma função não-linear e 𝑅 ∈ 𝑆𝑂(3) é a matriz de rotação, que descreve a orientação do efetuador com respeito a base do robô.

A cinemática diferencial, por sua vez, relaciona as velocidades linear e angular do efetuador com as velocidades das juntas, sendo essencial para o desenvolvimento de uma solução iterativa para o problema inverso de determinação das variáveis das juntas a partir da configuração da estrutura no espaço operacional, chamado de cinemática inversa. Este mapeamento é realizado pelo Jacobiano geométrico. A matriz Jacobiana constitui uma das principais ferramentas para o estudo de sistemas robóticos, sendo essencial para implementação do controle cinemático, planejamento e execução de trajetórias suaves, identificação de configurações singulares, análise de redundância e mapeamento de forças e torques realizados no efetuador para as juntas.

O objetivo da cinemática diferencial é estabelecer uma relação entre as velocidades linear e angular do efetuador e as velocidades das juntas. É necessário analisar a contribuição da velocidade de cada junta para as velocidades angular e linear do efetuador. A contribuição de uma junta de revolução é dada por:

em que hi constitui o vetor unitário na direção do eixo de rotação da i-ésima junta e qi = i.

Para uma junta prismática onde :

(1) (2) (3) (4) (5) 𝑥 = [ 𝜙 ] = 𝑘(𝑞) T = [𝑝 𝑅 𝑝 0 1]

(4)

De modo que a modelagem matemática de cinemática diferencial em sentido direto possa ser definida como:

A matriz Jacobiana na equação de cinemática diferencial de um determinado manipulador robótico define um mapeamento entre o vetor de velocidades das juntas 𝑞̇ e o vetor de velocidades do efetuador 𝑉𝑒 = [ 𝑣𝑒𝑇 𝜔

𝑒𝑇]𝑇.

Configurações Singulares

O problema de cinemática inversa consiste em determinar as variáveis de juntas que resultam em uma determinada posição e orientação do efetuador. Dada uma função de cinemática direta 𝑘(⋅): 𝑄 ↦ 𝑂 e uma postura desejada x𝑑 ∈ ℝ𝑚, objetiva-se resolver a equação x𝑑 = 𝑘(𝑞), para algum 𝑞 ∈ ℝ𝑛. O problema de cinemática inversa, i.e., 𝑞 = 𝑘−1(x

d) é de maior complexidade quando comparado a cinemática direta por alguns motivos: (i) as equações para solucionar são, em geral, não lineares e por isso não é sempre possível encontrar uma solução na forma fechada; (ii) podem existir múltiplas ou infinitas soluções, como em manipuladores redundantes; e (iii) podem existir soluções não admissíveis em vista da estrutura cinemática do manipulador. A solução é garantida somente se a postura dada pertence ao espaço de trabalho destro do manipulador. Por outro lado, a existência de múltiplas soluções depende do número de graus de mobilidade e parâmetros DH não nulos. Em geral, quanto maior o número de parâmetros DH não nulos, maior o número de soluções admissíveis [5].

O Jacobiano é geralmente uma função da configuração do manipulador e, para algumas configurações específicas, perde posto. Estas configurações, chamadas de singularidades

cinemáticas, devem ser evitadas no momento do planejamento de trajetórias pois representam

configurações em que a mobilidade da estrutura é reduzida, se tornando inviável mover o efetuador em algumas direções. Na proximidade de singularidades, grandes velocidades no espaço das juntas são desenvolvidas para pequenas velocidades no espaço operacional. Além disso, em tais configurações, podem haver infinitas soluções para o problema de cinemática inversa.

No universo de manipuladores robóticos estão presentes os manipuladores paralelos que se distinguem dos manipuladores seriais por serem compostos por cadeias cinemáticas fechadas, o que implica na existência de dois ou mais caminhos em série da base ao efetuador. Consequentemente, esta categoria de manipuladores apresenta diferentes configurações singulares: (i) Singularidades do espaço de configuração: quando o grau das equações da estrutura cai e, assim, o efetuador perde a capacidade de se mover instantaneamente em algumas direções; (ii)Singularidades de efetuador: quando o efetuador perde graus de liberdade (DOF), isto é, o movimento das articulações ativas não pode resultar em nenhum movimento do efetuador; (iii) Singularidades do atuador: quando o atuador do manipulador ou as juntas ativas não podem produzir forças e torções ao efetuador em algumas direções [1]. E isto já incrementa significativamente a complexidade das abordagens do problema.

A maioria das técnicas propostas na literatura para enfrentar esse problema são baseadas em métodos numéricos ou de otimização. Em geral, o desempenho das soluções apresentadas é avaliado de acordo com a estabilidade, custo computacional e robustez às singularidades. Outros métodos para solucionar o problema de cinemática inversa recorrem à diferentes

(6) (7) (2) (3) (4) (5)

(5)

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. O algoritmo DLS (no inglês, damped least-square), baseado em Jacobiano pseudo-inverso, utiliza um fator de amortecimento para evitar as singularidades estabelecendo um compromisso entre a exatidão e a viabilidade da solução. O método FIK (no inglês, feedback inverse 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.

Uma solução alternativa para o problema de cinemática inversa baseada em um algoritmo que estima a inversa da matriz Jacobiana dinamicamente [2]. No caso particular, onde a matriz a ser invertida é invariante no tempo, a saída do algoritmo pode ser interpretada como a sua inversa filtrada e, por isso, ele é denominado de algoritmo da Inversa Filtrada.

Inversa Filtrada

Basicamente, a solução procura evitar que seja feito um processo de inversão de uma matriz em cada instante de tempo para cada ponto da trajetória, processo laborioso que em uma abordagem clássica de cinemática inversa é requerido e que nem sempre é matematicamente possível. Para tal, substitui-se a matriz inversa do Jacobiano por uma função estimada da matriz inversa que seja admissível pelo sistema e que garanta a estabilidade, controlabilidade e integridade da estrutura robótica, limitando a velocidade das juntas, criando uma trajetória alternativa explorando os graus de mobilidade e o espaço de trabalho do efetuador, levando-se em consideração o erro de posição [1].

A construção do algoritmo parte de uma análise inicialmente escalar onde dado um sinal

k(t) em produto com (t) leve a 1 de modo que 1/k(t)=(t) através da seguinte metodologia:

Introduz-se uma variável que representa o erro S que desejamos que se aproxime de zero e declaramos, portanto, que:

Agora considerando uma função positiva:

Se derivarmos em função do tempo nos dará:

Podemos selecionar como lei de atualização dinâmica:

onde  > 0 representa o ganho de atualização, por consequência obtemos:

Note que o segundo termo será sempre negativo e o primeiro termo ainda permanece uma incógnita dependente de k, logo, se k for constante por exemplo, sua derivada será zero e então

e reescrevendo a equação (11) podemos fazer:

E agora analisando esta equação diferencial no domínio da frequência aplicando Laplace:

Fazendo como uma constante só então podemos entender como um filtro de primeira ordem passa baixa onde a entrada é a verdadeira inversa do jacobiano e converge exponencialmente para 1/k. Note que quão menor for k mais lenta será a filtragem.

(8) (9) (10) (11) (12) (13) (14)

(6)

Um manipulador robótico comumente composto por várias juntas exige uma análise multivariável.

Na abordagem matricial se faz necessário implementar duas matrizes de erro lateral:

De modo que e consideremos uma função positiva pelo traço temos:

Selecionando como lei de atualização dinâmica:

De maneira que seja o ganho de atualização obteremos:

Semelhante ao erro lateral direito, é feito pelo erro lateral esquerdo. E considerando a função positiva de traço obtém-se:

Escolhendo agora:

Chegamos à:

Para o caso de manipuladores não redundantes (m = n), ambas as leis de atualização podem ser usadas para resolver o problema da cinemática inversa, uma vez que as matrizes inversas esquerda e direita são iguais. No entanto, no caso de manipuladores redundantes (m<n), as matrizes de erro Sr e Sℓ têm dimensões diferentes, portanto a inversa filtrada deve ser baseada em ambas as matrizes de erro [1]:

(15) (16) (17) (18) (19) (20) (21) (22) (23)

(7)

E finalmente para garantir a equidade do sinal que é observada no caso escalar, propôs-se uma modificação na filtrada inversa matricial para uma matriz simétrica positiva semidefinida:

Considerando agora um problema de controle cinemático dado por uma equação

onde K é a matriz jacobiana e a função Lyapunov e que sua derivada ao longo da trajetória seja dada por então para um sinal de controle u modificado para

e fazendo teremos para integrar.

Metodologia

Para implementar um algoritmo de controle é possível utilizar diversas ferramentas e linguagens de programação. Entretanto, para se trabalhar em um ambiente computacional familiar fora escolhido o programa Matlab para desenvolver os processos matemáticos necessários para a execução das simulações de controle de manipuladores robóticos. Juntamente com o programa Matlab foram utilizadas toolbox desenvolvidas por Peter Corke [4] e o pacote Simscape Multibody de modelagens por Simulink para realizar animações das articulações robóticas.

O controle em malha fechada fora feito considerando duas variáveis de entrada: X e Xd

que representam respectivamente a posição instantânea do efetuador e a trajetória desejada. E a variável de saída u que representa o sinal de controle sobre o atuador das juntas ativas. Note que as variáveis de entrada pertencem ao espaço cartesiano de três dimensões enquanto que o sinal de saída será uma resposta no espaço das juntas onde o vetor de juntas q representa a posição de n juntas. Isso implica na necessidade de uma abordagem dimensional que será detalhada mais a seguir.

Para efeito de simulação, a variável X que representa a posição do manipulador é estimada matematicamente por intermédio da cinemática direta. E de maneira iterativa, deve-se procurar convergir o erro para zero na atuação conjunta da cinemática direta e inversa no algoritmo de controle pela inversa filtrada. Objetiva-se, portanto, atuar nas juntas do manipulador de forma que pela cinemática direta seja possível verificar que o efetuador estaria descrevendo a trajetória desejada. A formalização matemática clássica deste laço de controle é feita da seguinte maneira:

A obtenção dinâmica do erro e torna-se necessária para estabelecer a análise da convergência do mesmo a zero.Assim, a equação do erro é obtida através da diferenciação de ambos os lados e a partir da cinemática diferencial:

Para o caso em que a matriz Jacobiana J(q) é quadrada e invertível. Devemos escolher q tal que o erro convirja para zero:

(24)

(25)

(26)

(27)

(8)

Isso leva ao sistema linear:

Onde a escolha de uma matriz de Hurwitz quadrada positiva definida garante a estabilidade assintótica do erro [1].

Para o caso em que a matriz Jacobiana J(q) é retangular de posto incompleto, logo não invertível, devemos escolher:

Onde J+ é a matriz pseudo-inversa à direita .

Esta abordagem minimiza localmente a norma das velocidades das juntas desde que v(t) não conduza às configurações singulares. Portanto a tarefa da inversa filtrada é, justamente, atuar nas situações onde a trajetória proposta solicita que o efetuador esteja em uma posição que resulte em uma singularidade do manipulador, de modo que ao invés de aplicar a matriz Jacobiana inversa ou a pseudo inversa seja então aplicado a inversa filtrada.

A trajetória desejada deve, portanto, nas simulações, ser definida procurando explorar justamente as posições de singularidade do manipulador.

Os sistemas robóticos podem ser classificados em sistemas redundantes e não redundantes. E os sistemas podem ter estrutura serial ou paralela. As estruturas paralelas possuem juntas não atuadas (passivas), onde seu movimento é resultado natural da ação das juntas atuadas ou ativas e não representam graus de liberdade. O número de graus de liberdade pode ser calculado pela fórmula de Grubber [5]. Isso nos conduz matematicamente a uma modelagem ainda mais complexa que leva em consideração a matriz homogênea de transformação do vetor de juntas ativas e o vetor de juntas passivas separadamente.

A metodologia que representa o tratamento matemático das equações de manipuladores de cadeias fechadas leva em consideração as restrições cinemáticas [1].

Inicialmente consideremos que:

Onde Jm é a matriz homogênea de transformação (Jacobiano Geométrico) em sentido

direto de modo que a velocidade no espaço cartesiano seja função desta matriz aplicado ao vetor velocidade das juntas. E que devido as restrições do mecanismo em cadeia fechada temos o Jacobiano de restrição que leva a velocidade nula:

O vetor velocidade das juntas agora é particionado em juntas ativa e passivas o que nos conduz ao sistema:

Onde

E podemos explicitar o vetor velocidade de juntas passivas como:

E a velocidade do efetuador no espaço cartesiano como:

(29) (30) (31) (32) (33) (34) (35) (36)

(9)

Note agora que se faz necessário implementar o algoritmo da inversa filtrada para substituir a inversa da matriz Jacobiana de restrição referente às juntas passivas e substituir a última matriz jacobiana , o que implica em uma inversa filtrada “dentro” de outra.

O laço de controle [3] deverá extrair a velocidade das juntas ativas e passivas, integrar, determinar a posição das juntas, pela cinemática direta determinar a posição do efetuador, pela diferença da posição à trajetória calcular o erro, filtrar a inversa e reiniciar o laço de controle.

Simulações e discussões

A primeira simulação fora realizada utilizando como manipular robótico uma estrutura composta por dois links e duas juntas ativas em composição serial, o primeiro link com 279.4mm e o segundo com 228.6mm, modelado em com uma margem de 10% de incerteza nas dimensões. Esta configuração de manipulador é pertinente pois representa uma condição onde a dimensão do efetuador é maior que o número de juntas ativas e isso resulta em uma matriz jacobiana retangular, o que não é invertível. Como visto, pelo método clássico quando o tratamento inverso não é possível utiliza-se como recurso a pseudo inversa.

A plotagem de manipuladores para simulação de seu comportamento físico fora auxiliada por toolbox [4] conforme figura 2.

Figura 2 – Plotagem de manipulador de dois links

Para efeito de estudo do comportamento do manipulador na presença de singularidades, foram escolhidas 4 trajetórias diferentes e 3 métodos de controle. Inicialmente o método clássico baseado na pseudo inversa do Jacobiano, o segundo utilizando o algoritmo de controle damped least-square (DLS) e por último a inversa filtrada.

Escolhida como primeira trajetória no estudo de casos uma curva de lissajous que exige do efetuador uma posição que se estende além do espaço destro de trabalho.

(10)

Figura 3 – trajetórias desejada e executada em controle clássico

É possível verificar que na região onde a trajetória pertence ao espaço de trabalho destro do manipulador, conforme esperado, a pseudo inversa é capaz de impor um sinal de controle com razoável acurácia, mas fora do espaço de trabalho, a posição proposta pelo sinal de controle traria sérios prejuízos a integridade da estrutura robótica. Esse resultado catastrófico é conhecido e esperado para as configurações singulares e, portanto, constitui-se em um ponto de pesquisa relevante para que seja feito um controle robusto às configurações singulares eventualmente propostas pelas trajetórias desejadas. Como estes resultados baseados no controle pela pseudo inversa já são amplamente tratados pela literatura, neste detalhamento será apresentado somente o comparativo entre o controle efetuado por DLS e Inversa Filtrada em termos de velocidade de juntas, índice de manipulabilidade, erros de posição e esforço computacional.

Figura 4.a e 4.b – Trajetórias em controle por DLS e Inversa Filtrada

Verifica-se que o algoritmo DLS pela figura 4.a já reduz significativamente o erro de trajetória anteriormente visto pelo método clássico de controle por pseudo inversa, mas o algoritmo de controle por inversa filtrada produz uma trajetória alternativa suave vista na figura 4.b dentro do espaço de trabalho destro do robô, sem prejuízos as articulações. Os resultados

(11)

das demais trajetórias simuladas reproduzem os mesmos efeitos. Outro elemento importante que deve ser analisado é o índice de manipulabilidade [5] calculado por:

Figura 5.a e 5.b - Índices de manipulabilidade no tempo em controle DLS e Inversa Filtrada

É desejado que este índice seja o quão distante de zero possível e observa-se que o índice de manipulabilidade chega a valores muito próximos de zero, mas não permanece nesta condição em contrapartida ao algoritmo DLS.

Figura 6.a e 6.b – velocidade das juntas no tempo em controle DLS e Inversa Filtrada

Estes gráficos da velocidade das juntas pela variação do sinal de controle são muito importantes, pois eles mostram o quão próximo o modelo matemático está do modelo físico. Isto, pelo fato de que implementar variações significativas de velocidade implicam em uma grande aceleração que pode ser muito difícil ser reproduzida em uma estrutura robótica composta por engrenagens e links com significativa massa, pois a energia cinética de um corpo robótico é relativamente alta. E analisando os gráficos das velocidades das juntas, mesmo na região fora de singularidades, as acelerações das juntas são bem menos abruptas com picos de velocidade em 3rad/s, ou seja, mais plausíveis do ponto de vista físico enquanto o DLS propõe

(12)

picos de velocidade altíssimos de modo instantâneo. Quanto ao esforço computacional, foi observado que experimentalmente o tempo total das iterações foi muito menor devido à não mais necessidade de inversão de uma matriz a cada iteração, O tempo de processamento requerido é diretamente proporcional ao esforço computacional.

Foram realizadas exaustivas simulações de outros manipuladores seriais compostos por estruturas de 3, 4 e 6 links, desde os de característica planar até os de 6 graus de liberdade, com as mais diferentes trajetórias e os resultados foram muito próximos aos esperados isto devido ao fato de que as modelagens seguem o mesmo padrão onde o número de variáveis não alterava o tratamento matemático.

A próxima etapa do estudo de casos fora implementar o controle por inversa filtrada em manipuladores paralelos, onde articuladores possuem juntas atuadas e não atuadas que representam o caso MIMO e, em tese, são aplicados dois algoritmos de inversa filtrada em que um é parte integrante do outro.

Fora escolhido para estudo de caso o manipulador paralelo composto inicialmente por uma única junta ativa e outra junta passiva. Onde efetuador está ligado à uma junta prismática ou carretilho que limita seu deslocamento em uma trajetória unidirecional, este modelo é conhecido como Slider Crank. Em uma configuração singular serial, as juntas podem ter velocidade não nula enquanto o efetuador está em posição de repouso, o que acontece quando o efetuador perde graus de liberdade no espaço de trabalho e a matriz Jacobiana perde posto e não é mais invertível. Entretanto em uma configuração singular de manipulador paralelo, podem existir velocidades não nulas do efetuador no espaço de trabalho quando as juntas ativas estão em posição de repouso. Neste caso o efetuador ganha graus de liberdade e o robô perde controlabilidade, e ainda, forças inercias podem levar a quebra da estrutura robótica.

Como fora detalhado, a modelagem clássica de um manipulador paralelo exige a inversão de duas matrizes, e por consequência de eventual perda de posto, a qual resulta na não invertibilidade de uma delas, temos por resultado uma configuração de singularidade cinemática. E fisicamente, a simples proximidade das configurações singulares seriam já suficientes para causar grandes danos na estrutura robótica.

Manipuladores paralelos são caracteristicamente mais precisos e suportam maior carga em comparação as estruturas seriais devido a distribuição das forças nas cadeias cinemáticas.

Do ponto de vista físico, se faz necessário para melhor compreensão das configurações de singularidade em manipuladores paralelos, uma análise geométrica que relacione o problema matemático aos efeitos estruturais do manipulador.

As singularidades em mecanismos paralelos podem estar relacionadas ao efetuador, ao atuador ou singularidade conjunta [5].

Figura 7 – Manipulador paralelo Slider Crank

Um Slider Crank que possui o link r>L terá uma posição onde a estrutura poderá configurar-se semelhante a um triangulo retângulo. Neste ponto limite a junta ativa terá chegado

(13)

ao seu limite máximo de abertura angular e, ao tentar retornar desta posição irá transferir pelo o link L uma força perpendicular ao eixo de deslizamento de modo que o efetuador B não poderá se deslocar em nenhum dos dois sentidos produzindo uma singularidade de efetuador conforme ilustrado a seguir:

Figura 8 – Configuração de singularidade no efetuador

Outro exemplo de singularidade ocorre quando existe uma carga na estrutura, que pode ser até mesmo devido a massa do próprio manipulador, que promova um desvio de posição. Considerando um Slider Crank onde a junta ativa imprime posição colinear dos links, o peso da estrutura pode produzir movimento na junta passiva e levá-lo a configuração de singularidade. Esta última pode ser comparada à de um joelho que dobra para trás devido a carga atuando em uma estrutura que alcança o limite de estabilidade com energia cinética significativa:

Figura 9.a 9.b – transição para uma configuração de singularidade cinemática

Nesta simulação a trajetória é unidimensional, e para estudar as singularidades, fora proposto uma trajetória que passasse pelos pontos de singularidade se estendendo para fora do espaço de trabalho. E o objetivo na implementação do algoritmo de controle é evitar, não somente o ponto, mas também a proximidade das configurações singulares, de modo que, quando a trajetória sugerir posição fora da área de trabalho do efetuador, seja proposto para configuração das juntas uma posição que permita ao efetuador estar o mais próximo da trajetória desejada quanto possível e ainda esteja confinado ao movimento entre as singularidades.

(14)

Figura 10.a e 10.b – Comparativo do erro de trajetória em controle DLS e Inversa Filtrada

Nota-se que a análise destes gráficos não é trivial, eles representam o erro de posição no tempo, e uma vez que a trajetória é unidimensional e extrapola ao alcance da área de trabalho a presença do erro e sua composição é de fundamental importância para o estudo da eficiência dos algoritmos de controle.

O trajeto que pertence ao espaço de trabalho é observado quando o erro está próximo de zero. O erro é calculado pela diferença entre o cálculo de posição por cinemática direta (usando as soluções do controle para as configurações das juntas) e a trajetória desejada. Observe que o erro chega a ser negativo em controle por DLS, o que ocorre quando o efetuador passa pelo ponto de singularidade como se fosse uma função contínua, enquanto que em controle por inversa filtrada o erro se mantém sempre positivo, o que indica que o manipulador apenas se aproxima suavemente do ponto de singularidade como um limiar, mas não o alcança e permanece confinado na região aonde a manipulabilidade não é nula. Como o manipulador Slider Crank é configurado por uma junta ativa e uma junta passiva, a modelagem exigia um controle de caráter escalar.

Avançando no estudo de casos, fora modelado o manipulador paralelo conhecido como four bar linkage composto por uma junta ativa e três juntas passivas, duas cadeias cinemáticas e susceptível à singularidade estrutural onde Jcp perde posto e simultaneamente pode existir movimento na junta passiva quando a junta ativa está em repouso. Pela cinemática direta é possível determinar as trajetórias possíveis:

Figura 11.a, 11.b, 11.c e 11.d) – Modelos de manipuladores four bar linkage

Considerando o modelo 11.c observa-se que podem existir limites no alcance da trajetória que ocorrem quando o link I está alinhado ao link S. No caso do modelo 11.c a configuração limite com o alinhamento de I com S exige de todas as juntas, ativa e passivas, mudança de sentido, mas devido à perda de posto em Jcp a junta passiva entre I e S pode permanecer parada no caso da junta ativa estar entre p e q, e isso travaria a estrutura. Se a junta entre I e S simplesmente continuar no mesmo sentido devido a inércia, causaria singularidade estrutural e

(15)

colapso. Equivalentemente, o mesmo efeito se daria no modelo 11.c se tivermos S alinhado à P com junta ativa entre q e I revertendo para sentido horário.

O objetivo neste estudo de caso é modelar com sucesso um manipulador four bar linkage semelhante ao modelo 11.c, propor uma trajetória que exceda o espaço de trabalho passando por configurações singulares e efetuar o controle cinemático por inversa filtrada, aplicando o enfoque matricial de maneira que se limite o movimento do efetuador à uma região tão longe dos pontos de singularidade quanto se determine pelo parâmetro de atualização dinâmica do algoritmo de controle estudado.

Figura 12.a 12.b – trajetória proposta e erro de trajetória em controle por Inversa Filtrada

Como a trajetória proposta exige do efetuador uma posição completamente fora do seu espaço de trabalho, o manipulador já encontra-se em configuração de singularidade no instante de partida onde não existem soluções possíveis para as juntas que satisfaçam à cinemática inversa. O erro tem caráter oscilatório pois no ensaio a trajetória definida e a executada possuem naquele momento direções ortogonais entre si a uma distância de 10cm, fazendo com que o efetuador oscile entre dois pontos da trajetória alternativa que tenham a menor distância da trajetória desejada. O erro é apresentado em centímetros por iterações de um período e a trajetória em centímetros contendo três períodos e meio.

É possível observar pelo comportamento do erro que uma vez que a trajetória desejada pertença ao espaço de trabalho do efetuador o erro converge exponencialmente para zero, ainda verificam-se perturbações no acompanhamento da trajetória que se sucedem pelo fato de que a trajetória admissível em um four bar linkage é extremamente limitada geometricamente, mas ainda assim é feito um esforço por parte do algoritmo de controle na compensação do erro pelo parâmetro de ganho em atualização dinâmica com objetivo de acompanhar a trajetória proposta ou uma trajetória alternativa, como observado no trajeto onde o erro é constante (2250-3250) que representa deslocamento do efetuador em paralelo à trajetória.

O fato do erro permanecer confinado em 10 cm que equivale a amplitude da onda proposta como trajetória mostra que ao efetuador não foi solicitado nenhuma posição errática como visto nos métodos de controle por pseudo inversa e DLS.

Conclusões

Grande esforço é realizado na intenção de propor trajetórias que se desviem de configurações singulares pertencentes a área de trabalho do efetuador afim de proteger a integridade robótica. Entretanto, baseado em algoritmos de controle robustos às singularidades é possível minimizar este esforço, bem como minimizar as consequências de erros no planejamento de trajetórias. O algoritmo estudado e detalhado neste trabalho pode oferecer uma

(16)

alternativa viável tanto do ponto de vista matemático quanto físico, exigindo menor esforço computacional e maior robustez aos erros de planejamento de trajetórias.

O estudo de casos na simulação do algoritmo da Inversa Filtrada em manipuladores seriais com diferentes configurações permitiu em um primeiro momento validar expectativas inicias da capacidade do método em limitar a velocidade das juntas na vizinhança das singularidades, manter o índice de manipulabilidade elevado para cada instante de tempo, bem como evitar pontos de singularidade através de trajetórias alternativas do efetuador.

Em contraste com os métodos clássicos, a implementação do algoritmo de controle requer apenas um parâmetro de configuração: o ganho de atualização que limita o quão distante o manipulador deve admitir-se a uma configuração singular. Este parâmetro deve ser estabelecido levando em consideração características próprias de cada manipulador. Em um espaço multivariável de juntas em manipuladores paralelos é necessário atualizar dois ganhos que podem ser ajustados separadamente e também são valores relativos à precisão e robustez de cada manipulador. Em um segundo momento, observamos que a otimização destes parâmetros constitui um objeto de pesquisa bastante relevante para o tema de pesquisa proposto.

Neste trabalho, foi possível dimensionar a contribuição que o algoritmo de controle baseado no método da Inversa Filtrada representa para evitar as singularidades cinemáticas, minimizando o esforço computacional e otimizando objetivos de controle secundários.

A pesquisa, ainda possui como desafios a universalidade aplicacional, desvio de obstáculos variantes no tempo e auto calibração paramétrica baseado em percentual de segurança.

A pesquisa deve estender-se para o estudo de casos em manipuladores compostos por juntas prismáticas, esféricas e mistas e estender-se do ambiente de simulações numéricas para simulações mecânicas afim de concretizar resultados esperados.

Referências

1 - A. C. Leite, and R. R. Costa, Singularity and Joint Limits Avoidance for Parallel

Mechanisms using the Filtered Inverse Method, Proceedings of the 2016 American Control

Conference, pp. 1197-1202, Boston, MA, USA, Jul. 2016.

2 - L. V. Vargas, A. C. Leite, and R. R. Costa, Overcoming Kinematic Singularities with the

Filtered Inverse Approach, Proceedings of the 19th IFAC World Congress, p. 8496-8502,

Cape Town, South Africa, Aug 2014

3 -P.I. Corke; Robotics, Vision and Control - Fundamental Algorithms in Matlab; Springer; 2011;

4 - P.I. Corke, MATLAB toolboxes: robotics and vision for students and teachers, IEEE Robotics and Automation Magazine, Volume 14(4), Dezembro 2007,

5 - Siciliano, B., Sciavicco L., Villani, L. and Oriollo, G., Robotics: Modelling, Planning and

Referências

Documentos relacionados

Ara bé: sé del cert que jo existeixo i sé també que totes les imatges (i, en general, totes les coses que es refereixen a la naturalesa dels cossos) potser són només somnis

Considerando que o MeHg é um poluente ambiental altamente neurotóxico, tanto para animais quanto para seres humanos, e que a disfunção mitocondrial é um

(grifos nossos). b) Em observância ao princípio da impessoalidade, a Administração não pode atuar com vistas a prejudicar ou beneficiar pessoas determinadas, vez que é

As IMagens e o texto da Comunicação (com as legendas incluídas) devem ser enviadas por correio eletrônico. Comitê

No entanto, maiores lucros com publicidade e um crescimento no uso da plataforma em smartphones e tablets não serão suficientes para o mercado se a maior rede social do mundo

Sendo os resultados experimentais (verde) obtidos nas amostras sem desvolatilizacão da Figura 37, fizeram-se a descrição feita acima onde a media final serviu

Se o examinando montar a figura corretamente dentro do limite de tempo, não aplicar a segunda tentativa, passar para a primeira tentativa do item 6. Se o examinando montar a

O equilíbrio funcional foi medido pela Escala de Equilíbrio de Berg, a força muscular isométrica dos membros inferiores por um dinamômetro (CRF200, EMG System do Brasil) e o