Computer-implemented method of estimating physical product quality distribution

CN111353210BActive Publication Date: 2026-10-27DASSAULT SYSTEMES SA
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN201911322848.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2018-12-21
Filing Date
2019-12-20
Publication Date
2026-10-27
Estimated Expiration
2039-12-20

Smart Images

  • Figure CN111353210B_ABST
    Figure CN111353210B_ABST
Patent Text Reader

Abstract

A computer-implemented method of estimating a mass distribution of a physical product (PR) comprising a plurality of product parts (PP1, PP2, PP3), comprising: a) creating a data structure (DS) comprising, for each part, data representative of the position and orientation of the part (PP1_PO, PP2_PO, PP3_PO), the mass of the part (PP1_m, PP2_m, PP3_m), preferably a tolerance associated with each part mass and a geometry in voxel format (PP1_g, PP2_g, PP3_g); b) decomposing a digital model of the physical product into a plurality of parallel slices (SL1); c) for each slice, using the data structure to identify a set of product parts of the data structure that overlap with the slice and determining a respective overlap rate; and d) attributing to each slice a mass value corresponding to the sum of the masses of all product parts that overlap with the slice, weighted by the respective overlap rate.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This invention belongs to the field of Computer-Aided Engineering (CAE), and more specifically, to the field of Computer-Aided Design (CAD). The invention relates to a computer-based method for estimating the mass distribution of a physical product composed of multiple product components, such as a ship or boat, an aircraft, a ground vehicle, a building, a machine tool, etc.

[0002] Mass – and therefore weight distribution, as well as total mass / weight – strongly influences the mechanical properties and resistance of physical products and is often critical.

[0003] The shipping industry provides a particularly impressive example of how a ship's total weight strongly affects its stability, and how an improper weight distribution can even cause the hull to break in the middle in rough seas.

[0004] In the automotive industry, mass distribution may need to peak near the axle and be minimum between the axles.

[0005] Aircraft manufacturers are interested in the mass distribution along the wing, and therefore the inertial distribution.

[0006] Such as these.

[0007] Surprisingly, however, no existing tool can accurately estimate the mass distribution of complex physical products, which consist of thousands or even millions of individual components such as beams, plates, bolts, gears, etc. Even before actual manufacturing, estimating the total mass of such a product is a challenge—calculations are typically performed using a simple spreadsheet, requiring a great deal of work and leading to inaccurate results.

[0008] More complex tasks, such as calculating the mass distribution of a physical product along an axis (often the longitudinal axis, for example, in the case of a ship), can only be carried out by relying on very strong approximations.

[0009] For example, a very rough approximation of the ship's mass distribution can be obtained by performing a simple geometric model of the ship—for example, a rectangular side joined by two trapezoids.

[0010] A slightly more accurate estimate can be obtained through a so-called "grouping method," which considers a finite number (dozens) of macro-components representing the entire subsystem. The simplest of these is the "bucket method," where a row of metaphorical "buckets" is arranged along the ship's longitudinal axis. If the center of gravity of a macro-component falls inside a bucket, then all its mass is "placed" inside the bucket. Obviously, this method leads to very serious errors. For example, a macro-component could represent paint, which is spread across all the surfaces of the ship, but is instead modeled using a single mass value in a bucket facing the center of the ship's longitudinal axis.

[0011] To the inventors' knowledge, the most accurate commercially available software tool for calculating the longitudinal mass distribution of a ship is "shipweight," which uses a trapezoidal model to model macro-components. Given that this method relies on a rough model of a ship containing a small number of macro-components, its accuracy remains low, while a complete digital mockup can contain up to millions of individual components.

[0012] David Lawrence Hansch described the above method in more detail in his paper "Methods for Determining the Longitudinal Weight Distribution of Ships" presented at the 67th Annual Meeting of the United Society of Weight Engineers in Seattle, USA, in 2008.

