Nomad 200 F Robô Autônomo Móvel F Nomadic Technologies () F Pentium200, 64 Mb Ram, Linux F...

Post on 07-Apr-2016

226 views 7 download

Transcript of Nomad 200 F Robô Autônomo Móvel F Nomadic Technologies () F Pentium200, 64 Mb Ram, Linux F...

Nomad 200

Robô Autônomo Móvel Nomadic Technologies

(www.robots.com) Pentium200, 64 Mb Ram,

Linux Sistema multiprocessado

com memória compartilhada Link ethernet sem fio Braço mecânico Diversos sensores

Nomad 200 - Sensores

Sonar Anel com 16 módulos (polaroid 6500) Distâncias entre 15 cm e 6.5 m, 1% erro Influências

Tipo de superfícieGeometriaTemperaturaUmidade

Nomad 200 - Sensores

Infravermelho Anel com 16 módulos Distâncias entre 0 cm e 60 cm Influências

Tipo de superfícieGeometriaIluminaçãoCor

Nomad 200 - Sensores

Sistema de Visão 1 Câmera colorida fixa (Hitachi KP-D50) Frame grabber (Matrox Meteor)

Bumper 2 anéis com 10 sensores cada

BússolaEncoder

X, Y, ângulos da torre e rodas

Nomad 200 - Direcionamento

Torre e base independentes3 rodas: Synchronous-DriveVelocidades

Translação: 61 cm/s Rotação (rodas): 60 graus/s Rotação (torre): 90 graus/s

Robô não-holonômico

90 graus

Nomad 200 - Cuidados

Baterias recarregáveis: 3 + 2 Duração aproximada: 6 - 8 horas (?) Aviso sonoro de fim de carga Cuidados na colocação / remoção /

recargaBotão de emergênciaBoot / Shutdown

Linux - RO x Linux - RW

Programação / Controle

Programação em C, utilizando biblioteca de funções específicas

Interface gráfica (X-Windows) Envio de comandos remotos Acompanhamento dos sensores Configuração de um ambiente simulado Execução / simulação de programas

Esquema de ProgramaçãoModo Direto x Modo Cliente

Daemon#includemain() {...}

Programa

Daemon#includemain() {...}

Programa

Simulador

Servidor

Ndirect.o

Nclient.o

Comandos

Comunicação connect_robot, tk, real_robot, ...

Movimento pr, vm, st, ws, zr, arm_mv, ... ac, sp, dp, ...

Sensores get_ir, get_sn, gs, ... init_sensors, conf_ir, conf_sn, ...

Comandos

Simulador / Mapa draw_line, add_obstacle, ...

Vetores Globais State: leitura dos sensores Smask: “máscara” dos sensores

ex: State[STATE_SONAR_4]leitura do sonar numero 4

HelloWorld.c#include “Nclient.h”void main(){

connect_robot(1);tk(“Hello World”);zr();sp(50,0,0);pr(1000,0,0);while(State[STATE_CONF_X] < 1000)

gs();disconnect_robot(1);

}

% gcc -o hello helloWorld.c Nclient.o

Diretórios

~chaimo/robotica/Nomad200/ ./server: Nserver (versão SunOS 4) ./client: bibliotecas (.h e .o) ./examples

./host_demo: exemplos

Executar na turquesa ou outra máquina SunOS 4

Aplicações

Distance Estimation (SBAI 1999)

Visual Servoing (CBA2000)

XR4000, Scout & Nomad 200

Outros Robôs Móveis