Abstract

We present NoodlePrint, a generalized computational framework for maximally concurrent layer-wise cooperative 3D printing (C3DP) of arbitrary part geometries with multiple robots. NoodlePrint is inspired by a recently discovered set of helically interlocked space-filling shapes called VoroNoodles. Leveraging this unique geometric relationship, we introduce an algorithmic pipeline for generating helically interlocked cellular segmentation of arbitrary parts followed by layer-wise cell sequencing and path planning for cooperative 3D printing. Furthermore, we introduce a novel concurrence measure that quantifies the amount of printing parallelization across multiple robots. Consequently, we integrate this measure to optimize the location and orientation of a part for maximally parallel printing. We systematically study the relationship between the helix parameters (i.e., cellular interlocking), the cell size, the amount of concurrent printing, and the total printing time. Our study revealed that both concurrence and time to print primarily depend on the cell size, thereby allowing the determination of interlocking independent of time to print. To demonstrate the generality of our approach with respect to part geometry and the number of robots, we implemented two cooperative 3D printing systems with two and three printing robots and printed a variety of part geometries. Through comparative bending and tensile tests, we show that helically interlocked part segmentation is robust to gaps between segments.

1 Introduction

Cooperative 3D printing (C3DP) is an emerging form of additive manufacturing where multiple robots work simultaneously to print large objects [1]. This ability to print in parallel enables larger objects to be printed in a shorter time while maintaining the production quality akin to single-nozzle printing. The robots printing a part could either be stationary or mobile wherein mobility can especially enable the printing of objects much larger than a single stationary robot’s workspace. As a result, C3DP has the potential to address the dilemma between printing resolution and printing speed with single-nozzle gantry-based additive manufacturing systems for large-scale additive manufacturing.

Being inherently multidisciplinary, C3DP comes with a myriad of technical and technological challenges from a wide range of fields such as robotics, materials, manufacturing processes, and even mechanics. The challenges may range from collision avoidance, task allocation, part segmentation, minimization of print time, etc. This article specifically focuses on one of the fundamental challenges in C3DP, namely, determining how to segment the volume of a given part into subvolumes or segments that can be assigned to different robots. To this end, we present a general computational framework to segment arbitrary part geometries to enable layer-wise cooperation between an arbitrary number of robots while maximizing the concurrence of printing.

1.1 Scope of the Current Work.

Part segmentation involves splitting the part into multiple pieces where each piece can be printed by a single robot. This is a challenge since segmentation could lead to a loss of overall strength [2]. While this is inevitable, the geometry at the interface can be modeled in such a way as to increase the cohesion between the pieces [3]. Equally as important to the success of C3DP is the implementation of collision avoidance strategies. Since the robots work in a shared workspace, there is a risk of collision. If a collision does occur, costly damages can be incurred as well as failed printing. For this reason, a collision avoidance strategy is needed for printing arbitrary geometries. It is also important that the work is divided between the robots in such a way as to maximize the amount of concurrent printing, which in turn reduces the overall printing time. This article aims to address this by minimizing idle time while printing a part and maximizing the overall efficiency of printing. To this end, the objective of our computational framework is to segment a part such that (1) the intersegment adhesive strength is high, (b) the segmentation minimizes the likelihood of collision, and (c) the allocation and sequencing of the segments for printing maximizes the concurrent printing to minimize the printing time.

1.2 Challenges and Approach.

The geometric approach behind our computational framework is inspired by a recent work on space-filling topological interlocking tiles based on a helical partition of space [4]. Topological interlocking is a concept in mechanics that involves assemblies of shapes in a manner that under the influence of a peripheral load, each individual shape is immovable simply due to the geometric constraints imposed by its neighboring shapes [5]. This is distinct from geometric interlocking as defined by Estrin et al. [5], which is the counterpart for topological interlocking and does not require tension forces to keep an assembly intact, meaning building blocks must be deformed or cut to assemble the part. When topological interlocking shapes (all identical) also tessellate space in a watertight manner, they become space-filling topologically interlocked tiles. This notion was leveraged in a recent work, LayerLock [2], to enable increased interfacial cohesion between segments printed by different robots. It is important to note that the number of space-filling topologically interlocked tiles currently known is limited to a few select cases with Delaunay Lofts used in LayerLock [57].

The LayerLock algorithm is based on a class of shapes known as Delaunay Lofts [7] that are constructed by applying Voronoi tessellation to a set of line segments in a layer-by-layer fashion. A fundamental limitation of LayerLock is that the transition between the cells in each layer can be discontinuous and unpredictable, leading to different cell shapes, undesired robot trajectories, and sharp corners leading to a lack of control in the printing process. The LayerLock algorithm is also only limited to two robots and cannot be generalized to any number of robots since collision avoidance and sequencing are not as simple. Second, most of the current progress in space-filling topologically interlocked tiles does not offer a systematic way to control the intensity of interlocking either. For instance, the geometry of Delaunay Lofts used in LayerLock is only partly interlocked in that not all surfaces of a tile necessarily contain the saddle point that enables interlocking. More importantly, Delaunay Lofts lack the parametrization necessary to control such interlocking. For C3DP, this leads to a lack of design principles that could be useful in decision-making and trade studies for cost–benefit analyses.

To address this fundamental challenge of controlled and parametric segmentation, we take inspiration from a special class of space-filling topologically interlocked tiles called VoroNoodles [4,6,8]. Here, the idea is to take a cell-transitive 2-honeycomb (i.e., a 2D tessellation where all polygons are congruent) and translate the entire honeycomb along a helical trajectory to create tiles that are both space filling and topologically interlocked. The primary advantage of this geometric construction is that one can easily tune the level of topological interlocking with very few geometric parameters while maintaining a smooth transition between successive layers. This consistency of cell geometries and sizes per layer further allows us to generalize the method to arbitrary geometries without the necessity to consider potential geometric degeneracy caused by changes in cell shape.

1.3 Key Contributions.

In this work, we develop a complete computational framework collision-free multirobot additive manufacturing for arbitrary part geometry by an arbitrary number of robots. Our framework is powered by a unique combination of recently discovered helically interlocked 3D tessellations (called VoroNoodles) and a novel method for cell sequencing for layer-wise collision-free robot cooperation. We make the following contributions:

  1. General Framework for Part Segmentation: Much of prior literature on cooperative 3D printing, including works on layer-wise cooperation for printing cellular structures [2], does not offer a systematic framework for cooperation between more than two robots. Our framework introduces the idea of the interfacing complex that generalizes the methodology for partitioning cells on a given layer across an arbitrary number of robots.

  2. Helical Interlocking for Additive Manufacturing: Our choice of VoroNoodles offers two distinct and simultaneous advantages. First, this choice guarantees topological interlocking unlike Delaunay Lofts [7] that have been used for layer-wise cooperative 3D printing. Second, and more importantly, VoroNoodles offer a natural method to tune the intensity of interlocking using simple geometric parameters such as the radius and pitch of the underlying helix. Both these factors offer unique advantages that we investigated through a comprehensive experimental evaluation of a range of interlocking 3D-printed geometries. Our studies show that VoroNoodles outperform other methods of layer cellularization in terms of maintaining strength as well as robustness to cell misalignment.

  3. Optimization Framework: We introduce the concurrence measure, which allows for determining the optimal placement/orientation of a part through determining the distribution of work between robots as well as the amount of interfacing cells in the part.

We conduct a systematic numerical analysis of our pipeline to establish the relationship between various segmentation parameters (such as intensity of interlocking and cell size) with the optimal time to print. Our analysis reveals that our method offers a simple and intuitive way for designers to determine appropriate segmentation parameters for a desired printing time without compromising on the level of interlocking. We physically evaluate our framework with 2- and 3-printer systems (Fig. 1) to validate our segmentation and sequencing strategies for printing arbitrary geometry. Through comparative bending and tensile tests, we show that helically interlocked part segmentation is robust to gaps between segments.

Fig. 1
(a) The complete NoodlePrint pipeline from an STL file sliced at a layer, (b) cell distribution at that layer into interfacing (darker cells) and noninterfacing cells (lighter cells), and (c) the printing path (a). (d) The print at that layer is seen and (e) the final printed castle.
Fig. 1
(a) The complete NoodlePrint pipeline from an STL file sliced at a layer, (b) cell distribution at that layer into interfacing (darker cells) and noninterfacing cells (lighter cells), and (c) the printing path (a). (d) The print at that layer is seen and (e) the final printed castle.
Close modal

2 Background

We first look at how previous research has addressed the challenges identified earlier: (a) developing a robust segmentation strategy, (b) avoiding collision during the printing process, and (c) maximizing the amount of parallel printing.

2.1 Connection of Segmented Pieces.

A common strategy for segmenting a 3D-printed part is to segment the part into pieces, often referred to as “chunking” [9]. One of the most common approaches for chunking is to have sloped angles at the interface between chunks. The parameters of chunking often affect the mechanical properties of a part since they affect the strength of the bond between chunks [10,11]. For example, the amount of overlap between parts affects the tensile strength of a dog-bone testing specimen. To this effect, the optimization of the chunking parameters is critical to maximize strength. While more testing is required, the method of “chunking” has the potential to achieve a similar tensile strength as a part printed with a single printer. Similarly, overlapping paths have been used when printing with multiple types of materials to join the parts together [12,13].

