Asked 26th Jun, 2013

Differences between ROS and OROCOS?

I'm looking to control a ground vehicle and would possibly like to use OROCOS or ROS as the base for control. What are the differences, if any, folks have experienced between the two? Applied decision theory, sensor fusion and control would be needed.

Most recent answer

12th Mar, 2020
Ans Javed
Sukkur Institute of Business Administration
Is python library named donkeycar.pypi and a robot operating system use for the
providing almost same functionalities?

All Answers (10)

27th Jun, 2013
Geert De Cubber
Royal Military Academy
Do you need something quick and easy (=>ROS) or do you need hard real-time control (=>OROCOS)?
27th Jun, 2013
Javier V. Gómez
Rapyuta Robotics
Although I'm not very much into OROCOS, I wouldn't agree with the previous response. First, ROS is not easy :) I think the purpose of ROS and OROCOS is different, while ROS is more generic OROCOS is focused on control.
1 Recommendation
27th Jun, 2013
Seddik Khemaissia
Université de Tébessa
The Open Robot Control Software (Orocos) project combines both the
component-based and object-oriented reusability strategies. The project has yielded
four C++ libraries, two geared toward each strategy. The Real-Time Toolkit (RTT)
and Orocos Component Library (OCL) establish a component-based infrastructure
and a library of ready-to-use components, providing the high level management of
interactions within an application. Components exchange information primarily
through abstracted Data-Flow Ports, an anonymous publish-subscribe system in
which a component does not know where its inputs are originating or where its
outputs are being utilized. These Data-Flow Ports may be either buffered, in which
case messages are stored in a single queue per link, or unbuffered, in which case only 6
the most recent message is available to be read by any subscribers. This
decomposition and isolation of the components enables easier specification of the
interactions taking place within the software and easier validation of individual
components, because this organization is conducive to generating test inputs and
examining the resulting outputs.
Robot Operating System (ROS)
ROS is an open source robot software platform designed with the primary
goal of enabling software reuse. It is intended to be a thin architecture, providing
sufficiently few constraints as to be integrable with software written for other
platforms, such as Orocos and Player [10]. Like Orocos, it employs both the
component-based and object-oriented reusability strategies. ROS provides the
infrastructure for writing software components, called nodes, and for exchanging 12
information between these nodes via an anonymous publish-subscribe model2
Message transport between nodes occurs via TCP/IP or UDP/IP, thus allowing the
nodes to be easily distributed over multiple computers. This networking style allows
for individual components (which are separate processes) to be shut down, modified,
recompiled, and re-initiated without interrupting the function of the rest of the
application. Similar to Orocos, the ROS developers recognized that this form of
continuous data streaming is not appropriate for all interactions, and thus
implemented a message-response form for command-style interactions.
2 Recommendations
27th Jun, 2013
Seddik Khemaissia
Université de Tébessa
1st Jul, 2013
Sanchez Pellicer Joan Pere
University Pompeu Fabra
Dear Seddik, it's possible to have the referenced document of your response or the link to it? Thanks!
2nd Jul, 2013
Seddik Khemaissia
Université de Tébessa
I try to find it as soon as possible
2nd Jul, 2013
Péter Galambos
Óbudai Egyetem
Let me call your attention to other options to component-based approaches that can be utilized in robotics projects. The RT-Middleware OMG standard and its open implementation the openRTM-aist ( ) offers an easy to use component framework.
Powered by the RTM, VirCA ( ) provides a 3D virtual world for RTM-based systems that can be used as advanced user interface, simulation, virtual sensoring and various other purposes.
Using gateway components ( ) , it is also possible to mix ROS and RTM components in one system.
If anyone has question or idea about VirCA do not hesitate to contact me.
1 Recommendation
13th Jul, 2013
Mike Sousa
Seddik, thanks for the detailed synopsis of each. Sounds like both are developed for reuse and utilize some sort of publish/subscribe communication mechanism, and are open source. It also sounds like each make use of common protocols like TCP & UDP, etc.
Are there decision theory algorithm implementations in each? I see that there's a BIC and BFL libs with ROS and a BFL available with Orocos. What decision methods like DST, DSMT, etc are implemented, if any?
31st Jan, 2018
Rammoorthy Dhasarathan
Defence Research and Development Organisation
Thanks seddik for the article on ROS

Similar questions and discussions

How to categorize negative pelvic incidence - lumbar lordosis (PILL) in spine surgery?
1 answer
  • Riza BayogluRiza Bayoglu
Recent studies in spine surgery [1-2] categorize spinopelvic mismatch groups based on patients' preoperative PILL values. What is not clear to me is how negative PILL patients are categorized (pelvic incidence is lower than lumbar lordosis). I have the impression that absolute PILL values are used to differentiate mismatch groups, but my data from an ongoing investigation does not seem to support this approach. In clinical practice, higher values of PILL are associated with increased disability and pain with higher PT and TPA (t1-pelvic angle). Comparing positive and negative PILL groups I found that negative PILL groups are associated with much lower PT and TPA values which are below the clinical thresholds describing mild deformity (PT=20, TPA=14 degrees). Thus, in my opinion, negative PILL should be classified as non-pathologic and treated differently than any of the positive PILL groups. Could anyone share thoughts on this one? Also, please let me know if you know of a study that looked at the correlation between negative PILL values and pain and disability scores and/or compare it against positive PILL groups. I am attaching some literature data and my own data.
1. Schwab et al. 2010: Adult Spinal Deformity—Postoperative Standing Imbalance
2. Diebo et al. 2015: Recruitment of Compensatory Mechanisms in Sagittal Spinal Malalignment Is Age and Regional Deformity Dependent

Related Publications

Highly functional manufacturing operations of machine vision robots in various applications are discussed. A technology based "vision-enabled" robot was developed by Kuka Automation + Robotics of West Midlands, UK and DVT Corp.'s UK facility in Milton Keynes. Machine vision is accessed directly from the robot's control panel, which is a handheld pr...
The exploration of three dimensional objects by moving robots (6 dof) can be controlled by different algorithms. There is a need to simulate the behavior of robots controlled by these algorithms, in order to evaluate their performance and feasibility. The report describes the implementation of a simulation system for 3d object exploration, as well...
A design and simulation system for automated workcells, which consist of robots, process machines, and transport systems, provides tools to create geometric and kinematic models of components. It enables to simulate and optimize the workcell layout and to program robots and other machines off-line. In order to allow graphic animation of the workcel...
Got a technical question?
Get high-quality answers from experts.