Test your installation¶
We’re gonna test a few components to make sure everything is working correctly.
- The
catkin build
during install command has no errors - Gazebo starts normally
- lwr_utils starts normally
- Gazebo inside orocos (embedded) starts normally
Important
The Gazebo server in the final setup is launched inside the gazebo
component (that you can see if you type ls
).
You will not be able to launch gazebo separately, it has to be instanciated inside the orocos deployer via this method.
This component is provided by the rtt_gazebo_embedded package.
Making sure everything is built¶
Every one of these commands should provide no errors (all green).
# Orocos Toolchain 2.9
catkin build -s -w ~/isir/orocos-2.9_ws
# Orocos-ROS bridge
catkin build -s -w ~/isir/rtt_ros-2.9_ws
# Rtt lwr
catkin build -s -w ~/isir/lwr_ws
Gazebo¶
Gazebo needs to get some models at the first launch, so in a terminal type :
gzserver --verbose
Then ctrl+C
to close it and type :
gazebo
Gazebo-ROS¶
Gazebo with ROS plugin¶
Start the roscore : roscore
Close any instance of gazebo running, and then launch gazebo with the ros plugins :
gazebo -s libgazebo_ros_paths_plugin.so -s libgazebo_ros_api_plugin.so --verbose
Upload the robot’s URDF¶
roslaunch lwr_description lwr_upload.launch
# you can also pass load_ati_sensor:=true load_handle:=true load_base:=true
Note
If the ROS API is loaded correctly, this command should exit immediately
Spawn to robot into Gazebo¶
roslaunch lwr_utils spawn_robot.launch robot_name:=lwr_sim
Note
If the model has been correctly uploaded, this command should also exit immediately
Gazebo inside the OROCOS Deployer¶
Important
Close all previous nodes, roscore, deployers, windows etc, and start the main deployer with gazebo.
Now gazebo is launched inside the orocos deployer !
roslaunch lwr_utils run.launch sim:=true
# this launches gazebo inside the orocos deployer
Note
You can see the robot in the gazebo gui because the model is spawned into gazebo via the main launch file. Still, it has no interface to send commands, what we’ll do in the next step.
Now type :
# Load the lwr interface in the deployer
loadRobot(getRobotName(), isSim(), true)
# Let it load, then print the components :
ls
You should see all the components running [R]
: