System and method for operating material drop ejecting three-dimensional (3D) object printer to prevent quantization error in perimeters of three-dimensional printed object
Patent Information
- Application Number
- JP2021215404
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2021-01-25
- Filing Date
- 2021-12-29
- Publication Date
- 2025-01-07
- Estimated Expiration
- 2041-12-29
AI Technical Summary
Existing 3D object printers that eject droplets of thermoplastic material or molten metal face inaccuracies in forming perimeters due to inconsistent drop spacing, leading to local anomalies and structural instability, particularly in thin cross-sections.
A method and system for a material drop ejection 3D object printer that distributes quantization errors across layers by adjusting drop spacing and positions using a slicer program and blue noise generator to ensure accurate perimeter formation with integer drop counts, employing a controller to execute machine-compatible instructions.
The method effectively distributes quantization errors across layers, ensuring imperceptible errors and maintaining structural integrity by adjusting drop positions and counts, preventing local deformations and ensuring consistent part height and shape.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
Technical Field
[0001] The present disclosure is directed to three-dimensional (3D) object printers that eject droplets of material to form three-dimensional (3D) objects, and more specifically, to the formation of the outer periphery of 3D objects manufactured with those printers.
Background Art
[0002] Three-dimensional printing, also known as additive manufacturing, is a process of creating three-dimensional solid objects from digital models of virtually any shape. Many three-dimensional printing technologies use an additive process in which an additive manufacturing device forms successive layers of a part on top of previously deposited layers. Some of these technologies use ejection devices that eject droplets of a dissolved material, such as a photopolymer or an elastomer. The printer typically operates one or more ejection devices to form successive layers of a thermoplastic material that form three-dimensional printed objects having various shapes and structures. After each layer of the three-dimensional printed object is formed, the plastic material is cured, and as a result, solidifies and adheres the layer to the underlying layer of the three-dimensional printed object. This additive manufacturing method is distinguishable from conventional object formation techniques that mostly rely on the removal of material from a workpiece by a subtractive process such as cutting or drilling.
[0003] Recently, several 3D object printers have been developed that form 3D objects by ejecting droplets of molten metal from one or more ejection devices. These printers have a solid metal source, such as a roll of wire or pellets, into a heating chamber where the solid metal is melted, and the molten metal flows into the chamber of the ejection device. An uninsulated conductive wire is wound around the chamber. An electric current passing through the conductor generates an electromagnetic field, which separates the crescent shape of the molten metal at the nozzle of the chamber from the molten metal in the chamber and propels it out of the nozzle. A platform opposite the nozzle of the ejection device is moved in an XY plane parallel to the plane of the platform by a controller-operated actuator, so that the ejected metal droplets form a metal layer of an object on the platform, and another actuator, operated by the controller, changes the position of the ejection device or platform vertically or in the Z direction, maintaining a constant distance between the ejection device and the top layer of the formed metal object. This type of metal droplet ejection printer is also known as a magnetohydrodynamic printer.
[0004] In known 3D object printers that continuously extrude thermoplastic material to form the perimeter and infill of a printed object, the amount of material extruded per unit length of a closed perimeter is independent of the perimeter length. On the other hand, in 3D object printers that extrude droplets of thermoplastic material or molten metal, the process is not continuous. Instead, the closed perimeter is printed using multiple separate droplets. If the distance from the last printed droplet to the first printed droplet is not equal to the droplet spacing used to form the rest of the perimeter, localized anomalies occur, resulting in localized deformation of the part, especially if this error is repeated in continuous layers. Even if this spacing is changed, the amount of material in the perimeter in those layers will result in inaccurate part height.
[0005] Drop-on-demand 3D object printers typically print droplets at a predetermined rate per unit distance to achieve a constant density. These printers are typically raster printers. Combining drop-on-demand printing with toolpath movement during printing introduces new constraints for the printing process. In extrusion printers, the amount of material extruded is an analog value. In contrast, in drop-on-demand printing, the ejection of individual droplets affects the formation of the outer perimeter and boundary of the part, as well as the infill of the part. For example, when forming a cylinder, each layer of the cylinder is printed as a circle with the same radius. For instance, if the distance between droplets along the perimeter is nominally 1 mm, a circle with a radius of 2 mm would require 4π droplets per layer, which is approximately 12.57 droplets. For each layer, droplets may be spaced at standard intervals, and then the last (i.e., 13th) droplet may either be included or excluded. As a result, there is a choice between using 12 or 13 droplets to print the perimeter of the cylindrical layers. If the first droplet is excluded, the distance between the first and last or twelfth droplets printed on the outer perimeter is 1.57 times the distance between continuously ejected droplets, which in this example is 1.57 mm. Thus, a localized void is created. Conversely, if the thirteenth droplet is ejected as the last droplet on the outer perimeter, the distance between the first and last droplets in this example is only 0.57 mm, which could result in a localized protrusion.
[0006] Several known methods can mitigate, but not eliminate, this problem for all possible perimeters. One approach is to randomly move the initial droplets of the various layers forming the closed perimeter around the perimeter. While this approach does not completely eliminate the problem, it ensures that local anomalies are located in different places within each layer, and as a result, errors do not accumulate in a single location. In scenarios where the droplet spacing error is close to half the droplet spacing distance, the defects, though randomized in location, can be quite noticeable. Another possible correction is to change the spacing of the ejected droplets to an integer value. For circular layers on a cylinder as described in the example above, the number of droplets in each layer is rounded to 13, and the last droplet is thinned down to the gap between the first droplets. However, the height of the error can increase rapidly, especially when the number of droplets per perimeter is small. The problem with these two possible solutions is that the amount of material at the perimeter of the layers is inaccurate, either locally or overall. Both approaches can introduce errors in the height and shape of the perimeter in various situations, potentially causing problems with the structural stability of the finished part, particularly in thin cross-sectional areas. It would be beneficial to be able to form the outer perimeter of a part manufactured by a printer that ejects separate material droplets at appropriate droplet spacings to maintain part integrity in each outer layer. [Overview of the project]
[0007] A novel method for operating a material droplet ejection 3D object printer can form the perimeter of a part with separate material droplets with appropriate droplet spacing for part integrity in each outer layer. The method includes: identifying the perimeter to be formed in a first object layer by executing machine-ready instructions generated from an object layer data model; identifying the number of material droplets to be ejected to form the perimeter in the first object layer, and a first quantization error for the first object layer, wherein the identified number of material droplets to form the perimeter in the first object layer is a first integer; identifying the location of the first material droplets to be ejected to form the perimeter in the first object layer; modifying machine-ready instructions generated from an object layer data model using the identified number of material droplets and the identified location of the first material droplets; and executing the modified machine-ready instructions to operate the material droplet ejection 3D object printer to form the perimeter in the first object layer formed by the material droplet ejection 3D object printer.
[0008] The new material droplet dispensing 3D object printer can form the outer periphery of a part with separate material droplets with appropriate droplet spacing for part integrity in each outer layer. The material droplet dispensing 3D object printer includes a melting device configured to receive and melt bulk metal; a discharge head having a nozzle fluidly connected to the melting device to receive the melted bulk metal from the melting device; a platform positioned opposite the discharge head; an actuator operably connected to the platform and at least one of the at least one discharge head, wherein the at least one actuator is configured to move the platform and at least one of the at least one discharge head relative to each other; and a controller operably connected to the melting device, at least one discharge head, and at least one actuator. The controller is configured to: identify the perimeter formed on a first object layer by executing machine-ready instructions generated from an object layer data model; identify the number of material droplets to be ejected to form the perimeter on the first object layer; and identify a first quantization error for the first object layer, wherein the number of identified material droplets to form the perimeter on the first object layer is a first integer; identify the location of the first material droplets to be ejected to form the perimeter on the first object layer; modify the machine-ready instructions generated from the object layer data model using the identified number of material droplets and the identified location of the first material droplets; and execute the modified machine-ready instructions to operate the material droplet ejection 3D object printer to form the perimeter on the first object layer formed by the material droplet ejection 3D object printer. [Brief explanation of the drawing]
[0009] The aforementioned aspects and other features of a method for operating a material droplet ejection 3D object printer and a novel material droplet ejection 3D object printer that forms the outer perimeter of a part with separate material droplets with appropriate droplet spacing for part integrity in each outer layer are described below in relation to the attached drawings. The method and printer described below distribute the material density layer error occurring in each layer forming the outer perimeter across those layers in a manner imperceptible to the human eye. This distribution takes the error generated by each quantization step and distributes it to subsequent spatial or temporal quantization steps.
[0010] [Figure 1] This invention illustrates a metal droplet ejection 3D metal object printer that distributes quantization errors across layers forming the outer perimeter, determining the location of the first ejected metal droplet that forms the outer perimeter in each layer.
[0011] [Figure 2] This diagram shows the positions of droplets forming the outer perimeter in a subsequent layer relative to the positions of droplets forming the outer perimeter in a previously formed layer.
[0012] [Figure 3] Three probability density functions are shown for adjacent layers, layers separated by intervening layers, and layers separated by two intervening layers, respectively.
[0013] [Figure 4] This is a flowchart of the process implemented by a controller running the slicer program in the printer shown in Figure 1, which distributes the quantization error across the layers forming the outer perimeter and determines the starting location of the first droplet forming the outer perimeter in each layer. [Modes for carrying out the invention]
[0014] For a general understanding of the 3D object printer and its operation that distributes quantization errors across different outer layers in additively manufactured parts, and for details of the printer and its operation, references to drawings are provided. In the drawings, similar reference numbers represent similar elements.
[0015] Figure 1 shows an embodiment of a molten metal 3D object printer 100 that may include a modified slicer program implemented in a controller to distribute quantization errors across different outer layers in additively manufactured parts. The following description will be made with reference to the metal droplet ejection 3D object printer of Figure 1, but the slicer program can be used with single-nozzle or multi-nozzle material droplet ejection 3D object printers.
[0016] In the printer shown in Figure 1, droplets of molten bulk metal are discharged from an evacuation head 104 having a single nozzle, and the droplets from the nozzle form a line on the platform 112 for the outer layer of object 108. As used in this document, the term “bulk metal” means conductive metal available in aggregate form, such as wires of commonly available standard sizes or pellets of macro-size ratios. A source of bulk metal 160, such as metal wire 130, is fed into the evacuation head, melted, and provides molten metal to the chamber within the evacuation head. An inert gas supply unit 164 provides a pressure-regulated source of an inert gas 168, such as argon, through a gas supply pipe 144 to the chamber of molten metal in the evacuation head 104 to prevent the formation of metal oxides within the evacuation head.
[0017] The discharge head 104 is movably mounted on a pair of vertically oriented members 120A and 120B, respectively, within z-axis tracks 116A and 116B. Members 120A and 120B are connected at one end to one side of the frame 124 and at the other end to each other by a horizontal member 128. An actuator 132 is mounted on the horizontal member 128 and movably connected to the discharge head 104 to move the discharge head along the z-axis tracks 116A and 166B. The actuator 132 is operated by a controller 136 to maintain the distance between the single nozzle of the discharge head 104 and the uppermost surface of the object 108 on the platform 112.
[0018] A planar member 140 is attached to the frame 124, which may be formed of granite or other sturdy material to ensure that it provides solid support for the movement of the platform 112. Since the platform 112 is fixed to the X-axis tracks 144A and 144B, the platform 112 can move bidirectionally along the X-axis as shown in the figure. Since the X-axis tracks 144A and 144B are fixed to the stage 148, and the stage 148 is fixed to the Y-axis tracks 152A and 152B, the stage 148 can move bidirectionally along the Y-axis as shown in the figure. Actuator 122A is operably connected to the platform 112, and actuator 122B is operably connected to the stage 148. The controller 136 operates actuators 122A and 122B to move the platform along the X-axis and the stage 148 along the Y-axis, respectively, in order to move the platform in the XY plane opposite the discharge head 104. As droplets of molten metal 156 are ejected toward the platform 112, the movement of the platform 112 in this XY plane forms a line of molten metal droplets on the object 108. The controller 136 also operates the actuator 132 to adjust the vertical distance between the ejection head 104 and the layer most recently formed on the substrate, facilitating the formation of other structures on the object as well. The molten metal 3D object printer 100 is shown in Figure 1 as operating vertically, but other alternative orientations may be used. Also, the embodiment shown in Figure 1 has a platform that moves in the XY plane and the ejection head that moves along the Z axis, but other arrangements are possible. For example, the ejection head 104 may be configured for movement in the XY plane and along the Z axis.
[0019] The controller 136 may be implemented using one or more general-purpose or dedicated programmable processors that execute programmed instructions. Instructions and data required to perform programmed functions may be stored in memory associated with the processor or controller. The processors, their memories, and interface circuits constitute the controller to perform the operations described above and below. These components may be provided on a printed circuit card or as circuits in an application-specific integrated circuit (ASIC). Each circuit may be implemented on a separate processor, or multiple circuits may be implemented on the same processor. Alternatively, the circuits may be implemented as individual components or circuits provided in a very large-scale integrated (VLSI). Furthermore, the circuits described herein may be implemented in combination of processors, ASICs, individual components, or VLSI circuits. During metal object formation, image data of the structure being manufactured is transmitted to the ejection head 104, or to the processor or multiple processors for the controller 136, either from a scanning system or via an online or workstation connection for processing and generating the ejection head control signal output.
[0020] The controller 136 of the molten metal 3D object printer 100 requests data from an external source and controls the printer for the manufacture of metal objects. Generally, the three-dimensional model or other digital data model of the object to be formed is stored in memory operably connected to the controller 136, and the controller can access a remote database where the digital data model is stored via a server or the like, or a computer-readable medium where the digital data model is stored can be selectively coupled to the controller 136 for access. This three-dimensional model or other digital data model is processed by a slicer implemented in the controller to generate data that identifies each layer of the object, and then generates machine-ready instructions that the controller 136 executes in a known manner to operate the components of the printer 100 and form the metal object corresponding to the model. The generation of machine-ready instructions includes the generation of intermediate models, such as when the CAD digital data model of the object is converted to an STL object layer data model, or to other polygonal meshes or other intermediate representations, and these intermediate models can be processed in sequence to generate machine instructions such as g-code for the printer to manufacture the device. As used in this document, the term “machine-responsive instruction” means a computer language command executed by a computer, microprocessor, or controller to operate the components of a 3D metal object additive manufacturing system to form a metal object on the platform 112. The controller 136 executes machine-responsive instructions to control the discharge of molten metal droplets from the discharge head 104, the positioning of the stage 148 and the platform 112, and the distance between the discharge head 102 and the uppermost layer of object 108 on the platform 112.
[0021] A slicer implemented by controller 136 distributes quantization errors occurring in different layers of the outer periphery formed in the part manufactured by system 100, and determines the position of the first droplet of ejected material that forms the outer periphery in the layers, although the slicer may be implemented in a separate processor within system 100. The slicer generates 3D object layer data used to generate machine-ready instructions that operate the printer components to form an object corresponding to a digital data model. The format commonly used for digital data models is the STL format, but other formats such as 3MF, AMF, and PLY may also be used. In the STL format, the object surface is defined by the edges and corners of triangular faces. The slicer converts this STL data into a two-dimensional (2D) horizontal slice of the object and then generates machine-ready instructions that operate actuators to move the ejection head along a toolpath, and machine-ready instructions that operate the ejection head to eject metal droplets and form an object. In one embodiment, this conversion results in a g-code which initializes the printing system and defines a path through which the ejection head is moved, causing the ejection head to operate in order to eject molten metal droplets and form a layer of part.
[0022] The distribution of quantization errors across the outer layers, performed by the slicer implemented by controller 136 in Figure 1, ensures that long-term cumulative errors do not exceed one quantization unit. This property cannot be achieved with random rounding. Furthermore, the quantization error distribution ensures that transitions between quantized states occur at the highest possible frequency so that errors do not accumulate over long periods of time or distance. In slicers dealing with quantization errors in the outer layers, error distribution is only in the Z or vertical direction, so that all errors arising from the quantization of the material in each outer layer are distributed to the next layer.
[0023] Algorithmically, the quantization error is distributed as follows: The droplet error for the process is initialized to zero (drop_error=0), and for each layer,
[0024] drops_accum = drops_float + drop_error,
[0025] drops_layer = floor(drops_accum + 0.5),
[0026] drop_error = drops_accum - drops_layer is calculated, where drops_float is the number or amount of droplet mass of the desired droplets for printing the outer perimeter, expressed as a floating point or non-integer, which is 12.57 in the aforementioned example, and the drop_error specified for a layer is used to specify drops_accum in the next layer.
[0027] After specifying the number of droplets for the outer perimeter in a layer, the value with respect to the virtual axis of the moving droplets is determined. In machine-compatible instructions such as g-code, each droplet is specified by three coordinates (x, y, e). The x and y coordinates specify the points that define the path for the movement of the ejection device within the X-Y plane of the platform, and the e coordinate specifies the cumulative number of ejected droplets. The droplets are ejected at intervals within the range of the droplet interval parameter. As used in this document, the term "droplet interval" means a predetermined distance between the centers of adjacent droplets ejected as the ejection device moves along the path within a layer. A threshold value is defined for the movement of the ejection device along the path. This threshold value is a particular part of the droplet interval. For example, 0.5 can be selected as the threshold value to be used with the droplet interval defined for the path, which means that the droplets are ejected at an intermediate position along the droplet interval. By changing the threshold value, the position of the ejected droplets can be changed within the range of the droplet interval.
[0028] As an example, the three coordinates (x, y, e) for the points defining a closed ejection device path in a layer are shown in the following table.
Table 1
[0029] These values represent 10 points that define a closed perimeter that forms a circle in the layer, since the first and eleventh points are at the same x,y locations. The e-coordinate represents the cumulative number of droplets from the start of the path to the return to the origin. This table shows that, for a threshold droplet spacing of 0.5, the discharger discharges 12.57 droplets while traversing the circular path. As described above, the controller cannot operate the discharger to discharge 12.57 droplets, but instead can operate the discharger to discharge 12 droplets in some layers and 13 droplets in others. Therefore, the number of floating points in the e-coordinate shown in the table needs to be scaled to a scheme of 12 or 13 droplets. The results of this scaling are shown in the following two tables. The first table shows the case of 12 droplets. [Table 2] Since the difference between the first and last e-coordinates is 13, as the discharge device moves along the (x,y) path, 13 droplets are discharged to form a circular perimeter.
[0030] Next, a table is shown for the case of 12 droplet paths. [Table 3] Since the difference between the first and last e-coordinates is 12, as the discharge device moves along the (x,y) path, 12 droplets are discharged to form a circular perimeter. Using these coordinates, g-codes for the perimeters of the 12 and 13 droplets are generated in separate layers.
[0031] This error distribution calculation determines the number of droplets to be used in each outer layer, but does not determine the positional relationship of the droplets between layers. If the number of droplets in each layer is the same, the above error distribution results in greater structural integrity if the droplets in one layer are offset by half a cycle from the droplets in the previous layer. This position shifting is analogous to shifting a continuous layer of bricks by half the length of the bricks. Similarly, this droplet position shifting can be achieved in the example of the simple cylindrical object described above by using a shift of half the droplet spacing distance at the location of the first droplet used to form the outer perimeter.
[0032] However, when the number of droplets on the periphery changes, simply shifting half the droplet spacing distance presents a problem. For example, if the number of droplets increases by just one, a beat frequency is created between adjacent layers, and the droplet spacing distance changes from 0.5 mm to -5 mm as the discharge head travels along the periphery. Since the phase relationship is always 180 degrees out of phase at the beginning of the periphery, there are places along the periphery where droplets between consecutive layers are always aligned, and nearby droplets are aligned very close together. This synchronization allows for the accumulation of errors as the periphery is constructed. If the desired fraction of the number of droplets per layer is 0.5, the number of droplets per layer toggles between two values. This toggling results in droplet alignment, i.e., subsequent droplets landing on previously discharged droplets at the same location along the periphery in all layers, while other droplets near that location land close to the previously discharged droplets. This situation is shown in Figure 2, where X represents a droplet that forms the outer perimeter in the layer immediately preceding the current layer, and O represents a droplet that forms the outer perimeter in the current layer.
[0033] To eliminate problems arising from the interaction between the phase shift of the starting location and the distribution of droplet quantization errors across the outer layers, a blue noise generator is used to select the starting location instead of a fixed shift of half the droplet spacing distance between layers. The blue noise generator moves the first droplet of the next layer by half the droplet spacing distance from the first droplet of the previously formed layer, and then further perturbs it by an additional distance of negative half the droplet spacing distance to positive half the droplet spacing distance using a white noise generator with a triangular probability distribution, meaning the probability generators are not uniform. The triangular probability density function (PDF) is easily generated by averaging two white noise PDFs. The final shift amount is remapped to negative half the droplet spacing distance to positive half the droplet spacing distance (-π to +π).
[0034] When the density at the outer perimeter of a layer is not uniform compared to the outer perimeter formed in a previously formed layer, such as in regions with overhangs, the phase shift can be defined using the nominal perimeter density, which is the average number of droplets per unit length in a single layer. This phase shift results in a phase difference between layers that is not full-scale but distributed around the nominal density, i.e., smaller than half the droplet spacing of + / - for perimeters with densities lower than the nominal density, and approaching distributed white noise for perimeters with densities much greater than the nominal density.
[0035] A blue noise generator implemented in the slicer to position droplets to form the periphery of a layer ensures that quantization error variations lose correlation with droplet initiation phase variations. The probability density functions of phase differences between adjacent layers, as well as between layers separated by two and three layers, are shown in Figure 3. As shown in the figure, the phase relationships between non-adjacent planes quickly lose correlation with the use of a blue noise generator to shift the initiation position of the first droplet relative to the periphery of the layer. The use of a blue noise generator helps determine the number of droplets ejected relative to the periphery of the layer, ensuring that accumulated beat frequencies do not arise with the use of the quantization error distribution process.
[0036] Figure 4 shows the process for operating a material droplet ejection 3D object printer to attenuate quantization errors to form the outer perimeter of a layer and to determine the starting droplet location. In the description of the process, when the process performs several tasks or functions, it means that the controller or general-purpose processor executes program instructions stored in a non-temporary computer-readable storage medium operably connected to the controller or processor in order to perform a task or function by manipulating data or by operating one or more components in the printer. The controller 136 described above may be such a controller or processor. Alternatively, the controller may be implemented with two or more processors and associated circuits and components, each configured to perform one or more tasks or functions described herein. In addition, the steps of the method may be performed in any executable chronological order, regardless of the order shown in the figures or the order in which the processes are described.
[0037] Figure 4 is a flowchart of the process for operating a material droplet-dispensing 3D object printer, such as printer 10, to attenuate quantization errors and determine the starting droplet location for the periphery formed in the layers of a 3D object. Process 400 begins with the slicer receiving a digital data model for the object to be fabricated (block 204). The slicer then generates object layer data and machine-ready instructions for forming each layer of the object (block 208). For the first layer, the slicer determines whether one or more peripheries are formed in the layer (block 212). An error distribution process, such as the algorithm described above, is used to determine the number of droplets to be dispensed to form the periphery (block 216). The slicer also uses one or more droplet position shifting techniques, as described above, to determine the location of the first droplet that forms the periphery (block 220). Previously generated machine-ready instructions for operating the printer to form the periphery in the layer and any infill lines in the layer are modified and stored (block 224). This modification is made by changing the e value while leaving only the X and Y coordinates unchanged for the g-code instruction, as described above. This change effectively alters the distance-based feed rate, e.g., droplets / mm. Alternatively, if the g-code instruction is described by a set of X and Y coordinates and feed rate instead of the e value, the feed rate, which is a function of time, e.g., droplets / milliseconds, is changed. When another layer is processed (block 228), machine-ready instructions are generated similarly (blocks 212-224). Once all layers have been processed and the corresponding machine-ready instructions have been generated, the printer's controller executes the machine-ready instructions to form the object (block 232).
[0038] It will be understood that variations or substitutions of the features and functions disclosed above and other features and functions may, preferably, be combined into many other different systems, applications, or methods. Various currently unforeseen or unexpected substitutions, modifications, variations, or improvements, which are also intended to be covered by the following claims, may subsequently be made by those skilled in the art.
Claims
1. A metal droplet ejection device comprising: a melting apparatus configured to receive and melt the bulk metal; a discharge head having a nozzle fluidly connected to the melter for receiving molten bulk metal from the melter; a platform positioned opposite the ejection head; at least one actuator operatively connected to at least one of the platform and the at least one ejection head, the at least one actuator configured to move the platform and the at least one of the at least one ejection head relative to one another; and A controller operatively connected to the fusing device, the at least one discharge head, and the at least one actuator, the controller comprising: identifying a perimeter to be formed in the first object layer by execution of machine-enabled instructions generated from the object layer data model; determining a number of drops of material to eject to form the perimeter in the first layer of object and a first quantization error for the first layer of object, the determined number of drops of material to eject to form the perimeter in the first layer of object being a first integer; identifying a location for a first drop of material to be ejected to form the perimeter in the first object layer; using the identified number of drops of material and the identified locations for the first drops of material to modify the machine-enabled instructions generated from the object layer data model and to be executed to form the perimeter in the first object layer; executing the modified machine-enabled instructions to operate the 3D object printer to form the perimeter in the first object layer formed by the 3D object printer; identifying a perimeter formed in a second object layer of an object layer data model that corresponds to the perimeter formed in the first object layer; distributing the quantization error of the first object layer to a second object layer in the object layer data model; determining a number of drops of material to eject to form the perimeter in the second layer of object and a second quantization error for the second layer of object, the determined number of drops of material to eject to form the perimeter in the second layer of object being a second integer number different from the first integer number; identifying a location for a first drop of material to be ejected to form the perimeter in the second object layer; modifying the machine-enabled instructions generated from the object data model and to be executed to form the perimeter in the second object layer using the identified number of material drops and the identified locations to form the perimeter in the second object layer; executing the modified machine-enabled instructions to be executed to operate the material drop ejecting 3D object printer to form the perimeter in the second object layer; A controller configured to: A metal droplet ejection device comprising:
2. The controller:
2. The apparatus of claim 1, further configured to: determine the distribution of the first quantization error; determine a number of the drops of material ejected to form the perimeter in the second layer of object; and determine the second quantization error using a non-integer number for an amount or number of drops of material used to form the perimeter in the second layer of object.
3. The controller: determining the distribution of the first quantization error; determining the number of drops of material ejected to form the perimeter in the second object layer; and determining the second quantization error; drops_accum=drops_float+drop_error, drops_layer=floor(drops_accum+0.5), 3. The apparatus of claim 2, further configured to: determine using a process represented by: drop_error=drops_accum-drops_layer, where drops_float is a non-integer number representing the number of drops of material or amount of drop mass dispensed to form the perimeter, drops_accum is drops_float adjusted by the first quantization error, drops_layer is the number of drops of material dispensed to form the second layer of the object, the drop_error is the second quantization error, and the floor function determines a lower integer number that is closest to a value of an argument of the function.
4. The controller: identifying the location for the first droplet of material to be ejected to form the perimeter in the second object layer; 2. The apparatus of claim 1, further configured to shift the location for the first drop of material ejected to form the perimeter in the second layer of object from the location for the first drop of material ejected to form the perimeter in the first layer of object by half a drop spacing between the location for the first drop of material ejected to form the perimeter in the first layer of object and a location of a next drop of material ejected to form the perimeter in the first layer of object.
5. The controller: identifying the location for the first droplet of material to be ejected to form the perimeter in the second object layer; 2. The apparatus of claim 1, further configured to: by identifying the location of the first droplet of material ejected to form the perimeter in the second object layer using a blue noise generator.
6. The controller controls the blue noise generator to: moving the location of the first drop of material discharged to form the perimeter in the second layer of object by half a drop spacing distance between the first drop of material discharged to form the perimeter in the first layer of object and a location of a next drop of material discharged to form the perimeter in the first layer of object; 6. The apparatus of claim 5, further configured to use by: modifying the displaced location by an additional distance from the negative half of the drop spacing distance to the positive half of the drop spacing distance using a white noise generator having a triangular probability distribution.
7. The controller executes the machine-enabled instructions:
2. The apparatus of claim 1, further configured to modify a plurality of cumulative drop values for a floating point number of drops to form the perimeter by scaling to a plurality of cumulative drop values for the identified first integer number of drops to form the perimeter in the first layer.
8. The controller executes the machine-enabled instructions:
8. The apparatus of claim 7, further configured to modify a plurality of cumulative drop values for a floating-point number of droplets or droplet mass amounts ejected to form the perimeter by scaling to a plurality of cumulative drop values for the specified second integer number of droplets to form the perimeter in the first layer, wherein the plurality of cumulative drop values for the second specified integer number are different from the plurality of cumulative drop values for the first specified integer number.