Component stackability review method, apparatus, electronic device, and storage medium

By using the gravity-based DFM algorithm, the problem of inaccurate evaluation of component tilt and self-stacking states in existing technologies has been solved, enabling rapid and accurate evaluation of component stackability, optimizing design, and improving production efficiency and product quality.

CN120832777BActive Publication Date: 2026-02-06GD MIDEA AIR CONDITIONING EQUIP CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202511316857.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-09-16
Publication Date
2026-02-06
Estimated Expiration
2045-09-16

AI Technical Summary

Technical Problem

Existing DFM review techniques cannot effectively handle complex review scenarios involving component tilting and self-stacking, especially since they cannot perform reviews with detailed numerical rules, leading to inaccurate review results.

Method used

The gravity-based DFM algorithm is used to obtain the initial three-dimensional model of the target component, set the mass distribution and motion state, perform mesh generation, simulate gravity simulation results, analyze tilt state and collision information, and determine the stackability of the component.

Benefits of technology

It enables rapid and accurate evaluation of complex review items, improves review efficiency and accuracy, identifies potential design flaws, optimizes product design, and enhances production stability and reliability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120832777B_ABST
    Figure CN120832777B_ABST
Patent Text Reader

Abstract

The application provides a component stackability review method and device, electronic equipment and storage medium, belonging to the technical field of intelligent manufacturing, comprising: obtaining an initial three-dimensional model of a target component, setting a quality distribution and an initial motion state of the initial three-dimensional model, and obtaining a rigid body model; performing grid division on the rigid body model to generate grid OBJ data; simulating gravity simulation results of a preset number of target components in a stacked state by using the grid OBJ data; and determining an inclination state of the target components in the stacked state according to the gravity simulation results. The application can effectively solve the limitations of the prior art in complex scenarios, comprehensively evaluate the stability of the components in the stacked state through accurate physical modeling and gravity simulation, and provide a scientific basis for product design optimization by discovering design defects in advance, which not only improves the accuracy and efficiency of the review, but also significantly improves the stability and reliability of the product, reduces the production cost and potential safety risks.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of intelligent manufacturing technology, and in particular to a method, apparatus, electronic device, and storage medium for evaluating the stackability of components. Background Technology

[0002] Existing Design for Manufacturability (DFM) review techniques mainly rely on primitive feature recognition and numerical rule comparison, which cannot handle review scenarios that cannot be quantified, such as component tilting and self-stacking state analysis.

[0003] In addition, some existing tilt determination methods typically set a fixed tilt angle threshold (such as 10°). If the tilt angle of an object exceeds this threshold, it is considered unstable. This method is simple and direct, but lacks in-depth analysis of actual situations.

[0004] In view of this, there is an urgent need to provide a new DFM review method to meet the technical requirement of rapid and accurate review of component stackability. Summary of the Invention

[0005] This invention provides a method, apparatus, electronic device, and storage medium for evaluating the stackability of components, which addresses the shortcomings of existing technologies that rely on primitive feature recognition and numerical rule comparison, and are unable to evaluate complex evaluation items that cannot be determined using detailed numerical rules. By developing a gravity-based DFM algorithm, these complex evaluation items can be evaluated quickly and accurately.

[0006] This invention provides a method for evaluating the stackability of components, comprising the following steps:

[0007] Obtain the initial 3D model of the target component that requires stacking;

[0008] Set the mass distribution and initial motion state of the initial 3D model to obtain the rigid body model of the target component;

[0009] The rigid body model is meshed to generate mesh OBJ data based on the discretized mesh elements of all the rigid body models;

[0010] Using the aforementioned mesh OBJ data, a gravity simulation of a predetermined number of the target components in a stacked state was performed.

[0011] Based on the gravity simulation results, the tilt state of all the target components in the stacked state is determined, and the tilt state is used to characterize the stackability of the target components.

[0012] According to the present invention, a method for evaluating the stackability of components includes simulating the gravity simulation results of a predetermined number of target components in a stacked state using the mesh OBJ data, comprising:

[0013] Obtain the gravity simulation motion trajectory of the rigid body model corresponding to each target component under the action of gravity;

[0014] Based on the gravity simulation motion trajectories of all the rigid body models, determine the collision information of all the rigid body models in the stacked state;

[0015] Based on the collision information, locate the contact points of all the rigid body models when they collide in the stacked state;

[0016] Determine the normal vector of the surface where each contact point is located, the projection offset of the centroid of the rigid body model onto each surface, and the attitude angle of the rigid body model;

[0017] Based on the normal vector of the plane where each contact point is located, determine the angle between the directions of two adjacent rigid body models at the plane where the contact point is located between them.

[0018] The gravity simulation results include at least the directional angle, the projection offset, and the attitude angle.

[0019] According to a component stackability review method provided by the present invention, obtaining the gravity simulation motion trajectory of each rigid body model under gravity includes:

[0020] Based on the direction of gravity and the value of gravitational acceleration, the six degrees of freedom of each rigid body model in three-dimensional space are determined;

[0021] Establish mathematical model equations for the motion of each rigid body model under the action of gravity in the six degrees of freedom, the mathematical model equations including translational motion model equations and rotational motion model equations;

[0022] Based on the constraints of the rigid body models in the stacked state, the mathematical model equations are solved to obtain the simulation position and simulation attitude changes of each rigid body model under the action of gravity and the constraints in each simulation time step.

[0023] The gravity simulation motion trajectory of each rigid body model is determined based on the simulated position change and simulated attitude change.

[0024] According to the component stackability review method provided by the present invention, after locating the contact points of all the rigid body models when they collide in the stacked state based on the collision information, the method further includes:

[0025] Based on the normal vector of the surface at each contact point and the surface material parameters of the target component, the frictional force at each contact point is calculated.

[0026] The frictional force at each contact point is set as an external force acting on the relevant rigid body model, and the mathematical model equations of each rigid body model are updated.

[0027] According to a component stackability review method provided by the present invention, determining the tilt state of all target components in the stacked state based on the gravity simulation results includes:

[0028] Based on the directional angle between two adjacent rigid body models, the geometric stability judgment result of the rigid body model corresponding to each target component in the stacked state is determined;

[0029] Based on the projection offset of the centroid of each rigid body model at the position plane of the contact point, the static stability judgment result of the rigid body model corresponding to each target component in the stacked state is determined.

[0030] Based on the attitude angle of each rigid body model during the collision process, determine the dynamic stability judgment result of the rigid body model corresponding to each target component in the stacked state;

[0031] By combining the geometric stability assessment results, static stability assessment results, and dynamic stability assessment results of each rigid body model, the tilt state of all target components in the stacked state is determined.

[0032] According to a component stackability review method provided by the present invention, the step of setting the mass distribution and initial motion state of the initial three-dimensional model and obtaining the rigid body model of the target component includes:

[0033] The mass distribution requirements are determined based on the material, structure, and usage scenario of the target component;

[0034] Based on the mass distribution requirements, different density regions are set in the initial three-dimensional model, and different density regions correspond to different mass distributions.

[0035] After the initial 3D model with the density region set is completed, it is imported into the gravity simulation solver. The gravity simulation solver is used to check and / or refine the distribution of the density region and set the initial motion state of the initial 3D model to generate the rigid body model of the target component.

[0036] According to a component stackability review method provided by the present invention, the mesh OBJ data includes vertex information, face information, mesh topology information and normal vector information of each face of the rigid body model.

[0037] According to the component stackability review method provided by the present invention, after generating the mesh OBJ data, it further includes:

[0038] Using a coordinate system transformation matrix, the mesh OBJ data is transformed from the local coordinate system of the rigid body model to the global simulation coordinate system.

[0039] The present invention also provides a component stackability assessment apparatus, comprising:

[0040] The 3D modeling unit is used to obtain the initial 3D model of the target component that requires stacking.

[0041] The model initialization unit is used to set the mass distribution and initial motion state of the initial three-dimensional model and to obtain the rigid body model of the target component.

[0042] Mesh generation unit, used to mesh the rigid body model, so as to generate mesh OBJ data based on the discretized mesh units of all the rigid body models;

[0043] The simulation execution unit is used to simulate the gravity simulation results of a preset number of the target components in a stacked state using the mesh OBJ data;

[0044] The design analysis unit is used to determine the tilt state of all the target components in the stacked state based on the gravity simulation results. The tilt state is used to characterize the stackability of the target components.

[0045] The present invention also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor, when executing the program, implements the component stackability assessment method as described above.

[0046] The present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the component stackability review method as described above.

[0047] The present invention also provides a computer program product, including a computer program that, when executed by a processor, implements the component stackability review method as described above.

[0048] The present invention provides a component stackability review method, device, electronic device and storage medium, which provides a gravity-based DFM method. By modeling the rigid body pose parameters in all dimensions, it realizes the review of stackability review items that cannot be determined by detailed numerical rules. While effectively improving the review efficiency, it breaks through the traditional single position analysis mode and supports accurate simulation of complex motion scenarios of multiple rigid bodies. Attached Figure Description

[0049] To more clearly illustrate the technical solutions in the embodiments of the present invention or related technologies, the drawings used in the description of the embodiments or related technologies will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0050] Figure 1 This is a flowchart illustrating the component stackability assessment method provided by the present invention.

[0051] Figure 2 This is a schematic diagram showing the directional angles between adjacent components in a stacked state.

[0052] Figure 3 This is a schematic diagram showing the projection offset and attitude angle of the centroid of adjacent components in a stacked state at each of the said position planes.

