3D printing data processing method, 3D printing method and device

文档序号:124632 发布日期:2021-10-22 浏览:18次 中文

阅读说明:本技术 3d打印数据的处理方法、3d打印方法及装置 (3D printing data processing method, 3D printing method and device ) 是由 陈彪 邓凌峰 郑泽斌 万欣 于 2021-08-18 设计创作,主要内容包括:本申请提供一种3D打印数据的处理方法、3D打印方法及装置,方法包括:获取待打印模型的体素三维数据,体素三维数据包含体素尺寸;对体素三维数据进行切片处理,得到多个目标切片层,其中每个目标切片层的单层边界差值小于预设单层边界最大差值,单层边界差值为目标切片层的顶面边界与底面边界之间的体素个数差值与体素尺寸之间的乘积;确定所有目标切片层对应的切片数据,切片数据包括每个目标切片层的层厚值。本实施例利用每个切片层的两个截面(顶面和底面)之间的边界差值作为自适应切片基础,实现多个切片层之间的融合或拆分,提高3D打印模型的打印精度。(The application provides a 3D printing data processing method, a 3D printing method and a device, wherein the method comprises the following steps: acquiring voxel three-dimensional data of a model to be printed, wherein the voxel three-dimensional data comprises a voxel size; slicing the voxel three-dimensional data to obtain a plurality of target slice layers, wherein the single-layer boundary difference of each target slice layer is smaller than the preset single-layer boundary maximum difference, and the single-layer boundary difference is the product of the voxel number difference between the top surface boundary and the bottom surface boundary of the target slice layer and the voxel size; and determining slice data corresponding to all target slice layers, wherein the slice data comprises the layer thickness value of each target slice layer. In the embodiment, the boundary difference value between two sections (top surface and bottom surface) of each slice layer is used as a self-adaptive slice foundation, so that fusion or splitting among a plurality of slice layers is realized, and the printing precision of the 3D printing model is improved.)

1. A method for processing 3D printing data is characterized by comprising the following steps:

acquiring voxel three-dimensional data of a model to be printed, wherein the voxel three-dimensional data comprises a voxel size;

slicing the voxel three-dimensional data to obtain a plurality of target slice layers, wherein the single-layer boundary difference of each target slice layer is smaller than the preset single-layer boundary maximum difference, and the single-layer boundary difference is the product of the voxel number difference between the top surface boundary and the bottom surface boundary of the target slice layer and the voxel size;

and determining slice data corresponding to all the target slice layers, wherein the slice data comprises the layer thickness value of each target slice layer.

2. The method for processing 3D print data according to claim 1, wherein the slicing the voxel three-dimensional data to obtain a plurality of target slice layers comprises:

performing multi-layer iterative slicing on the voxel three-dimensional data to obtain a plurality of target slice layers;

wherein the preset slicing step of each layer of slices comprises the following steps:

step S1, determining the target slice thickness according to a preset slice thickness priority, wherein the slice thickness priority comprises the slice priority relation among a plurality of slice thicknesses;

step S2, slicing the voxel three-dimensional data according to the target slice thickness to obtain an initial slice layer;

step S3, if the single-layer boundary difference of the initial slicing layer is smaller than the preset single-layer boundary maximum difference, the step S4 is executed, otherwise, the step S1 is executed;

and step S4, taking the initial slice layer as a target slice layer, and taking the voxel three-dimensional data without the target slice layer as an initial value of a next slice layer.

3. The method for processing 3D print data according to claim 1, wherein the determining slice data corresponding to all the target slice layers comprises:

for each target sliced layer, calculating the layer thickness difference between the upper sliced layer and the next sliced layer according to the slice thickness corresponding to the target sliced layer, wherein the upper sliced layer and the next sliced layer are adjacent target sliced layers;

if the layer thickness difference is larger than a preset maximum layer thickness difference, the layer thickness value of the upper layer of sliced layer is the sum of the sliced thickness of the lower layer of sliced layer and the preset maximum layer thickness difference;

if the layer thickness difference is smaller than a preset minimum layer thickness difference, the layer thickness value of the upper layer of sliced layer is the difference between the sliced thickness of the lower layer of sliced layer and the preset maximum layer thickness difference;

and if the layer thickness difference value is between the preset maximum layer thickness difference value and the preset minimum layer thickness difference value, the layer thickness value of the upper layer of the sliced layer is the slice thickness of the upper layer of the sliced layer.

4. The method for processing 3D print data according to claim 1, wherein the slice data further includes an exposure time, and the determining slice data corresponding to all the target slice layers further includes:

generating exposure time required by curing each target sliced layer based on a preset curing depth formula, wherein the curing depth formula is as follows:

wherein t is the exposure time, ECIs the minimum exposure energy of the material, P is the exposure power, T is the layer thickness value of the target sliced layer, H is the overcuring thickness, DPW is an exposure time correction coefficient for the depth of transmission.

5. The method for processing 3D print data according to claim 1, wherein the slice data further includes a section scaling factor, and the determining slice data corresponding to all the target slice layers further includes:

generating a section scaling coefficient of each target slice layer based on a preset section scaling formula, wherein the section scaling formula is as follows:

R=R1×e(i-1)/Y

