One of the highlights of the Gazebo 4.0.0 release is the added support for the trending VR platform: Oculus-Rift. This navigator is a simple tool that exploits the capabilities of the simulation environment's physics-engine to provide you with the ultimate virtual-reality experience in Gazebo. So simulation will no longer be just a part of development, but instead act as a new medium to demostrate your product to clients in its work environment (in the glory of full-scale).
Oculus-Rift Gazebo Navigator was featured on Gazebo's blog (Open Source Robotics Foundation).
Checkout the real AGV by Hope Technik: SESTO Autonomous Trolley.
Core: ROS Hydro, Catkin: see package.xml
Custom Requirements: Gazebo 4.0.0, oculussdk
Other Requirements: ps3joy (Ubuntu) or osx_joystick (OSX)
See the wiki for more details.
Spawn Navigator (Empty world):
$ roslaunch oculus_gazebo_navigator example_oculus_ps3.launch
Credit: Jonathan Bohren
-
Select Button: robot mode control
default - toggle autonomous navigation mode
a. Hold L2 - toggle isolated-bot control mode
b. Hold R2 - toggle mirror-bot mode (playback rosbag data)
-
Left Joystick: virtual-camera maneuver
Normal-bot control:
default - walking speed
a. Hold L2 - running speedIsolated-bot control:
default - normal speed (x, y bot maneuver)
b. Hold L2 - high speed (x, y bot maneuver) -
Right Joystick: robot-teleop
Normal-bot control:
default - normal speed (x, y bot maneuver)
a. Hold R2 - normal speed rotation (yaw bot maneuver)
b. Hold L2 - high speed (x, y bot maneuver)
c. Hold R2 & L2 - high speed rotation (yaw bot maneuver)Isolated-bot control:
default - normal speed rotation (yaw bot maneuver)
a. Hold L2 - high speed rotation (yaw bot maneuver) -
Start Button:
All bot-control modes:
default – reset robot to spawn positionMirror-bot control:
Hold L2 & R2 - calibrate robot's origin frame offset -
Up Button: customizable request 1
-
Right Button: customizable request 2
-
Down Button: customizable request 3
-
Left Button: customizable request 4
-
Cross Button: toggle "X-ray vision" mode
-
Triangle Button: toggle "IronMan" mode
default - toggle gravity
a. R1 - up booster
b. L1 - down booster -
Square Button: toggle "Phasing" mode
Although you can control the virtual-camera using your keyboard, it's recommended that you use a PS3 controller for a more immersive experience. Also see issue #2.
To start the controller:
$ rosrun oculus_gazebo_navigator oculus_keyboard_controller
Instructions:
'w' forward, 's' back, 'a' left, 'd' right
'z' rotate leftwards, 'c' rotate rightwards
To run, hold 'shift' first and then press the corresponding buttons
'Q' to quit (i.e. Shift + 'q')