AUTBUS mixed time slot distribution and scheduling method
By employing a hybrid time slot allocation and scheduling method, combined with a two-dimensional bin packing algorithm and a particle swarm optimization algorithm, the resource waste and response lag issues of the AUTBUS network under load changes are solved, enabling efficient collaborative transmission of real-time and non-real-time data.
Patent Information
- Application Number
- CN202511273370.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-08
- Publication Date
- 2025-11-18
AI Technical Summary
The existing AUTBUS network suffers from resource waste and response lag when the load changes significantly, and the existing scheduling methods are unable to meet the flexible collaborative transmission requirements of real-time and non-real-time data.
A hybrid time slot allocation and scheduling method is adopted, combining a two-dimensional bin packing algorithm for static scheduling and a particle swarm optimization algorithm for dynamic scheduling. Through the fixed allocation of static time slot resources and the optimization of the dynamic time slot pool, efficient scheduling of real-time periodic data and non-real-time data is achieved.
It achieves efficient resource utilization and continuous quality of service in the AUTBUS network under load changes, avoiding resource waste and response lag, and dynamically adapting to network load changes.
Smart Images

Figure CN120980686A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The application belongs to the technical field of time slot allocation and scheduling, and relates to an AUTBUS hybrid time slot allocation and scheduling method. BACKGROUND
[0002] Industrial field communication technology evolves with the rapid development of modern manufacturing. Currently, it is mainly divided into two categories. One is the traditional field bus represented by CAN, Modbus and AUTBUS. This type of bus adopts bus topology structure, and is simple in design and easy to implement, but has low data transmission rate and is prone to frequency selective fading problem caused by multipath reflection, which is difficult to adapt to high bandwidth demand in complex industrial environment. The other is network communication technology centered on real-time industrial Ethernet, which adopts Ethernet physical layer transmission and supports 10Mbps to 100Mbps high-speed data transmission, but its communication mechanism (such as CSMA / CD) is prone to data collision and delay under high load conditions, which is difficult to meet the requirements of high real-time and low jitter in industrial systems.
[0003] Traditional industrial field buses such as CAN, Profibus and ProfiNET gradually show limitations with the in-depth application of intelligent manufacturing. They are difficult to meet the needs of modern industrial control systems in terms of transmission bandwidth, communication distance and real-time performance, especially in high complexity industrial scenarios where control layer and decision layer coexist, and their performance bottlenecks become more and more obvious.
[0004] To solve the above problems, AUTBUS, as a new generation of industrial field bus, emerges as the times require. It combines the advantages of field bus and real-time industrial Ethernet, adopts two-wire non-bridge medium, supports 100Mbps high transmission rate, 500m long transmission distance, and meets the high real-time requirements of industrial communication with 8μs minimum cycle period and 10ns bus clock jitter. AUTBUS adopts orthogonal frequency division multiplexing (OFDM) technology, which realizes efficient concurrent data transmission among multiple nodes through subcarrier division, not only improves the bandwidth utilization, but also provides flexible and reliable support for the collaborative transmission of real-time data and non-real-time data.
[0005] In the AUTBUS network, multiple terminal nodes share limited bandwidth resources, and how to design an efficient scheduling method to allocate and optimize resources is the core problem to ensure network performance. The scheduling methods of existing industrial field buses can be roughly divided into three categories:
[0006] 1. Static scheduling: time-triggered scheduling method, which adopts time division multiplexing for resource allocation, has good real-time performance and determinacy, and is suitable for stable load scenarios. However, due to static allocation, it may cause resource waste and cannot cope with load fluctuations.
[0007] 2. Dynamic scheduling type: dynamic scheduling mode based on event triggering, nodes compete for bandwidth resources in real time according to demand, strong flexibility. However, dynamic competition is prone to conflict in high load scenarios, resulting in system performance degradation.
[0008] 3. Hybrid scheduling type: combines the advantages of static scheduling and dynamic scheduling, which can guarantee the transmission quality of real-time data and adapt to the change of dynamic load, high flexibility and reliability, but high implementation complexity and high cost.
[0009] In the AUTBUS network, multiple terminal nodes share limited bandwidth resources, how to design a reasonable hybrid time slot allocation and scheduling method has become the key to ensure the efficient operation of the network. The existing research adopts the static scheduling method for the AUTBUS network, which can meet the real-time data transmission demand, but the support for non-real-time data transmission demand is weak, so that when there is burst traffic or load fluctuation in the AUTBUS network, the lack of dynamic scheduling for global optimization of the network leads to certain bandwidth waste and response lag. SUMMARY
[0010] Therefore, the purpose of the present application is to provide an AUTBUS hybrid time slot allocation and scheduling method.
[0011] To achieve the above purpose, the present application provides the following technical solutions:
[0012] An AUTBUS hybrid time slot allocation and scheduling method, comprising the following steps:
[0013] Step 1: the user inputs a set of real-time periodic data stream information F through the user interface APP;
[0014] Step 2: the AUTBUS scheduling system receives the set of real-time periodic data stream information F input by the user interface, and calculates the basic period and the scheduling period according to the transmission period of each data stream in F, and determines the AUTBUS transmission mode;
[0015] Step 3: the AUTBUS scheduling system sorts the data streams in the set F according to the delay requirement and service priority rule of each data stream, and forms a to-be-scheduled sequence;
[0016] Step 4: the AUTBUS scheduling system calculates the number of time slots required by each data stream in the to-be-scheduled sequence according to the data stream length and transmission period of each data stream;
[0017] Step five: AUTBUS scheduling system adopts two-dimensional packing algorithm, according to the first-fit decreasing principle (FFD), takes out data streams from the waiting scheduling sequence in turn, and allocates fixed static time slot resources for each real-time periodic data stream in the AUTBUS time slot resources;
[0018] Step six: After the completion of static time slot resource allocation, the AUTBUS scheduling system marks the remaining time slots as dynamic time slots, and forms a dynamic time slot pool;
[0019] Step seven: The AUTBUS scheduling system sends the static scheduling result to the MN (Management Node) in the data plane; the MN completes the clock synchronization of all TNs (Terminal Nodes) in the AUTBUS network and the initialization of static time slot resources according to the received static scheduling configuration table, and enters the data transmission stage;
[0020] Step eight: In the data transmission stage, when a TN generates real-time aperiodic data or non-real-time data transmission demand, the TN initiates a dynamic time slot application request to the MN; the MN receives the request and reports it to the AUTBUS scheduling system to form an application set;
[0021] Step nine: The AUTBUS scheduling system optimizes the global dynamic time slot pool resources by using the PSO algorithm according to the application set and the resource state of the dynamic time slot pool, to maximize the utilization rate and application success rate of the dynamic time slot resources; after optimization, the AUTBUS scheduling system sends the dynamic scheduling result to the MN;
[0022] Step ten: The MN notifies each TN to execute the data transmission task according to the dynamic time slot allocation result sent by the AUTBUS scheduling system; the time slots occupied by real-time aperiodic data will remain locked until the next PSO optimization trigger, while the time slots occupied by non-real-time data will be released back to the dynamic time slot pool immediately after the data transmission is completed;
[0023] Step eleven: The AUTBUS scheduling system periodically monitors the utilization rate of the dynamic time slot pool, the dynamic application failure rate, and the average delay index to determine whether the PSO optimization trigger condition is met; when the trigger condition is met, the system starts the PSO algorithm again to optimize the dynamic time slot pool allocation scheme, and executes steps eight to ten to continuously ensure the effectiveness of system resources and the quality of transmission services.
[0024] Further, before starting the scheduling, a constraint condition is set, and the constraint condition includes:
[0025] (1)AUTBUS network, all data stream length, transmission cycle and deadline are known, the deadline of data stream is equal to the transmission cycle, data stream transmission must be completed within the deadline, and the worst response time is less than the deadline;
[0026] (2) AUTBUS network, only the data of the same node can be packaged into a data stream, and can only be uniquely packaged into a data stream;
[0027] (3) In a cycle period, the same data stream f i,j The interval of different transmission time slots is greater than the transmission cycle T i,j of data stream f i,j :
[0028]
[0029] The starting time of the rth transmission of the kth data stream of AUTBUS node i is represented;
[0030] (4) In a cycle scheduling period, each data stream transmission cannot exceed its maximum number and each transmission cannot exceed the allocated time slot resource size;
[0031] (5) At the beginning of each signal frame, the frame pilot signal is sent, and the pilot information is inserted according to a specific form in each terminal node according to the allocated resource; AUTBUS supports two bearing modes, bearing mode A is to transmit data and pilot signal in a single OFDM half sideband; bearing mode B is to transmit pilot signal in the first OFDM half sideband of the available allocated resource, and to transmit data in the subsequent 1 to n OFDM symbols.
[0032] Further, in step two, the ideal scheduling period SC is the least common multiple of all data stream transmission periods, and the ideal basic period BC is the greatest common divisor of all data stream transmission periods;
[0033] The ideal scheduling period SC is cycled by several ideal basic periods BC, and the AUTBUS network takes the ideal scheduling period SC as the basic unit for cycle scheduling; the calculation formula is as follows:
[0034] SC = LCM (T 1,1 , T 1,2 ,..., T i,j )
[0035] BC = GCD (T 1,1 , T 1,2 ,..., T i,j )
[0036] Where T i,jLet LCM be the transmission period of the j-th data stream of node i in AUTBUUS, and GCD be the least common multiple of the data stream transmission periods.
[0037] The AUTBUS scheduling system determines the fundamental period BC by querying a table of frame length and transmission mode parameters based on the calculated ideal fundamental period BC. T Confirm the matching signal frame length and transmission mode, and set n basic periods BC. T One cycle is taken as the actual cycle period SC T The calculation of n is as follows:
[0038]
[0039] In the formula, n is the number of basic cycles within the AUTBUS scheduling cycle;
[0040] The AUTBUS scheduling system is based on the actual cyclic scheduling period SC T Calculate real-time periodic data in SC T Number of internal transmissions K i,j K i,j The period T of the real-time periodic data stream i,j and actual cyclic scheduling period SC T The decision is made using the following formula:
[0041]
[0042] Furthermore, in step three, the AUTBUS scheduling system prioritizes the real-time periodic data stream set F to form a sequence to be scheduled. The AUTBUS scheduling system comprehensively considers data flow f i,j Load segment data length L i,j Sending period T i,j and data stream deadline D i,j Determine the data stream f i,j The scheduling priority is determined, and the data stream f is scheduled according to the scheduling priority. i,j Sort the data; the priority sorting rule is: f i,j transmission period T i,j The shorter, f i,j The higher the priority, the better; when f i,j transmission period T i,j If they are the same, then compare f. i,j Load segment data length L i,j Load segment data length L i,j The larger f is i,j The higher the priority, the better.
[0043] Furthermore, in step four, the AUTBUS scheduling system determines the data based on each data stream f. i,j Transmission length L i,j Calculate the time slot requirement N for each data stream. i,j Once the AUTBUS transmission mode is determined, the duration t of one time slot is... one This also determines that each time slot consists of an upper sideband and a lower sideband, and the different encoding methods of the upper and lower sidebands determine its data carrying capacity.
[0044] The transmission mode m and the semi-encoding method together determine the number of bytes q that a single time slot can carry;
[0045] The AUTBUS scheduling system schedules each data stream f i,j The time slot allocation calculation is shown in the following formula:
[0046]
[0047] If the number of time slots for each data stream is N i,j If it is not an integer, round it up.
[0048] Furthermore, step five specifically includes the following steps:
[0049] S51: The AUTBUS scheduling system abstracts the time slot resources within a scheduling period into a two-dimensional space. The vertical dimension represents the number of frames transmitted within the scheduling period, i.e., the multiple basic periods covered by the scheduling period; the horizontal dimension represents the number of available time slot units within each basic period; each basic period is divided into 64 time slot units, of which time slot units numbered 1-4 and 62-64 are reserved resources by the system and are occupied by the MN and not allocated to the TN. A maximum of 56 time slot units can be scheduled horizontally per frame.
[0050] S52: The AUTBUS scheduling system will schedule the sequence of events to be scheduled. Each data stream f in i,j Consider it as a two-dimensional object, its width W i,j and height H i,j With the length L of the data stream i,j and transmission period T i,j Related, t one Let q be the duration of a time slot, and q be the number of bytes that a single time slot can carry, as shown in the following formula:
[0051]
[0052] TS stands for data stream transmission rate;
[0053] The AUTBUS scheduling system allocates the two-dimensional items according to the FFD bin packing strategy. The AUTBUS scheduling system continuously scans the scheduling matrix to allocate time slot resources, searching for suitable areas from left to right and from top to bottom to ensure that each data stream obtains the static resources it needs, until all data streams are loaded or resources are exhausted. During the bin packing process, if the height of some frames in a column is occupied, the system will skip the occupied area and search for empty frames for allocation. If there is a situation where the data stream cannot be packed, it can be recorded as a failed allocation data stream and wait for the next scheduling cycle.
[0054] Furthermore, in step six, after the static scheduling table is generated, the AUTBUS scheduling system marks the time slot resources that have not been allocated by the static scheduling and includes them in the dynamic time slot pool.
[0055] At the beginning of each scheduling cycle, the AUTBUS scheduling system initializes the dynamic time slot pool based on the static scheduling results. This involves removing time slots already occupied by the static scheduling, and removing all time slots locked by real-time aperiodic data streams and those still in use, to ensure that the dynamic time slot pool only contains available time slots that are not currently occupied. The remaining set of available time slots, S, forms the dynamic time slot pool for the current scheduling cycle, as shown in the following formula:
[0056] S={s 1, s2,s3,...s m}
[0057] Where n is the total number of dynamic time slots, and the dynamic time slot pool is used for real-time aperiodic data and non-real-time data to dynamically apply for and occupy within the current period.
[0058] Furthermore, in step eight, the specific process for applying for dynamic time slot resources is as follows:
[0059] S81: After the scheduling period SC begins, MN will report the collected time slot requests to the AUTBUS scheduling system; each time slot request is represented by a quadruple r. o,u It is represented as shown in the following formula:
[0060] r o,u ={NodeID o,u ,L o,u ,τ o,u ,α o,u}
[0061] Among them, request r o,u For the i-th request of node o; NodeID o,u The request is for a unique identifier from TN; L o,u τ is the effective payload length required for this TN transmission; o,u =1 indicates a real-time aperiodic data stream, τ o,u =0 indicates a non-real-time data stream; αo,u This is the deadline for data stream transmission;
[0062] S82: For each dynamic time slot request, the AUTBUS scheduling system needs to calculate the required number of time slots; given the number of bytes q in each time slot and the payload length L of each data stream. o,u The required number of time slots is calculated using the following formula:
[0063]
[0064] S83: AUTBUS scheduling system determines request r o,u The required number of time slots N o,u If the number of available time slots in the dynamic time slot pool S is less than or equal to the number of available time slots remaining, the required time slot resources will be allocated to the request and the number of available time slots will be updated. If the number of available time slots is not met, the request will be allocated resources after the next scheduling cycle or after the time slots are released.
[0065] Furthermore, in step nine, in the PSO algorithm, each particle represents a candidate dynamic time slot allocation scheme; the AUTBUS scheduling system uses real-valued vectors to encode and model the particle positions, as shown in the following equation:
[0066] X = (x 1,1 ,x 1,2 ,...x o,u ,...x m,h )
[0067] Each element x of particle vector X o,u Corresponding to a dynamic request r o,u ∈R; The AUTBUS scheduling system uses this real number encoding to implicitly characterize the position of a particle as a priority order of requests;
[0068] During decoding, the AUTBUS scheduling system sorts the corresponding requests according to the size relationship of each element in vector X, thereby obtaining the specific scheduling scheme for each particle; specifically, it adopts the "implicit priority sorting" method: the AUTBUS scheduling system first sorts τ o,u Requests equal to 1 are sorted in ascending order according to their corresponding position vector values; then τ o,u Requests with a value of 0 are sorted in ascending order according to their corresponding position vector values; finally, the sorted real-time request queue is placed before the non-real-time request queue and merged to form a complete scheduling sequence.
[0069] During the PSO iteration process, the particle position encoding is continuously updated based on optimization feedback, gradually optimizing the implicit priority scheduling scheme. The particle swarm optimization algorithm designs its fitness function with the goal of maximizing dynamic time slot utilization and dynamic application success rate. The allocation scheme obtained after decoding each particle's current position is evaluated according to this goal. The AUTBUS scheduling system records the historical best position of each particle. And the global optimal position of the entire population. The PSO algorithm uses information from these two optimal solutions to guide the particle search; in the t-th iteration, the position and velocity of the i-th particle are updated according to the following formula:
[0070]
[0071] Where w is the inertia weight, c1 and c2 are acceleration constants, and r1 and r2 are random numbers ranging from (0,1); through the velocity-position update mechanism, the particle's position vector X drifts in the solution space along the direction that improves fitness, and each element x... i The values of the particles continuously approach a sorting layout that improves scheduling performance. During the iteration process, the PSO algorithm adjusts the real number encoding of the particles to change the relative order of different requests. As the iteration progresses, the particle swarm gradually converges to a solution set with better performance. When the position of the globally optimal particle no longer changes significantly, it is considered that an approximately optimal dynamic time slot allocation scheme has been found. Finally, the AUTBUS scheduling system selects the time slot allocation scheme obtained by decoding the globally optimal particle at the end of the iteration as the result of this round of scheduling and sends it to MN for execution, thereby completing the PSO-based dynamic time slot resource optimization scheduling process.
[0072] Furthermore, in step eleven, the key indicators of dynamic resource status include: dynamic time slot pool utilization rate U and dynamic application failure rate I;
[0073] The dynamic time slot pool utilization rate U represents the degree of utilization of dynamic time slot resources; the total number of time slots in the dynamic time slot pool is N. dyn The actual number of dynamic time slots occupied within scheduling period k is N. used(k) The dynamic time slot pool utilization rate is defined as follows:
[0074]
[0075] The dynamic time slot pool utilization rate U(k) ranges from 0 to 1. This indicator reflects the current resource saturation of the dynamic time slot pool. The higher the value, the more fully the dynamic resources are occupied. A value close to 1 indicates that the dynamic pool is approaching saturation.
[0076] The dynamic request failure rate I represents the proportion of dynamic resource requests that are not fulfilled; let N be the total number of dynamic time slot request requests within scheduling period k.req(k) The number of failed requests that failed to allocate time slots is N. fail(k) The dynamic application failure rate is defined as follows:
[0077]
[0078] The dynamic application failure rate I(k) ranges from 0 to 1. This indicator represents the degree to which dynamic application requests cannot be satisfied in the current period. The closer I(k) is to 1, the more dynamic requests are rejected due to insufficient resources, reflecting the severity of the imbalance between system resource supply and demand.
[0079] At the end of each scheduling cycle, the AUTBUS scheduling system collects and calculates data on two metrics: the allocation and usage of time slots within the dynamic time slot pool and statistics on the TN transmission request set R, recording the number of dynamic time slots N used in the current cycle. used (k) Total number of dynamic requests N req (k), and the number of unsuccessful allocation requests N. fail (k);
[0080] Based on the statistical information, the AUTBUS scheduling system calculates the utilization rate U(k) and failure rate I(k) corresponding to the current scheduling cycle. This process is executed once at the end of each scheduling cycle to continuously track the dynamic resource status. Based on the monitored index values, the AUTBUS scheduling system pre-sets the trigger conditions for PSO algorithm re-optimization. When an index is detected to meet the preset conditions, the particle swarm optimization algorithm is triggered to re-optimize the allocation of the dynamic time slot pool. Specifically, the AUTBUS scheduling system sets a threshold parameter for each index. When any monitored index exceeds its threshold, it is determined that the current resource allocation scheme has experienced performance degradation or resource shortage, reaching the PSO optimization trigger condition. At this time, the AUTBUS scheduling system will trigger a re-optimization event.
[0081] The AUTBUS scheduling system determines whether to enter the PSO optimization process based on the trigger condition judgment result: If the trigger condition is detected to be met at the end of a certain scheduling cycle, the system immediately starts the PSO algorithm to execute the dynamic resource reallocation process, that is, re-enters the scheduling process of steps eight to ten; the AUTBUS scheduling system uses the latest dynamic request set and the current resource usage status as input, runs the PSO algorithm to perform global optimization calculation on the dynamic time slot pool, and generates an updated dynamic time slot allocation scheme; subsequently, the AUTBUS scheduling system sends the new dynamic scheduling result to the data plane management node MN through the configuration interface, so that each terminal node transmits data according to the updated scheme in the next scheduling cycle; if the trigger condition is not met, no new optimization is executed at the end of the cycle, and the AUTBUS scheduling system maintains the existing time slot allocation scheme unchanged and continues to the next cycle.
[0082] The beneficial effects of this invention are as follows: This method achieves closed-loop control capability in the scheduling process. The AUTBUS scheduling system utilizes the latest dynamic resource status feedback in each scheduling cycle to determine whether to perform optimization adjustments, enabling the system to dynamically adapt to load changes. This closed-loop scheduling ensures that network resources are always used efficiently and that the quality of transmission services is continuously guaranteed. When network load or traffic characteristics change, the system can promptly reallocate resources through global PSO optimization to maintain performance indicators within the ideal range; while avoiding frequent intervention when the network is operating smoothly.
[0083] Other advantages, objectives, and features of the invention will be set forth in part in the description which follows, and in part will be apparent to those skilled in the art from the following examination, or may be learned from practice of the invention. The objectives and other advantages of the invention can be realized and obtained through the following description. Attached Figure Description
[0084] To make the objectives, technical solutions, and advantages of the present invention clearer, the preferred embodiments of the present invention will be described in detail below with reference to the accompanying drawings, wherein:
[0085] Figure 1 A diagram of the AUTBUUS bus network topology;
[0086] Figure 2 This represents the initial static scheduling intent;
[0087] Figure 3 This is the initial static time slot allocation diagram;
[0088] Figure 4 This is a diagram of the static time slot allocation process;
[0089] Figure 5This is a schematic diagram of static time slot allocation;
[0090] Figure 6 This is a static scheduling table;
[0091] Figure 7 This is a schematic diagram of the dynamic time-slot pool region;
[0092] Figure 8 This is a diagram of a dynamic time slot allocation scheme. Detailed Implementation
[0093] The following specific examples illustrate the implementation of the present invention. Those skilled in the art can easily understand other advantages and effects of the present invention from the content disclosed in this specification. The present invention can also be implemented or applied through other different specific embodiments, and various details in this specification can be modified or changed based on different viewpoints and applications without departing from the spirit of the present invention. It should be noted that the illustrations provided in the following embodiments are only schematic representations of the basic concept of the present invention. Unless otherwise specified, the following embodiments and features can be combined with each other.
[0094] It should be noted that the illustrations provided in the following embodiments are only schematic representations of the basic concept of the present invention. Therefore, the drawings only show the components related to the present invention and are not drawn according to the actual number, shape and size of the components in the actual implementation. In the actual implementation, the form, quantity and proportion of each component can be arbitrarily changed, and the layout of the components may also be more complex.
[0095] In the following description, numerous details are explored to provide a more thorough explanation of embodiments of the invention. However, it will be apparent to those skilled in the art that embodiments of the invention may be practiced without these specific details. In other embodiments, well-known structures and devices are shown in block diagram form rather than in detail to avoid obscuring embodiments of the invention.
[0096] Example 1:
[0097] This invention provides an AUTBUS hybrid time slot allocation and scheduling algorithm to address issues such as resource waste and response lag that may occur under significant load variations. This method combines static and dynamic scheduling. For real-time periodic data, a two-dimensional bin packing-FFD algorithm is used for static scheduling, while for real-time aperiodic and non-real-time data, a Particle Swarm Optimization (PSO) algorithm is used for dynamic scheduling. Specifically, real-time aperiodic and non-real-time data acquire time slot resources through dynamic request. Time slots occupied by real-time aperiodic data are locked after dynamic request until PSO optimization is triggered and reallocated. Non-real-time data is immediately reclaimed after data transmission, ensuring that the transmission needs of non-real-time data streams are met promptly.
[0098] The AUTBUS hybrid time-slot scheduling architecture consists of a user plane, a control plane, and a data plane.
[0099] The user-facing app is used to receive real-time, periodic data streams input by the user.
[0100] The AUTBUS scheduling system on the control plane is used to calculate the scheduling results of static and dynamic scheduling and send them to the MN on the data plane.
[0101] The data plane AUTBUS network consists of MN (Management Node, MN) and TN (Terminal Node, TN), with one and only one MN in a single AUTBUS network. Based on the type of data stream transmitted, AUTBUS terminal nodes are divided into three categories: A, B, and C. Category A terminal nodes transmit both real-time and non-real-time data, Category B terminal nodes transmit only real-time data, and Category C terminal nodes transmit only non-real-time data. Its scheduling architecture is as follows: Figure 1 As shown.
[0102] The proposed AUTBUS hybrid time slot allocation and scheduling algorithm operates on the control plane AUTBUS scheduling system. The AUTBUS scheduling system receives real-time periodic data input from the user via the user plane APP through the northbound interface, then performs static scheduling on the AUTBUS network using a two-bit binning algorithm, generating static scheduling results. Unallocated time slot resources are added to the dynamic time slot pool. The AUTBUS scheduling system then sends the static scheduling results to the data plane MN through the configuration interface, completing the static scheduling of the AUTBUS network and entering the data transmission phase.
[0103] During the data transmission phase, the AUTBUS scheduling system uses the PSO optimization algorithm to schedule the dynamic time slot pool to meet the transmission needs of the TN for both real-time aperiodic and non-real-time data. Specifically, when the TN has a need for real-time aperiodic and non-real-time data transmission, it sends a dynamic request to the MN. Upon receiving the dynamic request, the MN reports the request to the AUTBUS scheduling system. The AUTBUS scheduling system aggregates all dynamic request requests, forming a unified request set, which is used as input data for the dynamic time slot pool scheduling. The AUTBUS scheduling system then schedules the dynamic time slot pool using the PSO optimization algorithm and sends the scheduling results back to the MN.
[0104] The definitions of terms used in this scheme are shown in Table 1:
[0105] Table 1
[0106]
[0107]
[0108] This invention proposes a hybrid time slot allocation and scheduling method for AUTBUS industrial fieldbus to solve problems such as resource waste and response lag that may occur in AUTBUS networks when the load changes significantly.
[0109] Before designing a scheduling method, a traffic model needs to be designed and constraints determined. To this end, this invention designs a traffic information model suitable for the AUTBUS scheduling system, abstracting each data stream into a four-tuple representing data length, transmission period, deadline, and data type. The data type distinguishes between real-time periodic, real-time aperiodic, and non-real-time services, assigning different priorities; the smaller the value, the higher the priority. Based on this model, this invention further proposes key constraints that scheduling must satisfy, such as data transmission completion within the deadline, data encapsulation rules within the same node, maximum transmission limit, and pilot insertion requirements. This traffic information model and constraints together form the basis for the hybrid scheduling algorithm design, providing structural support for the coordinated optimization of static and dynamic time slot scheduling.
[0110] This invention combines static and dynamic scheduling. For real-time periodic data, a two-dimensional bin packing algorithm is used for static scheduling, while for real-time non-periodic data and non-real-time data, a PSO algorithm is used for dynamic scheduling.
[0111] The traffic information model is as follows: This invention divides data in the AUTBUS network into three categories: real-time periodic data, real-time non-periodic data, and non-real-time data. As shown in Table 2, different data types correspond to different values and priorities. The smaller the value, the higher the priority. The AUTBUS scheduling system can schedule different types of services based on the value.
[0112] Table 2
[0113] Type TYPE Priority Real-time periodic data 0x20 0 Real-time aperiodic data 0x30 1 Non-real-time data 0x40 2
[0114] Given an AUTBUUS bus with a known number of nodes n, encapsulate the load data of each node i (i∈(1,n)) into a data stream f. i,j (L i,j ,T i,j D i,j ,TYPE), use the notation f i,j Let L represent the j-th data stream on node i, where L i,j For data stream f i,j The length of the payload data segment, in bytes (T). i,j For data stream f i,j The transmission period, in milliseconds (ms), D i,j The deadline for the data stream is specified, and TYPE specifies the type of data stream. This indicates the length of a time slot.
[0115] (1) The constraints are as follows: the length, transmission period and deadline of all data streams in the AUTBUS network are known. The deadline of the data stream is equal to the transmission period. The data stream transmission must be completed within the deadline and the worst response time must be less than the deadline.
[0116] (2) In the AUTBUS network, only data from the same node can be encapsulated into a single data stream, and can only be uniquely encapsulated into a single data stream.
[0117] (3) Within one cycle, the same data stream f i,j Different transmission time slot intervals must be greater than the data stream f i,j transmission period T i,j As shown in formula (1), This indicates the start time of the r-th transmission of the k-th data stream in AUTBUS node i.
[0118]
[0119] (4) Within a single scheduling cycle, each data stream can be transmitted more than its maximum number of times and each transmission cannot exceed the allocated time slot resource size.
[0120] (5) In AUTBUS, pilot information is needed to distinguish and confirm the start of a resource. Therefore, in addition to sending frame pilot signals at the beginning of each signal frame, pilot information needs to be inserted in a specific form within the allocated terminal node to evaluate the channel and reconstruct the signal. AUTBUS supports two bearer modes: Bearer mode A transmits both data and pilot signals in a single OFDM half-band, where the ratio of pilot signals to data subcarriers is 1:8; Bearer mode B transmits pilot signals in the first OFDM half-band of the allocated resource, and transmits data in the subsequent 1 to n OFDM symbols. In the proposed invention, bearer mode B is used by default.
[0121] The implementation steps of an AUTBUS hybrid time slot allocation and scheduling method are as follows:
[0122] AUTBUS Hybrid Time Slot Allocation and Scheduling Method Input: During the static scheduling phase, the user inputs the set of real-time periodic data stream information F = {f} from the AUTBUS network via the user's APP. 1,1 ,f 1,2 ,...f i,j ,...f n,k}; During the dynamic scheduling phase, the request R = {r} reported by TN to MN 1,1 ,r 1,2 ,...r o,u ,...r m,h}
[0123] Output of the AUTBUS hybrid time slot allocation and scheduling method: the time slot resource allocation scheme of the AUTBUS network within a scheduling cycle.
[0124] Step 1: The user inputs a set of real-time periodic data stream information F = {f} through the user-facing APP. 1,1 ,f 1,2 ,...,f i,j ,...,f n,k}, where f i,j This represents the j-th data stream in node i;
[0125] Step Two: The AUTBUS scheduling system receives the set of real-time periodic data stream information F input by the user through the user plane APP via the northbound interface. The AUTBUS scheduling system then determines the data streams based on their transmission periods T in F. i,j The basic period BC and scheduling period SC are calculated to determine the AUTBUUS transmission mode m.
[0126] The ideal scheduling period SC is the least common multiple of all data stream transmission periods, and the ideal basic period BC is the greatest common divisor of all data stream transmission periods. The ideal scheduling period SC is formed by a cycle of several ideal basic periods BC, and the AUTBUS network also uses the ideal scheduling period SC as the basic unit for cyclic scheduling. The calculation method is shown in formulas (2)-(3). T i,j Let LCM be the transmission period of the j-th data stream of node i in AUTBUS, LCM be the least common multiple of the data stream transmission periods, and GCD be the greatest common divisor of the data stream transmission periods.
[0127] SC = LCM(T) 1,1 ,T 1,2 ,...,T i,j (2)
[0128] BC = GCD(T) 1,1 ,T 1,2 ,...,T i,j (3)
[0129] The AUTBUS scheduling system determines the basic period BC by consulting Table 3, which contains the frame length and transmission mode parameters, based on the calculated ideal basic period BC. T Confirm the matching signal frame length and transmission mode, and set n basic periods BC. T The actual cycle period SC in this scheduling algorithm is defined as one cycle. T The calculation of n is shown in formula (4).
[0130]
[0131] In the formula, n is the number of basic cycles within the AUTBUS scheduling period; SC is the ideal scheduling period of the AUTBUS network; and BC is the ideal basic cycle.
[0132] Table 3
[0133]
[0134] The AUTBUS scheduling system is based on the actual cyclic scheduling period SC T Calculate real-time periodic data in SC T Number of internal transmissions K i,j K i,j The period T of the real-time periodic data stream i,j and actual cyclic scheduling period SC T The decision is made, and the formula is shown in (5).
[0135]
[0136] Step 3: The AUTBUS scheduling system prioritizes the data streams in set F according to their latency requirements and service priority rules, forming a sequence to be scheduled.
[0137] The AUTBUS scheduling system prioritizes the real-time periodic data stream set F to form a sequence of data to be scheduled. The AUTBUS scheduling system comprehensively considers data flow f i,j Load segment data length L i,j Sending period T i,j and data stream deadline D i,j Determine the data stream f i,j The scheduling priority is determined, and the data stream f is scheduled according to the scheduling priority. i,j Sort the data. The priority sorting rule is: f i,j transmission period T i,j The shorter, f i,j The higher the priority, the better; when f i,j transmission period T i,j If they are the same, then compare f. i,j Load segment data length L i,j Load segment data length L i,j The larger f is i,j The higher the priority, the better.
[0138] Step 4: The AUTBUS scheduling system determines the scheduler based on f in the sequence Q to be scheduled. i,j Data stream length L i,j and transmission period T i,j Calculate the number of time slots N required for each data stream. i,j ;
[0139] The AUTBUS scheduling system schedules data based on each data stream f i,j Transmission length L i,j Calculate the time slot requirement N for each data stream. i,j Once the AUTBUS transmission mode is determined, the duration t of one time slot is... one This is also determined accordingly. Each time slot consists of an upper sideband and a lower sideband, and the different encoding methods of the upper and lower sidebands determine its data carrying capacity, as shown in Table 4.
[0140] Table 4
[0141]
[0142] The transmission mode m and the half-encoding method together determine the number of bytes q that a single time slot can carry. For example, when the transmission mode m is 0, the upper sideband encoding method is 2, and the lower sideband encoding method is 2, the number of bytes that a single time slot can carry is q = 246 + 246, that is, 492 bytes of data can be carried in a single time slot.
[0143] The AUTBUS scheduling system schedules each data stream f i,j Allocate an appropriate number of time slots to ensure smooth data transmission. Considering pilot overhead, the calculation method is shown in formula (6). If the number of time slots for each data stream is N... i,j If it is not an integer, round it up.
[0144]
[0145] Step 5: The AUTBUS scheduling system employs a two-dimensional bin packing algorithm. Following the First-Fit Decreasing (FFD) principle, it sequentially extracts data streams from the scheduling sequence Q and allocates fixed static time slot resources to each real-time periodic data stream within the AUTBUS time slot resources. The specific method is as follows:
[0146] ① The AUTBUS scheduling system abstracts the time slot resources within a scheduling period into a two-dimensional space. The vertical dimension represents the number of frames transmitted within the scheduling period, i.e., the multiple basic periods covered by the scheduling period; the horizontal dimension represents the number of available time slot units within each basic period. Each basic period is divided into 64 time slot units, of which time slot units numbered 1-4 and 62-64 are reserved resources by the system and are occupied by the MN, and cannot be allocated to the TN. Therefore, a maximum of 56 time slot units can be scheduled horizontally per frame. The initial static scheduling matrix is as follows: Figure 2 As shown.
[0147] ②The AUTBUS scheduling system will schedule the sequence of events to be scheduled. Each data stream f in i,j Consider it as a two-dimensional object, its width W i,j and height H i,j With the length L of the data stream i,j and transmission period T i,j The relevant information is shown in formulas (7)-(9). TS is the data stream transmission rate.
[0148]
[0149] ③ The AUTBUS scheduling system allocates the above two-dimensional items according to the FFD packing strategy. Assume the AUTBUS scheduling system calculates f... 1,1 W is needed 1,1 =2,H 1,1=8, then the AUTBUS scheduling system starts from (4,f1), horizontally allocates 2 time slot units, and vertically allocates them 8 times consecutively, thus completing the allocation of f. 1,1 Scheduling and allocation, such as Figure 3 As shown.
[0150] ④ If the AUTBUS scheduling system calculates the second data stream f 2,1 W 2,1 =7,H 2,1 =4, then the AUTBUS scheduling system searches for a space in the unoccupied horizontal column that can accommodate W. 2,1 =7, meaning the AUTBUS scheduling system starts at (6,f1) as f 2,1 Time slot resources are allocated four times consecutively in the vertical direction (frames 1, 3, 5, and 7), with each allocation occupying seven time slot units horizontally. If f 3,1 W 3,1 =5, its height H 3,1 If the value is also 4, then the AUTBUS scheduling system utilizes f 2,1 The unused interval frames, namely frames 2, 4, 6, and 8, are used for slot filling, thereby increasing the lateral loading density. The AUTBUS scheduling system allocates time slot resources four times consecutively in the longitudinal direction (frames 2, 4, 6, and 8), each time occupying five time slot units laterally. This completes the allocation of time slot resources for frame f... 2,1 and f 3,1 The static scheduling table after allocation is as follows Figure 4 As shown.
[0151] ⑤ If the AUTBUS scheduling system calculates the i-th data stream f i,1 W i,1 =4,H i,1 If f = 2, then the AUTBUUS scheduling system will select two interval frames from the remaining blank area to allocate resources, and horizontally allocate 4 time slot units. That is, the AUTBUUS scheduling system starts from (13, f1) for f 4,1 Time slot resources are allocated twice consecutively in the vertical direction, at frames 1 and 5, with each allocation occupying 4 time slot units horizontally. After allocation, as follows... Figure 5 As shown.
[0152] ⑥ Similarly, for subsequent unallocated data streams, the AUTBUS scheduling system continuously scans the scheduling matrix, searching for suitable areas from left to right and top to bottom to ensure that each data stream obtains the static resources it needs. If the current column cannot accommodate the data, the system will move to a new column on the right and repeat the above binning strategy until all data streams are loaded or resources are exhausted. During the binning process, if part of the frame height in a column is occupied, the system will skip the occupied area and search for empty frames for allocation. If a data stream cannot be accommodated, it can be recorded as a failed allocation and wait for the next scheduling cycle.
[0153] Step Six: After the static time slot resource allocation is completed, the AUTBUS scheduling system marks the remaining time slots as dynamic time slots and forms a dynamic time slot pool to support dynamic resource requests in subsequent data transmission phases.
[0154] At the beginning of each scheduling cycle, the AUTBUS scheduling system initializes the dynamic time slot pool based on the static scheduling results. This involves removing time slots already occupied by the static scheduling and removing all time slots locked by real-time aperiodic data streams and those still in use, ensuring that the dynamic time slot pool only contains available time slots not currently occupied. The remaining set of available time slots, S, forms the dynamic time slot pool for the current scheduling cycle, as shown in formula (10), where m is the total number of dynamic time slots. The dynamic time slot pool is used for dynamic application and occupation by real-time aperiodic data and non-real-time data within the current cycle.
[0155] S={s 1, s2,s3,...s} (10)
[0156] Step 7: The AUTBUUS scheduling system sends the static scheduling results to the MN in the data plane through the configuration interface. Based on the received static scheduling configuration table, the MN completes clock synchronization and initialization of static time slot resources for all TNs within the AUTBUUS network, and then enters the data transmission phase.
[0157] Step 8: During the data transmission phase, when the TN generates real-time aperiodic data or non-real-time data transmission needs, the TN initiates a dynamic time slot request to the MN. After receiving the request, the MN reports the requests to the AUTBUS scheduling system, forming a request set R = {r 1,1 ,rr 1,2 ,...r o,u ,...r m,h}, where request r o,u For the u-th request of node o, r o,u ={NodeID o,u ,L o,u ,τ o,u ,α o,u};NodeID o,u The request is for a unique identifier from TN; L o,u τ is the effective payload length required for this TN transmission; o,u =1 indicates a real-time aperiodic data stream, τ o,u =0 indicates a non-real-time data stream; α o,u This is the deadline for data stream transmission.
[0158] The specific process for applying for dynamic time slot resources is as follows:
[0159] ① After the scheduling period SC begins, MN will report all collected time slot requests to the AUTBUS scheduling system. Each time slot request is represented by a quadruple r. o,u As shown in formula (11), where the request r o,u For the i-th request of node o; NodeID o,u The request is for a unique identifier from TN; L o,u τ is the effective payload length required for this TN transmission; o,u =1 indicates a real-time aperiodic data stream, τ o,u =0 indicates a non-real-time data stream; α o,u This is the deadline for data stream transmission.
[0160] r o,u ={NodeID o,u ,L o,u ,τ o,u ,α o,u} (11)
[0161] ② For each dynamic time slot request, the AUTBUS scheduling system needs to calculate the required number of time slots. This is given by the number of bytes q in each time slot and the payload length L of each data stream. o,u The required number of time slots can be calculated using formula (12).
[0162]
[0163] ③AUTBUS scheduling system determines request r o,u The required number of time slots N o,u If the number of available time slots in the dynamic time slot pool S is less than or equal to the number of available time slots remaining, the required time slot resources will be allocated to the request and the number of available time slots will be updated. If the number of available time slots is not met, the request will be allocated resources after the next scheduling cycle or after the time slots are released.
[0164] Step Nine: The AUTBUS scheduling system, based on the dynamic request set R and the dynamic time slot pool, uses the PSO algorithm to perform global optimization scheduling of the dynamic time slot pool to maximize dynamic time slot utilization and dynamic request success rate. Specifically, each particle corresponds to a dynamic time slot allocation scheme. The PSO algorithm searches for the optimal resource allocation scheme by continuously updating the particle's position and velocity. Finally, the AUTBUS scheduling system distributes the optimal resource allocation scheme to MN.
[0165] In the PSO algorithm, each particle represents a candidate dynamic time slot allocation scheme. To clearly represent the mapping relationship between each request in the dynamic request set R and the available time slots in the dynamic time slot pool S, the AUTBUS scheduling system uses real-valued vectors to encode and model the positions of particles, as shown in formula (13):
[0166] X = (x 1,1 ,x 1,2 ,...x o,u ,...x m,h (13)
[0167] Each element x of particle vector X o,u Corresponding to a dynamic request r o,u ∈R. The AUTBUS scheduling system implicitly characterizes the priority order of requests by encoding the particle's position using this real number. During decoding, the AUTBUS scheduling system sorts the corresponding requests according to the size relationship of each element in vector X, thereby obtaining the specific scheduling scheme for the particle. Specifically, it uses the "implicit priority sorting" method: the AUTBUS scheduling system first sorts τ o,u Requests equal to 1 are sorted in ascending order according to their corresponding position vector values; then τ o,u Requests with a value of 0 are sorted in ascending order according to their corresponding position vector values. Finally, the sorted real-time request queue is placed before the non-real-time request queue, and the two queues are merged to form a complete scheduling sequence. This ensures that real-time aperiodic requests always take precedence over non-real-time requests during the decoding process, and that for requests of the same type, those with smaller position vector values are scheduled earlier.
[0168] The initial position vector of particles is usually generated randomly within the interval [0,1]. Each x generally follows a uniform distribution and is independent of the others to ensure the diversity of the initial population. Assume there are three dynamic time slot requests in the current scheduling period: r 1,1 and r 2,1 For real-time aperiodic data requests, i.e., τ o,u =1, r 3,1 For non-real-time data requests, i.e., τ o,u =0, and their data stream transmission deadlines are α respectively. 1,1 =100ms, α 2,1 =150ms, r 3,1 Insensitive to deadline. If the position vector of a particle X has element values x in sequence... 1,1 =0.2, x 2,1 =0.7, x 3,1 =0.5, then when the AUTBUS scheduling system decodes the particle, it first sets the real-time request set r 1,1 r 2,1 Sort by x values from smallest to largest to get the order [r] 1,1 ,r 2,1 Then, the non-real-time request r... 3,1 After placing it, the complete scheduling queue [r] is obtained. 1,1 ,r 2,1 ,r3,1 ]. Although r 3,1 The x-value of this request falls between the x-values of the other two requests, but because its type is non-real-time data, it is automatically placed after all real-time requests during sorting. Subsequently, the AUTBUS scheduling system will allocate dynamic time slot resources to the requests according to the priority queue order obtained from this decoding: prioritizing the request at the head of the queue, r. 1,1 Required N 1,1 The system allocates one time slot and deducts the allocated time slot from the dynamic time slot pool; then it allocates the next request r. 2,1 Required N 2,1 The system allocates time slots and updates the remaining available time slots. When a request requires more time slots than the current dynamic time slot pool has available time slots, the AUTBUS scheduling system will skip that request and attempt to allocate resources for the next request in the queue. In this way, the specific scheduling scheme implicitly represented by the particle position vector x can be obtained, ensuring overall optimization of dynamic time slot resource utilization efficiency and request fulfillment rate within the current period.
[0169] During the PSO iteration process, the particle position encoding is continuously updated based on optimization feedback, gradually optimizing the implicit priority scheduling scheme. The particle swarm optimization algorithm designs its fitness function to maximize dynamic slot utilization and dynamic request success rate. The allocation scheme obtained after decoding each particle's current position is evaluated against this objective. The AUTBUS scheduling system records the historical best positions of individual particles. And the global optimal position of the entire population. The PSO algorithm uses information from these two optimal solutions to guide the particle search. Specifically, in the t-th iteration, the position and velocity of the i-th particle are updated according to formulas (14)-(15):
[0170]
[0171] Where w is the inertia weight, c1 and c2 are acceleration constants, and r1 and r2 are random numbers ranging from (0,1). Through the above velocity-position update mechanism, the particle's position vector X will drift in the solution space along the direction that improves fitness, and each element x... iThe values of the time slot allocation algorithm continuously approach a sorting layout that optimizes scheduling performance. During iteration, the PSO algorithm adjusts the real-number encoding of particles to change the relative order of different requests, thereby exploring more efficient time slot allocation schemes. As iterations progress, the particle swarm gradually converges to a relatively efficient solution set. When the position of the globally optimal particle no longer changes significantly, a near-optimal dynamic time slot allocation scheme can be considered found. Finally, the AUTBUS scheduling system selects the time slot allocation scheme decoded by the globally optimal particle at the end of the iteration as the result of this round of scheduling and sends it to the MN for execution, thus completing the PSO-based dynamic time slot resource optimization scheduling process.
[0172] Step 10: Based on the dynamic time slot allocation results issued by the AUTBUS scheduling system, the MN notifies each TN to execute the data transmission task. Time slots occupied by real-time aperiodic data will remain locked after allocation until the next PSO optimization is triggered, while time slots occupied by non-real-time data will be released back to the dynamic time slot pool immediately after data transmission is completed.
[0173] Step 11: The AUTBUS scheduling system periodically monitors indicators such as the utilization rate of the dynamic time slot pool, the dynamic request failure rate, and the average latency to determine whether the PSO optimization trigger conditions are met. When the trigger conditions are met, the system restarts the PSO algorithm, re-optimizes the dynamic time slot pool allocation scheme, and repeats steps eight through ten to continuously ensure the effectiveness of system resources and the quality of transmission services.
[0174] The AUTBUS scheduling system periodically monitors dynamic resource status indicators and determines whether to trigger the PSO algorithm for readjustment. Key indicators of the dynamic resource status include: dynamic time slot pool utilization U and dynamic request failure rate I.
[0175] ① Dynamic time slot pool utilization rate U: This represents the degree of utilization of dynamic time slot resources. The total number of time slots in the dynamic time slot pool is N. dyn The actual number of dynamic time slots occupied within scheduling period k is N. used(k) The dynamic time slot pool utilization rate is defined as shown in formula (16):
[0176]
[0177] The dynamic time slot pool utilization rate U(k) ranges from 0 to 1. This indicator reflects the current resource saturation level of the dynamic time slot pool. A higher value indicates that the dynamic resources are almost fully utilized, while a value close to 1 indicates that the dynamic pool is approaching saturation.
[0178] ② Dynamic request failure rate I: This represents the proportion of dynamic resource requests that are not fulfilled. Let N be the total number of dynamic time slot requests within scheduling period k. req(k) The number of failed requests that failed to allocate time slots is N.fail(k) The dynamic application failure rate is defined as shown in formula (17):
[0179]
[0180] The dynamic request failure rate I(k) ranges from 0 to 1. This indicator represents the degree to which dynamic requests cannot be satisfied within the current period. The closer I(k) is to 1, the more dynamic requests are rejected due to insufficient resources, reflecting the severity of the imbalance between system resource supply and demand.
[0181] At the end of each scheduling cycle, the AUTBUS scheduling system collects and calculates the above-mentioned indicators. Specifically, the AUTBUS scheduling system records the number of dynamic time slots N used in the current cycle based on the allocation and usage of time slots in the dynamic time slot pool and the statistics of the TN transmission request set R. used (k) Total number of dynamic requests N req (k), and the number of unsuccessful allocation requests N. fail (k).
[0182] Based on these statistical data, the AUTBUS scheduling system calculates the utilization rate U(k) and failure rate I(k) for the corresponding scheduling cycle. This process is executed once at the end of each scheduling cycle to continuously track the dynamic resource status. The AUTBUS scheduling system pre-sets trigger conditions for PSO algorithm re-optimization based on the monitored metric values. When a metric meets the preset conditions, the Particle Swarm Optimization algorithm is triggered to re-optimize the allocation of the dynamic time slot pool. Specifically, the system sets threshold parameters for each metric, such as the utilization threshold U(k) and the failure rate threshold I(k). When any monitored metric exceeds its threshold, it is determined that the current resource allocation scheme has experienced performance degradation or resource shortage, reaching the PSO optimization trigger condition. At this time, the system will trigger a re-optimization event. The threshold settings can be adjusted based on network operation experience or service quality requirements to balance trigger frequency and response timeliness.
[0183] The AUTBUS scheduling system determines whether to enter the PSO optimization process based on the results of the above trigger conditions: If the trigger condition is detected at the end of a scheduling cycle, the system immediately starts the PSO algorithm to execute the dynamic resource reallocation process (i.e., re-enters the scheduling process described in steps eight to ten). The AUTBUS scheduling system uses the latest dynamic request set and the current resource usage status as input to run the PSO algorithm to perform global optimization calculations on the dynamic time slot pool, generating an updated dynamic time slot allocation scheme. Subsequently, the AUTBUS scheduling system sends the new dynamic scheduling results to the data plane management node (MN) through the configuration interface, enabling each terminal node to transmit data according to the updated scheme in the next scheduling cycle. Conversely, if the trigger condition is not met, no new optimization is executed at the end of the cycle, and the AUTBUS scheduling system maintains the existing time slot allocation scheme unchanged into the next cycle, thereby avoiding unnecessary computational overhead and frequent adjustments, and ensuring the stability of system operation.
[0184] Through the aforementioned periodic indicator monitoring and condition triggering mechanism, this method achieves closed-loop control of the scheduling process. The AUTBUS scheduling system utilizes the latest dynamic resource status feedback in each scheduling cycle to determine whether to perform optimization adjustments, enabling the system to dynamically adapt to load changes. This closed-loop scheduling ensures that network resources are always used efficiently and that transmission service quality is continuously guaranteed. When network load or traffic characteristics change, the system can promptly reallocate resources through global PSO optimization to maintain performance indicators within the ideal range; while avoiding frequent interventions when the network is operating smoothly. In summary, the dynamic indicator monitoring and PSO optimization triggering mechanism described in step eleven ensures that the entire scheduling process can continuously self-adjust according to actual operating conditions, continuously optimizing the effectiveness of system resources and the quality of service transmission.
[0185] Example 2:
[0186] In the AUTBUS industrial broadband bus network, data flows are mainly divided into real-time periodic data flows, real-time aperiodic data flows, and non-real-time data flows. This invention schedules real-time periodic data flows, real-time aperiodic data flows, and non-real-time data flows separately. For real-time periodic data, a two-dimensional bin packing algorithm is used for static scheduling. Specifically, the AUTBUS scheduling system calculates the mode, scheduling cycle, and resource allocation results before the AUTBUS network starts and sends them to the MN. For real-time aperiodic data and non-real-time data, a PSO algorithm is used for dynamic scheduling. Specifically, real-time aperiodic data and non-real-time data acquire time slot resources through dynamic application. The time slots occupied by real-time aperiodic data are locked after dynamic application until the PSO optimization trigger is met and then reallocated. Non-real-time data is immediately reclaimed after data transmission is completed, ensuring that the transmission needs of non-real-time data flows can be met in a timely manner.
[0187] This paper sets up a total of 22 terminal nodes of all types A, B, and C for data stream transmission. Among them, 16 terminal nodes of types A and B transmit real-time periodic data streams, and 6 terminal nodes of type C transmit real-time data streams. All 16 nodes transmit real-time data streams, including real-time periodic data streams and real-time non-periodic data streams. The following 16 real-time periodic data streams are pending scheduling. The AUTBUS scheduling system determines the transmission order based on the traffic type and period of the real-time periodic data streams, as shown in Table 5.
[0188] Table 5
[0189]
[0190] Real-time periodic data have the same priority, so they need to be sorted according to specific rules during scheduling. First, all real-time periodic data streams are sorted in ascending order according to the length of their scheduling period, meaning that streams with shorter periods are transmitted first, ensuring the low-latency transmission requirements of high-frequency data streams. When multiple data streams have the same period, they are sorted in descending order according to the amount of data to be transmitted, meaning that data streams with larger amounts of data are transmitted first, to improve bandwidth utilization and reduce transmission congestion caused by data backlog.
[0191] The real-time periodic data stream, after being sorted, is shown in Table 6. The AUTBUS scheduling system calculates BC based on the data flow information in the real-time periodic data stream sorting table. T =0.5ms, SC T =4ms, and based on this period parameter, Table 3 is consulted to determine the data transmission mode m=3, with half-sideband coding method 3, to ensure a higher demodulation threshold signal-to-noise ratio. With transmission mode m=3 and half-sideband coding method 3, each time slot can carry 94 bytes of data.
[0192] Table 6
[0193]
[0194] The AUTBUS scheduling system generates a sequence of real-time periodic data streams to be scheduled based on the sorting table. It then uses an algorithm to abstract the data streams into two-dimensional items for optimized packing, ensuring that the real-time periodic data streams are evenly distributed across the scheduling table within a single scheduling cycle. Data streams of the same cycle from the same node are encapsulated and transmitted together. The scheduling results of the real-time periodic data streams are shown in Table 7.
[0195] Table 7
[0196]
[0197]
[0198] The AUTBUS scheduling system generates a static scheduling table based on the scheduling results of real-time periodic data streams, such as... Figure 6 As shown.
[0199] The AUTBUS scheduling system marks time slot resources not allocated by static scheduling and adds them to the dynamic time slot pool. At the beginning of each scheduling cycle, the AUTBUS scheduling system initializes the dynamic time slot pool based on the static scheduling results. This involves removing time slots already occupied by static scheduling, and removing all time slots locked by real-time aperiodic data streams and those still in use, ensuring that the dynamic time slot pool only contains available time slots not currently occupied. The remaining set of available time slots forms the dynamic time slot pool S for the current scheduling cycle. Figure 7 As shown in the red box.
[0200] After completing the static scheduling phase in the AUTBUS network, the AUTBUS scheduling system sends the static scheduling results to the MN (Mean Interchange Node) in the data plane via the configuration interface. Based on the received static scheduling configuration table, the MN completes network-wide clock synchronization for all TNs (Transport Nodes) within the AUTBUS network and initializes static time slot resources. Subsequently, the network enters the data transmission phase, and dynamic time slot scheduling begins. This aims to optimize the scheduling of real-time aperiodic data streams and non-real-time data streams, ensuring efficient utilization of system resources and guaranteeing quality of service.
[0201] During the data transmission phase, if the TN generates a real-time aperiodic data stream or a non-real-time data stream transmission requirement, the TN will initiate a dynamic time slot request to the MN. After receiving the request, the MN will report it to the AUTBUS scheduling system, forming a dynamic request set R = {r 1,1 ,r 1,2 ,...r o,u ,...r m,h There are 8 dynamic time slot request streams, including real-time aperiodic data and non-real-time data. The specific attributes of each request are shown in Table 8.
[0202] Table 8
[0203]
[0204]
[0205] The AUTBUS scheduling system is based on a dynamic request set R and a dynamic time slot pool. It employs the PSO algorithm for global optimization scheduling of the dynamic time slot pool to maximize dynamic time slot utilization and dynamic request success rate. During optimization, the system prioritizes fulfilling time-sensitive real-time requests and adjusts the allocation order of each flow to improve overall satisfaction and utilization. The optimized allocation table is shown in Table 9.
[0206] Table 9
[0207]
[0208] The time slot allocation table optimized using the PSO algorithm is as follows: Figure 8 As shown, the AUTBUS scheduling system sends a dynamic time slot allocation scheme to the MN, and the MN notifies each TN to execute the data transmission task. Time slots occupied by real-time aperiodic data will remain locked after allocation until the next PSO optimization is triggered, while time slots occupied by non-real-time data will be released back to the dynamic time slot pool immediately after data transmission is completed.
[0209] Example 3:
[0210] An electronic device, comprising a memory and a processor;
[0211] The memory is used to store computer programs;
[0212] The processor is configured to implement the method described in Embodiment 1 when executing the computer program.
[0213] Example 4:
[0214] A computer-readable storage medium storing a computer program that, when executed by a processor, implements the method described in Embodiment 1.
[0215] Example 5:
[0216] A computer program product includes a computer program that, when executed by a processor, implements the method described in Example 1.
[0217] In the above embodiments, the reference to "this embodiment" in the specification indicates that a specific feature, structure, or characteristic described in connection with the embodiment is included in at least some embodiments, but not necessarily all embodiments. Multiple appearances of "this embodiment" do not necessarily refer to the same embodiment.
[0218] In the above embodiments, although the invention has been described in conjunction with specific embodiments thereof, many substitutions, modifications, and variations of these embodiments will be apparent to those skilled in the art from the foregoing description. For example, other memory structures (e.g., dynamic RAM (DRAM)) may be used with the embodiments discussed. The embodiments of the invention are intended to cover all such substitutions, modifications, and variations falling within the broad scope of the appended claims.
[0219] As will be understood by those skilled in the art, the computer-readable storage medium described in this embodiment allows for the implementation of all or part of the steps in the above method embodiments by computer program-related hardware. The aforementioned computer program can be stored in a computer-readable storage medium. When executed, the program performs the steps of the above method embodiments; and the aforementioned storage medium includes various media capable of storing program code, such as ROM, RAM, magnetic disks, or optical disks.
[0220] The electronic terminal provided in this embodiment includes a processor, a memory, a transceiver, and a communication interface. The memory and the communication interface are connected to the processor and the transceiver and complete communication between them. The memory is used to store computer programs, the communication interface is used to perform communication, and the processor and the transceiver are used to run the computer programs, so that the electronic terminal performs the steps of the above method.
[0221] In this embodiment, the memory may include random access memory (RAM) and may also include non-volatile memory, such as at least one disk storage device.
[0222] The processors mentioned above can be general-purpose processors, including central processing units (CPUs), network processors (NPs), etc.; they can also be digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components.
[0223] This invention can be used in a wide range of general-purpose or special-purpose computing system environments or configurations. Examples include: personal computers, server computers, handheld or portable devices, tablet devices, multiprocessor systems, microprocessor-based systems, set-top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, and distributed computing environments including any of the above systems or devices, etc.
[0224] This invention can be described in the general context of computer-executable instructions, such as program modules, that are executed by a computer. Generally, program modules include routines, programs, objects, components, data structures, etc., that perform a specific task or implement a specific abstract data type. This invention can also be practiced in distributed computing environments where tasks are performed by remote processing devices connected via a communication network. In distributed computing environments, program modules can reside in local and remote computer storage media, including storage devices.
[0225] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention and are not intended to limit it. Although the present invention has been described in detail with reference to preferred embodiments, those skilled in the art should understand that modifications or equivalent substitutions can be made to the technical solutions of the present invention without departing from the spirit and scope of the present invention, and all such modifications or substitutions should be covered within the scope of the claims of the present invention.
Claims
1. An AUTBUS hybrid time slot allocation and scheduling method, characterized in that: Includes the following steps: Step 1: The user inputs a set of real-time periodic data stream information F through the user interface APP; Step 2: The AUTBUS scheduling system receives the set of real-time periodic data stream information F input from the user plane; The AUTBUS scheduling system calculates the basic period and scheduling period based on the transmission period of each data stream in F, and determines the AUTBUS transmission mode. Step 3: The AUTBUS scheduling system prioritizes the data streams in set F according to their latency requirements and service priority rules, forming a sequence to be scheduled. Step 4: The AUTBUS scheduling system calculates the number of time slots required for each data stream based on its length and transmission period in the sequence to be scheduled. Step 5: The AUTBUS scheduling system adopts a two-dimensional bin packing algorithm. According to the First-FitDecreasing (FFD) principle, it sequentially extracts data streams from the sequence to be scheduled and allocates fixed static time slot resources to each real-time periodic data stream in the AUTBUS time slot resources. Step Six: After the static time slot resource allocation is completed, the AUTBUS scheduling system marks the remaining time slots as dynamic time slots and forms a dynamic time slot pool; Step 7: The AUTBUS scheduling system sends the static scheduling results to the MN (Management Node) in the data plane; the MN completes the clock synchronization and initialization of static time slot resources for all TN (Terminal Node) in the AUTBUS network based on the received static scheduling configuration table, and enters the data transmission phase; Step 8: During the data transmission phase, when the TN generates real-time aperiodic data or non-real-time data transmission needs, the TN initiates a dynamic time slot request to the MN; after receiving the request, the MN reports the request to the AUTBUS scheduling system to form a request set. Step 9: Based on the request set and the resource status of the dynamic time slot pool, the AUTBUS scheduling system uses the PSO algorithm to perform global optimization scheduling of the dynamic time slot pool resources to maximize the utilization rate and application success rate of dynamic time slot resources; after optimization, the AUTBUS scheduling system sends the dynamic scheduling results to MN. Step 10: The MN notifies each TN to execute the data transmission task based on the dynamic time slot allocation results issued by the AUTBUS scheduling system. The time slots occupied by real-time non-periodic data will remain locked after allocation until the next PSO optimization is triggered, while the time slots occupied by non-real-time data will be released back to the dynamic time slot pool immediately after the data transmission is completed. Step 11: The AUTBUS scheduling system periodically monitors the utilization rate of the dynamic time slot pool, the dynamic application failure rate, and the average latency index to determine whether the PSO optimization trigger conditions are met. When the trigger conditions are met, the system restarts the PSO algorithm, re-optimizes the dynamic time slot pool allocation scheme, and repeats steps 8 to 10 to continuously ensure the effectiveness of system resources and the quality of transmission services.
2. The AUTBUS hybrid time slot allocation and scheduling method according to claim 1, characterized in that: Before scheduling begins, constraints are set, including: (1) The length, transmission period and deadline of all data streams in the AUTBUS network are known. The deadline of the data stream is equal to the transmission period. The data stream transmission must be completed within the deadline, and the worst response time must be less than the deadline. (2) In the AUTBUS network, only data from the same node can be encapsulated into a single data stream, and can only be uniquely encapsulated into a single data stream; (3) Within one cycle, the same data stream f i,j Different transmission time slot intervals must be greater than the data stream f i,j transmission period T i,j : This indicates the start time of the r-th transmission of the k-th data stream in AUTBUS node i; (4) Within a single scheduling cycle, each data stream can be transmitted no more than its maximum number of transmissions and each transmission can be transmitted no more than the allocated time slot resource size; (5) At the beginning of each signal frame, a frame pilot signal is sent, and pilot information is inserted in a specific form within each terminal node. AUTBUS supports two bearer modes: Bearer mode A transmits both data and pilot signals in a single OFDM half-band; Bearer mode B transmits pilot signals in the first OFDM half-band of the allocated resources, and transmits data in the subsequent 1 to n OFDM symbols.
3. The AUTBUS hybrid time slot allocation and scheduling method according to claim 1, characterized in that: In step two, the ideal scheduling period SC is the least common multiple of the transmission periods of all data streams, and the ideal basic period BC is the greatest common divisor of the transmission periods of all data streams. The ideal scheduling period SC consists of several ideal basic periods BC running in a cycle. The AUTBUS network uses the ideal scheduling period SC as the basic unit for cyclic scheduling. The calculation formula is as follows: SC=LCM(T 1,1 ,T 1,2 ,...,T i,j ) BC=GCD(T 1,1 ,T 1,2 ,...,T i,j ) Where T i,j Let LCM be the transmission period of the j-th data stream of node i in AUTBUUS, and GCD be the least common multiple of the data stream transmission periods. The AUTBUS scheduling system determines the fundamental period BC by querying a table of frame length and transmission mode parameters based on the calculated ideal fundamental period BC. T Confirm the matching signal frame length and transmission mode, and set n basic periods BC. T One cycle is taken as the actual cycle period SC T The calculation of n is as follows: In the formula, n is the number of basic cycles within the AUTBUS scheduling cycle; The AUTBUS scheduling system is based on the actual cyclic scheduling period SC T Calculate real-time periodic data in SC T Number of internal transmissions K i,j K i,j The period T of the real-time periodic data stream i,j and actual cyclic scheduling period SC T The decision is made using the following formula:
4. The AUTBUS hybrid time slot allocation and scheduling method according to claim 1, characterized in that: In step three, the AUTBUS scheduling system prioritizes the real-time periodic data stream set F to form a sequence to be scheduled. The AUTBUS scheduling system comprehensively considers data flow f i,j Load segment data length L i,j Sending period T i,j and data stream deadline D i,j Determine the data stream f i,j The scheduling priority is determined, and the data stream f is scheduled according to the scheduling priority. i,j Sort the data; the priority sorting rule is: f i,j transmission period T i,j The shorter, f i,j The higher the priority, the better; when f i,j transmission period T i,j If they are the same, then compare f. i,j Load segment data length L i,j Load segment data length L i,j The larger f is i,j The higher the priority, the better.
5. The AUTBUS hybrid time slot allocation and scheduling method according to claim 1, characterized in that: In step four, the AUTBUS scheduling system determines the data flow based on each data stream f. i,j Transmission length L i,j Calculate the time slot requirement N for each data stream. i,j Once the AUTBUS transmission mode is determined, the duration t of one time slot is... one This also determines that each time slot consists of an upper sideband and a lower sideband, and the different encoding methods of the upper and lower sidebands determine its data carrying capacity. The transmission mode m and the semi-encoding method together determine the number of bytes q that a single time slot can carry; The AUTBUS scheduling system schedules each data stream f i,j The time slot allocation calculation is shown in the following formula: If the number of time slots for each data stream is N i,j If it is not an integer, round it up.
6. The AUTBUS hybrid time slot allocation and scheduling method according to claim 1, characterized in that: Step 5 Specifically, the following steps are included: S51: The AUTBUS scheduling system abstracts the time slot resources within a scheduling period into a two-dimensional space. The vertical dimension represents the number of frames transmitted within the scheduling period, i.e., the multiple basic periods covered by the scheduling period; the horizontal dimension represents the number of available time slot units within each basic period; each basic period is divided into 64 time slot units, of which time slot units numbered 1-4 and 62-64 are reserved resources by the system and are occupied by the MN and not allocated to the TN. A maximum of 56 time slot units can be scheduled horizontally per frame. S52: The AUTBUS scheduling system will schedule the sequence of events to be scheduled. Each data stream f in i,j Consider it as a two-dimensional object, its width W i,j and height H i,j With the length L of the data stream i,j and transmission period T i,j Related, t one Let q be the duration of a time slot, and q be the number of bytes that a single time slot can carry, as shown in the following formula: TS stands for data stream transmission rate; The AUTBUS scheduling system allocates the two-dimensional items according to the FFD bin packing strategy. The AUTBUS scheduling system continuously scans the scheduling matrix to allocate time slot resources, searching for suitable areas from left to right and from top to bottom to ensure that each data stream obtains the static resources it needs, until all data streams are loaded or resources are exhausted. During the bin packing process, if the height of some frames in a column is occupied, the system will skip the occupied area and search for empty frames for allocation. If there is a situation where the data stream cannot be packed, it can be recorded as a failed allocation data stream and wait for the next scheduling cycle.
7. The AUTBUS hybrid time slot allocation and scheduling method according to claim 1, characterized in that: In step six, after the static scheduling table is generated, the AUTBUS scheduling system marks the time slot resources that have not been allocated by the static scheduling and adds them to the dynamic time slot pool. At the beginning of each scheduling cycle, the AUTBUS scheduling system initializes the dynamic time slot pool based on the static scheduling results. This involves removing time slots already occupied by the static scheduling, and removing all time slots locked by real-time aperiodic data streams and those still in use, ensuring that the dynamic time slot pool only contains available time slots not currently occupied. The remaining set of available time slots, S, forms the dynamic time slot pool for the current scheduling cycle, as shown in the following formula. S={s 1, s2,s3,...s m } Where m is the total number of dynamic time slots, and the dynamic time slot pool is used for real-time aperiodic data and non-real-time data to dynamically apply for and occupy within the current period.
8. The AUTBUS hybrid time slot allocation and scheduling method according to claim 1, characterized in that: In step eight, the specific process for dynamic time slot resource application is as follows: S81: After the scheduling period SC begins, MN will report the collected time slot requests to the AUTBUS scheduling system; each time slot request is represented by a quadruple r. o,u It is represented as shown in the following formula: r o,u ={NodeID o,u ,L o,u ,t o,u ,a o,u } Among them, request r o,u For the i-th request of node o; NodeID o,u The request is for a unique identifier from TN; L o,u τ is the effective payload length required for this TN transmission; o,u =1 indicates a real-time aperiodic data stream, τ o,u =0 indicates a non-real-time data stream; α o,u This is the deadline for data stream transmission; S82: For each dynamic time slot request, the AUTBUS scheduling system needs to calculate the required number of time slots; given the number of bytes q in each time slot and the payload length L of each data stream. o,u The required number of time slots is calculated using the following formula: S83: AUTBUS scheduling system determines request r o,u The required number of time slots N o,u If the number of available time slots in the dynamic time slot pool S is less than or equal to the number of available time slots remaining, the required time slot resources will be allocated to the request and the number of available time slots will be updated. If the number of available time slots is not met, the request will be allocated resources after the next scheduling cycle or after the time slots are released.
9. The AUTBUS hybrid time slot allocation and scheduling method according to claim 1, characterized in that: In step nine, in the PSO algorithm, each particle represents a candidate dynamic time slot allocation scheme; the AUTBUS scheduling system uses real-valued vectors to encode and model the positions of particles, as shown in the following equation: X=(x 1,1 ,x 1,2 ,...x o,u ,...x m,h ) Each element x of particle vector X o,u Corresponding to a dynamic request r o,u ∈R; The AUTBUS scheduling system uses this real-number encoding to implicitly characterize the position of a particle as a priority order of requests; During decoding, the AUTBUS scheduling system sorts the corresponding requests according to the size relationship of each element in vector X, thereby obtaining the specific scheduling scheme for each particle; specifically, it adopts the "implicit priority sorting" method: the AUTBUS scheduling system first sorts τ o,u Requests equal to 1 are sorted in ascending order according to their corresponding position vector values; then τ o,u Requests with a value of 0 are sorted in ascending order according to their corresponding position vector values; finally, the sorted real-time request queue is placed before the non-real-time request queue and merged to form a complete scheduling sequence. During the PSO iteration, the particle position encoding is continuously updated based on optimization feedback, which gradually optimizes the implicit priority scheduling scheme. The particle swarm optimization algorithm designs the fitness function with the goal of maximizing dynamic time slot utilization and dynamic application success rate. The allocation scheme obtained by decoding the current position of each particle is evaluated according to this goal. The AUTBUS scheduling system records the historical best positions of individual particles. And the global optimal position of the entire population. The PSO algorithm uses information from these two optimal solutions to guide the particle search; in the t-th iteration, the position and velocity of the i-th particle are updated according to the following formula: Where w is the inertia weight, c1 and c2 are acceleration constants, and r1 and r2 are random numbers ranging from (0,1); through the velocity-position update mechanism, the particle's position vector X drifts in the solution space along the direction that improves fitness, and each element x... i The values of the particles continuously approach a sorting layout that improves scheduling performance. During the iteration process, the PSO algorithm adjusts the real number encoding of the particles to change the relative order of different requests. As the iteration progresses, the particle swarm gradually converges to a solution set with better performance. When the position of the globally optimal particle no longer changes significantly, it is considered that an approximately optimal dynamic time slot allocation scheme has been found. Finally, the AUTBUS scheduling system selects the time slot allocation scheme obtained by decoding the globally optimal particle at the end of the iteration as the result of this round of scheduling and sends it to MN for execution, thereby completing the PSO-based dynamic time slot resource optimization scheduling process.
10. The AUTBUS hybrid time slot allocation and scheduling method according to claim 1, characterized in that: In step eleven, the key indicators of dynamic resource status include: dynamic time slot pool utilization rate U and dynamic application failure rate I; The dynamic time slot pool utilization rate U represents the degree of utilization of dynamic time slot resources; the total number of time slots in the dynamic time slot pool is N. dyn The actual number of dynamic time slots occupied within scheduling period k is N. used(k) The dynamic time slot pool utilization rate is defined as follows: The dynamic time slot pool utilization rate U(k) ranges from 0 to 1. This indicator reflects the current resource saturation of the dynamic time slot pool. The higher the value, the more fully the dynamic resources are occupied. A value close to 1 indicates that the dynamic pool is approaching saturation. The dynamic request failure rate I represents the proportion of dynamic resource requests that are not fulfilled; let N be the total number of dynamic time slot request requests within scheduling period k. req(k) The number of failed requests that failed to allocate time slots is N. fail(k) The dynamic application failure rate is defined as follows: The dynamic application failure rate I(k) ranges from 0 to 1. This indicator represents the degree to which dynamic application requests cannot be satisfied in the current period. The closer I(k) is to 1, the more dynamic requests are rejected due to insufficient resources, reflecting the severity of the imbalance between system resource supply and demand. At the end of each scheduling cycle, the AUTBUS scheduling system collects and calculates data on two metrics: the allocation and usage of time slots within the dynamic time slot pool and statistics on the TN transmission request set R, recording the number of dynamic time slots N used in the current cycle. used (k) Total number of dynamic requests N req (k), and the number of unsuccessful allocation requests N. fail (k); Based on the statistical information, the AUTBUS scheduling system calculates the utilization rate U(k) and failure rate I(k) corresponding to the current scheduling cycle. This process is executed once at the end of each scheduling cycle to continuously track the dynamic resource status. Based on the monitored index values, the AUTBUS scheduling system pre-sets the trigger conditions for PSO algorithm re-optimization. When an index is detected to meet the preset conditions, the particle swarm optimization algorithm is triggered to re-optimize the allocation of the dynamic time slot pool. Specifically, the AUTBUS scheduling system sets a threshold parameter for each index. When any monitored index exceeds its threshold, it is determined that the current resource allocation scheme has experienced performance degradation or resource shortage, reaching the PSO optimization trigger condition. At this time, the AUTBUS scheduling system will trigger a re-optimization event. The AUTBUS scheduling system determines whether to enter the PSO optimization process based on the trigger condition judgment result: If the trigger condition is detected to be met at the end of a certain scheduling cycle, the system immediately starts the PSO algorithm to execute the dynamic resource reallocation process, that is, re-enters the scheduling process of steps eight to ten; the AUTBUS scheduling system uses the latest dynamic request set and the current resource usage status as input, runs the PSO algorithm to perform global optimization calculation on the dynamic time slot pool, and generates an updated dynamic time slot allocation scheme; subsequently, the AUTBUS scheduling system sends the new dynamic scheduling result to the data plane management node MN through the configuration interface, so that each terminal node transmits data according to the updated scheme in the next scheduling cycle; if the trigger condition is not met, no new optimization is executed at the end of the cycle, and the AUTBUS scheduling system maintains the existing time slot allocation scheme unchanged and continues to the next scheduling cycle.