wherein R is the cross sectionScaling factor, R1And the scaling coefficient is corresponding to a preset unit layer thickness value, i is the ratio of the layer thickness value of the target sliced layer to the preset unit layer thickness value, and Y is a scaling coefficient correction coefficient.

6. A3D printing method, comprising:

acquiring printing data of a model to be printed, wherein the printing data comprises slice data obtained based on the 3D printing data processing method of claim 1;

and controlling a 3D printing device to perform printing operation on each target sliced layer based on the printing data.

7. A device for processing 3D print data, comprising:

the system comprises a first acquisition module, a second acquisition module and a printing module, wherein the first acquisition module is used for acquiring voxel three-dimensional data of a model to be printed, and the voxel three-dimensional data comprises a voxel size;

the slicing module is used for slicing the voxel three-dimensional data to obtain a plurality of target slice layers, wherein the single-layer boundary difference value of each target slice layer is smaller than the preset single-layer boundary maximum difference value, and the single-layer boundary difference value is the product of the voxel number difference value between the top surface boundary and the bottom surface boundary of the target slice layer and the voxel size;

and the determining module is used for determining slice data corresponding to all the target slice layers, wherein the slice data comprises the layer thickness value of each target slice layer.

8. A3D printing device, comprising:

a first obtaining module, configured to obtain print data of a model to be printed, where the print data includes slice data obtained based on the 3D print data processing method according to claim 1;

and the control module is used for controlling the 3D printing equipment to print each target sliced layer based on the printing data.

9. An electronic device, comprising a memory for storing a computer program and a processor for executing the computer program to cause the electronic device to execute the 3D printing data processing method according to any one of claims 1 to 5 or the 3D printing method according to claim 6.

10. A computer-readable storage medium, characterized in that it stores a computer program which, when executed by a processor, implements the processing method of 3D printing data according to any one of claims 1 to 5, or the 3D printing method according to claim 6.

Technical Field

The present application relates to the field of computer technologies, and in particular, to a 3D print data processing method, a 3D printing apparatus, a device, and a medium.

Background

In 3D printing technology based on stereolithography, slicing processing is required for three-dimensional data. The three-dimensional data file is horizontally layered and cut in a preset layer thickness along the Z-axis direction, cross section data of each layer are obtained, and then layer-by-layer photocuring forming is carried out according to the cross section data, so that 3D printing based on photocuring forming is realized.

At present, the slicing mode of horizontal layered cutting with a preset layer thickness is too single, and the slicing mode is difficult to adapt to the slicing processing of various models. For example: for 3D models with less details, in order to save time, a larger layered thickness is adopted; for 3D models with more details, in order to ensure the detail precision of the models, a smaller layering thickness is adopted, but the printing time is greatly increased; for complex models with less and more details, when a single slice layer is adopted, the production requirement of saving printing time and ensuring detail precision is difficult to achieve. It can be seen that the current 3D printing model has a problem of poor precision.

Disclosure of Invention

An embodiment of the application aims to provide a 3D printing data processing method, a 3D printing method and a 3D printing device, and aims to solve the problem that a current 3D printing model is poor in printing precision.

In a first aspect, an embodiment of the present application provides a method for processing 3D print data, including:

acquiring voxel three-dimensional data of a model to be printed, wherein the voxel three-dimensional data comprises a voxel size;

slicing the voxel three-dimensional data to obtain a plurality of target slice layers, wherein the single-layer boundary difference of each target slice layer is smaller than the preset single-layer boundary maximum difference, and the single-layer boundary difference is the product of the voxel number difference between the top surface boundary and the bottom surface boundary of the target slice layer and the voxel size;

and determining slice data corresponding to all target slice layers, wherein the slice data comprises the layer thickness value of each target slice layer.

In the embodiment, the voxel three-dimensional data of the model to be printed is acquired, so that the model to be printed is adaptively sliced by utilizing the voxel three-dimensional data; carrying out slicing processing on the voxel three-dimensional data to obtain a plurality of target slice layers, and realizing fusion or splitting among the plurality of slice layers by using a boundary difference value between two sections (top surface and bottom surface) of each slice layer as a self-adaptive slice foundation; and determining slice data corresponding to all the target slice layers to obtain the layer thickness value of each target slice layer, so that self-adaptive slicing is realized, and the printing precision of the 3D printing model is improved.

In an embodiment, the slicing the voxel three-dimensional data to obtain a plurality of target slice layers includes:

carrying out multilayer iterative slicing on the voxel three-dimensional data to obtain a plurality of target slice layers;

wherein the preset slicing step of each layer of slices comprises the following steps:

step S1, determining the target slice thickness according to the preset slice thickness priority, wherein the slice thickness priority comprises the slice priority relation among a plurality of slice thicknesses;

step S2, slicing the voxel three-dimensional data according to the target slice thickness to obtain an initial slice layer;

step S3, if the difference value of the single-layer boundary of the initial slicing layer is smaller than the maximum difference value of the preset single-layer boundary, the step S4 is executed, otherwise, the step S1 is executed;

and step S4, taking the initial slice layer as a target slice layer, and taking the voxel three-dimensional data after the target slice layer is removed as the initial value of the next slice layer.

