Production line simulation system based on digital twinning

CN122965079APending Publication Date: 2026-10-23JILIN RAILWAY VOCATIONAL & TECH COLLEGE
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202610873473.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-06-17
Publication Date
2026-10-23

AI Technical Summary

Technical Problem

[0003]现有技术的不足之处在于,虽然能够通过高精度映射模型和多源数据同步更新反映实体对象状态,但实际运作时更偏向于对物理实体进行整体复制和持续刷新,缺少对生产线内部空间关系进行分层拆解与针对性处理的能力

Benefits of technology

本发明中,围绕机械臂与AGV穿梭节点三维坐标参量生成部件轨迹点云集合,并从部件轨迹点云集合中提取轮廓极值坐标点,进一步建立轨迹凸多面体网格,使生产线中动态部件的活动外沿得到明确约束,能够把原本较为分散的坐标变化过程转化为可计算的空间实体边界,提升轨迹表达的完整性与边界判读的稳定性;在此基础上引入球体多边形网格三维顶点参量,与轨迹凸多面体网格顶角坐标执行空间向量相加运算,进而获取安全轮廓包络边界参量,并将安全轮廓包络边界参量与设备网格节点进行位置对齐绑定,使设备运动范围与安全冗余空间同步映射到拓扑结构中,能够增强生产线运行中的邻接关系表达能力,减少仅凭静态几何外形判断空间干涉时产生的偏差;继续提取孪生摄像机视点锥体参数与深度缓冲数值,形成深度缓冲图元集合,并结合齿轮零件投影区域与机床外壳遮挡关系生成部件视点遮挡熵值,使可见性分析从单纯显示层面的遮挡判断延伸到面向信息损失程度的量化表征,既有助于识别内部零件在当前视角下的有效观察价值,也有助于提高复杂装配环境中的渲染针对性;再将部件视点遮挡熵值与动态判定阈值数值进行差异比较判定,对内部齿轮零件多边形网格节点数据链接进行切断,并替换为空包围盒节点完成场景重构渲染,能够在维持空间占位关系的同时压缩非必要显示内容,减轻装配体细节长期保留带来的渲染负担。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure FT_1
    Figure FT_1
  • Figure FT_2
    Figure FT_2
  • Figure FT_3
    Figure FT_3
Patent Text Reader

Abstract

The present application relates to the technical field of digital twinning, in particular to a production line simulation system based on digital twinning, the system comprises: a production line track modeling module, used for acquiring the horizontal, vertical and longitudinal coordinate parameters of geometric vertices in the three-dimensional coordinate system of mechanical arms and AGV shuttle nodes in the production line under digital twinning. In the present application, the visibility analysis is extended from simple display level occlusion judgment to quantitative representation facing information loss degree, which is helpful to identify the effective observation value of internal parts under the current viewing angle, and also helpful to improve the rendering pertinence in complex assembly environment; then, difference comparison and judgment are carried out between the part viewpoint occlusion entropy value and the dynamic determination threshold value, the internal gear part polygon grid node data link is cut off, and the empty bounding box node is replaced to complete scene reconstruction rendering, which can maintain the spatial occupation relationship while compressing unnecessary display content, and reduce the rendering burden caused by long-term retention of assembly body details.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of digital twin technology, and more particularly to a production line simulation system based on digital twins. Background Technology

[0002] Digital twin technology refers to the technology of constructing a high-precision mapping model of a physical entity in virtual space, and combining real-time interaction and synchronous updates of multi-source data to achieve digital representation and dynamic simulation analysis of the state, behavior and evolution process of the entity object.

[0003] The shortcomings of existing technologies lie in their ability to reflect the state of physical objects through high-precision mapping models and synchronous updates of multi-source data. In actual operation, they tend to simply replicate and continuously refresh physical entities, lacking the capacity for layered deconstruction and targeted processing of spatial relationships within the production line. Robotic arms, AGVs, machine tool housings, and internal gear parts in the production line are simultaneously in continuous motion or nested assembly states. If only a unified display based on physical state mapping is used, the number of geometric elements in the virtual space accumulates over time, leading to unclear local trajectory boundaries and a mixture of actual equipment activity range and safety redundancy range. Observers find it difficult to directly determine which areas belong to the actual motion coverage area and which are potential interference areas, easily causing spatial assessment results to rely on human experience. Therefore, improvements are needed. Summary of the Invention

[0004] The purpose of this invention is to overcome the shortcomings of existing technologies and propose a production line simulation system based on digital twins.

[0005] To achieve the above objectives, the present invention adopts the following technical solution: a production line simulation system based on digital twins includes: The production line trajectory modeling module is used to obtain the horizontal, vertical and horizontal coordinate parameters of the geometric vertices of the robotic arm and AGV shuttle nodes in the three-dimensional coordinate system of the production line under the digital twin, generate a set of component trajectory point clouds, extract the contour extreme value coordinate points in the set of component trajectory point clouds, and establish a trajectory convex polyhedron mesh. The safety envelope 3D module is used to introduce the 3D vertex parameters of the spherical polygon mesh, perform spatial vector addition operation on the vertex coordinates of the spherical polygon mesh and the trajectory convex polyhedron mesh to obtain the safety contour envelope boundary parameters, and perform position alignment and binding of the safety contour envelope boundary parameters with the equipment mesh nodes in the directed acyclic graph in memory to establish the 3D topology mesh of the production line. The occlusion viewpoint analysis module is used to extract the viewpoint cone parameters and depth buffer values ​​of the machine tool shell surface within the three-dimensional topological mesh of the production line projected by the twin camera, generate a set of depth buffer primitives, calculate the bounding box area parameters of the gear parts in the set of depth buffer primitives on the projection plane, and generate the component viewpoint occlusion entropy value. The scene graph reconstruction modeling module is used to compare the difference between the viewpoint occlusion entropy value of the component and the dynamic judgment threshold value to obtain the dynamic trimmed assembly mesh.

[0006] Preferably, the step of obtaining the component trajectory point cloud set is as follows: The system acquires the horizontal, vertical, and longitudinal coordinates of the geometric vertices of the robotic arm, the AGV shuttle node, and the AGV shuttle node in the production line under the digital twin. According to the robotic arm number, AGV shuttle node number, and sampling sequence, the horizontal, vertical, and longitudinal coordinates of the corresponding geometric vertices under the same number are sequentially paired. Then, the paired 3D coordinate sequences are continuously spliced ​​according to the component identifier to generate a set of component trajectory point clouds.

