incorporation of matlab into a distributed behavioral robotics architecture

17
IROS 2004, Sendai, Japan Research deploy train evaluate Incorporation of MATLAB into a Distributed Behavioral Robotics Architecture A. L. Nelson, L. Doitsidis, M. T. Long, K. P. Valavanis, and R. R. Murphy

Upload: manju

Post on 09-Jan-2016

43 views

Category:

Documents


1 download

DESCRIPTION

Incorporation of MATLAB into a Distributed Behavioral Robotics Architecture. A. L. Nelson, L. Doitsidis, M. T. Long, K. P. Valavanis, and R. R. Murphy. Overview. Introduction The Distributed Field Architecture Robots and Hardware Example Uses - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Incorporation of MATLAB into a Distributed Behavioral Robotics Architecture

IROS 2004, Sendai, JapanResearch deploy train evaluate

Incorporation of MATLAB into a Distributed Behavioral Robotics

Architecture

A. L. Nelson, L. Doitsidis, M. T. Long, K. P. Valavanis, and R. R. Murphy

Page 2: Incorporation of MATLAB into a Distributed Behavioral Robotics Architecture

IROS 2004, Sendai, JapanResearch deploy train evaluate

Overview

• Introduction

• The Distributed Field Architecture

• Robots and Hardware

• Example Uses– Basic robot sensor error quantification in outside

environments– Waypoint navigation with object avoidance

• Conclusions

Page 3: Incorporation of MATLAB into a Distributed Behavioral Robotics Architecture

IROS 2004, Sendai, JapanResearch deploy train evaluate

Introduction• Current robot research demands a versatile

control architecture

– Heterogeneous Robots– Outdoor environments– Distributed Control– Autonomous Control– Shared Autonomy

Page 4: Incorporation of MATLAB into a Distributed Behavioral Robotics Architecture

IROS 2004, Sendai, JapanResearch deploy train evaluate

Introduction

• Motivation– Provide a unified versatile multirobot research

platform– Support AI and Control Theoretic work– Unify robot control research and development

phases for continuity and reduced development time

• Behavior-based robot control architectures

Page 5: Incorporation of MATLAB into a Distributed Behavioral Robotics Architecture

IROS 2004, Sendai, JapanResearch deploy train evaluate

Introduction: Related Work• S. Monteiro, E. Bicho, E. “A dynamical systems approach to

behavior-based formation control,” Robotics and Automation, 2002. Proceedings. ICRA '02. IEEE International Conference on, vol. 3, 2002, pp. 2606 – 261.

• O. Ewerlid, C. Tidestav and M. Sternad, “Real Time Control using Matlab and Java,” Nordic Matlab Conference, Stockholm, October 27-28, 1997.

• A. L. Nelson, E. Grant, T.C. Henderson, “Evolution of neural controllers for competitive game playing with teams of mobile robots,” Journal of Robotics and Autonomous Systems, vol. 46, no. 3, pp. 135-150, Mar 2004.

Page 6: Incorporation of MATLAB into a Distributed Behavioral Robotics Architecture

IROS 2004, Sendai, JapanResearch deploy train evaluate

• Distributed • Java-based• Descendant of SFX• Behavior based• Hybrid deliberative

reactive architecture

The Distributed Field Architecture

Page 7: Incorporation of MATLAB into a Distributed Behavioral Robotics Architecture

IROS 2004, Sendai, JapanResearch deploy train evaluate

MATLAB Support

• JMatLink Modular Support for MATLAB

• Decupling of client and server

• Modules• MATLAB is shown as a

driver implementation module

Module

Remote Module

Driver

MATLAB

Proxy

Jmatlinknative

Server

JMatlink

Delegates to

Native Layer

Delegates to

uses

Page 8: Incorporation of MATLAB into a Distributed Behavioral Robotics Architecture

IROS 2004, Sendai, JapanResearch deploy train evaluate

MATLAB Support

• MATLAB runs as full work space– Interpreted functions

and scripts– Workspace command

line strings– All tool boxes

• Workspace accessed by JMatLink with formatted strings

...matlink.engPutVariable(engine, “laserData” ,

laserData.readLaser);matlink.engPutVariable(engine, “gpsData”,

gps.readGps);

matlink.engEvalString(engine, “sensorData. laserData = laserData”);

matlink.engEvalString(engine, “sensorData.gpsData = gpsData”);