[0053] Figure 4 This is a schematic diagram of the gravity simulation solution provided by the present invention.

[0054] Figure 5 This is a schematic diagram of the tilt state determination process in the stacked state provided by the present invention.

[0055] Figure 6 This is a schematic diagram of the UI initialization process for the gravity simulation design provided by this invention.

[0056] Figure 7 This is a schematic diagram of the component stackability review device provided by the present invention.

[0057] Figure 8 This is a schematic diagram of the structure of the electronic device provided by the present invention. Detailed Implementation

[0058] To make the objectives, technical solutions, and advantages of this invention clearer, the technical solutions of this invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this invention. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without creative effort are within the scope of protection of this invention.

[0059] It should be noted that in the description of this invention, the terms "comprising," "including," or any other variations thereof are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element. The terms "upper," "lower," etc., indicating orientation or positional relationships based on the orientation or positional relationships shown in the accompanying drawings, are only for the convenience of describing the invention and simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and therefore should not be construed as a limitation of the invention. Unless otherwise expressly specified and limited, the terms "installed," "connected," and "linked" should be interpreted broadly, for example, as a fixed connection, a detachable connection, or an integral connection; a mechanical connection or an electrical connection; a direct connection or an indirect connection through an intermediate medium; or a connection within two elements. Those skilled in the art can understand the specific meaning of the above terms in this invention according to the specific circumstances.

[0060] The terms "first," "second," etc., used in this invention are used to distinguish similar objects and not to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that embodiments of the invention can be implemented in orders other than those illustrated or described herein, and the objects distinguished by "first," "second," etc., are generally of the same class and the number of objects is not limited; for example, a first object can be one or more.

[0061] Design for Manufacturability (DFM) is a design methodology that considers the manufacturing process during the product design phase. Its aim is to optimize product design to improve manufacturing efficiency, reduce costs, and enhance product quality. The core objective of DFM is to ensure smooth product production while minimizing manufacturing complexity and potential problems by comprehensively considering various factors in the manufacturing process (such as material selection, process flow, and assembly methods) during the design phase.

[0062] Existing Design Factor (DFM) reviews primarily rely on primitive feature recognition and numerical rule comparison, which cannot handle review scenarios that cannot be quantified (such as component tilting, self-stacking state analysis, etc.). This invention proposes a component stackability review method. By establishing an accurate physical model and combining it with gravity simulation technology, the behavior of components during actual stacking is simulated, thereby achieving a comprehensive evaluation of component stackability. This method not only identifies potential defects in component design but also provides important basis for product design optimization, ensuring the stability and reliability of components in actual production, and effectively improving production efficiency and product quality.

[0063] Self-stacking refers to a stable stacking state formed by multiple target components under the influence of gravity, relying on their own structure and interaction forces. This state is common in actual manufacturing and use, such as during component storage, transportation, or assembly, where components may be stacked together. If the stacking is unstable, it may lead to component damage, assembly failure, or safety hazards.

[0064] Simulation testing assesses the stability of components in a self-stacking state, preventing component damage or safety accidents caused by improper stacking. It helps designers identify potential design problems early, optimizing component geometry, mass distribution, and surface properties to improve stacking stability. During manufacturing, a stable self-stacking state reduces manual intervention, improves the efficiency of automated assembly, and lowers production costs.

[0065] The following is combined with Figures 1-8 This invention describes the component stackability assessment method, apparatus, electronic device, and storage medium provided by the present invention.

[0066] Figure 1 This is a flowchart illustrating the component stackability review method provided by the present invention, as shown below. Figure 1 As shown, including but not limited to the following steps:

[0067] Step 101: Obtain the initial 3D model of the target component that requires stacking.

[0068] The target component refers to the whole or part of a product, component, or part that needs to be tested and reviewed. For example, it could be the outer casing of a home appliance, the cylinder block of a car engine, or the outer casing of a 3C product.

[0069] Taking a home appliance casing component as an example, the first step is to collect the design drawings and technical documents of the target component, clarifying its shape, dimensions, and connection relationships. Then, a suitable 3D modeling software (such as SolidWorks or AutoCAD) is selected to construct an initial 3D model based on this data.

[0070] When constructing the initial 3D model, basic shapes (such as cuboids, cylinders, etc.) can be created first, followed by the addition of detailed features (such as holes, slots, bosses, etc.) and the setting of connection relationships (such as hinges, bolt connections, etc.). The initial 3D model proposed in this invention refers to a 3D model that only contains the geometric shape and structural information of the components, without considering mass distribution and motion state.

[0071] Step 102: Set the mass distribution and initial motion state of the initial 3D model to obtain the rigid body model of the target component.

[0072] Mass distribution refers to the distribution of mass within a component, which affects the component's center of gravity and stability. Considering that uneven mass distribution in a target component may lead to a shift in the center of gravity, thereby affecting stacking stability, this invention can determine the required mass distribution based on the material (such as plastic, metal, etc.) and shape of the target component (such as a home appliance housing assembly).

[0073] Generally, mass attributes can be added to the initial 3D model in modeling software to specify material density and define mass distribution.

[0074] Furthermore, the 3D model with the completed mass distribution settings is imported into a gravity simulation solver (such as ADAMS or Simulate), and initial motion states are set, including initial position (such as the origin), attitude (such as horizontal placement), velocity, and acceleration (usually initialized to zero). After the above settings, the resulting rigid body model possesses mass properties and initial motion states, making it suitable for physical simulation calculations. The establishment of the rigid body model ensures that the component not only has a geometric shape but also physical properties, providing the necessary physical foundation for subsequent gravity simulations.

[0075] Step 103: Mesh the rigid body model to generate mesh OBJ data based on the discretized mesh elements of all rigid body models.

[0076] Meshing is the process of discretizing a continuous geometric model into a series of small elements. Mesh OBJ data is a file format containing vertex information, face information, mesh topology, and normal vector information, used by gravity simulation solvers for numerical calculations. The rigid body model generated in step 102 is imported into a meshing tool (such as Gmsh or TetGen). Then, based on the model complexity and simulation accuracy requirements, a suitable meshing algorithm is selected, mesh parameters are set, and the meshing operation is performed. After checking and optimizing the mesh quality, the mesh OBJ file is exported. Meshing allows a continuous geometric model to be discretized into discrete elements, enabling the computer to perform numerical calculations efficiently and providing data support for subsequent simulation analysis.

[0077] Step 104: Using mesh OBJ data, simulate the gravity simulation results of a preset number of target components in a stacked state.

[0078] Gravity simulation is a technique that uses numerical simulation methods to calculate the motion and interaction processes of target components under the influence of gravity. The gravity simulation solver sets the direction of gravity and the value of gravitational acceleration, establishes the equations of motion based on the six degrees of freedom of a rigid body, considers constraints, and selects appropriate numerical methods to solve the equations of motion, calculating the trajectories of multiple components under gravity. Simultaneously, a continuous collision detection algorithm can be used to monitor collisions between components in real time, accurately locate contact points, and calculate the normal and tangent vectors of the contact surfaces for subsequent calculations of collision forces and frictional forces. Through gravity simulation, the physical behavior of target components during actual stacking, including motion, collisions, and friction, is simulated, providing an intuitive and accurate basis for evaluating the stackability of target components.

[0079] Step 105: Based on the gravity simulation results, determine the tilt state of all the target components in the stacked state. The tilt state is used to characterize the stackability of the target components.

[0080] Tilting state refers to the deviation of a component from its ideal stacking position or attitude due to gravity or other external forces while it is in a stacked state. The stability of the component is comprehensively evaluated through methods such as geometric determination, static balance determination, and attitude angle determination. For example, the angle between the contact surface normal vector and the gravitational acceleration is calculated to determine if it exceeds a threshold; the centroid projection offset is calculated to determine if it exceeds a set value; and the changes in pitch and roll angles are monitored to determine if they exceed set thresholds. Ultimately, the tilting state of the target component in the stacked state is determined, thus characterizing its stackability.

[0081] The following uses the outer casing assembly of a certain home appliance as an example to illustrate the specific implementation process of the above steps:

[0082] Collect design drawings of appliance casing components and use SolidWorks to build initial 3D models, including basic shapes, detailed features, and connections. When building the model, ensure all geometric details match the design drawings, especially critical connections and supporting structures, to guarantee the model's accuracy.

[0083] Based on the material of the outer shell component (plastic, density approximately 1200 kg / m³), the mass distribution is set in SolidWorks to ensure that the physical properties of the model match those of the actual part. It is then imported into ADAMS, with the initial position set to the origin, the orientation horizontal, and both velocity and acceleration zero, to generate a rigid body model.

[0084] In Gmsh, the rigid body model is unstructured and meshed with a medium mesh density to balance computational accuracy and efficiency. An OBJ file containing vertex, face, mesh topology, and normal vector information is exported to provide data support for subsequent simulations.

[0085] In ADAMS, the gravity direction is set vertically downwards, and the gravitational acceleration is 9.8 m / s². The Runge-Kutta method can be used to solve the equations of motion to simulate the stacking process of multiple shell components. Collisions are monitored in real time, and the normal and tangent vectors at the contact points are calculated to ensure the accuracy of the simulation results.

[0086] Assuming the calculated angle between the contact surface normal vector and gravity is 12°, the centroid projection offset is 6% of the bottom surface dimension, and the attitude angle change is 7°, these calculated values ​​indicate that the stackability of the housing assembly is poor, requiring design optimization. Based on simulation results, it is recommended to adjust the geometry or mass distribution of the components to improve their stacking stability.

