Getting ready

We have already cloned the ABB robot packages in the previous section, and inside the abb folder, we could see several support packages which support varieties of ABB robots, such as:

  • abb_irb2400_support
  • abb_irb4400_support
  • abb_irb5400_support
  • abb_irb6600_support
  • abb_irb6640_support

Here, we are taking the ABB IRB 2400 model support package called abb_irb2400_support as a case study. The following screenshot shows the top-level directory layout for a robot support package:

ABB IRB 2400 support packages

In short, the config directory contains files that keep information such as joint names, rviz configurations, or any other model-specific configuration.

Similarly, the meshes directory stores all the 3D meshes referenced in the URDFs that are used for visualization and collision detection.

The launch directory contains a set of launch files that are used to support all packages. Moreover, each support package also contains a set of standardized (roslaunch) tests, which can be found in the test directory. These tests typically check the launch files during the launch for errors,  along with they may perform other tests also.

In addition, all URDFs and xacros are stored in the URDF directory:

  • config: Inside the config folder, there is a configuration file named joint_names_irb2400.yaml, which contains the joint names of the robot that are used by the ROS controller.
  • launch: The launch folder contains the launch file definitions of the robot. These files follow a common convention used by all industrial robots:
Launch
  • load_irb2400.launch: This file commonly loads robot_description on the parameter server and all xacro files in a single launch file. Therefore, instead of writing separate code for adding robot_description in other launch files, we could easily include this launch file.
  • test_irb2400.launch: This launch file can be used in visualization of the loaded URDF which includes the preceding launch files and starts the joint_state_publisher and robot_state_publisher nodes, which help us interact with the user on rviz.
  • robot_state_visualize_irb2400.launch: This launch file can be used in the visualization of the current state of the real robot which runs nodes from the ROS-I driver package with the appropriate parameters. However, this launch file needs a real robot or simulation interface. The current state of the robot is visualized by running rviz and the robot_state_publisher node.
  • robot_interface_download_irb2400.launch: This launch file could be used for bi-directional communication with the industrial robot controller to ROS and vice versa. In addition, this launch file also requires access to the simulation or real robot controller.
Establishing the communication between a real robot controller and ROS requires the IP addresses of the industrial controllers, where the controller should be running the ROS-I server programs.
  • urdf: This folder contains a set of standardized xacro files of the robot model:
URDF
  • irb2400_macro.xacro: This is the xacro definition of a specific robot.
  • irb2400.xacro: This is the top-level xacro file which creates an instance of the macro and doesn't include any other files other than the macro of the robot. This xacro file will be loading inside the load_irb2400.launch file which was discussed in the preceding section and chapter.
  • irb2400.urdf: This is the URDF generated from the preceding xacro file using the xacro tool. This file is used when the tools or packages can't load xacro directly, however, this is the top-level URDF for this robot.
  • meshes: This contains meshes for visualization and collision checking.
  • tests: This folder contains the test launch file to test all the preceding launch files.

We can experiment with the robot model using the test_irb2400.launch file, which will launch the test interface of the ABB IRB 2400 robot:

$ roslaunch abb_irb2400_support test_irb2400.launch

The preceding command will show the robot model in rviz with a joint state publisher node, as shown in the following screenshot:

ABB IRB 2400 with Joint State Publisher in rviz
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
52.14.126.74