<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 12pt;
font-family:΢ÈíÑźÚ
}
--></style></head>
<body class='hmmessage'><div dir='ltr'><p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">Hello everyone!<span class="apple-converted-space"> </span></span><span class="apple-converted-space"><span lang="EN-US" style="font-family: Verdana, sans-serif; background: white;"><o:p></o:p></span></span></p>

<p class="MsoNormal"><span class="apple-converted-space"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;"><o:p> </o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">We have launched a project to modify the ROS c++
core (both Hydro and Indigo) to use OMG's DDS (Data Distribution Service for
Real-time Systems) as its transportation layer. This project is named micROS
RT, in which RT is short for real-time. An early result of our work can be
found at the bottom of this mail. This is a prototype without comprehensive
testing and just for evaluation and feedback collection.<span class="apple-converted-space"> <o:p></o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US"> </span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">The main features of our work include:<span class="apple-converted-space"> </span></span><span class="apple-converted-space"><span lang="EN-US"><o:p></o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">(1) Using DDS to deliver ROS messages, instead of
the built-in message channel in ROS. DDS is a mature middleware standard which
"aims to enable standard which scalable, real-time, dependable,
high-performance and interoperable data exchanges between publishers and
subscribers".<span class="apple-converted-space"> <o:p></o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">(2) Existing ROS applications (as well as the
existing ROS programming paradigm) need no modification. In other words, our
modification to the ROS core is transparent to the upper-layer applications.
All you have to do is to replace the libroscpp.so in the ROS installation
directory.<span class="apple-converted-space"> <o:p></o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">(3) Providing QoS assurance in the message
delivery process (coming soon). You can set QoS parameters when advertising a
topic using the API we added, for example, transport priority, latency budget,
delivery reliability, etc.<span class="apple-converted-space"> <o:p></o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">(4) Interoperable with the official ROS core
(both C++ and Python-based). In virtue of the built-in protocol negotiation
mechanism in ROS, our implementation is interoperable with the official ROS
core.<span class="apple-converted-space"> <o:p></o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US"> </span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">Feature 3 is not supported yet in this version. It will come in the next two or three weeks. We are testing.<span class="apple-converted-space"> </span></span><span class="apple-converted-space"><span lang="EN-US"><o:p></o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US"> </span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">Installation guides:<span class="apple-converted-space"> </span></span><span class="apple-converted-space"><span lang="EN-US"><o:p></o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">(1) Installing OpenSplice DDS 6.4 community
version </span><span style="font-size: 10pt; font-family: ËÎÌå; background: white;">£¨</span><span lang="EN-US"><a href="http://www.prismtech.com/opensplice/opensplice-dds-community" target="_top"><span style="font-size:10.0pt;font-family:"Verdana","sans-serif";
color:#551A8B;background:white">http://www.prismtech.com/opensplice/opensplice-dds-community</span></a></span><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">).<span class="apple-converted-space"> <o:p></o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">(2) Please ensure that the DDS environment
variables have been set correctly. Usually, you can achieve this goal by simply
running "source %DDSInstallationPath%/release.com".<span class="apple-converted-space"> <o:p></o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">(3) Replace the libroscpp.so in the ROS directory
with the file at the bottom downloaded from the link at the bottom of this
mail.<span class="apple-converted-space"> <o:p></o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">After that, all ROS messages will be switched to
the DDS channel instead of the built-in message channel (i.e. the TCPROS
protocol) in ROS.<span class="apple-converted-space"> <o:p></o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">When you ROS application starts, you can see a
prompt ¡°[DDSListener] Ready¡­¡± in the console to tell you the DDS has been
successfully started  (only on the subscriber side).<span class="apple-converted-space"> <o:p></o:p></span></span></p>

<p class="MsoNormal"><span class="apple-converted-space"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;"><o:p> </o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">Frequently asked Questions:<span class="apple-converted-space"> <o:p></o:p></span></span></p>

