15
Component Management in Component Management in OMG Meeting, Burlingame, CA, USA, 2012 OMG Meeting, Burlingame, CA, USA, 2012 OMG Meeting, Burlingame, CA, USA, 2012 OMG Meeting, Burlingame, CA, USA, 2012 Component Management in OPRoS Component Management in OPRoS Seungwoog Seungwoog Jung(swjung@etri re kr) Jung(swjung@etri re kr) Seungwoog Seungwoog Jung(swjung@etri re kr) Jung(swjung@etri re kr) Seungwoog Seungwoog Jung(swjung@etri . re . kr) Jung(swjung@etri . re . kr) Electronics and Communications Research Institute Electronics and Communications Research Institute KOREA KOREA Seungwoog Seungwoog Jung(swjung@etri . re . kr) Jung(swjung@etri . re . kr) Electronics and Communications Research Institute Electronics and Communications Research Institute KOREA KOREA KOREA KOREA KOREA KOREA robotics/2012-12-13

OMG Meeting, Burlingame, CA, USA, 2012 ComponentManagementin Component Management in OPRoS · 2012. 12. 12. · OPRoS: Open Platform for Robotic Services OPRoS Robot software platform

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: OMG Meeting, Burlingame, CA, USA, 2012 ComponentManagementin Component Management in OPRoS · 2012. 12. 12. · OPRoS: Open Platform for Robotic Services OPRoS Robot software platform

Component Management inComponent Management in

OMG Meeting, Burlingame, CA, USA, 2012OMG Meeting, Burlingame, CA, USA, 2012OMG Meeting, Burlingame, CA, USA, 2012OMG Meeting, Burlingame, CA, USA, 2012

Component Management in OPRoS

Component Management in OPRoS

SeungwoogSeungwoog Jung(swjung@etri rekr)Jung(swjung@etri rekr)SeungwoogSeungwoog Jung(swjung@etri rekr)Jung(swjung@etri rekr)SeungwoogSeungwoog Jung([email protected])Jung([email protected])Electronics and Communications Research InstituteElectronics and Communications Research Institute

KOREAKOREA

SeungwoogSeungwoog Jung([email protected])Jung([email protected])Electronics and Communications Research InstituteElectronics and Communications Research Institute

KOREAKOREAKOREAKOREAKOREAKOREA

robotics/2012-12-13

Page 2: OMG Meeting, Burlingame, CA, USA, 2012 ComponentManagementin Component Management in OPRoS · 2012. 12. 12. · OPRoS: Open Platform for Robotic Services OPRoS Robot software platform

Contents

Introduction of OPRoS

OPRoS Component Model

OPRoS Component Execution Engine

Conclusion

1

Page 3: OMG Meeting, Burlingame, CA, USA, 2012 ComponentManagementin Component Management in OPRoS · 2012. 12. 12. · OPRoS: Open Platform for Robotic Services OPRoS Robot software platform

OPRoS : Open Platform for Robotic Services

OPRoS

Robot software platform that provides component-based development and execution environments for robot software

providing the robot software component model, component execution engine, various middleware i d l t t l d i l ti i tservices, development tools, and simulation environment

A DCB Application SW

SW Component

H/WH/WwithwithDLL/SoDLL/So

AlgorithmsAlgorithms

SW Component

H/WH/WwithwithDLL/SoDLL/So

ideasideas

H/WsH/Ws

H/WH/WwithwithDLL/SoDLL/So

OPR S C t E ti E i OPRoS IDEDLL/SoDLL/SoOPRoS Component Execution Engine OPRoS IDE

SLAMNavigation

2HRI

SLAM

Page 4: OMG Meeting, Burlingame, CA, USA, 2012 ComponentManagementin Component Management in OPRoS · 2012. 12. 12. · OPRoS: Open Platform for Robotic Services OPRoS Robot software platform

Introduction of OPRoS Component Introduction of OPRoS Component

Role of Component Execution Engine

Node 1Node 1 Node 2Node 2High levelHigh levelcontrolcontrol

ComponentA

ComponentB

ComponentD

ComponentE

classical classical controlcontrollooploop

ComponentC

ComponentF

ComponentNew

Component Execution EngineComponent Execution Engine(Lifecycle, (Lifecycle, QoSQoS, Fault Recovery, , Fault Recovery,

Coordination, State ManagementCoordination, State Management …) …)

Component Execution EngineComponent Execution Engine(Lifecycle, (Lifecycle, QoSQoS, Fault Recovery, , Fault Recovery,

Coordination, State ManagementCoordination, State Management …) …)

Communication MiddlewareCommunication Middleware Communication MiddlewareCommunication Middleware

OS OS RTOSRTOSDriverDriver DriverDriver

3

Page 5: OMG Meeting, Burlingame, CA, USA, 2012 ComponentManagementin Component Management in OPRoS · 2012. 12. 12. · OPRoS: Open Platform for Robotic Services OPRoS Robot software platform

Component Development ProcessApplication PackageApplication Package

atomiccomponent

store

Editing

P filP fil

ComponentEditor

Component

Component Repository

DeployingSimulation &debugging

Robot

ProfileProfileComponentsComponents

packaging pExecutionEngineexploring

Operation

RobotSimulator

packaging

ComponentComposer

Operation

Simulation &debugging

Composing

4robot

application Target robots