[0087] The component stackability review method provided by this invention can effectively solve the limitations of existing technologies in complex scenarios. Through accurate physical modeling and gravity simulation, it can comprehensively evaluate the stability of components in a stacked state, identify design defects in advance, and provide a scientific basis for product design optimization. This not only improves the accuracy and efficiency of the review, but also significantly improves the stability and reliability of the product, and reduces production costs and potential safety risks.

[0088] It should be further explained that before performing gravity simulation on the rigid body model, this invention performs mesh generation on the rigid body model, dividing it into multiple small elements, mainly considering the following three points:

[0089] (1) The need for numerical calculation: Many physical simulation methods (such as the finite element method, discrete element method, etc.) are based on discretized meshes for numerical solution. By dividing the rigid body model into small elements, the distribution and variation of physical quantities can be approximately described in each element, thereby transforming the complex continuous problem into a series of algebraic equations on discrete elements, which is convenient for numerical solution.

[0090] (2) Improved computational accuracy: Smaller elements can capture the geometric details and local changes of physical phenomena of rigid body models more precisely, thereby improving the accuracy of simulation. For example, when simulating rigid body collisions, smaller elements can calculate contact points and normal vectors more accurately.

[0091] (3) Adapting to complex geometries: For rigid body models with complex geometries, discretization into smaller units can more flexibly adapt to their shape characteristics, enabling the rigid body model to be described and simulated more accurately. Even in regions with irregular geometries or local details, the integrity and accuracy of the rigid body model can be ensured by adjusting the mesh density and meshing method.

[0092] In summary, this invention generates the required OBJ mesh data for a gravity simulation solver by discretizing the geometric model of a rigid body into a series of small elements through mesh generation. This not only provides fundamental data for the subsequent physical simulation of the rigid body model by the gravity simulation solver but also affects the accuracy and efficiency of the simulation. The quality of mesh generation directly affects the accuracy of subsequent collision detection, physical quantity calculation, and other processes.

[0093] The following details how this invention performs mesh generation on a rigid body model, including but not limited to the following steps:

[0094] Step 1: Import the rigid body model created in rigid body modeling software (such as SolidWorks, AutoCAD, etc.) into a meshing tool such as Gmsh or TetGen for meshing. The imported file format is usually STL, STEP, BREP, IGES, etc., which can accurately describe the geometry of the rigid body model.

[0095] Step 2: Based on the geometric complexity and simulation accuracy requirements of the rigid body model, select a suitable meshing algorithm. Common meshing algorithms include structured meshing and unstructured meshing. Structured meshing is mainly suitable for regular geometries, generating neatly arranged and high-quality mesh elements, but it may be difficult to apply to complex geometries. Unstructured meshing, on the other hand, is suitable for complex geometries, can adaptively mesh, and generate mesh elements of different shapes such as triangles or tetrahedrons, offering high flexibility.

[0096] Step 3: Determine the mesh density, size, and other parameters. Mesh density reflects the fineness of the mesh; higher density can improve simulation accuracy but increases computational cost. Mesh size controls the maximum side length or diameter of mesh elements and can be set according to the characteristic dimensions and accuracy requirements of the rigid body model. Simultaneously, mesh quality parameters, such as element shape quality and Jacobian, can be set to ensure the generated mesh quality meets simulation requirements.

[0097] Step 4: Start the meshing process in the meshing tool. The meshing tool will discretize the rigid body model into a series of small elements, such as tetrahedral elements or triangular elements, based on the selected meshing algorithm and the set parameters.

[0098] Step 5: Perform a quality check on the generated mesh to identify any poor-quality elements, such as distorted, excessively small, or excessively large elements. If quality issues are found in some parts of the mesh, optimization measures can be taken, such as adjusting mesh parameters or locally re-meshing, to improve the mesh quality.

[0099] Step 6: Export the divided mesh in OBJ file format. The exported OBJ mesh data is a common 3D model file format that can describe the geometry, mesh topology, and other information of the rigid body model. The gravity simulation solver can read the OBJ mesh data for subsequent simulation calculations.

[0100] Existing DFM (Dynamic Motion Modeling) evaluation techniques have significant limitations when handling complex scenarios, especially for detailed motion and interaction analysis of components in a stacked state. Traditional simulation methods often only provide relatively coarse results, failing to accurately capture collision information, contact point details, and component attitude changes. This is because traditional position-based rigid body model motion simulation methods only focus on position when solving position constraints, ignoring the direction of motion of the rigid body model, resulting in insufficient accuracy in distance / angle calculations.

[0101] Penetration refers to the phenomenon in simulation where, during a collision between two rigid body models, due to insufficient accuracy of the collision detection algorithm or an unreasonable time step setting, one rigid body model can pass through another. This phenomenon is physically impossible but may occur in simulation. Physical displacement refers to situations in simulation where the trajectory or positional change of a rigid body model does not conform to actual physical laws. This may be due to neglecting the rigid body model's direction of motion, friction, or other physical constraints.

[0102] Specifically, the direction of motion of a rigid body model affects its distance and angular relationships with other rigid body models. Ignoring the direction of motion can lead to deviations in the calculation results. The direction of motion of a rigid body model determines the orientation of its surface. Ignoring the direction of motion may result in errors in collision detection, leading to penetration or non-physical displacement phenomena. Furthermore, ignoring the direction of motion can cause simulation results to deviate from actual physical laws, affecting the assessment of the stability and motion state of component stacks.

[0103] To address these shortcomings, this invention further refines the simulation process of gravity simulation results. By acquiring the gravity simulation trajectory of each target component, analyzing collision information, locating contact points, and determining relevant parameters, the accuracy and completeness of the simulation results are significantly improved. This allows designers to gain a deeper understanding of the behavior of target components in a stacked state, identify potential design flaws in advance, and thus optimize product design, improve production efficiency, and enhance product quality.

[0104] As an optional embodiment, step 103, which involves using mesh OBJ data to simulate the gravity of a predetermined number of target components in a stacked state, specifically includes, but is not limited to, the following steps:

[0105] Step 1: Obtain the gravity simulation motion trajectory of the rigid body model corresponding to each target component under the action of gravity.

[0106] Gravity simulation trajectory refers to the motion path of a rigid body model under the influence of gravity over time, including changes in position, velocity, and acceleration. This invention establishes six-degree-of-freedom equations of motion for the rigid body, considering factors such as initial motion state, gravity direction, and gravitational acceleration. Using numerical solution methods (such as the Euler method or the Runge-Kutta method), it can accurately calculate the changes in the motion state of each rigid body model within each simulation time step, thereby obtaining its gravity simulation trajectory.

[0107] Step 2: Based on the gravity simulation motion trajectories of all rigid body models, determine the collision information of all rigid body models in the stacked state.

[0108] Collision information refers to data such as the time, location, and force of collisions between different rigid body models in a stacked state. By monitoring the motion trajectory of the rigid body models in real time and combining it with collision detection algorithms, the moment of collision can be accurately determined and relevant collision information can be recorded.

[0109] Optionally, the specific execution flow of the collision detection algorithm includes:

[0110] Step 2.1, Select a collision detection algorithm: Choose a suitable collision detection algorithm based on the simulation requirements, such as the Gilbert-Johnson-Keceoglou (GJK) polygon collision detection algorithm, the Swept Volume algorithm, or the Continuous Collision Detection (CCD) algorithm. The collision detection algorithm used in this invention can be the CCD algorithm, which can effectively avoid collision omissions or penetrations caused by excessively large time steps.

[0111] Step 2.2, Set collision detection parameters: Set the accuracy and frequency of collision detection, and determine the threshold and tolerance range of collision detection based on the motion speed of the rigid body model and the simulation time step.

[0112] Step 2.3, Real-time Collision Monitoring: During the simulation, the distances between rigid body models are calculated in real time to determine whether a collision has occurred. For rapidly moving rigid body models, interpolation methods can be used to predict the time of collision, avoiding missed collisions or penetration due to excessively large time steps.

[0113] Step 2.4, Output collision information: Once a collision is detected, record relevant collision information, such as collision time, collision location, collision speed, etc.

[0114] Step 3: Based on the collision information, locate the contact points when all rigid body models collide in the stacked state.

[0115] The contact point refers to the specific location where two rigid body models come into contact during a collision. By analyzing collision information and combining it with geometric calculation methods (such as calculating the nearest point pair), the contact point can be accurately located. Determining the contact point is crucial for subsequent collision response calculations and friction force calculations.

[0116] Step 4: Determine the normal vector of the surface at each contact point, the projection offset of the centroid of the rigid body model onto each surface, and the attitude angle of the rigid body model.

[0117] The normal vector is the vector perpendicular to the plane where the contact point is located, used to calculate the direction of the collision force. The center-of-mass projection offset is the distance the rigid body's center of mass is projected onto the contact surface along the normal vector direction, used to assess the static equilibrium state of the target component. Attitude angles include pitch, yaw, and roll angles, used to describe the attitude changes of the rigid body model in three-dimensional space. By calculating these parameters, the stability and dynamic behavior of the component during collisions and stacking can be comprehensively evaluated.

[0118] Step 5: Based on the normal vector of the plane where each contact point is located, determine the angle between the directions of two adjacent rigid body models at the plane where the contact point is located.

[0119] The gravity simulation results mentioned in this invention include at least the aforementioned directional angles, projection offsets, and attitude angles.

