Keywords

1 Introduction

On the way to a fluid and dynamic production, conventional planning methods must be overhauled. The planning and validation of production cells must be realized in the shortest possible time to react to extreme events or unexpected changes in production. Today, robotic assembly cells are often still planned as 2D layouts or inflexible CAD models. A robot assembly cell’s layout can be tested and optimized before it is built using simulation tools. Validation and optimization is faster than in real-time, parallelizable and does not need to be physically tended for an environment to be reset. [1] However, simulative validation of assembly cells still has flaws. The creation and analysis of a simulation model involve many manual, time-consuming activities that require expert knowledge of the simulation software from the users, which is contrary to the stated goal of simulation studies. The aim should therefore be to automate the modelling and the analysis of robot assembly cells in the simulation by directly obtaining existing information, e.g. from exploiting Enterprise Resource Planning (ERP) Systems or from the product model itself. Furthermore, to use the optimized layout and robot programs generated in the simulation environment for a faster ramp-up time of a robot cell.

This papers goal is to evaluate existing (semi-)automated approaches for 3D simulation generation, validation and layout optimization of robot cells. It further presents a concept for an automated 3D layout optimization for robot assembly cells. The rest of the paper is structured as follows: The next chapter gives an overview of criteria to analyze the state of the art. Section 3 reviews the state of the art for automated simulation generation and layout optimization. The reviewed approaches are discussed in Sect. 4. In Sect. 5, the concept of the planned approach is presented in general together with assumptions made. Finally, Sect. 6 concludes the paper and states future prospects.

2 Aspects of Automated Layout Optimization

Four individual problems must be overcome during simulation studies after the goal has been specified: Data collection, model implementation, validity check, experiments and analysis. [2] To optimize a layout for a robotic cell automatically through 3D simulation studies, firstly, necessary information must be gathered. Once this information has been structured, it can be used to create a model in a simulation environment. Afterwards, processes can be modelled using assembly-relevant information and assigned to the given robot. Subsequently, the processes and robot motions are validated for the given layout. Measured by defined key performance indicators (KPI’s), both the processes and the arrangement of the components can be analyzed and optimized.

2.1 Definition of Criteria for 3D Simulation Generation and Optimization

To evaluate existing approaches and to identify gaps in research, a list of criteria has been defined. They are separated in four categories, each one for one of the declared problems: Data preparation, model generation, simulation and optimization. Furthermore, two more questions are defined: Is the focus on robot assembly cells, other kind of robot cells or models, e.g. assembly lines, or does the work has another focus than robot assembly cells? The other question is whether the simulation can be used for robot offline programming so that the results can be used beyond the simulation other than the layout.

For data preparation, the source of data and whether it is manually edited or prepared is of interest. In addition, the approach is verified to be able to deal with general conditions and constraints.

With respect to model creation, existing approaches are evaluated as to whether they actually create a 3D model of a system automatically based on the input data or whether the model is assumed or if a different type of model is applied. Additionally, the number of robots that can be considered in a cell or in a layout is examined.

After building the model, the simulation generation is assessed. Special attention is paid to an actual simulation of the assembly processes. They are differentiated, whether this is done in detail, only the movements of the robot are considered, the movements are calculated but not simulated, or if the simulation is outside the scope of interest. For the optimization of the system, the algorithm used is interesting and the focus of the optimization. The state of the art is distinguished whether only the position of the robot is optimized, the positioning of components around the robot, whether the entire system, if only specific kind of components are considered or no optimization takes place at all. These criteria are listed in Table 1.

Table 1. Criteria for evaluation of existing approaches

3 Approaches for 3D Modelling and Optimization