matlink.engEvalString(engine, “result = mFunction(sensorData.”);

resultData = engGetVariable(engine, “result”);....

Page 9: Incorporation of MATLAB into a Distributed Behavioral Robotics Architecture

IROS 2004, Sendai, JapanResearch deploy train evaluate

MATLAB Support

• MATLAB Usage modes:

– Development Phase

– Production PhaseJmatlinknative

JMatlink

Write Data to MATLAB(Sensors readings,

Percepts)

Read Data From MATLAB(Actuator Commands,

Processed Data)

MATLAB Module

MATLAB Module

MATLAB Module(Developed Service

Implementation)

MATLAB Workspace

Control LoopBody

MATLAB Module

Java/Jini

Research Experimentation andModule Development Tool

Distributed SFX

Production Phase Development Phase

Completed serviceimplementation

(interaction with the largerDistributed SFX architecture,

see Fig. 1)

Page 10: Incorporation of MATLAB into a Distributed Behavioral Robotics Architecture

IROS 2004, Sendai, JapanResearch deploy train evaluate

Robots and Hardware

Heterogeneous outdoor robots

Page 11: Incorporation of MATLAB into a Distributed Behavioral Robotics Architecture

IROS 2004, Sendai, JapanResearch deploy train evaluate

Application: Basic Sensor Error Characterization

• GPS points and points calculated from odometry for an example linear test pattern.

-10 -5 0 5 10 15 20

-20

-15

-10

-5

0

5

Start

West --- East (m)

South --- North (m)

Odometry

Filtered GPS

Unfiltered GPS

Linear Test Pattern

Page 12: Incorporation of MATLAB into a Distributed Behavioral Robotics Architecture

IROS 2004, Sendai, JapanResearch deploy train evaluate

Application: Basic Sensor Error Characterization

-18 -16 -14 -12 -10 -8 -6 -4 -2 0 2 4

-12

-10

-8

-6

-4

-2

0

2

4

6

8

Start

West --- East (m)

South --- North (m)

Rectangular Test Pattern

Odometry

Filtered GPS

Unfiltered GPS

-30 -25 -20 -15 -10 -5 0 5 10 15 20

-30

-25

-20

-15

-10

-5

0

5

10

Start

West --- East (m)

South --- North (m)

Circular Test Pattern

Odometry

Filtered GPS

Unfiltered GPS

Page 13: Incorporation of MATLAB into a Distributed Behavioral Robotics Architecture

IROS 2004, Sendai, JapanResearch deploy train evaluate

Ongoing Research

• Go to goal with obstacle avoidance

Page 14: Incorporation of MATLAB into a Distributed Behavioral Robotics Architecture

IROS 2004, Sendai, JapanResearch deploy train evaluate

Example Controller Block Diagram

Laser RangeFilter

(uses current and past laserscans and odometry)

Filtered LaserRange

MotorolaProprietaryGPS Filler

FilteredGPS

GPS(lat, lon)

(Fuzzy ControllerInputs)

Robot MotorDrive System

Robot PositionDetection

(uses current and past GPSreadings and odometry)

Heading ErrorCalculation

Current Target Waypoint(lat, lon)

Odometer(iRobot Mobility Virtual

Encoder output)

Laser scan

Conversion toFuzzy inputvariables:

Left Range Center Range Right Range

FuzzyControllerRule Base

Position(lat, lon, angle)

Heading AngleError (e)

Left

Center

Right

(Fuzzy Control Outputs:Motor Commands)

Translational Velocity(v)

Rotational Velocity(’)

(Feedback via Environment)

Controller

PlantSensorInputs

System Inputs

LaserPrefilter

Page 15: Incorporation of MATLAB into a Distributed Behavioral Robotics Architecture

IROS 2004, Sendai, JapanResearch deploy train evaluate

Additional Experiments

• Example: Fuzzy Control– Multiple Robots – Obstacle avoidance

Page 16: Incorporation of MATLAB into a Distributed Behavioral Robotics Architecture

IROS 2004, Sendai, JapanResearch deploy train evaluate

Conclusions

• A robot control architecture for advanced research was presented

• Combined high-level control and modeling environment and a distributed behavior-based architecture

• Example usages demonstrate utility of the overall system presented

Page 17: Incorporation of MATLAB into a Distributed Behavioral Robotics Architecture

IROS 2004, Sendai, JapanResearch deploy train evaluate

Acknowledgements

• This work was partially supported by a grant form ONR, N 000 14-03-1-786 (2132-033-LO).

• L. Doitsidis was partially supported by “IRAKLITOS fellowships for research from the Technical University of Crete, EPEAEK II – 88727