Engineering Robotic Systems: Process, Critical ... Engineering Robotic Systems: Process, Critical Considerations,

  • View
    1

  • Download
    0

Embed Size (px)

Text of Engineering Robotic Systems: Process, Critical ... Engineering Robotic Systems: Process, Critical...

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p1 © 2020 Dimi Apostolopoulos

    Engineering Robotic Systems: Process,

    Critical Considerations, and a Case Study

    Dimi Apostolopoulos

    Guest Lecture to 16311 Introduction to Robotics

    February 5, 2020

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p2 © 2020 Dimi Apostolopoulos

    This lecture

    Methods to develop robotic systems

    Attributes of robotic systems

    An illustrative case study with important observations

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p3 © 2020 Dimi Apostolopoulos

    Introduction

    Dimitrios (Dimi) Apostolopoulos

    Senior Systems Scientist

    The Robotics Institute

    Carnegie Mellon University

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p4 © 2020 Dimi Apostolopoulos

    Creating advanced robotics systems from within CMU

    Groups/Centers

    Departments

    Schools

    University Carnegie Mellon

    University

    6 other schools

    School of Computer Science

    Many other departments

    Robotics Institute

    Other Centers

    NREC

    • Created in 1979

    • Over 900 people

    • > 400 grad students

    • > $60M in R&D per year

    • Created in 1995

    • Over 130 employees

    • Received >$370M in R&D

    funding

    • 50% from commercial

    • > $30M in R&D per year

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p5 © 2020 Dimi Apostolopoulos

    NREC is in the middle of one of most dynamic clusters of

    robotics companies in the world

    Lawrenceville, Pittsburgh

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p6 © 2020 Dimi Apostolopoulos

    Inventing, engineering, and field-validating prototypical, yet

    ruggedized robotics in real-world applications

    Robotics for autonomous mapping and

    remote inspection of platinum mines

    (South Africa)

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p7 © 2020 Dimi Apostolopoulos

    Robotics to change the state of practice and add value

    Robot for inspection of cooper ore

    slurry pipelines (Chile)

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p8 © 2020 Dimi Apostolopoulos

    All robotic systems require multidisciplinary teams to create

    them, and involve complex constructs of hardware and software

    Motion Planning & Execution

    Positioning

    Mapping

    3D Range Sensing

    Electro-Mechanical Design

    Image/sensor Processing

    Unmanned Vehicle Design

    Autonomy

    System Integration & Testing

    Operator Interfaces

    Manipulation

    Machine Learning

    It is imperative to apply systematic processes in the

    development of robotic systems

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p9 © 2020 Dimi Apostolopoulos

    We use Systems Engineering to manage requirement-driven

    engineering of robotic systems

    Reference B. McDonough, 2013

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p10 © 2020 Dimi Apostolopoulos

    Generally there are three phases in the development of a system

    Concept

    Development

    Engineering

    Development

    Post

    Development

    Operational

    Need

    Technological

    Opportunities

    Defined System

    Concept(s)

    Detailed

    Requirements

    Detailed

    Specifications

    Validated

    System

    Fielded

    System

    Detailed

    Documentation

    Inspired by A. Kossiakoff, W. N. Sweet, S. J. Seymour, S. M. Biemer, 2011

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p11 © 2020 Dimi Apostolopoulos

    We use the V method that goes top-down to design, and

    bottom-up to test and validate compliance to requirements

    Requirements

    Development

    System

    Architecting

    Component

    Design

    Fabrication and

    Assembly

    Subsystem

    Design

    Unit

    Testing

    Subsystem

    Testing

    Integrated

    System Testing

    Acceptance

    Testing

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p12 © 2020 Dimi Apostolopoulos

    For larger, more complex systems and projects we apply the V

    method

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p13 © 2020 Dimi Apostolopoulos

    We also use Agile methods, which allow for incremental

    development

    1 2 N

    START

    FINISH

    http://tryqa.com/what-is-agile-model-advantages-disadvantages-and-when-to-use-it/

    http://tryqa.com/what-is-agile-model-advantages-disadvantages-and-when-to-use-it/

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p14 © 2020 Dimi Apostolopoulos

    For retrofits-for-automation and subsystem R&D we apply agile

    methods

    Sensing, autonomy, and

    tooling retrofits

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p15 © 2020 Dimi Apostolopoulos

    Attributes of robotic systems

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p16 © 2020 Dimi Apostolopoulos

    Systems entail

    • Hierarchy of subsystems and components

    • Capabilities and characteristics (functional, non-functional)

    • Relationships between subsystems and components

    • State of an component at a point in time

    • Behaviors: Sequences of component states over time

    • Processes: Sequence and timing of behaviors

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p17 © 2020 Dimi Apostolopoulos

    Systems have hierarchy, attributes, relationships,

    states, behaviors, and processes

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p18 © 2020 Dimi Apostolopoulos

    System hierarchy

    System

    Subsystem Subsystem

    Component Component Component

    Subsystem

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p19 © 2020 Dimi Apostolopoulos

    Multiple possible ways to partition a robot into

    subsystems. Contrast monolithic vs. modular

    Collision Avoidance

    Sensors

    Environment

    Perception Sensors

    Ride Smoothing

    Assembly

    Drive Assembly Heat Management

    Subsystem

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p20 © 2020 Dimi Apostolopoulos

    Systems have capabilities and characteristics

    Functional Non-Functional

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p21 © 2020 Dimi Apostolopoulos

    System capabilities and characteristics

    Functional Drives

    Steers

    Controls

    Senses

    Perceives

    Plans

    Detects

    Avoids

    Communicates

    Maps

    Localizes

    Analyzes

    Interprets

    Summarizes

    Diagnoses

    etc.

    Non-Functional Weight

    Color

    Dimensions

    Cost

    IP rating

    Aesthetics

    Ergonomics

    Noise level

    Power capacity

    Computing capacity

    Reliability

    Durability

    Maintainability

    Serviceability

    Compliance

    etc.

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p22 © 2020 Dimi Apostolopoulos

    Relationships in systems

    • How the subsystems/components combine to contribute to

    the system’s purpose

    • In an optimized system, the subsystems are connected in a

    way that their relationships yields] maximum effectiveness

    Capturing the relationships between subsystems and

    components is essential to create system architectures,

    which we then use in design and engineering

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p23 © 2020 Dimi Apostolopoulos

    Let’s examine relationships within a system

    Robotic

    Mine Profiler

    Autonomously

    Navigates

    Autonomously

    Maps

    Avoids

    Collisions

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p24 © 2020 Dimi Apostolopoulos

    How to identify relationships within a system

    Pose Estimation Localization

    Mapping

    AutonomySensing

    Collision

    Avoidance

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p25 © 2020 Dimi Apostolopoulos

    How relationships affect what the system will be

    Pose Estimation Localization

    Mapping

    Autonomy

    Collision

    Avoidance

    Sensing

  • 16311 Spring 2020 – Introduction to Robotics Guest Lecture/ p26 © 2020 Dimi Apostolopoulos

    How relationships affect what the system will be

    Pose Estimation Localization

    Sensing

    Mapping

    Autonomy

    Sensing Collision

    Avoidance Sensing

    Sensing