-
 
No version for distro humble. Known supported distros are highlighted in the buttons above.
No version for distro iron. Known supported distros are highlighted in the buttons above.
No version for distro jazzy. Known supported distros are highlighted in the buttons above.
No version for distro rolling. Known supported distros are highlighted in the buttons above.

Package Summary

Tags No category tags.
Version 0.1.17
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jsk-ros-pkg/jsk_control.git
VCS Type git
VCS Version master
Last Updated 2024-01-22
Dev Status DEVELOPED
CI status Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

The eus_teleop package

Additional Links

No additional links.

Maintainers

  • Shingo Kitagawa

Authors

  • Shingo Kitagawa

eus_teleop

main linter

Multi robot teleoperation system with Vive/SpaceNav/Oculus/Tablis Cockpit

Note

This package depends on these branches below:

Tested Environment

Build environment

Ubuntu 16.04 + ROS Kinetic

  • NVidia driver: 396.37
  • OpenVR: 1.3.22
  • Steam VR: 1.6.10

Ubuntu 18.04 + ROS Melodic

  • NVidia driver: 390.116
  • OpenVR: 1.3.22
  • Steam VR: 1.6.10

User interface devices

Vive

  • Arm motion tracking
  • Controller button interface
  • HMD visual interface
  • Vibration interface
  • Sound interface

Tablis

  • Arm motion tracking
  • Controller button interface
  • HMD visual interface
  • Vibration interface
  • Sound interface

SpaceNav (3D mouse)

  • Arm motion tracking
  • Controller button interface

Oculus

  • Arm motion tracking
  • Controller button interface
  • HMD visual interface
  • Vibration interface
  • Sound interface

Installation

Dependency installation

Install dependencies (for Vive)

sudo apt-get install --reinstall xserver-xorg-video-intel-hwe-18.04 libgl1-mesa-glx libgl1-mesa-dri xserver-xorg-core
sudo dpkg-reconfigure xserver-xorg

Install nvidia-driver (for Vive)

# for melodic, run command below
sudo apt install nvidia-driver-390
# for kinetic, install cuda-9.2 deb (local) manually and run command below.
sudo apt install nvidia-396

Install OpenVR, steam and steamVR (for Vive)

Follow here

Install kodak 4k pro camera and ELP usb camera udev (for Baxter)

sudo cp udev/99-kodak.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules && sudo udevadm trigger

ROS Workspace build

Build jsk_apc workspace (Only for baxter users)

source /opt/ros/$ROS_DISTRO/setup.bash
mkdir ~/jsk_apc_ws/src -p
cd ~/jsk_apc_ws/src
wstool init . https://raw.githubusercontent.com/start-jsk/jsk_apc/master/fc.rosinstall.${ROS_DISTRO}
wstool up
rosdep install -y -r --from-paths .

cd ~/jsk_apc_ws 
catkin config
catkin build

Build eus_teleop workspace

source /opt/ros/$ROS_DISTRO/setup.bash
mkdir ~/teleop_ws/src -p
cd ~/teleop_ws/src
wstool init . https://raw.githubusercontent.com/knorth55/eus_teleop/master/fc.rosinstall

# Only for baxter users
wstool merge https://raw.githubusercontent.com/knorth55/eus_teleop/master/baxter.rosinstall
wstool merge https://raw.githubusercontent.com/knorth55/eus_teleop/master/baxter.rosinstall.$ROS_DISTRO

# Only for dragon users
wstool merge https://raw.githubusercontent.com/knorth55/eus_teleop/master/dragon.rosinstall

wstool up
rosdep install --ignore-src --from-path . -y -r -i

# Only for baxter users
source ~/jsk_apc_ws/devel/setup.bash

cd ~/teleop_ws
catkin config
catkin build

How to start

Start procedure

  • Connect Vive HMD and Lighthouse and power on the controller.
  • Place Lighthouse B in front of you.
  • Start one of launch files below.
  • If you don’t use HMD, press Calibrate button and do arm calibration.
  • Press Enable button in GUI to start teleoperation.

Arm calibration (Only for no HMD mode)

The arm calibration is required for no HMD mode in order to measure your position and your arm length.

  • Press Calibrate l/rarm button in GUI
  • Listen to the voice instruction.
  • Stretch your left/right arm and Press Trigger after the first instruction.
  • Listen to the voice instruction again.
  • Fold your left/right arm and Press Trigger after the second instruction.
  • If calibration failed, please try again.

PR2 + Vive

https://user-images.githubusercontent.com/9300063/213145161-4b2acb89-9545-460a-b5cc-d05a111a187b.mp4

PR2 + Vive in JSK 73B2 or 610

rossetip
rossetmaster pr1040
# HMD mode
roslaunch eus_teleop pr2_vive.launch
# No HMD mode
roslaunch eus_teleop pr2_vive.launch head:=false

PR2 + Vive in Gazebo

roslaunch pr2_gazebo pr2_empty_world.launch
roslaunch eus_teleop pr2_vive_gazebo.launch

PR2 + Tablis

https://user-images.githubusercontent.com/9300063/208720417-176d698e-3789-42a8-931f-2a9fc9e062a0.mp4

PR2 + Tablis in JSK 73B2 or 610

rossetip
rossetmaster pr1040
roslaunch eus_teleop pr2_tablis.launch

PR2 + Tablis in Gazebo

Launch Tablis in Choreonoid
roscd eus_teleop/scripts/tablis
./start-tablis-sim.sh

roscd eus_teleop/scripts/tablis
ipython -i tablis_setup.py
hcf.servoOn()
hcf.hc_svc.startHapticsController()

Launch bridge
roscd eus_teleop/scripts/tablis
./start-bridge-sim.sh

Launch PR2 in Gazebo
roslaunch pr2_gazebo pr2_empty_world.launch
roslaunch eus_teleop pr2_tablis_gazebo.launch

PR2 + SpaceNav

https://user-images.githubusercontent.com/9300063/213137459-ce5f7075-acee-4a47-934a-97a4296fdc49.mp4

PR2 + SpaceNav in JSK 73B2

rossetip
rossetmaster pr1040
roslaunch eus_teleop pr2_spacenav.launch

PR2 + SpaceNav in Gazebo

roslaunch pr2_gazebo pr2_empty_world.launch
roslaunch eus_teleop pr2_spacenav_gazebo.launch

Baxter + Vive

https://user-images.githubusercontent.com/9300063/213144997-0d224d5c-b462-43a7-b759-0233fff41d94.mp4

Baxter + Vive in JSK 73B2

rossetip
rossetmaster baxter
# HMD mode
roslaunch eus_teleop baxter_vive.launch
# No HMD mode
roslaunch eus_teleop baxter_vive.launch head:=false

Baxter + Vive in Gazebo

roslaunch baxter_gazebo baxter_world.launch
roslaunch eus_teleop baxter_vive_gazebo.launch

Baxter + Tablis

https://user-images.githubusercontent.com/9300063/208720482-b7ef0abb-e948-448c-be51-521c0c7af8a2.mp4

Baxter + Tablis in JSK 73B2 or 610

rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_tablis.launch

Baxter + Tablis in Gazebo

Launch Tablis in Choreonoid
roscd eus_teleop/scripts/tablis
./start-tablis-sim.sh

roscd eus_teleop/scripts/tablis
ipython -i tablis_setup.py
hcf.servoOn()
hcf.hc_svc.startHapticsController()

Launch bridge
roscd eus_teleop/scripts/tablis
./start-bridge-sim.sh

Launch Baxter in Choreonoid
roslaunch baxter_gazebo baxter_world.launch
roslaunch eus_teleop baxter_tablis_gazebo.launch

Baxter + SpaceNav

Baxter + SpaceNav in JSK 73B2

rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_spacenav.launch

Baxter + SpaceNav in Gazebo

roslaunch baxter_gazebo baxter_world.launch
roslaunch eus_teleop baxter_spacenav_gazebo.launch

Baxter + MoveIt!

Real Robot in JSK 73B2

rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_moveit.launch

Dragon + SpaceNav

https://user-images.githubusercontent.com/9300063/210754022-7df92fd5-4875-4465-9738-7efdf5649093.mp4

Dragon + SpaceNav in Gazebo

roslaunch dragon bringup.launch simulation:=true real_machine:=false headless:=false
roslaunch eus_teleop dragon_spacenav_gazebo.launch

JAXON + SpaceNav

https://user-images.githubusercontent.com/9300063/212047815-e1f2a5ed-cf51-4782-b892-66752effe41d.mp4

JAXON + SpaceNav in Choreonoid

Launch JAXON in Choreonoid
roscd eus_teleop/scripts/jaxon
./start-jaxon_with_rhp3hand-sim.sh

roscd eus_teleop/scripts/jaxon
ipython -i jaxon_with_rhp3hand_setup.py
hcf.ast_svc.startAutoBalancer()
hcf.ast_svc.startStabilizer()
hcf.ast_svc.startWholeBodyMasterSlave()

Launch eus_vive for SpaceNav
roslaunch eus_teleop jaxon_spacenav_choreonoid.launch

JAXON + Tablis

https://user-images.githubusercontent.com/9300063/212932317-407102d1-093f-4729-b00a-f367bbbcb40d.mp4

JAXON + Tablis in Choreonoid

Launch Tablis in Choreonoid
roscd eus_teleop/scripts/tablis
./start-tablis-sim.sh

roscd eus_teleop/scripts/tablis
ipython -i tablis_setup.py
hcf.servoOn()
hcf.hc_svc.startHapticsController()

Launch JAXON in Choreonoid
roscd eus_teleop/scripts/jaxon
./start-jaxon_with_rhp3hand-sim.sh

roscd eus_teleop/scripts/jaxon
ipython -i jaxon_with_rhp3hand_setup.py
hcf.ast_svc.startAutoBalancer()
hcf.ast_svc.startStabilizer()
hcf.ast_svc.startWholeBodyMasterSlave()

Launch bridge and wbms core
roscd eus_teleop/scripts/jaxon
./start-jaxon-eus-teleop-sim.sh

Launch eus_vive for Tablis
roslaunch eus_teleop jaxon_tablis_choreonoid.launch

Demo & Experiments

Miraikan Demo 2019/08/23-24

rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_vive_mirror.launch

Miraikan Demo 2020/09/11-13

Robot control PC (Robot side)
rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_remote.launch

Vive control PC (Pilot side)
rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_vive_remote.launch

Visualization, display and feedback PC (Pilot side)
rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_display_remote.launch

How to use Vive controller

Vive controller

PR2

Button Usage
1 / Menu Control toggle: base/arm (Default: base)
3 / Stream Menu Steam Menu
8 / Grip Not used

Arm mode

You can enable arm mode of right and left arm separately.

Command Usage
7 / Trigger Gripper toggle: open/close in Toggle grasp mode (Default: open)
7 / Trigger Gripper toggle: open only when trigger is pressed in Hold grasp mode
Controller pose robot end effector’s pose

Base mode

Base mode is enabled when both arms are disabled in Arm mode.

Command Usage
2 / Trackpad Torso control: right: down / left: up
2 / Trackpad + 7 / Trigger (right) Safe base control: right: x, y / left: w
2 / Trackpad + 7 / Trigger (right + left) Unsafe base control: right: x, y / left: w

Baxter

Button Usage
2 / Trackpad Control toggle: stop / arm (Default: stop)
3 / Stream Menu Steam Menu
8 / Grip Not used

Arm mode

You can enable arm mode of right and left arm separately.

Command Usage
7 / Trigger Gripper toggle: open/close (Default: open)
Controller pose robot end effector’s pose

How to use GUI control

Teleoperation control buttons

Button Usage
Reset Diable and reset robot to initial posture
Enable Enable robot
Disable Disable robot
Calibrate larm/rarm Calibrate with left/right arm

Arm & Gripper control buttons

Button Usage
Reset larm/rarm Reset only left/right arm
Enable larm/rarm Enable only left/right arm
Disable larm/rarm Disable only left/right arm
Start grasp lgripper/rgripper Start grasp only left/right gripper
Stop grasp lgripper/rgripper Stop grasp only left/right gripper
Toggle grasp mode Change to Toggle grasp mode
Hold grasp mode Change to Hold grasp mode

Tips

Baxter Network Configuration

Open Field Service Menu and change network configuration

VPNC Install

sudo apt install libgcrypt20-dev libgnutls28-dev
git clone https://github.com/streambinder/vpnc.git
cd vpnc
git checkout 1cf24ed6aa4a04b4b01cc9ebfacbad723eed04f5
make
sudo make install
cd ..
git clone git://git.infradead.org/users/dwmw2/vpnc-scripts.git
cd vpnc-scripts
sudo cp vpnc-script /etc/vpnc

VPNC Command for Fortigate

sudo vpnc --local-port 0 --gateway <gateway> --id ipsecvpn --username <username> --pfs dh5 --dh dh5 --auth-mode psk --no-detach --vendor fortigate --dh dh5

Demo Video

PR2 Fridge demo

Baxter APC demo

CHANGELOG

Changelog for package eus_teleop