Within the construction industry, there is increasing interest in C3DP to enable concrete printing of homes or buildings [14,15]. In these cases, the interface between two robots is of critical importance so that the building does not structurally fail. One approach by Zhang et al. used a flat interface between parts [16]. Others use drones to deposit material where the part is segmented into paths assigned to the drones [17]. Other path-based multirobot systems include welding robots [1820] as well as computer numerical control (CNC) machines [21], which are required to traverse and sequence multiple paths. In these cases, the number of paths is much lower than the number of paths required during 3D printing.

Other methods for segmenting parts into multiple pieces while maintaining strength include topological and geometric interlocking. When defining these terms, we use the definition provided by Estrin et al. [5,22,23], which is that two pieces are geometrically interlocked if separation of the pieces requires deformation of one or more pieces, moving a piece in a higher dimension of space, or cutting a piece [2426]. Research on the use of geometric interlocking has been reported in the research area of additive manufacturing with multiple materials [27]. In these cases, there is a minimal amount of bonding between the different materials, but the design of the interface region can allow for a strong connection between pieces [12,28,29].

The concept of topological interlocking differs since pieces are held together through kinematic constraints imposed by neighboring pieces, with a peripheral force holding everything together [22,30]. Without the peripheral force, the pieces could be disassembled through rigid body translation without deformation [22,31]. Many multimaterial additive manufacturing systems use 2D topological interlocking joints since there is some bonding or friction between parts printing with different materials [32,33]. There has been some work on using 3D geometric interlocking recently with multiple material types [3]. A 2.5D topologically interlocking assembly has been used to segment a part for printing by multiple robots in a recent work that used Delaunay lofts on a layer-by-layer basis [26]. While they did not conduct physical testing of the parts, it was demonstrated that the segmented pieces could support 45 pounds of weight. Since the Delaunay loft is defined by a line in 2.5D, the layer-to-layer geometry is not defined and can change rapidly, which can cause difficulties when printing, including the printing of sharp corners, which are also difficult to print.

Some methods for segmenting a print use an image-based approach where an image can be uploaded and segmented [15,34]. In some cases, the robot is assigned to print the paths closest to the robot [35]. While this can be a straightforward approach, the printed part is limited to the 2D extrusion-style parts. It is likely possible to implement a similar strategy on a layer-by-layer basis to create 3D geometry, but it has yet to be shown.

Segmentation strategies previously mentioned vary in reliance on material bonding to create strong parts, with some methods strategically using segmentation to enhance the connection between pieces printed by different robots or with different materials. The use of topological and geometric interlocking has been primarily focused on the 2D and 2.5D domains with limited work in 3D geometry. We aim to address this research gap in our work by using topologically interlocked tiles.

2.2 Generality of Part Geometry.

The printing of an arbitrarily complex part is a challenging task for any type of additive manufacturing, and often, printing methods have limitations on types of topology that can be printed, even with single robot printing. For example, support structures are often required when printing structures with overhangs larger than 45 deg using fused deposition modeling. This is also a challenge in C3DP, where traditional slicing of parts must be modified in some methods to enable multiple robots to print a single part. In a previous study, the chunking algorithm uses a traditional slicer to create the path after the part has been separated into its chunks [36]. This method allows for a wide range of printed parts, but due to the design of the printing robot, the vertical size is often constrained. For this reason, the idea of Z-chunking was developed, which allows for vertical separation into parts that can be joined together after printing [37]. These two methods allow for the printing of a wide range of parts. Others have also used traditional single robot slicers to generate the G-code for their part and modify the paths to fit their collaboration strategies [38]. With these methods, it is often possible to print a wide variety of geometry, but the geometry joining the pieces together can cause weak bonding.

2.3 Collision Avoidance.

When using the chunking algorithm, the sloped angles allow for the adjacent chunks to be printed sequentially to avoid collision [1,39]. This typically involves some level of hierarchy or dependency tree for which some chunks must be printed before other chunks [40,41]. The dependency is related to the angle of the chunking plane since sloped interfacing with overhanging regions cannot be printed first. This often results in idle time at the beginning and/or end of the print [42] when the dependency tree begins or ends. For example, a print requiring three chunks with two robots may require one robot to be idle during the initial chunk print. More general robotics problems use a strategy where tasks are grouped into regions, which can then be assigned [43,44]. By then selectively sequencing tasks, they can avoid a collision.

One other method for noncollision is through constant communication between the robot and a central hub. If one robot gets too close to another, one of the robots is made to move away to avoid collision, often called an online or centralized method [38,42,45,46]. Another centralized approach used a projector to guide the printing of two robots, which reduces the need for constant communication between robots and between robots and a central hub [47]. These centralized methods often require high computation time of the central hub to control the robots, as well as expensive hardware and sensors to allow for constant and frequent communication.

The centralized approach is contrary to the decentralized approach, where robots only communicate in their immediate vicinity [48,49]. This approach to robot coordination is not exclusive to C3DP but is a general robot coordination approach with the goal of minimizing the total time needed to complete all tasks [48]. In the method proposed by Poudel et al., all robots know all tasks required and work on the next task that is able to be completed [42]. Another decentralized approach uses a method where the part is segmented into paths and each robot starts printing the nearest path and stops if a collision is possible with nearby robots, which continues until all paths are printed [50]. The decentralized approaches are especially useful in applications where there is a high degree of uncertainty in time to complete tasks or complete movements.

3 Conceptual Framework

In order to conceptualize our algorithmic framework, we begin with two assumptions regarding the printing setup containing a set of robot manipulators and a common printing volume. First, we assume that the union of the workspaces of all robots (reachable volume) is bounded by singly connected genus-0 2-manifold, i.e., a surface homeomorphic to a sphere. Second, we assume that the part being printed lies completely inside the union of the robot workspaces. Simply put, we assume that the robots are arranged around the printing volume. Third, we assume that the cooperation between robots occurs exclusively on a layer-wise basis. This means that at any given time, all robots must either print the same layer or wait for other robots to finish printing a layer before moving on to the next one. Finally, we assume that the only communication between the robots is that of relaying their state in terms of whether they are finished printing their assigned region for a given layer.

Under the aforementioned assumptions given, our framework consists of four main steps: (1) defining interlocked segmentation of a given part based on helical parameterization, (2) creating an interfacing complex that defines the subvolumes assigned to each robot, (3) generating a sequence of cells for each robot to print, and (4) determining the part configuration in the workspace that maximizes parallel printing.

3.1 Helically Interlocked Part Segmentation.

Our approach for part segmentation is based on tessellating the entire ambient space (i.e., R3) into topologically interlocking cells and then intersecting this tessellation with the part boundary to determine which cells (in whole or in part) should be printed. Note that this intersection is obtained in a layer-wise manner (Fig. 2).

Fig. 2
(a) The interfacing complex (black) and robots interfacing path, created by using the vertices and edges, which are shared by at least two robots. (b) The interfacing path for a single robot can be seen using their respective colors and is created through the vertices and edges shared by cells assigned to a given robot and the cells not assigned to that robot. The cells are also classified as interior or exterior in order to determine if they will be printed.
Fig. 2
(a) The interfacing complex (black) and robots interfacing path, created by using the vertices and edges, which are shared by at least two robots. (b) The interfacing path for a single robot can be seen using their respective colors and is created through the vertices and edges shared by cells assigned to a given robot and the cells not assigned to that robot. The cells are also classified as interior or exterior in order to determine if they will be printed.
Close modal

The key requirement of our tessellation approach is to provide topological interlocking that (1) results in an elegant geometry for elegant layer-wise robot cooperation, (2) allows for a smooth transition of cell shapes between any two consecutive layers, and (3) can be systematically controlled using intuitive geometric parameters. To achieve this, we make use of a recently discovered class of topologically interlocked tiles called VoroNoodles [4]. VoroNoodles are structures that are generated by taking a cell-transitive 2-honeycomb (i.e., a 2D tessellation where all cells are congruent) and translating the entire tessellation along a helical path. This is specifically critical for our framework for three reasons. First, the cell transitivity at each layer offers a cellularization that is easy to assign to different robots similar to prior works [2]. This also translates the problem of creating volumetric cells into a 2D tessellation problem, wherein each polygonal cell can be designed to avoid sharp turns to improve the quality of extrusion. Second, since all layers are cellularized identically, the transition between any two layers is smooth. Finally, the helical translation results in topologically interlocking tiles that can be directly controlled directly through the same parameters that define a helix, namely, the radius and the pitch.

Fig. 3
A flowchart of the printing process to avoid collision and sequence cells
Fig. 3
A flowchart of the printing process to avoid collision and sequence cells
Close modal

3.2 Interfacing Complex for Robot Assignment.

Given a helically interlocked tessellation, the next step is to assign each cell of the tessellation to a robot. This is achieved in a layer-wise manner wherein a robot is assigned all cells that are closest to it. Recall that this tessellation covers the entire ambient space. Therefore, the entire plane of any given layer is also a tessellation, specifically, a cell-transitive 2-honeycomb. For a two-robot system, an assignment of cells would lead to two sets of cells that are separated by a single path. In previous works [26,46], this has been termed the interfacing path. However, in our generalized case with an arbitrary number of robots, we obtain a graph resulting from the union of all vertices and edges shared by cells assigned to different robots. We call this the interfacing complex (Fig. 2(a)). Given the shape of the cross section at any layer, the intersection of the cross-sectional boundary with the tessellation gives us the cells that the robots actually need to print (Fig. 2(b)).

