[ros-users] ros communication without roscore

Tully Foote tfoote at willowgarage.com
Mon Feb 7 19:06:34 UTC 2011


For a slightly lower effort you could run the roscore inside a VM on the
windows machine with a known IP.  roscore has a pretty small footprint and
overhead so it could use a relatively small VM.  I know it feels a little
excessive, but I expect it will get you going quicker.


On Mon, Feb 7, 2011 at 8:44 AM, Ken Conley <kwc at willowgarage.com> wrote:

> Hi Christian,
> In the 'ronin' and 'rosproxy' package we explore various solutions to
> the problem you describe.  In general, all you need to do is have
> another program register the remote node on another master.  The
> 'register.py' script in rosproxy contains code to do this.  What you
> need is the IP address of the remote node, plus the port of the TCPROS
> server that it is running.  This will let you connect to a remote
> publisher; a remote subscriber is more difficult because a subscriber
> needs regular callbacks to notify it of a new publisher.  The ronin
> node, in Python, is a node that is capable of re-attaching to masters.
> You can force a roscpp node to bind to a particular TCPROS port by using:
> __tcpros_server_port:=<port_num>
> as a command-line argument.  Unfortunately this option does exist in
> rospy yet, though it could be hacked in.
> In the longer term, we want to explore mDNS/Avahi-based solutions for
> doing the network config.  There are some packages that already
> experiment with this, such as Jon Fink's bonjour-based multimaster:
> https://github.com/jonfink/multimaster-ros-pkg
> It might be a solution to the problems you describe, but I don't have
> first-hand experience with it.
>  - Ken
> On Mon, Feb 7, 2011 at 3:16 AM, Christian Verbeek
> <verbeek at servicerobotics.eu> wrote:
> > Dear all,
> >
> > It might be quite unusual but I would like to communicate with a ROS
> > system without connecting to a roscore. The problem I see is the
> > following. My robots run Ubuntu and are perfectly suited to run ROS. The
> > app for programming these robots is a Windows program. We already ported
> > ROS to Windows (http://ros-win32.servicerobotics.eu/). In general we
> > would be able to integrate ROS into our Windows app and connect to the
> > roscore running on the robots.
> >
> > This will not do for the following reasons:
> >
> > 1) The IP address of the robot is not fixed, i.e. can be change by the
> > user. In order to be able to connect from the outside to the robot
> > ROS_MASTER_URI and ROS_IP on the robot would have to reflect the current
> > IP address. This might not be a general problem but makes things quite
> > complicated for the user when the IP address has to be changed. I would
> > prefer to set ROS_MASTER_URI and ROS_IP on the robot to as
> > this will always work.
> >
> > 2) We also have a simulator for our robot which is also a Windows
> > application. If we would use ROS to connect to our robot we would have
> > to run a roscore on Windows and connect the simulated robot to this ROS
> > master. With a single simulated robot this might work. But when we
> > simulate more than one robot we are getting in very big trouble because
> > there are many statics in libros. The robots are loaded at runtime to
> > the simulator and the statics make it impossible to handle the robots
> > individually as it is done right now.
> >
> > What we would need is a point to point communication with a specific ROS
> > node. We know the IP address of the robot and we know which nodes are
> > running there. Is there a way to connect to a node's topic directly? Or
> > is there a better solution to my problem?
> >
> > Regards
> > Christian
> >
> > _______________________________________________
> > ros-users mailing list
> > ros-users at code.ros.org
> > https://code.ros.org/mailman/listinfo/ros-users
> >
> _______________________________________________
> ros-users mailing list
> ros-users at code.ros.org
> https://code.ros.org/mailman/listinfo/ros-users

Tully Foote
Systems Engineer
Willow Garage, Inc.
tfoote at willowgarage.com
(650) 475-2827
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ros.org/pipermail/ros-users/attachments/20110207/d81d6af8/attachment-0003.html>

More information about the ros-users mailing list