0.1.17 (2023-05-28)

  • add eus_teleop
  • Contributors: Shingo Kitagawa

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

  • sample/tablis/baxter/baxter_tablis_gazebo.launch
      • main [default: true]
      • vive_set [default: default]
      • head [default: true]
      • button_toggle [default: true]
      • mirror [default: false]
      • display [default: true]
  • sample/tablis/baxter/baxter_tablis.launch
      • main [default: true]
      • vive_set [default: default]
      • head [default: true]
      • mirror [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • republish [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/tablis/baxter/baxter_tablis_remote.launch
      • main [default: true]
      • vive [default: true]
      • head [default: true]
      • mirror [default: false]
      • vive_set [default: default]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/tablis/jaxon/jaxon_tablis.launch
      • main [default: true]
      • button_toggle [default: true]
  • sample/tablis/jaxon/jaxon_tablis_choreonoid.launch
      • main [default: true]
      • button_toggle [default: true]
  • sample/tablis/pr2/pr2_tablis.launch
      • main [default: true]
      • vive_set [default: default]
      • head [default: true]
      • button_toggle [default: true]
      • kinfu [default: false]
      • mirror [default: false]
      • display [default: true]
  • sample/tablis/pr2/pr2_tablis_gazebo.launch
      • main [default: true]
      • vive_set [default: default]
      • head [default: true]
      • button_toggle [default: true]
      • mirror [default: false]
      • display [default: true]
  • sample/vive/baxter/baxter_vive_remote.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • mirror [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/vive/baxter/baxter_vive_mirror.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • republish [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/vive/baxter/baxter_vive.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • mirror [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • republish [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/vive/baxter/baxter_vive_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • mirror [default: false]
      • button_toggle [default: true]
      • display [default: true]
  • sample/vive/pr2/pr2_vive_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • button_toggle [default: true]
      • display [default: true]
  • sample/vive/pr2/pr2_vive.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • button_toggle [default: true]
      • kinfu [default: false]
      • display [default: true]
  • sample/common/baxter_remote.launch
      • head [default: true]
      • respeaker [default: true]
      • logging [default: true]
      • twitter [default: true]
      • influxdb [default: true]
      • debug [default: false]
      • home_dir [default: $(env HOME)]
      • mask_rcnn [default: false]
      • custom_xdisplay [default: true]
      • launch_xdisplay [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • arm_interpolation [default: bezier_with_velocity]
      • arm_control_mode [default: velocity]
      • moveit [default: false]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
  • sample/common/baxter_display_remote.launch
      • head [default: false]
      • respeaker [default: true]
      • mirror [default: false]
      • republish [default: true]
      • logging [default: true]
      • rqt_gui [default: true]
      • camera_ns [default: realsense_torso]
      • spherical_camera_ns [default: kodak_head]
      • spherical_stereo [default: true]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
  • sample/common/baxter_moveit_remote.launch
      • head [default: true]
      • respeaker [default: true]
      • logging [default: true]
      • twitter [default: true]
      • influxdb [default: true]
      • debug [default: false]
      • home_dir [default: $(env HOME)]
      • mask_rcnn [default: false]
      • custom_xdisplay [default: true]
      • launch_xdisplay [default: false]
      • realsense_camera [default: true]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • arm_interpolation [default: minjerk]
      • arm_control_mode [default: position_w_id]
      • moveit [default: true]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • gui [default: true]
      • launch_tabletop_detector [default: true]
      • launch_grasp_mask_rcnn [default: false]
  • sample/other/baxter/baxter_moveit.launch
      • realsense_camera [default: true]
      • spherical_camera [default: false]
      • logging [default: true]
      • arm_interpolation [default: minjerk]
      • arm_control_mode [default: position_w_id]
      • moveit [default: true]
      • gui [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • launch_tabletop_detector [default: true]
  • sample/oculus/baxter/baxter_oculus_gazebo.launch
      • main [default: true]
      • button_toggle [default: true]
      • display [default: true]
  • sample/oculus/baxter/baxter_oculus.launch
      • main [default: true]
      • head [default: false]
      • mirror [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/oculus/pr2/pr2_oculus.launch
      • main [default: true]
      • kinfu [default: false]
      • button_toggle [default: true]
      • display [default: true]
  • sample/oculus/pr2/pr2_oculus_gazebo.launch
      • main [default: true]
      • button_toggle [default: true]
      • display [default: true]
  • sample/spacenav/dragon/dragon_spacenav.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
  • sample/spacenav/dragon/dragon_spacenav_gazebo.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
  • sample/spacenav/baxter/baxter_spacenav.launch
      • main [default: true]
      • head [default: false]
      • mirror [default: false]
      • logging [default: false]
      • display [default: true]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand-v2]
      • button_toggle [default: true]
  • sample/spacenav/baxter/baxter_spacenav_gazebo.launch
      • main [default: true]
      • button_toggle [default: true]
      • display [default: true]
  • sample/spacenav/jaxon/jaxon_spacenav.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
  • sample/spacenav/jaxon/jaxon_spacenav_choreonoid.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
  • sample/spacenav/pr2/pr2_spacenav.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
      • kinfu [default: false]
      • display [default: true]
  • sample/spacenav/pr2/pr2_spacenav_gazebo.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
      • display [default: true]
  • launch/tablis/tablis_bridge_leader.launch
      • filtered [default: false]
  • launch/tablis/tablis_bridge_follower.launch
  • launch/dragon/dragon_teleop_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: true]
      • device [default: spacenav]
      • head [default: false]
      • mirror [default: false]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/dragon/dragon_teleop.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: true]
      • device [default: spacenav]
      • head [default: false]
      • mirror [default: false]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/baxter/baxter_teleop_display.launch
      • head [default: true]
      • respeaker [default: true]
      • mirror [default: false]
      • republish [default: false]
      • logging [default: true]
      • rqt_gui [default: true]
      • home_dir [default: $(env HOME)]
      • compress [default: false] — whether compress rosbag or not.
      • main_name [default: /baxter_teleop_main]
      • camera_ns [default: realsense_torso]
      • spherical_camera_ns [default: kodak_head]
      • spherical_stereo [default: true]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • hmd_left_image [default: /virtual_camera/left/rviz_image]
      • hmd_right_image [default: /virtual_camera/right/rviz_image]
      • REALSENSE_IMAGE_TYPE [default: x264]
      • REALSENSE_DEPTH_TYPE [default: compressedDepth]
      • SPHERICAL_IMAGE_TYPE [default: x264]
      • SPHERICAL_STEREO_IMAGE_TYPE [default: x264]
  • launch/baxter/baxter_tabletop_object_detector.launch
      • input_cloud
      • input_image
      • camera_frame_id
      • manager
      • launch_transformable_server [default: true]
      • clip [default: true]
  • launch/baxter/baxter_teleop.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: false]
      • tablis [default: false]
      • device [default: vive]
      • head [default: true]
      • respeaker [default: true]
      • mirror [default: false]
      • logging [default: true]
      • twitter [default: true]
      • debug [default: false]
      • home_dir [default: $(env HOME)]
      • mask_rcnn [default: false]
      • display [default: true]
      • custom_xdisplay [default: true]
      • launch_baxter [default: true]
      • launch_xdisplay [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • republish [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
      • arm_interpolation [default: bezier_with_velocity]
      • arm_control_mode [default: velocity]
      • moveit [default: false]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • hmd_left_image [default: /virtual_camera/left/rviz_image]
      • hmd_right_image [default: /virtual_camera/right/rviz_image]
  • launch/baxter/baxter_rosbag_record.launch
      • output_prefix [default: baxter]
      • compress [default: false] — whether compress rosbag or not.
      • camera_ns [default: realsense_torso]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
  • launch/baxter/baxter_realsense_torso.launch
      • launch_transformable_server [default: true]
      • launch_tabletop_detector [default: false]
      • launch_grasp_mask_rcnn [default: false]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • camera_frame_id [default: $(arg camera_ns)_color_optical_frame]
      • manager [default: $(arg camera_ns)_camera_manager]
      • input_cloud [default: /$(arg camera_ns)/depth_registered/quarter/points]
      • input_image [default: /$(arg camera_ns)/depth_registered/quarter/image]
  • launch/baxter/baxter_logging.launch
      • twitter [default: true]
      • influxdb [default: true]
      • debug [default: false]
      • camera [default: true]
      • camera_ns [default: realsense_torso]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • twitter_image_topics [default: /$(arg camera_ns)/color/image_rect_color]
      • home_dir [default: $(env HOME)]
      • compress [default: false] — whether compress rosbag or not.
      • position_diff_threshold [default: 0.01]
  • launch/baxter/baxter.launch
      • head [default: true]
      • respeaker [default: true]
      • logging [default: true]
      • twitter [default: true]
      • influxdb [default: true]
      • debug [default: false]
      • home_dir [default: $(env HOME)]
      • mask_rcnn [default: false]
      • custom_xdisplay [default: true]
      • launch_xdisplay [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • launch_tabletop_detector [default: false]
      • launch_grasp_mask_rcnn [default: false]
      • arm_interpolation [default: bezier_with_velocity]
      • arm_control_mode [default: velocity]
      • moveit [default: false]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • xdisplay_max_width [default: 1024]
      • xdisplay_max_width [default: 1920]
      • xdisplay_max_height [default: 600]
      • xdisplay_max_height [default: 1200]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
  • launch/baxter/baxter_db_client.launch
      • camera [default: true]
      • camera_ns [default: realsense_torso]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • output [default: screen]
      • log_rate [default: 5.0]
      • respawn [default: true]
      • enable_monitor [default: false]
      • vital_check [default: true]
      • debug [default: false]
  • launch/baxter/baxter_rosbag_play.launch
      • rosbag
      • camera_ns [default: realsense_torso]
      • gui [default: true]
      • loop [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • manager [default: rosbag_play_nodelet_manager]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • left_electric_gripper [default: $(eval arg('lgripper_type') == 'parallel')]
      • right_electric_gripper [default: $(eval arg('rgripper_type') == 'parallel')]
  • launch/baxter/baxter_grasp_mask_rcnn.launch
      • input_image
      • input_cloud
      • manager
      • sampling [default: false]
      • data_collection [default: true]
      • target_grasp [default: false]
      • model_file [default: $(find dualarm_grasping)/models/dualarm_occluded_grasp/self_anno/20181227_model_iter_4559.npz]
      • config_yaml [default: $(find dualarm_grasping)/models/dualarm_occluded_grasp/self_anno/20181227_params.yaml]
      • target_yaml [default: $(find eus_teleop)/config/baxter/grasp_mask_rcnn_target_names.yaml]
      • label_yaml [default: $(find dualarm_grasping)/yaml/dualarm_occluded_grasping_label_names.yaml]
  • launch/baxter/baxter_teleop_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: false]
      • tablis [default: false]
      • device [default: vive]
      • head [default: false]
      • mirror [default: false]
      • display [default: true]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/baxter/baxter_visualization.launch
  • launch/jaxon/jaxon_teleop.launch
      • main [default: true]
      • vive [default: false]
      • spacenav [default: true]
      • device [default: spacenav]
      • head [default: false]
      • mirror [default: false]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/jaxon/jaxon_teleop_choreonoid.launch
      • main [default: true]
      • vive [default: false]
      • spacenav [default: true]
      • device [default: spacenav]
      • head [default: false]
      • mirror [default: false]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/include/elp_usb.launch
      • camera_name [default: elp_head]
      • index [default: 0]
      • machine [default: localhost]
      • load_machinepath [default: false]
      • machinepath [default: false]
  • launch/include/audio_play.launch
      • audio_ns [default: remote_audio]
      • format [default: wave]
      • dst [default: alsasink]
      • do_timestamp [default: false]
  • launch/include/rqt_gui.launch
  • launch/include/kinfu.launch
      • CAMERA_INFO
      • IMAGE_DEPTH
      • IMAGE_COLOR
  • launch/include/vive.launch
      • hmd_left_image [default: /virtual_camera/left/rviz_image]
      • hmd_right_image [default: /virtual_camera/right/rviz_image]
  • launch/include/mask_rcnn.launch
      • INPUT_IMAGE
      • gpu [default: 0]
  • launch/include/insta360_air.launch
      • camera_name [default: insta_head]
  • launch/include/respeaker.launch
  • launch/include/realsense.launch
      • camera_ns
      • manager
      • publish_tf
      • color_width
      • color_height
      • depth_width
      • depth_height
  • launch/include/realsense_l515.launch
      • camera_ns [default: realsense]
      • manager [default: realsense_camera_manager]
      • publish_tf [default: false]
      • color_width [default: 960]
      • color_height [default: 540]
      • depth_width [default: 640]
      • depth_height [default: 480]
  • launch/include/realsense_d435.launch
      • camera_ns [default: realsense]
      • manager [default: realsense_camera_manager]
      • publish_tf [default: false]
      • color_width [default: 640]
      • color_height [default: 480]
      • depth_width [default: 640]
      • depth_height [default: 480]
  • launch/include/kodak_pixpro.launch
      • camera_name [default: kodak_head]
  • launch/pr2/pr2_logging.launch
      • CAMERA_INFO
      • RGB_CAMERA_INFO
      • COMP_IMAGE_COLOR
      • COMP_IMAGE_DEPTH
      • home_dir [default: $(env HOME)]
      • compress [default: false] — whether compress rosbag or not.
  • launch/pr2/pr2_teleop_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: false]
      • tablis [default: false]
      • device [default: vive]
      • head [default: false]
      • mirror [default: false]
      • display [default: true]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/pr2/pr2_teleop.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: false]
      • tablis [default: false]
      • device [default: vive]
      • head [default: true]
      • respeaker [default: true]
      • mirror [default: false]
      • logging [default: true]
      • kinfu [default: false]
      • display [default: true]
      • home_dir [default: $(env HOME)]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
      • hmd_left_image [default: /virtual_camera/left/rviz_image]
      • hmd_right_image [default: /virtual_camera/right/rviz_image]
      • DECOMP_CAMERA_INFO [default: /kinect_head_decompressed/depth_registered/camera_info]
      • DECOMP_RGB_CAMERA_INFO [default: /kinect_head_decompressed/rgb/camera_info]
      • DECOMP_IMAGE_DEPTH [default: /kinect_head_decompressed/depth_registered/image_rect]
      • DECOMP_IMAGE_COLOR [default: /kinect_head_decompressed/rgb/image_rect_color]
      • DECOMP_POINTS [default: /kinect_head_decompressed/depth_registered/points]
      • CAMERA_INFO [default: /kinect_head/depth_registered/camera_info]
      • RGB_CAMERA_INFO [default: /kinect_head/rgb/camera_info]
      • IMAGE_COLOR [default: /kinect_head/rgb/image_rect_color]
      • IMAGE_DEPTH [default: /kinect_head/depth_registered/image_rect]
      • IMAGE_DEPTH_TYPE [default: compressedDepth]
      • COMP_IMAGE_COLOR [default: /kinect_head/rgb/image_rect_color/compressed]
      • COMP_IMAGE_DEPTH [default: /kinect_head/depth_registered/image_rect/compressedDepth]
  • launch/pr2/pr2_teleop_display.launch
      • kinfu [default: false]
      • respeaker [default: true]
      • DECOMP_CAMERA_INFO [default: /kinect_head_decompressed/depth_registered/camera_info]
      • DECOMP_RGB_CAMERA_INFO [default: /kinect_head_decompressed/rgb/camera_info]
      • DECOMP_IMAGE_DEPTH [default: /kinect_head_decompressed/depth_registered/image_rect]
      • DECOMP_IMAGE_COLOR [default: /kinect_head_decompressed/rgb/image_rect_color]
      • DECOMP_POINTS [default: /kinect_head_decompressed/depth_registered/points]
      • CAMERA_INFO
      • RGB_CAMERA_INFO
      • IMAGE_COLOR
      • IMAGE_DEPTH
      • IMAGE_DEPTH_TYPE

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eus_teleop at Robotics Stack Exchange

No version for distro ardent. Known supported distros are highlighted in the buttons above.
No version for distro bouncy. Known supported distros are highlighted in the buttons above.
No version for distro crystal. Known supported distros are highlighted in the buttons above.
No version for distro eloquent. Known supported distros are highlighted in the buttons above.
No version for distro dashing. Known supported distros are highlighted in the buttons above.
No version for distro galactic. Known supported distros are highlighted in the buttons above.
No version for distro foxy. Known supported distros are highlighted in the buttons above.
No version for distro lunar. Known supported distros are highlighted in the buttons above.

Package Summary

Tags No category tags.
Version 0.1.17
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jsk-ros-pkg/jsk_control.git
VCS Type git
VCS Version master
Last Updated 2024-01-22
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

The eus_teleop package

Additional Links

No additional links.

Maintainers

  • Shingo Kitagawa

Authors

  • Shingo Kitagawa

eus_teleop

main linter

Multi robot teleoperation system with Vive/SpaceNav/Oculus/Tablis Cockpit

Note

This package depends on these branches below:

Tested Environment

Build environment

Ubuntu 16.04 + ROS Kinetic

  • NVidia driver: 396.37
  • OpenVR: 1.3.22
  • Steam VR: 1.6.10

Ubuntu 18.04 + ROS Melodic

  • NVidia driver: 390.116
  • OpenVR: 1.3.22
  • Steam VR: 1.6.10

User interface devices

Vive

  • Arm motion tracking
  • Controller button interface
  • HMD visual interface
  • Vibration interface
  • Sound interface

Tablis

  • Arm motion tracking
  • Controller button interface
  • HMD visual interface
  • Vibration interface
  • Sound interface

SpaceNav (3D mouse)

  • Arm motion tracking
  • Controller button interface

Oculus

  • Arm motion tracking
  • Controller button interface
  • HMD visual interface
  • Vibration interface
  • Sound interface

Installation

Dependency installation

Install dependencies (for Vive)

sudo apt-get install --reinstall xserver-xorg-video-intel-hwe-18.04 libgl1-mesa-glx libgl1-mesa-dri xserver-xorg-core
sudo dpkg-reconfigure xserver-xorg

Install nvidia-driver (for Vive)

# for melodic, run command below
sudo apt install nvidia-driver-390
# for kinetic, install cuda-9.2 deb (local) manually and run command below.
sudo apt install nvidia-396

Install OpenVR, steam and steamVR (for Vive)

Follow here

Install kodak 4k pro camera and ELP usb camera udev (for Baxter)

sudo cp udev/99-kodak.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules && sudo udevadm trigger

ROS Workspace build

Build jsk_apc workspace (Only for baxter users)

source /opt/ros/$ROS_DISTRO/setup.bash
mkdir ~/jsk_apc_ws/src -p
cd ~/jsk_apc_ws/src
wstool init . https://raw.githubusercontent.com/start-jsk/jsk_apc/master/fc.rosinstall.${ROS_DISTRO}
wstool up
rosdep install -y -r --from-paths .

cd ~/jsk_apc_ws 
catkin config
catkin build

Build eus_teleop workspace

source /opt/ros/$ROS_DISTRO/setup.bash
mkdir ~/teleop_ws/src -p
cd ~/teleop_ws/src
wstool init . https://raw.githubusercontent.com/knorth55/eus_teleop/master/fc.rosinstall

# Only for baxter users
wstool merge https://raw.githubusercontent.com/knorth55/eus_teleop/master/baxter.rosinstall
wstool merge https://raw.githubusercontent.com/knorth55/eus_teleop/master/baxter.rosinstall.$ROS_DISTRO

# Only for dragon users
wstool merge https://raw.githubusercontent.com/knorth55/eus_teleop/master/dragon.rosinstall

wstool up
rosdep install --ignore-src --from-path . -y -r -i

# Only for baxter users
source ~/jsk_apc_ws/devel/setup.bash

cd ~/teleop_ws
catkin config
catkin build

How to start

Start procedure

  • Connect Vive HMD and Lighthouse and power on the controller.
  • Place Lighthouse B in front of you.
  • Start one of launch files below.
  • If you don’t use HMD, press Calibrate button and do arm calibration.
  • Press Enable button in GUI to start teleoperation.

Arm calibration (Only for no HMD mode)

The arm calibration is required for no HMD mode in order to measure your position and your arm length.

  • Press Calibrate l/rarm button in GUI
  • Listen to the voice instruction.
  • Stretch your left/right arm and Press Trigger after the first instruction.
  • Listen to the voice instruction again.
  • Fold your left/right arm and Press Trigger after the second instruction.
  • If calibration failed, please try again.

PR2 + Vive

https://user-images.githubusercontent.com/9300063/213145161-4b2acb89-9545-460a-b5cc-d05a111a187b.mp4

PR2 + Vive in JSK 73B2 or 610

rossetip
rossetmaster pr1040
# HMD mode
roslaunch eus_teleop pr2_vive.launch
# No HMD mode
roslaunch eus_teleop pr2_vive.launch head:=false

PR2 + Vive in Gazebo

roslaunch pr2_gazebo pr2_empty_world.launch
roslaunch eus_teleop pr2_vive_gazebo.launch

PR2 + Tablis

https://user-images.githubusercontent.com/9300063/208720417-176d698e-3789-42a8-931f-2a9fc9e062a0.mp4

PR2 + Tablis in JSK 73B2 or 610

rossetip
rossetmaster pr1040
roslaunch eus_teleop pr2_tablis.launch

PR2 + Tablis in Gazebo

Launch Tablis in Choreonoid
roscd eus_teleop/scripts/tablis
./start-tablis-sim.sh

roscd eus_teleop/scripts/tablis
ipython -i tablis_setup.py
hcf.servoOn()
hcf.hc_svc.startHapticsController()

Launch bridge
roscd eus_teleop/scripts/tablis
./start-bridge-sim.sh

Launch PR2 in Gazebo
roslaunch pr2_gazebo pr2_empty_world.launch
roslaunch eus_teleop pr2_tablis_gazebo.launch

PR2 + SpaceNav

https://user-images.githubusercontent.com/9300063/213137459-ce5f7075-acee-4a47-934a-97a4296fdc49.mp4

PR2 + SpaceNav in JSK 73B2

rossetip
rossetmaster pr1040
roslaunch eus_teleop pr2_spacenav.launch

PR2 + SpaceNav in Gazebo

roslaunch pr2_gazebo pr2_empty_world.launch
roslaunch eus_teleop pr2_spacenav_gazebo.launch

Baxter + Vive

https://user-images.githubusercontent.com/9300063/213144997-0d224d5c-b462-43a7-b759-0233fff41d94.mp4

Baxter + Vive in JSK 73B2

rossetip
rossetmaster baxter
# HMD mode
roslaunch eus_teleop baxter_vive.launch
# No HMD mode
roslaunch eus_teleop baxter_vive.launch head:=false

Baxter + Vive in Gazebo

roslaunch baxter_gazebo baxter_world.launch
roslaunch eus_teleop baxter_vive_gazebo.launch

Baxter + Tablis

https://user-images.githubusercontent.com/9300063/208720482-b7ef0abb-e948-448c-be51-521c0c7af8a2.mp4

Baxter + Tablis in JSK 73B2 or 610

rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_tablis.launch

Baxter + Tablis in Gazebo

Launch Tablis in Choreonoid
roscd eus_teleop/scripts/tablis
./start-tablis-sim.sh

roscd eus_teleop/scripts/tablis
ipython -i tablis_setup.py
hcf.servoOn()
hcf.hc_svc.startHapticsController()

Launch bridge
roscd eus_teleop/scripts/tablis
./start-bridge-sim.sh

Launch Baxter in Choreonoid
roslaunch baxter_gazebo baxter_world.launch
roslaunch eus_teleop baxter_tablis_gazebo.launch

Baxter + SpaceNav

Baxter + SpaceNav in JSK 73B2

rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_spacenav.launch

Baxter + SpaceNav in Gazebo

roslaunch baxter_gazebo baxter_world.launch
roslaunch eus_teleop baxter_spacenav_gazebo.launch

Baxter + MoveIt!

Real Robot in JSK 73B2

rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_moveit.launch

Dragon + SpaceNav

https://user-images.githubusercontent.com/9300063/210754022-7df92fd5-4875-4465-9738-7efdf5649093.mp4

Dragon + SpaceNav in Gazebo

roslaunch dragon bringup.launch simulation:=true real_machine:=false headless:=false
roslaunch eus_teleop dragon_spacenav_gazebo.launch

JAXON + SpaceNav

https://user-images.githubusercontent.com/9300063/212047815-e1f2a5ed-cf51-4782-b892-66752effe41d.mp4

JAXON + SpaceNav in Choreonoid

Launch JAXON in Choreonoid
roscd eus_teleop/scripts/jaxon
./start-jaxon_with_rhp3hand-sim.sh

roscd eus_teleop/scripts/jaxon
ipython -i jaxon_with_rhp3hand_setup.py
hcf.ast_svc.startAutoBalancer()
hcf.ast_svc.startStabilizer()
hcf.ast_svc.startWholeBodyMasterSlave()

Launch eus_vive for SpaceNav
roslaunch eus_teleop jaxon_spacenav_choreonoid.launch

JAXON + Tablis

https://user-images.githubusercontent.com/9300063/212932317-407102d1-093f-4729-b00a-f367bbbcb40d.mp4

JAXON + Tablis in Choreonoid

Launch Tablis in Choreonoid
roscd eus_teleop/scripts/tablis
./start-tablis-sim.sh

roscd eus_teleop/scripts/tablis
ipython -i tablis_setup.py
hcf.servoOn()
hcf.hc_svc.startHapticsController()

Launch JAXON in Choreonoid
roscd eus_teleop/scripts/jaxon
./start-jaxon_with_rhp3hand-sim.sh

roscd eus_teleop/scripts/jaxon
ipython -i jaxon_with_rhp3hand_setup.py
hcf.ast_svc.startAutoBalancer()
hcf.ast_svc.startStabilizer()
hcf.ast_svc.startWholeBodyMasterSlave()

Launch bridge and wbms core
roscd eus_teleop/scripts/jaxon
./start-jaxon-eus-teleop-sim.sh

Launch eus_vive for Tablis
roslaunch eus_teleop jaxon_tablis_choreonoid.launch

Demo & Experiments

Miraikan Demo 2019/08/23-24

rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_vive_mirror.launch

Miraikan Demo 2020/09/11-13

Robot control PC (Robot side)
rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_remote.launch

Vive control PC (Pilot side)
rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_vive_remote.launch

Visualization, display and feedback PC (Pilot side)
rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_display_remote.launch

How to use Vive controller

Vive controller

PR2

Button Usage
1 / Menu Control toggle: base/arm (Default: base)
3 / Stream Menu Steam Menu
8 / Grip Not used

Arm mode

You can enable arm mode of right and left arm separately.

Command Usage
7 / Trigger Gripper toggle: open/close in Toggle grasp mode (Default: open)
7 / Trigger Gripper toggle: open only when trigger is pressed in Hold grasp mode
Controller pose robot end effector’s pose

Base mode

Base mode is enabled when both arms are disabled in Arm mode.

Command Usage
2 / Trackpad Torso control: right: down / left: up
2 / Trackpad + 7 / Trigger (right) Safe base control: right: x, y / left: w
2 / Trackpad + 7 / Trigger (right + left) Unsafe base control: right: x, y / left: w

Baxter

Button Usage
2 / Trackpad Control toggle: stop / arm (Default: stop)
3 / Stream Menu Steam Menu
8 / Grip Not used

Arm mode

You can enable arm mode of right and left arm separately.

Command Usage
7 / Trigger Gripper toggle: open/close (Default: open)
Controller pose robot end effector’s pose

How to use GUI control

Teleoperation control buttons

Button Usage
Reset Diable and reset robot to initial posture
Enable Enable robot
Disable Disable robot
Calibrate larm/rarm Calibrate with left/right arm

Arm & Gripper control buttons

Button Usage
Reset larm/rarm Reset only left/right arm
Enable larm/rarm Enable only left/right arm
Disable larm/rarm Disable only left/right arm
Start grasp lgripper/rgripper Start grasp only left/right gripper
Stop grasp lgripper/rgripper Stop grasp only left/right gripper
Toggle grasp mode Change to Toggle grasp mode
Hold grasp mode Change to Hold grasp mode

Tips

Baxter Network Configuration

Open Field Service Menu and change network configuration

VPNC Install

sudo apt install libgcrypt20-dev libgnutls28-dev
git clone https://github.com/streambinder/vpnc.git
cd vpnc
git checkout 1cf24ed6aa4a04b4b01cc9ebfacbad723eed04f5
make
sudo make install
cd ..
git clone git://git.infradead.org/users/dwmw2/vpnc-scripts.git
cd vpnc-scripts
sudo cp vpnc-script /etc/vpnc

VPNC Command for Fortigate

sudo vpnc --local-port 0 --gateway <gateway> --id ipsecvpn --username <username> --pfs dh5 --dh dh5 --auth-mode psk --no-detach --vendor fortigate --dh dh5

Demo Video

PR2 Fridge demo

Baxter APC demo

CHANGELOG

Changelog for package eus_teleop

0.1.17 (2023-05-28)

  • add eus_teleop
  • Contributors: Shingo Kitagawa

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

  • sample/tablis/baxter/baxter_tablis_gazebo.launch
      • main [default: true]
      • vive_set [default: default]
      • head [default: true]
      • button_toggle [default: true]
      • mirror [default: false]
      • display [default: true]
  • sample/tablis/baxter/baxter_tablis.launch
      • main [default: true]
      • vive_set [default: default]
      • head [default: true]
      • mirror [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • republish [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/tablis/baxter/baxter_tablis_remote.launch
      • main [default: true]
      • vive [default: true]
      • head [default: true]
      • mirror [default: false]
      • vive_set [default: default]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/tablis/jaxon/jaxon_tablis.launch
      • main [default: true]
      • button_toggle [default: true]
  • sample/tablis/jaxon/jaxon_tablis_choreonoid.launch
      • main [default: true]
      • button_toggle [default: true]
  • sample/tablis/pr2/pr2_tablis.launch
      • main [default: true]
      • vive_set [default: default]
      • head [default: true]
      • button_toggle [default: true]
      • kinfu [default: false]
      • mirror [default: false]
      • display [default: true]
  • sample/tablis/pr2/pr2_tablis_gazebo.launch
      • main [default: true]
      • vive_set [default: default]
      • head [default: true]
      • button_toggle [default: true]
      • mirror [default: false]
      • display [default: true]
  • sample/vive/baxter/baxter_vive_remote.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • mirror [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/vive/baxter/baxter_vive_mirror.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • republish [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/vive/baxter/baxter_vive.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • mirror [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • republish [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/vive/baxter/baxter_vive_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • mirror [default: false]
      • button_toggle [default: true]
      • display [default: true]
  • sample/vive/pr2/pr2_vive_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • button_toggle [default: true]
      • display [default: true]
  • sample/vive/pr2/pr2_vive.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • button_toggle [default: true]
      • kinfu [default: false]
      • display [default: true]
  • sample/common/baxter_remote.launch
      • head [default: true]
      • respeaker [default: true]
      • logging [default: true]
      • twitter [default: true]
      • influxdb [default: true]
      • debug [default: false]
      • home_dir [default: $(env HOME)]
      • mask_rcnn [default: false]
      • custom_xdisplay [default: true]
      • launch_xdisplay [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • arm_interpolation [default: bezier_with_velocity]
      • arm_control_mode [default: velocity]
      • moveit [default: false]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
  • sample/common/baxter_display_remote.launch
      • head [default: false]
      • respeaker [default: true]
      • mirror [default: false]
      • republish [default: true]
      • logging [default: true]
      • rqt_gui [default: true]
      • camera_ns [default: realsense_torso]
      • spherical_camera_ns [default: kodak_head]
      • spherical_stereo [default: true]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
  • sample/common/baxter_moveit_remote.launch
      • head [default: true]
      • respeaker [default: true]
      • logging [default: true]
      • twitter [default: true]
      • influxdb [default: true]
      • debug [default: false]
      • home_dir [default: $(env HOME)]
      • mask_rcnn [default: false]
      • custom_xdisplay [default: true]
      • launch_xdisplay [default: false]
      • realsense_camera [default: true]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • arm_interpolation [default: minjerk]
      • arm_control_mode [default: position_w_id]
      • moveit [default: true]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • gui [default: true]
      • launch_tabletop_detector [default: true]
      • launch_grasp_mask_rcnn [default: false]
  • sample/other/baxter/baxter_moveit.launch
      • realsense_camera [default: true]
      • spherical_camera [default: false]
      • logging [default: true]
      • arm_interpolation [default: minjerk]
      • arm_control_mode [default: position_w_id]
      • moveit [default: true]
      • gui [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • launch_tabletop_detector [default: true]
  • sample/oculus/baxter/baxter_oculus_gazebo.launch
      • main [default: true]
      • button_toggle [default: true]
      • display [default: true]
  • sample/oculus/baxter/baxter_oculus.launch
      • main [default: true]
      • head [default: false]
      • mirror [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/oculus/pr2/pr2_oculus.launch
      • main [default: true]
      • kinfu [default: false]
      • button_toggle [default: true]
      • display [default: true]
  • sample/oculus/pr2/pr2_oculus_gazebo.launch
      • main [default: true]
      • button_toggle [default: true]
      • display [default: true]
  • sample/spacenav/dragon/dragon_spacenav.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
  • sample/spacenav/dragon/dragon_spacenav_gazebo.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
  • sample/spacenav/baxter/baxter_spacenav.launch
      • main [default: true]
      • head [default: false]
      • mirror [default: false]
      • logging [default: false]
      • display [default: true]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand-v2]
      • button_toggle [default: true]
  • sample/spacenav/baxter/baxter_spacenav_gazebo.launch
      • main [default: true]
      • button_toggle [default: true]
      • display [default: true]
  • sample/spacenav/jaxon/jaxon_spacenav.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
  • sample/spacenav/jaxon/jaxon_spacenav_choreonoid.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
  • sample/spacenav/pr2/pr2_spacenav.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
      • kinfu [default: false]
      • display [default: true]
  • sample/spacenav/pr2/pr2_spacenav_gazebo.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
      • display [default: true]
  • launch/tablis/tablis_bridge_leader.launch
      • filtered [default: false]
  • launch/tablis/tablis_bridge_follower.launch
  • launch/dragon/dragon_teleop_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: true]
      • device [default: spacenav]
      • head [default: false]
      • mirror [default: false]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/dragon/dragon_teleop.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: true]
      • device [default: spacenav]
      • head [default: false]
      • mirror [default: false]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/baxter/baxter_teleop_display.launch
      • head [default: true]
      • respeaker [default: true]
      • mirror [default: false]
      • republish [default: false]
      • logging [default: true]
      • rqt_gui [default: true]
      • home_dir [default: $(env HOME)]
      • compress [default: false] — whether compress rosbag or not.
      • main_name [default: /baxter_teleop_main]
      • camera_ns [default: realsense_torso]
      • spherical_camera_ns [default: kodak_head]
      • spherical_stereo [default: true]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • hmd_left_image [default: /virtual_camera/left/rviz_image]
      • hmd_right_image [default: /virtual_camera/right/rviz_image]
      • REALSENSE_IMAGE_TYPE [default: x264]
      • REALSENSE_DEPTH_TYPE [default: compressedDepth]
      • SPHERICAL_IMAGE_TYPE [default: x264]
      • SPHERICAL_STEREO_IMAGE_TYPE [default: x264]
  • launch/baxter/baxter_tabletop_object_detector.launch
      • input_cloud
      • input_image
      • camera_frame_id
      • manager
      • launch_transformable_server [default: true]
      • clip [default: true]
  • launch/baxter/baxter_teleop.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: false]
      • tablis [default: false]
      • device [default: vive]
      • head [default: true]
      • respeaker [default: true]
      • mirror [default: false]
      • logging [default: true]
      • twitter [default: true]
      • debug [default: false]
      • home_dir [default: $(env HOME)]
      • mask_rcnn [default: false]
      • display [default: true]
      • custom_xdisplay [default: true]
      • launch_baxter [default: true]
      • launch_xdisplay [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • republish [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
      • arm_interpolation [default: bezier_with_velocity]
      • arm_control_mode [default: velocity]
      • moveit [default: false]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • hmd_left_image [default: /virtual_camera/left/rviz_image]
      • hmd_right_image [default: /virtual_camera/right/rviz_image]
  • launch/baxter/baxter_rosbag_record.launch
      • output_prefix [default: baxter]
      • compress [default: false] — whether compress rosbag or not.
      • camera_ns [default: realsense_torso]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
  • launch/baxter/baxter_realsense_torso.launch
      • launch_transformable_server [default: true]
      • launch_tabletop_detector [default: false]
      • launch_grasp_mask_rcnn [default: false]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • camera_frame_id [default: $(arg camera_ns)_color_optical_frame]
      • manager [default: $(arg camera_ns)_camera_manager]
      • input_cloud [default: /$(arg camera_ns)/depth_registered/quarter/points]
      • input_image [default: /$(arg camera_ns)/depth_registered/quarter/image]
  • launch/baxter/baxter_logging.launch
      • twitter [default: true]
      • influxdb [default: true]
      • debug [default: false]
      • camera [default: true]
      • camera_ns [default: realsense_torso]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • twitter_image_topics [default: /$(arg camera_ns)/color/image_rect_color]
      • home_dir [default: $(env HOME)]
      • compress [default: false] — whether compress rosbag or not.
      • position_diff_threshold [default: 0.01]
  • launch/baxter/baxter.launch
      • head [default: true]
      • respeaker [default: true]
      • logging [default: true]
      • twitter [default: true]
      • influxdb [default: true]
      • debug [default: false]
      • home_dir [default: $(env HOME)]
      • mask_rcnn [default: false]
      • custom_xdisplay [default: true]
      • launch_xdisplay [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • launch_tabletop_detector [default: false]
      • launch_grasp_mask_rcnn [default: false]
      • arm_interpolation [default: bezier_with_velocity]
      • arm_control_mode [default: velocity]
      • moveit [default: false]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • xdisplay_max_width [default: 1024]
      • xdisplay_max_width [default: 1920]
      • xdisplay_max_height [default: 600]
      • xdisplay_max_height [default: 1200]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
  • launch/baxter/baxter_db_client.launch
      • camera [default: true]
      • camera_ns [default: realsense_torso]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • output [default: screen]
      • log_rate [default: 5.0]
      • respawn [default: true]
      • enable_monitor [default: false]
      • vital_check [default: true]
      • debug [default: false]
  • launch/baxter/baxter_rosbag_play.launch
      • rosbag
      • camera_ns [default: realsense_torso]
      • gui [default: true]
      • loop [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • manager [default: rosbag_play_nodelet_manager]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • left_electric_gripper [default: $(eval arg('lgripper_type') == 'parallel')]
      • right_electric_gripper [default: $(eval arg('rgripper_type') == 'parallel')]
  • launch/baxter/baxter_grasp_mask_rcnn.launch
      • input_image
      • input_cloud
      • manager
      • sampling [default: false]
      • data_collection [default: true]
      • target_grasp [default: false]
      • model_file [default: $(find dualarm_grasping)/models/dualarm_occluded_grasp/self_anno/20181227_model_iter_4559.npz]
      • config_yaml [default: $(find dualarm_grasping)/models/dualarm_occluded_grasp/self_anno/20181227_params.yaml]
      • target_yaml [default: $(find eus_teleop)/config/baxter/grasp_mask_rcnn_target_names.yaml]
      • label_yaml [default: $(find dualarm_grasping)/yaml/dualarm_occluded_grasping_label_names.yaml]
  • launch/baxter/baxter_teleop_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: false]
      • tablis [default: false]
      • device [default: vive]
      • head [default: false]
      • mirror [default: false]
      • display [default: true]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/baxter/baxter_visualization.launch
  • launch/jaxon/jaxon_teleop.launch
      • main [default: true]
      • vive [default: false]
      • spacenav [default: true]
      • device [default: spacenav]
      • head [default: false]
      • mirror [default: false]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/jaxon/jaxon_teleop_choreonoid.launch
      • main [default: true]
      • vive [default: false]
      • spacenav [default: true]
      • device [default: spacenav]
      • head [default: false]
      • mirror [default: false]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/include/elp_usb.launch
      • camera_name [default: elp_head]
      • index [default: 0]
      • machine [default: localhost]
      • load_machinepath [default: false]
      • machinepath [default: false]
  • launch/include/audio_play.launch
      • audio_ns [default: remote_audio]
      • format [default: wave]
      • dst [default: alsasink]
      • do_timestamp [default: false]
  • launch/include/rqt_gui.launch
  • launch/include/kinfu.launch
      • CAMERA_INFO
      • IMAGE_DEPTH
      • IMAGE_COLOR
  • launch/include/vive.launch
      • hmd_left_image [default: /virtual_camera/left/rviz_image]
      • hmd_right_image [default: /virtual_camera/right/rviz_image]
  • launch/include/mask_rcnn.launch
      • INPUT_IMAGE
      • gpu [default: 0]
  • launch/include/insta360_air.launch
      • camera_name [default: insta_head]
  • launch/include/respeaker.launch
  • launch/include/realsense.launch
      • camera_ns
      • manager
      • publish_tf
      • color_width
      • color_height
      • depth_width
      • depth_height
  • launch/include/realsense_l515.launch
      • camera_ns [default: realsense]
      • manager [default: realsense_camera_manager]
      • publish_tf [default: false]
      • color_width [default: 960]
      • color_height [default: 540]
      • depth_width [default: 640]
      • depth_height [default: 480]
  • launch/include/realsense_d435.launch
      • camera_ns [default: realsense]
      • manager [default: realsense_camera_manager]
      • publish_tf [default: false]
      • color_width [default: 640]
      • color_height [default: 480]
      • depth_width [default: 640]
      • depth_height [default: 480]
  • launch/include/kodak_pixpro.launch
      • camera_name [default: kodak_head]
  • launch/pr2/pr2_logging.launch
      • CAMERA_INFO
      • RGB_CAMERA_INFO
      • COMP_IMAGE_COLOR
      • COMP_IMAGE_DEPTH
      • home_dir [default: $(env HOME)]
      • compress [default: false] — whether compress rosbag or not.
  • launch/pr2/pr2_teleop_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: false]
      • tablis [default: false]
      • device [default: vive]
      • head [default: false]
      • mirror [default: false]
      • display [default: true]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/pr2/pr2_teleop.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: false]
      • tablis [default: false]
      • device [default: vive]
      • head [default: true]
      • respeaker [default: true]
      • mirror [default: false]
      • logging [default: true]
      • kinfu [default: false]
      • display [default: true]
      • home_dir [default: $(env HOME)]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
      • hmd_left_image [default: /virtual_camera/left/rviz_image]
      • hmd_right_image [default: /virtual_camera/right/rviz_image]
      • DECOMP_CAMERA_INFO [default: /kinect_head_decompressed/depth_registered/camera_info]
      • DECOMP_RGB_CAMERA_INFO [default: /kinect_head_decompressed/rgb/camera_info]
      • DECOMP_IMAGE_DEPTH [default: /kinect_head_decompressed/depth_registered/image_rect]
      • DECOMP_IMAGE_COLOR [default: /kinect_head_decompressed/rgb/image_rect_color]
      • DECOMP_POINTS [default: /kinect_head_decompressed/depth_registered/points]
      • CAMERA_INFO [default: /kinect_head/depth_registered/camera_info]
      • RGB_CAMERA_INFO [default: /kinect_head/rgb/camera_info]
      • IMAGE_COLOR [default: /kinect_head/rgb/image_rect_color]
      • IMAGE_DEPTH [default: /kinect_head/depth_registered/image_rect]
      • IMAGE_DEPTH_TYPE [default: compressedDepth]
      • COMP_IMAGE_COLOR [default: /kinect_head/rgb/image_rect_color/compressed]
      • COMP_IMAGE_DEPTH [default: /kinect_head/depth_registered/image_rect/compressedDepth]
  • launch/pr2/pr2_teleop_display.launch
      • kinfu [default: false]
      • respeaker [default: true]
      • DECOMP_CAMERA_INFO [default: /kinect_head_decompressed/depth_registered/camera_info]
      • DECOMP_RGB_CAMERA_INFO [default: /kinect_head_decompressed/rgb/camera_info]
      • DECOMP_IMAGE_DEPTH [default: /kinect_head_decompressed/depth_registered/image_rect]
      • DECOMP_IMAGE_COLOR [default: /kinect_head_decompressed/rgb/image_rect_color]
      • DECOMP_POINTS [default: /kinect_head_decompressed/depth_registered/points]
      • CAMERA_INFO
      • RGB_CAMERA_INFO
      • IMAGE_COLOR
      • IMAGE_DEPTH
      • IMAGE_DEPTH_TYPE

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eus_teleop at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 0.1.17
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jsk-ros-pkg/jsk_control.git
VCS Type git
VCS Version master
Last Updated 2024-01-22
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

The eus_teleop package

Additional Links

No additional links.

Maintainers

  • Shingo Kitagawa

Authors

  • Shingo Kitagawa

eus_teleop

main linter

Multi robot teleoperation system with Vive/SpaceNav/Oculus/Tablis Cockpit

Note

This package depends on these branches below:

Tested Environment

Build environment

Ubuntu 16.04 + ROS Kinetic

  • NVidia driver: 396.37
  • OpenVR: 1.3.22
  • Steam VR: 1.6.10

Ubuntu 18.04 + ROS Melodic

  • NVidia driver: 390.116
  • OpenVR: 1.3.22
  • Steam VR: 1.6.10

User interface devices

Vive

  • Arm motion tracking
  • Controller button interface
  • HMD visual interface
  • Vibration interface
  • Sound interface

Tablis

  • Arm motion tracking
  • Controller button interface
  • HMD visual interface
  • Vibration interface
  • Sound interface

SpaceNav (3D mouse)

  • Arm motion tracking
  • Controller button interface

Oculus

  • Arm motion tracking
  • Controller button interface
  • HMD visual interface
  • Vibration interface
  • Sound interface

Installation

Dependency installation

Install dependencies (for Vive)

sudo apt-get install --reinstall xserver-xorg-video-intel-hwe-18.04 libgl1-mesa-glx libgl1-mesa-dri xserver-xorg-core
sudo dpkg-reconfigure xserver-xorg

Install nvidia-driver (for Vive)

# for melodic, run command below
sudo apt install nvidia-driver-390
# for kinetic, install cuda-9.2 deb (local) manually and run command below.
sudo apt install nvidia-396

Install OpenVR, steam and steamVR (for Vive)

Follow here

Install kodak 4k pro camera and ELP usb camera udev (for Baxter)

sudo cp udev/99-kodak.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules && sudo udevadm trigger

ROS Workspace build

Build jsk_apc workspace (Only for baxter users)

source /opt/ros/$ROS_DISTRO/setup.bash
mkdir ~/jsk_apc_ws/src -p
cd ~/jsk_apc_ws/src
wstool init . https://raw.githubusercontent.com/start-jsk/jsk_apc/master/fc.rosinstall.${ROS_DISTRO}
wstool up
rosdep install -y -r --from-paths .

cd ~/jsk_apc_ws 
catkin config
catkin build

Build eus_teleop workspace

source /opt/ros/$ROS_DISTRO/setup.bash
mkdir ~/teleop_ws/src -p
cd ~/teleop_ws/src
wstool init . https://raw.githubusercontent.com/knorth55/eus_teleop/master/fc.rosinstall

# Only for baxter users
wstool merge https://raw.githubusercontent.com/knorth55/eus_teleop/master/baxter.rosinstall
wstool merge https://raw.githubusercontent.com/knorth55/eus_teleop/master/baxter.rosinstall.$ROS_DISTRO

# Only for dragon users
wstool merge https://raw.githubusercontent.com/knorth55/eus_teleop/master/dragon.rosinstall

wstool up
rosdep install --ignore-src --from-path . -y -r -i

# Only for baxter users
source ~/jsk_apc_ws/devel/setup.bash

cd ~/teleop_ws
catkin config
catkin build

How to start

Start procedure

  • Connect Vive HMD and Lighthouse and power on the controller.
  • Place Lighthouse B in front of you.
  • Start one of launch files below.
  • If you don’t use HMD, press Calibrate button and do arm calibration.
  • Press Enable button in GUI to start teleoperation.

Arm calibration (Only for no HMD mode)

The arm calibration is required for no HMD mode in order to measure your position and your arm length.

  • Press Calibrate l/rarm button in GUI
  • Listen to the voice instruction.
  • Stretch your left/right arm and Press Trigger after the first instruction.
  • Listen to the voice instruction again.
  • Fold your left/right arm and Press Trigger after the second instruction.
  • If calibration failed, please try again.

PR2 + Vive

https://user-images.githubusercontent.com/9300063/213145161-4b2acb89-9545-460a-b5cc-d05a111a187b.mp4

PR2 + Vive in JSK 73B2 or 610

rossetip
rossetmaster pr1040
# HMD mode
roslaunch eus_teleop pr2_vive.launch
# No HMD mode
roslaunch eus_teleop pr2_vive.launch head:=false

PR2 + Vive in Gazebo

roslaunch pr2_gazebo pr2_empty_world.launch
roslaunch eus_teleop pr2_vive_gazebo.launch

PR2 + Tablis

https://user-images.githubusercontent.com/9300063/208720417-176d698e-3789-42a8-931f-2a9fc9e062a0.mp4

PR2 + Tablis in JSK 73B2 or 610

rossetip
rossetmaster pr1040
roslaunch eus_teleop pr2_tablis.launch

PR2 + Tablis in Gazebo

Launch Tablis in Choreonoid
roscd eus_teleop/scripts/tablis
./start-tablis-sim.sh

roscd eus_teleop/scripts/tablis
ipython -i tablis_setup.py
hcf.servoOn()
hcf.hc_svc.startHapticsController()

Launch bridge
roscd eus_teleop/scripts/tablis
./start-bridge-sim.sh

Launch PR2 in Gazebo
roslaunch pr2_gazebo pr2_empty_world.launch
roslaunch eus_teleop pr2_tablis_gazebo.launch

PR2 + SpaceNav

https://user-images.githubusercontent.com/9300063/213137459-ce5f7075-acee-4a47-934a-97a4296fdc49.mp4

PR2 + SpaceNav in JSK 73B2

rossetip
rossetmaster pr1040
roslaunch eus_teleop pr2_spacenav.launch

PR2 + SpaceNav in Gazebo

roslaunch pr2_gazebo pr2_empty_world.launch
roslaunch eus_teleop pr2_spacenav_gazebo.launch

Baxter + Vive

https://user-images.githubusercontent.com/9300063/213144997-0d224d5c-b462-43a7-b759-0233fff41d94.mp4

Baxter + Vive in JSK 73B2

rossetip
rossetmaster baxter
# HMD mode
roslaunch eus_teleop baxter_vive.launch
# No HMD mode
roslaunch eus_teleop baxter_vive.launch head:=false

Baxter + Vive in Gazebo

roslaunch baxter_gazebo baxter_world.launch
roslaunch eus_teleop baxter_vive_gazebo.launch

Baxter + Tablis

https://user-images.githubusercontent.com/9300063/208720482-b7ef0abb-e948-448c-be51-521c0c7af8a2.mp4

Baxter + Tablis in JSK 73B2 or 610

rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_tablis.launch

Baxter + Tablis in Gazebo

Launch Tablis in Choreonoid
roscd eus_teleop/scripts/tablis
./start-tablis-sim.sh

roscd eus_teleop/scripts/tablis
ipython -i tablis_setup.py
hcf.servoOn()
hcf.hc_svc.startHapticsController()

Launch bridge
roscd eus_teleop/scripts/tablis
./start-bridge-sim.sh

Launch Baxter in Choreonoid
roslaunch baxter_gazebo baxter_world.launch
roslaunch eus_teleop baxter_tablis_gazebo.launch

Baxter + SpaceNav

Baxter + SpaceNav in JSK 73B2

rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_spacenav.launch

Baxter + SpaceNav in Gazebo

roslaunch baxter_gazebo baxter_world.launch
roslaunch eus_teleop baxter_spacenav_gazebo.launch

Baxter + MoveIt!

Real Robot in JSK 73B2

rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_moveit.launch

Dragon + SpaceNav

https://user-images.githubusercontent.com/9300063/210754022-7df92fd5-4875-4465-9738-7efdf5649093.mp4

Dragon + SpaceNav in Gazebo

roslaunch dragon bringup.launch simulation:=true real_machine:=false headless:=false
roslaunch eus_teleop dragon_spacenav_gazebo.launch

JAXON + SpaceNav

https://user-images.githubusercontent.com/9300063/212047815-e1f2a5ed-cf51-4782-b892-66752effe41d.mp4

JAXON + SpaceNav in Choreonoid

Launch JAXON in Choreonoid
roscd eus_teleop/scripts/jaxon
./start-jaxon_with_rhp3hand-sim.sh

roscd eus_teleop/scripts/jaxon
ipython -i jaxon_with_rhp3hand_setup.py
hcf.ast_svc.startAutoBalancer()
hcf.ast_svc.startStabilizer()
hcf.ast_svc.startWholeBodyMasterSlave()

Launch eus_vive for SpaceNav
roslaunch eus_teleop jaxon_spacenav_choreonoid.launch

JAXON + Tablis

https://user-images.githubusercontent.com/9300063/212932317-407102d1-093f-4729-b00a-f367bbbcb40d.mp4

JAXON + Tablis in Choreonoid

Launch Tablis in Choreonoid
roscd eus_teleop/scripts/tablis
./start-tablis-sim.sh

roscd eus_teleop/scripts/tablis
ipython -i tablis_setup.py
hcf.servoOn()
hcf.hc_svc.startHapticsController()

Launch JAXON in Choreonoid
roscd eus_teleop/scripts/jaxon
./start-jaxon_with_rhp3hand-sim.sh

roscd eus_teleop/scripts/jaxon
ipython -i jaxon_with_rhp3hand_setup.py
hcf.ast_svc.startAutoBalancer()
hcf.ast_svc.startStabilizer()
hcf.ast_svc.startWholeBodyMasterSlave()

Launch bridge and wbms core
roscd eus_teleop/scripts/jaxon
./start-jaxon-eus-teleop-sim.sh

Launch eus_vive for Tablis
roslaunch eus_teleop jaxon_tablis_choreonoid.launch

Demo & Experiments

Miraikan Demo 2019/08/23-24

rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_vive_mirror.launch

Miraikan Demo 2020/09/11-13

Robot control PC (Robot side)
rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_remote.launch

Vive control PC (Pilot side)
rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_vive_remote.launch

Visualization, display and feedback PC (Pilot side)
rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_display_remote.launch

How to use Vive controller

Vive controller

PR2

Button Usage
1 / Menu Control toggle: base/arm (Default: base)
3 / Stream Menu Steam Menu
8 / Grip Not used

Arm mode

You can enable arm mode of right and left arm separately.

Command Usage
7 / Trigger Gripper toggle: open/close in Toggle grasp mode (Default: open)
7 / Trigger Gripper toggle: open only when trigger is pressed in Hold grasp mode
Controller pose robot end effector’s pose

Base mode

Base mode is enabled when both arms are disabled in Arm mode.

Command Usage
2 / Trackpad Torso control: right: down / left: up
2 / Trackpad + 7 / Trigger (right) Safe base control: right: x, y / left: w
2 / Trackpad + 7 / Trigger (right + left) Unsafe base control: right: x, y / left: w

Baxter

Button Usage
2 / Trackpad Control toggle: stop / arm (Default: stop)
3 / Stream Menu Steam Menu
8 / Grip Not used

Arm mode

You can enable arm mode of right and left arm separately.

Command Usage
7 / Trigger Gripper toggle: open/close (Default: open)
Controller pose robot end effector’s pose

How to use GUI control

Teleoperation control buttons

Button Usage
Reset Diable and reset robot to initial posture
Enable Enable robot
Disable Disable robot
Calibrate larm/rarm Calibrate with left/right arm

Arm & Gripper control buttons

Button Usage
Reset larm/rarm Reset only left/right arm
Enable larm/rarm Enable only left/right arm
Disable larm/rarm Disable only left/right arm
Start grasp lgripper/rgripper Start grasp only left/right gripper
Stop grasp lgripper/rgripper Stop grasp only left/right gripper
Toggle grasp mode Change to Toggle grasp mode
Hold grasp mode Change to Hold grasp mode

Tips

Baxter Network Configuration

Open Field Service Menu and change network configuration

VPNC Install

sudo apt install libgcrypt20-dev libgnutls28-dev
git clone https://github.com/streambinder/vpnc.git
cd vpnc
git checkout 1cf24ed6aa4a04b4b01cc9ebfacbad723eed04f5
make
sudo make install
cd ..
git clone git://git.infradead.org/users/dwmw2/vpnc-scripts.git
cd vpnc-scripts
sudo cp vpnc-script /etc/vpnc

VPNC Command for Fortigate

sudo vpnc --local-port 0 --gateway <gateway> --id ipsecvpn --username <username> --pfs dh5 --dh dh5 --auth-mode psk --no-detach --vendor fortigate --dh dh5

Demo Video

PR2 Fridge demo

Baxter APC demo

CHANGELOG

Changelog for package eus_teleop

0.1.17 (2023-05-28)

  • add eus_teleop
  • Contributors: Shingo Kitagawa

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

  • sample/tablis/baxter/baxter_tablis_gazebo.launch
      • main [default: true]
      • vive_set [default: default]
      • head [default: true]
      • button_toggle [default: true]
      • mirror [default: false]
      • display [default: true]
  • sample/tablis/baxter/baxter_tablis.launch
      • main [default: true]
      • vive_set [default: default]
      • head [default: true]
      • mirror [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • republish [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/tablis/baxter/baxter_tablis_remote.launch
      • main [default: true]
      • vive [default: true]
      • head [default: true]
      • mirror [default: false]
      • vive_set [default: default]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/tablis/jaxon/jaxon_tablis.launch
      • main [default: true]
      • button_toggle [default: true]
  • sample/tablis/jaxon/jaxon_tablis_choreonoid.launch
      • main [default: true]
      • button_toggle [default: true]
  • sample/tablis/pr2/pr2_tablis.launch
      • main [default: true]
      • vive_set [default: default]
      • head [default: true]
      • button_toggle [default: true]
      • kinfu [default: false]
      • mirror [default: false]
      • display [default: true]
  • sample/tablis/pr2/pr2_tablis_gazebo.launch
      • main [default: true]
      • vive_set [default: default]
      • head [default: true]
      • button_toggle [default: true]
      • mirror [default: false]
      • display [default: true]
  • sample/vive/baxter/baxter_vive_remote.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • mirror [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/vive/baxter/baxter_vive_mirror.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • republish [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/vive/baxter/baxter_vive.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • mirror [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • republish [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/vive/baxter/baxter_vive_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • mirror [default: false]
      • button_toggle [default: true]
      • display [default: true]
  • sample/vive/pr2/pr2_vive_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • button_toggle [default: true]
      • display [default: true]
  • sample/vive/pr2/pr2_vive.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • button_toggle [default: true]
      • kinfu [default: false]
      • display [default: true]
  • sample/common/baxter_remote.launch
      • head [default: true]
      • respeaker [default: true]
      • logging [default: true]
      • twitter [default: true]
      • influxdb [default: true]
      • debug [default: false]
      • home_dir [default: $(env HOME)]
      • mask_rcnn [default: false]
      • custom_xdisplay [default: true]
      • launch_xdisplay [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • arm_interpolation [default: bezier_with_velocity]
      • arm_control_mode [default: velocity]
      • moveit [default: false]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
  • sample/common/baxter_display_remote.launch
      • head [default: false]
      • respeaker [default: true]
      • mirror [default: false]
      • republish [default: true]
      • logging [default: true]
      • rqt_gui [default: true]
      • camera_ns [default: realsense_torso]
      • spherical_camera_ns [default: kodak_head]
      • spherical_stereo [default: true]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
  • sample/common/baxter_moveit_remote.launch
      • head [default: true]
      • respeaker [default: true]
      • logging [default: true]
      • twitter [default: true]
      • influxdb [default: true]
      • debug [default: false]
      • home_dir [default: $(env HOME)]
      • mask_rcnn [default: false]
      • custom_xdisplay [default: true]
      • launch_xdisplay [default: false]
      • realsense_camera [default: true]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • arm_interpolation [default: minjerk]
      • arm_control_mode [default: position_w_id]
      • moveit [default: true]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • gui [default: true]
      • launch_tabletop_detector [default: true]
      • launch_grasp_mask_rcnn [default: false]
  • sample/other/baxter/baxter_moveit.launch
      • realsense_camera [default: true]
      • spherical_camera [default: false]
      • logging [default: true]
      • arm_interpolation [default: minjerk]
      • arm_control_mode [default: position_w_id]
      • moveit [default: true]
      • gui [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • launch_tabletop_detector [default: true]
  • sample/oculus/baxter/baxter_oculus_gazebo.launch
      • main [default: true]
      • button_toggle [default: true]
      • display [default: true]
  • sample/oculus/baxter/baxter_oculus.launch
      • main [default: true]
      • head [default: false]
      • mirror [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/oculus/pr2/pr2_oculus.launch
      • main [default: true]
      • kinfu [default: false]
      • button_toggle [default: true]
      • display [default: true]
  • sample/oculus/pr2/pr2_oculus_gazebo.launch
      • main [default: true]
      • button_toggle [default: true]
      • display [default: true]
  • sample/spacenav/dragon/dragon_spacenav.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
  • sample/spacenav/dragon/dragon_spacenav_gazebo.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
  • sample/spacenav/baxter/baxter_spacenav.launch
      • main [default: true]
      • head [default: false]
      • mirror [default: false]
      • logging [default: false]
      • display [default: true]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand-v2]
      • button_toggle [default: true]
  • sample/spacenav/baxter/baxter_spacenav_gazebo.launch
      • main [default: true]
      • button_toggle [default: true]
      • display [default: true]
  • sample/spacenav/jaxon/jaxon_spacenav.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
  • sample/spacenav/jaxon/jaxon_spacenav_choreonoid.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
  • sample/spacenav/pr2/pr2_spacenav.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
      • kinfu [default: false]
      • display [default: true]
  • sample/spacenav/pr2/pr2_spacenav_gazebo.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
      • display [default: true]
  • launch/tablis/tablis_bridge_leader.launch
      • filtered [default: false]
  • launch/tablis/tablis_bridge_follower.launch
  • launch/dragon/dragon_teleop_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: true]
      • device [default: spacenav]
      • head [default: false]
      • mirror [default: false]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/dragon/dragon_teleop.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: true]
      • device [default: spacenav]
      • head [default: false]
      • mirror [default: false]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/baxter/baxter_teleop_display.launch
      • head [default: true]
      • respeaker [default: true]
      • mirror [default: false]
      • republish [default: false]
      • logging [default: true]
      • rqt_gui [default: true]
      • home_dir [default: $(env HOME)]
      • compress [default: false] — whether compress rosbag or not.
      • main_name [default: /baxter_teleop_main]
      • camera_ns [default: realsense_torso]
      • spherical_camera_ns [default: kodak_head]
      • spherical_stereo [default: true]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • hmd_left_image [default: /virtual_camera/left/rviz_image]
      • hmd_right_image [default: /virtual_camera/right/rviz_image]
      • REALSENSE_IMAGE_TYPE [default: x264]
      • REALSENSE_DEPTH_TYPE [default: compressedDepth]
      • SPHERICAL_IMAGE_TYPE [default: x264]
      • SPHERICAL_STEREO_IMAGE_TYPE [default: x264]
  • launch/baxter/baxter_tabletop_object_detector.launch
      • input_cloud
      • input_image
      • camera_frame_id
      • manager
      • launch_transformable_server [default: true]
      • clip [default: true]
  • launch/baxter/baxter_teleop.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: false]
      • tablis [default: false]
      • device [default: vive]
      • head [default: true]
      • respeaker [default: true]
      • mirror [default: false]
      • logging [default: true]
      • twitter [default: true]
      • debug [default: false]
      • home_dir [default: $(env HOME)]
      • mask_rcnn [default: false]
      • display [default: true]
      • custom_xdisplay [default: true]
      • launch_baxter [default: true]
      • launch_xdisplay [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • republish [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
      • arm_interpolation [default: bezier_with_velocity]
      • arm_control_mode [default: velocity]
      • moveit [default: false]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • hmd_left_image [default: /virtual_camera/left/rviz_image]
      • hmd_right_image [default: /virtual_camera/right/rviz_image]
  • launch/baxter/baxter_rosbag_record.launch
      • output_prefix [default: baxter]
      • compress [default: false] — whether compress rosbag or not.
      • camera_ns [default: realsense_torso]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
  • launch/baxter/baxter_realsense_torso.launch
      • launch_transformable_server [default: true]
      • launch_tabletop_detector [default: false]
      • launch_grasp_mask_rcnn [default: false]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • camera_frame_id [default: $(arg camera_ns)_color_optical_frame]
      • manager [default: $(arg camera_ns)_camera_manager]
      • input_cloud [default: /$(arg camera_ns)/depth_registered/quarter/points]
      • input_image [default: /$(arg camera_ns)/depth_registered/quarter/image]
  • launch/baxter/baxter_logging.launch
      • twitter [default: true]
      • influxdb [default: true]
      • debug [default: false]
      • camera [default: true]
      • camera_ns [default: realsense_torso]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • twitter_image_topics [default: /$(arg camera_ns)/color/image_rect_color]
      • home_dir [default: $(env HOME)]
      • compress [default: false] — whether compress rosbag or not.
      • position_diff_threshold [default: 0.01]
  • launch/baxter/baxter.launch
      • head [default: true]
      • respeaker [default: true]
      • logging [default: true]
      • twitter [default: true]
      • influxdb [default: true]
      • debug [default: false]
      • home_dir [default: $(env HOME)]
      • mask_rcnn [default: false]
      • custom_xdisplay [default: true]
      • launch_xdisplay [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • launch_tabletop_detector [default: false]
      • launch_grasp_mask_rcnn [default: false]
      • arm_interpolation [default: bezier_with_velocity]
      • arm_control_mode [default: velocity]
      • moveit [default: false]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • xdisplay_max_width [default: 1024]
      • xdisplay_max_width [default: 1920]
      • xdisplay_max_height [default: 600]
      • xdisplay_max_height [default: 1200]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
  • launch/baxter/baxter_db_client.launch
      • camera [default: true]
      • camera_ns [default: realsense_torso]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • output [default: screen]
      • log_rate [default: 5.0]
      • respawn [default: true]
      • enable_monitor [default: false]
      • vital_check [default: true]
      • debug [default: false]
  • launch/baxter/baxter_rosbag_play.launch
      • rosbag
      • camera_ns [default: realsense_torso]
      • gui [default: true]
      • loop [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • manager [default: rosbag_play_nodelet_manager]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • left_electric_gripper [default: $(eval arg('lgripper_type') == 'parallel')]
      • right_electric_gripper [default: $(eval arg('rgripper_type') == 'parallel')]
  • launch/baxter/baxter_grasp_mask_rcnn.launch
      • input_image
      • input_cloud
      • manager
      • sampling [default: false]
      • data_collection [default: true]
      • target_grasp [default: false]
      • model_file [default: $(find dualarm_grasping)/models/dualarm_occluded_grasp/self_anno/20181227_model_iter_4559.npz]
      • config_yaml [default: $(find dualarm_grasping)/models/dualarm_occluded_grasp/self_anno/20181227_params.yaml]
      • target_yaml [default: $(find eus_teleop)/config/baxter/grasp_mask_rcnn_target_names.yaml]
      • label_yaml [default: $(find dualarm_grasping)/yaml/dualarm_occluded_grasping_label_names.yaml]
  • launch/baxter/baxter_teleop_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: false]
      • tablis [default: false]
      • device [default: vive]
      • head [default: false]
      • mirror [default: false]
      • display [default: true]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/baxter/baxter_visualization.launch
  • launch/jaxon/jaxon_teleop.launch
      • main [default: true]
      • vive [default: false]
      • spacenav [default: true]
      • device [default: spacenav]
      • head [default: false]
      • mirror [default: false]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/jaxon/jaxon_teleop_choreonoid.launch
      • main [default: true]
      • vive [default: false]
      • spacenav [default: true]
      • device [default: spacenav]
      • head [default: false]
      • mirror [default: false]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/include/elp_usb.launch
      • camera_name [default: elp_head]
      • index [default: 0]
      • machine [default: localhost]
      • load_machinepath [default: false]
      • machinepath [default: false]
  • launch/include/audio_play.launch
      • audio_ns [default: remote_audio]
      • format [default: wave]
      • dst [default: alsasink]
      • do_timestamp [default: false]
  • launch/include/rqt_gui.launch
  • launch/include/kinfu.launch
      • CAMERA_INFO
      • IMAGE_DEPTH
      • IMAGE_COLOR
  • launch/include/vive.launch
      • hmd_left_image [default: /virtual_camera/left/rviz_image]
      • hmd_right_image [default: /virtual_camera/right/rviz_image]
  • launch/include/mask_rcnn.launch
      • INPUT_IMAGE
      • gpu [default: 0]
  • launch/include/insta360_air.launch
      • camera_name [default: insta_head]
  • launch/include/respeaker.launch
  • launch/include/realsense.launch
      • camera_ns
      • manager
      • publish_tf
      • color_width
      • color_height
      • depth_width
      • depth_height
  • launch/include/realsense_l515.launch
      • camera_ns [default: realsense]
      • manager [default: realsense_camera_manager]
      • publish_tf [default: false]
      • color_width [default: 960]
      • color_height [default: 540]
      • depth_width [default: 640]
      • depth_height [default: 480]
  • launch/include/realsense_d435.launch
      • camera_ns [default: realsense]
      • manager [default: realsense_camera_manager]
      • publish_tf [default: false]
      • color_width [default: 640]
      • color_height [default: 480]
      • depth_width [default: 640]
      • depth_height [default: 480]
  • launch/include/kodak_pixpro.launch
      • camera_name [default: kodak_head]
  • launch/pr2/pr2_logging.launch
      • CAMERA_INFO
      • RGB_CAMERA_INFO
      • COMP_IMAGE_COLOR
      • COMP_IMAGE_DEPTH
      • home_dir [default: $(env HOME)]
      • compress [default: false] — whether compress rosbag or not.
  • launch/pr2/pr2_teleop_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: false]
      • tablis [default: false]
      • device [default: vive]
      • head [default: false]
      • mirror [default: false]
      • display [default: true]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/pr2/pr2_teleop.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: false]
      • tablis [default: false]
      • device [default: vive]
      • head [default: true]
      • respeaker [default: true]
      • mirror [default: false]
      • logging [default: true]
      • kinfu [default: false]
      • display [default: true]
      • home_dir [default: $(env HOME)]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
      • hmd_left_image [default: /virtual_camera/left/rviz_image]
      • hmd_right_image [default: /virtual_camera/right/rviz_image]
      • DECOMP_CAMERA_INFO [default: /kinect_head_decompressed/depth_registered/camera_info]
      • DECOMP_RGB_CAMERA_INFO [default: /kinect_head_decompressed/rgb/camera_info]
      • DECOMP_IMAGE_DEPTH [default: /kinect_head_decompressed/depth_registered/image_rect]
      • DECOMP_IMAGE_COLOR [default: /kinect_head_decompressed/rgb/image_rect_color]
      • DECOMP_POINTS [default: /kinect_head_decompressed/depth_registered/points]
      • CAMERA_INFO [default: /kinect_head/depth_registered/camera_info]
      • RGB_CAMERA_INFO [default: /kinect_head/rgb/camera_info]
      • IMAGE_COLOR [default: /kinect_head/rgb/image_rect_color]
      • IMAGE_DEPTH [default: /kinect_head/depth_registered/image_rect]
      • IMAGE_DEPTH_TYPE [default: compressedDepth]
      • COMP_IMAGE_COLOR [default: /kinect_head/rgb/image_rect_color/compressed]
      • COMP_IMAGE_DEPTH [default: /kinect_head/depth_registered/image_rect/compressedDepth]
  • launch/pr2/pr2_teleop_display.launch
      • kinfu [default: false]
      • respeaker [default: true]
      • DECOMP_CAMERA_INFO [default: /kinect_head_decompressed/depth_registered/camera_info]
      • DECOMP_RGB_CAMERA_INFO [default: /kinect_head_decompressed/rgb/camera_info]
      • DECOMP_IMAGE_DEPTH [default: /kinect_head_decompressed/depth_registered/image_rect]
      • DECOMP_IMAGE_COLOR [default: /kinect_head_decompressed/rgb/image_rect_color]
      • DECOMP_POINTS [default: /kinect_head_decompressed/depth_registered/points]
      • CAMERA_INFO
      • RGB_CAMERA_INFO
      • IMAGE_COLOR
      • IMAGE_DEPTH
      • IMAGE_DEPTH_TYPE

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eus_teleop at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 0.1.17
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jsk-ros-pkg/jsk_control.git
VCS Type git
VCS Version master
Last Updated 2024-01-22
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

The eus_teleop package

Additional Links

No additional links.

Maintainers

  • Shingo Kitagawa

Authors

  • Shingo Kitagawa

eus_teleop

main linter

Multi robot teleoperation system with Vive/SpaceNav/Oculus/Tablis Cockpit

Note

This package depends on these branches below:

Tested Environment

Build environment

Ubuntu 16.04 + ROS Kinetic

  • NVidia driver: 396.37
  • OpenVR: 1.3.22
  • Steam VR: 1.6.10

Ubuntu 18.04 + ROS Melodic

  • NVidia driver: 390.116
  • OpenVR: 1.3.22
  • Steam VR: 1.6.10

User interface devices

Vive

  • Arm motion tracking
  • Controller button interface
  • HMD visual interface
  • Vibration interface
  • Sound interface

Tablis

  • Arm motion tracking
  • Controller button interface
  • HMD visual interface
  • Vibration interface
  • Sound interface

SpaceNav (3D mouse)

  • Arm motion tracking
  • Controller button interface

Oculus

  • Arm motion tracking
  • Controller button interface
  • HMD visual interface
  • Vibration interface
  • Sound interface

Installation

Dependency installation

Install dependencies (for Vive)

sudo apt-get install --reinstall xserver-xorg-video-intel-hwe-18.04 libgl1-mesa-glx libgl1-mesa-dri xserver-xorg-core
sudo dpkg-reconfigure xserver-xorg

Install nvidia-driver (for Vive)

# for melodic, run command below
sudo apt install nvidia-driver-390
# for kinetic, install cuda-9.2 deb (local) manually and run command below.
sudo apt install nvidia-396

Install OpenVR, steam and steamVR (for Vive)

Follow here

Install kodak 4k pro camera and ELP usb camera udev (for Baxter)

sudo cp udev/99-kodak.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules && sudo udevadm trigger

ROS Workspace build

Build jsk_apc workspace (Only for baxter users)

source /opt/ros/$ROS_DISTRO/setup.bash
mkdir ~/jsk_apc_ws/src -p
cd ~/jsk_apc_ws/src
wstool init . https://raw.githubusercontent.com/start-jsk/jsk_apc/master/fc.rosinstall.${ROS_DISTRO}
wstool up
rosdep install -y -r --from-paths .

cd ~/jsk_apc_ws 
catkin config
catkin build

Build eus_teleop workspace

source /opt/ros/$ROS_DISTRO/setup.bash
mkdir ~/teleop_ws/src -p
cd ~/teleop_ws/src
wstool init . https://raw.githubusercontent.com/knorth55/eus_teleop/master/fc.rosinstall

# Only for baxter users
wstool merge https://raw.githubusercontent.com/knorth55/eus_teleop/master/baxter.rosinstall
wstool merge https://raw.githubusercontent.com/knorth55/eus_teleop/master/baxter.rosinstall.$ROS_DISTRO

# Only for dragon users
wstool merge https://raw.githubusercontent.com/knorth55/eus_teleop/master/dragon.rosinstall

wstool up
rosdep install --ignore-src --from-path . -y -r -i

# Only for baxter users
source ~/jsk_apc_ws/devel/setup.bash

cd ~/teleop_ws
catkin config
catkin build

How to start

Start procedure

  • Connect Vive HMD and Lighthouse and power on the controller.
  • Place Lighthouse B in front of you.
  • Start one of launch files below.
  • If you don’t use HMD, press Calibrate button and do arm calibration.
  • Press Enable button in GUI to start teleoperation.

Arm calibration (Only for no HMD mode)

The arm calibration is required for no HMD mode in order to measure your position and your arm length.

  • Press Calibrate l/rarm button in GUI
  • Listen to the voice instruction.
  • Stretch your left/right arm and Press Trigger after the first instruction.
  • Listen to the voice instruction again.
  • Fold your left/right arm and Press Trigger after the second instruction.
  • If calibration failed, please try again.

PR2 + Vive

https://user-images.githubusercontent.com/9300063/213145161-4b2acb89-9545-460a-b5cc-d05a111a187b.mp4

PR2 + Vive in JSK 73B2 or 610

rossetip
rossetmaster pr1040
# HMD mode
roslaunch eus_teleop pr2_vive.launch
# No HMD mode
roslaunch eus_teleop pr2_vive.launch head:=false

PR2 + Vive in Gazebo

roslaunch pr2_gazebo pr2_empty_world.launch
roslaunch eus_teleop pr2_vive_gazebo.launch

PR2 + Tablis

https://user-images.githubusercontent.com/9300063/208720417-176d698e-3789-42a8-931f-2a9fc9e062a0.mp4

PR2 + Tablis in JSK 73B2 or 610

rossetip
rossetmaster pr1040
roslaunch eus_teleop pr2_tablis.launch

PR2 + Tablis in Gazebo

Launch Tablis in Choreonoid
roscd eus_teleop/scripts/tablis
./start-tablis-sim.sh

roscd eus_teleop/scripts/tablis
ipython -i tablis_setup.py
hcf.servoOn()
hcf.hc_svc.startHapticsController()

Launch bridge
roscd eus_teleop/scripts/tablis
./start-bridge-sim.sh

Launch PR2 in Gazebo
roslaunch pr2_gazebo pr2_empty_world.launch
roslaunch eus_teleop pr2_tablis_gazebo.launch

PR2 + SpaceNav

https://user-images.githubusercontent.com/9300063/213137459-ce5f7075-acee-4a47-934a-97a4296fdc49.mp4

PR2 + SpaceNav in JSK 73B2

rossetip
rossetmaster pr1040
roslaunch eus_teleop pr2_spacenav.launch

PR2 + SpaceNav in Gazebo

roslaunch pr2_gazebo pr2_empty_world.launch
roslaunch eus_teleop pr2_spacenav_gazebo.launch

Baxter + Vive

https://user-images.githubusercontent.com/9300063/213144997-0d224d5c-b462-43a7-b759-0233fff41d94.mp4

Baxter + Vive in JSK 73B2

rossetip
rossetmaster baxter
# HMD mode
roslaunch eus_teleop baxter_vive.launch
# No HMD mode
roslaunch eus_teleop baxter_vive.launch head:=false

Baxter + Vive in Gazebo

roslaunch baxter_gazebo baxter_world.launch
roslaunch eus_teleop baxter_vive_gazebo.launch

Baxter + Tablis

https://user-images.githubusercontent.com/9300063/208720482-b7ef0abb-e948-448c-be51-521c0c7af8a2.mp4

Baxter + Tablis in JSK 73B2 or 610

rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_tablis.launch

Baxter + Tablis in Gazebo

Launch Tablis in Choreonoid
roscd eus_teleop/scripts/tablis
./start-tablis-sim.sh

roscd eus_teleop/scripts/tablis
ipython -i tablis_setup.py
hcf.servoOn()
hcf.hc_svc.startHapticsController()

Launch bridge
roscd eus_teleop/scripts/tablis
./start-bridge-sim.sh

Launch Baxter in Choreonoid
roslaunch baxter_gazebo baxter_world.launch
roslaunch eus_teleop baxter_tablis_gazebo.launch

Baxter + SpaceNav

Baxter + SpaceNav in JSK 73B2

rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_spacenav.launch

Baxter + SpaceNav in Gazebo

roslaunch baxter_gazebo baxter_world.launch
roslaunch eus_teleop baxter_spacenav_gazebo.launch

Baxter + MoveIt!

Real Robot in JSK 73B2

rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_moveit.launch

Dragon + SpaceNav

https://user-images.githubusercontent.com/9300063/210754022-7df92fd5-4875-4465-9738-7efdf5649093.mp4

Dragon + SpaceNav in Gazebo

roslaunch dragon bringup.launch simulation:=true real_machine:=false headless:=false
roslaunch eus_teleop dragon_spacenav_gazebo.launch

JAXON + SpaceNav

https://user-images.githubusercontent.com/9300063/212047815-e1f2a5ed-cf51-4782-b892-66752effe41d.mp4

JAXON + SpaceNav in Choreonoid

Launch JAXON in Choreonoid
roscd eus_teleop/scripts/jaxon
./start-jaxon_with_rhp3hand-sim.sh

roscd eus_teleop/scripts/jaxon
ipython -i jaxon_with_rhp3hand_setup.py
hcf.ast_svc.startAutoBalancer()
hcf.ast_svc.startStabilizer()
hcf.ast_svc.startWholeBodyMasterSlave()

Launch eus_vive for SpaceNav
roslaunch eus_teleop jaxon_spacenav_choreonoid.launch

JAXON + Tablis

https://user-images.githubusercontent.com/9300063/212932317-407102d1-093f-4729-b00a-f367bbbcb40d.mp4

JAXON + Tablis in Choreonoid

Launch Tablis in Choreonoid
roscd eus_teleop/scripts/tablis
./start-tablis-sim.sh

roscd eus_teleop/scripts/tablis
ipython -i tablis_setup.py
hcf.servoOn()
hcf.hc_svc.startHapticsController()

Launch JAXON in Choreonoid
roscd eus_teleop/scripts/jaxon
./start-jaxon_with_rhp3hand-sim.sh

roscd eus_teleop/scripts/jaxon
ipython -i jaxon_with_rhp3hand_setup.py
hcf.ast_svc.startAutoBalancer()
hcf.ast_svc.startStabilizer()
hcf.ast_svc.startWholeBodyMasterSlave()

Launch bridge and wbms core
roscd eus_teleop/scripts/jaxon
./start-jaxon-eus-teleop-sim.sh

Launch eus_vive for Tablis
roslaunch eus_teleop jaxon_tablis_choreonoid.launch

Demo & Experiments

Miraikan Demo 2019/08/23-24

rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_vive_mirror.launch

Miraikan Demo 2020/09/11-13

Robot control PC (Robot side)
rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_remote.launch

Vive control PC (Pilot side)
rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_vive_remote.launch

Visualization, display and feedback PC (Pilot side)
rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_display_remote.launch

How to use Vive controller

Vive controller

PR2

Button Usage
1 / Menu Control toggle: base/arm (Default: base)
3 / Stream Menu Steam Menu
8 / Grip Not used

Arm mode

You can enable arm mode of right and left arm separately.

Command Usage
7 / Trigger Gripper toggle: open/close in Toggle grasp mode (Default: open)
7 / Trigger Gripper toggle: open only when trigger is pressed in Hold grasp mode
Controller pose robot end effector’s pose

Base mode

Base mode is enabled when both arms are disabled in Arm mode.

Command Usage
2 / Trackpad Torso control: right: down / left: up
2 / Trackpad + 7 / Trigger (right) Safe base control: right: x, y / left: w
2 / Trackpad + 7 / Trigger (right + left) Unsafe base control: right: x, y / left: w

Baxter

Button Usage
2 / Trackpad Control toggle: stop / arm (Default: stop)
3 / Stream Menu Steam Menu
8 / Grip Not used

Arm mode

You can enable arm mode of right and left arm separately.

Command Usage
7 / Trigger Gripper toggle: open/close (Default: open)
Controller pose robot end effector’s pose

How to use GUI control

Teleoperation control buttons

Button Usage
Reset Diable and reset robot to initial posture
Enable Enable robot
Disable Disable robot
Calibrate larm/rarm Calibrate with left/right arm

Arm & Gripper control buttons

Button Usage
Reset larm/rarm Reset only left/right arm
Enable larm/rarm Enable only left/right arm
Disable larm/rarm Disable only left/right arm
Start grasp lgripper/rgripper Start grasp only left/right gripper
Stop grasp lgripper/rgripper Stop grasp only left/right gripper
Toggle grasp mode Change to Toggle grasp mode
Hold grasp mode Change to Hold grasp mode

Tips

Baxter Network Configuration

Open Field Service Menu and change network configuration

VPNC Install

sudo apt install libgcrypt20-dev libgnutls28-dev
git clone https://github.com/streambinder/vpnc.git
cd vpnc
git checkout 1cf24ed6aa4a04b4b01cc9ebfacbad723eed04f5
make
sudo make install
cd ..
git clone git://git.infradead.org/users/dwmw2/vpnc-scripts.git
cd vpnc-scripts
sudo cp vpnc-script /etc/vpnc

VPNC Command for Fortigate

sudo vpnc --local-port 0 --gateway <gateway> --id ipsecvpn --username <username> --pfs dh5 --dh dh5 --auth-mode psk --no-detach --vendor fortigate --dh dh5

Demo Video

PR2 Fridge demo

Baxter APC demo

CHANGELOG

Changelog for package eus_teleop

0.1.17 (2023-05-28)

  • add eus_teleop
  • Contributors: Shingo Kitagawa

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

  • sample/tablis/baxter/baxter_tablis_gazebo.launch
      • main [default: true]
      • vive_set [default: default]
      • head [default: true]
      • button_toggle [default: true]
      • mirror [default: false]
      • display [default: true]
  • sample/tablis/baxter/baxter_tablis.launch
      • main [default: true]
      • vive_set [default: default]
      • head [default: true]
      • mirror [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • republish [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/tablis/baxter/baxter_tablis_remote.launch
      • main [default: true]
      • vive [default: true]
      • head [default: true]
      • mirror [default: false]
      • vive_set [default: default]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/tablis/jaxon/jaxon_tablis.launch
      • main [default: true]
      • button_toggle [default: true]
  • sample/tablis/jaxon/jaxon_tablis_choreonoid.launch
      • main [default: true]
      • button_toggle [default: true]
  • sample/tablis/pr2/pr2_tablis.launch
      • main [default: true]
      • vive_set [default: default]
      • head [default: true]
      • button_toggle [default: true]
      • kinfu [default: false]
      • mirror [default: false]
      • display [default: true]
  • sample/tablis/pr2/pr2_tablis_gazebo.launch
      • main [default: true]
      • vive_set [default: default]
      • head [default: true]
      • button_toggle [default: true]
      • mirror [default: false]
      • display [default: true]
  • sample/vive/baxter/baxter_vive_remote.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • mirror [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/vive/baxter/baxter_vive_mirror.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • republish [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/vive/baxter/baxter_vive.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • mirror [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • republish [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/vive/baxter/baxter_vive_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • mirror [default: false]
      • button_toggle [default: true]
      • display [default: true]
  • sample/vive/pr2/pr2_vive_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • button_toggle [default: true]
      • display [default: true]
  • sample/vive/pr2/pr2_vive.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • button_toggle [default: true]
      • kinfu [default: false]
      • display [default: true]
  • sample/common/baxter_remote.launch
      • head [default: true]
      • respeaker [default: true]
      • logging [default: true]
      • twitter [default: true]
      • influxdb [default: true]
      • debug [default: false]
      • home_dir [default: $(env HOME)]
      • mask_rcnn [default: false]
      • custom_xdisplay [default: true]
      • launch_xdisplay [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • arm_interpolation [default: bezier_with_velocity]
      • arm_control_mode [default: velocity]
      • moveit [default: false]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
  • sample/common/baxter_display_remote.launch
      • head [default: false]
      • respeaker [default: true]
      • mirror [default: false]
      • republish [default: true]
      • logging [default: true]
      • rqt_gui [default: true]
      • camera_ns [default: realsense_torso]
      • spherical_camera_ns [default: kodak_head]
      • spherical_stereo [default: true]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
  • sample/common/baxter_moveit_remote.launch
      • head [default: true]
      • respeaker [default: true]
      • logging [default: true]
      • twitter [default: true]
      • influxdb [default: true]
      • debug [default: false]
      • home_dir [default: $(env HOME)]
      • mask_rcnn [default: false]
      • custom_xdisplay [default: true]
      • launch_xdisplay [default: false]
      • realsense_camera [default: true]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • arm_interpolation [default: minjerk]
      • arm_control_mode [default: position_w_id]
      • moveit [default: true]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • gui [default: true]
      • launch_tabletop_detector [default: true]
      • launch_grasp_mask_rcnn [default: false]
  • sample/other/baxter/baxter_moveit.launch
      • realsense_camera [default: true]
      • spherical_camera [default: false]
      • logging [default: true]
      • arm_interpolation [default: minjerk]
      • arm_control_mode [default: position_w_id]
      • moveit [default: true]
      • gui [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • launch_tabletop_detector [default: true]
  • sample/oculus/baxter/baxter_oculus_gazebo.launch
      • main [default: true]
      • button_toggle [default: true]
      • display [default: true]
  • sample/oculus/baxter/baxter_oculus.launch
      • main [default: true]
      • head [default: false]
      • mirror [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/oculus/pr2/pr2_oculus.launch
      • main [default: true]
      • kinfu [default: false]
      • button_toggle [default: true]
      • display [default: true]
  • sample/oculus/pr2/pr2_oculus_gazebo.launch
      • main [default: true]
      • button_toggle [default: true]
      • display [default: true]
  • sample/spacenav/dragon/dragon_spacenav.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
  • sample/spacenav/dragon/dragon_spacenav_gazebo.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
  • sample/spacenav/baxter/baxter_spacenav.launch
      • main [default: true]
      • head [default: false]
      • mirror [default: false]
      • logging [default: false]
      • display [default: true]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand-v2]
      • button_toggle [default: true]
  • sample/spacenav/baxter/baxter_spacenav_gazebo.launch
      • main [default: true]
      • button_toggle [default: true]
      • display [default: true]
  • sample/spacenav/jaxon/jaxon_spacenav.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
  • sample/spacenav/jaxon/jaxon_spacenav_choreonoid.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
  • sample/spacenav/pr2/pr2_spacenav.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
      • kinfu [default: false]
      • display [default: true]
  • sample/spacenav/pr2/pr2_spacenav_gazebo.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
      • display [default: true]
  • launch/tablis/tablis_bridge_leader.launch
      • filtered [default: false]
  • launch/tablis/tablis_bridge_follower.launch
  • launch/dragon/dragon_teleop_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: true]
      • device [default: spacenav]
      • head [default: false]
      • mirror [default: false]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/dragon/dragon_teleop.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: true]
      • device [default: spacenav]
      • head [default: false]
      • mirror [default: false]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/baxter/baxter_teleop_display.launch
      • head [default: true]
      • respeaker [default: true]
      • mirror [default: false]
      • republish [default: false]
      • logging [default: true]
      • rqt_gui [default: true]
      • home_dir [default: $(env HOME)]
      • compress [default: false] — whether compress rosbag or not.
      • main_name [default: /baxter_teleop_main]
      • camera_ns [default: realsense_torso]
      • spherical_camera_ns [default: kodak_head]
      • spherical_stereo [default: true]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • hmd_left_image [default: /virtual_camera/left/rviz_image]
      • hmd_right_image [default: /virtual_camera/right/rviz_image]
      • REALSENSE_IMAGE_TYPE [default: x264]
      • REALSENSE_DEPTH_TYPE [default: compressedDepth]
      • SPHERICAL_IMAGE_TYPE [default: x264]
      • SPHERICAL_STEREO_IMAGE_TYPE [default: x264]
  • launch/baxter/baxter_tabletop_object_detector.launch
      • input_cloud
      • input_image
      • camera_frame_id
      • manager
      • launch_transformable_server [default: true]
      • clip [default: true]
  • launch/baxter/baxter_teleop.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: false]
      • tablis [default: false]
      • device [default: vive]
      • head [default: true]
      • respeaker [default: true]
      • mirror [default: false]
      • logging [default: true]
      • twitter [default: true]
      • debug [default: false]
      • home_dir [default: $(env HOME)]
      • mask_rcnn [default: false]
      • display [default: true]
      • custom_xdisplay [default: true]
      • launch_baxter [default: true]
      • launch_xdisplay [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • republish [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
      • arm_interpolation [default: bezier_with_velocity]
      • arm_control_mode [default: velocity]
      • moveit [default: false]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • hmd_left_image [default: /virtual_camera/left/rviz_image]
      • hmd_right_image [default: /virtual_camera/right/rviz_image]
  • launch/baxter/baxter_rosbag_record.launch
      • output_prefix [default: baxter]
      • compress [default: false] — whether compress rosbag or not.
      • camera_ns [default: realsense_torso]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
  • launch/baxter/baxter_realsense_torso.launch
      • launch_transformable_server [default: true]
      • launch_tabletop_detector [default: false]
      • launch_grasp_mask_rcnn [default: false]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • camera_frame_id [default: $(arg camera_ns)_color_optical_frame]
      • manager [default: $(arg camera_ns)_camera_manager]
      • input_cloud [default: /$(arg camera_ns)/depth_registered/quarter/points]
      • input_image [default: /$(arg camera_ns)/depth_registered/quarter/image]
  • launch/baxter/baxter_logging.launch
      • twitter [default: true]
      • influxdb [default: true]
      • debug [default: false]
      • camera [default: true]
      • camera_ns [default: realsense_torso]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • twitter_image_topics [default: /$(arg camera_ns)/color/image_rect_color]
      • home_dir [default: $(env HOME)]
      • compress [default: false] — whether compress rosbag or not.
      • position_diff_threshold [default: 0.01]
  • launch/baxter/baxter.launch
      • head [default: true]
      • respeaker [default: true]
      • logging [default: true]
      • twitter [default: true]
      • influxdb [default: true]
      • debug [default: false]
      • home_dir [default: $(env HOME)]
      • mask_rcnn [default: false]
      • custom_xdisplay [default: true]
      • launch_xdisplay [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • launch_tabletop_detector [default: false]
      • launch_grasp_mask_rcnn [default: false]
      • arm_interpolation [default: bezier_with_velocity]
      • arm_control_mode [default: velocity]
      • moveit [default: false]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • xdisplay_max_width [default: 1024]
      • xdisplay_max_width [default: 1920]
      • xdisplay_max_height [default: 600]
      • xdisplay_max_height [default: 1200]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
  • launch/baxter/baxter_db_client.launch
      • camera [default: true]
      • camera_ns [default: realsense_torso]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • output [default: screen]
      • log_rate [default: 5.0]
      • respawn [default: true]
      • enable_monitor [default: false]
      • vital_check [default: true]
      • debug [default: false]
  • launch/baxter/baxter_rosbag_play.launch
      • rosbag
      • camera_ns [default: realsense_torso]
      • gui [default: true]
      • loop [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • manager [default: rosbag_play_nodelet_manager]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • left_electric_gripper [default: $(eval arg('lgripper_type') == 'parallel')]
      • right_electric_gripper [default: $(eval arg('rgripper_type') == 'parallel')]
  • launch/baxter/baxter_grasp_mask_rcnn.launch
      • input_image
      • input_cloud
      • manager
      • sampling [default: false]
      • data_collection [default: true]
      • target_grasp [default: false]
      • model_file [default: $(find dualarm_grasping)/models/dualarm_occluded_grasp/self_anno/20181227_model_iter_4559.npz]
      • config_yaml [default: $(find dualarm_grasping)/models/dualarm_occluded_grasp/self_anno/20181227_params.yaml]
      • target_yaml [default: $(find eus_teleop)/config/baxter/grasp_mask_rcnn_target_names.yaml]
      • label_yaml [default: $(find dualarm_grasping)/yaml/dualarm_occluded_grasping_label_names.yaml]
  • launch/baxter/baxter_teleop_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: false]
      • tablis [default: false]
      • device [default: vive]
      • head [default: false]
      • mirror [default: false]
      • display [default: true]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/baxter/baxter_visualization.launch
  • launch/jaxon/jaxon_teleop.launch
      • main [default: true]
      • vive [default: false]
      • spacenav [default: true]
      • device [default: spacenav]
      • head [default: false]
      • mirror [default: false]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/jaxon/jaxon_teleop_choreonoid.launch
      • main [default: true]
      • vive [default: false]
      • spacenav [default: true]
      • device [default: spacenav]
      • head [default: false]
      • mirror [default: false]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/include/elp_usb.launch
      • camera_name [default: elp_head]
      • index [default: 0]
      • machine [default: localhost]
      • load_machinepath [default: false]
      • machinepath [default: false]
  • launch/include/audio_play.launch
      • audio_ns [default: remote_audio]
      • format [default: wave]
      • dst [default: alsasink]
      • do_timestamp [default: false]
  • launch/include/rqt_gui.launch
  • launch/include/kinfu.launch
      • CAMERA_INFO
      • IMAGE_DEPTH
      • IMAGE_COLOR
  • launch/include/vive.launch
      • hmd_left_image [default: /virtual_camera/left/rviz_image]
      • hmd_right_image [default: /virtual_camera/right/rviz_image]
  • launch/include/mask_rcnn.launch
      • INPUT_IMAGE
      • gpu [default: 0]
  • launch/include/insta360_air.launch
      • camera_name [default: insta_head]
  • launch/include/respeaker.launch
  • launch/include/realsense.launch
      • camera_ns
      • manager
      • publish_tf
      • color_width
      • color_height
      • depth_width
      • depth_height
  • launch/include/realsense_l515.launch
      • camera_ns [default: realsense]
      • manager [default: realsense_camera_manager]
      • publish_tf [default: false]
      • color_width [default: 960]
      • color_height [default: 540]
      • depth_width [default: 640]
      • depth_height [default: 480]
  • launch/include/realsense_d435.launch
      • camera_ns [default: realsense]
      • manager [default: realsense_camera_manager]
      • publish_tf [default: false]
      • color_width [default: 640]
      • color_height [default: 480]
      • depth_width [default: 640]
      • depth_height [default: 480]
  • launch/include/kodak_pixpro.launch
      • camera_name [default: kodak_head]
  • launch/pr2/pr2_logging.launch
      • CAMERA_INFO
      • RGB_CAMERA_INFO
      • COMP_IMAGE_COLOR
      • COMP_IMAGE_DEPTH
      • home_dir [default: $(env HOME)]
      • compress [default: false] — whether compress rosbag or not.
  • launch/pr2/pr2_teleop_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: false]
      • tablis [default: false]
      • device [default: vive]
      • head [default: false]
      • mirror [default: false]
      • display [default: true]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/pr2/pr2_teleop.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: false]
      • tablis [default: false]
      • device [default: vive]
      • head [default: true]
      • respeaker [default: true]
      • mirror [default: false]
      • logging [default: true]
      • kinfu [default: false]
      • display [default: true]
      • home_dir [default: $(env HOME)]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
      • hmd_left_image [default: /virtual_camera/left/rviz_image]
      • hmd_right_image [default: /virtual_camera/right/rviz_image]
      • DECOMP_CAMERA_INFO [default: /kinect_head_decompressed/depth_registered/camera_info]
      • DECOMP_RGB_CAMERA_INFO [default: /kinect_head_decompressed/rgb/camera_info]
      • DECOMP_IMAGE_DEPTH [default: /kinect_head_decompressed/depth_registered/image_rect]
      • DECOMP_IMAGE_COLOR [default: /kinect_head_decompressed/rgb/image_rect_color]
      • DECOMP_POINTS [default: /kinect_head_decompressed/depth_registered/points]
      • CAMERA_INFO [default: /kinect_head/depth_registered/camera_info]
      • RGB_CAMERA_INFO [default: /kinect_head/rgb/camera_info]
      • IMAGE_COLOR [default: /kinect_head/rgb/image_rect_color]
      • IMAGE_DEPTH [default: /kinect_head/depth_registered/image_rect]
      • IMAGE_DEPTH_TYPE [default: compressedDepth]
      • COMP_IMAGE_COLOR [default: /kinect_head/rgb/image_rect_color/compressed]
      • COMP_IMAGE_DEPTH [default: /kinect_head/depth_registered/image_rect/compressedDepth]
  • launch/pr2/pr2_teleop_display.launch
      • kinfu [default: false]
      • respeaker [default: true]
      • DECOMP_CAMERA_INFO [default: /kinect_head_decompressed/depth_registered/camera_info]
      • DECOMP_RGB_CAMERA_INFO [default: /kinect_head_decompressed/rgb/camera_info]
      • DECOMP_IMAGE_DEPTH [default: /kinect_head_decompressed/depth_registered/image_rect]
      • DECOMP_IMAGE_COLOR [default: /kinect_head_decompressed/rgb/image_rect_color]
      • DECOMP_POINTS [default: /kinect_head_decompressed/depth_registered/points]
      • CAMERA_INFO
      • RGB_CAMERA_INFO
      • IMAGE_COLOR
      • IMAGE_DEPTH
      • IMAGE_DEPTH_TYPE

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eus_teleop at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 0.1.17
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jsk-ros-pkg/jsk_control.git
VCS Type git
VCS Version master
Last Updated 2024-01-22
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

The eus_teleop package

Additional Links

No additional links.

Maintainers

  • Shingo Kitagawa

Authors

  • Shingo Kitagawa

eus_teleop

main linter

Multi robot teleoperation system with Vive/SpaceNav/Oculus/Tablis Cockpit

Note

This package depends on these branches below:

Tested Environment

Build environment

Ubuntu 16.04 + ROS Kinetic

  • NVidia driver: 396.37
  • OpenVR: 1.3.22
  • Steam VR: 1.6.10

Ubuntu 18.04 + ROS Melodic

  • NVidia driver: 390.116
  • OpenVR: 1.3.22
  • Steam VR: 1.6.10

User interface devices

Vive

  • Arm motion tracking
  • Controller button interface
  • HMD visual interface
  • Vibration interface
  • Sound interface

Tablis

  • Arm motion tracking
  • Controller button interface
  • HMD visual interface
  • Vibration interface
  • Sound interface

SpaceNav (3D mouse)

  • Arm motion tracking
  • Controller button interface

Oculus

  • Arm motion tracking
  • Controller button interface
  • HMD visual interface
  • Vibration interface
  • Sound interface

Installation

Dependency installation

Install dependencies (for Vive)

sudo apt-get install --reinstall xserver-xorg-video-intel-hwe-18.04 libgl1-mesa-glx libgl1-mesa-dri xserver-xorg-core
sudo dpkg-reconfigure xserver-xorg

Install nvidia-driver (for Vive)

# for melodic, run command below
sudo apt install nvidia-driver-390
# for kinetic, install cuda-9.2 deb (local) manually and run command below.
sudo apt install nvidia-396

Install OpenVR, steam and steamVR (for Vive)

Follow here

Install kodak 4k pro camera and ELP usb camera udev (for Baxter)

sudo cp udev/99-kodak.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules && sudo udevadm trigger

ROS Workspace build

Build jsk_apc workspace (Only for baxter users)

source /opt/ros/$ROS_DISTRO/setup.bash
mkdir ~/jsk_apc_ws/src -p
cd ~/jsk_apc_ws/src
wstool init . https://raw.githubusercontent.com/start-jsk/jsk_apc/master/fc.rosinstall.${ROS_DISTRO}
wstool up
rosdep install -y -r --from-paths .

cd ~/jsk_apc_ws 
catkin config
catkin build

Build eus_teleop workspace

source /opt/ros/$ROS_DISTRO/setup.bash
mkdir ~/teleop_ws/src -p
cd ~/teleop_ws/src
wstool init . https://raw.githubusercontent.com/knorth55/eus_teleop/master/fc.rosinstall

# Only for baxter users
wstool merge https://raw.githubusercontent.com/knorth55/eus_teleop/master/baxter.rosinstall
wstool merge https://raw.githubusercontent.com/knorth55/eus_teleop/master/baxter.rosinstall.$ROS_DISTRO

# Only for dragon users
wstool merge https://raw.githubusercontent.com/knorth55/eus_teleop/master/dragon.rosinstall

wstool up
rosdep install --ignore-src --from-path . -y -r -i

# Only for baxter users
source ~/jsk_apc_ws/devel/setup.bash

cd ~/teleop_ws
catkin config
catkin build

How to start

Start procedure

  • Connect Vive HMD and Lighthouse and power on the controller.
  • Place Lighthouse B in front of you.
  • Start one of launch files below.
  • If you don’t use HMD, press Calibrate button and do arm calibration.
  • Press Enable button in GUI to start teleoperation.

Arm calibration (Only for no HMD mode)

The arm calibration is required for no HMD mode in order to measure your position and your arm length.

  • Press Calibrate l/rarm button in GUI
  • Listen to the voice instruction.
  • Stretch your left/right arm and Press Trigger after the first instruction.
  • Listen to the voice instruction again.
  • Fold your left/right arm and Press Trigger after the second instruction.
  • If calibration failed, please try again.

PR2 + Vive

https://user-images.githubusercontent.com/9300063/213145161-4b2acb89-9545-460a-b5cc-d05a111a187b.mp4

PR2 + Vive in JSK 73B2 or 610

rossetip
rossetmaster pr1040
# HMD mode
roslaunch eus_teleop pr2_vive.launch
# No HMD mode
roslaunch eus_teleop pr2_vive.launch head:=false

PR2 + Vive in Gazebo

roslaunch pr2_gazebo pr2_empty_world.launch
roslaunch eus_teleop pr2_vive_gazebo.launch

PR2 + Tablis

https://user-images.githubusercontent.com/9300063/208720417-176d698e-3789-42a8-931f-2a9fc9e062a0.mp4

PR2 + Tablis in JSK 73B2 or 610

rossetip
rossetmaster pr1040
roslaunch eus_teleop pr2_tablis.launch

PR2 + Tablis in Gazebo

Launch Tablis in Choreonoid
roscd eus_teleop/scripts/tablis
./start-tablis-sim.sh

roscd eus_teleop/scripts/tablis
ipython -i tablis_setup.py
hcf.servoOn()
hcf.hc_svc.startHapticsController()

Launch bridge
roscd eus_teleop/scripts/tablis
./start-bridge-sim.sh

Launch PR2 in Gazebo
roslaunch pr2_gazebo pr2_empty_world.launch
roslaunch eus_teleop pr2_tablis_gazebo.launch

PR2 + SpaceNav

https://user-images.githubusercontent.com/9300063/213137459-ce5f7075-acee-4a47-934a-97a4296fdc49.mp4

PR2 + SpaceNav in JSK 73B2

rossetip
rossetmaster pr1040
roslaunch eus_teleop pr2_spacenav.launch

PR2 + SpaceNav in Gazebo

roslaunch pr2_gazebo pr2_empty_world.launch
roslaunch eus_teleop pr2_spacenav_gazebo.launch

Baxter + Vive

https://user-images.githubusercontent.com/9300063/213144997-0d224d5c-b462-43a7-b759-0233fff41d94.mp4

Baxter + Vive in JSK 73B2

rossetip
rossetmaster baxter
# HMD mode
roslaunch eus_teleop baxter_vive.launch
# No HMD mode
roslaunch eus_teleop baxter_vive.launch head:=false

Baxter + Vive in Gazebo

roslaunch baxter_gazebo baxter_world.launch
roslaunch eus_teleop baxter_vive_gazebo.launch

Baxter + Tablis

https://user-images.githubusercontent.com/9300063/208720482-b7ef0abb-e948-448c-be51-521c0c7af8a2.mp4

Baxter + Tablis in JSK 73B2 or 610

rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_tablis.launch

Baxter + Tablis in Gazebo

Launch Tablis in Choreonoid
roscd eus_teleop/scripts/tablis
./start-tablis-sim.sh

roscd eus_teleop/scripts/tablis
ipython -i tablis_setup.py
hcf.servoOn()
hcf.hc_svc.startHapticsController()

Launch bridge
roscd eus_teleop/scripts/tablis
./start-bridge-sim.sh

Launch Baxter in Choreonoid
roslaunch baxter_gazebo baxter_world.launch
roslaunch eus_teleop baxter_tablis_gazebo.launch

Baxter + SpaceNav

Baxter + SpaceNav in JSK 73B2

rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_spacenav.launch

Baxter + SpaceNav in Gazebo

roslaunch baxter_gazebo baxter_world.launch
roslaunch eus_teleop baxter_spacenav_gazebo.launch

Baxter + MoveIt!

Real Robot in JSK 73B2

rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_moveit.launch

Dragon + SpaceNav

https://user-images.githubusercontent.com/9300063/210754022-7df92fd5-4875-4465-9738-7efdf5649093.mp4

Dragon + SpaceNav in Gazebo

roslaunch dragon bringup.launch simulation:=true real_machine:=false headless:=false
roslaunch eus_teleop dragon_spacenav_gazebo.launch

JAXON + SpaceNav

https://user-images.githubusercontent.com/9300063/212047815-e1f2a5ed-cf51-4782-b892-66752effe41d.mp4

JAXON + SpaceNav in Choreonoid

Launch JAXON in Choreonoid
roscd eus_teleop/scripts/jaxon
./start-jaxon_with_rhp3hand-sim.sh

roscd eus_teleop/scripts/jaxon
ipython -i jaxon_with_rhp3hand_setup.py
hcf.ast_svc.startAutoBalancer()
hcf.ast_svc.startStabilizer()
hcf.ast_svc.startWholeBodyMasterSlave()

Launch eus_vive for SpaceNav
roslaunch eus_teleop jaxon_spacenav_choreonoid.launch

JAXON + Tablis

https://user-images.githubusercontent.com/9300063/212932317-407102d1-093f-4729-b00a-f367bbbcb40d.mp4

JAXON + Tablis in Choreonoid

Launch Tablis in Choreonoid
roscd eus_teleop/scripts/tablis
./start-tablis-sim.sh

roscd eus_teleop/scripts/tablis
ipython -i tablis_setup.py
hcf.servoOn()
hcf.hc_svc.startHapticsController()

Launch JAXON in Choreonoid
roscd eus_teleop/scripts/jaxon
./start-jaxon_with_rhp3hand-sim.sh

roscd eus_teleop/scripts/jaxon
ipython -i jaxon_with_rhp3hand_setup.py
hcf.ast_svc.startAutoBalancer()
hcf.ast_svc.startStabilizer()
hcf.ast_svc.startWholeBodyMasterSlave()

Launch bridge and wbms core
roscd eus_teleop/scripts/jaxon
./start-jaxon-eus-teleop-sim.sh

Launch eus_vive for Tablis
roslaunch eus_teleop jaxon_tablis_choreonoid.launch

Demo & Experiments

Miraikan Demo 2019/08/23-24

rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_vive_mirror.launch

Miraikan Demo 2020/09/11-13

Robot control PC (Robot side)
rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_remote.launch

Vive control PC (Pilot side)
rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_vive_remote.launch

Visualization, display and feedback PC (Pilot side)
rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_display_remote.launch

How to use Vive controller

Vive controller

PR2

Button Usage
1 / Menu Control toggle: base/arm (Default: base)
3 / Stream Menu Steam Menu
8 / Grip Not used

Arm mode

You can enable arm mode of right and left arm separately.

Command Usage
7 / Trigger Gripper toggle: open/close in Toggle grasp mode (Default: open)
7 / Trigger Gripper toggle: open only when trigger is pressed in Hold grasp mode
Controller pose robot end effector’s pose

Base mode

Base mode is enabled when both arms are disabled in Arm mode.

Command Usage
2 / Trackpad Torso control: right: down / left: up
2 / Trackpad + 7 / Trigger (right) Safe base control: right: x, y / left: w
2 / Trackpad + 7 / Trigger (right + left) Unsafe base control: right: x, y / left: w

Baxter

Button Usage
2 / Trackpad Control toggle: stop / arm (Default: stop)
3 / Stream Menu Steam Menu
8 / Grip Not used

Arm mode

You can enable arm mode of right and left arm separately.

Command Usage
7 / Trigger Gripper toggle: open/close (Default: open)
Controller pose robot end effector’s pose

How to use GUI control

Teleoperation control buttons

Button Usage
Reset Diable and reset robot to initial posture
Enable Enable robot
Disable Disable robot
Calibrate larm/rarm Calibrate with left/right arm

Arm & Gripper control buttons

Button Usage
Reset larm/rarm Reset only left/right arm
Enable larm/rarm Enable only left/right arm
Disable larm/rarm Disable only left/right arm
Start grasp lgripper/rgripper Start grasp only left/right gripper
Stop grasp lgripper/rgripper Stop grasp only left/right gripper
Toggle grasp mode Change to Toggle grasp mode
Hold grasp mode Change to Hold grasp mode

Tips

Baxter Network Configuration

Open Field Service Menu and change network configuration

VPNC Install

sudo apt install libgcrypt20-dev libgnutls28-dev
git clone https://github.com/streambinder/vpnc.git
cd vpnc
git checkout 1cf24ed6aa4a04b4b01cc9ebfacbad723eed04f5
make
sudo make install
cd ..
git clone git://git.infradead.org/users/dwmw2/vpnc-scripts.git
cd vpnc-scripts
sudo cp vpnc-script /etc/vpnc

VPNC Command for Fortigate

sudo vpnc --local-port 0 --gateway <gateway> --id ipsecvpn --username <username> --pfs dh5 --dh dh5 --auth-mode psk --no-detach --vendor fortigate --dh dh5

Demo Video

PR2 Fridge demo

Baxter APC demo

CHANGELOG

Changelog for package eus_teleop

0.1.17 (2023-05-28)

  • add eus_teleop
  • Contributors: Shingo Kitagawa

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

  • sample/tablis/baxter/baxter_tablis_gazebo.launch
      • main [default: true]
      • vive_set [default: default]
      • head [default: true]
      • button_toggle [default: true]
      • mirror [default: false]
      • display [default: true]
  • sample/tablis/baxter/baxter_tablis.launch
      • main [default: true]
      • vive_set [default: default]
      • head [default: true]
      • mirror [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • republish [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/tablis/baxter/baxter_tablis_remote.launch
      • main [default: true]
      • vive [default: true]
      • head [default: true]
      • mirror [default: false]
      • vive_set [default: default]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/tablis/jaxon/jaxon_tablis.launch
      • main [default: true]
      • button_toggle [default: true]
  • sample/tablis/jaxon/jaxon_tablis_choreonoid.launch
      • main [default: true]
      • button_toggle [default: true]
  • sample/tablis/pr2/pr2_tablis.launch
      • main [default: true]
      • vive_set [default: default]
      • head [default: true]
      • button_toggle [default: true]
      • kinfu [default: false]
      • mirror [default: false]
      • display [default: true]
  • sample/tablis/pr2/pr2_tablis_gazebo.launch
      • main [default: true]
      • vive_set [default: default]
      • head [default: true]
      • button_toggle [default: true]
      • mirror [default: false]
      • display [default: true]
  • sample/vive/baxter/baxter_vive_remote.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • mirror [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/vive/baxter/baxter_vive_mirror.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • republish [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/vive/baxter/baxter_vive.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • mirror [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • republish [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/vive/baxter/baxter_vive_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • mirror [default: false]
      • button_toggle [default: true]
      • display [default: true]
  • sample/vive/pr2/pr2_vive_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • button_toggle [default: true]
      • display [default: true]
  • sample/vive/pr2/pr2_vive.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • button_toggle [default: true]
      • kinfu [default: false]
      • display [default: true]
  • sample/common/baxter_remote.launch
      • head [default: true]
      • respeaker [default: true]
      • logging [default: true]
      • twitter [default: true]
      • influxdb [default: true]
      • debug [default: false]
      • home_dir [default: $(env HOME)]
      • mask_rcnn [default: false]
      • custom_xdisplay [default: true]
      • launch_xdisplay [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • arm_interpolation [default: bezier_with_velocity]
      • arm_control_mode [default: velocity]
      • moveit [default: false]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
  • sample/common/baxter_display_remote.launch
      • head [default: false]
      • respeaker [default: true]
      • mirror [default: false]
      • republish [default: true]
      • logging [default: true]
      • rqt_gui [default: true]
      • camera_ns [default: realsense_torso]
      • spherical_camera_ns [default: kodak_head]
      • spherical_stereo [default: true]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
  • sample/common/baxter_moveit_remote.launch
      • head [default: true]
      • respeaker [default: true]
      • logging [default: true]
      • twitter [default: true]
      • influxdb [default: true]
      • debug [default: false]
      • home_dir [default: $(env HOME)]
      • mask_rcnn [default: false]
      • custom_xdisplay [default: true]
      • launch_xdisplay [default: false]
      • realsense_camera [default: true]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • arm_interpolation [default: minjerk]
      • arm_control_mode [default: position_w_id]
      • moveit [default: true]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • gui [default: true]
      • launch_tabletop_detector [default: true]
      • launch_grasp_mask_rcnn [default: false]
  • sample/other/baxter/baxter_moveit.launch
      • realsense_camera [default: true]
      • spherical_camera [default: false]
      • logging [default: true]
      • arm_interpolation [default: minjerk]
      • arm_control_mode [default: position_w_id]
      • moveit [default: true]
      • gui [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • launch_tabletop_detector [default: true]
  • sample/oculus/baxter/baxter_oculus_gazebo.launch
      • main [default: true]
      • button_toggle [default: true]
      • display [default: true]
  • sample/oculus/baxter/baxter_oculus.launch
      • main [default: true]
      • head [default: false]
      • mirror [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/oculus/pr2/pr2_oculus.launch
      • main [default: true]
      • kinfu [default: false]
      • button_toggle [default: true]
      • display [default: true]
  • sample/oculus/pr2/pr2_oculus_gazebo.launch
      • main [default: true]
      • button_toggle [default: true]
      • display [default: true]
  • sample/spacenav/dragon/dragon_spacenav.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
  • sample/spacenav/dragon/dragon_spacenav_gazebo.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
  • sample/spacenav/baxter/baxter_spacenav.launch
      • main [default: true]
      • head [default: false]
      • mirror [default: false]
      • logging [default: false]
      • display [default: true]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand-v2]
      • button_toggle [default: true]
  • sample/spacenav/baxter/baxter_spacenav_gazebo.launch
      • main [default: true]
      • button_toggle [default: true]
      • display [default: true]
  • sample/spacenav/jaxon/jaxon_spacenav.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
  • sample/spacenav/jaxon/jaxon_spacenav_choreonoid.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
  • sample/spacenav/pr2/pr2_spacenav.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
      • kinfu [default: false]
      • display [default: true]
  • sample/spacenav/pr2/pr2_spacenav_gazebo.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
      • display [default: true]
  • launch/tablis/tablis_bridge_leader.launch
      • filtered [default: false]
  • launch/tablis/tablis_bridge_follower.launch
  • launch/dragon/dragon_teleop_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: true]
      • device [default: spacenav]
      • head [default: false]
      • mirror [default: false]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/dragon/dragon_teleop.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: true]
      • device [default: spacenav]
      • head [default: false]
      • mirror [default: false]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/baxter/baxter_teleop_display.launch
      • head [default: true]
      • respeaker [default: true]
      • mirror [default: false]
      • republish [default: false]
      • logging [default: true]
      • rqt_gui [default: true]
      • home_dir [default: $(env HOME)]
      • compress [default: false] — whether compress rosbag or not.
      • main_name [default: /baxter_teleop_main]
      • camera_ns [default: realsense_torso]
      • spherical_camera_ns [default: kodak_head]
      • spherical_stereo [default: true]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • hmd_left_image [default: /virtual_camera/left/rviz_image]
      • hmd_right_image [default: /virtual_camera/right/rviz_image]
      • REALSENSE_IMAGE_TYPE [default: x264]
      • REALSENSE_DEPTH_TYPE [default: compressedDepth]
      • SPHERICAL_IMAGE_TYPE [default: x264]
      • SPHERICAL_STEREO_IMAGE_TYPE [default: x264]
  • launch/baxter/baxter_tabletop_object_detector.launch
      • input_cloud
      • input_image
      • camera_frame_id
      • manager
      • launch_transformable_server [default: true]
      • clip [default: true]
  • launch/baxter/baxter_teleop.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: false]
      • tablis [default: false]
      • device [default: vive]
      • head [default: true]
      • respeaker [default: true]
      • mirror [default: false]
      • logging [default: true]
      • twitter [default: true]
      • debug [default: false]
      • home_dir [default: $(env HOME)]
      • mask_rcnn [default: false]
      • display [default: true]
      • custom_xdisplay [default: true]
      • launch_baxter [default: true]
      • launch_xdisplay [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • republish [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
      • arm_interpolation [default: bezier_with_velocity]
      • arm_control_mode [default: velocity]
      • moveit [default: false]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • hmd_left_image [default: /virtual_camera/left/rviz_image]
      • hmd_right_image [default: /virtual_camera/right/rviz_image]
  • launch/baxter/baxter_rosbag_record.launch
      • output_prefix [default: baxter]
      • compress [default: false] — whether compress rosbag or not.
      • camera_ns [default: realsense_torso]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
  • launch/baxter/baxter_realsense_torso.launch
      • launch_transformable_server [default: true]
      • launch_tabletop_detector [default: false]
      • launch_grasp_mask_rcnn [default: false]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • camera_frame_id [default: $(arg camera_ns)_color_optical_frame]
      • manager [default: $(arg camera_ns)_camera_manager]
      • input_cloud [default: /$(arg camera_ns)/depth_registered/quarter/points]
      • input_image [default: /$(arg camera_ns)/depth_registered/quarter/image]
  • launch/baxter/baxter_logging.launch
      • twitter [default: true]
      • influxdb [default: true]
      • debug [default: false]
      • camera [default: true]
      • camera_ns [default: realsense_torso]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • twitter_image_topics [default: /$(arg camera_ns)/color/image_rect_color]
      • home_dir [default: $(env HOME)]
      • compress [default: false] — whether compress rosbag or not.
      • position_diff_threshold [default: 0.01]
  • launch/baxter/baxter.launch
      • head [default: true]
      • respeaker [default: true]
      • logging [default: true]
      • twitter [default: true]
      • influxdb [default: true]
      • debug [default: false]
      • home_dir [default: $(env HOME)]
      • mask_rcnn [default: false]
      • custom_xdisplay [default: true]
      • launch_xdisplay [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • launch_tabletop_detector [default: false]
      • launch_grasp_mask_rcnn [default: false]
      • arm_interpolation [default: bezier_with_velocity]
      • arm_control_mode [default: velocity]
      • moveit [default: false]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • xdisplay_max_width [default: 1024]
      • xdisplay_max_width [default: 1920]
      • xdisplay_max_height [default: 600]
      • xdisplay_max_height [default: 1200]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
  • launch/baxter/baxter_db_client.launch
      • camera [default: true]
      • camera_ns [default: realsense_torso]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • output [default: screen]
      • log_rate [default: 5.0]
      • respawn [default: true]
      • enable_monitor [default: false]
      • vital_check [default: true]
      • debug [default: false]
  • launch/baxter/baxter_rosbag_play.launch
      • rosbag
      • camera_ns [default: realsense_torso]
      • gui [default: true]
      • loop [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • manager [default: rosbag_play_nodelet_manager]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • left_electric_gripper [default: $(eval arg('lgripper_type') == 'parallel')]
      • right_electric_gripper [default: $(eval arg('rgripper_type') == 'parallel')]
  • launch/baxter/baxter_grasp_mask_rcnn.launch
      • input_image
      • input_cloud
      • manager
      • sampling [default: false]
      • data_collection [default: true]
      • target_grasp [default: false]
      • model_file [default: $(find dualarm_grasping)/models/dualarm_occluded_grasp/self_anno/20181227_model_iter_4559.npz]
      • config_yaml [default: $(find dualarm_grasping)/models/dualarm_occluded_grasp/self_anno/20181227_params.yaml]
      • target_yaml [default: $(find eus_teleop)/config/baxter/grasp_mask_rcnn_target_names.yaml]
      • label_yaml [default: $(find dualarm_grasping)/yaml/dualarm_occluded_grasping_label_names.yaml]
  • launch/baxter/baxter_teleop_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: false]
      • tablis [default: false]
      • device [default: vive]
      • head [default: false]
      • mirror [default: false]
      • display [default: true]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/baxter/baxter_visualization.launch
  • launch/jaxon/jaxon_teleop.launch
      • main [default: true]
      • vive [default: false]
      • spacenav [default: true]
      • device [default: spacenav]
      • head [default: false]
      • mirror [default: false]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/jaxon/jaxon_teleop_choreonoid.launch
      • main [default: true]
      • vive [default: false]
      • spacenav [default: true]
      • device [default: spacenav]
      • head [default: false]
      • mirror [default: false]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/include/elp_usb.launch
      • camera_name [default: elp_head]
      • index [default: 0]
      • machine [default: localhost]
      • load_machinepath [default: false]
      • machinepath [default: false]
  • launch/include/audio_play.launch
      • audio_ns [default: remote_audio]
      • format [default: wave]
      • dst [default: alsasink]
      • do_timestamp [default: false]
  • launch/include/rqt_gui.launch
  • launch/include/kinfu.launch
      • CAMERA_INFO
      • IMAGE_DEPTH
      • IMAGE_COLOR
  • launch/include/vive.launch
      • hmd_left_image [default: /virtual_camera/left/rviz_image]
      • hmd_right_image [default: /virtual_camera/right/rviz_image]
  • launch/include/mask_rcnn.launch
      • INPUT_IMAGE
      • gpu [default: 0]
  • launch/include/insta360_air.launch
      • camera_name [default: insta_head]
  • launch/include/respeaker.launch
  • launch/include/realsense.launch
      • camera_ns
      • manager
      • publish_tf
      • color_width
      • color_height
      • depth_width
      • depth_height
  • launch/include/realsense_l515.launch
      • camera_ns [default: realsense]
      • manager [default: realsense_camera_manager]
      • publish_tf [default: false]
      • color_width [default: 960]
      • color_height [default: 540]
      • depth_width [default: 640]
      • depth_height [default: 480]
  • launch/include/realsense_d435.launch
      • camera_ns [default: realsense]
      • manager [default: realsense_camera_manager]
      • publish_tf [default: false]
      • color_width [default: 640]
      • color_height [default: 480]
      • depth_width [default: 640]
      • depth_height [default: 480]
  • launch/include/kodak_pixpro.launch
      • camera_name [default: kodak_head]
  • launch/pr2/pr2_logging.launch
      • CAMERA_INFO
      • RGB_CAMERA_INFO
      • COMP_IMAGE_COLOR
      • COMP_IMAGE_DEPTH
      • home_dir [default: $(env HOME)]
      • compress [default: false] — whether compress rosbag or not.
  • launch/pr2/pr2_teleop_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: false]
      • tablis [default: false]
      • device [default: vive]
      • head [default: false]
      • mirror [default: false]
      • display [default: true]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/pr2/pr2_teleop.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: false]
      • tablis [default: false]
      • device [default: vive]
      • head [default: true]
      • respeaker [default: true]
      • mirror [default: false]
      • logging [default: true]
      • kinfu [default: false]
      • display [default: true]
      • home_dir [default: $(env HOME)]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
      • hmd_left_image [default: /virtual_camera/left/rviz_image]
      • hmd_right_image [default: /virtual_camera/right/rviz_image]
      • DECOMP_CAMERA_INFO [default: /kinect_head_decompressed/depth_registered/camera_info]
      • DECOMP_RGB_CAMERA_INFO [default: /kinect_head_decompressed/rgb/camera_info]
      • DECOMP_IMAGE_DEPTH [default: /kinect_head_decompressed/depth_registered/image_rect]
      • DECOMP_IMAGE_COLOR [default: /kinect_head_decompressed/rgb/image_rect_color]
      • DECOMP_POINTS [default: /kinect_head_decompressed/depth_registered/points]
      • CAMERA_INFO [default: /kinect_head/depth_registered/camera_info]
      • RGB_CAMERA_INFO [default: /kinect_head/rgb/camera_info]
      • IMAGE_COLOR [default: /kinect_head/rgb/image_rect_color]
      • IMAGE_DEPTH [default: /kinect_head/depth_registered/image_rect]
      • IMAGE_DEPTH_TYPE [default: compressedDepth]
      • COMP_IMAGE_COLOR [default: /kinect_head/rgb/image_rect_color/compressed]
      • COMP_IMAGE_DEPTH [default: /kinect_head/depth_registered/image_rect/compressedDepth]
  • launch/pr2/pr2_teleop_display.launch
      • kinfu [default: false]
      • respeaker [default: true]
      • DECOMP_CAMERA_INFO [default: /kinect_head_decompressed/depth_registered/camera_info]
      • DECOMP_RGB_CAMERA_INFO [default: /kinect_head_decompressed/rgb/camera_info]
      • DECOMP_IMAGE_DEPTH [default: /kinect_head_decompressed/depth_registered/image_rect]
      • DECOMP_IMAGE_COLOR [default: /kinect_head_decompressed/rgb/image_rect_color]
      • DECOMP_POINTS [default: /kinect_head_decompressed/depth_registered/points]
      • CAMERA_INFO
      • RGB_CAMERA_INFO
      • IMAGE_COLOR
      • IMAGE_DEPTH
      • IMAGE_DEPTH_TYPE

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eus_teleop at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 0.1.17
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/jsk-ros-pkg/jsk_control.git
VCS Type git
VCS Version master
Last Updated 2024-01-22
Dev Status DEVELOPED
CI status
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

The eus_teleop package

Additional Links

No additional links.

Maintainers

  • Shingo Kitagawa

Authors

  • Shingo Kitagawa

eus_teleop

main linter

Multi robot teleoperation system with Vive/SpaceNav/Oculus/Tablis Cockpit

Note

This package depends on these branches below:

Tested Environment

Build environment

Ubuntu 16.04 + ROS Kinetic

  • NVidia driver: 396.37
  • OpenVR: 1.3.22
  • Steam VR: 1.6.10

Ubuntu 18.04 + ROS Melodic

  • NVidia driver: 390.116
  • OpenVR: 1.3.22
  • Steam VR: 1.6.10

User interface devices

Vive

  • Arm motion tracking
  • Controller button interface
  • HMD visual interface
  • Vibration interface
  • Sound interface

Tablis

  • Arm motion tracking
  • Controller button interface
  • HMD visual interface
  • Vibration interface
  • Sound interface

SpaceNav (3D mouse)

  • Arm motion tracking
  • Controller button interface

Oculus

  • Arm motion tracking
  • Controller button interface
  • HMD visual interface
  • Vibration interface
  • Sound interface

Installation

Dependency installation

Install dependencies (for Vive)

sudo apt-get install --reinstall xserver-xorg-video-intel-hwe-18.04 libgl1-mesa-glx libgl1-mesa-dri xserver-xorg-core
sudo dpkg-reconfigure xserver-xorg

Install nvidia-driver (for Vive)

# for melodic, run command below
sudo apt install nvidia-driver-390
# for kinetic, install cuda-9.2 deb (local) manually and run command below.
sudo apt install nvidia-396

Install OpenVR, steam and steamVR (for Vive)

Follow here

Install kodak 4k pro camera and ELP usb camera udev (for Baxter)

sudo cp udev/99-kodak.rules /etc/udev/rules.d/
sudo udevadm control --reload-rules && sudo udevadm trigger

ROS Workspace build

Build jsk_apc workspace (Only for baxter users)

source /opt/ros/$ROS_DISTRO/setup.bash
mkdir ~/jsk_apc_ws/src -p
cd ~/jsk_apc_ws/src
wstool init . https://raw.githubusercontent.com/start-jsk/jsk_apc/master/fc.rosinstall.${ROS_DISTRO}
wstool up
rosdep install -y -r --from-paths .

cd ~/jsk_apc_ws 
catkin config
catkin build

Build eus_teleop workspace

source /opt/ros/$ROS_DISTRO/setup.bash
mkdir ~/teleop_ws/src -p
cd ~/teleop_ws/src
wstool init . https://raw.githubusercontent.com/knorth55/eus_teleop/master/fc.rosinstall

# Only for baxter users
wstool merge https://raw.githubusercontent.com/knorth55/eus_teleop/master/baxter.rosinstall
wstool merge https://raw.githubusercontent.com/knorth55/eus_teleop/master/baxter.rosinstall.$ROS_DISTRO

# Only for dragon users
wstool merge https://raw.githubusercontent.com/knorth55/eus_teleop/master/dragon.rosinstall

wstool up
rosdep install --ignore-src --from-path . -y -r -i

# Only for baxter users
source ~/jsk_apc_ws/devel/setup.bash

cd ~/teleop_ws
catkin config
catkin build

How to start

Start procedure

  • Connect Vive HMD and Lighthouse and power on the controller.
  • Place Lighthouse B in front of you.
  • Start one of launch files below.
  • If you don’t use HMD, press Calibrate button and do arm calibration.
  • Press Enable button in GUI to start teleoperation.

Arm calibration (Only for no HMD mode)

The arm calibration is required for no HMD mode in order to measure your position and your arm length.

  • Press Calibrate l/rarm button in GUI
  • Listen to the voice instruction.
  • Stretch your left/right arm and Press Trigger after the first instruction.
  • Listen to the voice instruction again.
  • Fold your left/right arm and Press Trigger after the second instruction.
  • If calibration failed, please try again.

PR2 + Vive

https://user-images.githubusercontent.com/9300063/213145161-4b2acb89-9545-460a-b5cc-d05a111a187b.mp4

PR2 + Vive in JSK 73B2 or 610

rossetip
rossetmaster pr1040
# HMD mode
roslaunch eus_teleop pr2_vive.launch
# No HMD mode
roslaunch eus_teleop pr2_vive.launch head:=false

PR2 + Vive in Gazebo

roslaunch pr2_gazebo pr2_empty_world.launch
roslaunch eus_teleop pr2_vive_gazebo.launch

PR2 + Tablis

https://user-images.githubusercontent.com/9300063/208720417-176d698e-3789-42a8-931f-2a9fc9e062a0.mp4

PR2 + Tablis in JSK 73B2 or 610

rossetip
rossetmaster pr1040
roslaunch eus_teleop pr2_tablis.launch

PR2 + Tablis in Gazebo

Launch Tablis in Choreonoid
roscd eus_teleop/scripts/tablis
./start-tablis-sim.sh

roscd eus_teleop/scripts/tablis
ipython -i tablis_setup.py
hcf.servoOn()
hcf.hc_svc.startHapticsController()

Launch bridge
roscd eus_teleop/scripts/tablis
./start-bridge-sim.sh

Launch PR2 in Gazebo
roslaunch pr2_gazebo pr2_empty_world.launch
roslaunch eus_teleop pr2_tablis_gazebo.launch

PR2 + SpaceNav

https://user-images.githubusercontent.com/9300063/213137459-ce5f7075-acee-4a47-934a-97a4296fdc49.mp4

PR2 + SpaceNav in JSK 73B2

rossetip
rossetmaster pr1040
roslaunch eus_teleop pr2_spacenav.launch

PR2 + SpaceNav in Gazebo

roslaunch pr2_gazebo pr2_empty_world.launch
roslaunch eus_teleop pr2_spacenav_gazebo.launch

Baxter + Vive

https://user-images.githubusercontent.com/9300063/213144997-0d224d5c-b462-43a7-b759-0233fff41d94.mp4

Baxter + Vive in JSK 73B2

rossetip
rossetmaster baxter
# HMD mode
roslaunch eus_teleop baxter_vive.launch
# No HMD mode
roslaunch eus_teleop baxter_vive.launch head:=false

Baxter + Vive in Gazebo

roslaunch baxter_gazebo baxter_world.launch
roslaunch eus_teleop baxter_vive_gazebo.launch

Baxter + Tablis

https://user-images.githubusercontent.com/9300063/208720482-b7ef0abb-e948-448c-be51-521c0c7af8a2.mp4

Baxter + Tablis in JSK 73B2 or 610

rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_tablis.launch

Baxter + Tablis in Gazebo

Launch Tablis in Choreonoid
roscd eus_teleop/scripts/tablis
./start-tablis-sim.sh

roscd eus_teleop/scripts/tablis
ipython -i tablis_setup.py
hcf.servoOn()
hcf.hc_svc.startHapticsController()

Launch bridge
roscd eus_teleop/scripts/tablis
./start-bridge-sim.sh

Launch Baxter in Choreonoid
roslaunch baxter_gazebo baxter_world.launch
roslaunch eus_teleop baxter_tablis_gazebo.launch

Baxter + SpaceNav

Baxter + SpaceNav in JSK 73B2

rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_spacenav.launch

Baxter + SpaceNav in Gazebo

roslaunch baxter_gazebo baxter_world.launch
roslaunch eus_teleop baxter_spacenav_gazebo.launch

Baxter + MoveIt!

Real Robot in JSK 73B2

rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_moveit.launch

Dragon + SpaceNav

https://user-images.githubusercontent.com/9300063/210754022-7df92fd5-4875-4465-9738-7efdf5649093.mp4

Dragon + SpaceNav in Gazebo

roslaunch dragon bringup.launch simulation:=true real_machine:=false headless:=false
roslaunch eus_teleop dragon_spacenav_gazebo.launch

JAXON + SpaceNav

https://user-images.githubusercontent.com/9300063/212047815-e1f2a5ed-cf51-4782-b892-66752effe41d.mp4

JAXON + SpaceNav in Choreonoid

Launch JAXON in Choreonoid
roscd eus_teleop/scripts/jaxon
./start-jaxon_with_rhp3hand-sim.sh

roscd eus_teleop/scripts/jaxon
ipython -i jaxon_with_rhp3hand_setup.py
hcf.ast_svc.startAutoBalancer()
hcf.ast_svc.startStabilizer()
hcf.ast_svc.startWholeBodyMasterSlave()

Launch eus_vive for SpaceNav
roslaunch eus_teleop jaxon_spacenav_choreonoid.launch

JAXON + Tablis

https://user-images.githubusercontent.com/9300063/212932317-407102d1-093f-4729-b00a-f367bbbcb40d.mp4

JAXON + Tablis in Choreonoid

Launch Tablis in Choreonoid
roscd eus_teleop/scripts/tablis
./start-tablis-sim.sh

roscd eus_teleop/scripts/tablis
ipython -i tablis_setup.py
hcf.servoOn()
hcf.hc_svc.startHapticsController()

Launch JAXON in Choreonoid
roscd eus_teleop/scripts/jaxon
./start-jaxon_with_rhp3hand-sim.sh

roscd eus_teleop/scripts/jaxon
ipython -i jaxon_with_rhp3hand_setup.py
hcf.ast_svc.startAutoBalancer()
hcf.ast_svc.startStabilizer()
hcf.ast_svc.startWholeBodyMasterSlave()

Launch bridge and wbms core
roscd eus_teleop/scripts/jaxon
./start-jaxon-eus-teleop-sim.sh

Launch eus_vive for Tablis
roslaunch eus_teleop jaxon_tablis_choreonoid.launch

Demo & Experiments

Miraikan Demo 2019/08/23-24

rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_vive_mirror.launch

Miraikan Demo 2020/09/11-13

Robot control PC (Robot side)
rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_remote.launch

Vive control PC (Pilot side)
rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_vive_remote.launch

Visualization, display and feedback PC (Pilot side)
rossetip
rossetmaster baxter
roslaunch eus_teleop baxter_display_remote.launch

How to use Vive controller

Vive controller

PR2

Button Usage
1 / Menu Control toggle: base/arm (Default: base)
3 / Stream Menu Steam Menu
8 / Grip Not used

Arm mode

You can enable arm mode of right and left arm separately.

Command Usage
7 / Trigger Gripper toggle: open/close in Toggle grasp mode (Default: open)
7 / Trigger Gripper toggle: open only when trigger is pressed in Hold grasp mode
Controller pose robot end effector’s pose

Base mode

Base mode is enabled when both arms are disabled in Arm mode.

Command Usage
2 / Trackpad Torso control: right: down / left: up
2 / Trackpad + 7 / Trigger (right) Safe base control: right: x, y / left: w
2 / Trackpad + 7 / Trigger (right + left) Unsafe base control: right: x, y / left: w

Baxter

Button Usage
2 / Trackpad Control toggle: stop / arm (Default: stop)
3 / Stream Menu Steam Menu
8 / Grip Not used

Arm mode

You can enable arm mode of right and left arm separately.

Command Usage
7 / Trigger Gripper toggle: open/close (Default: open)
Controller pose robot end effector’s pose

How to use GUI control

Teleoperation control buttons

Button Usage
Reset Diable and reset robot to initial posture
Enable Enable robot
Disable Disable robot
Calibrate larm/rarm Calibrate with left/right arm

Arm & Gripper control buttons

Button Usage
Reset larm/rarm Reset only left/right arm
Enable larm/rarm Enable only left/right arm
Disable larm/rarm Disable only left/right arm
Start grasp lgripper/rgripper Start grasp only left/right gripper
Stop grasp lgripper/rgripper Stop grasp only left/right gripper
Toggle grasp mode Change to Toggle grasp mode
Hold grasp mode Change to Hold grasp mode

Tips

Baxter Network Configuration

Open Field Service Menu and change network configuration

VPNC Install

sudo apt install libgcrypt20-dev libgnutls28-dev
git clone https://github.com/streambinder/vpnc.git
cd vpnc
git checkout 1cf24ed6aa4a04b4b01cc9ebfacbad723eed04f5
make
sudo make install
cd ..
git clone git://git.infradead.org/users/dwmw2/vpnc-scripts.git
cd vpnc-scripts
sudo cp vpnc-script /etc/vpnc

VPNC Command for Fortigate

sudo vpnc --local-port 0 --gateway <gateway> --id ipsecvpn --username <username> --pfs dh5 --dh dh5 --auth-mode psk --no-detach --vendor fortigate --dh dh5

Demo Video

PR2 Fridge demo

Baxter APC demo

CHANGELOG

Changelog for package eus_teleop

0.1.17 (2023-05-28)

  • add eus_teleop
  • Contributors: Shingo Kitagawa

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Launch files

  • sample/tablis/baxter/baxter_tablis_gazebo.launch
      • main [default: true]
      • vive_set [default: default]
      • head [default: true]
      • button_toggle [default: true]
      • mirror [default: false]
      • display [default: true]
  • sample/tablis/baxter/baxter_tablis.launch
      • main [default: true]
      • vive_set [default: default]
      • head [default: true]
      • mirror [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • republish [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/tablis/baxter/baxter_tablis_remote.launch
      • main [default: true]
      • vive [default: true]
      • head [default: true]
      • mirror [default: false]
      • vive_set [default: default]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/tablis/jaxon/jaxon_tablis.launch
      • main [default: true]
      • button_toggle [default: true]
  • sample/tablis/jaxon/jaxon_tablis_choreonoid.launch
      • main [default: true]
      • button_toggle [default: true]
  • sample/tablis/pr2/pr2_tablis.launch
      • main [default: true]
      • vive_set [default: default]
      • head [default: true]
      • button_toggle [default: true]
      • kinfu [default: false]
      • mirror [default: false]
      • display [default: true]
  • sample/tablis/pr2/pr2_tablis_gazebo.launch
      • main [default: true]
      • vive_set [default: default]
      • head [default: true]
      • button_toggle [default: true]
      • mirror [default: false]
      • display [default: true]
  • sample/vive/baxter/baxter_vive_remote.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • mirror [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/vive/baxter/baxter_vive_mirror.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • republish [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/vive/baxter/baxter_vive.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • mirror [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • republish [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/vive/baxter/baxter_vive_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • mirror [default: false]
      • button_toggle [default: true]
      • display [default: true]
  • sample/vive/pr2/pr2_vive_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • button_toggle [default: true]
      • display [default: true]
  • sample/vive/pr2/pr2_vive.launch
      • main [default: true]
      • vive [default: true]
      • vive_set [default: default]
      • head [default: true]
      • button_toggle [default: true]
      • kinfu [default: false]
      • display [default: true]
  • sample/common/baxter_remote.launch
      • head [default: true]
      • respeaker [default: true]
      • logging [default: true]
      • twitter [default: true]
      • influxdb [default: true]
      • debug [default: false]
      • home_dir [default: $(env HOME)]
      • mask_rcnn [default: false]
      • custom_xdisplay [default: true]
      • launch_xdisplay [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • arm_interpolation [default: bezier_with_velocity]
      • arm_control_mode [default: velocity]
      • moveit [default: false]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
  • sample/common/baxter_display_remote.launch
      • head [default: false]
      • respeaker [default: true]
      • mirror [default: false]
      • republish [default: true]
      • logging [default: true]
      • rqt_gui [default: true]
      • camera_ns [default: realsense_torso]
      • spherical_camera_ns [default: kodak_head]
      • spherical_stereo [default: true]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
  • sample/common/baxter_moveit_remote.launch
      • head [default: true]
      • respeaker [default: true]
      • logging [default: true]
      • twitter [default: true]
      • influxdb [default: true]
      • debug [default: false]
      • home_dir [default: $(env HOME)]
      • mask_rcnn [default: false]
      • custom_xdisplay [default: true]
      • launch_xdisplay [default: false]
      • realsense_camera [default: true]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • arm_interpolation [default: minjerk]
      • arm_control_mode [default: position_w_id]
      • moveit [default: true]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • gui [default: true]
      • launch_tabletop_detector [default: true]
      • launch_grasp_mask_rcnn [default: false]
  • sample/other/baxter/baxter_moveit.launch
      • realsense_camera [default: true]
      • spherical_camera [default: false]
      • logging [default: true]
      • arm_interpolation [default: minjerk]
      • arm_control_mode [default: position_w_id]
      • moveit [default: true]
      • gui [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • launch_tabletop_detector [default: true]
  • sample/oculus/baxter/baxter_oculus_gazebo.launch
      • main [default: true]
      • button_toggle [default: true]
      • display [default: true]
  • sample/oculus/baxter/baxter_oculus.launch
      • main [default: true]
      • head [default: false]
      • mirror [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
  • sample/oculus/pr2/pr2_oculus.launch
      • main [default: true]
      • kinfu [default: false]
      • button_toggle [default: true]
      • display [default: true]
  • sample/oculus/pr2/pr2_oculus_gazebo.launch
      • main [default: true]
      • button_toggle [default: true]
      • display [default: true]
  • sample/spacenav/dragon/dragon_spacenav.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
  • sample/spacenav/dragon/dragon_spacenav_gazebo.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
  • sample/spacenav/baxter/baxter_spacenav.launch
      • main [default: true]
      • head [default: false]
      • mirror [default: false]
      • logging [default: false]
      • display [default: true]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand-v2]
      • button_toggle [default: true]
  • sample/spacenav/baxter/baxter_spacenav_gazebo.launch
      • main [default: true]
      • button_toggle [default: true]
      • display [default: true]
  • sample/spacenav/jaxon/jaxon_spacenav.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
  • sample/spacenav/jaxon/jaxon_spacenav_choreonoid.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
  • sample/spacenav/pr2/pr2_spacenav.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
      • kinfu [default: false]
      • display [default: true]
  • sample/spacenav/pr2/pr2_spacenav_gazebo.launch
      • main [default: true]
      • spacenav [default: true]
      • button_toggle [default: true]
      • display [default: true]
  • launch/tablis/tablis_bridge_leader.launch
      • filtered [default: false]
  • launch/tablis/tablis_bridge_follower.launch
  • launch/dragon/dragon_teleop_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: true]
      • device [default: spacenav]
      • head [default: false]
      • mirror [default: false]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/dragon/dragon_teleop.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: true]
      • device [default: spacenav]
      • head [default: false]
      • mirror [default: false]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/baxter/baxter_teleop_display.launch
      • head [default: true]
      • respeaker [default: true]
      • mirror [default: false]
      • republish [default: false]
      • logging [default: true]
      • rqt_gui [default: true]
      • home_dir [default: $(env HOME)]
      • compress [default: false] — whether compress rosbag or not.
      • main_name [default: /baxter_teleop_main]
      • camera_ns [default: realsense_torso]
      • spherical_camera_ns [default: kodak_head]
      • spherical_stereo [default: true]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • hmd_left_image [default: /virtual_camera/left/rviz_image]
      • hmd_right_image [default: /virtual_camera/right/rviz_image]
      • REALSENSE_IMAGE_TYPE [default: x264]
      • REALSENSE_DEPTH_TYPE [default: compressedDepth]
      • SPHERICAL_IMAGE_TYPE [default: x264]
      • SPHERICAL_STEREO_IMAGE_TYPE [default: x264]
  • launch/baxter/baxter_tabletop_object_detector.launch
      • input_cloud
      • input_image
      • camera_frame_id
      • manager
      • launch_transformable_server [default: true]
      • clip [default: true]
  • launch/baxter/baxter_teleop.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: false]
      • tablis [default: false]
      • device [default: vive]
      • head [default: true]
      • respeaker [default: true]
      • mirror [default: false]
      • logging [default: true]
      • twitter [default: true]
      • debug [default: false]
      • home_dir [default: $(env HOME)]
      • mask_rcnn [default: false]
      • display [default: true]
      • custom_xdisplay [default: true]
      • launch_baxter [default: true]
      • launch_xdisplay [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • republish [default: false]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
      • arm_interpolation [default: bezier_with_velocity]
      • arm_control_mode [default: velocity]
      • moveit [default: false]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • hmd_left_image [default: /virtual_camera/left/rviz_image]
      • hmd_right_image [default: /virtual_camera/right/rviz_image]
  • launch/baxter/baxter_rosbag_record.launch
      • output_prefix [default: baxter]
      • compress [default: false] — whether compress rosbag or not.
      • camera_ns [default: realsense_torso]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
  • launch/baxter/baxter_realsense_torso.launch
      • launch_transformable_server [default: true]
      • launch_tabletop_detector [default: false]
      • launch_grasp_mask_rcnn [default: false]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • camera_frame_id [default: $(arg camera_ns)_color_optical_frame]
      • manager [default: $(arg camera_ns)_camera_manager]
      • input_cloud [default: /$(arg camera_ns)/depth_registered/quarter/points]
      • input_image [default: /$(arg camera_ns)/depth_registered/quarter/image]
  • launch/baxter/baxter_logging.launch
      • twitter [default: true]
      • influxdb [default: true]
      • debug [default: false]
      • camera [default: true]
      • camera_ns [default: realsense_torso]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • twitter_image_topics [default: /$(arg camera_ns)/color/image_rect_color]
      • home_dir [default: $(env HOME)]
      • compress [default: false] — whether compress rosbag or not.
      • position_diff_threshold [default: 0.01]
  • launch/baxter/baxter.launch
      • head [default: true]
      • respeaker [default: true]
      • logging [default: true]
      • twitter [default: true]
      • influxdb [default: true]
      • debug [default: false]
      • home_dir [default: $(env HOME)]
      • mask_rcnn [default: false]
      • custom_xdisplay [default: true]
      • launch_xdisplay [default: false]
      • realsense_camera [default: false]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • launch_tabletop_detector [default: false]
      • launch_grasp_mask_rcnn [default: false]
      • arm_interpolation [default: bezier_with_velocity]
      • arm_control_mode [default: velocity]
      • moveit [default: false]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • xdisplay_max_width [default: 1024]
      • xdisplay_max_width [default: 1920]
      • xdisplay_max_height [default: 600]
      • xdisplay_max_height [default: 1200]
      • camera_ns [default: realsense_torso]
      • camera_type [default: l515]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
  • launch/baxter/baxter_db_client.launch
      • camera [default: true]
      • camera_ns [default: realsense_torso]
      • spherical_camera [default: true]
      • spherical_stereo [default: true]
      • spherical_camera_ns [default: kodak_head]
      • spherical_left_camera_ns [default: elp_head_left]
      • spherical_right_camera_ns [default: elp_head_right]
      • output [default: screen]
      • log_rate [default: 5.0]
      • respawn [default: true]
      • enable_monitor [default: false]
      • vital_check [default: true]
      • debug [default: false]
  • launch/baxter/baxter_rosbag_play.launch
      • rosbag
      • camera_ns [default: realsense_torso]
      • gui [default: true]
      • loop [default: true]
      • lgripper_type [default: softhand]
      • rgripper_type [default: softhand]
      • manager [default: rosbag_play_nodelet_manager]
      • finger [default: standard_narrow]
      • finger_tip [default: paddle_tip]
      • left_electric_gripper [default: $(eval arg('lgripper_type') == 'parallel')]
      • right_electric_gripper [default: $(eval arg('rgripper_type') == 'parallel')]
  • launch/baxter/baxter_grasp_mask_rcnn.launch
      • input_image
      • input_cloud
      • manager
      • sampling [default: false]
      • data_collection [default: true]
      • target_grasp [default: false]
      • model_file [default: $(find dualarm_grasping)/models/dualarm_occluded_grasp/self_anno/20181227_model_iter_4559.npz]
      • config_yaml [default: $(find dualarm_grasping)/models/dualarm_occluded_grasp/self_anno/20181227_params.yaml]
      • target_yaml [default: $(find eus_teleop)/config/baxter/grasp_mask_rcnn_target_names.yaml]
      • label_yaml [default: $(find dualarm_grasping)/yaml/dualarm_occluded_grasping_label_names.yaml]
  • launch/baxter/baxter_teleop_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: false]
      • tablis [default: false]
      • device [default: vive]
      • head [default: false]
      • mirror [default: false]
      • display [default: true]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/baxter/baxter_visualization.launch
  • launch/jaxon/jaxon_teleop.launch
      • main [default: true]
      • vive [default: false]
      • spacenav [default: true]
      • device [default: spacenav]
      • head [default: false]
      • mirror [default: false]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/jaxon/jaxon_teleop_choreonoid.launch
      • main [default: true]
      • vive [default: false]
      • spacenav [default: true]
      • device [default: spacenav]
      • head [default: false]
      • mirror [default: false]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/include/elp_usb.launch
      • camera_name [default: elp_head]
      • index [default: 0]
      • machine [default: localhost]
      • load_machinepath [default: false]
      • machinepath [default: false]
  • launch/include/audio_play.launch
      • audio_ns [default: remote_audio]
      • format [default: wave]
      • dst [default: alsasink]
      • do_timestamp [default: false]
  • launch/include/rqt_gui.launch
  • launch/include/kinfu.launch
      • CAMERA_INFO
      • IMAGE_DEPTH
      • IMAGE_COLOR
  • launch/include/vive.launch
      • hmd_left_image [default: /virtual_camera/left/rviz_image]
      • hmd_right_image [default: /virtual_camera/right/rviz_image]
  • launch/include/mask_rcnn.launch
      • INPUT_IMAGE
      • gpu [default: 0]
  • launch/include/insta360_air.launch
      • camera_name [default: insta_head]
  • launch/include/respeaker.launch
  • launch/include/realsense.launch
      • camera_ns
      • manager
      • publish_tf
      • color_width
      • color_height
      • depth_width
      • depth_height
  • launch/include/realsense_l515.launch
      • camera_ns [default: realsense]
      • manager [default: realsense_camera_manager]
      • publish_tf [default: false]
      • color_width [default: 960]
      • color_height [default: 540]
      • depth_width [default: 640]
      • depth_height [default: 480]
  • launch/include/realsense_d435.launch
      • camera_ns [default: realsense]
      • manager [default: realsense_camera_manager]
      • publish_tf [default: false]
      • color_width [default: 640]
      • color_height [default: 480]
      • depth_width [default: 640]
      • depth_height [default: 480]
  • launch/include/kodak_pixpro.launch
      • camera_name [default: kodak_head]
  • launch/pr2/pr2_logging.launch
      • CAMERA_INFO
      • RGB_CAMERA_INFO
      • COMP_IMAGE_COLOR
      • COMP_IMAGE_DEPTH
      • home_dir [default: $(env HOME)]
      • compress [default: false] — whether compress rosbag or not.
  • launch/pr2/pr2_teleop_gazebo.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: false]
      • tablis [default: false]
      • device [default: vive]
      • head [default: false]
      • mirror [default: false]
      • display [default: true]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
  • launch/pr2/pr2_teleop.launch
      • main [default: true]
      • vive [default: true]
      • spacenav [default: false]
      • tablis [default: false]
      • device [default: vive]
      • head [default: true]
      • respeaker [default: true]
      • mirror [default: false]
      • logging [default: true]
      • kinfu [default: false]
      • display [default: true]
      • home_dir [default: $(env HOME)]
      • button_toggle [default: true]
      • workspace_max_x [default: false]
      • workspace_min_x [default: false]
      • workspace_max_y [default: false]
      • workspace_min_y [default: false]
      • workspace_max_z [default: false]
      • workspace_min_z [default: false]
      • hmd_left_image [default: /virtual_camera/left/rviz_image]
      • hmd_right_image [default: /virtual_camera/right/rviz_image]
      • DECOMP_CAMERA_INFO [default: /kinect_head_decompressed/depth_registered/camera_info]
      • DECOMP_RGB_CAMERA_INFO [default: /kinect_head_decompressed/rgb/camera_info]
      • DECOMP_IMAGE_DEPTH [default: /kinect_head_decompressed/depth_registered/image_rect]
      • DECOMP_IMAGE_COLOR [default: /kinect_head_decompressed/rgb/image_rect_color]
      • DECOMP_POINTS [default: /kinect_head_decompressed/depth_registered/points]
      • CAMERA_INFO [default: /kinect_head/depth_registered/camera_info]
      • RGB_CAMERA_INFO [default: /kinect_head/rgb/camera_info]
      • IMAGE_COLOR [default: /kinect_head/rgb/image_rect_color]
      • IMAGE_DEPTH [default: /kinect_head/depth_registered/image_rect]
      • IMAGE_DEPTH_TYPE [default: compressedDepth]
      • COMP_IMAGE_COLOR [default: /kinect_head/rgb/image_rect_color/compressed]
      • COMP_IMAGE_DEPTH [default: /kinect_head/depth_registered/image_rect/compressedDepth]
  • launch/pr2/pr2_teleop_display.launch
      • kinfu [default: false]
      • respeaker [default: true]
      • DECOMP_CAMERA_INFO [default: /kinect_head_decompressed/depth_registered/camera_info]
      • DECOMP_RGB_CAMERA_INFO [default: /kinect_head_decompressed/rgb/camera_info]
      • DECOMP_IMAGE_DEPTH [default: /kinect_head_decompressed/depth_registered/image_rect]
      • DECOMP_IMAGE_COLOR [default: /kinect_head_decompressed/rgb/image_rect_color]
      • DECOMP_POINTS [default: /kinect_head_decompressed/depth_registered/points]
      • CAMERA_INFO
      • RGB_CAMERA_INFO
      • IMAGE_COLOR
      • IMAGE_DEPTH
      • IMAGE_DEPTH_TYPE

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eus_teleop at Robotics Stack Exchange