28
CAPÍTULO 2 MODELAGEM E CONTROLE DE ROBÔS João Maurício Rosário 2.1 - INTRODUÇÃO Um robô industrial pode ser definido como um sistema mecânico articulado que tem como objetivo principal executar operações pré-definidas. Isto é realizado através de um Supervisor de Controle que deverá especificar o que o manipulador deverá fazer para que o mesmo possa realizar as tarefas especificadas. Normalmente ele é constituído de seis graus de liberdade, e o posicionamento de sua ferramenta de trabalho é especificado através do controle de modo apropriado de suas variáveis articulares ou de juntas. Desta maneira, sua trajetória é definida através de um conjunto de ângulos/translações associados ao movimento angular/linear de cada grau de liberdade do robô, que após algoritmo de interpolação, servirão como sinal de referência para o controlador de posição de cada junta robótica que realizará uma comparação com os sinais provenientes dos transdutores de posição das juntas. Diversas aplicações industriais, exigem que o robô trabalhe de acordo com a posição e orientação do seu elemento terminal em relação ao sistema de coordenadas de trabalho, como por exemplo, um robô trabalhando em conjunto com uma máquina de comando numérico, numa célula automatizada com outros robôs, ou ainda quando o mesmo é dotado de um sistema de visão. Neste último caso, a interpretação das imagens se efetuará em relação ao sistema de coordenadas de trabalho (em duas ou três dimensões), e as informações extraídas das mesmas serão transmitidas ao Sistema de Supervisão após tratamento apropriado. O Supervisor de Controle, ou unidade de controle, é responsável pela geração dos sinais de referência individuais ao longo do tempo, para cada junta do robô. Através de uma malha de controle de posição independente para cada junta, estes sinais são comparados com os valores atuais (obtidos através dos sensores de posição articulares), que faz com que a configuração de um robô seja controlada a partir de um valor desejado, independente do movimento desejado e da carga transportada pelo robô. Entretanto, os valores das variáveis articulares utilizados como sinal de referência na malha de controle de posição das juntas quando comparados com os valores das juntas podem traduzir num erro, que aumenta com a sua velocidade de operação. Conseqüentemente, a implementação de um controlador de posição para um robô industrial exige o conhecimento da precisão cinemática do movimento do manipulador. Para estabelecermos estratégias de controle de posição de juntas robóticas eficientes e precisas (erro próximo de zero), o movimento do robô é descrito através de equações diferenciais levando-se em consideração a sua arquitetura construtiva, a massa dos diferentes elementos, as inércias e tensor de inércia relacionada com a carga transportada, considerando também a modelagem completa de seu sistema de acionamento (motor-redutor), (PAUL, 1981).

CAPÍTULO 2 - fem.unicamp.brhermini/Robotica/livro/cap.2.pdf · CAPÍTULO 2 MODELAGEM E CONTROLE DE ROBÔS João Maurício Rosário 2.1 - INTRODUÇÃO Um robô industrial pode ser

  • Upload
    lyliem

  • View
    235

  • Download
    0

Embed Size (px)

Citation preview

CAPÍTULO 2

MODELAGEM E CONTROLE DE ROBÔS

João Maurício Rosário

2.1 - INTRODUÇÃO

Um robô industrial pode ser definido como um sistema mecânico articulado que tem como objetivo principal executar operações pré-definidas. Isto é realizado através de um Supervisor de Controle que deverá especificar o que o manipulador deverá fazer para que o mesmo possa realizar as tarefas especificadas. Normalmente ele é constituído de seis graus de liberdade, e o posicionamento de sua ferramenta de trabalho é especificado através do controle de modo apropriado de suas variáveis articulares ou de juntas.

Desta maneira, sua trajetória é definida através de um conjunto de ângulos/translações associados ao movimento angular/linear de cada grau de liberdade do robô, que após algoritmo de interpolação, servirão como sinal de referência para o controlador de posição de cada junta robótica que realizará uma comparação com os sinais provenientes dos transdutores de posição das juntas.

Diversas aplicações industriais, exigem que o robô trabalhe de acordo com a posição e orientação do seu elemento terminal em relação ao sistema de coordenadas de trabalho, como por exemplo, um robô trabalhando em conjunto com uma máquina de comando numérico, numa célula automatizada com outros robôs, ou ainda quando o mesmo é dotado de um sistema de visão. Neste último caso, a interpretação das imagens se efetuará em relação ao sistema de coordenadas de trabalho (em duas ou três dimensões), e as informações extraídas das mesmas serão transmitidas ao Sistema de Supervisão após tratamento apropriado.

O Supervisor de Controle, ou unidade de controle, é responsável pela geração dos sinais de referência individuais ao longo do tempo, para cada junta do robô. Através de uma malha de controle de posição independente para cada junta, estes sinais são comparados com os valores atuais (obtidos através dos sensores de posição articulares), que faz com que a configuração de um robô seja controlada a partir de um valor desejado, independente do movimento desejado e da carga transportada pelo robô.

Entretanto, os valores das variáveis articulares utilizados como sinal de referência na malha de controle de posição das juntas quando comparados com os valores das juntas podem traduzir num erro, que aumenta com a sua velocidade de operação. Conseqüentemente, a implementação de um controlador de posição para um robô industrial exige o conhecimento da precisão cinemática do movimento do manipulador.

Para estabelecermos estratégias de controle de posição de juntas robóticas eficientes e precisas (erro próximo de zero), o movimento do robô é descrito através de equações diferenciais levando-se em consideração a sua arquitetura construtiva, a massa dos diferentes elementos, as inércias e tensor de inércia relacionada com a carga transportada, considerando também a modelagem completa de seu sistema de acionamento (motor-redutor), (PAUL, 1981).

Neste capitulo serão abordados aspectos conceituais que envolvem a modelagem e controle de robôs industriais, proporcionando ao leitor uma formação básica dos principais conceitos matemáticos necessários para utilização de um supervisor de controle de um robô industrial.

2.2 - MODELAGEM CINEMÁTICA DE MANIPULADORES

2.2.1 - Descrição de um Robô Industrial

Um manipulador mecânico consiste de elos, conectados por juntas prismáticas ou rotacionais. Cada par junta-elo constitui um grau de liberdade. Assim, para um manipulador com N graus de liberdade, temos N pares juntas-elos, onde o primeiro elo é a base de sustentação do robô (sistema de coordenadas inerciais fixado) e no seu último elo é incorporada a sua ferramenta de trabalho.

O conhecimento completo das variáveis articulares de um robô θi, determina o posicionamento de sua ferramenta no sistema de coordenadas de trabalho. De um modo geral, os três primeiros graus de liberdade de um robô são responsáveis pelo posicionamento de sua ferramenta no espaço de tarefas e os restantes pela sua orientação.

A figura 1.1 apresentada no primeiro capítulo mostra as juntas e elos de um robô industrial. Assim a primeira conexão ocorre entre o primeiro elo e o suporte de base, e o último elo representa o ponto de conexão entre o sexto grau de liberdade e a ferramenta.

