sem0317 sem0317 – aula aula 9 planejamento de trajetórias … · espaço das juntas •...

89
SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias Planejamento de Trajetórias em Manipuladores Robóticos em Manipuladores Robóticos em Manipuladores Robóticos em Manipuladores Robóticos Prof. Dr. Marcelo Prof. Dr. Marcelo Becker Becker SEM - EESC - USP

Upload: truongthuy

Post on 10-Nov-2018

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

SEM0317 SEM0317 –– Aula Aula 99

Planejamento de Trajetórias Planejamento de Trajetórias em Manipuladores Robóticosem Manipuladores Robóticosem Manipuladores Robóticosem Manipuladores Robóticos

Prof. Dr. Marcelo Prof. Dr. Marcelo BeckerBeckerSEM - EESC - USP

Page 2: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

•• IntroduçãoIntrodução

• Programação Explícita

– Espaço das Juntas

– Espaço Cartesiano

Sumário da AulaSumário da Aula

EESC-USP © M. Becker 2007

– Espaço Cartesiano

– Observações

• Programação Baseada em Modelos

• Exercícios Recomendados

• Bibliografia Recomendada

2/89

Page 3: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

IntroduçãoIntrodução

• Como obter a trajetória que descreve o movimento desejado para o manipulador robótico?

EESC-USP © M. Becker 2007

– Cinemática e Dinâmica conhecidas...– Técnicas:

1.1. Programação ExplícitaProgramação Explícita: usuário fornece uma trajetória pré-definida que o manipulador deve seguir– Posições, Velocidades e Acelerações desejadas;– Presença de Obstáculos, etc.

3/89

Page 4: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

IntroduçãoIntrodução

• Como obter a trajetória que descreve o movimento desejado para o manipulador robótico?

EESC-USP © M. Becker 2007

– Cinemática e Dinâmica conhecidas...– Técnicas:

2.2. Programação Baseada em ModelosProgramação Baseada em Modelos: usuário especifica modelos geométricos do manipulador e obstáculos e descreve a tarefa a ser executada através desses modelos– Condições de contorno para obter a trajetória desejada

4/89

Page 5: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

IntroduçãoIntrodução

• Como obter a trajetória que descreve o movimento desejado para o manipulador robótico?

EESC-USP © M. Becker 2007

– Cinemática e Dinâmica conhecidas...– Técnicas:

3.3. Programação Baseada em TarefasProgramação Baseada em Tarefas: usuário especifica comandos para o manipulador: “pegar parafuso A e colocá-lo no furo B” (task-level controller)– Cuidado com singularidades...

5/89

Page 6: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

•• IntroduçãoIntrodução

•• Programação ExplícitaProgramação Explícita– Espaço das Juntas

– Espaço Cartesiano

Sumário da AulaSumário da Aula

EESC-USP © M. Becker 2007

– Espaço Cartesiano

– Observações

• Programação Baseada em Modelos

• Exercícios Recomendados

• Bibliografia Recomendada

6/89

Page 7: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Programação ExplícitaProgramação Explícita

• Como obter a trajetória que descreve o movimento desejado para o manipulador robótico?

– Cinemática e Dinâmica conhecidas...

EESC-USP © M. Becker 2007

– Cinemática e Dinâmica conhecidas...– Trajetória:

• Formas de representação• Tempo real: 60 ~ 2000 Hz

– Trajetória pré-definida:• Posições, Velocidades e Acelerações desejadas;• Presença de Obstáculos• Interface com usuário

7/89

Page 8: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Programação ExplícitaProgramação Explícita

• Modos de controle para manipuladores robóticos

Presença de ObstáculosPresença de ObstáculosSIMSIM NÃONÃO

EESC-USP © M. Becker 2007

SIMSIM NÃONÃO

SIMSIM

NÃONÃOTra

jetó

rias

Tra

jetó

rias

De

finid

as

De

finid

as

Planejador de trajetórias Planejador de trajetórias offoff--line livre de colisões e line livre de colisões e acompanhamento onacompanhamento on--line line da trajetóriada trajetória

Planejador de trajetórias Planejador de trajetórias offoff--line e acompanhamento line e acompanhamento onon--line da trajetórialine da trajetória

Controlador de PosiçãoControlador de PosiçãoControlador de posição Controlador de posição com detecção e desvio com detecção e desvio de obstáculos onde obstáculos on--line line

8/89

Page 9: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Programação ExplícitaProgramação Explícita

• Modos de controle para manipuladores robóticos

Condições de Contornoda Trajetória

EESC-USP © M. Becker 2007

Planejador de Planejador de TrajetóriasTrajetórias

da Trajetória

Especificaçõesda Trajetória

