Modeling and simulation methods, systems, and storage media for digital factory systems

By dividing the digital factory system into multiple subsystems and setting dynamic, kinematic, and multibody dynamics solution parameters for each subsystem, and combining the algorithm engine and collision logic, the problem of insufficient simulation performance and stability in existing technologies is solved, and higher-precision system simulation is achieved.

CN117203592BActive Publication Date: 2026-07-31SIMENS INDASTRI SOFTVEAR INK
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
SIMENS INDASTRI SOFTVEAR INK
Filing Date
2021-05-31
Publication Date
2026-07-31

AI Technical Summary

Technical Problem

Existing physics engines are inadequate in performance, stability, and accuracy when simulating large-scale robotic mechanical operations and manufacturing processes, and cannot perform well under any given conditions.

Method used

The digital factory system is divided into multiple subsystems, and dynamic, kinematic, and multibody dynamics solution parameters are set for each subsystem. Combined with the corresponding algorithm engine and collision logic, analysis and simulation are performed.

Benefits of technology

It improves the performance, stability, and accuracy of the virtual digital factory, enabling more precise system simulation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117203592B_ABST
    Figure CN117203592B_ABST
Patent Text Reader

Abstract

This invention discloses a modeling and simulation method, system, and storage medium for a digital factory system. The method includes: receiving a digital model created by a user based on a modeling library; in the modeling library, the entire digital factory system is divided into multiple subsystems, and each subsystem includes motion joints with supported solution parameters; the solution parameters include at least one of dynamics, kinematics, and multibody dynamics solution parameters; for each motion joint in the digital model, according to the solution parameters of the motion joint, associating a corresponding algorithm engine for the motion joint in a simulation engine; the simulation engine is equipped with algorithm engines for kinematics, dynamics, and multibody dynamics respectively; and solving the associated motion joints using the corresponding algorithm engines according to the execution order in the analytical model. The technical solution in this invention can improve the performance, stability, and accuracy of the virtual digital factory.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the industrial field, and in particular to a modeling and simulation method, system, and computer-readable storage medium for a digital factory system. Background Technology

[0002] Digital twins (DT) are a key technology in Industry 4.0, supporting the creation and simulation of various digital models, from machine stations to assembly lines or production lines, and even entire factories. Currently, some physics engines provide approximate simulations of physical systems such as gravity, collision detection, rigid body dynamics, and friction modeling. These simulations may aim to approximate real-world physical models as closely as possible and have been widely used in computer games in recent years. However, in industrial automation environments, systems may include a large number of machines, equipment, and controllers. When using these physics engines to simulate such large-scale robotic mechanical operations, manufacturing processes, or production line flows, issues arise regarding performance, stability, and accuracy. Currently, there is no universally applicable physics engine that performs well in every given situation; each physics engine has its advantages and disadvantages. Summary of the Invention

[0003] In view of this, this invention proposes, on the one hand, a modeling and simulation method for a digital factory system, and on the other hand, a modeling and simulation system and a computer-readable storage medium for a digital factory system, in order to improve the performance, stability and accuracy of the virtual digital factory.

[0004] A modeling and simulation method for a digital factory system proposed in this embodiment of the invention includes: receiving a digital model created by a user based on a modeling library; in the modeling library, the entire digital factory system is divided into multiple subsystems, and each subsystem includes motion joints with supported solution parameters; the solution parameters include at least one of dynamics, kinematics, and multibody dynamics solution parameters; parsing the digital model to obtain an analytical model with a certain execution order; wherein, parsing the digital model includes: for each motion joint in the digital model, associating a corresponding algorithm engine for the motion joint in a simulation engine according to the solution parameters of the motion joint; the simulation engine is equipped with algorithm engines for kinematics, dynamics, and multibody dynamics respectively; solving the analytical model according to the execution order in the analytical model, and performing simulation based on the solution results; wherein, solving the analytical model includes: using the corresponding algorithm engine to solve the associated motion joints.

[0005] In one implementation, in the modeling library, each subsystem includes rigid bodies that may collide, each with a collision identifier. The simulation engine further includes collision logic for collisions between different rigid bodies, and the collision logic includes: kinematic rigid body-dynamic rigid body collision logic, dynamic rigid body-kinematic rigid body collision logic, kinematic rigid body-kinematic rigid body collision logic, and dynamic rigid body-dynamic rigid body collision logic. The parsing of the digital model further includes: for rigid bodies with collision identifiers, associating the rigid body with corresponding collision logic in the simulation engine based on the solution parameters of the kinematic joints connected to the rigid body. The solving of the parsing module further includes: solving the associated rigid bodies using the corresponding collision logic.

[0006] In one implementation, the parsing of the digital model further includes: first, checking the joints connected to the ground; starting from the joints connected to the ground, searching the joint chain to obtain information on all joints and the rigid bodies they connect to; checking the couplers connected to the joints; checking the motors driving the joints; checking whether the joint chain is open-loop or closed-loop; adding actual mass and moment of inertia to the rigid bodies connected by dynamic joints and multibody dynamic joints; setting the mass and moment of inertia of the rigid bodies connected by kinematic joints to 0; and removing the collision markers of the rigid bodies connected by kinematic joints.

[0007] In one embodiment, the step of solving the analytical model according to the execution order in the analytical model and performing simulation based on the solution results includes: determining each simulation step according to the execution order in the analytical model; calculating the motion and dynamic parameters of all rigid bodies in the joint chain in each simulation step using the corresponding algorithm engine and / or collision logic; moving all rigid bodies to the corresponding calculation position according to the motion and dynamic parameters in each simulation step; and displaying at least one of the position, velocity, acceleration, jerk, force, torque, and collision signal of all rigid bodies.

[0008] In one implementation, calculating the position of all rigid bodies in the joint chain in each simulation step includes: determining the first simulation step as the current simulation step; calculating the current motion and dynamic parameters of the first rigid body in the joint chain using the corresponding algorithm engine; setting the first rigid body as the current rigid body; determining whether the current rigid body is the last rigid body in the joint chain; if the current rigid body is the last rigid body in the joint chain, determining whether the current simulation step is the last simulation step; if so, ending the simulation; otherwise, setting the next simulation step as the current simulation step and returning to execute the operation of calculating the current motion and dynamic parameters of the first rigid body in the joint chain; if the current rigid body is not the last rigid body in the joint chain, setting the next rigid body as the current rigid body and calculating the current motion and dynamic parameters of the current rigid body based on the motion and dynamic parameters of the previous rigid body using the corresponding algorithm engine and / or collision logic; and then returning to execute the operation of determining whether the current rigid body is the last rigid body in the joint chain.