Page 6: OMG Meeting, Burlingame, CA, USA, 2012 ComponentManagementin Component Management in OPRoS · 2012. 12. 12. · OPRoS: Open Platform for Robotic Services OPRoS Robot software platform

OPRoSOPRoS Component ModelComponent Model

Component Communication ModelComponent Communication Model

5

Page 7: OMG Meeting, Burlingame, CA, USA, 2012 ComponentManagementin Component Management in OPRoS · 2012. 12. 12. · OPRoS: Open Platform for Robotic Services OPRoS Robot software platform

OPRoSOPRoS Component ModelComponent Model

Component Class DiagramComponent Class Diagram

Component

• onInitialize/onReset

• onStart/onStop

1ComponentProfile (XML)

ComponentClassLibrary

*• onError/onRecover

• onExecute/onUpdated

• onEvent

• onPeriodChanged

• onDestroy

Provided PortsInput Ports

Required PortsOutput Ports

• user defined methods

6

Input Ports Output Ports

User defined Component

Page 8: OMG Meeting, Burlingame, CA, USA, 2012 ComponentManagementin Component Management in OPRoS · 2012. 12. 12. · OPRoS: Open Platform for Robotic Services OPRoS Robot software platform

OPRoSOPRoS Component ModelComponent Model

Service Port

Interface for method invocation of componentInterface for method invocation of component

Service Profile(XML)Service Profile(XML)

Service Port A1

Service Profile(XML)Service Profile(XML)

Service Port A2

Service Port C1

S i P t C3 S i P t D1

Service Port C2

Service Port C3 Service Port D1

- Required Ports : A1, A2, B1, C3Service Port B1

7

- Provided Ports : C1, C2, D1

Page 9: OMG Meeting, Burlingame, CA, USA, 2012 ComponentManagementin Component Management in OPRoS · 2012. 12. 12. · OPRoS: Open Platform for Robotic Services OPRoS Robot software platform

OPRoSOPRoS Component ModelComponent Model

Data PortData Port

Port for transferring data to components

Data Profile(XML)Data Profile(XML)

DataPort A1

Data Profile(XML)Data Profile(XML)

DataPort A2

DataPort C1

DataPort C2

Output Ports : A1, A2, B1DataPort B1

8

Input Ports : C1, C2DataPort B1

Page 10: OMG Meeting, Burlingame, CA, USA, 2012 ComponentManagementin Component Management in OPRoS · 2012. 12. 12. · OPRoS: Open Platform for Robotic Services OPRoS Robot software platform

OPRoSOPRoS Component ModelComponent Model

Data PortData Port

asynchronous processingdata processing after queuing

<execution_semantics><priority>5</priority>

Execution<priority>5</priority><type>periodic</type>< period>100</period>

</execution _semantics>

<Component Profile>

Component Execution Engine

9

Page 11: OMG Meeting, Burlingame, CA, USA, 2012 ComponentManagementin Component Management in OPRoS · 2012. 12. 12. · OPRoS: Open Platform for Robotic Services OPRoS Robot software platform

OPRoSOPRoS Component ModelComponent Model

Event PortEvent Port

Port for transferring event to componentsImmediate processing of data without queuing

Component Execution Engine

10

Page 12: OMG Meeting, Burlingame, CA, USA, 2012 ComponentManagementin Component Management in OPRoS · 2012. 12. 12. · OPRoS: Open Platform for Robotic Services OPRoS Robot software platform

Component Execution EngineComponent Execution Engine

Component Composer

deploy

register ComponentMonitor

ComponentDeployer

monitor

register

ComponentManager

Component1 Component

3

manage

Component Services

Real-time

Component2

execute

Fault Processing

ExecutorManager

Executor Executor

execute

ComponentExecution Engine

11

Page 13: OMG Meeting, Burlingame, CA, USA, 2012 ComponentManagementin Component Management in OPRoS · 2012. 12. 12. · OPRoS: Open Platform for Robotic Services OPRoS Robot software platform

Various OS support

Windows, LinuxWindows, Linux

Android, iOS, Mac

OPR SOPRoS

Windows Linux Android iOS MacWindows Linux Android iOS Mac

Kernel 2.6 RTAI/Xenomai Linux on ARM(HBE-SM II-P320 )

12

Page 14: OMG Meeting, Burlingame, CA, USA, 2012 ComponentManagementin Component Management in OPRoS · 2012. 12. 12. · OPRoS: Open Platform for Robotic Services OPRoS Robot software platform

OPRoS IDE ToolsOpen Source

Motion/

SimulatorComposerEditor

www.ropros.orgwww.ropros.org (LGPL)(LGPL)

Source, Doc, ComponentsSource, Doc, Components

OPRoS FrameworkDevIc

DevIc

Component

/Camera

Sound/Voice

Core Service

Execution

ce

API

ce

API

Demonstations

Component engine

Proximity(Sonar, Laser)

Wheel/

Realtime

Communication

Various OSVarious OS

II Component engineWheel/Actuator

13Linux Android iOSMSWindows

Page 15: OMG Meeting, Burlingame, CA, USA, 2012 ComponentManagementin Component Management in OPRoS · 2012. 12. 12. · OPRoS: Open Platform for Robotic Services OPRoS Robot software platform

Q & A

Thank you!Thank you!Thank you!Thank you!