29
1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

Embed Size (px)

Citation preview

Page 1: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

1

Programação de Periféricos: Seminários

Motor Schemas

Tiago Cunha

Page 2: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

2

Agenda

• Robótica

• Robôs• Classificação dos robôs

• Robôs e os periféricos

• Robôs móveis

• Comportamentos (Behaviors)

• Motor Schemas

• Ferramentas

Page 3: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

3

Robótica

• Robótica é a ciência e a tecnologia dos robôs, seu desenvolvimento, fabricação e aplicação.

• Sistemas Mecânicos Robóticos são uma subclasse dos Sistemas Mecânicos.

• Sistemas Mecânicos são uma subclasse dos Sistemas Dinâmicos

• Sistemas Dinâmicos são uma subclasse de Sistemas

• Sistemas...

• Ou seja, a robótica envolve mecânica, eletrônica e computação.

Page 4: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

4

Robôs

• Robôs são agentes virtuais ou mecânicos.

• Agentes: qualquer entidade imersa ou situada em um ambiente, que percebe esse ambiente através de sensores e age sobre este através de atuadores.

• “Eu não sei definir o que e um robô, mas eu os reconheço quando os vejo”. Joseph Engelberger

Page 5: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

5

Classificação

• Por função:

- Manipuladores: braços e mãos robóticas.

- Geradores de movimento: simuladores de vôo*.

- Móveis: robôs com pernas ou rodas.

- Aquáticos.

- Aéreos.

Page 6: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

6

Classificação (cont.)

• Por tamanho:

• Macro- (medidos em metros) e micro-robôs (em mm.)

• Por aplicações:

• Soldadores, segurança, operações cirúrgicas, reabilitação, entretenimento.

Page 7: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

7

Robôs e os periféricos

• Para realizar a interação entre o ambiente e o robô são necessários dispositivos periféricos, como os sensores.

• Através dos sensores podemos extrair as características de um determinado ambiente.

• Tais informações são utilizadas pelo micro-controlador, para gerar os movimentos do robô, realizados pelos atuadores.

Page 8: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

8

Robôs e os periféricos (cont.)

• Podemos determinar assim três tipos de dispositivos os quais precisam ser programados a fim de construir um robô:

• Sensores

• Atuadores

• Controladores

Page 9: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

9

Robôs e os periféricos (cont.)

• Exemplo: Daisy.

• Projeto de robô bombeiro.

• Objetivos: • mover-se a partir de

uma posição inicial

• navegar através de obstáculos

• detectar focos de incêndio durante o caminho e então apaga-los

Page 10: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

10

Robôs e os periféricos (cont.)

• Hardware utilizado:

• Veículo de quatro rodas, com motor traseiro, direcional dianteiro.

• Controlado por uma Handy Board.

microprocessador 6811, motor driver chips, display LCD de 16 caracteres (2 linhas), interface serial, 7 entradas analógicas, 9 entradas digitais, uma campainha e sete botões

Page 11: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

11

Robôs e os periféricos (cont.)

• O processador é programado usando Interactive C, uma linguagem derivada do C.

• A linguagem serve como interface interativa entre o PC a Handy Board, conectados através de um cabo serial.

• Os programas são compilados em um PC e então copiado para a Handy Board para execução.

Page 12: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

12

Robôs e os periféricos (cont.)

• Outros exemplos de sensores:

• Câmeras

• Sensores de inércia, aceleração e direção

• Medidores de distância

• Sonares, sensores IR, detectores de toque

• Outros...

Page 13: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

13

Robôs e os periféricos (cont.)

• Outros exemplos de atuadores:

• Garras:

• Garra de dois dedos, de três dedos, para objetos cilíndricos, para objetos frágeis, garra articulada, garra a vácuo e eletromagnética.

• Motores:• Servo-motores CC, motores de passo, servo-

motores CA, motores elétricos lineares.

Page 14: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

14

Robôs e os periféricos (cont.)

• Outros exemplos de controladores:

• Lógica Simples

• Micro-controladores

• Microprocessadores

Page 15: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

15

Robôs e os periféricos

• Outros exemplos de LP:

Page 16: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

16

Robôs Móveis

• Utilizados para:• Transporte de materiais, combate a incêndios,

desativação de explosivos, vigilância de armazéns, viagens submarinas e aeroespaciais e prestação de serviços interagindo com pessoas para auxílio a tarefas rotineiras.

• Em robôs móveis, o sistema de locomoção desempenha um papel fundamental.

• Este e o responsável por coordenar todos estes componentes a fim de atingir os objetivos do robô.

Page 17: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

17

Robôs Móveis (cont.)

• Basicamente, os robôs devem ser capazes de navegar a partir de uma posição conhecida para uma nova localização desejada.

• Para isto, devem evitar colisões com objetos fixos e móveis durante sua rota.

• Em ambientes desestruturados, desconhecidos ou dinâmicos, um robô móvel deve ser capaz de perceber as circunstâncias e gerar ações que são apropriadas para o ambiente e para os objetivos do sistema robótico.

Page 18: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

18

Comportamentos

• Muitas vezes, robôs moveis são controlados por “comportamentos” (behaviors)

• Comportamentos: conjuntos de ações e reações, conscientes ou não, de um objeto ou organismo direcionados a um ambiente.

• Sensores atuam como entrada de dados, comportamentos como processadores destes e seletores de ações, que são efetuadas pelos atuadores.

Page 19: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

19

Motor Schemas

• Exemplo de comportamento.

• Respostas comportamentais são todas representadas por vetores.

• A coordenação é conseguida através da soma de vetores.

• Os comportamentos são configurados em tempo-real através das interações, capacidades e do meio envolvente.

Page 20: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

20

Motor Schemas (cont.)

• Todos os comportamentos são utilizados para determinar a direção.

• Cada comportamento tem um valor de ganho associado.

• O vetor relacionado a cada comportamento é multiplicado pelo seu ganho e somado aos outros vetores.

• A soma dos vetores determina o movimento.

Page 21: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

21

Motor Schemas (cont.)

Page 22: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

22

Motor Schemas (cont.)

• Padrões comportamentais:• move-ahead, move-to-goal

• avoid-static-obstacles

• dodge

• escape

• stay-on-path

• noise

• follow-the-leader

• outros

Page 23: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

23

Avoid-static-obstacle

Page 24: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

24

Move-ahead

Page 25: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

25

Move-to-goal

Page 26: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

26

Ferramentas

• Chamadas “Robotics suites”.

• Fornecem um ambiente visual para a programação e simulação.

• Objetiva gerar código que pode ser utilizado para simulação e aplicação, sem quaisquer modificações.

Page 27: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

27

Ferramentas (cont.)

• Exemplos de suites:

• Evolution Robotics ERSP

• OROCOS

• Skilligent

• iRobot AWARE

• OpenJAUS

• CLARAty

• Webots

• Microsoft Robotics Studio

• URBI

• RUBIOS

• AnyKode Marilou

• Simbad

• TeamBots

Page 28: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

28

TeamBots

• Conjunto de aplicações e pacotes para pesquisas com robôs moveis multi-agentes.

• Suporta:• Prototipação

• Simulação - através do aplicativo TBSim

• Implantação - através do ambiente de execução TBHard.

• Código aberto.

Page 29: 1 Programação de Periféricos: Seminários Motor Schemas Tiago Cunha

29

PUCRS

• Laboratório CIM - Computer Integrated Manufacturing (http://www.ee.pucrs.br/~labcim/)

• Utilizado para aulas de Sistemas Robotizados e Sistemas de Fabricação

• RoboSoft Simulator

• Tem como objetivo simular programas na linguagem ACL.