[0009] In one embodiment, the plurality of subsystems includes at least one of the following subsystems: a conventional joint subsystem, comprising: fixed joints, hinge joints, sliding joints, cylindrical joints, threaded joints, point joints on curves, ball joints, and planar joints; each joint in the conventional joint subsystem is provided with three solution parameters: dynamics, kinematics, and multibody dynamics; an open-loop subsystem connected to the ground at one end, comprising: a rigid body and joints located in the open-loop link; the joints in the open-loop link are provided with three solution parameters: dynamics, kinematics, and multibody dynamics; a closed-loop subsystem connected to the ground at both ends, comprising: a rigid body and multiple joints located in the closed loop; the joints in the loop are provided with three solution parameters: dynamics, kinematics, and multibody dynamics; and a point joint chain subsystem on a curve, comprising: a primary rigid body controlled by 1 to 3 point kinematic joints on the curve and at least one secondary rigid body that follows the primary rigid body; the point kinematic joints on the curve are provided with three solution parameters: dynamics, kinematics, and multibody dynamics; The system comprises: a kinematic solution parameter set; a coupled transmission subsystem, including gears, racks and pinions, a three-joint coupler, pulleys and belts, and a mechanical cam; the joints in the coupled transmission subsystem are provided with three solution parameter terms: dynamics, kinematics, and multibody dynamics; a drive subsystem, including position control, speed control, inverse kinematics control, attitude control, and a conveyor belt; the joints in the drive subsystem are provided with three solution parameter terms: dynamics, kinematics, and multibody dynamics; a hydraulic and pneumatic subsystem, including force and / or torque control, hydraulic cylinders, hydraulic valves, pneumatic cylinders, and pneumatic valves; the joints in the hydraulic and pneumatic subsystem are provided with dynamic solution parameters; and a dynamic joint subsystem, including angular spring joints, linear spring joints, angular limit joints, linear limit joints, fracture constraints, and spring dampers; the angular spring joints, linear spring joints, angular limit joints, linear limit joints, fracture constraints, and spring dampers are provided with dynamic solution parameters.

[0010] The modeling and simulation system for a digital factory system proposed in this embodiment of the invention includes: a modeling library, which includes building modules for motion joints in multiple subsystems of the digital factory system, and each building module is configured with supported solution parameters; the solution parameters include at least one of dynamics, kinematics, and multibody dynamics solution parameters; a simulation engine, which includes algorithm engines for kinematics, dynamics, and multibody dynamics respectively; a model parsing module, used to receive a digital model created by a user based on a modeling library, parse the digital model, and obtain an analytical model with a certain execution order; wherein, parsing the digital model includes: for each motion joint in the digital model, associating the motion joint with a corresponding algorithm engine in the simulation engine according to the solution parameters of the motion joint; a simulation module, used to solve the analytical model according to the execution order in the analytical model, and perform simulation based on the solution results; wherein, solving the analytical model includes: using the corresponding algorithm engine to solve the associated motion joints.

[0011] In one embodiment, the modeling library further includes a rigid body building module for each subsystem, and a collision identifier item is set for the building module of rigid bodies that may collide; the simulation engine further includes collision logic for collisions between different rigid bodies, and the collision logic includes: kinematic rigid body-dynamic rigid body collision logic, dynamic rigid body-kinematic rigid body collision logic, kinematic rigid body-kinematic rigid body collision logic, and dynamic rigid body-dynamic rigid body collision logic; the model parsing module is further used to: for rigid bodies with collision identifiers, associate the corresponding collision logic for the rigid body in the simulation engine according to the solution parameters of the kinematic joints connected to the rigid body; the simulation module is further used to: solve the associated rigid bodies using the corresponding collision logic.

[0012] In one implementation, the model parsing module is further configured to: first check the joints connected to the ground; start searching the joint chain from the joints connected to the ground to obtain information on all joints and the rigid bodies they connect to; check the couplers connected to the joints; check the motors driving the joints; check whether the joint chain is open-loop or closed-loop; add the actual mass and moment of inertia to the rigid bodies connected by the dynamic joints and multibody dynamic joints; set the mass and moment of inertia of the rigid bodies connected by the kinematic joints to 0; and remove the collision flags of the rigid bodies connected by the kinematic joints.

[0013] In one implementation, the simulation module determines each simulation step according to the execution order in the analytical model; it uses the corresponding algorithm engine and / or collision logic to calculate the motion and dynamic parameters of all rigid bodies in the joint chain in each simulation step; in each simulation step, it moves all rigid bodies to the corresponding calculation position according to the motion and dynamic parameters; and displays at least one of the following: position, velocity, acceleration, jerk, force, torque, and collision signal of all rigid bodies.

[0014] In one implementation, when the simulation module calculates the positions of all rigid bodies in the joint chain in each simulation step, it includes: determining the first simulation step as the current simulation step; calculating the current motion and dynamic parameters of the first rigid body in the joint chain using the corresponding algorithm engine; setting the first rigid body as the current rigid body; determining whether the current rigid body is the last rigid body in the joint chain; if the current rigid body is the last rigid body in the joint chain, determining whether the current simulation step is the last simulation step; if so, ending the simulation; otherwise, setting the next simulation step as the current simulation step and returning to execute the operation of calculating the current motion and dynamic parameters of the first rigid body in the joint chain; if the current rigid body is not the last rigid body in the joint chain, setting the next rigid body as the current rigid body and calculating the current motion and dynamic parameters of the current rigid body based on the motion and dynamic parameters of the previous rigid body using the corresponding algorithm engine and / or collision logic; and then returning to execute the operation of determining whether the current rigid body is the last rigid body in the joint chain.

[0015] In one embodiment, the plurality of subsystems includes at least one of the following subsystems: a conventional joint subsystem, comprising: fixed joints, hinge joints, sliding joints, cylindrical joints, threaded joints, point joints on curves, ball joints, and planar joints; each joint in the conventional joint subsystem is provided with three solution parameters: dynamics, kinematics, and multibody dynamics; an open-loop subsystem connected to the ground at one end, comprising: a rigid body and joints located in the open-loop link; the joints in the open-loop link are provided with three solution parameters: dynamics, kinematics, and multibody dynamics; a closed-loop subsystem connected to the ground at both ends, comprising: a rigid body and multiple joints located in the closed loop; the joints in the loop are provided with three solution parameters: dynamics, kinematics, and multibody dynamics; and a point joint chain subsystem on a curve, comprising: a primary rigid body controlled by 1 to 3 point kinematic joints on the curve and at least one secondary rigid body that moves with the primary rigid body; The system comprises: a kinematic joint on the curve with kinematic solution parameters; a coupled transmission subsystem including gears, racks and pinions, a three-joint coupler, pulleys and belts, and a mechanical cam; the joints in the coupled transmission subsystem having three solution parameters: dynamics, kinematics, and multibody dynamics; a drive subsystem including position control, speed control, inverse kinematics control, attitude control, and a conveyor belt; the joints in the drive subsystem having three solution parameters: dynamics, kinematics, and multibody dynamics; a hydraulic and pneumatic subsystem including force and / or torque control, hydraulic cylinders, hydraulic valves, pneumatic cylinders, and pneumatic valves; the joints in the hydraulic and pneumatic subsystem having dynamic solution parameters; and a dynamic joint subsystem including angular spring joints, linear spring joints, angular limit joints, linear limit joints, fracture constraints, and spring dampers; the joints in the dynamic joint subsystem having dynamic solution parameters.

[0016] The present invention provides a modeling and simulation system for a digital factory system, comprising: at least one memory and at least one processor, wherein: the at least one memory is used to store computer programs, a modeling library and a simulation engine; and the at least one processor is used to call the computer programs stored in the at least one memory to execute the modeling and simulation method for the digital factory system in any of the above embodiments.

[0017] The present invention provides a computer-readable storage medium storing a computer program, a modeling library, and a simulation engine; the computer program can be executed by a processor to implement the modeling and simulation method of the digital factory system as described in any of the above embodiments.

[0018] As can be seen from the above scheme, in this embodiment of the invention, the entire digital factory system is divided into multiple subsystems in the modeling library. For each subsystem, at least one of the supported dynamics, kinematics, and multibody dynamics solution parameters is set for the motion joints. Algorithm engines are set in the simulation engine for kinematics, dynamics, and multibody dynamics respectively. After receiving the digital model created by the user based on the modeling library, for each motion joint in the digital model, a corresponding algorithm engine is associated with the motion joint in a simulation engine according to the solution parameters of the motion joint. During simulation, the corresponding algorithm engine is used to solve the associated motion joints, and the simulation is performed based on the solution results. Therefore, this embodiment of the invention integrates dynamics, kinematics, and multibody dynamics into one system, thereby improving the performance, stability, and accuracy of the virtual digital factory. Attached Figure Description

[0019] Preferred embodiments of the present invention will now be described in detail with reference to the accompanying drawings, which will make the above and other features and advantages of the present invention more apparent to those skilled in the art. In the drawings:

[0020] Figure 1 This is an exemplary flowchart of the modeling and simulation method for a digital factory system in an embodiment of the present invention.

[0021] Figure 2A This is a schematic diagram of an open-loop subsystem as an example.

[0022] Figure 2B and Figure 2C These are schematic diagrams of a closed-loop subsystem in one example.

[0023] Figure 2D This is a schematic diagram of a point-joint chain system on a curve, as an example.

[0024] Figures 2E to 2H These are schematic diagrams of collisions between different rigid bodies.

[0025] Figure 3 This is a schematic diagram of a model in an example.

[0026] Figure 4 This is a schematic diagram of a model in another example.

[0027] Figure 5 This is an exemplary structural diagram of a modeling and simulation system for a digital factory system in one embodiment of the present invention.

[0028] Figure 6 This is an exemplary structural diagram of a modeling and simulation system for a digital factory system in another embodiment of the present invention.

[0029] The reference numerals in the attached figures are as follows:

[0030] Detailed Implementation

[0031] In this embodiment of the invention, a digital factory system typically includes humans, robots, tool magazine systems, manufacturing units, and transport systems. Within this complex system, some subsystems require dynamic solutions, such as the transport system which needs to simulate forces and torques for actuator selection; others require kinematic solutions, such as the tool magazine system which requires precise motion; and for humans and robots, multibody dynamics is the optimal choice for solving multibody dynamic systems. Currently, some commercial software only supports one of the three types: dynamics, kinematics, and multibody dynamics, but cannot combine these three types into a single system. Therefore, in this embodiment of the invention, the entire digital factory system is subdivided into multiple subsystems, and at least one appropriate method from dynamics, kinematics, and multibody dynamics is used to solve the problems for each subsystem.

[0032] Among these, dynamics refers to dynamic simulation with forces and collisions; kinematics refers to kinematic simulation without forces and collisions; and multibody dynamics refers to the dynamic simulation of articulated bodies, also known as articulation, which is represented as a set of rigid bodies connected by joints in a tree-like structure. Its main use cases are robots and other machines that require additional precision.

[0033] To make the objectives, technical solutions, and advantages of the present invention clearer, the following embodiments are provided to further illustrate the present invention in detail.

[0034] For the sake of brevity and intuitiveness, the following description uses several representative embodiments to illustrate the solution of the present invention. Numerous details in the embodiments are only used to aid in understanding the solution of the present invention. However, it is obvious that the technical solution of the present invention can be implemented without being limited to these details. To avoid unnecessarily obscuring the solution of the present invention, some embodiments are not described in detail, but only a framework is given. In the following text, "comprising" means "including but not limited to," and "according to..." means "at least according to..., but not limited to only according to...". Due to Chinese language habits, unless the quantity of a component is specifically indicated below, it means that the component can be one or more, or can be understood as at least one.

[0035] Figure 1 This is an exemplary flowchart of the modeling and simulation method for a digital factory system in an embodiment of the present invention. Figure 1 As shown, the method includes the following steps:

[0036] Step 101: Receive a digital model created by the user based on a modeling library. In the modeling library, the entire digital factory system is divided into multiple subsystems, and each subsystem includes motion joints with supported solution parameter items; the solution parameters include at least one of dynamics, kinematics, and multibody dynamics. That is, the modeling library may include building modules for motion joints in multiple subsystems of the digital factory system, and each building module is configured with supported solution parameter items.

[0037] In this embodiment, the entire digital factory system can be divided into multiple subsystems, and the motion joints included in each subsystem can be configured with supported solution parameters; the solution parameters include at least one of dynamics, kinematics, and multibody dynamics.

[0038] For example, in one instance, the multiple subsystems that the entire plant system is divided into may include one or more of the following: a conventional joint subsystem, an open-loop subsystem with one end connected to the ground, a closed-loop subsystem with both ends connected to the ground, a point joint chain subsystem on a curve, a coupled transmission subsystem, a drive subsystem, a hydraulic and pneumatic subsystem, and a dynamic joint subsystem.

[0039] The conventional joint subsystem may include: fixed joints, hinged joints, sliding joints, cylindrical joints, threaded joints, point joints on curves, ball joints, and planar joints. This conventional joint subsystem supports three types of solutions: dynamics, kinematics, and multibody dynamics. Correspondingly, each motion joint in the conventional joint subsystem can be configured with these three solution parameters, allowing users to select the specific solution parameters required for a particular motion joint in the current model. It should be noted that when a user selects kinematics as the solution parameter for a joint, a drive motor must also be configured for that joint; otherwise, the joint will be stationary.

[0040] An open-loop subsystem connected to the ground at one end may include rigid bodies and joints located in the open-loop link. Figure 2A An open-loop subsystem is illustrated. In this system, straight line 21 with a diagonal line represents the ground, straight line 22 without a diagonal line represents a rigid body, and small circles 23 represent joints. These joints can be hybrid joints combining kinematic, dynamic, and multibody dynamics principles. Correspondingly, three solution parameter options—dynamic, kinematic, and multibody dynamics—can be set for each joint in the open-loop link subsystem, allowing users to select the specific solution parameters needed for the current model.

[0041] A closed-loop subsystem connected to the ground at both ends may include: a rigid body and multiple joints located in the closed loop. Figure 2B and Figure 2C Each of the following diagrams illustrates a closed-loop subsystem. The symbols used have the same meaning as... Figure 2AThese joints can be hybrid joints combining kinematic, dynamic, and multibody dynamics principles. Correspondingly, three solution parameter options—dynamic, kinematic, and multibody dynamics—can be set for each joint in the closed-loop subsystem, allowing users to select the specific solution parameters needed for the current model during modeling.

[0042] A point-joint chain system on a curve may include: a master rigid body controlled by one to three point kinematic joints located on the curve and at least one slave rigid body that moves with the master rigid body. Figure 2D A point-joint chain system on a curve is illustrated. Rectangle 24 with a plus sign represents the principal rigid body, and three rectangles 25 without a plus sign represent the subordinate rigid bodies. This point-joint kinematic system on the curve supports kinematic solutions. Accordingly, kinematic solution parameters can be set for the point-joint kinematic system on the curve.

