Re: [ros-users] Hard Realtime requirements and ROS/OROCOS

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: Ruben Smits
Date:  
To: ros-users
Subject: Re: [ros-users] Hard Realtime requirements and ROS/OROCOS
On Friday 14 May 2010 20:06:08 Stefan Kohlbrecher wrote:
> Hi everyone,
>
> right now, I'm evaluating the ROS-OROCOS integration because my group
> has hard realtime requirements for some control parts of our system.
> The integration works fine so far, but there are still some things
> that could be easier to do (Automatic timestamp
> conversion/synchronization and generation of OROCOS types from ROS
> msgs for example).


This is part of our PR2 Beta Program project.

> From what I gather, on PR2 a RT-PREEMPT Kernel with
> a corresponding SCHED_FIFO Thread is used for realtime control. While
> this seems to work pretty well, one is bound to using RT-preemption
> instead of the dual kernel approach OROCOS permits one to use.
>
> So, without going into much detail, it seems like using ROS only is
> possible, but it might lead to higher latencies in special cases and
> isn't as flexible in the choice of the underlying RTOS. OROCOS on the
> other hand is more flexible in choice of RTOS, but has some more
> overhead (especially in terms of implementation) when integrating it
> with ROS nodes.


The goal of the Orocos RTT ROS integration is to remove this overhead. Since
their is a good semantic mapping between the interface primitives of both
frameworks (RTT Ports <-> ROS Topics, RTT(2.0)Operations <-> ROS Services, RTT
Properties <-> ROS Parameters) I believe the interface of a realtime Orocos
process can be made available in the ROS ecosystem without compromising the
realtimeness of the Orocos process and vice versa make the interface of a ROS
node available in an Orocos process.

> Of course, the best of both worlds would be the best thing to have, so
> are there plans for a even tighter integration of both (like the
> aforementioned automatic generation of types)? Does anyone have
> further insights/experience/tips regarding hard realtime using ROS
> with or without OROCOS? Is there some roadmap or cooperation between
> developers regarding this topic?


I'll be working on this tight integration the coming year together with ROS
and Orocos developers. Any suggestions and comments are welcome.

Ruben

> Thanks in advance for every answer,
> regards,
> Stefan
> _______________________________________________
> ros-users mailing list
>
> https://code.ros.org/mailman/listinfo/ros-users