[0013] This invention aims to overcome these shortcomings of the prior art. More precisely, this invention aims to provide a computer-implemented method for estimating the mass distribution of a physical product composed of a large number of parts, which is more accurate than the prior art while keeping its computational complexity at an acceptable level (“scalability”). Additionally, this invention also aims to address incomplete information about some or all product parts (e.g., the geometry of parts provided by a third party may not be sufficiently defined), quantify the estimated mass tolerances and mass distribution, and / or facilitate collaborative design.

[0014] According to the invention, at least some of these objectives are achieved by a data structure (“index”) for each product component in a detailed digital simulation of the product, containing data representing the position and orientation of the component within the product, the component’s mass, and, for at least some product components, the component geometry in voxel format, preferably an n-tree (typically an octree) voxel format. The use of the voxel format is important for modeling the geometry of the components because it allows for a simple and rapid calculation of the overlap ratio (i.e., the proportion of the volume of the component overlapping the slice) of each product component with each of a plurality of slices from which the product is conceptually divided. This, in turn, allows for the assignment of the correct share of the mass of each component to each slice.

[0015] Therefore, the objective of this invention is a computer-implemented method for estimating the mass distribution of a physical product comprising multiple product components, the method comprising the following steps:

[0016] a) For each product component, create a data structure containing data representing the position and orientation of the component within the product, data representing the mass of the component, and for at least some product components, data representing the component geometry in voxel format;

[0017] b) Decompose the digital model of the physical product into multiple slices perpendicular to the same axis, each slice being identified by its position along the axis;

[0018] c) For each slice, use the data structure to identify a set of product parts in the data structure that fully or partially overlaps with the slice, and for each product part in that set, determine the overlap rate between that part and the slice; and

[0019] d) Assign each slice a quality value that corresponds to the sum of the masses of all product parts that overlap with the slice, weighted by their respective overlap rates.

[0020] Specific embodiments of the method according to the present invention:

[0021] In step c), at least one product component whose data structure does not contain geometric structure data can be considered to completely overlap with a single slice, the at least one product component being determined by the position and orientation data of the product component in the data structure.

[0022] For at least one product component that does not contain geometric structure data, the data structure may contain: data identifying a subset of the product to which the product component belongs, and data representing the geometry of the subset of the product in n-tree voxel format; and step c) may contain identifying slices that fully or partially overlap with the product component and their respective overlap rates based on the geometry of the subset of the product to which the product component belongs.

[0023] Step a) may include converting data representing the geometry of product components into a voxel format. The voxel format is advantageously an n-tree, and preferably an octree voxel format.

[0024] The method may also include the following steps:

[0025] e) Estimate the mass distribution of the product along the axis by interpolating and smoothing the mass values ​​assigned to the location of each slice along the axis.

[0026] For at least one product component, the data structure may also contain data representing quality tolerances, and step d) further includes calculating the tolerances assigned to the positions of each slice that overlaps with the product component along the axis.

[0027] Step a) can also be included in the physical product design process by incrementally creating data structures by extracting product component data from one or more physical product design documents.

[0028] Another object of the present invention is a computer program product stored on a non-transitory computer-readable data storage medium, comprising computer-executable instructions to cause a computer system to implement such a method.

[0029] Another object of the present invention is a non-transitory computer-readable data storage medium containing computer-executable instructions that cause a computer (CPT) system to perform such a method.

[0030] Another object of the present invention is a computer-aided design system comprising a processor coupled to a non-transitory memory and a graphical user interface, the non-transitory memory storing computer-executable instructions to cause the computer-aided design system to perform such methods.

[0031] Additional features and advantages of the invention will become apparent from the following description taken in conjunction with the accompanying drawings, in which:

[0032] Figure 1 This is a flowchart of a method according to an embodiment of the present invention;

[0033] Figure 2 This is a schematic diagram of the first step a) of the method, which includes the creation of a data structure;

[0034] Figure 3 The voxelization of the mosaic geometry is shown;

[0035] Figure 4 The octree voxel format used in a preferred embodiment of the invention is shown;

