1 Introduction

Timber Construction has gained a fundamental role in reducing CO2 emissions (Arup 2019), and as a reflex, the assembly automation of timber structures is nowadays seen as a key area of development in architectural robotics. Current research is extending the automation chain from the consolidated processes of CNC manufacturing of wood subcomponents, to full construction assembly while aiming to provide higher levels of customization (Menges et al. 2016; Bianconi and Filippucci 2019). Material complexity, unpredictable construction environments, and the need for economically viable bespoke construction are some of the challenges that are under study.

For manufacturers in high wage countries, a major strategy to keep production costs competitive without outsourcing production is to increase the level of automation, i.e., by introducing robots as highly reconfigurable manipulators for product assembly. Such agile robotic solutions are of particular interest in high mix/low volume production scenarios, where manufacturers offer many product variants between which production is often switched (Brecher 2017). The resulting complexity of controlling agile robotic solutions to fit high amounts of product variants is clearly demanding. The paradigm of Industry 4.0 aims to resolve such automation complexities by means of digitalization and the implementation of model-, simulation- and data-based planning and control methods (Bartodziej 2017).

The essence of Industry 4.0 is to complement the physical scenario with advanced digital representations of the relevant assets (i.e., product and production system), and then to solve planning and control in the digital realm, in direct connection with a physical setup. Such an approach, based on the use of Cyber-Physical Systems (CPS), has opened fundamental opportunities in architectural robotics, by shortening the distance between the phases of design and making, and ultimately, has provided a fundamental platform for customization and bespoke manufacturing.

2 Related work

2.1 Modelling and assembly simulation in industrial contexts

Assembly is essential for many robot operations in production. Accordingly, the robotics community has a strong focus on the modelling and simulation of assembly scenarios, based on digital models which allow flexible control of given combinations of robots, grippers, and parts to be assembled.

In the industry, a typical high-level input to detailed planning approaches is the assembly sequence or assembly plan, typically referred as “Bill of material” (BOM) and “Bill of process” (BOP) (Malakooti 2013; Morshedzadeha et al. 2018). Today, the BOM is typically provided as a 3D CAD model of the assembled product and its parts, which digitally describes the relative spatial configuration of the parts. The BOP is basically a digital list of the order of the necessary assembly operations, which specify the temporal aspect of an assembly. From BOM and BOP, a first assembly plan can be generated that is restructuring and combining the information contained in BOM and BOP in -still abstract- assembly steps, e.g., “Pick up part PA from deposit DA”, “Align PA with assembly slot SA”, “Insert PA into SA”. The abstract assembly steps are then hierarchically broken down and refined into more robot-related functions, e.g., “Approach DA”, “Move to DA”, “Close gripper on PA”, “Depart from DA”.

Based on the assembly plan, the next typical step is path planning for each of the assembly steps, to move the robot to pick up the next part, transport the part to the assembly position, and execute the assembly motion (and action, e.g., with a screwdriver). For most assembly scenarios in factory automation, the path planning is carried out solely based on kinematics—manually, by teaching the robot, or automatically, based on generated collision-free paths from kinematic simulations (Cailhol et al. 2019).

For successful execution in a physical setup, any planning based on ideal geometries and material properties requires feedback from the actual assembly in order to adapt the ideal assumptions according to the actual, physical situation.

With the broad availability of Force/Torque (FT) sensors, i.e., in Universal Robots e-Series utilized in this research work, it becomes more common to apply force-based search strategies in order to locally bridge this potential gap between ideal assumptions and the physical situation. For instance, using spiral search patterns to resolve typical peg-in-hole insertions under such unavoidable mismatches (Nguyen et al. 2019; Sloth et al. 2020).