In this embodiment, iterative slice processing is performed on the voxel three-dimensional data by presetting a slice thickness priority until a single-layer boundary difference of an initial slice layer is smaller than a preset single-layer boundary maximum difference, so as to meet the model detail precision of the single-layer slice layer.

In one embodiment, determining slice data corresponding to all target slice layers includes:

for each target sliced layer, calculating the layer thickness difference between the upper sliced layer and the next sliced layer according to the slice thickness corresponding to the target sliced layer, wherein the upper sliced layer and the next sliced layer are adjacent target sliced layers;

if the layer thickness difference is larger than the preset maximum layer thickness difference, the layer thickness value of the upper layer of the sliced layer is the sum of the sliced thickness of the lower layer of the sliced layer and the preset maximum layer thickness difference;

if the layer thickness difference is smaller than the preset minimum layer thickness difference, the layer thickness value of the upper layer of the sliced layer is the difference between the sliced thickness of the lower layer of the sliced layer and the preset maximum layer thickness difference;

and if the layer thickness difference value is between the preset maximum layer thickness difference value and the preset minimum layer thickness difference value, the layer thickness value of the upper layer of the sliced layer is the slice thickness of the upper layer of the sliced layer.

In the embodiment, the layer thickness value of the target sliced layer is determined according to the layer thickness difference between the adjacent target sliced layers, so that the error influence caused by overlarge layer thickness difference between different target sliced layers is reduced, and the layer thickness determination precision of the sliced layer is improved.

In an embodiment, the slice data further includes an exposure time, and the slice data corresponding to all target slice layers is determined, further including:

based on a preset curing depth formula, generating exposure time required by curing each target sliced layer, wherein the curing depth formula is as follows:

where t is the exposure time, ECThe minimum exposure energy of the material, P is the exposure power, T is the layer thickness value of the target sliced layer, H is the overcuring thickness, DP is the transmission depth, and W is the exposure time correction coefficient.

In the embodiment, by calculating the exposure time corresponding to each target slice layer during photocuring molding, errors caused by different overcuring thicknesses due to different slice thicknesses are eliminated, and the photocuring molding precision can be ensured.

In an embodiment, the slice data further includes a section scaling factor, and the determining of the slice data corresponding to all of the target slice layers further includes:

generating a section scaling coefficient of each target slice layer based on a preset section scaling formula, wherein the section scaling formula is as follows:

R=R1×e(i-1)/Y

wherein R is a section scaling factor, R1And the scaling coefficient is corresponding to the preset unit layer thickness value, i is the ratio of the layer thickness value of the target sliced layer to the preset unit layer thickness value, and Y is the scaling coefficient correction coefficient.

In this embodiment, by calculating the cross-section scaling coefficient corresponding to each target slice layer during photocuring molding, an error caused by the actual size after curing due to different layer thicknesses is eliminated, and the precision of photocuring molding can be ensured.

In a second aspect, an embodiment of the present application provides a 3D printing method, including:

acquiring printing data of a model to be printed, wherein the printing data comprises slice data obtained by the 3D printing data processing method based on the first aspect;

and controlling the 3D printing equipment to perform printing operation on each target sliced layer based on the printing data.

In this embodiment, the slice data obtained by the 3D printing data processing method provided by the present application is subjected to a printing operation, so as to improve the model accuracy of the 3D printing model.

In a third aspect, an embodiment of the present application provides a device for processing 3D print data, including:

the first acquisition module is used for acquiring voxel three-dimensional data of the model to be printed, wherein the voxel three-dimensional data comprises a voxel size;

the slicing module is used for carrying out slicing processing on the voxel three-dimensional data to obtain a plurality of target slice layers, wherein the single-layer boundary difference value of each target slice layer is smaller than the preset single-layer boundary maximum difference value, and the single-layer boundary difference value is the product of the voxel number difference value between the top surface boundary and the bottom surface boundary of each target slice layer and the voxel size;

and the determining module is used for determining slice data corresponding to all target slice layers, and the slice data comprises the layer thickness value of each target slice layer.

In a fourth aspect, an embodiment of the present application provides a 3D printing apparatus, including:

a second obtaining module, configured to obtain print data of a model to be printed, where the print data includes slice data obtained by the 3D print data processing method according to the first aspect;

and the control module is used for controlling the 3D printing equipment to print each target slice layer based on the printing data.

In a fifth aspect, an embodiment of the present application provides an electronic device, which includes a memory and a processor, where the memory is used to store a computer program, and the processor runs the computer program to enable the electronic device to execute the 3D printing data processing method according to any one of the first aspect or the 3D printing method according to the second aspect.

In a sixth aspect, an embodiment of the present application provides a computer-readable storage medium, which stores a computer program, and the computer program, when executed by a processor, implements the 3D printing data processing method according to any one of the first aspect or the 3D printing method according to the second aspect.

It should be noted that, for the beneficial effects of the third aspect to the fourth aspect, reference is made to the description of the first aspect or the second aspect, and details are not repeated here.

Drawings

In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings that are required to be used in the embodiments of the present application will be briefly described below, it should be understood that the following drawings only illustrate some embodiments of the present application and therefore should not be considered as limiting the scope, and that those skilled in the art can also obtain other related drawings based on the drawings without inventive efforts.

Fig. 1 is a schematic flowchart of a 3D print data processing method according to an embodiment of the present application;

