Você está na página 1de 26

UNIVERSIDADE DE SÃO PAULO

ESCOLA DE ENGENHARIA DE SÃO CARLOS


ENGENHARIA MECATRÔNICA

Filipe dos Santos Stecconi - 11232312


Rafael Vasconcelos Martins - 11299791
Vitor Pacheco Andrade - 8549639

MANIPULADOR ROBÓTICO KR 1000 TITAN

SÃO CARLOS - SP
2022
1

SUMÁRIO

1. INTRODUÇÃO 2

2. CINEMÁTICA DIRETA 3
2.1. TRANSFORMAÇÕES DE BASES 3
2.2. NOTAÇÃO DENAVIT-HARTENBERG 3
2.3. LIMITAÇÕES DE JUNTAS 5
2.4. CÓDIGOS DA CONSTRUÇÃO DO KUKA E DA CINEMÁTICA DIRETA 6
2.5. RESULTADOS OBTIDOS 7
2.5.1. Tabelas de parâmetros da matriz Denavit-Hartenberg 7
2.5.2. Imagens da simulação 8

3. CINEMÁTICA INVERSA 9
3.1. ENVELOPE DE TRABALHO DO ROBÔ 9
3.2. CÓDIGO DA CINEMÁTICA INVERSA 10
3.3. RESULTADOS OBTIDOS 10
3.3.1. Dados numéricos 10
3.3.2. Imagens da simulação 11

4. JACOBIANO 12
4.1. DEFINIÇÃO DE JACOBIANO 12
4.2. APLICANDO O JACOBIANO 12

5. DINÂMICA 14
5.1. EQUAÇÕES DE MOVIMENTO DE CORPO RÍGIDO 14
5.2. DINÂMICA DIRETA 14
5.3. CÓDIGO E DEFINIÇÕES DAS VARIÁVEIS DINÂMICAS 15

6. CONTROLE 17

7. SIMULAÇÃO DA TRAJETÓRIA 20
7.1. CÓDIGO 20
7.2. RESULTADOS 22

8. REFERÊNCIAS 25
2

1. INTRODUÇÃO

Com o passar dos anos, o aumento das necessidades de produção, bem


como a segurança no meio de trabalho, fez com que o uso de robôs no meio
industrial fosse cada vez mais utilizado e atingindo números recordes ao redor do
planeta. Dentre as motivações desse movimento destacam-se a economia de verba,
visto que não seria mais necessário o pagamento dos salários de cada trabalhador
e, principalmente, uma maior precisão na fabricação de certas peças.
Diante desse contexto, tem-se como objetivo no presente trabalho realizar a
análise cinemática, dinâmica e de controle do robô modelo Kuka KR 1000 TITAN
indicado na Figura 1.

Figura 1 - Robô Kuka KR 1000 TITAN com cotas referentes ao envelope de trabalho

Fonte: Dados do fabricante


3

2. CINEMÁTICA DIRETA

2.1. TRANSFORMAÇÕES DE BASES

A cinemática direta é o mapeamento das coordenadas das juntas, ou


configuração do robô, para a pose do end-effector.
Isso é traduzido em uma série de transformações que percorrerão os links do
braço robótico, representado pela notação a seguir:

Com essa representação, pode-se representar um determinado ponto em


diferentes referenciais. Aplicando a transformação, deseja-se representar um
mesmo ponto P e elaborar uma igualdade no que diz respeito à Figura 2:

Figura 2 - Transformações consecutivas entre bases

Fonte: Notas de aula

Isso é obtido com a notação:

2.2. NOTAÇÃO DENAVIT-HARTENBERG

Como uma das soluções para a descrição da configuração supracitada do


end-effector e utilizando os elementos acima, apresenta-se a notação de
Denavit-Hartenberg. Esta notação define que para um manipulador com N juntas
numeradas de 1 a N, existem N + 1 links, numerados de 0 a N. A junta j conecta o
link j - 1 ao link j e os move um em relação ao outro. Segue-se que o link conecta a
junta j à junta j + 1. O link 0 é a base do robô, normalmente fixa, e o link N, o último
4

link do robô, representa o end-effector ou ferramenta. Isso é feito utilizando os


seguintes parâmetros:

Tabela 1 – Parâmetros da matriz de Denavit-Hartenberg

ângulo entre os
variável de uma
Ângulo de junta θj eixos xj-1 e xj em
junta de revolução
relação ao eixo zj-1

distância da
Deslocamento de origem da base j-1 variável de uma
dj
link ao eixo xj ao longo junta prismática
do eixo zj-1

distância entre os
Comprimento de eixos zj-1 e zj ao
aj constante
link longo do eixo xj; é
paralelo a ẑj-1 ⨯ ẑj

ângulo do eixo zj-1


Torção de link ɑj ao eixo zj em constante
relação ao eixo xj

σ=R para junta de


revolução e σ=P
Tipo de junta σj constante
para junta
prismática
Fonte: Elaborada pelos autores

Lançando mão dessas definições, chega-se das transformações consecutivas


da base do braço robótico até o end-effector em função dos parâmetros de
Denavit-Hartenberg:

Ademais, de forma a generalizar a expressão acima, adiciona-se dois


elementos de transformação, sendo ξB uma transformação que posiciona o robô em
uma base arbitrária, como um chão de fábrica, e adiciona-se ξT para descrever a
postura da ponta da ferramenta, uma vez que a base {N} é muitas vezes definida
como o centro do mecanismo esférico do punho, chegando a:
5

Isso resulta em uma estrutura de matriz que descreve o end-effector no


espaço, conforme apresentado na Figura 3:

Figura 3 - Matriz descrevendo o end-effector no espaço

Fonte: Notas de aula

Assim, utilizando a toolbox do Peter Corke disponível no Matlab e as medidas


obtidas do CAD e dos desenhos do robô Kuka KR 1000 TITAN, foi possível obter os
parâmetros dimensionais e limites geométricos do robô, permitindo uma primeira
simulação usando a ferramenta de cinemática direta.

2.3. LIMITAÇÕES DE JUNTAS

Aplicando o método “qlim” da toolbox em cada link, implementou-se os limites


de operação do robô com base no datasheet da fabricante para esse modelo (Kuka
KR 1000 TITAN), que está apresentado na Tabela 2.

Tabela 2 - Limitações de ângulo das juntas para o Kuka KR 1000 TITAN

Range of motion,
Axis
software-limited

1 +/- 150°

2 +17.5° to -130°

3 +145° to -110°

4 +/- 350°

5 +/- 118°

6 +/- 350°
Fonte: Elaborada pelos autores
6

2.4. CÓDIGOS DA CONSTRUÇÃO DO KUKA E DA CINEMÁTICA DIRETA

% === Kuka KR 1000 Titan (6 juntas RRRRRR) ===

clc
clear all
close all

% === Parâmetros de DH ===

% === Gerando as matrizes de DH ===


syms q1 q2 q3 q4 q5 q6 c1 c2 c3 s1 s2 s3 a1 a2 a3 a4 a5 a6 d1 d2 d3 d4 d5 d6

% Comprimento das juntas em metros

a1 = 0.6;
a2 = 1.4;
a3 = 0; % para fins de simulação
d1 = 1.1;
d4 = 1.6;
d6 = 0.4;

% === Gerando os elos ===

L(1) = Link([0 d1 a1 pi/2 0]);


L(2) = Link([0 0 a2 0 0]);
L(3) = Link([0 0 a3 pi/2 0]);
L(4) = Link([0 d4 0 pi/2 0]);
L(5) = Link([0 0 0 -pi/2 0]);
L(6) = Link([0 d6 0 0 0]);

% Criando o robô
kuka = SerialLink(L, 'name', 'Braço articulado de 6 juntas');

qf0 = [0 0 0 0 0 0]; %variáveis iniciais


