Online Trajectory Generation with 3D camera for industrial robot
this module provides depth-based real-time information of workspace for generating dynamic trajectories for the robot. The module offers a flexible and adaptive way of generating robot trajectories for human-robot collaboration based on information from 3D-camera(s). The module can be utilized in example with bin picking applications including workpieces with varying physical characteristics and random orientation. Another way of utilizing module is processing task including processing targets of varying locations in example assembly.
3D camera (e.g. Microsoft Kinect V2, Intel Realsense D435)
A laptop/desktop computer with Ubuntu 16.04 – 20.04
Packages for camera data processing and robot programming
3D cameras (or other peripherals that can produce a point cloud) are used to image/scan the object/scene. After scanning the data can be converted to point cloud and saved for later purposes or utilized online by AutoMAPPPS or ROS to create trajectories for robot.
ROS (Robot Operating System) is a set of open-source software libraries and tools that simplifies complex robot tasks by using hardware abstraction, drivers, libraries and simplified process communication. ROS was originally developed to create a universal platform and user support base for manufacturer-independent robot programming.
ROS-Industrial extends the advanced capabilities of ROS software to industrial relevant hardware and applications, such as industrial robots and sensor data processing. ROS and ROS-Industrial together provide a high level of adaptability to a wide variety of robot manufacturers, which significantly eases project implementation on different device structures.
Inputs and outputs
Input of this module is RGB-Depth data provided by 3D camera to a suitable ROS module for camera data processing, such as depth_based_collaboration. This node recalculates robot trajectories if necessary, based on information provided by 3D-camera. Recalculation is needed, for example, if obstacles are placed in robot path or work piece is misaligned.
As output, the module provides calculated trajectories and translated program code for robot controller. The programming language depends on the manufacturer of the used robot. For example, KUKA robots run programs written in KRL and ABB robots run RAPID code. The resulting program code is directly transferred to the robot controller without user interaction using a ROS hardware interface module, such as kuka_eki_hw_interface
Formats and standards
File formats: KRL, PLY
Centria University of Applied Sciences https://tki.centria.fi/en
Online training material is available through the TRINITY training platform.