On the basis of these preliminaries, we have bivariate labeling for each cell. A cell on a given layer can be either interfacing or noninterfacing depending on whether it lies within or outside a predetermined threshold of distance away from the interfacing complex, respectively. The threshold essentially defines the zone of potential collision between distinct robots printing neighboring cells. Additionally, a cell can either be interior or exterior based on whether it is contained within the boundary of the part at a given layer. An important point to note here that even when a given cell is marked exterior (i.e., it is not marked from printing), it still contributes to defining how the robots should move across components of a part that are disconnected. Therefore, the exterior cells provide a natural means to enable the printing of part geometries with arbitrary topology (in terms of holes and connected components) at any layer.

3.3 Cell Sequencing and Robot Synchronization.

Given a set of labeled cells on a given layer, the final task is to determine the sequence in which the interior cells should be printed by their assigned robots. For this, we parametrize the plane based on distance field with respect to the interfacing complex. In practice, this amounts to sequencing the cells along the offset curves of the interfacing complex (Fig. 4). This, in fact, is a generalization of the sequencing approach developed by Krishnamurthy et al. [2]. Note that this sequencing is computed for the entire tessellation of the plane (within a reasonable bounding region). Therefore, the path of the robot is completely independent of the part geometry. The only variable that changes is whether the nozzle is set to extrude based on the interior–exterior labeling of the cells.

Fig. 4
(a) The process for sequencing the cells starts with a single layer of watertight cells and (b) then work is distributed between robots to form the interfacing complex. The interfacing complex is used to order all interfacing polygons (c)–(e). (c) Printing step 1: robot 1 interfacing cells (I1j), (d) printing step 1: robot 2 interfacing cells (I2j), (e) printing step 1: robot 3 interfacing cells (I3j), and (f) printing step 1: all noninterfacing cells (N1j, N2j, N3j). The non-interfacing polygons can then be printed at the same time.
Fig. 4
(a) The process for sequencing the cells starts with a single layer of watertight cells and (b) then work is distributed between robots to form the interfacing complex. The interfacing complex is used to order all interfacing polygons (c)–(e). (c) Printing step 1: robot 1 interfacing cells (I1j), (d) printing step 1: robot 2 interfacing cells (I2j), (e) printing step 1: robot 3 interfacing cells (I3j), and (f) printing step 1: all noninterfacing cells (N1j, N2j, N3j). The non-interfacing polygons can then be printed at the same time.
Close modal

With a cell sequence assigned to each robot, it is natural to consider collision avoidance for the interfacing cells. Consider a set of n robots R={Ri},i[1,n] that are printing m layers. For each (say jth) layer, we denote Iij and Nij as the interfacing and noninterfacing cells, respectively, for robot Ri. In this context, recall that we assumed an exclusive layer-wise cooperation and minimal communication. Based on these assumptions, the idea is to allow the printing tasks such that Iij are printed one Ri at a time (i.e., I1jI2jInj without loss of generality) (Figs. 4(c)4(e)). Following this, all noninterfacing cells Nij are printed in parallel (Fig. 4(f)). Once all the cells are printed in layer j, all printers move to layer j+1. While this is not necessarily an optimal scheme for the printing time, it avoids collision completely without the need for complex robot control or communication. Since only one robot is allowed to print the interfacing cells at a time, it follows that no two robots can be printing adjacent cells, as a result, collision is completely avoided since adjacency is where collision is avoided (Fig. 3).

3.4 Printing Parallelization.

The print time is determined by the orientation of the part since different orientations of the part result in different assignments of cells to robots and, therefore, different idle times due to our collision avoidance framework. Our goal is to maximize printing parallelization by reducing the amount of idle time during printing (Fig. 5). We identify two main sources of idle time in our communication framework.

  1. Interfacing Cells: Since only one robot can print the interfacing cells at a time to avoid collision, the other printers must wait.

  2. Division of Work: If robots have an unequal division of work, there is idle time since one or more robots will have to wait to move to the next layer.

In order to address these, we introduce the concurrence measure in order to determine the amount of time that the robots are printing at the same time (concurrently). While this can be done through the calculation of the G-code path and path length, it can be computationally expensive for large parts with a lot of paths. In order to not compute the path, we can use the area of the interfacing and noninterfacing cells as an estimation of the print time.

Fig. 5
The optimal and non-optimal setups are shown for a simple rectangle layer with two robots: (a) robot setup and optimization variables (x,y, and θ), (b) nonoptimal setup, (c) non-optimal setup, and (d) optimal setup
Fig. 5
The optimal and non-optimal setups are shown for a simple rectangle layer with two robots: (a) robot setup and optimization variables (x,y, and θ), (b) nonoptimal setup, (c) non-optimal setup, and (d) optimal setup
Close modal

3.4.1 Interfacing Volume.

Recall that the printing of all interfacing cells causes other robots to wait. As a result, the total interfacing volume is the first critical variable that affects the total waiting time. Without loss of generality, we assume that the wait time is directly proportional to the interfacing volume by a constant factor. Furthermore, we assume that each layer has equal constant thickness. With these two assumptions in mind, the interfacing volume can be represented by simply adding the areas of all interfacing cells across all layers, as follows:
(1)

By minimizing AI, we minimize the time that only one robot is printing and avoiding collision.

3.4.2 Difference in Noninterfacing Volume.

Given that we lose time during the printing of interfacing cells, the simultaneous printing of noninterfacing cells is what enables for reducing the overall time to print. In order to model this, we introduce a new metric, AN, which measures how equally the work is distributed across the robots. Specifically, this metric represents the pairwise difference in the noninterfacing volumes printed by each robot. Again, assuming a constant and equal layer thickness, AN is calculated by taking the sum of the average absolute pairwise differences of the areas of noninterfacing cell areas across all layers, as follows:
(2)

Minimizing AN results in an as-even-as-possible distribution of noninterfacing cells across the robots for the entire volume of the part.

3.4.3 Concurrence Measure.

For maximizing the parallel printing (for minimizing print time), we combine the interfacing cell areas and the difference between the noninterfacing cell areas to define our concurrent metric C as follows:
(3)
where AT represents the total volume of the part to be printed and AT is calculated by adding the areas of all interior (i.e., printable) cells across all layers. Note here that the condition C=0 may potentially occur when all printable cells are interfacing (i.e., AN=0 and AI=AT) signifying that the robots never print concurrently. Similarly, the condition C=1 may occur when all printable cells are noninterfacing, equally distributed across the robots, and there are no interfacing cells (i.e., AI=0 and AN=0) signifying that the robots always print concurrently. To visualize this case, imagine a system of n robots printing n congruent shapes such that each robot prints exactly one shape.

Given this concurrence measure, the goal of our optimization framework is to determine the position and orientation of a given part that minimizes C.

4 Algorithm

The algorithm for NoodlePrint operates on a layer-by-layer basis. Given a part to be printed, we start by slicing the part into layers, where the geometry at layer j is a set of simple, closes, oriented curves denoted by Lj={γj1γjl} such that they define a valid planar region at the layer. Given the geometry at a layer, our algorithm consists of four steps, namely, segmenting each layer into printable cells, computing the interfacing complex, computing the cell sequence per robot using the interfacing complex, and finally generating the path for each robot (Fig. 6).

Fig. 6
The complete algorithm takes in an (a) STL file and, for every layer, creates (b) polygonal cells (layer 1 of VoroNoodles), (c) which can be cut using the boundary of the STL and (d) labeled as polygons that will be printed or not and classified as interior or exterior based on if they are inside or outside the part. (e) Using the LayerLock algorithm, cells are distributed between robots and ordered. (f) The final polygons are extracted by only considering the inside polygons (smooth interfacing line is seen).
Fig. 6
The complete algorithm takes in an (a) STL file and, for every layer, creates (b) polygonal cells (layer 1 of VoroNoodles), (c) which can be cut using the boundary of the STL and (d) labeled as polygons that will be printed or not and classified as interior or exterior based on if they are inside or outside the part. (e) Using the LayerLock algorithm, cells are distributed between robots and ordered. (f) The final polygons are extracted by only considering the inside polygons (smooth interfacing line is seen).
Close modal

4.1 Helically Interlocked Part Segmentation.

There are two components to part segmentation. First, we compute the helically interlocked tessellation of the entire work volume by using the VoroNoodles generation algorithm (see Ref. [4] for details). Given the current layer j[1,m], the helix radius rR, and the number of turns tR, a simplified version of the algorithm to compute the cell-transitive 2-honeycomb Tj is as follows:

  1. Initialize a set of points {pi}R2 based on a Wallpaper Symmetry Group.

  2. Generate Voronoi tessellation T=(V,F), where VR2 are the Voronoi vertices and F are Voronoi cells.

  3. Vj=V+(rcos2πtjm,rsin2πtjm).

  4. Tj=(Vj,F).

The values of t and r determine the amount of interlocking (Figs. 7 and 9). Given a 2-honeycomb Tj=(Vj,F) and the layer geometry Lj={γj1γjl}, the next step is to compute a new labeled tessellation Tj=(Vj,Fj) of the layer geometry as follows:

  1. Set Vj, Fj to Ø

  2. For each face gF

    • Compute cell region κ{Vj(g)}

    • Split cell with respect to layer geometry: Ω={(vi,ωi)}Σκγji,i[1,l]

    • If Ω=: FjFjg, VjVj{Vj(g)}

    • Else: FjFj{ωi}, VjFj{vi}

  3. Tj(Vj,Fj)

Fig. 7
An example of different cell distributions at various radii of Voro-Noodles: (a) single helix cell across all layers, (b) isometric view of part distribution, and (c) side view of the cell distribution
Fig. 7
An example of different cell distributions at various radii of Voro-Noodles: (a) single helix cell across all layers, (b) isometric view of part distribution, and (c) side view of the cell distribution
Close modal

Here, Ω={(vi,ωi)} is a set of cells obtained after splitting the face g with respect to the boundary curves of Lj. This is achieved by using any standard polygon to polygon intersection algorithms. Once the cells are computed, we compute the labels Ej for each cell in Fj such that the label for the kth cell Ej{k}=1 for exterior cells and Ej{k}=0 for interior cells (Fig. 6(d)). Since printing small cells can be challenging, we combine cell k if area(Fj{k})<0.05×max(area(Fj)) to a neighboring cell, which has an equal label of E (see top left image in Fig. 8 (c)).

Fig. 8
The optimal placement of a castle using several configurations of robot positioning as well as cell size and resolution. The optimal placement was found using fmincon in matlab. The concurrence measure C, which measures how much concurrent printing occurs, is shown for each case. (a) STL part and layer 5 sliced, (b) placement of 2 and 3 robots at layer 5, and (c) optimal orientations for several cell types and sizes along with the concurrence measure C.
Fig. 8
The optimal placement of a castle using several configurations of robot positioning as well as cell size and resolution. The optimal placement was found using fmincon in matlab. The concurrence measure C, which measures how much concurrent printing occurs, is shown for each case. (a) STL part and layer 5 sliced, (b) placement of 2 and 3 robots at layer 5, and (c) optimal orientations for several cell types and sizes along with the concurrence measure C.
Close modal

4.2 Cell Sequencing.

In order to generate a sequence of cells for each robot, the first step is to generate the interfacing complex, IC={(ak,bk,fk,gk)}, where a,b,[1,|Vj|] are the vertex indices for an edge and f,gFj are the indices of the faces that share the edge (a,b). Given a Tj=(Vj,Fj) for the layer geometry, and robot positions r1,r2,rnR2 projected on the layer plane, we begin by first labeling each face fFj with respect to the robot closest to its centroid c(f). We encode this labeling as a map λ:fi,fFj,i[0,n] such that λ(f)>0 is the index of the robot closest to f and λ(f)=0 implies that the cell has been printed. Given λ, IC={(ak,bk,fk,gk)} is simply the set such that ak,bkfk, ak,bkgk, and λ(fk)λ(gk). By using the interfacing complex, we compute interfacing and noninterfacing cells (Iji and Nji, respectively). Specifically, Iji={k},k[1,|Fj|] such that cfkIC<s and Nji=[1,|Fj|]Iji. Here, s is the safe distance of the robot, typically the nozzle radius.

With the interfacing complex and the indices for interfacing and noninterfacing cells, there are two steps to computing the cell sequence for a given robot. First, we use the interfacing complex to compute the interfacing path IPi for robot ri. The interfacing path is simply a subset of IC given by IPi={(ak,bk,fk,gk)} such that either λ(fk)=i or λ(gk)=i. Without loss of generality, we can assume that the edges are ordered consistently, i.e., b1=a2,b2=a3, and so on (Fig. 2(a)). For sequencing the cell, we simply traverse along the path IPi and get the sequence {fk} of cells that should be printed. As each cell is printed, we update λ to zero signifying that it has been printed. Once done, we regenerate a new interfacing path IPi={(ak,bk,fk,gk)} such that either λ(fk)=i or λ(gk)=i and repeat the process until all cells assigned to robot ri are printed (Figs. 4(c)4(f)). This strategy is a generalization of the moving fronts strategy developed in LayerLock [2] to the number of robots greater than two.

4.3 Cell Printing.

Once the cells are sequenced, the final step is to compute the path of the robot. Many different methods exist for filling in a region within typical 3D printer slicing (concentric, monotonic, rectilinear, etc.). We choose to print concentric paths of the cells where a cell is offset curves of a cell. We chose this because it allows for a parameterization of cell thickness. We follow a standard additive manufacturing protocol where the bottom and top p number of layers are completely filled. Additionally, we perform gradation of the cell thickness in order to ensure top layer printability. This is done by determining if any of the points of the cell are not within the STL, then we add more contours to print until all points of the contours are within the STL when looking at p layers up or down, resulting in a solid top and bottom for prints (see Pug print in Sec. 6.2)

4.4 Communication Protocol.

The communication strategy between robots printing collaboratively is critical to avoid collision as well as timely printing. In the ideal case, with equally distributed work at every layer and every robot, the print start times can be just offset to avoid any level of collision. However, this ideal scenario is rare to achieve a completely equal distribution as well as machine printing time can be unpredictable with variations in acceleration and speed [2]. For this reason, we require a generalized framework for robot coordination and synchronization.

We introduce the “wait-and-go” communication protocol, which ensures noncollision between robots. The wait-and-go commands orchestrate the robot’s printing or waiting actions during the process, similar to the approach implemented by McPherson and Zhou [51].

We generalize the command sequence of the communication protocol to the case with n robots at layer j.

  1. Let i denote the index of the n robots involved in the cooperative print. Set i to 1.

  2. Ri receives go command to print Iij.

  3. Ri completes Iij and receives wait command.

  4. Increment i by 1. In case i>n, proceed to (5). Otherwise, return to (2).

  5. in, Ri receives go command to print Nij.

  6. in, Ri receives wait command as soon as Nij is completed.

  7. The next layer starts, restarting the cycle from (1) and increasing j by 1.

Note that, for example, while it is possible for Rn to print Nnj as R1j prints I1j, it would require a more communication commands beyond wait-and-go commands. Therefore, we opted for this communication protocol with only a few commands. This protocol guarantees that collision is completely avoided through cell labeling and using “wait-and-go” commands, which can be computationally efficient.

4.5 Concurrence Optimization.

Up to this point, the algorithm assumes a predetermined positioning of a part. However, it is obvious that the part’s position and, therefore, work distribution can influence overall printing time (Fig. 5). To solve this, optimization can be done on the placement of the part using the concurrence measure C as the objective function to maximize. To change the objective function, the part can be translated or rotated to change the assignment of printing work. The design variables are the center position of the part in the x direction Px, y direction Px, and the angle of the part with respect to its center Pθ, which are all continuous variables. Since the cell assignment uses the closest distance, this results in a nondifferentiable function. The central assumption of this work is that the part is located within the shared printing volumes of the robots. If the bounds of the robot workspaces can be defined by B, where B=1 is outside and B=0 is inside the workspaces, then the equality constraint that must be satisfied is that B=0Lj. To compute the optimum, we use the fmincon function available in matlab,2 which uses the “interior-point” method by default. If there exists symmetry of the part or robot placement, additional constraints can be added to reduce computational time; however, it is difficult to generalize.

5 Numerical Studies

One of the goals in additive manufacturing research is to connect design decisions while keeping downstream manufacturing processes in mind. While design-for-additive manufacturing is now a well-researched area [52], the same is not true for C3DP. Our framework offers a set of parameters that can be tuned based on the design of a given part. Specifically, a designer may choose three main types of part design parameters pertaining to (1) the geometry of the 2-honeycomb, (2) the intensity of interlocking, and (3) the resolution of the segmentation. Note that the intensity of interlocking is determined by the helix parameters (radius and number of turns), and the resolution of segmentation is defined by the size of the cells in a given 2-honeycomb.

Different choices in the aforementioned parameters may lead to different outcomes in terms of part performance and the time to print. To enable such exploratory decisions for cooperative manufacturing, there is a need to study the effects of the parameters on the outcomes. The design space of the geometry of 2-honeycomb is intractably large, given that every distinct initialization of Voronoi sites will change the shape of the cells, even for one wallpaper symmetry [53]. Therefore, the focus of our study is specifically on establishing the relationship between the parameters to the time to print a given part in its optimal spatial configuration. To do so, we choose the regular hexagonal 2-honeycomb as a canonical example.

Our hypothesis that the intensity of interlocking, which is controlled by the helix parameters, is related to the print time and the concurrence measure independent of the cell size. If true, the hypothesis will offer a means to select helix parameters for optimal concurrence measure and time. To test our hypothesis, we measure both concurrence as well as the estimated time.

Recall that the concurrence score estimates how long a part will take to print, which is simple to compute through summations of cell areas. Note that the concurrence score, while correlated with the time to print, does not directly measure time. Specifically, it does not take into account the path traced by the nozzle between two cells while not extruding material. Therefore, we independently estimate the time to print by calculating the total length of the nozzle path for each robot at each layer, consisting of both the interfacing and noninterfacing paths, as well as movement paths (i.e., paths where material is not being extruded). Therefore, at each layer, the time to print is the sum of all interfacing paths added with the maximum noninterfacing path multiplied by the speed of print [2].

5.1 Experimental Design.

Given the helix radius, the number of helical turns, and the cell size (our independent variables), the goal of our experiment is to determine the relationship between each of these independent variables with concurrence and time to print. To do so, we consider a cube with a side length of S as a part to be printed. We then generate a range of interlocked tessellations and generate robot paths for a range of input variables (Fig. 9). Also note that we fix the number of robots to two. We vary the helix radius as a linear function of S as 0.2S, 0.4S,…, S. The range for the number of turns is [0.5,2.0] and that for the cell size is [0.05,0.15].

Fig. 9
The various VoroNoodle parameters are shown for a single tile and for the assembly by robot distribution
Fig. 9
The various VoroNoodle parameters are shown for a single tile and for the assembly by robot distribution
Close modal

For each combination of parameters in their respective ranges, we first compute the optimal position and orientation of the part using the design variables (Px,Py,Pθ). For this, our goal is to determine the position and orientation that maximizes the concurrence measure (C). We implement this optimization using the fmincon function provided in matlab.3

5.2 Results.

We conducted tests by varying the number of turns between 0.5 and 2 as well as the helix radius from 0 to 1 relative to the length of the part, with a cell size also varying from 0.05 to 0.15 relative to the length of the part S (Fig. 9). In doing this test, since we have three independent variables and two dependent variables, we choose to group tests by one independent variable at a time and make observations.

5.2.1 Grouping by Number of Helix Turns.

By grouping the data by the number of turns of the helix, we can visually observe very little difference in both time and concurrence as the number of turns changes (Fig. 10, column 1). At each value of turns, the bar charts appear to be very similar, and there is no clear correlation with the scatter plot. To confirm this, an analysis of variance (ANOVA) analysis was performed on both time and concurrence, which failed to reject the null hypothesis (p=0.20). This test shows that neither time nor concurrence has a strong relationship with the number of helix turns.

Fig. 10
The results of our testing show that the most significant independent variable is the cell size, which largely determines both the concurrence measure and the time to print the part
Fig. 10
The results of our testing show that the most significant independent variable is the cell size, which largely determines both the concurrence measure and the time to print the part
Close modal

5.2.2 Grouping by Helix Radius.

We can group the tests by the helix radius and observe that there does not appear to be a strong correlation between the helix radius and the concurrence or time (Fig. 10, column 2). Similar to the number of turns of a helix, an ANOVA test was conducted, which showed that the null hypothesis cannot be rejected (p=0.35), meaning that it is not likely that changing the radius of the helix affects the concurrence.

5.2.3 Grouping by Cell Size.

When the data are grouped by cell size, it can be seen that there appears to be a clear correlation between concurrence and cell size (Fig. 10, column 3). As the cell size increases, the amount of concurrence decreases. Similarly, as the cell size increases, the time to print decreases. It was confirmed by ANOVA tests that the null hypothesis is rejected and that the means are very likely to be significantly different. In this case, the p-values for both concurrence and time are less than 1025. This means there is a high correlation between cell size and time and concurrence.

The relationship between the cell size and concurrence appears to be nonlinear, with minimal difference between a cell size of 0.05 and 0.075. Similarly, with time, there is not much change from a cell size of 0.1250.15 but a large change between 0.05 and 0.075

5.3 Key Findings.

The most important result from these tests is that to minimize the time or maximize concurrence, the first variable that should be chosen is the cell size since it has the most impact on overall parallel printing. Once the cell size is chosen, there is a helix radius and a number of helix turns, which correspond to a minimum time and maximum concurrence. This demonstrates a Pareto frontier of choices in which the designer can choose which is more valuable, how current the robots print, or the time taken to print (Fig. 10). Our results reject the hypothesis since there is no direct relationship between the helix parameters to either time or concurrence measure, but rather cell size has a direct relationship to time and concurrence.

6 Physical Results

For physical validation of our methodology, we employed custom-made SCARA fused filament fabrication [9], which has a speed of 40 mm/s. While the robots have the ability to send and receive commands with a latency of approximately 20 ms, we only use the “wait-and-go” commands as needed to pause and synchronize each layer, which check continuously for these constraints in 100 ms intervals. The robots are placed on a preset grid and can be located only in a few discrete locations, and this is due to the design of the robot system itself. A python script coordinated the cooperative printing process by establishing a communication channel in a local network and sending wait-and-go commands following the communication protocol outlined in Sec. 4.4. The arrangement of the printing area was determined according to the number of printers necessary for the job (Fig. 11). We explored three distinct case studies to demonstrate our methodology’s generality and robustness.

Fig. 11
(a) The two-robot setup is 300mm×600mm (2-printer physical arrangement). (b) The three-robot setup (3-printer physical arrangement), which is 600mm×600mm as it is printing the first layer of the castle.
Fig. 11
(a) The two-robot setup is 300mm×600mm (2-printer physical arrangement). (b) The three-robot setup (3-printer physical arrangement), which is 600mm×600mm as it is printing the first layer of the castle.
Close modal

6.1 Topological Cases.

While these parts may not typically be manufactured, they encompass many topological cases that can occur at any given layer of an arbitrarily shaped print. We used two printers for this case study, and the results show that our methodology can accommodate each case while preserving the mechanical interface (Fig. 12). Each print is roughly 200mm×100mm×10mm. While we only tested a few select topologies, this test shows that our method for ordering cells along the interfacing path and the moving fronts will work for arbitrary layer topologies. The part’s orientation was intentionally chosen as nonoptimal to demonstrate the ability to order and print across disconnected components.

Fig. 12
The three cases demonstrate different topological events that can occur on a given layer of a print. Our algorithm can accommodate these cases while maintaining strong bonding between the two-robot prints.
Fig. 12
The three cases demonstrate different topological events that can occur on a given layer of a print. Our algorithm can accommodate these cases while maintaining strong bonding between the two-robot prints.
Close modal

6.2 Pug.

A pug is a common calibration model usually included in Prusa brand printers. It is modeled after Josef Prusa’s pug Buddy. Buddy has a complex geometry because it is difficult to slice using traditional C3DP methods, such as slope-based chunking. This is because it is primarily vertical and has a high aspect ratio.

We used two printers for this study due to the part’s geometry. The resulting print is roughly 100mm×100mm×200mm, clearly showing layers’ interlocking through their distinct color schemes (Fig. 13). It is worth noting that, topologically, Buddy contains only genus-0 layers and that its concurrence measure is low since it uses a large cell size (relative to the size of the pug) and has a high number of interfacing cells, regardless of orientation.

Fig. 13
The final printed pieces for the two large shapes. The pug demonstrates a tall and thin object that can be segmented using our algorithm, which has strong cohesion between the two pieces printed by different robots. We also show an optimal placement of a castle, which was printed using the NoodlePrint methodology with three robots. The top layers are left hollow so that the noodle structure can be seen.
Fig. 13
The final printed pieces for the two large shapes. The pug demonstrates a tall and thin object that can be segmented using our algorithm, which has strong cohesion between the two pieces printed by different robots. We also show an optimal placement of a castle, which was printed using the NoodlePrint methodology with three robots. The top layers are left hollow so that the noodle structure can be seen.
Close modal

6.3 Castle.

Finally, we looked into a castle model with a distinct geometry from Buddy the pug. We selected this model specifically to show that our methodology can address parts that have changing topologies along the z-axis. For this study, we used three printers printing in black, light red, and navy blue filament colors (Fig. 11(b)). They were primarily responsible for the left, right, and back two towers, respectively, which was the optimal orientation.

After optimization, the final print is roughly 200mm in all directions and has a high concurrence measure. This is due to the small cells as well as the fact that the optimization leads to the interfacing complex located on the thin castle walls (Fig. 16(a)). Empirically, the high concurrence measure is demonstrable since, after 230 layers, all robots work independently as the interfacing cells become exterior cells. This is not only due to the geometry but also due to a direct consequence of our optimization methodology, which positioned and oriented the castle in a configuration that maximizes concurrence. The interlocking of the noodles between the VoroNoodles is also clearly visible on castle walls and the front gate, preserving the mechanical integrity of the part as a whole (Fig. 13).

7 Mechanical Behavior

Prior work has demonstrated that increasing the radius and the number of turns of the helix used to create VoroNoodles [4] enhances the mechanical strength of the printed parts [4]. The assumption is that a tile that is not cohered with neighboring tiles, which is not the case for 3D printing. While segmentation naturally leads to a loss in strength, it is important to determine the severity of the loss of strength. Prior work on C3DP has experimented with the strength under tensile loading using chunking segmentation [10,11]. The present study includes in addition other, more advanced, segmentation methods based on Delaunay Loft and other topological interlocking approaches (see the Supplemental Materials on the ASME Digital Collection).

7.1 Experiment Design.

Our testing method is similar to the prior work where a part is segmented into cells (Fig. 14(b)) and printed with a single robot in order to only study the effect of gap size. We used three different segmentation methods: planar chunking to compare with prior work, Delaunay Lofts (used in LayerLock), and VoroNoodles. We explored the effect that an increase in gap between cells has on testing both bending and tensile samples using ASTM D790 standard size for bending (127mm×12.7mm×3.2mm) and ASTM D638 type 1 sample for tensile (gauge width of 13 mm and a thickness of 3.2 mm). Both used a slow deformation rate of 5 mm/min to ensure quasi-static loading conditions. We choose to explore the effect of gap size since there are inherent mechanical inconsistencies during the printing process. In our case, this occurred due to misalignment of the printer’s relative coordinate frames to the global coordinate frame, which can be minimized but not eliminated (Sec. 8.2.1). A 0.4 mm nozzle was employed to print the samples, and three gap sizes, 50%, 25%, and 7.5%, of the nozzle diameter were used for large, medium, and small gaps, respectively.

