Dynamic scheduling control system based on double-platform plate-dividing and plate-placing driving
The dynamic scheduling and control system solves the problems of load imbalance and path conflict in the dual-platform PCB tray system, achieving load balancing, path synchronization and resource optimization, improving production efficiency and safety, and is suitable for PCB tray operations in industries such as electronics, food and pharmaceuticals.
Patent Information
- Application Number
- CN202511710621.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-11-20
- Publication Date
- 2026-02-10
AI Technical Summary
The existing dual-platform PCB tray system cannot effectively schedule when faced with unbalanced loads and path conflicts, resulting in wasted equipment resources, extended production cycles, and equipment damage, making it difficult to meet the needs of high-speed, multi-batch production.
A dynamic scheduling and control system based on dual-platform split-board tray drive is adopted, including a dual-platform collaborative drive module, a dynamic path planning module, a conflict detection module, a weight allocation module, and a dual-platform synchronization control module. Through real-time load difference calculation, path topology graph generation, conflict path marking, and dynamic scheduling weight allocation, a tray drive instruction set for phased execution is generated to achieve platform load balancing and path synchronization.
It improves operational efficiency, optimizes resource allocation, ensures operational safety, enhances system flexibility, adapts to the processing needs of different batches and types of materials, reduces equipment damage and production interruptions, and improves the coordination and reliability of the production process.
Smart Images