However, the simulation of force-based search strategies is still difficult. Simple approaches based on standard physics engines such as Open Dynamics Engine (Open Dynamics Engine 2020) often fail to deliver the necessary accuracy to be truly predictive. On the other hand, simulations based on more advanced physics engines such as MuJoCo (2020) show promising results with highly predictive value but require a significant effort to model and parameterize the exact situation (Lee et al. 2019). Computer vision offers a second way into analyzing and correcting mismatches between ideal planning data and the actual situation, e.g., by applying methods for 2D and 3D estimation for identifying the poses of parts and holes just before insertion (Hietanen et al. 2020).

Sensor simulation methods are required to capture accurately such vision-based strategies in simulation. Schlette et al. (2014) demonstrated how sensor simulation can be applied to analyze and optimize the parameterization and thus the performance of pose estimation methods in robotic assembly.

2.2 Research on robotic assembly of timber structures

The complexity of robotic timber assembly originates from the non-obvious translation of various manual tasks to automated construction. Wood is a material that varies with different environmental conditions and requires specific tolerances. Current research aims at overcoming these challenges while taking advantage of the additional level of design complexity that is enabled using computational and performance-based design. Recent investigations in robotic timber assembly include the work of Stumm et al. (2018); Apolinska (2018); Thoma et al. (2018); Helm et al. (2016); Eversmann et al. (2017); Søndergaard et al. (2016). When digital design workflows are implemented, design and simulation can be interlinked to provide a platform for the creation of digital twins of real-world products and assembly operations.

Among various approaches, Gramazio Kohler Research at ETH investigated the use of the layered robotic assembly of wood structures in multiple projects, concentrating on walls, pavilions, and roof structures (Willmann et al. 2016). In these experiments, the assembly was based on a stratification of custom elements joined with the use of adhesives, nails, or screws for timber, with an increasing level of automation. In their last project, the Sequential Roof, no manual labour was involved (Krammer 2016; Apolinska et al. 2016). In the professional practice, Studio RAP developed a commercial project with layered robotic fabrication and built a wood partition, with a procedure that included saw cutting, dowel insertion, and component assembly—ultimately completed with manually inserted, post-tensioning steel elements (Studio RAP 2017).

Recently, human–robot collaboration was also introduced to overcome the inherent complexity of assembling wood elements with material imprecisions, challenging mechanical conditions, and variable morphological features. Prominent examples can be found in the recent work of Gramazio Kohler Research, where robot-robot and human–robot collaborative tasks such as milling, cutting, drilling, and assembly were developed with a dynamic planning process for timber frame structures (Thoma et al. 2018; Adel et al. 2018). On a smaller scale, human–robot collaboration was used with haptic feedback through force-torque sensing (Stumm and Brell-Çokcan 2018; Stumm et al. 2018).

3 Motivation and aim

In this paper, we discuss a specific implementation of Industry 4.0 concepts to develop an approach for the flexible robotic assembly of reversible timber structures. Our approach aims at extending the life cycle of timber constructions by introducing a robotic process for the reversible assemblies, in which generic discrete elements can be used and reused endlessly, therefore, retaining their carbon store for longer than usual structures. Key concepts of Industry 4.0 such as a higher level of flexibility, adaptability and integration (Colella and Fallacara 2019) are here cardinal in establishing a CPS, where flexibility is articulated in multiple levels:

  • Design flexibility: with the introduction of an automated design process, which can provide different output structures based on different configurations of a generic kit of timber construction blocks;

  • Construction flexibility: with the introduction of a circular construction method that is entirely reversible, thanks to the use of a layered construction sequence and a reversible joinery system made of screw elements, that allow for transformation and reuse;

  • Robotic flexibility: with the use of a robot setup that can be easily updated in time thanks to the modular infrastructure and simulation.

To exploit such possibilities, we introduce an integrated workflow that supports the full virtualization of an automation workflow for performance-driven design (design digital twin), and the simulation of an assembly production process (production digital twin). In parallel to modelling and simulation, we also present a new concept of flexible robot setup. The following sections illustrate both digital and physical implementations and discuss their application in the development of a prototypical demonstrator of reversible timber construction.

4 Integrated workflow for design, simulation and assembly

