Simulation model generating device, simulation model generating method and computer readable storage medium
By automatically determining the number of contact surfaces and shared rotation axes in the 3D CAD model and determining the connection relationship between components, the problem of long simulation model construction time in the existing technology is solved, and the accuracy of the simulation model and design efficiency are improved.
Patent Information
- Application Number
- CN202210570712.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2021-05-28
- Filing Date
- 2022-05-24
- Publication Date
- 2025-09-09
- Estimated Expiration
- 2042-05-24
AI Technical Summary
The existing technology makes it difficult to determine the connection relationship between the components of the device in detail during the design phase, resulting in a long time for building the simulation model and an inability to accurately verify it.
The contact surface number determination unit, shared rotation axis determination unit, and connection relationship determination unit automatically determine the number of contact surfaces and shared rotation axes of component elements in the 3D CAD model, determine the connection relationship between components, and generate a simulation model.
It achieves more detailed determination of the connection relationship between component elements in the device, improves the accuracy and verification efficiency of the simulation model, and shortens the design cycle.
Smart Images

Figure CN115408781B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a technique for determining the connection relationship between component elements constituting a device represented by three-dimensional CAD structural model data used in design, etc. In particular, it relates to a technique for generating a simulation model using the determined connection relationship. Background Art
[0002] Patent Document 1 has been proposed as a technique for understanding the connection relationship between components in a device. Patent Document 1 aims to "confirm the fixed state between components that are in contact with each other."
[0003] In order to achieve this purpose, Patent Document 1 states that "Among multiple components constituting a product shown in a three-dimensional CAD, one of the components that contact each other is defined as a contacted component and the other as a contacting component, and a contacted surface in the contacted component that is in contact is determined. The contact component determination unit 14 determines the contact component that is in contact with the contacted surface. The fixed state determination unit 15 moves the contact component determined by the contact component determination unit in multiple directions along the contacted surface and in a direction orthogonal to the contacted surface, and determines the fixed state of the contact component relative to the contacted component based on whether the contact component is in contact with other parts other than the contact component. The display control unit 16 controls the display unit to display the product image in a display mode corresponding to the fixed state determined by the fixed state determination unit."
[0004] Here, verification is performed through simulation and other means for design. This design includes systems and processes implemented using devices and combinations of devices related to logistics and manufacturing. This verification requires detailed verification at an earlier stage, prior to trial production, to shorten the design manufacturing period. However, manually building simulation models requires significant time.
[0005] Therefore, in order to perform such verification, it is considered to grasp the connection relationship of component elements using the technology described in Patent Document 1. Patent Document 1 discloses that the fixed state of a specified component is automatically extracted by detecting the components that come into contact when the specified component is moved in a predetermined direction.
[0006] Patent Document 1: Japanese Patent Application Publication No. 2019-016180 Summary of the Invention
[0007] However, in Patent Document 1, only the fixed state between components can be grasped, making it difficult to perform verification that is more in line with the actual situation. Therefore, the purpose of the present invention is to determine the connection relationship between components in more detail and enable verification of devices, etc.
[0008] The above-mentioned problems are solved by the invention described in the scope of claims as an example.
[0009] For example, as one embodiment of the present invention, a simulation model generation device based on a 3D CAD model is provided, wherein the simulation model generation device comprises: a contact surface number determination unit, which determines the number of contact surfaces between each component element constituting the 3D CAD model; a shared rotation axis determination unit, which uses the 3D CAD model to determine whether there is a shared rotation axis between the component elements; and a connection relationship determination unit, which determines the connection relationship between the component elements representing any one of non-contact, fixed, sliding and rotation based on the number of contact surfaces and the presence or absence of the shared rotation axis.
[0010] According to the present invention, the connection relationship between component elements in a device can be specified in more detail, and the device and the like can be accurately verified. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] Figure 1 This is a flowchart showing the processing in one embodiment of the present invention.
[0012] Figure 2 This is a diagram showing a specific example for explaining the details of step S102 in one embodiment of the present invention.
[0013] Figure 3 This is a diagram showing a specific example of steps S105 , S106 , and S108 in one embodiment of the present invention.
[0014] Figure 4 This is a diagram showing a specific example of determining whether or not a contact surface exists in one embodiment of the present invention.
[0015] Figure 5 This is a diagram showing a 3D CAD model included in the 3D CAD information of the component 1 in one embodiment of the present invention.
[0016] Figure 6 This is a diagram illustrating a process for determining the number of contact surfaces between component elements in the assembly 1 according to one embodiment of the present invention.
[0017] Figure 7 This is a table showing the number of contact surfaces, which shows the results of determination of the contact surfaces of the component 1 in one embodiment of the present invention.
[0018] Figure 8 It is a connection relationship table showing the contact relationship of the component 1 in one embodiment of the present invention.
[0019] Figure 9 is a tree diagram of component 1 in one embodiment of the present invention.
[0020] Figure 10 This is a diagram showing a 3D CAD model included in the 3D CAD information of the component 2 in one embodiment of the present invention.
[0021] Figure 11 This is a diagram illustrating a process for determining the number of contact surfaces between component elements in the assembly 2 according to one embodiment of the present invention.
[0022] Figure 12 This is a table showing the number of contact surfaces, which shows the results of determination of the contact surfaces of the component 2 in one embodiment of the present invention.
[0023] Figure 13 It is a connection relationship table showing the contact relationship of the component 2 in one embodiment of the present invention.
[0024] Figure 14 is a tree diagram of component 2 in one embodiment of the present invention.
[0025] Figure 15 This is a diagram showing the concept of a depth-first search method in one embodiment of the present invention.
[0026] Figure 16 In one embodiment of the present invention, the depth-first search method is applied to Figure 14 Figure 1 shows an example of a tree diagram.
[0027] Figure 17 This is a flowchart showing the flow of processing related to the user interface in one embodiment of the present invention.
[0028] Figure 18 It is a functional block diagram of a simulation model generating device in one embodiment of the present invention.
[0029] Figure 19 It is a system structure diagram in one embodiment of the present invention.
[0030] Explanation of symbols
[0031] 18 simulation model generating device, 1801 3D CAD information input unit, 1802 component analyzing unit, 1803 shared rotation axis determining unit, 1804 contact surface number determining unit, 1805 connection relationship determining unit, 1806 action mechanism analyzing unit, 1807 input and output unit, 1808 bus. DETAILED DESCRIPTION
[0032] Hereinafter, an embodiment of the present invention will be described. In this embodiment, a simulation model is generated by determining a connection relationship using 3D CAD information for design as structural model data.
[0033] <Structure>
[0034] First, the structure of this embodiment will be described. Figure 18 The functional block diagram of the simulation model generating device 18 of this embodiment is shown in FIG. Figure 18 In the simulation model generation device 18, there are a 3D CAD information input unit 1801, a component analysis unit 1802, a shared rotation axis determination unit 1803, a contact surface number determination unit 1804, a connection relationship determination unit 1805, an action mechanism analysis unit 1806, an input / output unit 1807, and a bus 1808 connecting them. The functions of each structure are described below. The details are as follows. Figure 1 The flowchart shown will be described later. In addition, in this embodiment, the simulation model generating device 18 is described as an example, but the generation of the simulation model may be omitted and the connection relationship determining device may be configured.
[0035] First, the 3D CAD information input unit 1801 receives input of 3D CAD information. 3D CAD information is design information of a device (component) to be verified, and is information related to the shape, size, and placement positions of components constituting the component.
[0036] It is assumed that the 3D CAD information is stored in a storage unit (not shown) of the simulation model generating device 18 or a storage unit of another device. In this way, the 3D CAD information input unit 1801 has an interface function.
[0037] Next, the component analysis unit 1802 analyzes the input 3D CAD information and decomposes it into component elements that constitute the assembly. Component elements include the assembly itself, component elements, and combinations of components, namely modules, which can also be expressed as component elements.
[0038] Next, the shared rotation axis determination unit 1803 determines whether the component elements analyzed by the component analysis unit 1802 share a shared rotation axis. More specifically, the shared rotation axis determination unit 1803 performs a determination process on whether the component elements share a circle with a common center. This is described later. Figure 1 Furthermore, it is preferable that the shared rotation axis determination unit 1803 determines whether there are two or more shared axes ( Figure 1 Step S104).
[0039] Next, the contact surface number determination unit 1804 determines the number of contact surfaces between each component element. That is, the contact surface number determination unit 1804 counts the number of contact surfaces. More specifically, the following steps are executed. Figure 1 As a result, the Figure 7 、 Figure 12 The table of contact surface quantities is shown in the figure. This will be described later.
[0040] Next, the connection relationship determination unit 1805 determines the connection relationship between each component element based on the number of contact surfaces between each component element and the information on whether there is a common rotation circle. The connection relationship includes "non-contact", "fixed", "sliding", and "rotating", and the connection relationship determination unit 1805 determines which of these it is. Specifically, execute Figure 2 Each process of steps S105 to S109. In addition, "non-contact" means a state in which component elements are not in contact or connected. In addition, "fixed" means that component elements are in contact or connected, and in this contact or connection, the movement between the components is fixed. Here, the fixed movement can also be a movement within a certain range. In addition, "sliding" means that component elements are in contact or connected, and move in a deviated (with stroke) manner. At this time, it can also be defined as sliding when the deviation amount is above a certain level. And, "rotation" means that component elements are in contact or connected, and in this contact or connection, the components move in a rotational manner.
[0041] Next, the action mechanism analysis unit 1806 analyzes the action mechanism based on the connection relationship. That is, it determines what kind of action the target component performs. This determination also includes the determination of action mechanisms such as connecting rod mechanisms and crank mechanisms. This process is executed Figure 1 Specifically, the action mechanism analysis unit 1806 executes Figure 9 、 Figure 14 、 Figure 15 、 Figure 16 The tree diagram shown is generated, and the motion mechanism is derived from the tree diagram. As a result, the motion mechanism analysis unit 1806 generates a simulation model. Furthermore, it is preferable that the motion mechanism analysis unit 1806 uses the above-mentioned motion mechanism analysis results to perform various verifications (simulations).
[0042] Next, the input / output unit 1807 performs information prompting to the user and information input from the user. Therefore, the input / output unit 1807 can be implemented by a display device such as a display and input devices such as a keyboard and a mouse, or can be implemented by a single structure such as a touch panel. In addition, the input / output unit 1807 can be provided in the simulation model generation device 18 or can be implemented as another independent terminal device. In addition, the input / output unit 1807 performs Figure 17 The user interface is shown in the flowchart.
[0043] Furthermore, the simulation model generation device 18 can be implemented using a so-called computer. Therefore, the component analysis unit 1802 to the motion mechanism analysis unit 1806 can be implemented using a computer program or dedicated hardware, such as an FPGA (Field Programmable Gate Array). Furthermore, the computer program can be stored in a storage medium or distributed to the simulation model generation device 18 via a network.
[0044] Next, in this embodiment, Figure 19 , a configuration example is shown in which the simulation model generating device 18 is realized by a server such as a so-called cloud. Figure 19 This is the system structure diagram of this embodiment. Figure 19 In FIG. 1 , the simulation model generating device 18 is connected to the 3D CAD system and the terminal devices 1807 - 1 to 1807 - 3 .
[0045] Here, the simulation model generation device 18 is realized by a computer and includes a processing unit 181 , a storage unit 182 , and an interface unit 183 , which are interconnected via a bus 1808 .
[0046] Here, the processing unit 181 is implemented by a processor such as a so-called CPU. Furthermore, the processing unit 181 executes the processing of the component analysis unit 1802 through the operation mechanism analysis unit 1806. Therefore, the processing unit 181 may include the component analysis unit 1802 through the operation mechanism analysis unit 1806 itself, or may perform processing according to computer programs corresponding to these components stored in the storage unit 182.
[0047] The storage unit 182 stores information and computer programs. Therefore, the storage unit 182 can be implemented by a memory, HDD, SDD, etc. In this embodiment, the 3D CAD information and the 3D CAD system 19 are stored, but the storage unit 182 may also store the information.
[0048] In addition, the interface unit 183 performs the function of connecting to the network 20 and the terminal device 1807-1. Figure 18 The section 1801 corresponds to the 3DCAD information input section.
[0049] Here, the terminal devices 1807-1 to 1807-3 correspond to Figure 18Input / output unit 1807. Terminal device 1807-1 is located in the same location as simulation model generation device 18, for example, and is connected via an intranet. Terminal devices 1807-2 and 1807-3 are remotely located from simulation model generation device 18 and are connected via a wide area network such as the Internet as network 20. These terminal devices 1807-1 to 1807-3 are functionally identical and can be implemented as information processing devices such as smartphones, tablets, and PCs. Therefore, terminal devices 1807-1 to 1807-3 execute various processes according to computer programs known as applications.
[0050] The 3D CAD system 19 then designs components based on operations performed on the terminal devices 1807-1 to 1807-3 or its own input devices. Furthermore, the 3D CAD system 19 stores the design information generated as a result of the design, namely, 3D CAD information. This 3D CAD information can be accessed by the simulation model generation device 18 via the interface unit 183. This concludes the description of the structure of this embodiment.
[0051] <Processing Flow>
[0052] Next, the processing flow of this embodiment is described. Figure 1 Flowchart showing the process of the embodiment. Figure 1 , as the processing subject, using Figure 18 Each structure of illustrates the processing flow of this embodiment.
[0053] First, in step S101, this processing flow begins. Therefore, it is preferable that the input / output unit 1807 receive a user instruction to start the process. Furthermore, at this point, the 3D CAD information input unit 1801 acquires 3D CAD information for the target component. Here, it is preferable that the input / output unit 1807 receive a user instruction to specify the target component, and the 3D CAD information input unit 1801 acquires the corresponding 3D CAD information.
[0054] Furthermore, as a preparation for the following processing, the component analyzing unit 1802 may be configured to decompose the assembly indicated by the acquired 3D CAD information into its component elements. In addition, the 3D CAD system 19 may store the information decomposed into its component elements as the 3D CAD information.
[0055] Next, in step S102, the shared rotation axis determination unit 1803 determines whether there is a circle with a shared center between the various component elements that constitute the assembly. Therefore, the shared rotation axis determination unit 1803 extracts the various component elements and creates combinations thereof. Furthermore, the shared rotation axis determination unit 1803 determines whether there is a circle with a shared center between the various component elements that constitute each combination. This step and steps S103 to S109 are performed on a component-by-component basis. If this determination process determines that there is no circle with a shared center (No), the process proceeds to step S103. If it is determined that there is a circle (Yes), the process proceeds to step S104.
[0056] Here, use Figure 2 The specific example shown in FIG. 1 illustrates the details of step S102. Figure 2 In the example, the shared rotation axis determination unit 1803 determines the center of gravity O of the closed curve passing through each point A, B, C, D, E, and F between the component elements as the center of the circle. Then, for the point O determined to be the center, the shared rotation axis determination unit 1803 determines whether a point on the axis perpendicular to the surface forming the closed curve A, B, C, D, E, and F overlaps with the point also determined to be the center. If there is overlap, the shared rotation axis determination unit 1803 determines that a shared circle exists. Furthermore, if each point exists within a predetermined range, the shared rotation axis determination unit 1803 determines that there are overlapping points. According to the above process, the center of a circle is determined based on the center of gravity of the closed curve, and whether the center of the circle overlaps with the axis perpendicular to the surface forming the closed curve is determined. This allows the automatic determination of the presence of a circle with a shared center point based on 3D polygon information.
[0057] Then, in step S103, the contact surface number determination unit 1804 performs a process for determining the number of contact surfaces between the various component elements constituting the assembly. That is, the contact surface number determination unit 1804 counts the number of contact surfaces. As a result, if the number of contact surfaces is 0, the process moves to step S105. Alternatively, if the number of contact surfaces is 1 or 3, the process moves to step S106. Then, if the number of contact surfaces is 2, the process moves to step S107. In addition, the contact surface number determination unit 1804 may also determine the number of contact surfaces as "0," "odd number," or "even number." In this case, if the number of contact surfaces is "0," the process moves to step S105, if it is an "odd number," the process moves to step S106, and if it is an "even number," the process moves to S107.
[0058] Furthermore, in step S104, the shared rotation axis determination unit 1803 determines the number of shared axes of the shared circles, i.e., counts them. If it is determined that there are less than two shared axes, i.e., one shared axis (No), the process proceeds to step S109. If it is determined that there are two or more shared axes (Yes), the process proceeds to step S107.
[0059] Next, in step S107, connection relationship determination unit 1805 determines whether the sliding range is greater than a predetermined threshold. This is because, when there are two contact surfaces, sliding is possible in the direction without contact surfaces, while when there are two or more shared axes, rotation is impossible and sliding is possible in the direction corresponding to the rotation axis. Here, even if there is microscopic sliding, if the amount is minimal, it can be determined as fixed, so step S107 is executed.
[0060] Based on the results of the above processing, the connection relationship determination process is executed in steps S105 to S109. Alternatively, steps S104 and S107 can be omitted, and the connection relationship determination process in steps S105 to S109 can be executed based on the presence or absence of a shared rotation axis (step S102) and the number of contact surfaces (step S103). In this case, if a shared circle exists in step S102, the process proceeds to step S109. If the number of contact surfaces is determined to be two in step S103, the process proceeds to step S108.
[0061] Next, in step S105, if the connection relationship between the target component elements is determined to be "non-contact," the connection relationship determination unit 1805 determines that the connection relationship is non-contact. This determination is based on the fact that there is no circle with a common center and the number of contact surfaces is zero.
[0062] Furthermore, in step S106 , the connection relationship determination unit 1805 determines that the sliding movable range is smaller than the preset threshold value or that the number of contact surfaces is 1 or 3, and therefore determines that the connection relationship is fixed.
[0063] Furthermore, in step S108 , the connection relationship identification unit 1805 determines that the sliding movable range is equal to or larger than a predetermined threshold value, and therefore determines the connection relationship as sliding.
[0064] Then, in step S109 , the connection relationship specification unit 1805 determines that there is one common rotation axis and therefore determines the connection relationship as rotation.
[0065] Here, use Figure 3 as well as Figure 4 The details of the connection relationship determination are explained below. Figure 3 , specific examples of steps S105, S106 and S108 are explained.
[0066] First, if Figure 3 As shown in (a), when the number of surfaces that are in contact with the main body of the component element is 0, the connection relationship determination unit 1805 determines that there is no contact. Figure 3In the case where the contact surface between the component element body and other components shown in (b) is only one surface in the direction of the arrow, since only one surface cannot constitute an axis of movement, the connection relationship determination unit 1805 determines that the component element is fixed.
[0067] In addition, if Figure 3 As shown in (c), when there are contact surfaces on the z-axis and the x-axis, the connection relationship determination unit 1805 determines that the object parts are in a sliding relationship. Figure 3 As shown in (d), when it is determined that the target component element contacts the contact surface of another component in three different directions x, y, and z, the connection relationship determination unit 1805 determines that the two are not moving but are in a fixed relationship.
[0068] As described above, according to this embodiment, the connection relationship between the component elements constituting the assembly can be automatically determined based on the number of contact surfaces of the component elements of the 3D polygon.
[0069] Here, in determining the connection relationship, the number of contact surfaces is determined (see Figure 3 In determining the number of contact surfaces, it is necessary to determine whether there is contact between component elements, that is, whether there is a contact surface. Figure 4 A specific example will be described.
[0070] The contact surface number determination unit 1804 Figure 4 The collision is determined between the triangular polygons representing the component elements existing in the same plane, and the surface where the collision occurs is set as the contact surface. Here, the contact surface number determination unit 1804 uses the side of the triangle as a candidate for the separation axis (thick line: 401) and projects the triangle on the line segment perpendicular to the separation axis (dashed line: 402). As a result, if the projected part (thick dashed line) overlaps, the contact surface number determination unit 1804 determines that it is a collision, that is, it determines that there is a contact surface (in the case of this figure, it is determined that there is no overlap and no collision). The contact surface number determination unit 1804 performs the above processing on each edge. In this way, the determination of whether there is a contact surface is achieved. As described above, according to this embodiment, it is possible to determine whether there is a contact surface between 3D polygons.
[0071] Then, return to Figure 1Continuing with the processing flow of this embodiment, in step S110, the connection relationship determination unit 1805 determines whether the connection relationship determination has been completed for each combination of component elements generated in step S102. If it is determined that the determination of each connection, that is, the connection relationship between each component element, has been completed (Yes), the process proceeds to step S111. If it is determined that the determination has not been completed (No), the process proceeds to step S102 to process other components.
[0072] Next, in step S111, the motion mechanism analysis unit 1806 analyzes the motion mechanism. As a result, the motion mechanism analysis unit 1806 identifies the motion mechanism formed by the component elements that make up the assembly. The motion mechanism analysis unit 1806 then outputs the identified motion mechanism via the input / output unit 1807.
[0073] Based on the above, a simulation model is generated. Then, in step S112, this processing flow ends.
[0074] As described above, according to this embodiment, the number of contact surfaces between components and the number of circles with a shared center are automatically determined for an assembly composed of multiple components. This automatically extracts the motion mechanism information required for simulation from 3D CAD information, i.e., the design information for the assembly composed of multiple components. This enables the automatic generation of simulation models based on 3D CAD information. Furthermore, while this embodiment uses 3D CAD information, other device information containing design information and shapes can also be used.
[0075] In this embodiment, the process ends at step S112, but the motion mechanism analysis unit 1806 may perform simulation (verification) based on a user's designation from the input / output unit 1807. In this case, the motion mechanism analysis unit 1806 performs simulation using the connection relationship and the motion mechanism.
[0076] The description of the processing flow of this embodiment is completed above. Next, an example of this embodiment will be described.
[0077] <Example 1>
[0078] The generation of the simulation model of the embodiment described above will be described using an example. First, as Example 1, component 1 will be described. Figure 5 The 3D CAD model included in the 3D CAD information of the component 1 to be used for generating the simulation model in this embodiment is shown. Figure 5 Component 1 has a main body 501, a cable 502, a motor 503, a slider 1 504, a Y robot 505, and a slider 2 506 as components. Figure 5The connection relationship shown below. Figure 6 , the determination process of the number of contact surfaces between the component elements of the assembly 1 is described.
[0079] first, Figure 6 (a) to Figure 6 (e) is a diagram showing contact surfaces when there are one or more contact surfaces in the component 1 . Figure 6 (a) shows the contact surface between the main body 501 and the slider 1 to 504, indicating that the main body 501 and the slider 1 to 504 are in contact with each other at two surfaces indicated by arrows. Figure 6 (b) shows the contact surface between the slider 2506 and the Y robot 505, indicating that the slider 2506 and the Y robot 505 are in contact with each other at two surfaces indicated by arrows.
[0080] in addition, Figure 6 (c) shows the contact surface between the main body 501 and the motor 503, indicating that the main body 501 and the motor 503 are in contact with one surface indicated by the arrow. Figure 6 (d) shows the contact surface between the slider 1504 and the Y robot 505, indicating that the slider 1504 and the Y robot 505 are in contact with one surface indicated by the arrow.
[0081] in addition, Figure 6 (e) represents the contact surface between the main body 501 and the cable 502, indicating that the main body 501 and the cable 502 are in contact with each other at three surfaces indicated by arrows. Figure 6 (f) shows that the contact portion is difficult to see in this figure, but the slider 1504 and the cable 502 are in contact at three surfaces indicated by arrows. In this way, the contact surface number determination unit 1804 can determine the contact surfaces of the component 1.
[0082] then, Figure 7 This is a contact surface number table showing the results of determining the contact surfaces of component 1. In this contact surface number table, the vertical axis and the horizontal axis represent the component elements of component 1, and the number of contact surfaces between the component elements is recorded in the intersection area. Figure 6 As shown in (a), the number of contact surfaces between the slider 1 and the main body is 2. In addition, as Figure 6 As shown in (e), the number of contact surfaces between the cable and the body is 3. Figure 6 As shown in (f), the number of contact surfaces between the cable and the slider 1 is 3. Figure 6 As shown in (c), the number of contact surfaces between the motor and the main body is 1. Since the motor and the slider 1 and the motor and the cable are separated, the number of contact surfaces is 0. The Y robot and the main body are also separated, and the number of contact surfaces is 0. Figure 6As shown in (d), the number of contact surfaces between the Y robot and the slider 1 is 1. There is no contact between the Y robot and the cable, and between the Y robot and the motor, and the number of contact surfaces is 0. There is no contact between the slider 2 and the main body, between the slider 2 and the slider 1, between the slider 2 and the cable, and between the slider 2 and the motor, and the number of contact surfaces is 0. Figure 6 As shown in (e), the number of contact surfaces between the slider 2 and the Y robot is 2. As described above, the contact surface number determination unit 1804 generates a Figure 7 The contact surface quantity table shown is stored in the storage unit 182.
[0083] Next, use Figure 8 The connection relationship table showing the connection relationships determined by the connection relationship determination unit 1805 will be described. Figure 8 use Figure 7 The table of contact surface quantity indicates the connection relationship between the components of component 1. Figure 8 In the connection relationship table, the vertical axis and the horizontal axis represent the component elements of assembly 1, and the connection relationships between the component elements corresponding to the areas intersecting with them are recorded. The following describes the processing content in the connection relationship determination unit 1805 and its result, namely the content of the connection relationship table.
[0084] First, the number of contact surfaces between the slider 1 504 and the main body 501 is 2, and the stroke length is not particularly short, so the connection relationship is sliding. Here, short means that the stroke length is shorter than a preset threshold.
[0085] In addition, the number of contact surfaces between the cable 502 and the main body 501 is 3, so the connection relationship is fixed. The number of contact surfaces between the cable 502 and the sliders 1 to 504 is 3, so the connection relationship is fixed. The number of contact surfaces between the motor 503 and the main body 501 is 1, so the connection relationship is fixed. Since the number of contact surfaces between the motor 503 and the sliders 1 to 504 and between the motor 503 and the cable 502 is 0, the connection relationship is non-contact. Since the number of contact surfaces between the Y robot 505 and the main body 501 is 0, the connection relationship is non-contact. The number of contact surfaces between the Y robot 505 and the sliders 1 to 504 is 1, so the connection relationship is fixed. The number of contact surfaces between the Y robot 505 and the cable 502 and between the Y robot 505 and the motor 503 is 0, so the connection relationship is non-contact. The number of contact surfaces between slider 2 506 and main body 501, slider 2 506 and slider 1 504, slider 2 506 and cable 502, and slider 2 506 and motor 503 are all zero, so the connection is non-contact. The number of contact surfaces between slider 2 506 and Y robot 505 is two, and the stroke length is not particularly short, so the connection is sliding.
[0086] As described above, the connection relationship specifying unit 1805 specifies the connection relationship between component elements and stores the connection relationship in the connection relationship table of the storage unit 182 .
[0087] As described above, in this embodiment, Figure 5 Component 1 shown, such as Figure 6 、 Figure 7 As shown in the figure, the number of contact surfaces between each component element is calculated, such as Figure 8 As shown in FIG, the connection relationship can be determined based on the number of contact surfaces between each component element. That is, for the component 1 as an example, it is possible to apply Figure 1 In this example, it is determined that there are no center-shared circles ("No" in step S102).
[0088] Next, the processing of the component 1 by the motion mechanism analysis unit 1806 will be described. Figure 9 The tree diagram is generated by the action mechanism analysis unit 1806. That is, the tree diagram is generated by the action mechanism analysis unit 1806 for the component 1 according to Figure 8 The following describes the creation and structure of the tree diagram.
[0089] First, the motion mechanism analysis unit 1806 extracts the main body 501 from the component elements of assembly 1 as the top-level part of the tree. Therefore, it is preferable to accept the designation of the top-level component element from the user via the input / output unit 1807. Alternatively, the motion mechanism analysis unit 1806 extracts the top-level component element according to a predetermined rule.
[0090] Next, the action mechanism analysis unit 1806 extracts the component elements connected to the main body 501 based on the connection relationship table. That is, the component elements that have a connection relationship other than non-contact with the main body 501 are extracted. In this example, the action mechanism analysis unit 1806 extracts the cable 502, the motor 503, and the slider 1504. Then, the action mechanism analysis unit 1806 determines the connection relationship between each extracted component element and the top component element based on the connection relationship table. That is, the cable 502 is connected to the main body 501 by fixing 911. The motor 503 is connected to the main body 501 by fixing 912. In addition, the slider 1504 is connected to the main body 501 by sliding 914 in the X-axis direction (axial direction according to Figure 6 ) and connect.
[0091] Next, the motion mechanism analysis unit 1806 extracts the extracted component elements and component elements connected to components other than the top-level component, based on the connection relationship table. As described above, component elements with connections other than non-contact connections are also extracted here. Thus, the motion mechanism analysis unit 1806 determines the connection relationship with the second level of the tree diagram. Specifically, the motion mechanism analysis unit 1806 extracts the slider 1504 connected to the cable 502. Then, based on the connection relationship table, the motion mechanism analysis unit 1806 determines that the connection relationship between the cable 502 and the slider 1504 is fixed 913.
[0092] Furthermore, the motion mechanism analysis unit 1806 identifies the slider 1504 as the third level of the tree diagram. It then identifies the component structure connected to the slider 1504, excluding the main body 501 and cable 502 for which connections have already been determined. Specifically, the Y robot 505 is identified. The motion mechanism analysis unit 1806 then determines the connection between the slider 1504 and the Y robot 505 as fixed 915, based on the connection relationship table.
[0093] Similarly, as the fourth layer, the slider 2 506 is determined as a component element connected to the Y robot 505, and the connection relationship between them is also determined to slide 916 in the Y-axis direction (the axis direction is determined by Figure 6 ).
[0094] Then, the motion mechanism analysis unit 1806 determines that the slider 2506 is the bottom layer based on the contact surface number table and the connection relationship table. Figure 9 If the tree diagram thus created is analyzed, a loop consisting of the main body 501 - fixed 911 - cable 502 - fixed 913 - slider 1 504 - slide in the X-axis direction 914 - main body 501 is generated.
[0095] Here, the motion mechanism analysis unit 1806 analyzes the loop shown in the tree diagram and detects the following contradiction: The cable 502 is fixed to both the main body 501 and the slider 1 504, but the main body 501 and the slider 1 504 are sliding, resulting in a contradiction.
[0096] To resolve this contradiction, it is necessary to change the slide 914 to a fixed position in the X-axis direction, or to cut off the fixed position 913 or the fixed position 911 and change it to a non-contact position. As a solution to this, the following solutions (1) to (3) can be adopted.
[0097] (1) Automatic response in the motion mechanism analysis unit 1806
[0098] When making this tree diagram, regarding the sliding 914 in the X-axis direction, it has been confirmed in the stroke length determination process in step S107 that it is above the predetermined threshold. Therefore, the action mechanism analysis unit 1806 determines that the fixed 913 or the fixed 911 is to be cut off. Then, the action mechanism analysis unit 1806 gives priority to the upper side of the tree diagram in the fixed 913 and the fixed 911. That is, the action mechanism analysis unit 1806 cuts off the fixed 913 that is farther from the uppermost main body 501. As a result, Figure 9 As shown, the space between the fixed part 913 and the slider 1 504 is indicated by a dotted line.
[0099] In this case, the motion mechanism analysis unit 1806 may also determine the area between the fixture 913 and the slider 1504 as the first candidate for cutting. The motion mechanism analysis unit 1806 then outputs this information to the input / output unit 1807. The motion mechanism analysis unit 1806 then determines the cutting location based on user permission.
[0100] (2) User Choice
[0101] In addition to the first candidate in (1), the motion mechanism analysis unit 1806 also determines the fixed position 911 and the sliding position 914 in the X-axis direction as other candidates. Next, the motion mechanism analysis unit 1806 outputs these candidates to the input / output unit 1807. In this case, it is preferable to output the candidates without distinguishing them. Then, the motion mechanism analysis unit 1806 determines the selection result received from the user via the input / output unit 1807 as the cutting position.
[0102] (3) User instructions
[0103] The motion mechanism analysis unit 1806 outputs the occurrence of the conflict to the input / output unit 1807. Next, the motion mechanism analysis unit 1806 receives an instruction on a cutting location from the user via the input / output unit 1807. The motion mechanism analysis unit 1806 determines the instructed location as the cutting location.
[0104] This concludes the description of (1) to (3). As a result, the cable 502 and the motor 503 are fixed to the main body 501, which serves as the parent body, and the slider 1 504 is connected to the main body 501 by sliding in the X-axis direction. Furthermore, the Y robot 505 is connected to the slider 1 504, and the slider 2 is connected to the Y robot 505 by sliding in the Y-axis direction. The motion mechanism analysis unit 1806 performs motion analysis as described above and generates a simulation model based on the results.
[0105] The above describes Example 1, which generates a simulation model for component 1. This Example 1 demonstrates that motion analysis can be automatically performed for components with sliding mechanisms. Furthermore, even for shape-variable components such as cable 502, accurate motion analysis can be performed using tree analysis.
[0106] <Example 2>
[0107] Next, as Example 2, generation of a simulation model for component 2 will be described. Figure 10 1001 is a diagram showing a 3D CAD model included in the 3D CAD information of the assembly 2. The assembly 2 is composed of component elements such as a main body 1001, a bracket 1002, a cylinder 1003, and a rod 1004.
[0108] use Figure 11 ,right Figure 10 The determination process of the number of contact surfaces between the components of the assembly shown in FIG. Figure 11 , the determination process of the number of contact surfaces between the various component elements of the assembly 2 is described.
[0109] Figure 11 (a) Figure 11 (b) and Figure 11 (c) illustrates the case of circles with a common center, Figure 11 (d) shows the case where there are more than one contact surface. First, Figure 11 (a) shows that the main body 1001 and the bracket 1002 share a circle 1101. Here, the main body 1001 and the bracket 1002 share a circle with the circle indicated by the circular arrow as the center, and can rotate about the center of the shared circle as the axis.
[0110] in addition, Figure 11 (b) shows that the main body 1001 and the cylinder 1003 share a center circle 1102. Here, the main body 1001 and the cylinder 1003 are shown as having a center shared circle, and can rotate about the center of the center shared circle.
[0111] in addition, Figure 11 (c) shows that the center of the bracket 1002 and the rod 1004 share a circle 1103. Here, the bracket 1002 and the rod 1004 are shown to have a circle indicated by a circular arrow as a center shared circle, and are rotatable about the center of the center shared circle.
[0112] in addition, Figure 11 (d) shows the contact surface between the cylinder 1003 and the rod 1004, indicating that the cylinder 1003 and the rod 1004 are in contact with each other at two surfaces indicated by arrows.
[0113] then, Figure 12 Shown is the Figure 11 The contact surface number table of the component 2 is shown as the result of the determination of the contact surface. Figure 12 The contact surface number table is a table showing the results of the determination process for the number of centrally shared circles or contact surfaces between the component elements of assembly 2. Similar to assembly 1, this contact surface number table is created by the motion mechanism analysis unit 1806.
[0114] Here, in the table of contact surface quantities, e.g. Figure 11 As shown in (a), there is a central shared circle between the main body 1001 and the bracket 1002. Figure 11 As shown in (b), there is a central shared circle between the cylinder 1003 and the main body 1001. In addition, the cylinder 1003 and the bracket 1002 are separated, and the number of contact surfaces is 0. The rod and the main body are separated, and the number of contact surfaces is 0. Figure 11 As shown in (c), there is a central circle between the rod 1004 and the bracket 1002. Figure 11 The number of contact surfaces shown in (d) is 2. The contact surface number determination unit 1804 creates the contact surface number table shown above and stores it in the storage unit 182 .
[0115] Next, regarding component 2, use Figure 13 The connection relationship table showing the connection relationships determined by the connection relationship determination unit 1805 will be described.
[0116] exist Figure 13 In the example, since a common center circle exists between the main body 1001 and the bracket 1002, the connection relationship determination unit 1805 sets the connection relationship to rotation. Furthermore, since a common center circle exists between the cylinder 1003 and the main body 1001, the connection relationship determination unit 1805 sets the connection relationship to rotation. Since the cylinder 1003 and the bracket 1002 are separated and the number of contact surfaces is zero, the connection relationship determination unit 1805 sets the connection relationship to non-contact.
[0117] Furthermore, since the number of contact surfaces between rod 1004 and main body 1001 is 0, connection determination unit 1805 sets the connection to non-contact. Since a common center circle exists between rod 1004 and bracket 1002, the connection is set to rotational. Furthermore, since the number of contact surfaces between rod 1004 and cylinder 1003 is 2, this is inappropriate, particularly for short stroke lengths, so connection determination unit 1805 sets the connection to sliding.
[0118] Thus, the connection relationship specifying unit 1805 specifies the connection relationship between the component elements as described above, and stores the result in the connection relationship table of the storage unit 182 .
[0119] As above, in this example, for component 2, Figure 12 、 Figure 13 As shown in the figure, find out whether there is a common circle between the center of each component element and the number of contact surfaces, such as Figure 10 As shown, the connection relationship can be determined based on the presence or absence of a center-shared circle or the number of contact surfaces between all component elements.
[0120] Next, regarding component 2, the processing of the motion mechanism analysis unit 1806 will be described. Figure 14 It is a tree diagram generated by the action mechanism analysis unit 1806. Figure 14 Therefore, it is preferable to accept the designation of the top component element from the user via the input / output unit 1807. Alternatively, the motion mechanism analysis unit 1806 extracts the top component element according to a predetermined rule.
[0121] Next, the action mechanism analysis unit 1806 Figure 12 The contact surface quantity table shown is used to extract the component elements connected to the main body 1001. As a result, the bracket 1002 and the cylinder 1003 are extracted. Figure 14 As shown, the connection relationship between the bracket 1002 and the main body 1001 is rotation 1411. In addition, the connection relationship between the cylinder 1003 and the main body 1001 is rotation 1412.
[0122] Next, the motion mechanism analysis unit 1806 determines the second layer of the connection relationship. Figure 13 The connection relationship table extracts the extracted component elements and component elements connected to components other than the highest-level component. Specifically, the motion mechanism analysis unit 1806 extracts the rod 1004 as a component element connected to the bracket 1002. Here, the motion mechanism analysis unit 1806 determines that the connection relationship between the bracket 1002 and the rod 1004 is rotation 1414.
[0123] Furthermore, the motion mechanism analysis unit 1806 identifies another second-level hierarchy of connection relationships. First, the motion mechanism analysis unit 1806 extracts the rod 1004 as a component element connected to the cylinder 1003. Here, the motion mechanism analysis unit 1806 determines that the connection relationship between the cylinder 1003 and the rod 1004 is sliding 1413 in the Z-axis direction.
[0124] Then, the motion mechanism analysis unit 1806 confirms that there is no connection from the rod 1004. As a result, the motion mechanism analysis unit 1806 creates Figure 14 The tree diagram shown.
[0125] Here, we use the depth-first search method to search for Figure 14The process of extracting closed loops from a tree graph is explained below. Figure 15 This represents the concept of depth-first search. While setting the components passed from the top "component (node)" as "searched", it prioritizes searching for components in a deeper direction (farther from the starting position). If a "searched" component is reached through a new path, it can be determined that there is a "closed circuit". Figure 15 In the example, a search is performed in the order of (1) ABD - (2) DF - (3) EF - (4) EA. As a result, a closed circuit such as ABFE is extracted. Furthermore, by counting the relationships between the components (sliding / rotating / fixed), the operating mechanism can be determined. The components here correspond to the component elements of this embodiment.
[0126] exist Figure 16 The depth-first search method is applied to Figure 14 The motion mechanism analysis unit 1806 starts searching from the top main body 1001. Then, the motion mechanism analysis unit 1806 performs the search in the order of (1)-(2)-(3)-(4). As a result, the motion mechanism analysis unit 1806 extracts a loop consisting of main body 1001-rotation 1411-bracket 1002-rotation 1414-rod 1004-sliding in the Z-axis direction 1413-cylinder 1003-rotation 1412-main body 1001. Then, the motion mechanism analysis unit 1806 analyzes the loop and determines that the loop is a connecting rod consisting of 3 rotations and 1 sliding.
[0127] As a result, the motion mechanism analysis unit 1806 determines that a sliding crank mechanism exists in assembly 2. This determination can be made by the motion mechanism analysis unit 1806 based on pre-stored information defining the motion mechanism. Based on this result, the motion mechanism analysis unit 1806 can automatically generate a simulation model.
[0128] Thus, in this embodiment, when a closed loop shown in the tree diagram is extracted, it is possible to identify the operating mechanisms that conform to the multiple connection relationships included in the closed loop.
[0129] <User Interface>
[0130] Next, according to Figure 17 The processing flow related to the user interface in this embodiment is described.
[0131] First, in step S1701, the input / output unit 1807 receives a processing start instruction from the user. Next, in step S1702, the input / output unit 1807 receives a selection of the top-level component element from the user. Here, the input / output unit 1807 preferably outputs the various component elements that make up the assembly. The user can select a component element from this output. As a result, the action mechanism analysis unit 1806 can determine the top-level component element. Furthermore, this selection is the same as that described in Examples 1 and 2. By accepting the user's selection, trial and error in determining the top-level component element is reduced, thereby reducing computational processing time and effectively shortening generation time. Furthermore, since the top position of the tree diagram is the reference position of the simulation model, it is readily apparent to the user and requires less effort to specify, thus reducing the user's burden. However, the action mechanism analysis unit 1806 can also extract the top-level component element according to predetermined rules.
[0132] Furthermore, in step S1703, the input / output unit 1807 receives tolerance settings from the user. Specifically, the user specifies tolerances for positional and shape information such as distances, angles, and diameters of component elements. This allows for a setting that matches the accuracy of the 3D CAD information. Consequently, the connection relationship determination unit 1805 determines the tolerances and stores the values. Therefore, it is preferable that the input / output unit 1807 outputs input areas for positional and shape information such as distances, angles, and diameters, and accepts input for these input areas.
[0133] In step S1704, the input / output unit 1807 receives the sliding condition setting from the user. Figure 1 That is, the determination of the stroke length is performed in step S107. That is, the determination of whether the slide is fixed or sliding can be performed accurately based on the sliding length indicated by the set sliding condition.
[0134] However, in steps S1703 and S1704, the connection relationship determination unit 1805 may determine the error or run length according to a predetermined rule, which also includes recording the error and run length in advance and using them.
[0135] Furthermore, in step S1705, the input / output unit 1807 receives a rotation determination constraint setting from the user. The connection relationship determination unit 1805 then stores the setting. This rotation determination constraint is set so that a central shared circle with a diameter smaller than the set value is not considered rotational. This designation prevents fixed points such as bolts from being considered rotation axes. While this embodiment attempts to efficiently distinguish components that serve as rotation axes based on the diameter of the bolts, individual bolt designations are also possible.
[0136] Furthermore, in step S1706, the input / output unit 1807 receives a user instruction to sever the connection relationship and set the connection to non-contact. Specifically, it receives an input to re-determine a situation other than being contacted, such as being fixed based on the number of contact surfaces, as non-contact. This can be received in advance from the user, as described in the processes (1) to (3) above, or can be received through a dialog when a conflict is discovered during the structural analysis process based on the tree diagram.
[0137] In addition, the processing order of this flowchart is not limited to Figure 17 In addition, each step can be processed separately, or executed discontinuously, or performed collectively before the processing of steps S101 to S112. Moreover, it can also be executed in a dialogue form as needed during the processing of steps S101 to S112. Figure 17 The present invention provides a user interface that enables a user to implement control related to improving the accuracy of automatic generation processing and shortening the processing time in an automatic generation device for a simulation model based on 3D CAD information.
[0138] The above concludes the description of this embodiment. However, according to this embodiment, a simulation model based on a 3D CAD model can be automatically generated, thereby significantly improving the efficiency of simulation execution.
[0139] Furthermore, according to this embodiment, the operating mechanism can be determined based on the combination of component elements. Furthermore, a simulation model can be generated based on structural model data that can specify connection relationships in more detail. Therefore, detailed verification is also possible.
Claims
1. A simulation model generation device based on a 3D CAD model, characterized in that: The simulation model generating device comprises: a contact surface number determination unit configured to determine the number of contact surfaces between component elements constituting the 3D CAD model; a shared rotation axis determination unit that uses the 3D CAD model to determine whether there is a shared rotation axis between the component elements; and A connection relationship determination unit determines a connection relationship between the component elements indicating any one of non-contact, fixed, sliding, and rotating based on the number of contact surfaces and the presence or absence of the common rotation axis.
2. The simulation model generating device according to claim 1, characterized in that: The simulation model generating device further includes: an action mechanism analyzing unit for specifying an action mechanism in the 3D CAD model using the connection relationship.
3. The simulation model generating device according to claim 2, characterized in that: When the plurality of connection relationships represent a closed loop, the operating mechanism analysis unit specifies a link mechanism corresponding to the closed loop as the operating mechanism.
4. The simulation model generating device according to claim 3, characterized in that: The motion mechanism analysis unit determines the closed loop using a depth-first search method.
5. The simulation model generating device according to any one of claims 1 to 4, characterized in that: The simulation model generating device further includes an input unit that receives input related to determination of the connection relationship from a user. The connection relationship determination unit determines the connection relationship based on the input.
6. A method for generating a simulation model based on a 3D CAD model, characterized in that: The simulation model generation method performs the following processing: The contact surface number determination unit determines the number of contact surfaces between component elements constituting the 3D CAD model; a shared rotation axis determination unit that uses the 3D CAD model to determine whether there is a shared rotation axis between the component elements; and The connection relationship determination unit determines the connection relationship between the component elements indicating any one of non-contact, fixed, sliding, and rotation based on the number of contact surfaces and the presence or absence of the common rotation axis.
7. The simulation model generation method according to claim 6, characterized in that: The motion mechanism analyzing unit specifies the motion mechanism in the 3D CAD model using the connection relationship.
8. The simulation model generation method according to claim 7, characterized in that: When the plurality of connection relationships represent a closed loop, the operating mechanism analysis unit specifies a link mechanism corresponding to the closed loop as the operating mechanism.
9. The simulation model generation method according to claim 8, characterized in that: The motion mechanism analysis unit determines the closed loop using a depth-first search method.
10. The simulation model generation method according to any one of claims 6 to 9, characterized in that: The simulation model generation method further receives input related to determination of the connection relationship from a user via an input unit. The connection relationship determination unit determines the connection relationship based on the input.
11. A computer-readable storage medium storing a program, characterized in that: This program causes a simulation model generation device based on a 3D CAD model of a component device, which is a computer, to function as the following components: a contact surface number determination unit configured to determine the number of contact surfaces between component elements constituting the 3D CAD model; a shared rotation axis determination unit that uses the 3D CAD model to determine whether there is a shared rotation axis between the component elements; and A connection relationship determination unit determines a connection relationship between the component elements indicating any one of non-contact, fixed, sliding, and rotating based on the number of contact surfaces and the presence or absence of the common rotation axis.
12. The computer-readable storage medium according to claim 11, wherein The program is further configured to cause the simulation model generating device to function as a motion mechanism analyzing unit that specifies a motion mechanism in the 3D CAD model using the connection relationship.
13. The computer-readable storage medium according to claim 12, wherein: When the plurality of connection relationships represent a closed loop, the operating mechanism analysis unit specifies a link mechanism corresponding to the closed loop as the operating mechanism.
14. The computer-readable storage medium according to claim 13, wherein: The motion mechanism analysis unit determines the closed loop using a depth-first search method.
15. The computer-readable storage medium according to any one of claims 11 to 14, wherein: The simulation model generating device is further configured to function as an input unit for receiving input from a user regarding determination of the connection relationship. The connection relationship determination unit determines the connection relationship based on the input.
Citation Information
Patent Citations
Generation device, generation program, and generation method
JP2013045254A
Component fixed state display device, component fixed state display method, and component fixed state display program
JP2019016180A