[0043] The coupled transmission subsystem may include gears, racks and pinions, three-joint couplers, pulleys and belts, mechanical cams, etc. This coupled transmission subsystem supports nodes for dynamic, kinematic, and multibody dynamics solutions. Correspondingly, three solution parameter terms (dynamics, kinematics, and multibody dynamics) can be set for the joints in the coupled transmission subsystem, allowing users to select the specific solution parameters needed for the current model.

[0044] The drive subsystem may include position control, velocity control, inverse kinematics control, attitude control, and conveyor belts. This drive subsystem supports nodes for three types of solutions: dynamics, kinematics, and multibody dynamics. Correspondingly, three solution parameter terms (dynamics, kinematics, and multibody dynamics) can be set for the joints in the drive subsystem, allowing users to select the specific solution parameters needed for the current model.

[0045] The hydraulic and pneumatic subsystems may include: force and / or torque control, hydraulic cylinders, hydraulic valves, pneumatic cylinders, and pneumatic valves, etc. Accordingly, dynamic solution parameters can be set for each joint in the hydraulic and pneumatic subsystems.

[0046] The dynamic joint subsystem may include: angular spring joints, linear spring joints, angular limit joints, linear limit joints, fracture constraints, and spring dampers, etc. This dynamic joint subsystem supports dynamic solutions. Accordingly, dynamic solution parameters can be set for each joint in the dynamic joint subsystem.

[0047] In this embodiment, the modeling library includes collision flags for rigid bodies that may collide in each subsystem. These flags are loaded when the user identifies a rigid body as a colliding body during modeling. Specifically, the modeling library may further include building modules for rigid bodies in each subsystem, and collision flags are provided for rigid bodies that may collide.

[0048] When modeling, users can set physical objects as rigid bodies and colliders (i.e., rigid bodies that may collide) for simulation. For rigid bodies, joints and couplers can be added between them, and motors can be added to the corresponding joints. Other mechanical constraints can be added to the corresponding rigid bodies. In addition, the solution type supported by each joint in the current model must be determined, such as kinematic, dynamic, or multibody dynamics. For colliders, a collision identifier can be set for the collider, and the properties of the collider, such as whether it is a kinematic collider or a dynamic collider, can be determined based on the solution parameters of the kinematic joints connected to the collider.

[0049] In addition, the modeling library may include other building modules required for modeling. This is not limited here.

[0050] Step 102: Analyze the digital model to obtain an analytical model with a certain execution order.

[0051] In this embodiment, algorithm engines for kinematics, dynamics, and multibody dynamics can be set up separately in the simulation engine. Accordingly, parsing the digital model may include: for each motion joint in the digital model, associating a corresponding algorithm engine for the motion joint in a simulation engine based on the solution parameters of the motion joint.

[0052] Furthermore, in this embodiment, collision logic for collisions between different rigid bodies can be further set in the simulation engine. For example, the collision logic may include: kinematic rigid body-dynamic rigid body collision logic, dynamic rigid body-kinematic rigid body collision logic, kinematic rigid body-kinematic rigid body collision logic, and dynamic rigid body-dynamic rigid body collision logic.

[0053] like Figure 2E As shown, the kinematic rigid body-dynamic rigid body collision logic refers to the algorithm logic of a rigid body controlled by a kinematic joint, such as a kinematic sliding joint K1, colliding with a rigid body controlled by a dynamic joint, such as a dynamic hinge joint D1. This collision takes into account the collision force and has a collision sensor. The kinematic sliding joint K1 is driven by a motor. When the rigid body controlled by it collides with the rigid body controlled by the dynamic hinge joint D1, it causes the rigid body controlled by the dynamic hinge joint D1 to move.

[0054] like Figure 2F As shown, the dynamic rigid body-kinematic rigid body collision logic refers to the algorithm logic of a rigid body controlled by a dynamic joint such as the dynamic sliding joint D2 colliding with a rigid body controlled by a kinematic joint such as the kinematic hinge joint K2. This collision does not consider the collision force and has a collision sensor. The dynamic sliding joint D2 is driven by a motor, and the rigid body it controls has difficulty passing through the rigid body controlled by the kinematic hinge joint K2. The rigid body controlled by the kinematic hinge joint K2 is fixed.

[0055] like Figure 2G As shown, the kinematic rigid body-kinematic rigid body collision logic refers to the algorithm logic of a rigid body controlled by a kinematic joint such as the kinematic sliding joint K1 colliding with another rigid body controlled by a kinematic joint such as the kinematic hinge joint K2. This collision does not consider the collision force and does not have a collision sensor. The kinematic sliding joint K1 is driven by a motor, and the rigid body it controls can easily pass through the rigid body controlled by the kinematic hinge joint K2, which is fixed.

[0056] like Figure 2H As shown, the dynamic rigid body-dynamic rigid body collision logic refers to the algorithm logic for a rigid body controlled by a dynamic joint, such as dynamic sliding joint D2, to collide with another rigid body controlled by a dynamic joint, such as dynamic hinge joint D1. This collision takes into account the collision force and has a collision sensor. Dynamic sliding joint D2 is driven by a motor. After the rigid body controlled by it collides with the rigid body controlled by dynamic hinge joint D1, the rigid body controlled by dynamic hinge joint D1 moves. That is, the rigid body controlled by dynamic hinge joint D1 is driven by the collision.

[0057] Accordingly, the parsing of the digital model may further include: for a rigid body with a collision identifier, associating the rigid body with corresponding collision logic in the simulation engine based on the solution parameters of the motion joints connected to the rigid body.

[0058] In one example, step 102 may specifically include:

[0059] 1) First, check the joints that are connected to the ground.

[0060] 2) Start searching the joint chain from the joints connected to the ground to obtain information on all joints and the rigid bodies they are connected to.

[0061] 3) Inspect the coupler connected to the joint.

[0062] 4) Check the motor that drives the joint.

[0063] 5) Check whether the joint chain is open-loop or closed-loop. In the simulation engine, the constraint equations for open-loop and closed-loop chains are different. Open-loop chains only require calculation of the constraints at one end, while closed-loop chains require calculation of the constraints at both ends. Consequently, the final rigid body position will also be different.

[0064] 6) Add the detected rigid bodies, joints, couplers, and motors to the simulation engine.

[0065] This step may specifically include:

[0066] 6.1) Add the actual mass and moment of inertia to the rigid body connected by dynamic joints and multibody dynamic joints.

[0067] 6.2) Set the mass and moment of inertia of the rigid body connected by kinematic joints to 0.

[0068] 6.3) Remove collision markers for rigid bodies connected by kinematic joints.

[0069] 6.4) Associate the corresponding algorithm engine for each motion joint with the solution parameters of each motion joint.

[0070] 6.5) For a rigid body with a collision indicator, the corresponding collision logic is associated with the rigid body in the simulation engine based on the solution parameters of the motion joints connected to the rigid body.

[0071] Step 103: Solve the analytical model according to the execution order of the analytical model, and perform model simulation based on the solution results.

[0072] In this embodiment, for motion joints associated with an algorithm engine, the corresponding algorithm engine can be used to solve for the associated motion joints to obtain motion and dynamic parameters such as position, velocity, acceleration, jerk, force, and torque of the connected rigid bodies. Furthermore, for rigid bodies associated with collision logic, the corresponding collision logic can be used to solve for the associated rigid bodies to obtain the forces, collision signals, and motion parameters of the colliding rigid bodies.

