The DENSO robot ROS2 stack contains libraries, configuration files, and ROS2 nodes for controlling a DENSO robot from ROS2 (MoveIt2 and Gazebo simulator).
The DENSO robot ROS2 stack contains packages that provide nodes for communication with DENSO industrial robot controllers (RC8/RC8A and RC9). The robot controller models that are currently supported are the following:
The supported robot models are the following:
Moreover, the DENSO robot ROS2 stack provides URDF models for COBOTTA and VS-060 robotic arms and associated MoveIt2 configuration packages (as standard components). To control other robot types, see the ROS2Converter page (under construction) for creating the URDF model and the associated MoveIt2 configuration package.
Robot control packages:
bcap_core
- core libraries for b-CAP communication protocolbcap_service_interfaces
- messages and services used by the bcap_core
nodebcap_service
- ROS2 node for low-level communication with robot controller through b-CAP protocoldenso_robot_core_interfaces
- actions and messages used by the denso_robot_core
nodedenso_robot_core
- ROS2 node that exposes Controller, Robot, Variables, Task classesdenso_robot_control
- hardware interface that exposes planning and control functions for a real DENSO robotRobot descriptions package:
denso_robot_desciptions
- description files for specific DENSO robot models (meshes, URDF, etc.)Motion planning packages:
denso_robot_moveit_config
- MoveIt2 configuration files for specific DENSO robot models (SRDF, controller types, etc.)denso_robot_moveit_demo
- ROS2 node for moving a robot (both simulated and real) using the MoveIt2 motion planner (8 fixed positions, according to the robot model)Startup package:
denso_robot_bringup
- main launch files and configuration settingsInstall ROS2 Humble
Make sure that colcon
, its extensions and vcs
are installed:
sudo apt install python3-colcon-common-extensions python3-vcstool
Create a new ROS2 workspace:
export COLCON_WS=~/workspace/denso_ros2_ws
mkdir -p $COLCON_WS/src
Pull denso_robot_ros2
packages:
cd $COLCON_WS
git clone -b humble https://github.com/DENSORobot/denso_robot_ros2.git src/denso_robot_drivers_ros2
vcs import src --skip-existing --input src/denso_robot_drivers_ros2/denso_robot_drivers_ros2.repos
To use MoveIt2, install the required packages (binary installation, Humble version).
Install dependencies (if not already installed):
sudo apt install ros-humble-ros2-control
sudo apt install ros-humble-ros2-controllers
Compile and source the workspace:
rosdep install --ignore-src --from-paths src -y -r
colcon build --cmake-args -DCMAKE_BUILD_TYPE=Release
source install/setup.bash
denso_robot_ros2
packages use b-CAP communication, which is ORiN2 communication standard, to control DENSO robots.
Following are the instructions to setup DENSO hardware in order to interface DENSO ROS2 nodes with simulated or real robot.
For controlling a WINCAPS III-simulated robot, a Windows computer is needed. Windows computer where WINCAPS III runs. The following steps show how to install and start a b-CAP server on the Windows machine.
Install WINCAPS III in Windows computer. ORiN2 SDK, VRC, and DENSO ROBOTICS License Manager are installed with WINCAPS III simultaneously.
License registration: to control a WINCAPS III-simulated robot, the licenses of ORiN2 SDK, VRC, and WINCAPS III are required. Please inquire the following licenses of our sales staff.
Application | License Type |
---|---|
ORiN2 SDK | DENSO Products or higher |
VRC | VRC kernel or higher |
WINCAPS III | WINCAPS III product version or higher |
To register ORiN2 SDK license, use CaoConfig application. From the Start menu, select [ORiN 2]-[CAO]-[CaoConfig].
License registration for ORiN2 SDK |
---|
To register licenses of VRC and WINCAPS III, use DENSO ROBOTICS License Manager application. From the Start menu, [DENSO ROBOTICS]-[LicenseManager].
License registration for VRC and WINCAPSIII |
---|
Change the IP address of the Windows computer so that it can be accessed from the ROS2 computer.
To configure a b-CAP server, use bCapConfig application. The bCapConfig application is automatically installed in the following path when ORiN2 SDK is installed:
${ORiN2}\CAO\ProviderLib\b-CAP\bCAPListener\Bin\bCapConfig.exe
Start bCapConfig tool and configure b-CAP server. From the menu bar, select [File]-[Import], and then open the _"rc8_bcapcnf.xml" file. Once the file opens, select [File]-[Save] to save the settings.
b-CAP server configuration |
---|
b-CAP server start |
---|
Create a WINCAPS III project of a controlled robot.
If the denso_robot_ros
package does not include an intended robot type for simulation, import the robot type according to the ROS2Converter page (under construction).
Start WINCAPS III and then open a robot project to simulate. Once the project opens, from the Menu bar, select [Debug]-[Simulation mode] to change WINCAPS III to the simulation mode.
NOTE: The steps described in this section only apply to RC8, RC8A and COBOTTA controllers !!
(RC9 instructions are under construction)
For controlling a real DENSO robot, the RC8 controller must be configured.
IP address configuration (RC8 controller) |
---|
Executable Token configuration (RC8 controller) |
---|
FOLLOWING STEPS ARE ONLY REQUIRED IN CASE THE slaveMode robot control MODALITY IS SELECTED !!
DENSO WAVE member site logon |
---|
Read RC8 controller serial number |
---|
b-CAP Slave license generation |
---|
b-CAP Slave license registration |
---|
Create a robot definition file: denso_robot_ros package
provides URDF models for cobotta and vs060 robots, and associated MoveIt2 configuration packages as standard components.
To control other robot types, see the ROS2Converter page (under construction).
Set speed/acceleration parameters: the URDF models and the associated MoveIt2 configuration packages created by ROS2Converter have dummy speed/acceleration parameters. To specify the actual speed/acceleration parameters, see the AcquireVelAcc page (under construction).
Three different control modalities can be selected for DENSO robots: