A Baxter teleoperation system that runs on a single Linux Ubuntu (16.04) machine. An example of this system being demonstrated is available here
Follow these instructions to get a copy of the project up and running on your local machine for development and testing purposes.
Python 2.7 https://www.python.org/downloads/
ROS Kinetic http://wiki.ros.org/kinetic
Baxter Robot or Simulator http://sdk.rethinkrobotics.com/wiki/Workstation_Setup
Steam VR http://store.steampowered.com/steamvr
PyOpenVR https://github.com/cmbruns/pyopenvr
Baxter must be enabled as following instructions in: http://sdk.rethinkrobotics.com/wiki/Workstation_Setup
A virtual Baxter Gazebo simulation can be also be used: http://sdk.rethinkrobotics.com/wiki/Simulator_Installation
To build the teleoperation system, create a ROS workspace
mkdir -p baxter_ws/src or similar
cd baxter_ws/src
git clone https://github.com/kwunh/vive_teleoperation
cd ..
# or catkin build
catkin_make
source devel/setup.bash
-
Launch SteamVR & switch on all devices
-
Run Room Setup to calibrate HTC Vive
-
Launch HTC publisher:
$ cd ~/baxter_ws
$ ./baxter.sh
$ cd ~/baxter_ws/src/htc_publisher
$ roslaunch htc_publisher htc_publisher.launch
OPTIONAL IF RUNNING BAXTER SIMULATION
3.1) Launch RVIZ for tf visualisation:
$ rosrun rviz rviz
3.2) Launch Baxter Simulation:
$ roslaunch baxter_gazebo baxter_world.launch
- Launch Baxter Subscriber:
$ cd ~/baxter_ws
$ ./baxter.sh
$ cd ~/baxter_ws/src/baxter_subscriber
$ python main.py
Published topics:
Topic Type Rate
/tf tf2_msgs/TFMessage 250Hz
/vive_left sensor_msgs/Joy On Event
/vive_right sensor_msgs/Joy On Event
/left_controller_as_ps geometry_msgs/PoseStamped 30Hz
/right_controller_as_ps geometry_msgs/PoseStamped 30Hz
- Launch ZED wrapper
$ cd ~/baxter_ws
$ ./baxter.sh sim
$ cd ~/baxter_ws/src/zed_wrapper
$ roslaunch zed_wrapper display_zedm.launch
- Launch ZED subscriber for left eye:
$ cd ~/baxter_ws
$ ./baxter.sh sim
$ cd ~/baxter_ws/src/zed_opengl/src
$ python left_eye.py
- Launch ZED subscriber for right eye:
$ cd ~/baxter_ws
$ ./baxter.sh sim
$ cd ~/baxter_ws/src/zed_opengl/src
$ python right_eye.py
Ensure ZED Camera and HTC Vive are connected to the Linux machine.
Simply double click the provided executable in zed_htc: zed_camera.x86_64