A multi-crane cooperative operation simulation teaching platform and examination system

CN122313755BActive Publication Date: 2026-09-11FUJIAN TONGQI MACHINERY EQUIPMENT CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202610788723.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2026-06-03
Publication Date
2026-09-11
Estimated Expiration
2046-06-03

AI Technical Summary

Technical Problem

一方面,多机协同过程中的空间干涉、载荷超限等冲突事件完全依赖学员人工判断和避让,系统本身不具备主动检测与干预能力,一旦学员操作不当即导致虚拟场景中起重机碰撞或吊装物倾覆,教学过程被打断,且学员无法在错误发生瞬间获得纠偏引导,训练效率低下

Benefits of technology

[0017] An event-driven approach is used to update the real-time status of each virtual crane and detect conflicts. A collaborative rule base is then used for conflict resolution and forced correction. The state synchronization module establishes an independent state queue for each virtual crane and stores control commands by timestamp. Dequeueing and pose calculation are triggered by a global clock, accurately reconstructing the timing relationship of multi-crane collaborative actions. During state updates, the minimum spatial distance between cranes and the real-time load of a single crane are calculated in real time and compared with preset safety distance thresholds and rated loads. Once spatial interference or overload is detected, a state conflict event with an identifier and timestamp is generated. The conflict resolution module retrieves matching strategy entries from the collaborative rule base for different conflict types. For spatial interference, a backtracking path is determined based on priority passage. For overload conflicts, the load redistribution ratio is calculated, and the strategy is converted into a forced control command with a high-priority identifier, directly injected into the head of the corresponding state queue, overwriting the original student control commands. This method allows conflict resolution to be completed automatically within the continuous frame loop of state synchronization, without interrupting the simulation or restarting the scene, ensuring the continuity and safety of the training process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122313755B_ABST
    Figure CN122313755B_ABST
Patent Text Reader

Abstract

This invention discloses a multi-crane collaborative operation simulation teaching platform and examination system, belonging to the field of virtual simulation teaching technology. The system includes a collaborative scene construction module, which generates the initial poses of multiple virtual cranes and 3D models of the objects to be lifted based on the teaching task, and establishes motion constraints; an operation data acquisition module captures control commands in real time and generates action sequences; a state synchronization module updates the real-time state of each virtual crane using an event-driven approach and detects state conflict events; a conflict resolution module generates conflict resolution strategies based on a collaborative rule base and forcibly corrects the conflict state when a conflict is detected; and an examination evaluation module collects complete operation process data in examination mode, performs multi-dimensional scoring based on a fuzzy comprehensive evaluation matrix, and outputs examination results. This invention can detect and automatically resolve multi-crane collaborative conflicts in real time, achieving refined automatic scoring of the operation process.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of virtual simulation teaching technology, specifically to a multi-crane collaborative operation simulation teaching platform and examination system. Background Technology

[0002] Multi-crane collaborative hoisting is a common operation method in large-scale engineering construction, which requires extremely high coordination skills from operators. Relying on simulation teaching platforms for training and assessment has become an industry consensus. Existing simulation teaching systems typically equip each crane with an independent simulator. The simulators exchange position data through a local area network, and trainees complete the operation at their respective workstations. The system only performs post-event evaluations on the correctness of individual crane actions.

[0003] The main shortcomings of existing technical solutions lie in two aspects. First, in multi-machine collaborative processes, conflicts such as spatial interference and overload exceeding limits rely entirely on the trainee's manual judgment and avoidance. The system itself lacks the ability to actively detect and intervene. Once the trainee operates improperly, it will cause the crane to collide or the hoisted object to overturn in the virtual scenario, interrupting the teaching process. Moreover, the trainee cannot receive corrective guidance at the moment the error occurs, resulting in low training efficiency. Second, the examination scoring remains at the level of shallow indicators such as operation time and number of collisions, lacking in-depth quantification of collaborative qualities such as the smoothness of the hoisting path and the balance of multi-machine load distribution. The scoring results are difficult to reflect the trainee's true collaborative operation level.

[0004] To address the aforementioned issues, it is necessary to solve how to detect operational conflicts in real time and automatically generate forced correction strategies in virtual collaborative operations of multiple cranes to prevent simulation process crashes due to trainee misoperation, and how to extract multi-dimensional collaborative quality features from operation timing data and complete objective comprehensive scoring. Summary of the Invention

[0005] This invention provides a simulation teaching system that can actively detect spatial interference and overload conflicts during virtual collaborative operation of multiple cranes, and automatically generate mandatory control commands based on dynamically expandable collaborative rules to maintain the continuity of the simulation. At the same time, it uses a fuzzy comprehensive evaluation matrix to quantify and score multi-dimensional operation features, including operation time, path smoothness, number of conflicts, load balance, and final positioning accuracy, to achieve a refined and automatic assessment of collaborative operation level.

[0006] The objective of this invention can be achieved through the following technical solutions:

[0007] This invention provides a multi-crane collaborative operation simulation teaching system, including a collaborative scenario construction module, an operation data acquisition module, a state synchronization module, a conflict resolution module, and an examination and evaluation module. The collaborative scenario construction module generates the initial poses of multiple virtual cranes and 3D models of the objects to be lifted based on the teaching task, and establishes motion constraints between the virtual cranes. The operation data acquisition module captures the trainee's control commands to each virtual crane in real time, generating a sequence of actions for each virtual crane. The state synchronization module updates the real-time state of each virtual crane using an event-driven approach based on the action sequences and motion constraints, and detects state conflict events. When a state conflict event is detected, the conflict resolution module analyzes the conflict event according to a preset collaborative rule base, generates a conflict resolution strategy, and forcibly corrects the conflict state. The examination and evaluation module collects the trainee's complete operation process data in examination mode, performs multi-dimensional scoring of the operation process data based on a fuzzy comprehensive evaluation matrix, and outputs the examination score. This system can realistically simulate the multi-crane collaborative lifting operation process, perform real-time analysis and forced correction of operational conflicts, and objectively and quantitatively evaluate the trainee's collaborative operation ability.

[0008] As a technical solution of this invention, the collaborative scene construction module acquires the degree-of-freedom parameters and lifting capacity parameters of each virtual crane, and extracts the center of mass position and lifting point distribution of the object to be lifted based on the three-dimensional model of the object. Using the center of mass position as a reference, the hook movement range and lifting point distribution of each virtual crane are spatially matched to generate the lifting force distribution ratio among the virtual cranes. The degree-of-freedom parameters, lifting capacity parameters, and lifting force distribution ratio are encoded into motion constraint relationships, and the motion constraint relationships are sent to the state synchronization module. Through the above settings, the motion constraint relationships accurately reflect the mechanical coordination and spatial matching requirements in actual lifting, providing a reliable foundation for subsequent state synchronization and conflict resolution.

