PILZ robot manipulator module PRBT 6 in ROS
The meta package for the PILZ manipulator PRBT 6. Here you can find documentation of the individual packages. For a general overview and link collection we refer to the wiki page.
To use the packages, you can install prebuilt packages with
sudo apt install ros-kinetic-pilz-robots or sudo apt install ros-melodic-pilz-robots
The package contains the robot description of the PRBT manipulator.
urdf/contains the xacros for generating the urdf descriptions of the PILZ robot PRBT.
meshes/contains the stl files for visualization
test/contains test files for urdf
- build tests:
- build and run tests:
- build tests:
config/defines the controllers and drivers. Loads the specialized
Pilz Coordinate Frames
To see the robot in rviz you can use
roslaunch prbt_support test_urdf.launch
Configure the tcp
You can easily adjust the tool center point frame with an offset and rotation in the xacro file.
- Open prbt_support/urdf/prbt.xacro
- Edit the lines to your desired offset
<xacro:unless value="$(arg gripper)"> <xacro:arg name="tcp_offset_xyz" default="0 0 0"/> <xacro:arg name="tcp_offset_rpy" default="0 0 0"/> </xacro:unless>
Note: You can set a different default if you have a gripper attached.
The package is generated by moveit setup assistant. It contains configuration files and launch files needed to start up the robot including planning and execution.
Configuring the robot
Use the launch file
moveit_planning_execution.launch to bringup the robot controllers
with the complete moveit pipeline.
The launch file allows to set optional parameters
true: Use fake execution and display emulated robot position in RViz
false: connect to real robot using
Planning pipeline to use with moveit
Load robot description to parameter server. Can be set to false to let someone else load the model
Start RViz with default configuration settings. Once you have changed the configuration and have saved it inside your package folder, set the path and file name here.
See Running the prbt with a gripper
Connect to the safety controller that handles the safe-torque-off signal. Only relevant for
sim:=Falseto issue a Safe stop 1. See prbt_hardware_support package.
Running the simulation
roslaunch prbt_moveit_config moveit_planning_execution.launch sim:=true pipeline:=ompl
- Use the moveit Motion Planning rviz plugin to plan and execute (see e.g. ROS-I training exercise 3.4)
Running on the real robot
- Bringup can:
sudo ip link set can0 up type can bitrate 1000000(after every reboot or reconnect of the CAN hardware). For persistent configuration append the following to the file
auto can0 iface can0 can static bitrate 1000000
roslaunch prbt_moveit_config moveit_planning_execution.launch sim:=false pipeline:=ompl
- Use the moveit Motion Planning rviz plugin to plan and execute (see simulation section; set
Velocity Scalingto 0.1 first)
Instead of OMPL use the motion planners of Pilz for executing industrial robot commands like PTP, LIN, etc. For this install the package pilz_trajectory_generation:
sudo apt install ros-kinetic-pilz-trajectory-generation or sudo apt install ros-melodic-pilz-trajectory-generation
then replace the pipeline in the above command by
Adjust expert paramters
If you've created an application package with your own launch file as described in the tutorials, you can easily adjust many other configuration parameters. See the template and comments in the pilz_tutorials package.
Running the prbt with a gripper
Currently only the Schunk pg70 is supported. To run it, first install the package:
sudo apt install ros-kinetic-prbt-pg70-support or sudo apt install ros-melodic-prbt-pg70-support
then start the robot like before but with the
gripper:=pg70 set. Both simulation and real robot work.
The package contains a moveit plugin for inverse kinematics of the manipulator, which is a
ikfast.cpp to the kinematics base interface of moveit.
Contains a specialized version of
ros_controllers::JointTrajectoryController which can be put into a holding mode.
A controlled stop using a hold trajectory is performed thus stopping the manipulator without the mechanical stress of a hard brake.
This package provides support for the Pilz hardware PNOZmulti and realizes the Stop1 functionality. A configurable modbus connection is set up via
roslaunch prbt_hardware_support modbus_read_client.launch.
Provides a launch file to run the prbt manipulator inside gazebo.
You need further information?
Our international hotline staff will support you individually about our ROS packages at email@example.com
Find more information about the Pilz manipulator module on the product website.
Pilz is an international-scale, innovative automation technology company. Pilz uses its solutions to create safety for man, machine and the environment. In addition to head office in Ostfildern near Stuttgart, the family business is represented over 2,400 employees at 42 subsidiaries and branches on all continents.
The company’s products include sensor technology, electronic monitoring relays, safety relays, configurable and programmable control systems, automation solutions with motion control, systems for industrial communication as well as visualization solutions and operator terminals.
Pilz solutions can be used in all areas of mechanical engineering, including the packaging and automotive sector, plus the railway technology, press and wind energy sectors. These solutions ensure that baggage handling systems run safely at airports and funiculars or roller coasters travel safely; they also guarantee fire protection and energy supply in buildings.