Na maioria das aplicações industriais, a programação de tarefas de robôs, é realizada por aprendizagem, consistindo no movimento individual de cada junta. Assim sendo, a programação de trajetórias de um robô torna-se muito fácil, não necessitando de um conhecimento do modelo, sendo a fase de aprendizagem basicamente uma operação de armazenamento de uma seqüência de incrementos necessários para que o conjunto de variáveis articulares determine um posicionamento final Xi, especificado a partir de um perfil de trajetórias fornecido (robô controlado a partir do sistema de coordenadas de juntas).

Como um robô é controlado através de suas variáveis articulares, a realização do controle de posição em relação ao sistema de coordenadas cartesianas implicará no desenvolvimento de metodologias para transformação de coordenadas. A transformação de coordenadas articulares para cartesianas é normalmente realizada em tempo real, onde a partir do conjunto de variáveis articulares serão obtidas a posição e orientação de sua ferramenta.

2.2.2 - Sistemas de Referência

Um Sistema Articular pode ser representado matematicamente através de n corpos móveis Ci (i = 1, 2,..., n) e de um corpo C0 fixo, interligados por n articulações, formando uma estrutura de cadeia.

Para representar a situação relativa dos vários corpos da cadeia, é fixado a cada elemento Ci um referencial R. Podemos relacionar um determinado referencial R i+1 (oi+1, xi+1, yi+1, zi+1) com o seu anterior Ri (oi, xi, yi, zi), como também o sistema de coordenadas de origem da base (figura 2.2) através da equação 2.1, onde Ai,i+1 representa as matrizes de transformação homogênea de rotação e Li o vetor de translação de uma origem a outra, onde Ai, i+1 é resultante do produto matricial global entre as diversas matrizes de transformações homogêneas relacionadas com rotações ou translações sucessivas das diferentes articulações (equação 2.2).

o o A Li i i i i+ += +1 1, * (2.1)

Ai,i+1 = A1,2. A2,3. ... A i,i+1 (2.2)

onde

A

Nx Sx Ax

Ny Sy Ay

Nz Sz Azi i

o o o

o o o

o o o

,+ =

1

Figura 2.1 - Sistema de Referência utilizado.

Qualquer rotação no espaço pode ser decomposta em um grupo de rotações elementares ao longo dos eixos X, Y e Z. A matriz de rotação elementar usada na equação de transformação é associada com a rotação elementar do referencial correspondente em relação ao seu anterior. Este procedimento matemático pode ser estendido para toda extensão do modelo. Assim sendo, a matriz de orientação de um ponto de interesse pode ser obtida pela equação 2.2.

Conseqüentemente o posicionamento completo de um corpo rígido no espaço, poderá ser facilmente obtido através da equação 2.1 que fornece o seu vetor posição, sendo que a equação 2.3 representa a matriz de orientação associada, podendo ser expressa através de componentes angulares associadas às três direções de rotação correspondentes aos eixos de referência do sistema de coordenadas (pôr exemplo, Roll, Pitch, Yaw - RPY ou quartenions).

2.2.3 - Transformação de coordenadas

Nas diversas aplicações industriais, um robô pode ser controlado e programado a partir do sistema de coordenadas associadas a sua ferramenta. É muito mais natural expressarmos o deslocamento absoluto do elemento terminal de um robô que considerarmos a variação de suas coordenadas articulares, embora a malha de controle de uma junta robótica seja estabelecida a partir da comparação de grandezas articulares, tornando-se necessário a realização de uma transformação geométrica apropriada para o estabelecimento da correspondência entre as variáveis articulares θi e as coordenadas absolutas do elemento terminal Xi. A figura 2.2 apresenta um esquema descrevendo o problema de transformação direta de coordenadas para um robô com N graus de liberdade.

θ1 θ2 θN

Figura 2.2 - Transformação Direta de Coordenadas.

Li

[Ai, i+1]

TRANSFORMAÇÃO

DIRETA

X, Y, Z ψ, θ, φ

A operação que realiza a correspondência entre esses dois espaços é chamada de transformação de coordenadas. A transposição direta de coordenadas apresenta uma solução única, o mesmo não acontecendo com o problema inverso, onde manipuladores com um número de graus de liberdade superior a três podem conduzir a soluções múltiplas. Neste capitulo introduziremos o problema da transformação de coordenadas, a partir de exemplos simples, com ênfase na solução do problema inverso utilizando algoritmos numéricos.

2.2.3.1 - Robô Elementar (1 GL) – pêndulo simples

A figura 2.3 apresenta um robô elementar (pêndulo simples) com 1 GL (grau de liberdade) e de comprimento L (perfeitamente rígido), onde as coordenadas X e Y do elemento terminal são expressas em relação ao sistema de coordenadas. A partir de um dado valor θ ficam determinadas as coordenadas XT = (X, Y)T do elemento terminal do robô em relação ao seu sistema de coordenadas. Esta operação é chamada transformação direta de coordenadas.

Para deslocarmos a extremidade do seguimento L do robô para uma posição desejada M = (Xo, Yo)T basta utilizarmos a coordenada θ, ou seja, θ = arc sin (Xo/L), com Yo ≤ L.

Modelo Matemático associado: X = L. sin θθ Y = L. ( 1 – cos θθ )

Figura 2.3 - Robô com 1 grau de liberdade (pêndulo simples).

2.2.3.2 - Robô com 2 GL – pêndulo duplo

A figura 2.4 apresenta um robô com dois graus de liberdade, constituído de dois pêndulos com comprimentos L1, L2, onde as coordenadas absolutas X e Y da extremidade de L2 são expressas em relação ao sistema de coordenadas.

Modelo Matemático associado:

X = L1. sin θθ 1 + L2. sin θθ 2 Y = L1. (1 – cos θθ 1 ) + L2. ( 1 – cos θθ 2 )

Figura 2.4 - Robô com 2 graus de liberdade (pêndulo duplo).

A transformação inversa de coordenadas consistirá na definição de um vetor θ = (θ1, θ2)T, a

partir do posicionamento do robô num determinado ponto M(Xo,Yo)T, a partir da obtenção dos valores θ1 e θ2 expressos em função de Xo e Yo.

2.2.4 - Modelo Geométrico

O modelo geométrico de um robô expressa a posição e orientação de seu elemento terminal em relação a um sistema de coordenadas fixo a base do robô (figura 2.5), em função de suas coordenadas generalizadas (coordenadas angulares no caso de juntas rotacionais).

Figura 2.5 - Representação de um sistema de Coordenadas de um robô.

O modelo geométrico é representado pela expressão:

X = f( θ ) (2.3)

onde θ = (θ1, θ2, ......, θn): vetor das posições angulares das juntas e X = (X, Y, Z, ψ, θ, φ): vetor posição, onde os três primeiros termos denotam a posição cartesiana e os três últimos a orientação do elemento terminal.

