Apparatus for generating processing path of three-dimensional object and operating method thereof

The method automatically generates five-axis machining paths for complex 3D objects, addressing inefficiencies in current technologies by optimizing tool movement and reducing material waste, thereby enhancing processing efficiency and reducing costs.

WO2025127385A1PCT designated stage expired Publication Date: 2025-06-19BOLT&NUT CO LTD

Patent Information

Application Number
PCT/KR2024/016389
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-12-15
Filing Date
2024-10-25
Publication Date
2025-06-19

AI Technical Summary

Technical Problem

Current 3D machining technologies face limitations in generating precise machining paths for complex shapes, leading to increased machining times, inefficient material use, and high energy consumption. Existing methods rely heavily on user expertise, are optimized for specific types of objects or processing techniques, and often result in material waste and high manufacturing costs.

Method used

A method for automatically generating a processing path for three-dimensional objects based on a five-axis basis, involving steps such as confirming the object model, analyzing cross-section characteristics, matching virtual tools, and generating a processing path that minimizes costs and optimizes tool movement.

Benefits of technology

The proposed solution increases efficiency in generating machining paths, reduces material waste, and lowers manufacturing costs by enabling precise and optimized processing paths for complex 3D objects, even for users without extensive expertise.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure KR2024016389_19062025_PF_FP_ABST
    Figure KR2024016389_19062025_PF_FP_ABST
Patent Text Reader

Abstract

A method for generating a processing path for a three-dimensional object according to various embodiments of the present application comprises the steps of: identifying a model representing a three-dimensional object; identifying plane characteristics for multiple cross-sections constituting a three-dimensional object; matching multiple virtual tools to perform processing on at least one group that groups multiple cross sections wherein the multiple virtual tools includes a virtual moving means for moving the three-dimensional object in at least one direction of the X axis, the Y axis, and the Z axis directions, a virtual rotation driving means for rotating the three-dimensional object about at least one of the A axis and the C axis, and at least one virtual processing tool; and generating a processing path of the multiple matched virtual processing tools.
Need to check novelty before this filing date? Find Prior Art

Description

Device for generating a processing path of a three-dimensional object and its operating method

[0001] The present invention relates to a method for generating a processing path of a three-dimensional object, and more particularly, to a device for generating a processing path of a three-dimensional object applicable to various manufacturing processes such as computer numerical control (CNC) processing, 3D printing, and laser cutting, and a control method thereof.

[0002] Machining 3D objects is an essential process in many industries, including aerospace, automotive, medical devices, architecture, and product design, especially in manufacturing. Especially when highly sophisticated and complex designs require realization, the creation of precise machining paths directly impacts the product's quality and functionality.

[0003] Current 3D machining technologies on the market face several limitations when generating machining paths for objects with complex geometries. These limitations lead to increased machining times, inefficient use of materials, and unnecessary energy consumption.

[0004] Most existing machining path generation methods are designed for simple and repetitive shapes, but when applied to complex 3D objects, they have problems such as low precision or excessively long machining times.

[0005] Current machining path generation processes rely heavily on the user's expertise and experience, which leads to inconsistencies and inaccessibility for beginners and non-experts.

[0006] Moreover, existing methods are often optimized for specific types of objects or processing techniques, making them difficult to apply to various industries or new types of 3D objects. Inefficient processing paths result in material waste, which leads to high manufacturing costs and negative impacts on the environment.

[0007] The present invention was invented to improve the above-mentioned problem, and can increase efficiency in generating machining estimates, etc. by automatically generating a machining path based on a 5-axis basis.

[0008] A method for generating a processing path for a three-dimensional object may include: a step of confirming a model representing the three-dimensional object; a step of confirming planar characteristics of a plurality of cross-sections constituting the three-dimensional object; a step of matching a plurality of virtual tools to perform processing on at least one group in which a plurality of cross-sections are grouped, wherein the plurality of virtual tools include a virtual moving means for moving the three-dimensional object in at least one direction of the X-axis, the Y-axis, and the Z-axis, a virtual rotation driving means for rotating the three-dimensional object about at least one of the A-axis and the C-axis, and at least one virtual processing tool; and a step of generating a processing path for the plurality of matched virtual processing tools.

[0009] In one embodiment, the method may include: a step of checking a point cloud of a three-dimensional object; a step of grouping a plurality of points in the point cloud and recognizing a cross-section formed by the plurality of points as a cross-section of the three-dimensional object; and a step of checking whether an object created by combining the recognized cross-sections matches the three-dimensional object.

[0010] In a method according to one embodiment, the method may include a step of grouping cross-sections that can be processed with a single processing tool into at least one group for a plurality of cross-sections; a step of dividing a processing area into at least one group and determining a processing path when grouping is possible; and a step of re-confirming the plurality of cross-sections and re-performing grouping when grouping is not possible.

