Re: [ros-users] Message proxy?

Forside
Vedhæftede filer:
Indlæg som e-mail
+ (text/plain)
Slet denne besked
Besvar denne besked
Skribent: User discussions
Dato:  
Til: ros-users
Emne: Re: [ros-users] Message proxy?
I would take a look at rosproxy: http://ros.org/wiki/rosproxy

The serialization in ROS should be cross-platform/endianness.

-Austin

On 07/02/2012 12:46 PM, William Woodall wrote:
> Sophisticated as this question is, I think it is still serviceable via
> http://answers.ros.org/questions/
>
> For part 1):
>
> Not sure, potentially if the code that deserializes was generated for
> an ARM target. Maybe some else can comment on this.
>
> For part 2):
>
> The message type '<pkg>/<MessageName>', the actual message definition,
> and the md5sum of the message are all part of the data being sent in
> the serialized data. See:
>
> http://www.ros.org/wiki/ROS/TCPROS
> http://www.ros.org/wiki/ROS/Connection%20Header
>
> This is how, from what I understand, rosbag can record and republish
> ros topic data with out linking to any message type headers, because
> it never actually deserializes anything, similarly your proxies can
> forward the data in its serialized form without ever knowing the type
> and ros nodes on the other side can still determine the type and then
> deserialize the data.
>
> --
>
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> William Woodall
> Graduate Software Engineering
> Auburn University
> <mailto:w@auburn.edu>
> <mailto:wjwwood@gmail.com>
> williamjwoodall.com <http://williamjwoodall.com>
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
>
>
> On Mon, Jul 2, 2012 at 2:20 PM, Karan, Cem F CIV (US)
> < <mailto:cem.f.karan.civ@mail.mil>> wrote:
>
>     Hi all, I'm trying to pass data between multiple robots in a manner
>     similar to what multimaster (http://ros.org/wiki/multimaster) is/was
>     supposed to do, but after some work, I've realized that what I'm
>     really
>     trying to do is proxy messages from one robot to another.  I can
>     do this
>     by grabbing a message and asking it for its serialized
>     representation, and
>     then rsyncing that across the network, but I realized that that
>     leaves 2
>     potential problems:

>
>     1) I don't know how portable the serialization format really is.
>      Can I
>     take a message that was serialized on a little endian 32 bit
>     machine (x86)
>     and forward it to a big endian 16 bit machine (ARM), and have the
>     data be
>     correctly serialized/deserialized?  I know I can do this via google
>     protocol buffers (https://developers.google.com/protocol-buffers/) or
>     MessagePack (http://msgpack.org/), but I'm not too sure if I can
>     do this
>     with serialized message format that ROS uses.

>
>     2) Is the message type encoded into the serialized data?  It doesn't
>     appear so, but I just wanted to make sure.  This affects what kind of
>     proxy I can make; if the message type is encoded in the message,
>     then the
>     proxy can be oblivious to messages, and will simply forward the data
>     along.  The receiver can likewise be oblivious, putting the
>     message 'on
>     the bus' and letting all listeners decode what they want.
>      Conversely, if
>     the messages don't encode their own type, then the proxies will
>     need to
>     know every message type that they encode; otherwise, the receivers
>     won't
>     be able to put the right message type 'on the bus'.

>
>     Any help/pointers would be appreciated.

>
>     Thanks,
>     Cem Karan

>
>     _______________________________________________
>     ros-users mailing list
>      <mailto:ros-users@code.ros.org>
>     https://code.ros.org/mailman/listinfo/ros-users

>
>
>
>
> _______________________________________________
> ros-users mailing list
>
> https://code.ros.org/mailman/listinfo/ros-users