Esta relação pode ser expressa matematicamente pela matriz que relaciona o sistema de coordenadas solidárias a base do robô com um sistema de coordenadas associadas com o seu elemento terminal. Esta matriz é chamada de matriz de passagem homogênea, sendo obtida a partir do produto das matrizes de transformação, Ai, i-1, que relaciona o sistema de coordenadas de um elemento i com o sistema de coordenadas anterior i -1, isto é:

Tn = [ n s a p ] = A0.1*A1,2*........*An-1,n (2.4)

onde

p = [ px , py , pz ]: vetor posição e n = [ nx ny nz ], s = [ sx sy sz ] e a = [ ax ay az ]: vetor ortonormal que descreve a orientação.

A descrição da matriz de transformação é normalmente realizada utilizando a notação de

Denavit-Hartenberg, após a obtenção dos quatro parâmetros θi, ai, di e αi,, descritos a seguir.

2.2.5 - Descrição cinemática de um robô

A evolução no tempo das coordenadas das juntas de um robô representa o modelo

cinemático de um sistema articulado no espaço tridimensional. A notação de Denavit-Hartenberg (DH) é uma ferramenta utilizada para sistematizar a descrição cinemática de sistemas mecânicos articulados com N graus de liberdade (DENAVIT, 1955).

Figura 2.6 - Notação de Denavit-Hartenberg (DH).

Na figura 2.6 podemos visualizar dois elos conectados por uma junta que tem duas

superfícies deslizantes uma sobre a outra remanescente em contato. Um eixo de uma junta estabelece a conexão de dois elos.

Estes eixos de juntas devem ter duas normais conectadas neles, uma para cada um dos elos. A posição relativa destes dois elos conectados (elo i-1 e elo i) é dada por di, que é a distância medida ao longo do eixo da junta entre suas normais. O ângulo de junta θi entre as normais é medido em um plano normal ao eixo da junta. Assim, di e θi podem ser chamados respectivamente, distância e o ângulo entre elos adjacentes. Eles determinam a posição relativa de elos vizinhos.

Um elo i poderá estar conectado, no máximo, dois outros elos (elo i-1 e elo i +1). Assim, dois eixos de junta são estabelecidos em ambos terminais de conexão. O significado dos elos, do ponto de vista cinemático, é que eles mantêm uma configuração fixa entre suas juntas que podem ser caracterizadas por dois parâmetros: ai e αi. O parâmetro ai é a menor distância medida ao longo da normal comum entre os eixos de junta (isto é, os eixos zi-1 e zi para a junta i e junta i+1, respectivamente) Assim, a i e αi , podem ser chamados respectivamente, comprimento e ângulo de twist (torção) do elo i. Eles determinam a estrutura do elo i.

Assim sendo, quatro parâmetros: a i , αi , di ,θi são associados com cada elo do manipulador. No momento, em que estabelecemos uma convenção de sinais para cada um destes parâmetros, estes constituem um conjunto suficiente para determinar a configuração cinemática de cada elo do manipulador. Note que estes quatro parâmetros aparecem em pares:

• (ai , αi ) que determinam a estrutura do elo e os parâmetros da junta;

• (di , θi ) que determinam a posição relativa de elos vizinhos.

2.2.5.1 - Notação de Denavit–Hartenberg

Para descrever a translação e rotação entre dois elos adjacentes, Denavit-Hartenberg propuseram um método matricial para estabelecimento sistemático de um sistema de coordenadas fixo para cada elo de uma cadeia cinemática articulada.

A representação de Denavit-Hartemberg (D-H) resulta na obtenção de uma matriz de transformação homogênea 4 × 4, representando cada sistema de coordenadas do elo na junta, em relação ao sistema de coordenadas do elo anterior. Assim, a partir de transformações sucessivas, podem ser obtidas as coordenadas do elemento terminal de um robô (último elo), expressas matematicamente no sistema de coordenadas fixo a base.

Assim sendo, um sistema de coordenadas cartesianas ortonormal (Xi, Yi, Zi) pode ser estabelecido para cada elo no seu eixo de junta, onde i= 1, 2, . . ., N (N número de graus de liberdade) mais o sistema de coordenadas da base. Assim, uma junta rotacional tem somente 1 grau de liberdade, e cada sistema de coordenadas (Xi, Yi, Zi) do braço do robô corresponde a junta i+1, sendo fixo no elo i.

Quando a junta i é acionada, o elo i deve mover-se com relação ao elo i-1. Assim, o i -ésimo sistema de coordenadas é solidário ao elo i, se movimentando junto com o mesmo. Assim, o n-ésimo sistema de coordenadas se movimentará com o elemento terminal (elo n). As coordenadas da base são definidas como o sistema de coordenadas 0 (X0, Y0, Z0), também chamado de sistema de referência inercial. Os sistemas de coordenadas são estabelecidos obedecendo três regras:

1.O eixo Zi-1 é colocado ao longo do eixo de movimento da junta i.

2.O eixo Xi é normal ao eixo Zi-1, e apontando para fora dele.

3.o eixo Yi completa o sistema utilizando a regra da mão direita.

Através destas regras podemos observar que: 1. A escolha do sistema de coordenadas é livre, podendo ser colocada em qualquer parte da base de suporte, enquanto que a posição do eixo Z0, deverá ser a do eixo de movimento da primeira junta. 2. O último sistema de coordenadas (n-ésimo) pode ser colocado em qualquer parte do elemento terminal, enquanto que o eixo Xi é normal ao eixo Zi-1.

A representação D-H de um elo rígido dependerá de quatro parâmetros associados ao elo. Estes parâmetros descrevem completamente o comportamento cinemático de uma junta prismática ou revoluta (figura 2.6). Estes quatro parâmetros são definidos a seguir:

• θi é o angulo de junta obtido entre os eixos Xi-1 e Xi no eixo Zi-1 (usar a regra da mão direita);

• di é a distância entre a origem do (i-1)-ésimo sistema de coordenadas até a interseção do eixo Zi-1 com o eixo Xi ao longo do eixo Zi-1;

• ai é a distância (off-set) entre a intersecção do eixo Zi-1 com o eixo Xi até a origem o i-ésimo sistema de referência ao longo do eixo Xi (ou a menor distância entre os eixos Zi-1 e Zi);

• αi é ângulo offset entre os eixos Zi-1 e Zi medidos no eixo Xi (usando a regra da mão direita).

Para uma junta rotacional, di, ai, e αi são os parâmetros da junta, variando o seu valor na rotação do elo i em relação ao elo i-1. Para uma junta prismática θi, ai e αi são os parâmetros da junta, enquanto d i é a variável de junta (deslocamento linear).

2.2.5.2 - Obtenção da Matriz de Transformação Homogênea i-1Ai

Uma vez os sistemas de coordenadas D-H tenham sido estabelecidos, uma matriz de

transformação homogênea pode facilmente ser desenvolvida relacionando dois sistemas de referência sucessivos. A figura 2.6 mostra que um ponto ri expresso no i-ésimo sistema de

coordenadas pode ser expresso no (i-1)-ésimo sistema de coordenadas como ri -1 aplicando as transformações sucessivamente apresentadas a seguir:

1. Rotação no eixo Zi-1 de um ângulo de θ i para alinhar o eixo Xi-1 com o eixo Xi (o eixo Xi-1 é paralelo ao eixo Xi e aponta para a mesma direção).

2. Translação uma distância de d i ao longo do eixo Zi-1 para trazer os eixos Xi-1 e Xi na coincidência.

3. Translação ao longo do eixo Xi uma distância de ai para trazer as duas origens também como o eixo X na coincidência.

4. Rotação do eixo Xi um angulo de α i para trazer os dois sistemas de coordenadas na coincidência.

Cada uma destas quatro operações pode ser expressa através de uma matriz homogênea

de rotação-translação, e o produto destas quatro matrizes de transformações elementares produzem uma matriz de transformação homogênea composta i-1Ai, conhecida como matriz de transformação de D-H, para sistemas de coordenadas adjacentes, i e i -1.

i-1Ai = Tz,d Tz,θ Tx,a Tx,α (2.5)

=

1 0 0 00 1 0 00 0 10 0 0 1

0 00 0

0 0 1 00 0 0 1

1 0 00 1 0 00 0 1 00 0 0 1

1 0 0 00 00 00 0 0 1

1d

sin

sin

ai

sin

sin

i i

i i i i

i i

coscos cos

cos

θ θθ θ α α

α α

=

−−

cos cos coscos cos cos

cos

θ α θ α θ θθ α θ α θ θ

α α

i i i i i i i

i i i i i i i

i i i

sin sin sin a

sin sin a sin

sin d00 0 0 1 (2.6)

A transformação inversa será:

[i-1Ai]-1 = iAi-1

−−−−

=

1000coscoscos

coscoscos0cos

iiiiii

iiiiiii

iii

dsinsinsin

sindsinsin

asin

ααθαθαααθαθα

θθ

(2.7)

onde a i , αi , di são constantes, e θi é a variável de junta para uma junta rotativa.

Para uma junta prismática a variável de junta é d i , enquanto a i , αi , θi são constantes. Neste caso, i -1Ai será definido como:

i -1Ai = Tz,θ Tz,d Tx,α =

−−

cos coscos cos cos

cos

θ α θ α θθ α θ α θ

α α

i i i i i

i i i i i

i i i

sin sin sin

sin sin

sin d

00

00 0 0 1

(2.8)

e sua inversa será:

[i -1Ai]-1 = iAi -1 =− −

− −

coscos cos cos

cos cos cos

θ θα θ α θ α α

α θ α θ α α

i i

i i i i i i i

i i i i i i

sin

sin sin d sin

sin sin sin d

0 0

0 0 0 1

(2.9)

2.2.5.3 - Matriz Transformação T

A descrição cinemática completa de uma cadeia articulada pode ser obtida a partir do

produto matricial entre as diversas matrizes de transformações homogêneas. Usando a matriz de transformação i-1Ai, podemos relacionar um ponto Xi no elo i, e expressar em coordenadas homogêneas, em relação aos sistemas de coordenadas i para i -1, Xi -1 estabelecido no elo i-1 através da relação:

Xi-1 = i-1Ai Xi (2.10)

onde

Xi-1 = (xi-1, y i-1, z i-1) e Xi = (xi, y i, z i)T

Para simplificarmos a notação a matriz i -1Ai será designada Ai. Utilizando-se essa relação de modo recorrente podemos escrever:

Xi-2 = Ai-2 . Xi-1 = Ai-1 . Ai- Xi

Xi-3 = Ai-2 . Ai-1 . Ai- Xi (2.11) Xo = A1 . A2 . A3 ... Ai . Xi

Para um robô com seis graus de liberdade, a transformação de coordenadas do referencial situado na base do robô ao referencial situado em relação ao seu elemento terminal (ou ferramenta) é descrito pela matriz de transformação homogênea T6 = A1 . A2 . A3 . A4 . A5 . A6 .

A figura 2.7 ilustra as coordenadas cartesianas que expressam a posição da ferramenta de operação de um robô (Px, Py, Pz) e sua orientação espacial especificada através das componentes dos versores de orientação n, s e a.

Figura 2.7: Configuração do elemento terminal de um robô

2.2.6 - Orientação da Ferramenta A orientação de um sistema de coordenadas (por exemplo, referencial de uma ferramenta de

trabalho) pode ser descrita como uma matriz de rotação que descreve a direção dos eixos do sistema de coordenadas em relação a um sistema de referência (figura 2.7).

A expressão 2.4 mostra que os eixos do sistema de coordenadas rotativo (n, s, a) são vetores

que podem ser expressos em relação ao sistema de coordenadas de referência através de componentes nas direções Xo, Yo e Zo. Estes três versores podem ser dispostos em colunas numa matriz rotacional designada de matriz de orientação:

=

zzz

yyy

xx

asn

asn

an xsT (2.12)

Esta matriz é constituída de seis parâmetros, componentes dos versores de orientação,

dificultando a realização de operações matemáticas. Conseqüentemente, nas aplicações industriais a matriz de orientação espacial da ferramenta de um robô deverá ser expressa de uma forma mais concisa, ou seja através de três ângulos RPY (Roll, Pitch e Yaw) ou a partir de quatro parâmetros - quaternions, como apresentaremos a seguir.

2.2.6.1 - Ângulos RPY

Os ângulos Roll Pitch e Yaw (RPY) podem ser obtidos a partir de três rotações elementares

ψ , θ , φ em torno dos eixos Z, Y, Z (figura 2.8). Estas transformações devem ser biunívocas. Para que isso ocorra a definição dos valores dos ângulos ψ , θ , φ deverão ser realizados a partir da utilização da função ATAN2.

Sistema de coordenadas referência

Sistema de coordenadas rotativo

Figura 2.8: Ângulos de Roll, Pitch, Yaw – Rotações Elementares.

( ) ( ) ( ) ( )ψφ=ψφ z,ROT . èy,ROT . z,ROTè,,PYR

( )

ψθ−ψφψθφφ+ψφ−φψφ+ψθφφ−φ−φ

=ψφCCèSøCèS

SC-CSSøCCèSSSCèSSSCSCCøSèSøSCCèC

è,,PYR (2.12)

onde,

x

y2ATANn

n

φ+φ−=θ

yx

Z

nSnCn2ATAN

(2.13)

+−−

=yx

yx

sCsS

CATAN

φφφφ

ψaaS

2

onde:

FUNÇÃO ATAN2

−+≤≤−−−−≤≤−+−≤≤++≤≤

=

yx,com ,0 è90 yx,com ,90è180yx,com ,180 è90 yx,com ,90 è0

yx

2.2.6.2 - Quaternions de Orientação

Outra forma bastante utilizada para a resolução do problema de orientação e cinemática

inversa de robôs é a utilização de quartenions. A partir da utilização da álgebra de quaternions, a matriz de orientação da ferramenta de um manipulador (2.12), expressa em relação ao sistema de coordenadas da base, é expressa a partir de quatro parâmetros (q1, q2, q3 e q4).

121

1 +++= zyx asnq

121

2 +−−= zyx asnq com sinal de q2 = sinal (s z – ay) (2.14)

121

3 +−−= zxy ansq com sinal de q3 = sinal (ax – nz)

121

4 +−−= yxz snaq com sinal de q4 = sinal (ny – sx)

Ao mesmo tempo a orientação deverá ser normalizada, ou seja:

124

23

22

21 =+++ qqqq (2.15)

A principal vantagem dessa representação é que a utilização de 4 parâmetros permitirá a obtenção de soluções únicas, implicando assim num número menor de manipulações computacionais.

2.2.6.3 - Exemplo de Aplicação Na figura 2.9 apresenta a ferramenta de um robô industrial orientada (referencial X’ Y’ Z’) em

relação ao sistema de referência fixo a base (X, Y, Z). Para as duas configurações apresentadas, apresentaremos a seguir o cálculo da matriz de orientação da ferramenta, ângulos RPY e quartenions (q1, q2, q3, q4):

a) Rotação de 90o em torno de Y b) Nova Rotação de 30o em torno de Y

Figura 2.9: Cálculo da Matriz de Orientação, ângulos RPY e quartenions.

No caso (a), os eixos de referência podem ser descritos da seguinte forma: X’ = -Z = (0, 0, -1) Y’ = Y = (0, 1, 0) Z’= X = (1, 0, 0)

matriz de orientação:

=

zzz

yyy

xx

asn

asn

an xsT

− 001010100

ângulos RPY: (0, 90, 0) – rotação de 90o do eixo Y no sentido horário quaternions:

707,02211010

21

1 ==+++=q

0101021

2 =+−−=q

707,02211001

21

3 ==+−−=qcom sinal q3 = sinal (1 + 1) = +

0110021

4 =+−−=q

No caso (b), os eixos de referência podem ser descritos da seguinte forma: X’ = (cos 30º , 0, -sin 30º) Y’ = (0, 1, 0) Z’= (sin 30º , 0, cos 30º)

matriz de orientação:

−=

30cos03001030030cos

Tsin

sin

ângulos RPY: (0, 30, 0) – rotação de 30o do eixo Y no sentido horário quaternions:

9659,0130cos130cos21

1 =+++=q

0130cos130cos21

2 =+−−=q

2588,0130cos30cos121

3 =+−−=qcom sinal q3 = sinal (sin 30 + sin 30)= +

0110021

4 =+−−=q

2.3 - MODELAGEM CINEMÁTICA INVERSA

A necessidade da obtenção de referências em coordenadas e juntas, correspondentes a tarefas definidas no espaço cartesiano é expressa matematicamente pela inversão do modelo geométrico, isto é:

θ = f -1 ( x ) (2.16)

A função f é não linear e composta de soma de produtos de senos e cossenos das

coordenadas generalizadas (translações ou rotações elementares). Por isso, a sua inversão é em geral não trivial. Como f é não linear não se pode garantir a existência e/ou a unicidade de uma função inversa f -1. No caso geral, só se pode determinar o número máximo de prováveis soluções. Os métodos de solução do problema da inversão do modelo geométrico são:

• Métodos analíticos: Estes métodos conduzem à obtenção de todas as soluções. Estes métodos não são gerais, isto é, a inversão analítica não é trivial e, além disso, não há garantia de que seja possível fazê-la para um robô qualquer. Os métodos analíticos são adequados para robôs simples, isto é, aqueles que possuem um grande número de parâmetros de Denavit-Hartenberg nulos.

• Métodos numéricos iterativos: Estes métodos convergem para uma solução possível entre todas as existentes, são de caráter geral e, com o atual desenvolvimento dos microcomputadores, a utilização destes métodos em tempo real é viável.

Existem diversos métodos numéricos iterativos, entre eles os métodos recursivos, figura 2.10, que utiliza ao cálculo do modelo geométrico direto e da matriz Jacobiana inversa, descrito a seguir.

Figura 2.10: Problema Cinemático Inverso - determinar uma configuração θ* correspondente a

uma situação desejada x*.

2.3.1 - Descrição matemática de um Robô com N GL

A transformação de coordenadas de um robô com n graus de liberdade pode ser formulada da seguinte maneira. A partir de uma configuração inicial do robô, na qual a suas variáveis articulares θo são conhecidas, a posição completa de seu elemento terminal Xo será conhecida a partir do modelo do sistema.

A mudança de coordenadas consistirá de um funcional que descreverá a

correspondência existente entre a cadeia cinemática para um conjunto de variáveis articulares θ e sua posição X:

x – xo = F (θ - θo ) (2.17)

onde o vetor F possuí n ≤ 6 componentes descrevendo a posição e orientação do elemento terminal do robô (no caso de n = 6).

No caso da transformação inversa de coordenadas, uma determinada posição X do volume de trabalho do robô será atingida pelo robô a partir de uma posição de repouso xo (equação 16). Esta equação não apresentará uma solução única, e a mesma poderá ser utilizada para o controle cinemático de mecanismos.

(θ - θo ) = F-1 (x – xo) (2.18)

A transformação direta de coordenadas não apresenta dificuldades na sua resolução, o mesmo não acontecendo com a transformação inversa que é muito complexa, não apresentando uma solução única. Para eliminarmos as indeterminações que aparecem no problema inverso, utiliza-se geralmente a matriz jacobiana, onde a mesma poderá ser utilizada para o controle cinemático de mecanismos.

2.3.2 - Matriz Jacobiana

Dada uma configuração inicial θo e Xo de um robô, as coordenadas X do elemento terminal

são descritas pela equação (18). Para pequenos deslocamentos δx associados aos deslocamentos das variáveis articulares δθ podemos escrever:

δθ = J-1 δX (2.19)

onde n: número de graus de liberdade do robô (coordenadas articulares) m: no de graus de liberdade consideradas no espaço de trabalho (coordenadas cartesianas)

A matriz Jacobiana J(θ) será definida como:

( )[ ] [ ]jij,i FJ θ∂∂=θ (2.20)

que poderá ser construída a partir das relações cinemáticas que descrevem a arquitetura de um manipulador:

( )( )

( )n21nn

n2122

n2111

...,FX.......... ...

...,FX...,FX

θθθ=

θθθ=θθθ=

(2.21)

Através de derivadas parciais, a matriz Jacobiana J(θ) será definida como:

( )

∂∂

∂∂

∂∂

∂∂

∂∂

∂∂

∂∂

∂∂

∂∂

=

n

nnn

n

n

FFF

FFF

FFF

J

θθθ

θθθ

θθθ

θ

.....................

......

......

21

2

2

2

1

2

1

2

1

1

1

(2.22)

Considerando os exemplos apresentados anteriormente nas figuras 2.4 e 2.5, referente a manipuladores com 1 GL e 2GL, a obtenção da matriz Jacobiana, referente a esses dois manipuladores são apresentadas na figuras 2.10.

θ= LsinX1

( )θ−= cos1L2X