FIG. 2 is a schematic diagram of converting raw three-dimensional data into voxel three-dimensional data according to an embodiment of the present disclosure;

FIG. 3 is a schematic Z-axis cross-sectional view of voxel three-dimensional data provided by an embodiment of the present application;

fig. 4 is a schematic view of a slicing process of voxel three-dimensional data provided in an embodiment of the present application;

fig. 5 is a schematic flowchart of a 3D printing method provided in an embodiment of the present application;

fig. 6 is a schematic structural diagram of a 3D print data processing apparatus according to an embodiment of the present application;

fig. 7 is a schematic structural diagram of a 3D printing apparatus according to an embodiment of the present application;

fig. 8 is a schematic structural diagram of an electronic device according to an embodiment of the present application.

Detailed Description

The technical solutions in the embodiments of the present application will be described below with reference to the drawings in the embodiments of the present application.

It should be noted that: like reference numbers and letters refer to like items in the following figures, and thus, once an item is defined in one figure, it need not be further defined and explained in subsequent figures. Meanwhile, in the description of the present application, the terms "first", "second", and the like are used only for distinguishing the description, and are not to be construed as indicating or implying relative importance.

As described in the related art, the slicing method for performing horizontal layer-by-layer cutting at a predetermined layer thickness is too single to adapt to the slicing process of various models. For example: for 3D models with less details, in order to save time, a larger layered thickness is adopted; for 3D models with more details, in order to ensure the detail precision of the models, a smaller layering thickness is adopted, but the printing time is greatly increased; for complex models with less and more details, when a single slice layer is adopted, the production requirement of saving printing time and ensuring detail precision is difficult to achieve. It can be seen that the current 3D printing model has a problem of poor precision.

In addition, according to the change of contour margin values or the size of slopes between adjacent layers of the model, self-adaptive layered slicing is realized, but under different exposure energies, the over-curing depth of the Z axis is different, and the XY plane size is different, so that the precision of the printing model is poor, and the adaptation to photocuring molding is difficult.

Aiming at the problems in the prior art, the application provides a 3D printing data processing method, which is used for acquiring the voxel three-dimensional data of a model to be printed so as to perform self-adaptive slicing on the model to be printed by utilizing the voxel three-dimensional data; carrying out slicing processing on the voxel three-dimensional data to obtain a plurality of target slice layers, and realizing fusion or splitting among the plurality of slice layers by using a boundary difference value between two sections (top surface and bottom surface) of each slice layer as a self-adaptive slice foundation; and determining slice data corresponding to all the target slice layers to obtain the layer thickness value of each target slice layer, so that self-adaptive slicing is realized, and the printing precision of the 3D printing model is improved.

Referring to fig. 1, fig. 1 is a flowchart illustrating an implementation of a 3D print data processing method according to an embodiment of the present application. The processing method of 3D print data described in the embodiments of the present application may be applied to electronic devices, including but not limited to computer devices such as smart phones, tablet computers, desktop computers, supercomputers, personal digital assistants, physical servers, and cloud servers. The 3D print data processing method according to the embodiment of the present application includes steps S101 to S104, which are detailed as follows:

step S101, voxel three-dimensional data of a model to be printed is obtained, and the voxel three-dimensional data comprises voxel size.

In the step, the model to be printed is a three-dimensional entity needing to be printed and formed; the voxel three-dimensional data is three-dimensional data formed by stacking small cubes with the side length n (n is a positive integer and the unit is micrometer) in a mode of completely overlapping the faces, wherein the size of the voxel is the side length of the small cube.

Optionally, an original three-dimensional data file of the model to be printed is imported into the electronic device, the electronic device obtains structural size features of the three-dimensional data based on the original three-dimensional data file, and the original three-dimensional data file is converted into a voxel three-dimensional data file based on the structural size features. The obtaining mode of the original three-dimensional data file includes but is not limited to scanning or modeling; the data type of the original three-dimensional data includes, but is not limited to, triangular patch three-dimensional data, curved surface three-dimensional data, mesh three-dimensional data or point cloud three-dimensional data. Illustratively, the raw three-dimensional data as shown in fig. 2 is converted into a schematic diagram of voxel three-dimensional data. The electronic device reads the original three-dimensional data file information, voxel size, and converts the original three-dimensional data 201 into voxel three-dimensional data 202.

Optionally, the model to be printed is processed on other computer equipment to obtain voxel three-dimensional data, and then the voxel three-dimensional data is transplanted to the electronic equipment.

Step S102, carrying out slicing processing on the voxel three-dimensional data to obtain a plurality of target slice layers, wherein the single-layer boundary difference value of each target slice layer is smaller than the preset single-layer boundary maximum difference value, and the single-layer boundary difference value is the product of the voxel number difference value between the top surface boundary and the bottom surface boundary of the target slice layer and the voxel size.

