Material reduction cutting method and system for preprocessing rotating body

By generating polygonal machining shells and optimizing the sampling scheme of rotating bodies, the problem of machining multiple rotating bodies from a single cylindrical blank is solved, efficient and safe rotating body processing is achieved, and material costs are reduced.

CN120355019APending Publication Date: 2025-07-22SHANDONG UNIV
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510448035.X
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-10
Publication Date
2025-07-22

AI Technical Summary

Technical Problem

The prior art lacks effective methods to efficiently process multiple rotating objects from a single cylindrical blank, and cannot meet the requirements of high-density sampling, processing accessibility guarantee and removable manufacturing.

Method used

By obtaining the size and shape of the cylindrical blank and the rotary body, a two-dimensional arrangement area is generated, the polygon of the rotary body can be determined, and the arrangement scheme can be optimized using the beam search method to generate a tool cutting path.

Benefits of technology

It improves raw material utilization, reduces material costs, improves the degree of automation and safety of the processing process, and ensures that the tool does not collide with the area to be processed.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120355019A_ABST
    Figure CN120355019A_ABST
Patent Text Reader

Abstract

The invention belongs to the field of part layout cutting, and provides a subtractive cutting method and system for preprocessing rotating bodies, and the method comprises the steps: obtaining the size of a cylindrical blank, the shape of each rotating body and the width of a cutter; a two-dimensional layout area is determined according to the size of the cylindrical blank, the shape of the rotating body is converted into two-dimensional representation, and a polygon of the rotating body is obtained; according to the width of the cutter and the polygon of the rotating body, determining a polygonal machinable shell of the rotating body under the condition that the cuttable constraint of a single rotating body is met; based on the polygonal machinable shell, searching in the two-dimensional layout area through a beam search method to obtain an optimal layout scheme of the polygonal machinable shell in the cylindrical blank; and generating a cutter cutting path according to the optimal layout scheme. On the premise that the machining feasibility is guaranteed, the utilization rate of raw materials can be increased to the maximum extent, and the material cost can be remarkably reduced; compared with a traditional cutting mode, the utilization rate of the blank is higher.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of part layout cutting, and specifically relates to a subtractive cutting method and system for preprocessing of rotating bodies. Background Technique

[0002] The statements in this part only provide background technical information related to the present invention, and do not necessarily constitute prior art.

[0003] In three-dimensional space, a solid figure formed by rotating a planar figure around a straight line in the same plane as the rotation axis is called a rotating body. Objects with the shape of a rotating body are applied in various fields, such as blanks of various shafts and gears in industrial manufacturing, bearing rings, daily necessities such as bottles, lamp shades, vases, and some three-dimensional elements in artistic creation.

[0004] For the processing of rotating body objects, specific processing methods are generally required. When processing by subtractive manufacturing, generally a cylindrical blank is cut or sliced. The cylindrical blank is fixed on a machine tool, and the central axis of the blank coincides with the rotation axis of the machine tool. During processing, the machine tool drives the blank to rotate at high speed, and the cutting tool performs subtractive processing on the rotating blank. Currently, the research on subtractive manufacturing mainly focuses on rough machining or finish machining from a single blank to a single object, lacking research on the processing process from a single blank to multiple objects. Moreover, the subtractive cutting for cutting a three-dimensional rotating body from a cylindrical blank cannot meet the requirements of high-density layout, ensuring machining accessibility, detachable manufacturing, etc. Summary of the Invention

[0005] To solve the above problems, the present invention proposes a subtractive cutting method and system for preprocessing of rotating bodies. For the dimensions of a cylindrical blank and the shapes and dimensions of multiple rotating bodies given by the user, after generating the cuttable outer shells of each rotating body, these outer shells are arranged in the internal space of the blank to meet the cuttable constraints, and finally a straight tool cutting path for cutting out these outer shells is generated.

[0006] According to some embodiments, the first solution of the present invention provides a subtractive cutting method for preprocessing of rotating bodies, adopting the following technical solution:

[0007] A subtractive cutting method for preprocessing of rotating bodies, comprising:

[0008] Obtaining the dimensions of the cylindrical blank, the shapes of each rotating body, and the tool width;

[0009] Determining a two-dimensional layout area according to the dimensions of the cylindrical blank, converting the shape of the rotating body into a two-dimensional representation, and obtaining the polygon of the rotating body;

[0010] Determine the machinable shell of the polygon of the rotating body according to the tool width and the polygon of the rotating body, under the condition of satisfying the cutting constraint of a single rotating body;

[0011] Based on the machinable shell of the polygon, search in the two-dimensional nesting area by the beam search method to obtain the optimal nesting scheme of the machinable shell of the polygon in the cylindrical blank;

[0012] Generate the tool cutting path according to the optimal nesting scheme.

[0013] Furthermore, the size of the cylindrical blank is determined according to the bottom radius and height of the cylindrical blank;

[0014] The shape of the rotating body is a three-dimensional geometric body formed by a polygon rotating around the rotation axis for one week.

[0015] Furthermore, determining the two-dimensional nesting area according to the size of the cylindrical blank, converting the shape of the rotating body into a two-dimensional representation to obtain the polygon of the rotating body, specifically:

