Download - Estudo da Modelagem Robótica
Universidade Estadual de Londrina
CENTRO DE TECNOLOGIA E URBANISMO
CURSO DE ENGENHARIA ELÉTRICA
TRABALHO DE CONCLUSÃO DE CURSO
Aislan Gabriel Hernandes
LONDRINA – PARANÁ
2014
ESTUDO DA MODELAGEM ROBÓTICA
AISLAN GABRIEL HERNANDES
ESTUDO DA MODELAGEM ROBÓTICA
Trabalho apresentado como requisito parcial para a Conclusão do Curso de Engenharia Elétrica do Centro de Tecnologia e Urbanismo da Universidade Estadual de Londrina.
COMISSÃO EXAMINADORA
______________________________________
Prof. Dr. Ruberlei Gaino - Orientador
Universidade Estadual de Londrina
______________________________________
Prof. Dr. Márcio Roberto Covacic
Universidade Estadual de Londrina
______________________________________
Prof. Dr. Newton da Silva
Universidade Estadual de Londrina
Londrina, 27 de Novembro de 2014.
2
Dedico aos meus pais que foram companheiros em todas as horas e acreditaram em
meu potencial investindo em minha formação. Muito Obrigado!
3
AGRADECIMENTOS
Ao Prof. Dr. Ruberlei Gaino, pela ajuda de todas as etapas deste trabalho.
A minha família, pela confiança e motivação.
Aos amigos e colegas, pela força e pela vibração em relação a esta jornada.
Aos professores e colegas de Curso, pois juntos trilhamos uma etapa importante de
nossas vidas.
Aos profissionais de engenharia da empresa QUANSER® pela concessão de
informações valiosas para a realização do estudo do Robô DENSO® VP-6242.
A todos que, com boa intenção, colaboraram para a realização e finalização deste
trabalho.
4
HERNANDES, Aislan Gabriel. Estudo da Modelagem Robótica. Trabalho de Conclusão de Curso. Curso de Engenharia Elétrica. Centro de Tecnologia e Urbanismo. Universidade Estadual de Londrina, 2014.
RESUMO
Este trabalho de conclusão de curso tem por finalidade a introdução ao estudo da
robótica. A robótica é o estudo da cinemática, dinâmica e do controle aplicado a
manipuladores robóticos e também a robôs móveis. Neste trabalho foram enfocados
somente manipuladores robóticos com o intuito de aplicar a modelagem e controle
LQR (Regulador Linear Quadrático) ao sistema de 1-DOF (um grau de liberdade) da
empresa QUANSER®. Também foi feita uma breve análise do sistema robótico DENSO®
6-DOF (seis graus de liberdade) VP-6242M da empresa QUANSER®.
Palavras-chave: Robótica, Controle LQR, Manipuladores Industriais.
5
HERNANDES, Aislan Gabriel. Robotics Modeling Studies. Monograph for the Bachelor Degree in Electrical Engineering. Center of Technology and Urbanism. Londrina State University, 2014.
ABSTRACT
This work introduces the study of robotics. Robotics is the study of kinematics,
dynamics and control applied to robotic manipulators and mobile robots. In this work,
only robotic manipulators were studied, in order to apply the modeling and LQR
control (Linear Quadratic Regulator) for the 1-DOF (one degree of freedom)
manipulator of QUANSER ® Company. Furthermore, a brief analysis was made of the
robotic system DENSO® 6-DOF (six degrees of freedom) VP-6242M of QUANSER ®
Company.
Key Words: Robotics, LQR Control, Industrial Manipulators.
6
LISTA DE TABELAS
Tabela 2.1 – Parâmetros para Elo de duas Juntas Rotacionais Paralelas ----------------
40
Tabela 2.2 – Parâmetros para Elo de duas Juntas Rotacionais Paralelas Desalinhadas -------------------------------------------------------------------------------------------
41
Tabela 2.3 – Parâmetros para Elo de Juntas Rotacionais Ortogonais --------------------
42
Tabela 2.4 – Parâmetros para Elo de Juntas Rotacionais Ortogonais Desalinhados
42
Tabela 2.5 – Parâmetros para o Segundo Tipo de Elo de Juntas Rotacionais Ortogonais ---------------------------------------------------------------------------------------------
43
Tabela 2.6 – Parâmetros para Elo com Junta Prismática e Rotacional Ortogonais –
44
Tabela 2.7 – Parâmetros para Segundo Tipo de Elo de Juntas Prismática e Rotacional Ortogonais ------------------------------------------------------------------------------
44
Tabela 2.8 – Descrição do Algoritmo de Denavit-Hartenberg (D-H) (SANTOS, 2004)
45
Tabela 2.9 – Parâmetros de D-H para Manipulador de 3-DOF ----------------------------
46
Tabela 3.1 – Parâmetros de D-H para o Robô DENSO® 6-DOF ----------------------------
61
Tabela 3.2 – Parâmetros Físicos do Modelo Link Flexível 1-DOF (QUANSER, 2011d)
66
Tabela 3.3 – Componentes para a Montagem do Link Flexível ---------------------------
66
Tabela 3.4 – Valores Obtidos nos Testes para Diversas Matrizes 𝑸 --------------------
76
Tabela 4.1 – Índices de Desempenho Obtidos para a Simulação do Sistema ---------
82
Tabela 4.2 – Índices de Desempenho Obtidos para a Implementação do Sistema - 85
7
LISTA DE FIGURAS
Figura 2.1 – Modelo de Conexão entre Junta e Elos (SANTOS, 2004) ----------------- 23
Figura 2.2 – Diversos Tipos de Garras utilizadas em Manipuladores Robóticos
(SANTOS, 2004) ------------------------------------------------------------------------------------- 24
Figura 2.3 – Os Três Tipos de Juntas: Rotacional, Prismática e Esférica (SANTOS,
2004) --------------------------------------------------------------------------------------------------
25
Figura 2.4 – Sistema de Eixos Ortogonal Cartesiano --------------------------------------- 26
Figura 2.5 – Sistema com Dois Referenciais: 𝑞𝑅 e 𝑞𝑁 (SANTOS, 2004) --------------- 27
Figura 2.6 – Transformação Rotacional e Translacional (SANTOS, 2004) ------------ 27
Figura 2.7 – Reflexão em Relação a um Eixo (SANTOS, 2004) --------------------------- 29
Figura 2.8 – Reflexão em Relação à Origem (SANTOS, 2004) ---------------------------- 29
Figura 2.9 – Fator de Escala (SANTOS, 2004) ------------------------------------------------ 30
Figura 2.10 – Rotação de 90° em torno da Origem (SANTOS, 2004) ------------------ 30
Figura 2.11 – Rotação Genérica no Plano (SANTOS, 2004) ------------------------------- 31
Figura 2.12 – Matriz Genérica de Transformação Geométrica (Rotação +
Translação) (SANTOS, 2004) --------------------------------------------------------------------- 31
Figura 2.13 – Sistema Cartesiano e as Rotações em cada Eixo (SANTOS, 2004) -- 35
Figura 2.14 – Forma Expandida da Matriz de Transformação para o Espaço 3D
(SANTOS, 2004) ------------------------------------------------------------------------------------- 35
Figura 2.15 – Movimentação de um Ponto (SANTOS, 2004) ---------------------------- 36
Figura 2.16 – Movimentação (criação) de um Referencial (SANTOS, 2004) -------- 36
Figura 2.17 – Relação entre dois Referenciais (SANTOS, 2004) ------------------------- 36
Figura 2.18 – Modelo Relacionando a Cinemática Direta e Inversa (SANTOS,
2004) --------------------------------------------------------------------------------------------------
37
Figura 2.19 – Eixo de uma Junta Rotacional: Colinear e Ortogonal (SANTOS,
2004) -------------------------------------------------------------------------------------------------- 38
Figura 2.20 – Eixo de uma Junta Prismática: Colinear e Ortogonal (SANTOS,
2004) ------------------------------------------------------------------------------------------------- 38
Figura 2.21 – Elo de duas Juntas Rotacionais Paralelas (SANTOS, 2004) ------------- 40
Figura 2.22 – Elo de duas Juntas Rotacionais Paralelas Desalinhadas (SANTOS,
8
2004) -------------------------------------------------------------------------------------------------- 41
Figura 2.23 – Elo de Juntas Rotacionais Ortogonais (SANTOS, 2004) ----------------- 41
Figura 2.24 – Elo de Juntas Rotacionais Ortogonais Desalinhadas (SANTOS, 2004) 42
Figura 2.25 – Segundo Tipo de Elo de Juntas Rotacionais Ortogonais (SANTOS,
2004) --------------------------------------------------------------------------------------------------
43
Figura 2.26 – Elo com Junta Prismática e Rotacional Ortogonais (SANTOS, 2004) 43
Figura 2.27 – Segundo Tipo de Elo de Juntas Prismática e Rotacional Ortogonais
(SANTOS, 2004) ------------------------------------------------------------------------------------- 44
Figura 2.28 – Manipulador 3-DOF (CRAIG,2006) ------------------------------------------- 46
Figura 2.29 – Manipulador 2-DOF (SANTOS, 2004) ---------------------------------------- 47
Figura 2.30 – Ângulos auxiliares para Resolução da Cinemática Inversa (SANTOS,
2004) --------------------------------------------------------------------------------------------------
48
Figura 2.31 – Manipulador Robótico Rotacional – Prismático (CRAIG, 2006) ------ 52
Figura 2.32 – Posição, Velocidade e Aceleração (CRAIG, 2006) ------------------------- 54
Figura 3.1 – Robô DENSO® com seus Seis Graus de Liberdade (QUANSER, 2013) 59
Figura 3.2 – Módulo de Controle do Robô DENSO® 6-DOF (QUANSER, 2013) ----- 60
Figura 3.3 – O Robô DENSO® VP-6242 6-DOF (QUANSER, 2013) ----------------------- 60
Figura 3.4 – Modelo Massa-Mola (ARAUJO, SOUZA, FENILI, 2011) -------------------- 62
Figura 3.5 – Esquema do Link Flexível mostrando seus ângulos (QUANSER,
2011c) -------------------------------------------------------------------------------------------------
62
Figura 3.6 – Montagem SRV02 – Link Flexível (QUANSER, 2011b) -------------------- 66
Figura 3.7 – Circuito de Condicionamento de Sinais do Strain Gage (QUANSER,
2011b) ------------------------------------------------------------------------------------------------
67
Figura 3.8 – Esquema com as ligações para o Experimento do Link Flexível
(QUANSER, 2011b) --------------------------------------------------------------------------------- 67
Figura 3.9 – Calibração e o uso do Pente (QUANSER, 2011b) --------------------------- 69
Figura 3.10 – Programa para Leitura da Tensão Aferida pelo Strain Gage
(Modificado de QUANSER, 2011c) ------------------------------------------------------------- 69
Figura 3.11 – Posição dos Potenciômetros de OFFSET e GANHO no Circuito do
Strain Gage (QUANSER, 2011b) ----------------------------------------------------------------- 69
Figura 3.12 – Programa para Leitura da Frequência do Link (QUANSER, 2011c) - 70
9
Figura 3.13 – Forma de Onda na Aferição da Frequência Natural do Link
(QUANSER, 2011c) --------------------------------------------------------------------------------- 70
Figura 3.14 – Tensão de 0 V medida na calibração do Strain Gage -------------------- 71
Figura 3.15 – Tensão aproximada 1 V aferida pelo Strain Gage quando
Flexionado em 1 Polegada ----------------------------------------------------------------------- 72
Figura 3.16 – Forma de Onda Oscilante Medida para Estimação da Frequência
Natural do Link ------------------------------------------------------------------------------------- 73
Figura 3.17 – Programa que Permite a Validação do Modelo Estimado
(QUANSER, 2011c) --------------------------------------------------------------------------------- 74
Figura 3.18 – Validação do Modelo para Valores de 𝜃 ----------------------------------- 75
Figura 3.19 – Validação do Modelo para Valores de 𝛼 ----------------------------------- 80
Figura 4.1 – Programa para Simulação do Controlador no Sistema (QUANSER,
2011c) -------------------------------------------------------------------------------------------------
80
Figura 4.2 – Sinal Simulado para a Tensão no motor 𝑉𝑚 --------------------------------- 81
Figura 4.3 – Sinal Simulado para valores de 𝜃. O Sinal azul é a Referência (±30𝑉)
e o Sinal verde é o Medido ----------------------------------------------------------------------- 81
Figura 4.4 – Sinal Simulado para valores de 𝛼 ---------------------------------------------- 82
Figura 4.5 – Programa para Implementação do Controlador no Sistema
(QUANSER, 2011c) --------------------------------------------------------------------------------- 83
Figura 4.6 – Sinal do motor 𝑉𝑚 na Implementação do Sistema ------------------------- 65
Figura 4.7 – Sinal de 𝜃 na Implementação do Sistema. O Sinal azul é a Referência
(±30𝑉) e o verde é a Resposta do Sistema -------------------------------------------------- 84
Figura 4.8 – Sinal de 𝛼 na Implementação do Sistema ------------------------------------ 84
Figura A1 – Representação Geométrica do Produto Vetorial (SANTOS, 2004) ----- 110
Figura A2 – Exemplo Prático para Multiplicação de Matrizes (SANTOS, 2004) ---- 110
10
LISTA DE SÍMBOLOS
𝛼 - Deflexão do link.
𝑙 - Comprimento do link.
𝐽𝑎𝑟𝑚 - Momento de inércia do link.
𝐾𝑠𝑡𝑖𝑓𝑓 - Coeficiente de rigidez do link.
𝑚 - Massa do link.
𝐷 - Distância que o link defletiu em relação ao repouso.
0𝑖 − Ponto de origem do sistema de coordenada 𝑖.
𝑧𝑖 ∩ 𝑥𝑖 − Ponto de Intersecção entre o eixo 𝑧𝑖 𝑒 𝑥𝑖 .
𝑂𝑖 , 𝑃𝑖|𝑥𝑖− Distância do ponto 𝑂𝑖 até o ponto 𝑃𝑖 medida ao longo do eixo 𝑥𝑖 .
∠ 𝑥𝑖 , 𝑧𝑖 |𝑦𝑖− Ângulo medido da direção de 𝑥𝑖 para a direção de 𝑧𝑖 em torno do eixo
𝑦𝑖 .
𝜂𝑚 - eficiência do motor.
𝜂𝑔 - eficiência das engrenagens.
𝑘𝑡 - constante de torque do motor.
𝑘𝑔 - razão de transmissão da caixa de engrenagens somada com a razão transmissão
das engrenagens externas.
𝑉𝑚 - tensão de alimentação do motor.
𝐾𝑚 - constante de força contra-eletromotriz.
𝑅𝑚 - resistência de armadura do motor.
ℒ - Função Lagrangeana.
𝐽 - Índice de desempenho do Regulador Linear Quadrático.
𝑇, 𝑘 – Energia Cinética.
𝑇𝑜𝑢𝑡 - Torque de saída do motor DC.
11
𝑉, 𝑢 - Energia Potencial.
𝐽𝑒𝑞 – Momento equivalente de inércia.
𝐵𝑒𝑞 - Coeficiente de amortecimento viscoso equivalente.
𝑡𝑠 - Tempo de estabilização.
𝑃. 𝑂. - Máximo sobressinal ou porcentagem de overshoot.
𝑸 – Matriz diagonal de peso utilizada para ajuste do Índice de desempenho.
𝑲 - Matriz de ganho de realimentação de estados.
diag (∙) – Matriz diagonal.
𝑷 - Matriz positiva definida solução da Equação de Riccati.
𝑶 - Matriz Nula.
𝑰 – Matriz Identidade.
𝑎, 𝑏, 𝑝 - Escalares.
∙ 𝑇 - Transposto de uma matriz.
∙ −1 - Inversa de uma matriz.
𝑨 - Matriz de Estados do sistema.
𝑩 - Matriz de entrada.
𝑪 - Matriz de saída.
𝑫 – Matriz de Transmissão Direta.
𝑃𝑒𝑟 – Período.
𝑓𝑐 , 𝜔𝑐 – Frequência natural do link.
𝑉 - Volt.
° - Ângulo em graus.
𝑠 – segundo.
% - Porcentagem.
𝐴𝑑𝑗 (∙) - Matriz adjunta.
12
det(∙) - Determinante de uma matriz.
tan(∙) - Tangente de uma função.
cos−1(∙) – Arco cosseno de uma função.
𝑬 – polos de malha fechada do sistema controlado.
𝑑
𝑑𝑡(∙) - Derivada de uma função.
𝒖 𝑡 - Lei de Controle.
𝑟𝑎𝑛𝑘(∙) - Rank ou número de linhas/colunas linearmente independentes de uma
matriz.
𝓞 - Matriz de Observabilidade.
𝓒 - Matriz de Controlabilidade.
𝒙 𝑡 – Vetor de estados.
𝒚 𝑡 - Processo de saída.
𝑡𝑓 - Tempo final.
𝑡𝑖 - Tempo inicial.
𝝉 - Vetor de momentos de torção aplicados aos atuadores do manipulador.
𝒈 - Vetor de gravidade.
𝑢𝑟𝑒𝑓 - Constante que escolhida de tal forma que o mínimo de 𝑢𝑖 seja zero, onde 𝑢𝑖 é a
energia potencial do i-ésimo link.
𝑷 - Vetor direção partindo do centro de gravidade do corpo rígido.
𝑰 – Tensor de Inércia.
𝑣 - Aceleração linear.
𝜔 - Aceleração angular.
𝑱 – Matriz Jacobiana.
𝒓 , 𝒒 – Vetores do espaço operacional e das juntas.
cos(∙) - Cosseno de uma função.
13
𝑠𝑒𝑛(∙) - Seno de uma função.
𝑻𝑾𝑩 - Matriz de transformação geométrica da base até o punho.
𝑨𝒊𝒊−𝟏 - Matriz de transformação geométrica do elo (𝑖 − 1) ao elo 𝑖.
𝑹𝒐𝒕 𝜃 - Matriz de Rotação de eixos em um ângulo 𝜃.
𝑻𝒓𝒂𝒏𝒔 𝑝𝑥 , 𝑝𝑦 - Matriz de translação no eixo x e eixo y.
𝒒𝑅 , 𝒒𝑁 – Ponto (vetor) 𝒒 nos referenciais R e N.
∥∙∥ - Norma euclidiana.
× - Produto Vetorial de Matrizes.
14
LISTA DE ABREVIATURAS
2-D – Bidimensional.
3-D – Tridimensional.
AC – Alternate Current (Corrente Alternada).
𝑐𝜃 = 𝑐𝑜𝑠(𝜃) - cosseno de teta.
𝑐1 = cos(𝜃1)
𝑐23 = cos(𝜃2 − 𝜃3)
DC – Direct Current (Corrente Contínua).
D-H – Algoritmo de Denavit – Hartenberg.
DOF – Degrees of Freedom (Graus de Liberdade).
ERP – Estritamente Real Positivo.
LQR – Linear Quadratic Regulator (Regulador Linear Quadrático).
Fuzzy T-S-K – Fuzzy Takagi-Sugeno-Kang.
LMI – Linear Matrix Inequalities (Inequações Matriciais Lineares).
LQG/LTR – Linear Quadratic Gaussian/Loop Transfer Recovery.
P – Junta Prismática.
PID – Proporcional – Integral – Derivativo.
R – Junta Rotacional.
S – Junta Esférica.
𝑠𝜃 = 𝑠𝑒𝑛(𝜃) - seno de teta.
SISO – Single Input – Single Output (Única Entrada – Única Saída).
SLIT – Sistema Linear Invariante no Tempo.
15
SUMÁRIO
1. INTRODUÇÃO ------------------------------------------------------------------------------------ 19
2. REVISÃO BIBLIOGRÁFICA ---------------------------------------------------------------------- 23
2.1. Principais Elementos de um Manipulador Industrial -------------------------------- 23
2.1.1. Braço, Punho, Elos e Juntas -------------------------------------------------------- 23
2.1.2. Tipos de Juntas ------------------------------------------------------------------------ 24
2.1.3. Controladores -------------------------------------------------------------------------- 25
2.1.4. Sensores e Atuadores ---------------------------------------------------------------- 25
2.2. Conceitos Básicos ----------------------------------------------------------------------------- 26
2.2.1. Graus de Liberdade (Degree of Freedom – DOF) ------------------------------ 26
2.2.2. Espaço de Trabalho (Workspace) ------------------------------------------------- 26
2.3. Sistemas de Coordenadas ------------------------------------------------------------------ 26
2.3.1. Sistemas de Eixos --------------------------------------------------------------------- 26
2.3.2. Pontos e Referenciais ---------------------------------------------------------------- 26
2.3.3. Transformações Genéricas Elementares ---------------------------------------- 27
2.3.4. A Notação Matricial para Representar Transformações de um Ponto a duas Dimensões ------------------------------------------------------------------------------------
28
a) Matriz Identidade (Transformação Nula) e sem Translação ------------ 28
b) Reflexão em Relação a um Eixo (Simetria Axial) --------------------------- 29
c) Reflexão em Relação à Origem (Simetria Central) ------------------------- 29
d) Fator de Escala -------------------------------------------------------------------- 29
e) Rotação de 90⁰ em Torno da Origem ---------------------------------------- 30
f) Matriz de Rotação para o Caso Geral ------------------------------------------ 30
2.3.5. Representação Compacta para a Matriz de Transformação em duas
Dimensões ------------------------------------------------------------------------------------------- 31
2.3.6. Transformações Compactas – O Produto de Matrizes de
Transformações ------------------------------------------------------------------------------------
32
a) Sucessão de Translações (Operação Comutativa) -------------------------- 32
b) Sucessão de Rotações no Plano (Operação Comutativa) ---------------- 32
c) Sucessão de Translações e Rotações (Operação não Comutativa) ---- 33
16
2.3.7. Matrizes de Transformação no Espaço de 3 Dimensões -------------------- 34
a) Generalização dos Conceitos para um Espaço 3D -------------------------- 34
b) Componentes da Matriz de Transformações -------------------------------- 34
2.3.8. Interpretações do que Significa a Matriz de Transformação -------------- 35
2.4. Cinemática ------------------------------------------------------------------------------------- 37
2.4.1. Espaço das Juntas e Espaço Cartesiano ------------------------------------------ 37
2.4.2. Algoritmo para Determinar a Cinemática Direta ------------------------------ 38
a) Eixo de uma Junta ------------------------------------------------------------------ 38
a1) Eixo de uma Junta Rotacional ----------------------------------------------- 38
a2) Eixo de uma Junta Prismática ----------------------------------------------- 38
b) Parâmetros de Elos e Juntas ----------------------------------------------------- 39
b1) Comprimento do Elo (𝑎𝑖) -------------------------------------------------- 39
b2) Distância entre Elos ou Deslocamento de Juntas (𝑑𝑖) -------------- 39
b3) Ângulo de Junta (𝜃𝑖) -------------------------------------------------------- 39
b4) Ângulo de Torção do Elo (𝛼𝑖) -------------------------------------------- 40
c) Alguns Exemplos de Elos --------------------------------------------------------- 40
c1) Elo de Juntas Rotacionais Paralelas -------------------------------------- 40
c2) Elo de Juntas Rotacionais Paralelas com Desalinhamento --------- 41
c3) Elo de Juntas Rotacionais Ortogonais ------------------------------------ 41
c4) Elo de Juntas Rotacionais Ortogonais com Desalinhamento ------ 42
c5) Outro Tipo de Elo de Juntas Rotacionais Ortogonais ---------------- 43
c6) Elo com Junta Prismática e Rotacional Ortogonais ------------------- 43
c7) Outro Tipo de Elo de Juntas Prismática e Rotacional Ortogonais - 44
d) Transformação 𝐴𝑖𝑖−1 associada a um Elo ------------------------------------ 45
e) O Algoritmo de Denavit-Hartenberg ------------------------------------------- 45
f) Exemplo ------------------------------------------------------------------------------ 46
2.4.3. Cinemática Inversa -------------------------------------------------------------------- 47
a) Resolução para um Manipulador R (Rotacional) no Plano --------------- 47
2.4.4. O Jacobiano de um Manipulador -------------------------------------------------- 49
2.5. Dinâmica dos Manipuladores -------------------------------------------------------------- 49
2.5.1. Aceleração de um Corpo Rígido ---------------------------------------------------- 49
17
2.5.2. Distribuição de Massas --------------------------------------------------------------- 50
2.5.3. Formulação Lagrangeana da Dinâmica dos Manipuladores --------------- 50
a) Exemplo ------------------------------------------------------------------------------- 51
2.6. Geração de Trajetórias ---------------------------------------------------------------------- 53
2.6.1. Tipos de Movimentos ---------------------------------------------------------------- 53
a) Ponto a Ponto ----------------------------------------------------------------------- 53
b) Trajetória Contínua ---------------------------------------------------------------- 53
2.6.2. Função para a Continuidade da Velocidade ----------------------------------- 53
a) Exemplo ----------------------------------------------------------------------------- 55
2.7. Teoria de Controle LQR (Linear Quadratic Regulator – Regulador Quadrático Linear) ------------------------------------------------------------------------------------------------
55
2.8. Conclusão Parcial ---------------------------------------------------------------------------- 58
3. DESENVOLVIMENTO E METODOLOGIA --------------------------------------------------- 59
3.1. Manipulador DENSO® 6-DOF -------------------------------------------------------------- 59
3.1.1. Uma ideia geral sobre o Robô DENSO® 6-DOF VP-6242 -------------------- 59
3.1.2. Parâmetros de Denavit-Hartenberg (Cinemática Direta) ------------------- 60
3.1.3. Matriz Jacobiana ---------------------------------------------------------------------- 61
3.2. Sistema Link Flexível (1-DOF) -------------------------------------------------------------- 62
3.2.1. Modelagem Matemática do Sistema QUANSER® de um Link (1-DOF) - 62
3.2.2. Montagem do Sistema Link Flexível 1-DOF ------------------------------------- 66
3.2.3. Calibração do Sistema QUANSER® de 1-DOF ----------------------------------- 68
3.2.4. Obtenção da Frequência Natural do Sistema QUANSER® 1-DOF --------- 70
3.2.5. Projeto do Controlador LQR aplicado ao Sistema de 1-DOF --------------- 71
a) Calibração do Strain Gage do Link Flexível ------------------------------------ 71
b) Estimação da Frequência Natural do Link e o Modelo em Espaço de Estados Estimado -----------------------------------------------------------------------------------
72
c) Validação do Modelo em Espaço de Estados --------------------------------- 74
d) Testes com Diversos Valores para a Matriz Peso 𝑸 do Controlador LQR ----------------------------------------------------------------------------------------------------
76
3.3. Conclusão Parcial ----------------------------------------------------------------------------- 78
4. RESULTADOS -------------------------------------------------------------------------------------- 79
4.1. Simulações ------------------------------------------------------------------------------------- 79
18
4.2. Implementação -------------------------------------------------------------------------------- 82
4.3. Conclusão Parcial ----------------------------------------------------------------------------- 85
5. CONCLUSÃO -------------------------------------------------------------------------------------- 87
5.1. Pesquisas Futuras ----------------------------------------------------------------------------- 88
6. REFERÊNCIAS BIBLIOGRÁFICAS -------------------------------------------------------------- 89
APÊNDICE I – Setup do modelo Link Flexível QUANSER® com Cálculo da Matriz de Realimentação de Estados 𝑲, Matriz 𝑷 e os Polos de Malha Fechada 𝑬 -------------
91
APÊNDICE II – Configurações do SRV02 -------------------------------------------------------- 95
APÊNDICE III – Configuração do Link Flexível ----------------------------------------------- 103
APÊNDICE IV – Matrizes do Modelo de Espaço de Estado Estimado ------------------- 105
APÊNDICE V – Cálculo das Constantes do Modelo ------------------------------------------ 107
ANEXO I - Matrizes e Vetores -------------------------------------------------------------------- 109
1 - Produto de um escalar por uma matriz --------------------------------------- 109
2 - Inversão de uma matriz ----------------------------------------------------------- 109
3 - Produto escalar de vetores ------------------------------------------------------ 109
4 - Produto vetorial de vetores ------------------------------------------------------ 109
5 - Produto Genérico entre matrizes ---------------------------------------------- 110
ANEXO II - Matrizes Definidas Positivas ------------------------------------------------------- 111
ANEXO III – Mecânica Lagrangeana ------------------------------------------------------------ 113
19
1. INTRODUÇÃO
A história da automação industrial é caracterizada por períodos de rápidas mudanças
tecnológicas; o resultado disto tem sido o desenvolvimento de autômatos capazes de
realizar as mais complexas tarefas com o maior nível de sofisticação e precisão
possíveis. Foi exatamente neste contexto que surgiram os manipuladores robóticos
industriais (CRAIG, 2006).
O uso de manipuladores industriais tem aumentado significantemente desde meados
dos anos 1960, impulsionados pelo crescimento industrial surgido a partir deste
período.
A partir dos anos 1980, houve uma expansão no uso destes manipuladores robóticos
devido à popularidade dos computadores pessoais, que passaram a ser o centro de
comando de tarefas e controle. Com isso, inúmeros tipos de indústrias passaram a
utilizar estes recursos para aumentar sua produtividade, tendo como principais
usuários as indústrias automobilísticas, seguindo as indústrias aeroespaciais,
eletrônica, mecânica, metalúrgica, construção civil, mineração, agricultura entre outras
(CRAIG, 2006).
A seguir, apresenta-se uma breve cronologia da História dos Manipuladores Robóticos,
desde o seu surgimento até os dias atuais (SCHIRMER, 2005):
Joseph Marie Jacquard (1801) - desenvolvimento do tear programável através de cartões perfurados. A invenção de Jacquard é o primeiro dispositivo programável de que se tem notícia e foi tomado como base para o desenvolvimento de outros dispositivos programáveis desenvolvidos posteriormente.
Chistopher Spencer (1830) - invenção do torno programável por cames.
Seward Babbitt (1892) - invenção do guindaste motorizado.
Willard Pollard e Harold Roselund (1938) - projeto do primeiro mecanismo de movimentação de pistola de pintura programável para a companhia Devilbiss.
George C. Devol (1946) – patente de dispositivo para manuseio de materiais, com "memória programável".
Raymond Goetz (1951) - projeta um manipulador remoto, um dispositivo mestre-escravo utilizado para movimentar materiais perigosos - radioativos.
Em 1952 é construída pelo Laboratório de Servomecanismos do Instituto de Tecnologia de Massachusetts (MIT) a primeira máquina-ferramenta controlada por comando numérico (máquina CNC).
C. W. Kenward (Inglaterra, 1954) - requer a patente da invenção do primeiro robô.
George C. Devol (E.U.A., 1954) - projeta e desenvolve o robô para transferência programada de peças para a Unimate. Esse dispositivo teve origem na combinação de duas novas tecnologias: o comando numérico e o manipulador
20
remoto. A tecnologia CNC permitia coordenar o funcionamento de uma máquina-ferramenta através da informação armazenada em programa. A aplicação dessa característica das máquinas CNC em um manipulador remoto permitiu, então, a Devol criar um manipulador que pudesse ser programado e que funcionasse sem que uma pessoa o comandasse remotamente.
Planet Corporation (1959) - introduz o primeiro robô comercial para movimentação de peças, controlado por chaves fim-de-curso e cames.
É lançado o primeiro robô Unimate hidráulico, pela Unimation (1960).
Versatran - primeiro robô cilíndrico, projetado por Harry Johnson e Veljko Milenkovic é introduzido no mercado pela American Machinery Foundry Corporation.
General Motors (1962) - instalação do primeiro robô industrial (Unimation) na linha de produção.
Aplicação das transformações homogêneas a cinemática do robô (1965).
Desenvolvimento do braço robótico elétrico na universidade de Stanford (1970).
Lançamento do primeiro robô industrial controlado por computador, T3, projeto de Richad Hohn, na Cincinnati Milacrom (1973).
Em 1974, nos EUA, o professor Victor Scheinman, projetista do robô de Stanford, comercializa a versão industrial para este modelo.
Desenvolvimento do robô PUMA - (Programmed Universal Machine for Assembly) pela Unimation (1978).
Desenvolvimento do robô SCARA (Selective Compliance Arm for Robotic Assembly), pela universidade Yamanashi (Japão, 1979).
Outras aplicações mais avançadas que vêm sendo alvo de pesquisa nos últimos anos
estão localizadas na área de telemedicina. A utilização de robôs para fins médicos
ganhou enorme importância devido ao fato de robôs serem mais precisos em
processos cirúrgicos, menos invasivos e com menor tempo de recuperação aos
pacientes (IYER, LOOI, DRAKE, 2013; KESHMIRI, XIE, MOHEBBI, 2013; MARCUS et al.,
2014; LOOI et al., 2013).
O presente trabalho aborda uma pesquisa básica sobre robótica para, em um futuro
próximo, aplicar os conhecimentos em um manipulador robótico, o DENSO® VP-6242
(QUANSER, 2013) da empresa QUANSER® que possui seis graus de liberdade e vem
sendo alvo de pesquisas na área biomédica em todo o mundo (IYER, LOOI, DRAKE,
2013; KESHMIRI, XIE, MOHEBBI, 2013; MARCUS et al., 2014; LOOI et al., 2013).
Outra abordagem do trabalho é o projeto de um controlador LQR aplicado ao
QUANSER® Flexible Link, que para nossas aplicações é tomado como um manipulador
robótico com um grau de liberdade e proporciona uma visão mais simples sobre o
funcionamento de apenas um link ou braço manipulador (POPESCU, SENDRESCU,
BOBASU, 2008; ARAÚJO, SOUZA, FELINI, 2011; GUEDES, SANTOS, SOUZA, 2010).
21
O trabalho está dividido na seguinte forma:
O Capítulo 2 apresenta a teoria matemática de manipuladores robóticos e
segue de forma similar aos livros clássicos que tratam do assunto (CRAIG, 2006;
SICILIANO et al., 2009; CORKE, 2011; SPONG, HUTCHINSON, VIDYASASGAR,
2006). Portanto, o capítulo 2 inclui Sistemas de Coordenadas, Matrizes de
Transformação, Cinemática Direta e Cinemática Inversa, Jacobiano de um
manipulador, Dinâmica e Geração de Trajetórias além, de incluir também a
Teoria de Controle LQR (Regulador Linear Quadrático) (OGATA, 2010; DORF,
BISHOP, 2010).
No Capítulo 3, será apresentado todo desenvolvimento e a metodologia
proposta para a realização do trabalho. Uma ideia geral do Manipulador
DENSO® 6-DOF VP-6242 (QUANSER, 2013) é apresentada como motivação para
o estudo e testes de um sistema mais básico, o Link Flexível de um grau de
liberdade da empresa QUANSER®.
Os resultados estão contidos no Capítulo 4. Neste capítulo, são apresentados
resultados de simulação e implementação de um Controlador LQR aplicado ao
Link Flexível da empresa QUANSER®.
Por fim, o Capítulo 5 apresenta as conclusões finais, argumentando a
importância do estudo da Robótica nos dias atuais e também discutindo de
forma resumida os resultados obtidos nos Capítulos 3 e 4.
22
23
2. REVISÃO BIBLIOGRÁFICA
Neste capítulo será apresentada de forma didática a teoria dos manipuladores
robóticos começando por Sistemas de Coordenadas, Matrizes de Transformação,
Cinemática Direta e Inversa, Jacobiano de um manipulador, Dinâmica e Geração de
Trajetórias finalizando com a teoria do controlador LQR.
A fim de iniciar os estudos em robótica, faz-se necessário seguir uma sequência que
permite a melhor compreensão do conteúdo e segue-se como a maioria dos livros
clássicos versando sobre o assunto (CRAIG, 2006; SICILIANO et al., 2009; CORKE, 2011;
SPONG, HUTCHINSON, VIDYASASGAR, 2006).
2.1. Principais Elementos de um Manipulador Industrial
2.1.1. Braço, Punho, Elos e Juntas
O braço do manipulador robótico, elo ou link, conforme mostra a Figura 2.1, está
geralmente associado aos movimentos espaciais de posicionamento (x, y, z) no espaço
cartesiano. Já o punho do manipulador robótico está associado aos movimentos
espaciais de orientação (𝜃, 𝜙, 𝜓) da garra, pinça ou end-effector (CRAIG, 2006).
Porém, podem também ocorrer movimentos cruzados de forma que o braço
modifique a orientação e o punho modifique o posicionamento do robô.
Figura 2.1 – Modelo de Conexão entre Junta e Elos (SANTOS, 2004).
Há diversos tipos de garras utilizadas em manipuladores robóticos. A Figura 2.2 mostra
pinças e garras com funcionamento pelo vácuo, magnética, adesivos e as mãos
antropomórficas (SANTOS, 2004).
Podem ser utilizadas também como end-effector ferramentas tais como, soldadores,
furadores, polidores, etc. que são bastante úteis para as indústrias em geral (SANTOS,
2004).
24
Figura 2.2 – Diversos Tipos de Garras utilizadas em Manipuladores Robóticos
(SANTOS, 2004).
Dois elos de um robô são conectados por partes rígidas chamadas de juntas, conforme
mostra a Figura 2.1.
2.1.2. Tipos de Juntas
As juntas utilizadas por manipuladores robóticos podem ser divididas, essencialmente,
em Prismáticas (P), Rotacionais (R) e as Esféricas (S) como mostradas em (CRAIG, 2006;
SANTOS, 2004).
A junta Prismática (P) é aquela cujo movimento relativo dos elos é linear. A junta
Rotacional (R) é aquela cujo movimento relativo dos elos é rotacional. Já a junta
Esférica (S) é a combinação de três juntas rotacionais no mesmo ponto de rotação.
A Figura 2.3 ilustra os três tipos de juntas: Rotacional, Prismática e Esférica.
25
Figura 2.3 – Os Três Tipos de Juntas: Rotacional, Prismática e Esférica (SANTOS,
2004).
2.1.3. Controlador
O Controlador é a unidade responsável por gerar os sinais que são enviados a um ou
mais atuadores, seguindo algoritmos de controle específicos. Geralmente, faz parte de
um sistema maior do que simplesmente os circuitos eletrônicos, tal como o algoritmo
rodando em um computador pessoal.
Por exemplo, o robô DENSO® 6-DOF VP-6242M, além de possuir uma unidade de
controle chamada RC7M, que é apenas um hardware com amplificadores, também
possui instalado em seu programa principal os algoritmos de controle em nível de
software, como será abordado mais tarde neste trabalho (QUANSER, 2013).
2.1.4. Sensores e Atuadores
Os sensores são elementos destinados a medição do estado interno e externo do
manipulador. Os principais sensores que podem ser utilizados em um manipulador
robótico são: sensores de força (por exemplo, o robô DENSO 6-DOF VP-6242M possui
um sensor de força em seu end-effector (QUANSER, 2013) detectores de proximidade
capacitivos e indutivos, potenciômetros, tacômetros, etc. (SANTOS, 2004).
Os atuadores são os dispositivos que geram e impõem os movimentos às partes
mecânicas pelo uso de forças e momentos baseado em princípios físicos de conversão
de energia. Os principais atuadores em manipuladores robóticos são: motores
elétricos, cilindros pneumáticos e hidráulicos, eletroímãs, etc. (SANTOS, 2004).
26
2.2. Conceitos Básicos
2.2.1. Graus de Liberdade (Degree of Freedom – DOF)
O número de graus de Liberdade é o número total de movimentos independentes que
um dispositivo pode realizar. Por exemplo, um cubo no espaço tridimensional pode se
deslocar ao longo dos três eixos (x, y, z) e ainda rodar em cada um deles resultando
num total de 6 graus de liberdade (6-DOF) (SANTOS, 2004).
2.2.2. Espaço de Trabalho (Workspace)
O espaço de trabalho de um manipulador robótico é definido como a região espacial
onde o manipulador pode posicionar o seu end-effector ou garra (CRAIG, 2006;
SANTOS, 2004).
2.3. Sistemas de Coordenadas
2.3.1. Sistemas de Eixos
O sistema de eixos ou coordenadas que sera utilizado para a análise é o cartesiano
(ortogonal), mostrado na Figura 2.4. O sistema cartesiano sera utilizado no sentido
positivo dos ângulos, isto é, pela convenção usual (sentido anti-horário) (CRAIG, 2006;
SANTOS, 2004; CORKE, 2011).
A notação aqui adotada sera letra em negrito para matrizes e vetores e letra simples
para escalares.
Figura 2.4 – Sistema de Eixos Ortogonal Cartesiano (SANTOS, 2004).
2.3.2. Pontos e Referenciais
Qualquer ponto no espaço pode ser visto de diferentes formas, conforme o referencial
usado. Portanto, o referencial pode-se dizer que é o ponto de vista.
27
Por exemplo, admitindo-se dois referenciais designados por R e N, um mesmo ponto q
que é um vetor no espaço pode ser designado pela equação (2.1), vista do referencial
R, e pela equação (2.2), vista no referencial N (CRAIG, 2006; SANTOS, 2004).
𝒒𝑅 = [𝑥𝑅 𝑦𝑅 𝑧𝑅]𝑇 (2.1)
𝒒𝑁 = [𝑥𝑁 𝑦𝑁 𝑧𝑁]𝑇 (2.2)
Figura 2.5 – Sistema com Dois Referenciais: 𝒒𝑅 e 𝒒𝑁 (SANTOS, 2004).
2.3.3. Transformações Genéricas Elementares
Os dois tipos de movimentos mais comuns são a Rotação e a Translação.
Como exemplo pode-se mostrar que uma rotação no espaço, em torno do eixo z, em
um ângulo 𝛼 é dada por 𝑹𝒐𝒕(𝑧, 𝛼) e uma translação no espaço de tamanho a ao longo
do eixo y é dada por 𝑻𝒓𝒂𝒏𝒔 𝑦, 𝑎 = 𝑻𝒓𝒂𝒏𝒔(0, 𝑎, 0). A Figura 2.6 ilustra melhor estes
conceitos.
Figura 2.6 – Transformação Rotacional e Translacional (SANTOS, 2004).
28
No espaço tridimensional, há seis transformações geométricas independentes
elementares, que são três rotações e três translações: 𝑻𝒓𝒂𝒏𝒔 𝑥, 𝑎 , 𝑻𝒓𝒂𝒏𝒔 𝑦, 𝑎 ,
𝑻𝒓𝒂𝒏𝒔 𝑧, 𝑎 , 𝑹𝒐𝒕(𝑥, 𝛼), 𝑹𝒐𝒕(𝑦, 𝛼) e 𝑹𝒐𝒕(𝑧, 𝛼) (CRAIG, 2006; SANTOS, 2004).
2.3.4. A Notação Matricial para Representar Transformações de um Ponto a duas
Dimensões
A transformação geométrica genérica para uma translação no plano é dado por (2.3).
𝑥1 = 𝑥 + 𝑝𝑥
𝑦1 = 𝑦 + 𝑝𝑦
(2.3)
Ou seja, representando a (2.3) em notação matricial, chegamos à equação (2.4).
𝑥1
𝑦1 =
𝑥𝑦 +
𝑝𝑥
𝑝𝑦 (2.4)
Agora tomando uma forma mais genérica para a rotação e a translação (SANTOS,
2004) temos (2.5).
𝑥1 = 𝑎𝑥 + 𝑏𝑦 + 𝑝𝑥
𝑦1 = 𝑐𝑦 + 𝑑𝑦 + 𝑝𝑦
(2.5)
Partindo da equação (2.5) e utilizando a notação matricial obtém-se (2.6):
𝑥1
𝑦1 =
𝑎 𝑏𝑐 𝑑
𝑥𝑦 +
𝑝𝑥
𝑝𝑦 (2.6)
Chamaremos de 𝑻 = 𝑎 𝑏𝑐 𝑑
, a matriz quadrada e de 𝑷 = 𝑝𝑥
𝑝𝑦 o vetor de translação.
Se tivermos somente translação no sistema tomamos 𝑻 = 𝑰, onde 𝑰 é a matriz
identidade e se 𝑷 = 𝑶, onde 𝑶 é o vetor nulo, então se considera sem translação
(SANTOS, 2004). Agora veremos alguns exemplos utilizando a notação matricial.
a) Matriz Identidade (Transformação Nula) e sem Translação
Se 𝑻 = 𝑰 = 1 00 1
então,
𝑥1
𝑦1 =
1 00 1
𝑥𝑦 +
00 =
𝑥𝑦 (2.7)
Portanto, observando a equação (2.7), não houve transformação geométrica. Pode-se
concluir que a matriz identidade não introduz transformação geométrica (SANTOS,
2004).
29
b) Reflexão em Relação a um Eixo (Simetria Axial)
Se 𝑻 = −1 00 1
então,
𝑥1
𝑦1 =
−1 00 1
𝑥𝑦 +
00 =
−𝑥𝑦 (2.8)
Assim, em (2.8), houve uma reflexão em relação ao eixo x, como mostrado pela Figura
2.7.
Figura 2.7 – Reflexão em Relação a um Eixo (SANTOS, 2004).
c) Reflexão em Relação à Origem (Simetria Central)
Tomando a matriz como 𝑻 = −1 00 −1
então,
𝑥1
𝑦1 =
−1 00 −1
𝑥𝑦 +
00 =
−𝑥−𝑦 (2.9)
Portanto, neste caso, houve uma reflexão em relação ao eixo x e y, como mostrado
pela Figura 2.8.
Figura 2.8 – Reflexão em Relação à Origem (SANTOS, 2004).
d) Fator de Escala
Neste caso não há translação, apenas a multiplicação de um fator para qualquer uma
das escalas.
30
Tomando a matriz 𝑻 = 𝑎 00 1
, o sistema fica então:
𝑥1
𝑦1 =
𝑎 00 1
𝑥𝑦 =
𝑎𝑥𝑦 (2.10)
A Figura 2.9 ilustra o conceito de fator de escala para 𝑎 = 3.
Figura 2.9 – Fator de Escala (SANTOS, 2004).
e) Rotação de 90° em Torno da Origem
Tomando a matriz 𝑻 = 0 −11 0
, o sistema fica então:
𝑥1
𝑦1 =
0 −11 0
𝑥𝑦 =
−𝑦𝑥
(2.11)
A Figura 2.10 ilustra uma rotação no plano de 90° em torno da origem obtida pela
equação (2.11)
Figura 2.10 – Rotação de 90⁰ em torno da Origem (SANTOS, 2004).
f) Matriz de Rotação para o Caso Geral
Tomando um caso genérico, pode-se considerar a matriz de rotação 𝑻 como mostrada
em (2.12).
𝑻 = 𝑐𝜃 −𝑠𝜃𝑠𝜃 𝑐𝜃
(2.12)
31
onde 𝑐𝜃 = 𝑐𝑜𝑠𝜃 e 𝑠𝜃 = 𝑠𝑒𝑛𝜃 tomando notação abreviada (CRAIG, 1955; SANTOS,
2004).
A Figura 2.11 mostra uma rotação genérica no plano.
Figura 2.11 – Rotação Genérica no Plano (SANTOS, 2004).
2.3.5. Representação Compacta para a Matriz de Transformação em duas
Dimensões
Uma forma mais geral e compacta de representar as transformações mostradas
anteriormente é utilizando o conceito de coordenadas homogêneas; o resultado final é
mostrado na Figura 2.12.
Figura 2.12 – Matriz Genérica de Transformação Geométrica (Rotação + Translação)
(SANTOS, 2004).
Assim, por exemplo, uma rotação pura no plano pode ser representada por (2.13).
𝑐𝜃 −𝑠𝜃 0𝑠𝜃 𝑐𝜃 00 0 1
(2.13)
Já uma translação pura no plano pode ser representada por (2.14).
1 0 𝑝𝑥
0 1 𝑝𝑦
0 0 1
(2.14)
32
2.3.6. Transformações Compactas – O Produto de Matrizes de Transformações
Uma transformação geométrica é a geração de um ponto a partir de outro qualquer
(CRAIG, 2006; SANTOS, 2004). O produto das matrizes de transformação traduz-se na
multiplicação de diversas transformações, ou seja, em sucessivas transformações. É
necessário observar a comutatividade de algumas transformações.
a) Sucessão de Translações (Operação Comutativa)
Como exemplo, temos duas translações, a primeira representada pela equação (2.15) e
a segunda pela (2.16).
𝑻𝟏 = 𝑻𝒓𝒂𝒏𝒔 𝑎𝑥 , 𝑎𝑦 = 1 0 𝑎𝑥
0 1 𝑎𝑦
0 0 1
(2.15)
𝑻𝟐 = 𝑻𝒓𝒂𝒏𝒔 𝑏𝑥 ,𝑏𝑦 = 1 0 𝑏𝑥
0 1 𝑏𝑦
0 0 1
(2.16)
A multiplicação dessas transformações resulta em (2.17), o que prova a
comutatividade da transformação.
𝑻𝟏 ∙ 𝑻𝟐 = 𝑻𝒓𝒂𝒏𝒔 𝑎𝑥 , 𝑎𝑦 ∙ 𝑻𝒓𝒂𝒏𝒔 𝑏𝑥 , 𝑏𝑦 = 1 0 𝑎𝑥
0 1 𝑎𝑦
0 0 1
. 1 0 𝑏𝑥
0 1 𝑏𝑦
0 0 1
=
1 0 𝑎𝑥 + 𝑏𝑥
0 1 𝑎𝑦 + 𝑏𝑦
0 0 1
= 𝑻𝟐 (2.17)
b) Sucessão de Rotações no Plano (Operação Comutativa)
Tomando como exemplo duas rotações no plano, a primeira representada pela
equação (2.18) e a segunda pela equação (2.19).
𝑻𝟏 = 𝑹𝒐𝒕 𝜃1 = 𝑐𝜃1 −𝑠𝜃1 0𝑠𝜃1 𝑐𝜃1 00 0 1
(2.18)
𝑻𝟐 = 𝑹𝒐𝒕 𝜃2 = 𝑐𝜃2 −𝑠𝜃2 0𝑠𝜃2 𝑐𝜃2 0
0 0 1
(2.19)
33
A multiplicação dessas transformações também resultou na propriedade comutativa
como pode-se observar em (2.20).
𝑻𝟏 ∙ 𝑻𝟐 = 𝑹𝒐𝒕 𝜃1 ∙ 𝑹𝒐𝒕 𝜃2 = 𝑐𝜃1 −𝑠𝜃1 0𝑠𝜃1 𝑐𝜃1 00 0 1
. 𝑐𝜃2 −𝑠𝜃2 0𝑠𝜃2 𝑐𝜃2 0
0 0 1
=
𝑐(𝜃1 + 𝜃2) − 𝑠(𝜃1 + 𝜃2) 0𝑠(𝜃1 + 𝜃2) 𝑐(𝜃1 + 𝜃2) 0 0 0 1
= 𝑻𝟐 ∙ 𝑻𝟏 (2.20)
Portanto, a operação é comutativa e esta transformação corresponde a rodar (girar)
ordenadamente os sucessivos ângulos de rotação (SANTOS, 2004).
c) Sucessão de Translações e Rotações (Operação não Comutativa)
Tomando uma transformação de translação em (2.21) e uma de rotação em (2.22) a
multiplicação não resulta em comutação das transformações como observado em
(2.23).
𝑻𝟏 = 𝑻𝒓𝒂𝒏𝒔 𝑝𝑥 , 𝑝𝑦 = 1 0 𝑝𝑥
0 0 𝑝𝑦
0 0 1
(2.21)
𝑻𝟐 = 𝑹𝒐𝒕 𝜃 = 𝑐𝜃 − 𝑠𝜃 0𝑠𝜃 𝑐𝜃 0 0 0 1
(2.22)
Fazendo a multiplicação de (2.21) e (2.22) têm-se (2.23).
𝑻𝟏 ∙ 𝑻𝟐 = 1 0 𝑝𝑥
0 1 𝑝𝑦
0 0 1
∙ 𝑐𝜃 − 𝑠𝜃 0𝑠𝜃 𝑐𝜃 0 0 0 1
= 𝑐𝜃 − 𝑠𝜃 𝑝𝑥
𝑠𝜃 𝑐𝜃 𝑝𝑦
0 0 1
(2.23)
Fazendo 𝑻𝟐 ∙ 𝑻𝟏 têm-se a matriz de transformação dada por (2.24) e observa-se que é
distinta de (2.23).
𝑻𝟐 ∙ 𝑻𝟏 =
𝑐𝜃 − 𝑠𝜃 𝑝𝑥𝑐𝜃 − 𝑝𝑦𝑠𝜃
𝑠𝜃 𝑐𝜃 𝑝𝑥𝑠𝜃 + 𝑝𝑦𝑐𝜃
0 0 1
(2.24)
Portanto, a operação é não comutativa.
34
2.3.7. Matrizes de Transformação no Espaço de 3 Dimensões
a) Generalização dos Conceitos para um Espaço 3D
Os conceitos até agora abordados para o plano podem ser estendidos para o espaço
3D (SANTOS, 2004). Para a translação adiciona-se mais um grau de liberdade e para a
rotação, agora, há três possibilidades, como mostraremos mais adiante.
O vetor de translação fica então como em (2.25).
𝑷 =
𝑝𝑥
𝑝𝑦 𝑝𝑧
1
(2.25)
b) Componentes da Matriz de Transformações
A matriz de transformação geral para o caso do espaço 3D tem a forma mostrada em
(2.26);
𝑻 =
𝑎 𝑏 𝑐 𝑝𝑥
𝑑 𝑒 𝑓 𝑝𝑦
𝑔 𝑖 𝑝𝑧 0 0 0 1
(2.26)
As possíveis matrizes de rotação para o espaço 3D estão mostradas em (2.27), (2.28) e
(2.29).
𝑹𝒐𝒕(𝑥, 𝜃) =
1 0 0 0 0 𝑐𝜃 − 𝑠𝜃 0 0 𝑠𝜃 𝑐𝜃 0
0 0 0 1
(2.27)
𝑹𝒐𝒕(𝑦, 𝜃) =
𝑐𝜃 0 𝑠𝜃 0 0 1 0 0 −𝑠𝜃 0 𝑐𝜃 0
0 0 0 1
(2.28)
𝑹𝒐𝒕(𝑧, 𝜃) =
𝑐𝜃 − 𝑠𝜃 0 0 𝑠𝜃 𝑐𝜃 0 0 0 0 1 0
0 0 0 1
(2.29)
A Figura 2.13 mostra as rotações e seus respectivos eixos.
35
Figura 2.13 – Sistema Cartesiano e as Rotações em cada Eixo (SANTOS, 2004).
De forma genérica pode-se definir a seguinte matriz transformação para o espaço 3D,
como mostrado em (SANTOS, 2004).
Figura 2.14 – Forma Expandida da Matriz de Transformação para o Espaço 3D.
(SANTOS, 2004).
Os elementos de perspectiva/projeção e o fator de escala global não foram utilizados
neste trabalho pelo fato de serem utilizados para o tratamento geométrico de imagem
digital. Portanto, considera-se a última linha da matriz da Figura 2.14 como sendo [0 0
0 1].
2.3.8. Interpretações do que Significa a Matriz de Transformação
A matriz de transformação indica as transformações geométricas operadas sobre um
ponto para levar para outro local geométrico (outro ponto), ou seja, pode ser
interpretada como a movimentação do ponto (SANTOS, 2004). A Figura 2.15 abaixo
mostra esta possível interpretação.
36
Figura 2.15 – Movimentação de um Ponto (SANTOS, 2004 ).
Uma transformação geométrica pode ser vista também como a relação entre as
coordenadas de um mesmo ponto físico em dois referenciais diferentes, ou seja,
relaciona-se com a movimentação (criação) de um referencial (SANTOS, 2004). A
Figura 2.16 ilustra este conceito.
Figura 2.16 – Movimentação (criação) de um Referencial (SANTOS, 2004).
E por fim pode indicar também uma transformação de um referencial (R) em outro
referencial (N), ou seja, cria-se um novo referencial aplicando rotações e translações
(SANTOS, 2004), a Figura 2.17 abaixo exemplifica o contexto explicado acima.
Figura 2.17 – Relação entre dois Referenciais (SANTOS, 2004).
37
2.4. Cinemática
A Cinemática de um manipulador é o estudo do conjunto de relações entre as
posições, velocidades e acelerações de seus elos (SANTOS, 2004; CRAIG, 2006;
SICILIANO et al., 2009; CORKE, 2011).
Antes de iniciar o estudo da Cinemática de um manipulador, é necessário definir o
sistema de coordenadas de cada elo, ou seja, atribuir-lhes referenciais, como será
apresentado no algoritmo de D-H que será visto na seqüência.
As relações geométricas entre elos são traduzíveis por matrizes de transformação, e
será com esta ferramenta que será descrita a cinemática do sistema.
2.4.1. Espaço das Juntas e Espaço Cartesiano
A cinemática divide-se em dois tipos: direta e inversa.
A cinemática direta diz respeito à localização da mão ou punho a partir da posição das
juntas (SANTOS, 2004).
A cinemática inversa é o contrário da cinemática direta, ou seja, determina a posição
das juntas a partir da posição da mão ou punho (SANTOS, 2004).
Desta forma definem-se dois espaços de variáveis: o das juntas e o sistema cartesiano
operacional (SANTOS, 2004).
A dimensão do espaço operacional é seis, ou seja, são três translações e três rotações
e o espaço das juntas tem como dimensão o número de juntas que o manipulador
possui.
A Figura 2.18 mostra a relação entre os dois tipos de cinemática e os espaços
relacionados.
Figura 2.18 – Modelo Relacionando a Cinemática Direta e Inversa (SANTOS, 2004).
38
2.4.2. Algoritmo para Determinar a Cinemática Direta
A cinemática direta de um manipulador são as relações que exprimem um ponto no
espaço cartesiano, 𝒓 em função de um ponto no espaço de juntas, 𝒒 (SANTOS, 2004).
Os passos são os seguintes:
1. Colocar o robô na posição de repouso;
2. Atribuir um sistema de coordenadas a cada elo;
3. Descrever a rotações e translações entre as variáveis da juntas e dos elos;
4. Determinar as matrizes 𝑨𝒊 de cada elo;
5. Multiplicar as matrizes 𝑨𝒊 para obter a matriz de transformação geral 𝑻𝑯𝑹 ;
6. Obter as coordenadas de posição da mão ou punho;
7. Obter as coordenadas de orientação da mão ou punho.
a) Eixo de uma Junta
É o eixo relacionado com a simetria do movimento inerente à própria junta.
Convenciona-se que seja o eixo da coordenada z (SANTOS, 2004).
a1) Eixo de uma Junta Rotacional
Existem dois tipos: colineares e ortogonais, como mostrado pela Figura 2.19 abaixo.
Figura 2.19 – Eixo de uma Junta Rotacional: Colinear e Ortogonal (SANTOS, 2004).
a2) Eixo de uma Junta Prismática
Semelhante à rotacional,possui juntas colineares e ortogonais como mostrado pela
Figura 2.20 abaixo.
Figura 2.20 – Eixo de uma Junta Prismática: Colinear e Ortogonal (SANTOS, 2004).
39
b) Parâmetros de Elos e Juntas
Para atribuir o correto sistema de coordenadas ao sistema, é necessário levar em
consideração a geometria dos elos e as consequências entre eles (SANTOS, 2004).
É muito útil definir aqui os quatro parâmetros de elos e juntas, pois serão utilizados
para o cálculo do algoritmo de Denavit-Hartenberg, que possibilita o estudo da
cinemática direta.
Um elo pode ser caracterizado por um determinado número de parâmetros
geométrico-cinemáticos, no que diz respeito à transformação geométrica que opera
(SANTOS, 2004).
A simbologia a ser usada a seguir é (SANTOS, 2004):
0𝑖 − Ponto de origem do sistema de coordenada 𝑖.
𝑧𝑖 ∩ 𝑥𝑖 − Ponto de Intersecção entre o eixo 𝑧𝑖 𝑒 𝑥𝑖 .
𝑂𝑖 , 𝑃𝑖|𝑥𝑖− Distância do ponto 𝑂𝑖 até o ponto 𝑃𝑖 medida ao longo do eixo 𝑥𝑖 .
∠ 𝑥𝑖 , 𝑧𝑖 |𝑦𝑖− Ângulo medido da direção de 𝑥𝑖 para a direção de 𝑧𝑖 em torno do eixo
𝑦𝑖 .
b1) Comprimento do Elo (𝒂𝒊)
É a distancia medida ao longo da normal comum entre os eixos das juntas (SANTOS,
2004). Está relacionado com o conceito de afastamento linear entre os eixos das
juntas. Matematicamente é definido pela equação (2.30) a seguir.
𝑎𝑖 = 𝑧𝑖−1 ∩ 𝑥𝑖 , 0𝑖 |𝑥𝑖 (2.30)
O termo 𝑧𝑖−1 representa a coordenada 𝑧 do elo anterior ao 𝑖-ésimo elo.
b2) Distância entre Elos ou Deslocamento de Juntas (𝒅𝒊)
O deslocamento de juntas traduz, em geral, a distância entre elos medida ao longo do
eixo da junta anterior (SANTOS, 2004), definida por (2.31) a seguir.
𝑑𝑖 = 0𝑖−1, (𝑧𝑖−1 ∩ 𝑥𝑖)|𝑧𝑖−1 (2.31)
b3) Ângulo de Junta (𝜽𝒊)
Definido entre o eixo de um elo e o eixo do elo seguinte e calcula-se como em (2.32)
(SANTOS, 2004).
𝜃𝑖 = ∠ 𝑥𝑖−1, 𝑥𝑖 |𝑧𝑖−1 (2.32)
40
b4) Ângulo de Torção do Elo (𝜶𝒊)
É o ângulo de uma torção que o elo impõe desde o eixo da junta anterior até ao eixo
da junta seguinte (SANTOS, 2004). A definição matemática é dada por (2.33).
𝛼𝑖 = ∠(𝑧𝑖−1, 𝑧𝑖)|𝑥𝑖 (2.33)
c) Alguns Exemplos de Elos
Serão descritos agora alguns exemplos de elos e o cálculo de seus parâmetros,
mostrando como variam de acordo com a geometria do elo.
c1) Elo de Juntas Rotacionais Paralelas
A Figura 2.21 mostra um elo de duas juntas rotacionais paralelas.
Figura 2.21 – Elo de duas Juntas Rotacionais Paralelas (SANTOS, 2004).
A Tabela 2.1 mostra os parâmetros para elo de duas juntas rotacionais paralelas.
Parâmetros Valores
𝑎𝑛 ≠ 0 𝑑𝑛 0 𝜃𝑛 𝑣𝑎𝑟𝑖á𝑣𝑒𝑙 𝛼𝑛 0
Tabela 2.1 – Parâmetros para Elo de duas Juntas Rotacionais Paralelas.
41
c2) Elo de Juntas Rotacionais Paralelas com Desalinhamento
A Figura 2.22 mostra um elo de juntas rotacionais paralelas com desalinhamento.
Figura 2.22 – Elo de duas Juntas Rotacionais Paralelas Desalinhadas (SANTOS,
2004).
A Tabela 2.2 mostra os parâmetros para elo de duas juntas rotacionais paralelas
desalinhadas.
Parâmetros Valores
𝑎𝑛 ≠ 0 𝑑𝑛 ≠ 0 𝜃𝑛 𝑣𝑎𝑟𝑖á𝑣𝑒𝑙 𝛼𝑛 0
Tabela 2.2 – Parâmetros para Elo de duas Juntas Rotacionais Paralelas
Desalinhadas.
c3) Elo de Juntas Rotacionais Ortogonais
A Figura 2.23 mostra um elo de juntas rotacionais ortogonais.
Figura 2.23 – Elo de Juntas Rotacionais Ortogonais (SANTOS, 2004).
42
A Tabela 2.3 mostra os parâmetros para elo de juntas rotacionais ortogonais.
Parâmetros Valores
𝑎𝑛 ≠ 0 𝑑𝑛 0 𝜃𝑛 𝑣𝑎𝑟𝑖á𝑣𝑒𝑙 𝛼𝑛 −90°
Tabela 2.3 – Parâmetros para Elo de Juntas Rotacionais Ortogonais.
c4) Elo de Juntas Rotacionais Ortogonais com Desalinhamento
A Figura 2.24 mostra um elo de juntas rotacionais ortogonais com desalinhamento.
Figura 2.24 – Elo de Juntas Rotacionais Ortogonais Desalinhadas (SANTOS, 2004).
A Tabela 2.4 mostra os parâmetros para elo de juntas rotacionais ortogonais
desalinhados.
Parâmetros Valores
𝑎𝑛 ≠ 0 𝑑𝑛 ≠ 0 𝜃𝑛 𝑣𝑎𝑟𝑖á𝑣𝑒𝑙 𝛼𝑛 −90°
Tabela 2.4 – Parâmetros para Elo de Juntas Rotacionais Ortogonais
Desalinhados.
43
c5) Outro Tipo de Elo de Juntas Rotacionais Ortogonais
A Figura 2.25 mostra outro tipo elo de juntas rotacionais ortogonais.
Figura 2.25 – Segundo Tipo de Elo de Juntas Rotacionais Ortogonais (SANTOS,
2004).
A Tabela 2.5 mostra os parâmetros para o segundo tipo de elo de juntas rotacionais
ortogonais.
Parâmetros Valores
𝑎𝑛 0 𝑑𝑛 ≠ 0 𝜃𝑛 𝑣𝑎𝑟𝑖á𝑣𝑒𝑙 𝛼𝑛 +90°
Tabela 2.5 – Parâmetros para o Segundo Tipo de Elo de Juntas Rotacionais
Ortogonais.
c6) Elo com Junta Prismática e Rotacional Ortogonais
A Figura 2.26 mostra um elo de junta prismática e rotacional ortogonais.
Figura 2.26 – Elo com Junta Prismática e Rotacional Ortogonais (SANTOS, 2004).
44
A Tabela 2.6 mostra os parâmetros para elo com junta prismática e rotacional
ortogonais.
Parâmetros Valores
𝑎𝑛 0 𝑑𝑛 𝑣𝑎𝑟𝑖á𝑣𝑒𝑙 𝜃𝑛 +90° 𝛼𝑛 +90°
Tabela 2.6 – Parâmetros para Elo com Junta Prismática e Rotacional
Ortogonais.
c7) Outro Tipo de Elo de Juntas Prismática e Rotacional Ortogonais
A Figura 2.27 mostra outro tipo de elo de juntas prismática e rotacional ortogonais.
Figura 2.27 – Segundo Tipo de Elo de Juntas Prismática e Rotacional Ortogonais
(SANTOS, 2004).
A Tabela 2.7 mostra os parâmetros para o segundo tipo de elo de duas juntas
prismática e rotacional ortogonais.
Parâmetros Valores
𝑎𝑛 ≠ 0 𝑑𝑛 𝑣𝑎𝑟𝑖á𝑣𝑒𝑙 𝜃𝑛 0 𝛼𝑛 +90°
Tabela 2.7 – Parâmetros para Segundo Tipo de Elo de Juntas Prismática e
Rotacional Ortogonais.
45
d) Transformação 𝑨𝒊𝒊−𝟏 associada a um Elo
Pode-se relacionar a transformação geométrica realizada por um elo 𝑖 e sua junta
correspondente 𝑖 dando origem a um referencial 𝑖 + 1, e pode-se descrever utilizando
as quatro operações elementares como mostrado a seguir (SANTOS, 2004):
Rotação 𝜃𝑖 em torno do eixo da junta (𝑧𝑖−1);
Translação longitudinal ao longo do eixo do elo (𝑥𝑖) do seu próprio
comprimento (𝑎𝑖);
Translação Transversal ao longo do eixo da junta (𝑧𝑖) do afastamento
entre juntas (𝑑𝑖);
Rotação 𝛼𝑖 do eixo da junta 𝑧𝑖 em torno do eixo longitudinal (𝑥𝑖) do elo.
Portanto a transformação é da forma mostrada em (2.34).
𝑨𝒊𝒊−𝟏 = 𝑹𝒐𝒕(𝑧, 𝜃𝑖) ∙ 𝑻𝒓𝒂𝒏𝒔(𝑎𝑖 , 0 ,0) ∙ 𝑻𝒓𝒂𝒏𝒔(0, 0, 𝑑𝑖) ∙ 𝑹𝒐𝒕(𝑥, 𝛼𝑖) =
𝑐𝜃𝑖 − 𝑠𝜃𝑖𝑐𝛼𝑖 𝑠𝜃𝑖𝑠𝛼𝑖 𝑎𝑖𝑐𝜃𝑖
𝑠𝜃𝑖 𝑐𝜃𝑖𝑐𝛼𝑖 − 𝑐𝜃𝑖𝑠𝛼𝑖 𝑎𝑖𝑠𝜃𝑖 0 𝑠𝛼𝑖 𝑐𝛼𝑖 𝑑𝑖 0 0 0 1
(2.34)
e) O Algoritmo de Denavit-Hartenberg
O algoritmo de Denavit-Hartenbeg (D-H) é um algoritmo de cinemática direta que
permite obter os sistemas de coordenadas e as transformações associadas a cada elo
de um manipulador (CRAIG, 2006; SANTOS, 2004). É utilizado principalmente quando
há uma complicação na análise do manipulador por ter muitos graus de liberdade,
como por exemplo, o DENSO® VP-6242 6-DOF. A Tabela 2.8, ilustra a descrição do
algoritmo de Denavit-Hartenberg.
1 Estabelecer o sistema de coordenadas (𝑥0 ,𝑦0 , 𝑧0) na base de suporte, com 𝑧0
ao longo do eixo da junta 1. Convencionar 𝑥0 e 𝑦0 de forma conveniente.
2 Para 𝑖 = 1 até 𝑖 = 𝑛 − 1
3 Definir eixo da junta 𝑖 e alinhar 𝑧𝑖 com eixo da junta 𝑖 + 1
4 Definir 0𝑖 (origem do sistema de coordenadas de um dos seguintes modos:
5 Intersecção de 𝑧𝑖 com 𝑧𝑖−1, isto é, a intersecção da normal comum entre 𝑧𝑖 e
𝑧𝑖−1
6 Definir 𝑥𝑖 = ±(𝑧𝑖−1 × 𝑧𝑖), ou ao longo da normal comum a 𝑧𝑖−1 e 𝑧𝑖 quando
são paralelos
7 Definir 𝑦𝑖 = 𝑧𝑖 × 𝑥𝑖
8 Próximo 𝑖
9 Estabelecer o sistema de coordenadas da mão 0𝑛 (o último). Normalmente a junta n é rotacional: 𝑧𝑛 é colinear com 𝑧𝑛−1 e aponta para “fora”, 𝑥𝑛 é normal
à 𝑧𝑛 e 𝑧𝑛−1 e 𝑦𝑛 é dado de acordo com o sistema direto atual
10 Determinar parâmetros de elos e juntas
Para 𝑖 = 1 até 𝑖 = 𝑛
11 𝑑𝑖 = 0𝑖−1 , (𝑧𝑖−1 ∩ 𝑥𝑖)|𝑧𝑖−1 ; é a variável de junta se for prismática
12 𝑎𝑖 = 𝑧𝑖−1 ∩ 𝑥𝑖 , 0𝑖 |𝑥𝑖
13 𝜃𝑖 = ∠ 𝑥𝑖−1 ,𝑥𝑖 |𝑧𝑖−1
14 𝛼𝑖 = ∠(𝑧𝑖−1 , 𝑧𝑖)|𝑥𝑖
15 Próximo 𝑖
Tabela 2.8 – Descrição do Algoritmo de Denavit-Hartenberg (D-H) (SANTOS, 2004).
46
A seguir, será resolvido um exemplo retirado de (CRAIG, 2006) para melhor
compreensão do problema de determinar a cinemática direta por meio do algoritmo
de Denavit-Hartenberg.
f) Exemplo (CRAIG, 2006 – Exercício 3.3 – Página 92)
Um braço manipulador com três graus de liberdade (3-DOF) é mostrado na Figura 2.28.
Obtenha os parâmetros dos elos e as equações cinemáticas para 𝑻𝑾𝑩 (transformação
da base até o punho) pelo algoritmo de Denavit-Hartenberg (D-H).
Figura 2.28 – Manipulador 3-DOF (CRAIG, 2006)
Os parâmetros de D-H para o manipulador da Figura 2.28 são mostrados na Tabela 2.9,
onde 𝑖 representa as juntas do manipulador.
𝑖 𝛼𝑖−1 𝑎𝑖−1 𝑑𝑖 𝜃𝑖 1 0 0 0 0
2 𝜃1 = 90° 𝐿1 0 𝜃2 3 0 𝐿2 0 𝜃3
Tabela 2.9 – Parâmetros de D-H para Manipulador de 3-DOF.
As transformações para cada elo na sequência são dadas por (2.35), (2.36) e por (2.37).
𝑻𝟏𝟎 =
𝑐𝜃1 − 𝑠𝜃1 0 0 𝑠𝜃1 𝑐𝜃1 0 0 0 0 1 0 0 0 0 1
(2.35)
𝑻𝟐𝟏 =
𝑐𝜃2 − 𝑠𝜃2 0 𝐿1
0 0 − 1 0𝑠𝜃2 𝑐𝜃2 0 0
0 0 0 1
(2.36)
47
𝑻𝟑𝟐 =
𝑐𝜃3 − 𝑠𝜃3 0 𝐿2
𝑠𝜃3 𝑐𝜃3 0 0 0 0 1 0 0 0 0 1
(2.37)
Portanto, a transformação final que relaciona a base com o punho do manipulador da
Figura 2.28 é dada por (2.38).
𝑻𝑾𝑩 = 𝑻𝟑
𝟎 = 𝑻𝟏𝟎 ∙ 𝑻𝟐
𝟏 ∙ 𝑻𝟑𝟐 =
𝑐1𝑐23 − 𝑐1𝑠23 𝑠1 𝐿1𝑐1 + 𝐿2𝑐1𝑐2
𝑠1𝑐23 − 𝑠1𝑠23 − 𝑐1 𝐿1𝑠1 + 𝐿2𝑠1𝑐2 𝑠23 𝑐23 0 𝐿2𝑠2 0 0 0 1
(2.38)
onde 𝑐1 = 𝑐𝑜𝑠𝜃1, 𝑐23 = cos(𝜃2 − 𝜃3) e assim por diante como notação simplificada.
2.4.3. Cinemática Inversa
A cinemática inversa é o método que procura determinar o conjunto de valores das
juntas que se relaciona com uma dada configuração do espaço cartesiano ou
operacional (CRAIG, 2006; SANTOS, 2004).
A cinemática inversa nem sempre é um problema de solução analítica, ou muitas vezes
não possui uma solução. Porém todas as configurações conhecidas possuem soluções;
somente para novas configurações é que não existe um método específico e talvez seja
necessária a invenção de um método novo (SANTOS, 2004).
a) Resolução para um Manipulador R (Rotacional) no Plano
Exemplo de equações da cinemática inversa para um manipulador 2-DOF, mostrado na
Figura 2.29 (SANTOS, 2004).
Para determinar a cinemática inversa, isto é, o valor das suas juntas 𝜃1 e 𝜃2 em função
da posição (𝑥, 𝑦) do end-effector toma-se as equações da cinemática direta em (2.39).
Figura 2.29 – Manipulador 2-DOF (SANTOS, 2004).
𝑥 = 𝐿1𝑐𝑜𝑠𝜃1 + 𝐿2cos(𝜃1 + 𝜃2)𝑦 = 𝐿1𝑠𝑒𝑛𝜃1 + 𝐿2sen(𝜃1 + 𝜃2)
(2.39)
48
Fazendo 𝑥2 + 𝑦2 e simplificando tem-se em (2.40).
𝑥2 + 𝑦2 = 𝐿12 + 𝐿2
2 + 2𝐿1𝐿2𝑐𝑜𝑠𝜃2 (2.40)
Isolando 𝜃2 em (2.40) tem-se em (2.41)
𝜃2 = ±𝑎𝑟𝑐𝑐𝑜𝑠𝑥2+𝑦2−𝐿1
2−𝐿22
2𝐿1𝐿2 (2.41)
Para calcular 𝜃1 tomam-se ângulos auxiliares como mostrado na Figura 2.30.
Figura 2.30 – Ângulos auxiliares para Resolução da Cinemática Inversa (SANTOS, 2004).
Sabendo que a tangente da diferença é dada por (2.42):
𝑡𝑔 𝐴 − 𝐵 =𝑡𝑔𝐴−𝑡𝑔𝐵
1+𝑡𝑔𝐴𝑡𝑔𝐵 , (2.42)
Analisando a Figura 2.30 têm-se as relações em (2.43) e (2.44)
𝑡𝑔𝛽 =𝐿2𝑠𝑒𝑛𝜃2
𝐿1+𝐿2𝑐𝑜𝑠𝜃2 (2.43)
𝑡𝑔𝛼 =𝑦
𝑥 (2.44)
Pela Figura 2.30 tem-se também (2.45).
𝜃1 = 𝛼 − 𝛽 (2.45)
Fazendo então a tangente da diferença entre os ângulos 𝛼 e 𝛽 obtém em (2.46)
tg 𝛼 − 𝛽 = 𝑡𝑔 𝜃1 =𝑦 𝐿1+𝐿2𝑐𝑜𝑠𝜃2 −𝑥𝐿2𝑠𝑒𝑛𝜃2
𝑥 𝐿1+𝐿2𝑐𝑜𝑠𝜃2 +𝑦𝐿2𝑠𝑒𝑛𝜃2 (2.46)
Portanto, o ângulo 𝜃1 é dado por (2.47).
𝜃1 = 𝑎𝑟𝑐 𝑡𝑔 𝑦 𝐿1+𝐿2𝑐𝑜𝑠𝜃2 −𝑥𝐿2𝑠𝑒𝑛𝜃2
𝑥 𝐿1+𝐿2𝑐𝑜𝑠𝜃2 +𝑦𝐿2𝑠𝑒𝑛𝜃2 (2.47)
Observa-se que, para este exemplo, a solução se deu desta forma, porém para outros
casos pode ser que não seja encontrada uma solução, por isso, existem diversos
49
métodos descritos na literatura. Para mais informações consultar (SICILIANO et. al.,
2009; SPONG, HUTCHINSON, VIDYASASGAR, 2006; CRAIG, 2006; CORKE, 2011).
2.4.4. O Jacobiano de um Manipulador
Para a cinemática direta, tem-se uma relação do tipo 𝒓 = 𝑭 (𝒒 ), ou seja, a posição do
manipulador é função da posição das juntas (CRAIG, 2006; SANTOS, 2004).
Para a cinemática inversa, tem-se a relação inversa do tipo 𝒒 = 𝑭 −𝟏(𝒓 ), isto é, a
posição das juntas está em função da configuração espacial do manipulador (CRAIG,
2006; SANTOS, 2004).
Assim, se quisermos saber como relacionar as velocidades de cada junta do
manipulador, precisamos conhecer o conceito da matriz jacobiana que se relaciona
com as posições das juntas e do espaço operacional como em (2.48).
𝒅𝒓 = 𝑱 ∙ 𝒅𝒒 (2.48)
Pela equação (2.48) tem-se que as velocidades espaciais estão relacionadas com a
velocidade das juntas através da matriz jacobiana, que é definida para n juntas e m
variáveis cartesianas como em (2.49).
𝑱: =
𝜕𝑟1
𝜕𝑞1⋯
𝜕𝑟1
𝜕𝑞𝑛
⋮ ⋱ ⋮𝜕𝑟𝑚
𝜕𝑞1⋯
𝜕𝑟𝑚
𝜕𝑞𝑛
(2.49)
2.5. Dinâmica dos Manipuladores
A dinâmica diz respeito às forças requeridas para produzir movimento.
Aqui se analisa as equações do movimento para um manipulador e a maneira como se
produz, aplicando-se momentos de torção aos atuadores ou devido a forças externas
aplicadas ao manipulador.
2.5.1. Aceleração de um Corpo Rígido
Em qualquer instante no tempo, a velocidade linear 𝑣 e angular 𝜔 possuem derivadas
chamadas de aceleração linear 𝑣 (2.50) e angular 𝜔 (2.51), respectivamente.
𝑣 =𝑑𝑣
𝑑𝑡 (2.50)
𝜔 =𝑑𝜔
𝑑𝑡 (2.51)
50
2.5.2. Distribuição de Massas
A distribuição de massa de um corpo rígido com 1-DOF (um grau de liberdade) em
movimento rotacional está relacionada com o chamado momento de inércia.
Para um corpo rígido com mais graus de liberdade em movimento de rotação é
necessário saber de forma completa a distribuição de massa. Neste caso, a distribuição
de massa está relacionada com o tensor de inércia (2.52) (CRAIG, 2006).
𝑰 =
𝐼𝑥𝑥 −𝐼𝑥𝑦 −𝐼𝑥𝑧−𝐼𝑥𝑦 𝐼𝑦𝑦 −𝐼𝑦𝑧−𝐼𝑥𝑧 −𝐼𝑦𝑧 𝐼𝑧𝑧
(2.52)
Onde os elementos (momentos de inércia) do tensor de inércia são dados de (2.53) a
(2.58). A integração tripla é sobre o volume do corpo rígido, ou seja, em três
dimensões (𝑥, 𝑦, 𝑧). O tensor de inércia possui estrutura simétrica.
𝐼𝑥𝑥 = (𝑦2 + 𝑧2)𝜌𝑑𝑣 (2.53)
𝐼𝑦𝑦 = (𝑥2 + 𝑧2)𝜌𝑑𝑣 (2.54)
𝐼𝑧𝑧 = (𝑥2 + 𝑦2)𝜌𝑑𝑣 (2.55)
𝐼𝑥𝑦 = 𝑥𝑦𝜌𝑑𝑣 (2.56)
𝐼𝑥𝑧 = 𝑥𝑧𝜌𝑑𝑣 (2.57)
𝐼𝑦𝑧 = 𝑦𝑧𝜌𝑑𝑣 (2.58)
2.5.3. Formulação Lagrangeana da Dinâmica dos Manipuladores
Para análise de sistemas mecânicos mais complexos, tais como um manipulador
robótico, é mais usual utilizar a mecânica de Lagrange, pois é mais apropriada do que a
mecânica newtoniana. Para informações básicas sobre a mecânica lagrangeana
consultar o ANEXO III.
Tomando a energia cinética do i-ésimo link como em (2.59).
𝑘𝑖 =1
2𝑚𝑖𝒗𝑖
𝑇𝒗𝑖 +1
2𝝎𝑖
𝑇𝑰𝑖𝝎𝑖 (2.59)
Onde o primeiro termo de (2.59) diz respeito à velocidade linear do link e o segundo
termo a velocidade angular. Os elementos da equação (2.59) são vetores ou matrizes
devido ao fato de se obter as velocidades através da matriz jacobiana em (2.48).
A energia cinética total (k) para um manipulador de n links e dada conforme (2.60).
51
𝑘 = 𝑘𝑖𝑛𝑖=1 (2.60)
Aqui se considera 𝑘 como uma função 𝑘(𝛉, 𝛉 ) conforme mostrado em (CRAIG, 2006),
onde 𝜽 é o vetor de ângulos da articulação do manipulador.
A energia potencial do i-ésimo link é dada por (2.61).
𝑢𝑖 = −𝑚𝑖𝒈𝑇𝑷𝑖 + 𝑢𝑟𝑒𝑓𝑖
(2.61)
onde 𝒈 é o vetor de gravidade (3x1), 𝑷 é o vetor direção partindo do centro de
gravidade do corpo rígido e 𝑢𝑟𝑒𝑓 é uma constante que escolhida de tal forma que o
mínimo de 𝑢𝑖 seja zero (CRAIG, 2006).
A energia potencial total (u) para n links é dada por (2.62).
𝑢 = 𝑢𝑖𝑛𝑖=1 (2.62)
Aqui se considera 𝑢 como uma função 𝑢(𝛉) conforme (CRAIG, 2006).
A função lagrangeana é dada por (2.63).
ℒ = 𝑘 − 𝑢 (2.63)
As equações dinâmicas de Euler-Lagrange para o manipulador robótico são dadas por
(2.64).
𝑑
𝑑𝑡
𝜕ℒ
𝜕𝛉 −
𝜕ℒ
𝜕𝛉= 𝝉 (2.64)
onde 𝝉 é um vetor (3x1) de momentos de torção aplicados aos atuadores do
manipulador (CRAIG, 2006).
a) Exemplo (CRAIG, 2006 – Exemplo 6.5 – Página 183)
Os links de um manipulador rotacional - prismático da Figura 2.31, tem os tensores de
inércia dados por (2.65) e (2.66) e massas totais de 𝑚1 e 𝑚2.
𝑰𝟏 =
𝐼𝑥𝑥1 0 00 𝐼𝑦𝑦1 0
0 0 𝐼𝑧𝑧1
(2.65)
𝑰𝟐 =
𝐼𝑥𝑥2 0 00 𝐼𝑦𝑦2 0
0 0 𝐼𝑧𝑧2
(2.66)
52
Figura 2.31 – Manipulador Robótico Rotacional – Prismático (CRAIG, 2006).
O centro de massas do link 1 se encontra a uma distância 𝑙1 do eixo da articulação 1 e
o centro de massas do link 2 se encontra a uma distância variável 𝑑2 do eixo da
articulação 1. Use a dinâmica lagrangeana para determinar as equações de movimento
para o manipulador.
Pode-se escrever a energia cinética do link 1 como em (2.67).
𝑘1 =1
2𝑚1𝑙1
2𝜃 12 +
1
2𝐼𝑧𝑧1𝜃 1
2 (2.67)
E a energia cinética do link 2 como (2.68).
𝑘2 =1
2𝑚2 𝑑2
2𝜃 12 + 𝑑 2
2 +1
2𝐼𝑧𝑧2𝜃 1
2 (2.68)
Portanto, a energia cinética total é dada por (2.69).
𝑘 𝜽, 𝜽 = 1
2𝑚2 𝑑2
2𝜃 12 + 𝑑 2
2 +1
2𝐼𝑧𝑧2𝜃 1
2 +1
2𝑚1𝑙1
2𝜃 12 +
1
2𝐼𝑧𝑧1𝜃 1
2 (2.69)
A energia potencial do link 1 é dada por (2.70).
𝑢1 = 𝑚1𝑙1𝑔𝑠𝑒𝑛(𝜃1) + 𝑚1𝑙1𝑔 (2.70)
E a energia potencial do link 2 (2.71).
𝑢2 = 𝑚2𝑔𝑑2𝑠𝑒𝑛 𝜃1 + 𝑚2𝑔𝑑2𝑚𝑎𝑥 (2.71)
onde 𝑑2𝑚𝑎𝑥 é a extensão máxima da articulação 2 prismática. Portanto, a energia
potencial total do sistema é dada por (2.72).
𝑢 = 𝑚2𝑔𝑑2𝑠𝑒𝑛 𝜃1 + 𝑚2𝑔𝑑2𝑚𝑎𝑥 + 𝑚1𝑙1𝑔𝑠𝑒𝑛(𝜃1) + 𝑚1𝑙1𝑔 (2.72)
Calculando as derivadas parciais da equação de Euler-Lagrange (2.73), onde 𝜽 = 𝜃1
𝜃2 é
o vetor de ângulos das articulações:
53
𝑑
𝑑𝑡
𝜕𝑘
𝜕𝛉 −
𝜕𝑘
𝜕𝛉+
𝜕𝑢
𝜕𝜽= 𝝉 (2.73)
𝜕𝑘
𝜕𝛉 =
(𝑚1𝑙12 + 𝐼𝑧𝑧1 + 𝐼𝑧𝑧2 + 𝑚2𝑑2
2)𝜃1
𝑚2𝑑2 (2.74)
𝜕𝑘
𝜕𝛉=
0
𝑚2𝑑2𝜃12 (2.75)
𝜕𝑢
𝜕𝛉=
𝑔(𝑚1𝑙1 + 𝑚2𝑑2)cos(𝜃1)𝑔𝑚2sen(𝜃1)
(2.76)
Portanto, podem-se escrever as equações do movimento para o manipulador robótico-
prismático em (2.77) e (2.78).
𝜏1 = 𝑚1𝑙12 + 𝐼𝑧𝑧1 + 𝐼𝑧𝑧2 + 𝑚2𝑑2
2 𝜃 1 + 2𝑚2𝑑2𝜃 1𝑑2 + 𝑚1𝑙1 + 𝑚2𝑑2 𝑔𝑐𝑜𝑠(𝜃1) (2.77)
𝜏2 = 𝑚2𝑑2 − 𝑚2𝑑2𝜃1
2 + 𝑚2𝑔𝑠𝑒𝑛(𝜃1) (2.78)
2.6. Geração de Trajetórias
Apresenta-se aqui, de forma resumida, um método para o cálculo da trajetória que
descreve o movimento de um manipulador no espaço multidimensional. Entende-se
por trajetória o histórico no tempo da posição, velocidade e aceleração para cada grau
de liberdade (CRAIG, 2006).
2.6.1. Tipos de Movimentos
a) Ponto a Ponto
É o movimento em que o end-effector executa entre dois pontos em repouso no
espaço de trabalho.
b) Trajetória Contínua
É o movimento em que o end-effector obedece no espaço operacional a critérios
temporais precisos.
2.6.2. Função para a Continuidade da Velocidade
Tomando o caso mais simples, tem-se uma posição de partida e outra posição de
chegada, e as velocidades inicial e final iguais a zero, isto é, toma-se 𝜃 𝑡 = 0 para
𝑡 = 𝑡𝑖 e 𝑡 = 𝑡𝑓 , onde 𝑡𝑖 é o tempo inicial e 𝑡𝑓 é o tempo final.
Por simplicidade, escolhe-se como função um polinômio em t. Como a velocidade tem
duas raízes, portanto será um polinômio de grau dois (2.80), a posição de grau três
(2.79) e a aceleração será um polinômio de grau um (2.81), conforme mostrado em
(CRAIG, 2006).
54
𝜃 𝑡 = 𝑎0 + 𝑎1𝑡 + 𝑎2𝑡2 + 𝑎3𝑡
3 (2.79)
𝜃 𝑡 = 𝑎1 + 2𝑎2𝑡 + 3𝑎3𝑡2 (2.80)
𝜃 𝑡 = 2𝑎2 + 6𝑎3𝑡 (2.81)
A Figura 2.32 mostra os gráficos no tempo para a posição, velocidade e aceleração.
Figura 2.32 – Posição, Velocidade e Aceleração (CRAIG, 2006).
Torna-se necessário, agora, determinar os termos 𝑎0, 𝑎1,𝑎2 e 𝑎3 na equação (2.79).
Toma-se, portanto que 𝜃 0 = 𝜃0 , 𝜃 𝑡𝑓 = 𝜃𝑓 , 𝜃 0 = 0 e 𝜃 𝑡𝑓 = 0.
Combinando as equações (2.80) e (2.81) temos que: 𝜃0 = 𝑎0 (2.82)
𝜃𝑓 = 𝑎0 + 𝑎1𝑡𝑓 + 𝑎2𝑡𝑓2 + 𝑎3𝑡𝑓
3 (2.83)
0 = 𝑎1 (2.84)
0 = 𝑎1 + 2𝑎2𝑡𝑓 + 3𝑎3𝑡𝑓2 (2.85)
Resolvendo as equações de (2.82) a (2.85) temos:
𝑎0 = 𝜃0 (2.86)
𝑎1 = 0 (2.87)
𝑎2 =3
𝑡𝑓2 (𝜃𝑓 − 𝜃0) (2.88)
𝑎3 =−2
𝑡𝑓3 (𝜃𝑓 − 𝜃0) (2.89)
Existem outras formas de se expressar a trajetória realizada por um manipulador
robótico, incluindo polinômios de grau maior do que três e métodos heurísticos
(aproximados) de análise (CRAIG, 2006).
A seguir será apresentado um exercício para exemplificar melhor o assunto.
55
a) Exemplo (CRAIG, 2006 Exemplo 7.1, Página 205)
Um robô de 1-DOF com articulação giratória esta em repouso a 𝜃 = 15°. Deseja-se
mover a articulação de maneira uniforme até 𝜃 = 75° em 3 segundos. Encontre os
coeficientes da equação cúbica que realize este movimento e leve o manipulador para
seu destino.
Utilizando as equações (2.86) à (2.89) temos que:
𝑎0 = 𝜃0 = 15 (2.90)
𝑎1 = 0 (2.91)
𝑎2 =3
𝑡𝑓2 𝜃𝑓 − 𝜃0 = 20 (2.92)
𝑎3 =−2
𝑡𝑓3 𝜃𝑓 − 𝜃0 = −4.44 (2.93)
A partir das equações podem-se escrever as funções posição, velocidade e aceleração.
𝜃 𝑡 = 15 + 20𝑡2 − 4.44𝑡3 (2.94)
𝜃 𝑡 = 40𝑡 − 13.33𝑡2 (2.95)
𝜃 𝑡 = 40 − 26.66𝑡 (2.96)
2.7. Teoria de Controle LQR (Linear Quadratic Regulator – Regulador
Quadrático Linear)
Neste trabalho, será utilizada a teoria de controle em espaço de estados, pois é mais
adequada para a aplicação com manipuladores robóticos do que as baseadas na
relação entrada-saída ou função de transferência, também chamada de modelo no
domínio da frequência.
Seja um sistema linear invariante no tempo (SLIT) com única entrada-saída (SISO –
single input - single output); este sistema pode ser representado por (2.97) (OGATA,
2010; DORF, BISHOP, 2010).
𝒙 = 𝑨𝒙 + 𝑩𝒖, 𝒙 0 = 𝒙𝟎
𝒚 = 𝑪𝒙 + 𝑫𝒖 (2.97)
onde 𝒙 𝑡 denota o vetor de estados em ℝ𝑛 , 𝒖(𝑡) representa o vetor de controle em
ℝ𝑝 , 𝒚 𝑡 representa o processo de saída em ℝ𝑚 . Sendo que n, p e m são dimensões
apropriadas para as matrizes.
56
Se o par (A, B) é controlável, isto é, se o rank (número de linhas linearmente
independentes) da matriz de controlabilidade (2.98)(OGATA, 2010; DORF, BISHOP,
2010) equivale ao número total de estados do sistema (2.99), e se o par (A, C) é
observável, isto é, se o rank da matriz de observabilidade (2.100) (OGATA, 2010; DORF,
BISHOP, 2010) equivaler ao número total de estados do sistema (2.101), então o
método de controle LQR pode ser utilizado para encontrar o ganho de realimentação
de estado em malha fechada 𝑲.
𝓒 ≔ [𝑩 𝑨𝑩 𝑨𝟐𝑩… 𝑨𝒏𝑩] (2.98)
𝑟𝑎𝑛𝑘 𝓒 = 𝑛 (2.99)
𝓞 ≔ 𝑪 𝑪𝑨 𝑪𝑨𝟐 … 𝑪𝑨𝒏 𝑇 (2.100)
𝑟𝑎𝑛𝑘 𝓞 = 𝑛 (2.101)
Deve-se encontrar uma lei de controle 𝒖 𝑡 ≔ −𝑲𝒙(𝑡) de tal forma que minimize o
índice de desempenho do sistema ou função custo (2.102).
𝐽 = 𝒙 𝑡 𝑇𝑸𝒙 𝑡 + 𝒖 𝑡 𝑇𝑹𝒖 𝑡 𝑑𝑡∞
0 (2.102)
onde (∙)𝑇 é o operador transposto e 𝑸 e 𝑹 são matrizes de peso, que afetam como a
função custo é minimizada (OGATA, 2010).
Dado a lei de controle 𝒖 𝑡 , a representação em espaço de estado se torna (2.103)
(OGATA, 2010).
𝒙 = 𝑨𝒙 + 𝑩 −𝑲𝒙 = 𝑨 − 𝑩𝑲 𝒙 (2.103)
Para seguir com as demonstrações, considera-se que a matriz 𝑨 − 𝑩𝑲 é estável, isto é,
os autovalores de 𝑨 − 𝑩𝑲 têm parte real negativa.
Substituindo a equação de 𝒖 𝑡 no índice de desempenho fica como em (2.104).
Deve-se observar aqui a propriedade matricial que diz que 𝑨𝑩 𝑇 = 𝑩𝑇𝑨𝑇 .
𝐽 = (𝒙𝑇∞
0𝑸𝒙 + 𝒙𝑇𝑲𝑇𝑹𝑲𝒙)𝑑𝑡 = 𝒙𝑇 𝑸 + 𝑲𝑇𝑹𝑲 𝒙𝑑𝑡
∞
0 (2.104)
Agora considerando (2.105) podemos definir:
𝒙𝑇 𝑸 + 𝑲𝑇𝑹𝑲 𝒙 = −𝑑
𝑑𝑡(𝒙𝑇𝑷𝒙) (2.105)
onde 𝑷 é uma matriz positiva definida ver ANEXO II. Então, resolvendo a derivada e
substituindo a equação (2.103) e sua transposta, chega-se em (2.106).
𝒙𝑇 𝑸 + 𝑲𝑇𝑹𝑲 𝒙 = −𝒙 𝑇𝑷𝒙 − 𝒙𝑇𝑷𝒙 = −𝒙𝑇 𝑨 − 𝑩𝑲 𝑇𝑷 + 𝑷 𝑨 − 𝑩𝑲 𝒙
(2.106)
57
Comparando-se ambos os lados da equação (2.106), vê-se que:
𝑨 − 𝑩𝑲 𝑇𝑷 + 𝑷 𝑨 − 𝑩𝑲 = −(𝑸 + 𝑲𝑇𝑹𝑲) (2.107)
Caso a matriz 𝑨 − 𝑩𝑲 seja estável, então existe uma matriz positiva definida 𝑷 que
satisfaz a equação (2.107) (OGATA, 2010).
O procedimento é determinar a matriz 𝑷. Se o sistema é estável, existe uma matriz 𝑷
positiva definida que satisfaz a equação (2.60). Isso significa que resolvendo a equação
e encontrando uma matriz 𝑷 definida positiva então o sistema é estável (OGATA,
2010).
Então o índice de desempenho 𝐽 pode ser calculado como em (2.108).
𝐽 = 𝒙𝑇 𝑸 + 𝑲𝑇𝑹𝑲 𝒙𝑑𝑡 = 𝒙𝑇 0 𝑷𝒙(0)∞
0 (2.108)
Desta forma, o índice de desempenho 𝐽 pode ser obtido em termos da condição inicial
do vetor de estado e a matriz 𝑷 (OGATA, 2010; DORF, BISHOP, 2010).
Para obter a solução do problema de controle ótimo quadrático, procede-se com se
segue a partir de agora. Seja 𝑹 assumida uma matriz positiva definida; pode-se
escrever então a equação (2.109) (OGATA, 2010).
𝑹 = 𝑻𝑇𝑻 (2.109)
onde 𝑻 é uma matriz não singular, ou seja, 𝑻 sempre admite uma matriz inversa. Então
a equação (2.107) pode ser rescrita como em (2.110).
𝑨𝑇 − 𝑲𝑇𝑩𝑇 𝑷 + 𝑷 𝑨 − 𝑩𝑲 + 𝑸 + 𝑲𝑇𝑻𝑇𝑻𝑲 = 𝟎 (2.110)
Reescrevendo como em (2.111) (OGATA, 2010).
𝑨𝑇𝑷 + 𝑷𝑨 + 𝑻𝑲 − 𝑻𝑇 −𝟏𝑩𝑇𝑷 𝑇 𝑻𝑲 − 𝑻𝑇 −𝟏𝑩𝑇𝑷 − 𝑷𝑩𝑹−𝟏𝑩𝑇𝑷 + 𝑸 = 𝟎
(2.111)
A minimização de 𝐽 com relação a 𝑲 requer a minimização de (2.112) com respeito a
𝑲.
𝒙𝑇 𝑻𝑲 − 𝑻𝑇 −𝟏𝑩𝑇𝑷 𝑇 𝑻𝑲 − 𝑻𝑇 −𝟏𝑩𝑇𝑷 𝒙 (2.112)
Desde que a última equação seja não negativa, então o mínimo ocorre quando 𝑲 é
zero ou quando,
𝑻𝑲 = 𝑻𝑇 −𝟏𝑩𝑇𝑷. (2.113)
Então,
𝑲 = 𝑻−𝟏 𝑻𝑇 −𝟏𝑩𝑇𝑷 = 𝑹−𝟏𝑩𝑇𝑷. (2.114)
58
A equação (2.114) fornece a matriz ótima 𝑲. Desta forma, a lei de controle ótima para
o problema de controle ótimo quadrático é dada em (2.115) (OGATA, 2010).
𝒖 𝒕 = −𝑲𝒙 𝑡 = −𝑹−𝟏𝑩𝑇𝑷𝒙 𝑡 , (2.115)
onde a matriz 𝑷 deve satisfaz a seguinte equação:
𝑨𝑇𝑷 + 𝑷𝑨 − 𝑷𝑩𝑹−𝟏𝑩𝑇𝑷 + 𝑸 = 𝟎. (2.116)
A equação (2.116) é chamada de Equação Matricial de Riccati.
O problema do controle ótimo quadrático LQR pode ser resolvido pelo software
MATLAB® utilizando a função:
𝑲, 𝑷, 𝑬 = 𝑙𝑞𝑟 𝑨, 𝑩, 𝑸, 𝑹 ,
onde 𝑲 é a matriz de ganho ótima, 𝑷 é matriz positiva definida solução da equação de
Riccati e 𝑬 são os pólos de malha fechada, isto é, os autovalores da matriz 𝑨 − 𝑩𝑲.
2.8. Conclusão Parcial
Neste capítulo foram apresentadas as ferramentas básicas, para a modelagem de
sistemas robóticos com maior foco nos manipuladores robóticos industriais. Por fim,
foi apresentada a teoria básica dos controladores LQR.
No próximo capítulo será dada uma ideia geral sobre o Robô DENSO® 6-DOF VP-6242 e
também apresentado a modelagem matemática, montagem e calibração do Link
Flexível 1-DOF da QUANSER®
59
3. DESENVOLVIMENTO E METODOLOGIA
Este capítulo apresenta uma ideia geral sobre o Robô DENSO® 6-DOF VP-6242 e
também a modelagem matemática, montagem, calibração e testes do Link Flexível 1-
DOF da empresa QUANSER®.
3.1. Manipulador DENSO® 6-DOF
3.1.1. Uma ideia geral sobre o Robô DENSO® 6-DOF VP-6242
O robô DENSO® VP-6242 possui 6-DOF (seis graus de liberdade) e seus movimentos
podem ser vistos pela Figura 3.1.
Figura 3.1 – Robô DENSO® com seus Seis Graus de Liberdade (QUANSER, 2013).
O robô está ligado a um módulo de controle, como já foi dito anteriormente,
possuindo seis controladores PID internos, isto é, um controlador PID para cada junta
em nível de software e toda uma interface de potência, possuindo seis amplificadores,
isto é, um amplificador para cada junta. Também tem uma comunicação com um
computador pessoal de onde saem todos os comandos para o robô. Neste computador
pessoal, estão os programas com os quais o robô pode operar. Vale ressaltar que o
controlador e os programas possuem arquitetura aberta, o que possibilita a sua
modificação e construção de outros modelos livremente (QUANSER, 2013). Esta é a
configuração básica para que o robô funcione.
60
A Figura 3.2 mostra o módulo de controle do robô, chamado de RC7M (QUANSER,
2013). Para obter mais informações consulte os manuais relacionados com o robô
(QUANSER, 2013; QUANSER, 2011a; QUANSER, 2011e).
Figura 3.2 – Módulo de Controle do Robô DENSO® 6-DOF (QUANSER, 2013).
A seguir, há uma foto real do manipulador na Figura 3.3, mostrando a sua estrutura
externa com mais detalhes.
Figura 3.3 – O Robô DENSO® VP-6242 6-DOF (QUANSER, 2013).
Todas as juntas do manipulador são acionadas por servomotores AC (corrente
alternada) e também possuem freios em cada junta para frenagem dos movimentos
caso necessário (QUANSER, 2013).
3.1.2. Parâmetros de Denavit-Hartenberg (Cinemática Direta)
Os parâmetros de Denavit-Hartenberg (D-H) do manipulador robótico DENSO® 6-DOF
são dados pela Tabela 3.1 (QUANSER, 2013).
61
𝒊 − 𝒆𝒔𝒊𝒎𝒂 𝑱𝒖𝒏𝒕𝒂 𝜃𝑖 𝑑𝑖 𝑎𝑖−1 𝛼𝑖−1 1 𝑞1 𝑙1𝑧 𝑙1𝑥 𝜋/2 2 𝑞2 + 𝜋/2 0 𝑙2 0
3 𝑞3 − 𝜋/2 0 −𝑙3𝑥 −𝜋/2 4 𝑞4 𝑙1𝑧 + 𝑙4 0 𝜋/2 5 𝑞5 0 0 −𝜋/2 6 𝑞6 𝑙5 0 0
Tabela 3.1 – Parâmetros de D-H para o Robô DENSO 6-DOF.
onde 𝑙1𝑧 = 0.125 𝑚, 𝑙1𝑥 = 0, 𝑙2 = 0.210 𝑚, 𝑙3𝑥 = 0.075 𝑚, 𝑙4 = 0.122 𝑚 e
𝑙5 = 0.070 𝑚
Utilizando os cálculos dos parâmetros de D-H podemos dizer em (3.1) (QUANSER,
2013).
𝑨𝒊 = 𝑨𝑹𝒛 ∙ 𝑨𝑻𝒛 ∙ 𝑨𝑻𝒙 ∙ 𝑨𝑹𝒙 = 𝑫𝑯(𝜃𝑖 , 𝑑𝑖 , 𝑎𝑖−1, 𝛼𝑖−1) (3.1)
onde 𝑨𝑹𝒛 é a matriz de rotação em torno do eixo z, 𝑨𝑻𝒛 é a matriz de translação em
relação ao eixo z, 𝑨𝑻𝒙 é a matriz de translação em relação ao eixo x e 𝑨𝑹𝒙 é a matriz de
rotação em torno do eixo x (SANTOS, 2004).
Portanto, 𝑻𝟔 = 𝑨𝟏 ∙ 𝑨𝟐 ∙ 𝑨𝟑 ∙ 𝑨𝟒 ∙ 𝑨𝟓 ∙ 𝑨𝟔 é a transformação até o end-effector com
relação à base do robô DENSO®, quando nenhuma ferramenta está anexada ao
manipulador.
No caso de se utilizar uma ferramenta a matriz de transformação se torna a equação
(3.2).
𝑻𝑬𝑬 = 𝑻𝟔 ∙ 𝑻𝑻𝒐𝒐𝒍 (3.2)
onde 𝑻𝑻𝒐𝒐𝒍 é a matriz de transformação relacionada à ferramenta (QUANSER, 2013).
3.1.3. Matriz Jacobiana
A matriz Jacobiana 𝑱 do manipulador é dada por (3.3) (QUANSER, 2013).
𝑱 =
𝒛𝟎 ∙ (𝒑 − 𝒑𝟎) 𝒛𝟏 ∙ 𝒑 − 𝒑𝟏 𝒛𝟐 ∙ 𝒑 − 𝒑𝟐 𝒛𝟑 ∙ 𝒑 − 𝒑𝟑 𝒛𝟒 ∙ 𝒑 − 𝒑𝟒 𝒛𝟓 ∙ 𝒑 − 𝒑𝟓 𝒛𝟔 ∙ (𝒑 − 𝒑𝟔)
𝒛𝟎 𝒛𝟏 𝒛𝟐 𝒛𝟑 𝒛𝟒 𝒛𝟓 𝒛𝟔
(3.3)
onde 𝒛𝟎 = 0 0 0 𝑇 , 𝒑𝟎 = 0 0 0 𝑇 , 𝒛𝒊 = 𝑻𝒊 1: 3,3 𝑇 , 𝒑𝒊 = 𝑻𝒊 1: 3,4 , sendo que
𝑻𝒊 = 𝑨𝟏 × ⋯ × 𝑨𝒊 e 𝒑 = 𝑻𝑬𝑬(1: 3,4) onde 𝑖 = 1, ⋯ ,6 (QUANSER, 2013).
62
3.2. Sistema Link Flexível (1-DOF)
Para melhor compreensão do estudo da robótica, inicia-se com as aplicações em um
manipulador de um grau de liberdade (1-DOF). Este tipo de manipulador é o mais
simples e possibilita melhor visualização prática.
A modelagem matemática é muito importante, pois, permite obter o modelo em
espaço de estados, que é necessário para o projeto do controlador.
3.2.1. Modelagem Matemática do Sistema QUANSER® de um Link (1-DOF)
Para fazer a modelagem matemática do sistema, considera-se o modelo massa-mola
conforme (ARAÚJO, SOUZA, FENILI, 2011), mostrado na Figura 3.4.
Figura 3.4 – Modelo Massa-Mola (ARAÚJO, SOUZA, FENILI, 2011).
Admite-se que a dinâmica do link flexível (1-DOF) pode ser aproximada pelo sistema
massa-mola. Os efeitos da flexibilidade do link estão associados aos efeitos de
flexibilidade da mola (ARAÚJO, SOUZA, FELINI, 2011).
O esquema do link flexível pode ser visto pela Figura 3.5 (QUANSER, 2011c).
Figura 3.5 – Esquema do Link Flexível mostrando seus ângulos (QUANSER, 2011c).
63
Define-se em (3.4) a deflexão do link 𝛼, onde 𝑙 é o comprimento do link e 𝐷 é a
distância que o link defletiu em relação ao repouso.
𝛼 =𝐷
𝑙 (3.4)
A equação para a rotação da mola é dada por (3.5), onde 𝐽𝑎𝑟𝑚 é o momento de inércia
do link e 𝐾𝑠𝑡𝑖𝑓𝑓 é o coeficiente de rigidez do link.
𝐽𝑎𝑟𝑚 𝛼 = −𝐾𝑠𝑡𝑖𝑓𝑓 𝛼 (3.5)
Para obter 𝐾𝑠𝑡𝑖𝑓𝑓 , deve-se medir a freqüência natural de oscilação livre do sistema
(QUANSER, 2011c).
A partir disto, pode-se escrever também:
𝛼 = −𝜔𝑐2𝛼 (3.6)
Combinando as equações (3.5) e (3.6) tem-se a equação (3.7).
𝐾𝑠𝑡𝑖𝑓𝑓 = 𝜔𝑐2𝐽𝑎𝑟𝑚 (3.7)
O momento de inércia do link, considerando o modelo adotado, é dado por (3.8), onde
𝑚 é a massa do link e 𝑙 é o comprimento do link (QUANSER, 2011c).
𝐽𝑎𝑟𝑚 =𝑚𝑙2
3 (3.8)
Agora, escrevendo as equações do modelo dinâmico e considerando a mecânica
lagrangeana (QUANSER, 2011c; ARAÚJO, SOUZA, FENILI, 2011), o cálculo da energia
potencial no sistema é dado por (3.9).
𝑉 =𝐾𝑠𝑡𝑖𝑓𝑓 𝛼2
2 (3.9)
A energia potencial do sistema é apenas da mola do modelo da Figura 3.4.
O cálculo da energia cinética do sistema é dado por (3.10).
𝑇 =𝐽𝑒𝑞 𝜃 2
2+
𝐽𝑎𝑟𝑚 𝜃 +𝛼 2
2 (3.10)
A energia cinética tem uma parcela da haste e outra devido à base. Define-se que 𝜃 é o
ângulo em que o link se movimenta.
Desta forma, pode-se escrever a função lagrangeana no ANEXO III do sistema como em
(3.11).
ℒ =𝐽𝑒𝑞 𝜃 2
2+
𝐽𝑎𝑟𝑚 𝜃 +𝛼 2
2−
𝐾𝑠𝑡𝑖𝑓𝑓 𝛼2
2 (3.11)
64
Sabendo que temos duas coordenadas generalizadas no sistema 𝜃 e 𝛼, então há duas
equações para o sistema dinâmico (3.12) e (3.13).
𝑑
𝑑𝑡 𝜕ℒ
𝜕𝜃 −
𝜕ℒ
𝜕𝜃= 𝑇𝑜𝑢𝑡 − 𝐵𝑒𝑞𝜃 (3.12)
𝑑
𝑑𝑡 𝜕ℒ
𝜕𝛼 −
𝜕ℒ
𝜕𝛼= 0 (3.13)
Resolvendo a equação (3.12) temos em (3.14).
𝑑
𝑑𝑡
𝜕
𝜕𝜃 (𝐽𝑒𝑞 𝜃 2
2+
𝐽𝑎𝑟𝑚 𝜃 +𝛼 2
2−
𝐾𝑠𝑡𝑖𝑓𝑓 𝛼2
2) −
𝜕
𝜕𝜃(𝐽𝑒𝑞 𝜃 2
2+
𝐽𝑎𝑟𝑚 𝜃 +𝛼 2
2−
𝐾𝑠𝑡𝑖𝑓𝑓 𝛼2
2) = 𝑇𝑜𝑢𝑡 −
𝐵𝑒𝑞𝜃
(3.14)
Expandindo, fica então como em (3.15).
𝑑
𝑑𝑡
𝜕
𝜕𝜃 (𝐽𝑒𝑞 𝜃 2
2+
𝐽𝑎𝑟𝑚 𝜃 2+2𝜃 𝛼 +𝛼 2
2−
𝐾𝑠𝑡𝑖𝑓𝑓 𝛼2
2) − 0 = 𝑇𝑜𝑢𝑡 − 𝐵𝑒𝑞𝜃 (3.15)
𝑑
𝑑𝑡 𝐽𝑒𝑞𝜃 + 𝐽𝑎𝑟𝑚 (𝜃 + 𝛼 ) = 𝑇𝑜𝑢𝑡 − 𝐵𝑒𝑞𝜃 (3.16)
𝐽𝑒𝑞𝜃 + 𝐽𝑎𝑟𝑚 (𝜃 + 𝛼 ) = 𝑇𝑜𝑢𝑡 − 𝐵𝑒𝑞𝜃 (3.17)
Portanto, a equação dinâmica em relação à coordenada generalizada 𝜃 é dada por
(3.17).
Agora resolvendo para a equação (3.13) chega-se em (3.18).
𝑑
𝑑𝑡
𝜕
𝜕𝛼 (𝐽𝑒𝑞 𝜃 2
2+
𝐽𝑎𝑟𝑚 𝜃 +𝛼 2
2−
𝐾𝑠𝑡𝑖𝑓𝑓 𝛼2
2) −
𝜕
𝜕𝛼(𝐽𝑒𝑞 𝜃 2
2+
𝐽𝑎𝑟𝑚 𝜃 +𝛼 2
2−
𝐾𝑠𝑡𝑖𝑓𝑓 𝛼2
2) = 0
(3.18)
Resolvendo (3.18) temos que em (3.19).
𝑑
𝑑𝑡(
𝜕
𝜕𝛼 𝐽𝑒𝑞 𝜃 2
2+
𝐽𝑎𝑟 𝑚 𝜃 +𝛼 2
2−
𝐾𝑠𝑡𝑖𝑓𝑓 𝛼2
2 ) + 𝐾𝑠𝑡𝑖𝑓𝑓 𝛼 = 0 (3.19)
Portanto, chega-se a equação dinâmica em relação à coordenada generalizada 𝛼
(3.20).
𝐽𝑎𝑟𝑚 𝜃 + 𝛼 + 𝐾𝑠𝑡𝑖𝑓𝑓 𝛼 = 0 (3.20)
O torque de saída do sistema é dado por (3.21) (QUANSER, 2011c; ARAÚJO, SOUZA,
FENILI, 2011).
65
𝑇𝑜𝑢𝑡 =𝜂𝑚 𝜂𝑔𝑘𝑡𝑘𝑔(𝑉𝑚 −𝑘𝑔𝑘𝑚 𝜃)
𝑅𝑚 (3.21)
Substituindo (3.21) na equação (3.17) tem-se (3.22) e (3.23).
𝜃 = −𝜂𝑚 𝜂𝑔𝑘𝑡𝑘𝑔
2𝑘𝑚−𝐵𝑒𝑞𝑅𝑚
𝐽𝑒𝑞 𝑅𝑚 𝜃 +
𝐾𝑠𝑡𝑖𝑓𝑓 𝛼
𝐽𝑒𝑞+
𝜂𝑚 𝜂𝑔𝑘𝑡𝑘𝑔𝑉𝑚
𝐽𝑒𝑞 𝑅𝑚 (3.22)
𝛼 =−𝐾𝑠𝑡𝑖𝑓𝑓 (𝐽𝑎𝑟𝑚 +𝐽𝑒𝑞 )𝛼
𝐽𝑒𝑞 𝑅𝑚+
−𝜂𝑚 𝜂𝑔𝑘𝑡𝑘𝑔2𝑘𝑚 −𝐵𝑒𝑞𝑅𝑚
𝐽𝑒𝑞 𝑅𝑚 𝜃 −
𝜂𝑚 𝜂𝑔𝑘𝑡𝑘𝑔𝑉𝑚
𝐽𝑒𝑞 𝑅𝑚 (3.23)
Agora, pode se construir o modelo dinâmico na forma de Espaço de Estados, sem a
necessidade de utilizar nenhum método de linearização, pois as equações (3.22) e
(3.23) são lineares nas variáveis de estado 𝜃 e 𝛼, portanto temos que:
𝑥1 = 𝜃 , 𝑥1 = 𝜃 = 𝑥3 , 𝑥3 = 𝜃 , 𝑥2 = 𝛼 , 𝑥2 = 𝛼 = 𝑥4 , 𝑥4 = 𝛼
Colocando o sistema na forma de espaço de estados apresentada em (2.50), o
resultado final está mostrado na equação (3.24) conforme mostrado em (ARAÚJO,
SOUZA, FENILI, 2011).
𝜃
𝛼 𝜃
𝛼
=
0 0 1 0 0 0 0 1
0 𝐾𝑠𝑡𝑖𝑓𝑓
𝐽𝑒𝑞
−𝜂𝑚 𝜂𝑔𝑘𝑡𝑘𝑔2𝑘𝑚 +𝐵𝑒𝑞𝑅𝑚
𝐽𝑒𝑞 𝑅𝑚 0
0 −𝐾𝑠𝑡𝑖𝑓𝑓 (𝐽𝑎𝑟𝑚 +𝐽𝑒𝑞 )
𝐽𝑒𝑞 𝑅𝑚
𝜂𝑚 𝜂𝑔𝑘𝑡𝑘𝑔2𝑘𝑚 +𝐵𝑒𝑞𝑅𝑚
𝐽𝑒𝑞 𝑅𝑚 0
𝜃𝛼 𝜃
𝛼
+
00
𝜂𝑚 𝜂𝑔𝑘𝑡𝑘𝑔
𝐽𝑒𝑞 𝑅𝑚
−𝜂𝑚 𝜂𝑔𝑘𝑡𝑘𝑔
𝐽𝑒𝑞 𝑅𝑚
𝑉𝑚 ,
(3.24)
onde as constantes do modelo são dadas na Tabela 3.2 (QUANSER, 2011d; QUANSER, 2011c) e no APÊNDICE V. Sendo 𝜂𝑚 e 𝜂𝑔 a eficiência do motor e das engrenagens,
respectivamente; 𝑘𝑡 é a constante de torque do motor; 𝑘𝑔 é a razão de transmissão da
caixa de engrenagens somada com a razão transmissão das engrenagens externas; 𝑉𝑚 a tensão de alimentação do motor; 𝐾𝑚 a constante de força contra-eletromotriz e 𝑅𝑚 a resistência de armadura do motor (QUANSER, 2011d).
66
Constante Valor Unidade
𝐽𝑒𝑞 2.08 × 10−3 𝑘𝑔 ∙ 𝑚2
𝜂𝑚 0.69 − 𝜂𝑔 0.90 −
𝑘𝑡 7.68 × 10−3 𝑁 ∙ 𝑚/𝐴 𝑘𝑚 7.68 × 10−3 𝑉/(𝑟𝑎𝑑/𝑠) 𝑘𝑔 70 −
𝐵𝑒𝑞 4 × 10−3 𝑁 ∙ 𝑚/(𝑟𝑎𝑑/𝑠)
𝑅𝑚 2.6 Ω 𝑙 0.419 𝑚 𝑚 0.065 𝑘𝑔
Tabela 3.2 – Parâmetros Físicos do Modelo Link Flexível 1-DOF (QUANSER, 2011c;
QUANSER, 2011d).
3.2.2. Montagem do Sistema Link Flexível 1-DOF
Os principais componentes para a montagem do sistema Link Flexível 1-DOF são dados
pela Tabela 3.3 (QUANSER, 2011b).
Componente Denominação
1 Planta SRV02 (contém o motor DC)
2 Modulo FLEXGAGE
3 Link FLEXGAGE
4 Sensor Strain Gage
5 Circuito do Strain Gage
6 Engrenagens
7 Conector do Sensor
8 Potenciômetro de OFFSET
9 Potenciômetro de GANHO
Tabela 3.3 – Componentes para a Montagem do Link Flexível.
A Figura 3.6 mostra a montagem do link sobre o módulo SRV02 que contém o motor
DC e as engrenagens na configuração “High” conforme (QUANSER, 2011b). Na Figura
3.6 também há indicações sobre alguns componentes dados pela Tabela 3.3.
Figura 3.6 – Montagem SRV02 – Link Flexível (QUANSER, 2011b).
67
A Figura 3.7 mostra o circuito de condicionamento do Strain Gage (QUANSER, 2011b) e
também os dois Strain Gages na base do link. A numeração de referência está contida
na Tabela 3.3.
Figura 3.7 – Circuito de Condicionamento de Sinais do Strain Gage (QUANSER, 2011b).
Para a montagem do sistema, são necessários os seguintes componentes da empresa
QUANSER ® conforme (QUANSER, 2011b).
1. Amplificador de Potência (VoltPaq);
2. Placa de aquisição de dados: Q8-USB;
3. Planta do Link Flexível;
4. Planta Servo-Rotacional: SRV02;
5. Os cabeamentos utilizados são: 2xRCA to 2xRCA, 4-pin-DIN to 6-pin-DIN, 5-pin-
stereo-DIN to 5-pin-stereo-DIN,6-pin-mini-DIN to 6-pin-mini-DIN e 5-pin-DIN to
4xRCA, conforme mostrado em (QUANSER, 2011b);
O esquema da montagem pode ser visto pela Figura 3.8 (QUANSER, 2011b).
Figura 3.8 – Esquema com as ligações para o Experimento do Link Flexível (QUANSER,
2011b).
68
As conexões que devem ser feitas conforme (QUANSER, 2011b) são:
1- Conecte o cabo 2xRCA to 2xRCA do Analog Output#0 até o Amplifier
Comand;
2- Conecte o cabo 4-pin-DIN to 6-pin-DIN do To Load até Motor no módulo
SRV02;
3- Conecte o cabo 5-pin-stereo-DIN to 5-pin-stereo-DIN do Encoder do módulo
SRV02 até Input#0 na placa de aquisição de dados;
4- Conecte o To ADC até Analog Input #0 – 1 com cabo 5-pin-DIN to 4xRCA;
5- Conecte o S1/S2 do SRV02 ao S1/S2 do amplificador usando 6-pin-mini-DIN
to 6-pin-mini-DIN;
6- Conecte o conector do Strain Gauge até S3 usando cabo 6-pin-mini-DIN to
6-pin-mini-DIN.
Para maiores detalhes de conexão consultar o manual do flexgage (QUANSER,
2011b
3.2.3. Calibração do Sistema QUANSER® de 1-DOF
Antes de começar a aferição de dados, é necessário calibrar o sensor Strain Gage de
forma que faça a leitura correta da deflexão do link (QUANSER, 2011b).
Para realizar esta calibração, é necessário seguir os seguintes passos conforme
(QUANSER, 2011b):
Utilizando o pente da Figura 3.9, monte-o de forma que o link fique no meio do
pente, entre os dentes/slots;
Utilizando o programa da Figura 3.10 pode-se ler o sinal de tensão sobre o
Strain Gage que deve ser de 0 V, caso não seja ajuste o potenciômetro de
OFFSET mostrado na Figura 3.11 até conseguir 0 V de tensão na leitura do
programa;
O sinal de tensão sobre o Strain Gage deve ser de 1 V para cada 1 polegada de
deflexão do link no sentido anti-horário. Cada slot do pente mostrado na Figura
3.11 tem ¼ de polegada, portanto, para 4 slots tem-se 1 polegada. Caso o
sistema não esteja aferindo 1 V para a deflexão de 1 polegada, deve-se ajustar
o potenciômetro GAIN (GANHO) mostrado na Figura 3.11 até que se consiga o
valor esperado;
Retorne o link até o meio do pente, ele deve ler 0 V como calibrado
anteriormente, caso não esteja, ajuste novamente o potenciômetro OFFSET;
69
Figura 3.9 – Calibração e o uso do Pente (QUANSER, 2011b).
Figura 3.10 – Programa para Leitura da Tensão aferida pelo Strain Gage (QUANSER,
2011c).
Figura 3.11 – Posição dos Potenciômetros de OFFSET e GANHO no Circuito do Strain
Gage (QUANSER, 2011b).
70
3.2.4. Obtenção da Frequência Natural do Sistema QUANSER® 1-DOF
Para obter a Equação de Estados do sistema com seus respectivos valores, é necessário
aferir a frequência natural do link (QUANSER, 2011c). Por isto se obtém para o sistema
um modelo estimado, onde a Equação de Estado é estimada por depender destas
estimativas.
Seguindo os passos descritos abaixo é possível obter a frequência natural do sistema
conforme (QUANSER, 2011c):
Simule o programa da Figura 3.12;
Imediatamente provoque uma leve perturbação no link de forma que ele oscile
naturalmente;
Após 5 s de simulação os dados obtidos são como os mostrados na Figura 3.13
que é uma oscilação livre de um sistema de segunda ordem (QUANSER, 2011c);
Com a Figura 3.13, pode-se obter a freqüência natural 𝜔𝑐 do sistema e dessa
forma calcular também o valor de 𝐾𝑠𝑡𝑖𝑓𝑓 descrito no modelo dinâmico;
Estes valores estimados farão parte do modelo em Espaço de Estado, que será
estimado também e pode conter incertezas;
Figura 3.12 – Programa para Leitura da Frequência do Link (QUANSER, 2011c).
Figura 3.13 – Forma de Onda na Aferição da Frequência Natural do Link (QUANSER,
2011c).
71
3.2.5. Projeto do Controlador LQR aplicado ao Sistema de 1-DOF
O objetivo de projetar um controlador para o link flexível é minimizar a deflexão 𝛼 e
para que se tenha uma movimentação mais suave de forma que execute o ângulo 𝜃 da
forma desejada.
a) Calibração do Strain Gage do Link Flexível
O primeiro passo foi fazer a calibração do Strain Gage, para que se possam realizar
medidas corretas do sistema. Seguindo as regras que foram apresentadas
anteriormente, obteve-se a tensão em 0 V para a configuração correta do pente após
ajuste do potenciômetro de OFFSET. O sinal obtido está mostrado na Figura 3.14.
Figura 3.14 – Tensão de 0 V medida na calibração do Strain Gage.
Flexionando o link em 1 polegada (4 slots do pente de calibração), obteve-se, após
ajuste do potenciômetro de GANHO, o valor de tensão aproximado de 1 V como
mostra a Figura 3.15.
72
Figura 3.15 – Tensão aproximada 1 V aferida pelo Strain Gage quando Flexionado em 1
Polegada.
b) Estimação da Frequência Natural do Link e o Modelo em Espaço de Estados
Estimado
Após a calibração do Strain Gage, foi necessário fazer a estimação da frequência
natural do link flexível. A Figura 3.16 mostra a forma de onda obtida para a oscilação
livre do sistema.
73
Figura 3.16 – Forma de Onda Oscilante Medida para Estimação da Frequência Natural
do Link.
Pela oscilação mostrada na Figura 3.16, obteve-se como período o valor aproximado
de 𝑃𝑒𝑟 = 4.4 − 4.1 ≈ 0.3𝑠. Portanto, a frequência aproximada de oscilação livre
natural do link flexível é dada por (3.25).
𝑓𝑐 =1
𝑃𝑒𝑟≅ 3.33𝐻𝑧 (3.25)
Desta forma,
𝜔𝑐 = 2𝜋𝑓𝑐 ≅ 3.33𝜋 ≅ 21 𝑟𝑎𝑑/𝑠 (3.26)
A partir disto, pode-se calcular o valor de 𝐾𝑠𝑡𝑖𝑓𝑓 , sabendo que 𝐽𝑎𝑟𝑚 é dado por (3.27).
𝐽𝑎𝑟𝑚 =𝑚𝑙2
3≅ 3.804 × 10−3𝑘𝑔 ∙ 𝑚2 (3.27)
Assim,
𝐾𝑠𝑡𝑖𝑓𝑓 = 𝜔𝑐2𝐽𝑎𝑟𝑚 ≅ 1.677 (3.28)
A partir de agora foram encontrados os valores nas matrizes do espaço de estado,
resultando no espaço de estados estimado do sistema em (3.29).
74
𝜃
𝛼 𝜃
𝛼
=
0 0 1 0 0 0 0 1 0 806.25 − 31.2643 0
0 − 1247 35.1105 0
𝜃𝛼 𝜃
𝛼
+
00
61.7325−61.7325
𝑉𝑚 ,
(3.29)
onde
𝑨 =
0 0 1 0 0 0 0 1 0 806.25 − 31.2643 0
0 − 1247 35.1105 0
𝑩 =
00
61.7325−61.7325
, 𝑪 = 1 0 0 00 1 0 0
e 𝑫 = 00 ,
onde a escolha da matriz 𝑪 possibilita ter como saídas as variáveis 𝛼 e 𝜃.
c) Validação do Modelo em Espaço de Estados
Para validar o modelo em espaço de estados encontrado (3.29) no APÊNDICE IV pode-
se utilizar o programa da Figura 3.17.
Figura 3.17 – Programa que Permite a Validação do Modelo Estimado (QUANSER,
2011c).
Pela validação do modelo, observou-se certa discrepância entre o modelo real do
sistema e o modelo que foi estimado; isto faz com que se tenham incertezas
75
embutidas no modelo estimado. As Figuras (3.18) e (3.19) mostram os valores de 𝜃 e
𝛼 para os dois sistemas, o real (em verde) e o modelado (em azul) e podem-se verificar
as diferenças entre os valores. Estas diferenças podem ser entendidas como erros de
leitura dos sensores, além das estimações feitas para o cálculo do modelo em espaço
de estados.
Figura 3.18 – Validação do Modelo para Valores de 𝜃.
Figura 3.19 – Validação do Modelo para Valores de 𝛼.
76
d) Testes com Diversos Valores para a Matriz Peso 𝑸 do Controlador LQR
Aplicando-se o teste de observabilidade e controlabilidade (OGATA, 2010; DORF,
2010), observa-se que o sistema é controlável e observável, condições necessárias
para a aplicação da técnica LQR para o controle do link.
Os polos de malha aberta do sistema, isto é, os autovalores da matriz A são: 0,
−10.4503 ± 30.3510𝑗 e −10.3638.
Antes de projetar o controlador LQR, foram feitos testes para o melhor entendimento
do sistema variando em valores específicos a diagonal da matriz 𝑸 de peso do
controlador LQR.
Tomando constante e como um escalar a matriz 𝑹 = [1], portanto, foram utilizados
somente testes com as matrizes 𝑸.
Também foi utilizado um ângulo 𝜃 = 30° para a movimentação do link nos testes.
Para fazer simulações com estes valores de 𝑸, utilizou-se no MATLAB® o programa que
calcula a matriz 𝑲, a matriz 𝑷 que é solução da equação de Riccati e também os pólos
de malha fechada do sistema representada por 𝑬. O setup do programa principal do
QUANSER® Flexgage no APÊNDICE I possui o programa que faz estes cálculos:
𝑲, 𝑷, 𝑬 = 𝑙𝑞𝑟(𝑨, 𝑩, 𝑸, 𝑹)
Para começar os testes, escolheu-se uma matriz mais fundamental como 𝑸 =
𝑑𝑖𝑎𝑔[1 1 1 1], e seguiu-se modificando os valores de cada elemento da diagonal da
matriz para verificar a influência na resposta do sistema. A Tabela 3.4 abaixo mostra os
valores obtidos.
𝑸 𝑹 𝑲 𝑬
𝑸 = 𝑑𝑖𝑎𝑔[1 1 1 1] [1] [1.0000 -2.1452 0.2509 -0.0460]
-11.7984 +28.1163j -11.7984 -28.1163j -0.2682 -14.0155
𝑸 = 𝑑𝑖𝑎𝑔[100 1 1 1] [1] [10.0000 -1.6995 1.0265 0.4600]
-11.8276 +28.0931j -11.8276 -28.0931j -2.7667 -13.5964
𝑸 = 𝑑𝑖𝑎𝑔[1 100 1 1] [1] [1.0000 -2.6195 0.2563 -0.0524]
-11.8628 +28.1347j -11.8628 -28.1347j -0.2681 -13.9808
𝑸 = 𝑑𝑖𝑎𝑔[1 1 100 1] [1] [1.0000 -1.6045 7.0813 0.5061]
-77.2941 -0.0941 -5.1387 +21.3088j -5.1387 -21.3088j
𝑸 = 𝑑𝑖𝑎𝑔[1 1 1 100] [1] [1.0000 -91.7031 1.0713 -6.2140]
-70.6073 -0.2682 -11.2105 + 7.6728j -11.2105 – 7.6728j
Tabela 3.4 – Valores Obtidos nos Testes para diversas Matrizes 𝑸.
77
Para 𝑸 = 𝑑𝑖𝑎𝑔[1 1 1 1], a matriz 𝑷 solução da equação de Riccati é dada por (3.30).
𝑷 =
3.8251 − 0.0460 0.3617 0.2356 −0.0460 41.0277 − 0.7695 − 0.4989 0.3617 − 0.7695 0.1081 0.0765
0.2356 − 0.4989 0.0765 0.0823
(3.30)
Para 𝑸 = 𝑑𝑖𝑎𝑔[100 1 1 1], a matriz 𝑷 solução da equação de Riccati é dada por (3.31)
𝑷 =
46.0454 4.6002 3.6065 2.3454 4.6002 43.6922 − 0.6085 − 0.3942
3.6065 − 0.6085 0.3945 0.2650 2.3454 − 0.3942 0.2650 0.2070
(3.31)
Para 𝑸 = 𝑑𝑖𝑎𝑔[1 100 1 1], a matriz 𝑷 solução da equação de Riccati é dada por (3.32)
𝑷 =
3.8263 − 0.0524 0.3627 0.2366 −0.0524 44.8836 − 0.8290 − 0.4986
0.3627 − 0.8290 0.1151 0.0828 0.2366 − 0.4986 0.0828 0.0894
(3.32)
Para 𝑸 = 𝑑𝑖𝑎𝑔[1 1 100 1], a matriz 𝑷 solução da equação de Riccati é dada por (3.33)
𝑷 =
10.6601 0.5061 0.3604 0.2343 0.5061 657.2094 − 0.5743 − 0.37190.3604 − 0.5743 2.5665 1.67350.2343 − 0.3719 1.6735 1.6097
(3.33)
Para 𝑸 = 𝑑𝑖𝑎𝑔[1 1 1 100], a matriz 𝑷 solução da equação de Riccati é dada por (3.34)
𝑷 =
3.9 −6.2 0.6 0.4−6.2 2040.8 −42.3 −30.70.6 −42.3 1.3 1.10.4 −30.7 1.1 1.9
(3.34)
A análise das simulações e implementações dos testes (não mostradas aqui) e os
valores dos polos de malha fechada indicam como variam os valores de 𝑸 =
𝑑𝑖𝑎𝑔[𝑞1 𝑞2 𝑞3 𝑞4] com a resposta de 𝜃 e 𝛼. Também se pode fazer analogias entre a
matriz 𝑸 e a matriz de realimentação de estados 𝑲 = [𝑘1 𝑘2 𝑘3 𝑘4].
A conclusão que se pode obter a partir disto é que:
78
Quanto maior 𝑞1 maior o valor de 𝑘1, que representa um ganho proporcional.
Isto faz com que o sistema tenha uma resposta temporal mais rápida, ou seja,
diminui o tempo de subida e estabilização;
Observa-se que 𝑞2 não altera muito a resposta do sistema, portanto, não tem
muito efeito;
Para o aumento de 𝑞3 observou-se que houve um aumento do ganho 𝑘3 que
representa no sistema um ganho derivativo. Isto faz 𝑘4 mais positivo e tem o
efeito de minimizar o overshoot (máximo sobressinal do sistema), porém causa
uma diminuição na rapidez da resposta do sistema;
Para um aumento de 𝑞4, há um aumento do ganho 𝑘2, e efeito de acréscimo no
ganho 𝑘4. O efeito observado na prática é principalmente a minimização da
deflexão do link.
A partir destas conclusões e através de diversas tentativas projetou-se o controlador
LQR para o sistema Link Flexível de 1-DOF.
3.3. Conclusão Parcial
Foram apresentadas de forma resumida algumas ideias básicas sobre o Robô DENSO®
6-DOF VP-6242.
Em seguida, foram descritas a modelagem matemática, montagem física, calibração e
testes com o Link Flexível QUANSER®.
A partir dos testes experimentais, concluiu-se que tomando uma matriz de peso para o
controlador LQR 𝑸 = 𝑑𝑖𝑎𝑔 [𝑞1, 𝑞2, 𝑞3 , 𝑞4], os elementos 𝑞1 e 𝑞4 são os que mais
influenciam na resposta desejada do sistema controlado, considerando a outra matriz
de peso 𝑅 = 1.
A seguir, no próximo capítulo os resultados obtidos serão descritos para a simulação e
para a implementação, de um controlador LQR aplicado ao Link Flexível de 1-DOF.
79
4. RESULTADOS
Neste capítulo serão apresentados os resultados do projeto do controlador LQR e da
aplicação deste controlador no Link Flexível da empresa QUANSER®. Os resultados
estão separados em simulação e parte experimental.
Foram considerados índices de desempenho para o projeto, além dos resultados
previamente analisados até agora. Para a simulação e implementação foram
especificados os índices de desempenho mostrados abaixo, além de utilizar para 𝜃 um
ângulo de 30°.
Tempo de estabilização da resposta: 𝑡𝑠 ≤ 1𝑠;
Máximo sobressinal ou porcentagem de overshoot da resposta: 𝑃. 𝑂. ≤ 7.5%;
Máximo valor de deflexão do link: |𝛼| ≤ 12°;
Máxima tensão de armadura no motor DC: |𝑉𝑚 | ≤ 10𝑉;
Portanto, para encontrar a matriz de ganho de realimentação de estados para este
caso, devem-se observar todos estes critérios de desempenho.
a matriz de ganho de realimentação de estados 𝑲 encontrada para o controlador LQR
é dada por (4.1).
𝑲 = [17.3205 − 24.3773 1.9579 − 0.6380] (4.1)
Utilizando como matrizes de peso no controle LQR os valores em (4.2) e (4.3):
𝑸 = 𝑑𝑖𝑎𝑔 300 1 9 13 , (4.2)
𝑅 = 1, (4.3)
chegando-se a uma matriz 𝑷 solução da equação de Riccati associada ao sistema dada
por (4.4):
𝑷 =
119.9101 − 11.0510 7.1378 4.9535
−11.0510 472.6662 − 9.3706 − 6.2965 7.1378 − 9.3706 1.0564 0.8095
4.9535 − 6.2965 0.8095 0.8899
(4.4)
Os polos de malha fechada do sistema são: -32.5772 , -3.0375, -12.1712 +21.5317j, -
12.1712 -21.5317j.
4.1. Simulações
A Figura 4.1 mostra o programa para simulação do controlador para o sistema link
flexível (QUANSER, 2011c).
80
Figura 4.1 – Programa para Simulação do Controlador no Sistema (QUANSER, 2011c).
O resultado das simulações pode ser visto pela Figura 4.2 para 𝑉𝑚 , Figura 4.3 para 𝜃 e
Figura 4.4 para 𝛼. Deve-se salientar que o resultado obtido com o controlador 𝑲
projetado não terá o mesmo efeito para simulação em comparação com a
implementação, já que o mesmo foi projetado visando o controle na implementação e
como o modelo estimado, que é usado pela simulação, contém incertezas os dois não
respondem da mesma forma.
Pode-se observar que os gráficos das Figuras 4.2, 4.3 e 4.4 começam em 5 segundos
pelo fato da simulação durar 10 segundos, mas o programa mostra apenas amostra
dos 5 segundos finais.
No gráfico da Figura 4.2 ocorre uma saturação pelo fato do controlador exigir uma
tensão do motor DC maior do que o hardware consegue fornecer, e que não responde
ao critério de desempenho do projeto. Portanto, a saturação age como uma proteção
ao motor DC.
Figura 4.2 – Sinal Simulado para a Tensão no Motor 𝑉𝑚 .
81
A Figura 4.3, mostra que o sinal medido (verde) não consegue chegar ao valor de
regime permanente, o que mostra que o controlador não consegue cumprir com os
índices de desempenho que foram especificados.
Figura 4.3 – Sinal Simulado para Valores de 𝜃. O Sinal azul é a Referência (±30 𝑉) e o
Sinal verde é o Medido.
Figura 4.4 – Sinal Simulado para Valores de 𝛼.
82
A Tabela 4.1 resume, de forma sucinta, os resultados obtidos por meio da simulação
do sistema.
Descrição Símbolo Valor Unidade
Matrizes de Peso LQR
𝑸 𝑑𝑖𝑎𝑔[300 1 9 13]
𝑅 1
Ganho LQR 𝑲 [17.3205
− 24.3773 1.9579
− 0.6380]
Tempo de Estabilização
𝑡𝑠 ≈ 1.5 𝑠
Porcentagem de Overshoot
𝑃. 𝑂. 0 %
Deflexão máxima |𝛼| ≈ 3.5 ° Tensão de
armadura máxima |𝑉𝑚 | ≈ 15 𝑉
Tabela 4.1 – Índices de Desempenho Obtidos para a Simulação do Sistema.
4.2. Implementação
O programa que permite a implementação do sistema é representado pela Figura 4.5.
Figura 4.5 – Programa para Implementação do Controlador no Sistema (QUANSER,
2011c).
Para a implementação, o link responde de uma melhor forma em comparação com a
simulação, pois, foi para a implementação o projeto do controlador 𝑲.
Se tivesse projetado o controlador para melhorar a resposta na simulação,
provavelmente o mesmo não teria uma resposta boa na prática/implementação,
devido às incertezas que fazem com que se tenha respostas diferentes.
83
A Figura 4.6, mostra a tensão que o motor DC aplica ao sistema. A Figura 4.7, compara
o sinal de referência de ±30 𝑉 em azul com o sinal medido em verde. A Figura 4.8,
mostra a deflexão do link.
Novamente, observa-se que o gráfico começa em um tempo diferente de zero, no
caso, 11 segundos. Isso ocorre devido ao fato da medição ter sido feita em tempo real
e o programa mostrar apenas 5 segundos de uma amostra do sinal, a partir do
momento em que a implementação é finalizada.
Figura 4.6 – Sinal do Motor 𝑉𝑚 na Implementação do Sistema.
84
Figura 4.7 – Sinal de 𝜃 na Implementação do Sistema. O Sinal azul é a Referência
(± 30𝑉) e o verde é a Resposta do Sistema.
Figura 4.8 – Sinal de 𝛼 na Implementação do Sistema.
A Tabela 4.2 resume, de forma sucinta, os resultados obtidos com a implementação do
controle.
85
Descrição Símbolo Valor Unidade
Matrizes de Peso LQR
𝑸 𝑑𝑖𝑎𝑔[300 1 9 13]
𝑅 1
Ganho LQR 𝑲 [17.3205
− 24.3773 1.9579
− 0.6380]
Tempo de Estabilização
𝑡𝑠 0.8233 𝑠
Porcentagem de Overshoot
𝑃. 𝑂. 6 %
Deflexão máxima |𝛼| ≈ 12 ° Tensão de
armadura máxima |𝑉𝑚 | ≈ 8 𝑉
Tabela 4.2 – Índices de Desempenho Obtidos para a Implementação do Sistema.
4.3. Conclusão Parcial
Foram apresentados resultados de simulação e experimental, aplicando o controle LQR
ao sistema Link Flexível de 1-DOF. Devido a incertezas na planta modelada, decidiu-se,
por projetar uma lei de controle que obedecesse ao sistema real, por isso, os índices
de desempenho obtidos para a implementação estão dentro dos limites especificados.
Os índices de desempenho obtidos para a simulação estão fora dos limites
especificados, pelo fato, de que as incertezas no modelo matemático fazem com que a
planta real e a planta modelada sejam diferentes e o controlador projetado não
compensa estas diferenças.
86
87
5. CONCLUSÃO
A motivação pela qual se faz o estudo de robótica são as inúmeras aplicações nos dias
atuais, proporcionando um alto crescimento tecnológico e científico, tendo inclusive
aplicações na área médica dentre outras.
O texto apresentado neste trabalho tratou apenas de uma pequena introdução
resumida do que vem a ser o estudo da robótica que se estende cada dia mais com o
desenvolvimento que vem sendo feito nesta área.
O estudo apresentado foi direcionado para futuras aplicações com o Robô DENSO® VP-
6242 de seis graus de liberdade, onde são apresentadas, de forma rápida, a cinemática
direta e também a análise da matriz jacobiana.
Como segunda etapa, foi desenvolvido um controlador do tipo LQR aplicado a um link
flexível de um grau de liberdade da empresa QUANSER®. O motivo pelo qual se
escolheu este experimento é que se pode considerar como se fosse um manipulador
de apenas um link, só que este link tem certa flexibilidade quando em movimento.
O principal objetivo do projeto do controlador foi proporcionar uma menor deflexão
do link, que ocorre devido à flexibilidade e também uma maior precisão nos
movimentos executados.
O modelo do link flexível proposto depende de parâmetros que são estimados de
forma empírica e por isso contém erros, de forma que o sistema real difere do modelo
obtido. Com isso, o controlador LQR proposto para o sistema pode não funcionar de
forma adequada, sendo, assim, preciso recorrer a outras técnicas de controle, tais
como o controle robusto, ou mesmo tentar diminuir as incertezas no modelo da
planta.
Devido às incertezas do experimento, resolveu-se então projetar o controle
diretamente na planta real e não no modelo, para que a implementação correta fosse
possível. Isto faz com que os resultados simulados, que seguem o modelo com
incertezas, não estejam respondendo de forma correta ao controlador 𝑲 que foi
projetado visando à implementação, portanto a planta real, como pode ser observado
nos resultados expostos.
O sistema simulado não possui uma resposta boa e não segue os critérios de
desempenho, se comparado ao sistema implementado, que logicamente segue os
critérios de desempenho escolhidos para o projeto.
88
5.1. Pesquisas Futuras
Os próximos passos, a partir, do que foi feito até então serão:
Construção de um modelo em equações de estados para o Link Flexível de 1-
DOF com menor grau de incerteza;
Aplicação de controladores robustos LQG/LTR, ℋ2, ℋ∞ e com Incertezas
Politópicas via Inequações Matriciais Lineares (LMI’s) ao Link Flexível de 1-DOF;
Identificação de Sistemas aplicada aos motores AC de cada junta do
manipulador DENSO® VP-6242 6-DOF;
Aplicação de diversos tipos de controladores (PID, LQR, Fuzzy T-S-K, etc) aos
motores AC do manipulador DENSO® VP-6242 6-DOF.
Além disso, o Laboratório de Controle Avançado, Robótica e Engenharia Biomédica no
Departamento de Engenharia Elétrica da Universidade Estadual de Londrina, realizam
atualmente as seguintes pesquisas:
Acionamento e Controle de uma Máquina CA utilizando uma Plataforma
Controlada por um Controlador Digital de Sinais;
Controle de Movimentos Discretos de Pacientes Paraplégicos utilizando
Modelos Fuzzy-Takagi-Sugeno;
Desenvolvimento e Melhorias em uma Interface de Controle para uma Cadeira
de Rodas Elétrica acionada por Sopros e Sucção;
Condições Baseadas em LMI’s e Controle com Estrutura Variável para sistemas
ERP, com aplicação em Pacientes Paraplégicos.
89
6 - REFERÊNCIAS BIBLIOGRÁFICAS
ARAUJO, C. V. de; SOUZA, L. C. G. de; FENILI, A.; Estudo experimental da dinâmica e do
sistema de controle de uma viga rigido-flexível. Relatório final de projeto de iniciação
científica, CNPq/INPE, 2011.
CORKE, P.; Robotics, Vision and Control: Fundamental Algorithms in MATLAB®,
Springer – Verlag Berlin Heidelberg, 2011.
CRAIG, J.J.; Robótica, 3 ed., Pearson Educación, México, 2006.
DORF, R.C.; BISHOP, R.H.; Modern Control Systems, 11.ed, Person Prentice Hall, 2010.
GOLDSTEIN, H.; Classical Mechanics, Addison-Wesley Publishing Co., Massachusetts,
1980.
GUEDES, F.M.; SANTOS, S.P.; de SOUZA, L.C.G.; Attitude and Vibration Control of a
Rigid Flexible Link Using LQR and 𝓗∞ Methods. VI National Congress of Mechanical
Engineering. Campina Grande – Paraíba – Brasil. August 18 – 21, 2010.
IYER, S.; LOOI, T.; DRAKE, J.; A Single Arm, Single Camera System for Automated
Suturing. 2013 IEEE International Conference on Robotics and Automation (ICRA).
Karlsruhe, Germany, May 6 -10, 2013.
KESHIMIRI, M.; XIE, W.F.; MOHEBBI, A.; Augmented Imaged Based Visual Servoing of a
Manipulator using Acceleration Command. IEEE Transaction on Industrial Eletronics,
2013.
LOOI, T.; YEUNG, B.; UMASTHAN, M.; DRAKE, J.; KidsArm – An Image-Guided Pediatric
Anastamosis Robot. 2013 IEEE/RSJ International Conference on Intelligent Robots and
Systems (IROS). Tokyo, Japan, November 3 -7, 2013.
MARCUS, H.J.; ZAREINIA, K.; GAN, L.S.; YANG, F.W.; LAMA, S.; YANG, G.Z.;
SUTHERLAND, G.R.; Forces Exerted During Microneurosurgery: A Cadaver Study. The
International Journal of Medical Robotics and Computer Assisted Surgery, 2014.
OGATA, K.; Modern Control Engineering, 5.ed, Person Prentice Hall, 2010.
POPESCU, D.; SENDRESCU, D.; BOBASU, E.; Modelling and Robust Control of a Flexible
Beam Quanser Experiment. Acta Montanistica Slovaca, Ročnik 13, číslo 1, 127 – 135,
2008.
QUANSER inc. Denso Laboratory Guide, 2013.
QUANSER inc. Denso Robot datasheet VP-G Series, 2011a.
90
QUANSER inc. Flexgage Manual, 2011b.
QUANSER inc. Flexgage Workbook, 2011c.
QUANSER inc. SRV02 Manual, 2011d.
QUANSER inc. VP-G Model General Information about Robot, 2011e.
SANTOS, V. M. F.; Robótica Industrial: Apontamentos teóricos, Exercícios para aula
pratica e Problemas de exames resolvidos, Departamento de Engenharia Mecânica,
Universidade de Aveiro, Apostila, 2004.
SCHIRMER, L.; Modelagem do Robothron – Um Manipulador de Barras Paralelas.
Dissertação de Mestrado. 103p. UDESC, 2005.
SICILIANO, B.; SCIAVICCO, L.; VILLANI, L.; ORIOLO, G.; Robotics: Modelling, Planning
and Control, Springer – Verlag London Limited, 2009.
SPONG, M.W.; HUTCHINSON, S.; VIDYASASGAR, M.; Robot Modeling and Control, John
Wiley and Sons, 2006.
91
APÊNDICE I – Setup do Modelo Link Flexível QUANSER com Cálculo da
Matriz de Realimentação de Estados 𝑲, Matriz 𝑷 e os Polos de Malha
Fechada 𝑬
% %% SETUP_SRV02_EXP06_FLEXLINK
%% Sets the necessary parameters to run the SRV02 Experiment #6: Rotary
% Flexible Link Laboratory using the "q_flexlink.mdl" Simulink diagram.
% % Copyright (c) 2010 Quanser Consulting Inc.
%
clear all;
%%% SRV02 Configuration
% External Gear Configuration: set to 'HIGH' or 'LOW'
EXT_GEAR_CONFIG = 'HIGH';
% Encoder Type: set to 'E' or 'EHR'
ENCODER_TYPE = 'E';
% Is SRV02 equipped with Tachometer? (i.e. option T): set to 'YES' or 'NO'
TACH_OPTION = 'YES';
% Type of Load: set to 'NONE', 'DISC', or 'BAR'
LOAD_TYPE = 'NONE';
% Amplifier Gain used: set VoltPAQ-X1 gain switch to 1.
% NOTE: If using VoltPAQ-X2, set K_AMP = 3
K_AMP = 1;
% Amplifier type: set to 'UPM_1503' or 'UPM_2405' or 'VoltPaq' or 'Q3'
AMP_TYPE = 'VoltPaq';
% Digital-to-Analog Maximum Voltage (V)
VMAX_DAC = 10;
%% Lab Configuration
92
% Type of controller: set it to 'AUTO', 'MANUAL'
%CONTROL_TYPE = 'AUTO';
CONTROL_TYPE = 'MANUAL';
%%% Control specifications
% SRV02 Position Control specifications
% Settling time (s)
ts = 1.5;
% Settling time percentage (%)
c_ts = 0.04;
% Percentage overshoot (%)
PO = 5.0;
% %% Filter Parameters
% SRV02 High-pass filter in PD control used to compute velocity
% Cutoff frequency (rad/s)
wcf_1 = 2 * pi * 50;
wcf_2 = 2 * pi * 20;
%%% System Parameters
% Sets model variables according to the user-defined SRV02 configuration
[ Rm, kt, km, Kg, eta_g, Beq, Jm, Jeq, eta_m, K_POT, K_TACH, K_ENC, VMAX_AMP,
IMAX_AMP ] = config_srv02( EXT_GEAR_CONFIG, ENCODER_TYPE, TACH_OPTION,
AMP_TYPE, LOAD_TYPE );
% Sets the model and sensor parameters of the Flexible Link plant.
[ Jl, Bl, K_GAGE ] = config_flexgage( );
%
if strcmp ( CONTROL_TYPE , 'MANUAL')
disp ('');
Ks = input('Enter link stiffness (Ks): ');
93
elseif strcmp (CONTROL_TYPE , 'AUTO')
Ks = d_flexgage_Ks;
end
%%% System Model
% Set Open-loop state-space model of rotary single inverted pendulum
if strcmp ( CONTROL_TYPE , 'MANUAL')
FLEXGAGE_ABCD_eqns_student;
elseif strcmp (CONTROL_TYPE , 'AUTO')
FLEXGAGE_ABCD_eqns;
end
% Add dc motor dynamics
Ao = A;
Bo = B;
B = eta_g*Kg*eta_m*kt/Rm*Bo;
A(3,3) = Ao(3,3) - Bo(3)*eta_g*Kg^2*eta_m*kt*km/Rm;
A(4,3) = Ao(4,3) - Bo(4)*eta_g*Kg^2*eta_m*kt*km/Rm;
%%% LQR Control
if strcmp ( CONTROL_TYPE , 'MANUAL' )
% Set Q and R matrices to get desired response.
Q = diag([300 1 9 13]);
R = 1;
[K,P,E] = lqr(A,B,Q,R);
elseif strcmp ( CONTROL_TYPE , 'AUTO' )
K = d_flexgage_lqr(A,B);
end
%% Display
94
disp( ' ' );
K
P
E
95
APÊNDICE II – Configurações do SRV02
%% CONFIG_SRV02
%% Accepts the user-defined configuration of the Quanser SRV02 plant and
% sets its model variables accordingly.
%%
***********************************************************************
% Input parameters:
% EXT_GEAR_CONFIG External gear configuration: 'LOW' or 'HIGH'
% ENCODER_TYPE Encoder type: 'E' or 'EHR'
% TACH_OPTION Tachometer option (e.g. SRV02-T): 'YES' or 'NO'
% AMP_TYPE Universal Power Module type, e.g. 'VoltPAQ'
% LOAD_TYPE Type of load: 'NONE', 'DISC', or 'BAR'
%%
***********************************************************************
% Output parameters:
% Rm Motor armaturce resistance (ohm)
% kt Motor torque constant (N.m/A)
% km Motor back-EMF constant (V.s/rad)
% Kg Total gear ratio
% eta_g Gearbox efficiency
% eta_m Motor efficiency
% Beq Equivalent viscous damping coefficient w.r.t. load (N.m.s/rad)
% Jm Motor armature moment of inertia (kg.m^2)
% Jeq Equivalent moment of inertia w.r.t. load (kg.m^2)
% K_POT Potentiometer Sensitivity (rad/V)
% K_TACH Tachometer Sensitivity (rad/s/V)
% K_ENC Encoder Resolution (rad/count)
96
% VMAX_AMP Amplifier Maximum Output Voltage (V)
% IMAX_AMP Amplifier Maximum Output Current (A)
%% Copyright (C) 2010 Quanser Consulting Inc.
% Quanser Consulting Inc.
%%%
function [ Rm, kt, km, Kg, eta_g, Beq, Jm, Jeq, eta_m, K_POT, K_TACH, K_ENC,
VMAX_AMP, IMAX_AMP ] = config_srv02( EXT_GEAR_CONFIG, ENCODER_TYPE,
TACH_OPTION, AMP_TYPE, LOAD_TYPE )
% Set constant SRV02 parameters
[ Rm, kt, km, Kgi, eta_g, eta_m ] = set_srv02_constants();
% Calculate motor and gear inertias
[ Jm, J24, J72, J120 ] = calc_motor_and_gear_inertias( TACH_OPTION );
% Calculate SRV02 Model Parameters
[ Kg, Beq, Jeq ] = calc_eq_damping_inerta( EXT_GEAR_CONFIG, LOAD_TYPE, Kgi,
eta_g, Jm, J24, J72, J120 );
% Set sensor and actuator calibration gains
[K_POT, K_TACH, K_ENC, VMAX_AMP, IMAX_AMP] = srv02_calib ( ENCODER_TYPE,
AMP_TYPE, Kg );
end
%%%% Sets constant SRV02 model parameters.
function [ Rm, kt, km, Kgi, eta_g, eta_m ] = set_srv02_constants( )
% Calculate Useful Conversion Factors
[ K_R2D, K_D2R, K_IN2M, K_M2IN, K_RDPS2RPM, K_RPM2RDPS, K_OZ2N, K_N2OZ,
K_LBS2N, K_N2LBS, K_G2MS, K_MS2G ] = calc_conversion_constants ();
% % Armature Resistance (Ohm)
Rm = 2.6;
% Motor Torque Constant (N.m/A)
kt = 1.088 * K_OZ2N * K_IN2M; % = .00767
97
% Continuous torque (N.m/A)
M_e_max = 0.566 * K_OZ2N * K_IN2M; % = 0.566 oz.in (parameter not used)
% Motor Back-EMF Constant (V.s/rd)
km = 0.804 / 1000 * K_RDPS2RPM; % = .00767
% Internal Gear Ratio (of the Planetary Gearbox)
Kgi = 14;
% Gearbox Efficiency
eta_g = 0.90;
% Motor ElectroMechanical Efficiency
eta_m = 0.69;
end
%%%% Calculates the SRV02 motor and external gear inertias (kg.m^2)
function [ Jm, J24, J72, J120 ] = calc_motor_and_gear_inertias( TACH_OPTION )
% Calculate Useful Conversion Factors
[ K_R2D, K_D2R, K_IN2M, K_M2IN, K_RDPS2RPM, K_RPM2RDPS, K_OZ2N, K_N2OZ,
K_LBS2N, K_N2LBS, K_G2MS, K_MS2G ] = calc_conversion_constants ();
% % Find motor shaft inertia.
% Rotor Inertia (kg.m^2)
Jm_rotor = 5.523e-5 * K_OZ2N * K_IN2M; % = 3.9e-7
% Tachometer Armature Inertia, if any (kg.m^2)
if strcmp ( TACH_OPTION, 'YES')
Jtach = 1e-5 * K_OZ2N * K_IN2M; % = 7e-8
else
Jtach = 0;
end
% Motor Equivalent Inertia (kg.m^2)
98
Jm = Jm_rotor + Jtach;
% % External Gears Inertias (kg.m^2)
% J24: 24-tooth Gear Inertia (on the Motor Shaft)
m24 = 0.005; % mass (kg)
r24 = 0.5 / 2 * 0.0254; % radius (m)
J24 = m24 * r24^2 / 2;
% J72: 72-tooth Gear Inertia (on the Potentiometer Shaft)
m72 = 0.030; % mass (kg)
r72 = 1.5 / 2 * 0.0254; % radius (m)
J72 = m72 * r72^2 / 2;
% J120: 120-tooth Gear Inertia (on the Load Shaft)
m120 = 0.083; % mass (kg)
r120 = 2.5 / 2 * 0.0254; % radius (m)
J120 = m120 * r120^2 / 2;
end
%%%% Calculates SRV02 model parameters based on its configuration
function [ Kg, Beq, Jeq ] = calc_eq_damping_inerta( EXT_GEAR_CONFIG, LOAD_TYPE,
Kgi, eta_g, Jm, J24, J72, J120 )
%% Moment of inertia of load attached to load shaft of SRV02
if strcmp (LOAD_TYPE, 'NONE')
Jl_ext = 0;
elseif strcmp (LOAD_TYPE, 'DISC')
Jl_ext = 1/2 * 0.04 * (0.05)^2; % J = mr^2 / 2
elseif strcmp (LOAD_TYPE, 'BAR')
Jl_ext = 1/12 * 0.038 * (0.1525)^2 + 0.038 * (0.0575)^2; % J = mL^2 / 12 + mR^2
(Moment about center then shifted)
elseif strcmp (LOAD_TYPE, 'SLIP_RING')
99
mtracker = 0.244; % mass (kg)
rtracker = 2 * 0.0254; % radius (m)
Jl_ext = mtracker * rtracker^2 / 2; % J = mr^2 / 2
elseif strcmp (LOAD_TYPE, 'ROTFLEX')
Jl_ext = 0.0005; % Calculated Experimentally
elseif strcmp (LOAD_TYPE, 'FLEXGAGE')
Jl_ext = 0.0002; % Calculated Experimentally
elseif strcmp (LOAD_TYPE, 'ROTPEN')
Jl_ext = 0.0015; % Calculated Experimentally
elseif strcmp (LOAD_TYPE, 'GYRO')
Jl_ext = 0.002; % Calculated Experimentally
elseif ( strcmp (LOAD_TYPE, 'TORSION_1DOF') || strcmp (LOAD_TYPE,
'TORSION_2DOF') )
% Found experimentally
Jl_ext = 0.0001;
else
error( 'LOAD_TYPE set not recognized.' )
Jl_ext = 0;
end
% % Moment of inertia and viscous damping based on external gear
% configuration.
if strcmp (EXT_GEAR_CONFIG, 'LOW')
% Low Gear Configuration: (3x) 72-tooth gears
Kge = 1;
Kg = Kgi * Kge;
% Equivalent moment of inertia including load (kg.m^2)
100
Jg = 3 * J72;
% Equivalent Viscous Damping Coefficient as seen at the Load (N.m.s/rd)
Beq = 15e-5;
elseif strcmp (EXT_GEAR_CONFIG, 'HIGH')
% High Gear Configuration:
% (1x) 24-tooth gear, (2x) 72-tooth gear, (1x) 120-tooth gear
Kge = 5;
Kg = Kgi * Kge;
% Equivalent moment of inertia including load (kg.m^2)
Jg = J24 + 2 * J72 + J120;
% Equivalent Viscous Damping Coefficient as seen at the Load (N.m.s/rd)
Beq = 15e-3;
else
error( 'EXT_GEAR_CONFIG set not recognized.' )
Kge = 0;
Kg = 0;
Jg = 0;
Beq = 0;
end
% Load moment of inertia: gears and external (kg.m^2)
Jl = Jg + Jl_ext;
% Equivalent moment of inertia including load (kg.m^2)
Jeq = Kg^2 * Jm * eta_g + Jl;
end
%%%% Sets sensor and amplifier calibration gains.
101
function [K_POT, K_TACH, K_ENC, VMAX_AMP, IMAX_AMP] = srv02_calib (
ENCODER_TYPE, AMP_TYPE, Kg )
% Potentiometer Sensitivity (rd/V)
K_POT = -(352 * pi / 180 / 10);
% Tachometer Sensitivity (rd/s/V)
K_TACH = -(1000 * 2 * pi / 60 / 1.5 / Kg);
% Encoder Resolution, for a quadrature encoder, (rd/count)
if strcmp (ENCODER_TYPE,'E')
K_ENC = 2 * pi / ( 4 * 1024 );
elseif strcmp (ENCODER_TYPE,'EHR')
K_ENC = 2 * pi / ( 4 * 2048 );
else
error( 'ENCODER_TYPE set not recognized.' )
K_ENC = 0;
end
% Set the amplifier Maximum Output Voltage (V) and Output Current (A)
if strcmpi (AMP_TYPE, 'VoltPAQ')
VMAX_AMP = 24;
IMAX_AMP = 4;
elseif strcmpi (AMP_TYPE, 'UPM_2405')
VMAX_AMP = 24;
IMAX_AMP = 5;
elseif strcmpi (AMP_TYPE, 'UPM_1503')
VMAX_AMP = 15;
IMAX_AMP = 3;
102
elseif strcmpi (AMP_TYPE, 'Q3')
IMAX_AMP = 1.6;
VMAX_AMP = 2.6 * IMAX_AMP; % Multiply times resistance of SRV02
else
error( 'AMP_TYPE set not recognized.' )
VMAX_AMP = 0;
IMAX_AMP = 0;
end
end
103
APÊNDICE III – Configuração do Link Flexível
%% CONFIG_FLEXLINK
%% This file sets the parameters related to the flexible link plant such as
% its length, mass, moment of inertia and strain gage calibration constant.
%%%
***********************************************************************
% Output parameters:
% Jl Moment of inertia of flexible link (kg.m^2)
% Bl Viscous damping of flexible link (N.m/(rad/s))
% K_GAGE Strain gage calibration constant (rad/V)
%% Copyright (C) 2010 Quanser Consulting Inc.
% Quanser Consulting Inc.
%%%
function [ Jl, Bl, K_GAGE ] = config_flexgage ( )
% Length of flexible link (m)
Ll = 0.0254 * 16.5;
% Mass of flexible link (kg)
ml = 0.065;
% Link moment of inertia (kg.m^2)
Jl = ml * Ll ^ 2 / 3;
% Link equivalent viscous damping (N.m/(rad/s))
Bl = 0;
% Strain gage calibration constant (rad/V)
% note: gives the angular deflection of the link tip
K_GAGE = 1/16.5;
End
104
105
APÊNDICE IV – Matrizes do Modelo de Espaço de Estado Estimado
A = [0 0 1 0;0 0 0 1; 0 806.25 -31.2643 0; 0 -1247 35.1105 0];
B = [0 0 61.7325 -61.7325]';
C = eye(2,4);
D = zeros(2,1);
106
107
APÊNDICE V – Cálculo das Constantes do Modelo
%% CALC_CONVERSION_CONSTANTS
%% Calculates useful conversion factors w.r.t. units.
%% Copyright (C) 2010 Quanser Consulting Inc.
% Quanser Consulting Inc.
%%%
function [ K_R2D, K_D2R, K_IN2M, K_M2IN, K_RDPS2RPM, K_RPM2RDPS, K_OZ2N,
K_N2OZ, K_LBS2N, K_N2LBS, K_G2MS, K_MS2G ] = calc_conversion_constants ()
% from radians to degrees
K_R2D = 180 / pi;
% from degrees to radians
K_D2R = 1 / K_R2D;
% from Inch to Meter
K_IN2M = 0.0254;
% from Meter to Inch
K_M2IN = 1 / K_IN2M;
% from rad/s to RPM
K_RDPS2RPM = 60 / ( 2 * pi );
% from RPM to rad/s
K_RPM2RDPS = 1 / K_RDPS2RPM;
% from oz-force to N
K_OZ2N = 0.2780139;
% from N to oz-force
K_N2OZ = 1 / K_OZ2N;
% Pound to Newton (N/lbs)
K_LBS2N = 4.4482216;
108
% Newton to Pound (lbs/N/)
K_N2LBS = 1 / K_LBS2N;
% from g to m/s^2
K_G2MS = 9.81;
% from m/s^2 to g
K_MS2G = 1 / K_G2MS;
End
109
ANEXO I - Matrizes e Vetores
Um vetor é freqüentemente relacionado ao conceito de movimento em um sentido e
direção. Por exemplo, um ponto no espaço é representado por três coordenadas, isto
é, pelo ponto 𝑷 = [𝑥 𝑦 𝑧]𝑇 , que também é um vetor entre a origem e este ponto
(SANTOS, 2004).
As matrizes são arranjos retangulares de números ou expressões distintos ou iguais
entre si, dos quais os vetores são casos particulares (SANTOS, 2004).
1 - Produto de um escalar por uma matriz
A operação resulta numa matriz cujos elementos são todos afetados pelo fator
multiplicativo como mostrado em (A1).
Se 𝑻 = 𝑎 𝑏𝑐 𝑑
, então
𝛼𝑻 = 𝛼 𝑎 𝑏𝑐 𝑑
= 𝛼𝑎 𝛼𝑏𝛼𝑐 𝛼𝑑
(A1)
2 - Inversão de uma matriz
A inversão de uma matriz quadrada é dada por (A2).
𝑨−1 =𝐴𝑑𝑗 (𝑨)
det (𝑨) (A2)
onde 𝐴𝑑𝑗(𝑨) é a matriz cofatora transposta ou adjunta, definida como 𝐴𝑑𝑗 𝑨 =
−1 𝑖+𝑗 det 𝒀 sendo det 𝒀 o determinante da matriz obtida eliminando a linha e a
coluna da matriz original que contenha o elemento 𝑎𝑖𝑗 .
A inversa de uma matriz possui a seguinte propriedade dada por (A3).
𝑨 ∙ 𝑨−𝟏 = 𝑰 (A3)
onde 𝑰 é a matriz identidade.
3 - Produto escalar de vetores
O produto escalar entre dois vetores é dado por (A4).
𝒗 ∙ 𝒖 =∥ 𝒗 ∥∥ 𝒖 ∥ 𝑐𝑜𝑠𝛼 (A4)
onde 𝛼 é o ângulo entre os 2 vetores e ∥∙∥ é a norma euclidiana do vetor.
4 - Produto vetorial de vetores
O produto vetorial entre dois vetores (A5) é uma operação que resulta num terceiro
vetor perpendicular aos dois primeiros.
110
𝒄 = 𝒂 × 𝒃 =∥ 𝒂 ∥∙∥ 𝒃 ∥ 𝑠𝑒𝑛𝛼 (A5)
O produto vetorial possui a seguinte propriedade dada por (A6).
𝒃 × 𝒂 = −𝒂 × 𝒃 = −𝒄 (A6)
Figura A1 – Representação Geométrica do Produto Vetorial (SANTOS, 2004).
5 - Produto Genérico entre matrizes
Para duas matrizes serem multiplicáveis, é necessário que tenham as dimensões
compatíveis entre si. Por isso, o número de colunas na primeira matriz deve ser igual
ao número de linhas da segunda matriz.
A Figura A2 abaixo ilustra com exemplo de maneira prática a multiplicação entre duas
matrizes.
Figura A2 – Exemplo Prático para Multiplicação de Matrizes (SANTOS, 2004).
Pela Figura A2 observa-se que elementos de cada matriz são postos par a par na
direção das setas; cada par é multiplicado e os produtos são somados. A posição do
número resultante corresponde ao da seta e coluna que foi considerada.
111
ANEXO II - Matrizes Definidas Positivas Uma matriz simétrica 𝑨 de ordem 𝑛 × 𝑛 é definida positiva se, para qualquer vetor 𝒙, tem-se a relação em (A7). 𝒙𝑻𝑨𝒙 ≥ 0 (A7)
em que 𝒙𝑻𝑨𝒙 é sempre real. A matriz 𝑨 é definida positiva se todos os seus autovalores são maiores que zero. A matriz 𝑨 é semi-definida positiva se pelo menos um autovalor é zero e os outros são positivos. Outra forma, de verificar se 𝑨 é definida positiva é analisando os menores principais. Seja a matriz A dada por (A8):
𝑨 = 𝑎 𝑏 𝑐𝑏 𝑑 𝑒𝑐 𝑒 𝑓
(A8)
Os menores principais da matriz 𝑨 são dados por (A9) e todos eles devem ser positivos, para que 𝑨 seja definida positiva.
𝑎 > 0, 𝑑𝑒𝑡 𝑎 𝑏𝑏 𝑐
> 0 e 𝑑𝑒𝑡 𝑎 𝑏 𝑐𝑏 𝑑 𝑒𝑐 𝑒 𝑓
> 0 (A9)
112
113
ANEXO III - Mecânica Lagrangeana
Para encontrar as Equações de Movimento de sistemas mecânicos mais complexos,
torna-se mais simples utilizar a Mecânica Lagrangeana ao invés de usar a Mecânica
Vetorial de Newton, isto porque a Mecânica Lagrangeana é baseada em métodos de
energia, não utilizando para sua descrição nenhum método vetorial, o que a torna
atraente para a modelagem de sistemas como manipuladores robóticos de uma ou
várias juntas.
A Equação de Euler-Lagrange (GOLDSTEIN, 1980) que descreve a dinâmica do sistema é
dada por (A10).
𝜕2ℒ
𝜕𝑡𝜕 𝑞𝑖 −
𝜕ℒ
𝜕𝑞𝑖= 𝑄𝑖 (A10)
onde 𝑞𝑖 é chamada de coordenadas generalizadas. A função lagrangiana do sistema é
dada por (A11) (GOLDSTEIN, 1980).
ℒ ≔ 𝑇 − 𝑉 (A11)
onde 𝑇 é a energia cinética do sistema e 𝑉 é a energia potencial do sistema.