[0009] Preferably, the state synchronization module establishes an independent state queue for each virtual crane. The state queue stores the control commands in the action sequence in timestamp order. A global clock is set. When the global clock reaches the trigger time of any control command, the control command is retrieved from the corresponding state queue. The expected pose change of the corresponding virtual crane is calculated based on the control command, and the real-time position and attitude of the virtual crane are updated in combination with the lifting force distribution ratio in the motion constraint relationship. The updated real-time position and attitude are broadcast to the conflict resolution module. On this basis, the state synchronization module calculates the minimum spatial distance between any two virtual cranes based on the real-time position and attitude of each virtual crane, and compares the minimum spatial distance with a preset safety distance threshold. When the minimum spatial distance is less than the safety distance threshold, a spatial interference conflict is determined to have occurred. The identifiers and current timestamps of the two virtual cranes involved in the interference are recorded, and a state conflict event containing the identifiers and current timestamps is generated. When the real-time lifting load of any virtual crane exceeds the rated load defined in the lifting capacity parameters, an overload conflict is determined to have occurred, and a state conflict event containing the identifier of the virtual crane and the overload value is generated. All state conflict events are sent to the conflict resolution module. By using an event-driven approach and independent state queues, the orderly and real-time updates of the status of multiple cranes are effectively guaranteed, and the conflict detection mechanism can promptly detect potential interference and overload risks.

[0010] In a preferred embodiment of the present invention, the conflict resolution module retrieves matching rule entries from the collaborative rule base based on the type of state conflict event. For spatial interference conflicts, it extracts the real-time movement directions of the two virtual cranes involved in the interference, determines the virtual cranes that need to be paused or rolled back according to the priority right-of-way order defined in the rule entries, and calculates their rollback path points. For overload conflicts, it calculates the load increment of the remaining virtual cranes according to the load redistribution strategy defined in the rule entries and regenerates the lifting force distribution ratio. The rollback path points or the regenerated lifting force distribution ratio are sent as conflict resolution strategies to the collaborative scenario construction module. The collaborative rule base is a dynamically expandable rule base, supporting the addition or modification of priority right-of-way order and load redistribution strategy in rule entries through external configuration files. Therefore, the system can flexibly adapt to different teaching scenarios and collaborative rules, improving the adaptability and scalability of conflict resolution.

[0011] Furthermore, the conflict resolution module converts the conflict resolution strategy into mandatory control commands for specific virtual cranes. These mandatory control commands include a priority identifier, which is higher than the trainee control commands captured by the operation data acquisition module. The mandatory control commands are directly injected into the head of the corresponding virtual crane's status queue, overwriting any existing control commands waiting to be executed. Simultaneously, a conflict correction record is sent to the examination and assessment module, containing the conflict type, the mandatory control command, and a correction timestamp. This mandatory correction mechanism can immediately prevent dangerous operations, ensuring lifting safety in the virtual scenario, and providing a complete intervention record for subsequent examinations and assessments.

[0012] In terms of examination and evaluation, the examination and evaluation module starts a global recording thread in examination mode to continuously monitor all control commands output by the operation data acquisition module and all conflict correction records output by the conflict resolution module. The control commands and conflict correction records are then concatenated into an operation sequence chain in chronological order. Each operation sequence chain includes elements such as the command issuance time, command type, target crane identifier, and command parameters. The operation sequence chain corresponding to the entire movement of the object to be lifted from its initial pose to its final pose is marked as complete operation process data and stored in the examination database. This data acquisition method ensures the integrity and traceability of the operation process.

[0013] As a specific embodiment of this invention, the examination and evaluation module extracts multiple scoring dimensions from the complete operation process data. These dimensions include operation time, path smoothness, number of conflicts, load balance, and final positioning accuracy. A membership function is set for each scoring dimension, and the measured values ​​for each dimension are converted into fuzzy evaluation vectors using the membership function. The fuzzy evaluation vectors of each scoring dimension are then combined with a preset weight vector to generate a comprehensive evaluation vector. The final scoring level is extracted from the comprehensive evaluation vector based on the principle of maximum membership degree, and the final scoring level is converted into a percentage score for output. Preferably, the membership function uses a triangular or trapezoidal membership function, and the parameters of the membership function for each scoring dimension are dynamically adjusted based on the statistical analysis results of historical examination data. The multi-dimensional scoring achieved through the fuzzy comprehensive evaluation matrix can comprehensively and objectively reflect the trainee's overall performance in collaborative operations, overcoming the one-sidedness of single-indicator evaluation.

[0014] As an improvement of this invention, after outputting the exam results, the exam assessment module also reads the complete operation process data stored in the exam database and compares the complete operation process data with the preset standard operation template instruction by instruction to generate a list of differing instructions. Based on the occurrence time of each differing instruction in the list, a 3D scene snapshot of the corresponding moment is extracted from the collaborative scene construction module. The list of differing instructions and the 3D scene snapshots are packaged into exam review data and sent to the display terminal. This review data can intuitively show the deviation between the student's operation and the standard operation, facilitating targeted guidance and learning.

[0015] This invention also provides a multi-crane collaborative operation simulation teaching platform, including the aforementioned multi-crane collaborative operation simulation teaching system, as well as a virtual reality display device, a force feedback control panel, and a score printing terminal. The virtual reality display device receives the 3D model generated by the collaborative scene construction module and the real-time status updated by the status synchronization module, presenting a stereoscopic visual image to the learner. The force feedback control panel collects the learner's control commands and sends them to the operation data acquisition module. Simultaneously, it receives forced control commands generated by the conflict resolution module, applying a reverse damping force to the control handle to provide a realistic sense of force and prompt conflict correction. The score printing terminal receives the exam scores and exam review data output by the exam evaluation module and generates an exam report. This platform integrates virtual reality interaction, force feedback guidance, and automated exam evaluation functions, providing a complete immersive training and assessment environment for multi-crane collaborative operation teaching.

[0016] The beneficial effects of this invention are:

[0017] An event-driven approach is used to update the real-time status of each virtual crane and detect conflicts. A collaborative rule base is then used for conflict resolution and forced correction. The state synchronization module establishes an independent state queue for each virtual crane and stores control commands by timestamp. Dequeueing and pose calculation are triggered by a global clock, accurately reconstructing the timing relationship of multi-crane collaborative actions. During state updates, the minimum spatial distance between cranes and the real-time load of a single crane are calculated in real time and compared with preset safety distance thresholds and rated loads. Once spatial interference or overload is detected, a state conflict event with an identifier and timestamp is generated. The conflict resolution module retrieves matching strategy entries from the collaborative rule base for different conflict types. For spatial interference, a backtracking path is determined based on priority passage. For overload conflicts, the load redistribution ratio is calculated, and the strategy is converted into a forced control command with a high-priority identifier, directly injected into the head of the corresponding state queue, overwriting the original student control commands. This method allows conflict resolution to be completed automatically within the continuous frame loop of state synchronization, without interrupting the simulation or restarting the scene, ensuring the continuity and safety of the training process.

[0018] The fuzzy comprehensive evaluation matrix is ​​used to score the complete operation process data from multiple dimensions. In exam mode, the assessment module concatenates control commands and conflict correction records into an operation sequence chain in chronological order, extracting measured values ​​for five dimensions: operation time, path smoothness, number of conflicts, load balance, and final positioning accuracy. By setting triangular or trapezoidal membership functions for each dimension, the measured values ​​are converted into fuzzy evaluation vectors, which are then fuzzily synthesized with preset weight vectors to obtain a comprehensive evaluation vector. The final score level is determined based on the principle of maximum membership and converted into a percentage score. The parameters of the membership function can be dynamically adjusted based on the statistical analysis results of historical exam data, allowing the scoring criteria to continuously approach expert evaluation standards through repeated use. This scoring mechanism can characterize the trainee's collaborative operation quality from multiple dimensions, identify the subtle impacts of different collaborative strategies on lifting accuracy and efficiency, and provide exam scores that are highly discriminative and consistent with human evaluation. Attached Figure Description