[0011] In a method according to one embodiment, the step of grouping cross-sections that can be machined with a single machining tool into at least one group for a plurality of cross-sections may include the step of calculating a cost incurred when a virtual machining tool machines an adjacent cross-section; and the step of grouping adjacent cross-sections by generating a machining path that minimizes the cost incurred when machining the adjacent cross-sections.

[0012] In one embodiment, the method may include: a step of learning about a plurality of types of virtual processing tools and cross-sections that can be processed by the plurality of types of virtual processing tools by a processing judgment model learned by a deep learning technique; a step of inputting a three-dimensional object into the processing judgment model and determining an area among the plurality of cross-sections that cannot be processed by the plurality of virtual tools, wherein the impossibility of processing the cross-section means that the cross-section cannot be processed according to a processing angle of the virtual processing tools; a step of rotating the three-dimensional object so that the cross-section can be processed by the processing judgment model; and a step of generating a processing path by including the rotation of the three-dimensional object in the processing path.

[0013] In one embodiment, the method may include: a step of identifying threads and holes existing for each cross-section; a step of separating the identified threads and holes from each cross-section; and a step of determining and matching one of a plurality of movable tools to the separated threads and holes.

[0014] In one embodiment, the method may include: inputting a plurality of three-dimensional objects stored in a memory into a thread judgment model learned using a deep learning technique to learn the positions of threads and holes included in the three-dimensional objects; inputting the three-dimensional objects into the thread judgment model to confirm the presence of a second thread and a second hole other than the confirmed threads and holes; displaying the positions of the second thread and the second hole on the three-dimensional object when it is confirmed that the second thread and the second hole exist; receiving a user input regarding the positions of the second thread and the second hole displayed on the three-dimensional object; and deleting or maintaining the display of the second thread and the second hole according to the user input.

[0015] In one embodiment, the method may include: a step of identifying a plurality of adjacent cross-sections based on a first cross-section; a step of identifying whether processing is possible with the same virtual processing tools for the plurality of adjacent cross-sections; a step of identifying whether movement of a plurality of processing tools and tilt-rotary is possible for the plurality of cross-sections adjacent to the first cross-section; a step of calculating a cost required for movement of the plurality of processing tools and tilt-rotary for the cross-sections adjacent to the first cross-section; a step of setting priorities for the plurality of adjacent cross-sections in order of the smallest required cost; and a step of grouping the plurality of cross-sections according to the set priorities.

[0016] In a method according to one embodiment, the method may include a step of checking whether a jig re-fastening and a virtual processing tool change are required for a plurality of grouped cross-sections; and, if a jig re-fastening and a virtual processing tool change are required, a step of dividing the group into subgroups and grouping them.

[0017] In a method according to one embodiment, the method may include: a step of confirming a shape and a processing path of a three-dimensional object; a step of inputting the shape and the processing path of the three-dimensional object into a material judgment model to select a material of the three-dimensional object for processing the three-dimensional object; a step of calculating a material price for processing the three-dimensional object using at least one of an inventory acquisition price and a current material transaction price for the material of the selected three-dimensional object; and a step of generating a processing estimate for the three-dimensional object using the calculated material price.

[0018] In a method according to one embodiment, the method may include: a step of matching a plurality of processing tools to a plurality of materials and storing them; a step of inputting a material of a three-dimensional object and a size of the three-dimensional object into a processing tool selection model to select a processing tool for processing the three-dimensional object.

[0019] In a method according to one embodiment, the method may include: a step of generating a first estimate for processing a three-dimensional object using a virtual moving means and a second estimate for processing the three-dimensional object using the virtual moving means and the virtual rotating driving means, wherein the first estimate and the second estimate include a processing time and a processing cost; and a step of comparing the first estimate and the second estimate and determining a processing method having a minimum estimate as a processing method for the three-dimensional object.

[0020] In a method according to one embodiment, the method may include: a step of confirming a load applied to a virtual processing tool through a processing simulation of the virtual processing tool in a processing path; a step of inputting the virtual processing tool, the processing path, and the load into a load optimization model to confirm whether a load exceeding a preset threshold occurs for each virtual movable tool; and a step of regenerating the processing path so that a load exceeding the preset threshold is not applied to the virtual processing tool.

[0021] In one embodiment, the method may include: a step of identifying an additional processing process including post-processing, surface treatment, and washing in the processing of a three-dimensional object after generating a processing estimate; a step of generating information on an additional estimate corresponding to the additional processing process based on a model learned using a deep learning technique; and a step of generating a total estimate by reflecting the additional estimate based on the additional processing process.

