Flexible Assembly Cell Pilot

This pilot is about highly-flexible industrial production. Advanced automation devices, like autonomous robotic systems, are no longer based on simple I/O signal communication but provide a full-fledged, high-level application programming interface to access the device's features and functionality. This pilot showcases the development and programming of advanced production systems that can perform a large range of different tasks with high demands on performance and adaptability.

The Pilot’s intended target system is an industrial production system with advanced automation equipment. A concrete example would be a mobile or a dual-arm manipulator system equipped with multiple 2D and 3D cameras.

This pilot focuses on:

  • Modeling of a discrete assembly task: the cell operator should be able to specify different assembly tasks using reusable and composable task blocks without having to know the details of the software and hardware that will be ultimately realizing the task.
  • Replacing a hardware/software component: the system builder should be able to replace a hardware/software component and check whether the system can still perform all the required tasks.

Pilot Skeleton Resources and Software

Base functionality such as object detection and manipulation, as well as navigation and an exemplary machine-tending application, are available for contributors to extend, modify or build upon. The (virtual) hardware setup of consists of a mobile manipulator including a mobile based with an advanced robotic arm equipped with a 3D camera for perception and a gripper for object manipulation. A CNC milling machine is also part of the setup. The intended application of this mobile manipulator is a machine tending task where the mobile manipulator has to (1) fetch a work piece from their storage location (2) feed the machine with the work piece (3) retrieve the processed work piece from the machine (4) and bring it to a possibly different storage location. The initial location of the work piece is only roughly specified. In this setup, the 3D camera is used for accurately determining its pose. Furthermore, a navigation system is used to move the mobile base from one location to the other using laser and odometry data for localization. To communicate with the milling machine OPC UA is used basic interaction with the CNC control unit, for example, for running the milling program.

We provide a VirtualBox Image that allows to use the SmartMDSD Toolchain together with our task framework to virtually execute these machine-tending tasks. The system consists largely of mixed-port components that provide access to the system functionality realized in ROS (legacy). This choice has been made to show how the RobMoSys approach can deal with industrial, off the shelf hardware, and related proprietary/legacy software. An executive control component executes the application by orchestrating the other components.

Pilot Examples and Intended Use

In order to run the demo following steps need to be executed:

  • Download and extract the VirtualBox hard-drive image from: https://syncandshare.lrz.de/dl/fiQYffPGHg4ck4recY2Jbuva/robmosys-siemens.vdi.zip
  • Set up a virtual machine using this image that contains a 64bit ubuntu system
  • Boot and login with login:“robmosys” pass:“robmosys”
  • Start a terminal (ctrl + alt + t)
  • Execute: “roslaunch launch_kmr kmr_mock.launch” the rviz visualization should start up
  • Run “smartsoft” in a second terminal
  • Choose the Package “SystemCNCBehaviourTreeExecutor” and click “Deploy”
  • Choose “Yes” in the dialog that pops up to start the system
  • Click the return-key to start the scenario
pilots:flexible-assembly · Last modified: 2019/09/06 16:50