( )[ ]

θθ

=θLsincosL

J

(a) Pêndulo simples (1GL).

( )

θθθθ

=θsinLsinLcosLcosL

J21

21

(b) Pêndulo duplo (2 GL).

Figura 2.11: Exemplos de cálculo da matriz Jacobiana.

No exemplo apresentado na figura 2.11, para um manipulador com 1GL, a matriz Jacobiana

não será completa (2 x 1), enquanto que para um manipulador 2 GL a matriz Jacobiana é quadrada (2 x 2). Para um manipulador com n graus de liberdade, a matriz Jacobiana obtida terá (m x n)

Para um robô industrial, as coordenadas de seu elemento terminal serão descritas através de um vetor posição X (x, y, z) e sua orientação definida a partir de três ângulos (ψ, θ , φ). Isto

representará um conjunto de seis graus de liberdade que deverão ser controlados a partir das n variáveis articulares do robô. 2.3.3 - Inversão da Matriz Jacobiana - Controle de Posição de um robô

O controle de um robô no espaço de tarefas necessita de uma transformação de

coordenadas. Esta transformação poderá ser realizada a partir da inversão da matriz Jacobiana:

( ) XJ 1δθ=δθ − (2.23)

onde J(θ)-1 : representa a matriz Jacobiana inversa (se ela existir).

Esta relação indica a variação do incremento δθ das variáveis articulares para um dado deslocamento δX do elemento terminal do robô. A partir da utilização da equação 2.24 de modo iterativo e recalculando J(θ) a cada passo de iteração, uma trajetória X(t) poderá ser realizada num determinado tempo, em função da variação dos ângulos das juntas, conforme mostra o diagrama de blocos apresentado na figura 2.10, referente ao controle de posição de um robô com N GL no espaço operacional.

Figura 2.12: Controle de Posição de um robô no seu espaço operacional.

A figura 2.12 mostra a malha de controle de posição de um robô. A partir da comparação da

posição atual do robô X (valor calculado a partir das informações de posições dos sensores de juntas e modelo direto) e sua posição de referência Xd , um sinal de erro é amplificado e transformado em termos de coordenadas articulares δθ a partir do cálculo de J(θ)-1 . O sinal de erro é integrado e depois utilizado como sinal de entrada para controle das variáveis articulares do robô.

Nesta representação, a relações cinemática Fm(θ) referentes a modelo da arquitetura de um robô (no caso rígido) são utilizadas na malha de controle. Por outro lado, o bloco Fv(θ) representa a relação entre os torques necessários para acionamento das juntas e seus valores angulares θ, podendo ser obtidos a partir das variáveis articulares e métodos de correção de parâmetros.

Finalmente, a matriz Jacobiana, utilizada no método recursivo para o cálculo do modelo cinemático inverso, é uma forma multidimensional da derivada e relaciona a velocidade no espaço de juntas à velocidade no espaço cartesiano. A sua solução deverá ser implementada através da utilização de algoritmos numéricos, onde será aproximada por ∆x =J.∆θ. 2.3.4 - Algoritmo Numérico para Resolução do Problema Cinemático Inverso

O problema cinemático inverso é utilizado para determinar os deslocamentos angulares das juntas necessárias para o manipulador atingir o objetivo desejado. Isto torna necessária a implementação de algoritmos numéricos rápidos para a inversão do modelo.

Nesta seção visa será apresentado um software para geração de trajetórias angulares off-line, utilizando o modelo cinemático inverso, para um manipulador ir de uma posição e orientação inicial a uma posição e orientação final desejada. A aplicação apresentada será baseada num robô com juntas rotacionais, porém os resultados obtidos poderão ser estendidos para outras configurações de robôs.

Figura 2.13: Algoritmo para a geração de uma trajetória angular de um robô.

O desenvolvimento de um algoritmo numérico (SÁ, 1996) para encontrar as posições

angulares para um trabalho definido em relação ao seu elemento terminal no espaço cartesiano, contem a solução do problema cinemático inverso através do método numérico recursivo que usa o modelo cinemático e a matriz Jacobiana inversa do manipulador. Para a inversão da matriz Jacobiana foi utilizado o método de eliminação Gauss (DORF et al., 1972). Existem quatro critérios para os quais para interrupção das iterações: i) Erro máximo permitido: Este critério utiliza um erro máximo permitido para a posição e para a

orientação. O erro de posição (er p) é obtido através da expressão: er p = Σ ( pd ( i ) - pa ( i ) ) (2.24) onde pd é a posição final desejada e pa é a posição atual do elemento terminal do robô. O erro de orientação (erp) é obtido utilizando-se o conceito do produto escalar entre dois vetores e é dado por: er o = cos -1(( nd * na ) / (|| nd || * || na ||)) + cos-1(( sd * sa ) / (|| sd || * || sa ||)) + (2.25)

cos -1(( ad * aa ) / (|| ad || * || aa ||)) onde os vetores n, s e a são os vetores ortonormais que descrevem a orientação do elemento terminal do robô ii) Número de iterações: Este critério utiliza um número máximo de iterações, N, no caso do

sistema não convergir para a posição e orientação desejada. iii) Final do limite físico da junta: Este critério utiliza o máximo percurso para o qual uma junta

pode atuar (cada junta possui um limite físico próprio). iv) Teste do “rank” da matriz: Utilizado apenas para o método de inversão de Gauss. Caso o

“rank” da matriz seja menor que o número de linhas da mesma as iterações param, pois o sistema é indeterminado.

Este método apresenta melhores resultados para pequenos deslocamentos (definição de Jacobiano para pequenos deslocamentos), foi introduzida uma variável, m , para a divisão do caminho total desejado em pequenos deslocamentos.

2.3.5 - Implementação em Robôs do Modelo Cinemático Inverso

A implementação em tempo real do algoritmo numérico relativo ao modelo cinemático inverso é apresentado na figura 2.14. Uma trajetória de referência Xd é comparada com a posição real Xreal, obtida a partir do tratamento das informações dos sensores de posição (a partir do modelo cinemático direto f(θ)). O resultado é multiplicado pela matriz Jacobiana inversa (J-1), obtendo-se assim os incrementos angulares a serem enviados a cada junta robótica.

Figura 2.14 - Implementação num robô do modelo cinemático inverso.

A seguir são apresentados alguns resultados de simulações obtidas para o manipulador

Kraft mover-se de uma posição inicial Xi (776.9, 0, 933.1) mm e orientação (0, 90, 0) graus, correspondente a configuração angular (0, 90, -90, 0, 90, 0) graus para uma posição e orientação final desejada de Xd, (458, 658, 521, 52, 14, 62). A configuração angular final obtida é dada por (36.6, 72.56, -99.45, -10.99, -131.38, 60.81) graus. Nestes gráficos são apresentados a evolução angular das juntas em graus (figura 2.15) e a evolução espacial da garra em mm (figura 2.16).

Figura 2.15 - Modelagem Cinemática Inversa - Evoluções angulares das juntas.

-4-2

02

4770

772

774

776778