[0022] The present invention can increase efficiency in generating machining estimates, etc. by automatically generating a machining path based on a 5-axis basis.

[0023] FIG. 1 is an exemplary drawing of an electronic device according to various embodiments of the present invention.

[0024] FIG. 2 is an exemplary drawing for explaining a processing device according to various embodiments of the present invention.

[0025] FIG. 3 is a flowchart of a method for generating a processing path according to various embodiments of the present invention.

[0026] FIG. 4 is a drawing for explaining cross-section formation based on a point cloud according to various embodiments of the present invention.

[0027] Figure 5 is a drawing for explaining grouping of cross-sections according to various embodiments of the present invention.

[0028] FIG. 6 is a drawing for explaining a configuration for checking whether a virtual processing tool can be processed according to various embodiments of the present invention.

[0029] A method for generating a processing path for a three-dimensional object may include: a step of confirming a model representing the three-dimensional object; a step of confirming planar characteristics of a plurality of cross-sections constituting the three-dimensional object; a step of matching a plurality of virtual tools to perform processing on at least one group in which a plurality of cross-sections are grouped, wherein the plurality of virtual tools include a virtual moving means for moving the three-dimensional object in at least one direction of the X-axis, the Y-axis, and the Z-axis, a virtual rotation driving means for rotating the three-dimensional object about at least one of the A-axis and the C-axis, and at least one virtual processing tool; and a step of generating a processing path for the plurality of matched virtual processing tools.

[0030] In one embodiment, the method may include: a step of checking a point cloud of a three-dimensional object; a step of grouping a plurality of points in the point cloud and recognizing a cross-section formed by the plurality of points as a cross-section of the three-dimensional object; and a step of checking whether an object created by combining the recognized cross-sections matches the three-dimensional object.

[0031] In a method according to one embodiment, the method may include a step of grouping cross-sections that can be processed with a single processing tool into at least one group for a plurality of cross-sections; a step of dividing a processing area into at least one group and determining a processing path when grouping is possible; and a step of re-confirming the plurality of cross-sections and re-performing grouping when grouping is not possible.

[0032] In a method according to one embodiment, the step of grouping cross-sections that can be machined with a single machining tool into at least one group for a plurality of cross-sections may include the step of calculating a cost incurred when a virtual machining tool machines an adjacent cross-section; and the step of grouping adjacent cross-sections by generating a machining path that minimizes the cost incurred when machining the adjacent cross-sections.

[0033] In one embodiment, the method may include: a step of learning about a plurality of types of virtual processing tools and cross-sections that can be processed by the plurality of types of virtual processing tools by a processing judgment model learned by a deep learning technique; a step of inputting a three-dimensional object into the processing judgment model and determining an area among the plurality of cross-sections that cannot be processed by the plurality of virtual tools, wherein the impossibility of processing the cross-section means that the cross-section cannot be processed according to a processing angle of the virtual processing tools; a step of rotating the three-dimensional object so that the cross-section can be processed by the processing judgment model; and a step of generating a processing path by including the rotation of the three-dimensional object in the processing path.

[0034] In one embodiment, the method may include: a step of identifying threads and holes existing for each cross-section; a step of separating the identified threads and holes from each cross-section; and a step of determining and matching one of a plurality of movable tools to the separated threads and holes.

[0035] In one embodiment, the method may include: inputting a plurality of three-dimensional objects stored in a memory into a thread judgment model learned using a deep learning technique to learn the positions of threads and holes included in the three-dimensional objects; inputting the three-dimensional objects into the thread judgment model to confirm the presence of a second thread and a second hole other than the confirmed threads and holes; displaying the positions of the second thread and the second hole on the three-dimensional object when it is confirmed that the second thread and the second hole exist; receiving a user input regarding the positions of the second thread and the second hole displayed on the three-dimensional object; and deleting or maintaining the display of the second thread and the second hole according to the user input.

[0036] In one embodiment, the method may include: a step of identifying a plurality of adjacent cross-sections based on a first cross-section; a step of identifying whether processing is possible with the same virtual processing tools for the plurality of adjacent cross-sections; a step of identifying whether movement of a plurality of processing tools and tilt-rotary is possible for the plurality of cross-sections adjacent to the first cross-section; a step of calculating a cost required for movement of the plurality of processing tools and tilt-rotary for the cross-sections adjacent to the first cross-section; a step of setting priorities for the plurality of adjacent cross-sections in order of the smallest required cost; and a step of grouping the plurality of cross-sections according to the set priorities.

[0037] In a method according to one embodiment, the method may include a step of checking whether a jig re-fastening and a virtual processing tool change are required for a plurality of grouped cross-sections; and, if a jig re-fastening and a virtual processing tool change are required, a step of dividing the group into subgroups and grouping them.