Tf = kuka.fkine(qf0); %Matriz de DH para os valores iniciais
qs = [q1, q2, q3, q4, q5, q6]; %variáveis de junta analíticas
Ts = kuka.fkine(qs); %obtendo a matriz em valores simbolicos

% Limites dos ângulos de junta


L(1).qlim = [-2.61799 2.61799];
L(2).qlim = [-0.69813 1.87622];
L(3).qlim = [-1.91986 2.53073];
7

L(4).qlim = [-6.10865 6.10865];


L(5).qlim = [-2.05949 2.05949];
L(6).qlim = [-6.10865 6.10865];

kuka.plot(qf0)

kuka.teach % para controlar os angulos do robo

2.5. RESULTADOS OBTIDOS

O robô é composto por 6 juntas de rotação (RRRRRR), na simulação do Peter


Corke recebem valor de 0 no offset. Utilizando a metodologia de Denavit -
Hartenberg obtemos as matrizes de transformação, com q1, q2, q3, q4, q5 e q6
sendo as variáveis de juntas rotativas.

2.5.1. Tabelas de parâmetros da matriz Denavit-Hartenberg

Figura 4 - Tabela de parâmetros D-H

Fonte: Elaborada pelos autores

Usando o algoritmo de Denavit - Hartenberg e o código descrito acima no


Matlab, foi obtida a Matriz Ts, sendo ela a matriz que contém todos os parâmetros e
relaciona o sistema inercial com o end-effector. Como o Matlab utiliza métodos
numéricos a matriz final Ts analítica ficou muito grande para ser apresentada no
relatório, os valores da matriz já solucionada para as posições requeridas podem ser
melhor visualizadas.
8

Figura 5 - Matriz DH para a posição de junta inicial qf0 = [0 0 0 0 0 0]

Fonte: Elaborada pelos autores

2.5.2. Imagens da simulação

Figura 6 - Simulação do braço robótico

Fonte: Elaborada pelos autores

Ao rodar o código da cinemática direta é possível observar o robô e


movimentar cada junta manualmente manipulando as variáveis de juntas q1 … q6
alterando, assim, a posição do braço.
9

3. CINEMÁTICA INVERSA

Para a cinemática inversa, parte-se dos mesmos princípios apresentados no


item 2.2 a respeito da notação de Denavit-Hartenberg, apenas realizando
determinadas operações para obtê-la.
Na cinemática direta, determina-se a pose do end-effector dadas as
coordenadas da junta, além das transformações opcionais relacionadas à base e à
ferramenta. No entanto, geralmente apresenta-se o problema inverso: dada a
postura desejada do end-effector ξE, deseja-se saber as coordenadas de junta
necessárias. Este é o problema de cinemática inversa que é escrito na forma
funcional como:

−1
𝑞 = 𝒦 (ξ)

Adicionalmente, complementa-se tal conceito apresentando a seguinte figura


que aponta as relações entre espaços e cinemáticas:

Figura 7 - Relações entres espaços na descrição do robô

Fonte: Notas de aula

3.1. ENVELOPE DE TRABALHO DO ROBÔ

O envelope de trabalho do robô é todo o espaço varrido dentro do qual o robô


pode alcançar com o end-effector, conforme explicitado na Figura 8. Esse espaço é
importante de ser conhecido e implementado para que se encontre uma solução
quando se realiza a cinemática inversa.
10

Figura 8 - Envelope de trabalho exposto em um ambiente CAD

Fonte: Elaborada pelos autores


3.2. CÓDIGO DA CINEMÁTICA INVERSA

% === cinemática inversa ===

Ti = transl(2,2,2); % Coordenadas requeridas (x,y,z) do end-effector (mudar para a


requerida)
% Basear-se no envelope de trabalho para as coodenadas
qi = kuka.ikine(Ti); %coordenadas de juntas (rad) para o Ti obtido
kuka.plot(qi) % plota a posição final graficamente

3.3. RESULTADOS OBTIDOS

3.3.1. Dados numéricos

Figura 9 - Coordenadas requeridas

Fonte: Elaborada pelos autores

Figura 10 - Coordenadas de juntas necessárias para (x,y,z) = (2,2,2)

Fonte: Elaborada pelos autores


11

3.3.2. Imagens da simulação

Figura 11 - Coordenadas de juntas necessárias para (x,y,z) = (2,2,2)

Fonte: Elaborada pelos autores

A posição (x,y,z) = (2,2,2) é alcançada automaticamente e é apresentada


graficamente através do código, o sistema apresenta apenas 1 solução, embora
existam outras coordenadas de juntas que alcançariam o mesmo resultado.
12

4. JACOBIANO

4.1. DEFINIÇÃO DE JACOBIANO

Um Jacobiano é o equivalente de matriz da derivada - a derivada de uma


função de valor vetorial de um vetor em relação a um vetor. Se y = f (x) e x ∈ Rn e y
∈ Rm, logo o Jacobiano é a matriz m × n, o que é explicitado a seguir:

4.2. APLICANDO O JACOBIANO

Inicialmente, definiremos uma relação entre o diferencial de posição no


espaço cartesiano dp e o diferencial de posição no espaço das juntas dq. Dessa
forma, obteremos o Jacobiano na seguinte forma:

𝑑𝑝
𝑑𝑞
= 𝐽(𝑞)

Rearranjando, tem-se a seguinte relação:

𝑑𝑝 = 𝐽(𝑞)𝑑𝑞

Aplicando um diferencial de tempo, teremos as velocidades relacionadas da


seguinte forma:

𝑑𝑝 𝑑𝑞
𝑑𝑡
= 𝐽(𝑞) 𝑑𝑡

Assim, a matriz Jacobiana mapeia a velocidade a partir das coordenadas das


juntas ou a partir configuração do robô pelo espaço de coordenadas cartesianas do
end-effector, além de tal matriz configurar-se como uma função das coordenadas da
junta (CORKE, 2017). Desse modo, fica descrita a caracterização do jacobiano em
relação a um referencial arbitrado.
13

4.3 Código do jacobiano

% === Jacobiano ===

J0 = jacob0(kuka, qf0); %Jacobiano da posição inicial


J = jacob0(kuka,qi); %Jacobiano da posição qi
Js = jacob0(kuka,qs); %Jacobiano analítico

4.4 Resultados obtidos

O jacobiano analítico fica muito extenso para ser apresentado no relatório


devido aos métodos numéricos utilizados pelo Matlab, assim demonstra-se apenas
os resultados para o Jacobiano das coordenadas de juntas iniciais e para as
coordenadas de juntas obtidas na cinemática inversa.

Figura 12 - Jacobiano para as coordenadas iniciais qf0

Fonte: Elaborada pelos autores

Figura 13 - Jacobiano paras as coordenadas q2

Fonte: Elaborada pelos autores


14

5. DINÂMICA

5.1. EQUAÇÕES DE MOVIMENTO DE CORPO RÍGIDO

Para o movimento de corpo rígido, busca-se unir todos os elementos do corpo


estudado, uma vez que a situação no link individual é bastante complexa, mas para
a série de links o resultado pode ser escrito como um conjunto de equações
diferenciais acopladas na forma matricial:

onde , e são respectivamente o vetor de coordenadas, velocidades e


acelerações generalizadas da junta, M é a matriz de inércia do espaço da junta, C é
a matriz de acoplamento de Coriolis e centrípeta, F é a força de atrito, G é a carga
de gravidade, e Q é o vetor de forças atuadoras generalizadas associadas às
coordenadas generalizadas q. O último termo fornece as forças conjuntas devido a
uma chave W aplicada no efetor final e J é o manipulador Jacobiano.

5.2. DINÂMICA DIRETA

Para determinar o movimento do manipulador em resposta às forças e


torques aplicados às suas articulações, exigimos a dinâmica direta ou dinâmica
integral. Reorganizando as equações de movimento acima, obtemos a aceleração
da junta:

A descrição dinâmica do robô foi realizada utilizando o MatLab e os dados


físicos obtidos através de CADs em comum e utilizando algumas correlações, visto
que o CAD específico do Kuka 1000 apresentou alguns problemas e não foi possível
obter os dados a partir dela.

Os parâmetros físicos: massas dos elos, momentos de inércia, centros de


gravidade e limites das juntas estão descritos no código. O toolbox do Peter Corke
permite que os cálculos das acelerações de juntas, aceleração de coriolis,
velocidades e deslocamentos sejam determinados dinamicamente tendo esses
parâmetros definidos. Os resultados do dimensionamento dinâmico ficam mais
evidentes na hora de realizar as simulações de trajetória.
15

5.3. CÓDIGO E DEFINIÇÕES DAS VARIÁVEIS DINÂMICAS

% === Dinâmica ===


% === Declarando variáveis ===

% Limites dos ângulos de junta


L(1).qlim = [-2.61799 2.61799];
L(2).qlim = [-0.69813 1.87622];
L(3).qlim = [-1.91986 2.53073];
L(4).qlim = [-6.10865 6.10865];
L(5).qlim = [-2.05949 2.05949];
L(6).qlim = [-6.10865 6.10865];

% Centro de massa dos elos em metros (m)


L(1).r = [0 0 195]*10^-3;
L(2).r = [333.26 0 798.26]*10^-3;
L(3).r = [600.91 0 1854.48]*10^-3;
L(4).r = [659.98 0 2430.13]*10^-3;
L(5).r = [1636.55 0 2565.02]*10^-3;
L(6).r = [2058.1 0 2582.5]*10^-3;

% Massa dos elos em kg


L(1).m = 187.50;
L(2).m = 315.70;
L(3).m = 100.35;
L(4).m = 75.45;
L(5).m = 57.55;
L(6).m = 15.15;

% Momento de Inércia dos elos


L(1).I = [18785453.21 -3274.69 976.61;
-3274.69 161561564.45 -290414.2;
976.61 -290414.2 8031434.26]*60*10^-9;
L(2).I = [131905910.24 -292.57 -237.45;
-292.57 12399862.24 8427579.03;
-237.45 8427579.03 129717198.15]*60*10^-9;
L(3).I = [1505581763.62 -13230.66 -7828.15;
-13230.66 201885176.69 405406756.4;
-7828.15 405406756.4 1319190669.23]*60*10^-9;
L(4).I = [1885494297.73 -212.96 -9.77;
-212.96 17643503.9 221569806.64;
-9.77 221569806.64 1858760807.16]*60*10^-9;
L(5).I = [1804771585.73 1834.12 181.59;
1834.12 25350445.96 206013312.87;
16

181.59 206013312.87 1780431864.3]*60*10^-9;


L(6).I = [1885494297.73 -212.96 -9.77;
-212.96 27643503.9 221569806.64;
-9.77 221569806.64 1858760807.16]*60*10^-9;

% Gravidade em m/s^2
L(1).G = 9.81;
L(2).G = 9.81;
L(3).G = 9.81;
L(4).G = 9.81;
L(5).G = 9.81;
L(6).G = 9.81;

% Inércia do Motor
L(1).Jm = 0;
L(2).Jm = 0;
L(3).Jm = 0;
L(4).Jm = 0;
L(5).Jm = 0;
L(6).Jm = 0;

% Revisão dos dados dinâmicos


kuka.dyn
17

6. CONTROLE

Tendo em vista que o Kuka é composto por 6 juntas, utiliza servo-motores


robustos devido às altas cargas e de que a dinâmica do robô foi realizada através do
código e não equacionadas; o controle se tornou uma tarefa bastante complicada,
portanto foram realizadas diversas simplificações.
A malha de controle teórica é uma das mais utilizadas, um controle linear PID
de malha fechada, aplicada a um servo motor CC com encoder interno que é o
utilizado nas juntas do Kuka, aplicado à cada junta (SISO). Sendo o output o ângulo
do motor determinado pelo encoder e o input a tensão.