[0007] Preferably, the step of obtaining the trajectory convex polyhedron mesh is as follows: Based on the component trajectory point cloud set, the x-coordinate, y-coordinate, and vertical coordinate values ​​of each point are read point by point. The points corresponding to the maximum x-coordinate, minimum x-coordinate, maximum y-coordinate, minimum y-coordinate, maximum vertical coordinate, and minimum vertical coordinate are then selected to obtain the contour extreme coordinate points. Using the contour extreme coordinate points as the distance comparison benchmark, the radial distance and angular position values ​​of each point in the component trajectory point cloud set pointing to the contour extreme coordinate points are calculated round by round. The polar coordinate record with the largest distance value is retained to form the farthest polar coordinate value. Extract the spatial points corresponding to the farthest polar coordinate values ​​according to the angular position arrangement order, write the line segment endpoint relationships between adjacent spatial points in sequence, close the connection between the first and last spatial points, and then write the vertex connection relationships of the face patches piece by piece according to the spatial region enclosed by the closed line segments. Continuously fill all the vertex connection relationships of the face patches to establish a trajectory convex polyhedron mesh.

[0008] Preferably, the step of obtaining the safety contour envelope boundary parameter is as follows: Read the three-dimensional vertex parameters of the spherical polygon mesh and the vertex coordinates of the trajectory convex polyhedron mesh. Extract the horizontal, vertical, and longitudinal components one by one according to the vertex numbering order of the three-dimensional vertex parameters of the spherical polygon mesh. Then extract the horizontal, vertical, and longitudinal components one by one according to the vertex numbering order of the vertex coordinates of the trajectory convex polyhedron mesh. Add the corresponding components of the horizontal, vertical, and longitudinal components under the same order. Record the spatial coordinate position of each group after addition. Write all the spatial coordinate positions into the continuous vertex sequence according to the original vertex adjacency order to generate the product of spatial vector addition operation. Based on the product of the spatial vector addition operation, read the spatial coordinate positions in the continuous vertex sequence one by one, establish candidate connecting edges according to the adjacency order of the spatial coordinate positions, and then check the outer direction of the adjacent face vertices associated with each candidate connecting edge. Retain connecting edges with the same outer direction, and remove internal connecting edges that are simultaneously surrounded by adjacent face vertices. Then, perform closed sorting on the retained connecting edges, and extract the boundary vertex arrangement order, boundary connection relationship and boundary turning position after closed sorting to form the safe contour envelope boundary parameters.

[0009] Preferably, the step of obtaining the three-dimensional topology mesh of the production line is as follows: In the directed acyclic graph in memory, the node identifier, node position coordinates, and node parent-child hierarchy of each device mesh node are read one by one. The boundary vertex arrangement order, boundary connection relationship, and boundary turning position in the safety contour envelope boundary parameter are arranged and bound according to the node position coordinates of the device mesh nodes. The boundary nodes that have completed the position alignment and binding are written into the corresponding level of the directed acyclic graph in memory. Then, the face display relationship, connection edge display relationship, and vertex display relationship associated with the boundary nodes are refreshed one by one, triggering the mesh rendering update program to obtain the three-dimensional topology mesh of the production line.

[0010] Preferably, the step of obtaining the depth buffer primitive set is as follows: Extract the origin coordinates, line-of-sight coordinates, near-end section boundary coordinates, and far-end section boundary coordinates of the viewpoint origin of the machine tool shell surface projected by the twin camera onto the three-dimensional topological mesh of the production line. Read the depth buffer values ​​of the corresponding sampling positions of the machine tool shell surface. Filter out the effective sampling positions according to the coverage range of the viewpoint cone. Write the plane coordinates, depth level, and surface identifier of the effective sampling positions into a continuous record sequence to generate a depth buffer primitive set.

[0011] Preferably, the step of obtaining the viewpoint occlusion entropy value of the component is as follows: Based on the depth buffer primitive set, the horizontal and vertical coordinates of the projection plane of the corresponding primitive of the gear part are extracted. The horizontal start coordinate, horizontal end coordinate, vertical start coordinate, and vertical end coordinate of the projection plane are determined respectively. The projection cross-sectional distribution value of the gear part is accumulated segment by segment according to the cross-sectional distribution range between the horizontal start coordinate and the horizontal end coordinate of the projection plane to obtain the actual projection area of ​​the gear part. Based on the actual projected area of ​​the gear part, calculate the average feature height of the gear projection and the viewpoint occlusion entropy value of the component.

[0012] Preferably, the step of obtaining the dynamically trimmed assembly mesh is as follows: Read the viewpoint occlusion entropy value and dynamic judgment threshold value of the component, calculate the numerical difference between the viewpoint occlusion entropy value and the dynamic judgment threshold value, check the positive and negative states of the numerical difference item by item, mark the polygonal mesh nodes of the internal gear parts with a numerical difference less than zero as the clipping target nodes, and retain the polygonal mesh nodes of the internal gear parts with a numerical difference greater than or equal to zero as display nodes, and obtain the node clipping judgment result. Based on the node clipping determination result, the parent node identifier, child node identifier, same-level node identifier, and node reference address corresponding to the clipping target node are located in the directed acyclic graph in memory. The data links of the internal gear part polygon mesh nodes associated with the clipping target node are cut off one by one according to the node reference address. The face index record, edge connection record, and vertex reference record associated with the clipping target node are cleared. Then, the boundary coordinate record and node placeholder record of the empty bounding box node are written in the original node position to form an empty bounding box replacement node structure. Based on the empty bounding box replacement node structure, the hierarchical position, boundary coordinate records, node placeholder records, and connection order of the empty bounding box nodes in the directed acyclic graph in memory are traversed. The connection relationship of the display patches around the empty bounding box nodes is reconstructed, the edge connection order and vertex display order around the empty bounding box nodes are updated, and the scene is reconstructed and rendered according to the updated node hierarchy to obtain the dynamic trimmed assembly mesh.

[0013] Compared with the prior art, the advantages and positive effects of the present invention are as follows: In this invention, a set of component trajectory point clouds is generated based on the three-dimensional coordinate parameters of the robotic arm and AGV shuttle nodes. Contour extreme coordinate points are extracted from this set, and a trajectory convex polyhedron mesh is further established. This provides clear constraints on the moving edges of dynamic components in the production line, transforming the previously dispersed coordinate changes into calculable spatial entity boundaries, thus improving the completeness of trajectory representation and the stability of boundary interpretation. Furthermore, a spherical polygon mesh with three-dimensional vertex parameters is introduced and its vertex coordinates are added to the trajectory convex polyhedron mesh using spatial vector addition to obtain the safety contour envelope boundary parameters. These parameters are then aligned and bound to the equipment mesh nodes, synchronously mapping the equipment's movement range and safety redundancy space into the topology. This enhances the ability to express adjacency relationships during production line operation and reduces the need for... The deviation caused by spatial interference is judged based on static geometric shape; the viewpoint cone parameters and depth buffer values ​​of the twin camera are further extracted to form a set of depth buffer primitives, and the viewpoint occlusion entropy value of the component is generated by combining the projection area of ​​the gear part with the occlusion relationship of the machine tool shell. This extends the visibility analysis from simple occlusion judgment at the display level to a quantitative representation of the degree of information loss. This helps to identify the effective observation value of internal parts from the current perspective and also helps to improve the rendering targeting in complex assembly environments. Then, the difference between the component viewpoint occlusion entropy value and the dynamic judgment threshold value is compared and judged. The data links of the polygon mesh nodes of the internal gear part are cut off and replaced with empty bounding box nodes to complete the scene reconstruction rendering. This can compress unnecessary display content while maintaining the spatial occupancy relationship and reduce the rendering burden caused by the long-term preservation of assembly details. Attached Figure Description

