[ros-users] University of Ulster ISRC Repo

Chris Burbridge cburbridge at gmail.com
Tue Dec 14 11:16:33 UTC 2010


Hi Patrick,

Thanks.

When I wrote the first version of this code (2006), Vicon didn't have a
linux API available. They were also unwilling to give me source code for
there windows client, so I had to write my own communications layer. I
suspect there will be very little difference in performance between my code
and the Vicon API, but I have never tried the Vicon API. Is it available for
all Vicon customers, or only new customers?

One thing to note is that my code needs slight alteration before it will
work on 64 bit systems, we all use 32 bit here. A simple change to the
sizeof().

The protocol documentation was buried in a sub directory in the vicon
folder, but seams to have disappeared in the latest version of Nexus we run
now. I am not sure if it is available, but I can send a copy if you can't
find it (and if I can dig it out).

The code needs the model template file as created from Vicon Nexus. It turns
out that it is plain XML, so I parse it to find out the positions of markers
in the model and the number of segments. This then allows publishing of all
segments in the model, and optional publishing or reading of each marker
position.

Collaboration is always good. If you want to change anything in my driver,
feel free to send me a patch, and if at any point we need a more complete
vicon publishing node then I'd be very much keen to work together on it.

Best,

Chris


On 13 December 2010 20:12, Patrick Bouffard <bouffard at eecs.berkeley.edu>wrote:

> Hi Chris,
>
> Nice work. I also wrote a VICON package for ROS:
> https://github.com/pbouffard/vicon_mocap
>
> I was naturally curious and took a quick look at your code. It looks
> like one difference is that I'm using the DataStream API from VICON,
> while it looks like you are using the sockets directly. Is that for
> performance reasons? I guess it also has the advantage of not having a
> dependency on the SDK. I'm curious--is there some documentation
> available on the protocol used?
>
> Also, it looks like in your node a model file must be provided--what
> type of file is this, is it a .vsk file? In our use case we are only
> interested in the rigid body pose of a single segment on one subject
> so we just ask the API for those by name. I guess your solution is a
> bit more general as it seems it provides all the VICON data for all
> subjects down to the marker level.
>
> Anyway, always nice to see how others are solving a similar problem.
> I'd of course be open to working together if that makes sense, though
> I suspect our respective implementations do what we each need them to
> do already.
>
> Cheers,
>
> Pat
>
> On Mon, Dec 13, 2010 at 6:31 AM, Chris Burbridge <cburbridge at gmail.com>
> wrote:
> > Hello,
> >
> > Here at the Univeristy of Ulster Intelligent Systems Research Centre we
> > have been gradually learning to use ROS, having previously used
> Player/Stage
> > extensively.
> >
> > We are now in the process of creating a repository in which we hope to
> place
> > some of our software. To begin with, we have added our Vicon tracking
> system
> > interface library, with a ROS interface using tf. Shortly we will add
> more.
>
> > The repository can be found here:
> >
> > https://github.com/cburbridge/uuisrc-ros-pkg
> >
> > It would be great if our repository could be added to the ros wiki.
> >
> > All the best,
> >
> > Chris Burbridge
> >
> > Research Associate,
> > University of Ulster ISRC
> >
> >
> >
> > _______________________________________________
> > 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
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ros.org/pipermail/ros-users/attachments/20101214/4931c90f/attachment-0003.html>


More information about the ros-users mailing list