rapyuta robotics cloud robotics - enabling an ecosystem ... · software development in the cloud...

15
Cloud Robotics - Enabling an Ecosystem of Robotics Developers Prof-Dr Thomas M. Bohnert Dr. Giovanni Toffetti Zurich University of Applied Sciences Rapyuta Robotics

Upload: others

Post on 19-Jul-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Rapyuta Robotics Cloud Robotics - Enabling an Ecosystem ... · Software Development in the Cloud Era Modern software development principles Agile Distributed DevOps, Infrastructure

Cloud Robotics - Enabling an Ecosystem of Robotics Developers

Prof-Dr Thomas M. BohnertDr. Giovanni Toffetti

Zurich University of Applied SciencesRapyuta Robotics

Page 2: Rapyuta Robotics Cloud Robotics - Enabling an Ecosystem ... · Software Development in the Cloud Era Modern software development principles Agile Distributed DevOps, Infrastructure

WEF 2016 - Robotics is Future

● Robotics omnipresent at WEF 2016● Economic potential is massive● Societal potential huge, and so are concerns

Source: https://www.weforum.org/agenda/2016/05/the-rise-of-the-robots-how-the-market-is-booming

Page 3: Rapyuta Robotics Cloud Robotics - Enabling an Ecosystem ... · Software Development in the Cloud Era Modern software development principles Agile Distributed DevOps, Infrastructure

Robotics is Future● Innovation capacity is enormous● Backed by significant VC, on the rise● Globally● From traditional industries towards becoming integral part of society● Industrial automation vs autonomous robots for service-based

societies/economies

Source: https://www.weforum.org/agenda/2016/05/the-rise-of-the-robots-how-the-market-is-booming

Page 4: Rapyuta Robotics Cloud Robotics - Enabling an Ecosystem ... · Software Development in the Cloud Era Modern software development principles Agile Distributed DevOps, Infrastructure

Robotics is Future

Source: https://www.weforum.org/agenda/2016/05/the-rise-of-the-robots-how-the-market-is-booming

● Europe critically low (behind)● Hardware is central ...● … but software drives autonomy of robots

Page 5: Rapyuta Robotics Cloud Robotics - Enabling an Ecosystem ... · Software Development in the Cloud Era Modern software development principles Agile Distributed DevOps, Infrastructure

Robotics Beyond Industry Automation● Designing the Robot for “Enterprise and Personal Services”

○ Start simple○ Be affordable○ Do one thing ○ Do one thing well○ Scale with increasing understanding of customer requirements○ Evolve towards autonomy○ Build on an open platform

● Sounds familiar?

Page 6: Rapyuta Robotics Cloud Robotics - Enabling an Ecosystem ... · Software Development in the Cloud Era Modern software development principles Agile Distributed DevOps, Infrastructure

ROS - Software Innovation Enabler● Problem

○ Robotics development is very hard: no single individual, laboratory, or institution can hope to do it on their own

● Main idea○ simplify the task of creating complex and robust robot behaviors across the widest possible

variety of robotic platforms

● ROS: Robot Operating System○ Not really an OS, it’s a framework (tools, libraries, conventions)

● Concepts:○ Distributed system (graph) of ROS nodes (processes) over a communication infrastructure○ Failure isolation / reduced code complexity

Page 7: Rapyuta Robotics Cloud Robotics - Enabling an Ecosystem ... · Software Development in the Cloud Era Modern software development principles Agile Distributed DevOps, Infrastructure

Software Development with ROS - Core Principles● Software development IS

○ Very device centric, primarily local

○ Primarily manual, little support for automation (CI/CD, orchestration, auto-scaling etc)

○ Very diverse in terms of components availability and maturity○ Some support for modelling and simulation○ Very basic concept of multi-robot scenarios

○ No common approach to configuration management in multi-robot scenarios

○ Lack of unifying platform concept that support a modern software development process