[0019] The invention will now be further described with reference to the accompanying drawings.

[0020] Figure 1 This is a schematic diagram of the structure of a multi-crane collaborative operation simulation teaching system;

[0021] Figure 2 This is a flowchart of the synchronous processing of force distribution and motion constraints in multi-machine collaborative hoisting.

[0022] Figure 3 This is a flowchart of the examination assessment and fuzzy comprehensive scoring process;

[0023] Figure 4 This is a flowchart of the dynamic adjustment of membership function parameters and the generation of exam review data. Detailed Implementation

[0024] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0025] See Figure 1This invention provides a multi-crane collaborative operation simulation teaching system, including a collaborative scenario construction module, an operation data acquisition module, a state synchronization module, a conflict resolution module, and an examination and evaluation module. The collaborative scenario construction module generates the initial poses of multiple virtual cranes and 3D models of the objects to be lifted based on the teaching task, and establishes motion constraints between the virtual cranes. The operation data acquisition module captures the trainee's control commands to each virtual crane in real time, generating the action sequences of each virtual crane. The state synchronization module updates the real-time state of each virtual crane using an event-driven approach based on the action sequences and motion constraints, and detects state conflict events. When a state conflict event is detected, the conflict resolution module analyzes the conflict event according to a preset collaborative rule base, generates a conflict resolution strategy, and forcibly corrects the conflict state. In examination mode, the examination and evaluation module collects the trainee's complete operation process data, performs multi-dimensional scoring on the operation process data based on a fuzzy comprehensive evaluation matrix, and outputs the examination score.

[0026] In specific implementation, please refer to Figure 2 The collaborative scene construction module reads model files of multiple virtual cranes specified in the teaching task from a pre-built crane model database, and parses the degree-of-freedom parameters and lifting capacity parameters of each virtual crane from the model files. The degree-of-freedom parameters include the virtual crane's rotation angle range, lifting height range, luffing angle range, and the upper limit of motion speed for each degree of freedom. The lifting capacity parameters include the virtual crane's rated lifting capacity, maximum working radius, and lifting torque curve data. Simultaneously, the collaborative scene construction module loads the 3D model of the object to be lifted specified in the teaching task, performs voxelization on the 3D model, calculates the geometric center of the voxel set of the 3D model, and uses the geometric center as the centroid position of the object to be lifted. The collaborative scene construction module identifies preset lifting lug markers or user-annotated lifting points in the 3D model, extracts the coordinates of the lifting point markers in the object coordinate system, and forms a lifting point distribution set, where each element in the lifting point distribution set corresponds to the 3D coordinates of a lifting point.

[0027] The collaborative scene construction module uses the center of mass position as a reference to spatially match the hook movement range of each virtual crane with the distribution of lifting points. Specifically, the module obtains the position of the base of each virtual crane in the world coordinate system and calculates the reachable area of ​​the hook in three-dimensional space based on the kinematic model of the virtual crane. The module then filters lifting points from the lifting point distribution set that fall within the reachable area of ​​the hook, establishing a relationship between the virtual crane and the lifting point. If a lifting point falls within the reachable area of ​​multiple virtual cranes, the module maintains a many-to-many relationship between the virtual cranes and the lifting points. Finally, the module calculates the spatial distance from the center of mass position to each associated lifting point, which is the Euclidean distance between the three-dimensional coordinates of the center of mass position and the three-dimensional coordinates of the lifting point.

[0028] The collaborative scenario construction module generates the lifting force distribution ratio between each virtual crane based on spatial distance. The lifting force distribution ratio is calculated as follows:

[0029] Let the total number of virtual cranes be... , No. The spatial distance between the lifting points associated with each virtual crane is Then the first Lifting force distribution ratio of virtual crane Calculate using the following formula:

[0030]

[0031] in, Indicates the first The lifting force distribution ratio of the virtual crane. The value range is a real number between 0 and 1, and the sum of the lifting force distribution ratios of all virtual cranes is 1; Indicates the position of the center of mass of the object to be hoisted from the th The spatial distance between the lifting points associated with the virtual crane. It is obtained by the Euclidean distance between three-dimensional coordinate points; This represents the total number of virtual cranes participating in the collaborative operation, which is an integer. ; Represents the summation variable Iterate through values ​​from 1 to At that time, the first The spatial distance between the lifting points associated with each virtual crane.

[0032] After obtaining the degree-of-freedom parameters, lifting capacity parameters, and lifting force distribution ratio of each virtual crane, the collaborative scenario construction module combines the upper and lower limits of the rotation angle, lifting height, luffing angle, and motion speed from the degree-of-freedom parameters of the same virtual crane, as well as the discrete point sequence of the rated lifting capacity, maximum working radius, and lifting moment curve from the lifting capacity parameters, along with the lifting force distribution ratio. The data is assembled into a single motion constraint data packet. The collaborative scenario construction module uses the set of motion constraint data packets of all virtual cranes as motion constraint relationships and sends them to the state synchronization module via the internal system data bus using a message queue telemetry transmission protocol.

[0033] After receiving the motion constraints, the state synchronization module establishes an independent state queue for each virtual crane in memory. The state queue uses a first-in, first-out (FIFO) data structure, with each queue element containing a control command and its trigger time. Each time the operation data acquisition module captures a control command from the trainee, it encapsulates the command along with the current time read from the global clock as the trigger time and appends it to the tail of the corresponding virtual crane's state queue. Control commands at least include a command type field, a command parameter field, and a target crane identifier. Command types include hoisting commands, slewing commands, and luffing commands; command parameters include target speed or target displacement.

[0034] The state synchronization module sets a global clock, which is a system-level monotonically increasing timer with millisecond-level precision. The global clock advances at a fixed period, and the state synchronization module checks the head element of the state queue of all virtual cranes within each clock cycle. When the global clock time equals or exceeds the trigger time of the head element of the state queue, the state synchronization module retrieves the control command from the head of the corresponding state queue.

[0035] The state synchronization module parses the command type and parameters from the retrieved control commands, and calculates the expected pose change of the virtual crane corresponding to the command by combining the kinematic model of the virtual crane. Specifically, for hoisting commands, the expected pose change includes the hook height change; for slewing commands, it includes the turntable slewing angle change; and for luffing commands, it includes the boom pitch angle change. The state synchronization module obtains the degree-of-freedom parameters corresponding to the virtual crane in the motion constraint relationship and restricts the values ​​of each item in the expected pose change within the upper and lower limits specified by the degree-of-freedom parameters.

[0036] The state synchronization module superimposes the constrained desired pose change onto the current real-time position and attitude of the virtual crane, obtaining a preliminary updated real-time position and attitude. Distribute the lifting force proportionally Multiplying the load by the total weight of the object to be lifted yields the lifting load that the virtual crane should currently bear. The state synchronization module substitutes the lifting load into the structural stiffness model of the virtual crane to calculate the compensation for boom deflection and chassis tilt caused by the load. The state synchronization module then adds the boom deflection and chassis tilt compensation to the initially updated real-time position and attitude to obtain the final updated real-time position and attitude. The state synchronization module broadcasts the final updated real-time position and attitude to the conflict resolution module via a publish-subscribe internal message channel.