[0038] In a method according to one embodiment, the method may include: a step of confirming a shape and a processing path of a three-dimensional object; a step of inputting the shape and the processing path of the three-dimensional object into a material judgment model to select a material of the three-dimensional object for processing the three-dimensional object; a step of calculating a material price for processing the three-dimensional object using at least one of an inventory acquisition price and a current material transaction price for the material of the selected three-dimensional object; and a step of generating a processing estimate for the three-dimensional object using the calculated material price.

[0039] In a method according to one embodiment, the method may include: a step of matching a plurality of processing tools to a plurality of materials and storing them; a step of inputting a material of a three-dimensional object and a size of the three-dimensional object into a processing tool selection model to select a processing tool for processing the three-dimensional object.

[0040] In a method according to one embodiment, the method may include: a step of generating a first estimate for processing a three-dimensional object using a virtual moving means and a second estimate for processing the three-dimensional object using the virtual moving means and the virtual rotating driving means, wherein the first estimate and the second estimate include a processing time and a processing cost; and a step of comparing the first estimate and the second estimate and determining a processing method having a minimum estimate as a processing method for the three-dimensional object.

[0041] In a method according to one embodiment, the method may include: a step of confirming a load applied to a virtual processing tool through a processing simulation of the virtual processing tool in a processing path; a step of inputting the virtual processing tool, the processing path, and the load into a load optimization model to confirm whether a load exceeding a preset threshold occurs for each virtual movable tool; and a step of regenerating the processing path so that a load exceeding the preset threshold is not applied to the virtual processing tool.

[0042] In one embodiment, the method may include: a step of identifying an additional processing process including post-processing, surface treatment, and washing in the processing of a three-dimensional object after generating a processing estimate; a step of generating information on an additional estimate corresponding to the additional processing process based on a model learned using a deep learning technique; and a step of generating a total estimate by reflecting the additional estimate based on the additional processing process.

[0043] Various embodiments are now described with reference to the drawings. In this specification, various descriptions are provided to facilitate understanding of the present disclosure. However, it will be apparent that these embodiments can be practiced without these specific details.

[0044] As used herein, the terms "component," "module," "system," and the like refer to computer-related entities, hardware, firmware, software, a combination of software and hardware, or an execution of software. For example, a component can be, but is not limited to, a procedure running on a processor, a processor, an object, a thread of execution, a program, and / or a computer. For example, both an application running on an electronic device and the electronic device can be a component. One or more components can reside within a processor and / or a thread of execution. A component can be localized within a single computer. A component can be distributed between two or more computers. Furthermore, such components can execute from various computer-readable media having various data structures stored therein. Components can communicate via local and / or remote processes, for example, by a signal comprising one or more data packets (e.g., data from one component interacting with another component in a local system, a distributed system, and / or data transmitted to another system via a network such as the Internet via a signal).

[0045] Furthermore, the term "or" is intended to mean an inclusive "or" rather than an exclusive "or." That is, unless otherwise specified or clear from context, "X employs A or B" is intended to mean either of the natural inclusive permutations. That is, if X employs A; X employs B; or X employs both A and B, "X employs A or B" can apply to any of these cases. Furthermore, the term "and / or" as used herein should be understood to refer to and include all possible combinations of one or more of the associated items listed.

[0046] Furthermore, the terms "comprises" and / or "comprising" should be understood to mean the presence of the features and / or components. However, it should be understood that the terms "comprises" and / or "comprising" do not exclude the presence or addition of one or more other features, components, and / or groups thereof. Furthermore, unless otherwise specified or clear from the context to refer to the singular form, the singular form as used in the specification and claims should generally be construed to mean "one or more."

[0047] And, the term "at least one of A or B" should be interpreted to mean "if it includes only A", "if it includes only B", or "if it is combined in the composition of A and B".

[0048] Those skilled in the art should further appreciate that the various illustrative logical blocks, configurations, modules, circuits, means, logics, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, configurations, means, logics, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application. However, such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.

[0049] The description of the disclosed embodiments is provided to enable a person skilled in the art to make or use the present invention. Various modifications to these embodiments will be apparent to those skilled in the art. The generic principles defined herein may be applied to other embodiments without departing from the scope of the present invention. Therefore, the present invention is not limited to the embodiments disclosed herein. The present invention is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

[0050] In this paper, network function, artificial neural network and neural network can be used interchangeably.

[0051] The various embodiments described herein may be implemented in a recording medium and storage medium readable by a computer or similar device, for example, using software, hardware, or a combination thereof.

[0052] In terms of hardware implementation, the embodiments described herein can be implemented using at least one of ASICs (application specific integrated circuits), DSPs (digital signal processors), DSPDs (digital signal processing devices), PLDs (programmable logic devices), FPGAs (field programmable gate arrays), processors, controllers, micro-controllers, microprocessors, and other electrical units for performing functions. In some cases, the embodiments described herein can be implemented as a processor itself of an electronic device.