[0014] Figure 1 This is a system flowchart of the present invention; Figure 2 A diagram showing the distribution of projected cross sections and viewpoint occlusion analysis of gear parts; Figure 3 This is a flowchart of the process for replacing empty bounding boxes and reconstructing scene graphs based on directed acyclic graphs. Detailed Implementation

[0015] To make the objectives, technical solutions, and advantages of this invention clearer, the invention will be further described in detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative and not intended to limit the invention.

[0016] Please see Figure 1-3 The present invention provides a technical solution: a production line simulation system based on digital twins includes: The production line trajectory modeling module is used to obtain the horizontal, vertical and horizontal coordinate parameters of the geometric vertices of the robotic arm and AGV shuttle nodes in the three-dimensional coordinate system of the production line under the digital twin, generate a set of component trajectory point clouds, extract the contour extreme value coordinate points in the set of component trajectory point clouds, and establish a trajectory convex polyhedron mesh. The safety envelope 3D module is used to introduce the 3D vertex parameters of the spherical polygon mesh, perform spatial vector addition operation on the vertex coordinates of the spherical polygon mesh and the trajectory convex polyhedron mesh to obtain the safety contour envelope boundary parameters, and perform position alignment and binding of the safety contour envelope boundary parameters with the equipment mesh nodes in the directed acyclic graph in memory to establish the 3D topology mesh of the production line. The occlusion viewpoint analysis module is used to extract the viewpoint cone parameters and depth buffer values ​​of the machine tool shell surface within the three-dimensional topological mesh of the production line projected by the twin camera, generate a set of depth buffer primitives, calculate the bounding box area parameters of the gear parts in the set of depth buffer primitives on the projection plane, and generate the component viewpoint occlusion entropy value. The scene graph reconstruction modeling module is used to compare the difference between the viewpoint occlusion entropy value of the component and the dynamic judgment threshold value to obtain the dynamic trimmed assembly mesh.

[0017] The steps for obtaining the component trajectory point cloud set are as follows: The system acquires the horizontal, vertical, and longitudinal coordinates of the geometric vertices of the robotic arm, the AGV shuttle node, and the AGV shuttle node in the production line under the digital twin. According to the robotic arm number, AGV shuttle node number, and sampling sequence, the horizontal, vertical, and longitudinal coordinates of the corresponding geometric vertices under the same number are sequentially paired. Then, the paired 3D coordinate sequences are continuously spliced ​​according to the component identifier to generate a set of component trajectory point clouds.

[0018] Specifically, the system acquires the horizontal, vertical, and vertical coordinates of the robotic arm's geometric vertices, as well as the horizontal, vertical, and vertical coordinates of the AGV shuttle nodes in the production line under the digital twin model. This is achieved by subscribing to a data stream published by the digital twin system. This data stream continuously outputs the motion data of each component at a sampling frequency of 100 times per second. Each data packet contains the component number, sampling timestamp, and three-dimensional coordinates. For example, a data packet might be formatted as {"ID": "Arm-01", "Timestamp": 1677628800.01, "X": 1.25, "Y": 0.83, "Z":} 1.52} After receiving the data packet, the data is initially categorized in memory according to the robotic arm number, AGV shuttle node number, and sampling time sequence. A hash table structure is created with the component number as the key and the value as a time-sorted list. Then, this hash table is traversed, and all data points under the same number (e.g., "Arm-01") are sorted in ascending order according to their timestamps. The horizontal, vertical, and vertical coordinate parameters corresponding to each timestamp are extracted sequentially and combined into a three-dimensional coordinate point sequence, such as [(x1,y1,z1),(x2,y2,z2), …]. Finally, the three-dimensional coordinate sequences corresponding to all component identifiers (e.g., "Arm-01", "AGV-03") in the hash table are continuously spliced ​​together according to the preset order of the component identifiers, such as all robotic arms first and then all AGVs, so that the coordinate data of all points are collected into a unified data set, generating a component trajectory point cloud set.

[0019] The steps for obtaining the trajectory convex polyhedron mesh are as follows: Based on the component trajectory point cloud set, the x-coordinate, y-coordinate, and vertical coordinate values ​​of each point are read point by point. The points corresponding to the maximum x-coordinate, minimum x-coordinate, maximum y-coordinate, minimum y-coordinate, maximum vertical coordinate, and minimum vertical coordinate are then selected to obtain the contour extreme coordinate points. Using the contour extreme coordinate points as the distance comparison benchmark, the radial distance and angular position values ​​of each point in the component trajectory point cloud set pointing to the contour extreme coordinate points are calculated round by round. The polar coordinate record with the largest distance value is retained to form the farthest polar coordinate value. Extract the spatial points corresponding to the farthest polar coordinate values ​​according to the angular position arrangement order, write the line segment endpoint relationships between adjacent spatial points in sequence, close the connection between the first and last spatial points, and then write the vertex connection relationships of the face patches piece by piece according to the spatial region enclosed by the closed line segments. Continuously fill all the vertex connection relationships of the face patches to establish a trajectory convex polyhedron mesh.

[0020] Specifically, based on the component trajectory point cloud set, six variables are first initialized to store the currently encountered maximum and minimum horizontal, vertical, and angular coordinate values ​​and their corresponding points. Then, the coordinate values ​​(x, y, ...) of each three-dimensional point in the set are read point by point. The process involves comparing the x-coordinate of the current point with the recorded maximum and minimum x-coordinate values. If the current point's x-coordinate is larger, the maximum x-coordinate and its corresponding point are updated; if it is smaller, the minimum x-coordinate and its corresponding point are updated. The same operation is performed on the y and z coordinates. After traversing all points, six extreme coordinate points of the contour are obtained. Then, the geometric center of these six points is calculated as the origin of the polar coordinate system. Using this origin as the distance comparison benchmark, the three-dimensional space is divided into an angular region grid with a specific resolution (e.g., azimuth and pitch angles are both in 1-degree increments, forming a 360x180 angular grid). Subsequently, all points in the component trajectory point cloud set are traversed again, and the radial distance value of each point relative to the origin and its corresponding angular grid cell index are calculated. Within each angular grid cell, only the polar coordinate record of the point with the largest radial distance value among all points pointing to that cell is retained. After the traversal, at most one record is retained in each angular grid cell, forming the farthest polar coordinate value.