[0037] In practice, the state synchronization module receives the updated real-time position and attitude of each virtual crane from the internal message channel and stores the real-time position and attitude in the state snapshot buffer. The state snapshot buffer maintains the pose information of all virtual cranes in the current clock cycle. Each pose information includes the virtual crane identifier, the three-dimensional coordinates of the hook tip in the world coordinate system, the boom direction unit vector, the turntable rotation angle, the boom pitch angle, and the vertex coordinate array of the bounding box of each boom segment.

[0038] The state synchronization module iterates through all virtual cranes in the state snapshot buffer, pairing them up one by one. Let the set of virtual cranes be... ,gather The total number of virtual cranes in China is The state synchronization module synchronizes each pair of virtual cranes. ,in, , ,and The minimum spatial distance calculation process is executed. The state synchronization module extracts the virtual crane. The bounding box vertex coordinate array of each boom segment and the virtual crane The bounding box vertex coordinate array of each boom segment is used to traverse the virtual crane. Each bounding box with a virtual crane For each bounding box, the nearest distance between bounding box pairs is calculated using the separating axis theorem. The minimum value among all calculated nearest distances for bounding box pairs is taken as the virtual crane. With virtual crane Minimum spatial distance between If the boom of one of the virtual cranes is in the retracted state, the state synchronization module will treat the boom in the retracted state as a single cylinder extending from the top coordinate of the hook towards the base, and use the shortest distance between the cylinder and the bounding box set of the other virtual crane as the minimum spatial distance.

[0039] Minimum spatial distance Obtained through the following formula:

[0040]

[0041] in, Represents a virtual crane With virtual crane The minimum spatial distance between them, in meters; Represents a virtual crane The assembly of the surrounding boxes for each segment of the boom; Represents a virtual crane The assembly of the surrounding boxes for each segment of the boom; For bounding box sets Any bounding box in the; For bounding box sets Any bounding box in the; Indicates bounding box The three-dimensional coordinate vector of the center point in the world coordinate system. ; Indicates bounding box The three-dimensional coordinate vector of the center point in the world coordinate system. ; Representing vectors with vector The Euclidean distance between them; Indicates bounding box The radius of the circumscribed sphere is taken as the bounding box radius. Half of the maximum value among the length, width, and height; Indicates bounding box The radius of the circumscribed sphere is taken as the bounding box radius. Half of the maximum value among the length, width, and height.

[0042] The state synchronization module will calculate the minimum spatial distance between each pair of virtual cranes. With respect to the preset safe distance threshold Compare the safety distance thresholds. Read the safe distance threshold from the system configuration file. The settings are determined by the instructional designers during the scene editing phase, based on the maximum outer envelope dimension of the boom in the virtual crane model plus a minimum safety margin, with the minimum safety margin set at 0.5 meters. When the minimum spatial distance... Less than the safe distance threshold At this time, the state synchronization module determines that a spatial interference conflict has occurred. The state synchronization module records the identifiers of the two virtual cranes involved in the spatial interference conflict, i.e., the virtual cranes... Identification number and virtual crane The system uses the identifiers of the two virtual cranes and reads the current time from the global clock as the timestamp of the conflict. The state synchronization module generates a state conflict event containing the identifiers of the two virtual cranes and the current timestamp. The structure of the state conflict event is also filled with the event type "spatial interference conflict".

[0043] In one implementation, after determining spatial interference conflicts, the state synchronization module continues to traverse all virtual cranes and perform overload conflict detection. The state synchronization module obtains the rated load value within the lifting capacity parameters of each virtual crane from the motion constraint relationships. Based on the lifting force distribution ratio of each virtual crane and the total weight of the object to be lifted, the state synchronization module calculates the current real-time lifting load of the virtual crane. The total weight of the object to be lifted is read from the physical properties of the object's 3D model. The state synchronization module compares the real-time lifting load with the rated load value, and when the virtual crane... The real-time lifting load exceeds that of the virtual crane. When the virtual crane is loaded to the rated load defined in its lifting capacity parameters, the status synchronization module determines that an overload conflict has occurred. The status synchronization module records the virtual crane's load. The system calculates the overload value based on the virtual crane's identifier, which is the difference between the real-time lifting load and the rated load. The state synchronization module generates a state conflict event containing the virtual crane's identifier and the overload value. The structure of the state conflict event is filled with an event type of "overload conflict".

[0044] The state synchronization module will package all state conflict events generated within the current clock cycle into an event list and send the event list to the conflict resolution module through an internal message channel.

[0045] After receiving the event list, the conflict resolution module processes each state conflict event in the list one by one. The module extracts the event type field from the state conflict event structure and retrieves matching rule entries from the collaborative rule base based on the event type. The collaborative rule base is stored as a rule table in a relational database. Each record in the rule table contains a rule type field, an applicable condition field, and a resolution strategy field. When the event type is spatial interference conflict, the conflict resolution module searches for rule entries in the collaborative rule base whose rule type equals spatial interference. The module also extracts the real-time movement directions of the two interfering virtual cranes. These real-time movement directions are derived from the boom direction unit vector of the corresponding virtual crane in the state snapshot buffer and the current control command type.

[0046] The conflict resolution module determines which virtual cranes need to be paused or rolled back based on the priority right-of-way order defined in the retrieved rule entries. The priority right-of-way order is stored as a priority list in the rule entries, containing the virtual crane's role identifier and priority value. The conflict resolution module compares the role identifiers of the two interfering virtual cranes and identifies the virtual crane with the lower priority value as the one that needs to be paused or rolled back. The conflict resolution module reads the historical pose record of the virtual crane that needs to be rolled back, retrieves the pose sequence within a predetermined time step from the historical pose record, and finds the location point in the pose sequence whose minimum spatial distance to another virtual crane is greater than the safe distance threshold and has the earliest timestamp. This location point is used as the rollback path point.

[0047] When the event type is overload conflict, the conflict resolution module searches for rule entries with the rule type equal to overload in the collaborative rule base. The conflict resolution module extracts the load redistribution strategy defined in the rule entries. The load redistribution strategy includes a load increment allocation algorithm. The conflict resolution module obtains the rated load value and current real-time lifting load from the lifting capacity parameters of all remaining virtual cranes except the overloaded virtual crane. The conflict resolution module calculates the available load margin for each remaining virtual crane, which is the rated load value minus the current real-time lifting load. The conflict resolution module allocates the overload value of the overloaded virtual crane according to the proportion of the available load margin of each remaining virtual crane, generating a load increment for each remaining virtual crane. If the load increment causes the real-time lifting load of a remaining virtual crane to exceed its rated load, the conflict resolution module iteratively allocates the load until all overload is absorbed or there is no allocateable load margin. The conflict resolution module recalculates the lifting force allocation ratio of each virtual crane based on the load increment. The new lifting force allocation ratio is the sum of the current real-time lifting load of the virtual crane and the load increment divided by the total load that all virtual cranes should bear.

[0048] The conflict resolution module uses the backtracking path points corresponding to spatial interference conflicts, or the regenerated lifting force allocation ratio corresponding to overload conflicts, as conflict resolution strategies. The conflict resolution module encapsulates these strategies into messages and sends them to the collaborative scenario construction module via the system's internal data bus.

