Presentation is loading. Please wait.

Presentation is loading. Please wait.

Technical aspects of OpenRTM-aist Geoffrey Biggs Intelligent Systems Research Institute National Institute of Advanced Industrial Science and Technology.

Similar presentations


Presentation on theme: "Technical aspects of OpenRTM-aist Geoffrey Biggs Intelligent Systems Research Institute National Institute of Advanced Industrial Science and Technology."— Presentation transcript:

1 Technical aspects of OpenRTM-aist Geoffrey Biggs Intelligent Systems Research Institute National Institute of Advanced Industrial Science and Technology Japan

2 Concept overview Robot Technology Component model Separation of concerns: –Functional specification (RTCs) –Execution (ECs) –Communication (ports) –Configuration Extensible through SDO interface

3 Concept overview Wide range of advanced features –Dynamic wiring –Real-time support –Component composition –Component managers –Language and communication middleware independence

4 RT-Components Functional block Ports provide communication points ECs provide execution time Architecture of RT component Service ports Data ports

5 RT-Components Known life-cycle state –Can be activated and deactivated InactiveActive Error Init Device Initialization Servo off Servo on Emergency Stop Arm component

6 RT-Components Components implemented as classes Callback functions for each FSM step

7 Execution contexts A container for RTCs to execute in Provide contained RTCs with execution time according to the EC type

8 Execution contexts Several types provided by OpenRTM –Easy to implement new ECs to meet your own needs Periodic (including real-time) Externally-triggered (including logical clock support)

9 Data ports One-way data flow between components Points-to-points or topic-based Transfer data using CORBA Serialisation provided by CDR Data types specified in IDL Component B Activity Component A buffer Data Port data processing

10 Service ports Remote procedure call ports Ports provide and consumer interfaces Interfaces specified in IDL Implemented in CORBA Component B Activity Component A Service Proxy Service Implementation Entity Actual processing isperformed here Service Port Service Consumer Operation invocation Service Provider

11 Configuration RTCs provide configuration parameters Parameters can be set at launch (from a file) or run-time (through tools) Multiple configuration sets can be used to change all parameters at once

12 Configuration KpKiKdIn max In min 0.60.010.45.0-5.0 name value modeA PID Controller KpKiKdIn max In min 0.80.00.0110.0-10.0 name value modeB KpKiKdIn max In min 0.30.10.311.0 name value modeC Ki s Kds + - Kp PID Controller Comp. limiter PID gains and limiter parameters can be switched according to controlled plants or modes. Parameters can be switched any time.

13 Advanced features OpenRTM provides a wide range of advanced features –Not just a nice way to organise callbacks

14 Real-time support Real-time execution context provides real- time guarantees to RTC execution –ARTLinux –Rt-preempt DDS support provides real-time communication guarantees

15 Notification system Extensive callback-based notifications system RTCs notified on relevant events –New data at a port, configuration change, lifecycle state change, … External entities can also be notified –Register callbacks using an SDO interface –Used by tools to monitor the system without polling

16 Dynamic wiring Connections can be changed at run-time –GUI tool –Console tool Good for Rapid Application Development

17 Composite components Compose components to form black-box systems –Inside a composite component is a complete RT-System GUI tool supports compositions

18 Component managers Components and execution contexts organised into managers –Multiple execution contexts in a single process Managers provide additional services –Logging –Component look-up

19 Model-based systems RTC component model RTS system model Build components and systems with graphical tools Deploy using console or graphical tools

20 RTC meta-data Meta-data –RTC’s specification Introspection –Name, type –Port (number, kind) –Interface information –Properties –Parameter –Execution context For dynamic reconfiguration of systems port0 port1 port2 port3 port4 port5 port6 port7 Periodic 実行 name value parameter ExecutionContext A B C D E NameMyManipulator0 TypePeriodic execution type port0Provide: A, Required: B port1Provide: C Port2DataPort: InPort, velocity, float x6 Port3DataPort: InPort, position, float x6 Port4Provide: D Port5Required: E Port6DataPort: OutPort, status int x1 Port7DataPort: OutPort, velocity, float x6 ExecutionContextPeriod: 10ms Parametergain0(float x6), flag(int x1), dev_file(string)

21 Language independence Native implementations in multiple languages (use logos) No wrappers, maximum efficiency C/C++

22 Middleware independence CORBA isn’t the only way to send data –CORBA for RTC interfaces and CORBA for data ports are completely separate Data Distribution Service (DDS) ICE ROSTCP Plain old TCP

23 Summary OpenRTM-aist provides –Functional components –Execution specification –Communications –Configuration A wide range of advanced features are available


Download ppt "Technical aspects of OpenRTM-aist Geoffrey Biggs Intelligent Systems Research Institute National Institute of Advanced Industrial Science and Technology."

Similar presentations


Ads by Google