[0021] The spatial points corresponding to the farthest polar coordinate values ​​are extracted according to the angular position arrangement order. These points have already obtained an implicit arrangement order based on their positions in the 360x180 angular grid (e.g., from pitch angle -90 degrees to +90 degrees, and for each pitch angle, traversing azimuth angles 0 degrees to 359 degrees). Based on this order, these farthest points are used as vertices of the grid, and the line segment endpoint relationships between adjacent spatial points are written sequentially. Specifically, for any vertex P(i, j) in the grid (corresponding to pitch angle index i and azimuth angle index j), edges are created connecting P(i+1, j), P(i, j+1), and P(i+1, j+1), thus forming a quadrilateral patch [P(i, j), P(i+1, j), P(i+1, j+1), P(i, j+1)]. Considering computational efficiency, this quadrilateral patch is usually split into two triangular patches, namely [P(i, j), P(i+1, j)]. When processing boundaries, P(i+1, j+1)] and [P(i, j), P(i+1, j+1), P(i, j+1)] connect the first and last spatial points, forming a closed loop structure. For the extreme points (pitch angle ±90 degrees), all vertices on the highest and lowest latitude lines are connected to a common extreme vertex, forming a fan-shaped triangular patch. The vertex connection relationships of each patch are written according to the spatial region enclosed by the closed line segments. The vertex indices of all generated triangular patches (e.g., {idx(P(i,j)), idx(P(i+1,j)), idx(P(i+1,j+1))}) are recorded in a patch list. The vertex connection relationships of all patches are continuously filled to establish a trajectory convex polyhedron mesh.

[0022] The steps for obtaining the safety contour envelope boundary parameters are as follows: Read the three-dimensional vertex parameters of the spherical polygon mesh and the vertex coordinates of the trajectory convex polyhedron mesh. Extract the horizontal, vertical, and longitudinal components one by one according to the vertex numbering order of the three-dimensional vertex parameters of the spherical polygon mesh. Then extract the horizontal, vertical, and longitudinal components one by one according to the vertex numbering order of the vertex coordinates of the trajectory convex polyhedron mesh. Add the corresponding components of the horizontal, vertical, and longitudinal components under the same order. Record the spatial coordinate position of each group after addition. Write all the spatial coordinate positions into the continuous vertex sequence according to the original vertex adjacency order to generate the product of spatial vector addition operation. Based on the product of the spatial vector addition operation, read the spatial coordinate positions in the continuous vertex sequence one by one, establish candidate connecting edges according to the adjacency order of the spatial coordinate positions, and then check the outer direction of the adjacent face vertices associated with each candidate connecting edge. Retain connecting edges with the same outer direction, and remove internal connecting edges that are simultaneously surrounded by adjacent face vertices. Then, perform closed sorting on the retained connecting edges, and extract the boundary vertex arrangement order, boundary connection relationship and boundary turning position after closed sorting to form the safe contour envelope boundary parameters.

[0023] Specifically, the three-dimensional vertex parameters of the spherical polygon mesh and the vertex coordinates of the trajectory convex polyhedron mesh are read. Here, the spherical polygon mesh is mainly used to define a uniform safety distance, and its radius is set according to the safety specifications of the production environment, for example, 0.5 meters. The specific steps for performing the spatial vector addition operation are as follows: First, traverse each vertex coordinate of the trajectory convex polyhedron mesh. For the first... For each vertex, calculate its vertex normal vector. This normal vector is obtained by normalizing the area-weighted average normal vector of all its adjacent faces. Then, shift the vertex coordinates outward by a safe distance along the direction of its normal vector to obtain the new spatial coordinate position. The calculation formula is as follows: ,in, The first one generated after the operation A new spatial coordinate position The first convex polyhedron mesh of the trajectory The original vertex coordinates are represented as follows: d is a preset safety distance, which is equal to the radius of the spherical polygon mesh; in this example, the value is 0.5 meters. For the coordinates of the vertex The unit vertex normal vector calculated at point is represented as , These are the vertex coordinates. The horizontal, vertical, and lateral components, These are the unit vertex normal vectors. After calculating the components on the three coordinate axes for all vertex coordinates, record the spatial coordinate positions of each group after addition, and write all spatial coordinate positions into a continuous vertex sequence according to the vertex adjacency order of the original trajectory convex polyhedron mesh to generate the product of spatial vector addition operation.

[0024] Based on the product of the spatial vector addition operation, an edge-face mapping table is first constructed. All faces defined by the product are traversed, and the three edges contained in each face and the face's own index are stored in this table, thus obtaining all candidate connecting edges and their associated face information. Next, an outer direction check is performed on each candidate connecting edge. Specifically, if an edge is associated with only one face, it is a boundary edge and is retained. If an edge is associated with two faces, the normal vectors of these two faces are calculated, and their directions are determined. If the dot product of the normal vectors of the two faces is less than a negative value close to -1 (e.g., -0.95), it indicates that they are back-to-back, located on different sides of the convex hull, and this shared... Edges that are internally connected are removed. This method is used to filter out all edges located on the outermost layer of the envelope. The remaining connected edges are then closed and sorted. An edge is randomly selected from the unsorted set of edges as the starting point. By finding the only unsorted edge connected to its endpoint, all edges are connected into one or more closed loops. Finally, the vertex order and edge connection relationships in these closed loops are extracted, and the angle between two adjacent connected edges at each vertex is calculated. Vertex positions with an angle less than a preset turning threshold (e.g., 120 degrees based on experience to distinguish between smooth transitions and sharp corners) are recorded as boundary turning positions, forming the safety contour envelope boundary parameters.

[0025] The steps for obtaining the three-dimensional topology mesh of the production line are as follows: In the directed acyclic graph in memory, the node identifier, node position coordinates, and node parent-child hierarchy of each device mesh node are read one by one. The boundary vertex arrangement order, boundary connection relationship, and boundary turning position in the safety contour envelope boundary parameter are arranged and bound according to the node position coordinates of the device mesh nodes. The boundary nodes that have completed the position alignment and binding are written into the corresponding level of the directed acyclic graph in memory. Then, the face display relationship, connection edge display relationship, and vertex display relationship associated with the boundary nodes are refreshed one by one, triggering the mesh rendering update program to obtain the three-dimensional topology mesh of the production line.