780750

800

850

900

950

( 776.9 , 0 ,700 )

( 776.9 , 0 , 933.1 )

Eix

o Z

(m

m)

Eixo X (m

m)Eixo Y (mm)

Figura 2.16 - Modelagem Cinemática Inversa - Evolução Espacial da garra.

2.4 - MODELAGEM DINÂMICA E CONTROLE

2.4.1 - Descrição Dinâmica de um Robô Um manipulador robótico é um dispositivo que tem por função posicionar e orientar um

mecanismo existente na sua extremidade. Esse mecanismo tem como objetivo fazer a fixação adequada de ferramentas definidas pelo tipo de tarefa a executar. Assim, duas partes principais podem ser consideradas na estrutura de um manipulador. A primeira parte é o braço, constituído de no mínimo por três graus de liberdade, utilizado para posicionamento do ponto de concentração dos referenciais de orientação. A segunda parte é o elemento terminal (ou ferramenta), normalmente constituído por outros três graus de liberdade rotacionais, com a função de orientação do referencial terminal (DAVID, 1996, FU, 1987).

A modelagem dinâmica de um robô industrial apresenta termos matemáticos não lineares, devido a efeitos gravitacionais, coriolis, força e torque centrífugos, entre outros, que acarretam num acoplamento dinâmico fortemente não linear entre as suas articulações. Isto implicará em dificuldades na identificação de seus parâmetros, fortemente interligados, causando problemas no projeto de seu sistema de controle, exigindo-se assim, o uso de técnicas de linearização, reduções de modelos e aproximações, com o intuito de tornar menos complexo e anti-econômico sua estrutura de controle.

O comportamento dinâmico de um manipulador pode ser descrito por um conjunto de equações diferenciais chamadas equações dinâmicas de movimento (PAUL, 1986). As equações dinâmicas de um robô manipulador com n graus de liberdade podem ser obtidas através do lagrangeano:

ddt

L

q

Lq

T∂

∂∂⋅

− = , L= K-V (2.26)

onde: K é a energia cinética V é a energia potencial T é a força generalizada q é a coordenada generalizada

As equações de movimento, para um robô com n graus de liberdade, são da forma:

rTqBqJT ++=⋅⋅⋅

(2.27) onde: J é o momento de inércia B é o atrito viscoso do motor Tr é o torque resistente

A arquitetura de controle de um robô industrial apresenta normalmente uma malha individual de controle para cada junta (grau de liberdade), constituída de acionadores (motores elétricos, hidráulicos ou pneumáticos) e sensores de posição (incrementais potenciômetros de precisão, resolvers, etc.). Os sensores de posição são colocados antes do redutor, entre o eixo do motor e o eixo de cada junta. A figura 2.17 apresenta através de diagramas de blocos a estrutura de controle de um robô industrial.

Figura 2.17 - Diagrama de blocos da estrutura de controle.

Uma trajetória de referência gerada para cada junta robótica (arquivo de pontos) é

comparada com a posição atual da mesma através de informações provenientes de seus sensores de posição, gerando um erro que deverá ser minimizado pelo controlador, através de um algoritmo implementado num microprocessador (por exemplo, um controlador PID).

2.4.2 - Sistema com dois graus de liberdade: Pêndulo Duplo

Os três primeiros graus de liberdade de um robô são responsáveis pelo posicionamento da garra no espaço de trabalho. Normalmente os graus de liberdade (2 e 3) são os mais críticos do ponto de vista estrutural, acarretando problemas na implementação do controlador de posição das juntas, devido a seus “fortes” acoplamentos e não linearidades. Assim sendo, será realizado um estudo dinâmico relativos a esses dois graus de liberdade (figura 2.18), onde o mesmo estudo poderá ser estendido aos outros graus de liberdade.

(a) Graus de liberdade (2, 3)

(b)Modelo equivalente: Pêndulo duplo

(c) Representação do sistema motor – carga (juntas 2 e 3)

Figura 2.18 - Manipulador com dois graus de liberdade.

O modelo dinâmico de um robô industrial poderá ser simplificado para o modelo de duas juntas rotativas que servirá para posicionamento de uma ferramenta em relação a um painel de atuação, por exemplo. A modelagem dinâmica de um pêndulo duplo representa o modelo de dois graus de liberdade de um robô (figura 2.18).

2.4.3 - Modelagem do Sistema de acionamento

Para uma modelagem do sistema de acionamento de uma junta robótica, consideremos um motor c.c., um redutor e a dinâmica do sistema, figura 2.19. No estudo do motor c.c. será desenvolvido as equações referentes ao seu movimento. O redutor é utilizado para que com um certo valor de torque se obtenha uma melhor performance do motor. A dinâmica do sistema consiste no estudo das forças que condicionam o movimento. Para acelerar um manipulador do seu estado inercial até uma velocidade constante e promover uma desaceleração, devem ser aplicados um conjunto de equações dinâmicas nas juntas dos atuadores (CRAIG, 1988).

Figura 2.19 - Representação esquemática - Sistema de acionamento de uma junta robótica

2.4.3.1 - Motor de corrente contínua controlado por armadura

Neste item será utilizado em nossa análise um motor de corrente contínua associada a redutores de velocidade que transmite o movimento de uma junta, tradicionalmente utilizado em robôs industriais. O mesmo tipo de análise poderá ser realizado para outros tipos de acionamento.

Um motor c.c. é empregado em um sistema de controle quando é exigida uma quantidade apreciável de potência no eixo (CLOSE, 1989). Um esquema do motor c.c. controlado por armadura é dado na figura 2.20.

Figura 2.20 - Esquema de um motor de c.c. controlado por armadura.

As equações que regem o motor elétrico de corrente contínua controlado por armadura são

as seguintes:

• Equação elétrica: u t Ri t Ldi tdt

e t( ) ( )( )

( )= + + (2.28)

onde e(t)=KeΩ(t) - força contra-eletromotriz e para um motor cc, Ke≈Kt

• Equação de acoplamento: T t K i tm t( ) ( )= (2.29)

onde Kt é a constante de torque do motor.