[0120] Figure 2 This is a schematic diagram showing the directional angles between adjacent components in a stacked state, such as... Figure 2 The diagram illustrates how to determine the directional angle. The lower component is placed on a horizontal ground tray, and the upper component is stacked on top of the lower component. The plane normal vector is perpendicular to the upper surface of the upper component, while the direction of gravity is vertically downwards. The directional angle is the angle between the plane normal vector of the upper component's upper surface and the direction of gravity. The specific determination method is as follows:

[0121] The normal vector is perpendicular to the lower surface of the upper component and points upwards from the contact surface. Since the direction of gravity is usually vertically downwards, the angle between the plane normal vector and the direction of gravity is denoted as . θ It can be calculated using the vector dot product formula:

[0122] ;

[0123] in, θ The angle between directions, n It is a plane normal vector. g This is the direction vector of gravity.

[0124] Direction angle θ This reflects the degree of inclination of the lower surface of the upper component relative to the horizontal plane (the plane perpendicular to the direction of gravity). If θ If the tilt exceeds a certain threshold (e.g., 10°~15°), it indicates that the lower surface of the upper component is tilted too much, and the upper component may not be stable enough when stacked, posing a risk of sliding or tipping over.

[0125] Figure 3 This is a schematic diagram showing the projected offset and attitude angle of the centroid of adjacent components in a stacked state at each of the aforementioned position planes, as shown below. Figure 3 As shown, assume that two adjacent target components are an upper component and a lower component. The lower component is placed on a horizontal ground tray, and the upper component is stacked on top of the lower component. The center of mass of the upper component is denoted as C1, and the center of mass of the lower component is denoted as C2. The position surface refers to the upper surface of the lower component, that is, the surface in contact between the upper and lower components.

[0126] Project the centroid C1 of the upper component onto the upper surface of the lower component. Calculate the distance between the projection point of centroid C1 and the center point of the upper surface of the lower component (usually centroid C2), which is the projection offset Δx, also known as the projection distance.

[0127] The attitude angle change Δθ refers to the change in the attitude angle of a lower component after it is subjected to pressure from an upper component. The attitude angle change Δθ can be calculated by comparing the attitude angles of the lower component under no-load and under load from the upper component.

[0128] The following example, using a certain appliance casing assembly, illustrates how this invention determines the gravity simulation results of a preset number of target components in a stacked state from mesh OBJ data.

[0129] Step 1: In the ADAMS software, set the gravity direction to vertically downwards and the gravitational acceleration to 9.8 m / s². Based on the rigid body model of the appliance casing assembly, establish a six-degree-of-freedom motion equation, considering the initial motion states such as initial position, attitude, velocity, and acceleration. Use the Runge-Kutta method to solve the motion equation, calculate the changes in position, velocity, and acceleration of each rigid body model within each simulation time step, and obtain its gravity simulation motion trajectory.

[0130] Step 2: Employ a continuous collision detection algorithm to monitor the motion trajectories of multiple shell components during the stacking process in real time. When a collision is detected between two shell components, record the collision information, including the time, location, and force of the collision.

[0131] Step 3: Based on the collision information and using geometric calculation methods, calculate the location of the contact point between the relevant shell components at the time of the collision. For example, the contact point can be determined by calculating the nearest point pair between the surfaces of two rigid body models.

[0132] Step 4: For each contact point, calculate the normal vector of its location surface. Simultaneously, calculate the projection offset of the rigid body's center of mass onto the normal vector direction of the contact surface, as well as the attitude angle changes of the rigid body during the collision. For example, if a shell component has a pitch angle of 5°, a yaw angle of 3°, and a roll angle of 4° after the collision, record these attitude angle changes.

[0133] Step 5: Calculate the directional angle between two adjacent rigid body models at each contact point based on the normal vector of the surface where each contact point is located. For example, if the normal vectors of the rigid body models of two shell components at the contact point have been determined, the relevant directional angle θ can be calculated using the dot product formula.

[0134] The component stackability review method provided by this invention can more accurately simulate the motion and interaction processes of components in a stacked state compared to existing technologies. By acquiring the gravity simulation motion trajectory of each component, analyzing collision information in detail, locating contact points, and determining relevant parameters, the stability and dynamic behavior of components in a stacked state can be comprehensively evaluated. This method not only improves the accuracy and completeness of simulation results but also provides designers with more in-depth design optimization guidance, helping to identify potential design defects in advance, reduce scrap rates in the production process, and improve production efficiency and product quality.

[0135] In complex stacked simulation scenarios, accurately obtaining the gravity simulation motion trajectory of rigid body models is crucial. While existing technologies can provide basic simulations, they struggle to balance the accuracy of six-degree-of-freedom motion with the adaptability of constraints. This invention focuses on a method for obtaining gravity simulation motion trajectories, aiming to significantly improve the accuracy and reliability of simulation results through refined modeling and solving, thus providing solid support for manufacturability design during product development.

[0136] The following provides a specific implementation method for obtaining the gravity simulation motion trajectory of each rigid body model under the action of gravity, which mainly includes, but is not limited to:

[0137] Step 1: Based on the direction of gravity and the value of gravitational acceleration, determine the six degrees of freedom of each rigid body model in three-dimensional space.

[0138] In gravity simulation, the rigid body model's degrees of freedom in three-dimensional space include three translational degrees of freedom (along the X, Y, and Z axes) and three rotational degrees of freedom (around the X, Y, and Z axes). The direction of gravity (usually vertically downward) and gravitational acceleration (e.g., 9.8 m / s²) are the core factors affecting the rigid body's motion. Determining the six degrees of freedom is the foundation for establishing an accurate motion model.

[0139] Step 2: Establish the mathematical model equations for the motion of each rigid body model under the action of gravity in six degrees of freedom. The mathematical model equations include the translational motion model equations and the rotational motion model equations.

[0140] To accurately simulate the motion of a rigid body under gravity, mathematical model equations need to be constructed, including translational and rotational components. The translational motion model equations, based on Newton's second law, can be expressed as F=m a; The rotational operation model equations are based on the rotational dynamics equations, M=I α. Where M is torque, I is moment of inertia, and α is angular acceleration.

[0141] Step 3: Based on the constraints of the rigid body models in the stacked state, solve the mathematical model equations to obtain the simulation position and simulation attitude changes of each rigid body model under the action of gravity and constraints in each simulation time step.

[0142] In a stacked configuration, the motion of a rigid body model is subject to various constraints, such as joint constraints and contact surface constraints. These constraints are introduced into the mathematical model equations to restrict certain degrees of freedom of the rigid body. For example, a hinge joint may restrict the translational degree of freedom of the rigid body in a certain direction, allowing it to rotate only about a certain axis.

[0143] Then, by combining the constraints and the effect of gravity, numerical methods can be used to solve the mathematical model equations. Commonly used methods include the Euler method and the Runge-Kutta method, which can yield the position and attitude changes of the rigid body within each simulation time step.

[0144] As one or an alternative embodiment, the general steps for solving mathematical model equations using numerical methods include:

[0145] Step 3.1, Select a numerical method: Commonly used numerical methods include the Euler method and the Runge-Kutta method. The Euler method is a simple first-order method with fast computation speed, but relatively low accuracy; the Runge-Kutta method is a higher-order method with higher accuracy, but relatively large computational cost. Choose a suitable numerical method based on the simulation's requirements for accuracy and efficiency.

[0146] Step 3.2, Initialize variables: Based on the initial state of the rigid body (initial position, attitude, velocity, acceleration, etc.), initialize the relevant variables in the solution process.

[0147] Step 3.3, Discretize the time step: Discretize the continuous time domain into a series of small time steps Δt, so that the mathematical model equations can be solved using numerical methods within each time step.

[0148] Step 3.4, Iterative solution: For the Euler method, within each time step, the derivative at the current time is used to predict the state at the next time step; for the Runge-Kutta method, within each time step Δt, the derivatives at multiple intermediate points are calculated, and then the weighted average of these derivatives is used to update the state at the next time step.

[0149] Step 3.5, Update the state of the rigid body model: Based on the results of the numerical solution, update the state variables of the rigid body model, such as position, attitude, velocity, and acceleration.

[0150] Step 3.6, Check convergence: During the numerical solution process, check whether the solution converges. If the solution is found to be diverging or the error is too large, it may be necessary to adjust the numerical method or step size parameters.

[0151] Step 3.7, Record Results: Record the solution results for each time step, including information such as the position and orientation of the rigid body model, for subsequent analysis and visualization.

[0152] By establishing and solving the mathematical model equations of the rigid body model through the above steps, the position and attitude changes of the rigid body in each simulation time step can be obtained. In this way, the gravity simulation motion trajectory can be fitted, thus providing basic data for subsequent collision detection, tilt determination and other steps.

[0153] Step 4: Determine the gravity simulation motion trajectory of each rigid body model based on the simulation position change and simulation attitude change.

[0154] Finally, based on the solution results, the gravity simulation motion trajectory of the shell assembly is plotted. From the gravity simulation motion trajectory, the motion details of multiple target components during the stacking process can be clearly observed, such as smooth descent, contact with lower components, slight collisions, and attitude adjustments.

[0155] The component stackability review method provided by this invention significantly improves the accuracy and reliability of simulation results by determining the six degrees of freedom of a rigid body, establishing mathematical model equations, and solving them in conjunction with constraint conditions. The refined simulation results help R&D personnel gain a deeper understanding of the actual performance of products during stacking or assembly, identify and resolve potential design flaws in advance, optimize product design, and enhance market competitiveness.

[0156] Imagine a component placed on an inclined plane. Due to gravity, it will slide down the plane. If the simulation ignores the friction of the inclined plane or the component's attitude changes, the simulated motion trajectory may exhibit abnormal physical displacement phenomena, such as the component suddenly jumping or sliding at an unnatural angle. Such physical displacement phenomena, which do not conform to the laws of physics, will affect the accurate assessment of the component stack stability and motion state.