● Consequence○ Need to be an expert in low-level HW, ROS-framework, and

application domain

Industry 4.0, Enterprise Services, Logistics,, Safety, Personal Services,

Health, AAL

Robot Type, Hardware, Periphery

Page 8: Rapyuta Robotics Cloud Robotics - Enabling an Ecosystem ... · Software Development in the Cloud Era Modern software development principles Agile Distributed DevOps, Infrastructure

Cloud Computing Primer

● Cloud Computing Definition○ On-Demand, Self-Service, Elastic, Multi-

tenant, Network Access, Pay-as-you-go

● Service Models○ IaaS, PaaS, SaaS

● Deployment models○ Public, Private

Page 9: Rapyuta Robotics Cloud Robotics - Enabling an Ecosystem ... · Software Development in the Cloud Era Modern software development principles Agile Distributed DevOps, Infrastructure

Cloud Computing Primer

Source: Microsoft Source: hrushikeshzadgaonkar.wordpress.com

Page 10: Rapyuta Robotics Cloud Robotics - Enabling an Ecosystem ... · Software Development in the Cloud Era Modern software development principles Agile Distributed DevOps, Infrastructure

Software Development in the Cloud EraModern software development principles

● Agile● Distributed● DevOps, Infrastructure as Code● Use proper tooling (CI, CD, Orchestration, Containers, etc)● Cloud-native Design (micro-services, scalable, resilient, redundant)● Focus on expertise● Consume service beyond your focus

Mostly absent in software development for robotics

● Need for a PaaS for Robotics

Page 11: Rapyuta Robotics Cloud Robotics - Enabling an Ecosystem ... · Software Development in the Cloud Era Modern software development principles Agile Distributed DevOps, Infrastructure

RoboPaaS Concept

COMP STRG

NET

Macro-DCMicro-DC

Design, Modelling, Simulation, Services, CI/CD/Orchestration, SW and Config Mngt

Page 12: Rapyuta Robotics Cloud Robotics - Enabling an Ecosystem ... · Software Development in the Cloud Era Modern software development principles Agile Distributed DevOps, Infrastructure

RoboPaaS - Issues and emerging Paradigms

● Heterogeneity of devices (categories, aerial, drone, industrial, enterprise)● Myriad of device functional features (arms, powertrains, vision, etc)● Ephemerality of devices (network, battery, location)● Device repository, Discovery, Location matters● Resource diversity, how to virtualize?● How to share a robot, and how to share its specific features?● How to share between robots (concept of an ad-hoc robot cloud)

Page 13: Rapyuta Robotics Cloud Robotics - Enabling an Ecosystem ... · Software Development in the Cloud Era Modern software development principles Agile Distributed DevOps, Infrastructure

RoboPaaS - Issues and emerging Paradigms

● Design, Testing, Simulation, ● How to deploy and orchestrate across multiple robots?● Software and Configuration management● Third party services, service catalogue● Monitoring, Reliability, Resilience● Safety, Accountability● Rating, Charging, Billing

Page 14: Rapyuta Robotics Cloud Robotics - Enabling an Ecosystem ... · Software Development in the Cloud Era Modern software development principles Agile Distributed DevOps, Infrastructure

Status Quo

2013 Rapyuta Cloud Engine

IaaS v1

2015Rapyuta Cloud Engine

IaaS redesign

2016Rapyuta Cloud Engine

PaaS Design

2016Rapyuta Cloud Engine

IaaS v2

2016Rapyuta Cloud

Engine PaaS v1

More info: Dr. Giovanni Toffetti, [email protected]

Page 15: Rapyuta Robotics Cloud Robotics - Enabling an Ecosystem ... · Software Development in the Cloud Era Modern software development principles Agile Distributed DevOps, Infrastructure

Questions

blog.zhaw.ch/icclab

www.rapyuta.org

Prof.Dr. Thomas M. Bohnert, [email protected]. Giovanni Toffetti, [email protected]