Figure CN121508370A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of automation control technology, specifically to a dynamic scheduling and control system based on a dual-platform split-plate swivel drive. Background Technology
[0002] In modern manufacturing, PCB depaneling and traying is a crucial link in material handling and production process integration, widely used in fields such as electronic component assembly, food processing, and pharmaceutical packaging. With the continuous expansion of production scale and the increasing variety of products, traditional single-platform PCB depaneling and traying systems have gradually revealed problems such as low efficiency and insufficient flexibility, making it difficult to meet the current demands of high-speed, multi-batch production.
[0003] To improve processing capacity, some companies have begun to adopt dual-platform or multi-platform collaborative operation models. However, most existing dual-platform systems lack effective dynamic scheduling mechanisms during operation. After obtaining the material distribution coordinates, they typically only generate drive instructions according to a preset fixed path, unable to flexibly adjust based on real-time load changes between the two platforms. When the load on the first and second platforms becomes unbalanced, it can easily lead to one platform operating at full capacity while the other has a significant amount of idle time, resulting in wasted equipment resources and extending the overall tray sorting and stacking operation cycle.
[0004] Furthermore, in dual-platform cross-operation scenarios, the lack of precise conflict detection and handling methods often leads to spatiotemporal overlap in the movement paths of the two platforms. Once a path conflict occurs, it not only causes deviations in material placement, affecting the normal operation of subsequent production processes, but in severe cases, it can also trigger collisions in the platform's mechanical structure, causing equipment damage and production interruptions. Simultaneously, existing systems cannot reasonably allocate weights based on the priority of materials with different properties. When high-priority materials conflict with ordinary materials in terms of processing order, it is difficult to ensure the timely processing of high-priority materials, further reducing the overall coordination and reliability of the production process. These problems severely restrict the application effect and promotion scope of dual-platform tray-stacking systems, becoming a key challenge that urgently needs to be addressed in the current manufacturing industry's efforts to improve production efficiency. Summary of the Invention
[0005] The purpose of this invention is to provide a dynamic scheduling and control system based on a dual-platform split-board swivel drive to solve the problems mentioned in the background art.
[0006] To achieve the above objectives, the present invention provides a dynamic scheduling and control system based on a dual-platform split-board swivel drive, the system comprising: Dual-platform collaborative drive module: By dividing the physical space of the first platform and the second platform, the module obtains the material distribution coordinate sequence in the respective partition area and generates the initial drive command for partition tray placement based on the coordinate sequence. Dynamic path planning module: Based on the real-time load difference between the first platform and the second platform, calculate the dynamic balance threshold between the two platforms, and generate the cross path topology map of the board stacking based on the initial drive command; Conflict detection module: Marks the spatiotemporal overlap areas of all plate-setting paths in the cross-path topology map, and extracts the start coordinates and end timestamp of conflict path segments; Weight allocation module: Based on the priority of material attributes of conflicting path segments and the current execution efficiency of the platform, assign dynamic scheduling weight coefficients to each conflicting path segment; Instruction Reconstruction Module: Based on dynamic scheduling weight coefficients, the initial drive instructions are reconstructed in layers to generate a set of swivel drive instructions to be executed in stages; Dual-platform synchronous control module: Adjusts the drive timing of the first and second platforms respectively according to the swivel drive instruction set, so that the swivel actions of the two platforms can be synchronously calibrated within the time window.
[0007] Preferably, the method for calculating the dynamic balance threshold includes: Obtain the number of trays completed by the first and second platforms per unit time, and calculate the difference between the two platforms as the load baseline. The load baseline fluctuation range of the two platforms during the historical scheduling cycle is statistically analyzed, and the median of the fluctuation range is taken as the dynamic balancing threshold.
[0008] Preferably, the process of generating the cross-path topology map includes: Map the plate-setting path of the first platform to the first edge set of the directed graph, and map the plate-setting path of the second platform to the second edge set of the directed graph. Detect the spatial intersections of all edges in the first and second edge sets, and bind the coordinates of the intersections to the timestamps of the corresponding edges to form spatiotemporal intersection nodes; Using the spatiotemporal intersection node as the dividing point, the first edge set and the second edge set are re-divided to generate a path topology graph containing intersection relationships.
[0009] Preferably, the method for marking the conflicting path segments includes: Traverse all spatiotemporal intersection nodes in the intersection path topology graph and calculate the time interval between adjacent nodes; If the time interval is less than the minimum safe interval for plate sorting, the corresponding path segment will be marked as a conflict path segment, and the platform identifier to which the path segment belongs will be recorded.
[0010] Preferably, the method for allocating the dynamic scheduling weight coefficients includes: Calculate the influence factor of each attribute based on the size, weight, and material properties of the materials in the conflict path segment; The initial weights of conflict path segments are obtained by multiplying the influence factors of each attribute by the current board-setting efficiency of the corresponding platform. The initial weights are normalized so that the sum of the weight coefficients of all path segments within the same conflict area is 1.
[0011] Preferably, the execution process of the hierarchical reconstruction includes: Arrange the swivel drive instruction set in descending order according to the dynamic scheduling weight coefficient to generate a priority queue; Extract the top N instructions with the highest weight coefficients from the priority queue as the first-level execution instructions, and the remaining instructions as deferred execution instructions; After the first-level instruction is executed, it checks whether the conflicting path segment corresponding to the delayed execution instruction has been resolved. If not, the weight coefficients are reassigned.
[0012] Preferably, the method for implementing the synchronous calibration includes: Before the plate-splitting action of the first and second platforms is started, the initial values of the encoders of the drive motors of the two platforms are obtained. Based on the time window requirements of the oscillating disk drive instruction set, the theoretical increment of the encoders on both platforms is calculated. During the execution of the action, the deviation between the actual increment and the theoretical increment of the encoder is compared in real time, and the pulse frequency of the drive motor is adjusted by the PID controller.
[0013] Preferably, the process of obtaining the initial value of the drive motor encoder includes: Send zero-point reset commands to the drive motors of the first and second platforms, and record the absolute position data fed back by the encoder; The absolute position data is converted into relative coordinates based on the starting point of the plate-setting process, which are then used as the initial values for the encoder.
[0014] Preferably, the method for generating the material distribution coordinate sequence includes: The visual sensor acquires material images within the partition area and identifies the coordinates of the center point of the outline of all materials in the image. Based on the mapping relationship between the center point coordinates of the outline and the plate-stacking grid, the row and column index sequence of the material in the grid is generated.
[0015] Preferably, the construction process of the partitioned tray grid includes: Using the boundaries of the partitioned areas of the first and second platforms as a reference, equally spaced virtual meshes are divided. Each grid cell is assigned a unique row and column identifier, and the physical coordinates of the grid cell are bound to the identifier to form an addressable trolley space matrix.
[0016] Compared with the prior art, the beneficial effects of the present invention are: This dynamic scheduling and control system based on dual-platform split-board tray drive effectively solves many problems existing in the current dual-platform split-board tray system through the synergistic effect of various modules, and shows significant advantages in improving work efficiency, optimizing resource allocation, ensuring work safety, and enhancing system flexibility.
[0017] In terms of improving operational efficiency, the dual-platform collaborative drive module in the system can acquire the material distribution coordinate sequence within the partitioned areas of the two platforms respectively, and generate the initial drive command for partitioned tray placement based on this. This enables the two platforms to process materials in their respective areas synchronously, avoiding the bottleneck problem of single-platform operation. At the same time, the dynamic path planning module calculates the dynamic balance threshold based on the real-time load difference between the two platforms, and generates the cross-path topology map of partitioned tray placement in combination with the initial drive command. This ensures that the load of the two platforms can always be kept in a relatively balanced state, avoiding the situation where some platforms are idle and others are overloaded due to uneven load. This significantly shortens the overall operation cycle and increases the material processing volume per unit time.
[0018] In terms of optimizing resource allocation, the weight allocation module assigns a dynamic scheduling weight coefficient to each conflicting path segment based on the material attribute priority and the platform's current execution efficiency. This design allows the system to prioritize high-priority materials when faced with materials of different attributes, while also rationally allocating tasks based on platform execution efficiency, thus avoiding ineffective resource occupation. For example, when a high-priority precision electronic component conflicts with a regular plastic casing on the processing path, the system assigns a higher weight to the path segment carrying the precision electronic component, ensuring its priority completion of the tray placement operation, guaranteeing the timely flow of critical materials, and improving the coordination of the entire production process.
[0019] To ensure operational safety, the conflict detection module accurately marks the spatiotemporal overlap areas of all tray placement paths in the cross-path topology map and extracts the start coordinates and end timestamps of conflicting path segments, identifying potential path conflict risks in advance. Subsequently, the instruction refactoring module performs hierarchical refactoring of the initial drive instructions based on dynamic scheduling weight coefficients, generating a set of tray placement drive instructions to be executed in stages. This fundamentally avoids path intersections and collisions between the two platforms during movement, effectively protecting the mechanical structure of the equipment, reducing production interruptions caused by equipment damage, and ensuring the stable and orderly operation of tray placement.
[0020] In terms of enhancing system flexibility, the dual-platform synchronous control module can adjust the drive timing of the first and second platforms respectively according to the tray-stacking drive instruction set, enabling the tray-stacking actions of the two platforms to complete synchronous calibration within the time window. This function allows the system to quickly adapt to the processing needs of different batches and types of materials. Whether the material distribution density changes or the material attribute priority is adjusted, the system can maintain a stable operating state by dynamically adjusting the drive instructions and platform timing. In addition, the various modules of the entire system have good synergy and scalability, and can be flexibly adjusted and upgraded according to changes in actual production scenarios. It is suitable for the tray-stacking operation needs of multiple industries such as electronics, food, and pharmaceuticals, further expanding the application scope of the system. Attached Figure Description
[0021] Figure 1 Synchronous control error diagram; Figure 2 This is a flowchart illustrating the working principle of the dynamic equilibrium threshold calculation method. Figure 3 A flowchart illustrating the working principle of the cross-path topology graph generation process; Figure 4 This is a comparison chart of the efficiency of the two platforms. Detailed Implementation
[0022] 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.
[0023] Please see Figure 1 This invention provides a dynamic scheduling and control system based on a dual-platform, split-board, tray-driven system. The system includes: a dual-platform collaborative driving module, a dynamic path planning module, a conflict detection module, a weight allocation module, an instruction reconfiguration module, and a dual-platform synchronization control module. Specific implementation methods are as follows: The dual-platform collaborative drive module acquires the material distribution coordinate sequence within its respective partitioned area via the physically divided first and second platforms. This material distribution coordinate sequence represents the precise positional information of the materials within the partitioned area. Based on the material distribution coordinate sequence, the system generates initial drive commands to guide the initial movement of the partitioned tray robotic arm or conveyor mechanism. The dynamic path planning module receives the initial drive commands and calculates the real-time load difference between the first and second platforms. This real-time load difference is reflected by parameters such as the amount of material processed per unit time or the current load of the platform drive motor. The calculated real-time load difference is compared with a dynamic balance threshold, which reflects the allowable range of load difference between the two platforms. Combined with the initial drive commands, the system generates a cross-path topology map, depicting the spatial relationships and temporal intersections of all possible movement paths of the first and second platforms. The conflict detection module performs in-depth analysis of the cross-path topology map, identifying all areas where paths may overlap spatially and intersect temporally. These areas are marked as spatiotemporally overlapping areas, and specific conflict path segments are extracted from them. Each conflict path segment is associated with a start coordinate and an end timestamp. The weight allocation module calculates and assigns a dynamic scheduling weight coefficient to each conflicting path segment based on the attributes of the materials involved, such as material size, weight, and material properties, and the current execution efficiency indicators of the first and second platforms. The instruction reconfiguration module uses this dynamic scheduling weight coefficient to reconfigure the initial drive instructions, decomposing the potentially concurrent instruction sequence into a hierarchical structure with a sequential execution order, generating a staged set of swivel drive instructions. The dual-platform synchronization control module ultimately receives the swivel drive instruction set and adjusts the control timing of the drive motors or actuators on the first and second platforms to ensure precise synchronization of the swivel actions on both platforms within a preset time window.
[0024] Example 1: See Figure 2The calculation of the dynamic balancing threshold is a fundamental step in the dynamic path planning module's load balancing scheduling. The system continuously monitors the number of trays completed on the first and second platforms per unit time. The statistics of tray completion rely on photoelectric sensors installed on the end effectors of each platform or the capture of command completion signals from the platform controller. The photoelectric sensor generates a pulse signal after material is successfully picked up and placed at the target location; the control system's counter records this pulse signal. The command completion signal originates from the feedback message sent by the platform controller to the main control system after successfully executing a motion command. The system uses a fixed time window, such as a five-second sliding window, to count the number of trays completed on the first and second platforms within this window. The arithmetic difference between the number of trays completed on the first and second platforms is calculated; this difference is defined as the load baseline. The load baseline is a positive or negative value; a positive load baseline indicates that the first platform completes more trays than the second platform, while a negative load baseline means that the second platform completes more trays than the first platform. The absolute value of the load baseline directly reflects the degree of imbalance in workload between the two platforms over a short period of time.
[0025] To determine a reasonable dynamic balancing threshold, the system needs to analyze historical operating data to establish a load fluctuation model under normal conditions. The historical scheduling cycles are selected to cover different production batches and material types to ensure data representativeness. A complete historical scheduling cycle begins with a complete production order and ends when all palletizing tasks within the order are completed. The system records the continuous change curve of the load baseline within each historical scheduling cycle. For each historical scheduling cycle, the load baseline curve is analyzed to find the maximum and minimum values of the load baseline within that cycle. The interval between the maximum and minimum values is the load baseline fluctuation range for that cycle. The load baseline fluctuation range characterizes the natural load fluctuations that the system's self-regulating capacity can accommodate under specific production conditions. After collecting a sufficient number of historical scheduling cycle load baseline fluctuation range data, the system sorts all fluctuation range values by size and takes the value at the middle position of the sorted list as the dynamic balancing threshold. If the list length is even, the average of the two middle values is taken. Using the median as the dynamic balancing threshold can effectively filter out extreme fluctuation data caused by sudden abnormal conditions, making the threshold more stable and representative, and better reflecting the system's load balancing capacity under normal operating conditions.
[0026] Once the dynamic path planning module obtains the real-time calculated load baseline, it compares the absolute value of the load baseline with the dynamic balancing threshold. If the absolute value of the load baseline exceeds the dynamic balancing threshold, the dynamic path planning module determines that the first and second platforms are in a state of load imbalance and needs to intervene for dynamic scheduling. The scheduling strategy of the dynamic path planning module is reflected in the adjustment of the cross-path topology. The module analyzes the currently planned and some issued but not yet completed pallet placement paths. For platforms with high load, the dynamic path planning module will assess the feasibility of migrating some of its path tasks to platforms with lower load. Path task migration needs to consider whether the physical properties of the materials are suitable for processing on another platform, and whether the path change will cause new serious path conflicts. Feasible path adjustment schemes are generated, and the dynamic path planning module updates the cross-path topology, reallocating some path edges originally assigned to the high-load platform to the low-load platform. This reallocation aims to reduce the difference in the number of pallet placements completed by the two platforms in the future. As the adjusted path is executed, the absolute value of the load baseline gradually decreases. The goal is to converge the load baseline to a reasonable range defined by the dynamic balancing threshold, achieving dynamic load balance between the first and second platforms, thereby improving the throughput and stability of the entire dual-platform system. The process of monitoring the load baseline and comparing it with the threshold is continuously performed cyclically, forming a closed-loop feedback control system that enables the system to adapt to changes in production rhythm and external interference, maintaining efficient collaborative operation. The calculation of the dynamic balancing threshold is not a one-time event; the system can set a recalculation cycle, for example, automatically triggering a recalculation of the dynamic balancing threshold based on new historical data after every twenty historical scheduling cycles, allowing the threshold to adaptively update as equipment performance changes and production patterns evolve.
[0027] Example 2: See Figure 3The generation of the cross-path topology graph constructs a spatial and temporal relationship model for dual-platform path planning. The generation process begins with the mathematical abstraction of the tray-stacking path on the first platform. Each tray-stacking path on the first platform consists of a series of ordered spatial coordinate points, which describe the movement trajectory of the robotic arm or conveyor mechanism from the pick-up point to the placement point. The system maps each such path to a directed graph structure. The starting point, ending point, and turning points where the path direction changes significantly are defined as vertices of the directed graph. The straight line or curve segment connecting two adjacent vertices is defined as an edge of the directed graph. The edges of all paths on the first platform constitute the first edge set of the directed graph. The tray-stacking paths on the second platform undergo the same mapping process, forming the second edge set of the same directed graph. This unified graph representation method integrates the originally independent movement paths of the first and second platforms into the same mathematical framework for analysis, laying the foundation for subsequent cross-detection. Detecting spatial intersections is a core step in graph analysis. The system uses computational geometry algorithms to determine the intersection of each edge in the first edge set with each edge in the second edge set, calculating whether there is an intersection between the edge's extension or projection based on the edge's spatial coordinates. For each detected spatial intersection, the system records its precise two-dimensional or three-dimensional coordinates. The coordinates of the spatial intersections identify the potential locations in physical space where the motion paths of the first and second platforms overlap.
[0028] The formation of spatiotemporal intersection nodes elevates simple geometric intersections to a spatiotemporal dimension. The system needs to bind time information to each spatial intersection, which relies on modeling the path movement velocity. Each path edge is associated with a preset velocity curve, which defines the theoretical velocity of the actuator at different positions on this path segment. Based on the distance from the starting point of the path edge to the spatial intersection point and the velocity curve, the system can calculate the estimated timestamp of the actuator's movement from the starting point to the spatial intersection point. Similarly, for another intersecting path edge, the estimated timestamp of its actuator reaching the same spatial intersection point is also calculated. Linking the coordinates of the spatial intersection point with these two timestamps forms a spatiotemporal intersection node, which fully describes the spatial location and possible occurrence time of a potential conflict event. The final generation of the intersection path topology map requires reconstructing the original edge set. The system uses all identified spatiotemporal intersection nodes as split points and traverses every edge in the first and second edge sets. The system checks for spatiotemporal intersection nodes on the edges. These nodes divide a complete edge into two or more shorter fragments, which inherit the direction and velocity properties of the original edge. All the resulting fragments, along with the original vertices, form a new, finer-grained directed graph, known as the cross-path topology graph. This graph explicitly identifies all potential spatiotemporal interactions between the first and second platform paths.
[0029] The conflict detection module identifies conflicts based on the generated cross-path topology map. The module focuses on spatiotemporal cross-nodes, traversing each node in the topology map. For two path segments connected to the same spatiotemporal cross-node, belonging to the first and second platforms respectively, the module calculates the temporal attribute difference between the two segments. This difference is the estimated timestamp of one segment leaving the spatiotemporal cross-node region compared to the estimated timestamp of the other segment entering the region. The system presets a minimum safe interval for the plate-splitting mechanism. This minimum safe interval is an empirical value that comprehensively considers the inertia of the mechanical system, the response delay of the control system, positioning errors, and necessary safety margins. The absolute value of the calculated temporal attribute difference is compared with the minimum safe interval. If the absolute value is less than the minimum safe interval, a conflict is determined to exist between the two path segments at that spatiotemporal cross-node. The marking of conflict path segments requires clearly defining the spatial and temporal scope of the conflict. Marked conflict path segments include edge fragments from the nearest upstream vertex to the spatiotemporal intersection node, and edge fragments from the spatiotemporal intersection node to the nearest downstream vertex. The specific scope depends on the granularity of the conflict analysis. The conflict detection module records the start coordinates and end timestamp of the conflict path segment. The start coordinates are typically the coordinates of the starting point of the conflict path segment, and the end timestamp is the estimated time when the execution mechanism of the path segment leaves the conflict area. Simultaneously with recording conflict information, the platform identifier to which the conflict path segment belongs is written to the database. The platform identifier is used to accurately distinguish the participants in the conflict during subsequent weight allocation and instruction refactoring, ensuring that scheduling decisions can be correctly associated with the control systems of the first or second platform. Conflict detection is a continuous process. The cross-path topology graph is updated with the addition of new tasks or dynamic scheduling. The conflict detection module rescans the updated graph structure to ensure the real-time nature and accuracy of the conflict information.
[0030] See Figure 4In the dynamic scheduling and control process of the dual-platform split-board tray drive system, the efficiency comparison of each stage intuitively reflects the performance trajectory of the system module collaborative optimization. Specifically, the efficiency value of the initial stage characterizes the baseline performance of the dual-platform collaborative drive module in generating initial drive instructions based on the material distribution coordinate sequence. The efficiency decrease in the conflict detection stage stems from the cross-path topology analysis of the dynamic path planning module, and the transient impact of the computational load introduced by the marking of spatiotemporal overlapping areas on throughput. The efficiency recovery in the weight allocation execution stage reflects the optimization effect of the weight allocation module dynamically adjusting the scheduling weight coefficients based on material attribute priority and platform real-time load. The efficiency increase in the instruction reconstruction stage verifies that the instruction reconstruction module optimizes the execution timing of the tray drive instruction set through a hierarchical reconstruction strategy. The efficiency peak in the synchronous execution stage highlights the load balancing capability of the dual-platform synchronous control module, maximizing the overall system performance through drive timing calibration.
[0031] Example 3: The allocation of dynamic scheduling weight coefficients determines the priority order of instruction execution during conflict resolution. The weight allocation module calculates the dynamic scheduling weight coefficient for each marked conflict path segment. The calculation process comprehensively considers material attributes and the platform's real-time status. Material attributes include size attributes, weight attributes, and material attributes. Size attributes describe the physical size of the material in space, weight attributes reflect the mass of the material, and material attributes define the physical composition and fragility characteristics of the material. The system defines a size influence factor calculation rule for size attributes. The size influence factor is calculated based on the ratio of the material's volume to the system's preset standard material volume, using the following formula: in: Represents the size influence factor. This represents the actual volume of the material currently in the conflict path segment. This represents the system's preset standard material volume. The weight attribute corresponds to a weight influence factor, which is obtained by the ratio of the material's actual weight to the platform's rated load capacity. The material attribute is assigned a value according to a predefined material priority mapping table. This table maps different material types to a numerical material influence factor, with higher values indicating higher processing priority. For example, the material influence factor for glass may be higher than that for metal.
[0032] After calculating the influencing factors of each attribute, the weight allocation module multiplies these factors by the current plate-setting efficiency of the platform to which the conflict path segment belongs. The current plate-setting efficiency of the platform is a dynamically changing parameter, quantified by the ratio of the number of plate-setting tasks successfully completed by the platform in the most recent time window to the theoretical maximum number that can be completed. The size influence factor, weight influence factor, and material influence factor are multiplied by the platform's current plate-setting efficiency to obtain three product terms. These three product terms are then combined through a weighted summation to form the initial weight of the conflict path segment. The weight coefficients of the weighted summation can be configured according to different application scenarios, allowing the system to flexibly adjust the relative importance of different attributes in conflict decision-making. Since the initial weight dimensions and numerical ranges of different conflict path segments differ, direct comparison lacks fairness; therefore, the system needs to normalize the initial weights of all conflict path segments within the same conflict area. The normalization process employs a summation normalization method, dividing the initial weight of each conflict path segment by the sum of the initial weights of all conflict path segments within that conflict region, ensuring that the sum of the normalized weight coefficients of all conflict path segments is constant at 1. The normalized result is the dynamic scheduling weight coefficient for each conflict path segment. These dynamic scheduling weight coefficients form a comparable priority sequence, with higher values indicating greater priority during conflict resolution.
[0033] The instruction refactoring module performs hierarchical refactoring of the initial drive instructions based on dynamic scheduling weight coefficients. The module filters all instructions associated with marked conflicting path segments from the complete swivel drive instruction set. These instructions are extracted into a subset and sorted in descending order according to the dynamic scheduling weight coefficient of the conflicting path segment corresponding to each instruction, generating a priority queue. The priority queue's sorting rules ensure that instructions with higher weight coefficients are at the front of the queue. The top N instructions with the highest weight coefficients are extracted from the priority queue to form the first-level execution instruction set. The value of N is not a fixed value but is dynamically determined by the instruction refactoring module based on the availability of current system resources, the complexity of the conflict region, and historical scheduling effects. The remaining instructions are classified as delayed execution instruction sets, which remain in a waiting state until the first-level execution instruction set is fully executed. The first-level execution instruction set is sent to the control systems of the first and second platforms for execution, and the execution process is monitored. After the first-level execution instruction set is completed, the instruction refactoring module triggers a conflict state reassessment mechanism, and the system re-examines the spatiotemporal state of the conflicting path segments corresponding to those delayed execution instruction sets. The detection process analyzes whether the original spatiotemporal overlap region has released spatial resources or changed the time window due to the execution of the first-level execution instruction set, thereby resolving the conflict state. If the conflict state of the conflict path segments corresponding to delayed execution instructions has been resolved, these instructions will be issued and executed normally. If the conflict state of the conflict path segments corresponding to delayed execution instructions has not been resolved, the instruction reconstruction module will feed back the delayed execution instruction set to the weight allocation module. The weight allocation module needs to recalculate the dynamic scheduling weight coefficients of the path segments corresponding to these instructions. The recalculation takes into account the latest platform efficiency data and conflict status. Based on the newly calculated dynamic scheduling weight coefficients, the instruction reconstruction module re-sorts and layers the delayed execution instruction set, forming a new first-level execution instruction set and a new delayed execution instruction set. This iterative process continues until all instructions related to conflict path segments are successfully executed, thus achieving conflict resolution based on dynamic priority and ensuring the orderly and efficient operation of the dual-platform system under resource contention conditions. The entire process embodies a closed-loop adaptive control logic, enabling the scheduling system to cope with dynamically changing production environments.
[0034] Example 4: The dual-platform synchronous control module ensures that the swivel drive command set can be executed under precise time constraints. Synchronous calibration relies on accurate measurement and closed-loop feedback control of the drive motor's motion state. Before the first and second platforms begin executing the swivel drive command set in stages, the dual-platform synchronous control module needs to obtain a precise motion reference point. The module sends a zero-point reset command to the drive motors of both the first and second platforms. After receiving the zero-point reset command, the drive motor controls its transmission mechanism to move to a predefined mechanical origin position, which is the absolute physical reference point determined during equipment assembly. During the motor's journey to the mechanical origin position, a rotary encoder coaxially mounted with the motor shaft continuously feeds back position signals. When the limit sensor on the mechanical structure is triggered and confirms that the origin has been reached, the absolute position data fed back by the encoder at this moment is recorded and cleared by the control system. This cleared position is defined as the encoder's zero position. For linear motion mechanisms, a linear encoder may be used instead of a rotary encoder. The principle of the linear encoder is similar; the absolute position of its reading head on the scale is set to zero after homing.
[0035] Obtaining the encoder initial value requires converting the absolute mechanical coordinates into relative coordinates based on the starting point of the current swivel task. The swivel drive instruction set already contains the starting point coordinates of each platform for this task cycle. The system calculates the distance from the mechanical origin to the task starting point and converts this distance into the number of pulses the encoder should have. This difference in pulse count is the encoder initial value. The initial encoder values of the drive motors of the first and second platforms are recorded, serving as the starting point for subsequent motion increment calculations. The swivel drive instruction set, executed in stages, includes not only spatial path information but also strict time window requirements. Each instruction specifies the start time and expected completion time of the action. The dual-platform synchronous control module calculates the theoretical encoder increment required for the drive motor of the first platform to move from the current point to the next point, based on the instruction requirements. The theoretical encoder increment represents the number of pulses corresponding to the angle the motor needs to rotate. Simultaneously, the module calculates the ideal speed curve required to complete this increment based on the time window, thus obtaining a theoretical model of the encoder's theoretical increment changing over time. The drive motor of the second platform undergoes the same calculation process, generating its own encoder theoretical increment-time sequence.
[0036] During the execution of the action, the dual-platform synchronous control module reads the feedback values from the encoders of the first and second platform drive motors in real time. The encoder feedback values reflect the actual position of the motors. The system subtracts the initial encoder value from the current feedback value to obtain the actual encoder increment, which represents the actual displacement the motor has traveled since the start of the task. Real-time comparison is continuously performed, subtracting the actual encoder increment from the theoretical encoder increment at the current moment to obtain the position deviation value. This position deviation value is input to a digital PID controller, which includes a proportional unit, an integral unit, and a derivative unit. The proportional unit corrects the current deviation, the integral unit accumulates historical deviations to eliminate steady-state errors, and the derivative unit makes predictive adjustments based on the rate of change of the deviation. The output of the PID controller is a correction value, which is converted into an instruction to adjust the pulse frequency of the drive motor. A positive position deviation value indicates that the actual movement lags behind the plan, and the PID controller output temporarily increases the pulse frequency of the drive motor to accelerate catching up. A negative position deviation value indicates that the actual movement is ahead of the plan, and the PID controller output temporarily decreases the pulse frequency of the drive motor to slow down and wait. Through this continuous, minute frequency adjustment, the actual motion trajectories of the drive motors of the first and second platforms are forced to be near their theoretical trajectories, ensuring a high degree of time consistency in the plate-splitting actions of the two platforms on a macroscopic level, achieving synchronous calibration within the time window. The adjustment range of the pulse frequency is limited to a safe interval to prevent excessive acceleration from impacting the mechanical structure. The state data of the entire synchronous control process, including theoretical values, actual values, and deviation values, are recorded for system performance analysis and PID parameter optimization. Refer to Table 1, which shows the key data within one synchronous control cycle.
[0037] Table 1: Key Data Recording Table for Dual-Platform Synchronous Control Timestamp (ms) Platform logo Encoder theoretical increment (number of pulses) actual encoder increment (number of pulses) Position deviation (number of pulses) PID output correction (Hz) T First Platform P_T1 P_A1 ΔP1 +F1 T Second Platform P_T2 P_A2 ΔP2 -F2 T+1 First Platform P_T1' P_A1' ΔP1' +F1' T+1 Second Platform P_T2' P_A2' ΔP2' -F2' Successful synchronous calibration relies not only on precise control within a single platform but also on strict alignment of control cycles between the first and second platforms. The dual-platform synchronous control module uses a high-precision global clock source to provide a unified time reference for the controllers of both platforms. The global clock source ensures that the calculation of position deviation and the adjustment of the PID controller occur on the same time scale on both platforms, avoiding asynchronous problems caused by local clock drift and thus fundamentally guaranteeing the timing accuracy of the dual-platform collaborative operation. The acquisition of the initial value of the drive motor encoder, the calculation of the theoretical increment, the feedback of the actual increment, and the adjustment of the PID controller constitute a complete negative feedback closed loop. This closed loop continues to run until all instructions in the swivel drive instruction set are executed, ensuring that the dynamic scheduling results can be accurately translated into synchronized actions in the physical world.
[0038] Example 5: The generation of the material distribution coordinate sequence is the data foundation for the initial path planning of the dual-platform collaborative drive module. The implementation process begins with the acquisition of visual information of the partition area. A high-resolution industrial camera is fixedly installed above the partition area as a vision sensor. The field of view of the industrial camera completely covers the partition areas of the first platform and the partition areas of the second platform. The industrial camera is connected to the host computer via an Ethernet cable. The host computer sends a trigger signal, and the industrial camera periodically acquires material images in the partition area according to a set frame rate. The acquired raw material images are color RGB images, containing multiple electronic components placed on the background plate of the partition area. These electronic components, as materials to be placed on the tray, may be rectangular, circular, or irregular in shape. The raw material images are transmitted to the image processing unit in the host computer for processing. The image processing unit performs grayscale processing on the raw material images, converting the color image to a grayscale image to reduce the amount of data and highlight contour information. The grayscale image is then processed by Gaussian filtering. The Gaussian filtering algorithm eliminates random noise in the image, and the smoothed image is beneficial to the stability of subsequent edge detection. Image enhancement algorithms are applied to adjust the contrast and brightness of the image, making the boundary between the material and the background more distinct. The preprocessed grayscale image is then fed into an edge detection module. This module uses the Canny operator to find pixels with drastic grayscale changes in the image. The Canny operator locates edges by calculating the image gradient and uses a double thresholding method to connect weak edges to form continuous contour boundaries. The result of edge detection is a binary image, where white pixels form the outline of the material, and black areas represent the background.
[0039] The calculation of the contour center point coordinates is based on contour extraction. The image processing unit performs contour search on the binarized image, traversing all connected components in the image. Each connected component represents an independent material contour, and the system assigns a unique identifier to each found contour. For each contour, the set of its pixels is calculated, and the centroid coordinates of the contour are calculated using the geometric moment algorithm. The coordinates of the centroid in the image coordinate system are the center point coordinates of the material contour. The image coordinate system has the upper left corner of the image as the origin, with the X-axis pointing to the right and the Y-axis pointing downwards. The contour center point coordinates are pixel coordinates and need to be converted to physical coordinates in the world coordinate system before they can be used for mechanical positioning. The coordinate transformation is achieved through camera calibration. The camera calibration process uses a checkerboard calibration board of known size. The checkerboard calibration board is placed at different positions in the partitioned area, and the industrial camera takes multiple images of the calibration board. By extracting the corner pixel coordinates and their corresponding known world coordinates from the calibration board images, a perspective transformation matrix is calculated. This perspective transformation matrix establishes the mapping relationship between the image pixel coordinate system and the world coordinate system. By applying this perspective transformation matrix, the coordinates of the center point of each material outline are transformed from pixel coordinates to physical coordinates in the world coordinate system with a fixed corner point of the panel area as the origin.
[0040] The construction of the slab tray grid provides a logical index for physical coordinates. The slab tray grid is a virtual grid structure overlaid on the slab tray areas of the first and second platforms. The division of the slab tray grid is based on the physical boundaries of the slab tray areas of the first and second platforms, which are determined by the mechanical design drawings. The size of the grid cell is determined according to the standard dimensions and placement spacing of the material to be processed. For example, if the material length is 10 mm, the width is 5 mm, and the placement spacing is 2 mm, then the size of the grid cell can be set to 12 mm x 7 mm. The system starts at the lower left corner of the slab tray area, dividing the grid into columns along the X-axis at fixed intervals and rows along the Y-axis at fixed intervals, forming a regular row and column grid array. Each grid cell is assigned a unique row and column identifier. The identifier takes the form of (1,1) for the grid cell closest to the origin, (1,2) for its right neighbor, and (2,1) for its top neighbor. By measuring and calibrating, the precise physical coordinates of the center point of each grid cell in the previously established world coordinate system are determined, and these physical coordinates are bound to the row and column identifiers of the grid cell and stored in a mapping table. This mapping table constitutes an addressable disk space matrix, allowing the system to find the corresponding logical location of the grid cell using its physical coordinates, and also to retrieve its physical coordinates from the logical location of the grid cell.
[0041] The generation of the material distribution coordinate sequence is the final step in combining visual perception with the logical grid. The system matches the physical coordinates of the center point of the outline of each material obtained previously with the constructed slab arrangement grid. The matching algorithm calculates which grid cell's boundary range the material's physical coordinates fall into. The boundary range of a grid cell is defined by the physical coordinates of its four vertices. Once a material's physical coordinates are determined to fall into a certain grid cell, the material is considered to belong to that grid cell. The system records the row and column identifiers of the corresponding grid cell. For example, if a material's physical coordinates fall into grid cell (3,5), its logical position is recorded as (3,5). All materials visually identified within the slab area are traversed, and each material is assigned its corresponding grid row and column identifier. The arrangement order of the material distribution coordinate sequence can follow different strategies. One strategy is to arrange them in row-first order, starting from the first row and recording the grid positions of each material from left to right, then the second row, and so on until the last row. Another strategy is to arrange them according to the order of material identification or based on some priority. The final generated material distribution coordinate sequence is an ordered list, where each element is a grid coordinate, such as [(1,2),(1,4),(2,3),(3,1),(3,5),...]. This material distribution coordinate sequence is sent to the dual-platform collaborative drive module. Based on the logical position in the sequence and the disk space matrix, the dual-platform collaborative drive module retrieves the corresponding target physical coordinates and generates initial drive commands to move the robotic arm to the designated grid cell to pick up the material and place it at the target location. The entire process begins with image acquisition from the physical world, undergoes processing, transformation, and mapping, and ultimately generates a logical sequence to guide execution, forming a closed loop from perception to control.
[0042] It should be noted that, in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such process, method, article, or apparatus.
[0043] Although embodiments of the invention have been shown and described, it will be understood by those skilled in the art that various changes, modifications, substitutions and alterations can be made to these embodiments without departing from the principles and spirit of the invention, the scope of which is defined by the appended claims and their equivalents.
Claims
1. A dynamic scheduling and control system based on a dual-platform split-board swivel drive, characterized in that, include: Dual-platform collaborative drive module: By dividing the physical space of the first platform and the second platform, the module obtains the material distribution coordinate sequence in the respective partition area and generates the initial drive command for partition tray placement based on the coordinate sequence. Dynamic path planning module: Based on the real-time load difference between the first platform and the second platform, calculate the dynamic balance threshold between the two platforms, and generate the cross path topology map of the board stacking based on the initial drive command; Conflict detection module: Marks the spatiotemporal overlap areas of all plate-setting paths in the cross-path topology map, and extracts the start coordinates and end timestamp of conflict path segments; Weight allocation module: Based on the priority of material attributes of conflicting path segments and the current execution efficiency of the platform, assign dynamic scheduling weight coefficients to each conflicting path segment; Instruction Reconstruction Module: Based on dynamic scheduling weight coefficients, the initial drive instructions are reconstructed in layers to generate a set of swivel drive instructions to be executed in stages; Dual-platform synchronous control module: Adjusts the drive timing of the first and second platforms respectively according to the swivel drive instruction set, so that the swivel actions of the two platforms can be synchronously calibrated within the time window.
2. The dynamic scheduling and control system based on dual-platform split-board swivel drive according to claim 1, characterized in that, The method for calculating the dynamic equilibrium threshold includes: Obtain the number of trays completed by the first and second platforms per unit time, and calculate the difference between the two platforms as the load baseline. The load baseline fluctuation range of the two platforms during the historical scheduling cycle is statistically analyzed, and the median of the fluctuation range is taken as the dynamic balancing threshold.
3. The dynamic scheduling and control system based on dual-platform split-board swivel drive according to claim 1, characterized in that, The process of generating the cross-path topology map includes: Map the plate-setting path of the first platform to the first edge set of the directed graph, and map the plate-setting path of the second platform to the second edge set of the directed graph. Detect the spatial intersections of all edges in the first and second edge sets, and bind the coordinates of the intersections to the timestamps of the corresponding edges to form spatiotemporal intersection nodes; Using the spatiotemporal intersection node as the dividing point, the first edge set and the second edge set are re-divided to generate a path topology graph containing intersection relationships.
4. The dynamic scheduling and control system based on dual-platform split-board swivel drive according to claim 3, characterized in that, The method for marking conflicting path segments includes: Traverse all spatiotemporal intersection nodes in the intersection path topology graph and calculate the time interval between adjacent nodes; If the time interval is less than the minimum safe interval for plate sorting, the corresponding path segment will be marked as a conflict path segment, and the platform identifier to which the path segment belongs will be recorded.
5. The dynamic scheduling and control system based on dual-platform split-board swivel drive according to claim 1, characterized in that, The method for allocating the dynamic scheduling weight coefficients includes: Calculate the influence factor of each attribute based on the size, weight, and material properties of the materials in the conflict path segment; The initial weights of conflict path segments are obtained by multiplying the influence factors of each attribute by the current board-setting efficiency of the corresponding platform. The initial weights are normalized so that the sum of the weight coefficients of all path segments within the same conflict area is 1.
6. The dynamic scheduling and control system based on dual-platform split-board swivel drive according to claim 5, characterized in that, The execution process of the hierarchical reconstruction includes: Arrange the swivel drive instruction set in descending order according to the dynamic scheduling weight coefficient to generate a priority queue; Extract the top N instructions with the highest weight coefficients from the priority queue as the first-level execution instructions, and the remaining instructions as deferred execution instructions; After the first-level instruction is executed, it checks whether the conflicting path segment corresponding to the delayed execution instruction has been resolved. If not, the weight coefficients are reassigned.
7. The dynamic scheduling and control system based on dual-platform split-board swivel drive according to claim 6, characterized in that, The method for implementing the synchronous calibration includes: Before the plate-splitting action of the first and second platforms is started, the initial values of the encoders of the drive motors of the two platforms are obtained. Based on the time window requirements of the oscillating disk drive instruction set, the theoretical increment of the encoders on both platforms is calculated. During the execution of the action, the deviation between the actual increment and the theoretical increment of the encoder is compared in real time, and the pulse frequency of the drive motor is adjusted by the PID controller.
8. The dynamic scheduling and control system based on dual-platform split-board swivel drive according to claim 7, characterized in that, The process of obtaining the initial value of the drive motor encoder includes: Send zero-point reset commands to the drive motors of the first and second platforms, and record the absolute position data fed back by the encoder; The absolute position data is converted into relative coordinates based on the starting point of the plate-setting process, which are then used as the initial values for the encoder.
9. The dynamic scheduling and control system based on dual-platform split-board swivel drive according to claim 1, characterized in that, The method for generating the material distribution coordinate sequence includes: The visual sensor acquires material images within the partition area and identifies the coordinates of the center point of the outline of all materials in the image. Based on the mapping relationship between the center point coordinates of the outline and the plate-stacking grid, the row and column index sequence of the material in the grid is generated.
10. The dynamic scheduling and control system based on dual-platform split-board swivel drive according to claim 9, characterized in that, The construction process of the plate-stacking grid includes: Using the boundaries of the partitioned areas of the first and second platforms as a reference, equally spaced virtual meshes are divided. Each grid cell is assigned a unique row and column identifier, and the physical coordinates of the grid cell are bound to the identifier to form an addressable trolley space matrix.