[0073] In one example, step 103 may specifically include: determining each simulation step according to the execution order in the analytical model; using the corresponding algorithm engine and / or collision logic to calculate the motion and dynamic parameters of all rigid bodies in the joint chain in each simulation step; moving all rigid bodies to the corresponding calculation position according to the motion and dynamic parameters in each simulation step; and displaying at least one of the following relevant information: position, velocity, acceleration, jerk, force, torque, and collision signal of all rigid bodies.

[0074] The calculation of motion and dynamic parameters of all rigid bodies in the joint chain in each simulation step may include:

[0075] Step A: Determine the first simulation step as the current simulation step;

[0076] Step B involves using the corresponding algorithm engine to calculate the current motion and dynamic parameters of the first rigid body, and then using the first rigid body as the current rigid body.

[0077] In this step, the position information in the motion and dynamic parameters can be calculated as follows: Current position of the current rigid body = Previous position of the current rigid body + Incremental position of the current rigid body

[0078] Through iterative calculations, a set of equations is created for all constraints (joints, couplers, motors, etc. with dynamics or multibody dynamics or kinematics) to obtain the incremental position of the current rigid body in this simulation step.

[0079] Step C: Determine if the current rigid body is the last rigid body in the joint chain. If not, proceed to step D; otherwise, proceed to step E.

[0080] Step D: Select the next rigid body as the current rigid body, and use the corresponding algorithm engine and / or collision logic to calculate the current motion and dynamic parameters of the current rigid body based on the motion and dynamic parameters of the previous rigid body. Then, return to execute step C.

[0081] In this step, the positional information in the motion and dynamic parameters can be calculated according to different scenarios. For example, in a non-collision scenario, the current position of the current rigid body = the previous position of the current rigid body + the incremental position of the previous rigid body + the incremental position of the current rigid body. As another example, in a collision scenario, the current position of the current rigid body = the previous position of the current rigid body + the incremental position of the current rigid body determined based on the incremental position of the previous rigid body.

[0082] Through iterative calculations, a set of equations is created for all constraints (joints, couplers, motors, etc. with dynamics or multibody dynamics or kinematics) to obtain the incremental position of the current rigid body in this simulation step.

[0083] Step E: Determine if the current simulation step is the last simulation step. If it is, end the process; otherwise, take the next simulation step as the current simulation step and return to step A.

[0084] For example:

[0085] Figure 3 The image shows a schematic diagram of a digital model as an example. Figure 3 As shown, the digital model includes: a first rigid body r31, a second rigid body r32, a third rigid body r33, a dynamic joint j31, a multi-body dynamic joint j32, a kinematic joint j33, a first drive motor m31 driving the dynamic joint j31, a second drive motor m32 driving the multi-body dynamic joint j32, and a third drive motor m33 driving the kinematic joint j33. One end of the first rigid body r31 is connected to the ground via the dynamic joint j31, and the other end is connected to one end of the second rigid body r32 via the multi-body dynamic joint j32. The other end of the second rigid body r32 is connected to one end of the third rigid body r33 via the kinematic joint j33. The other end of the third rigid body r33 is an open-loop configuration.

[0086] exist Figure 3 In the digital model shown, a joint chain connects to the ground. (Regarding...) Figure 3The process of calculating the position of each rigid body in the joint chain, as shown in the digital model, may include:

[0087] First, starting from the ground, loop through each joint in the joint chain to obtain information about the dynamic joint j31 and the first rigid body r31. Therefore, the incremental position of the first rigid body r31 can be calculated using the dynamic equations, thus obtaining the current position of the first rigid body r31 as: the previous position of the first rigid body r31 + the incremental position of the first rigid body r31.

[0088] Then, the information of multibody dynamics joint j32 and the second rigid body r32 is obtained. Therefore, the incremental position of the second rigid body r32 can be calculated using the hinge equation system, so that the current position of the second rigid body r32 is: the previous position of the second rigid body r32 + the incremental position of the first rigid body r31 + the incremental position of the second rigid body r32.

[0089] Finally, the information of kinematic joint j33 and third rigid body r33 is obtained. Therefore, the incremental position of third rigid body r33 can be calculated using the kinematic equations, thus obtaining the current position of third rigid body r33 as: the previous position of third rigid body r33 + the incremental position of second rigid body r32 + the incremental position of third rigid body r33.

[0090] Figure 4 The image shows a schematic diagram of a digital model as an example. Figure 4 As shown, the digital model includes: a first rigid body r41 and a second rigid body r42, a dynamic joint j41, a kinematic joint j42, and a motor m41 that drives the dynamic joint j41.

[0091] exist Figure 4 In the digital model shown, the ground connection has two joint chains, and the first rigid body r41 and the second rigid body r42 are meshed by gears. (Regarding...) Figure 4 The process of calculating the position of each rigid body in the joint chain of the model shown may include:

[0092] First, loop through the first joint chain. Obtain information about the dynamic joint j41 and the first rigid body r41. Therefore, the incremental position of the first rigid body r41 can be calculated using the dynamic equations, thus obtaining the current position of the first rigid body r41 as: the previous position of the first rigid body r41 + the incremental position of the first rigid body r41.

[0093] Then, the second joint chain is looped. Information is obtained for the kinematic joint j42 without motor drive and the second rigid body r42. Therefore, the incremental position of the second rigid body r42 is: the incremental position of the first rigid body r41. The transmission ratio is used to obtain the current position of the second rigid body r42 as: the previous position of the second rigid body r42 + the incremental position of the second rigid body r42.

[0094] The modeling and simulation method of the digital factory system in the embodiments of the present invention has been described in detail above. The modeling and simulation system of the digital factory system in the embodiments of the present invention will now be described in detail. The modeling and simulation system of the digital factory system in the embodiments of the present invention can be used to implement the modeling and simulation method of the digital factory system in the embodiments of the present invention. For details not disclosed in detail in the system embodiments of the present invention, please refer to the corresponding descriptions in the method embodiments of the present invention, which will not be repeated here.

[0095] Figure 5 This is an exemplary structural diagram of a modeling and simulation system for a digital factory system according to one embodiment of the present invention. Figure 5 As shown, the system may include: a modeling library 501, a simulation engine 502, a model parsing module 503, and a simulation module 504.

[0096] The modeling library 501 includes building modules for motion joints in multiple subsystems of the digital factory system, and each building module is configured with supported solution parameters; these solution parameters include at least one of dynamic, kinematic, and multibody dynamics solution parameters. Furthermore, the modeling library 501 further includes building modules for rigid bodies in each subsystem, and the building modules for rigid bodies that may collide can be configured with collision flags. Of course, the modeling library 501 may also include other building modules required for modeling. This is not limited here.

[0097] The simulation engine 502 includes algorithm engines for kinematics, dynamics, and multibody dynamics, respectively. Furthermore, the simulation engine 502 may also include collision logic for collisions between different rigid bodies, and this collision logic includes: kinematic rigid body-dynamic rigid body collision logic, dynamic rigid body-kinematic rigid body collision logic, kinematic rigid body-kinematic rigid body collision logic, and dynamic rigid body-dynamic rigid body collision logic.

