1.18k likes | 1.85k Views
Subsumption examples Let us analyze some subsumption robots and systems Squirt of Brooks Incorporates an 8-bit computer , an on-board power supply, three sensors and a propulsion system.
E N D
Subsumption examples Let us analyze some subsumption robots and systems
Squirt of Brooks • Incorporates an 8-bit computer, an on-board power supply, three sensors and a propulsion system. • Normal mode of operation is to act as a "bug",hiding in dark corners and venturing out in the direction of noises, only after the noises are long gone. • The entire compiled control system for Squirt fits in 1300 bytes of code on an on-board computer.
Allen of Brooks • First Subsumptive Robot • Almost entirely reactive, using sonar readings to keep away from people and other moving obstacles, while not colliding with static obstacles. • Also had a non-reactive higher levelwhich attempted to head towards a goal. • Used the same type of architecturefor both types of behaviors. named after Allen Newell?
Allen • In addition to sonars, odometry • Offboard Lisp machine for control by cable • 1st layer: avoid obstacles • 2nd layer: random wandering • 3rd layer: head toward distant places
Lowest level reactive layer; used sonar readings to keep away from moving and static obstacles. - if an obstacle is close, instead of bumping into it, stop. Second level; random wandering. Every 10 seconds, generate a movement in a random direction. Third level: Look for a distant place, and move towards it. Odometry can be used to monitor progress. Three layers made it possible for robot to approach goal, whilst avoiding obstacles.
Goal subsumption: switching control between the modules is driven by the environment, not by a central locus of control. Robot heads for goal until sensors pick up information that there is an obstacle in the way. The obstacle avoidance module cuts in. Once the obstacle has been avoided the goal-finding module takes control again. Robot can move around in the environment although it does not build, or use, any map of that environment, and is only driven by simple environmental cues.
InteRRaps program for soccer (Jung, RoboCup 98) • Levelized architecture • level of movements • Level of local planning • Level of social planning
Architecture EssexWizards for soccer simulation
Behavior Architecture Essex W. High-Level Behaviors (tactical) Low-Level Behaviors (primitive) External Threads
Architecture FC Portugal Advanced communication tactical situational formational
Soccer Behavior Modes (1) • Localize: Find own field location if it’s unknown. • Face Ball: Find the ball and look at it. • Handle Ball: Behavior is used when the ball is kickable. • Active Offense: Go to the ball as quickly as possible. Behavior is used when no teammate could get there more quickly. • Auxiliary Offense: Get open for a pass. Behavior is used when a nearby teammate has the ball.
Soccer Behavior Modes (2) • Passive Offense: Move to a position likely to be useful offensively in the future. • Active Defense: Go to the ball even though another teammate is already going. Behavior is used in the defensive end of the field. • Auxiliary Defense: Mark an opponent. • Passive Defense: Track an opponent or go to a position likely to be useful defensively in the future.
Herbert robot from Brooks Labs in MIT (Herbert Simon?) • Used a laser scanner to find soda can-like objectsvisually, • infrared proximity sensors to navigate by following walls and going through doors. • A magnetic compass was used to maintain a global sense of orientation. • A host of sensors on an arm were used to reliably pick up a soda can. • Herbert's task was to wander around looking for soda cans, pick one up and bring it back to where Herbert had started from.
Herbert • 248-bit processors, loosely coupled via slow interfaces. • 30 IR sensors for obstacle avoidance. • Manipulator with grasping hand. • Laser striping system: 3D depth data. • Wanders office, follows walls. • Finds table, triggering can finder, which robot centers on. • Robot stationary: drives arm forward. • Hand grasps when IR beam broken.
Subsumption architecture: several behaviour-generating modules. Modules include obstacle avoidance, wall following, and recognition of coke cans. Control of modules: Only suppression and inhibition between alternative modules - no other internal communication. Each module connected to sensors and to arbitration network which decides which competing action to take.
Description of Herbert in action: When following a wall, Herbert spots a coke can. The robot locates itself in front of the can. The arm motion is then begun - when can is detected with sensors local to the arm, it is picked up. Advantageous; naturally opportunistic. If coke can put right in front of Herbert, can collect it and return to start, since no expectations about where coke cans will be found. Can find coke cans in a variety of locations, even if never found there before. But….
Genghis Brooks‘ Walking robot - Genghis • Walk under subsumption control over varied terrain. • Each leg “knows” what to do. • Leg lifting sequence centrally controlled. • Additional layers suppress original layers when triggered. • Highest layer suppresses walking until person in field. • Then Attacks.
Walking robot - Genghis Brook‘s Hexapod with whiskers
Brooks Robot Example: Genghis • Level1: standup • 2 modules per leg; • control alpha (advance) & beta (balance) motor • Level2: simple walk • does not compenstate for rough terrain • Level3: force balancing • Compensates for rough terrain • Level4: leg lifting • Level5: whiskers • Level6: pitch stabilization • Level7: steered prowling
Walking with six legs Walk Up leg trigger leg down beta position S
Equilibrium of the legs alpha advance alpha balance alpha position S Alpha balance tries to make the sum of the alpha angles zero
Walking Up leg trigger Walk leg down beta pos S alpha advance alpha balance alpha pos S
Walking in rough terrain Up leg trigger Alpha collision Walk leg down beta pos S alpha advance alpha balance alpha pos S
From Genghis to Atilla • Genghis is a 1Kg six legged robot which walks under subsumption control and has an extremely distributed control system • It can walk over rough terraine using 12 motors, 12 force sensors, 6 pyroelectric sensors, one inclinometer and 2 whiskers. • They built a follow-up, Attila--Stronger climber, and faster: able to scramble at around 3 KPH. Periodic recharging of batteries.
Atilla = Killer Application? • Brooks suggested using Attila as planetary rover. • Small rovers provide economic advantage. • Reduces need for 100% reliability. • Legs are much richer sensors than wheels. • Little need for long term state. • NASA's cheaper-faster-better strategy.
Daedalus is a six-legged frame-walker with efficient redundant drive systems. Daedalus was designed for extreme terrain missions as part of CMU's Lunar Rover Initiative The Ambler is a six-legged walking machine for extreme terrains. Key attributes include orthogonal legs, body level motions and a circulating gait. Ambler was a mainstay of our planetary rover work for several years.
Subsumption Architecture and Map building using Self-Organizing Networks
Experiment • Input Vector • Sonar Measure in 8 directions • Action • Action Strategy • Obstacle Avoiding • Wandering (or Wall following?)
Student project on subsumption Kickbot
Objectives of student project • Build an autonomous robot from scratch • Design a robot such that falling over is not a failure mode • Investigate interesting embodied behaviors with a real robot
Kickbot Behaviors • Wander • Kickbot wanders around avoiding obstacles • Tumble • If kicked, Kickbot tumbles and resumes wandering when stable • Antagonize • Kickbot periodically stops to look for interesting movement • If found, then it antagonizes the interesting object until it is kicked
Subsumption Architecture of Kickbot MotorR FF/FB Wander FF/FB MotorL • Wander with no obstacle detection Forward/backward of motors
Subsumption Architecture of Kickbot • Wander with obstacle detection MotorR S S Wander Switch Dir MotorL S S FB Forw. IR I SB SF Back IR I FF S nodes I nodes
Wandering behavior working Subsumption Architecture of Kickbot • First version included no turning yet • Kickbot illustrated an embodied behavior by successfully wandering around • Current version has two turning modes • Reverse with slight motor differential when obstacle detected • Spin for specific amount of time when obstacle detected
Subsumption Architecture Subsumption Architecture of Kickbot • Wander and Tumble MotorR S S I Wander MotorL S S I Forw. IR I Back IR I Mercury Tumble
Subsumption Architecture Subsumption Architecture of Kickbot • Wander, Tumble, and Antagonize Camera MovementDetector Antagonize MotorR S S S I I Wander MotorL S S S I I Forw. IR I Back IR I Mercury Tumble
Mechanical Aspects of Kickbot • Two independently rotating half-spheres • Allows for differential drive • Attached to motor axels using custom aluminum hub and six spokes • Set screws allow for easy removal • Central disk • Counter-weight (batteries and lead weights) keeps central disk upright and helps stabilize robot after tumbling • Provides space for mounting electronics and sensors • Two gear top motors • Mounted in middle of central disk • 4,500 rpm geared through a 1:30 gear ratio
Mechanical Aspects Mechanical Aspects of Kickbot
Sensors in Kickbot • Two Sharp GP2D12 infrared sensors • Provides distance as an analog voltage up to 80cm • Used for obstacle avoidance • Two mercury switches • Aligned such that they are both on when central disk is upright • Used to detect tumbling • Gameboy camera (Mitsubishi M64283FP) • Provides image as 128x128 analog pixel values • Can do edge detection in on-camera hardware • Used to detect interesting movement
Sensors Sensors in Kickbot
Electrical Aspects of Kickbot • Control board • PIC16F877, display LEDs, dip switches, power regulator • Monitors IR sensors and mercury switches • Sends PWM to H-bridges for motor control • H-Bridges • National Semiconductor LMD18201T • Converts PWM input to 12V to vary motor speed • Camera board • PIC16F877, 32KB SRAM, random TTL logic • Captures camera image and advises control board • Includes RS232 interface to dump image data to host computer
Autonomous Robot Teams in Dynamic and Uncertain Environments • Prof. Manuela Veloso, Dr. Tucker Balch, and Dr. Brett BrowningCarnegie Mellon University Robot Soccer
1 2 Distributed Sensor Fusion Ashley Stroupe Agents can maintain a larger and more accurate view of the environment using communication. Two agents observe one object. Observations are uncertain due to sensor noise Agents represent and communicate object locations as 2-D Gaussian probability distributions Agents represent and communicate object locations as 2-D Gaussian probability distributions. Two agents observe one object. Observations are uncertain due to sensor noise. The observations are fused to provide a more accurate estimate of the object’s location The observations are fused to provide a more accurate estimate of the object’s location. • Communication enables • Building a world model through merging own sensing and observations transmitted by team members • Team tracking of objects that only one agent sees • More accurate location of objects simultaneously observed by multiple agents