[0026] Specifically, the node identifier, node position coordinates, and parent-child hierarchy of each device mesh node are read sequentially in the directed acyclic graph (DAG). For example, the node identifier of "MachineTool_02" is read, with position coordinates (15.0, 8.5, 1.0) and parent node "Cell_A". Then, the safety contour envelope boundary parameters generated in the previous steps are treated as an independent geometric object, creating a new scene graph node (e.g., "SafetyEnvelope_MT02_Traj"). The transformation matrix of this new node is set to the identity matrix, as the envelope coordinates have already been generated in the world coordinate system and no further transformation is needed. This new node is then added to the scene graph as a child node of "MachineTool_02", thus completing the position alignment binding. This binding is a logical hierarchy association, not a modification of geometric coordinates. Subsequently, the boundary node with completed position alignment binding and its geometric data are written to the corresponding level in the DAG, and the face display relationship associated with this boundary node is immediately refreshed, for example, set to a semi-transparent blue material with RGBA values ​​(0.2, 0.5, ...). 1.0, 0.3), refresh the display relationship of the connecting edges, for example, set them to solid lines, white, and 1.5 pixels wide, and refresh the display relationship of the vertices, for example, set them to invisible. Finally, submit a scene update command to the rendering engine, triggering the mesh rendering update program to re-traverse the scene graph and draw according to the latest node level and display attributes to obtain the 3D topology mesh of the production line.

[0027] The steps for obtaining the depth buffer primitive set are as follows: Extract the origin coordinates, line-of-sight coordinates, near-end section boundary coordinates, and far-end section boundary coordinates of the viewpoint origin of the machine tool shell surface projected by the twin camera onto the three-dimensional topological mesh of the production line. Read the depth buffer values ​​of the corresponding sampling positions of the machine tool shell surface. Filter out the effective sampling positions according to the coverage range of the viewpoint cone. Write the plane coordinates, depth level, and surface identifier of the effective sampling positions into a continuous record sequence to generate a depth buffer primitive set.

[0028] Specifically, the origin coordinates, line-of-sight coordinates, near-end boundary coordinates, and far-end boundary coordinates of the viewpoint of the machine tool shell surface projected by the twin camera onto the 3D topological mesh of the production line are extracted. These camera parameters are predefined in the digital twin environment. For example, the origin coordinates of a virtual camera are (15.5, 8.0, 3.0) meters, the line-of-sight coordinates are (5.0, 8.0, 1.5) meters, the near-end boundary is set to 0.5 meters, and the far-end boundary is set to 50 meters, forming a complete viewpoint cone. Then, a special rendering pass is executed in the rendering pipeline. This pass only renders objects in the scene identified as "machine tool shell". At the same time, an object ID buffer and depth buffer with the same size as the primary color rendering target (e.g., 1920x1080 pixels) are enabled. After rendering, each pixel in the object ID buffer is traversed. When the ID value of a pixel matches the preset machine tool shell ID (e.g., ID is 101), the pixel position (x, y) is read. The depth buffer value at (y) is stored after a non-linear transformation, and its range is usually between [0, 1]. It represents the distance from the camera to the point on the facet. This process constitutes reading the depth buffer value of the sampling position corresponding to the machine tool shell facet. Since the rendering process itself is carried out within the view frustum, all the rendered and recorded pixels naturally complete the operation of filtering out the valid sampling positions according to the coverage of the view frustum. Finally, for each valid sampling position identified as the machine tool shell, its two-dimensional plane coordinates (x, y) in screen space are read from the depth buffer and linearized and restored to the depth level in world units (e.g., 2.75 meters), and its corresponding facet identifier (i.e., object ID 101) are recorded as a data record. All these records are sequentially written into a list or array structure in memory to generate a depth buffer primitive set.

[0029] The steps for obtaining the viewpoint occlusion entropy value of the component are as follows: Based on the depth buffer primitive set, the horizontal and vertical coordinates of the projection plane of the corresponding primitive of the gear part are extracted. The horizontal start coordinate, horizontal end coordinate, vertical start coordinate, and vertical end coordinate of the projection plane are determined respectively. The projection cross-sectional distribution value of the gear part is accumulated segment by segment according to the cross-sectional distribution range between the horizontal start coordinate and the horizontal end coordinate of the projection plane to obtain the actual projection area of ​​the gear part. Based on the actual projected area of ​​the gear part, calculate the average feature height of the gear projection and the viewpoint occlusion entropy value of the component. The calculation formula is as follows: ,in, For the occlusion entropy value of the component viewpoint, The horizontal coordinates of the projection plane, The horizontal starting coordinates of the projection plane. The horizontal termination coordinates of the projection plane. Horizontal coordinates of the projection plane The distribution value of the projected cross section of the gear part at location , This represents the actual projected area of ​​the gear component. , The horizontal coordinates of the projection plane, The transparency coefficient of the machine tool housing material at that location. The average feature height of the gear projection. , To prevent positive offsets where the denominator of the logarithmic term is zero.

[0030] Specifically, based on the aforementioned depth buffer primitive set, the projection information of the gear parts needs to be obtained first. This step is accomplished by executing another rendering pass, which only renders objects in the scene identified as "gear parts" and generates its own primitive set. Alternatively, in a more optimized workflow, a multi-ID output rendering pass can generate a primitive set containing all objects of interest, including the machine tool housing and gear parts, all at once. Each primitive has its own unique identifier. Then, primitives whose facets are identified as belonging to gear parts are selected from this set, and their projection plane horizontal and vertical coordinates (x, y, y) are extracted. Then, these coordinates are processed. By traversing all gear part primitives, the smallest horizontal coordinate is found as the horizontal starting coordinate of the projection plane, and the largest horizontal coordinate is found as the horizontal ending coordinate of the projection plane. Similarly, the vertical starting coordinate and vertical ending coordinate of the projection plane are obtained. Thus, the two-dimensional bounding box of the gear part on the projection plane is determined. Next, based on the cross-sectional distribution range between the horizontal starting coordinate and the horizontal ending coordinate of the projection plane, the data is accumulated segment by segment. Specifically, for each integer horizontal coordinate value p from the horizontal starting coordinate to the horizontal ending coordinate within the bounding box, the number of pixels belonging to the gear part in that vertical column is calculated. This number is the projection cross-sectional distribution value of the gear part at the horizontal coordinate p. Finally, the projection cross-sectional distribution values ​​of all horizontal coordinates are added together, and the sum is the total number of pixels of the gear part on the projection plane, thus obtaining the actual projected area of ​​the gear part.

[0031] The formula for calculating the viewpoint occlusion entropy of a component introduces the concept of information entropy to quantify the visibility complexity of the occluded component (gear part) at a specific viewpoint, rather than simply the occlusion ratio.

[0032] The horizontal coordinate of the projection plane, for example, in a rendered image with a resolution of 1920x1080, if the projection of a gear part spans pixels from column 800 to column 950, then... The value will range from 800, 801, 802... all the way up to 950.

[0033] Let be the horizontal starting coordinates of the projection plane. The horizontal termination coordinate of the projection plane and these two parameters together define the integration interval for calculating the viewpoint occlusion entropy value of the component. They are obtained by analyzing the pixel distribution of the gear part on the two-dimensional projection plane (rendered image). For example, after checking all pixels in the rendered image, it is found that the x-coordinate values ​​of the pixels belonging to the gear part are distributed within the closed interval [800, 950]. Then, the horizontal starting coordinate of the projection plane is... It is set to 800, the horizontal termination coordinate of the projection plane. It was set to 950.

