Code Monkey home page Code Monkey logo

ros_vrpn_client's Introduction

ros_vrpn_client

Ros interface for http://www.cs.unc.edu/Research/vrpn/

Dependencies

vrpn_catkin package from: https://github.com/ethz-asl/vrpn_catkin

Usage

You have to start a ROS node per tracked object and the ROS node name has to be the name of the trackable object.

 rosrun ros_vrpn_client ros_vrpn_client _object_name:=object_name _vrpn_server_ip:=192.168.1.1

Or in a launch file:

<arg name="object_name" default="some_object_name" />
<node name="some_object_name_vrpn_client" type="ros_vrpn_client" pkg="ros_vrpn_client" output="screen">
 <param name="vrpn_server_ip" value="192.168.1.100" />
 <param name="object_name" value="$(arg object_name)" />
 <!-- or directly:
 <param name="object_name" value="some_object_name" /> -->
</node>

Installation HowTo

Installation Ubuntu

A catkinized version of VRPN can be found here: https://github.com/ethz-asl/vrpn_catkin

For further information about VRPN, please consult their website: https://github.com/vrpn/vrpn

Installation OS X

Use the catkinized package above.

TF coord frames

  1. /optitrak - world frame that we will use. - X axis is along the x axis of the calibration pattern. - Z axis is vertically up.

  2. Every tracked object has a coord frame whose TF name is the name of the ros node (given from the launch file or command line).

    Hitting "Reset To Current Orientation" in the TrackingTools software (Trackable properties) aligns the object coord frame with the /optitrak frame.

Coord frames vodoo

The TrackingTools software outputs the position and orientation in a funky coord frame which has the Y axis pointing vertically up, the X axis along the x axis of the calibration square and Z axis along the -ve z axis of the calibration square.

We perform some rotations to get rid of this funky frame and use the /optitrak frame described above as our fixed world coord frame. The code is in the "VRPN_CALLBACK track_target" function in ros_vrpn_client.cpp

ros_vrpn_client's People

Contributors

alexmillane avatar burrimi avatar enricgalceran avatar ffurrer avatar fmina avatar helenol avatar hitszchen avatar pascalgohl avatar simonlynen avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.