Reactive Swtiching Strategies for the Control of Autonomous Uninhabited Air Vehicles - PowerPoint PPT Presentation

1 / 26
About This Presentation
Title:

Reactive Swtiching Strategies for the Control of Autonomous Uninhabited Air Vehicles

Description:

Unmanned surface vehicles (Darpa MARS) Not to mention Robocup (Melbourne 2000) ... Awkward to express in Simulink (often best to resort to Matlab via s-functions) ... – PowerPoint PPT presentation

Number of Views:53
Avg rating:3.0/5.0
Slides: 27
Provided by: paulh191
Category:

less

Transcript and Presenter's Notes

Title: Reactive Swtiching Strategies for the Control of Autonomous Uninhabited Air Vehicles


1
REACTIVE SWITCHING STRATEGIES FOR THE CONTROL OF
UNINHABITED AIR VEHICLES Yale University Peter
Belhumeur Paul Hudak
A. Stephen Morse
With help from John Peterson, Stephen
Elliott, Brenda Ng, Samuel Elder, Alexander Potter
  • Rapid Prototyping
  • Reliable Autonomous Maneuvering
  • Reconfiguration
  • Robustness
  • Reactive Design Verification
  • Real-time Programming
  • Reuse of Software Components
  • Key Research Themes
  • Autonomous Coordinated Motion
  • Visual Servoing
  • Programming Language Design

2
Motivation
  • There is interest at Yale in
  • Unmanned air vehicles (Darpa SEC)
  • Unmanned underwater vehicles (NSF KDI/LIS)
  • Unmanned surface vehicles (Darpa MARS)
  • Not to mention Robocup (Melbourne 2000)
  • We believe that autonomous coordinated motionis
    inherently interesting and important, and is an
    abstraction and distillation of the above
    projects.
  • Issues
  • real-time control,
  • autonomy,
  • communications,
  • software,

- mobility, - locomotion, - planning, -
sensing
3
Recent Activity
  • Focus on autonomous coordinated motion.
  • Acquisition of small robots for unmanned surface
    vehicle testbed.
  • Simulation of coordinated motion of autonomous
    vehicles.
  • Comparison of Matlab/Simulink with FRP.
  • Improvements to FRP and its implementation.
  • Collaboration with OGI on FRP and other
    Haskell-based infrastructure.

4
Autonomous Coordinated Motion
  • Natural behavior amongst living animals
  • flocking, herding, schooling, swarming
  • Specific tasks of interest to us
  • congregation, navigation, escortation,
    formation motion, obstacle avoidance, dispersion,
    etc.
  • Key technologies of interest
  • computational vision and control (visual
    servoing)
  • programming language support
  • domain specific design
  • Functional Reactive Programming (FRP)

5
Experimental Testbeds
  • Unmanned underwater vehicle testbed
  • NSF KDI/LIS grant (w/ Princeton and U.
    Washington)
  • Small autonomous underwater vehicles
  • 3D context may extrapolate to UAVs
  • Unmanned surface vehicle testbed
  • Small vision-controlled robots (Probotics
    Cye-bots)
  • Goal no sensors other than passive vision
  • Communication via wireless Ethernet
  • Programmed using FRP and Fvision

6
Example AV Simulation
  • Goal
  • to move a group of autonomous vehicles
    (AVs)through a barrier and then to have them
    surround a target at a given distance
  • autonomy achieved via local control laws only
  • nearest neighbor, potential fields, etc.
  • modularity achieved via hierarchical control
  • a virtual circle surrounds each AV
  • each AV positions itself within its circle
  • the circles position themselves within
    environment
  • adaptability achieved via mode switching
  • Simulated in Matlab/Simulink and FRP

7
AV Animated Simulation
8
Hierarchical Control
Coordinated Task Control
Schooling Control
Collision Avoidance (between virtual circles)
Local AV positioning (within virtual circle)
9
AV Animation w/ virtual circles
10
FRP (Functional Reactive Programming)
  • High-level, declarative, domain-specific language
    (DSL) and environment for programming complex
    hybrid systems.
  • Two key concepts
  • Continuous, time-varying behaviors.
  • Discrete streams of events.
  • Current Uses of FRP
  • Graphics and Animation (Fran)
  • Robotics (Frob)
  • Vision (Fvision)
  • User Interfaces (FranTk)

11
Behaviors
  • Continuous behaviors capture any time-varying
    quantity, whether
  • input (sonar, temperature, video, etc.),
  • output (actuator voltage, velocity vector, etc.),
    or
  • intermediate values internal to a program.
  • Operations on behaviors include
  • Generic operations such as arithmetic,
    integration, differentiation, and
    time-transformation.
  • Domain-specific operations such as edge-detection
    and filtering for vision, scaling and rotation
    for animation and graphics, etc.

12
Events
  • Discrete event streams include user input as well
    as domain-specific sensors, asynchronous
    messages, interrupts, etc.
  • They also include tests for dynamic constraints
    (predicate events) on behaviors (temperature too
    high, level too low, etc.)
  • Operations on event streams include
  • Mapping, filtering, reduction, etc.
  • Reactive behavior modification.
  • Behavior snapshots.