[0098] The model parsing module 503 is used to receive digital models created by users based on the modeling library 501, parse the digital models, and obtain parsed models with a certain execution order. The parsing of the digital models includes: for each motion joint in the digital model, associating the motion joint with a corresponding algorithm engine in the simulation engine based on the solution parameters of the motion joint. Furthermore, for rigid bodies with collision markers, the model parsing module 503 can also associate the rigid body with corresponding collision logic in the simulation engine based on the solution parameters of the motion joints connected to the rigid body.

[0099] The simulation module 504 is used to solve the analytical model according to the execution order in the analytical model, and to perform simulation based on the solution results; wherein, solving the analytical model includes: solving the associated motion joints using the corresponding algorithm engine. Furthermore, the simulation module 504 can also solve the associated rigid bodies using the corresponding collision logic.

[0100] and Figure 1 Corresponding to the method, when the model parsing module 503 parses the digital model, it may specifically include:

[0101] First, check the joints that connect to the ground;

[0102] Start by searching the joint chain from the joints connected to the ground to obtain information on all joints and the rigid bodies they are connected to.

[0103] Inspect the coupler connected to the joint;

[0104] Inspect the motor that drives the joint;

[0105] Check whether the articulated chain is open or closed;

[0106] Add the identified rigid bodies, joints, couplers, and motors to the simulation engine.

[0107] and Figure 1 Corresponding to the method, when adding the detected rigid bodies, joints, couplers, and motors to the simulation engine, the model parsing module 503 may include:

[0108] Add actual mass and moment of inertia to the rigid body connected by dynamic joints and multibody dynamic joints;

[0109] Set the mass and moment of inertia of the rigid body connected by kinematic joints to 0;

[0110] Remove collision markers from rigid bodies connected by kinematic joints;

[0111] The algorithm engine is associated with each motion joint based on the solution parameters of each motion joint.

[0112] For a rigid body with a collision indicator, the corresponding collision logic is associated with the rigid body in the simulation engine based on the solution parameters of the motion joints connected to the rigid body.

[0113] and Figure 1Corresponding to the method, the simulation module 504 can determine each simulation step according to the execution order in the analytical model; in each simulation step, the corresponding algorithm engine and / or collision logic are used to calculate the motion and dynamic parameters of all rigid bodies in each joint chain, and all rigid bodies are moved to the corresponding calculation position according to the motion and dynamic parameters, and at least one of the following related information is displayed: position, velocity, acceleration, jerk, force, torque and collision signal of all rigid bodies.

[0114] When calculating the motion and dynamic parameters of all rigid bodies in the joint chain in each simulation step, simulation module 504 may include:

[0115] The first simulation step is designated as the current simulation step.

[0116] The corresponding algorithm engine is used to calculate the motion and dynamic parameters of the first rigid body in the joint chain. For example, the position information in the motion and dynamic parameters can be calculated as follows: the current position of the first rigid body is: the previous position of the first rigid body + the incremental position of the first rigid body; the first rigid body is taken as the current rigid body;

[0117] Determine whether the current rigid body is the last rigid body in the joint chain. If the current rigid body is the last rigid body in the joint chain, determine whether the current simulation step is the last simulation step. If so, end the simulation. Otherwise, take the next simulation step as the current simulation step and return to the operation of calculating the motion and dynamic parameters of the first rigid body in the joint chain.

[0118] If the current rigid body is not the last rigid body in the joint chain, the next rigid body is taken as the current rigid body, and the current motion and dynamic parameters of the current rigid body are calculated based on the motion and dynamic parameters of the previous rigid body using the corresponding algorithm engine and / or collision logic. For example, the position information in the motion and dynamic parameters can be calculated as follows: the current position of the current rigid body is: the previous position of the current rigid body + the incremental position of the previous rigid body + the incremental position of the current rigid body; or, the current position of the current rigid body = the previous position of the current rigid body + the incremental position of the current rigid body determined based on the incremental position of the previous rigid body. After that, the operation of determining whether the current rigid body is the last rigid body in the joint chain is returned.

[0119] and Figure 1 Corresponding to the method, the plurality of subsystems include at least one of the following subsystems:

[0120] A conventional joint subsystem includes: fixed joints, hinge joints, sliding joints, cylindrical joints, threaded joints, point joints on curves, ball joints, and planar joints; each joint in the conventional joint subsystem is provided with three solution parameters: dynamics, kinematics, and multibody dynamics.

[0121] An open-loop subsystem connected to the ground at one end includes: a rigid body and joints located in the open-loop link; the joints in the open-loop link are provided with three solution parameters: dynamics, kinematics, and multibody dynamics.

[0122] A closed-loop subsystem connected to the ground at both ends includes: a rigid body and multiple joints located in the closed loop; the joints in the loop are provided with three solution parameters: dynamics, kinematics, and multibody dynamics.

[0123] A point-joint chain system on a curve, comprising: a primary rigid body controlled by 1 to 3 point kinematic joints on the curve and at least one secondary rigid body that moves with the primary rigid body; the point kinematic joints on the curve are provided with kinematic solution parameters.

[0124] The coupled transmission subsystem includes: gears, racks and pinions, a three-joint coupler, pulleys and belts, and a mechanical cam; the joints in the coupled transmission subsystem are provided with three solution parameters: dynamics, kinematics, and multibody dynamics. The drive subsystem includes: position control, velocity control, inverse kinematics control, attitude control, and a conveyor belt; the joints in the drive subsystem are provided with three solution parameters: dynamics, kinematics, and multibody dynamics.

[0125] A hydraulic-pneumatic subsystem includes: force and / or torque control, hydraulic cylinders, hydraulic valves, pneumatic cylinders, and pneumatic valves; each joint in the hydraulic-pneumatic subsystem is provided with dynamic solution parameters;

[0126] The dynamic joint subsystem includes: angular spring joints, linear spring joints, angular limit joints, linear limit joints, fracture constraints, and spring dampers; each joint in the dynamic joint subsystem is provided with dynamic solution parameters.

[0127] Figure 6 This is an exemplary structural diagram of the modeling and simulation system for a digital factory system in another embodiment of the present invention. Figure 6 As shown, the system may include at least one memory 61, at least one processor 62, and at least one display 63. Additionally, it may include other components such as communication ports and displays. These components communicate via a bus 64.

[0128] At least one memory 61 is used to store computer programs, modeling libraries, and simulation engines. In one embodiment, the computer program can be understood to include... Figure 5The digital factory system shown represents the various modules of the modeling and simulation system. In addition, at least one memory 61 can store the operating system, etc. The operating system includes, but is not limited to: Android, Symbian, Windows, Linux, etc.

[0129] At least one processor 62 is used to invoke a computer program stored in at least one memory 61 to execute the modeling and simulation method of the digital factory system described in this embodiment of the invention. The processor 62 can be a CPU, processing unit / module, ASIC, logic module, or programmable gate array, etc. It can receive and send data through the communication port.

[0130] At least one display 63 is used to display the simulation process and human-computer interaction information, etc.

[0131] It should be noted that not all steps and modules in the above processes and structural diagrams are mandatory; some steps or modules can be omitted as needed. The execution order of the steps is not fixed and can be adjusted as required. The division of modules is merely for the convenience of description and functional division. In actual implementation, a module can be implemented by multiple modules, and the functions of multiple modules can also be implemented by the same module. These modules can be located in the same device or in different devices.