The idea of automated modelling and simulation of operations and processes is not new and has its origins in the 1990s. [3] As one of the first approaches, Luedth presented a method in 1992 to place components of a robot cell around a defined robot base position. The space was divided into discrete voxels, and the voxels were assigned to the component, which are located within the component. Subsequently, objects are placed around a robot’s base such that they only occupy free voxels to ensure that the arrangement of components remains collision-free. Shortest robot trajectories were considered as optimization criterion. [4] Similar approaches were published by Tubaileh [5] and Filipovic [6], where components are placed around a central robot base. They used simplified geometries in 2D space. In both cases minimal joint motions of the robot are targeted. Simulation has not been applied. In general, discretized workspaces (WS) are used due to their ease of use and faster computation time. This simplification was also applied in Hwang et al. [7], whose focus was to find an optimized robot base position for existing working poses, which they could use for spot welding on car bodies. The 3D model however, must be given beforehand.

A similar goal had Spensieri [8] using brute force technique to find a valid robot position and then solving a classical travelling salesman problem to find an optimized sequence of welding spots using IPS [9] as simulation tool. The 3D model must be given beforehand as well. Similar approaches to place robots come from the field of mobile robot applications. Vahrenkamp for example published an article about optimal mobile robot placement for task execution in given environments. [10] A reachability map was generated for the specific robot to evaluate different base positions for predefined task executions.

Focusing on robot assembly cells in his dissertation, Rossgoederer [11] took a hierarchical approach for the cell layout optimization. In contrast to previous publicized works, not only one type of component, such as a robot or peripheral devices around the manipulator, were considered. Also, the optimized placement of a desk and then the placement of work piece carriers on top of it was possible using a hierarchical genetic algorithm. The work aimed to optimize the layout of hybrid assembly stations. For this purpose, starting from a Bill of Materials (BOM) and a work description, a layout structure was first developed in which the hierarchy levels were defined. The CAD models of the components had been manually enriched with additional information, for example, defining the robot’s footprint and baseplate. From this additional information, the restrictions for the optimization are determined. All components were first loaded into the environment and positioned collision-free for the model. The initial arrangement was manually created. The robot processes were designed using defined program blocks for gripping, transporting and joining. In case of collisions during movement, a sliding algorithm was implemented to generate collision-free trajectories. The constraints chosen were the reachability of the target positions for the robot. Free degrees of freedom not fixed by the CAD features were used to discretely position fixtures on a table. A virtual reality system was developed for the manual assembly stations since these could not be processed automatically.

Lietaert et al. [12] developed a system to optimize collaborative production cells with an extensive focus on ergonomics for human workers in the cell. As output a feasible work cell layout is given with its dedicated ergonomic score. As an input the system needs geometric information of all components and the task allocation. For optimization a non linear programming solver was implemented. Another work was published by Sharma et al. [13] They use point clouds generated from CAD models of the components to optimize a robot cells layout. Evaluating joint angles, simulated annealing was chosen as optimization algorithm.

Leiber et al. [14] presented an approach for semi-automated layout planning for assembly lines. Resources matching the assembly processes are selected from a database based on user input and arranged around stations around a conveyor belt using collision and reachability analysis. An evolutionary algorithm is used for optimization and, as a fitness function, the position quality with respect to the product as well as the assembly cost of the resources. The layouts are analyzed in a rigid body simulation. However, many input information are needed from the operator, such as the type of processes, the sequence, the region of interest at which the operations should be performed.

Bachmann et al. [15] published an robot cell optimizer for an application with two robots using a genetic algorithm. As input, CAD-data as well as the task sequence and the location of the task on the associated part. For each component, restrictions are defined for their placement. In summary, these restrictions span the solution space. Although using 3D models, the solution space is reduced to a 2D problem with fixed robot base positions generating solutions for the placement of workpieces on a table. Simulation is used only for feasible, optimized layouts. For evaluation, path length as well as manipulability are considered.

Seeber et al. [16] published another work for assembly line layout generation using physical modelling of relationships between the components. Generated information is defined in AML [17]. Among them are 2D coordinates, the structure and hierarchy of individual assembly stations, their dependencies, peripheral interference contours, and process flows.