[0034] Horizontal coordinates of the projection plane The distribution value of the projected cross-section of the gear part at location [location], this parameter represents the [number]th [location] in the projected image. The number of pixels belonging to the gear part's projection on each vertical column reflects the gear part's "height" or "width" on that cross-section. It is a key parameter describing the gear part's projected shape. The steps to obtain this parameter are as follows: After determining the projection range of the gear part (from...) and After definition, for each integer horizontal coordinate within that range Check the first one in the object ID buffer. For all pixels in a column, count the total number of pixels for the object ID "gear part". This total number is... For example, in calculation At this point, it is necessary to check all pixels with coordinates (850, 0), (850, 1), ..., (850, 1079). If 45 of these pixels are identified as gear parts, then... The value is 45.

[0035] The actual projected area of ​​the gear part represents the total area of ​​the gear part projected onto the two-dimensional plane from the current viewpoint. In the discrete pixelated representation, it equals the total number of pixels belonging to the gear part's projection. This parameter is the normalized denominator when calculating the viewpoint occlusion entropy value of the component, used to convert the cross-sectional distribution into a probability distribution. Its calculation formula is as follows: ; in, and The horizontal start and end coordinates of the projection plane. For the horizontal coordinate The calculation process for the distribution value of the projected cross-section of the gear part is to count the number of pixels in each vertical pixel column covered by the projection of the gear part (i.e., ) to accumulate, for example, if , And it has been calculated from arrive Adding all the values ​​together, the result is... For example, if the calculated result is 12450 pixels, then .

