-
Notifications
You must be signed in to change notification settings - Fork 1
Getting Started
- Ubuntu 14.04 Trusty (this is the only distro we've tested on so far)
- ROS Indigo
- Stanley Vector Repo
- Gazebo 2 (included in ROS Indigo)
Currently we are using Gazebo 2 - the default Gazebo version that comes with Indigo. There are some plans to upgrade this to Gazebo 7, but currently it is not supported.
The simulator currently makes some assumptions about the platform.
- The Kinova Jaco2 Arm has velocity, position, and torque based control. The simulator supports only position based control. This is due to Gazebo being poor at setting joint velocities to 0. In velocity control the arm tends to drift. Future plans will add this ability, but for now only position trajectories can be sent.
- We communicate to the simulator robot through a conversion script that takes commands sent to the real robot topics and sends them to simulated topics. Unfortunately, the real robot uses low-level Kinova controllers for cartesian velocity control of the arm. To simulate this we use MoveIt! and a simple position estimation given a specific velocity. Future editions of this script will remove dependencies to MoveIt!
- To launch the teleop script, it is the same command that is run on the real robot:
roslaunch vector_remote_telop vector_remote_teleop.launch
The simulator has several flags that can toggle different functionality depending on what you want to be running at default launch. These flags are mostly identical to the ones in the hlpr_vector_wpi_jaco_moveit_config
package. These flags are used currently because we added Cartesian velocity teleop control to the simulator and it is linked to wpi_jaco and MoveIt!. You can find these flags in vector_controller.launch
By default teleop with the arm is disabled unless these flags are set. The flags are as follows:
-
moveit_launch
: This flag determines if we launch MoveIt! at all. If this is set to false, then the following flags will not matter. MoveIt! will not be launched and teleop with the arm is disabled in simulation. -
wpi_jaco_launch
: This flag will launch the wpi_jaco_arm launch filearm.launch
. This is currently the main driver we're using to interface with the arm -
use_wpi_jaco_exec
: This flag tells MoveIt! that we want to use the wpi_jaco_wrapper controllers to send commands when interfacing with MoveIt! If you do not want to send commands through MoveIt! then this can be sent to false. Warning You cannot set this to true and setwpi_jaco_launch
to false. MoveIt! will look for the wpi_jaco_wrapper driver and will crash because it cannot find it
This assumes you are continuing from the installation from the Stanley wiki.
- Clone the hlpr_simulation package
- We suggest putting it in a
~/Software/HLP-R/
folder
- Add hlpr_simulation package to your catkin workspace
ln -s ~/Software/HLP-R/hlpr_simulation/ ~/vector_ws/src/
- Run
catkin_make
on your workspace
Simply launch the whole pipeline (make sure your flags are set correctly in vector_controller.launch
)
roslaunch hlpr_gazebo vector.launch