[0036] Figure 5 This is a schematic diagram of the data structure created in step a) of the method of the present invention;

[0037] Figure 6 The second step (b) of the method of the present invention is shown, which includes decomposing the digital model of the physical product into multiple slices;

[0038] Figure 7 The third step (c) and the fourth step (d) of the method of the present invention are shown, which involve decomposing the digital model of the physical product into multiple slices;

[0039] Figure 8 The fifth optional step of the method of the present invention is shown, which involves interpolating and smoothing the discrete mass distribution calculated in step d).

[0040] Figure 9 A graphical user interface is shown, displaying the weight distribution estimated using the method of the present invention; and

[0041] Figure 10 This is a block diagram of a computer system suitable for implementing the method according to an embodiment of the present invention.

[0042] In the following text, "mass" and "weight" will be treated as synonyms. In fact, "weight distribution" is a commonly used term in industry, but from a physical point of view, "mass distribution" is more accurate.

[0043] This invention relies on two coexisting software infrastructures, referred to as the "build" and the "run." Advantageously, both infrastructures are stored on and executed by dedicated hardware, distinct from the computer used by the design team to design the physical product whose mass distribution will be estimated. This ensures that mass distribution estimation does not slow down the design process.

[0044] The first step of the method of the present invention - Figure 1 The box “a)” in the flowchart is implemented by the “Build” foundation. The first step involves creating a data structure or “cache” to index product component data that may come from different sources (files that may be stored in different formats on different computers on a network). This step is... Figure 2 The above is a schematic illustration, in which data related to product parts PP1, PP2 and PP3 are collected and indexed in the data structure DS.

[0045] For each product component, the index data indicates the component's position and orientation within the product (i.e., in a frame of reference attached to the product), as well as its mass (or equivalent, weight). Advantageously, the data also indicates tolerances or uncertainties in the mass values ​​of at least some components. Furthermore, for all or at least some components, data representing the shape ("geometry") of the components is provided. Typically, although not always, component geometry data is provided in a mosaic format, where the solid component is represented by a three-dimensional surface formed by polygons (typically triangles).

[0046] During the indexing process, the data is reorganized. In particular, alternating geometric structures are attached to each feature according to a voxel-based format, and preferably based on n-tree voxel technology. Figure 3 This represents the transformation from a mosaic geometry (left) to a voxel-based geometry (right).

[0047] Figure 4 This illustrates the principle of n-tree voxel representation of geometry in the case of n=3 (“octree”). A cube is defined containing the geometry of the product part to be represented (upper part in the figure). This cube is then divided into eight equal parts (smaller cubes) arranged in a 2x2x2 three-dimensional array (middle part of the figure); more generally, in any n-tree representation, this volume is divided into 2... nA smaller volume. Cubes containing a portion of the geometry will be further split (lower part of the figure), while cubes not containing a portion of the geometry will not be split. The process is recursively performed more than a predetermined number of recursions (e.g., 7). At the end of the process, the cubes form an approximate representation of the product parts, with a much smaller memory footprint than that based on uniform voxels. Furthermore, this representation is conveniently stored in a tree-based data structure. Using an efficient n-tree representation is important to ensure the "scalability" of the method of the present invention (i.e., its ability to handle a large number of parts) and to keep the computational burden acceptable.

[0048] For components whose geometry is unavailable, the data structure contains data identifying the subset of the product to which the component belongs, and data representing the geometry of that subset of the product in (n-tree) voxel format. For example, the geometry of a turbine blade in an aircraft engine may be unknown, but it is known that the blade belongs to a turbine, which has a known geometry (also represented in voxel format). The mass of these components is assumed to be uniformly distributed within the corresponding subset of the product. Alternatively, product components with unknown geometry are treated as point masses, meaning the mass is considered concentrated at a single point and identified by location data.