[0049] In implementation, the collaborative rule base is deployed within the system's internal rule engine service. This service listens on a specific network port to receive rule update requests from external management terminals. The collaborative rule base is stored in a structured document database. The rule documents in the database are organized using Extensible Markup Language (EXPLAIN), with each rule document corresponding to a rule entry. The data structure of a rule entry includes a rule type field, an applicable condition field, a priority right-of-way field, and a load redistribution strategy field. The priority right-of-way field stores an ordered list, where each element consists of a virtual crane role identifier and a priority integer value. The priority integer value ranges from 0 to 255, with higher values ​​indicating higher priority. The load redistribution strategy field stores the configuration parameters for the incremental load allocation algorithm, which include an allocation mode identifier and a margin ratio coefficient.

[0050] The external configuration file is a text file independent of the system executable program, stored in the configuration folder under the system installation directory, and encoded in unsigned UTF-8. The external configuration file contains rule entry modification instructions, which are key-value pair sets. Supported keys include rule type keys, priority right-of-way keys, and load redistribution strategy keys. The priority right-of-way key corresponds to a semicolon-separated virtual crane role identifier paired with a priority integer value, and the load redistribution strategy key corresponds to a pair of allocation mode identifiers and margin ratio coefficients.

[0051] Administrators open external configuration files using a text editor and add or modify priority access order and load redistribution strategies according to the rule entry modification instruction format. After the administrator saves the external configuration file, the file monitoring thread in the rule engine service detects a change in the modification timestamp of the external configuration file, triggering the configuration file reload process. The rule engine service parses the external configuration file, converting the rule entry modification instructions in the configuration file into database update operations, and updates the values ​​of the priority access order field and load redistribution strategy field in the corresponding rule document in the collaborative rule library. After the update is completed, the rule engine service sends a rule change notification to the conflict resolution module. Upon receiving the rule change notification, the conflict resolution module clears the internally cached rule entries and reloads the latest rule entries from the collaborative rule library the next time it handles a state conflict event.

[0052] After generating a conflict resolution strategy, the conflict resolution module executes a forced conflict state correction process. The module parses the content type of the conflict resolution strategy. If the strategy includes a rollback path point, it converts this path point into a forced control command for the virtual crane requiring rollback. The command type field of the forced control command is set to a composite movement command, and the command parameter field includes the 3D coordinates and movement speed of the rollback path point. If the conflict resolution strategy includes a regenerated lifting force distribution ratio, the module converts this ratio into a forced control command for the virtual crane being adjusted. The command type field of the forced control command is set to a load adjustment command, and the command parameter field includes the new lifting force distribution ratio value and adjustment rate.

[0053] The conflict resolution module adds a priority identifier to each mandatory control command. The priority identifier is generated as follows: the system-defined priority baseline value of 0 for student control commands is taken, and the priority baseline value is added to a fixed offset of 200, resulting in a priority value of 200 for the mandatory control command. A priority identifier value greater than the priority baseline value of the student control command ensures that the mandatory control command is executed first in the status queue.

[0054] The conflict resolution module obtains the identifier of the target virtual crane for which the forced control command is applied, and locates the memory address of the target virtual crane's state queue in the state synchronization module through inter-process communication. The conflict resolution module then calls the injection interface provided by the state synchronization module, passing the forced control command as a parameter. Internally, the injection interface acquires a mutex lock on the state queue and inserts the forced control command at the head of the queue while holding the mutex lock. The head of the state queue is defined as the storage unit with index 0 in the queue; the injection operation shifts the control command originally located at index 0 one storage unit towards the tail of the queue. The injection interface releases the mutex lock after completing the insertion operation.

[0055] If there are pending control instructions at the head of the state queue, and the forced control instruction written during the injection operation overwrites the head position, the execution order of the previously pending control instructions is postponed. When the state synchronization module retrieves a control instruction from the head of the state queue in the next clock cycle, it will retrieve the forced control instruction injected by the conflict resolution module.

[0056] The conflict resolution module constructs a conflict correction record data structure while injecting the forced control command. This data structure includes a conflict type field, a forced control command field, and a correction timestamp field. The conflict type field is directly copied from the event type field of the state conflict event, and its values ​​include spatial interference conflict type and overload conflict type. The forced control command field stores the complete forced control command content, including the command type, target crane identifier, and command parameters. The correction timestamp field is filled with the current time read from the global clock. The conflict resolution module sends the constructed conflict correction record to the examination evaluation module asynchronously via a point-to-point message queue, with the message queue's topic name being the conflict correction record topic.

[0057] In specific implementation, please refer to Figure 3 Upon receiving the examination mode activation command, the examination evaluation module obtains a signal indicating that the examination mode flag is true from the system main control module. The examination evaluation module initializes a global recording thread, which is an independent execution path running in the background, parallel to the main rendering thread. During initialization, the global recording thread registers a control command listener callback function with the operation data acquisition module and a conflict correction record listener callback function with the conflict resolution module. The control command listener callback function is triggered each time the operation data acquisition module generates a control command, which is passed as input to the global recording thread's circular buffer. The conflict correction record listener callback function is triggered each time the conflict resolution module sends a conflict correction record, which is passed as input to the same circular buffer. The circular buffer is a fixed-size memory area with a capacity of 10,000 records. Each record occupies one storage slot, which contains a data type flag, a timestamp field, and a data payload pointer.

[0058] The global recording thread continuously monitors newly written records in the circular buffer. When the write pointer and read pointer of the circular buffer are not equal, the global recording thread retrieves a record from the read pointer position. The global recording thread checks the data type flag of the record. If the data type flag indicates a control instruction type, the global recording thread reads all fields of the control instruction from the memory address pointed to by the data payload pointer. The control instruction fields include the instruction issuance time, instruction type, target crane identifier, and instruction parameters. The instruction issuance time is the moment read from the global clock when the operation data acquisition module captures the control instruction. The instruction type is one of hoisting, slewing, or luffing instruction types. The target crane identifier is the unique number of the virtual crane. Instruction parameters include the target speed value or target displacement value. If the data type flag indicates a conflict correction record type, the global recording thread reads the conflict type field, forced control instruction field, and correction timestamp field of the conflict correction record from the memory address pointed to by the data payload pointer.

[0059] The examination and evaluation module maintains an operation timing chain data structure in memory. The operation timing chain is a doubly linked list, and the list nodes are arranged in chronological order. Each record retrieved from the circular buffer is converted into an operation timing chain node. The operation timing chain node stores the instruction issuance time, instruction type field, target crane identifier field, and instruction parameter field. If the record source is a conflict correction record, the instruction type field of the operation timing chain node is filled with the instruction type of the forced control instruction, and the instruction parameter field is filled with the instruction parameters of the forced control instruction. The global recording thread obtains the tail node of the operation timing chain and compares the timestamp of the tail node with the timestamp of the new record. If the timestamp of the new record is greater than or equal to the timestamp of the tail node, the global recording thread appends the new node to the tail of the operation timing chain; if the timestamp of the new record is less than the timestamp of the tail node, the global recording thread traverses backward from the tail node to find the position where the new node should be inserted and performs the linked list insertion operation.