Figura 20 - Malha de controle fechada estabelecida

Fonte: Elaborada pelos autores

Foi utilizado uma malha de um motor CC pronta, mas os valores das


características do motor foram alteradas para se adequar dinamicamente ao
problema em questão. A função transferência relaciona o ângulo de saída do motor
com a entrada em tensão:

Tabela 3 - Valores numéricos das características físicas do motor

Símbolo Nome Valor Unidades

Constante de Torque do
Kt 0.4602 N.m
Motor

Constante da Força Contra


Km 0.4602 V/(rad/s)
Eletromotriz
18

Rm Resistência da Armadura 156 Ω

Kg Redução 80

Coeficiente Viscoso de
Beq 2.4e-1 N.m.s
Amortecimento

Momento de Inércia do
Jm 2.76e-5 kg.m2
Rotor

Momento de Inércia
Jeq 1.2e-1 kg.m2
Equivalente da Carga

ηm Eficiência do Motor 0.62

ηg Eficiência da Redução 0.85


Fonte: Elaborada pelos autores

Com o código de controle no Matlab as Funções Transferências foram


calculadas, a contínua e a discreta (com tempo de amostragem To = 0.010 ):

Figura 21 - Função transferência da planta contínua

Fonte: Elaborada pelos autores

Figura 22 - Função transferência da planta discretizada

Fonte: Elaborada pelos autores

Com as FTs definidas a ferramenta sisotool do Matlab foi usada para obter
uma resposta que se adequasse à nossa aplicação, com a opção do PID tuning, foi
obtido o seguinte resultado para o controlador:
19

Figura 23 - Controlador encontrado pelo PID Tuning

Fonte: Elaborada pelos autores

Figura 24 - Resposta degrau dado o controlador obtido

Fonte: Elaborada pelos autores

Analisando o resultado obtido, o tempo de acomodação ficou em aproximadamente


1.5 segundo, o que não é um bom resultado, mas aceitável devido às suas dimensões, e o
pico da resposta foi atingido em 0.5 segundos com um overshoot pequeno, de 11.4%.
20

7. SIMULAÇÃO DA TRAJETÓRIA

Novamente, através dos códigos no Matlab e utilizando a toolbox do Peter


Corke, foi obtido as simulações e gráficos das variáveis dinâmicas ao longo da
trajetória. Vale destacar que o ponto final da trajetória é determinado através da
cinemática inversa, portanto, pode-se alterar os valores das coordenadas em que se
deseja que o robô alcance ao final da trajetória, desde que os valores estejam dentro
do envelope de trabalho do Kuka
Para os resultados que serão apresentados foi utilizado Ti = transl(3,1.5,1), ou
seja, o end-effector sairá da posição inicial (x,y,z) = (0,0,0) e alcançará (x,y,z) =
(3,1.5,1), podemos alterar esse valor para (x,y,z) = (2,2,2), por exemplo, e obteremos
respostas totalmente diferentes para todas as juntas.

7.1. CÓDIGO

% === cinemática inversa ===


% === Escolhendo o ponto inicial (qb) e final (qe) da trajetória ===

qb = [0 0 0 0 0 0];
Ti = transl(3,1.5,1); % Coordenadas requeridas (x,y,z) do end-effector (mudar para a
requerida)
% Basear-se no envelope de trabalho para as coodenadas
qe = kuka.ikine(Ti); %coordenadas de juntas (rad) para o Ti obtido
%kuka.plot(qi) % plota a posição final graficamente

% === Jacobiano ===

J0 = jacob0(kuka, qf0); %Jacobiano da posição inicial


J = jacob0(kuka,qe); %Jacobiano da posição qe
Js = jacob0(kuka,qs); %Jacobiano analítico

Tempo = 0:1:30;