[0132] It is understood that the hardware modules in the above embodiments can be implemented mechanically or electronically. For example, a hardware module may include specially designed permanent circuits or logic devices (such as dedicated processors, such as FPGAs or ASICs) to perform specific operations. A hardware module may also include programmable logic devices or circuits (such as general-purpose processors or other programmable processors) temporarily configured by software to perform specific operations. The specific method used to implement the hardware module—whether it is mechanical, a dedicated permanent circuit, or a temporarily configured circuit (such as one configured by software)—can be determined based on cost and time considerations.

[0133] Furthermore, this embodiment of the invention also provides a computer-readable storage medium storing a computer program that can be executed by a processor to implement the modeling and simulation method of the digital factory system described in this embodiment. Specifically, a system or device equipped with a storage medium can be provided, on which software program code implementing the functions of any of the above embodiments is stored, and the computer (or CPU or MPU) of the system or device can read and execute the program code stored in the storage medium. Furthermore, the operating system or other devices operating on the computer can perform some or all of the actual operations through instructions based on the program code. The program code read from the storage medium can also be written to a memory located in an expansion board inserted into the computer or to a memory located in an expansion unit connected to the computer. Subsequently, the CPU or other devices installed on the expansion board or expansion unit can execute some or all of the actual operations based on the instructions of the program code, thereby implementing the functions of any of the above embodiments. Storage media embodiments for providing program code include floppy disks, hard disks, magneto-optical disks, optical disks (such as CD-ROM, CD-R, CD-RW, DVD-ROM, DVD-RAM, DVD-RW, DVD+RW), magnetic tapes, non-volatile memory cards, and ROMs. Alternatively, program code can be downloaded from a server computer via a communication network.

[0134] As can be seen from the above scheme, in this embodiment of the invention, the entire digital factory system is divided into multiple subsystems in the modeling library. For each subsystem, at least one of the supported dynamics, kinematics, and multibody dynamics solution parameters is set for the motion joints. Algorithm engines are set in the simulation engine for kinematics, dynamics, and multibody dynamics respectively. After receiving the digital model created by the user based on the modeling library, for each motion joint in the digital model, a corresponding algorithm engine is associated with the motion joint in a simulation engine according to the solution parameters of the motion joint. During simulation, the corresponding algorithm engine is used to solve the associated motion joints, and the simulation is performed based on the solution results. Therefore, this embodiment of the invention integrates dynamics, kinematics, and multibody dynamics into one system, thereby improving the performance, stability, and accuracy of the virtual digital factory.

[0135] The above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the protection scope of the present invention.

Claims

1. A method of modeling and simulation of a digital factory system, characterized by, include: Receive digital models created by users based on a modeling library; In the modeling library, the entire digital factory system is divided into multiple subsystems, and each subsystem includes motion joints with supported solution parameter items; the solution parameters include at least one of dynamic, kinematic and multibody dynamics solution parameters; The digital model is parsed to obtain an analytical model with an execution order; wherein, the parsing of the digital model includes: for each motion joint in the digital model, according to the solution parameters of the motion joint, associating the motion joint with a corresponding algorithm engine in a simulation engine; the simulation engine is equipped with algorithm engines for kinematics, dynamics and multibody dynamics respectively; The analytical model is solved according to the execution order in the analytical model, and simulation is performed based on the solution results; wherein, solving the analytical model includes: solving the associated motion joints using the corresponding algorithm engine.

2. The modeling simulation method of a digital factory system according to claim 1, characterized in that, In the modeling library, each subsystem includes rigid bodies that may collide, each with a collision identifier. The simulation engine is further equipped with collision logic for collisions between different rigid bodies, and the collision logic includes: kinematic rigid body-dynamic rigid body collision logic, dynamic rigid body-kinematic rigid body collision logic, kinematic rigid body-kinematic rigid body collision logic and dynamic rigid body-dynamic rigid body collision logic. The further steps of parsing the digital model include: for a rigid body with a collision identifier, associating the rigid body with the corresponding collision logic in the simulation engine based on the solution parameters of the motion joints connected to the rigid body; The solution process for the analytical module further includes: solving the associated rigid body using the corresponding collision logic.

3. The modeling simulation method of a digital factory system according to claim 1 or 2, characterized in that, The process of parsing the digital model further includes: First, check the joints that connect to the ground; Start by searching the joint chain from the joints connected to the ground to obtain information on all joints and the rigid bodies they are connected to. Inspect the coupler connected to the joint; Inspect the motor that drives the joint; Check whether the articulated chain is open-loop or closed-loop; Add actual mass and moment of inertia to the rigid body connected by dynamic joints and multibody dynamic joints; Set the mass and moment of inertia of the rigid body connected by kinematic joints to 0; Remove collision flags from rigid bodies connected by kinematic joints.

4. The modeling and simulation method for a digital factory system according to claim 3, characterized in that, The step of solving the analytical model according to the execution order in the analytical model and performing simulation based on the solution results includes: Each simulation step is determined based on the execution order in the analytical model; The motion and dynamic parameters of all rigid bodies in the joint chain are calculated using the corresponding algorithm engine and / or collision logic in each simulation step. In each simulation step, all rigid bodies are moved to the corresponding calculated positions according to the motion and dynamic parameters, and at least one of the following is displayed: position, velocity, acceleration, jerk, force, torque, and collision signal of all rigid bodies.

5. The modeling and simulation method for a digital factory system according to claim 4, characterized in that, The calculation of the position of all rigid bodies in the joint chain in each simulation step includes: The first simulation step is designated as the current simulation step. The corresponding algorithm engine is used to calculate the current motion and dynamic parameters of the first rigid body in the joint chain; the first rigid body is then used as the current rigid body. Determine whether the current rigid body is the last rigid body in the joint chain. If the current rigid body is the last rigid body in the joint chain, determine whether the current simulation step is the last simulation step. If so, end the simulation. Otherwise, take the next simulation step as the current simulation step and return to the operation of calculating the current motion and dynamic parameters of the first rigid body in the joint chain. If the current rigid body is not the last rigid body in the joint chain, then the next rigid body is taken as the current rigid body, and the current motion and dynamic parameters of the current rigid body are calculated based on the motion and dynamic parameters of the previous rigid body using the corresponding algorithm engine and / or collision logic; then, the operation of determining whether the current rigid body is the last rigid body in the joint chain is returned.