Fig. 14
(a) The gap between the cells at 7.5%, 25%, and 50% of the nozzle diameter and (b) the tilings used. (c) The maximum bending and (d) tensile forces that the samples experienced with small (S), medium (M), and large (L) gaps between cells. The monolithic (nonsegmented) pieces were printed using contour fill and rectilinear fill. The segmentation methods included chunking with high and low angles, Delaunay Lofts, and VoroNoodles with high interlocking and low interlocking.
Fig. 14
(a) The gap between the cells at 7.5%, 25%, and 50% of the nozzle diameter and (b) the tilings used. (c) The maximum bending and (d) tensile forces that the samples experienced with small (S), medium (M), and large (L) gaps between cells. The monolithic (nonsegmented) pieces were printed using contour fill and rectilinear fill. The segmentation methods included chunking with high and low angles, Delaunay Lofts, and VoroNoodles with high interlocking and low interlocking.
Close modal

Only a few variables were tested for each segmentation methodology. For chunking, a high (more horizontal) angle of 60 deg (more horizontal) and a low (more vertical) angle of 30 deg were used based on a prior naming convention [11]. For the Delaunay Loft, only a Hex-Quad-Hex shape was used, which refers to the top, middle, and bottom layers [7]. For VoroNoodles, high and low interlocking parameter sets were used, which had 0.5 turns and a radius half of the cell size for the low interlocking, and for the high interlocking, 1.5 turns were used, with a helix radius of three times the cell spacing. Each set of parameters was tested three times using bending and tensile to ensure repeatability, which is 102 total samples tested.

The hypothesis tested was that the topologically interlocked tessellations are not substantially inferior to nontopologically interlocked tessellations in terms of strength. We further hypothesized that VoroNoodles have a greater ability to retain strength when the gap increases.

7.2 Experimental Test Results.

The results regarding maximum bending and tensile forces indicate that topologically interlocked tessellations retain greater strength as gap thickness increases, which supports the initial hypothesis (Fig. 14). When comparing nontopologically interlocked tiles (chunked) with topologically interlocked tiles (Delaunay and VoroNoodles), the VoroNoodle high interlocking structure demonstrates the smallest reduction in both bending strength (5.3%) and tensile strength (13.7%) relative to the small gap part. This slight decrease in strength is particularly noteworthy when juxtaposed with the more significant reductions observed in chunked structures, which can be as high as 23.0% for bending and 79.5% for tensile strength relative to the small gap part. While Delaunay Lofts and VoroNoodles low interlocking show similar reductions in bending strength (14.0% and 13.8%, respectively), their tensile strength reductions are substantially higher, with Delaunay Lofts losing 78.1% and VoroNoodles low interlocking losing 67.4% compared to just 13.7% for VoroNoodles high interlocking. These results suggest that the high interlocking design of the VoroNoodle provides enhanced stability and resilience against weakening as the gap size increases. This consistency across both bending and tensile forces supports the hypothesis that topological interlocking promotes greater retention of mechanical properties by enabling a more effective distribution of applied forces throughout the structure.

While the main goal of the tests was to compare how different segmentation methods loose strength as the gap increases, it is also important to compare the strength of the segmentation methods with the nonsegmented (monolithic piece) since it is the absolute baseline for single robot printed part. In this case, it is normal to expect lower mechanical properties since a defect has been introduced to the part. In the case of bending, the high interlocking VoroNoodles is not significantly weaker than the monolithic and lost less than 20N of maximum force. In the case of tensile, only a few of the small gap pieces were stronger than the rectilinear part. However, the high interlocking VoroNoodle is stronger than the rectilinear monolithic part, which is a surprising result (Fig. 15).

Fig. 15
The force–displacement curves for tensile deformation of parts with large gap parts show that the VoroNoodle high interlocking is the only segmentation type exhibiting tensile strength comparable to that of the reference monolithic part
Fig. 15
The force–displacement curves for tensile deformation of parts with large gap parts show that the VoroNoodle high interlocking is the only segmentation type exhibiting tensile strength comparable to that of the reference monolithic part
Close modal

8 Discussion

8.1 Print Parallelization.

We notice from our numerical results that increasing the number of robots nearly always decreases cooperation. This is due to the communication protocol used since any increase in the number of robots almost always increases the interfacing area, causing a decrease in cooperation. This can be seen when viewing the optimal positioning of the castle (Fig. 8). Increasing the number of robots from two continuously decreases the amount of cooperation between robots since the total interfacing area increases. It is possible that a more complex communication protocol could be implemented in which the robots could work on their noninterfacing cells, while only one robot works on the interfacing cells. A change in the calculation of the measure of cooperation would likely be required. For this reason, we have limited the scope of this article to this simple communication protocol.

8.2 Challenges With Physical Setup.

The physical evaluation of the parts resulted in several key challenges and observations.

8.2.1 Printer Alignment.

During the printing process, alignment with the robots was of utmost importance. When using multiple robots, their G-code must be transformed to align with the local coordinate system of only one robot, which is selected as the global frame of reference. The exact transformation matrix between coordinate systems cannot be known a priori but only approximated. Reducing alignment errors is critical since they will eventually lead to gaps in printing [36]. During printing of the larger objects (pug and castle), the robots had a slight misalignment, in most cases near 1 mm (Figs. 16(a) and 16(b)). While this would typically lead to print failure since pieces would be disconnected using chunking-based methods, our prints both turned out successful even with a 1 mm gap. Since a single noodle may not be printed entirely by a single printer, it can ultimately “heal” a misalignment (Fig. 16(c)). Although these gaps were not intentionally introduced in our printing process, it is possible that the gap could be mitigated with. However, through physical testing, we showed that using VoroNoodles with high interlocking parameters (high radius and number of turns of the helix) can be robust to misalignment/mechanical inaccuracies.