Michniewicz [18] has developed a complete system to develop automated work planning based on simulation models for assembly stations. Information is extracted directly from the product’s CAD data as a data basis. In a first step, the algorithm evaluates the individual stations’ feasibility to perform given tasks and assigns them accordingly. Then, first local simulations are analyzed to validate sub-process specific capabilities such as the correct gripping of components with a gripper, followed by a global simulation for reachability analysis. Finally, the system is analyzed economically through cycle time analysis and machine hourly rate calculation. The layout of the cells are untouched, processes are only assigned to given stations. Therefore, 3D models are not adapted, but only used.

Lämmle et al. proved in [19, 20] that AML can be used to build and simulate production cells and to describe the dependencies between individual resources and processes using a product-process-resource model (PPR) in VisualComponents [21]. In this context, program modules for handling and gripping objects as well as a placeholder process for screwing applications were developed. However, the model was neither analyzed nor optimized. The approach was limited to component models already existing in the software internal library.

Preparing or creating necessary input data is essential. User enters often information manually. To look at the problem of data acquisition, Weigert [22] developed an automated exchange system as middleware and link between existing software tools. The basic idea was to create a uniform data format based on AML, which can be used utilizing parsers and importers in different software tools, for example, to develop 3D simulations or discrete models. For the examples used, the origins of the information were not mentioned.

4 State of the Art Discussion

To each of the named approaches the criteria defined in Sect. 2 were applied. The discussed approaches and their corresponding classification are shown in Table 2.

The approaches can be divided into four categories, as they are sorted in Table 2 and depicted in Fig. 1: The first ones are task-centered solutions, where robots are placed into a given environment to fulfill their tasks. Examples are placing robots on an assembly line or mobile robotics. The second group are robot-centered: Arranging components around fixed robot bases. The third category are approaches, where all components are considered for layout generation and optimization.

Table 2. Comparison of existing approach for robot assembly cell

The last group has neither the focus on simulation generation nor optimization of layouts, however, they are examples for how data management and integration in such a system can be applied.

Comparing the goal with the reviewed approaches, none of them shows the specific focus or covers all questions stated in Sect. 2. Many papers address sub-aspects that need to be considered but represent isolated solutions to specific problems. Arrangement planning tools that only want to either place the robot or place other components around a robot are not sufficient on their own to be able to look at different types of cells. Especially the task-centered approaches, except Leiber, focus on the task sequence and are not suitable for assembly lines, but not for layout optimization of modular robot assembly cells. Also disadvantageous is that many approaches need manually added information or existing simulation models in general. An approach is needed that can place both handling devices and peripheral components while considering given constraints.

Most interesting are the approaches of Rossgöderer, Leiber, and Bachmann et al. Rossgoederer already focuses on robot assembly cells with an extension to hybrid cells. However, only one robot is considered in a cell. Drawbacks of the approach are the concentration of only one robot in a cell and long processing times. Additionally, a simple path planning algorithm is implemented. Especially when using process time as KPI, an extensive path planner is crucial to find a nearly optimal layout. Leiber can evaluate the position and simulation of multiple robots, however the focus is on assembly lines, not on single robot cells. Placement of separation systems for the robots are not considered. Furthermore, collision detection only works between moving and static objects, not between the robots. Bachmann reduced the problem into a 2D problem.

Fig. 1.
figure 1

Categories of discussed state of the art papers from left to right: task-centered, robot-centered, holistic, data management systems

This examination shows that none of the given approaches are sufficient for the simulation-based layout evaluation of robot assembly cells for multiple robots. In the following, a concept for the specified goal is proclaimed.

5 Concept Formulation