A computational workflow is established to interlink design, fabrication and robotic assembly (Fig. 1) in a seamless process that serves both the purpose of creating complete virtualization of the project and offering fundamental possibilities in the agile customization of performance-driven structures (Naboni and Kunic 2019). The overall workflow is based on the Grasshopper for Rhino environment and is organized in four primary modules: (1) Voxel-based Design and Optimization, in which a timber structure is designed through Topology Optimization (TO), provided boundary conditions such as geometrical and loads; (2) Construction Kit Design and Fabrication, where discrete timber elements are designed for easy configurability, including features for robot handling and self-alignment. In this phase, it is also optimized the production of the pieces through simulation, which are subsequently CNC machined; (3) Performance-Oriented Design Discretization, in which the information on the mechanical behaviour of a structure is discretized and then converted into a specific layout for the building blocks to form a particular tectonic configuration; (4) Robot Simulation and Control is where the robot toolpath is simulated for optimization purposes, and prepared for the physical assembly. All these phases are linked computationally, and changes in the design modules trigger automatic updates in the robotic sequences.

Fig. 1
figure 1

Computational workflow scheme which integrates design, fabrication and assembly processes

5 Flexible robotic setup

As a physical counterpart for the process, a flexible robot cell for the layered robotic assembly of timber discrete structure was developed. The cell was conceived to allow flexibility and ease of reconfiguration, as well as providing possibilities for human–robot collaboration. The cell is comprised of:

- Collaborative robots—two Universal Robots (UR10e and UR5e), configured to assemble unobstructed structures up to four-meter in length within their workspace limitations. The robots are equipped with force-torque sensors, enabling online force sensing.

- Assembly area—composed of five welding tables by Siegmund, with a work area of 120 × 80 cm. The reconfigurable tables were positioned to form a four-meter long fabrication zone. Their front part is utilized for assembly, while the back end serves as an auxiliary zone, where the two robots, screw holders, and 3D printed fixtures for feeding timber blocks are mounted. The table working plane is engraved with a grid that is used for referencing and calibration. It also provides a quick means of attaching various tools and equipment, making the setup highly flexible and adaptive to a range of fabrication conditions (Fig. 2).

Fig. 2
figure 2

Collaborative robotic assembly setup

- Multi-purpose end-effector—for the assembly we developed a multi-purpose robot end-effector (Fig. 3), which can be utilized in various assembly and manipulation tasks. The tool is comprised of: one Robotique 2F-85 electric gripper (1), with a stroke of 85 mm and 235 N controllable gripping force, making this gripper ideal for grasping timber blocks with various shapes and design features; one Desoutter automatic screwdriver (2), with an exchangeable screw tip. The screwdriver is mounted on a custom-designed tool flange (3) perpendicular to the electric gripper (Schlette et al. 2019). In this configuration the screwdriver does not obstruct the gripper during operations, eliminating the need for a tool exchanger. Furthermore, a customized screw holder with an integrated magnet (4) has been designed, 3D printed and attached to an M4 50 mm long screw bit (5); one Human–Robot Interaction (HRI) interface (6)—this is a custom developed feature, comprised of four interface buttons mounted on the robot wrist, which can be mapped to various robot functions and commands. In this project, it is used for enabling/disabling the interactive mode for collaborative screwing.

Fig. 3
figure 3

Multi-purpose end-effector consists of the two principal tools for assembly: an electric gripper and an industrial screwdriver which are alternated during the process of human–robot assembly

6 Computational design and modelling

6.1 Voxel-based design and optimization

An integrated design-to-assembly process of an experimental beam structure made from discrete reversible timber elements has been fully developed within the Grasshopper environment, involving algorithms for voxel-based structural analysis, discretization of stress data and performative aggregation logic. Initially, a three-dimensional topology optimization (TO) and Finite Element Analysis (FEA) were carried out in response to a defined set of geometrical and loading condition input. A voxelated field was generated, with stored attributes such as principal stress trajectories, Von Mises stress magnitudes and stress density values. These data were further converted and discretized into a new set of values related to the directionality, material density and connectivity among the individual timber elements which have been configured by grouping neighbouring voxels with shared attributes. From here, a specific aggregation of building blocks emerged, forming a structurally performative layout, where the wood fibres are aligned with the principal stress vectors (Fig. 4).

