<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<div class="moz-cite-prefix">Hello Jan. Thanks for the feedback and
the interest in the project !<br>
<br>
On 08/17/2012 02:03 PM, Jan Sliwka wrote:<br>
</div>
<blockquote
cite="mid:20120817120309.9914FA0A91_2E32FDB@sea-mail.dfki.de"
type="cite">
<meta http-equiv="Content-Type" content="text/html;
charset=ISO-8859-1">
<meta name="Generator" content="Microsoft Word 12 (filtered
medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
@font-face
        {font-family:Consolas;
        panose-1:0 0 0 0 0 0 0 0 0 0;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";
        color:black;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
pre
        {mso-style-priority:99;
        mso-style-link:"HTML Preformatted Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:10.0pt;
        font-family:"Courier New";
        color:black;}
p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
        {mso-style-priority:99;
        mso-style-link:"Balloon Text Char";
        margin:0in;
        margin-bottom:.0001pt;
        font-size:8.0pt;
        font-family:"Tahoma","sans-serif";
        color:black;}
p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
        {mso-style-priority:34;
        margin-top:0in;
        margin-right:0in;
        margin-bottom:10.0pt;
        margin-left:.5in;
        line-height:115%;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";}
p.MsoListParagraphCxSpFirst, li.MsoListParagraphCxSpFirst, div.MsoListParagraphCxSpFirst
        {mso-style-priority:34;
        mso-style-type:export-only;
        margin-top:0in;
        margin-right:0in;
        margin-bottom:0in;
        margin-left:.5in;
        margin-bottom:.0001pt;
        line-height:115%;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";}
p.MsoListParagraphCxSpMiddle, li.MsoListParagraphCxSpMiddle, div.MsoListParagraphCxSpMiddle
        {mso-style-priority:34;
        mso-style-type:export-only;
        margin-top:0in;
        margin-right:0in;
        margin-bottom:0in;
        margin-left:.5in;
        margin-bottom:.0001pt;
        line-height:115%;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";}
p.MsoListParagraphCxSpLast, li.MsoListParagraphCxSpLast, div.MsoListParagraphCxSpLast
        {mso-style-priority:34;
        mso-style-type:export-only;
        margin-top:0in;
        margin-right:0in;
        margin-bottom:10.0pt;
        margin-left:.5in;
        line-height:115%;
        font-size:11.0pt;
        font-family:"Calibri","sans-serif";}
span.HTMLPreformattedChar
        {mso-style-name:"HTML Preformatted Char";
        mso-style-priority:99;
        mso-style-link:"HTML Preformatted";
        font-family:"Consolas","serif";
        color:black;}
span.BalloonTextChar
        {mso-style-name:"Balloon Text Char";
        mso-style-priority:99;
        mso-style-link:"Balloon Text";
        font-family:"Tahoma","sans-serif";
        color:black;}
span.EmailStyle21
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
/* List Definitions */
@list l0
        {mso-list-id:858736667;
        mso-list-type:hybrid;
        mso-list-template-ids:-144258154 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l0:level1
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Symbol;}
@list l0:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l0:level3
        {mso-level-tab-stop:1.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level4
        {mso-level-tab-stop:2.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level5
        {mso-level-tab-stop:2.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level6
        {mso-level-tab-stop:3.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level7
        {mso-level-tab-stop:3.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level8
        {mso-level-tab-stop:4.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l0:level9
        {mso-level-tab-stop:4.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l1
        {mso-list-id:1086420659;
        mso-list-type:hybrid;
        mso-list-template-ids:658127128 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l1:level1
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Symbol;}
@list l1:level2
        {mso-level-number-format:bullet;
        mso-level-text:o;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:"Courier New";}
@list l1:level3
        {mso-level-tab-stop:1.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l1:level4
        {mso-level-tab-stop:2.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l1:level5
        {mso-level-tab-stop:2.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l1:level6
        {mso-level-tab-stop:3.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l1:level7
        {mso-level-tab-stop:3.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l1:level8
        {mso-level-tab-stop:4.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l1:level9
        {mso-level-tab-stop:4.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l2
        {mso-list-id:1934850490;
        mso-list-type:hybrid;
        mso-list-template-ids:1708837144 67698689 67698691 67698693 67698689 67698691 67698693 67698689 67698691 67698693;}
@list l2:level1
        {mso-level-number-format:bullet;
        mso-level-text:\F0B7;
        mso-level-tab-stop:none;
        mso-level-number-position:left;
        text-indent:-.25in;
        font-family:Symbol;}
@list l2:level2
        {mso-level-tab-stop:1.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l2:level3
        {mso-level-tab-stop:1.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l2:level4
        {mso-level-tab-stop:2.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l2:level5
        {mso-level-tab-stop:2.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l2:level6
        {mso-level-tab-stop:3.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l2:level7
        {mso-level-tab-stop:3.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l2:level8
        {mso-level-tab-stop:4.0in;
        mso-level-number-position:left;
        text-indent:-.25in;}
@list l2:level9
        {mso-level-tab-stop:4.5in;
        mso-level-number-position:left;
        text-indent:-.25in;}
ol
        {margin-bottom:0in;}
ul
        {margin-bottom:0in;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
<div class="WordSection1">
<p class="MsoNormal">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. <o:p></o:p></p>
</div>
</blockquote>
<a class="moz-txt-link-freetext" href="http://www.rock-robotics.org/stable/documentation/about/index.html">http://www.rock-robotics.org/stable/documentation/about/index.html</a><br>
<a class="moz-txt-link-freetext" href="http://www.rock-robotics.org/stable/documentation/about/others.html">http://www.rock-robotics.org/stable/documentation/about/others.html</a><br>
<br>
<blockquote
cite="mid:20120817120309.9914FA0A91_2E32FDB@sea-mail.dfki.de"
type="cite">
<div class="WordSection1">
<p class="MsoNormal">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. <o:p></o:p></p>
</div>
</blockquote>
On that front, it might be of interest for you that we are currently
helping MARUM to run a new AUV (and in the future, all their
systems) using Rock. The drivers and control software will be
released as open source.<br>
<br>
[snip new module creation examples]<br>
In practice, component creation is a process that will take 2% of
the overall development time. It is, as you point out, very
important to attract new users (and we are interested in comments on
how to improve it), but has very little effect on the overall
development times.<br>
<blockquote
cite="mid:20120817120309.9914FA0A91_2E32FDB@sea-mail.dfki.de"
type="cite">
<div class="WordSection1">
<p class="MsoNormal">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. </p>
</div>
</blockquote>
You also have access to parameters directly on the components
through the property interface (for e.g. change parameters at
runtime).<br>
<blockquote
cite="mid:20120817120309.9914FA0A91_2E32FDB@sea-mail.dfki.de"
type="cite">
<div class="WordSection1">
<p class="MsoNormal"><o:p></o:p></p>
<p class="MsoNormal">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. </p>
</div>
</blockquote>
I would also add: the developer of a node can anytime add a new
topic. If not careful (or -- in case of reusing nodes, if he/she
does not know about your system), the new topic name might clash
with an existing one and boom. Additionally, having explicit
connections allows to disconnect dataflow and reconnect it. The
first one is important for safety reasons, as one can isolate a
rogue component from the rest of the system. The second one is the
cornerstone of behaviour switching in Rock (we switch behaviours by
starting/stopping new components and rewiring the connections).<br>
<blockquote
cite="mid:20120817120309.9914FA0A91_2E32FDB@sea-mail.dfki.de"
type="cite">
<div class="WordSection1">
<p class="MsoNormal"><o:p></o:p></p>
<p class="MsoNormal">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.<o:p></o:p></p>
<p class="MsoNormal">I have some questions with regards to the
modules you offer:<o:p></o:p></p>
<p class="MsoListParagraphCxSpFirst"
style="text-indent:-.25in;mso-list:l2 level1 lfo3"><!--[if !supportLists]--><span
style="font-family:Symbol"><span style="mso-list:Ignore">·<span
style="font:7.0pt "Times New Roman"">
</span></span></span><!--[endif]-->What is the list of
communication devices you handle: Serial/I2C/CAN/Bluetooth?<o:p></o:p></p>
</div>
</blockquote>
Depends on what you mean by "handle".<br>
<br>
The base class for all our device drivers can handle serial and
bluetooth (since bluetooth is seen as a network device on linux).
There is a dedicated CAN component for CAN devices. On top of that,
for underwater systems, we have drivers for the schilling DTS.<br>
<br>
<blockquote
cite="mid:20120817120309.9914FA0A91_2E32FDB@sea-mail.dfki.de"
type="cite">
<div class="WordSection1">
<p class="MsoListParagraphCxSpMiddle"
style="text-indent:-.25in;mso-list:l2 level1 lfo3"><!--[if !supportLists]--><span
style="font-family:Symbol"><span style="mso-list:Ignore">·<span
style="font:7.0pt "Times New Roman"">
</span></span></span><!--[endif]-->Do you have a
simulator?<o:p></o:p></p>
</div>
</blockquote>
As Thomas mentioned, we have our own simulator that just got
released as open source. However, while it kind-a works for
underwater applications, it is not ideal. We did look pretty hard
for a good open source underwater simulator, but never found one.
Would you have any pointer in that respect ?<br>
<br>
<pre class="moz-signature" cols="72">--
Sylvain Joyeux (Dr.Ing.)
Senior Researcher
Space & Security Robotics
Underwater Robotics
!!! Achtung, neue Telefonnummer!!!
Standort Bremen:
DFKI GmbH
Robotics Innovation Center
Robert-Hooke-Straße 5
28359 Bremen, Germany
Phone: +49 (0)421 178-454136
Fax: +49 (0)421 218-454150
E-Mail: <a class="moz-txt-link-abbreviated" href="mailto:robotik@dfki.de">robotik@dfki.de</a>
Weitere Informationen: <a class="moz-txt-link-freetext" href="http://www.dfki.de/robotik">http://www.dfki.de/robotik</a>
-----------------------------------------------------------------------
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
----------------------------------------------------------------------- </pre>
</body>
</html>