Presentation is loading. Please wait.

Presentation is loading. Please wait.

Electrical Engineering Design Project - Fall 2002 Electrical/Computer Engineering Design Project Fall 2002 Lecture 4 – Robotics.

Similar presentations


Presentation on theme: "Electrical Engineering Design Project - Fall 2002 Electrical/Computer Engineering Design Project Fall 2002 Lecture 4 – Robotics."— Presentation transcript:

1 Electrical Engineering Design Project - Fall 2002 Electrical/Computer Engineering Design Project Fall 2002 Lecture 4 – Robotics

2 Electrical Engineering Design Project - Fall 2002 Topics (2-3 lectures) Early mobile robots Robot architectures  Deliberative  Reactive (Behavior Based)  Hybrid Obstacle Avoidance Localization Navigation

3 Electrical Engineering Design Project - Fall 2002 Topics Early mobile robots Robot architectures  Deliberative  Reactive (Behavior Based)  Hybrid Obstacle Avoidance Localization Navigation

4 Electrical Engineering Design Project - Fall 2002 Grey Walter’s Tortoise “Elsie” Built completely from hardware Exhibited behaviors including Seeking light Head towards weak light Back away from bright light Turn and push Recharge batteries Behaviors were prioritized – robot always acted on the highest priority behavior

5 Electrical Engineering Design Project - Fall 2002

6 Hopkins Beast

7 Electrical Engineering Design Project - Fall 2002 The Stanford CART

8 Electrical Engineering Design Project - Fall 2002

9 SRI's Shakey SHAKEY built an internal model of the world using logic based representational formalism. A planner (STRIPS) would then find a sequence of actions to perform the task. SHAKEY was confined to highly engineered static environments and “very error prone”. Up to an hour to cross a room.

10 Electrical Engineering Design Project - Fall 2002 Early mobile robots Robot architectures  Deliberative  Reactive (Behavior Based)  Hybrid Obstacle Avoidance Localization Navigation Topics

11 Electrical Engineering Design Project - Fall 2002 Deliberative Robot Architecture SensePlanAct All sensor data is collected in one step. Sensor data is combined “fused” into a single world model. A plan is generated to try determine an action that will carry the robot closer to the goal - example “move forward 30 cm” The action is executed.

12 Electrical Engineering Design Project - Fall 2002 Early mobile robots Robot architectures  Deliberative  Reactive (Behavior Based)  Hybrid Obstacle Avoidance Localization Navigation Topics

13 Electrical Engineering Design Project - Fall 2002 What is a Behavior? Valentino Braitenberg (1984) – Braitenberg Vehicle behaviors can result from simple connections between sensors and actuators. directional aversiveattraction oscillatory

14 Electrical Engineering Design Project - Fall 2002 Some General Behaviors Exploration/directional (move in a general direction) - heading based - wandering Goal oriented (move towards an attractor) - discrete object attractor - area attractor Aversive/Protective (prevent collisions) - avoid stationary objects - allude moving abjects - aggression Path following behaviors - road following - hallway navigation - stripe following Tele-autonomous behaviors - influence - behavioral modication

15 Electrical Engineering Design Project - Fall 2002 Behavioral Representation 1. Stimulus Response (SR) diagram Behavior stimulus response SR blocks can be combined to design a complex system Behavior 1 Stimulus 1 Behavior 2 Stimulus 2 Behavior 3 Stimulus 3 Behavior n Stimulus n COORDINATORCOORDINATOR action

16 Electrical Engineering Design Project - Fall 2002 Behavioral Representation 2. Functional Notation b(s) = r A functional expression of multiple behaviors would have the following form Coordinate-behaviors[ behavior_1(stimulus_1), behavior_2(stimulus_2), behavior_3(stimulus_3), behavior_n(stimulus_n) ] = motor-response

17 Electrical Engineering Design Project - Fall 2002 Behavioral Representation 3. Finite State Acceptor Diagrams (FSA) - useful for describing a sequence of behaviors M = (Q, , q o, F) Where Q = set of allowable behavioral states  = transition mapping function mapping the input and current state to another state. q o = the starting behavioral state. F = a set of accepting states indicating completion of a task. Example – from a robot used in AAAI competition. start Find next pole Move to pole Return to start halt wander compete other found all poles not at start at start all not at pole no timeout pole selected no pole found timeout lost at pole

18 Electrical Engineering Design Project - Fall 2002 Behavioral Coordination Behavior 4 Behavior 3 Behavior 2 Behavior 1 perceptionperception Response of highest active behavior Competitive Methods 1.Arbitration - behaviors have fixed priority. - output is active behavior with highest priority. - Subsumption - later

19 Electrical Engineering Design Project - Fall 2002 Behavioral Coordination 2.Action Selection - behaviors actively compete through use of activation levels - biological robots that get hungry as time passes - Alliance Behavior 4 Behavior 3 Behavior 2 Behavior 1 perceptionperception R=R MAX(act(B1),act(B2)..act(b4)) Response of behavior with highest activation level

20 Electrical Engineering Design Project - Fall 2002 Behavioral Coordination Cooperative Methods 1.Potential fields (vector addition) - the output of each behavior is multiplied by a gain and then added - motor schema theory Behavior 4 Behavior 3 Behavior 2 Behavior 1 perceptionperception  R =  (Gi * Ri) Fused behavioral response

21 Electrical Engineering Design Project - Fall 2002 Behavior-Based Architectures Subsumption – Rodney Brooks - MIT (1985) Perception Modeling Planning Task Execution Motor Control Sensors Actuators Sense-Plan-Act Sensors Avoid Objects Wander Explore Build Maps Identify Objects Plan Changes to the World Reason about Behavior of Objects Actuators Subsumption

22 Electrical Engineering Design Project - Fall 2002 Subsumption Behavior 4 Behavior 3 Behavior 2 Behavior 1 perceptionperception Response of highest active behavior Based on building layers of competence in a robot. Additional layers can be added at any time. Low level behaviors usually represent primitives such as a avoiding obstacles and wandering. Each layer can be designed and thoroughly debugged before adding new layers. Higher level layers can view input and outputs of low level layers. Higher level behaviors can inhibit the input or suppress the output of low level behaviors. Coordination is achieved by a fixed arbitration scheme where high level behaviors take priority.

23 Electrical Engineering Design Project - Fall 2002 Subsumption Originally each layer was built from a small processor. Each processor represented an augmented finite state machine (AFSM) No handshaking – asynchronous Each AFSM has -Input lines -Output lines -Reset line An extra wire can terminate at input/output to inhibit/suppress the input/output. Behavioral Module I S inhibitor suppressor Input wires Output wires

24 Electrical Engineering Design Project - Fall 2002 Subsumption robots Allen - The first subsumption robot Toto - explores around office buildings Genghis – a walking robot Herbert – a soda can collecting robot Ants – a community of cubic inch robots Wheelesley – a wheelchair robot Polly – a tour guide robot Hannibal and Attila – insect robots

25 Electrical Engineering Design Project - Fall 2002 Subsumption robots Cog An ongoing project at MIT to build a humanoid robot from a bottom-up subsumption approach.

26 Electrical Engineering Design Project - Fall 2002 Motor Schema Represent robot behaviors as motor schemas Every motor schema has at least one perceptual schema responsible for providing environmental stimulus for that behavior. Behaviors can have internal parameters that provide additional flexibility in their deployment. Each behavior generates a response vector (magnitude and direction) in a manner analogous to potential fields methods. Schemas can operate asynchronously. Perceptual schemas are recursively defined –perceptual sub-schemas can extract bits of information that are used by other perceptual schemas Coordination is performed simply by vector addition

27 Electrical Engineering Design Project - Fall 2002 Motor Schema PS 1 PS 2 PS 3 PSS 1 PSS 2 ES 1 ES 2 ES 3  Motor schemasSensors motors robot MS 1 MS 2 PS – perceptual schema PSS – Perceptual subschema MS – motor schema ES – environment sensors

28 Electrical Engineering Design Project - Fall 2002 Motor schema coordination - each behavior outputs a vector in the following manners Avoid static obstacleMove to goalStay on path Move in direction Dodge Noise

29 Electrical Engineering Design Project - Fall 2002 Behaviors are coordinated by vector addition.

30 Electrical Engineering Design Project - Fall 2002 Some motor schema robots Reactive control in hostile environments Behavior based architecture for Asimo the Honda Robot IO, Ganeymede and Callisto – trash collecting robots Pioneer robots – formation keeping

31 Electrical Engineering Design Project - Fall 2002 Motor Schema Design Process 1.Characterize the problem domain in terms of the motor behaviors necessary to accomplish the task. 2.Decompose the motor behaviors to their most primitive level. 3.Develop formulas to express the robot’s reaction to perceived environmental events. 4.Conduct simulation studies to asses the desired behaviors approximate performance in the proposed environment. 5.Determine the perceptual requirements needed to satisfy the inputs for each motor schema. 6.Design specific perceptual algorithms that extract the required data for each behavior. 7.Integrate resulting control system onto robot. 8.Test and evaluate the system’s performance. 9.Iterate and expand behavioral repertoire as necessary.

32 Electrical Engineering Design Project - Fall 2002 Example – Trash Collecting Robot Step 1: Behaviors necessary to accomplish the task. Step 2: Decompose behaviors to their most primitive levels. 1.Avoid static obstacles. 2.Avoid other robots (in the case of multiple robots) 3.Move towards a goal. 4.Noise. 1.Wander – look for trash. 2.Acquire – move towards and pick up trash. 3.Deliver – deliver trash to a specific location.

33 Electrical Engineering Design Project - Fall 2002 2.Move to goal V magnitude = fixed gain value V direction = towards goal Step 3: Develop Formulas 1.Avoid obstacles V direction = radially along a line from robot center to center of obsatcel directed away from obstacle Where S = sphere of influence R = radius of object G = gain D = distance from robot to obstacle 3.Noise V magnitude = fixed gain value V direction = random direction changed every p time steps (p denotes persistence)

34 Electrical Engineering Design Project - Fall 2002 Step 7: System Integration  Avoid Obstacles detect obstacles Avoid other robots detect robots Noise generate direction Wander  Avoid Obstacles detect obstacles Avoid other robots detect robots Move to goal detect goal Noise generate direction Acquire Sequencer  Avoid Obstacles detect obstacles Avoid other robots detect robots Move to goal detect goal Noise generate direction Deliver

35 Electrical Engineering Design Project - Fall 2002 Step 5: Determine necessary perceptual schemas 1.Avoid obstacles – detect obstacles 2.Avoid other robots - detect robots 3.Move towards a goal – detect goal 4.Noise – generate direction Avoid Obstacles detect obstacles Detect other robots detect robots Move to goal detect goal Noise generate direction

36 Electrical Engineering Design Project - Fall 2002 Sequencer? start halt wander begin other acquire detect deliver grab release done Perceptual triggers Perceptual triggers cause a transition from one state to another resulting in a new set of behaviors being enable. State of the system determine what behaviors will be currently active.

37 Electrical Engineering Design Project - Fall 2002 Next Day – Obstacle Avoidance, Localization and Navigation


Download ppt "Electrical Engineering Design Project - Fall 2002 Electrical/Computer Engineering Design Project Fall 2002 Lecture 4 – Robotics."

Similar presentations


Ads by Google