Simulação de Robôs Móveis e Articulados: …osorio.wait4.org/VREP/Simulacao-e-VREP-03.pdfSBIA...

Preview:

Citation preview

Simulação de Robôs Móveis e Articulados: Aplicações e Prática

Fernando Santos Osório

Rafael Alceste Berri

34º JAI - Jornadas de Atualização em Informática

Simulação de

Robôs Móveis e Articulados

Fernando Santos Osório

Rafael Alceste Berri

Ambientes de Software:

Aplicações Robóticas

3

Middleware: Acesso aos Dispositivos de Hardware

Atuadores e Sensores => Ex. PLAYER/STAGE [2000-2010]

https://en.wikipedia.org/wiki/Player_Project

SBIA 2010

# 4

Player Software2010

SBIA 2010

# 5

Programa de controle

Camera

Laser

Sonar

Odometria

Motores

Programa do usuário

Aquisição de dados dos sensores

Comandos para os motores

PCI

USB

Serial

SerialCanbus…

Planejamento

Deslocamentodesejado

SBIA 2010

# 6

Player

SerialCanbus…

Player

Camera

Laser

Sonar

Odometria

Motores

Programa do usuário

Aquisiçãode dadosdos sensores

Comandospara omotor

PCI

USB

Serial

…Planejamento

Deslocamentodesejado

SBIA 2010

# 7

Abstração de hardware

Programado usuário

ServidorPlayer

BibliotecaCliente doPlayer

C/C++C#JavaTclPythonRubyLispOctave

HardwareDo Robô

SimuladorStage

SimuladorGazebo

ServidorPlayer

ServidorPlayer

SBIA 2010

# 8

Player + Stage (simulação)

STAGE

SBIA 2010

# 9

Modelo Cliente/Servidor

• Clientes podem se conectar a múltiplos servidores

• Servidores aceitam conexão de múltiplos clientes

• Diferentes programas/processos/threads podem processar

dados de diferentes sensores do mesmo servidor.

• Operação remota

Ambientes de Software:

Aplicações Robóticas

10

Middleware: Acesso aos Dispositivos de Hardware

Atuadores e Sensores => Ex. PLAYER/STAGE

Sistema Operacional Robótico => ROS

ROS = Robot Operating System [2010-2016-...]

http://ros.org/http://wiki.ros.org/Distributions

SBIA 2010

# 11

Software

What is ROS?

12

13

Exemplos...

Services as Distributed Nodes:- Publish- Subscribe- Messages

- Nodes &Packages

What is ROS?

14

Exemplos...

Services as Distributed Nodes:- Publish- Subscribe- Messages

- Nodes &Packages

What is ROS?

15

Exemplos...

Services as Distributed Nodes:- Publish- Subscribe- Messages

- Nodes &Packages

What is ROS?

16

Arquitetura de Software

Speed Control

Brake Control

Steering Control

Adaptative

Cruise Control

Keep on

lane/road

Obstacle avoidance and

vehicles overtake

Selection of GoalsFusion of Goals

TelemetryWrite sync ‘edoriginal source

data Events Log Watchdog

GPS

IMU

Odometry

Frontal Laser

(Horizontal)

Down Laser

Compass

Camera

Stereo Camera

Borders Detection

Lane Detection

Navigable areas

estimation

Obstacle

Detection

Pose

Local Map

Road Detection

Projeto CaRINA I : R&D

17

Arquitetura de Software

Projeto CaRINA II : R&D

18

ROS + GAZEBO Simulation

https://www.youtube.com/user/rlklaser/videos

GAZEBOhttp://gazebosim.org/

SBIA 2010

# 19

Software de Simulação

https://www.openrobots.org/wiki/morse/

MORSE

20

Robotic Tools

Player-Stage (Old)

Gazebo – Gazebosim Robot Simulator

ROS – Robot Operating System

OpenCV – Open Source Computer Vision Library