Fig. 4
figure 4

Three-step computational design process based on the optimization and discretization of stress data: a principal stress trajectories and three-dimensional TO resulting mesh; b a voxelated field of discretizes stress vectors into four angles of 0,45,90, and 135 degrees; c performative aggregation layout of discrete timber blocks

6.2 Construction kit design and fabrication

In parallel to the development of the design and optimization algorithm, an empirical and iterative study on the geometry of the construction kit was carried out to allow for easy robotic manipulation and free-of collision layered assembly (Fig. 5), reversible connectivity, and toolpath optimization for the CNC fabrication. The resulting construction kit consists of arrow-like blocks of two typologies: convex-convex, and concave-convex end-to-end intersections. They have four variable lengths (L) corresponding to two-to-five consecutive voxel units, and six connectivity layouts (CL1-CL6) with different holes patterns layout for reversible bolt-nut connections, which allow for various aggregations of blocks (Fig. 6).

Fig. 5
figure 5

Robotic assembly of the construction blocks, showing the morphological features which respond to the fabrication and construction constraints/conditions

Fig. 6
figure 6

Thirteen discrete blocks are defined by two block typologies (convex-convex and convex-concave ends), ranging in lengths (L) and connectivity layouts (CL)

6.3 Performance-oriented design discretization

The design and optimization algorithms on one side and the blocks development on the other side converged into a 3D model with detailed information on the type, number and position of 696 timber blocks, and specifics for connecting them with a joinery pattern based on 1464 steel bolts out of 3414 possible connections. In particular, an assembly sequence algorithm was developed and simulated to evaluate the stability of every single block while assembled, and the need for temporary supporting material. The connectivity with the adjacent blocks was verified automatically to form a continuous solid structure with a minimized number of bolts. This overall data-based description of the design digital twin is linked directly to the robotic assembly digital twin, allowing for efficient and seamless communication between design and making.

7 Assembly simulation and control

7.1 Toolpath planning and simulation from design

A virtual model of the robot cell and tools have been recreated in the Grasshopper environment as a geometrical base for the digital twin of the setup. To establish a direct link between the design generation process and the robotic assembly, HAL Robotics Framework plug-in (Schwartz 2012) was used to translate the input geometry—the resulting layers made of building blocks—into target planes and further to the robot commands. Two sets of toolpaths were generated for the assembly of the timber blocks, corresponding to the use of the two end-effector tools: (T1) the pick-and-place targets that are translated into gripper commands and (T2) the screwing targets which are assigned as commands to the screwdriver. The robot path planning was carried out parametrically, where the targets are generated through the geometrical description and relations between the blocks, then sorted based on a planned assembly sequence. For each block, the pick-and-place toolpath results in interpolation between the centre point of the block’s top face, both in its picking and placing coordinates, their offset positions (100 mm) in the positive z-direction to assure a secure approaching trajectory and an intermediate point with a safety offset (350 mm) in the positive z-direction from the current built volume. These were referenced to the gripper TCP (Tool Centre Point), i.e., to the mid-point along the height of the gripper fingertips (Fig. 7a). Similarly, the screwing targets were generated in reference to the screwdriver tip and interpolated into a path which links the screw holder and the specific holes that require the insertion of a bolt (Fig. 7b). This information is directly conveyed from an algorithm that solves the connections among the different pieces. The built volume is evaluated at each step and the toolpath targets are updated based on the parametric dataset.

Fig. 7
figure 7

Robot toolpath generation and simulation for the a pick-and-place of the construction blocks—T1; and b screwing operation—T2

