Roger-the-Crab download your copy of the Roger simulator from - - PDF document

roger the crab
SMART_READER_LITE
LIVE PREVIEW

Roger-the-Crab download your copy of the Roger simulator from - - PDF document

Un-Crating Roger - C and X windows Platforms: OS X, Linux, Windows (Cygwin ||dual-boot/VM Linux) Getting Started: Roger-the-Crab download your copy of the Roger simulator from www-robotics.cs.umass.edu/~grupen/603/code/roger-2020.tar


slide-1
SLIDE 1

Laboratory for Perceptual Robotics – Department of Computer Science

Rod Grupen Department of Computer Science University of Massachusetts Amherst

Roger-the-Crab

Laboratory for Perceptual Robotics – Department of Computer Science 2

Un-Crating Roger - C and X windows

Platforms:

  • OS X, Linux, Windows (Cygwin ||dual-boot/VM Linux)

Getting Started:

  • download your copy of the Roger simulator from

www-robotics.cs.umass.edu/~grupen/603/code/roger-2020.tar

  • unpack the compressed directory

tar -xvf roger-2020.tar

  • make the simulator and your projects (as in README)
  • cd roger-2020/RogerSimulator

> make clean; make <CR> >cd roger-2020/RogerClient > make clean; make <CR> > cd ../RogerProjects > make clean; make <CR>

  • run the simulator (e.g. from README)

>“./RogerSimulator/simulator 1 1 <CR>” > “./RogerProjects/roger 127.0.0.1 8000<CR>”

Laboratory for Perceptual Robotics – Department of Computer Science 3

The Simulator Environment

Laboratory for Perceptual Robotics – Department of Computer Science 4

The Simulator Environment

Laboratory for Perceptual Robotics – Department of Computer Science 5

configuration space left button (q1,q2) (q1) right button −π +π +π −π

Input Modes: Joint Angle inputs

Laboratory for Perceptual Robotics – Department of Computer Science 6

Input Modes: Base goals

Cartesian space (x,y) world frame

Input: Base goal

slide-2
SLIDE 2

Laboratory for Perceptual Robotics – Department of Computer Science 7

Input Modes: Arm goals

Cartesian space right button (x,y) left button (x,y) right arm left arm world frame

Input: Arm goals

Laboratory for Perceptual Robotics – Department of Computer Science 8

Input Modes: Introducing an Object (Ball)

Cartesian space

Input: Ball position

world frame

Laboratory for Perceptual Robotics – Department of Computer Science 9

Input Modes: Map Editor

Input: Map editor

goals

  • bstacles

Laboratory for Perceptual Robotics – Department of Computer Science 10

Control Modes

Project-specific control

Laboratory for Perceptual Robotics – Department of Computer Science 11

Environmental Maps

different rooms

Laboratory for Perceptual Robotics – Department of Computer Science 12

Command line I/O

accurate setpoints, gains, etc

slide-3
SLIDE 3

Laboratory for Perceptual Robotics – Department of Computer Science 13

Project Specific Visualization

project/user defined tools location uncertainty path plans potential maps

Laboratory for Perceptual Robotics – Department of Computer Science 14

Terminating

Laboratory for Perceptual Robotics – Department of Computer Science 15

Roger-the-Crab - Kinematic Definition

./include/roger.h

Laboratory for Perceptual Robotics – Department of Computer Science 16

U U

Afferents

eyes:

  • θ[2], θ[2], images[2][128][3]

arms:

  • θ1[2], θ1[2], θ2[2], θ2[2]
  • tactile (force) sensors: f[2] R2

mobile base:

  • position (x, x, y, y), orientation (θ, θ)
  • bump (force) sensor: f R2

. . . . . .

Laboratory for Perceptual Robotics – Department of Computer Science 17

Efferents

eye torques:

  • τ[2]

arm torques:

  • τ1[2], τ2[2]

mobile base:

  • wheel torques τ[2]

Laboratory for Perceptual Robotics – Department of Computer Science 18

Robot Interface: Project #1, #2

  • eye joint angles/velocities
  • images
  • arm joint angles/velocities
  • tactile (force) sensors
  • base position (x,y), orientation (θ)
  • bump (force) sensor
  • eye motor torques
  • arm motor torques
  • wheel torques

simulator applications (MotorUnits.c) always

  • n
slide-4
SLIDE 4

Laboratory for Perceptual Robotics – Department of Computer Science 19

Control Interface - include/control.h

typedef struct Robot_interface { // SENSORS double eye_theta[NEYES]; double eye_theta_dot[NEYES]; int image[NEYES][NPIXELS][NPRIMARY_COLORS]; /* rgb */ double arm_theta[NARMS][NARM_JOINTS]; double arm_theta_dot[NARMS][NARM_JOINTS]; double ext_force[NARMS][2]; /* (fx,fy) force on arm endpoint */ double base_position[3]; /* x,y,theta */ double base_velocity[3]; // MOTORS double eye_torque[NEYES]; double arm_torque[NARMS][NARM_JOINTS]; double wheel_torque[NWHEELS]; // TELEOPERATOR int button_event; double button_reference[2]; // CONTROL MODE int control_mode; int input_mode; Map world_map, arm_map[NARMS]; // REFERENCE VALUE double base_setpoint[3]; /* desired world frame base position (x,y,theta) */ double arm_setpoint[NARMS][NARM_JOINTS]; /* desired arm joint angles */ double eyes_setpoint[NEYES]; /* desired eye pan angle */ } Robot; typedef struct _map { int occupancy_map[NBINS][NBINS]; double potential_map[NBINS][NBINS]; int color_map[NBINS][NBINS]; } Map;

Laboratory for Perceptual Robotics – Department of Computer Science 20

Hierarchical Control

Laboratory for Perceptual Robotics – Department of Computer Science 21

MotorUnits.c

control_roger() control_base() control_arms() control_eyes() simulator control torques

Σ

current sensory state higher-level reference inputs + _

Laboratory for Perceptual Robotics – Department of Computer Science 22

Cumulative Project Work

1. motor units 2. Cartesian goals 3.

  • culomotor behavior

4. visual reconstruction - triangulation 5. “hunting” - integrated behavior 6. …

  • ptions:
  • 1. path planning
  • 2. learning
  • 3. Pong

4.…