Escolar Documentos
Profissional Documentos
Cultura Documentos
Introdução
Se volvidos uns anos os aparelhos robóticos, avançados e inteligentes eram parte do nosso
imaginário, nos dias que correm é inegável o papel preponderante que estes assumem na
sustentabilidade, otimização e competitividade do sistema de produção. O desenvolvimento e
aparecimento de tecnologias automatizadas contribuíram inexoravelmente para o que é por
muitos denominada de nova revolução industrial, a indústria 4.0. Torna-se, por isso, necessário
entender os mecanismos, conhecimentos e ideias subjacentes aos aparelhos que já ontem
entraram nos nossos dias, ainda hoje são parte integrante dos nossos bens, e quiçá, no futuro,
transformarão o paradigma de manufatura como agora o entendemos. Neste sentido, o
presente trabalho, desenvolvido no âmbito de uma prova oral de Álgebra Linear, visa clarificar
a aplicação dos conhecimentos da unidade curricular no que concerne funcionamento de um
braço robótico, muito utilizado em diversas funções industriais, principalmente na indústria
automobilística, sendo programados para substituir o Homem em tarefas repetitivas, perigosas
ou que exigem cuidados e precisão acrescida. Efetivamente, a computação da cinemática de um
braço robótico é executada em termos de referenciais, estando cada um deste associado a
diferentes juntas. O movimento é descrito com base nas rotações e translações que se verificam
de um referencial relativamente ao outro. Deste modo, num primeiro momento, serão
explicados e aprofundados os conhecimentos de transformações no plano e espaço, bem como
as propriedades e matrizes associadas. Seguidamente, serão enunciados casos-tipo no sentido
de exemplificar a forma como a cinemática direta e inversa, antes de transformada para o
mundo da programação industrial, é entendida em termos matemáticos. Abordar-se-á
igualmente, de uma forma geral e simplificada, a utilização do Jacobiano para o cálculo da
velocidade do braço em função da contribuição das várias juntas. Finalmente, serão estudadas
situações de singularidade e redundância com base nas características da matriz jacobiana.
Transformações e matrizes
Se, quando o referencial fixo e referencial do corpo coincidentes a posição da garra é facilmente
calculada mediante simples operações de adição, assim que o movimento do sistema se torna
mais complexo, também os cálculos se tornam mais trabalhosos. É, por isso, aconselhável (e
bastante mais simples) recorrer aos conhecimentos de matrizes para resolver o problema, sendo
necessário ter em consideração não só as rotações introduzidas, bem como as translações de
pontos e relações entre referenciais.
Rotação
A rotação do plano em torno da origem, que faz cada ponto descrever um ângulo , determina
uma transformação linear cuja matriz elementar é:
cos() 𝑠𝑖𝑛()
𝑅 () = no plano (2D)
−𝑠𝑖𝑛() cos()
1 0 0
𝑅 () = 0 cos () −sin ()
0 sin () cos ()
cos () 0 𝑠𝑖𝑛()
𝑅 () = 0 1 0 no espaço (3D)
−𝑠𝑖𝑛() 0 cos ()
cos() − sin() 0
𝑅 () = sin() cos() 0
0 0 1
Prova matriz rotação: A seguinte prova refere-se unicamente à matriz referente à rotação de eixo zz. As
demais provas desenvolvem-se de forma análoga.
Definindo a rotação ao longo do eixo zz, facilmente notamos que a coordenada z não será alterada. Deste
modo, rapidamente se retira que a matriz que procuramos é da forma
? ? 0
? ? 0
0 0 1
Agora, o cálculo dos quatro elementos que faltam pode ser resumido a
um problema a duas dimensões no plano xy. Considere-se um ponto 1
no plano xy de coordenadas x1 e y1 (ver figura), que define um vetor
r1 de comprimento l entre si e a origem. Supondo agora que o referido
vetor sofre uma rotação de ângulo 𝜙, de forma a que o novo vetor
transformado r2 é definido entre um novo ponto 2 de coordenadas x2
e y2 e a origem.
α
Começa-se por definir as coordenadas de r1 em função do ângulo 𝛼
que forma com o eixo xx Figura 1: Gráfico ilustrativo da rotação
de um vetor no plano
𝑥 = 𝑙. cos (𝛼) e 𝑦 = 𝑙. sin (𝛼)
Analogamente, expressa-se as coordenas de r2 em função do ângulo 𝛼 + 𝜙 que forma com o eixo xx
𝑥 = 𝑙. cos (𝛼 + 𝜙)= 𝑙. cos(𝛼) cos(𝜙) − 𝑠𝑖𝑛(𝛼)𝑠𝑖𝑛(𝜙) = 𝑥 cos(𝜙) − 𝑦 𝑠𝑖𝑛(𝜙)
𝑦 = 𝑙. sin (𝛼 + 𝜙) = 𝑙. (sin (𝛼) cos(𝜙) + 𝑐𝑜𝑠(𝛼)𝑠𝑖𝑛(𝜙)) = 𝑦 cos(𝜙) + 𝑥 𝑠𝑖𝑛(𝜙)
na forma matricial,
cos (𝜙) −sin (𝜙) 𝑥1 𝑥2
. = (1.1)
sin (𝜙) cos (𝜙) 𝑦1 𝑦2
Como pode ser observado, o resultado obtido é anti-horário. Tomando ϕ = - 𝜃 , vem que a matriz que
define a rotação no sentido horário é dada por
cos (𝜃) sin (𝜃)
(1.2)
−sin (𝜃) cos (𝜃)
Finalmente, a matriz corresponde à transformação no de 𝜃 graus no sentido horário segundo o eixo zz é
definida por
cos (𝜃) sin (𝜃) 0
−sin (𝜃) cos (𝜃) 0 (1.3)
0 0 1
---Fim da prova---
na forma matricial,
𝑎1 𝑏1 𝑐1 𝑥 .𝑥 𝑦 .𝑥 𝑧 .𝑥
𝑅 = [𝑥′ 𝑦′ 𝑧′] = 𝑎2 𝑏2 𝑐2 = 𝑥 . 𝑦 𝑦 .𝑦 𝑧 .𝑦 (1.6)
𝑎3 𝑏3 𝑐3 𝑥 .𝑧 𝑦 .𝑧 𝑧 .𝑧
Onde cada um dos termos da matriz foi expresso em termos de produto escalar, isto é, em função do
cosseno do ângulo entre os dois vetores unitários. O valor do produto escalar mantém-se contante
independentemente do referencial no qual os vetores são expressos, pelo que
𝑥 .𝑥 = 𝑥 .𝑥
𝑦 .𝑦 = 𝑦 .𝑦
𝑧 .𝑧 = 𝑧 .𝑧
aplicando a todos os termos da matriz rotação, vem que
𝑥 .𝑥 𝑦 .𝑥 𝑧 .𝑥 𝑥 .𝑥 𝑦 .𝑥 𝑧 .𝑥
𝑅 = 𝑥 .𝑦 𝑦 .𝑦 𝑧 .𝑦 = 𝑥 .𝑦 𝑦 .𝑦 𝑧 .𝑦 (1.7)
𝑥 .𝑧 𝑦 .𝑧 𝑧 .𝑧 𝑥 .𝑧 𝑦 .𝑧 𝑧 .𝑧
Podemos agora observar que as linhas de R correspondem aos vetores unitários do referencial fixo A
expressos no referencial transformado B, pelo que podemos escrever a matriz na forma
𝑥
𝑅 = [𝑥′ 𝑦′ 𝑧′] = 𝑦 (1.8)
𝑧
A transposta de R, pela igualdade (1.8) é
( 𝑅) = [𝑥 𝑦 𝑧 ] (1.9)
Ou seja, as colunas da transposta de R correspondem aos vetores unitários do referencial fixo A expressos
no referencial transformado B, o que é precisamente a definição da inversa de R. Assim, conclui-se que
𝑅 = ( 𝑅) = ( 𝑅) (1.10)
---Fim da prova---
Se, em vez de uma rotação simples em torno de um dos eixos, o referencial sofrer uma sequência
finita de rotações em torno desses mesmos eixos, então essa sequência pode ser representada
através do produto de várias matrizes de rotação básicas
𝑅 = 𝑅. 𝑅 … 𝑅 (1.11)
Prova composição de rotações é rotação: Vamos agora provar que é possível descrever uma sequência de
rotação através da composição de rotações
Basta, assim, mostrar que sendo A e B matrizes rotação (ortogonais e com determinante 1), AB é também
matriz rotação (4). Todavia, para isso é necessário primeiramente demonstrar que o teorema que postula
que qualquer matriz real n x n representa uma rotação (3.1) sse é ortogonal e o determinante tem módulo
1 (3.2) – (3).
Comecemos então pela prova de (3), ou seja, vamos demonstrar que (3.1) (3. 2) e (3.2) (3.1)
(3.1)(3.2): Se a matriz representa uma rotação, então é ortogonal (segue de (1) e (2), como demonstrado
anteriormente). Daqui facilmente se retira que o determinante é igual a 1
det(R𝑅 ) = det(𝑅) det(𝑅 ) = det(𝑅) = 1 , logo det(R) = ±1
Acresce-se ainda o facto de sendo uma rotação (própria, logo sem mudança de orientação) pode ser obtida
como uma sucessão de rotações infinitesimais, ou seja, em termos matemáticos a rotação é contínua com
a unidade, pelo que det(R) =1
(3.2)(3.1): Se é ortogonal e tem determinante 1, vamos mostrar que preserva os comprimentos e os
ângulos, ou seja, é uma matriz rotação
|𝑅𝑋| = (𝑅𝑋) 𝑅𝑋 = 𝑋 𝑅 𝑅𝑋 = 𝑋 𝐼𝑋 = 𝑋 𝑋 = |𝑋| , logo R preserva os comprimentos
Por outro lado, sabendo que < 𝑢, 𝑣 >= cos(𝜃) . ||𝑢|| . ||𝑣|| , sendo 𝜃 o ângulo formado entre dois
vetores u e v ∈ ℝ , vem que os ângulos são preservados sse o produto interno é preservado, ou seja,
se ∀𝑢, 𝑣 ∈ ℝ 𝑒 𝑅 ∈ 𝑀 (𝑛 𝑥 𝑛) < 𝑅𝑢, 𝑅𝑣 > = < 𝑢, 𝑣 > .
Sabe-se que
|𝑢 + 𝑣| = (𝑢 + 𝑣) (𝑢 + 𝑣) = 𝑢 𝑢 + 2𝑢 𝑣 + 𝑣 𝑣 = |𝑢| + 2𝑢 𝑣 + |𝑣|
de forma similar,
|𝑅(𝑢 + 𝑣)| = |𝑅𝑢 + 𝑅𝑣| = (𝑅𝑢 + 𝑅𝑣) (𝑅𝑢 + 𝑅𝑣) = |𝑅𝑢| + 2(𝑅𝑢) 𝑅𝑣 + |𝑅𝑣|
Como provado anterior R preserva os comprimentos, ou seja |𝐴𝑢| = |𝑢| 𝑒 |𝐴𝑣| = |𝑣| 𝑒 |𝐴(𝑢 + 𝑣)| = |𝑢 +
𝑣|. Assim, pelas igualdades anteriores, segue que (𝑅𝑢) 𝑅𝑣 = 𝑢 𝑣, isto é, < 𝑅𝑢, 𝑅𝑣 > = < 𝑢, 𝑣 > c.q.m
Passemos à prova de (4): a multiplicação de matrizes rotação, é uma matriz rotação. Para isso, chega a
mostrar que sendo A e B matrizes rotação (ortogonais e determinante 1), vem que AB é também matriz
rotação (ortogonal e determinante 1)
(AB)(𝐴𝐵) = 𝐴𝐵𝐵 𝐴 = 𝐴(𝐵𝐵 )𝐴 = 𝐴𝐴 = 𝐼 , logo AB é ortogonal
det(AB) = 𝑑𝑒𝑡(𝐴) 𝑑𝑒𝑡 (𝐵) = 1
---Fim da prova---
Translação
Definida a rotação, é necessário ter em conta que as juntas do braço não estão na mesma
posição (topo a topo).
A translação de um ponto uma dada distância, segundo uma certa direção, em relação à posição
original, é definida por:
𝑥 𝑥 𝑑
𝑦 + 𝐷= 𝑦 + 𝑑 (no plano 2D)
𝑥 𝑥 𝑑
𝑦 + 𝐷= 𝑦 + 𝑑 (no espaço 3D)
𝑧 𝑧 𝑑
Múltiplas transformações – Matriz homogénea
Em grande parte das aplicações práticas, as rotações e translações enumeradas anteriormente
ocorrem em conjunto, pelo que se torna essencial definir uma transformação homogénea. A
matriz de transformação homogénea representa a posição e orientação relativa entre os
referenciais associados a dois elos consecutivos de um robô.
Define-se a matriz homogénea 𝑇 de dimensão 4x4, tal que
𝑇= 𝑅 𝐷 (1.12)
0 1
sendo, 𝐷 a matriz translação e 𝑅 a matriz rotação. A linha inferior não fornece qualquer
informação, visto que não se consideram nem fatores de perspetiva ou escala.
Simultaneamente, define-se o vetor homogéneo do ponto a analisar, da forma
𝑝
𝑃=
1
sendo p as coordenadas do ponto no referencial 1, p=(x, y, z) e 1 o fator peso.
Quando se consideram todos os graus de liberdade do robô, define-se a matriz
𝑇 = 𝑇. 𝑇 … 𝑇 (1.13)
A transformação inversa (útil para calcular a posição de qualquer ponto relativa ao referencial
da garra) pode ser obtida a partir de:
𝑇 = ( 𝑇) = ( 𝑅) ( 𝑅) . 𝐷 (1.14)
0 1
Prova inversa de transformação homogénea: Deve ser claro que a partir da definição de matriz
transformação homogénea, a sua inversa pode ser obtida trocando a ordem da transformação, de tal
modo que
( 𝑇) = 𝑇= 𝑅 𝐷 (1.15)
0 1
Logo, a matriz estará definida assim que determinarmos a matriz 𝑅 e as coordenadas do vetor
translação, ou seja, a localização da origem do referencial A relativamente ao referencial B ( 𝑃 )
Sabendo que 𝑅 é ortogonal, temos que 𝑅 = ( 𝑅) = ( 𝑅)
Quanto às coordenadas do vetor translação, primeiramente, tem-se que
𝑃= 𝑅 𝑃+ 𝑃 (1.16)
Agora que 𝑃 = [𝑂 𝑂 𝑂] , coordenadas da origem de B relativamente ao referencial B, substituindo
este resultado na igualdade anterior
𝑃 = − 𝑅 𝑃 = −( 𝑅) 𝑃 (1.17)
---Fim da prova---
Cinemática direta – Exemplo 3D
A cinemática direta descreve a função que permite obter as coordenadas da garra com base nas
coordenadas generalizadas das juntas q, tal que:
𝑥 = 𝑓(𝑞)
onde,
𝑝
𝑥 = ϕ , vetor que permite descrever a posição da garra 𝑝 e a sua orientação ϕ
𝑞
𝑞 = … , vetor das variáveis das juntas, sendo 𝑞 = 𝜃 para uma junta rotativa e 𝑞 = 𝑑 para
𝑞
uma junta prismática
A transformação total (do referencial fixo 0 para o referencial da garra) obtém-se através da
combinação das transformações anteriormente enunciadas, sendo a sua matriz definida por
cos(𝑞 ) − sin(𝑞 ) 0 − sin(𝑞 )( 0,5 + 𝑞 )
) cos(𝑞 ) 0 cos(𝑞 ) (0,5 + 𝑞 )
𝑇 = 𝑇 𝑇 𝑇 = sin(𝑞
0 0 1 1,8 − 𝑞
0 0 0 1
Assim, é possível calcular a posição de qualquer ponto da garra relativamente ao referencial fixo
0, multiplicando a matriz final obtida pelo vetor homogéneo do ponto em questão. Por exemplo,
tomando p= [0 0 0 1] , 𝑞 = π/3, 𝑞 = 0.3 e 𝑞 = 0.4, vem que:
cos(𝑞 ) − sin(𝑞 ) 0 − sin(𝑞 )( 0,5 + 𝑞 ) 0 −0,693
) cos(𝑞 ) 0 cos(𝑞 ) (0,5 + 𝑞 ) 0 0,4
𝑇 𝑝 = sin(𝑞 =
0 0 1 1,8 − 𝑞 0 1,4
0 0 0 1 1 1
cos (𝜃 ) 0 −𝑠𝑖𝑛(𝜃 ) 0
) 𝑐𝑜𝑠(𝜃 )
𝑇 = 𝑠𝑖𝑛(𝜃 0 0
0 −1 0 0
0 0 0 1
cos (𝜃 ) 0 𝑠𝑖𝑛(𝜃 ) 0
) 0 −𝑐𝑜𝑠(𝜃 )
𝑇 = 𝑠𝑖𝑛(𝜃 0
0 1 0 𝑑
0 0 0 1
1 0 0 0
0 1 0 0
𝑇=
0 0 1 𝑑
0 0 0 1 Figura 4: Imagem representativa de um
manipulador e respetivos referenciais
associados
Começamos por tomar um ponto W tal que a sua posição corresponde à posição da garra. Neste
caso, coincidindo com a origem do referencial 3, as suas coordenadas podem ser lidas
diretamente através dos três primeiros elementos da quarta coluna de 𝑇. Assim, vem que
𝑥 𝑑 cos(𝜃 ) 𝑠𝑒𝑛(𝜃 ) − 𝑠𝑒𝑛(𝜃 )𝑑
𝑦 𝑑 sen(𝜃 ) 𝑠𝑒𝑛(𝜃 ) + 𝑐𝑜𝑠(𝜃 )𝑑
=
𝑧 cos(𝜃 ) 𝑑
1 1
Para separar as variáveis das quais as coordenadas de W dependem, é conveniente expressá-las
em função do referencial 1. Assim, é multiplicada à esquerda em ambos os membros da
igualdade a matriz ( 𝑇) , obtendo-se
𝑥 𝑑 cos(𝜃 ) 𝑠𝑒𝑛(𝜃 ) − 𝑠𝑒𝑛(𝜃 )𝑑
𝑦 𝑑 sen(𝜃 ) 𝑠𝑒𝑛(𝜃 ) + 𝑐𝑜𝑠(𝜃 )𝑑
( 𝑇) = ( 𝑇)
𝑧 cos(𝜃 ) 𝑑
1 1
cos (𝜃 ) 𝑠𝑖𝑛(𝜃 ) 0 0 𝑥 cos (𝜃 ) 𝑠𝑖𝑛(𝜃 ) 0 0 𝑑 cos(𝜃 ) 𝑠𝑒𝑛(𝜃 ) − 𝑠𝑒𝑛(𝜃 )𝑑
0 0 −1 0 𝑦 0 0 −1 0 𝑑 sen(𝜃 ) 𝑠𝑒𝑛(𝜃 ) + 𝑐𝑜𝑠(𝜃 )𝑑
⇔ =
−𝑠𝑖𝑛(𝜃 ) cos (𝜃 ) 0 0 𝑧 −𝑠𝑖𝑛(𝜃 ) cos (𝜃 ) 0 0 cos(𝜃 ) 𝑑
0 0 0 1 1 0 0 0 1 1
𝑥𝑐𝑜𝑠(𝜃 ) + 𝑦𝑠𝑒𝑛(𝜃 ) 𝑑 𝑠𝑒𝑛(𝜃 )
−𝑧 −𝑐𝑜𝑠(𝜃 )𝑑
⇔ = (*)
−𝑥𝑠𝑒𝑛(𝜃 ) + 𝑦𝑐𝑜𝑠(𝜃 ) 𝑑
1 1
cos(𝜃 ) = e 𝑠𝑒𝑛(𝜃 ) =
onde a solução é
−𝑥 ± 𝑥 + 𝑦 − 𝑑
𝑡=
𝑑 +𝑦
𝜃 −𝑥 ± 𝑥 + 𝑦 − 𝑑
tan ( ) =
2 𝑑 +𝑦
−𝑥 ± 𝑥 + 𝑦 − 𝑑
⇔ 𝜃 = 2 arctan
𝑑 +𝑦
⇔ 𝑥𝑐𝑜𝑠(𝜃 ) + 𝑦𝑠𝑒𝑛(𝜃 ) +𝑧 = 𝑑
Para 𝑑 ≠ 0, uma vez mais utilizando os dois primeiros componentes de (*) tem-se
𝑥𝑐𝑜𝑠(𝜃 ) + 𝑦𝑠𝑒𝑛(𝜃 ) 𝑑 sin(𝜃 )
=
−𝑧 −𝑑 cos(𝜃 )
⇔ 𝑥𝑐𝑜𝑠(𝜃 ) + 𝑦𝑠𝑒𝑛(𝜃 ) = tan(𝜃 ) . 𝑧
𝑥𝑐𝑜𝑠(𝜃 ) + 𝑦𝑠𝑖𝑛(𝜃 )
⇔ 𝜃 = arctan
𝑧
Jacobiano cinemático
De acordo com o referido em secções anteriores, sabemos que para um manipulador com n
graus de liberdade, a cinemática de posição direta pode ser representada e determinada através
da matriz de transformação homogénea
𝑅 𝐷 (3.1)
0 1
A matriz jacobiana, J, representa a forma como a posição da garra é afetada pelas deslocações
individuais das juntas, sendo usada em robótica para vários propósitos. Nesta secção
abordaremos, de um modo geral e simplificado, a utilização da matriz jacobiana para a
determinação da relação entre as velocidades linear e angular do órgão terminal, v e 𝜔, em
relação ao referencial fixo da base, e as velocidades das juntas, q’.
𝑣 𝐽
= . 𝑞̇ = J(q).q’ (3.2)
𝜔 𝐽
𝑧 . (𝑝 − 𝑝 )
, 𝑠𝑒 𝑎 𝑗𝑢𝑛𝑡𝑎 𝑖 é 𝑟𝑜𝑡𝑎𝑡𝑖𝑣𝑎
𝐽 (𝑞) = 𝑧 (3.26)
𝑧
, 𝑠𝑒 𝑎 𝑗𝑢𝑛𝑡𝑎 𝑖 é 𝑝𝑟𝑖𝑠𝑚á𝑡𝑖𝑐𝑎
𝑜
sendo,
𝑝 corresponde ao vetor posição garra relativamente ao referencial de origem,
podendo ser retirado dos três primeiros elementos da quarta coluna da matriz 𝑇
𝑝 está associado ao vetor posição da junta i-1 relativamente ao referencial fixo e
cujas coordenadas podem ser obtidas através dos três elementos da quarta coluna de
𝑇
𝑧 é o vetor unitário definido segundo o eixo da junta i e expresso no referencial da
base e pode ser também calculado a partir dos três elementos da terceira coluna de 𝑇
Denote-se que a matriz Jacobiana depende do referencial relativamente ao qual a velocidade
da garra é expressa. Efetivamente, as equações acima permitem a computação em relação ao
referencial fixo da base; contudo, para representar a matriz relativamente a um outro
referencial u, basta obter a matriz rotação 𝑅, sendo que a relação das velocidades é dada por
𝑅 0
𝐽 = . 𝐽 (3.27)
0 𝑅
Singularidades
Como abordamos anteriormente, a matriz jacobiana, no que concerne à cinemática diferencial,
𝑣
pode ser definida com uma função que permite obter o vetor (rx1) 𝑣 = correspondente à
𝜔
velocidade da garra e o vetor (nx1) 𝑞̇ associada à velocidade das juntas, podendo ser também
encarada como uma função da configuração das juntas. As configurações para as quais |J|=0
são chamadas de singularidades cinemáticas. Assim, quando J se torna não invertível para
determinadas configurações, a equação (3.2) torna-se indefinida e o manipulador fica
bloqueado em certas direções (determinados componentes da velocidade sem correspondência
no espaço das juntas), isto é, atinge uma singularidade. As existências das mesmas podem afetar
profundamente a eficácia e controlo do manipulador, pois representam configurações em que
a mobilidade da estrutura é reduzida. Na proximidade de singularidades, quando o
determinante da matriz é próximo de 0, a pequenas velocidades no espaço operacional
(cartesiano) correspondem grandes velocidades no espaço das juntas (efeito similar à divisão
por 0).
Sabendo que o estudo do determinante apenas se destina a matrizes quadradas, ou seja,
quando r=n, o manipulador consegue aceder a todas as posições em SE(3). Quando r>n, isto é,
quando o braço robótico tem o seu movimento limitado pois o número de juntas é inferior ao
número de componentes de velocidade possíveis no espaço 3D, a matriz jacobina não é
quadrada. Nestas situações, procede-se à eliminação das linhas do vetor velocidade e da matriz
jacobiana associadas às componentes das velocidades sobre as quais o manipulador não
consegue atuar, de forma a obter uma matriz quadrada.
Para ilustrar o comportamento imprevisível de um manipulador em singularidade,
consideremos o seguinte exemplo.
Tratando-se de um braço de duas ligações, basta considerar
a velocidade linear no que diz respeito ao eixo xx e yy,
obtendo assim uma matriz quadrada da forma (cálculos em anexo)
−𝑎 𝑠𝑒𝑛(𝜗 ) − 𝑎 𝑠𝑒𝑛(𝜗 + 𝜗 ) −𝑎 𝑠𝑒𝑛(𝜗 + 𝜗 )
𝐽=
𝑎 𝑐𝑜𝑠(𝜗 ) − 𝑎 𝑐𝑜𝑠(𝜗 + 𝜗 ) 𝑎 𝑐𝑜𝑠(𝜗 + 𝜗 )
Anexo
𝑧 . (𝑝 − 𝑝 ) 𝑧 . (𝑝 −𝑝 )
𝐽= =
𝑧 𝑧
0 𝑎1 cos(𝜃1 ) + 𝑐𝑜𝑠(𝜃1 + 𝜃2 )𝑎2 0 𝑐𝑜𝑠(𝜃1 + 𝜃2 )𝑎2
⎡ ⎤
0 . 𝑎1 𝑠𝑒𝑛(𝜃1 ) + 𝑠𝑒𝑛(𝜃1 + 𝜃2 )𝑎2 0 . 𝑠𝑒𝑛(𝜃1 + 𝜃2 )𝑎2
⎢ ⎥
= ⎢1 0 1 0 ⎥
⎢ 0 0 ⎥
⎢ 0 0 ⎥
⎣ 1 1 ⎦
Como as juntas não contribuem para as velocidades angulares e lineares no eixo zz, bem como
para a velocidade angular no eixo xx e yy – o manipulador é incapaz de produzir movimento
nessas direções – podemos simplificar e obter uma matriz quadrada
Bibliografia/ Webgrafia
Columbian University, Class Notes: Kinematics Singularities and Jacobians. Disponível em
www.cs.columbia.edu. Data de consulta a 05/02/2021
CRANE, Crane; DUFFY, Joseph, Kinematics Analysis of Robot Manipulators. 1 ed. Inglaterra:
Cambridge Univesity Press, 2008. ISBN-13: 978-0521047937
LOPES, António, Modelação cinemática e dinâmica de manipuladores de estrutura em série.
Documento no âmbito do mestrado em automação, instrumentação e controlo na Faculdade de
Engenharia da Universidade do Porto, Porto. 101 pp
SICILIANO, Bruno [et al.], Robotics: Modelling, Planning and Control. 9 ed. Itália: Springer, 2009.
ISBN 978-1-84628-641-4
Study Wolf, Robot Control Part 1: Forward transformation matrices. Disponível em
www.studywolf.wordpress.com. Data de consulta a 01/02/2021
TRIOLA, Christopher (2009), Special orthogonal groups and rotations. Documento no âmbito de
requerimento de honra em matemática na Universidade Mary Whasington, Virginia. 27 pp
WAMPLER, Charles, SOMMESE, Andrew (2011) Numerical Algebraic Geometry and ALgebraic
Kinematics. Documento apoiodo pela National Science Foundation, pela Duncan Chair of the
University of Notre Dame e pela Genral Motors Research. 87 pp