Having a common environment for design and robot simulation provides us with the possibility of simulating the assembly sequence and structure growth first, and secondly to generate the tool poses and internal robot coordinates. The Grasshopper/HAL path planning and robot visualization tool incorporates linear point to point interpolators, utilized for the toolpath generation and inspection between the obtained reference target poses. In addition, the robot kinematics is considered in the simulation procedure to avoid robot/robot, robot/tool and body collisions with the static objects and the structure in the workspace. The simulation allows to plan efficiently and test the assembly procedures before being executed on the physical system. The commands between the robot and the simulation environment are transferred via a bi-directional channel which provided us with the capability of sending and monitoring the robot assembly data in real-time and closing the digital-twin loop, respectively.

7.2 Robot control with sensor data

An effective connection between the computational model, the assembly simulation, and the actual fabrication in the real world is established. The calibration between the digital model and the real work-cell is done geometrically, based on existing table reference features.

The bi-directional communication channel is established between the planning and simulation workflows and the robot control (Fig. 8). The channel is based on a standard TCP/IP protocol for sending robot specific commands to the integrated robot controller.

Fig. 8
figure 8

Robot simulation and control workflow diagram

The robots used in this setup possess the possibility of being controlled from an external device with a Real-Time Data Exchange (Universal Robots—RTDE) interface, essentially providing access to the same control commands used on the robot specific control panel, normally used for manual programming (Fig. 9). The benefit of this control procedure is a stable and reliable communication connection as well as a simplified integration with different programs through a standard UR control interface. With this setup, a controlled and predictable way of sending and receiving feedback information between the physical and planning software is established.

Fig. 9
figure 9

Collaborative robotic assembly setup consists of two UR robots and human assistance

In Sect. 5 we gave an overview of the work-cell hardware used in this framework. The hardware also includes a tailored designed robot tool, which consists of a gripper and a screwdriver, considered as external components. All the components are integrated into the robot environment, i.e., robot controller, and can be operated directly with specially designed control functions through the common robot interface. The functions are the following:

  • Gripper: open/close, set and execute the width of the gripper fingers, set and apply clamping force of the gripper;

  • Screwdriver: start/stop screwdriver. The screwdriver is connected and controlled with the robot’s embedded general-purpose inputs and outputs, enabling us to trigger a predefined screwing program in the screwdriver controller. The program configured for this task performs the action until a predefined torque is reached. When the condition is met, the screwdriver stops and signals the robot that the screw is tightened to the desired torque;

  • Human collaboration mode: In this, the robot is set to a collaborative mode, i.e., free drive and the robot configuration can be changed freely.

7.3 Assembly execution within the real system

The process starts with the pick-and-place of the timber construction elements utilized for building the reversible timber structure, as well as the elements utilized for supporting the construction temporarily during the assembly (Fig. 10a).

Fig. 10
figure 10

a Robotic assembly of building blocks; b Human assistance and guide to the screwing holes; c Robotic screwing

For this action, the relative poses of the construction elements are passed to the robot controller. As the layered assembly builds up prototypes progressively in height, we are using a simple linear motion planner to plan robot trajectories between the relative poses sent to the robot controller. Intermediate points for the pick and place task are defined parametrically in the simulation (see Fig. 7a) to avoid collisions with the environment, e.g., the prototype, the table, and the secondary robot. This simplified approach leaves room for improvements which would be necessary in case of non-sequential and more complex assembly scenarios.