<p class="MsoListParagraph" style="margin-left:18.0pt;text-indent:-18.0pt;
mso-list:l0 level1 lfo1"><!--[if !supportLists]--><span class="apple-converted-space"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif;">(1)<span style="font-size: 7pt; font-family: 'Times New Roman';"> 
</span></span></span><!--[endif]--><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">What is DDS?
Why DDS?<span class="apple-converted-space"> <o:p></o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">DDS is short for "Data Distribution Service
for Real-time Systems". It is an Object Management Group's standard for
publish/subscribe middleware standard. It supports high-performance, scalable
and QoS-assuring message delivery. It has been applied into many industry-level
systems.<span class="apple-converted-space"> <o:p></o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">Regarding the question of "Why DDS", we
refer you to a related article (</span><span lang="EN-US"><a href="http://design.ros2.org/articles/ros_on_dds.html" target="_top"><span style="font-size:10.0pt;font-family:"Verdana","sans-serif";color:#551A8B;
background:white">http://design.ros2.org/articles/ros_on_dds.html</span></a></span><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">) discussing the design of ROS 2.0, the planned
next generation of ROS. The reason for us to launch this project is very
simple, i.e., we need QoS features in ROS message delivery processes and we
cannot wait ROS 2.0.<span class="apple-converted-space"> <o:p></o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">(2) Can this modified ROS core and the official
ROS core co-exist in a distributed robot system?<span class="apple-converted-space"> <o:p></o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">Yes. MicROS RT will automatically select the
transport protocol. If the remote ROS node is using an official core without
DDS support, it will smartly changes to the built-in ROS message channel.
However, obviously, the QoS-assurance in message delivery cannot be supported
in this case.<span class="apple-converted-space"> <o:p></o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">(3) Can I specify the preferred transport
protocol in my program?<span class="apple-converted-space"> <o:p></o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">Yes, you can choose the preferred transport
protocol (TCPROS, UDPROS or DDS) by using the ros::TransportHints API. Before
we release the source code and the manual, you can contact us for more details.<span class="apple-converted-space"> <o:p></o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">(4) Will you provide the source code?<span class="apple-converted-space"> <o:p></o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">Yes, we will open the source code in the several
weeks. The prototype we released now is just for collecting feedback.<span class="apple-converted-space"> <o:p></o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">(5) Who are you?<span class="apple-converted-space"> <o:p></o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">We are the micROS team, an non-profit academic
group which consists of researchers, teachers and students from China. We focus
on the robot software research and practice and hope to contribute to the ROS
community. Any suggestion, feedback or bug reports can send to<span class="apple-converted-space"> <a href="mailto:bding@msn.com">bding@msn.com</a></span></span><span class="apple-converted-space"><span lang="EN-US" style="font-size:10.0pt;
font-family:"Verdana","sans-serif";background:white"> </span></span><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">Thanks!<span class="apple-converted-space"> <o:p></o:p></span></span></p>

<p class="MsoNormal"><span class="apple-converted-space"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;"><o:p> </o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">micROS RT 0.14beta, based on ROS Indigo, 64bit
binary distribution (compiled on Ubuntu 14.04LTS 64bit)<span class="apple-converted-space"> </span></span></p><p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;"><span class="apple-converted-space"><a href="https://onedrive.live.com/redir?resid=1639AB4151BFD7D6!2267&authkey=!ANeW-e3Rv9qbYds&ithint=file%2cso" target="_blank">https://onedrive.live.com/redir?resid=1639AB4151BFD7D6!2267&authkey=!ANeW-e3Rv9qbYds&ithint=file%2cso</a></span></span></p><p class="MsoNormal"><span style="font-family: Verdana, sans-serif; font-size: 10pt; background-color: white;">micROS RT 0.14beta, based on ROS Hydro, 64bit
binary distribution (compiled on Ubuntu 12.04LTS 64bit)</span><span class="apple-converted-space" style="font-family: Verdana, sans-serif; font-size: 10pt;"> </span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">coming soon...<span class="apple-converted-space"> <o:p></o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">micROS RT 0.14beta, source code<span class="apple-converted-space"> <o:p></o:p></span></span></p>

<p class="MsoNormal"><span lang="EN-US" style="font-size: 10pt; font-family: Verdana, sans-serif; background: white;">coming soon...</span><span lang="EN-US"><o:p></o:p></span></p>

<p class="MsoNormal"><span lang="EN-US"> </span></p>                                     </div></body>
</html>