In this step, the slicing process is a process of layering the model to be printed based on the voxel three-dimensional data. Optionally, the electronic device reads preset adaptive layering parameters, where the adaptive layering parameters include, but are not limited to, a preset unit layer thickness value, a maximum layer thickness multiple, a preset single-layer boundary maximum difference value, and a preset maximum layer thickness difference value of an adjacent layer. Exemplarily, as shown in fig. 3, the Z-axis cross-sectional view of the voxel three-dimensional data is shown, where reference 301 is the top surface of the slice layer and reference 302 is the bottom surface of the slice layer; l is1Is a unit layer thickness value (namely a minimum layer thickness value), and a unit layer thickness value L is preset1The voxel size n is in a multiple relation, namely the number of voxel lines corresponding to the unit layer thickness value in the Z-axis direction is L1/n; n is the maximum layer thickness multiple, which is used to define the maximum slice thickness L for adaptive delaminationNAll the layered thicknesses are the minimum thickness L1Integer multiples of (a) or of various layer thicknesses Li=i×L1(i ═ 1, 2, 3 … N); presetting maximum difference K of single layer boundarymaxThe absolute difference value of the top surface contour boundary and the bottom surface contour boundary in the single-layer sliced layer is used as a basic condition for judging the layering thickness. And the maximum layer thickness difference C of the adjacent layers is used for judging the layer thickness difference between the adjacent sliced layers.

Optionally, the voxel three-dimensional data is sliced to obtain a plurality of target slicesSlice layer, the layer thickness of each slice layer can not be the same, but the voxel number difference D between the top surface and the bottom surface of each target slice layer satisfies: d x n < Kmax. Illustratively, the maximum slice thickness L is utilizedNAnd as the initial slice thickness, gradually reducing the slice thickness until the difference D of the number of voxels between the top surface and the bottom surface of the initial slice layer meets the condition, and taking the corresponding initial slice layer as a target slice layer.

It is understood that, for the same slice layer, each slice thickness takes the initial voxel three-dimensional data of the slice layer as the slice data, i.e. each slice thickness during the slice layer is trial cut on the same voxel three-dimensional data, which is not necessarily the layer thickness value of the target slice layer. If the voxel three-dimensional data of the layer is 10 meters thick, for the slicing process of the layer, the thickness of each slice is obtained by slicing the voxel three-dimensional data of 10 meters thick, and the description is omitted later.

Optionally, for each slice layer, a minimum layer thickness value L is used1And as the initial slice thickness, slicing the voxel three-dimensional data, and gradually increasing the slice thickness until the voxel number difference D between the top surface and the bottom surface of the initial slice layer does not satisfy: dxn>KmaxAnd stopping slicing, determining the target slice thickness with the maximum thickness from all slice thicknesses meeting the condition, and finally taking the slice layer obtained by slicing the target slice thickness as the target slice layer.

Optionally, for each slice layer, slicing the voxel three-dimensional data by using a plurality of preset slice thicknesses to obtain a plurality of initial slice layers; determining Dxn < K from multiple initial sliced layersmaxAnd finally, taking a sliced layer obtained by slicing the target sliced layer by using the target sliced thickness as the target sliced layer.

It is understood that in other embodiments, the inventive concepts according to the present application may be employed to achieve Dxn < KmaxOther embodiments are not described in detail herein.

And step S103, determining slice data corresponding to all target slice layers, wherein the slice data comprises the layer thickness value of each target slice layer.

In this step, the slice data is the result of slicing for each target slice layer, which includes, but is not limited to, the layer thickness value, slice layer shape, exposure time, and cross-section scaling factor for each target slice layer. Wherein the slice layer shape is selected from one of the following shapes: the top surface of the corresponding slice layer, the bottom surface of the corresponding slice layer or any section of the corresponding slice layer.

Optionally, a slice thickness corresponding to the slicing processing of the voxel three-dimensional data is used as the layer thickness value corresponding to the target slice layer.

On the basis of the embodiment shown in fig. 1, in an embodiment, the step S102 includes:

carrying out multilayer iterative slicing on the voxel three-dimensional data to obtain a plurality of target slice layers;

wherein the preset slicing step of each layer of slices comprises the following steps:

step S1, determining the target slice thickness according to the preset slice thickness priority, wherein the slice thickness priority comprises the slice priority relation among a plurality of slice thicknesses;

step S2, slicing the voxel three-dimensional data according to the target slice thickness to obtain an initial slice layer;

step S3, if the difference value of the single-layer boundary of the initial slicing layer is smaller than the maximum difference value of the preset single-layer boundary, the step S4 is executed, otherwise, the step S1 is executed;

and step S4, taking the initial slice layer as a target slice layer, and taking the voxel three-dimensional data after the target slice layer is removed as the initial value of the next slice layer.

In this embodiment, the slice thickness priority is preset to be the order of slice thicknesses selected when the voxel three-dimensional data is sliced, so that slice layers satisfy D × n < Kmax. Alternatively, the maximum slice thickness is taken as the highest priority slice thickness, and the smaller the slice thickness, the lower the priority (i.e., the highest priority for the maximum slice thickness, the lowest priority for the unit layer thickness value).

Illustratively, a slice flow diagram of voxel three-dimensional data is shown in fig. 4. When j is 1, the slice is the first layer slice. Using maximum slice thickness LNMaking the first slice, i.e. Li=LNObtaining the difference D of the number of voxels of the top surface and the bottom surface of the first layer (i.e. the initial slice layer of the first layer)1Calculating the absolute difference K1=D1X n, if K1<KmaxThen the layer thickness value T of the first layer1=LN(ii) a If K is greater than or equal to KmaxThen reduce the slice thickness to Li=L(N-1)Slicing was performed and K was compared1And KmaxThe magnitude relation between the two is analogized until K is satisfied1<KmaxIf none of the values is satisfied, the layer thickness value of the first layer is the unit layer thickness value L1I.e. T1=L1