[0157] In view of this, after locating the contact points of all rigid body models colliding in a stacked state based on the collision information, the present invention further includes:

[0158] Based on the normal vector of the surface at each contact point and the surface material parameters of the target component, the frictional force at each contact point is calculated.

[0159] Friction is calculated based on the normal vector of the surface at the contact point and the surface material parameters of the target component. The surface material parameters include the static friction coefficient (μ_s) and the dynamic friction coefficient (μ_k), which determine the frictional characteristics between the contact surfaces. The static friction coefficient relates to the maximum static friction when the components are relatively stationary, while the dynamic friction coefficient relates to the dynamic friction when the components are relatively moving. During dynamic simulation, it is necessary to simulate the energy dissipation process to make the impact of friction on the rigid body model more realistic. The specific calculation steps may include:

[0160] Step 1: Input the material parameters of the rigid body model surface, such as the static friction coefficient μ_s and the dynamic friction coefficient μ_k. These parameters can be set according to the actual material properties or determined experimentally.

[0161] Step 2: Based on the motion state of the rigid body model, determine whether the contact point is in a static friction state or a dynamic friction state. If there is no relative sliding between the rigid body models, use the static friction coefficient; if relative sliding occurs, use the dynamic friction coefficient.

[0162] Step 3: Calculate the magnitude and direction of the frictional force according to Coulomb's law of friction. The magnitude of the frictional force is proportional to the normal force on the contact surface, and its direction is opposite to the tendency of relative motion or the direction of relative motion.

[0163] Furthermore, the frictional force at each contact point is set as an external force acting on the relevant rigid body model, the mathematical model equations of each rigid body model are updated, and the motion states such as acceleration, velocity, and position of the rigid body model are recalculated.

[0164] Specifically, friction acts as a tangential force at the point of contact, influencing the rigid body's motion along with the normal vector. By introducing a friction term into the original mathematical model equations, the translational and rotational model equations are completely updated. The translational model equation becomes... F total = ma ±f friction The rotational model equation becomes M total =I α± τ friction Thus, the updated mathematical model equations can more realistically reflect the complex forces and motions of the rigid body model in the stacked state, laying the foundation for subsequent simulation analysis.

[0165] in, F total The total net force acting on a rigid body model is the vector sum of all external forces acting on the rigid body, expressed in Newtons. m The mass of the rigid body is expressed in kilograms. a The translational acceleration of a rigid body; f friction Friction is the force of friction, which is opposite to the direction of relative motion (or the direction of the tendency of relative motion) of an object, and its unit is Newton. M total It refers to the total torque acting on a rigid body, that is, the vector sum of all external torques acting on the rigid body, and its unit is Newton-meter; I α is the moment of inertia of the rigid body, expressed in kilograms per square meter; α is the angular acceleration of the rigid body, expressed in radians per second squared. τ friction Frictional torque is usually calculated by multiplying the frictional force on the contact surface by the lever arm, and its unit is Newton-meter.

[0166] The relationship between collision detection, contact point location, and friction calculation involved in the component stackability assessment method provided by this invention, and their role in DFM detection, are explained as follows:

[0167] Collision detection is fundamental, responsible for real-time monitoring of whether collisions occur between rigid bodies and determining the time and location of such collisions. Only after collisions are detected can contact point localization and friction force calculation be performed. Contact point localization, based on collision detection, further identifies the specific contact points, calculates the normal and tangent vectors of these points, and provides accurate positional and directional information for collision response and friction force calculation. Friction force calculation, based on contact point information and surface material parameters, dynamically calculates the static and kinetic coefficients of friction, simulating the energy dissipation process and making the impact of friction on rigid body motion more realistic.

[0168] This invention, through precise collision detection and response during the Design for Modeling (DFM) review process, can promptly detect collisions between rigid bodies, preventing object penetration or non-physical displacement phenomena, making simulation results closer to reality, and improving the accuracy of DFM detection. Contact point localization provides accurate collision location information, enabling the collision response to correctly calculate the magnitude and direction of the collision force. Friction calculation allows the simulation to realistically reflect the relative motion between objects. Ignoring friction calculation may result in motion that does not conform to actual physical laws. Furthermore, it can realistically simulate the stability of target components in self-stacking, tilting, and other states, as well as their interactions during assembly, helping to identify potential design problems. Collision detection can identify whether collisions will occur during self-stacking or assembly, thus assessing feasibility; contact point localization helps analyze the contact between components, thus assessing stability; friction calculation can simulate anti-slip and anti-displacement effects between components. Problems identified through collision detection can guide designers to optimize component geometry, contact point localization can help designers optimize the contact surface design, and friction calculation results can provide designers with a basis for adjusting surface materials or processing techniques.

[0169] Figure 4 This is a schematic diagram of the gravity simulation solution provided by the present invention. Figure 4 The gravity simulation solution process shown can be pre-loaded into the gravity simulation solver, so that the gravity simulation solver can quickly obtain the gravity simulation results based on the mesh generation results of the rigid body model.

[0170] Step 1 involves initializing the gravity simulation solver, including loading the configuration file, setting the simulation step size (e.g., 0.01 seconds / step), defining rigid body mass, dimensions, and material properties, and setting constraint parameters (e.g., contact surface friction coefficient, joint limitations), providing basic parameters for subsequent simulations. Alternatively, based on the product design files of the target component, elements such as rigid bodies, particles, and joints participating in the simulation can be loaded into the simulation space to construct a complete simulation scene. For example, for the stacked simulation of a home appliance casing assembly, the rigid body model of the casing assembly and the joint models of the connecting components can be imported to construct a complete simulation scene.

[0171] Step 2: Update the velocity and angular velocity of the rigid body based on the external forces and torques currently acting on it. Specifically, the gravity simulation solver reads the external force and torque data (such as gravity, contact force, friction, etc.) currently acting on the rigid body model, calculates the changes in velocity and angular velocity of the rigid body model according to the dynamic equations, and updates the motion state of the rigid body model. For example, a rigid body model is subjected to external forces... F Its quality is m Calculate acceleration according to Newton's second law a=F / m And thus update speed vnew = v old + a Δt, where v new This is the updated speed. v old That's the speed before the update. a This is the acceleration of the rigid body.

[0172] Step 3: Perform proximity detection. Based on the rigid body's position, orientation, and motion state in the previous simulation step, predict the possible motion trend of the rigid body in the current step. Generate proximity constraints C based on the previous frame's state. prox The gravity simulation solver records the penetration depth and normal direction: based on the position, orientation, and motion state of the rigid body model in the previous frame, it efficiently detects the proximity relationships between rigid bodies using algorithms such as spatial partitioning or bounding volume hierarchy. When the distance between two rigid bodies is less than a preset threshold, a proximity constraint C is generated. prox The penetration depth and normal direction are recorded. For example, when the distance between rigid body A and rigid body B is detected to be less than the collision threshold, a proximity constraint is generated, and the normal direction and penetration depth of the contact surface between the two rigid bodies are recorded to provide data support for subsequent collision response calculations.

[0173] Step 4 employs an iterative algorithm (such as the sequential impulse method) to calculate the collision impulse based on proximity constraints and physical laws, iteratively correcting the rigid body motion state to resolve the penetration problem. For example, if rigid bodies A and B collide, the collision impulse is calculated based on the masses, velocities, and normal directions of the contact surfaces of the two rigid bodies. The velocities and positions of the two rigid bodies are then updated to separate them, resolving the penetration problem. Simultaneously, based on the friction coefficient and relative motion tendency, the friction impulse is calculated to restrict tangential sliding. For instance, when the contact surfaces of the two rigid bodies have a tendency to slide relative to each other, the friction impulse is calculated according to Coulomb's law of friction, the angular velocities of the rigid bodies are updated, and their tangential sliding is restricted, simulating the real friction effect.

[0174] Step 5, predict the position x of the next frame. n+1 and the direction q of the next frame n+1 This function combines current velocity, angular velocity, and kinematic equations to predict the position and orientation of a rigid body in the next frame. For example, the translational position prediction formula is: The direction prediction formula is: This provides a predicted state for subsequent constraint solving. v For the current speed, Δ t For time step, ω This represents the current angular velocity.

[0175] Step 6 involves multi-round iterative constraint solving, including: defining the four types of constraints (proximity constraints, PBD basic constraints, joint constraints, and bidirectional coupling constraints) and their interrelationships. Proximity constraints are processed first to correct penetration displacements, followed by PBD basic constraints to ensure the distance between particles and rigid bodies meets the requirements, then joint constraints to correct displacements, and finally bidirectional coupling constraints to synchronously update the states of rigid bodies and particles.