[0049] Figure 5 This is a symbolic representation of the data structure DS, which represents a physical product PR (e.g., an aircraft) comprising three parts PP1, PP2, and PP3. Each part is associated with a record in the data structure, containing identifiers (PP1_Id, PP2_Id, PP3_Id), position / orientation data (PP1_PO, PP2_PO, PP3_PO), mass / weight values ​​(PP1_m, PP2_m, PP3_m), and voxel-based geometry (PP1_g, PP2_g, PP3_g). Optionally, the record may also contain tolerance values ​​(not shown in the figure).

[0050] Advantageously, data structures are created incrementally during the design process by updating them at periodic intervals.

[0051] At any time, the mass distribution calculation of part or all of the product design can be performed by starting the "Run" infrastructure. Figure 1 Steps b) through e) in the flowchart. Due to the incremental construction of the data structure DS, the first quality distribution calculation can be performed at the very beginning of the project design, when the project definition is not yet mature. This allows the project manager to make the right decisions from the outset, thus minimizing the impact on project costs. Furthermore, additional calculations can be performed periodically throughout the project to ensure compliance with design constraints and to detect "wrong tracks" as early as possible.

[0052] Users (e.g., “weight manager”) can initiate the “run” infrastructure by performing a pre-defined action (e.g., clicking an icon) on the user interface (“front end”).

[0053] Step b) of the method of the present invention includes decomposing a digital model (imitation) of the physical product into multiple slices, which are parallel to each other and perpendicular to the axis "x" along which the mass distribution to be calculated is located. Each slice is identified by its position along the axis—for example, slice SL1 corresponds to position x1. This is in Figure 6 As shown in the image.

[0054] Step c) of the method of the present invention includes identifying product parts that overlap with each slice and the corresponding overlap ratio (parts that completely overlap a single slice, represented by mass points). This operation is performed using positional and geometric data stored in a data structure. The calculation of the overlap ratio is greatly accelerated by using a voxel-based representation of the geometry.

[0055] Step d) of the method of the present invention includes assigning each slice a quality value corresponding to the sum of the masses of all product parts overlapping with the slice, weighted by their respective overlap rates. This operation is performed using quality data stored in a data structure and the overlap rates calculated in step c. The result is a discrete quality distribution, such as... Figure 7 As shown.

[0056] Advantageously, during step d), the overall statistical tolerance of the quality distribution is also calculated based on the tolerance values ​​stored for each component in the data structure and the tolerances of the voxel representation compared to the tessellation representation. The total tolerance of the slice's quality values ​​is the square root of the sum of the squares of the tolerances of each component's quality values. The tolerance values ​​of components depend on their "inherent" tolerances stored in the data structure on one hand, and on the number of "edge" voxels on the other (to account for the "quantization error" on volume introduced by the voxelization of the geometry).

[0057] Then, the smoothing and interpolation step e) leads to a final estimate of the linear quality distribution λ(x). This is in Figure 8 The Chinese side indicated that...

[0058] Figure 9 This is a screenshot showing a graphical representation of the linear quality distribution of a physical product along an axis. The gray area around curve λ corresponds to the calculated tolerance.

[0059] The method of the present invention can be performed by a properly programmed general-purpose computer or computer system, which may include a computer network, stores the appropriate program in non-volatile form on a computer-readable medium (e.g., a hard disk, solid-state drive, or CD-ROM), and uses its microprocessor and memory to execute the program.

[0060] refer to Figure 10 A computer CPT suitable for performing a method according to an exemplary embodiment of the present invention is described. Figure 10 In this invention, the computer CPT includes a central processing unit (CPU) P, which executes the method steps described above when running an executable program (i.e., a set of computer-readable instructions), which are stored in a memory device such as RAM M1 or ROM M2 or hard disk drive (HDD) M3, DVD / CD drive M4, or remotely stored. Furthermore, the data structure DS created in step a) of the method of the invention can also be stored on one or more of the memory devices M1 to M4, or remotely stored.