After the first layer slicing is finished, carrying out second layer slicing to mth layer slicing according to the first layer slicing mode, and so on to obtain a second layer thickness value T2The thickness value T of the third layer3The layer thickness value T of the mth layermAnd finally obtaining a plurality of target sliced layers.

For example, taking the voxel three-dimensional data of a steamed bun model as an example, and assuming that the total thickness of the steamed bun model is 10 (unit: meter), the preset slice thickness priority is 1>0.8>0.6>0.4>0.2. Firstly, carrying out first-layer slicing on a steamed bun model with the total thickness of 10 m by utilizing the maximum slicing thickness of 1 m to obtain an initial slicing layer A1, and if A1 satisfies that D multiplied by n is less than KmaxThen a1 is taken as the target slice layer for the first slice. If A1 does not satisfy Dxn < KmaxThen, the steamed bun model with the total thickness of 10 m is sliced for the first layer by adopting the slice thickness of 0.8 m to obtain an initial slice layer A2, and whether the A2 satisfies that D is more than n and less than K is judgedmaxAnd so on until the initial slice layer satisfies Dxn < Kmax. If all the preset slice thicknesses obtain the initial slice layers, the D multiplied by n is less than KmaxThe layer thickness value of the first layer is the unit layer thickness value L1(e.g., 0.2 m), the initial slice layer obtained by slicing with a slice thickness of 0.2 m is used as the target slice layer of the first layer.

And assuming that the slice thickness adopted by the first layer is 1 meter, the voxel three-dimensional data of the second layer is a steamed bun model with the thickness of 9 meters, and slicing the second layer is carried out according to the same slicing mode as the first layer. And assuming that the slice thickness adopted by the second layer is 0.8 m, the voxel three-dimensional data of the third layer is a steamed bun model with the thickness of 8.2 m, slicing the third layer according to the same slicing mode as the first layer, and so on, and taking the steamed bun model with the residual thickness as the last slice layer until the steamed bun model can not be sliced again, and completing slicing.

On the basis of the embodiment shown in fig. 1, in an embodiment, the step S103 includes:

for each target sliced layer, calculating the layer thickness difference between the upper sliced layer and the next sliced layer according to the slice thickness corresponding to the target sliced layer, wherein the upper sliced layer and the next sliced layer are adjacent target sliced layers;

if the layer thickness difference is larger than the preset maximum layer thickness difference, the layer thickness value of the upper layer of the sliced layer is the sum of the sliced thickness of the lower layer of the sliced layer and the preset maximum layer thickness difference;

if the layer thickness difference is smaller than the preset minimum layer thickness difference, the layer thickness value of the upper layer of the sliced layer is the difference between the sliced thickness of the lower layer of the sliced layer and the preset maximum layer thickness difference;

and if the layer thickness difference value is between the preset maximum layer thickness difference value and the preset minimum layer thickness difference value, the layer thickness value of the upper layer of the sliced layer is the slice thickness of the upper layer of the sliced layer.

In this embodiment, for the first layer of the target sliced layer, the layer thickness value is its corresponding sliced thickness. For non-first layer target slice layer (T)jJ > 1), if the slice thickness of the j-th layer (i.e., T)j) Minus the slice thickness of the j-1 th layer (i.e., T)(j-1)) Is greater than the preset maximum layer thickness difference C of the adjacent layers, the layer thickness value of the jth layer is forcibly changed into T(j-1)+ C; if the difference between the slice thickness of the j-th layer and the slice thickness of the j-1 th layer is smaller than the preset minimum layer thickness difference-C, the layer thickness value of the j-th layer is forcibly changed into T(j-1)-C; if slice thickness of j-th layer (i.e. T)j) Slice thickness from layer j-1 (i.e., T)(j-1)) Is in the difference ofThe interval [ -C, C]In the inner layer, the layer thickness of the j-th layer is the slice thickness Tj

In an embodiment, the slice data further includes an exposure time, and the slice data corresponding to all target slice layers is determined, further including:

based on a preset curing depth formula, generating exposure time required by curing each target sliced layer, wherein the curing depth formula is as follows:

where t is the exposure time, ECThe minimum exposure energy of the material, P is the exposure power, T is the layer thickness value of the target sliced layer, H is the overcuring thickness, DP is the transmission depth, and W is the exposure time correction coefficient.

In this embodiment, for the photo-curing molding technology, in order to ensure that the layers can be cured and bonded together, an excessive exposure time is required to generate a cured entity thicker than the slice thickness, but due to the difference of the slice thickness, the over-curing thickness of each layer is also different, which may result in the reduction of the precision of photo-curing molding. Therefore, in the embodiment, by calculating the exposure time corresponding to each target slice layer during photocuring molding, errors caused by different overcuring thicknesses due to different slice thicknesses are eliminated, and the precision of photocuring molding can be ensured.