[0176] Specifically, proximity constraint refers to the penetration displacement Δ based on the proximity constraint. p Correct the rigid body position and apply the velocity correction formula. v new= v old +(Δ p / Δ t Update velocity. For example, when two rigid bodies collide, the rigid bodies are separated along the normal direction based on the penetration displacement Δp, and their positions and velocities are corrected.

[0177] PBD basic constraint processing includes distance constraints between particles or rigid bodies, utilizing position correction formulas. Correct the positions of particles and rigid bodies to ensure they meet distance constraints. Here, Δk is the position correction amount, current_dist is the current distance, rest_dist is the target distance, and correction_factor is the correction coefficient.

[0178] Joint constraint correction includes correcting joint constraint displacements using the Jacobian matrix projection method. For rotary joints, this is done based on the Jacobian matrix... JC Current angular velocity ω and target angular velocity ω target Calculate the corrected torque τ : τ = JC T ( ω target- ω Then, it is transformed to the global simulation coordinate system to correct the angular velocity of the joint.

[0179] The unified processing of bidirectional coupling constraints refers to establishing a connection model between rigid bodies and particles, adopting a unified constraint solution method, and synchronously updating the position and velocity of both.

[0180] Step 7, Post-processing proximity constraints to enhance stacking stability (Guendelman method): The gravity simulation solver uses the Guendelman method to post-process proximity constraints, enhancing stacking stability and improving the physical realism and reliability of the simulation results.

[0181] Step 8: When a collision occurs between rigid bodies and the collision energy exceeds a certain threshold, the impact propagation calculation is triggered. Using the Guendelman method, the propagation path and influence range of the shock wave in the rigid body are calculated based on the collision energy and the mass distribution of the rigid body. For example, in component stacking simulation, when an upper component impacts a lower component, the propagation of the shock wave in the lower component is calculated, and the impact propagation results on surrounding components are evaluated.

[0182] Based on the impact propagation results, a strategy of adjusting local rigid body properties and strengthening constraints is adopted to enhance stacking stability. For example, the friction coefficient between rigid bodies is increased in the impact region, or a damping term is introduced when calculating joint constraints to improve system stability.

[0183] Step 9, Output and Rendering, includes updating the final position, attitude, velocity, and angular velocity of the rigid body obtained from simulation calculations to the display system. The display system converts the updated rigid body state information into a format recognizable by the rendering engine for visualization rendering. For example, the rigid body position and attitude information is passed to the OpenGL rendering engine to generate intuitive simulation animations for users to view and analyze. Users can observe the rigid body motion and interactions through a visual interface, analyzing collision, friction, and constraint effects. For example, observing the stacking simulation animation of appliance casing components can check for component collisions or instability, providing a basis for product design optimization.

[0184] Step 10: Perform parameter tuning, which mainly includes adjusting the time step, the number of iterations, calibrating the friction coefficient, and fine-tuning other parameters.

[0185] For example, regarding time step adjustment, the time step can be adjusted according to the simulation stability and accuracy requirements. For high-speed motion or delicate operation scenarios, the time step can be reduced (e.g., from 0.01 seconds / step to 0.005 seconds / step) to improve simulation accuracy.

[0186] To adjust the number of iterations, a balance is struck between computational cost and simulation accuracy. For scenarios with limited computational resources, the number of iterations is appropriately reduced, and the computational efficiency of each iteration is improved through algorithm optimization.

[0187] For friction coefficient calibration, the friction coefficient of a rigid body surface can be calibrated based on experimental data or empirical formulas. For example, if the friction coefficient of a certain plastic material is determined to be 0.3 through friction testing, corresponding settings can be made in the simulation to improve the accuracy of friction force calculation.

[0188] Fine-tuning other parameters, such as adjusting the coefficient of restitution (e.g., from 0.8 to 0.5) to change the rebound effect of the rigid body after a collision, or optimizing mass properties (e.g., refining mass property settings in rigid body models with uneven mass distribution), can comprehensively improve the performance of the gravity simulation solver.

[0189] The component stackability assessment method provided in this invention, based on six-degree-of-freedom motion modeling, introduces constraint condition solving, breaking through the limitations of traditional methods that only focus on position. In particular, it incorporates friction into the mathematical model equations to update the rigid body motion state. This innovative combination makes the simulation results more closely resemble actual physical laws, providing a more accurate solution for complex stacking scenarios.

[0190] This invention also innovatively proposes calculating frictional force at the contact point and incorporating it as an external force into the mathematical model equations. The static and kinetic friction coefficients are calculated using Coulomb's law of friction, dynamically updating the translational and rotational model equations. This mechanism enables the simulation model to reflect changes in the rigid body's motion state caused by variations in frictional force in real time, significantly improving the accuracy and realism of the simulation results.

[0191] Furthermore, this invention deepens the application of iterative algorithms in collision response. It utilizes iterative algorithms to progressively correct the rigid body's position and velocity to solve the penetration problem. Based on this, iterative calculations of collision impulse and friction impulse are applied to further refine the collision response process. This enhanced application effectively balances simulation accuracy and computational efficiency, improving the performance of the simulation system.

[0192] Existing technologies for evaluating component stacking stability often rely on tilt determination methods with fixed thresholds, which fail to comprehensively consider factors such as component geometry, mass distribution, and dynamic behavior. This invention specifically proposes a tilt state determination method that integrates multi-dimensional stability assessments. By comprehensively evaluating geometric stability, static stability, and dynamic stability, the tilt state of components in a stacked state can be determined more comprehensively and accurately, thus overcoming the shortcomings of existing technologies and providing a more scientific evaluation basis for component stacking design in product development and production.

[0193] Figure 5 This is a schematic diagram of the tilt state determination process in the stacked state provided by the present invention, as shown below. Figure 5 As shown, based on the gravity simulation results, the logic for determining the tilt state of all target components in a stacked state is as follows, mainly including but not limited to:

[0194] Step 1: Based on the directional angle between two adjacent rigid body models, determine the geometric stability judgment result of the rigid body model corresponding to each target component in the stacked state.

[0195] The orientation angle refers to the angle between the normal vector of two adjacent rigid body models at the contact point and the direction of gravity. This angle reflects the contribution of the component geometry to stability. The larger the orientation angle, the less favorable the component geometry is for stable stacking.

[0196] Therefore, this invention first determines the geometric stability of the components in the stacked state based on the comparison between the directional angle and a first threshold (e.g., 10°~15°). If the directional angle exceeds the first threshold, it indicates poor geometric stability, and the output geometric stability judgment result is abnormal stacking tilt. If the directional angle does not exceed the first threshold, the process proceeds to the subsequent step 2.

[0197] Step 2: Based on the projection offset of the centroid of each rigid body model onto the contact point's position plane, determine the static stability judgment result of the rigid body model corresponding to each target component in the stacked state.

[0198] The projected offset of the center of mass refers to the distance projected from the center of mass of a rigid body onto the direction of the normal vector of the contact surface. This distance reflects the equilibrium state of the target component when it is stationary; the larger the projected offset, the easier it is for the target component to tip over.

[0199] This invention determines the static stability of target components in a stacked state by comparing the centroid projection offset with a second threshold (e.g., 5% of the bottom surface feature size). If the directional angle does not exceed the second threshold, the stacking of all target components is considered normal. If the projection offset exceeds the second threshold, it can be determined that there is a problem with static stability, and further judgment needs to be made in step 3.

[0200] Step 3: Based on the attitude angle of each rigid body model during the collision process, determine the dynamic stability judgment result of the rigid body model corresponding to each target component in the stacked state.

[0201] Attitude angles, including pitch, yaw, and roll, describe the attitude changes of a rigid body model in three-dimensional space. These attitude angle changes reflect the stability of the target component in a dynamic environment. Therefore, the dynamic stability of the target component in a stacked state can be determined by comparing the attitude angle changes with a third threshold (e.g., 5°~10°). If the attitude angle changes exceed the third threshold, it indicates poor dynamic stability, and the output dynamic stability judgment result is abnormal stack tilt. The attitude angle changes can be understood as the change in any one of the pitch, yaw, or roll angles.

[0202] Step 4: Combine the geometric stability judgment results, static stability judgment results and dynamic stability judgment results of each rigid body model to determine the tilt state of the target component in the stacked state.

[0203] Combination Figure 5 As shown, the component stackability assessment method provided by this invention is based on the following steps to comprehensively assess the geometric stability, static stability, and dynamic stability of each rigid body model, and determine the tilt state of the target component in the stacked state:

[0204] First, geometric stability is judged based on the directional angle between two adjacent rigid body models. If the directional angle exceeds the preset first threshold (e.g., 15°), it indicates that the geometric shape of the target component is not conducive to stable stacking and there is a great risk of slippage or overturning. In this case, the tilt state of the target component can be directly determined as abnormal stacking tilt (i.e., stackability is unqualified), and subsequent judgments are terminated.

[0205] Static stability is determined only when the geometric stability test passes, based on the centroid projection offset of each rigid body model.

[0206] If the centroid projection offset does not exceed the preset second threshold (e.g., 5% of the bottom feature size), it indicates that the rigid body's centroid is located within the stable region of its supporting surface. Even without considering dynamic disturbances, its static stability is stable. Therefore, its tilt state can be directly determined as "normal stacking" (i.e., stackability is qualified), and the judgment process ends.

[0207] If the static stability assessment indicates that the rigid body is in a critical state of static instability, then static analysis alone is insufficient to determine its final stability. In this case, it cannot be directly deemed unqualified; instead, the next step, dynamic stability analysis, is required for a final determination. This invention assesses dynamic stability based on the change in attitude angle of each rigid body model during the collision process. If this change in attitude angle exceeds a preset third threshold (e.g., 10°), it indicates that although the geometry and statics of the component barely meet the requirements, it will experience violent shaking or flipping during actual dynamic stacking, ultimately leading to instability. In other words, the dynamic stability assessment result is abnormal stacking tilt (i.e., stackability unqualified). Conversely, if the dynamic stability assessment result is normal, it indicates that the target component can withstand the dynamic impact during stacking and eventually stabilizes; therefore, its tilt state is determined to be normal stacking (i.e., stackability qualified).

[0208] The component stackability review method provided by this invention significantly improves the accuracy and comprehensiveness of the evaluation by comprehensively assessing the tilt state of components in a stacked state from multiple dimensions. This method not only effectively identifies potential defects in component design but also provides clear direction and basis for product design optimization. By optimizing the geometry, mass distribution, and surface material parameters of components, the stacking stability of components can be significantly improved, reducing scrap rates in the production process and increasing production efficiency and product quality. Furthermore, this method helps to identify potential safety hazards in the design in advance, reducing production costs and safety risks.

[0209] As an optional embodiment, the process of setting the mass distribution and initial motion state of the initial three-dimensional model mentioned in the above embodiments to obtain the rigid body model of the target component includes, but is not limited to: determining the mass distribution requirements based on the material, structure, and usage scenario of the target component; setting different density regions in the initial three-dimensional model according to the mass distribution requirements, with different density regions corresponding to different mass distributions; importing the initial three-dimensional model after the density region settings are completed into a gravity simulation solver, so as to use the gravity simulation solver to check and / or refine the distribution of density regions and set the initial motion state of the initial three-dimensional model to generate the rigid body model of the target component.

[0210] Specifically, setting the mass distribution is a crucial step in rigid body modeling. The following are specific implementation steps provided by this invention:

[0211] Step 1: Determine the required quality distribution.

[0212] (1) Analyze the material and structure of the component: Understand what material the component is made of. Different materials have different densities and mass distributions. For example, the mass distribution of metal components is usually more uniform than that of plastic components, but if there are internal reinforcing ribs or cavities, the mass distribution may be uneven.

[0213] (2) Consider the usage scenarios of the components: If the components are subjected to different forces during use, the mass distribution may affect their motion characteristics and stability. For example, for a component that needs to rotate at high speed, uneven mass distribution may lead to vibration and imbalance.

[0214] Step 2: Use 3D modeling software to set the mass distribution.

[0215] (1) Adding mass attributes in modeling software: Many 3D modeling software programs allow users to add mass attributes to the model. For example, in SolidWorks, the mass and density of a part can be set through the "Mass Attributes" function.

[0216] (2) Specify material density: Enter the corresponding density value according to the actual material of the component. For example, the density of steel is about 7850 kg / m³, and the density of aluminum is about 2700 kg / m³.

[0217] (3) Define mass distribution: Some software allows users to define the non-uniformity of mass distribution. For example, different materials or structures inside a component can be simulated by setting different density regions.

[0218] Step 3: Refine the mass distribution settings using the solver.

[0219] (1) Import the initial 3D model generated by the 3D modeling software into the gravity simulation solver. For example, save the initial 3D model as an OBJ file and then import it into the gravity simulation solver.

[0220] (2) In the gravity simulation solver, the mass distribution settings can be further refined. For example, different mass density regions can be specified, or a function for mass distribution can be defined.

[0221] (3) The preprocessing function of the gravity simulation solver can be used to check whether the mass distribution settings are reasonable. For example, the visualization results of the mass distribution can be viewed to confirm whether they meet expectations.

[0222] Alternatively, step 4 can be performed to set up a complex quality distribution using scripts or programming.

[0223] (1) For complex mass distributions, scripts or programs can be written to achieve this. For example, Python scripts can be used to define different density regions in the initial 3D model, or the mass distribution can be set according to mathematical functions.

[0224] (2) Import the prepared script into the gravity simulation solver and execute the script to apply the mass distribution settings.

[0225] (3) The mass distribution set in the script can be verified through the verification function of the gravity simulation solver.

[0226] The component stackability review method provided by this invention determines the mass distribution requirements based on the component's material, structure, and usage scenario, and sets different density regions in the initial 3D model. This allows the simulation model to accurately reflect the actual physical characteristics of the component. Compared to the traditional assumption of uniform mass distribution, it can more realistically simulate the behavior of the component in a stacked state, providing a reliable basis for subsequent simulation analysis. Furthermore, by allowing different density regions to be set in the initial 3D model, it can handle components with complex internal structures and non-uniform mass distributions, overcoming the shortcomings of traditional methods in handling such complex components and expanding the range of components that can be evaluated. The generated rigid body model can more realistically reflect the stacking performance of the component in actual use. Simulation analysis based on such a model can provide more targeted and practical guidance for product design optimization, helping R&D personnel to identify and improve design defects in advance, thereby improving product stability and reliability.

[0227] As an optional embodiment, the mesh OBJ data obtained after meshing the rigid body model in this invention mainly includes the vertex information, face information, mesh topology information, and normal vector information of each face of the rigid body model.

[0228] Regarding vertex information, the mesh OBJ data lists the coordinates of all vertices of the rigid body model. Each vertex is represented by a pair of three-dimensional coordinates (x, y, z) to indicate its position in space. These vertices constitute the nodes of the mesh cells and are the fundamental data describing the geometry of the rigid body model.

[0229] Surface information contains descriptions of the faces (usually triangular or quadrilateral faces) of a rigid body model. Each face is defined by specifying the indices of the vertices that make up that face; for example, a triangular face might consist of vertex 1, vertex 2, and vertex 3. Surface information describes the geometric surface structure of the rigid body model, and gravity simulation solvers can use this information to calculate the distribution and interactions of physical quantities on the surface, such as contact surface determination in collision detection.

[0230] The mesh topology reflects the connectivity between individual mesh cells, specifically which vertices or edges are shared between adjacent cells. This topological information helps gravity simulation solvers quickly locate and access other mesh cells adjacent to a given cell during physics calculations, thus enabling more efficient numerical solutions.

[0231] Regarding normal vector information, for simulations that require consideration of surface orientation (such as lighting calculations, fluid-solid interactions, etc.), the mesh OBJ data can also include normal vector information for each face. Normal vectors represent the orientation of a face, helping gravity simulation solvers to consider surface orientation factors during calculations, thus more accurately simulating physical phenomena.

[0232] It should be noted that, after generating the mesh OBJ data by meshing the rigid body model, this invention also includes:

[0233] Using a coordinate system transformation matrix, the mesh OBJ data is transformed from the local coordinate system of the rigid body model to the global simulation coordinate system.

[0234] In DFM (Design for Modeling) review techniques, the OBJ (Object-Oriented Mesh) data of rigid body models are typically based on local coordinate systems. This is effective for the analysis of single rigid body models, but it has limitations in complex scenarios involving multiple rigid body models, such as component stacking simulations. The lack of a unified reference frame between the local coordinate systems of different rigid body models leads to complex simulation setups and difficulties in interpreting the results.

[0235] This invention solves the problem of coordinate system inconsistency in multi-rigid-body simulation by adding a key data coordinate system transformation process. Through a coordinate system transformation matrix, the mesh OBJ data in the local coordinate system is transformed into the global simulation coordinate system, thereby improving the accuracy and operability of the simulation.

[0236] The transformation matrix contains rotation and translation information, used to describe the relative relationship between the local and global coordinate systems. The rotation part is usually represented as a 3×3 rotation matrix, and the translation part is represented as a 3×1 translation vector, which are combined to form a 4×4 homogeneous transformation matrix.

[0237] The specific transformation process involves applying a transformation matrix to the geometric information of each vertex coordinate and normal vector of the rigid body model to perform coordinate transformation. The transformed data ensures that all rigid body models are based on the same reference system (i.e., the global coordinate system) in the simulation, achieving accurate description of their mutual position and attitude.

[0238] This invention effectively solves the problem of coordinate system inconsistency in the simulation of complex multi-rigid-body scenarios by adding a coordinate system transformation step, thereby improving the accuracy and reliability of simulation results, enhancing the applicability of this invention in complex multi-rigid-body scenarios, and providing a more accurate analysis tool for manufacturability design review in product development.

[0239] This invention can intuitively display the rigid body motion and collision process through simulation animation, and output a report containing data such as rigid body position, attitude, number of collisions, and tilt state, providing visualization and quantitative basis for subsequent analysis.

[0240] Figure 6 This is a flowchart illustrating the user interface initialization process for the gravity simulation design provided by this invention, as shown below. Figure 6 As shown, the user interface design (UI) initialization process ensures that the UI is correctly configured each time it starts up and restores the parameters previously set by the user.

[0241] The following is based on Figure 6 The detailed implementation steps for UI initialization are as follows:

[0242] Step 1: When starting the application, the UI initialization function is called first to set the basic layout and initial parameters of the interface. For example, in the simulation software for stacking home appliance casing components, the main window size is set to 1280×720 pixels during initialization, and the default menu bar and toolbar are loaded.

[0243] Step 2: After initialization, the program enters the main loop and begins to process user input and events, such as the appearance of the simulation software's main interface, waiting for further user operations, such as loading component models or starting the simulation.

[0244] Step 3: Read the UI settings saved by the user in the previous session from the configuration file or database, such as the window position, panel layout and frequently used tool positions set by the user in the last session.

[0245] Step 4: Check whether the read UI parameters are valid, including checking that the parameter format is correct and the value is within a reasonable range. For example, verify whether the window position parameter is within the screen range and check whether the panel layout parameter conforms to the preset layout options.

[0246] Step 5: If the UI parameters are confirmed to be valid, restore the UI settings, such as moving the window to the last saved position and restoring the panel layout and tool positions. If the UI parameters are confirmed to be invalid, initialize the UI using default settings, such as placing the window in the center of the screen and using the default panel layout and tool positions.

[0247] Step 6: After completing the UI initialization process, the program enters normal operation, and users can start loading component models or running simulations.

[0248] Figure 7 This is a schematic diagram of the component stackability review device provided by the present invention, as shown below. Figure 7 As shown, it mainly includes, but is not limited to:

[0249] The 3D modeling unit 71 is mainly used to obtain the initial 3D model of the target component that requires stacking.

[0250] The model initialization unit 72 is mainly used to set the mass distribution and initial motion state of the initial three-dimensional model and obtain the rigid body model of the target component.

[0251] Mesh generation unit 73 is mainly used to mesh the rigid body model in order to generate mesh OBJ data based on the discretized mesh units of all rigid body models.

[0252] Simulation unit 74 is mainly used to simulate the gravity simulation results of a preset number of target components in a stacked state using mesh OBJ data.

[0253] The design analysis unit 75 is used to determine the tilt state of all target components in the stacked state based on the gravity simulation results. The tilt state is used to characterize the stackability of the target components.

[0254] It should be noted that the component stackability review device provided by the present invention can execute the component stackability review method provided in any of the above embodiments during actual operation, which will not be described in detail here.

[0255] The component stackability review device provided by this invention can effectively solve the limitations of existing technologies in complex scenarios. Through accurate physical modeling and gravity simulation, it can comprehensively evaluate the stability of components in a stacked state, discover design defects in advance, and provide a scientific basis for product design optimization. This not only improves the accuracy and efficiency of the review, but also significantly improves the stability and reliability of the product, and reduces production costs and potential safety risks.

[0256] Figure 8 This is a schematic diagram of the structure of the electronic device provided by the present invention, such as... Figure 8 As shown, the electronic device may include: a processor 810, a communications interface 820, a memory 830, and a communication bus 840, wherein the processor 810, the communications interface 820, and the memory 830 communicate with each other through the communication bus 840. The processor 810 can call logical instructions in the memory 830 to execute a component stackability review method, which includes: acquiring an initial three-dimensional model of a target component that requires stacking; setting the mass distribution and initial motion state of the initial three-dimensional model to acquire a rigid body model of the target component; meshing the rigid body model to generate mesh OBJ data based on the discretized mesh elements of all the rigid body models; simulating the gravity simulation results of a preset number of the target components in a stacked state using the mesh OBJ data; and determining the tilt state of all the target components in the stacked state based on the gravity simulation results, wherein the tilt state is used to characterize the stackability of the target components.

[0257] Furthermore, the logical instructions in the aforementioned memory 830 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0258] On the other hand, the present invention also provides a computer program product, the computer program product including a computer program stored on a non-transitory computer-readable storage medium, the computer program including program instructions, when the program instructions are executed by a computer, the computer is able to execute the component stackability review method provided in the above embodiments, the method including: obtaining an initial three-dimensional model of a target component with stacking requirements; setting the mass distribution and initial motion state of the initial three-dimensional model to obtain a rigid body model of the target component; performing mesh generation on the rigid body model to generate mesh OBJ data based on the discretized mesh elements of all the rigid body models; using the mesh OBJ data to simulate the gravity simulation results of a preset number of the target components in a stacked state; and determining the tilt state of all the target components in the stacked state based on the gravity simulation results, the tilt state being used to characterize the stackability of the target components.

[0259] In another aspect, the present invention also provides a non-transitory computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the component stackability review method provided in the above embodiments. The method includes: obtaining an initial three-dimensional model of a target component that requires stacking; setting the mass distribution and initial motion state of the initial three-dimensional model to obtain a rigid body model of the target component; meshing the rigid body model to generate mesh OBJ data based on the discretized mesh elements of all the rigid body models; simulating the gravity simulation results of a preset number of the target components in a stacked state using the mesh OBJ data; and determining the tilt state of all the target components in the stacked state based on the gravity simulation results, wherein the tilt state is used to characterize the stackability of the target components.

[0260] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.

[0261] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments.

[0262] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A method of component stackability review, characterized by, The method comprises the following steps: acquiring an initial three-dimensional model of a target component with stacking requirements; setting a mass distribution and an initial motion state of the initial three-dimensional model, and acquiring a rigid body model of the target component; performing mesh division on the rigid body model to generate mesh OBJ data according to discrete mesh units of all the rigid body models; simulating a gravity simulation result of a preset number of the target components in a stacked state by using the mesh OBJ data; determining an inclination state of all the target components in the stacked state according to the gravity simulation result, the inclination state being used to represent stackability of the target components; wherein the setting of the mass distribution and the initial motion state of the initial three-dimensional model, and the acquisition of the rigid body model of the target component specifically comprise: determining a mass distribution requirement according to a material, a structure and a use scenario of the target component; setting different density regions in the initial three-dimensional model according to the mass distribution requirement, different density regions corresponding to different mass distributions; importing the initial three-dimensional model after the density region setting into a gravity simulation solver to generate the rigid body model of the target component after checking and / or refining the distribution of the density regions and setting the initial motion state of the initial three-dimensional model by using the gravity simulation solver.

2. The component stackability review method of claim 1, wherein, The simulation of the gravity simulation result of the preset number of the target components in the stacked state by using the mesh OBJ data comprises: acquiring a gravity simulation motion trajectory of each rigid body model corresponding to each target component under the action of gravity; determining collision information of all the rigid body models in the stacked state according to the gravity simulation motion trajectory of all the rigid body models; locating a contact point of all the rigid body models when collision occurs in the stacked state based on the collision information; determining a normal vector of a position surface where each contact point is located, a projection offset of a center of mass of the rigid body model on each position surface, and an attitude angle of the rigid body model; determining a direction included angle between two rigid body models at a position surface where a contact point between the two rigid body models is located according to the normal vector of the position surface where each contact point is located; the gravity simulation result at least comprises the direction included angle, the projection offset and the attitude angle.

3. The component stackability review method of claim 2, wherein, The acquisition of the gravity simulation motion trajectory of each rigid body model corresponding to each target component under the action of gravity comprises: determining six degrees of freedom of each rigid body model in a three-dimensional space based on a gravity direction and a gravity acceleration value; establishing a mathematical model equation of motion of each rigid body model in the six degrees of freedom under the action of gravity, the mathematical model equation comprising a translation motion model equation and a rotation motion model equation; solving the mathematical model equation according to a constraint condition of the rigid body model in the stacked state to acquire a simulation position change and a simulation attitude change of each rigid body model within each simulation time step under the action of gravity and the constraint condition; determining the gravity simulation motion trajectory of each rigid body model based on the simulation position change and the simulation attitude change.

4. The component stackability review method of claim 3, wherein, After locating all the contact points of the rigid body models when the collision occurs in the stacking state based on the collision information, the method further comprises: calculating the friction force at each contact point based on the normal vector of the position surface of each contact point and the surface material parameters of the target component; setting the friction force at each contact point as an external force acting on the relevant rigid body model, and updating the mathematical model equation of each rigid body model.

5. The component stackability review method of claim 2, wherein, The method of determining the inclination state of all the target components in the stacking state based on the gravity simulation result comprises: determining the geometric stability judgment result of the rigid body model corresponding to each target component in the stacking state based on the direction angle between the two adjacent rigid body models; determining the static stability judgment result of the rigid body model corresponding to each target component in the stacking state based on the projection offset of the center of mass of each rigid body model on the position surface of the contact point; determining the dynamic stability judgment result of the rigid body model corresponding to each target component in the stacking state based on the attitude angle of each rigid body model in the collision process; comprehensively determining the inclination state of all the target components in the stacking state based on the geometric stability judgment result, the static stability judgment result and the dynamic stability judgment result of each rigid body model.

6. The component stackability review method of claim 1, wherein, The grid OBJ data comprises vertex information, surface information, grid topology structure information and normal vector information of each surface of the rigid body model.

7. The component stackability review method of claim 1, wherein, After generating the grid OBJ data, the method further comprises: using a coordinate system transformation matrix to convert the grid OBJ data from the local coordinate system of the rigid body model to the global simulation coordinate system.

8. A component stackability review apparatus, characterized by, The method comprises: a three-dimensional modeling unit configured to obtain an initial three-dimensional model of a target component having a stacking requirement; a model initialization unit configured to set a mass distribution and an initial motion state of the initial three-dimensional model, and obtain a rigid body model of the target component, including: determining a mass distribution requirement according to the material, structure and use scenario of the target component; setting different density regions in the initial three-dimensional model according to the mass distribution requirement, wherein different density regions correspond to different mass distributions; and importing the initial three-dimensional model after the density region setting into a gravity simulation solver, to check and / or refine the distribution of the density regions and set the initial motion state of the initial three-dimensional model by using the gravity simulation solver, so as to generate the rigid body model of the target component; a grid division unit configured to divide the rigid body model into grids, to generate grid OBJ data according to the discretized grid units of all the rigid body models; a simulation running unit configured to simulate a gravity simulation result of a preset number of target components in a stacking state by using the grid OBJ data; a design analysis unit configured to determine an inclination state of all the target components in the stacking state according to the gravity simulation result, wherein the inclination state is used to represent the stackability of the target component.

9. An electronic device comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, characterized in that, The processor executes the computer program to implement the component stackability review method according to any one of claims 1 to 7.

10. A non-transitory computer-readable storage medium having stored thereon a computer program, characterized in that, The computer program, which is executed by a processor, implements the component stackability review method as claimed in any of claims 1 to 7.

11. A computer program product comprising a computer program, characterized in that, The computer program, which is executed by a processor, implements the component stackability review method as claimed in any of claims 1 to 7.

Citation Information

Patent Citations

  • Analysis method for tool stiffness

    CN103258086A

  • Depth 6D pose estimation network model and workpiece pose estimation method

    CN114299150A