Solid model generation system, solid model generation method, and solid model generation program
The system generates a solid model by moving nodes based on modification information, addressing the labor-intensive process of creating high-quality solid models, thereby enhancing efficiency in generating models that match desired shapes.
Patent Information
- Application Number
- JP2024025938
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-02-22
- Publication Date
- 2025-09-03
AI Technical Summary
The generation of high-quality solid models using the finite element method requires significant labor, particularly when anticipating deformation due to springback and modifying die shapes to match target shapes, increasing the workload.
A system and method for generating a solid model by acquiring a base model, determining movement amounts of nodes based on modification information, and moving these nodes to create an updated model, reducing the need to reconstruct all nodes from three-dimensional CAD data.
This approach significantly reduces the labor required to generate a solid model by allowing the construction of a solid model corresponding to a desired shape through node movement, without the need to reconstruct all nodes, thus improving efficiency.
Smart Images

Figure 2025128923000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to a technique for generating a solid model, which is a three-dimensional finite element model, by a computer. [Background technology]
[0002] Computer analysis using the finite element method contributes to various design and manufacturing processes. For example, molding analysis using finite element models of molds and molded parts contributes to the efficient design and manufacturing of molds for producing molded parts with target shapes.
[0003] Japanese Patent No. 5941320 (Patent Document 1) discloses a die shape simulation system that determines the die shape of a press-forming die in anticipation of springback of the formed product. This system uses the finite element method to calculate the residual stress of the formed product at the bottom dead center of the press-forming die, and calculates and displays the shape after springback from the shape of the formed product at the bottom dead center and the residual stress.
[0004] Japanese Patent No. 6949415 (Patent Document 2) describes a method of obtaining a pre-analysis shape model by dividing a surface represented by three-dimensional CAD data of a molded product into a finite number of elements and meshing them using the finite element method. An analysis such as warpage prediction by molding simulation is performed on the pre-analysis shape model to generate a post-analysis model. The post-analysis model is subdivided, and mold CAD model data that takes into account the warpage prediction results, etc., is obtained from the subdivided data.
[0005] Japanese Patent Laid-Open Publication No. 2002-219523 (Patent Document 3) describes a press molding analysis method that uses the finite element method on a computer to analyze phenomena that occur when a molded material is press-molded using a mold. Elements corresponding to each part of the mold are formed using rigid shell elements in parts corresponding to predetermined R parts of the mold that have a predetermined radius of curvature or less. Parts other than the R parts are formed using elastic solid elements. [Prior art documents] [Patent documents]
[0006] [Patent Document 1] Patent No. 5941320 [Patent Document 2] Patent No. 6949415 [Patent Document 3] Japanese Patent Application Laid-Open No. 2002-219523 Summary of the Invention [Problem to be solved by the invention]
[0007] In analyses using the finite element method, for example, by treating dies and presses as solid models of elastic bodies, analysis can be performed under conditions closer to those of the actual machine. The labor required to create a high-quality solid model is greater than that required for a shell model. For example, when anticipating the amount of deformation due to springback and repeatedly applying anticipatory techniques to modify the die shape so that the shape of the formed product matches the target shape after springback, the increased labor required becomes an issue.
[0008] Therefore, the present disclosure discloses a solid model generation system, method, and program that can reduce the number of steps required to generate a solid model. [Means for solving the problem]
[0009] The solid model generation system according to an embodiment of the present invention includes: a base model acquisition unit that acquires, as a base model, a solid model that is a three-dimensional finite element model corresponding to first shape data that indicates a three-dimensional shape of an object; a modification information acquisition unit that acquires modification information indicating a modification of three-dimensional coordinates in the first shape data; a surface movement amount determination unit that determines movement amounts of nodes of some target surfaces of the surface of the object represented by the base model based on the change in three-dimensional coordinates indicated by the change information; and a solid model generation unit that generates an updated model, which is a solid model obtained by moving the nodes of the target surface of the base model by the movement amount determined by the surface movement amount determination unit. [Brief explanation of the drawings]
[0010] [Figure 1] FIG. 1 is a diagram showing the configuration of a mold shape data creation system in this embodiment. [Figure 2] FIG. 2 is a flowchart showing an example of the operation of the system shown in FIG. [Figure 3] FIG. 3 is a flowchart showing a detailed example of the processing in S5 to S8 shown in FIG. [Figure 4] FIG. 4 is a diagram showing an example of mold shape data and point cloud movement amount data. [Figure 5] FIG. 5 is a diagram for explaining an example of mold shape data. [Figure 6] FIG. 6 is a diagram showing an example of a state in which the die shape data of the base model BM and the pre-modification die shape STLa are aligned. [Figure 7] FIG. 7 is a diagram showing an example of an element surface ELM1 corresponding to one node n2 of the base model. [Figure 8] FIG. 8 is a diagram showing an example of the movement amount of the points on the element surface shown in FIG. [Figure 9] FIG. 9 is a diagram for explaining an example of calculation of the movement amount of an internal node. [Figure 10] FIG. 10 is a diagram showing an example of calculation of an internal node. [Figure 11] FIG. 11 is a diagram for explaining an example of calculating the movement amount of an internal node based on other nodes. DETAILED DESCRIPTION OF THE INVENTION
[0011] (Configuration 1) The solid model generation system according to an embodiment of the present invention includes: a base model acquisition unit that acquires, as a base model, a solid model that is a three-dimensional finite element model corresponding to first shape data that indicates a three-dimensional shape of an object; a modification information acquisition unit that acquires modification information indicating a modification of three-dimensional coordinates in the first shape data; a surface movement amount determination unit that determines movement amounts of nodes of some target surfaces of the surface of the object represented by the base model based on the change in three-dimensional coordinates indicated by the change information; and a solid model generation unit that generates an updated model, which is a solid model obtained by moving the nodes of the target surface of the base model by the movement amount determined by the surface movement amount determination unit.
[0012] According to the above configuration 1, the movement amount of the nodes of the corresponding target surface of the base model is determined based on the change in the three-dimensional coordinates of the first shape data. An updated model, which is a solid model with a different shape from the base model, is generated based on the movement amount of the nodes of the target surface. This allows the updated model to be constructed by moving necessary nodes of the base model based on the movement amount of the nodes of the target surface of the base model. Therefore, for example, a solid model corresponding to the desired shape can be constructed by providing the desired shape as change information indicating changes to the first shape data. For example, to generate a solid model of the desired shape, it is not necessary to reconstruct all nodes of the solid model from three-dimensional CAD data of the desired shape. This significantly reduces the amount of work required to generate a solid model.
[0013] A solid model is a model that includes solid elements. Solid elements are polyhedral elements such as tetrahedrons or hexahedrons. A solid model is a model of an object as a three-dimensional shape. In other words, a solid model represents the shape of an object using a collection of solid elements. In addition to solid models, there are also shell models that are made up of shell elements, and beam models that are made up of beam elements (sometimes called beam elements or bar elements). Note that the base model may include shell elements or beam elements in addition to solid elements.
[0014] (Configuration 2) In the above configuration 1, the change information may be data indicating a difference between three-dimensional coordinates of the first shape data and three-dimensional coordinates of second shape data indicating a shape different from the shape indicated by the first shape data, thereby generating a solid model corresponding to the second shape data as an updated model.
[0015] (Configuration 3) In the above configuration 2, the first point cloud data constituting the first shape data and the second point cloud data constituting the second shape data may be set to have corresponding points. The change information acquisition unit may generate a point cloud movement vector connecting corresponding points of the first point cloud data and the second point cloud data. The surface movement amount determination unit may generate a target surface node movement vector, which is the movement amount of the node of the target surface in the base model, based on the point cloud movement vector. This makes it possible to efficiently determine the movement amount of the node of the target surface. In this case, the solid model generation unit can generate an updated model by moving the node of the target surface of the base model using the target surface node movement vector.
[0016] (Configuration 4) In any of the above configurations 1 to 3, the solid model generation unit may determine the amount of movement of the internal nodes of the base model based on the amount of movement of the nodes of the target surface, and generate the updated model by moving the internal nodes of the base model by the determined amount of movement. This allows the updated model to be generated by moving the nodes of the target surface of the base model based on the change information and moving the internal nodes by an amount corresponding to the amount of movement of the target surface. Therefore, the updated model can be generated efficiently. Note that the internal nodes are internal nodes of the base model other than the surface nodes. Furthermore, the solid model generation unit may generate the updated model by moving other nodes in addition to the nodes of the target surface.
[0017] For example, the solid model generation unit may generate an internal node movement vector, which is a movement vector from an internal node in the base model to an internal node in the updated model, based on the movement amount of the node of the target surface. The solid model generation unit can generate the updated model by moving the node of the target surface of the base model by the movement amount determined by the face movement amount determination unit, and further moving the internal node of the base model in accordance with the internal node movement vector.
[0018] (Configuration 5) In any of the above configurations 1 to 4, the solid model generation unit may determine the amount of movement of the internal node of the base model based on the amount of movement of each of multiple other surrounding nodes and their distance from the internal node, and generate the updated model by moving the internal node of the base model by the determined amount of movement. This allows the amount of movement of the internal node to be determined efficiently. In this case, the multiple other surrounding nodes may include, for example, nodes on the target surface and fixed nodes that are determined in advance not to move. Note that the multiple other surrounding nodes may be nodes adjacent to the internal junction of the target, or may be nodes that are not adjacent to the internal junction of the target.
[0019] The fixed node may be, for example, a node on a surface other than the target surface of the object represented by the base model. The solid model generation unit may determine the movement amount of the internal node based on a value obtained by weighting the movement amount of the node on the target surface according to the distance from the internal node to the node on the target surface and the distance from the internal node to the fixed node.
[0020] (Configuration 6) In any one of the above configurations 1 to 5, the solid model generation unit may determine a movement amount of the internal node of the base model based on the movement amounts of each of a plurality of other surrounding nodes and the distance from the internal node, and may repeatedly execute a process of moving the internal node of the base model by the determined movement amount multiple times for a plurality of target internal nodes. This makes it possible to adjust the shape of the elements formed by the nodes of the updated model to be more suitable for analysis processing.
[0021] (Configuration 7) In any of the above configurations 1 to 6, the solid model generation unit may determine whether the polyhedral elements formed by the nodes moved according to the movement amount of the nodes of the target surface satisfy predetermined tolerance conditions, and determine whether to move the internal nodes according to the determination result. As a result, whether to move the internal nodes is determined according to the shape of the polyhedral elements formed by the nodes of the moved target surface. Therefore, the internal nodes can be moved as necessary so that the elements formed by the nodes have a shape suitable for analysis processing.
[0022] (Configuration 8) In any one of the above configurations 1 to 7, the surface movement amount determination unit may determine three-dimensional coordinates in the first shape data corresponding to the nodes of the target surface, and determine the movement amounts of the nodes of the target surface based on changes in the determined corresponding three-dimensional coordinates. This makes it possible to efficiently determine the movement amounts of the nodes of the target surface.
[0023] A solid model generation program according to an embodiment of the present invention includes: a base model acquisition process for acquiring, as a base model, a solid model that is a three-dimensional finite element model corresponding to first shape data that indicates a three-dimensional shape of the object; a change information acquisition process for acquiring change information indicating a change in three-dimensional coordinates in the first shape data; a surface movement amount determination process for determining movement amounts of nodes of some target surfaces of the surface of the object represented by the base model based on the change in three-dimensional coordinates indicated by the change information; The computer is caused to execute a solid model generation process for generating an updated model, which is a solid model obtained by moving the nodes of the target surface of the base model by the movement amount determined in the surface movement amount determination process.
[0024] A method according to an embodiment of the present invention is a computer-implemented solid model generation method, the solid model generation method comprising the steps of: a base model acquisition step of acquiring, as a base model, a solid model that is a three-dimensional finite element model corresponding to first shape data that indicates a three-dimensional shape of the object; a modification information acquisition step of acquiring modification information indicating a modification of three-dimensional coordinates in the first shape data; a surface movement amount determination step of determining movement amounts of nodes of some target surfaces of the surface of the object represented by the base model based on the change in three-dimensional coordinates indicated by the change information; and a solid model generating step of generating an updated model, which is a solid model obtained by moving the nodes of the target surface of the base model by the amount of movement determined in the surface movement amount determining step. Each of the above steps is executed by a computer.
[0025] Hereinafter, an embodiment of the present invention will be described in detail with reference to the drawings. In the drawings, the same or corresponding parts are designated by the same reference numerals, and the description thereof will not be repeated. The dimensional ratios between the components shown in each drawing do not necessarily represent the actual dimensional ratios.
[0026] (System configuration example) Fig. 1 shows an example of the configuration of a system including a solid model generation system according to this embodiment. In the example shown in Fig. 1, a solid model generation system 10 is used as part of a mold shape data creation system 20. The solid model generation system 10 receives a base model, which is a solid model, and modification information for first shape data corresponding to the base model, and outputs an updated model, which is a solid model having a shape different from that of the base model.
[0027] Here, as an example, a case will be described in which the base model and the updated model are solid models of a die used in press forming, and the first shape data is die shape data representing the shape of the die. The die shape data creation system 20 executes press forming analysis using the die represented by the updated model, and modifies the die shape data using the analysis results. The solid model generation system 10 generates the updated model based on change information resulting from the modification of the die shape data.
[0028] The solid model generation system 10 includes a base model acquisition unit 1, a change information acquisition unit 2, a face movement amount determination unit 3, and a solid model generation unit 4. In addition to the solid model generation system 10, the mold shape data creation system 20 includes a molding analysis unit 5, a shape difference calculation unit 6, and a mold shape correction unit 7.
[0029] (Example of a solid model generation system configuration) The base model acquisition unit 1 of the solid model generation system 10 acquires a solid model, which is a three-dimensional finite element model, as a base model. For example, data of the base model is recorded in a recording unit accessible by a computer constituting the solid model generation system 10. The base model is a solid model corresponding to first shape data (e.g., first mold shape data) indicating the three-dimensional shape of an object. The base model may be a model of an object having a shape indicated by the first shape data, modeled using a plurality of solid elements. In other words, the base model may be an approximation of the shape indicated by the first mold shape data using solid elements. The base model may be generated based on the first shape data. For example, the base model may be automatically generated from the first shape data, or may be generated by automatic generation based on the first shape data and a meshing instruction from a user.
[0030] The first shape data is not a finite element model, but data that indicates the three-dimensional shape of an object (e.g., a mold) in a format different from the finite element model. The first shape data includes three-dimensional coordinates that indicate the three-dimensional shape of the object. The format of the first shape data is not particularly limited, but may be, for example, point cloud data that indicates a shape with a set of three-dimensional coordinate points, such as STL data, or data that indicates a shape with surfaces, lines, points, and other components, such as CAD data.
[0031] The change information acquisition unit 2 acquires change information indicating a change in three-dimensional coordinates in the first shape data. The change information may be data indicating a movement amount of the three-dimensional coordinates in the first shape data. The movement amount of the three-dimensional coordinates can be expressed, for example, by a vector or a scalar value. In the example of FIG. 1, the change information is a vector ΔSTL indicating a movement amount of a three-dimensional coordinate point in the first shape data.
[0032] The modification information may be, for example, data indicating a difference between the three-dimensional coordinates of the first shape data and the three-dimensional coordinates of second shape data indicating a shape different from the shape indicated by the first shape data. The modification information acquisition unit 2 may accept specification of data indicating the difference, or may calculate the difference using the first shape data and the second shape data.
[0033] The first shape data and the second shape data may both be composed of point cloud data. In this case, the first point cloud data constituting the first shape data and the second point cloud data constituting the second shape data may be set to have corresponding points. In this case, the change information acquisition unit 2 may generate a point cloud movement vector that connects corresponding points in the first point cloud data and the second point cloud data. The point cloud movement vector serves as change information. The vector ΔSTL in FIG. 1 is an example of a point cloud movement vector.
[0034] The surface movement amount determination unit 3 determines the movement amount of the nodes of a part of the target surface of the surface of the object represented by the base model based on the change in the 3D coordinates indicated by the change information. The nodes of the target surface may be, for example, nodes of the base model corresponding to the changed 3D coordinates indicated by the change information. The surface movement amount determination unit 3 may determine the nodes of the target surface in the base model based on the 3D coordinates indicated by the change information. The movement amount of the nodes can be expressed, for example, as a vector or a scalar value. In the example of FIG. 1, the surface node movement vector ΔSnode is an example of the movement amount of the nodes of the target surface. The surface node movement vector ΔSnode is a movement vector from the nodes of the target surface in the base model to the nodes of the target surface in the updated model.
[0035] As an example, the surface movement amount determination unit 3 may determine, as the nodes of the target surface, the nodes of the base model corresponding to each of the changed three-dimensional coordinates in the first shape data. In this case, the movement amount of each node of the target surface can be determined based on the movement amount of the three-dimensional coordinates of the first shape data corresponding to each node indicated in the change information.
[0036] The solid model generation unit 4 generates an updated model, which is a solid model with a different shape from the base model, based on the movement amount of the nodes of the target surface determined by the face movement amount determination unit 3. The nodes of the target surface of the updated model are moved from the nodes of the target surface of the base model by the movement amount determined by the face movement amount determination unit 3. In other words, the solid model generation unit 4 executes a process of moving the nodes of the target surface of the base model based on the determined movement amount of the nodes of the target surface.
[0037] The solid model generation unit 4 may determine the amount of movement of the interior nodes of the base model based on the amount of movement of the nodes of the target surface. The amount of movement of the interior nodes can be expressed, for example, as a vector or a scalar value. In the example of FIG. 1, the interior node movement vector ΔINnode is the amount of movement of the nodes of the target surface. The interior node movement vector ΔINnode is the movement vector from the interior nodes in the base model to the interior nodes in the updated model.
[0038] The solid model generation unit 4 can generate an updated model by moving the nodes of the target surface of the base model by the movement amounts determined by the surface movement amount determination unit 3, and further moving the internal nodes by the determined movement amounts. That is, the updated model may be generated by moving the nodes of the target surface of the base model and the internal nodes by the determined movement amounts, respectively.
[0039] The movement amount of an internal node can be calculated, for example, by using a value obtained by weighting the movement amounts of other multiple nodes whose movement amounts are known according to the distance from the internal node. As an example, the movement amount of an internal node between a node on the target surface and a fixed node can be calculated by averaging the movement amounts of the node on the target surface and the movement amount of the fixed node (=0) each weighted according to the distance from the internal node. This allows the movement amount of the internal node between the node on the target surface and the fixed node to be calculated by interpolation.
[0040] The solid model generation unit 4 may move multiple target internal nodes among all internal nodes of the base model. The target internal nodes may be, for example, multiple predetermined internal nodes. Alternatively, they may be internal nodes that satisfy a movement condition. The movement condition may be, for example, a condition related to the shape or size of the solid element formed by the internal nodes. The solid model generation unit 4 may repeatedly execute a process of determining the movement amount for multiple target internal nodes based on the movement amount and distance of multiple other nodes whose movement amount is known, and moving the multiple target internal nodes. For example, the above process can be repeated until the movement amount of the internal node becomes equal to or less than a threshold. This allows for the construction of solid elements with a configuration suitable for analysis.
[0041] The solid model generation unit 4 may determine whether the polyhedral elements formed by the nodes of the target surface satisfy predetermined tolerance conditions, and may decide whether to move the internal nodes depending on the determination result. If the tolerance conditions are not satisfied, it may be determined to move the internal nodes. The tolerance conditions may be, for example, that the polyhedral elements have a shape that can be analyzed. For example, elements with a negative volume often cause errors in analysis. In this way, by setting the tolerance conditions as conditions related to the shape or size of the polyhedral elements, a solid model suitable for analysis can be generated.
[0042] In the example of Figure 1, the solid model generation system 10 generates an updated model based on the base model and change information. The target solid model can be obtained by using the base model, which is an existing solid model. This eliminates the need to generate a solid model from scratch, and allows for efficient acquisition of the solid model.
[0043] (Example of mold creation system configuration) The forming analysis unit 5 performs forming analysis using the updated model generated by the solid model generation system 10. The forming analysis is a forming simulation using the finite element method. The forming analysis unit 5 may be, for example, a CAE system that performs press forming analysis using a die solid model. As a result of the analysis, for example, molded product shape data is calculated that indicates the shape of a molded product when a target material (workpiece) is press-molded using a die of the updated model. In this case, the molded product shape data is data that indicates an estimated shape of the molded product.
[0044] The shape difference calculation unit 6 calculates the difference between the molded product shape data of the analysis result and target shape data indicating the target shape of the molded product. For example, the difference between the three-dimensional coordinates of the molded product shape data and the corresponding three-dimensional coordinates of the target shape data is calculated.
[0045] The mold shape correction unit 7 corrects the mold shape data (first shape data) based on the difference calculated by the shape difference calculation unit 6. For example, the mold shape correction unit 7 may determine the amount of movement of the three-dimensional coordinates in the mold shape data according to the difference. This amount of movement may be included in the change information acquired by the solid model generation system 10.
[0046] In the example of Figure 1, by repeatedly performing the following steps: generation of a solid model by the solid model generation system 10; analysis using the solid model by the molding analysis unit 5; calculation of the difference based on the analysis results by the shape difference calculation unit 6; and correction of the mold shape data based on the difference by the mold shape correction unit 7, the mold shape data becomes more suitable for obtaining a molded product of the target shape.
[0047] The solid model generation system 10 and the mold shape data creation system are configured with one or more computers each equipped with a processor and memory. The functions of the base model acquisition unit 1, change information acquisition unit 2, face movement amount determination unit 3, solid model generation unit 4, molding analysis unit 5, shape difference calculation unit 6, and mold shape correction unit 7 can be realized by the processor executing a predetermined program. Such programs and non-transitory storage media storing them are also included in the embodiments of the present disclosure.
[0048] (System operation example) FIG. 2 is a flowchart showing an example of the operation of the system shown in FIG. 1. In the example of FIG. 2, in S1, the die shape data creation system 20 acquires target shape data. The target shape data is data indicating the target shape of a press-molded product to be formed by pressing using a die. The target shape data may be, for example, three-dimensional coordinate data indicating the target shape of the press-molded product. The target shape data may be point cloud data, surface data, or a collection of line data. The die shape data creation system 20 may acquire the target shape data from, for example, CAD data (design data) of the press-molded product, CAE analysis results, or data obtained by measuring the shape of a prototype product produced by pressing.
[0049] In S2, the mold shape data creation system 20 acquires mold shape data. The mold shape data is data indicating the three-dimensional shape of the mold. The mold shape data acquired in S2 indicates an initial mold shape, i.e., the shape of the mold before modification. The mold shape data is data in a format different from that of a finite element model. The mold shape data may be point cloud data, surface data, or a collection of line data. As an example, the mold shape data of the initial mold shape may be acquired by reading CAD data (design data) of the mold from a CAD system. Alternatively, the mold shape data may be acquired from data obtained by measuring the shape of an actually manufactured mold. Alternatively, the mold shape can be generated from target shape data. For example, a shape obtained by offsetting the target shape taking into account the thickness of the member can be generated as the shape of the mold surface. In this way, the initial mold shape data may be equivalent to the target shape.
[0050] If there is no base model, which is a finite element model, corresponding to the mold shape data (NO in S3), the mold shape data creation system 20 generates a base model, which is a mold solid model (S4). The base model may be generated based on the mold shape data acquired in S2. For example, solid elements representing the three-dimensional shape of the mold can be constructed by mesh-dividing the three-dimensional mold shape indicated by the mold shape data. The solid elements of the base model may be automatically generated from the mold shape data. Alternatively, at least some of the solid elements of the base model may be determined based on instructions input by the user.
[0051] The forming analysis unit 5 performs a press forming analysis using the base model, i.e., the die solid model, generated in S3 (S9). In the forming analysis, the forming analysis unit 5 calculates the behavior of the die and the workpiece when the workpiece is press formed using the die indicated by the die solid model. As a result of the analysis, molded product shape data indicating the shape of the molded product obtained by press forming is generated. This allows the molded product shape data to be acquired (S10). Note that the molded product shape data obtained by the analysis may include the shape obtained by deformation that occurs in the workpiece after it has been molded using the die (i.e., after it has been released from the die), in addition to the deformation that occurs in the workpiece when it is press formed using the die.
[0052] In S11, the shape difference calculation unit 6 compares the molded product shape data acquired in S10 with the target shape data acquired in S1 to determine the shape difference (difference) between the target shape and the molded product shape. The shape difference calculation unit 6 may, for example, calculate the difference between the three-dimensional coordinates of the target shape indicated by the target shape data and the three-dimensional coordinates of the corresponding points on the molded product indicated by the corresponding molded product shape data. The difference may be expressed as a vector or a scalar value. In calculating the shape difference, a correspondence relationship between the three-dimensional coordinates in the target shape data and the three-dimensional coordinates in the molded product shape data may be determined. The process of determining this correspondence relationship may be similar to the process of determining the points in the mold shape data that correspond to each node of the base model BM, which will be described later.
[0053] If the shape difference determined in S11 satisfies a predetermined condition (YES in S12), the mold shape data corresponding to the mold solid model used in the molding analysis at that time is determined as the mold shape data to be output (S14). The condition in S12 can be, for example, that the shape difference is equal to or less than a threshold value.
[0054] If the shape difference does not satisfy the condition (NO in S12), the mold shape correction unit 7 corrects the mold shape data based on the shape difference (S13). The mold shape data before correction is an example of first shape data corresponding to the base model, and the mold shape data after correction is an example of second shape data. For example, the mold shape correction unit 7 can move the corresponding three-dimensional coordinates of the mold by an amount of movement corresponding to the calculated shape difference (difference) from the target at each three-dimensional coordinate of the molded product. The amount of movement can be expressed as a vector or a scalar value. The magnitude of the amount of movement may be expressed, for example, by a value obtained by multiplying the difference calculated as the shape difference by a predetermined gain.
[0055] When the die shape data is corrected in S13, the process returns to S3. In this case, the base model has already been generated. Therefore, YES is determined in S3, and the solid model generation system 10 executes the solid model generation process of S5 to S8. In S5, the base model acquisition unit 1 acquires the already generated base model. The acquired base model is a base model corresponding to the die shape data before correction (an example of first shape data) before correction in S13.
[0056] In S6, the change information acquisition unit 2 acquires data indicating the correction to the mold shape data in S13 as change information indicating the change to the first shape data. For example, data indicating the amount of movement of the mold shape data relative to the three-dimensional coordinates is acquired as the change information.
[0057] In S7, the surface movement amount determination unit 3 determines the movement amounts of the nodes of some of the target surfaces of the surface of the mold represented by the base model based on the change information. S7 may include, for example, a process of determining a correspondence relationship between the three-dimensional coordinates of the mold shape data (first shape data) and the nodes of the target surface of the base model, and a process of determining the movement amount of each node using the movement amount of the three-dimensional coordinates of the mold shape data (first shape data) corresponding to each node of the target surface.
[0058] In S8, the solid model generation unit 4 generates an updated model based on the movement amounts of the nodes of the target surface determined in S7. The updated model is a mold solid model that represents a mold shape different from the base model. The solid model generation unit 4 can generate the updated model, for example, by calculating the movement amounts of the internal nodes of the base model based on the movement amounts of the nodes of the target surface determined in S7. For example, the movement amounts of the internal nodes between the movement amounts of the nodes of the target surface and fixed nodes (nodes with a movement amount of 0) may be calculated by interpolation. The movement amount of a certain internal node can also be calculated based on the movement amounts of other nodes whose movement amounts have already been calculated. For example, the movement amount of one internal node can be calculated using a value obtained by weighting the movement amounts of multiple other nodes according to the distance between the nodes.
[0059] Furthermore, the process of updating the movement amount of each internal node using the movement amounts of other nodes may be repeated for all internal nodes. In this case, for example, the process of updating the movement amount of each internal node may be repeated until the movement amount of the internal node after updating becomes equal to or less than a threshold value.
[0060] If an updated model is generated in the process of S8, in S9, the molding analysis unit 5 executes molding analysis using the updated model, and molded product shape data is acquired (S10). Thereafter, shape difference determination (S11) and, if NO in S12, mold shape data correction (S13) are executed. The updated model generated in S8 is used as a new base model in the subsequent processes. Furthermore, the mold shape data corrected in S13 may be used as second shape data, and the mold shape data before correction in S13 may be used as first shape data.
[0061] The following processes are repeatedly executed until the shape difference satisfies the predetermined conditions in S12: modifying the mold shape data based on the shape difference (S13), generating a mold solid model (updated model) corresponding to the modified mold shape data (S5 to S8), performing molding analysis using the updated model (S9), obtaining the analysis results (S10), and determining the shape difference (S11).
[0062] (Example of operation of the solid model generation system) FIG. 3 is a flowchart showing a specific example of the processing of the solid model generation system of A1 (S5 to S8) in FIG. 2. In the example of FIG. 3, in S6, point cloud data, which is mold shape data, and point cloud movement amount data are acquired as change information. The point cloud movement amount data is data indicating the amount of movement of the three-dimensional coordinates of each point of the point cloud data. The point cloud movement amount data may be, for example, data indicating the amount of movement of the three-dimensional coordinates of the mold generated in the mold shape correction processing of S13 in FIG. 2. The three-dimensional coordinates of each point of the mold shape data are recorded in association with the amount of movement of each point. As a result, the three-dimensional coordinates of each point of the mold indicated by the mold shape data are associated with the amount of movement of each point.
[0063] Fig. 4 is a diagram showing examples of mold shape data and point cloud movement amount data. In the example of Fig. 4, the mold shape data includes data of the pre-modification mold shape STLa and data of the post-modification mold shape STLb. The movement amount data is represented by a vector ΔSTL connecting each point of the pre-modification mold shape STLa with a corresponding point of the post-modification mold shape STLb. Note that the data of the pre-modification mold shape STLa is an example of first shape data, and the data of the post-modification mold shape STLb is an example of second shape data.
[0064] FIG. 5 is a diagram illustrating an example of mold shape data. In the example of FIG. 5, the mold shape data is point cloud data that represents the mold shape using the three-dimensional coordinates of multiple points Pa1 to Pa9. For each of the multiple points Pa1 to Pa9, a value of the movement amount ΔSTL is recorded. In addition, element surfaces ELM1 to ELM6 that are determined by three of the multiple points Pa1 to Pa9 are defined. For example, an element surface number may be assigned to the element surface surrounding each point, and data indicating the points that constitute the element surface (e.g., point numbers) may be recorded corresponding to the element surface number. Element surfaces may be defined for all points of the pre-modification mold shape STLa. Alternatively, element surfaces may be defined for points that move among all points of the pre-modification mold shape STLa and points adjacent to the moved points. The element surfaces indicate the range of movement of the pre-modification mold shape STLa.
[0065] In S7 of Fig. 3, the surface movement amount determination unit 3 calculates the movement amount of the node of the target surface in the base model using the movement amount of each of the three-dimensional coordinates of the mold shape data. As an example, first, the mold of the mold shape data and the mold of the base model are placed in the same coordinate system, and alignment is performed to determine their positional relationship. The alignment method is not particularly limited, but examples include a method of determining the positions of the target shape, prototype, and mold shape so that reference surfaces, axes, or points set on the target shape are aligned, or a method (e.g., best fit) of determining the position that minimizes the sum of errors between the point cloud data of the entire or partial prototype and the target shape.
[0066] FIG. 6 is a diagram showing an example of a state in which the mold shape data of the base model BM and the pre-modification mold shape STLa are aligned. Points of the mold shape data corresponding to each of the nodes of the base model BM aligned in the same coordinate system are determined. In the example of FIG. 6, nodes n1 to n7 corresponding to the mold surface of the base model BM are shifted in the positive direction and the opposite negative direction of predetermined directions D1 to D7, respectively. Note that the shift directions D1 to D7 of the nodes n1 to n7 do not have to be the same direction. For example, the nodes n1 to n7 may be shifted (offset) in a direction perpendicular to the surface of the pre-modification mold shape STLa (e.g., the normal direction of the element surface). The element surface of the mold shape data through which the straight lines (shift lines) passing through connecting the positive offset points n1+ to n7+ of each of the nodes n1 to n7 and the negative offset positions n1- to n7- pass is searched for.
[0067] FIG. 7 is a diagram showing an example of an element surface ELM1 through which a shift line of one node n2 of the base model passes. The correspondence between node n2 and the element surface ELM1 through which the shift line passes is recorded as correspondence data. The element surface ELM1 is a surface formed by multiple points Pa5, Pa8, and Pa9 of the mold shape data. This determines the correspondence between each node of the base model BM and the element surface of the mold shape data. That is, the points of the mold shape data corresponding to each node of the base model BM are determined. Furthermore, since the correspondence between the element surface formed by the moving points of the points of the mold shape data and the nodes of the base model is determined, the moving nodes of the nodes on the surface of the base model, i.e., the nodes of the target surface, are also determined. In this way, the nodes of the base model corresponding to the moving points on the mold surface in the mold shape data (first shape data) can be set as nodes of the target surface.
[0068] The surface movement amount determination unit 3 calculates the movement amount of each node of the base model using the movement amount of the point of the mold shape data corresponding to the node. For example, as shown in FIG. 8, the movement amount of node n2 is calculated using point movement vectors ΔSTL5, ΔSTL8, and ΔSTL9, which are the movement amounts of points Pa5, Pa8, and Pa9 constituting the element surface ELM1 corresponding to node n2. For example, the movement amount at intersection n2v between the shift line of node n2 and the element surface ELM1 can be calculated using point movement vectors ΔSTL5, ΔSTL8, and ΔSTL9. The movement amount of this intersection n2v can be used as the movement amount of node n2. The movement amount at intersection n2v of the node shift line and the element surface can be calculated using, for example, a shape function. As an example, the surface node movement vector ΔSnode, which is the movement amount of the node of the target surface of the base model, can be calculated using the following formula.
number
[0069] The process of determining the points of the mold shape data that correspond to the nodes of the target surface of the base model is not limited to the above example. For example, the points of the mold shape data that are closest to the nodes of the target surface of the base model may be determined as the corresponding points.
[0070] In S8 of FIG. 3, the solid model generation unit 4 calculates the movement amounts of the internal nodes based on the movement amounts of the nodes of the target surface calculated in S7. FIG. 9 is a diagram for explaining an example of calculation of the movement amounts of the internal nodes. In the example shown in FIG. 9, the nodes on the surface of the base model include moving nodes (nodes on the target surface) and fixed nodes that do not move. In the example of FIG. 9, the white circles are nodes on the target surface and the black circles are fixed nodes. As an example, the moving nodes are nodes on a surface corresponding to the molding surface of the mold, and the fixed nodes are nodes on a surface (constrained surface) that contacts the mold holder, for example. In this example, the movement amount of the internal node ni1 between the node ns1 of the target surface and the fixed node nf1 is calculated based on the movement amount of the node ns1 of the target surface and the movement amount of the fixed node nf1 (=0).
[0071] FIG. 10 is a diagram illustrating an example of calculation of an internal node. In the example of FIG. 10, the movement amount Δinnnode of the internal node ni1 between the node ns1 on the target surface and the fixed node nf1 is calculated. The movement amount Δinnnode is calculated by averaging the movement amount Δsnode (=1) of the node ns1 on the target surface and the movement amount Δfnode (=0) of the fixed node nf1, each weighted according to the distances Lis and Lif from the internal node ni1. The movement amount may be a vector value or a scalar value. The internal nodes between the nodes on the target surface and the fixed nodes are defined as internal nodes on the line connecting the nodes on the target surface and the fixed nodes or within a predetermined distance from the line. In this way, the movement amount of the internal nodes between the nodes on the target surface and the nodes on the fixed surface can be calculated by interpolation. For example, the movement amount may be calculated by interpolation for all internal nodes in the base model that are located between the target surface and the fixed surface.
[0072] In addition to calculating the movement amount of an internal node based on the movement amounts of the nodes on the target surface and the fixed nodes, the solid model generation unit 4 may also calculate the movement amount of an internal node based on the movement amounts of other nodes around the internal node. For example, as shown in Fig. 11, the movement amount of a target node can be calculated using the movement amounts Δi of each of N other nodes around the target node and the distance Li (i = 1, 2, ..., N) from the target node. For example, as shown in the following formula, the movement amount Δ of the target node can be calculated as the average of values obtained by weighting the movement amounts Δi of each other node by the distance Li from the target node.
number
[0073] The solid model generation unit 4 may, for example, calculate the movement amount for each of multiple target internal nodes of the base model based on the movement amounts of the target surface nodes and fixed nodes. Then, for each of the multiple internal nodes, the movement amount may be recalculated based on the movement amounts of other surrounding nodes, and the movement amount may be updated. This updating of the movement amounts of the multiple internal nodes may be repeated until a termination condition is satisfied. The termination condition may be a condition related to the movement amount of the updated node, such as the movement amount of each node being equal to or less than a threshold value. Alternatively, the termination condition may be a condition related to the shape or size of the solid element, such as the shape or size of the solid element resulting from the moved node being within an acceptable range. This repeated process can smooth the distribution of the movement amounts of the nodes, thereby maintaining the shape of each solid element in the solid model (updated model) suitable for finite element analysis.
[0074] 3, the solid model generation unit 4 may determine whether or not the solid elements (polyhedral elements) formed by the nodes of the target surface after being moved by the movement amount of the nodes determined by the surface movement amount determination unit 3 satisfy predetermined tolerance conditions. The tolerance conditions may include conditions regarding the shape or size of the polyhedral elements. For example, the tolerance conditions may include a condition that the volume of the polyhedral elements is not negative.
[0075] The solid model generation unit 4 may calculate the movement amount of the internal nodes and move them if the tolerance conditions are not met, but may not move the internal settings if the tolerance conditions are met. This allows the internal node movement process to be omitted as needed, thereby improving the processing efficiency of updated model generation.
[0076] In the above example, the solid model generation system generates a solid model of a die. The generated solid model is not limited to a solid model of a die. That is, the present invention is also applicable to generating solid models of structures other than dies. By applying the solid model generation system to generating a solid model of a die, it is possible to efficiently create a die for obtaining a formed product with a shape close to the target. For example, by generating a solid model of a die using the solid model generation system, it is possible to efficiently obtain shape data of the die that takes into account the amount of change in the formed product due to springback during press forming using the die.
[0077] The solid model generation unit 4 may generate a shell model made up of nodes on the target surface after they have been moved by the movement amount of the nodes on the target surface determined by the surface movement amount determination unit 3. In other words, by reading a base model made up of shell elements (polygonal elements) in the base model acquisition unit 1, it is also possible to generate a shell model made up of nodes on the target surface after they have been moved as determined by the surface movement amount determination unit 3.
[0078] Although one embodiment of the present invention has been described above, the above-described embodiment is merely an example for carrying out the present invention. Therefore, the present invention is not limited to the above-described embodiment, and the above-described embodiment can be appropriately modified and carried out within the scope of the spirit of the present invention. [Explanation of symbols]
[0079] 10 Solid Model Creation System 1 Base model acquisition section 2. Change information acquisition section 3. Plane movement amount determination section 4 Solid model generation section
Claims
1. a base model acquisition unit that acquires, as a base model, a solid model that is a three-dimensional finite element model corresponding to first shape data that indicates a three-dimensional shape of an object; a modification information acquisition unit that acquires modification information indicating a modification of three-dimensional coordinates in the first shape data; a surface movement amount determination unit that determines movement amounts of nodes of some target surfaces of the surface of the object represented by the base model based on the change in three-dimensional coordinates indicated by the change information; a solid model generation unit that generates an updated model, which is a solid model obtained by moving the nodes of the target surface of the base model by the movement amount determined by the surface movement amount determination unit.
2. 2. The solid model generation system according to claim 1, wherein the modification information is data indicating a difference between the three-dimensional coordinates of the first shape data and the three-dimensional coordinates of second shape data indicating a shape different from the shape indicated by the first shape data.
3. the first point cloud data constituting the first shape data and the second point cloud data constituting the second shape data have corresponding points set therein; the change information acquisition unit generates a point cloud movement vector connecting corresponding points of the first point cloud data and the second point cloud data; 3. The solid model generation system according to claim 2, wherein the surface movement amount determination unit generates a target surface node movement vector, which is a movement amount of a node of the target surface in the base model, based on the point cloud movement vector.
4. The solid model generation system according to any one of claims 1 to 3, wherein the solid model generation unit determines the amount of movement of the internal nodes of the base model based on the amount of movement of the nodes of the target surface, and generates the updated model by moving the internal nodes of the base model by the determined amount of movement.
5. The solid model generation system according to any one of claims 1 to 3, wherein the solid model generation unit determines a movement amount of an internal node of the base model based on the movement amounts of each of a plurality of other surrounding nodes and the distance from the internal node, and generates the updated model by moving the internal node of the base model by the determined movement amount.
6. 6. The solid model generation system according to claim 5, wherein the solid model generation unit determines a movement amount of the internal node of the base model based on the movement amounts of each of a plurality of other surrounding nodes and the distance from the internal node, and repeatedly executes a process of moving the internal node of the base model by the determined movement amount multiple times for a plurality of target internal nodes.
7. 5. The solid model generation system according to claim 4, wherein the solid model generation unit determines whether or not a polyhedral element formed at a node that moves in accordance with the movement amount of the node of the target surface satisfies a predetermined tolerance condition, and determines whether or not to move the internal node depending on the determination result.
8. The solid model generation system according to any one of claims 1 to 3, wherein the surface movement amount determination unit determines three-dimensional coordinates in the first shape data corresponding to nodes of the target surface, and determines the movement amounts of the nodes of the target surface based on changes in the determined corresponding three-dimensional coordinates.
9. a base model acquisition process for acquiring, as a base model, a solid model that is a three-dimensional finite element model corresponding to first shape data that indicates a three-dimensional shape of the object; a modification information acquisition process for acquiring modification information indicating a modification of three-dimensional coordinates in the first shape data; a surface movement amount determination process for determining movement amounts of nodes of some target surfaces of the surface of the object represented by the base model based on the change in three-dimensional coordinates indicated by the change information; a solid model generation process for generating an updated model, which is a solid model obtained by moving the nodes of the target surface of the base model by the movement amount determined in the surface movement amount determination process; and a solid model generation program for causing a computer to execute the process.
10. 1. A computer-implemented method for generating a solid model, comprising: a base model acquisition step of acquiring, as a base model, a solid model that is a three-dimensional finite element model corresponding to first shape data that indicates a three-dimensional shape of the object; a modification information acquisition step of acquiring modification information indicating a modification of three-dimensional coordinates in the first shape data; a surface movement amount determination step of determining movement amounts of nodes of some target surfaces of the surface of the object represented by the base model based on the change in three-dimensional coordinates indicated by the change information; a solid model generating step of generating an updated model, which is a solid model obtained by moving the nodes of the target surface of the base model by the movement amount determined in the face movement amount determining step.
Citation Information
Patent Citations
Heat-resistant thermosetting resin
JP1984041320A
Method for analyzing press forming
JP2002219523A
Mold CAD model data creation device and mold CAD model data creation method
JP6949415B2