[0053]

[0054] According to FIG. 1, the electronic device (100) of the present invention may include a processor (110), a memory (102), and a communication module (103). In addition, various other configurations may be included, and the present invention is not limited thereto.

[0055] The processor (110) may be configured with one or more cores and may include a processor for data analysis and deep learning, such as a central processing unit (CPU), a general purpose graphics processing unit (GPGPU), and a tensor processing unit (TPU) of the electronic device (100). The processor (110) may read a computer program stored in a memory and perform data processing for machine learning according to an embodiment of the present disclosure. In addition, the processor (110) may control the operation of the configuration of the first electronic device and implement the operation of the overall system.

[0056] For example, the processor (110) can typically control the overall operation of the electronic device (100). The processor (110) can process signals, data, information, etc. input or output through the components discussed above, or can provide or process appropriate information or functions to the user by running an application program stored in the memory (120).

[0057] In addition, the processor (110) can control at least some of the components of the electronic device (100) to drive an application program stored in the memory (120). Furthermore, the processor (110) can operate at least two or more of the components included in the electronic device (100) in combination with each other to drive the application program.

[0058] According to one embodiment of the present invention, the processor (110) can perform operations for learning a neural network. The processor (110) can perform calculations for learning a neural network, such as processing input data for learning in deep learning (DL), extracting features from the input data, calculating errors, and updating the weights of the neural network using backpropagation. At least one of the CPU, GPGPU, and TPU of the processor (110) can process learning of a network function. For example, the CPU and GPGPU can together process learning of a network function and data classification using the network function.

[0059] According to one embodiment of the present invention, the memory (120) can store any type of information generated or determined by the processor (110) and any type of information received by the network unit. According to one embodiment of the present invention, the memory (120) can include at least one type of storage medium among a flash memory type, a hard disk type, a multimedia card micro type, a card type memory (e.g., SD or XD memory, etc.), a random access memory (RAM), a static random access memory (SRAM), a read-only memory (ROM), an electrically erasable programmable read-only memory (EEPROM), a programmable read-only memory (PROM), a magnetic memory, a magnetic disk, and an optical disk. The electronic device (100) may also operate in relation to web storage that performs the storage function of the memory (120) on the Internet. The description of the above-described memory is merely an example, and the present invention is not limited thereto.

[0060]

[0061] In step 310, the processor can verify a model representing a three-dimensional object. In step 320, the processor can verify planar characteristics of a plurality of cross-sections constituting the three-dimensional object. In step 330, the processor can match a plurality of virtual tools to perform processing on at least one group of the plurality of cross-sections. Here, the plurality of virtual tools may include a virtual moving means for moving the three-dimensional object in at least one direction of the X-axis, the Y-axis, and the Z-axis, a virtual rotation driving means for rotating the three-dimensional object around at least one of the A-axis and the C-axis, and at least one virtual processing tool. The virtual tools may be tools that implement a 5-axis CNC processing device as illustrated in FIG. 2 in a virtual space. The virtual processing tools may refer to tools that directly contact an object to perform processing, such as a milling tool.

[0062] In step 340, the processor may include a step of generating a machining path of a plurality of matched virtual machining tools. The machining path may refer to a series of sequences, processes, and all procedures in which a plurality of matched virtual machining tools sequentially machine each cross-section.

[0063] Referring to FIG. 4, in a method according to an embodiment, a processor can identify a point cloud of a 3D object. A point cloud refers to a set cloud of multiple points spread across a 3D space. The processor can group a plurality of points in the point cloud and recognize a cross-section formed by the plurality of points as a cross-section of the 3D object. This can be a polygon on a plane or can be freely set. The processor can include a step of verifying whether an object created by combining the recognized cross-sections matches the 3D object. In other words, by verifying whether an object input by a user and an object created by utilizing a set of point clouds as cross-sections are the same object, it is possible to verify whether grouping by point clouds has been performed accurately.

[0064] In a method according to one embodiment, the processor may group multiple cross-sections that can be machined with a single machining tool into at least one group. If grouping is possible, the processor may divide the machining area into at least one group and determine a machining path. If grouping is not possible, the processor may re-verify the multiple cross-sections and re-perform the grouping. The processor's grouping of the multiple cross-sections may mean grouping at least one of the cross-sections to be machined with a single virtual machining tool to form a machining path.