[0036] Horizontal coordinates of the projection plane The distribution value of the projected cross-section of the gear part at location [location], this parameter represents the [number]th [location] in the projected image. The number of pixels belonging to the projection of the gear part on each vertical column reflects the "height" or "width" of the gear part on that cross-section. It is a key parameter describing the projected shape of the gear part, and its acquisition steps are as follows: After determining the projection range of the gear part (by... and After definition, for each integer horizontal coordinate within that range Check the first one in the object ID buffer. For all pixels in a column, count the total number of pixels for the object ID "gear part". This total number is... The value, for example, in calculating We need to check all pixels at coordinates (850, 0), (850, 1), ..., (850, 1079). If 45 of these pixels are identified as gear parts, then... The value is 45.

[0037] The actual projected area of ​​the gear part represents the total area of ​​the gear part projected onto the two-dimensional plane from the current viewpoint. In the discrete pixelated representation, it equals the total number of pixels belonging to the gear part's projection. This parameter is the normalized denominator when calculating the viewpoint occlusion entropy value of the component, used to convert the cross-sectional distribution into a probability distribution. Its calculation formula is as follows: ; in, and The horizontal start and end coordinates of the projection plane. For the horizontal coordinate The calculation process for the distribution value of the projected cross-section of the gear part is to count the number of pixels in each vertical pixel column covered by the projection of the gear part (i.e., ) to accumulate, for example, if , Furthermore, all values ​​from G(800) to G(900) have been calculated. Adding all these values ​​together yields the following result: =12450.

[0038] Let be the transparency coefficient of the machine tool housing material at the horizontal coordinate p of the projection plane. This parameter represents the average transparency of the machine tool housing portion that obscures the gear part in the p-th column of the projected image. Its value range is [0, 1], where 0 represents completely opaque and 1 represents completely transparent. The acquisition of this parameter depends on the material properties and depth information defined in the digital twin model. The acquisition steps are as follows: For the horizontal coordinate p, first find all pixels belonging to the gear part in that column, then find all pixels belonging to the machine tool housing with a depth value less than the depth of the gear part (i.e., housing pixels located in front of the gear part). Read the transparency (Alpha value) of the material corresponding to these housing pixels, and then calculate the average of these transparency values ​​as the transparency coefficient for that column. For example, in column 820, 10 machine tool housing pixels obscure the gears; 5 of these pixels have a material transparency of 0.4, and the other 5 have a transparency of 0.6. The average feature height of the gear projection is the actual projected area of ​​the gear part. Its projection width ( The ratio of the projection of a gear to its local features provides a macroscopic measure of whether the gear projection is "tall and thin" or "short and wide" overall, as opposed to local features. The benchmark for comparison is calculated using the following formula: ; in, This represents the actual projected area of ​​the gear component. and These are the starting and ending coordinates of the projection plane in the horizontal direction, respectively. For example, according to the previous example, , , The projection width is 950-800=150, so the average feature height of the gear projection is... This means that, on average, the projection of the gear has a “height” of 83 pixels per pixel column.

[0039] The value of is usually set to a very small number, for example This value neither affects the final calculation result nor denotes the denominator, thus ensuring the validity of the logarithmic operation. Calculation is performed based on the parameters: In actual calculations, the integration operation is discretized into a summation operation. Taking a specific horizontal coordinate p=850 as an example, a single-step calculation is performed, using the parameter values ​​obtained in the previous example: ; ; ; Furthermore, based on the aforementioned example, at p=850, we obtain: Then in The value of the term being summed is: ; ; The results show that for the vertical section of the gear part at the transverse coordinate of 850, its contribution to the overall component's viewpoint occlusion entropy is -0.0006487. The final value is obtained by summing the contributions of all sections. The value is a dimensionless numerical value that quantifies the degree of information confusion or uncertainty perceived by an observer when viewing internal gear parts through a semi-transparent machine tool casing. A higher value indicates a higher degree of confusion or uncertainty. A value of 0.5 indicates that the visible part of the gear has a complex and discontinuous shape, or that the transparency of the obstruction varies greatly, making it very difficult to infer the complete shape of the gear. A lower value indicates that the gear's visible part has a complex and discontinuous shape, or that the transparency of the obstruction varies greatly. The value indicates that the occlusion situation is relatively simple, such as complete occlusion or large areas that are clearly visible. This final entropy value will serve as the basis for the next step of dynamic clipping decision. By comparing it with a dynamic judgment threshold, it will be determined whether the mesh of the gear part needs to be removed from the rendering.

[0040] The steps for obtaining the dynamically trimmed assembly mesh are as follows: Read the viewpoint occlusion entropy value and dynamic judgment threshold value of the component, calculate the numerical difference between the viewpoint occlusion entropy value and the dynamic judgment threshold value, check the positive and negative states of the numerical difference item by item, mark the polygonal mesh nodes of the internal gear parts with a numerical difference less than zero as the clipping target nodes, and retain the polygonal mesh nodes of the internal gear parts with a numerical difference greater than or equal to zero as display nodes, and obtain the node clipping judgment result. Based on the node clipping determination result, the parent node identifier, child node identifier, same-level node identifier, and node reference address corresponding to the clipping target node are located in the directed acyclic graph in memory. The data links of the internal gear part polygon mesh nodes associated with the clipping target node are cut off one by one according to the node reference address. The face index record, edge connection record, and vertex reference record associated with the clipping target node are cleared. Then, the boundary coordinate record and node placeholder record of the empty bounding box node are written in the original node position to form an empty bounding box replacement node structure. Based on the empty bounding box replacement node structure, the hierarchical position, boundary coordinate records, node placeholder records, and connection order of the empty bounding box nodes in the directed acyclic graph in memory are traversed. The connection relationship of the display patches around the empty bounding box nodes is reconstructed, the edge connection order and vertex display order around the empty bounding box nodes are updated, and the scene is reconstructed and rendered according to the updated node hierarchy to obtain the dynamic trimmed assembly mesh.

[0041] Specifically, the viewpoint occlusion entropy value and dynamic judgment threshold value of the component are read. The dynamic judgment threshold is adjusted in real-time based on the current system's rendering performance. Its calculation method is as follows: First, a baseline entropy threshold is set. This baseline value is found through extensive testing on the target hardware, achieving an empirical value that balances visual effects and performance, such as 1.5. When the entropy value is lower than this value, the visible information of the component is generally considered sufficient, and no pruning is necessary. Then, this baseline is dynamically adjusted based on the current frame rate and the target frame rate. The formula for calculating the dynamic judgment threshold is: in, To dynamically determine the threshold value, Here, is the baseline entropy threshold, set to 1.5, and k is a performance adjustment sensitivity coefficient used to control the magnitude of threshold variation with frame rate; empirically, it is set to 0.8. For the target frame rate, such as 60 frames per second, This represents the current real-time rendering frame rate. For example, if current performance is poor, it might be 40 frames per second. Next, the difference between the viewpoint occlusion entropy value of the component (e.g., the entropy value of a certain gear part calculated in the previous step is 2.1) and the value of the dynamic judgment threshold is calculated, i.e., 2.1-1.9=0.2. The positive and negative states of the value difference are checked one by one. Since the difference is positive, the polygonal mesh node of the internal gear part is retained as a display node. If the entropy value of another gear part is 1.8, then the difference is 1.8-1.9=-0.1. The polygonal mesh node of the internal gear part with a value difference less than zero is marked as the clipping target node. The judgment results of all parts are summarized to obtain the node clipping judgment result.

[0042] Based on the node pruning determination result, firstly, in the directed acyclic graph of memory, a hash table with the node's unique identifier as the key and the node's memory address as the value is used to quickly locate the memory address of the node marked as the pruning target. For example, if node "Gear_07" is located, the parent node identifier (e.g., "Gearbox_Assembly"), the list of child nodes (if any), the reference addresses of the sibling nodes at the same level, and the node reference addresses pointing to its own geometric data blocks are read from its data structure. Then, according to the node reference addresses, the entry for "Gear_07" in the child node list of the parent node "Gearbox_Assembly" is modified, deleting its pointer or reference, and simultaneously updating the sibling nodes at the same level. The nodes are linked together to logically remove "Gear_07" from the scene graph. Then, the data links of the internal gear part polygon mesh nodes associated with the clipping target node are severed. Specifically, the pointers to the geometric data blocks such as vertex buffers, index buffers, and material information in the "Gear_07" node object are released or set to null, and these data blocks are marked as garbage collectible. This operation clears the face index records, edge connection records, and vertex reference records associated with the clipping target node. Then, a new, extremely lightweight empty bounding box node is created in the original node position. This node does not contain any geometric rendering data, but only a boundary coordinate record that records the original 3D boundary of "Gear_07" (e.g., minimum corner coordinates (1.2, 3.4, 5.6) and maximum corner coordinates (1.8, 4.0, 6.2)) and a node placeholder record indicating that it is a placeholder. This new node is inserted into the original position of "Gear_07", forming an empty bounding box replacement node structure.

[0043] Based on the empty bounding box replacement node structure, the directed acyclic graph in memory is traversed first to identify all empty bounding box nodes and read their hierarchical position, boundary coordinate records, and node placeholder records. Then, based on their boundary coordinate records and hierarchical position, the spatial partitioning structure in the scene graph (e.g., octree or kd-tree) is used to query the display nodes spatially adjacent to the empty bounding box node. For example, the nodes "Gear_06" and "Gearbox_Casing" adjacent to the empty bounding box replaced by "Gear_07" are queried. Next, the connection relationship of the display faces around the empty bounding box node is reconstructed. This process does not generate new geometric faces, but rather adjusts the rendering state of adjacent display nodes. Specifically, each face of "Gearbox_Casing" is checked; if the normal of a face faces towards the inside of the empty bounding box, and is within the empty bounding box, then the connection relationship is reconstructed. When "r_07" was occluded, it was either culled from the back or marked as not to be rendered. Now, the rendering status of this facet needs to be marked as "visible" and added to the rendering queue. Next, the edge connection order and vertex display order around the empty bounding box node are updated. This mainly involves updating the material or shader parameters of adjacent nodes. For example, the inner surface of "Gearbox_Casing" that was previously in contact with "Gear_07" may have been using a simplified internal material. Now, it needs to be switched to the same material as the outer surface to ensure visual continuity. Finally, the scene is reconstructed and rendered according to the updated node hierarchy and node rendering status. When the renderer traverses the scene graph, it will skip the geometry rendering of the empty bounding box node (its wireframe may only be drawn in debug mode), but it will render the inner surfaces of the previously hidden adjacent nodes to obtain a dynamically clipped assembly mesh.

Claims

1. A production line simulation system based on digital twins, characterized in that, The system includes: The production line trajectory modeling module is used to obtain the horizontal, vertical and horizontal coordinate parameters of the geometric vertices of the robotic arm and AGV shuttle nodes in the three-dimensional coordinate system of the production line under the digital twin, generate a set of component trajectory point clouds, extract the contour extreme value coordinate points in the set of component trajectory point clouds, and establish a trajectory convex polyhedron mesh. The safety envelope 3D module is used to introduce the 3D vertex parameters of the spherical polygon mesh, perform spatial vector addition operation on the vertex coordinates of the spherical polygon mesh and the trajectory convex polyhedron mesh to obtain the safety contour envelope boundary parameters, and perform position alignment and binding of the safety contour envelope boundary parameters with the equipment mesh nodes in the directed acyclic graph in memory to establish the 3D topology mesh of the production line. The occlusion viewpoint analysis module is used to extract the viewpoint cone parameters and depth buffer values ​​of the machine tool shell surface within the three-dimensional topological mesh of the production line projected by the twin camera, generate a set of depth buffer primitives, calculate the bounding box area parameters of the gear parts in the set of depth buffer primitives on the projection plane, and generate the component viewpoint occlusion entropy value. The scene graph reconstruction modeling module is used to compare the difference between the viewpoint occlusion entropy value of the component and the dynamic judgment threshold value to obtain the dynamic trimmed assembly mesh.

2. The production line simulation system based on digital twins according to claim 1, characterized in that, The steps for obtaining the component trajectory point cloud set are as follows: The system acquires the horizontal, vertical, and longitudinal coordinates of the geometric vertices of the robotic arm, the AGV shuttle node, and the AGV shuttle node in the production line under the digital twin. According to the robotic arm number, AGV shuttle node number, and sampling sequence, the horizontal, vertical, and longitudinal coordinates of the corresponding geometric vertices under the same number are sequentially paired. Then, the paired 3D coordinate sequences are continuously spliced ​​according to the component identifier to generate a set of component trajectory point clouds.

3. The production line simulation system based on digital twins according to claim 1, characterized in that, The steps for obtaining the trajectory convex polyhedron mesh are as follows: Based on the component trajectory point cloud set, the x-coordinate, y-coordinate, and vertical coordinate values ​​of each point are read point by point. The points corresponding to the maximum x-coordinate, minimum x-coordinate, maximum y-coordinate, minimum y-coordinate, maximum vertical coordinate, and minimum vertical coordinate are then selected to obtain the contour extreme coordinate points. Using the contour extreme coordinate points as the distance comparison benchmark, the radial distance and angular position values ​​of each point in the component trajectory point cloud set pointing to the contour extreme coordinate points are calculated round by round. The polar coordinate record with the largest distance value is retained to form the farthest polar coordinate value. Extract the spatial points corresponding to the farthest polar coordinate values ​​according to the angular position arrangement order, write the line segment endpoint relationships between adjacent spatial points in sequence, close the connection between the first and last spatial points, and then write the vertex connection relationships of the face patches piece by piece according to the spatial region enclosed by the closed line segments. Continuously fill all the vertex connection relationships of the face patches to establish a trajectory convex polyhedron mesh.

4. The production line simulation system based on digital twins according to claim 1, characterized in that, The steps for obtaining the safety contour envelope boundary parameters are as follows: Read the three-dimensional vertex parameters of the spherical polygon mesh and the vertex coordinates of the trajectory convex polyhedron mesh. Extract the horizontal, vertical, and longitudinal components one by one according to the vertex numbering order of the three-dimensional vertex parameters of the spherical polygon mesh. Then extract the horizontal, vertical, and longitudinal components one by one according to the vertex numbering order of the vertex coordinates of the trajectory convex polyhedron mesh. Add the corresponding components of the horizontal, vertical, and longitudinal components under the same order. Record the spatial coordinate position of each group after addition. Write all the spatial coordinate positions into the continuous vertex sequence according to the original vertex adjacency order to generate the product of spatial vector addition operation. Based on the product of the spatial vector addition operation, read the spatial coordinate positions in the continuous vertex sequence one by one, establish candidate connecting edges according to the adjacency order of the spatial coordinate positions, and then check the outer direction of the adjacent face vertices associated with each candidate connecting edge. Retain connecting edges with the same outer direction, and remove internal connecting edges that are simultaneously surrounded by adjacent face vertices. Then, perform closed sorting on the retained connecting edges, and extract the boundary vertex arrangement order, boundary connection relationship and boundary turning position after closed sorting to form the safe contour envelope boundary parameters.

5. The production line simulation system based on digital twins according to claim 1, characterized in that, The steps for obtaining the three-dimensional topology mesh of the production line are as follows: In the directed acyclic graph in memory, the node identifier, node position coordinates, and node parent-child hierarchy of each device mesh node are read one by one. The boundary vertex arrangement order, boundary connection relationship, and boundary turning position in the safety contour envelope boundary parameter are arranged and bound according to the node position coordinates of the device mesh nodes. The boundary nodes that have completed the position alignment and binding are written into the corresponding level of the directed acyclic graph in memory. Then, the face display relationship, connection edge display relationship, and vertex display relationship associated with the boundary nodes are refreshed one by one, triggering the mesh rendering update program to obtain the three-dimensional topology mesh of the production line.

6. The production line simulation system based on digital twins according to claim 1, characterized in that, The steps for obtaining the depth buffer primitive set are as follows: Extract the origin coordinates, line-of-sight coordinates, near-end section boundary coordinates, and far-end section boundary coordinates of the viewpoint origin of the machine tool shell surface projected by the twin camera onto the three-dimensional topological mesh of the production line. Read the depth buffer values ​​of the corresponding sampling positions of the machine tool shell surface. Filter out the effective sampling positions according to the coverage range of the viewpoint cone. Write the plane coordinates, depth level, and surface identifier of the effective sampling positions into a continuous record sequence to generate a depth buffer primitive set.

7. The production line simulation system based on digital twins according to claim 1, characterized in that, The steps for obtaining the viewpoint occlusion entropy value of the component are as follows: Based on the depth buffer primitive set, the horizontal and vertical coordinates of the projection plane of the corresponding primitive of the gear part are extracted. The horizontal start coordinate, horizontal end coordinate, vertical start coordinate, and vertical end coordinate of the projection plane are determined respectively. The projection cross-sectional distribution value of the gear part is accumulated segment by segment according to the cross-sectional distribution range between the horizontal start coordinate and the horizontal end coordinate of the projection plane to obtain the actual projection area of ​​the gear part. Based on the actual projected area of ​​the gear part, calculate the average feature height of the gear projection and the viewpoint occlusion entropy value of the component.

8. The production line simulation system based on digital twins according to claim 1, characterized in that, The steps for obtaining the dynamically trimmed assembly mesh are as follows: Read the viewpoint occlusion entropy value and dynamic judgment threshold value of the component, calculate the numerical difference between the viewpoint occlusion entropy value and the dynamic judgment threshold value, check the positive and negative states of the numerical difference item by item, mark the polygonal mesh nodes of the internal gear parts with a numerical difference less than zero as the clipping target nodes, and retain the polygonal mesh nodes of the internal gear parts with a numerical difference greater than or equal to zero as display nodes, and obtain the node clipping judgment result. Based on the node clipping determination result, the parent node identifier, child node identifier, same-level node identifier, and node reference address corresponding to the clipping target node are located in the directed acyclic graph in memory. The data links of the internal gear part polygon mesh nodes associated with the clipping target node are cut off one by one according to the node reference address. The face index record, edge connection record, and vertex reference record associated with the clipping target node are cleared. Then, the boundary coordinate record and node placeholder record of the empty bounding box node are written in the original node position to form an empty bounding box replacement node structure. Based on the empty bounding box replacement node structure, the hierarchical position, boundary coordinate records, node placeholder records, and connection order of the empty bounding box nodes in the directed acyclic graph in memory are traversed. The connection relationship of the display patches around the empty bounding box nodes is reconstructed, the edge connection order and vertex display order around the empty bounding box nodes are updated, and the scene is reconstructed and rendered according to the updated node hierarchy to obtain the dynamic trimmed assembly mesh.