In an embodiment, the slice data further includes a section scaling factor, and the determining of the slice data corresponding to all of the target slice layers further includes:

generating a section scaling coefficient of each target slice layer based on a preset section scaling formula, wherein the section scaling formula is as follows:

R=R1×e(i-1)/Y

wherein R is a section scaling factor, R1And the scaling coefficient is corresponding to the preset unit layer thickness value, i is the ratio of the layer thickness value of the target sliced layer to the preset unit layer thickness value, and Y is the scaling coefficient correction coefficient.

In this embodiment, in the photo-curing molding technique, the size of the cross section varies depending on the exposure time for different layer thicknesses, and generally, the larger the layer thickness, the smaller the cross-sectional size after curing and the actual size, which leads to a decrease in the precision of the photo-curing molding. Therefore, in the embodiment, by calculating the section scaling coefficient corresponding to each target slice layer during photocuring molding, the error caused by the actual size after curing due to different layer thicknesses is eliminated, and the precision of photocuring molding can be ensured.

Referring to fig. 5, fig. 5 is a flowchart illustrating an implementation of a 3D printing method according to an embodiment of the present application. The 3D printing method described below in the embodiments of the present application may be applied to electronic devices including, but not limited to, computer devices such as smart phones, tablet computers, desktop computers, supercomputers, personal digital assistants, physical servers, and cloud servers. The 3D printing method according to the embodiment of the application includes steps S501 to S502, which are detailed as follows:

step S501, obtaining print data of a model to be printed, where the print data includes slice data obtained by the 3D print data processing method according to the embodiment of fig. 1;

and step S502, controlling the 3D printing equipment to perform printing operation on each target sliced layer based on the printing data.

In the above step S501 and step S502, the 3D printing device prints each sliced layer by layer to obtain cured layers corresponding to the sliced layer, and the cured layers are accumulated layer by layer to obtain a corresponding three-dimensional entity. Optionally, the method can be applied to a 3D printing mode such as photocuring molding, FDM, SLS, or SLM, wherein the photocuring molding printing mode can be SLA or DLP or LCD photocuring molding based on the slice data.

In order to execute the method corresponding to the above method embodiment to achieve the corresponding functions and technical effects, the following provides a processing device for 3D print data. Referring to fig. 6, fig. 6 is a block diagram of a 3D print data processing apparatus according to an embodiment of the present disclosure. For convenience of explanation, only the parts related to the present embodiment are shown, and the 3D print data processing apparatus provided in the embodiments of the present application includes:

a first obtaining module 601, configured to obtain voxel three-dimensional data of a model to be printed, where the voxel three-dimensional data includes a voxel size;

a slicing module 602, configured to slice the voxel three-dimensional data to obtain multiple target slice layers, where a single-layer boundary difference of each target slice layer is smaller than a preset single-layer boundary maximum difference, and the single-layer boundary difference is a product of a voxel number difference between a top surface boundary and a bottom surface boundary of the target slice layer and a voxel size;

a determining module 603, configured to determine slice data corresponding to all target slice layers, where the slice data includes a layer thickness value of each target slice layer.

In an embodiment, the slicing module 602 includes:

the slicing unit is used for carrying out multilayer iterative slicing on the voxel three-dimensional data to obtain a plurality of target slice layers;

wherein the preset slicing step of each layer of slices comprises the following steps:

step S1, determining the target slice thickness according to the preset slice thickness priority, wherein the slice thickness priority comprises the slice priority relation among a plurality of slice thicknesses;

step S2, slicing the voxel three-dimensional data according to the target slice thickness to obtain an initial slice layer;

step S3, if the difference value of the single-layer boundary of the initial slicing layer is smaller than the maximum difference value of the preset single-layer boundary, the step S4 is executed, otherwise, the step S1 is executed;

and step S4, taking the initial slice layer as a target slice layer, and taking the voxel three-dimensional data after the target slice layer is removed as the initial value of the next slice layer.

In one embodiment, the determining module 603 includes:

the calculating unit is used for calculating the layer thickness difference between the upper layer of sliced layer and the lower layer of sliced layer according to the slice thickness corresponding to the target sliced layer for each target sliced layer, and the upper layer of sliced layer and the lower layer of sliced layer are adjacent target sliced layers;

the first judging unit is used for judging whether the layer thickness difference is larger than the preset maximum layer thickness difference, and if so, the layer thickness value of the upper layer of the sliced layer is the sum of the sliced thickness of the lower layer of the sliced layer and the preset maximum layer thickness difference;

the second judging unit is used for judging whether the layer thickness difference is smaller than the preset minimum layer thickness difference or not, and if so, judging that the layer thickness value of the upper layer of sliced layer is the difference between the sliced thickness of the lower layer of sliced layer and the preset maximum layer thickness difference;

and the third judging unit is used for judging that the layer thickness value of the upper layer of sliced layer is the slice thickness of the upper layer of sliced layer if the layer thickness difference value is between the preset maximum layer thickness difference value and the preset minimum layer thickness difference value.

In an embodiment, the slice data further includes an exposure time, and the determining module 603 further includes:

the first generation unit is used for generating exposure time required by curing each target sliced layer based on a preset curing depth formula, wherein the curing depth formula is as follows:

where t is the exposure time, ECIs the minimum exposure energy of the material, P is the exposure power, T is the layer thickness value of the target sliced layer, H is the overcuring thickness, DPW is an exposure time correction coefficient for the depth of transmission.

In an embodiment, the slice data further includes a section scaling factor, and the determining module 603 further includes:

a second generating unit, configured to generate a section scaling factor of each target slice layer based on a preset section scaling formula, where the section scaling formula is:

R=R1×e(i-1)/Y

wherein R is a section scaling factor, R1And the scaling coefficient is corresponding to the preset unit layer thickness value, i is the ratio of the layer thickness value of the target sliced layer to the preset unit layer thickness value, and Y is the scaling coefficient correction coefficient.

The processing apparatus for 3D print data may implement the processing method for 3D print data of the above method embodiment. The alternatives in the above-described method embodiments are also applicable to this embodiment and will not be described in detail here. The rest of the embodiments of the present application may refer to the contents of the above method embodiments, and in this embodiment, details are not described again.

The following provides a 3D printing apparatus. Referring to fig. 7, fig. 7 is a block diagram of a 3D printing apparatus according to an embodiment of the present disclosure. For convenience of explanation, only the parts related to the present embodiment are shown, and the 3D printing apparatus provided in the embodiments of the present application includes:

a second obtaining module 701, configured to obtain print data of a model to be printed, where the print data includes slice data obtained based on the 3D print data processing method shown in the embodiment of fig. 1;

and a control module 702, configured to control the 3D printing apparatus to perform a printing operation on each target slice layer based on the print data.

Fig. 8 is a schematic structural diagram of an electronic device according to an embodiment of the present application. As shown in fig. 8, the electronic apparatus 8 of this embodiment includes: at least one processor 80 (only one shown in fig. 8), a memory 81, and a computer program 82 stored in the memory 81 and executable on the at least one processor 80, the processor 80 implementing the steps of any of the method embodiments described above when executing the computer program 82.

The electronic device 8 may be a computing device such as a smartphone, a tablet computer, a desktop computer, a supercomputer, a personal digital assistant, a physical server, and a cloud server. The electronic device may include, but is not limited to, a processor 80, a memory 81. Those skilled in the art will appreciate that fig. 8 is merely an example of the electronic device 8, and does not constitute a limitation of the electronic device 8, and may include more or less components than those shown, or combine some of the components, or different components, such as an input-output device, a network access device, etc.

The Processor 80 may be a Central Processing Unit (CPU), and the Processor 80 may be other general purpose Processor, a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), an off-the-shelf Programmable Gate Array (FPGA) or other Programmable logic device, discrete Gate or transistor logic, discrete hardware components, etc. A general purpose processor may be a microprocessor or the processor may be any conventional processor or the like.

The memory 81 may in some embodiments be an internal storage unit of the electronic device 8, such as a hard disk or a memory of the electronic device 8. The memory 81 may also be an external storage device of the electronic device 8 in other embodiments, such as a plug-in hard disk, a Smart Media Card (SMC), a Secure Digital (SD) Card, a Flash memory Card (Flash Card), and the like, which are provided on the electronic device 8. Further, the memory 81 may also include both an internal storage unit and an external storage device of the electronic device 8. The memory 81 is used for storing an operating system, an application program, a BootLoader (BootLoader), data, and other programs, such as program codes of the computer program. The memory 81 may also be used to temporarily store data that has been output or is to be output.

In addition, an embodiment of the present application further provides a computer-readable storage medium, where a computer program is stored, and when the computer program is executed by a processor, the computer program implements the steps in any of the method embodiments described above.

The embodiments of the present application provide a computer program product, which when running on an electronic device, enables the electronic device to implement the steps in the above method embodiments when executed.

In the embodiments provided in the present application, it should be understood that the disclosed apparatus and method can be implemented in other ways. The apparatus embodiments described above are merely illustrative, and for example, the flowchart and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of apparatus, methods and computer program products according to various embodiments of the present application. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.

In addition, functional modules in the embodiments of the present application may be integrated together to form an independent part, or each module may exist separately, or two or more modules may be integrated to form an independent part.

The functions, if implemented in the form of software functional modules and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application or portions thereof that substantially contribute to the prior art may be embodied in the form of a software product stored in a storage medium and including instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present application. And the aforementioned storage medium includes: a U-disk, a removable hard disk, a Read-Only Memory (ROM), a Random Access Memory (RAM), a magnetic disk or an optical disk, and other various media capable of storing program codes.

The above description is only an example of the present application and is not intended to limit the scope of the present application, and various modifications and changes may be made by those skilled in the art. Any modification, equivalent replacement, improvement and the like made within the spirit and principle of the present application shall be included in the protection scope of the present application. It should be noted that: like reference numbers and letters refer to like items in the following figures, and thus, once an item is defined in one figure, it need not be further defined and explained in subsequent figures.

The above description is only for the specific embodiments of the present application, but the scope of the present application is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present application, and shall be covered by the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.

It is noted that, herein, relational terms such as first and second, and the like may be used solely to distinguish one entity or action from another entity or action without necessarily requiring or implying any actual such relationship or order between such entities or actions. Also, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other identical elements in a process, method, article, or apparatus that comprises the element.

17页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:梯度打印三维结构部件

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!