6. The modeling and simulation method for a digital factory system according to claim 1, characterized in that, The plurality of subsystems includes at least one of the following subsystems: A conventional joint subsystem includes: fixed joints, hinge joints, sliding joints, cylindrical joints, threaded joints, point joints on curves, ball joints, and planar joints; each joint in the conventional joint subsystem is provided with three solution parameters: dynamics, kinematics, and multibody dynamics. An open-loop subsystem connected to the ground at one end includes: a rigid body and joints located in the open-loop link; the joints in the open-loop link are provided with three solution parameters: dynamics, kinematics, and multibody dynamics. A closed-loop subsystem connected to the ground at both ends includes: a rigid body and multiple joints located in the closed loop; the joints in the loop are provided with three solution parameters: dynamics, kinematics, and multibody dynamics. A point-joint chain system on a curve, comprising: a primary rigid body controlled by 1 to 3 point kinematic joints on the curve and at least one secondary rigid body that moves with the primary rigid body; the point kinematic joints on the curve are provided with kinematic solution parameters. The coupled transmission subsystem includes: gears, racks and pinions, a three-joint coupler, pulleys and belts, and a mechanical cam; the joints in the coupled transmission subsystem are provided with three solution parameters: dynamics, kinematics, and multibody dynamics. The drive subsystem includes: position control, speed control, inverse kinematics control, attitude control, and a conveyor belt; the joints in the drive subsystem are provided with three solution parameters: dynamics, kinematics, and multibody dynamics. A hydraulic-pneumatic subsystem includes: force and / or torque control, hydraulic cylinders, hydraulic valves, pneumatic cylinders, and pneumatic valves; the joints in the hydraulic-pneumatic subsystem are provided with dynamic solution parameters; The dynamic joint subsystem includes: an angular spring joint, a linear spring joint, an angular limit joint, a linear limit joint, a fracture constraint, and a spring damper; the angular spring joint, the linear spring joint, the angular limit joint, the linear limit joint, the fracture constraint, and the spring damper are provided with dynamic solution parameters.

7. A modeling and simulation system for a digital factory system, characterized in that, include: The modeling library includes building blocks for motion joints in multiple subsystems of the digital factory system, and each building block has supported solution parameter items. The solution parameters include at least one of dynamic, kinematic and multibody dynamics solution parameters; Simulation engine, including algorithm engines for kinematics, dynamics and multibody dynamics respectively; The model parsing module is used to receive digital models created by users based on the modeling library, parse the digital models, and obtain parsed models with a certain execution order; wherein, the parsing of the digital models includes: for each motion joint in the digital model, according to the solution parameters of the motion joint, associating the motion joint with the corresponding algorithm engine in the simulation engine; The simulation module is used to solve the analytical model according to the execution order in the analytical model, and to perform simulation based on the solution results; wherein, solving the analytical model includes: using the corresponding algorithm engine to solve the associated motion joints.

8. The modeling and simulation system for a digital factory system according to claim 7, characterized in that, The modeling library further includes rigid body building modules for each subsystem, and collision flags are set for rigid body building modules that may collide. The simulation engine is further equipped with collision logic for collisions between different rigid bodies, and the collision logic includes: kinematic rigid body-dynamic rigid body collision logic, dynamic rigid body-kinematic rigid body collision logic, kinematic rigid body-kinematic rigid body collision logic and dynamic rigid body-dynamic rigid body collision logic. The model parsing module is further used to: for a rigid body with a collision identifier, associate the corresponding collision logic for the rigid body in the simulation engine according to the solution parameters of the motion joints connected to the rigid body; The simulation module is further used to: solve for the associated rigid body using the corresponding collision logic.

9. The modeling and simulation system for a digital factory system according to claim 7 or 8, characterized in that, The model parsing module is further used for: First, check the joints that connect to the ground; Start by searching the joint chain from the joints connected to the ground to obtain information on all joints and the rigid bodies they are connected to. Inspect the coupler connected to the joint; Inspect the motor that drives the joint; Check whether the articulated chain is open-loop or closed-loop; Add actual mass and moment of inertia to the rigid body connected by dynamic joints and multibody dynamic joints; Set the mass and moment of inertia of the rigid body connected by kinematic joints to 0; Remove collision flags from rigid bodies connected by kinematic joints.

10. The modeling and simulation system for a digital factory system according to claim 9, characterized in that, The simulation module determines each simulation step according to the execution order in the analytical model; it uses the corresponding algorithm engine and / or collision logic to calculate the motion and dynamic parameters of all rigid bodies in the joint chain in each simulation step; in each simulation step, it moves all rigid bodies to the corresponding calculation position according to the motion and dynamic parameters, and displays at least one of the following: position, velocity, acceleration, jerk, force, torque, and collision signal of all rigid bodies.

11. The modeling and simulation system for a digital factory system according to claim 10, characterized in that, The simulation module, when calculating the positions of all rigid bodies in the joint chain in each simulation step, includes: The first simulation step is designated as the current simulation step. The current motion and dynamic parameters of the first rigid body in the joint chain are calculated using the corresponding algorithm engine; the first rigid body is then used as the current rigid body. Determine whether the current rigid body is the last rigid body in the joint chain. If the current rigid body is the last rigid body in the joint chain, determine whether the current simulation step is the last simulation step. If so, end the simulation. Otherwise, take the next simulation step as the current simulation step and return to the operation of calculating the current motion and dynamic parameters of the first rigid body in the joint chain. If the current rigid body is not the last rigid body in the joint chain, then the next rigid body is taken as the current rigid body, and the current motion and dynamic parameters of the current rigid body are calculated based on the motion and dynamic parameters of the previous rigid body using the corresponding algorithm engine and / or collision logic; then, the operation of determining whether the current rigid body is the last rigid body in the joint chain is returned.

12. The modeling and simulation system for a digital factory system according to claim 7, characterized in that, The plurality of subsystems includes at least one of the following subsystems: A conventional joint subsystem includes: fixed joints, hinge joints, sliding joints, cylindrical joints, threaded joints, point joints on curves, ball joints, and planar joints; each joint in the conventional joint subsystem is provided with three solution parameters: dynamics, kinematics, and multibody dynamics. An open-loop subsystem connected to the ground at one end includes: a rigid body and joints located in the open-loop link; the joints in the open-loop link are provided with three solution parameters: dynamics, kinematics, and multibody dynamics. A closed-loop subsystem connected to the ground at both ends includes: a rigid body and multiple joints located in the closed loop; the joints in the loop are provided with three solution parameters: dynamics, kinematics, and multibody dynamics. A point-joint chain system on a curve, comprising: a primary rigid body controlled by 1 to 3 point kinematic joints on the curve and at least one secondary rigid body that moves with the primary rigid body; the point kinematic joints on the curve are provided with kinematic solution parameters. The coupled transmission subsystem includes: gears, racks and pinions, a three-joint coupler, pulleys and belts, and a mechanical cam; the joints in the coupled transmission subsystem are provided with three solution parameters: dynamics, kinematics, and multibody dynamics. The drive subsystem includes: position control, speed control, inverse kinematics control, attitude control, and a conveyor belt; the joints in the drive subsystem are provided with three solution parameters: dynamics, kinematics, and multibody dynamics. A hydraulic-pneumatic subsystem includes: force and / or torque control, hydraulic cylinders, hydraulic valves, pneumatic cylinders, and pneumatic valves; the joints in the hydraulic-pneumatic subsystem are provided with dynamic solution parameters; The dynamic joint subsystem includes: angular spring joints, linear spring joints, angular limit joints, linear limit joints, fracture constraints, and spring dampers; the joints in the dynamic joint subsystem are equipped with dynamic solution parameters.

13. A modeling and simulation system for a digital factory system, characterized in that, include: At least one memory (61) and at least one processor (62), wherein: The at least one memory (61) is used to store computer programs, modeling libraries and simulation engines; The at least one processor (62) is used to call the computer program stored in the at least one memory (61) to execute the modeling and simulation method of the digital factory system as described in any one of claims 1 to 6.

14. A computer-readable storage medium having stored thereon a computer program, a modeling library, and a simulation engine; characterized in that, The computer program can be executed by a processor to implement the modeling and simulation method for the digital factory system as described in any one of claims 1 to 6.