[0016] Take the central axis of the cylindrical blank as the y-axis, with the center of the bottom circle as the origin, and the part of the whole cylindrical blank with non-negative y coordinates to obtain a rectangular representation on the XY plane with the bottom diameter and height of the cylindrical blank, that is, the two-dimensional nesting area;

[0017] Align the rotation axis of the rotating body with the central axis of the cylindrical blank so that the whole rotating body is in the part with non-negative y coordinates, and obtain two polygons symmetric about the y-axis of each rotating body on the XY plane.

[0018] Furthermore, determining the machinable shell of the polygon of the rotating body according to the tool width and the polygon of the rotating body, under the condition of satisfying the cutting constraint of a single rotating body, specifically:

[0019] Take half of the tool width as the offset distance of the boundary of the polygon of the rotating body to determine the initial shell of the polygon of each rotating body;

[0020] Classify each edge of the initial polygon shell according to whether it is machinable;

[0021] Find the vertex sequence on the initial polygon shell, and determine whether it is machinable between the vertices in the vertex sequence according to the classification result to obtain the sequence of non-machinable edges;

[0022] Based on the sequence of non-machinable edges, find the midpoint on each broken line formed by the non-machinable edges as the new vertex of the initial polygon shell to obtain a new polygon shell. If the new polygon shell contains the initial polygon shell, then judge that this midpoint is a feasible midpoint;

[0023] If no feasible intermediate point can be found on the broken line formed by each non - machinable edge, determine the moving vertex and moving direction based on whether the ray from the starting point to the second point in the vertex sequence intersects the interior of the initial polygon hull and the polygon that is symmetric to the initial polygon hull about the y - axis;

[0024] Perform a step - sized movement based on the moving vertex and moving direction. After each vertex movement, search for a feasible intermediate point until a feasible intermediate point is found and the movement stops;

[0025] Repeat the search for the intermediate point until no non - machinable edge sequence can be found in the vertex sequence, obtaining all the cuttable edges and forming the polygon machinable hull of the rotating body.

[0026] Furthermore, based on the polygon machinable hull, search in the two - dimensional nesting area through the beam search method to obtain the optimal nesting scheme of the polygon machinable hull in the cylindrical blank, specifically:

[0027] Sort all the polygon machinable hulls of the rotating bodies in ascending order of the x - coordinate of the mid - point of the AABB bounding box;

[0028] Based on the blank layout in the two - dimensional nesting area where no polygon machinable hull is arranged, as the initial node of the beam search, and the remaining nodes represent the cuttable machining layouts where one or more polygon machinable hulls are arranged in the two - dimensional nesting area;

[0029] For any node of the layout to be expanded in the two - dimensional nesting area, select the polygon machinable hull with the highest priority among all the polygon machinable hulls that have not been placed in the current layout corresponding to the node, and add it to the current layout of the layout node to be expanded; if it can be successfully added to the current layout and the machinability of the polygon machinable hulls in the layout can be maintained, generate the corresponding new node, add the new node to the next layer of the search tree, until a set number of new nodes are expanded or all the unplaced polygon machinable hulls have been enumerated, and the node of the current layout to be expanded stops expanding. Repeat this process for each node of the layout to be expanded;

[0030] After the search tree expansion is completed, from all the nodes where the polygon machinable hulls are successfully placed, that is, the nodes in the (n + 1) - th layer of the search tree, with the number of rotating bodies being n, select the node with the highest score as the optimal solution, and the node layout of the optimal solution as the optimal nesting scheme of the polygon machinable hull in the cylindrical blank.

[0031] Furthermore, generating the tool cutting path according to the optimal nesting scheme is specifically as follows:

[0032] Rotate the optimal nesting scheme one week around the y - axis to obtain a three - dimensional arrangement of the rotating body hulls;

[0033] Determine the cutting processing order of the rotating body shell by adding the layout order to the initial shell of the polygon based on the three-dimensional rotating body;

[0034] According to the cutting processing order, for each edge of the two-dimensional polygon shell corresponding to the rotating body shell, select a parallel ray of this edge as the cutting ray with the requirement of no collision with the interior of any polygon shell to be cut;

[0035] When cutting the rotating body surface corresponding to this edge, the cutting tool starts from the intersection of the cutting ray and the blank, rotates one week around the y-axis, and then feeds in the reverse direction of the cutting ray with a set step;

[0036] Repeat rotation and feeding until this surface is completely divided.

[0037] According to some embodiments, the second solution of the present invention provides a subtractive cutting system for preprocessing a rotating body, and adopts the following technical solution:

[0038] A subtractive cutting system for preprocessing a rotating body, comprising:

[0039] A data acquisition module configured to acquire the dimensions of the cylindrical blank, the shapes of each rotating body, and the tool width;

[0040] A two-dimensional conversion module configured to determine a two-dimensional nesting area according to the dimensions of the cylindrical blank, convert the shape of the three-dimensional rotating body into a two-dimensional representation, and obtain the polygon of the rotating body;

[0041] A polygon machinable shell determination module configured to determine the machinable shell of the polygon of the rotating body under the condition of satisfying the cutting constraint of a single rotating body according to the tool width and the polygon of the rotating body;