[0060] The examination and evaluation module synchronously receives the pose update message of the object to be lifted from the collaborative scene construction module. This message includes a timestamp and the object's six-DOF pose in the world coordinate system. The module detects the object's six-DOF pose. When the positional deviation between the object's position and the final pose set in the teaching task is less than a preset positioning completion threshold, and the attitude deviation between the object's attitude and the final attitude set in the teaching task is less than a preset attitude completion threshold, the module determines the lifting operation is complete. The positioning completion threshold is set to 0.05 meters, and the attitude completion threshold is set to 1.0 degree. The module extracts all nodes from the operation sequence chain from the start of the examination to the completion of the lifting operation, marking the extracted node sequence as complete operation process data. The module serializes this complete operation process data into a JSON array, where each element corresponds to an operation sequence chain node. The serialized complete operation process data is then written to the examination record table in the examination database via a database driver.

[0061] In one implementation, the examination and assessment module initiates a scoring process, extracting measured values ​​corresponding to multiple scoring dimensions from the complete operation process data. The measured value for the operation time dimension is the difference in seconds between the command issuance time of the last record and the command issuance time of the first record in the complete operation process data. The measured value for the path smoothness dimension is the ratio of the total path length of the actual movement trajectory of the object to be lifted to the ideal straight path length. The total path length is obtained by summing the moduli of the differences in the position vectors of the object to be lifted at each time step in the complete operation process data. The measured value for the conflict count dimension is the total number of conflict correction records in the complete operation process data. The measured value for the load balance dimension is the time average of the standard deviation of the real-time lifting load of each virtual crane at each time step. The measured value for the final positioning accuracy dimension is the Euclidean distance between the position of the object to be lifted and its final pose at the moment the lifting operation is completed.

[0062] The examination assessment module sets a membership function for each scoring dimension. The membership function for the operation time dimension uses a trapezoidal membership function, with the four inflection point parameters set as follows: ,in, The minimum possible completion time is set to 50% of the operation time corresponding to the standard operation template. The optimal operation time is set to 90% of the operation time corresponding to the standard operation template. The upper limit for a qualified operation time is set at 110% of the operation time corresponding to the standard operation template. The maximum allowed operation time is set to 150% of the operation time corresponding to the standard operation template. The membership function for the path smoothness dimension uses a triangular membership function, with the three vertex parameters set as follows: Vertex 1.0 corresponds to a perfectly smooth ideal path, and vertex 1.8 corresponds to the maximum allowed path ratio. The membership function for the conflict count dimension uses a triangular membership function, with the three vertex parameters set to... In this context, vertex 0 represents zero conflict as the optimal state, and vertex 3 represents three conflicts as an acceptable upper limit. The membership function for the load balance dimension uses a triangular membership function, with the three vertex parameters set as follows: Where vertex 0 represents perfect balance, and vertex 0.3 represents the maximum allowable load deviation coefficient. The membership function for the final positioning accuracy dimension adopts a trapezoidal membership function, with the four inflection point parameters set as follows: Wherein, 0 meters is the ideal positioning accuracy, 0.02 meters is the excellent positioning accuracy, 0.05 meters is the qualified positioning accuracy, and 0.10 meters is the maximum permissible position deviation.

[0063] The assessment module substitutes the measured values ​​for each scoring dimension into the corresponding membership function to calculate the membership value of the measured value to each evaluation level. The evaluation levels are divided into four categories: Excellent, Good, Pass, and Fail. The membership function outputs a membership value for each level, with the value ranging from 0 to 1. The measured values ​​for the operation time dimension, after being calculated using the trapezoidal membership function, generate a fuzzy evaluation vector containing four membership values. The measured values ​​for the path smoothness, collision count, load balance, and final positioning accuracy dimensions are each calculated using their respective membership functions, generating a fuzzy evaluation vector containing four membership values ​​for each dimension. These five fuzzy evaluation vectors form a fuzzy evaluation matrix.

[0064] The examination assessment module reads the preset weight vector from the system configuration file. Defined as:

[0065]

[0066] in, The dimension weight vector is a five-element ordered real number array. This represents the weighting coefficient for the time dimension of the operation. It is a real number ranging from 0 to 1, and is set by the instructor based on the importance of the time element in the teaching task. For example, when the teaching task emphasizes work efficiency... The value should be 0.30, otherwise... The value is 0.15; The weight coefficient representing the path smoothness dimension is a real number ranging from 0 to 1. It is set by the instructor based on the operational stability requirements in the teaching task, and the value is 0.20. The weighting coefficient represents the number of conflicts, and its value is a real number between 0 and 1. It is set by the instructor based on the safety operation requirements in the teaching task. When the teaching task is basic training... The value is 0.30 when the teaching task is advanced training. The value is 0.20; The weighting coefficient for the load balance dimension is a real number between 0 and 1, set by the instructor according to the load distribution requirements in the teaching task, with a value of 0.15. This represents the weighting coefficient for the final positioning accuracy dimension, a real number ranging from 0 to 1, set by the instructor based on the positioning accuracy requirements in the teaching task, and a value of 0.20; and it satisfies... .

[0067] The examination assessment module performs fuzzy composition operations, combining the fuzzy evaluation matrix with the weight vector. A fuzzy transformation is performed. The fuzzy transformation uses a weighted average fuzzy synthesis operator. This operator performs a scalar multiplication operation between each weight coefficient in the weight vector and the corresponding fuzzy evaluation vector in the fuzzy evaluation matrix. Then, all the scalar multiplication results are summed according to the evaluation level components to generate a comprehensive evaluation vector. The comprehensive evaluation vector includes excellent, good, satisfactory, and unsatisfactory level components.

[0068] The exam assessment module extracts the final score level from the comprehensive evaluation vector based on the principle of maximum membership. It compares the four level components in the comprehensive evaluation vector and selects the level corresponding to the component with the highest value as the final score level. If two or more level components have the same maximum value, the module prioritizes the higher-ranked level, with the ranking from highest to lowest as Excellent, Good, Pass, and Fail. The module converts the final score level into a percentage score, with the following mapping: Excellent to 95 points, Good to 82 points, Pass to 68 points, and Fail to 45 points. The module then displays the percentage score as the exam result in the score display area of ​​the user interface via a display function.

[0069] In practice, the dynamic adjustment of the membership function parameters is executed by the parameter optimization submodule built into the examination and assessment module. (See also...) Figure 4 The parameter optimization submodule is triggered after each exam cycle ends. It queries the exam database for all historical exam data from the most recently completed statistical cycle. The statistical cycle is defined as a fixed time window tracing back from the current moment. The length of the time window is determined by the statistical cycle days parameter in the system configuration file. This parameter is set by the system administrator based on the training phase divisions of the student group within the training cycle, with a typical setting of 30 days.

[0070] The parameter optimization submodule extracts the measured values ​​and final rating levels for each scoring dimension for each exam record from historical exam data. The measured values ​​include operation time, path ratio, number of collisions, mean standard deviation of load, and positioning deviation. The final rating level is determined by manual evaluation or provided by the existing scoring system. The parameter optimization submodule divides the extracted data into a sample set, where each sample contains the measured value for one scoring dimension and its corresponding rating label.

