Presentation is loading. Please wait.

Presentation is loading. Please wait.

Eric Colon Royal Military Academy CoRoBA, an Open Framework to integrate Multi-Sensor Robotic Systems.

Similar presentations


Presentation on theme: "Eric Colon Royal Military Academy CoRoBA, an Open Framework to integrate Multi-Sensor Robotic Systems."— Presentation transcript:

1 Eric Colon Royal Military Academy CoRoBA, an Open Framework to integrate Multi-Sensor Robotic Systems

2 High quality algorithms exist but due to the lack of standards it is hard to reuse existing code bricks for new applications. Existing programs have to be modified, translated, ported, or simply (!) completely rewritten from scratch when changing/updating the robotic platform.IntroductionDistributed ComputingRequirements Problem Coms Models

3 Command and control applications, including: –Tele-monitoring, –Tele-operation (including shared, traded and supervised control), –Collaboration (between users), … of single and multi-robots (of the same or different models). Not only targetting autonomous robots (MCA, DCA, MIRO, GeNoM,...). Not dealing with hard real-time control like the Orocos project (www.orocos.org). It addresses higher level components like planning and user interaction. Not Commercial (free software, Open Source, …)Target IntroductionRequirementsComs Models Distributed Computing

4 Applications capabilities: –Integration of different robotic systems, –Concurrent control of several robots, –Universal GUI, –Shared controlled between several users. IntroductionRequirements Review of typical Apps Coms Models Distributed Computing

5 Distributed computing models allow components to be spread across multiple computers to yield the benefits of: –Increased scalability, –Better performance and –Varying degrees of component reuse. Distributed applications rely on network communications. Different techniques can be use to deploy such an application:  Sockets,  Middleware (DCOM, Corba, RPC, Java-RMI),  Intelligent networks (Jini,...). IntroductionRequirements Distributed Computing Techniques Coms Models

6 Functions and methods –C: process (data1, data2) –C++ : data1-> process (data2) API for network programming –Sockets –C functions –Different implementation according to the OS Ideal: same principle regardless of local or remote call Solution: use an OO middleware IntroductionRequirements Distributed Computing Techniques Coms Models

7 Middleware ???? Introduction Distributed Computing Techniques Coms Models Software layer between the classical code and the network API Requirements Which Middleware ???? RPC/DCE CORBA RMI Jini XML/RPC Web Services

8 ORB = Object Request Broker After a systematic comparison of distributed computing technologies (DCOM, CORBA, Java-RMI, Jini,...), we have finally opted for the CORBA standard. Introduction Distributed Computing Coms Models Requirements Techniques CORBA CORBA allows applications to communicate with one another no matter where they are located or who has designed them.

9 Pros: – Language independent: Interface Definition Language => compiled to native language – Easy (re)location – Framework Services: Naming, Trading,... Implementation repository Security Logging, monitoring,... Introduction Distributed Computing Coms Models Requirements Techniques CORBA Cons: – Implemented versions differ according to vendors (2.3, 2.6, 3?) – Heavy weight – Steep learning curve for real world applications

10 –CORBA protocol General Interoperable ORB Protocol TCP/IP: Internet Interoperable ORB Protocol Introduction Distributed Computing Coms Models Requirements Techniques CORBA –Wire sniff: Method call: send (int data) Total: 166 bytes –66 (TCP/IP Ethernet) –GIOP: 100 / 4 bytes

11 The open source communication framework ACE_TAO (http://www.cs.wustl.edu/~schmidt/TAO.html) has been selected to develop our robotic control framework. TAO is a freely available, open-source, and standards-compliant real-time implementation of CORBA that provides efficient, predictable, and scalable quality of service (QoS) end-to-end. TAO is built on top of ACE (Adaptive Communication Library). Other robotic projects are also based on ACE_TAO: Miro (http://smart.informatik.uni-ulm.de/MIRO/) and Smartsoft for Orocos (www1.faw.uni-ulm.de/orocos/). IntroductionRequirements Distributed Computing Techniques ACE_TAO Coms Models

12 Corba communication models: –Core specification: Synchronous 2-way 1-way deferred synchronous –Messaging specification: Asynchronous Method Invocation –Events and Notifications Services specifications IntroductionRequirements Coms Models Distributed Computing

13 In this model, a client sends a two-way request to a target object and waits for the object to return the response. The fundamental requirement is that the server must be available to process the client’s request. While it is waiting, the client thread that invoked the request is blocked and cannot perform any other processing. Thus, a single-threaded client can be completely blocked while waiting for a response, which may be unsatisfactory for certain types of performance-constrained applications. The advantage of this model is that most programmers feel comfortable with it because it conforms to the well-know method-call on local objects. IntroductionRequirements Coms Models Sync 2-Way Distributed Computing

14 Registration Filters Quality Of Service Decoupling More effort to program and to maintain and also more resources from the system. IntroductionRequirements Coms Models Events Distributed Computing Sync 2-way too restrictive. Polling No possibility to broadcast

15 IntroductionRequirements Distributed Computing Free-software (TAO, JacORB,..), multi-language development (C++, Java, …), multi-platform (Windows, Linux, …) Using software patterns Flexibility: implement different control schemes by reusing components easily interface to existing systems Coms Models CoRoBa: Controlling Robots with Corba Requirements

16 IntroductionRequirementsDistributed Computing Coms Models CoRoBa: Controlling Robots with Corba The Services: Follow the control paradigm: Sensor-Processor-Actuator Are multi-threaded Communicate through filterable events (CORBA Notification Service) Separate management from application flow Register with a NameService and can be discovered at run-time Are remotely managed according to a FSM Can run periodically or be synchronized on an external triggerDesign

17 IntroductionRequirementsDistributed Computing Coms Models CoRoBa: Controlling Robots with Corba Simulation & Visualization Java3D, JacORB (CORBA) CORBA 2-way synchronous or event mode Multi-robot Indoor and outdoor (todo) environment Collision detection and terrain following (todo) Virtual sensors Visualization mode

18 IntroductionRequirementsDistributed Computing Coms Models CoRoBa: controlling Robots with Corba Utilization

19 IntroductionRequirements Conclusions and future work CoRoBa offers a flexible and robust architecture Needed: Physical actuators Physical sensors (Laser, Stereo-vision, GPS, …) Development of behaviour based control on indoor (Nomad) and outdoor systems (Robudem, …) Other robot models (Robudem, Tridem) Configuration and monitoring tools Coms Models Distributed Computing CoRoBa: controlling Robots with Corba


Download ppt "Eric Colon Royal Military Academy CoRoBA, an Open Framework to integrate Multi-Sensor Robotic Systems."

Similar presentations


Ads by Google