1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson.

21
1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson

Transcript of 1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson.

Page 1: 1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson.

1

Constant Following Distance Simulations

CS547 Final ProjectDecember 6, 1999

Jeremy Elson

Page 2: 1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson.

2

research goals

• Motivation: Explore the effect of different radio models on the accuracy of simulation

• Two opposing models:– Arena: Smother everything and noise; forces

you to build algorithms that are noise-resistant– network simulators: Extremely detailed

• In network simulation, very accurate radio models might be required

• What about in robotics? (Easier target...)

Page 3: 1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson.

3

experimental goals

• To explore this, the idea was:– Implement a simple set of behaviors in

simulation across different radio models– Characterize the behavior across radio models

(perhaps across behavior sets)– Implement the algorithms in reality– Compare simulation to reality

• This work is still entirely simulation; implementation coming

Page 4: 1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson.

4

the experiment

• Idea: Use radio contact to allow “constant distance following”– Both robots follow the same path, one tries to

keep a constant distance behind the other– Path: Endlessly circling SAL

• Assume that the radio acts as a “proximity detector”– Within radio range: you’re too close– Out of range: you’re too far away

Page 5: 1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson.

5

simple SAL model

20 m

Page 6: 1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson.

6

robot sonar model

0

12

3 45

6

Exact sonar readings are never used; all 7 sonars areclassified into NEAR (< 2m), MID (2-5 m), or FAR (>5m)

Page 7: 1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson.

7

desired steady state

don’t care

!NEAR MIDNEAR=collisionFAR=corner coming soon

MIDNEAR=too close to wallFAR=corner crossing or too far from wall

!NEAR

Goal: endlessly circle SAL, clockwise

FAR

!NEAR

Page 8: 1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson.

8

basic behaviors

• Speed and direction controlled independently• Direction:

if (state[6] == FAR) { turnRate = 4.0; // Sharp right turn to follow the wall } else if (state[5] == FAR || state[1] == NEAR || state[2] == NEAR) { turnRate = 2.0; // Shallow right for left collision, or drift away from wall

} else if (state[3] != FAR || state[4] == NEAR || state[5] == NEAR || state[6] == NEAR) {

turnRate = -2.0; // Shallow left for right or dead on collision, } // or getting too close to wall

Page 9: 1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson.

9

basic behaviors

• Speed:

if (state[2] == NEAR || state[3] == NEAR || state[4] == NEAR) speed = -1.0; // Go backwards if we’re running into something else if (state[6] == FAR) speed = 2.5; // Slow down a lot if we’re past the end of the wall else if (state[5] == FAR) speed = 5.0; // Slow down a little if the wall end is coming else speed = nominalSpeed; // 7.0

Page 10: 1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson.

10

resulting path (1 robot)

Tic marks are atconstant timeintervals

Note robot slowsdown as it reachescorners

Page 11: 1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson.

11

repeated traverses

Page 12: 1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson.

12

obstacle avoidance

Robot backs up,turns, goes forwards

Robot takeswide turn

Obstacle avoidanceoverrides

wall following

Page 13: 1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson.

13

repeated traverses

Page 14: 1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson.

14

proximity detection• Simple model of Radiometrix (or similar) radio

-- xmit success probability drops off sharply as distance increases

• Our goal: live on the slope of the curve

• Simulated with “(d + error) squared threshold” model

• Potential range of error is a percentage of d; chosen at random uniformly from that range

– The percentage is a parameter

Page 15: 1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson.

15

idealized model

nominal transmit range = 5m

Page 16: 1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson.

16

simulated model

nominal transmit range = 5m

Page 17: 1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson.

17

following behavior• One robot is leader (nominal speed = 7.0),

one is follower (nominal speed is variable)

if (following) { getLossRate(&shortLossRate); if (shortLossRate > 80) nominalSpeed = 9.0; else if (shortLossRate < 20) nominalSpeed = 5.0; else nominalSpeed = 7.0;} else { // leader nominalSpeed = 7.0;}

Page 18: 1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson.

18

results

Page 19: 1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson.

19

conclusions

• Simple rules are best– More complex rules never worked as well!– Priority is (naturally) critical!

• Using proximity detection seems to work reasonably– Given that it is not entirely easy to track speed

and distance around turns, etc.

• Surprisingly, percent-distance error seemed to have little impact on the outcome

Page 20: 1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson.

20

future work

• Additional Radio Models & Behaviors– e.g., bit error rate model: packet success

becomes sensitive to packet length– Then, probe with both short and long packets

• Implementation on real Pioneer-2– Compare performance under simulation to that

of the real implementation

Page 21: 1 Constant Following Distance Simulations CS547 Final Project December 6, 1999 Jeremy Elson.

21

that’s all, folks!