Fig. 16
(a) An error in the alignment of robots at layer 1 to one another can be “healed” since (b) a VoroNoodle may not be printed by only one robot (left side misalignment fixed (∼1 mm wide). (c) Over the volume, this leads to a small gap but still strong cohesion (left side misalignment fixed).
Fig. 16
(a) An error in the alignment of robots at layer 1 to one another can be “healed” since (b) a VoroNoodle may not be printed by only one robot (left side misalignment fixed (∼1 mm wide). (c) Over the volume, this leads to a small gap but still strong cohesion (left side misalignment fixed).
Close modal

8.2.2 Layer Distribution.

Since a noodle tile is not printed by a single robot, the layer-to-layer cell distribution is not necessarily equal. For example, in one layer, the distribution of cells can be nearly equal, and then in the next layer, due to the shifted 2-honeycomb, a layer can be printed by mostly one robot, which was evident in the case of the pug with large cells. The interface between the two colors is often sudden due to this shift in printing distribution. This could be minimized through smaller cell sizes and, therefore, fewer sudden shifts.

This effect was the main reason for the choice of synchronizing the printing process at every layer. While some methods allow nonsynchronized printing, these sudden shifts in layer distribution would cause the printers to crash into the part even if they were only a couple of layers ahead.

Since the optimization framework treats all interfacing cells as negative, increasing the number of robots almost always increases the number of interfacing cells, which in turn reduces the concurrence measure (Fig. 10). While it is possible to use a more complex communication protocol to decrease the concurrence measure as the number of robots increases, it is out of the scope of this article.

8.2.3 Reachability.

To satisfy reachability constraints for all robots, they had to be strategically positioned so that the union of all their workspaces contained the part. Satisfying this reachability constraint was particularly challenging in the printing of the castle due to the expansion of the printing area to be a 600mm×600mm build plate.

However, it may be possible to position and orient certain parts so that the workspace is not required to be genus-0, especially for larger build plate configurations. For example, if the middle portion of the castle was not contained in the union, meaning it is at least genus-1, the part could still be printed. This would introduce significant restrictions on part placement and orientation.

8.2.4 Print Quality.

The geometric nature of how the VoroNoodles grow along the z-axis creates visible streaks on the boundaries of the prints. These are most noticeable in the castle print along the walls. If desired, it is possible to modify the G-code to print these exterior features slower to ensure fewer ridges in the vertical direction.

9 Conclusion

In this article, we presented NoodlePrint, an algorithm that enables parameterizable topological interlocking for C3DP of any number of robots while avoiding a collision. We show that the segmentation using VoroNoodles can retain a high amount of strength as compared to other segmentation methodologies. The constant layer-to-layer geometry enables printing without the need for sharp turns or abrupt layer transitions of cell geometry. We also allow for an optimization framework to distribute the work evenly between any number of robots.

We validate this framework through the printing of various geometries, including simple topological cases that may appear on a layer of a print, as well as a pug and a castle. Through these examples, our framework allows for the printing of arbitrary geometries. Furthermore, if a support structure was built into the model, the NoodlePrint framework could still be applied to allow for printing.

While this framework has allowed for the printing of various parts, we believe that there are many future directions for this work. Our communication framework allows for straightforward collision avoidance; it is possible to develop more complex strategies to avoid collision while also maximizing the amount of concurrent printing that occurs. It is also possible to evaluate the mechanical properties of this approach as compared with previous ones, including LayerLock or chunking-based methods. Future directions could also allow for mobile robots that move around the entire printing space dynamically.

Footnotes

Acknowledgment

This work was partially supported by the 10.13039/100000001 National Science Foundation (NSF) Award No. 2048182 (Engineering Design and Systems Engineering Program) and Award No. 2112009 (Small Business Innovation Research Program). Any opinions, findings, conclusions, or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the NSF.

Data availability statement

The datasets generated and supporting the findings of this article are obtainable from the corresponding author upon reasonable request.

References

1.
Poudel
,
L.
,
Marques
,
L. G.
,
Williams
,
R. A.
,
Hyden
,
Z.
,
Guerra
,
P.
,
Fowler
,
O. L.
,
Sha
,
Z.
, and
Zhou
,
W.
,
2022
, “
Toward Swarm Manufacturing: Architecting a Cooperative 3d Printing System
,”
ASME J. Manuf. Sci. Eng.
,
144
(
8
), p.
081004
.
2.
Krishnamurthy
,
V.
,
Poudel
,
L.
,
Ebert
,
M.
,
Weber
,
D. H.
,
Wu
,
R.
,
Zhou
,
W.
,
Akleman
,
E.
, and
Sha
,
Z.
,
2022
, “
Layerlock: Layer-Wise Collision-Free Multi-robot Additive Manufacturing Using Topologically Interlocked Space-Filling Shapes
,”
Computer-Aided Des.
,
152
, p.
103392
.
3.
Kuipers
,
T.
,
Su
,
R.
,
Wu
,
J.
, and
Wang
,
C. C.
,
2022
, “
Itil: Interlaced Topologically Interlocking Lattice for Continuous Dual-Material Extrusion
,”
Addit. Manuf.
,
50
, p.
102495
.
4.
Ebert
,
M.
,
Akleman
,
E.
,
Krishnamurthy
,
V.
,
Kulagin
,
R.
, and
Estrin
,
Y.
,
2023
, “
Voronoodles: Topological Interlocking With Helical Layered 2-Honeycombs
,”
Adv. Eng. Mater.
,
24
(
4
), p.
2300831
.
5.
Estrin
,
Y.
,
Krishnamurthy
,
V. R.
, and
Akleman
,
E.
,
2021
, “
Design of Architectured Materials Based on Topological and Geometrical Interlocking
,”
J. Mater. Res. Technol.
,
15
, pp.
1165
1178
.
6.
Akleman
,
E.
,
Krishnamurthy
,
V. R.
,
Fu
,
C.-A.
,
Subramanian
,
S. G.
,
Ebert
,
M.
,
Eng
,
M.
,
Starrett
,
C.
, and
Panchal
,
H.
,
2020
, “
Generalized Abeille Tiles: Topologically Interlocked Space-Filling Shapes Generated Based on Fabric Symmetries
,”
Comput. Graph.
,
89
, pp.
156
166
.
7.
Subramanian
,
S. G.
,
Eng
,
M.
,
Krishnamurthy
,
V. R.
, and
Akleman
,
E.
,
2019
, “
Delaunay Lofts: A Biologically Inspired Approach for Modeling Space Filling Modular Structures
,”
Comput. Graph.
,
82
, pp.
73
83
.
8.
Mullins
,
C.
,
Ebert
,
M.
,
Akleman
,
E.
, and
Krishnamurthy
,
V.
,
2022
, “
Voronoi Spaghetti & Voronoodles: Topologically Interlocked, Space-Filling, Corrugated & Congruent Tiles
,”
SIGGRAPH Asia 2022 Technical Communications
,
New York
,
Nov. 22
.
9.
McPherson
,
J.
,
Bliss
,
A.
,
Smith
,
F.
,
Hariss
,
E.
, and
Zhou
,
W.
,
2017
, “
A Slicer and Simulator for Cooperative 3d Printing
,”
Solid Freeform Fabrication
,
Austin, TX
,
Aug. 7–9
.
10.
Zhang
,
Z.
,
Poudel
,
L.
,
Sha
,
Z.
,
Zhou
,
W.
, and
Wu
,
D.
,
2020
, “
Data-Driven Predictive Modeling of Tensile Behavior of Parts Fabricated by Cooperative 3d Printing
,”
ASME J. Comput. Inf. Sci. Eng.
,
20
(
2
), p.
021002
.
11.
Poudel
,
L.
,
Sha
,
Z.
, and
Zhou
,
W.
,
2018
, “
Mechanical Strength of Chunk-Based Printed Parts for Cooperative 3d Printing
,”
Procedia Manuf.
,
26
, pp.
962
972
.
12.
Mustafa
,
I.
, and
Kwok
,
T.-H.
,
2022
, “
Development of Intertwined Infills to Improve Multi-material Interfacial Bond Strength
,”
ASME J. Manuf. Sci. Eng.
,
144
(
3
), p.
031009
.
13.
Dairabayeva
,
D.
,
Perveen
,
A.
, and
Talamona
,
D.
,
2023
, “
Investigation on the Mechanical Performance of Mono-Material Vs Multi-material Interface Geometries Using Fused Filament Fabrication
,”
Rapid. Prototyp. J.
,
29
(
11
), pp.
40
52
.
14.
Dörfler
,
K.
,
Dielemans
,
G.
,
Lachmayer
,
L.
,
Recker
,
T.
,
Raatz
,
A.
,
Lowke
,
D.
, and
Gerke
,
M.
,
2022
, “
Additive Manufacturing Using Mobile Robots: Opportunities and Challenges for Building Construction
,”
Cem. Concr. Res.
,
158
, p.
106772
.
15.
Sustarevas
,
J.
,
Benjamin Tan
,
K. X.
,
Gerber
,
D.
,
Stuart-Smith
,
R.
, and
Pawar
,
V. M.
,
2019
, “
Youwasps: Towards Autonomous Multi-robot Mobile Deposition for Construction
,”
International Conference on Intelligent Robots and Systems (IROS)
,
Macau, China
,
Nov. 3–8
, pp.
2320
2327
.
16.
Zhang
,
X.
,
Li
,
M.
,
Lim
,
J. H.
,
Weng
,
Y.
,
Tay
,
Y. W. D.
,
Pham
,
H.
, and
Pham
,
Q.-C.
,
2018
, “
Large-Scale 3d Printing by a Team of Mobile Robots
,”
Autom. Constr.
,
95
, pp.
98
106
.
17.
Zhang
,
K.
,
Chermprayong
,
P.
,
Xiao
,
F.
,
Tzoumanikas
,
D.
,
Dams
,
B.
,
Kay
,
S.
, and
Kocer
,
B. B.
,
2022
, “
Aerial Additive Manufacturing With Multiple Autonomous Robots
,”
Nature
,
609
(
7928
), pp.
709
717
.
18.
Fiore
,
M. D.
,
Allmendinger
,
F.
, and
Natale
,
C.
,
2024
, “
A General Constraint-Based Programming Framework for Multi-robot Applications
,”
Rob. Computer-Integrated Manuf.
,
86
, p.
102665
.
19.
Tang
,
Q.
,
Ma
,
L.
,
Zhao
,
D.
,
Sun
,
Y.
,
Lei
,
J.
, and
Wang
,
Q.
,
2024
, “
A Dual-Robot Cooperative Arc Welding Path Planning Algorithm Based on Multi-objective Cross-Entropy Optimization
,”
Rob. Computer-Integrated Manuf.
,
89
, p.
102760
.
20.
Pellegrinelli
,
S.
,
Pedrocchi
,
N.
,
Tosatti
,
L. M.
,
Fischer
,
A.
, and
Tolio
,
T.
,
2017
, “
Multi-robot Spot-Welding Cells for Car-Body Assembly: Design and Motion Planning
,”
Rob. Computer-Integrated Manuf.
,
44
, pp.
97
116
.
21.
Song
,
W.
,
Wang
,
G.
,
Xiao
,
J.
,
Wang
,
G.
, and
Hong
,
Y.
,
2012
, “
Research on Multi-robot Open Architecture of an Intelligent CNC System Based on Parameter-Driven Technology
,”
Rob. Computer-Integrated Manuf.
,
28
(
3
), pp.
326
333
.
22.
Dyskin
,
A.
,
Estrin
,
Y.
, and
Pasternak
,
E.
,
2019
, “Topological Interlocking Materials,”
Architectured Materials in Nature and Engineering
,
Springer
,
New York City
, pp.
23
49
.
23.
Estrin
,
Y.
,
Dyskin
,
A. V.
, and
Pasternak
,
E.
,
2011
, “
Topological Interlocking as a Material Design Concept
,”
Mater. Sci. Eng.: C
,
31
(
6
), pp.
1189
1194
.
24.
Dyskin
,
A. V.
,
Estrin
,
Y.
,
Kanel-Belov
,
A. J.
, and
Pasternak
,
E.
,
2003
, “
Topological Interlocking of Platonic Solids: A Way to New Materials and Structures
,”
Philos. Mag. Lett.
,
83
(
3
), pp.
197
203
.
25.
Dyskin
,
A. V.
,
Estrin
,
Y.
,
Pasternak
,
E.
,
Khor
,
H. C.
, and
Kanel-Belov
,
A. J.
,
2003
, “
Fracture Resistant Structures Based on Topological Interlocking With Non-planar Contacts
,”
Adv. Eng. Mater.
,
5
(
3
), pp.
116
119
.
26.
Krishnamurthy
,
V. R.
,
Akleman
,
E.
,
Subramanian
,
S. G.
,
Ebert
,
M.
,
Cui
,
J.
,
Fu
,
C.-A.
, and
Starrett
,
C.
,
2021
, “
Geometrically Interlocking Space-Filling Tiling Based on Fabric Weaves
,”
IEEE Trans. Vis. Comput. Graph.
,
28
(
10
), pp.
3391
3404
.
27.
Hasanov
,
S.
,
Alkunte
,
S.
,
Rajeshirke
,
M.
,
Gupta
,
A.
,
Huseynov
,
O.
,
Fidan
,
I.
,
Alifui-Segbaya
,
F.
, and
Rennie
,
A.
,
2021
, “
Review on Additive Manufacturing of Multi-material Parts: Progress and Challenges
,”
J. Manuf. Mater. Process.
,
6
(
1
), p.
4
.
28.
Wang
,
W.
,
Sun
,
Y.
,
Lu
,
Y.
,
Wang
,
J.
,
Cao
,
Y.
, and
Zhang
,
C.
,
2021
, “
Tensile Behavior of Bio-inspired Hierarchical Suture Joint With Uniform Fractal Interlocking Design
,”
J. Mech. Behavior Biomed. Mater.
,
113
, p.
104137
.
29.
Li
,
Y.
,
Ortiz
,
C.
, and
Boyce
,
M. C.
,
2013
, “
A Generalized Mechanical Model for Suture Interfaces of Arbitrary Geometry
,”
J. Mech. Phys. Solids.
,
61
(
4
), pp.
1144
1167
.
30.
Dyskin
,
A.
,
Estrin
,
Y.
,
Kanel-Belov
,
A.
, and
Pasternak
,
E.
,
2001
, “
A New Concept in Design of Materials and Structures: Assemblies of Interlocked Tetrahedron-Shaped Elements
,”
Scr. Mater.
,
44
(
12
), pp.
2689
2694
.
31.
Dyskin
,
A. V.
,
Estrin
,
Y.
,
Pasternak
,
E.
,
Khor
,
H. C.
, and
Kanel-Belov
,
A. J.
,
2005
, “
The Principle of Topological Interlocking in Extraterrestrial Construction
,”
Acta Astronaut.
,
57
(
1
), pp.
10
21
.
32.
Malik
,
I. A.
,
Mirkhalaf
,
M.
, and
Barthelat
,
F.
,
2017
, “
Bio-inspired ‘jigsaw’-Like Interlocking Sutures: Modeling, Optimization, 3d Printing and Testing
,”
J. Mech. Phys. Solids.
,
102
, pp.
224
238
.
33.
Ribeiro
,
M.
,
Sousa Carneiro
,
O.
, and
Ferreira da Silva
,
A.
,
2019
, “
Interface Geometries in 3d Multi-material Prints by Fused Filament Fabrication
,”
Rapid. Prototyp. J.
,
25
(
1
), pp.
38
46
.
34.
Kedar
,
K.
,
Avinash
,
S.
,
Shreyas
,
R.
,
Ayon
,
C.
,
Pranav
,
S.
, and
Sabattini
,
L.
,
2021
, “
Towards Optimized Distributed Multi-robot Printing: An Algorithmic Approach
,” Proceedings of the International Symposium on Distributed Autonomous Robotic Systems (DARS).
35.
Karpe
,
K.
,
Chatterjee
,
A.
,
Srinivas
,
P.
,
Samiappan
,
D.
,
Ramamoorthy
,
K.
, and
Sabattini
,
L.
,
2019
, “
Sprinter: A Discrete Locomotion Robot for Precision Swarm Printing
,”
19th International Conference on Advanced Robotics (ICAR)
,
Belo Horizonte, Brazil
,
Dec. 2–6
, pp.
733
738
.
36.
Poudel
,
L.
,
Marques
,
L. G.
,
Williams
,
R. A.
,
Hyden
,
Z.
,
Guerra
,
P.
,
Fowler
,
O. L.
,
Moquin
,
S. J.
,
Sha
,
Z.
, and
Zhou
,
W.
,
2020
, “
Architecting the Cooperative 3d Printing System
,”
Conference on Computability in Europe
,
Salerno, Italy
,
June 29–July 3
.
37.
Weber
,
D. H.
,
Zhou
,
W.
, and
Sha
,
Z.
,
2022
, “
Z-chunking for Cooperative 3d Printing of Large and Tall Objects
,”
Solid Freeform Fabrication
,
Austin, TX
,
July 25–27
.
38.
Alhijaily
,
A.
,
Kilic
,
Z. M.
, and
Bartolo
,
P.
,
2023
, “
Online Cooperative Printing by Mobile Robots
,”
Virtual Phys. Prototyping
,
18
(
1
), p.
e2276257
.
39.
Poudel
,
L.
,
Zhou
,
W.
, and
Sha
,
Z.
,
2019
, “
Computational Design of Scheduling Strategies for Multi-robot Cooperative 3d Printing
,”
International Design Engineering Technical Conferences
,
Anaheim, CA
,
Aug. 18–21
.
40.
Poudel
,
L.
,
Zhou
,
W.
, and
Sha
,
Z.
,
2020
, “
A Generative Approach for Scheduling Multi-robot Cooperative Three-Dimensional Printing
,”
ASME J. Comput. Inf. Sci. Eng.
,
20
(
6
), p.
061011
.
41.
Elagandula
,
S.
,
Poudel
,
L.
,
Sha
,
Z.
, and
Zhou
,
W.
,
2020
, “
Multi-robot Path Planning for Cooperative 3d Printing
,”
International Manufacturing Science and Engineering Conference
,
Cincinnati, OH
,
Sept. 3
.
42.
Poudel
,
L.
,
Elagandula
,
S.
,
Zhou
,
W.
, and
Sha
,
Z.
,
2023
, “
Decentralized and Centralized Planning for Multi-robot Additive Manufacturing
,”
ASME J. Mech. Des.
,
145
(
1
), p.
012003
.
43.
Zhou
,
B.
,
Zhou
,
R.
,
Gan
,
Y.
,
Fang
,
F.
, and
Mao
,
Y.
,
2022
, “
Multi-robot Multi-station Cooperative Spot Welding Task Allocation Based on Stepwise Optimization: An Industrial Case Study
,”
Rob. Comput.-Integr. Manuf.
,
73
, p.
102197
.
44.
Ghungrad
,
S.
, and
Haghighi
,
A.
,
2024
, “
Three-Dimensional Spatial Energy-Quality Map Construction for Optimal Robot Placement in Multi-robot Additive Manufacturing
,”
Rob. Comput.-Integr. Manuf.
,
88
, p.
102735
.
45.
Shen
,
H.
,
Pan
,
L.
, and
Qian
,
J.
,
2019
, “
Research on Large-Scale Additive Manufacturing Based on Multi-robot Collaboration Technology
,”
Addit. Manuf.
,
30
, p.
100906
.
46.
Stone
,
R. F.
,
Zhou
,
W.
,
Akleman
,
E.
,
Krishnamurthy
,
V. R.
, and
Sha
,
Z.
,
2023
, “
Print as a Dance Duet: Communication Strategies for Collision-Free Arm-Arm Coordination in Cooperative 3d Printing
,”
International Design Engineering Technical Conferences
,
Boston, MA
,
Aug. 20–23
.
47.
Xu
,
X.
,
Wang
,
Z.
, and
Feng
,
C.
,
2021
, “
Projector-Guided Non-holonomic Mobile 3d Printing
,”
IEEE International Conference on Robotics and Automation
,
Xi'an, China
,
May 31–June 4
, IEEE, pp.
8039
8045
.
48.
Beynier
,
A.
, and
Mouaddib
,
A.-I.
,
2007
, “Decentralized Markov Decision Processes for Handling Temporal and Resource Constraints in a Multiple Robot System,”
Distributed Autonomous Robotic Systems 6
,
Springer
,
New York City
, pp.
191
200
.
49.
Chen
,
Y.
,
Rosolia
,
U.
, and
Ames
,
A. D.
,
2021
, “
Decentralized Task and Path Planning for Multi-robot Systems
,”
IEEE Rob. Autom. Lett.
,
6
(
3
), pp.
4337
4344
.
50.
Lee
,
K.-H.
, and
Kim
,
J.-H.
,
2006
, “
Multi-robot Cooperation-Based Mobile Printer System
,”
Rob. Auton. Syst.
,
54
(
3
), pp.
193
204
.
51.
McPherson
,
J.
, and
Zhou
,
W.
,
2018
, “
A Chunk-Based Slicer for Cooperative 3d Printing
,”
Rapid. Prototyp. J.
,
24
(
9
), pp.
1436
1446
.
52.
Wiberg
,
A.
,
Persson
,
J.
, and
Ölvander
,
J.
,
2019
, “
Design for Additive Manufacturing—A Review of Available Design Methods and Software
,”
Rapid. Prototyp. J.
,
25
(
6
), pp.
1080
1094
.
53.
Ebert
,
M.
,
Subramanian
,
S. G.
,
Akleman
,
E.
, and
Krishnamurthy
,
V. R.
,
2020
, “
Generative Infills for Additive Manufacturing Using Space-Filling Polygonal Tiles
,”
International Design and Engineering Technical Conferences
,
Virtual, Online
,
Aug. 17–19
.

Supplementary data