[0065] In one embodiment, the method comprises: calculating a cost incurred when a virtual machining tool processes an adjacent cross-section; and grouping adjacent cross-sections by generating a machining path that minimizes the cost incurred when processing adjacent cross-sections. Referring to FIG. 5, when processing with a specific virtual machining tool, the cost (time, machining difficulty, etc.) of entering an adjacent cross-section and performing processing can be quantified and calculated. Since the method for calculating the cost is readily apparent to those skilled in the art, a detailed description of the method will not be provided.

[0066] In one embodiment, a method according to the present invention comprises: a processor, using a deep learning-based machining judgment model, learning about multiple types of virtual machining tools and cross-sections that can be machined by the multiple types of virtual machining tools. The machining judgment model may be a general term for a model that is learned using deep learning techniques and learns about multiple types of cross-sections to determine whether machining is possible.

[0067] The processor can input a three-dimensional object into a machining judgment model and determine an area among a plurality of cross-sections that cannot be processed by a plurality of virtual tools. In this case, the impossibility of machining a cross-section may mean that machining of the cross-section is impossible according to the machining angle of the virtual machining tools. As illustrated in Fig. 2, machining at an angle may be impossible because the movement of the machining tools is restricted. The processor can rotate the three-dimensional object so that machining of the cross-section becomes possible by the machining judgment model. That is, since a machining path is generated in a virtual reality, the machining judgment model can confirm that machining is possible not only by the multiple machining tools described above, but also by directly rotating the three-dimensional object. The processor may include a step of generating a machining path by including the rotation of the three-dimensional object in the machining path.

[0068] In one embodiment, the method comprises: a processor capable of identifying threads and holes present in each cross-section; the processor capable of separating the identified threads and holes from each cross-section; and the processor capable of determining and matching one of a plurality of movable tools to the separated threads and holes.

[0069] In a method according to one embodiment, a processor may input a plurality of three-dimensional objects stored in memory into a thread judgment model learned using a deep learning technique, thereby learning the locations of threads and holes included in the three-dimensional objects. The thread judgment model may be a general term for a model that learns about a large number of three-dimensional objects and can determine the locations of threads and holes in the three-dimensional objects.

[0070] The processor can input a three-dimensional object into the thread judgment model to determine the existence of a second thread and a second hole in addition to the confirmed thread and hole. If the existence of the second thread and the second hole is determined, the processor can display the positions of the second thread and the second hole on the three-dimensional object. The processor can receive user input regarding the positions of the second thread and the second hole displayed on the three-dimensional object. The processor can delete the second thread and the second hole or maintain the display according to the user input. As described above, the role of the thread judgment model can be maximized by utilizing interaction with the user input through a user interface that displays the positions of the second thread and the second hole.

[0071] In one embodiment, a method includes: a step of identifying a plurality of adjacent cross-sections based on a first cross-section; and determining whether processing is possible with the same virtual processing tools for the plurality of adjacent cross-sections. The processor may determine whether movement of the plurality of processing tools and tilt-rotary is possible with respect to the plurality of cross-sections adjacent to the first cross-section. The processor may calculate a cost required for movement of the plurality of processing tools and tilt-rotary movement for the cross-sections adjacent to the first cross-section. The processor may set priorities for the plurality of adjacent cross-sections in descending order of cost. The processor may group the plurality of cross-sections according to the set priorities.

[0072] In one embodiment, the method comprises: a processor can determine whether a jig re-fastening and a virtual machining tool change are required for a plurality of grouped cross-sections. If a jig re-fastening and a virtual machining tool change are required, the processor can divide the group into subgroups and group them.

[0073] In a method according to one embodiment, a processor can confirm a shape and a processing path of a three-dimensional object. The processor can input the shape and the processing path of the three-dimensional object into a material determination model to select a material of the three-dimensional object for processing the three-dimensional object. The material determination model may collectively refer to a model for selecting a material of the three-dimensional object for processing the three-dimensional object to be processed. The processor can calculate a material price for processing the three-dimensional object using at least one of an inventory acquisition price and a current material transaction price for the material of the selected three-dimensional object. The processor can generate a processing quotation for the three-dimensional object using the calculated material price.

[0074] In a method according to one embodiment, a processor may store a plurality of processing tools by matching them to a plurality of materials. The processor may include a step of selecting a processing tool for processing a three-dimensional object by inputting the material of the three-dimensional object and the size of the three-dimensional object into a processing tool selection model. The processing tool selection model may be a general term for a model for selecting a processing tool for processing a three-dimensional object by inputting the material of the three-dimensional object and the size of the three-dimensional object into the processing tool selection model.

[0075] In a method according to one embodiment, a processor may generate a first estimate for processing a three-dimensional object using a virtual moving means and a second estimate for processing the three-dimensional object using the virtual moving means and the virtual rotational driving means. The first estimate and the second estimate may include a processing time and a processing cost. The processor may compare the first estimate and the second estimate and determine a processing method having a minimum estimate between the first estimate and the second estimate as a processing method for the three-dimensional object.

