Professional Documents
Culture Documents
Advanced Robotics Slides
Advanced Robotics Slides
Advanced Robotics
Architectures
Gerald Steinbauer
Institute for Software Technology
Agenda
• Motivation
• Function vs. Operation
• Requirements to Architectures
• Classical Architectures
• Sample Architectures and Frameworks
• Robot Operating System (ROS)
Basics
Motivation
Motivation continued …
• robots perform complex task in challenging
environments interacting with other agents and
people
Function Operation
Reactive Deliberative
Hybrid
Reactive
SENSE ACT
Deliberative
Hybrid
PLAN
SENSE ACT
Planning Persistent
State
Task 1
Subtask 1 Immediate
Executive Memory Interpretation Subtask 2
Task 2
Task 3
Actions
Behavioral Limited
Control State
Behavioral Control
• represents the lowest level of control
• organized like subsumption architecture (emerging
behaviors)
• small set of behaviors (skills)
• connects sensors and actors directly
• behaviors are situated (kind of scope)
• behaviors may run concurrently
• should represent low complexity but some
robustness
• no search or iteration – known computing deadlines
• e.g., go reactively through a door
Gerald Steinbauer Advanced Robotics - Architectures
14
Institute for Software Technology
Executive
• bridges numerical behavioral control and symbolic
planning
• translating high-level plans into low-level behaviors
• use procedural knowledge, e.g. task trees
• responsible for execution monitoring and recovery
• may incorporate resource checking
• temporal constraints may lead to serial and
concurrent execution of skills
• reports exceptions and return values upwards
• has to have proper and needed perception
• e.g.: geometric path planner and navigation
Gerald Steinbauer Advanced Robotics - Architectures
15
Institute for Software Technology
Planning
• responsible for long-term and high-level goals
• two basic concepts
• procedural approach (hierarchical task nets)
• abstract approach (classical planning or scheduling)
• sometimes a top-level mission planner – selection of
high-level goals
• sometimes coordination of several robots is
necessary
• two concepts of control flow
• executive invokes planning if necessary
• planning sends high-level tasks to the executive
• e.g.: plan scientific day mission on mars
Gerald Steinbauer Advanced Robotics - Architectures
16
Institute for Software Technology
Beer Me in 3T
LAAS Architecture
Operation Architectures
Transport Mechanisms
• all architectures comprise different modules
• they need to exchange commands and data
• Client-Server
• components directly talk to each other
• components are aware of each other
• remote method invocation (RPC, CORBA, ROS services)
+ explicit return value
• Publisher-Subscriber
• messages are broadcasted – multiple recipients
• components are usually not aware of each other
• central message routing (IPC, ROS topics)
single point of failure
Gerald Steinbauer Advanced Robotics - Architectures
21
Institute for Software Technology
Player
• popular open-source robotics middleware
• provides mainly simple interfaces to actors and
sensors
• allows for hardware abstraction
• client/server architecture
• communication over sockets
• OS and language independent
• good simulation tools: stage (2d) and gazebo (3d)
Fawkes
• open-source robotic framework
• driven by RWTH Aachen
• strong focus on software development
• component-based software (plug-ins)
• blackboard architecture
• looks for
• simplicity and integration
• low overhead
• scalability
• clear concepts and styles
• somehow integration of function components
OROCOS
• stands for Open Robot Control Software
• driven by University of Leuven
• component-based design and model-driven
development
• strong focus on real-time and automation (robot
arms)
• fast components for arm control (kinematics,
dynamics)
• C++ and CORBA based
Literature
Thank you!