[0071] The parameter optimization submodule performs cluster analysis on the sample set using the expectation-maximization algorithm for each rating dimension, grouping samples with the same rating label into one class. Taking the operation time dimension as an example, the submodule selects the measured operation time values ​​of all samples with the rating label "Excellent" to form the Excellent rating sample set; similarly, it selects Good, Pass, and Fail rating sample sets. The submodule then calculates the mean of the Excellent rating sample set. and standard deviation The mean of the good grade sample set and standard deviation The mean of the qualified grade sample set and standard deviation .

[0072] The parameter optimization submodule updates the inflection point parameters of the trapezoidal or triangular membership function based on the mean and standard deviation of the sample sets at each level. For the trapezoidal membership function in the operation time dimension, the updated parameter calculation formula is as follows:

[0073]

[0074] in, This indicates the inflection point of the optimal operation time after the update, in seconds; This represents the average of the measured operation times for the excellent-level sample set. The standard deviation of the measured operation time values ​​for the excellent-level sample set; For the regulating factor, the regulating factor The value of is a real number between 0.5 and 1.5, and the adjustment factor is... The value is set by the system administrator according to the leniency of the scoring criteria; when the scoring criteria are required to be more lenient... The value is 1.0, when the scoring criteria are more stringent. The value is 0.5, and the adjustment factor is... The default value is set to 0.8. Updated to Multiply by 0.7, Updated to Plus , Updated to Multiply by 1.3.

[0075] For the triangular membership function of path smoothness dimension, the parameter optimization submodule updates the vertex parameters, setting the optimal vertex to the mean of the path ratios of the excellent-level sample set, and setting the acceptable upper limit vertex to the mean of the path ratios of the qualified-level sample set plus twice the standard deviation. For the triangular membership function of conflict count dimension, the parameter optimization submodule fixes the optimal vertex at 0, and updates the acceptable upper limit vertex to the rounded-up mean of the conflict counts of the qualified-level sample set. For the triangular membership function of load balance dimension, the parameter optimization submodule fixes the optimal vertex at 0, and updates the acceptable upper limit vertex to the mean of the load standard deviations of the qualified-level sample set plus one standard deviation. For the trapezoidal membership function of final positioning accuracy dimension, the parameter optimization submodule updates the inflection point of excellent positioning accuracy to the mean of the positioning deviations of the excellent-level sample set, updates the inflection point of qualified positioning accuracy to the mean of the positioning deviations of the good-level sample set, and updates the inflection point of maximum permissible position deviation to the mean of the positioning deviations of the qualified-level sample set plus twice the standard deviation.

[0076] The parameter optimization submodule writes the updated membership function parameters into the membership parameter section of the system configuration file, overwriting the original parameter values. In the subsequent scoring process, the examination and evaluation module reads the updated membership function parameters from the system configuration file to construct the membership function, completing a multi-dimensional score of the operation process data.

[0077] After outputting the exam results, the exam evaluation module initiates the exam review data generation process. Through a database query interface, the module uses the unique identifier of the exam record as the query condition to read the corresponding complete operation process data from the exam record table in the exam database. Simultaneously, the module loads a preset standard operation template from the teaching task configuration. The standard operation template is a pre-recorded ideal operation sequence. Its data structure is identical to the complete operation process data, containing a sequence of instructions arranged chronologically. Each instruction in the standard operation template includes the instruction issuance time, instruction type, target crane identifier, and instruction parameters.

[0078] The assessment module compares the instruction sequence in the complete operation process data with the instruction sequence in the standard operation template instruction by instruction. The comparison process uses a dynamic time warping algorithm for time axis alignment, and the aligned instruction pairs are matched one-to-one according to time correspondence. The assessment module compares the instruction type field, target crane identifier field, and instruction parameter field for each matched instruction pair. When the instruction type field, the target crane identifier field, or the numerical deviation in the instruction parameter field differs, the assessment module determines the instruction to be a discrepancy instruction. The instruction parameter tolerance range is set in the system configuration file: the tolerance range for hoisting instructions is 5% of the target speed value, the tolerance range for slewing instructions is 5% of the target angular velocity value, and the tolerance range for luffing instructions is 5% of the target angular velocity value. The assessment module copies the instruction record from the complete operation process data determined to be a discrepancy instruction to a discrepancy instruction list. Each record in the discrepancy instruction list contains the occurrence time, instruction type, target crane identifier, and instruction parameters of the discrepancy instruction.

[0079] The examination and assessment module iterates through each difference instruction record in the difference instruction list and extracts the occurrence time field of the difference instruction. The examination and assessment module then sends a 3D scene snapshot request to the collaborative scene construction module, which includes the occurrence time of the difference instruction. The collaborative scene construction module internally maintains a historical scene state cache, using timestamps as keys to store the pose information of all objects in the scene and the joint states of the virtual crane for each clock cycle. Based on the occurrence time in the request, the collaborative scene construction module performs a recent time point lookup in the historical scene state cache, extracts the corresponding scene state data, and renders the scene state data into a 3D scene snapshot image. The resolution of the 3D scene snapshot image is 1920 pixels by 1080 pixels, and the image format is Portable Network Graphics. The collaborative scene construction module returns the 3D scene snapshot image to the examination and assessment module.

[0080] After collecting all 3D scene snapshots corresponding to the difference instructions in the difference instruction list, the examination assessment module treats the entire difference instruction list as an Extensible Markup Language (XML) file. It then places all the 3D scene snapshot image files into the same directory and uses a compression algorithm to package the difference instruction list file and the 3D scene snapshot image directory into a compressed archive file in ZIP format. This compressed archive file is the examination review data. The examination assessment module pushes the examination review data to a designated receiving address on the display terminal (a tablet computer running a browser application) via Hypertext Transfer Protocol. Upon receiving the examination review data, the display terminal calls the compression file decompression component to decompress the data and arranges the difference instructions and their corresponding 3D scene snapshots chronologically in the graphical user interface.

[0081] In one implementation, the multi-crane collaborative operation simulation teaching platform integrates a multi-crane collaborative operation simulation teaching system, a virtual reality display device, a force feedback control console, and a results printing terminal. The virtual reality display device is a head-mounted display helmet. The helmet receives the 3D model generated by the collaborative scene construction module and the real-time status updated by the status synchronization module via a high-definition multimedia interface cable. It renders the 3D model and real-time status as a stereoscopic visual image with left and right eye parallax, presenting an immersive 3D scene to the learner. The force feedback control console includes two sets of operating handles and a base. The operating handles are equipped with servo motors and position sensors. The position sensors collect the learner's hand movements of pushing, pulling, and rotating the operating handles, encoding the control commands into digital signals and sending them to the operation data acquisition module via a universal serial bus. The force feedback control console also listens for forced control commands sent by the conflict resolution module. When a forced control command is received, the control board of the force feedback control console supplies a reverse current to the servo motor of the corresponding operating handle, generating a damping force opposite to the learner's operating direction. The magnitude of the damping force is proportional to the adjustment amount in the forced control command. The score printing terminal is a thermal printer. It receives the exam scores and exam review data output by the exam evaluation module via a wireless network. The score printing terminal has a built-in format template. The number of difference instructions and conflict types in the exam scores and exam review data are filled into the format template, and a paper exam report is printed out.

[0082] The foregoing has provided a detailed description of one embodiment of the present invention, but this description is merely a preferred embodiment and should not be construed as limiting the scope of the invention. All equivalent variations and modifications made within the scope of the claims of this invention should still fall within the patent coverage of this invention.

