Method and system for generating an object

By applying a geometric compensation model to modify the object model data in additive manufacturing, the deformation problem caused by hot melting and cooling during the generation process is solved, the size and shape accuracy of the object is improved, and the experimental cost is reduced.

CN112740281BActive Publication Date: 2025-07-29PERRYDOT PRINTING CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN201980064760.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2019-01-31
Publication Date
2025-07-29
Estimated Expiration
2039-01-31

AI Technical Summary

Technical Problem

During the additive manufacturing process, the object is deformed due to hot melting and cooling during the generation process, resulting in dimensional inaccuracies and shape deviations.

Method used

By applying different geometric compensation models, the object model data is modified using scaling and offset factors to compensate for the object's deformation during the manufacturing process, including taking into account factors such as the object's position, volume, and surface area, generating simulations and optimizing the object's predicted properties.

Benefits of technology

Improves the dimensional accuracy and shape accuracy of objects in additive manufacturing, reduces the need for physical experiments, and saves time, materials and energy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112740281B_ABST
    Figure CN112740281B_ABST
Patent Text Reader

Abstract

In an example, a method includes receiving, at at least one processor, object model data representative of at least a portion of an object to be generated by an additive manufacturing apparatus by fusing build material within a build chamber. At least one of a plurality of different geometric compensation models to be applied to the object model data can be selected, wherein the geometric compensation model is for determining geometric compensation to compensate for object deformation in additive manufacturing. An object generation operation modified based on the object model data using the selected or each selected geometric compensation model can be simulated, and predicted properties of the object based on the simulated or each simulated generation can be displayed.
Need to check novelty before this filing date? Find Prior Art

Description

Background Art

[0001] Additive manufacturing techniques can generate three-dimensional objects, for example, on a layer-by-layer basis by curing a build material. In an example of such a technique, the build material can be supplied in a layer-wise manner, and the curing method can include heating a layer of the build material to cause melting in selected regions. In other techniques, chemical curing methods can be used. Brief Description of the Drawings

[0002] Non-limiting examples will now be described with reference to the accompanying drawings, in which:

[0003] Figure 1 is a flowchart of an example method for predicting object properties;

[0004] Figure 2A and 2B shows an example of the display of additive manufacturing data;

[0005] Figure 3 shows an example method of object generation;

[0006] Figure 4 and 5 is a simplified schematic diagram of an example apparatus for additive manufacturing; and

[0007] Figure 6 is a simplified schematic diagram of an example machine-readable medium associated with a processor. Detailed Description

[0008] Additive manufacturing techniques can generate three-dimensional objects by curing a build material. In some examples, the build material is a powdered particulate material, which can be, for example, plastic, ceramic, or metal powder, and the properties of the generated object can depend on the type of build material and the type of curing mechanism used. In some examples, the powder can be formed from, or can include, short fibers, which can, for example, have been cut from long strands or threads of the material into short lengths. The build material can be deposited, for example, on a print bed and processed layer by layer, for example, in a manufacturing chamber. According to one example, a suitable build material can be the PA12 build material commercially known as V1R10A “HPPA12” available from HP Inc.

[0009] In some examples, heat is used to achieve selective curing, such as by the directed application of energy, such as using a laser or an electron beam, which causes the curing of the build material where the directed energy is applied. In other examples, at least one print agent can be selectively applied to the build material and can be liquid when applied. For example, a flux (also referred to as a "coalescing agent" or "coagulant") can be selectively distributed in a pattern derived from data representing slices of a three-dimensional object to be generated (which can be generated, for example, from structural design data) over portions of a layer of the build material. The flux can have an energy-absorbing component such that when energy (e.g., heat) is applied to the layer, the build material heats, coalesces, and cures upon cooling to form slices of the three-dimensional object according to the pattern. In other examples, coalescence can be achieved in some other way.

[0010] According to one example, a suitable flux can be an ink-type formulation including, such as, carbon black, such as a flux formulation commercially known as V1Q60A "HP Flux" available from HP Inc. In an example, such a flux can include any absorber or any combination of infrared light absorbers, near-infrared light absorbers, visible light absorbers, and UV light absorbers. Examples of print agents including visible light enhancers are dye-based colored inks and pigment-based colored inks, such as inks commercially known as CE039A and CE042A available from HP Inc.

[0011] In addition to the flux, in some examples, the print agent can include a coalescence modifier agent that acts to modify the effect of the flux, such as by reducing or increasing coalescence, or to help produce a particular finish or appearance of the object, and such an agent can thus be referred to as a detailing agent. In some examples, a detailing agent can be used near the edge surfaces of the object being printed. According to one example, a suitable detailing agent can be a formulation commercially known as V1Q61A "HP Detailing Agent" available from HP Inc. A coloring agent, such as including a dye or a colorant, can be used as a flux or a coalescence modifier in some examples, and / or as a print agent to provide a particular color of the object.

[0012] As described above, an additive manufacturing system can generate an object based on structural design data. This can involve a designer generating a three-dimensional model of the object to be generated, for example, using a computer-aided design (CAD) application. The model can define the solid portions of the object. To generate a three-dimensional object from the model using the additive manufacturing system, the model data can be processed to generate slices of parallel planes of the model. Each slice can define a portion of a corresponding layer of build material that will be solidified or coalesced by the additive manufacturing system.

[0013] Figure 1 is an example of a method that can include a computer-implemented method of generating (at least partial) simulations of object generation operations to predict object properties.

[0014] Simulating object generation operations can be based on different modifications of the object model data. For example, such modifications of the object model data can be used to apply geometric compensation in order to compensate for an expected deviation from an expected size when generating the object.

[0015] For example, it may be the case that when generating an object during a process that includes heat, additional build material may adhere to the object during generation. In one example, a flux can be associated with an area of a layer intended to fuse. However, when energy is supplied, the build material in adjacent areas may become hot and fuse to the exterior of the object (in some examples, completely or partially melted, or adhere as powder to the melted build material). As a result, the size of the (one or more) objects can be larger than the area where the flux is applied. To compensate for this effect, i.e., in cases where it is expected that the object may tend to "grow" in this way during manufacturing, the object volume described in the object model data can be reduced to compensate for such growth. The reduction in volume can be defined in a geometric compensation / transformation model.

[0016] In other examples, the object after object generation can be smaller than specified. For example, some of the build material used to generate the object may shrink when cooled. Thus, the geometric compensation / transformation model can specify how the object volume should be increased to compensate for the reduction.

[0017] A particular object may be subject to mechanisms that cause growth and shrinkage, and the actual compensation to be applied can be determined by considering the different degrees to which the object may be affected by such processes, or can be influenced by the different degrees to which the object may be affected by such processes.

[0018] In some examples, scaling and / or offset parameters (e.g., a scaling factor and / or an offset factor) can be used to specify the modification. The scaling factor can be used to multiply all specified dimensions in the direction of at least one axis by a value that can be greater than 1 to increase the dimension(s), and can be less than 1 to decrease the dimension(s). The offset factor can specify, for example, the amount to add or remove from the surface of the object (or the perimeter within a layer) by specifying a distance or the number of defined sub-volumes or “voxels” (i.e., three-dimensional pixels). For example, a distance measured in the normal direction from the surface of the object can be specified, and the object can be eroded or dilated (i.e., inflated or enlarged) by that distance.

[0019] According to at least some of the methods set forth herein, different geometric compensation models can be used to generate different simulations. For example, in some cases, it has been shown that the position of an object within a manufacturing chamber can have an impact on the deformation of the object during generation. Thus, the position of the object can be used to determine an appropriate compensation. A first geometric compensation model can generate a simulation based on a compensation factor that is determined based on the position of the object within the manufacturing chamber, where the position is characterized in a first manner. Another geometric compensation model can characterize the position in a different manner and can use the same and / or different compensation factors.

[0020] In other examples, a geometric compensation model can generate a simulation based on a compensation factor determined based on the volume of the object, since larger objects can deform differently than smaller objects. For example, larger objects tend to accumulate more heat during additive manufacturing operations based on heat fusion.

[0021] Another geometric compensation model can consider, for example, the surface area of the object, in some examples in combination with the volume. The surface area (and the combination of volume and surface area) can be used to determine how “solid” the object is. The amount of solid material in the object can be used to predict how the object can deform. For example, in an additive manufacturing operation based on heat fusion, a more solid object may tend to accumulate more heat than a less solid object.

[0022] In some examples, a combination of such factors can be considered in the model, and / or there can be more than one model within a category, such as independently generated models, resulting in different compensation values. Examples of the models are discussed in more detail below.

[0023] Figure 1The method includes, in block 102, receiving, at at least one processor, object model data representing at least a portion of at least one object to be generated by an additive manufacturing apparatus by fusing build material within a build chamber. In some examples, the fusing process can include a hot melt process in which heat is applied. The object model data can include data representing at least a portion (in some examples, a slice) of an object to be generated by the additive manufacturing apparatus by fusing build material. The object model data can include, for example, a computer-aided design (CAD) model, and / or can be, for example, a StereoLithographic (STL) data file. In some examples, the object model data can represent the object or object portion as a plurality of sub-volumes, where each sub-volume represents an addressable region of the object in object generation. In some examples herein, the sub-volumes can be referred to as voxels, i.e., three-dimensional pixels. In some examples, the object model data can represent a printable arrangement of a plurality of objects to be generated by the additive manufacturing apparatus by fusing build material within the build chamber.

[0024] The method further includes, in block 104, using at least one processor to select at least one of a plurality of different geometric compensation models to be applied to the object model data, where the geometric compensation models are used to determine geometric compensation to compensate for object deformation in additive manufacturing.