Limites Dinâmicos do Manipulador

)(),(),(),(

)(,)(),(

ttvttp

ttt

Ωφ

θθθ &&&

9/89

Page 10: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Programação ExplícitaProgramação Explícita

• Movimento desejado para o manipulador robótico?

Sistema de Referência da Ferramenta

Câmera

Sistema de Referência da Ferramenta

Câmera– Movimento do sistema de coordenadas da

EESC-USP © M. Becker 2007

Sistema de Referência da Ferramenta

Sistema de Referência do Punho

Sistema de Referência do Robô

Ferramenta

Sistema de Referência da Estação

Sistema de Referência da Peça

Sistema de Referência da Ferramenta

Sistema de Referência do Punho

Sistema de Referência do Robô

Ferramenta

Sistema de Referência da Estação

Sistema de Referência da Peça

de coordenadas da ferramenta T relativo ao da estação S

– Movimento desacoplado das njuntas do manipulador, etc.

S

T

10/89

Page 11: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Programação ExplícitaProgramação Explícita

• Movimento desejado para o manipulador robótico?

– Movimento desacoplado: • Independe do manipulador, ferramentas, peças a

EESC-USP © M. Becker 2007

• Independe do manipulador, ferramentas, peças a serem manuseadas, etc.

– Problema básico:• Tinicial → Tfinal• Mudança de posição e orientação da ferramenta com

relação à estação S

11/89

Page 12: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Programação ExplícitaProgramação Explícita

• Movimento desejado para o manipulador robótico?

– No caso de trajetórias mais complexas:• Seqüência de posições e orientações desejados

EESC-USP © M. Becker 2007

• Seqüência de posições e orientações desejados (intermediários às posições inicial Tinicial e final da ferramenta Tfinal)

• Cada “ponto” intermediário: Tintermediárioi

• Especifica-se atributos espaciais e temporais Movimentos “suaves” (funções contínuas cujas derivadas

também são contínuas - 1ªs e às vezes 2ªs) Evitar movimentos com variações bruscas de aceleração (Jerk)

pois geram altas vibrações e atritos...

12/89

Page 13: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Programação ExplícitaProgramação Explícita

• Movimento desejado para o manipulador robótico?

EESC-USP © M. Becker 2007

Tinicial

Tfinal

13/89

Page 14: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

•• IntroduçãoIntrodução

•• Programação ExplícitaProgramação Explícita–– Espaço das JuntasEspaço das Juntas

– Espaço Cartesiano

Sumário da AulaSumário da Aula

EESC-USP © M. Becker 2007

– Espaço Cartesiano

– Observações

• Programação Baseada em Modelos

• Exercícios Recomendados

• Bibliografia Recomendada

14/89

Page 15: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Movimento desejado para o manipulador robótico é descrito em função das variáveis de junta– Não causa problemas de singularidade– Não é feita correspondência entre as variáveis

EESC-USP © M. Becker 2007

– Não é feita correspondência entre as variáveis de junta e o espaço cartesiano

• Cada “ponto” é descrito como uma posição e orientação de T em relação a S

• Converte-se os “pontos” para variáveis de junta através da cinemática inversa

• Obtém-se uma função “suave” para cada uma das njuntas do manipulador

função “suave”

15/89

Page 16: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Polinômios Cúbicos– Tem-se:

• O “ponto” inicial (t0, θ0) e o final (tf, θf)

– Deseja-se:• Uma função “suave” para θ(t)

EESC-USP © M. Becker 2007

Função Contínua Função Contínua quanto à velocidadequanto à velocidade

• Uma função “suave” para θ(t)

t0 tf

θ0

θf

fft θθ

θθ

=

=

)(

)0( 0

0)(

0)0(

=

=

ftθ

θ&

&

Po

lin

ôm

io d

o 3

º G

RA

UP

oli

mio

do

GR

AU

16/89

Page 17: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Polinômios Cúbicos– 4 coeficientes...

3

3

2

210 ...)( tatataat +++=θ

EESC-USP © M. Becker 2007

– Assim, para velocidade e aceleração:

– Substituindo as condições para t = 0 e t = tf...

taat

tataat

.62)(

.3.2)(

32

2

321

+=

++=

θ

θ&&

&

17/89

Page 18: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Polinômios Cúbicos– Obtém-se para as equações de posição e

velocidade:

00 a=θ

EESC-USP © M. Becker 2007

2

321

1

3

3

2

210

00

.3.20

0

...

ff

ffff

tataa

a

tatataa

a

++=

=

+++=

=

θ

θ

18/89

Page 19: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Polinômios Cúbicos– Obtém-se os 4 coeficientes...

( ).3

θθ −=a

EESC-USP © M. Becker 2007

01

00

=

=

a

a θ( )

( )033

022

.2

.3

θθ

θθ

−−=

−=

f

f

f

f

ta

ta

19/89

Page 20: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Polinômios Cúbicos (MatLab)– Para as condições: - Tem-se:

º150 =θ 32 .44,4.2015)( ttt −+=θ2−=θ&

EESC-USP © M. Becker 2007

st

f

3

º75

=∆

tt

ttt

.66,2640)(

.33,13.40)( 2

−=

−=

θ

θ&&

&

20/89

Page 21: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Polinômios Cúbicos– Nos gráficos:

70

80

EESC-USP © M. Becker 2007

0 0.5 1 1.5 2 2.5 310

20

30

40

50

60

tempo [s]

Âng

ulo

[gra

us]

32 .44,4.2015)( ttt −+=θ

21/89

Page 22: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Polinômios Cúbicos– Nos gráficos:

30

35

2.33,13.40)( ttt −=θ&

EESC-USP © M. Becker 2007

0 0.5 1 1.5 2 2.5 30

5

10

15

20

25

30

tempo [s]

Vel

ocid

ade

Ang

ular

[gr

aus/

s]

22/89

Page 23: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Polinômios Cúbicos– Nos gráficos:

30

40

tt .66,2640)( −=θ&&

EESC-USP © M. Becker 2007

0 0.5 1 1.5 2 2.5 3-40

-30

-20

-10

0

10

20

tempo [s]

Ace

lera

ção

Ang

ular

[gr

aus/

s2 ] tt .66,2640)( −=θ&&

23/89

Page 24: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Polinômios Cúbicos– Tem-se:

• O “ponto” inicial (t0, θ0) e o final (tf, θf) • Os “pontos” intermediários

– Deseja-se:

EESC-USP © M. Becker 2007

– Deseja-se:• Uma função “suave” para θ(t)SEM PARAR em cada

“ponto” intermediário...

– Procedimento:• Converter os pontos inicial, final e intermediário

para as variáveis de junta através da cinemática inversa

• Obter as cúbicas que conectam os pontos.

24/89

Page 25: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Polinômios Cúbicos– Agora as condições de contorno não são

nulas...

a=θ

EESC-USP © M. Becker 2007

fft θθ

θθ&&

&&

=

=

)(

)0( 0

2

321

10

3

3

2

210

00

.3.2

...

fff

ffff

tataa

a

tatataa

a

++=

=

+++=

=

θ

θ

θ

θ

&

&

25/89

Page 26: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Polinômios Cúbicos– Obtém-se os 4 coeficientes...

( ) 12.

3θθθθ && −−−=a

EESC-USP © M. Becker 2007

01

00

θ

θ&=

=

a

a ( )

( ) ( )02033

0022

.1

.2

12.

3

θθθθ

θθθθ

&&

&&

++−−=

−−−=

f

f

f

f

f

ff

f

f

tta

ttta

26/89

Page 27: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Polinômios Cúbicos– Tendo as velocidades das juntas desejadas

para cada “ponto”, aplica-se as equações anteriores para cada trecho.

– Especificação das velocidades:

EESC-USP © M. Becker 2007

– Especificação das velocidades:1.1. Via usuárioVia usuário: fornece para cada posição a

velocidade linear e angular no espaço cartesiano2.2. Via SistemaVia Sistema: velocidades escolhidas

automaticamente através de um processo heurístico

3.3. Via SistemaVia Sistema: velocidades escolhidas automaticamente para manter uma aceleração contínua

27/89

Page 28: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Polinômios Cúbicos– Heurística:

• Se ocorre mudança de sinal na inclinação na linha tracejada → velocidade nula...

• Senão, a velocidade é obtida pela média das

EESC-USP © M. Becker 2007

• Senão, a velocidade é obtida pela média das inclinações

t0 tA tB tC tD

θD

θC

θB

θA

θ0

28/89

Page 29: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

50

55

Espaço das JuntasEspaço das Juntas

• Polinômios Cúbicos– Exemplo – “Pontos” desejados (MatLab)

θD

θA

50

55

θD

θA

EESC-USP © M. Becker 2007

0 2 4 6 8 10 1210

15

20

25

30

35

40

45

Tempo [s]

Âng

ulo

[gra

us]

θC

θB

θA

θ0

0 2 4 6 8 10 1210

15

20

25

30

35

40

45

Tempo [s]

Âng

ulo

[gra

us]

θC

θB

θA

θ0

29/89

Page 30: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

50

55

50

55

Espaço das JuntasEspaço das Juntas

• Polinômios Cúbicos– Exemplo – Ângulos da Junta

θD

θA θA

θD

EESC-USP © M. Becker 2007

0 2 4 6 8 10 1210

15

20

25

30

35

40

45

Tempo [s]

Âng

ulo

[gra

us]

0 2 4 6 8 10 1210

15

20

25

30

35

40

45

Tempo [s]

Âng

ulo

[gra

us]

θC

θB

θA

θ0

θC

θB

θA

θ0

30/89

Page 31: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

10

15

Espaço das JuntasEspaço das Juntas

• Polinômios Cúbicos– Exemplo - Velocidade

10

15

EESC-USP © M. Becker 2007

0 2 4 6 8 10 12-20

-15

-10

-5

0

5

Tempo [s]

Vel

ocid

ade

[gra

us/s

]

0 2 4 6 8 10 12-20

-15

-10

-5

0

5

Tempo [s]

Vel

ocid

ade

[gra

us/s

]

31/89

Page 32: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Polinômios de “Ordem mais Elevada”– Empregados quando se deseja definir

posição, velocidade e aceleração no início e o final do segmento da trajetória

– Polinômios de 5ª ordem:

EESC-USP © M. Becker 2007

– Polinômios de 5ª ordem:• 6 coeficientes...

5

5

4

4

3

3

2

210 .....)( tatatatataat +++++=θ4

5

3

4

2

321 .5.4.3.2)( tatatataat ++++=θ&

3

5

2

432 .20.12.62)( tatataat +++=θ&&

32/89

Page 33: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Polinômios de 5ª Ordem– Obtém-se para as equações de posição,

velocidade e aceleração:

5432 +++++=θ

EESC-USP © M. Becker 2007

20

10

00

2a

a

a

=

=

=

θ

θ

θ

&&

&

3

5

2

432

4

5

3

4

2

321

5

5

4

4

3

3

2

210

.20.12.62

.5.4.3.2

.....

ffff

fffff

ffffff

tatataa

tatatataa

tatatatataa

+++=

++++=

+++++=

θ

θ

θ

&&

&

33/89

Page 34: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Polinômios de 5ª Ordem– Obtém-se os 6 coeficientes...

00 θ=a

2

000

3

)..3()..12.8(.20.20 fffff tta

θθθθθθ &&&&&& −−+−−=

EESC-USP © M. Becker 2007

00 θ=a

5

2

000

5

4

2

000

4

33

.2

).()..6.6(.12.12

.2

)..2.3()..16.14(.30.30

.2

f

fffff

f

fffff

f

t

tta

t

tta

ta

θθθθθθ

θθθθθθ

&&&&&&

&&&&&&

−−+−−=

−+++−=

=

01 θ&=a

2

02

θ&&=a

34/89

Page 35: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Polinômios de 5ª Ordem (MatLab)– Para as condições iniciais, tem-se:

º150

=

=

θ

θ s/º00 =θ& 2

0 /º0 s=θ&&

EESC-USP © M. Becker 2007

stt f

f

3

º75

==∆

=θ sf /º0=θ& 2/º0 sf =θ&&

35/89

Page 36: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Polinômios de 5ª Ordem (MatLab)– Obtém-se as equações:

543 .4815,1.11,11.22,2215)( tttt +−+=θ

EESC-USP © M. Becker 2007

32

432

543

.63,29.32,133.32,133)(

.4075,7.44,44.66,66)(

.4815,1.11,11.22,2215)(

tttt

tttt

tttt

+−=

+−=

+−+=

θ

θ

θ

&&

&

36/89

Page 37: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

70

80

Espaço das JuntasEspaço das Juntas

• Polinômios de 5ª Ordem– Nos gráficos:

EESC-USP © M. Becker 2007

0 0.5 1 1.5 2 2.5 310

20

30

40

50

60

70

tempo [s]

Âng

ulo

[gra

us]

543 .4815,1.11,11.22,2215)( tttt +−+=θ

37/89

Page 38: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

35

40

Espaço das JuntasEspaço das Juntas

• Polinômios de 5ª Ordem– Nos gráficos:

432 .4075,7.44,44.66,66)( tttt +−=θ&

EESC-USP © M. Becker 2007

0 0.5 1 1.5 2 2.5 3-5

0

5

10

15

20

25

30

tempo [s]

Vel

ocid

ade

Ang

ular

[gr

aus/

s]

38/89

Page 39: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

30

40

Espaço das JuntasEspaço das Juntas

• Polinômios de 5ª Ordem– Nos gráficos:

EESC-USP © M. Becker 2007

0 0.5 1 1.5 2 2.5 3-40

-30

-20

-10

0

10

20

tempo [s]

Ace

lera

ção

Ang

ular

[gr

aus/

s2 ]

32 .63,29.32,133.32,133)( tttt +−=θ&&

39/89

Page 40: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Funções Lineares e Parabólicas– Interpolação linear para mover a junta da

posição atual para a posição final• Velocidade torna-se descontínua no início e no final do

movimento...

EESC-USP © M. Becker 2007

movimento...

– Para obter uma trajetória “suave”: adiciona-se trechos parabólicos...

• Emprega-se trechos de aceleração constante• Comportamento “suave” para a velocidade• Comportamento contínuo para posição e velocidade• Diversas soluções são possíveis...

– Simetria com relação a th na solução!

40/89

Page 41: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Funções Lineares e Parabólicas

θf

θ

θf

θ

θh

θf

θ

θf

θ

θh

EESC-USP © M. Becker 2007

– Como a velocidade na fronteira da parábola é igual à velocidade no segmento de reta:

bh

bhb

ttt

−−

=θθ

θ .&&

t0 tf

θ0

ttb tf - tb t0 tf

θ0

tth

θh

t0 tf

θ0

ttb tf - tb t0 tf

θ0

tth

θh

2

0 ..2

1bb tθθθ &&+=

41/89

Page 42: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Funções Lineares e Parabólicas– Assim, para t = 2.th:

0)(... 0

2 =−+− θθθθ fbb ttt &&&&

EESC-USP © M. Becker 2007

Duração desejada para o MovimentoDuração desejada para o Movimento

θ

θθθθ&&

&&&&

2

)(4

2

0

22 −−−=

f

b

ttt

2

0 )(4

t

f θθθ

−≥&&

42/89

Page 43: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Funções Lineares e Parabólicas– Tem-se:

• O “ponto” inicial (t0, θ0) e o final (tf, θf) • Os “pontos” intermediários

– Deseja-se:

EESC-USP © M. Becker 2007

– Deseja-se:• Uma função “suave” para θ(t)SEM PARAR em cada

“ponto” intermediário...

– Procedimento:• Segmentos lineares unem os pontos especificados;• Segmentos parabólicos suavizam o movimento.

43/89

Page 44: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Funções Lineares e Parabólicas (MatLab)– Para as condições iniciais, tem-se:

º15=θ 2

1 /º40 s=θ&&

EESC-USP © M. Becker 2007

º75

º150

=

=

θ2

2

1

/º30

/º40

s

s

=

=

θ

θ&&

&&

44/89

Page 45: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

70

80

70

80

Espaço das JuntasEspaço das Juntas

• Funções Lineares e Parabólicas– Nos gráficos:

EESC-USP © M. Becker 2007

0 0.5 1 1.5 2 2.5 310

20

30

40

50

60

tempo [s]

Âng

ulo

[gra

us]

0 0.5 1 1.5 2 2.5 310

20

30

40

50

60

tempo [s]

Âng

ulo

[gra

us]

45/89

Page 46: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Funções Lineares e Parabólicas– Nos gráficos:

25

30

25

30

EESC-USP © M. Becker 2007

0 0.5 1 1.5 2 2.5 30

5

10

15

20

tempo [s]

Vel

ocid

ade

Ang

ular

[gr

aus/

s]

0 0.5 1 1.5 2 2.5 30

5

10

15

20

tempo [s]

Vel

ocid

ade

Ang

ular

[gr

aus/

s]

46/89

Page 47: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Funções Lineares e Parabólicas– Nos gráficos:

20

30

30

40

EESC-USP © M. Becker 2007

0 0.5 1 1.5 2 2.5 3-30

-20

-10

0

10

20

tempo [s]

Ace

lera

ção

Ang

ular

[gr

aus/

s2 ]

0 0.5 1 1.5 2 2.5 3-40

-30

-20

-10

0

10

20

tempo [s]

Ace

lera

ção

Ang

ular

[gr

aus/

s2 ]

47/89

Page 48: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Funções Lineares e Parabólicas– Sejam:

• j, k e l 3 pontos consecutivos• A duração do segmento que conecta os pontos j

e k é tdjk

EESC-USP © M. Becker 2007

e k é tdjk

• A duração do segmento de parábola que conecta os pontos j e k é tk

• A duração do segmento de reta que conecta os pontos j e k é tjk

• A velocidade durante o trecho linear é• A aceleração durante o trecho parabólico no

ponto j éjθ&&

jkθ&

48/89

Page 49: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Funções Lineares e Parabólicas

θ

θj

tjk klθ&

EESC-USP © M. Becker 2007

td12

tkθi

ttdjk

θk θl

jkθ&

49/89

Page 50: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Funções Lineares e Parabólicas– Dados:

• Todos os pontos desejados da trajetória:• As durações desejadas dos trechos da trajetória: tdjk

• A magnitude desejada da aceleração para cada

EESC-USP © M. Becker 2007

• A magnitude desejada da aceleração para cada trecho:

– Obtém-se:• A duração dos segmentos parabólicos que

conectam os pontos da trajetória: tk

kθ&&

50/89

Page 51: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Funções Lineares e Parabólicas– Para os pontos internos à trajetória:

jk

jkt

−=

θθθ&

EESC-USP © M. Becker 2007

kjdjkjk

k

jkkl

k

kjkklk

djk

jk

tttt

t

t

2

1

2

1

||)sgn(

−−=

−=

−=

θ

θθ

θθθθ

&&

&&

&&&&&&

51/89

Page 52: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Funções Lineares e Parabólicas– Para o 1º trecho da trajetória:

1211 1

tt

t

−=

θθθ&&

EESC-USP © M. Becker 2007

211212

1

122

12121

112

12121121

112

2

1)(2

2

1||)sgn(

2

ttttttt

tt

tt

ddd

d

−−=−

−−=

−=−=

θθθ

θθθθθθθ

&&

&&&&&&&

52/89

Page 53: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço das JuntasEspaço das Juntas

• Funções Lineares e Parabólicas– Para o último trecho da trajetória:

1

1− −

= nnnnt

θθθ

&&&&

EESC-USP © M. Becker 2007

1)1()1(12

)1()1(

)1(

1)1(1

)1(

2

1)(2

2

1||)sgn(

2

1

−−−−

−−

−−−

−−=−

−−=

−=−=

nnnndnn

n

nnnndnndn

nnnd

nnnnnnnn

nnd

nn

ttttttt

tt

tt

θθθ

θθθθθθθ

&&

&&&&&&&

53/89

Page 54: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

50

55

Espaço das JuntasEspaço das Juntas

• Funções Lineares e Parabólicas– Exemplo – “Pontos” desejados (MatLab)

θD

θA

EESC-USP © M. Becker 2007

0 2 4 6 8 10 1210

15

20

25

30

35

40

45

Tempo [s]

Âng

ulo

[gra

us]

θC

θB

θA

θ0 θ0

54/89

Page 55: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

•• IntroduçãoIntrodução

•• Programação ExplícitaProgramação Explícita–– Espaço das JuntasEspaço das Juntas

–– Espaço CartesianoEspaço Cartesiano

Sumário da AulaSumário da Aula

EESC-USP © M. Becker 2007

–– Espaço CartesianoEspaço Cartesiano

– Observações

• Programação Baseada em Modelos

• Exercícios Recomendados

• Bibliografia Recomendada

55/89

Page 56: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço CartesianoEspaço Cartesiano

• Movimento desejado para o manipulador robótico é descrito em função de variáveis Cartesianas– Seqüência de “pontos” que fornecem a Posição

e Orientação da ferramenta em função do

EESC-USP © M. Becker 2007

e Orientação da ferramenta em função do tempo

• Cada “ponto” é descrito como uma posição e orientação de T em relação a S em Coordenadas Cartesianas

• Trajetórias mais comuns: segmentos de reta, arcos de circunferência, elipses, senoidais, etc.

56/89

Page 57: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço CartesianoEspaço Cartesiano

• Movimento desejado para o manipulador robótico é descrito em função de variáveis Cartesianas– Seqüência de “pontos” que fornecem a Posição

e Orientação da ferramenta em função do

EESC-USP © M. Becker 2007

e Orientação da ferramenta em função do tempo

• Não é necessário converter inicialmente os “pontos” para variáveis de junta através da cinemática inversa

• São Computacionalmente mais “caras” pois requerem a solução da cinemática inversacinemática inversa do manipulador “em tempo real” (taxa de atualização – update rate)

57/89

Page 58: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço CartesianoEspaço Cartesiano

• Movimento Retilíneo no Espaço Cartesiano– Movimento comumente empregado

• Seleciona-se uma seqüência de pontos alinhados e próximos

• Emprega-se uma função “suave” para conectar os

EESC-USP © M. Becker 2007

• Emprega-se uma função “suave” para conectar os pontos

– Splines, p.e.: funções lineares e parabólicas– Componentes de posição: alinhados– Componentes de orientação: Matriz de rotação

» Não se pode usar interpolação linear» Emprega-se então a representação ângulo-eixo

(angle-axis)

58/89

Page 59: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço CartesianoEspaço Cartesiano

• Problemas encontrados no Espaço Cartesiano com Movimento Retilíneos– Incompatibilidade com o espaço de trabalho e

singularidades1. Pontos intermediários da Trajetória fora do espaço de

EESC-USP © M. Becker 2007

1. Pontos intermediários da Trajetória fora do espaço de trabalho Posição Inicial e Final Posições intermediárias A

B

59/89

Page 60: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço CartesianoEspaço Cartesiano

• Problemas encontrados no Espaço Cartesiano com Movimento Retilíneos– Incompatibilidade com o espaço de trabalho e

singularidades2. Velocidades de Junta Elevadas quando próximos a

EESC-USP © M. Becker 2007

2. Velocidades de Junta Elevadas quando próximos a singularidades Manipulador desvia da trajetória desejada...

B

A60/89

Page 61: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Espaço CartesianoEspaço Cartesiano

• Problemas encontrados no Espaço Cartesiano com Movimento Retilíneos– Incompatibilidade com o espaço de trabalho e

singularidades3. Posições inicial e final atingíveis em diferentes soluções

EESC-USP © M. Becker 2007

3. Posições inicial e final atingíveis em diferentes soluções

BA

61/89

Page 62: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

•• IntroduçãoIntrodução

•• Programação ExplícitaProgramação Explícita–– Espaço das JuntasEspaço das Juntas

–– Espaço CartesianoEspaço Cartesiano

Sumário da AulaSumário da Aula

EESC-USP © M. Becker 2007

–– Espaço CartesianoEspaço Cartesiano

–– ObservaçõesObservações

• Programação Baseada em Modelos

• Exercícios Recomendados

• Bibliografia Recomendada

62/89

Page 63: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

ObservaçõesObservações

• Geração de Trajetórias em “Tempo Real”– Trajetória usualmente gerada em termos de

– Enviadas para o Sistema de Controle do Manipulador

juntadevariáveise →)()(),( ttt θθθ &&&

EESC-USP © M. Becker 2007

Manipulador• Taxa de atualização (update rate)...

RobôRobôSistema de

ControleGerador deTrajetória

τ)(tdθ&

)(tdθ&&

)(tdθθ

θ&RobôRobô

Sistema deControle

Gerador deTrajetória

τ)(tdθ&

)(tdθ&&

)(tdθθ

θ&

63/89

Page 64: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

ObservaçõesObservações

• Geração de Trajetórias em “Tempo Real”– Espaço das Juntas– Para splines cúbicas (polinômios de 3º grau)

• Todos os coeficientes das n splines cúbicas são

EESC-USP © M. Becker 2007

• Todos os coeficientes das n splines cúbicas são calculados previamente:

• Quando se chega ao final de um trecho da trajetória, um novo conjunto de coeficientes do polinômio é empregado e t reiniciado como 0 (“zero”)

3

3

2

210 ...)( nnnnn tatataatnnnn

+++=θ

64/89

Page 65: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

ObservaçõesObservações

• Geração de Trajetórias em “Tempo Real”– Espaço das Juntas– Para splines Lineares e Parabólicas

• O valor de t é verificado a cada atualização para determinar se o trecho atual é linear ou parabólico.

EESC-USP © M. Becker 2007

determinar se o trecho atual é linear ou parabólico.Para o trecho linear:

0

.

=

=

+=

θ

θθ

θθθ

&&

&&

&

jk

jkj t

65/89

Page 66: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

ObservaçõesObservações

• Geração de Trajetórias em “Tempo Real”– Espaço das Juntas– Para splines Lineares e Parabólicas

• O valor de t é verificado a cada atualização para determinar se o trecho atual é linear ou parabólico.

EESC-USP © M. Becker 2007

determinar se o trecho atual é linear ou parabólico.Para o trecho parabólico:

( )

k

inbkjk

inbkinbjkj

jkjinb

t

ttt

tttt

θθ

θθθ

θθθθ

&&&&

&&&&

&&&

=

+=

+−+=

+−=

.

.2

1).(

21

2

Para um novo trecho com spline

linear e parabólica, t é reiniciado como

sendo tk/2

66/89

Page 67: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

ObservaçõesObservações

• Geração de Trajetórias em “Tempo Real”– Espaço Cartesiano– Para splines Lineares e Parabólicas

• Valores de posição e orientação representados no espaço cartesiano.

EESC-USP © M. Becker 2007

espaço cartesiano.

• x representa a posição e orientação.

• Para cada grau de liberdade, tem-se, no trecho linear:

0

.

=

=

+=

x

xx

txxx

jk

jkj

&&

&&

&

67/89

Page 68: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

ObservaçõesObservações

• Geração de Trajetórias em “Tempo Real”– Espaço Cartesiano– Para splines Lineares e Parabólicas

• No trecho parabólico:

EESC-USP © M. Becker 2007

( )

k

inbkjk

inbkinbjkj

jkjinb

xx

txxx

txttxxx

tttt

&&&&

&&&&

&&&

=

+=

+−+=

+−=

.

.2

1).(

21

2

68/89

Page 69: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

ObservaçõesObservações

• Geração de Trajetórias em “Tempo Real”– Espaço Cartesiano– Para splines Lineares e Parabólicas

• Converte-se então a trajetória em coordenadas Cartesianas para variáveis de junta xxx &&& e,

EESC-USP © M. Becker 2007

Cartesianas para variáveis de junta :

– Para posição: CINEMÁTICA INVERSACINEMÁTICA INVERSA– Para velocidade: JACOBIANOJACOBIANO– Para aceleração: JACOBIANO INVERSO e sua DERIVADAJACOBIANO INVERSO e sua DERIVADA

• Modo mais simples:– Converter e empregar um SOLVER para se obter

um vetor Θ com as variáveis de junta (taxa de aquisiçãotaxa de aquisição); – Diferenciação Numérica é então empregada:

xxx &&& e,θθθ &&& e,

Tem S

Gx

ΘΘ &&& e

69/89

Page 70: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

ObservaçõesObservações

• Geração de Trajetórias em “Tempo Real”– Espaço Cartesiano– Para splines Lineares e Parabólicas

• Algoritmo, para cada instante de tempo t:

EESC-USP © M. Becker 2007

t

t)(t(t)(t)

t

t)(t(t)(t)

SOLVE(t)S

G

S

G

δδ

δδ

−Θ−Θ=Θ

−Θ−Θ=Θ

&&&&

&

)( T

Tx

ΘΘΘ &&& e,Envia-se para o sistema de controledo Manipulador

70/89

Page 71: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

ObservaçõesObservações

• Planejar Trajetórias com o Modelo Dinâmico– Em geral, considera-se um valor padrão ou

máximo de aceleração na geração de trajetórias• Função da dinâmica do Manipulador e de seus limites

EESC-USP © M. Becker 2007

• Função da dinâmica do Manipulador e de seus limites• Atuadores são caracterizados:

– Não por torque e aceleração máximos...– Por curvas de torque vs. velocidade

• Induz-se Simplificações:– Considerar uma aceleração máxima (“conservadora”)

para cada junta do manipulador– Não se aproveita completamente as capacidades de

velocidade do atuador...

71/89

Page 72: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

ObservaçõesObservações

• Planejar Trajetórias com o Modelo Dinâmico– Para se obter o tempo mínimo para um

manipulador atingir uma posição ou executar uma trajetória:• Modelo Dinâmico do Manipulador

EESC-USP © M. Becker 2007

• Modelo Dinâmico do Manipulador• Curvas de torque x velocidade dos atuadores

Soluções Numéricas são empregadas...

72/89

Page 73: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

ObservaçõesObservações

• Uso de Quartenions– Comparação entre o uso de quartenions e matrizes

OperaçãoOperação QuartenionsQuartenions MatrizesMatrizes

EESC-USP © M. Becker 2007

OperaçãoOperação QuartenionsQuartenions MatrizesMatrizes

R1R2 9 (+) e 16 (x) 15 (+) e 24 (x)

Rv

12 (+) e 22 (x) 6 (+) e 9 (x)

R → Rol(n,θθθθ)24 (x), 1 (√) e 1

(arctan)8 (+), 10 (x), 2 (√)

e 1 (arctan)

73/89

Page 74: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

•• IntroduçãoIntrodução

•• Programação ExplícitaProgramação Explícita–– Espaço das JuntasEspaço das Juntas

–– Espaço CartesianoEspaço Cartesiano

Sumário da AulaSumário da Aula

EESC-USP © M. Becker 2007

–– Espaço CartesianoEspaço Cartesiano

–– ObservaçõesObservações

•• Programação Baseada em ModelosProgramação Baseada em Modelos

• Exercícios Recomendados

• Bibliografia Recomendada

74/89

Page 75: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Programação baseada em ModelosProgramação baseada em Modelos

• Planejar Trajetórias Livres de Colisões– Colisões com obstáculos:

• Fixos (máquinas, paredes, grades, etc.)• Móveis (pessoas, objetos, outros manipuladores, etc.)

– Não disponíveis comercialmente...

EESC-USP © M. Becker 2007

– Não disponíveis comercialmente...– O sistema deve ter modelos:

• Do manipulador;• Da área de trabalho;• Dos obstáculos potenciais.

75/89

Page 76: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

• Planejar Trajetórias livres de Colisões– Várias técnicas são aplicadas:

• Modelar o espaço livre da área de trabalho empregando a Teoria de GrafosTeoria de Grafos e encontrar uma trajetória livre de colisões

Programação baseada em ModelosProgramação baseada em Modelos

EESC-USP © M. Becker 2007

trajetória livre de colisões– Complexidade exponencial no número de juntas do

manipulador...

• Empregar Campos de Potencial ArtificialCampos de Potencial Artificial ao redor dos obstáculos e um pólo de atração na posição desejada– Mínimos Locais...

76/89

Page 77: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

• Planejar Trajetórias livres de Colisões– Exemplo: Lozano-Pérez (1987)

• Robô PUMA com garra de 3 dedos• 6 Graus de Liberdade

Programação baseada em ModelosProgramação baseada em Modelos

EESC-USP © M. Becker 2007 77/89

Page 78: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

• Planejar Trajetórias livres de Colisões– Exemplo: Lozano-Pérez (1987)

• Manipulador com n graus de liberdade• Representação no Espaço de Configurações:

– Configuration Space (C-space): Conjunto de parâmetros

Programação baseada em ModelosProgramação baseada em Modelos

EESC-USP © M. Becker 2007

– Configuration Space (C-space): Conjunto de parâmetros que definem completamente a posição de qualquer ponto do manipulador ou obstáculo (fixo ou móvel) dentro de seu espaço de trabalho.

– Forma de representação:» Espaço das Juntas» Espaço Cartesiano Espaço das Juntas Espaço Cartesiano

Multiplicidade de Soluçõesobtidas na cinemática inversa...

78/89

Page 79: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

• Planejar Trajetórias livres de Colisões– Exemplo: Lozano-Pérez (1987)

• Mapeia-se os obstáculos no Espaço de Configurações– C-Space Obstacles (Figura para um manipulador RRR)

Programação baseada em ModelosProgramação baseada em Modelos

EESC-USP © M. Becker 2007

• Espaço Livre: complemento do C-Space Obstacles

θ1

θ2

θ3

θ2

θ2

a3

b3 a3

b3

θ3

R1

79/89

Page 80: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

• Planejar Trajetórias livres de Colisões– Exemplo: Lozano-Pérez (1987)

• Espaço livre é obtido para cada junta• n juntas → n C-spaces...

Programação baseada em ModelosProgramação baseada em Modelos

EESC-USP © M. Becker 2007 80/89

Page 81: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

• Planejar Trajetórias livres de Colisões– Exemplo: Lozano-Pérez (1987)

Programação baseada em ModelosProgramação baseada em Modelos

1

θ22π

EESC-USP © M. Becker 2007

Um manipulador com 2 juntas rotacionais (RR) e obstáculos no espaço cartesiano (2D) e no espaço das juntas (C-space)

1

2

12

θ1

2π0

81/89

Page 82: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

• Planejar Trajetórias livres de Colisões– Exemplo: Lozano-Pérez (1987)

Programação baseada em ModelosProgramação baseada em Modelos

2

EESC-USP © M. Becker 2007

Um manipulador com 3 juntas rotacionais (RRR) e obstáculos no espaço cartesiano (2D) e no espaço das juntas (C-space)

1

82/89

Page 83: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

• Planejar Trajetórias livres de Colisões– Exemplo: Lozano-Pérez (1987)

Programação baseada em ModelosProgramação baseada em Modelos

EESC-USP © M. Becker 2007

Quando a ferramenta executa uma tarefa em uma região interna...

83/89

Page 84: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

• Planejar Trajetórias livres de Colisões

Programação baseada em ModelosProgramação baseada em Modelos

EESC-USP © M. Becker 2007 84/89

Page 85: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

•• IntroduçãoIntrodução

•• Programação ExplícitaProgramação Explícita–– Espaço das JuntasEspaço das Juntas

–– Espaço CartesianoEspaço Cartesiano

Sumário da AulaSumário da Aula

EESC-USP © M. Becker 2007

–– Espaço CartesianoEspaço Cartesiano

–– ObservaçõesObservações

•• Programação Baseada em ModelosProgramação Baseada em Modelos

•• Exercícios RecomendadosExercícios Recomendados

• Bibliografia Recomendada

85/89

Page 86: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Exercícios RecomendadosExercícios Recomendados

• Exercícios:– Livro do Craig (2005): pp. 226-229

EESC-USP © M. Becker 2007 86/89

Page 87: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

•• IntroduçãoIntrodução

•• Programação ExplícitaProgramação Explícita–– Espaço das JuntasEspaço das Juntas

–– Espaço CartesianoEspaço Cartesiano

Sumário da AulaSumário da Aula

EESC-USP © M. Becker 2007

–– Espaço CartesianoEspaço Cartesiano

–– ObservaçõesObservações

•• Programação Baseada em ModelosProgramação Baseada em Modelos

•• Exercícios RecomendadosExercícios Recomendados

•• Bibliografia RecomendadaBibliografia Recomendada

87/89

Page 88: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Bibliografia RecomendadaBibliografia Recomendada• Craig, J.C., 2005, Introduction to Robotics:

Mechanics and Control, 3rd Edition, Pearson Education Inc., ISBN 0-201-54361-3

• Paul, R. P., 1981, Robot Manipulators. Mathematics, Programming and Control, The MIT Press.

EESC-USP © M. Becker 2007

• Paul, R. P., 1981, Robot Manipulators. Mathematics, Programming and Control, The MIT Press.

• Fu, K.S., Gonzales, R.C., and Lee, C.S.G., 1987, Robotics: Control, Sensing, Vision, and Intelligence, McGraw-Hill Int. Editions, ISBN 0-07-100421-1.

• Corke, P., Robotics Toolbox for MatLab (Release 7).

88/89

Page 89: SEM0317 SEM0317 – Aula Aula 9 Planejamento de Trajetórias … · Espaço das Juntas • Movimento desejado para o manipulador robótico é descrito em função das variáveis de

Bibliografia RecomendadaBibliografia Recomendada

• Lozano-Perez, T., 1987, A Simple Motion-Planning Algorithm for General Robot Manipulators, IEEE Journal of Robotics and Automation, Vol. RA-3, Nº 3, pp. 224-238.

EESC-USP © M. Becker 2007 89/89

• Lozano-Perez, T., 1981, Automatic Planning of Manipulator Transfer Movements, IEEE Transactions on Systems, Man, and Cybernetics, Vol. SMC-11, Nº 10, pp. 681-698.