The overall goal of the planned system is to reduce manual effort for setting up an optimized robot assembly cell by using 3D process simulations and available information from layout as well as from product planning and design. The concept is depictured in Fig. 2. Robot cells with multiple manipulators shall be considered as only Bachmann et al. include this for robot cells. The necessary input for the system is to be created automatically with minimal manual input and is divided into layout information and assembly-related product information. The layout information given is assumed to be a rough layout for an assembly cell from an upstream 2D layout planning in AML as given in [16]. This planning shows where resources are located and which processes there are to perform. However, this information is insufficient to create the 3D model in detail. In particular, height information is not given in 2D. Rules must be defined to extrapolate 2D to 3D relationships. Furthermore, assembly-relevant details on process sequences and the region of interest for the process are not mapped. This information can be generated from the product model itself, for which preliminary work in the field of computer-aided assembly planning (CAAP) also already exists. [23, 24] These data serve as a starting position for the 3D layout planning. Visual Components is used assimulation software. Lämmle et al. [19, 20] have shown that this software is suitable for the automatic generation of cell layouts and the automated generation of simulations and the software was used in previous work before [25]. However, not only existing models from the software’s catalogue will be used, but a hybrid approach is followed: Resource models from an external database shall be used models as well as predefined component models from the software’s library, especially for kinematic chains such as industrial robots.

A set of rules must be defined for the placement of components. An example could be that the bounding box of a component must not overreach the bounding box of the parent component to ensure for example that a work piece carrier is placed correctly on a table. As robot cells are portrayed only, access points, might it be for AGV’s or conveyors, are excluded or considered as fixed points in the constraints of the layout.

Fig. 2.
figure 2

Concept for an automated approach for robot cell layout optimization

Program modules are to be defined and used for the automated generation of the processes, as already published in [25]. These program modules portray process skills for the handling devices to perform. In the software, similar to the approach of Spensieri et al. [8], internal functions shall be used to develop analysis tools to check the processes on the given layout automatically. Of special interest are tools to analyze reachability and collision clearance. For optimization, an evolutionary algorithm will be used in a hierarchical manner as in [11] to reduce the complexity of the optimization problem. Although the idea of physically modelling the dependencies between components is an attractive solution, the modelling in three-dimensional space is much more complex compared to the two-dimensional one. The layout and processes will be analyzed for the following KPI’s: The cycle time is to be considered to examine the arrangement for its efficiency. It is not necessary to simplify and utilize the axis angles or path length of the robot as the motion simulation can be performed. As a result, an optimized robot assembly cell layout, program templates for the robot’s execution and the KPI’s as well as a documentation of the given layout Next to it, a minimal footprint is desired. Research question to be answered in this work are:

  1. 1.

    How can 2D layout data be extrapolated to 3D in a meaningful manner?

  2. 2.

    Can automatically generated layouts be compared or are even better than manually generated ones?

  3. 3.

    How can an evolutionary algorithm be parametrized to create new layouts in a given amount of time, so a human operator can to other tasks in the mean time?

6 Conclusion and Next Steps

Simulation is a key tool to improve and accelerate layout optimization of robot cells. Different solutions and approaches already exist in the literature to automate layout optimization or to generate simulation models. However, there is no approach yet for robot assembly cells with multiple robots. A concept was proposed, which shows a solution to the given problem. In a first step, a tool must be developed to combine and merge the existing data from the AML of the layout planning with the information from the CAAP. Particularly critical here is the classification of the processes and their positions and, for the analysis, the division of the components into movable and static objects and the definition of boundary conditions. Logically, a conveyor belt that delivers partially assembled semi-finished products to a station must not change position. In addition, the database must be built, which contains the CAD model of components and other information, such as the name. It would also be possible to add the capabilities of the models to enable a unified database for all tools from the toolchain. An Add In for Visual Components must be written afterwards to build the model. First program modules and collision analysis tools for the simulation analysis of the processes as well as the automatic modelling of the products to individually manageable objects, have already been developed by the author in [25] and can be extended. Last, the optimization of the layout and the robot trajectories must be considered and implemented.