[0076] In one embodiment, a method may include a processor that can verify a load applied to a virtual machining tool through a machining simulation of the virtual machining tool in a machining path. The processor may input the virtual machining tool, the machining path, and the load into a load optimization model to verify whether a load exceeding a preset threshold occurs for each virtual movable tool. The load optimization model may be a general term for a model that inputs the virtual machining tool, the machining path, and the load into a load optimization model to verify whether a load exceeding a preset threshold occurs for each virtual movable tool. The processor may include a step of regenerating the machining path so that a load exceeding the preset threshold is not applied to the virtual machining tool. A load may be applied to the virtual machining tool according to the machining path. For example, when a 90-degree rotation or direction change is performed according to the machining path of the load, a load higher than the preset threshold may occur. Accordingly, the load optimization model can regenerate the machining path so that the virtual machining tool does not rotate or change direction by an angle higher than a preset threshold.

[0077] In one embodiment, the method comprises: After generating a processing estimate, the processor can identify additional processing steps, including post-processing, surface treatment, and cleaning, for processing a three-dimensional object. The processor can generate information regarding additional estimates corresponding to the additional processing steps based on a model trained using deep learning techniques. Based on the additional processing steps, the processor can generate a total estimate by reflecting the additional estimates.

[0078]

[0079] Those skilled in the art will understand that information and signals may be represented using any of a variety of different technologies and techniques. For example, the data, instructions, commands, information, signals, bits, symbols, and chips referenced in the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof.

[0080] Those skilled in the art will appreciate that the various illustrative logical blocks, modules, processors, means, circuits, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, various forms of programs or design code (referred to herein, for convenience, as software), or a combination of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. A person skilled in the art may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.

[0081] The various embodiments presented herein can be implemented as a method, apparatus, or article of manufacture using standard programming and / or engineering techniques. The term article of manufacture includes a computer program, carrier, or media accessible from any computer-readable storage device. For example, computer-readable storage media include, but are not limited to, magnetic storage devices (e.g., hard disks, floppy disks, magnetic strips, etc.), optical disks (e.g., CDs, DVDs, etc.), smart cards, and flash memory devices (e.g., EEPROMs, cards, sticks, key drives, etc.). Furthermore, various storage media presented herein include one or more devices and / or other machine-readable media for storing information.

[0082] It should be understood that the specific order or hierarchy of steps in the presented processes is merely an example of exemplary approaches. It should be understood that the specific order or hierarchy of steps in the processes may be rearranged within the scope of the present disclosure based on design priorities. The appended method claims provide elements of various steps in a sample order, but are not intended to be limited to the specific order or hierarchy presented.

[0083] The description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the disclosed embodiments. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the scope of the disclosure. Thus, the disclosure is not intended to be limited to the embodiments disclosed herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.

Claims

1. A step for checking a model representing a 3D object; A step of checking the plane properties of multiple cross sections constituting a three-dimensional object; A step of matching a plurality of virtual tools to perform processing on at least one group that groups a plurality of cross-sections, wherein the plurality of virtual tools include a virtual moving means for moving a three-dimensional object in at least one direction of the X-axis, the Y-axis, and the Z-axis, a virtual rotation driving means for rotating the three-dimensional object about at least one of the A-axis and the C-axis, and at least one virtual processing tool; A step of generating a machining path of multiple matched virtual machining tools; Including, How to create a machining path for a 3D object.

2. In paragraph 1, Step for checking the point cloud of a 3D object; A step of grouping multiple points in a point cloud and recognizing a cross-section formed by the multiple points as a cross-section of a three-dimensional object; A step of verifying whether the object generated by combining the recognized cross-sections matches the three-dimensional object; A method for generating a processing path for a three-dimensional object, comprising:

3. In paragraph 2, For a plurality of cross sections, a step of grouping cross sections that can be machined with a single machining tool into at least one group; If grouping is possible, a step of dividing the processing area into at least one group and determining the processing path; If grouping is not possible, a step of re-checking multiple cross sections and re-performing grouping; A method for generating a processing path for a three-dimensional object, comprising:

4. In paragraph 1, For multiple cross sections, the step of grouping cross sections that can be machined with a single machining tool into at least one group is: A step for calculating the cost incurred when a virtual processing tool processes an adjacent cross-section; A step of grouping adjacent cross sections by generating a machining path that minimizes the cost incurred when machining adjacent cross sections; A method for generating a processing path for a three-dimensional object, comprising:

5. In paragraph 1, A step of learning about multiple types of virtual processing tools and cross sections that can be processed by multiple types of virtual processing tools by a processing judgment model learned using a deep learning technique; A step of inputting a three-dimensional object into a processing judgment model and determining an area among multiple cross sections that cannot be processed by multiple virtual tools - the inability to process a cross section means that the cross section cannot be processed according to the processing angles of the virtual processing tools -; A step of rotating a three-dimensional object to enable processing of a cross-section by a processing judgment model; A step of generating a machining path by including the rotation of a three-dimensional object in the machining path; A method for generating a processing path for a three-dimensional object, comprising:

6. In paragraph 1, A step of checking the threads and holes existing for each cross section; A step of separating the identified threads and holes from each cross section; Comprising a step of determining and matching one of a plurality of movable tools to a separate thread and hole, How to create a machining path for a 3D object.

7. In paragraph 6, A step of learning the locations of threads and holes included in the three-dimensional objects by inputting multiple three-dimensional objects stored in memory into a thread judgment model learned using a deep learning technique; A step of inputting a three-dimensional object into a thread judgment model to confirm the existence of a second thread and a second hole other than the confirmed thread and hole; If it is confirmed that a second thread and a second hole exist, a step of displaying the positions of the second thread and the second hole on a three-dimensional object; A step of receiving user input regarding the positions of a second thread and a second hole displayed on a three-dimensional object; Including, based on user input, a step of deleting or maintaining the display of the second thread and the second hole. How to create a machining path for a 3D object.

8. In paragraph 3, A step of checking a plurality of adjacent cross sections based on the first cross section; A step of checking whether processing is possible with the same virtual processing tools for a plurality of adjacent cross sections; A step of checking whether movement of a plurality of processing tools and a tilt-rotary is possible for a plurality of cross sections adjacent to the first cross section; A step of calculating the cost required for movement of a plurality of processing tools and tilt-rotary-movable cross sections for a plurality of cross sections adjacent to the first cross section; A step of prioritizing adjacent multiple cross sections in order of decreasing cost; A step of grouping multiple cross sections according to a set priority, How to create a machining path for a 3D object.

9. In paragraph 8, A step for checking whether a jig re-fastening and a virtual processing tool change are required for a plurality of grouped cross sections; In cases where a jig re-fastening and a virtual machining tool change are required, a step of dividing the group into subgroups and grouping them is included. How to create a machining path for a 3D object.

10. In paragraph 1, A step for checking the shape and processing path of a 3D object; A step of selecting a material of a 3D object for processing of the 3D object by inputting the shape and processing path of the 3D object into a material judgment model; A step of calculating a material price for processing a 3D object by using at least one of the inventory acquisition price and the current material transaction price for the material of the selected 3D object; A step of generating a processing quotation for a 3D object using the calculated material price; Including, How to create a machining path for a 3D object.

11. In paragraph 10, A step of storing multiple processing tools by matching them to multiple materials; A step of selecting a processing tool for processing a 3D object by inputting the material of the 3D object and the size of the 3D object into the processing tool selection model; A method for generating a processing path for a three-dimensional object, comprising:

12. In paragraph 10, A step of generating a first estimate for processing a three-dimensional object using a virtual moving means and a second estimate for processing a three-dimensional object using a virtual moving means and a virtual rotary driving means - the first estimate and the second estimate include a processing time and a processing cost -; A step of comparing the first estimate and the second estimate to determine the processing method having the minimum estimate as the processing method of the three-dimensional object; A method for generating a processing path for a three-dimensional object, comprising:

13. In paragraph 1, In the processing path, a step of confirming the load applied to a virtual processing tool through a processing simulation of the virtual processing tool; A step of inputting a virtual processing tool, processing path, and load into a load optimization model to check whether a load exceeding a preset threshold occurs for each virtual operating tool; A step of regenerating a machining path so that a load exceeding a preset threshold is not applied to a virtual machining tool; A method for generating a processing path for a three-dimensional object, comprising:

14. In paragraph 13, After generating a processing estimate, a step of confirming additional processing steps including post-processing, surface treatment, and washing in the processing of a 3D object; A step of generating information on additional estimates corresponding to additional processing based on a model learned using a deep learning technique; A step of generating a total estimate by reflecting the additional estimate based on the additional processing process; including; How to create a machining path for a 3D object.

Citation Information

Patent Citations

  • Numerical control information making device

    JP1995116941A

  • Method and apparatus for preparing machining program

    JP2004209577A

  • How to make an object model compatible with a 3D point cloud

    JP2010541112A

  • Numerical control command writing device and method

    KR1019990077087A

  • Three-dimensional image comparing program, three-dimensional image comparing method, and three-dimensional image comparing device

    KR1020050010982A

Cited By

  • Machining process control method and system for special-shaped ornament

    CN120779867A

  • Cutting trajectory planning method and device and computer readable storage medium

    CN121704334A