[Rock-dev] Fwd: RE: Avalon's Middleware
Thomas Roehr
thomas.roehr at dfki.de
Wed Aug 22 17:58:49 CEST 2012
On 17.08.2012 14:03, Jan Sliwka wrote:
>
> Hello all,
>
> Thank you for your response. I didn't know that the project was so
> young. So it is normal that the documentation is very technical. I
> would like to give my opinion for the project since I find it
> interesting. An input from third party might also be valuable. I am
> sorry if I say some wrong things due to the misunderstandings of the
> Rock framework.
>
Hey Jan, any kind of feedback is more than welcome, so thanks!
>
> I would like first to talk about the context. You know, you're facing
> the famous ROS and my question would be: what are the points in which
> you are equal and those where you surpass ROS.
>
> I would say that first; your strong point might be the AUV world.
> Currently, there are very few components related to the AUV in ROS. I
> think the second strong point is the use of Orocos which enable better
> control of the application (more suitable for fine control when
> resources are lacking). However, the cost of better control is higher
> complexity.
>
Regarding ROS IMO we are (still) on a complementary level, however
without being to elaborate some of the differentiators:
- Rock's main driver is architecturing systems and targeting a
potentially large collection of components which requires advanced
management tools
- Rock provides tools for complex system management see
http://rock-robotics.org/stable/documentation/system/index.html
- Rock is is therefore more strict and relies on a component-model to
allow to build up the tooling (also to foster reuse -> strict separation
of framework and drivers)
- Rock is using the Orocos component model and thus allows for
real-time execution capability
- Connections are modelled, so system designers can control where data
goes (not the component)
> As for complexity, you have maybe been victims of your own engineering
> strength. You can handle high complexity and so you make complex
> systems. Now to compare Ros and Rock.
>
> If I understood correctly. To create a component using Rock you need:
>
> ·Use rock-create-orogen
>
> ·Change manifest.xml
>
> oAdd the dependency
>
> ·Change message_producer.orogen
>
> oConfigure the component
>
> ·add you(r) component to the build system by adding the package to
> autproj/manifest's layout section
>
> ·amake
>
> ·Change Task.hpp, Task.cpp
>
> oThe constructors (2), destructor
>
> oupdateHook
>
> ·amake
>
> ·Change orocos.rb
>
> ·ruby start.rb
>
> Creating a configurable component is not trivial (I mean not hard but
> once there are more than 5 place to modify it becomes ... not trivial).
>
> As for connecting the components, I would say that it is clear and
> easy. I think what should be specified in your approach is that you
> spend time building components but then, their usage becomes very easy
> and professional. You should maybe focus on that point so that people
> can sacrifice some of their time to build components.
>
> Ok. Now for ROS you need
>
> ·$ roscreate-pkg [package_name] [depend1] [depend2] [depend3]
>
> ·Check manifest.xml or edit if needed
>
> ·rosdep install [package]
>
> ·rosmake [package]
>
> ·run ROS: roscore
>
> ·Change Task.hpp and Task.cpp (The interconnections can be defined here)
>
> oAll the publishers can be created in the main function
>
> oAll the subscribers are associate a topic with a custom build
> function which is called once a message appears on the topic
>
> ·Use
>
> orosrun [package_name] [node_name] for running just one Node at a time
>
> oroslaunch [package] [filename.launch] for running all the system
>
Comparing ROCK and ROS setup I assume you actually want to stress the
'required modification' part, i.e. improving steps to integrate into the
build system and such?!
> ROS runs a parameter server which you can initialize using a ".yaml"
> file. The parameters are accessible through the functions
> "setParam/getParam. The difference with Rock is that the server is
> centralized but you handle one config per component which is maybe
> better.
>
> The components are naturally connected through topic names. The
> connection graph can be even remapped using ROS remapping capability.
> However, this is not necessarily good since the connection graph is
> not necessarily defined in a single file. In the case of Rock all the
> interconnections are visible in the same file.
>
> I personally find ROS more ergonomic but Rock having more potential.
>
> To be honest I still didn't use Rock but it is the impression I have
> from reading the documentation.
>
> I have some questions with regards to the modules you offer:
>
> ·What is the list of communication devices you handle:
> Serial/I2C/CAN/Bluetooth?
>
Best check online:
http://rock-robotics.org/stable/pkg/index.html
and type in 'drivers'
> ·Do you have a simulator?
>
We have use a custom simulator in our institute, however you can easily
attach your own, when using Rock.
>
> ·Do you have some sort of mission planner? A set of behaviors which
> might be reused?
>
Not a planner but a plan manager: 'Roby' - which is used as 'supervision':
http://rock-robotics.org/stable/api/tools/roby/index.html
Currently, there is no collection of behaviours publicly available.
>
> ·Where is it possible to get the code and their documentation
>
Rock packages are hosted on gitorious.org
>
> Other questions:
>
> As for the standard, I meant standards such as OMG (Object Management
> Group) and so...
>
e.g. CORBA is used, or FIPA standards, and otherwise we start out with
convention(s) as already mentioned
Hope that helps, best
Thomas
>
> Sorry for that long mail, I hope I could contribute to the project,
>
> Best regards,
>
> Jan SLIWKA
>
> Dr. Ing. at CMRE (formerly NURC)
>
> *From:*Thomas Roehr [mailto:thomas.roehr at dfki.de]
> *Sent:* Thursday, August 16, 2012 8:14 PM
> *To:* sliwka at cmre.nato.int
> *Cc:* rock-dev at dfki.de
> *Subject:* Re: [Rock-dev] Fwd: RE: Avalon's Middleware
>
> On 14.08.2012 12:48, Matthias Goldhoorn wrote:
>
> Hello together,
>
> I think i move this to the ML, because i still couldn't answer all
> questions.
> Maybe one of the more-active developers could take over (or extend)
> the "core" questions below?
>
> Greetings,
> Matthias
>
>
> -------- Original Message --------
>
> *Subject: *
>
>
>
> RE: Avalon's Middleware
>
> *Date: *
>
>
>
> Tue, 14 Aug 2012 12:15:34 +0200
>
> *From: *
>
>
>
> Jan Sliwka <sliwka at cmre.nato.int> <mailto:sliwka at cmre.nato.int>
>
> *To: *
>
>
>
> 'Matthias Goldhoorn' <matthias.goldhoorn at dfki.de>
> <mailto:matthias.goldhoorn at dfki.de>
>
> I am searching for an (new) comm-framework for our particular project which
> could become THE framework for all the nurc vehicles in general.
> In order to do so, as you said, I am collecting information for a
> state-of-the-art report. If you have access to report like this, I'd
> appreciate to have it.
> I took a look into rock and orocos. I think the documentation and tutorials
> you provide on your webpage is well structured and complete but in my
> opinion they are hard to follow for someone who wants to know about rock
> without necessarily having it installed on the computer and as a consequence
> not able to test the lines of code you provide. Maybe you could add a small
> paragraph to your webpage about how rock works in a simplified (short!!!)
>
> Ack - now on our todo list
>
>
> version with lots of diagrams (like it is the case for the orocos doc but
> maybe even simpler...), what a user needs to know (ruby, c++), provide
> templates for users to fill with code... you should maybe not assume that
> people know or should know orocos (since orocos is another sea of code if
> you know what I mean). Or maybe it is impossible to separate orocos and
> rock?...I mean making a full abstraction out of it.
>
> Orocos-related software represents a large part of the Rock-Toolchain.
> However, (as one example)
> due to the strict separation between driver development and framework
> you can always use our drivers independently of the given
> framework.
>
>
> What I like in your framework is the real-time aspect of orocos and the
> tools you provide (little bit like ROS but more AUV oriented).
> I have some questions.
>
>
>
>
> Question: do you provide a pdf version of the documentation for rock like
> for orocos?
>
> no (t yet)
>
>
> Question: are the tools you provide tested and reliable? Is rock used by a
> university or other institute other than DFKI?
>
> Using our release strategy from master->next->stable we try to
> maintain stability and reliability, and most packages come along with
> unit tests.
> We have seen Rock's toolchain and generated components working
> reliably in our projects, which is one of the reasons for our first
> release.
>
> Clearly, the main application base for now has been us at DFKI (in
> different projects), and some partners.
> Since the first release has been only a couple of months ago and some
> people/institute there might be still some unknown early adopters.
>
>
> Question: is it possible to use rock without knowing how to use orocos while
> keeping the real-time aspect of the execution.
>
> Components in Rock are Orocos components - thus working with these
> components (with real-time or not) does require a general
> understanding of Orocos components and their working. The provided
> tooling by Rock facilitates your task to build and manage single
> components and (complex) networks of components and thus you don't
> have to dive too deep.
>
>
>
> Question: can you use the statecharts (based on orocos statecharts) using
> rock only?
>
> short version: statechart integration does not exist
>
> long version:
> generating components via Rock (i.e. using oroGen) allows you easily
> specify custom states of your component: 'Extending the state machine'
> http://rock-robotics.org/stable/documentation/orogen/task_states.html
>
> Once you start building complex component networks an integration into
> the supervision component (Roby ->
> http://rock-robotics.org/stable/documentation/system/index.html)
> exits. This integration relies on a mapping of the task state
> transitions to events.
>
>
>
> Question: does rock/orocos comply to a specific standard
>
> What kind of standard do you refer to?
> Generally, we try to push 'standardization' and rely on (common)
> conventions, yet
> if you refer to DIN, ISO or similar official type of standard: not for
> the Rock part.
>
> http://rock.opendfki.de/wiki/WikiStart/Standards
>
>
>
> Question: what is the license of rock/orocos (It is GPLv2 I think but
> correct me if I am mistaken)
>
> LGPL for most of the libraries, individual packages might differ though
>
> Best
> Thomas
>
>
> That's all for now, I am sorry to ask those questions but orocos is a good
> but complex tool and I find simplifying it (using rock) a good idea.
> Looking forward to your answer,
> And greetings from sunny Italy ;) (viva the air conditioning)
> Jan
>
> -----Original Message-----
> From: Matthias Goldhoorn [mailto:matthias.goldhoorn at dfki.de]
> Sent: Tuesday, August 14, 2012 9:14 AM
> To: Jan Sliwka
> Subject: Re: Avalon's Middleware
>
> how's going,
>
> did you already take a look into "rock"?, got problems or is something
> unclear?
>
> Are you searching for an (new) comm-framework for the nurc vehicles in
> general, or do you only collecting information for an state-of-the-art
> report?
>
> Greetings from sunny Bremen.
> Matthias
>
>
>
> On 09.08.2012 10:00, Jan Sliwka wrote:
> > Thanks a lot!!!
> >
> > -----Original Message-----
> > From: Matthias Goldhoorn [mailto:matthias.goldhoorn at dfki.de]
> > Sent: Thursday, August 09, 2012 8:26 AM
> > To: Jan Sliwka
> > Cc:sliwka at cmre.nato.int <mailto:sliwka at cmre.nato.int>;malgorzata.goldhoorn at dfki.de <mailto:malgorzata.goldhoorn at dfki.de>
> > Subject: Re: Avalon's Middleware
> >
> > Am 08.08.2012 16:49, schrieb Jan Sliwka:
> >> Hi Matthias,
> >> I now work on middlewares for underwater robots at the NURC. I
> >> remember you were developing one in DFKI but I forgot the name.
> >> Could you give me some references and links where I can find more
> >> information about it?
> >> Say hello from me to Malgosia,
> >> thanks,
> >> Jan
> > Hi Jan, nice to hear from you.
> > Greetings of course back from Malgosia.
> >
> > So regarding the "Middleware" or communication framework.
> >
> > The Framework is called Rock-Robotics (www.rock-robotics.org <http://www.rock-robotics.org>) it's an
> > layer ontop of Orocos-RTT Tollchain.
> > You can have RealTimeSupport but you not enforced to add an RTT Kernel.
> > Rock proides a lot of typical driver like for the BlueView Sonar,
> > Several Tritech devices and other stuff.
> >
> > http://rock-robotics.org/stable/pkg/index.html (search for driver for
> e.G.).
> > The Repositorys of the drivers (more or less all) are located on spacegit:
> >
> > http://gitorious.org/rock-drivers
> >
> > These drivers are (on this layer) Framework-Independently written so
> > that they can be used also on other frameworks or even simple
> > programs, the build simply as an library that can be used everywhere.
> >
> > If yourneed any other information about rock or the capabilities, we
> > are providing an mailinglist that's queite friendly and active. Since
> > i'm also an rock-developer i got these mails too. But if you like you
> > could contact me private too ;).
> >
> > Conrats's for you NURC Contract i aos thougt about sending an CV to
> > the nurc in the future.
> >
> > Freetings from Cold northern Germany,
> > Matthias
> >
> >
> >
> >
> > **********************************************************************
> > ************************
> > *** PRIVILEGED AND CONFIDENTIAL ***
> >
> > Centre for Maritime Research and Experimentation (CMRE, formerly NURC)
> >
> > The information contained in this e-mail message (including any
> > attached files) is intended for the use of the addressee(s) only and is
> privileged information.
> > The information should neither be posted to the Internet, nor
> > published in any other public domain, without the express permission
> > of the sender. If you are not the intended recipient(s) or the
> > recipient's representative, you are hereby notified that any use,
> > disclosure, copying or distribution of this communication is
> > prohibited. If you have received this communication in error please
> > notify us immediately atpostmaster at cmre.nato.int <mailto:postmaster at cmre.nato.int> and remove this message
> from your system.
> > **********************************************************************
> > ************************
>
>
> --
> Dipl.-Inf. Matthias Goldhoorn
> Unterwasserrobotik
>
> Hauptanschrift Standort Bremen:
> DFKI GmbH
> Robotics Innovation Center
> Robert-Hooke-Straße 5
> 28359 Bremen, Germany
>
> Phone: +49 (0)421 178 45-4193
> Fax: +49 (0)421 178 45-4150
> E-Mail:robotik at dfki.de <mailto:robotik at dfki.de>
>
> Weitere Informationen:http://www.dfki.de/robotik
> -----------------------------------------------------------------------
> Deutsches Forschungszentrum fuer Kuenstliche Intelligenz GmbH
> Firmensitz: Trippstadter Straße 122, D-67663 Kaiserslautern
> Geschaeftsfuehrung: Prof. Dr. Dr. h.c. mult. Wolfgang Wahlster
> (Vorsitzender) Dr. Walter Olthoff
> Vorsitzender des Aufsichtsrats: Prof. Dr. h.c. Hans A. Aukes
> Amtsgericht Kaiserslautern, HRB 2313
> Sitz der Gesellschaft: Kaiserslautern (HRB 2313)
> USt-Id.Nr.: DE 148646973
> Steuernummer: 19/673/0060/3
>
>
>
>
> **********************************************************************************************
> *** PRIVILEGED AND CONFIDENTIAL ***
>
> Centre for Maritime Research and Experimentation (CMRE, formerly NURC)
>
> The information contained in this e-mail message (including any attached files)
> is intended for the use of the addressee(s) only and is privileged information.
> The information should neither be posted to the Internet, nor published in any
> other public domain, without the express permission of the sender. If you are
> not the intended recipient(s) or the recipient's representative, you are hereby
> notified that any use, disclosure, copying or distribution of this communication
> is prohibited. If you have received this communication in error please notify us
> immediately atpostmaster at cmre.nato.int <mailto:postmaster at cmre.nato.int> and remove this message from
> your system.
> **********************************************************************************************
>
>
>
>
> _______________________________________________
> Rock-dev mailing list
> Rock-dev at dfki.de <mailto:Rock-dev at dfki.de>
> http://www.dfki.de/mailman/cgi-bin/listinfo/rock-dev
>
>
>
>
> --
> Thomas Röhr (M.Sc.)
> Space Robotics
>
> Standort Bremen:
> DFKI GmbH
> Robotics Innovation Center
> Robert-Hooke-Straße 5
> 28359 Bremen, Germany
>
> Phone: +49 (0)421 178-454151
> Fax: +49 (0)421 178-454150
> E-Mail:robotik at dfki.de <mailto:robotik at dfki.de>
>
> Weitere Informationen:http://www.dfki.de/robotik
> -----------------------------------------------------------------------
> Deutsches Forschungszentrum fuer Kuenstliche Intelligenz GmbH
> Firmensitz: Trippstadter Straße 122, D-67663 Kaiserslautern
> Geschaeftsfuehrung: Prof. Dr. Dr. h.c. mult. Wolfgang Wahlster
> (Vorsitzender) Dr. Walter Olthoff
> Vorsitzender des Aufsichtsrats: Prof. Dr. h.c. Hans A. Aukes
> Amtsgericht Kaiserslautern, HRB 2313
> Sitz der Gesellschaft: Kaiserslautern (HRB 2313)
> USt-Id.Nr.: DE 148646973
> Steuernummer: 19/673/0060/3
> -----------------------------------------------------------------------
>
>
> ------------------------------------------------------------------------
> /*** PRIVILEGED AND CONFIDENTIAL ***
>
> Centre for Maritime Research and Experimentation (CMRE, formerly NURC)
>
> The information contained in this e-mail message (including any
> attached files)
> is intended for the use of the addressee(s) only and is privileged
> information.
> The information should neither be posted to the Internet, nor
> published in any
> other public domain, without the express permission of the sender. If
> you are
> not the intended recipient(s) or the recipient's representative, you
> are hereby
> notified that any use, disclosure, copying or distribution of this
> communication
> is prohibited. If you have received this communication in error please
> notify us
> immediately at postmaster at cmre.nato.int and remove this message from
> your system. /
> ------------------------------------------------------------------------
--
Thomas Röhr (M.Sc.)
Space Robotics
Standort Bremen:
DFKI GmbH
Robotics Innovation Center
Robert-Hooke-Straße 5
28359 Bremen, Germany
Phone: +49 (0)421 178-454151
Fax: +49 (0)421 178-454150
E-Mail:robotik at dfki.de
Weitere Informationen:http://www.dfki.de/robotik
-----------------------------------------------------------------------
Deutsches Forschungszentrum fuer Kuenstliche Intelligenz GmbH
Firmensitz: Trippstadter Straße 122, D-67663 Kaiserslautern
Geschaeftsfuehrung: Prof. Dr. Dr. h.c. mult. Wolfgang Wahlster
(Vorsitzender) Dr. Walter Olthoff
Vorsitzender des Aufsichtsrats: Prof. Dr. h.c. Hans A. Aukes
Amtsgericht Kaiserslautern, HRB 2313
Sitz der Gesellschaft: Kaiserslautern (HRB 2313)
USt-Id.Nr.: DE 148646973
Steuernummer: 19/673/0060/3
-----------------------------------------------------------------------
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.dfki.de/pipermail/rock-dev/attachments/20120822/d425d678/attachment-0001.htm
More information about the Rock-dev
mailing list