Claims

1. A multi-crane cooperative work simulation teaching system, characterized by, include: The collaborative scene construction module is used to generate the initial poses of multiple virtual cranes and the 3D models of the objects to be lifted according to the teaching tasks, and to establish the motion constraint relationships between the virtual cranes. The operation data acquisition module is used to capture the trainees' control commands for each virtual crane in real time and generate the action sequence of each virtual crane. The state synchronization module is used to update the real-time state of each virtual crane in an event-driven manner based on the action sequence and motion constraint relationship, and to detect state conflict events. The conflict resolution module is used to resolve conflict events based on a preset collaborative rule base when a state conflict event is detected, generate a conflict resolution strategy, and forcibly correct the conflict state. The examination assessment module is used to collect complete operation process data of trainees in examination mode, score the operation process data in multiple dimensions based on fuzzy comprehensive evaluation matrix, and output the examination results. The state synchronization module uses an event-driven approach to update the real-time status of each virtual crane, specifically as follows: The state synchronization module establishes an independent state queue for each virtual crane, and the state queue stores the control instructions in the action sequence in timestamp order. The state synchronization module sets a global clock. When the global clock reaches the trigger time of any control command, the state synchronization module retrieves the control command from the corresponding state queue. The state synchronization module calculates the expected pose change of the corresponding virtual crane according to the control command, and updates the real-time position and real-time attitude of the virtual crane in combination with the lifting force distribution ratio in the motion constraint relationship. The state synchronization module broadcasts the updated real-time position and real-time attitude to the conflict resolution module. The forced correction of conflict states in the conflict resolution module specifically refers to: The conflict resolution module converts the conflict resolution strategy into a mandatory control command for a specific virtual crane. The mandatory control command includes a priority identifier, which is higher than the student control command captured by the operation data acquisition module. The conflict resolution module directly injects the forced control command into the head of the status queue of the corresponding virtual crane, overwriting the original control commands waiting to be executed in the queue. The conflict resolution module also sends a conflict correction record to the examination assessment module. The conflict correction record includes the conflict type, the forced control instruction, and the correction timestamp.

2. The multi-crane coordinated operation simulation teaching system according to claim 1, characterized in that, The establishment of motion constraint relationships between virtual cranes in the collaborative scenario construction module specifically includes: The collaborative scenario construction module obtains the degree-of-freedom parameters and lifting capacity parameters of each virtual crane; The collaborative scene construction module extracts the centroid position and lifting point distribution of the object based on the three-dimensional model of the object to be lifted; The collaborative scene construction module uses the centroid position as a reference to spatially match the hook movement range of each virtual crane with the lifting point distribution, thereby generating the lifting force distribution ratio between each virtual crane. The collaborative scenario construction module encodes the degree-of-freedom parameters, hoisting capacity parameters, and hoisting force distribution ratio into motion constraint relationships, and sends the motion constraint relationships to the state synchronization module.

3. The multi-crane collaborative operation simulation teaching system according to claim 2, characterized in that, The detection of state conflict events in the state synchronization module specifically refers to: The state synchronization module calculates the minimum spatial distance between any two virtual cranes based on their real-time position and attitude. The state synchronization module compares the minimum spatial distance with a preset safe distance threshold. When the minimum spatial distance is less than the safe distance threshold, the state synchronization module determines that a spatial interference conflict has occurred, records the identification number and current timestamp of the two virtual cranes that are interfering, and generates a state conflict event containing the identification number and current timestamp; When the real-time lifting load of any virtual crane exceeds the rated load defined in the lifting capacity parameters, the state synchronization module determines that an overload conflict has occurred and generates a state conflict event containing the virtual crane's identifier and the overload value. The state synchronization module sends all state conflict events to the conflict resolution module.

4. The multi-crane collaborative operation simulation teaching system according to claim 3, characterized in that, The conflict resolution module's method of resolving conflict events based on a preset collaborative rule base specifically includes: The conflict resolution module retrieves matching rule entries from the collaborative rule base based on the type of state conflict event. For spatial interference conflicts, the conflict resolution module extracts the real-time movement directions of the two virtual cranes that are interfering, determines the virtual crane that needs to be paused or retreated according to the priority right-of-way defined in the rule entries, and calculates its retreat path point. For overload conflicts, the conflict resolution module calculates the load increment of the remaining virtual cranes according to the load redistribution strategy defined in the rule entries, and regenerates the lifting force distribution ratio. The conflict resolution module uses the fallback path point or the regenerated hoisting force allocation ratio as the conflict resolution strategy, and sends the conflict resolution strategy to the collaborative scenario construction module.

5. A multi-crane collaborative operation simulation teaching system according to claim 4, characterized in that, The collaborative rule base is a dynamically expandable rule base that supports adding or modifying priority passage order and load redistribution strategies in rule entries through external configuration files.

6. The multi-crane collaborative operation simulation teaching system according to claim 5, characterized in that, The collection of complete operation process data from trainees in the examination assessment module specifically includes: The examination assessment module starts a global recording thread in examination mode. The global recording thread continuously listens to all control commands output by the operation data acquisition module and all conflict correction records output by the conflict resolution module. The examination and evaluation module concatenates the control commands and conflict correction records into an operation sequence chain in chronological order. The elements in each operation sequence chain include the command issuance time, command type, target crane identifier, and command parameters. The examination and evaluation module marks the operation timing chain corresponding to the entire motion of the object to be hoisted from the initial pose to the final pose as complete operation process data, and stores the complete operation process data in the examination database.

7. A multi-crane collaborative operation simulation teaching system according to claim 6, characterized in that, The examination assessment module's multi-dimensional scoring of the operation process data based on the fuzzy comprehensive evaluation matrix specifically includes: The examination evaluation module extracts multiple scoring dimensions from the complete operation process data. These multiple scoring dimensions include operation time, path smoothness, number of collisions, load balance, and final positioning accuracy. The examination assessment module sets a membership function for each scoring dimension and converts the measured values ​​on each dimension into fuzzy evaluation vectors through the membership function; The examination evaluation module performs fuzzy synthesis operation on the fuzzy evaluation vectors of each scoring dimension and the preset weight vectors to generate a comprehensive evaluation vector. The examination assessment module extracts the final rating level from the comprehensive evaluation vector according to the principle of maximum membership, and converts the final rating level into a percentage score for output.

8. A multi-crane collaborative operation simulation teaching platform, characterized in that, include: A multi-crane collaborative operation simulation teaching system according to any one of claims 1 to 7; Virtual reality display devices are used to receive the 3D model generated by the collaborative scene building module and the real-time status updated by the status synchronization module, and present stereoscopic visual images to trainees; The force feedback control panel is used to collect the student's control commands and send the control commands to the operation data acquisition module. At the same time, it receives the forced control commands generated by the conflict resolution module and applies a reverse damping force to the control handle. The score printing terminal is used to receive exam scores and exam review data output by the exam assessment module and generate exam reports.

Citation Information

Patent Citations

  • Method and device suitable for simulating distributed object state synchronization

    CN116225637A

  • Method for evaluating performance of component type mobile charging and discharging facility based on cloud model

    CN118657429A

  • Multi-crane collaborative operation simulation platform and examination system

    CN120452282A

  • Crane group suspension arm anti-collision early warning method and system based on digital twinning

    CN122102005A