13
Matlab and Simulink
  • Simulink is a visual programming language
    designed for model-based control.
  • Very popular, very successful, and very
    effective.
  • Tough competition for FRP!

14
FRP vs Simulink
  • Shortcomings of Simulink
  • Visual programming is not always best.
  • Studies have shown that experts prefer text.
  • Logic-based control is awkward to express.
  • Simulink lacks a reactive semantics.
  • It is difficult to replicate functionality.
  • Simulink lacks data structures and other
    conventional programming conveniences.
  • It is difficult to abstract functionality.
  • Simulink lacks higher-order abstractions.

15
Example from AV Simulator
Force Vector Vel Vector
Speed Limiter
1 -- s
1 -- s
1

vel
f

X Force
pos
1
2

Velocity
Position Vector
Y Force
Mux
Position
k
Gain
rob
2
Non-state Robot Vector
Mux
FRP equivalent code vel integral (f
speedLim vel kvel) pos integral vel
rob (pos,vel)
16
Replication in AV Simulator
Fifteen AVs with identical functionality
17
Expanded View
18
Simplified Replication
fn
proc
FRP Equivalent code out map snd xs xs
map fn args args proc (map fst xs)
fn
fn
out
xs
args
v
fn
Mux
Mux
19
Data Structures
  • Another AV simulator example finding the two
    nearest neighbors in a group of AVs.
  • No convenient mechanism in Simulink.
  • Solution revert to Matlab (using s-functions)
    but then weve lost the model-level abstraction.
  • In FRP, we can remain in the model.

20
S-Function Code
cycle through all other robots to determine two
closest robots and apply a configuration force
for i2numrobots xi u( (i - 1)4 1)
yi u( (i - 1)4 2) vxi u( (i - 1)4
3) vyi u( (i - 1)4 4) magdr sqrt(
(xi-xj)2 (yi-yj)2 ) if i j,
if magdr lt closest(j,2),
secondclosest(j,1) closest(j,1)
secondclosest(j,2) closest(j,2)
closest(j,1) i closest(j,2) magdr
elseif magdr lt secondclosest(j,2),
secondclosest(j,1) i
secondclosest(j,2) magdr end end
21
Reactivity(where the continuous meets the
discrete)
  • The ability to react to either internal or
    external stimuli.
  • Critical notion for hybrid systems.
  • Awkward to express in Simulink (often best to
    resort to Matlab via s-functions).
  • Example mode switching in AV simulation.

22
S-Function Code
if robot is on targetside, apply force to
attract it to target if ontargetside
magdrcenter 0, output( (j - 1)2 1)
output( (j - 1)2 1)
tempk3(rcenter - magdrcenter)drcenter(1)/magdrce
nter output( (j - 1)2 2) output( (j -
1)2 2) tempk3(rcenter
- magdrcenter)drcenter(2)/magdrcenter end
if robot is not on target side, apply force to
attract it to gap in barrier r
xj,yj magr sqrt(xj2 yj2) if
ontargetside magr 0, output( (j - 1)2
1) output( (j - 1)2 1)
gapattractionconstantr(1)/(10
magr2) output( (j - 1)2 2)
output( (j - 1)2 2)
gapattractionconstantr(2)/(10
magr2) end
23
Reactivity in FRP
  • Given continuous behaviors b1 and b2, b1
    until e gt b2 means Behave as b1 until
    event e, then behave as b2.
  • Well-founded semantics.
  • Rich algebra of transformations.
  • Previous example in FRP
  • Or even better

if ontargetside magdrcenter 0 then
tempk3(rcenter - magdrcenter)drcenter(1)/magdrce
nter else gapattractionconstantr(1)/(10 magr2)
gapattractionconstantr(1)/(10 magr2) until
pred (ontargetside magdrcenter 0) gt
tempk3(rcenter - magdrcenter)drcenter(1)/magdrce
nter
24
Future Work
  • Coordinated motion
  • Task elaboration and analysis
  • Control algorithms design
  • Monster truck testbed
  • Computer vision tasks
  • FRP research (next slide)

25
Future FRP Research
  • Collaboration with OGI
  • FRP standard, FRP infrastructure, etc.
  • Integration with OCP as plug-in MoC
  • Interoperability with other OCP Mocs
  • Visual FRP
  • Ability to shift between views, and edit either
  • Can FRP be a front-end to Simulink?
  • Performance
  • Interpreted FRP performs worse than Simulink
  • This will improve with algebraic
    optimization,meta-programming, and conventional
    compilation
  • Space leaks are a problembut garbage collection
    is not (its real-time)
  • Execution on real-time platform
  • FRP extensions
  • Behavior sustainment
  • Multi-rate behaviors
  • Preemptive interrupts

26
How to Hide a Flock of Turkeys
Write a Comment
User Comments (0)
About PowerShow.com