[0061] The claimed invention is not limited to the form of a computer-readable medium on which computer-readable instructions and / or data structures processed by the invention are stored. For example, instructions and files may be stored on a CD, DVD, flash memory, RAM, ROM, PROM, EPROM, EEPROM, hard disk, or any other information processing device with which a computer communicates, such as a server or computer. Programs and files may be stored on the same memory device or on different memory devices.

[0062] Furthermore, computer programs suitable for performing the methods of the present invention can be provided as utility applications, background daemons, or components or combinations thereof of an operating system, and can be executed together with CPU P and operating systems such as Microsoft Vista, Microsoft Windows 10, UNIX, Solaris, LINUX, Apple MAC-OS, and other systems known to those skilled in the art.

[0063] CPU P can be a Xenon processor from Intel or an Opteron processor from AMD, or other processor types, such as Freescale ColdFire, IMX, or ARM processors from Freescale Corporation. Alternatively, as those skilled in the art will recognize, the CPU can be, for example, a Core 2 Duo processor from Intel Corporation, or it can be implemented on an FPGA, ASIC, PLD, or using discrete logic circuitry. Furthermore, the CPU can be implemented as multiple processors working together to execute computer-readable instructions for the processing described above.

[0064] Figure 10The computer's CPT (Computer Graphics Port) also includes a network interface (NI), such as the Intel Ethernet PRO network interface card from Intel Corporation, for interfacing with networks such as Local Area Networks (LANs), Wide Area Networks (WANs), and the Internet. The computer also includes a display controller (DC), such as the NVIDIA GeForce GTX graphics adapter from NVIDIA Corporation, for interfacing with a monitor (DY), such as a Hewlett-Packard HPL2445w LCD monitor. General Purpose I / O interfaces (IF) interface with keyboards (KB) and point-and-click devices (PD), such as a trackball, mouse, and touchpad. The monitor, keyboard, and point-and-click devices, along with the display controller and I / O interfaces, constitute the graphical user interface (GUI). Users use this interface to provide input commands, and the computer uses this interface to display quality distributions, such as... Figure 9 As shown.

[0065] The disk controller DKC connects the HDD M3 and DVD / CD M4 via the communication bus CBS. The CBS can be an ISA, EISA, VESA, PCI, or similar bus, used to interconnect all components of the computer.

[0066] For the sake of brevity, descriptions of the general characteristics and functions of the monitor, keyboard, clicking device, display controller, disk controller, network interface, and I / O interface are omitted here, as these characteristics are known.

[0067] The network interface NI connects the computer CPT to the system administrator ADS and one or more other computers CP1, CP2, ... via the network NW. Computer systems CP1 and CP2 store files in different formats—F1, F2—containing data describing product components. This data is collected by the computer CPT to create a data structure for calculating the mass distribution, as described above. In this way, users of computers CP1 and CP2 can continue working, such as refining product design, while the mass distribution calculation is performed by the computer CPT.

[0068] In an alternative embodiment, the computer CPT is replaced by a server and an end-user computer. The overall architecture of the server can be the same as discussed above regarding the reference computer CPT, except that the server may lack a display controller, monitor, keyboard, and / or click device. The end-user computer runs the front-end portion of the "run" infrastructure, including the user interface; the server runs the back-end portion of the "build" infrastructure and the "run" infrastructure. User actions on the user interface initiate queries (such as REST queries) to a web service provided by the server (such as an Apache server), which performs a quality distribution estimation algorithm.

[0069] The overall architecture of the end-user computer can be the same as that discussed above with reference computer CPT, except that the end-user computer's memory device does not store executable programs (EXP) and / or data structures. However, the end-user computer does store client programs designed to cooperate with the executable program of the server. In this embodiment, the quality distribution calculation is performed by the server SC, while the end-user computer EUC allows the user to interact with the server.