[0042] An optimal nesting scheme determination module configured to search in the two-dimensional nesting area through a beam search method based on the machinable shell of the polygon to obtain the optimal nesting scheme of the machinable shell of the polygon in the cylindrical blank;

[0043] A straight tool cutting path generation module configured to generate a tool cutting path according to the optimal nesting scheme.

[0044] According to some embodiments, the third solution of the present invention provides a computer-readable storage medium.

[0045] A computer-readable storage medium, on which a computer program is stored, and when the program is executed by a processor, the steps in a subtractive cutting method for preprocessing a rotating body as described in the first aspect above are implemented.

[0046] According to some embodiments, the fourth solution of the present invention provides a computer device.

[0047] A computer device includes a memory, a processor, and a computer program stored on the memory and executable on the processor. When the processor executes the program, it implements the steps in a subtractive cutting method for preprocessing a rotating body as described in the first aspect above.

[0048] According to some embodiments, a fifth aspect of the present invention provides a computer program product or a computer program.

[0049] The present invention provides a computer program product or a computer program. The computer program product or the computer program includes computer instructions stored in a computer-readable storage medium. The processor of the computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, causing the computer device to execute the steps in a subtractive cutting method for preprocessing a rotating body as described in the first aspect above.

[0050] Compared with the prior art, the beneficial effects of the present invention are as follows:

[0051] The present invention proposes a method for subtractive processing of a single cylindrical blank with a straight cutter to produce multiple rotating bodies. By introducing the concept of a machinable roughened outer shell, preprocessing is performed on each three-dimensional rotating body object to generate a geometric shape suitable for machining. It can maximize the utilization rate of raw materials while ensuring machining feasibility, significantly reduce material costs, and has a higher utilization rate of the blank compared to traditional cutting methods.

[0052] The present invention can automatically generate tool paths and machining sequences to ensure that three-dimensional rotating body objects can be smoothly separated from the raw material without manual intervention, improving the automation degree and production efficiency of the machining process.

[0053] The present invention takes into account the accessibility constraints of the tool. By reasonably planning the placement position of the three-dimensional rotating body object, it ensures that the tool does not collide with the area to be machined, improving the reliability and safety of the machining process. BRIEF DESCRIPTION OF THE DRAWINGS

[0054] The specification drawings forming a part of the present invention are used to provide a further understanding of the present invention. The schematic embodiments of the present invention and their descriptions are used to explain the present invention and do not constitute an improper limitation of the present invention.

[0055] Figure 1 It is a schematic diagram of the process of preprocessing a cylindrical blank in an embodiment of the present invention;

[0056] Figure 2 It is a flowchart of a subtractive cutting method for preprocessing a rotating body in an embodiment of the present invention;

[0057] Figure 3Schematic diagram of the machinability of the two-dimensional polygon housing in the embodiments of the present invention, where (a) is an example diagram of a non-machinable edge, (b) is an example diagram of a bidirectionally machinable edge, (c) is an example diagram of a unidirectionally machinable edge, and (d) is a schematic diagram showing the machinability of each edge of the polygon housing;

[0058] Figure 4 Schematic of the process of finding the midpoint in the non-machinable edge sequence in the embodiments of the present invention Figure 1 , where (a) is a schematic diagram of the polygon housing, (b) is a schematic diagram of the non-machinable edge sequence, and (c) is an example schematic diagram of a feasible midpoint;

[0059] Figure 5 Schematic of the process of finding the midpoint in the non-machinable edge sequence in the embodiments of the present invention Figure 2 , where (a) is a schematic diagram of the non-machinable edge sequence, (b) is a schematic diagram showing that no feasible midpoint can be found in step (3-4) in this case, and (c) is a schematic diagram of the feasible midpoint found in step (3-5) in this case;

[0060] Figure 6 Schematic diagram of the beam search process in the embodiments of the present invention;

[0061] Figure 7 Diagram showing the calculation results of step 4 in the embodiments of the present invention;

[0062] Figure 8 Diagram showing some manufacturing results in the embodiments of the present invention. Detailed implementation manners

[0063] The present invention will be further described below in conjunction with the accompanying drawings and embodiments.

[0064] It should be noted that the following detailed description is exemplary and is intended to provide further explanation of the present invention. Unless otherwise specified, all technical and scientific terms used herein have the same meaning as commonly understood by those of ordinary skill in the technical field to which the present invention belongs.

[0065] It should be noted that the terms used herein are only for describing specific implementation manners and are not intended to limit the exemplary embodiments according to the present invention. As used herein, unless the context clearly indicates otherwise, the singular form is also intended to include the plural form. In addition, it should be understood that when the terms "comprising" and / or "including" are used in this specification, they indicate the presence of features, steps, operations, devices, components, and / or combinations thereof.

[0066] In the case of no conflict, the embodiments in the present invention and the features in the embodiments can be combined with each other.

[0067] Embodiment 1

[0068] This embodiment provides a subtractive cutting method for preprocessing a rotating body. Taking the application of this method to a server as an example, it can be understood that this method can also be applied to a terminal, and can also be applied to a system including a terminal and a server, and is realized through the interaction between the terminal and the server. The server can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, web servers, cloud communications, middleware services, domain name services, security services CDN, and big data and artificial intelligence platforms. The terminal can be a smart phone, a tablet computer, a laptop computer, a desktop computer, a smart speaker, a smart watch, etc., but is not limited thereto. The terminal and the server can be directly or indirectly connected through wired or wireless communication methods, and this application does not make any restrictions here. In this embodiment, the method includes the following steps:

[0069] Obtain the dimensions of the cylindrical blank, the shapes of each rotating body, and the tool width;

[0070] Determine the two-dimensional nesting area according to the dimensions of the cylindrical blank, convert the shape of the rotating body into a two-dimensional representation, and obtain the polygon of the rotating body;

[0071] According to the tool width and the polygon of the rotating body, under the condition of satisfying the cuttable constraint of a single rotating body, determine the machinable shell of the polygon of the rotating body;

[0072] Based on the machinable shell of the polygon, search in the two-dimensional nesting area through the beam search method to obtain the optimal nesting scheme of the machinable shell of the polygon in the cylindrical blank;

[0073] Generate a tool cutting path according to the optimal nesting scheme.

[0074] As Figure 1 shown, a process of preprocessing a cylindrical blank is demonstrated. The cylindrical blank fixed on the machine tool rotates at a high speed. Each time the straight tool cuts, it penetrates the blank along a straight line for cutting, separating one surface of the rotating body from the blank. When all the surfaces of the rotating body are separated from the blank, the entire rotating body is separated from the blank.

[0075] As Figure 2 shown, the method of this embodiment specifically includes the following steps:

[0076] Step (1): The user inputs the dimensions of the cylindrical blank, the shapes of each rotating body, and the tool width.

[0077] Step (2): Convert the cylindrical blank and the rotating body into rectangular and polygonal representations respectively, to obtain the two-dimensional nesting area and the polygon of the rotating body.

[0078] Step (3): Edit the shape of the polygon to obtain a two-dimensional machinable shell, such that the corresponding three-dimensional rotational body shell satisfies the cutting constraints of a single rotational body.

[0079] Step (4): By using the Beam Search method, obtain the optimal nesting scheme of the rotational body shell in the blank.

[0080] Step (5): Generate a straight knife cutting path according to the nesting scheme.

[0081] Next, each step in the method of this embodiment will be specifically described:

[0082] Step (1): The user inputs the dimensions of the cylindrical blank, the shapes of each rotational body, and the tool width, which mainly includes the following steps:

[0083] Step (1-1): The user inputs the bottom radius R raw and height H raw of the cylindrical blank to determine the dimensions of the cylindrical blank.

[0084] Step (1-2): The user inputs the shapes of each rotational body. The rotational body is a geometric body that is axisymmetric about a central axis. The three-body input accepted by the system is a three-dimensional model of a single connected component, which can be represented as a three-dimensional geometric body formed by rotating a simple polygon around the rotation axis for one week.

[0085] Step (1-3): The user inputs the width W tool of the tool.

[0086] Step (2): Respectively convert the cylindrical blank and the rotational body into a rectangle and a polygon to obtain the two-dimensional nesting area and the polygon of the rotational body, which mainly includes the following steps:

[0087] Step (2-1): Represent the cylindrical blank with a rectangle in the two-dimensional plane. Taking the central axis of the blank as the y-axis and the center of the bottom circle as the origin, the whole part of the cylindrical blank where the y coordinate is non-negative. Under these premises, the part of the cylindrical blank in the XY plane is a rectangular area [-R raw , R raw × [0, H raw , that is, the two-dimensional nesting area. The cylindrical blank is represented as a three-dimensional geometric body obtained by rotating this rectangle around the y-axis, and the subsequent nesting is carried out within this rectangular area.

[0088] Step (2-2): Represent each rotational body O1, O2, …, O n with a polygon in the two-dimensional plane, that is, the polygon of the rotational body Align the rotation axis of the rotating body with the central axis of the blank so that the entire rotating body is in the part where the y - coordinate is non - negative. Under these premises, the part of each rotating body on the XY plane is two simple polygons symmetrical about the y - axis. The rotating body is represented as a three - dimensional geometric body obtained by rotating the polygon in the first quadrant around the y - axis for one week.

[0089] Subsequent nesting will determine the machinable shell of these polygons in the two - dimensional nesting area [-R raw , R raw ×[0, H raw to obtain the final layout.

[0090] Step (3): Edit the shape of the polygon to obtain a two - dimensional machinable shell so that the corresponding three - dimensional rotating - body shell satisfies the cut - able constraints of a single rotating body, mainly including the following steps:

[0091] Step (3 - 1): According to the tool width W tool determine the initial shell of each polygon where i = 1,..., n. That is, offset the boundary of the polygon

[0092] to obtain the initial shape of the initial shell . The offset distance is half of the tool width, that is, W / 2. This step ensures that when the mid - point of the tool cuts along the shell boundary, the original shape of the rotating body will not be damaged. tool / 2. This step ensures that when the mid - point of the tool cuts along the shell boundary, the original shape of the rotating body will not be damaged.

[0093] Step (3 - 2): For each initial shell of the polygon classify each of its edges as cut - able or not. The machining path of a straight - edge tool is represented by a ray in the two - dimensional plane. The endpoint of this ray is within the two - dimensional nesting area [-R raw , R raw ×[0, H raw . An edge of the initial shell of the polygon is cut - able if it meets the following conditions, otherwise it is non - cut - able:

[0094] There exists a ray whose endpoint coincides with one of the two endpoints of the edge and whose direction is parallel to this edge, and the ray does not intersect the interior of the initial shell of the polygon and the polygon symmetrical about the y - axis.

[0095] As Figure 3 (a) shows, it is an example of a non - cut - able edge: rays and ray Both intersect with the interior of the polygon, so the edge (v3, v4) is non - machinable.

[0096] As Figure 3 (b) and Figure 3 (c) show, they are examples of machinable edges: The ray and the ray do not intersect with the interior of the polygon, so the edge (v6, v7) is machinable. The ray does not intersect with the interior of the polygon, so the edge (v4, v5) is machinable.

[0097] Step (3 - 3): As Figure 4 (a) shows, after classifying each edge, find the vertex sequence {v start , v i , v i+1 …, v j-1 , v j , v end} on the initial polygon hull, where the edges (v start , v i ) and the edge (v n , v end ) are machinable, and the other edges (v k , v k+1 )(i ≤ k ≤ j - 1) are non - machinable. {v i , v i+1 …, v j-1 , v j} forms a non - machinable edge sequence, and v start and v end participate in the optimization calculation of the next step as key points. As Figure 4 (b) shows, {v2, v3, v4} is an example of a non - machinable edge sequence.

[0098] Step (3 - 4): As Figure 5 (a) shows, after finding the non - machinable edge sequence, eliminate the non - machinable edges in it. Find an intermediate point p k k+1 on the broken line composed of (v inter ), and use p inter as a new vertex of the initial polygon hull , replacing the vertices v i , v i+1 …, v j-1 , v j , to obtain a new polygon hull If Cutting it out at this time will not damage ​​​If the shape of p inter is a feasible intermediate point. As Figure 4 (c) shows, an example of finding a feasible intermediate point p in {v2, v3, v4} is presented. inter Example.

[0099] After finding the feasible intermediate point p inter , replace the original polygon initial hull with the new polygon hull If there are multiple feasible intermediate points, select the intermediate point that minimizes the area.

[0100] Steps (3 - 5): In some cases, no feasible intermediate point can be found in step (3 - 4), as shown in Figure 5 (b). At this time, according to the characteristics of the polygon initial hull near the edge (v start , v i ), move the point v start or the point v i : If the ray does not intersect the interior of the polygon initial hull and the polygon symmetric about the y - axis of , then move the vertex v i along the direction; otherwise, the ray must not intersect the interior of the polygon initial hull and the polygon symmetric about the y - axis of at this time, move v start along .

[0101] Steps (3 - 6): After determining the vertex to be moved and the moving direction in step (3 - 5), move the vertex continuously with a small step size l step . After each vertex movement, find the feasible intermediate point p inter according to step (3 - 4). If a feasible intermediate point is found, abort the vertex movement; otherwise, continue to move the vertex. As shown in Figure 5 (c), an example of the feasible intermediate point found after moving the vertex is presented.

[0102] Steps (3 - 7): Repeat steps (3 - 3) to (3 - 6) until no non - machinable edge sequence can be found in step (3 - 3), that is, until there is no non - machinable edge in the polygon initial hull , and obtain all the cut - able edges to form the polygon machinable hull of the solid of revolution

[0103] Step (4): Obtain the optimal nesting plan of the rotary body shell in the blank by the Beam Search method, which mainly includes the following steps:

[0104] Step (4-1): Sort all the polygonal machinable shells of the rotary bodies in ascending order of the x coordinate of the midpoint of the AABB bounding box. This is to give priority to cutting from the shell with a larger x coordinate in the subsequent beam search.

[0105] Step (4-2): Generate the initial node of the beam search.

[0106] The initial node represents a blank layout in the two-dimensional nesting area [-R raw , R raw ×[0, H raw where no polygonal machinable shells are arranged. Each node of the beam search except the initial node represents a cuttable machining layout in the two-dimensional nesting area [-R raw , R raw ×[0, H raw where one or more polygonal machinable shells are arranged.

[0107] Step (4-3): Expansion of the nodes in the beam search.

[0108] For a node of the layout to be expanded, each time it is expanded, select the polygonally machinable shell with the highest priority among all the polygonally machinable shells that have not been placed in the layout corresponding to the current node and try to add it to the current layout. If it can be successfully added to the current layout and the machinability of the polygonally machinable shells in the layout can be maintained, a corresponding new node is generated and added to the next layer of the search tree. After a node of the layout to be expanded successfully expands N beam new nodes (N beam is a manually specified parameter), or after all the polygonally machinable shells that have not been placed are enumerated, the node of the current layout to be expanded stops expanding, and this process is repeated for each node of the layout to be expanded. The layout corresponding to the node on the kth layer of the finally obtained search tree contains k-1 polygonal shells. If the number of input rotary bodies is n, then the layout corresponding to the node on the (n+1)th layer is the finally output candidate layout. The process of the beam search is as

[0109] shown. Figure 6 shown.

[0110] Step (4-3-1): Add to the layout corresponding to the node of the layout to be expanded to generate a new machinable layout, specifically as follows:

[0111] First, add Translate along the Y-axis to the lowest position of the two-dimensional nesting area [-R raw , R raw × [0, H raw , that is, the position where the minimum value of the y coordinate of the vertex of is 0. Then move step upward along the Y-axis step by step with a fixed small step size Y until there is no collision with the machinable shells of the polygons already placed in the layout to be expanded, and

[0112] there are no other machinable shells of polygons already placed directly above, to obtain the initial expanded layout of the new node. Next, judge the machinability of again. If the machinability is not met, the layout to be expanded with

[0113] added will be updated. At this time, the judgment condition for each edge to be machinable is: there exists a ray whose endpoint coincides with one of the two endpoints of the edge and whose direction is parallel to this edge, and the ray does not intersect the interior of the machinable shells of the polygons already placed in the initial expanded layout (including ). If there are non-machinable edges, according to the methods in steps (3-3) to (3-7) and the machinability judgment method of this step, eliminate

[0114] the non-machinable edges of Continue to move upward along the Y-axis with step size Y step step by step, and repeat the above operation of eliminating non-machinable edges until the non-machinable edges are successfully eliminated, then adding to the layout to be expanded is successful;

[0115] Or, translate to outside the two-dimensional nesting area [-R raw , R raw × [0, H raw , adding to the layout to be expanded fails.

[0116] Step (4-3-2): Scoring of nodes in beam search.

[0117] When generating each new node, the corresponding polygon layout will be scored. The calculation formula is:

[0118] Score = y max / H raw

[0119] Among them, H raw is the height of the raw material, and y max is the maximum Y coordinate of all the vertices of the polygon shells in the current layout. The higher the score, the more compact the layout (the lower the total height).

[0120] Step (4-3-3): Node screening in beam search.

[0121] After the node expansion of all the layouts to be expanded in a certain layer is completed, among the new nodes in the next layer, only the top W beam new nodes with the highest scores are retained, and the remaining new nodes are eliminated to accelerate the convergence rate of the search space.

[0122] Step (4-4): Output of the final result of beam search, as Figure 7 shown. After the search tree expansion is completed, among the nodes where all the polygon shells are successfully placed, that is, the nodes in the (n + 1)-th layer, the node with the highest score is selected as the optimal solution, and the node layout of the optimal solution is used as the optimal nesting scheme of the polygon machinable shell in the cylindrical blank. Subsequent 3D layout and machining path generation are carried out according to this arrangement.

[0123] Step (5): Generate the tool cutting path according to the optimal nesting scheme, which mainly includes the following steps:

[0124] Step (5-1): Generate a 3D rotational body arrangement.

[0125] The optimal nesting scheme output in Step (4) is the arrangement result of the polygon shells in the 2D plane. Rotating it around the y-axis for one week can obtain the 3D rotational body shell arrangement C1, C2,..., C n .

[0126] Step (5-2): Determine the cutting processing sequence of the rotational body shells.

[0127] Suppose in the beam search of Step (4), the polygon machinable shells are added to the layouts to be expanded in the order of , then the rotational body shells are cut in the order of C n , C n-1 ,..., C1.

[0128] Step (5-3): Generate the tool path of each rotational body shell in sequence according to the cutting processing sequence.

[0129] For the rotational body shell C i , each side (v , v start , v end ) of its corresponding 2D polygon machinable shell and There is at least one ray that does not collide with the interior of any polygon housing to be cut, and such a ray is used as the cutting ray for this edge. The cutting edge (v start , v end ) When corresponding to the rotating body surface, the cutting tool starts from the intersection of the cutting ray and the blank, rotates one week around the y-axis, and then advances a small step along the reverse direction of the cutting ray. Repeat rotation and advancement until this surface is divided. As Figure 8 shown, the partial manufacturing result after cutting using the method described in this embodiment.

[0130] It can be understood that the cutting tool in this embodiment is a straight tool.

[0131] Embodiment 2

[0132] This embodiment provides a subtractive cutting system for preprocessing a rotating body, including:

[0133] A data acquisition module configured to acquire the dimensions of a cylindrical blank, the shapes of each rotating body, and the cutting tool width;

[0134] A two-dimensional conversion module configured to determine a two-dimensional nesting area according to the dimensions of the cylindrical blank, convert the shape of the three-dimensional rotating body into a two-dimensional representation, and obtain the polygon of the rotating body;

[0135] A polygon machinable housing determination module configured to determine a polygon machinable housing of the rotating body under the condition of satisfying the cutting constraint of a single rotating body according to the cutting tool width and the polygon of the rotating body;

[0136] An optimal nesting scheme determination module configured to search in the two-dimensional nesting area through a beam search method based on the polygon machinable housing to obtain an optimal nesting scheme of the polygon machinable housing in the cylindrical blank;

[0137] A straight tool cutting path generation module configured to generate a cutting path of the cutting tool according to the optimal nesting scheme.

[0138] The examples and application scenarios implemented by the above modules and the corresponding steps are the same, but are not limited to the content disclosed in the above Embodiment 1. It should be noted that the above modules, as a part of the system, can be executed in a computer system such as a set of computer executable instructions.

[0139] In the above embodiments, the descriptions of each embodiment have their own emphases. For parts not detailed in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0140] The proposed system can be implemented in other ways. For example, the system embodiments described above are merely illustrative. For example, the division of the above-mentioned modules is only a logical function division. In actual implementation, there may be other division methods. For example, multiple modules can be combined or integrated into another system, or some features can be ignored or not executed.

[0141] Embodiment 3

[0142] This embodiment provides a computer-readable storage medium, on which a computer program is stored. When the program is executed by a processor, it implements the steps in a subtractive cutting method for preprocessing a rotating body as described in Embodiment 1 above.

[0143] Embodiment 4

[0144] This embodiment provides a computer device, including a memory, a processor, and a computer program stored on the memory and executable on the processor. When the processor executes the program, it implements the steps in a subtractive cutting method for preprocessing a rotating body as described in Embodiment 1 above.

[0145] Embodiment 5

[0146] This embodiment provides a computer program product or a computer program. The computer program product or the computer program includes computer instructions, which are stored in a computer-readable storage medium. The processor of the computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes the steps in a subtractive cutting method for preprocessing a rotating body as described in Embodiment 1 above.

[0147] Those skilled in the art should understand that the embodiments of the present invention can be provided as a method, a system, or a computer program product. Therefore, the present invention can take the form of a hardware embodiment, a software embodiment, or an embodiment combining software and hardware aspects. Moreover, the present invention can take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage and optical storage, etc.) containing computer-usable program code.

[0148] The present invention is described with reference to the flowcharts and / or block diagrams of methods, apparatuses (systems), and computer program products according to embodiments of the present invention. It should be understood that each flow and / or block in the flowchart and / or block diagram, as well as the combination of flows and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to the processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing devices to generate a machine, such that the instructions executed by the processor of the computer or other programmable data processing devices produce a means for implementing the functions specified in one process Figure 1 one process or multiple processes and / or blocks Figure 1 or multiple blocks.

[0149] These computer program instructions can also be stored in a computer-readable memory that can direct a computer or other programmable data processing device to work in a specific manner, such that the instructions stored in the computer-readable memory produce a manufactured article including an instruction means that implements the functions specified in one process Figure 1 one process or multiple processes and / or blocks Figure 1 or multiple blocks.

[0150] These computer program instructions can also be loaded onto a computer or other programmable data processing device, such that a series of operating steps are executed on the computer or other programmable device to generate a computer-implemented process, and thus the instructions executed on the computer or other programmable device provide steps for implementing the functions specified in one process Figure 1 one process or multiple processes and / or blocks Figure 1 or multiple blocks.

[0151] Those of ordinary skill in the art can understand that to implement all or part of the processes in the above-described embodiment methods, it can be completed by instructing relevant hardware through a computer program. The program can be stored in a computer-readable storage medium. When the program is executed, it can include the processes of the above-described method embodiments. Among them, the storage medium can be a magnetic disk, an optical disk, a read-only memory (ROM), or a random access memory (RAM), etc.

[0152] Although the specific implementation manners of the present invention are described above in conjunction with the accompanying drawings, it is not a limitation on the protection scope of the present invention. Those skilled in the art should understand that based on the technical solutions of the present invention, various modifications or deformations that can be made by those skilled in the art without creative efforts are still within the protection scope of the present invention.

Claims

1. A subtractive cutting method for preprocessing a rotating body, characterized in that, Including: Obtain the dimensions of the cylindrical blank, the shapes of each rotating body, and the tool width; Determine the two-dimensional nesting area according to the dimensions of the cylindrical blank, convert the shape of the rotating body into a two-dimensional representation, and obtain the polygon of the rotating body; Determine the machinable shell of the polygon of the rotating body according to the tool width and the polygon of the rotating body under the condition of satisfying the cuttable constraint of a single rotating body; Based on the machinable shell of the polygon, search in the two-dimensional nesting area by the beam search method to obtain the optimal nesting scheme of the machinable shell of the polygon in the cylindrical blank; Generate the tool cutting path according to the optimal nesting scheme.

2. A subtractive cutting method for preprocessing a rotating body according to claim 1, characterized in that The dimensions of the cylindrical blank are determined according to the bottom radius and height of the cylindrical blank; The shape of the rotating body is a three-dimensional geometric body formed by a polygon rotating one week around the rotation axis.

3. A subtractive cutting method for preprocessing a rotating body according to claim 1, characterized in that The determination of the two-dimensional nesting area according to the dimensions of the cylindrical blank, the conversion of the shape of the rotating body into a two-dimensional representation, and the obtaining of the polygon of the rotating body are specifically as follows: Take the central axis of the cylindrical blank as the y-axis, with the center of the bottom circle as the origin, and the part of the whole cylindrical blank with non-negative y coordinates to obtain a rectangular representation of the bottom diameter and height of the cylindrical blank in the XY plane, that is, the two-dimensional nesting area; Align the rotation axis of the rotating body with the central axis of the cylindrical blank so that the whole rotating body is in the part with non-negative y coordinates to obtain two polygons symmetric about the y-axis of each rotating body in the XY plane.

4. A subtractive cutting method for preprocessing a rotating body according to claim 1, characterized in that, The determination of the machinable shell of the polygon of the rotating body according to the tool width and the polygon of the rotating body under the condition of satisfying the cuttable constraint of a single rotating body is specifically as follows: Take half of the tool width as the offset distance of the boundary of the polygon of the rotating body to determine the initial shell of the polygon of each rotating body; Classify each side of the initial shell of the polygon according to whether it is machinable; Find the vertex sequence on the initial shell of the polygon, and determine whether it is machinable between the vertices in the vertex sequence according to the classification result to obtain the sequence of non-machinable edges; Based on the sequence of non-machinable edges, find the midpoint on each broken line composed of non-machinable edges as the new vertex of the initial shell of the polygon to obtain the new polygon shell. If the new polygon shell contains the initial shell of the polygon, then determine that the midpoint is a feasible midpoint; If no feasible midpoint can be found on each broken line composed of non-machinable edges, then determine the moving vertex and the moving direction according to whether the ray from the starting point to the second point in the vertex sequence intersects the interior of the initial shell of the polygon and the polygon symmetric about the y-axis of the initial shell of the polygon; Make a move with a set step length based on the moving vertex and the moving direction. Each time the vertex is moved, search for a feasible midpoint until a feasible midpoint is found and the movement stops; Repeat searching for the midpoint until no sequence of non-machinable edges can be found in the vertex sequence, obtain all cuttable edges and form the machinable shell of the polygon of the rotating body.

5. A subtractive cutting method for preprocessing a rotating body according to claim 1, characterized in that Based on the machinable shell of the polygon, search in the two-dimensional nesting area by the beam search method to obtain the optimal nesting scheme of the machinable shell of the polygon in the cylindrical blank, specifically as follows: Sort the machinable shells of the polygons of all rotating bodies in ascending order of the x coordinate of the midpoint of the AABB bounding box; Based on the blank layout in the two-dimensional nesting area where no polygonal machinable shell is arranged, as the initial node of the beam search, the remaining nodes represent the cuttable machining layouts with one or more polygonal machinable shells arranged in the two-dimensional nesting area; For any node of the layout to be expanded in the two-dimensional nesting area, select the polygonally machinable shell with the highest priority among all the polygonally machinable shells that have not been placed in the layout corresponding to the current node, and add it to the current layout of the layout node to be expanded; if it can be successfully added to the current layout and the machinability of the polygonally machinable shells within the layout can be maintained, a corresponding new node is generated, and this new node is added to the next layer of the search tree until a set number of new nodes are expanded or all the unplaced polygonally machinable shells have been enumerated, then the expansion of the current node of the layout to be expanded stops, and this process is repeated for each node of the layout to be expanded; After the search tree expansion is completed, from all the nodes where the polygonally machinable shells are successfully placed, that is, the nodes in the (n + 1)-th layer of the search tree, when the number of rotating bodies is n, select the node with the highest score as the optimal solution, and the node layout of the optimal solution is used as the optimal nesting scheme of the polygonally machinable shells in the cylindrical blank.

6. A subtractive cutting method for preprocessing a rotating body as claimed in claim 1, characterized in that, The generation of the tool cutting path according to the optimal nesting scheme is specifically as follows: Rotate the optimal nesting scheme around the y-axis for one week to obtain a three-dimensional arrangement of the rotating body shells; Based on the order in which the initial polygonal shells of the three-dimensional rotating body are added to the layout, determine the cutting and machining order of the rotating body shells; According to the cutting and machining order, for each edge of the two-dimensional polygonal shell corresponding to the rotating body shell, select a parallel ray of this edge as the cutting ray with the requirement of no collision with the interior of any polygonal shell to be cut; When cutting the rotating body surface corresponding to this edge, the tool starts from the intersection point of the cutting ray and the blank, rotates around the y-axis for one week, and then feeds in the reverse direction of the cutting ray by a set step; Repeat the rotation and feeding until this surface is completely segmented.

7. A subtractive cutting system for preprocessing a rotating body, characterized in that, It includes: A data acquisition module configured to acquire the dimensions of the cylindrical blank, the shapes of each rotating body, and the tool width; A two-dimensional conversion module configured to determine the two-dimensional nesting area according to the dimensions of the cylindrical blank, and convert the shape of the three-dimensional rotating body into a two-dimensional representation to obtain the polygon of the rotating body; A polygonally machinable shell determination module configured to determine the polygonally machinable shell of the rotating body under the condition of satisfying the cuttable constraint of a single rotating body according to the tool width and the polygon of the rotating body; An optimal nesting scheme determination module configured to search in the two-dimensional nesting area by the beam search method based on the polygonally machinable shell to obtain the optimal nesting scheme of the polygonally machinable shell in the cylindrical blank; A straight tool cutting path generation module configured to generate a tool cutting path according to the optimal nesting scheme.

8. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the program is executed by a processor, it implements the steps in a subtractive cutting method for preprocessing rotating bodies as described in any one of claims 1 - 6.

9. A computer device, comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, characterized in that, When the processor executes the program, it implements the steps in a subtractive cutting method for preprocessing rotating bodies as described in any one of claims 1 - 6.

10. A computer program product, characterized in that, The computer program product includes a computer program which, when executed by a processor, implements the steps in a subtractive cutting method for pre-processing a rotating body as described in any one of claims 1-6.