[0025] For example, the geometric compensation can include parametric transformations, such as geometric transformations such as at least one of an offset and a scaling factor. For example, a geometric compensation vector can specify components on the X and Y axes (e.g., applied to a single slice of the object), or in other examples can specify components on the X, Y, and Z axes.

[0026] In some examples, two or three scaling factors (one for each of the two / three axes, which two / three axes can be orthogonal) and / or two or three offset factors (one for each of the two / three axes, which two / three axes can be orthogonal) can be used to define the geometric compensation. If no scaling is indicated on a given axis, the scaling factor associated with that axis can be set to 1, and if no offset is indicated on a given axis, the offset factor associated with that axis can be set to 0.

[0027] Taking the specification of scaling factors in each of three orthogonal axes as an example, in some examples, this can be specified as a vector having components in the X, Y, and Z directions, and can be specified, for example, as [SF x , SF y , SF z . This can, for example, place the object in its intended generation orientation, meaning that the "width" of the object will be scaled by SF x , and the "depth" of the object will be scaled by SFy scaling, and the "height" of the object will be by SF z scaling (note that, in practice, the object can be generated in any orientation and thus the height of the object during generation may not correspond to the height of the object as oriented for its use after generation).

[0028] The geometric compensation model can include one or more predefined geometric compensations and / or can include information for deriving the (one or more) geometric compensations to be applied to the object. For example, the model can specify the (one or more) expected input parameters (such as object position, object volume, and the like) that will be provided to determine the (one or more) geometric compensations to be applied to the object. For example, there can be a mapping between such (one or more) input parameters and the (one or more) geometric compensations, as elaborated in more detail below.

[0029] Such a geometric compensation model can be determined, for example, by trial and error over time and / or using machine learning techniques. In some examples, the geometric compensation model can be generated based on thermal analysis and / or material considerations and the like.

[0030] An example of a geometric compensation model can include one or a set of scaling and / or offset parameters associated with a particular object generation device or type of object generation device. The parameters can be applied to all objects in the same way (e.g., regardless of object size and / or placement).

[0031] In other examples, the geometric compensation model can allow the geometric compensations derived from or selected from it to be tailored for a particular expected object generation operation and / or object.

[0032] For example, the geometric compensation model can consider the expected position of the object in the manufacturing chamber. It has been noted that by considering the position of object generation when determining the compensation, dimensional accuracy can be significantly improved, and thus different compensation parameters can be applied for different object positions to improve accuracy. Thus, such a geometric compensation model can include or provide compensation parameters that can be mapped to the expected position of the object.

[0033] For example, if an object is to be generated at a first position, that position can be mapped to a geometric compensation including one or more offsets and / or scaling parameters. However, if the same object is to be generated at a second position, that second position can be mapped to a different geometric compensation including one or more different offsets and / or scaling parameters. Thus, the particular geometric compensation applied can vary between different positions based on a predefined mapping or the like.

[0034] In some examples, in at least one geometric compensation model, a position may be modeled as a single representative position. In one example, this may include the center point of an object generated in additive manufacturing when the object is at its intended position within a manufacturing chamber. This may include generating a virtual manufacturing chamber in which one or more virtual objects are arranged at positions where the object is expected to be located when generated. In some examples, the position is the centroid of the object, but in another example / model, it may be some other position, such as the center of a bounding box, which can be the smallest cube, the lowest coordinates, or any other predefined coordinates that can completely enclose the object.

[0035] In some examples, at least one geometric compensation model may include a plurality of defined geometric compensation parameters (or parameter sets), each associated with a different position within a manufacturing chamber. In such examples, the (one or more) specific geometric compensation parameters may be selected based on the expected object generation position. In some examples, the defined positions may be associated with the (one or more) geometric compensation parameters, and the (one or more) geometric compensation parameters at an intermediate position to which such defined positions are to be applied may be generated, for example, by interpolation or by selecting the closest defined position or the like.

[0036] In some examples, the geometric compensation model may specify the (one or more) offset and / or scaling parameters to be applied to a voxel model of an object, where the parameters are selected based on the position of the center of the object. In such examples, the object model data may represent the object or an object part as a plurality of sub-volumes, where each sub-volume represents a region of the object that can be individually addressed in object generation. In such examples, the offset may be applied by adding voxels or eroding voxels from the object, and the offset may be strictly performed in the x, y, and z directions. The resolution of such an operation is associated with the resolution of the voxels. For example, a resolution of 600 dpi allows a uniquely addressable area of 42 by 42 microns in a cross-section, and thus the voxels can be defined as being associated with a 42 by 42 micron area. This means that adjustments can be made with a minimum resolution of 42 microns (or in some examples, 84 microns, as the offset can be applied symmetrically).

[0037] In another example, the (one or more) parameter sets of the geometric compensation model may be specified in the context of a compensation "vector" to be applied to a mesh model. The scalar projection or Hadamard product (i.e., component-by-component multiplication) of the geometric compensation vector may be determined, for example, for each vertex of the model, such that each vertex can be shifted by referring to a vector determined based on the orientation of the vertex with respect to a coordinate system (such as an xyz coordinate system) having a defined origin (which can be, for example, the center of the object). In other examples, faces may be shifted.

[0038] For example, the compensation vector can be specified as an offset vector having the form [O x , O y , O z . The vertices of the mesh model of the object can be defined, which in turn define the edges and faces. The faces are defined at different angles with respect to the X, Y, and Z axes, and the outward-facing normal of a face can be determined by reference to the coordinates used to define the vertices such that the normal n of a particular face can be defined as [NF nx , NF ny , NF nz . Then, the defined normals can be used to determine the offset to be applied to each face, for example using the Hadamard product, i.e., a component-by-component multiplication of the form [NF nx * O x , NF ny * O y , NF nz * O z . In some examples, this may result in a model with "holes" that, in some cases, can be sealed with a new face definition or the like.

[0039] In other examples, the vertices and / or edges can be shifted in a similar manner, where their normals are determined in an appropriate way.

[0040] Using this process, each vertex, edge, and / or triangle of the mesh can be offset in a manner determined according to its orientation in the model. This results in a modified virtual object, where the modification can be applied independently of size. By applying the offset to the mesh model rather than the voxel model, greater resolution can be achieved. Additionally, when the applied offset evolves with the applied angle, the model can be "continuously" adjusted over the entire surface of the object.

[0041] In the above example, an example of a geometric compensation model is described, in which a single representative coordinate, such as the centroid or the center of the bounding box enclosing the object, is used to indicate the position of the object. However, especially for larger objects, since different parts of the object may be in different regions of the manufacturing chamber that utilize different compensation parameters, this may result in loss of information: compensation parameters or values that are designed to compensate for deformations associated with only one of these regions can be considered. Thus, in at least some geometric compensation models, values associated with multiple positions can be considered and combined. For example, compensation values associated with positions enclosed by the volume of the object can be combined. In other examples, additional values (e.g., those associated with positions outside the object volume but within a threshold distance of the perimeter of the object) can alternatively or additionally be included in the combination. In some examples, the combination can include determining an average value (in some examples, which can include a weighted average, e.g., values associated with positions outside the volume to be occupied by the object that are given a lower weight than those positions within the volume to be occupied by the object). In such examples, a combination of multiple parameter sets can be used to determine the parameter set to be applied to the object.

[0042] In another example, different compensation parameters can be applied to different model parts. For example, a scaling factor associated with a vertex of the object model can be selected based on the position of the vertex. In those cases, the geometry of the part can be deformed more severely than scaling the entire part, e.g., the parallelism between faces can be disrupted. For example, this can be achieved by applying a scaling to each vertex from the center of the object (or any other fixed point).

[0043] In other examples, characteristics of the object, such as consideration of the object volume, can be used as input parameters in the geometric compensation model. For example, larger objects can accrue more thermal energy than smaller objects and thus tend to accumulate more heat compared to smaller objects. Therefore, cooling such an object takes more time than cooling an object that is not too large in volume, which may result in different deformations. Additionally, due to the higher heat levels, additional build material may adhere to such an object. Thus, in one example, the first compensation model can include a compensation factor associated with the object volume, while in other examples, there may be no such compensation factor, or a different compensation factor can be used. Other geometric compensation models can, for example, include consideration of how many objects will be generated in the manufacturing chamber and / or the proximity of the objects (e.g., in terms of "packing density").

[0044] In other examples, other object generation parameter values can be considered, which can be object generation parameter values configurable or selectable by a user or operator. The (one or more) parameters can be any parameter that may have an impact on dimensional inaccuracies. For example, the (one or more) parameters can include any combination of environmental conditions, object generation devices, object generation material compositions (which can include the choice of the type or composition of the build material and / or printing agent), object cooling profiles, or printing modes. These can be specified, for example, via an input to at least one processor. Thus, different geometric compensation models can involve different devices, different printing modes, different cooling profiles, or the like.

[0045] The geometric compensation model can be stored, for example, in a memory, such as embodied as mapping resources such as look-up tables and the like related to the (one or more) parameters to positions, or by using algorithms or the like.

[0046] Block 106 includes using at least one processor and at least partially simulating object generation operations for the modification of object model data based on the use of the stated or each selected geometric compensation model.

[0047] In some examples, this can include generating at least one simulated object that has properties predicted for the (one or more) objects generated based on the modification according to a specific geometric compensation model. In other examples, this can include simulating object properties, such as at least one object dimension (i.e., in all examples, the generation of the entire object may not be simulated). The simulation can be determined, for example, using a model of object deformation during object generation, using object model data modified by a specific geometric transformation model. Such an object deformation model can be determined in a similar manner as described for the geometric compensation model (and in some examples, can be generated together with such a geometric compensation model). For example, an object deformation model can be generated by generating multiple test objects and observing their deformations, and inferring object deformation behavior therefrom. In some examples, the influence of any combination of parameters such as object position, object volume, object surface area, and the like can be included in the object deformation model. Machine learning techniques may be used to generate the simulation. In some examples, the object deformation model can be generated based on an analysis of thermal and / or material considerations and the like.

[0048] In some examples, the same object deformation model is used for object model data modified using each of the multiple geometric compensation models.

[0049] The frame 108 includes using at least one processor to display the predicted properties of the (one or more) objects when generated based on the said or each simulation. In some examples, this may include displaying the (one or more) images of the object. In other examples, characteristics such as dimensions may be displayed. These may be displayed in the form of a chart or graph so that the user can quickly compare information. The predicted properties may include, for example, the expected object dimensions on each of the three orthogonal axes. In another example, as Figure 2A and 2B shown in, the predicted properties may include an indication of the proportional deviation of at least one object dimension based on the magnitude of the dimension.

[0050] Different geometric compensation models can be optimized or customized for different expected outcomes. Thus, the geometric compensation model can produce different compensations, which may be more effective in one region of the object than in another, for example, and / or which may result in an unexpected effect (artefact) in a given object rather than in another object. For example, some geometric transformations can close gaps or holes intended to remain open in a particular object, or can cause holes to appear.

[0051] It may be the case that for a given use case, some object dimensions or characteristics (or indeed some objects in the case where the generation of multiple objects is modeled) are considered to have a higher priority than others. By simulating such object dimensions / characteristics, it can be verified that the objects modified using a particular compensation model may be as expected in relation to those particular (one or more) dimensions / (one or more) objects, while there may be a greater degree of tolerance in relation to other (one or more) dimensions / (one or more) objects.

[0052] In some examples, the compensation model can be generated based on the number of test objects being generated. In some examples, the test objects may include multiple instances of the same or only a few underlying object data models. While such a compensation model may perform well for the test objects, it may modify another object in a way that introduces distortion, for example. In such a case, applying the compensation may reduce the accuracy of the object.

[0053] By simulating the effects of different compensation models, the occurrence of the generated objects being outside the expected parameters can be detected and minimized. This can, for example, allow the identification of the most suitable compensation model for a particular object and / or use case.

[0054] By displaying such predicted properties (graphically, for example), the appropriate compensation for a given use case can be selected. This, in turn, can prevent physical experiments (such as printing or generating one or more test objects), saving time, materials, and energy.

[0055] In some examples, the selection of the geometric compensation model to be used in object generation can be made automatically against a predefined criterion. In other examples, the selection can be made by a user evaluating the characteristics. The user may be able to easily identify the attributes of a given use case.

[0056] Figure 2A Represents measurements of multiple instances of the same object printed in a single manufacturing chamber during a single print operation, each object occupying a different position in the manufacturing chamber. Each line links data points associated with a specific object, the data specifying the deviation in millimeters of a predefined object dimension from the expected value at different points along a nominal distance along the object in a nominal direction.

[0057] Such measurements can be displayed in a user interface. In some examples of the user interface, one of the lines can be selected in isolation from other lines. In some examples of the user interface, each dimension can be inspected individually. In Figure 2A the data shown is for the Z-axis.

[0058] Figure 2A Also shown are multiple metrics, including:

[0059] EI (Error Index): The root mean square of the squared error is normalized by the nominal value multiplied by a factor of 1000.

[0060] MOS (Metric of Spread): The average of the standard deviation of the deviations over the nominal value; multiplied by a fixed normalization factor.

[0061] ADE (Average Deviation): The average of all deviations.

[0062] SVA (Slope Variability): The standard deviation on the slope part of the linear regression of the deviations as a function of the nominal value multiplied by a fixed normalization factor.

[0063] Figure 2B Shows simulated data for the same set of objects assuming that a specific geometric transformation model has been applied. Both the dimensional deviations and the same metrics have been simulated and predicted. These metrics are purely for example, and in other examples different metrics or different combinations of metrics can be used.

[0064] It can be noted that generally the predicted objects will be closer to the expected size than the printed objects of the measurements shown in Figure 2A but it is predicted that some objects will be associated with larger deviations than others. In a specific example used to generate the data shown in Figure 2B a model using the position of each object as an input parameter has been applied.

[0065] There may be selectable input parameters. For example, the position of an object can be modeled as a point position in one instance and in a way that extends over a volume in another instance.

[0066] A graphical user interface that can occur similar to Figure 2B can be displayed to the user. In some examples, the user may be able to select between geometric compensation models by using selectable options (e.g., a drop-down menu, a selectable list, or any other user interface). The predicted properties of the object(s) after modifying the object model data according to the selected geometric compensation model(s) can be displayed. In some examples, a confirmation selection can be generated for the object after its displayer. In other words, one of the geometric compensation models that can be selected (by the user via the user interface or automatically) for generating the simulation can be selected for object generation, as now described with respect to Figure 3 is described.

[0067] Figure 3 is an example method of object generation, including, in block 302, selecting a modification of the object model data for generating an object. This can be selected, for example, by user input (e.g., the user can indicate the model to be used to determine the modification), or automatically, for example, by evaluating predicted properties against predetermined data. For example, after the user has viewed simulations of the expected dimensions and / or the processor has reviewed a set of such simulations for their consistency with predetermined criteria, the modification can be selected based on Figure 1 the output of the method. Selecting the modification can include selecting a geometric transformation model for determining the geometric transformation and using the selected model to apply the geometric transformation to generate modified object data. The user can use a graphical user interface, for example, by using a drop-down menu or the like, to select the modification / geometric transformation model.

[0068] The frame 304 includes determining object generation instructions (or "printing instructions") for generating an object. In some examples, the object generation instructions may specify the amount of printing agent to be applied to each of a plurality of locations on a layer of build material. For example, generating the object generation instructions may include determining "slices" that include modifying a virtual build volume of the (one or more) virtual objects that have been applied, and rasterising these slices into pixels (or voxels, i.e., three-dimensional pixels). The amount of printing agent (or no printing agent) may be associated with each of the pixels / voxels. For example, if a pixel is associated with a region of the build volume intended to be cured, object generation instructions may be generated to specify the corresponding region of the build material to which the flux should be applied in object generation. However, if a pixel is associated with a region of the build volume intended to remain uncured, object generation instructions may be generated to specify that no agent can be applied to it or that a coalescence modifier such as a refining agent can be applied to it. In addition, the amount of such agents may be specified in the generated instructions, and these amounts may be determined based on, for example, thermal considerations and the like.

[0069] The frame 306 includes generating an object based on the object generation instructions. For example, such an object may be generated layer by layer. For example, this may include forming a layer of build material, such as by using at least one printing agent applicator to apply a printing agent at locations specified in the object generation instructions for an object model slice corresponding to the layer, using an "inkjet" liquid distribution technique, and applying energy, such as heat, to the layer. Some techniques allow for the accurate placement of the printing agent on the build material, such as by using a print head that operates according to the inkjet principle of two-dimensional printing to apply the printing agent. In some examples, the print head may be controlled to apply the printing agent at a resolution of approximately 600 dpi or 1200 dpi. Then, additional layers of the build material may be formed, and the process may be repeated, for example, using the object generation instructions for the next slice.

[0070] In this way, the object formed at one time may ultimately be closer to the expected size. In addition, since a more suitable model is more likely to be selected compared to the case of selecting a model without simulation, the object will be more likely to conform to the expected parameters and meet user and / or technical specifications. In this way, the generation of inappropriate objects and the resulting waste of materials, time, and energy can be reduced or prevented.

[0071] In some examples, the methods described herein can be combined with other methods of object model modification. For example, a modification function can be employed in the vicinity or locally of small features. Erosion of such small features can lead to an unacceptable reduction in their size, obliterating the feature or making it too small to fuse or too delicate to survive a cleaning operation. For example, if a feature has a dimension of approximately 0.5 mm, this can correspond to 12 voxels at 600 dpi. If three or four voxels are eroded from the side of such a small feature, it will lose approximately 50% to 60% of its cross-section, reducing its size to less than 0.3 mm. Such a feature may be too small to survive a cleaning operation. Thus, in some examples, other functions can be used to ensure that small features are preserved.

[0072] Figure 4 Apparatus 400 including processing circuitry 402 is shown. Processing circuitry 402 includes memory resources 404, a model modification module 406, and a simulation module 408.

[0073] At least in the use of apparatus 400, memory resources 404 store a plurality of geometric compensation models to determine geometric compensation so as to compensate for object deformation in additive manufacturing. For example, this can include any content or any combination thereof such as mapping resources, (one or more) transformation vectors, (one or more) compensation parameters, (one or more) algorithms, or the like, as described above. The geometric compensation models can be aimed at compensating for object deformation in additive manufacturing, where each geometric compensation model can specify or determine the compensation to be applied based on a predetermined criterion, which can vary between the models. In some examples, as described above, the model can relate the compensation to be applied to any content such as the object placement position, object volume, object surface area, or the like within the manufacturing chamber. The geometric compensation models can have any of the features of the geometric compensation models described above. Memory resources 404 can also store an object deformation model as described above.

[0074] Model modification module 406 determines, in the use of apparatus 400, the geometric transformation of an object to be generated using additive manufacturing based on the selected geometric compensation model, and uses the geometric transformation to modify the object model data.

[0075] Simulation module 408 generates, in the use of apparatus 400, a simulation of the output of an additive manufacturing operation based on the modified object model data. The simulation output can include a simulated object or any of its attributes. For example, simulation module 408 can perform the processes described above with respect to Figure 1 and can generate, for example, a simulation of at least one predicted object attribute (such as dimensions or the like) based on the object deformation model.

[0076] Figure 5An additive manufacturing apparatus 500 for generating an object is shown. The additive manufacturing apparatus 500 includes a processing circuit 502. The processing circuit 502 includes Figure 4 memory resources 404, a model modification module 406, and a simulation module 408, and also includes a print instruction module 504 and a display module 506.

[0077] During use of the apparatus 500, the print instruction module 504 determines print instructions for generating an object from the (one or more) modified object models generated by the data model modification module 406.

[0078] The display module 506 may include a screen or the like to display predicted properties of the object based on simulated additive manufacturing operations.

[0079] During its use, the additive manufacturing apparatus 500 generates an object in a plurality of layers (which may correspond to respective slices of the object model). The additive manufacturing apparatus 500 may generate the object, for example, in a layer-by-layer manner by selectively curing portions of a build material layer. In some examples, selective curing may be implemented as follows: by selectively applying a printing agent, for example, by using an "inkjet" liquid dispensing technique, and applying energy, such as heat, to the layer. The additive manufacturing apparatus 500 may include additional components not shown herein, such as a manufacturing chamber, a print bed, one or more print heads for dispensing the printing agent, a build material distribution system for providing layers of the build material, an energy source such as a heat lamp, and any combination or any of the foregoing.

[0080] The print instructions (or object generation instructions) generated by the print instruction module 504 may, during their use, control each of the plurality of layers in which the additive manufacturing apparatus 500 generates an object. This may include, for example, specifying (one or more) area coverages for the printing agent, such as a flux, a colorant, a refinant, and the like. In some examples, object generation parameters are associated with sub-volumes of the object model. In some examples, other parameters may be specified, such as heating temperature, build material selection, expected print mode, and any combination or any of the foregoing. In some examples, halftoning may be applied to the determined object generation parameters to determine where to place the flux or the like. Control data may be specified in association with sub-volumes (e.g., voxels as described above). In some examples, the control data includes the printing agent dose associated with the sub-volumes.

[0081] The processing circuits 402, 502, or their modules may execute Figure 1 any of the blocks of Figure 3 or any of the blocks 302 to 304 of

[0082] Figure 6 Shown is a tangible machine-readable medium 600 associated with a processor 602. The machine-readable medium 600 includes instructions 604 that, when executed by the processor 602, cause the processor 602 to perform tasks. In this example, the instructions 604 include instructions 606 to cause the processor 602 to generate a plurality of object simulations, each object simulation based on applying a different deformation compensation model to object model data representing at least a portion of an object to be generated by an additive manufacturing device by fusing build material in a manufacturing chamber, and instructions 608 to cause the processor 602 to generate display data including attributes of the simulated objects. For example, data similar to the Figure 2B discussed data can be displayed. In some examples, the instructions 604 include instructions that, when executed, cause the processor 602 to accept a selection of a deformation compensation model; and determine print instructions for generating the object.

[0083] The deformation compensation model can have any of the characteristics of the geometric compensation models described above.

[0084] In some examples, when the instructions are executed, they cause the processor 602 to perform Figure 1 any of the blocks of Figure 3 or any of the blocks 302 to 304 of Figure 4 or Figure 5 any portion of the processing circuits 402, 502 of

[0085] Examples in this disclosure may be provided as a method, system, or machine-readable instructions, such as software, hardware, firmware, or any combination thereof. Such machine-readable instructions may be included on or in a computer-readable storage medium (including but not limited to disk storage devices, CD-ROMs, optical storage devices, etc.) having computer-readable program code thereon.

[0086] The present disclosure is described with reference to flowcharts and / or block diagrams of methods, apparatuses, and systems according to examples of the present disclosure. Although the above flowcharts illustrate a specific order of execution, the order of execution may be different from that depicted. Blocks described with respect to one flowchart may be combined with those of another flowchart. It should be understood that each block in the flowcharts and / or block diagrams, and combinations of blocks in the flowcharts and / or block diagrams, can be implemented by machine-readable instructions.

[0087] Machine-readable instructions can be executed, for example, by a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to implement the functions described in the specification and the drawings. In particular, a processor or processing device can execute the machine-readable instructions. Thus, the functional modules of the device, such as the model modification module 406, the simulation module 408, or the print instruction module 504, can be implemented by a processor that executes the machine-readable instructions stored in the memory or a processor that operates according to the instructions embedded in the logic circuit. The term "processor" should be interpreted broadly to include a CPU, a processing unit, an ASIC, a logic unit, or a programmable gate array, etc. The methods and functional modules can all be executed by a single processor or distributed among several processors.

[0088] Such machine-readable instructions can also be stored in a computer-readable storage device, which can direct a computer or other programmable data processing device to operate in a specific mode.

[0089] Machine-readable instructions can also be loaded onto a computer or other programmable data processing device, such that the computer or other programmable data processing device performs a series of operations to generate a computer-implemented process. Thus, the instructions executed on the computer or other programmable device implement the functions specified in the (one or more) processes in the flowchart and / or the (one or more) blocks in the block diagram.

[0090] In addition, the teachings herein can be implemented in the form of a computer software product, which is stored in a storage medium and includes multiple instructions for causing a computer device to implement the methods described in the examples of the present disclosure.

[0091] Although methods, devices, and related aspects have been described with reference to certain examples, various modifications, changes, omissions, and substitutions can be made without departing from the spirit of the present disclosure. Therefore, it is intended that the methods, devices, and related aspects be limited by the scope of the following claims and their equivalents. It should be noted that the above examples illustrate rather than limit what is described herein, and those skilled in the art will be able to design many alternative implementations without departing from the scope of the appended claims. The features described with respect to one example can be combined with the features of another example.

[0092] The word "comprising" does not exclude the presence of elements other than those listed in the claims, "a" or "an" does not exclude a plurality, and a single processor or other unit can perform the functions of several units recited in the claims.

[0093] The features of any dependent claim can be combined with the features of any claim in the independent claim or other dependent claims.

Claims

1. A method for generating an object, comprising: receiving, by a processor, object model data representing an object to be generated by an additive manufacturing device by layer-by-layer depositing and fusing a build material within a manufacturing chamber; performing, by the processor, a simulated object generation operation for each of a plurality of different geometric compensation models, each geometric compensation model specifying a geometric compensation to be applied to the object model data to compensate for deformation during cooling of the object after additive manufacturing of the object; for each of the different geometric compensation models, displaying, by the processor, predicted properties of the object based on the simulated object generation operation; selecting, based on the simulated object generation operation, one of the different geometric compensation models; modifying, by the processor, the object model data using the selected different geometric compensation model; and causing, by the processor, the additive manufacturing device to generate the object using the modified object model data.

2. The method according to claim 1, wherein The predicted properties include an expected object size of the object.

3. The method according to claim 1, wherein The predicted properties include an indication of a proportional deviation of the object size of the object based on the magnitude of the object size.

4. The method according to claim 1, further comprising displaying predicted properties associated with each of a plurality of different object model modifications based on different selected geometric compensation models, and providing a selection between the selected geometric compensation models.

5. The method according to claim 1, wherein The different geometric compensation models include different offset parameters and different scaling parameters.

6. The method according to claim 1, wherein, Each of the different geometric compensation models is related to an expected position of an object to be generated within the manufacturing chamber.

7. A system for generating an object, comprising: a processor; and a memory for storing object model data representing an object to be generated by an additive manufacturing device by layer-by-layer depositing and fusing a build material within a manufacturing chamber; a plurality of different geometric compensation models, each geometric compensation model specifying a geometric compensation to be applied to the object model data to compensate for object deformation during cooling after additive manufacturing of the object; and program code; and wherein the program code is executable by the processor to: perform a simulated object generation operation for each of the plurality of different geometric compensation models; for each of the different geometric compensation models, display predicted properties of the object based on the simulated object generation operation; select, based on the simulated object generation operation, one of the different geometric compensation models; modify the object model data using the selected different geometric compensation model; and cause the processor to cause the additive manufacturing device to generate the object using the modified object model data.

8. The system according to claim 7, wherein the program code is executable by the processor to further: determine print instructions for generating an object from the modified object model data.

9. The system according to claim 8, wherein the print instructions are used to cause the additive manufacturing device to generate the object using the modified object model data.

10. A non - transitory machine - readable medium including instructions that, when executed by a processor, cause the processor to: Receive object model data representing an object to be generated by an additive manufacturing apparatus by layer - by - layer depositing and fusing a build material within a build chamber; Simulate object generation operations for each of a plurality of different geometric compensation models, each geometric compensation model specifying geometric compensation to be applied to the object model data to compensate for deformation during cooling of the object after additive manufacturing of the object; For each of the different geometric compensation models, display, by the processor, predicted properties of the object based on the simulated object generation operations; Select one of the different geometric compensation models based on the simulated object generation operations; Modify the object model data using the selected different geometric compensation model; And Cause the additive manufacturing apparatus to generate the object using the modified object model data.

11. The non-transitory machine-readable medium according to claim 10, wherein, Selecting one of the different geometric compensation models includes: accepting a selection of one of the different geometric compensation models.

Citation Information

Patent Citations

  • Method for compensating errors occurring in a production process

    CN105785943A

  • Additive manufacturing control systems

    CN108788143A

  • 3D printing shrinkage compensation using radial and angular layer perimeter point information

    US20140107823A1