Traj = jtraj(qb,qe,Tempo); %dynamica direta

[Q, QD, QDD] = jtraj(qb,qe,Tempo);%dynamica direta valores

Mov = kuka.fkine(Traj);
X = transl(Mov);

% === Plots dos gráficos e simulação ===

figure
21

%plot da trajetoria do end-effector


plot3(X(:,1),X(:,2),X(:,3))
title('Trajetória do end-effector')

figure
%simulação da trajetória do robo
kuka.plot(qb)
hold on
plot3(X(:,1),X(:,2),X(:,3))
kuka.plot(Traj)
title('Trajetória')

figure
%plotando as acelerações
plot(QDD(:,1))
hold on
plot(QDD(:,2))
plot(QDD(:,3))
plot(QDD(:,4))
plot(QDD(:,5))
plot(QDD(:,6))
title('Acelerações')

figure
%plotando as velocidades
plot(QD(:,1))
hold on
plot(QD(:,2))
plot(QD(:,3))
plot(QD(:,4))
plot(QD(:,5))
plot(QD(:,6))
title('Velocidades')

figure
%plotando as posições
plot(Q(:,1))
hold on
plot(Q(:,2))
plot(Q(:,3))
plot(Q(:,4))
plot(Q(:,5))
plot(Q(:,6))
title('Posições')
22

C = kuka.coriolis(q,qd);

7.2. RESULTADOS

Os resultados numéricos podem ser visualizados ao verificar as variáveis


dentro do código, neste tópico serão apenas apresentados os gráficos. Observa-se
na Figura 14 que a aceleração de Coriolis possui componentes desprezíveis para o
movimento analisado, o que consequentemente descarta a consideração desse
efeito na dinâmica do robô.

Figura 25 - Aceleração de coriolis

Fonte: Elaborada pelos autores

Figura 26 - Gráfico das posições das juntas

Fonte: Elaborada pelos autores


23

Figura 27 - Gráfico das Velocidades das juntas

Fonte: Elaborada pelos autores

Figura 28 - Gráfico das acelerações das juntas

Fonte: Elaborada pelos autores


24

Figura 29 - Simulação do robô realizando a trajetória

Fonte: Elaborada pelos autores

Figura 30 - Gráfico da trajetória descrita

Fonte: Elaborada pelos autores


25

8. REFERÊNCIAS

[1] https://physika.info/site/documents/PFC-Itallo(2014).pdf

[2]
https://www.kuka.com/pt-br/produtos-servi%C3%A7os/sistemas-de-rob%C3%B4/rob
%C3%B4s-industriais/kr-1000-titan

[3] https://grabcad.com/library/robot-kuka-kr1000-1

[4]
https://mecanica.ufes.br/sites/engenhariamecanica.ufes.br/files/field/anexo/2009-2_f
elipe_padilha_e_beatriz_miranda.pdf

[5] CORKE, Peter I. Robotics Toolbox for MATLAB®. 10. ed. 2020. Disponível em:
https://petercorke.com/download/27/rtb/1050/rtb-manual.pdf.

[6] BECKER, Marcelo. Planejamento de Trajetórias para Manipuladores


Robóticos. 2022. Notas de aula.

[7] BECKER, Marcelo. Dinâmica. Notas de aula.

[8] BECKER, Marcelo. Jacobiano. Notas de aula.

[9] BECKER, Marcelo. Cinemática Inversa. Notas de aula. Notas de aula.

[10] BECKER, Marcelo. Matemática Básica e Cinemática Direta. Notas de aula.

[11] CORKE, Peter I. Robotics, vision and control: fundamental algorithms in


MATLAB. 2. ed. Berlin: Springer, 2017.

[12] CORKE, Peter I. Serial link documentation. Disponível em:


https://www.petercorke.com/RTB/r9/html/SerialLink.html.

[13] OGATA, Katsuhiko. Engenharia de controle moderno. 5. ed. Rio de Janeiro:


Prentice Hall. 2011.

Você também pode gostar