[0070] A network NW can be a public network such as the Internet, or a private network such as a LAN or WAN, or any combination thereof, and may include PSTN or ISDN subnets. A network NW can also be wired, such as Ethernet, or wireless, such as a cellular network including EDGE, 3G, and 4G wireless cellular systems. A wireless network can also be Wi-Fi, Bluetooth, or any other known wireless form of communication. Therefore, a network NW is merely exemplary and in no way limits the scope of current developments.

[0071] Any method steps described herein should be understood as representing parts of a module, segment, or code that includes one or more executable instructions for implementing a particular logical function or step in a process, and alternative implementations are included within the scope of exemplary embodiments of the invention.

Claims

1. A computer-based method for estimating the mass distribution of a physical product, the physical product comprising multiple product components, the method comprising the following steps: a) During the design process of the computer implementation of the physical product, an incremental data structure is constructed, which for each product component includes data representing the position and orientation of the component within the product, data representing the mass of the component, and for at least some product components, data representing the geometry of the component in cubic pixel format; b) Decompose the digital model of the physical product into multiple slices perpendicular to the same axis, each slice being identified by its position along the axis; c) For each slice, use the location and geometry data stored in the data structure to identify a group of product parts of the data structure that completely or partially overlap with the slice, and for each product part in the group, determine the overlap rate between the part and the slice; as well as d) Assign each slice a quality value that corresponds to the weighted sum of the masses of all product parts that overlap with the slice, based on their respective overlap rates; The data structure indexes the product component data, and for each product component, the index data represents the position and orientation of the product component in the product, as well as the mass and geometry of the product component; and during the indexing process, the product component data is reorganized by attaching alternating geometric structures to each element of the product component, including converting the data representing the geometry of the product component into a cubic element format.

2. The computer implementation method according to claim 1, wherein, In step c), at least one product component that does not contain geometric structure data in the data structure is considered to completely overlap with a single slice, the at least one product component being determined by the position and orientation data of the product component in the data structure.

3. The computer-implemented method according to any one of the preceding claims, wherein, For at least one product component whose data structure does not contain geometric structure data, the data structure includes: - Data identifying the subset of products to which the product component belongs, and - Data representing the geometry of the subset of the product in n-tree voxel format: Furthermore, step c) includes: identifying slices that completely or partially overlap with the product component and their respective overlap rates based on the geometry of the subset of the product to which the product component belongs.

4. The computer implementation method according to claim 1 or 2, wherein the voxel format is an n-tree voxel format.

5. The computer implementation method according to claim 1 or 2 further comprises the following steps: e) Estimate the mass distribution of the physical product along the axis by interpolating and smoothing the mass values ​​assigned to the locations of each slice in the slice that identify the slice.

6. The computer implementation method according to claim 1 or 2, wherein the data structure further comprises, for at least one product component, data representing quality tolerance, and wherein step d) further comprises: calculating, based on the quality tolerance and the tolerance represented by voxels, a tolerance for assigning the quality value to the position of each slice overlapping the product component along the axis.

7. The computer implementation method according to claim 1 or 2, wherein step a) comprises incrementally constructing the data structure during the physical product design process by extracting product component data from one or more physical product design documents.

8. The computer implementation method according to claim 1 or 2, wherein the method is implemented by a dedicated hardware unit, different from the computer implementing the design process of the computer implementation; and The step a) mentioned therein includes collecting and reorganizing product component data stored on different computers on the network, which are different from the dedicated hardware unit.

9. A computer program product stored on a non-transitory computer-readable data storage medium, comprising computer-executable instructions that cause a computer system to perform the method according to any of the preceding claims.

10. A non-transitory computer-readable data storage medium containing computer-executable instructions that cause a computer system to perform the method according to any one of claims 1 to 8.

11. A computer-aided design system comprising a processor and a graphical user interface coupled to a non-transitory memory, the non-transitory memory storing computer-executable instructions that cause the computer-aided design system to perform the method according to any one of claims 1 to 8.

Citation Information

Patent Citations

  • Hull structure weight statistics method based on three-dimensional model

    CN108763691A

  • Finite element modeling method utilizing mass distribution

    US20070282571A1