• Equação mecânica : )()()()( tTtBdt

tdJtT rmm +Ω+Ω= , onde

=Ω θ)(t (2.30)

onde: i(t) - corrente (A); R - resistência induzida (Ω) L - indutância (H); u - tensão aplicada no circuito da armadura (V); Jm - momento de inércia do motor (kg m2); Ke - constante da força contra-eletromotriz (V/rad s -1); Kt- constante de torque (Nm/A); Tr - torque resistente devido a perdas (Nm) Tm - torque mecânico (Nm)

As equações acima podem ser representadas pelo seguinte diagrama de blocos (figura 2.21), fazendo o uso da Transformada de Laplace.

Figura 2.21 - Diagrama de Blocos do Motor cc controlado pela armadura.

onde:

LRssH

+= 1)(1 ,

BsJsH

m += 1)(2 ;

B

Jm

m

−=τ , constante de tempo mecânica;

L

Re

−=τ , constante de tempo elétrica.

2.4.3.2 - Sistema de Redução

O comportamento de um sistema de redução, apresentado na figura 2.22, apresentam as seguintes equações cinemáticas:

η =zz

2

1

e θ θ21

21=

rr

(2.31)

onde z é o número de dentes das engrenagens η é a razão de transmissão r é o raio da engrenagem

Figura 2.22 - Representação de um redutor.

Considerando que a velocidade tangencial é a mesma entre as engrenagens (sistema sem

escorregamento). Ou seja v r r= =⋅ ⋅

θ θ1 1 2 2 : Conseqüentemente:

θ

θη θ ηθ

⋅ ⋅

= = ⇒ =1

2

2

11 2

r

r (2.32)

Se o redutor for ideal:

⋅⋅= 2211 θτθτ ou ainda, 12

1

2 ηττηττ =⇒= (2.33)

Se considerarmos o efeito de uma carga no eixo do redutor (figura 2.23), a dinâmica dessa

carga no redutor será descrito pela equação (2.34):

T J B TC C r2 = + +⋅ ⋅ ⋅

θ θ (2.34)

Figura 2.23 - Representação da carga no eixo do redutor.

2.4.3.3 - Modelo Dinâmico do sistema motor - carga

O modelo de um motor em vazio foi apresentado anteriormente na figura 2.21. O modelo apresentado anteriormente será acrescido do efeito dinâmico do redutor-carga acoplado no sistema, desenvolvido a partir das equações descritas a seguir: motor elétrico:

( ( ) ( )) ( ) ( )T s T s H s sm r motor− =2 Ω (2.35)

redutor e carga:

( ( ) ( )) ( ) ( )arg . argT s T s H s sc a pert c a− =3 Ω (2.36)

Ω Ωc a motors sarg ( ) ( )=1η (2.37)

T s T sc a motorarg ( ) ( )= η

Conseqüentemente:

( ( ) ( )) ( ) ( )ηη

T s T s H s sm pert motor− =3

1Ω (2.38)

( ( ) ( )) ( ) ( )η η23T s T s H s sm pert motor− = Ω

Para melhor compreensão, consideraremos T s T sr pert( ), ( ) ≈ 0 , conseqüentemente:

T s H s sm motor( ) ( ) ( )2 = Ω e

η23T s H s sm motor( ) ( ) ( )= Ω

(2.39) Assim sendo o sistema completo (figura 24) será descrito através da equação:

Ω motor m C m C ms J J B B T s( ) ( ) ( ) ( )= + + +η η2 2 (2.40)

ou ainda,

Ω motor ms H s H s T s( ) ( ( ) ( )) ( )= +22

3η (2.41)

onde:

BssJsH

m += 22

1)(

H sJ s B sC C

3 2

1( ) =

+

Figura 2.24 - Diagrama de blocos: redutor – carga acoplada.

2.4.3.4 - Sistema de Controle

O controle de um sistema pode ser definido como um sistema cuja proposição é regular ou ajustar o fluxo de energia de uma maneira desejada. Um sistema de malha de controle em fechada usa os sinais da saída para modificar as ações do sistema com o intuito de atingir o objetivo especificado. A partir de uma entrada de referência que comparada com a saída do sistema gera um erro que com a atuação de um elemento controlador trata este sinais que depois de amplificado é enviado as acionadores do sistema. A figura 2.25 apresenta uma malha de

controle completa para um robô de N graus de liberdade, utilizando a resolução da matriz Jacobiana definida anteriormente no controlador de posição (modelagem cinemática inversa).

Figura 2.25 - Malha de controle de posição de um robô industrial.

O modelo dinâmico do sistema poderá ser introduzido no cálculo dos parâmetros dos

controladores de posição de cada junta. Na figura 2.26 é apresentado o diagrama de blocos correspondente ao controle de posição de duas juntas robóticas, considerando os termos não lineares obtidos através do modelo dinâmico do robô em estudo.

Figura 2.26 - Diagrama de blocos correspondente ao Modelo Dinâmico de duas juntas robóticas.

Para exemplificarmos o problema em estudo, na figura 2.27 são apresentados resultados de

simulação (curvas relativas ao deslocamento e velocidade) de um sistema completo motor-redutor e carga correspondente a uma junta robótica, a partir da utilização de um controlador PID (Proporcional, integral, derivativo) com ganhos, 10, 5 e 2 respectivamente. A entrada de referência

utilizada na simulação foi construída levando-se em conta a constante de tempo do sistema e a velocidade do acionador.

Parâmetros utilizados: R = 3,0 Ω; L = 0.005 H ; Jm = 1.4e-4 Kg m2; Cm = 2.7e-4 Nm/rad s -1; KT = 0.001 Nm, g = 9.8 m/s2

Figura 2.27 - Controle do motor CC com redução e carga.

Normalmente, o procedimento utilizado para cálculo dos ganhos do regulador PID, deverá

ser realizado em cada junta, para diferentes configurações inerciais, considerando-se o efeito da inércia equivalente aplicada no eixo de rotação do motor (cálculo do raio de giração e massa equivalente).

2.5 - REFERÊNCIAS

CLOSE, C. M., FREDERICK, D.K., Modeling and Analysis of Dynamic Systems, Houghton Mifflin Company, 1989. COUTINHO, L., Um Ambiente Integrado de Desenvolvimento de Software a Robótica, tese de mestrado, Unicamp, 1993. CRUZ, J.M., Projeto e Desenvolvimento de um Sistema de Geração Automática de Trajetória para Manipuladores, tese de mestrado, Unicamp, 1993. DORN, W. S., McCRACKEN, D. D., Numerical Methods with Fortran IV Cases Studies, John Wiley & Sons, Inc,1972. DENAVIT, J., HARTENBERG, R., A kinematic notation for lower-pair mechanisms based on matrices, ASME J. on Applied Mechanics, pp. 215-221, 1955. JACOBSEN, T. K., Visualização e Geração de Trajetórias de Robôs a Partir da Utilização do Software WORKSPACE , programa IAESTE (Brasil-Dinamarca), 1991. KRAFT TELEROBOTICS, Underwater Manipulator System, 1985. KREYSIZIG, E., Advanced Engineering Mathematics, John Wiley & Sons, Inc, 1983. NOGUEIRA, R., Controle de Posição e Orientação de um Manipulador através de um Mouse Espacial, Reinaldo Gonçalves Nogueira, tese de mestrado, Unicamp, 1995.

PAUL, R.P., Robot Manipulators: Mathematics, Programming and Control, The MIT Press, 1981. SÁ, C.E.; ROSARIO, J.M., Implementation of Numerical Algoritms for the Resolution of the kinematic Inverse Problem of Robots Manipulators, ICONE’96 Second International Conference on Non-Linear Dynamics, Chaos, Control and their Applications in Engineering Sciences, São Pedro, 1996. SÁ, C. E., Implementação de métodos numéricos para a resolução do problema cinemático inverso de manipuladores robóticos com ênfase em controle de posição, tese de mestrado, Unicamp, 1996.