PCL – Point Cloud Library

Morse - Modular OpenRobots Simulation Engine

Microsoft Robotics Studio, Webots, Aria, ... Matlab, Weka, SNNS/JavaNNS, FANN, GALib, Python, ...

TOOLS:

Morse

Simulação com V-REP

21

VREPFree Educational, Easy-of-Use, Multi-PlatformLarge set of Sensors, Actuators and Robots

22

Simulador V-REP

FREE EDUCATIONAL

http://www.coppeliarobotics.com/

http://www.coppeliarobotics.com/

SBIA 2010

# 23

Software V-REP

http://www.coppeliarobotics.com/

24

Simulador V-REP

VREP is cross-platform, and allows the creation of portable, scalable and easy maintainable content:

a single portable file can contain a fully functional model (or scene), including control code.

6 Programming Approaches

LUA

C / C++

LUA Scripting

Multiple Robot Models:

Mobile Robots

Humanoids

Manipulators

Aerial

V-REP – Janela de aplicação

25

V-REP – Componentes de tela

26

V-REP – Barra de

ferramentas 1

27

V-REP – Barra de

ferramentas 2

28

V-REP – Robô, Componentes,

Scripts LUA

29

V-REP – Principais elementos

30

Modelo - subelemento da cena (extensão “ttm”).

Cena - contém toda a informação necessária para a reabertura e simulação (todo o ambiente, script principal e pontos de vistas em um “ttt”).

V-REP – Ambiente

31

• Alguns parâmetros:

– cores de fundo,

– parâmetros para inclusão de

nevoeiro,

– luz ambiente,

– informação para a criação da cena,

– etc.

• Via menu: Tools / Environment

V-REP – Entidades

32

• Tipos: objeto ou uma coleção de objetos;

• Propriedades especiais de Objetos e Coleções:

– Collidable,

– Measurable (distância entre objetos),

– Detectable (sensores de proximidade),

– Cuttable,

– Renderable (visto por sensores de visão).

• Propriedades especiais somente de objetos:

– Viewable (objetos transparentes ou exibem imagem, ex: TV).

• Acessível em Tools / Scene object properties.

V-REP – Tipos de objetos

33

Tipos de Objetos:

V-REP – Configuração da

Simulação

34

• Disponível em Simulation / Simulation Settings.

35

Simulador V-REP

VREP Interface

Botões de controle da Câmera Virtual 3D: Posicionamento de Observação da Cena

Principais opções: Deslocar (Pan), Girar (Rotação ao Redor dos Elementos), Zoom (Avança/Recua)

Botões de controle do Objeto Virtual

Principais opções:

Selecionar Objeto, Mover o Objeto (pode indicar/selecionar os eixos: X, Y ou Z de deslocamento),

Girar o objeto (pode selecionar os eixos: X, Y ou Z de rotação)

Botões de controle da Simulação Virtual:

Play, Pause, Stop => Inicío/Fim Simulação

Acelerar ou ir mais devagar no “passo” de simulação

36

Simulador V-REP

VREP is cross-platform, and allows the creation of portable, scalable and easy maintainable content:

a single portable file can contain a fully functional model (or scene), including control code.

6 Programming Approaches

LUA

C / C++

LUA Scripting

Multiple Robot Models:

Mobile Robots

Humanoids

Manipulators

Aerial

37

Simulador V-REP

Nativo: LUA Scripts API: C/C++, Python, Java Client/Server, ROS, MATLAB

PROGRAMAÇÃO

USANDO O V-REP

38

39

Site: http://www.lrm.icmc.usp.br/

Vídeos: http://youtube.com/lrmicmc

https://www.youtube.com/user/lrmicmc/videos

Laboratório de Robótica Móvel – ICMC/USP

Contato:Prof. Fernando OsórioProf. Denis Wolf http://www.icmc.usp.br/~fosorioE-mail: { fosorio, denis } @icmc.usp.br