After every block is placed to its specific position within the structure, the screwing function is executed, having as an input the target hole pose, obtained from the digital model. Firstly, the robot is moved into the predefined screwing configuration (Fig. 10b). Secondly, the M4 screw is picked from the 3D printed screw holder, which acts as a magazine placed within the auxiliary zone. As the position of the magazine is fixed, the pick position of the screw is always the same. Thirdly, the robot moves to the screwing location provided by the planner and starts the screwing operation. During the operation execution, the tool position and interaction forces measured by the embedded force/torque sensor are monitored. When the signals do not match the defined assembly conditions, e.g., the force is too high, or the position (e.g., depth of the hole) deviates from the defined one in simulation, the system aborts the execution and signals the planning algorithm that the execution was not successful. If this occurs, the human intervention function is executed. The human operator is prompted to intervene, while the robot is switched to collaborative mode (Fig. 10b). Here, the human operator first verifies its presence by switching the Wrist switch 1 to ‘true’. The collaborative mode enables the human to move the robot freely and redefine the position of the hole. At the location, the operator switches the Wrist switch 1 to ‘false’, i.e., disabling the free drive and presses the Wrist switch 2 button enabling the screwing procedure from the demonstrated point. In this procedure the screwdriver runs until a pre-set torque of 50 N is reached. Additionally, the robot signals are monitored (Fig. 10c) in the same way as with the automatic screwing skill. If the screw is successfully inserted and all the pre-set conditions are met, the screwdriver stops, and the tool retracts from the assembly piece finalizing the screwing procedure and signals that the skill was executed successfully. In the next step, a new function is executed. With this approach, we can account for manufacturing inconsistencies in the wooden blocks as well as nonuniformities in the wood itself. The human intervention skill acts as a failsafe and enables us to maintain a high and reliable success rate of the screwing action.

8 Results

In this work, we showed a working example of a production digital twin, which is enhanced with a collaborative feature for dealing with uncertainties during the assembly process. A bi-directional communication channel was established between the simulation process and the actual robot, conveying assembly and feedback information between the two systems. Within this framework, we were able to act quickly upon fabrication changes, and implement them in the assembly process. Furthermore, we integrated hardware components, e.g., robots and screwdrivers, which are usually found in industrial high-volume production, into a compact flexible work-cell for the assembly of parts manufactured out of a nonuniform material such as wood. We developed, integrated and tested an automatic screwing solution on the experimental structure Reversible Robotic Timber Beam, completed with the assembly of 696 custom components and a total of 1464 reversible bolted connections, which were utilized to complete the four-meter long structural prototype, weighing a total of 125 kg (Figs. 11, 12). The prototype itself serves as a proof-of-concept for the robot process, as well as a demonstrator for a discrete based construction system that, given the reversibility of the joinery utilized, can evolve through time. After 6 months, the prototype was entirely disassembled and reassembled without any functional or performance loss, proving the reversibility of the system. More generally, the established process proved to be robust in handling imperfections in the manufacturing process of the different parts and to be adaptable to a range of screw connections.

Fig. 11
figure 11

Final prototype—a four-meter long beam consisting of 696 blocks connected through 722 bolt-nut connections

Fig. 12
figure 12

Close up view of the structure showing the robot-assembled blocks and their various directions depending on the calculated stress vectors, and multiple connectivity possibilities among them

9 Conclusions and future developments

The results indicate this approach as a viable process for complex high-resolution assembly, which can be used for targeting carbon-efficient timber structures. In terms of design and engineering, the realized prototypical structure opens perspectives regarding material optimization and circular construction.

As interdisciplinary research, further studies will involve intertwined aspects of robotics and design-engineering. In terms of hardware, we will improve the robot cell to increase the reliability of the assembly process with the introduction of camera vision to get visual feedback such as object detection and assembly validation. This feature will also allow to develop a task for the automated disassembly of such structures, with and without knowledge of an existing assembly layout. To gain flexibility in producing a range of structures, we plan to enhance the work cell with an extra degree of freedom, giving us the possibility to extend the workspace, and consequently, to assemble larger and diverse manufacts.

In terms of robot control, we will optimize our approach to path planning by implementing algorithms which can produce a collision-free optimal path for a specific pick and place actions, which will be applied to both assembly and disassembly processes. In a parallel study, we are currently investigating the structural properties of such an approach to construction, with a focus on the material and joinery. Future work will build upon these investigations and apply the findings to an extended range of construction elements.