Robotic product handling simulation
Lillian Moller Gilbreth was an American psychologist and industrial engineer.
The project is based on Ubuntu 18.04, ROS Kinect, gazebo 9.0, wstool and catkin tools. Links to the instructions for installing ROS, Gazebo, etc. are provided below
-
Source the ROS environment script
source /opt/ros/kinetic/setup.bash
-
Create a "gilbreth_ws" catkin workspace
mkdir -p ~/gilbreth_ws/src cd ~/gilbreth_ws/ catkin init
-
Fetch the gilbreth source code:
cd ~/gilbreth_ws/src wstool init . wstool merge https://raw.githubusercontent.com/swri-robotics/gilbreth/kinetic-devel/gilbreth.rosinstall wstool update rosdep install --from-paths . --ignore-src -y
-
Build the workspace
cd ~/gilbreth_ws catkin build
-
Source the catkin workspace
cd ~/catkin_ws source devel/setup.bash
roslaunch urdf_tutorial display.launch model:=$(rospack find gilbreth_support)/urdf/gilbreth.xacro
It may be necessary to select "world" in the "Fixed Frame" drop down in the rviz window.
-
Launch the gazebo simulation environment:
roscd gilbreth_gazebo roslaunch gilbreth_gazebo gilbreth_environment.launch rviz:=false
- Use "rviz:=true" to show rviz
-
Activate the gripper:
rosservice call /gilbreth/gripper/control "enable: true"
Use "false" in order to turn off the gripper
-
Activate the conveyor:
rosservice call /gilbreth/conveyor/control "state: power: 100.0"
The "power" can range from 0.0 to 100.0. Use 0.0 to stop the conveyor
-
Start the part spawner:
rosservice call /start_spawn "{}"
This command will make parts appear on the conveyor at random intervals. The frequency, types of parts and other properties can be configured in this yaml file
-
Stop the part spawner
rosservice call /stop_spawn "{}"