Multi-motor load distribution method and device, program product and storage medium

By dynamically adjusting the motor torque through real-time monitoring and data calculation, the problem of unbalanced load distribution in multi-motor cooperative drive systems is solved, achieving efficient and stable operation of the system.

CN121973647APending Publication Date: 2026-05-05HANGZHOU LANHAI TAFAN TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
HANGZHOU LANHAI TAFAN TECH CO LTD
Filing Date
2026-03-16
Publication Date
2026-05-05

AI Technical Summary

Technical Problem

When switching modes, the fixed ratio allocation strategy based on rated parameters in a multi-motor cooperative drive system leads to uneven load distribution, affecting system operating efficiency.

Method used

By monitoring the load status in real time, collecting motor torque data, calculating the reference torque value and the difference, and combining additional load feedforward and balance adjustment, the target torque value is dynamically adjusted to achieve smooth switching and balanced distribution of load status.

Benefits of technology

It improves the load distribution balance and operational stability of multi-motor drive systems, avoids the load imbalance problem caused by traditional fixed ratio distribution methods, and ensures smooth system transition and efficient operation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN121973647A_ABST
    Figure CN121973647A_ABST
Patent Text Reader

Abstract

The invention discloses a multi-motor load distribution method and device, a program product and a storage medium, and relates to the technical field of motor control. The method comprises the following steps: monitoring a load state switching signal; when the load state switching signal is not received, first torque data of the first motor and second torque data of the second motor are collected; calculating a first reference torque value of the first motor, a second reference torque value of the second motor and a reference difference value of the first motor and the second motor in the first load state according to the first torque data and the second torque data; when a load state switching signal is received, calculating a first target torque value of the first motor and a second target torque value of the second motor according to the first reference torque value, the second reference torque value and the reference difference value; and respectively adjusting the output torques of the first motor and the second motor according to the first target torque value and the second target torque value. By implementing the technical scheme provided by the invention, the overall operation efficiency of the multi-motor driving system can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the technical field of motor control, specifically to a multi-motor load distribution method, device, program product, and storage medium. Background Technology

[0002] In the field of industrial automation, multi-motor drive systems are widely used in lifting equipment, large conveyor systems, dual-drive printing presses, gantry machining centers, and other applications. These systems typically include multiple motors, which may operate in independent or collaborative drive modes under different working conditions. For example, in a dual-motor lifting system, the two motors may initially drive different mechanisms to complete preparatory actions, then switch to collaborative drive mode to jointly drive the main lifting mechanism to complete the hoisting task. How to rationally distribute the load of each motor during mode switching is a key technical issue in ensuring the stable operation of the system.

[0003] Currently, multi-motor cooperative drive systems typically employ a fixed-ratio allocation strategy based on motor rated parameters to determine the torque command for each motor when switching from independent drive mode to cooperative drive mode. Specifically, the control system pre-sets the torque allocation ratio for each motor in cooperative drive mode based on nameplate parameters such as rated power and rated torque. Upon receiving a mode switching signal, it issues torque commands to each motor according to this fixed ratio. This method is simple to implement and allows for rapid mode switching.

[0004] However, the aforementioned fixed-ratio load distribution strategy based on rated parameters can easily lead to uneven load distribution in practical applications. Since the actual workload of each motor during independent drive phases often differs (e.g., one motor drives an unloaded mechanism, while another drives a heavily loaded mechanism), the fixed-ratio load distribution strategy fails to reflect this actual load difference. Consequently, after switching to cooperative drive, some motors may bear excessive loads while others are underloaded, affecting the overall operating efficiency of the system. Summary of the Invention

[0005] This application provides a multi-motor load distribution method, device, program product, and storage medium, which can improve the overall operating efficiency of a multi-motor drive system.

[0006] The first aspect of this application provides a multi-motor load sharing method, specifically including: The load state switching signal of the industrial equipment is monitored in real time. The load state switching signal is used to indicate that the industrial equipment switches from the first load state to the second load state. The first load state is the load state when the first motor or the second motor is driven independently. The second load state is the common load state when the first motor and the second motor are driven together. During the period when the load state switching signal is not received, the first torque data of the first motor and the second torque data of the second motor are collected at a preset sampling period; Calculate the first reference torque value of the first motor, the second reference torque value of the second motor, and the reference difference between the first motor and the second motor under the first load condition based on the first torque data and the second torque data. When the load state switching signal is received, the first target torque value of the first motor and the second target torque value of the second motor are calculated based on the first reference torque value, the second reference torque value and the reference difference; The output torques of the first motor and the second motor are adjusted according to the first target torque value and the second target torque value, respectively.

[0007] By adopting the above technical solution, in the first load state, i.e., when the first motor and the second motor are driven independently, the system continuously collects the first torque data of the first motor and the second torque data of the second motor through a preset sampling period. Based on these actual operating data, the system calculates the first reference torque value, the second reference torque value, and the reference difference value, thereby accurately grasping the actual load level and the degree of difference between the two motors in the independent drive phase. When a load state switching signal is received, the control system can fully utilize the obtained reference torque value and reference difference value information to reasonably calculate the first target torque command and the second target torque command adapted to their respective actual working states, thereby achieving a smooth switch to the second load state, i.e., the cooperative drive state. Since the calculation of the target torque command fully considers the actual load difference of the motors in the independent drive phase, it can ensure that the load distribution after the switch is more balanced and reasonable, effectively improving the system operating efficiency.

[0008] Optionally, the step of calculating the first reference torque value of the first motor, the second reference torque value of the second motor, and the reference difference between the first motor and the second motor under the first load state based on the first torque data and the second torque data includes: The first torque data is stored in the first torque data queue in chronological order, and the second torque data is stored in the second torque data queue in chronological order. When the queue length of the first torque data queue or the second torque data queue reaches the preset maximum length, and when new torque data is stored, the earliest stored torque data is removed. The arithmetic mean of the first torque data queue is calculated to obtain the first reference torque value, and the arithmetic mean of the second torque data queue is calculated to obtain the second reference torque value. Calculate the torque difference between the first torque data and the second torque data at the corresponding time, and store the torque difference values ​​in the torque difference queue in chronological order. When the queue length of the torque difference queue reaches the preset maximum length, and when a new torque difference value is stored, the earliest stored torque difference value is removed. The arithmetic mean of the torque difference queue is calculated to obtain the reference difference between the first motor and the second motor.

[0009] By adopting the above technical solution, a first torque data queue and a second torque data queue are set up to store the collected torque data in chronological order. A data update mechanism with a maximum queue length limit and a first-in-first-out (FIFO) approach ensures the timeliness of the torque data while preventing unlimited growth in data storage. Simultaneously, a baseline torque value is obtained by calculating the arithmetic mean of the torque data queues, effectively eliminating the impact of instantaneous fluctuations in torque data. Furthermore, by establishing a torque difference queue and calculating its arithmetic mean to obtain the baseline difference, not only are the load differences between the two motors at the same time considered, but the stability of the baseline difference is also improved through queue averaging. This calculation method based on data queues and arithmetic averaging allows the system to more accurately reflect the actual load level and its differences of the motors during independent drive phases, providing a more reliable reference for subsequent calculation of target torque commands, further improving the balance of load distribution and the stability of system operation.

[0010] Optionally, when the load state switching signal is received, calculating the first target torque value of the first motor and the second target torque value of the second motor based on the first reference torque value, the second reference torque value, and the reference difference includes: Obtain the additional load feedforward value added by the multi-motor drive system when switching from the first load state to the second load state; The distribution ratio of the additional load feedforward value between the first motor and the second motor is calculated based on the preset load distribution coefficient, so as to obtain the first initial torque compensation amount of the first motor and the second initial torque compensation amount of the second motor. The first initial torque compensation amount and the second initial torque compensation amount are adjusted according to the reference difference to obtain the first torque compensation amount of the first motor and the second torque compensation amount of the second motor. The first target torque value of the first motor is obtained by adding the first reference torque value to the first torque compensation amount, and the second target torque value of the second motor is obtained by adding the second reference torque value to the second torque compensation amount.

[0011] By adopting the above technical solution, the additional load demand after switching to the cooperative drive mode is first reflected by the additional load feedforward value. Based on the preset load allocation coefficient, the load proportion to be borne by each motor is initially determined, resulting in the initial torque compensation amount. Subsequently, the initial torque compensation amount is further adjusted based on the obtained benchmark difference. This adjustment fully considers the load differences accumulated by the motors during the independent drive phase, making the torque compensation more targeted. Finally, the adjusted torque compensation amount is superimposed with the respective benchmark torque values ​​to obtain the final target torque value. This comprehensive calculation method, which considers system load changes, preset allocation strategies, and historical load differences, ensures the rationality of load allocation and achieves a smooth transition from independent drive to cooperative drive, effectively avoiding the load imbalance problem caused by traditional fixed-ratio allocation methods.

[0012] Optionally, adjusting the first initial torque compensation amount and the second initial torque compensation amount according to the reference difference includes: The balance adjustment amount is calculated based on the reference difference, and the balance adjustment amount is obtained by multiplying the absolute value of the reference difference by a preset balance adjustment coefficient; When the reference difference is positive, the first torque compensation is obtained by subtracting the balance adjustment from the first initial torque compensation and by adding the balance adjustment to the second initial torque compensation. When the reference difference is negative, the first torque compensation is obtained by adding the balance adjustment amount to the first initial torque compensation amount, and the second torque compensation is obtained by subtracting the balance adjustment amount from the second initial torque compensation amount.

[0013] By employing the above technical solution, the absolute value of the reference difference is multiplied by a preset balance adjustment coefficient to obtain the balance adjustment amount, establishing a quantitative relationship between historical load differences and torque compensation. When the reference difference is positive, it indicates that the historical load of the first motor is high. In this case, its torque compensation amount is reduced, and the torque compensation amount of the second motor is increased accordingly, and vice versa. This dynamic compensation mechanism based on historical load differences can adaptively adjust the load distribution of each motor in the cooperative drive mode, allowing the heavily loaded motor to receive appropriate load relief, while the lightly loaded motor takes on more of the new load. This not only improves the balance and rationality of load distribution but also provides flexible adjustment means through the introduction of the balance adjustment coefficient, enabling the system to optimize the adjustment effect according to actual application requirements.

[0014] Optionally, upon receiving the load state switching signal, the method further includes: Based on preset transition time parameters, a first torque adjustment trajectory is generated for the first motor to smoothly transition from the first reference torque value to the first target torque value, and a second torque adjustment trajectory is generated for the second motor to smoothly transition from the second reference torque value to the second target torque value. During the load state switching process, the output torque of the first motor is adjusted according to the first torque adjustment trajectory, and the output torque of the second motor is adjusted according to the second torque adjustment trajectory; Real-time monitoring of the first deviation between the current output torque of the first motor and the first target torque value, and the second deviation between the current output torque of the second motor and the second target torque value; When both the first deviation and the second deviation are less than the preset torque convergence threshold, the load state switching is determined to be complete.

[0015] By employing the above technical solution, a torque adjustment trajectory is generated using preset transition time parameters, achieving a smooth transition of motor output torque and avoiding the impact of sudden torque changes on the system. Simultaneously, by monitoring the deviation between the current output torque of each motor and the target torque value in real time, and setting a torque convergence threshold as the criterion for determining the completion of the switching process, the controllability and reliability of the load state switching process are ensured. This smooth transition scheme based on torque trajectory, combined with real-time deviation monitoring and convergence determination mechanisms, not only guarantees the stability of the load state switching process but also provides a quantitative evaluation method for the switching process. Compared to the traditional direct switching method, this scheme can effectively suppress torque fluctuations during the switching process, improve the stability of system operation, and ensure the integrity of the switching process through explicit convergence determination, providing a more reliable technical guarantee for the coordinated control of multi-motor systems.

[0016] Optionally, after determining that the load state switch is complete, the method further includes: A steady-state evaluation window of a preset duration is set under the second load state, and real-time torque feedback data of the first motor and the second motor are continuously collected within the steady-state evaluation window; The load distribution health index is calculated based on the real-time torque feedback data, and the load distribution health index is compared with a preset health benchmark threshold to obtain the comparison result. Based on the comparison results, the first target torque value and the second target torque value are adjusted to obtain an optimized target torque value; Replace the first target torque value and the second target torque value with the optimized target torque value.

[0017] By adopting the above technical solution, collecting torque feedback data through a set steady-state evaluation window, and introducing a load distribution health index for quantitative evaluation, reliable data support is provided for load distribution optimization. This evaluation and optimization scheme based on actual operating data overcomes the limitations of traditional open-loop control, enabling timely detection and adjustment of unreasonable phenomena in load distribution. Simultaneously, by comparing the health index with a preset threshold and adjusting the target torque value accordingly, a complete optimization and adjustment closed loop is formed, allowing the system to dynamically optimize the load distribution strategy based on actual operating conditions. This not only improves the adaptability and robustness of system operation but also provides effective protection for the long-term stable operation of multi-motor systems, ultimately achieving continuous optimization of load distribution and dynamic improvement of system performance.

[0018] Optionally, adjusting the first target torque value and the second target torque value based on the comparison result to obtain an optimized target torque value includes: When the comparison result indicates that the load distribution health index is lower than the health benchmark threshold, positive and negative trial adjustment amounts are applied to the first target torque value and the second target torque value, respectively, to obtain the first trial torque combination and the second trial torque combination. Based on the first trial torque combination and the second trial torque combination, the load distribution health index is recalculated to obtain the first trial health index and the second trial health index. The adjustment direction corresponding to either the first or second trial health index, which has the smallest error with the load distribution health index, is selected as the optimization direction. The torque adjustment amount is calculated based on the optimization direction and the preset iteration step size. The torque adjustment amount is then superimposed on the first target torque value and the second target torque value to obtain the updated torque value. The updated torque value is used to recalculate the load distribution health index and determine whether the health baseline threshold has been reached. If not, the preset iteration step size is reduced by a preset step size decay coefficient until the load distribution health index reaches the health baseline threshold. The updated torque value is then determined as the optimized target torque value.

[0019] By adopting the above technical solution, the optimization direction is first determined through positive and negative trial adjustments, avoiding system fluctuations that may result from blind adjustments. After determining the optimization direction, an iterative optimization strategy with dynamic step sizes is employed. By gradually reducing the adjustment range through a preset step size decay coefficient, the convergence of the optimization process is ensured, and the accuracy of the final optimization result is improved. This optimization scheme, which integrates trial-and-error search and adaptive iteration, has stronger directionality and convergence compared to the traditional fixed-increment adjustment method. Simultaneously, by calculating and comparing health indicators in real time, a closed-loop feedback optimization mechanism is formed, ensuring that each adjustment is directed towards improving the overall system performance. This not only improves the efficiency and accuracy of load distribution optimization but also effectively avoids oscillations and over-adjustment during the optimization process through a scientific iterative strategy, providing more intelligent and reliable technical support for the collaborative control of multi-motor systems.

[0020] In a second aspect, this application provides a multi-motor load sharing device, which includes: one or more processors and a memory; the memory is coupled to the one or more processors, and the memory is used to store computer program code, which includes computer instructions, and the one or more processors call the computer instructions to cause the multi-motor load sharing device to perform the method described in the first aspect and any possible implementation thereof.

[0021] Thirdly, this application provides a computer program product containing instructions that, when the computer program product is run on a multi-motor load sharing device, cause the multi-motor load sharing device to perform the method described in the first aspect and any possible implementation thereof.

[0022] Fourthly, this application provides a computer-readable storage medium including instructions that, when executed on a multi-motor load sharing device, cause the multi-motor load sharing device to perform the method described in the first aspect and any possible implementation thereof. Attached Figure Description

[0023] Figure 1 This is a system architecture diagram of a multi-motor load sharing system provided in an embodiment of this application; Figure 2 This is a flowchart illustrating a multi-motor load sharing method provided in an embodiment of this application; Figure 3 This is a schematic diagram of the torque adjustment trajectory during multi-motor load sharing provided in an embodiment of this application; Figure 4 This is an exemplary hardware structure diagram of a multi-motor load distribution device provided in an embodiment of this application. Detailed Implementation

[0024] To enable those skilled in the art to better understand the technical solutions in this specification, the technical solutions in the embodiments of this specification will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments.

[0025] In the description of the embodiments of this application, the words "for example" or "for instance" are used to indicate examples, illustrations, or explanations. Any embodiment or design that is described as "for example" or "for instance" in the embodiments of this application should not be construed as being more preferred or advantageous than other embodiments or design options. Rather, the use of the words "for example" or "for instance" is intended to present the relevant concepts in a specific manner.

[0026] In the description of the embodiments of this application, the term "multiple" means two or more. For example, multiple systems means two or more systems, and multiple screen terminals means two or more screen terminals. Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the indicated technical features. Thus, a feature defined with "first" or "second" may explicitly or implicitly include one or more of that feature. The terms "comprising," "including," "having," and variations thereof all mean "including but not limited to," unless otherwise specifically emphasized.

[0027] Figure 1 A multi-motor load sharing system architecture is illustrated. For example... Figure 1 As shown, the system architecture may include a data acquisition device 011, a network 012, and an electronic device 013. The network 012 provides a data transmission link between the data acquisition device 011 and the electronic device 013. The network 012 may include various connection types, such as wired or wireless communication links or fiber optic cables.

[0028] Data acquisition device 011 can send motor operation data to electronic device 013 via network 012. Data acquisition device 011 is mainly responsible for collecting real-time operating parameters of the motor, including operating status data such as speed, torque, and temperature, and initiating data upload requests according to preset rules.

[0029] Data acquisition device 011 is hardware, which can be a device with data acquisition and transmission functions, including but not limited to basic components such as speed sensors, torque sensors, and temperature sensors.

[0030] Electronic device 013 is responsible for receiving and comprehensively analyzing operational data, including core functions such as load status identification, torque distribution calculation, health assessment, system load monitoring, and torque optimization. Electronic device 013 can adaptively adjust torque based on operational status and load distribution health, calculate the optimal load distribution strategy, and combine it with preset control rules to ultimately achieve dynamic optimization control of the multi-motor system. These analysis and processing results can be used to improve the stability and reliability of system operation.

[0031] It should be noted that electronic devices can be either hardware or software. When an electronic device is hardware, it can be implemented as a distributed cluster of multiple electronic devices or as a single electronic device. When an electronic device is software, it can be implemented as multiple software programs or software modules (e.g., multiple software programs or software modules used to provide distributed processing) or as a single software program or software module. No specific limitations are set here.

[0032] It should be understood that Figure 1 The number of data acquisition devices 011, networks 012, and electronic devices 013 shown is merely illustrative. Depending on implementation needs, there can be any number of data acquisition devices 011, networks 012, and electronic devices 013. In particular, if data acquisition does not require remote transmission, the above system architecture may exclude network 012 and include only data acquisition devices 011 or electronic devices 013.

[0033] This application provides a multi-motor load sharing method, referencing... Figure 2 , Figure 2 This is a flowchart illustrating a multi-motor load sharing method provided in an embodiment of this application, including steps S101 to S105, as follows: S101: Real-time monitoring of the load state switching signal of industrial equipment. The load state switching signal is used to indicate that the industrial equipment switches from the first load state to the second load state. The first load state is the load state when the first motor or the second motor is driven independently. The second load state is the common load state when the first motor and the second motor are driven together.

[0034] In this embodiment, the load state switching signal represents a control command or status identification information generated when the load mode of industrial equipment changes. This signal can be in the form of a digital signal, analog signal, or communication protocol data packet, used to indicate that the system needs to switch from a single-motor drive mode to a dual-motor cooperative drive mode. For example, when the load demand of the industrial equipment exceeds the carrying capacity of a single motor, the system generates a load state switching signal, triggering a transition from a first load state to a second load state.

[0035] Specifically, sensors and monitoring modules deployed at key nodes of industrial equipment continuously collect the equipment's operating parameters, including but not limited to key indicators such as load current, power demand, and torque output. When the monitored parameter values ​​exceed the preset single-motor operating threshold range, or when a mode switching command is received from the upper-level control system, the system identifies and captures a load state switching signal. This signal carries status identification information, clearly indicating that the equipment needs to switch from the first load state (i.e., an independent operating mode where the first motor is driven alone or the second motor is driven alone) to the second load state (i.e., a cooperative drive mode where the first motor and the second motor work simultaneously).

[0036] S102: During the period when no load state switching signal is received, the first torque data of the first motor and the second torque data of the second motor are collected at a preset sampling period.

[0037] In this embodiment, the sampling period refers to the time interval set by which the system collects data on motor torque parameters at fixed time intervals. The sampling period is typically measured in milliseconds, seconds, or minutes, and the specific value is determined based on system response requirements and data processing capabilities. For example, for a high-precision control system, the sampling period can be set to 10 milliseconds to ensure that subtle changes during motor operation can be captured; for general industrial applications, the sampling period can be set to 100 milliseconds or 1 second to balance data accuracy and system load.

[0038] Specifically, during the period when the system does not detect a load state switching signal, a periodic data acquisition program is initiated. According to a pre-configured sampling period, the system performs a data acquisition operation at fixed time intervals. During the acquisition process, the torque output value at the current moment is read through a torque sensor connected to the first motor and recorded as the first torque data; simultaneously, the torque output value at the corresponding moment is read through a torque sensor connected to the second motor and recorded as the second torque data.

[0039] S103: Calculate the first reference torque value of the first motor, the second reference torque value of the second motor, and the reference difference between the first motor and the second motor under the first load condition based on the first torque data and the second torque data.

[0040] In this embodiment, the reference torque value represents a stable operating torque reference value of the motor under a specific load condition, obtained through statistical analysis of torque data collected over a period of time. The reference torque value reflects the typical output characteristics of the motor under the current operating condition, providing a reference for subsequent load distribution and control strategies. For example, when the first motor operates continuously under light load conditions, its reference torque value may be 30% of the rated torque; when under heavy load conditions, the reference torque value may reach more than 80% of the rated torque.

[0041] Specifically, the collected first torque data is stored sequentially in the first torque data queue according to chronological order, and the second torque data is stored in the second torque data queue in the same chronological order. When the length of either torque data queue reaches the preset maximum capacity limit, a first-in-first-out (FIFO) queue management mechanism is used. When new torque data is added, the oldest data stored in the queue is automatically removed to ensure that the queue length remains within the set range. All values ​​in the first torque data queue are summed and then divided by the queue length to obtain the first reference torque value. The same arithmetic mean method is used to process the second torque data queue to obtain the second reference torque value. For each corresponding sampling time, the numerical difference between the first and second torque data is calculated, and these differences are stored sequentially in the torque difference queue according to chronological order. When the length of the torque difference queue reaches the preset maximum value, the FIFO mechanism is also used for queue management. The arithmetic mean of all difference data in the torque difference queue is calculated to obtain the reference difference between the first and second motors.

[0042] Based on the above embodiments, as an optional embodiment, S103: the step of calculating the first reference torque value of the first motor, the second reference torque value of the second motor, and the reference difference between the first motor and the second motor under the first load condition based on the first torque data and the second torque data may specifically include the following steps: S201: Store the first torque data into the first torque data queue in chronological order, and simultaneously store the second torque data into the second torque data queue in chronological order. When the queue length of the first torque data queue or the second torque data queue reaches the preset maximum length, and when new torque data is stored, remove the earliest stored torque data.

[0043] In this embodiment, the torque data queue is a first-in, first-out (FIFO) data structure used to store motor torque data collected in chronological order. The queue employs a sliding window mechanism, controlling the data's time span and storage capacity by limiting its maximum length. The preset maximum length is typically determined based on the system's memory capacity, data processing capabilities, and the required statistical time window; for example, it can be set to 100 data points, 500 data points, or 1000 data points.

[0044] Specifically, the system establishes two independent data queue structures to store the torque data of the first and second motors, respectively. Whenever new first torque data is obtained through a sampling period, this data is added to the tail of the first torque data queue; simultaneously, the second torque data collected at the corresponding time is added to the tail of the second torque data queue. During data storage, the system monitors the current length of each queue in real time. When the length of the first torque data queue reaches the preset maximum length, while adding new data to the tail, the oldest data point is automatically removed from the head of the queue, ensuring that the queue length always remains within the maximum length limit. The second torque data queue adopts the same management strategy; when its length reaches the preset maximum value, the head data removal operation is also performed.

[0045] S202: Calculate the arithmetic mean of the first torque data queue to obtain the first reference torque value, and calculate the arithmetic mean of the second torque data queue to obtain the second reference torque value.

[0046] Specifically, the system performs a summation operation on all torque values ​​stored in the first torque data queue, accumulating the sum of each data point from the front to the back of the queue to obtain the total first torque data. Then, it obtains the current length of the first torque data queue, i.e., the actual number of data points contained in the queue. The total first torque data is divided by the queue length to calculate the arithmetic mean, and the result is the first reference torque value. The same calculation process is used for the second torque data queue. First, all second torque data in the queue are summed, then divided by the current length of the second torque data queue, and the result is used as the second reference torque value.

[0047] S203: Calculate the torque difference between the first torque data and the second torque data at the corresponding time, and store the torque difference values ​​into the torque difference queue in chronological order. When the length of the torque difference queue reaches the preset maximum length, and when a new torque difference value is stored, the earliest stored torque difference value is removed. Calculate the arithmetic mean of the torque difference queue to obtain the reference difference value between the first motor and the second motor.

[0048] Specifically, for each sampling moment, the system extracts the torque values ​​at the corresponding time point from the first and second torque data queues, performs a subtraction operation to calculate the torque difference between the two, i.e., the torque difference equals the first torque data minus the second torque data. The calculated torque differences at each moment are stored sequentially in the torque difference queue to ensure the data in the queue maintains temporal continuity. The system monitors the current length of the torque difference queue in real time. When the queue length reaches the preset maximum capacity limit, the same first-in-first-out (FIFO) management strategy as the torque data queue is adopted. When adding a newly calculated torque difference to the tail of the queue, the earliest stored torque difference data is automatically removed from the head of the queue, keeping the queue length within the preset range. An arithmetic mean is calculated for all the difference data stored in the torque difference queue. The sum of all torque differences in the queue is then divided by the current queue length; the resulting average is the baseline difference between the first and second motors.

[0049] S104: When a load state switching signal is received, calculate the first target torque value of the first motor and the second target torque value of the second motor based on the first reference torque value, the second reference torque value and the reference difference.

[0050] Specifically, upon receiving a load state switching signal, the system first acquires the additional load feedforward value added to the multi-motor drive system when switching from the first load state to the second load state. Based on a preset load allocation coefficient, the distribution ratio of the additional load feedforward value between the first and second motors is calculated. The first initial torque compensation amount for the first motor is obtained by multiplying the additional load feedforward value by the load allocation coefficient corresponding to the first motor, and the second initial torque compensation amount for the second motor is obtained by multiplying the additional load feedforward value by the load allocation coefficient corresponding to the second motor. The first and second initial torque compensation amounts are adjusted based on a reference difference. When the reference difference is greater than zero, it indicates that the first motor is under a heavier load; the adjusted first torque compensation amount is obtained by subtracting half of the reference difference from the first initial torque compensation amount, and the adjusted second torque compensation amount is obtained by adding half of the reference difference to the second initial torque compensation amount. When the reference difference is less than zero, it indicates that the second motor is under a heavier load; the adjusted first torque compensation amount is obtained by subtracting half of the reference difference from the first initial torque compensation amount, and the adjusted second torque compensation amount is obtained by adding half of the reference difference to the second initial torque compensation amount. The first target torque value of the first motor is obtained by adding the first reference torque value to the first torque compensation amount, and the second target torque value of the second motor is obtained by adding the second reference torque value to the second torque compensation amount.

[0051] Based on the above embodiments, as an optional embodiment, S104: When a load state switching signal is received, the step of calculating the first target torque value of the first motor and the second target torque value of the second motor according to the first reference torque value, the second reference torque value, and the reference difference may specifically include the following steps: S301: Obtain the additional load feedforward value added by the multi-motor drive system when switching from the first load state to the second load state; calculate the distribution ratio of the additional load feedforward value between the first motor and the second motor according to the preset load distribution coefficient, and obtain the first initial torque compensation amount of the first motor and the second initial torque compensation amount of the second motor.

[0052] In this embodiment, the additional load feedforward value refers to the expected increase in load torque demand during load state switching in a multi-motor drive system. It represents the incremental change in the overall system load when transitioning from the current load state to the target load state. For example, when switching from an unloaded state to a full-load state, the additional load feedforward value is the difference between the full-load torque and the unload torque. The load allocation coefficient is a pre-set weighting parameter used to determine the load proportion borne by each motor. It represents the load share that each motor should bear when multiple motors work together. Typically, the sum of the load allocation coefficients of all motors equals 1. For example, in a dual-motor system, the load allocation coefficient of the first motor is 0.6, and the load allocation coefficient of the second motor is 0.4. The initial torque compensation amount refers to the basic torque compensation value that each motor should increase during load state switching, calculated based on the load allocation coefficient. It represents the theoretical torque increment of each motor without considering load balance adjustments between motors.

[0053] Specifically, by querying a pre-established load state transition table or load feedforward mapping relationship, the corresponding additional load feedforward value is obtained based on the identification information of the first and second load states. The preset load allocation coefficients corresponding to the first and second motors are read from the system configuration parameters, where the sum of the load allocation coefficients of the first and second motors equals 1. The additional load feedforward value is multiplied by the load allocation coefficient of the first motor, and the result is used as the first initial torque compensation amount for the first motor; that is, the first initial torque compensation amount equals the additional load feedforward value multiplied by the load allocation coefficient of the first motor. The additional load feedforward value is multiplied by the load allocation coefficient of the second motor, and the result is used as the second initial torque compensation amount for the second motor; that is, the second initial torque compensation amount equals the additional load feedforward value multiplied by the load allocation coefficient of the second motor.

[0054] S302: Adjust the first initial torque compensation amount and the second initial torque compensation amount according to the reference difference to obtain the first torque compensation amount of the first motor and the second torque compensation amount of the second motor.

[0055] Specifically, the absolute value of the reference difference is multiplied by a preset balance adjustment coefficient, and the result is used as the balance adjustment amount. That is, the balance adjustment amount equals the absolute value of the reference difference multiplied by the balance adjustment coefficient. The sign of the reference difference is determined. When the reference difference is positive, it indicates that the first motor load is relatively heavy, requiring a reduction in the first motor's load and an increase in the second motor's load. The first torque compensation amount is obtained by subtracting the balance adjustment amount from the first initial torque compensation amount, and the second torque compensation amount is obtained by adding the balance adjustment amount to the second initial torque compensation amount. When the reference difference is negative, it indicates that the second motor load is relatively heavy, requiring a reduction in the second motor's load and an increase in the first motor's load. The first torque compensation amount is obtained by adding the balance adjustment amount to the first initial torque compensation amount, and the second torque compensation amount is obtained by subtracting the balance adjustment amount from the second initial torque compensation amount. When the reference difference is zero, it indicates that the load distribution between the first and second motors is in an ideal balanced state, requiring no load adjustment. The first initial torque compensation amount is directly used as the first torque compensation amount, and the second initial torque compensation amount is used as the second torque compensation amount, maintaining the current torque compensation configuration unchanged.

[0056] Based on the above embodiments, as an optional embodiment, S302: the step of adjusting the first initial torque compensation amount and the second initial torque compensation amount according to the reference difference may specifically include the following steps: S401: Calculate the balance adjustment amount based on the reference difference. The balance adjustment amount is obtained by multiplying the absolute value of the reference difference by the preset balance adjustment coefficient.

[0057] Specifically, the current reference difference value is obtained. This reference difference value can be positive or negative. A positive value indicates that the first motor has a relatively heavier load, and a negative value indicates that the second motor has a relatively heavier load. The absolute value of the reference difference value is calculated, eliminating the influence of the positive or negative sign of the difference, to obtain the numerical value of the load imbalance. The preset balance adjustment coefficient is read from the system configuration parameters. This coefficient is set according to the system's control accuracy requirements and response speed requirements. The absolute value of the reference difference value is multiplied by the balance adjustment coefficient, and the result is used as the balance adjustment amount. That is, the balance adjustment amount is equal to the absolute value of the reference difference value multiplied by the balance adjustment coefficient.

[0058] S402: When the reference difference is positive, the first torque compensation amount is obtained by subtracting the balance adjustment amount from the first initial torque compensation amount, and the second torque compensation amount is obtained by adding the balance adjustment amount to the second initial torque compensation amount.

[0059] Specifically, a positive baseline difference indicates a relatively heavy load on the first motor. To achieve load balance, the torque compensation allocated to the first motor needs to be reduced. This is achieved by subtracting the balance adjustment from the initial torque compensation, and the result is used as the first torque compensation. In other words, the first torque compensation equals the initial torque compensation minus the balance adjustment. Simultaneously, to maintain the overall torque output capability of the system, the torque compensation allocated to the second motor needs to be increased. This is achieved by adding the balance adjustment to the second initial torque compensation, and the result is used as the second torque compensation. In other words, the second torque compensation equals the second initial torque compensation plus the balance adjustment.

[0060] S403: When the reference difference is negative, the first torque compensation is obtained by adding the balance adjustment amount to the first initial torque compensation amount, and the second torque compensation is obtained by subtracting the balance adjustment amount from the second initial torque compensation amount.

[0061] Specifically, a negative baseline difference indicates a relatively heavy load on the second motor. To achieve load balance, the torque compensation allocated to the first motor needs to be increased. This is done by adding a balance adjustment amount to the initial torque compensation, and the calculated result is used as the first torque compensation; that is, the first torque compensation equals the initial torque compensation plus the balance adjustment. Simultaneously, to reduce the load on the second motor, the torque compensation allocated to it needs to be reduced. This is done by subtracting the balance adjustment amount from the second initial torque compensation, and the calculated result is used as the second torque compensation; that is, the second torque compensation equals the second initial torque compensation minus the balance adjustment.

[0062] S303: Add the first reference torque value to the first torque compensation amount to obtain the first target torque value of the first motor, and add the second reference torque value to the second torque compensation amount to obtain the second target torque value of the second motor.

[0063] Specifically, the first reference torque value of the first motor is read, reflecting its basic torque requirement. The first torque compensation amount, calculated through load balancing, is obtained, taking into account the load imbalance between the two motors and the torque requirements during state switching. The first reference torque value and the first torque compensation amount are added together, and the result is used as the first target torque value of the first motor; that is, the first target torque value equals the first reference torque value plus the first torque compensation amount. Similarly, the second reference torque value of the second motor is read, and the second torque compensation amount is obtained. The second reference torque value and the second torque compensation amount are added together, and the result is used as the second target torque value of the second motor; that is, the second target torque value equals the second reference torque value plus the second torque compensation amount.

[0064] Based on the above embodiments, as an optional embodiment, S104: after receiving the load state switching signal, a switching transition step is further included, which may specifically include the following steps: S501: Based on the preset transition time parameters, generate a first torque adjustment trajectory for the first motor to smoothly transition from the first reference torque value to the first target torque value, and a second torque adjustment trajectory for the second motor to smoothly transition from the second reference torque value to the second target torque value.

[0065] In this embodiment, the first torque adjustment trajectory refers to the path of torque output change of the first motor during the transition time, used to describe the continuous change process of the first motor torque from the initial value to the target value, ensuring the smoothness and controllability of the torque adjustment process. The second torque adjustment trajectory refers to the path of torque output change of the second motor during the transition time, used to describe the continuous change process of the second motor torque from the initial value to the target value, and works in conjunction with the first torque adjustment trajectory to achieve coordinated switching of the dual-motor system.

[0066] Specifically, the preset transition time parameter is read to determine the length of the torque adjustment time window. For the first motor, a first reference torque value is used as the starting torque point, and a first target torque value is used as the ending torque target. Within the time range limited by the transition time parameter, a smooth interpolation algorithm is used to generate a continuous torque change sequence, forming the first torque adjustment trajectory. This trajectory ensures the gradual adjustment of the first motor's torque output from the current reference value to the target value, avoiding the adverse effects of sudden torque changes on system stability. Simultaneously, for the second motor, a second torque adjustment trajectory is generated under the same transition time parameter constraints, using a second reference torque value as the starting torque point and a second target torque value as the ending torque target.

[0067] like Figure 3 As shown, Figure 3This diagram illustrates the torque adjustment trajectory during multi-motor load sharing, as provided in this embodiment. The horizontal axis represents time, and the vertical axis represents the motor output torque. The blue solid line represents the torque change trajectory of the first motor, and the red solid line represents the torque change trajectory of the second motor. Before receiving the load state switching signal, the system is in a first load state (independent drive), with the first and second motors operating stably at different first and second reference torque values ​​(T_base1 and T_base2), respectively. Upon receiving the switching signal, the system enters the load state switching process. Within a preset transition time, the output torques of the two motors gradually adjust from their respective reference torque values ​​along a generated smooth torque adjustment trajectory to the more balanced first target torque value (T_target1) and second target torque value (T_target2) calculated by this scheme. This diagram clearly demonstrates how this technical solution achieves balanced load distribution after switching by smoothly transitioning based on the actual load differences before switching, thereby avoiding sudden torque changes and improving system operational stability.

[0068] S502: During the load state switching process, the output torque of the first motor is adjusted according to the first torque adjustment trajectory, and the output torque of the second motor is adjusted according to the second torque adjustment trajectory.

[0069] In the embodiments of this application, the load state switching process refers to the dynamic execution phase in which the dual-motor system changes from the current load distribution mode to the target load distribution mode, and is used to represent the time period during which the system actually changes the torque output of the two motors after receiving the load state switching signal.

[0070] Specifically, the load state switching process execution program is initiated, and the system enters the torque trajectory tracking control mode. The first torque adjustment trajectory is sampled in time series according to a preset control cycle to obtain the target torque value of the first motor at the current sampling moment. This target torque value is sent as a torque control command to the drive controller of the first motor. Upon receiving the command, the drive controller adjusts the current output of the first motor to converge the actual torque output of the first motor towards the target value. Simultaneously, the second torque adjustment trajectory is sampled at the same time to obtain the target torque value of the second motor. This target torque value is sent to the drive controller of the second motor. The controller adjusts the current distribution and magnetic field strength of the second motor according to the command to adjust the torque output of the second motor towards the target value.

[0071] S503: Real-time monitoring of the first deviation between the current output torque of the first motor and the first target torque value, and the second deviation between the current output torque of the second motor and the second target torque value; when both the first deviation and the second deviation are less than the preset torque convergence threshold, the load state switching is determined to be complete.

[0072] In this embodiment, the torque convergence threshold refers to a preset numerical boundary used to determine whether the motor torque output has reached the target requirement, and is used to represent the allowable error range within which the system determines that the torque adjustment process has sufficiently approached the target state.

[0073] Specifically, the real-time monitoring program is initiated, and the current actual output torque value of the first motor is acquired through a torque sensor. The first target torque value corresponding to the current moment is read from the first torque adjustment trajectory, and the absolute value of the difference between the current output torque of the first motor and the first target torque value is calculated to obtain the first deviation. Simultaneously, the current actual output torque value of the second motor is acquired through a torque sensor, and the second target torque value corresponding to the current moment is read from the second torque adjustment trajectory. The absolute value of the difference between the current output torque of the second motor and the second target torque value is calculated to obtain the second deviation. The first deviation is compared with a preset torque convergence threshold to determine if it is less than the torque convergence threshold. The second deviation is then compared with the torque convergence threshold to determine if it is less than the torque convergence threshold. When both the first deviation and the second deviation simultaneously meet the condition of being less than the torque convergence threshold, the system outputs a load state switching completion judgment signal, terminating the torque trajectory tracking control process.

[0074] Based on the above embodiments, as an optional embodiment, S503: After determining that the load state switching is complete, a switching evaluation step is further included, which may specifically include the following steps: S601: Set a steady-state evaluation window of a preset duration under the second load condition, and continuously collect real-time torque feedback data of the first motor and the second motor within the steady-state evaluation window.

[0075] In this embodiment, the steady-state evaluation window refers to a preset time period used to evaluate the system stability under the second load state, which represents the time range for continuous monitoring and data collection of the dual motor operating status after the load state switch is completed.

[0076] Specifically, upon receiving the load state switching completion signal, the system immediately initiates the steady-state evaluation program and enters the second load state operating mode. A time boundary for the steady-state evaluation window is established based on preset duration parameters, with the start time set to the current system time and the end time set to the current system time plus the preset duration. Within the steady-state evaluation window, a torque data acquisition program is initiated at a predetermined sampling frequency. The torque output value of the first motor is read in real time using its torque sensor, and the acquired torque data is stored in the first motor torque feedback data buffer in a time sequence. Simultaneously, the torque output value of the second motor is read in real time using its torque sensor, and the acquired torque data is stored in the second motor torque feedback data buffer in a time sequence. Continuous data acquisition is maintained throughout the entire steady-state evaluation window until the window ends, completing the torque feedback data acquisition task within the preset duration.

[0077] S602: Calculate the load distribution health index based on real-time torque feedback data, compare the load distribution health index with the preset health benchmark threshold, and obtain the comparison result.

[0078] In this embodiment, the load distribution health index refers to a comprehensive numerical parameter used to quantitatively evaluate the operational stability and load distribution rationality of the dual-motor system under the second load condition, and is used to represent the overall operational health and performance level of the system under the current load distribution mode.

[0079] Specifically, all torque data sequences collected within the steady-state evaluation window are extracted from the first motor torque feedback data buffer and the second motor torque feedback data buffer. Statistical analysis is performed on the first motor torque feedback data to calculate the mean, variance, and fluctuation range of the torque values, obtaining the first motor torque stability evaluation parameters. The same statistical analysis is performed on the second motor torque feedback data to calculate the mean, variance, and fluctuation range of the torque values, obtaining the second motor torque stability evaluation parameters. Based on a preset health calculation formula, the torque stability evaluation parameters of the two motors are weighted and fused to generate a load distribution health index value. A preset health benchmark threshold value is read from the system configuration parameters, and the calculated load distribution health index is compared with the health benchmark threshold. When the load distribution health index is greater than or equal to the health benchmark threshold, a comparison result indicating a successful health assessment is output; when the load distribution health index is less than the health benchmark threshold, a comparison result indicating a failed health assessment is output.

[0080] S603: Adjust the first target torque value and the second target torque value according to the comparison results to obtain the optimized target torque value.

[0081] Specifically, when a comparison result indicating that the load allocation health index is lower than the health baseline threshold is received, the torque optimization adjustment program is initiated. Preset positive trial adjustment values ​​are superimposed on the first target torque value and the second target torque value respectively to obtain a first trial torque combination. Preset negative trial adjustment values ​​are superimposed on the first target torque value and the second target torque value respectively to obtain a second trial torque combination. Based on the torque values ​​in the first trial torque combination, statistical analysis and weighted fusion calculation are performed again according to the calculation formula of the load allocation health index to obtain the first trial health index. Based on the torque values ​​in the second trial torque combination, the same calculation method is used to obtain the second trial health index. The absolute value of the difference between the first trial health index and the current load allocation health index is calculated, and the absolute value of the difference between the second trial health index and the current load allocation health index is also calculated. The adjustment direction corresponding to the trial health index with the smaller absolute value of the difference is selected as the optimization direction. The torque adjustment value is calculated according to the determined optimization direction and the preset iteration step size, and the torque adjustment value is superimposed on the first target torque value and the second target torque value respectively to obtain the updated torque value. The load distribution health index calculation process is re-executed using the updated torque value to determine if the calculation result is greater than or equal to the health baseline threshold. If the baseline threshold is not reached, the current preset iteration step size is multiplied by a preset step size decay coefficient to obtain a reduced iteration step size. The torque adjustment and health calculation process is repeated until the load distribution health index reaches the health baseline threshold. The final updated torque value is then determined as the optimized target torque value.

[0082] Based on the above embodiments, as an optional embodiment, S603: the step of adjusting the first target torque value and the second target torque value according to the comparison result to obtain the optimized target torque value may specifically include the following steps: S701: When the comparison result shows that the load distribution health index is lower than the health benchmark threshold, positive and negative trial adjustment amounts are applied to the first target torque value and the second target torque value respectively to obtain the first trial torque combination and the second trial torque combination.

[0083] In the embodiments of this application, the trial torque combination refers to the new set of torque values ​​formed after applying the trial adjustment amount to the original target torque value, which is used to represent the combination of torque parameters used to test the effect of different adjustment directions during the torque optimization process.

[0084] Specifically, the system determines whether the comparison result indicates that the load distribution health index is below the health baseline threshold. If the comparison result meets the condition, it reads the preset positive and negative trial adjustment values ​​from the system configuration parameters. It then retrieves the currently stored first and second target torque values. The positive trial adjustment is added to both the first and second target torque values ​​to obtain the positively adjusted first and second torque values, which are then combined to form the first trial torque combination. Similarly, the negative trial adjustment is subtracted from both the first and second target torque values ​​to obtain the negatively adjusted first and second torque values, which are then combined to form the second trial torque combination.

[0085] S702: Recalculate the load distribution health index based on the first trial torque combination and the second trial torque combination to obtain the first trial health index and the second trial health index.

[0086] In this embodiment of the application, the trial health index refers to the load distribution health value recalculated based on the trial torque combination, which is used to represent the health assessment result of the expected operating state of the dual-motor system under a specific trial adjustment direction.

[0087] Specifically, the first and second torque values ​​after positive adjustment are read from the data buffer. Based on these two torque values, statistical analysis is performed according to the preset calculation formula of the load distribution health index. The mean, variance, and fluctuation range of the first torque value after positive adjustment are calculated to obtain the torque stability evaluation parameters of the first motor under positive adjustment. The mean, variance, and fluctuation range of the second torque value after positive adjustment are also calculated to obtain the torque stability evaluation parameters of the second motor under positive adjustment. The torque stability evaluation parameters of the two motors are weighted and fused according to preset weight coefficients to obtain the first trial health index. The first and second torque values ​​after negative adjustment are read from the data buffer. Using the same statistical analysis and calculation process, the torque stability evaluation parameters of the two motors under negative adjustment are calculated separately and weighted and fused to obtain the second trial health index.

[0088] S703: Select the adjustment direction corresponding to the first or second trial health index with the smallest error with the load distribution health index as the optimization direction; calculate the torque adjustment amount according to the optimization direction and the preset iteration step size, and add the torque adjustment amount to the first target torque value and the second target torque value to obtain the updated torque value.

[0089] In the embodiments of this application, the optimization direction refers to the torque adjustment direction identifier determined based on the comparison results of the trial health index, which is used to indicate whether positive or negative adjustment should be adopted to improve the health of load distribution during the iterative optimization process.

[0090] Specifically, the values ​​of the current load distribution health index, the first trial health index, and the second trial health index are read from the data storage area. The difference between the first trial health index and the current load distribution health index is calculated, and the absolute value of the difference is taken to obtain the first error value. The difference between the second trial health index and the current load distribution health index is calculated, and the absolute value of the difference is taken to obtain the second error value. The first error value and the second error value are compared, and the adjustment direction corresponding to the trial health index with the smaller error value is selected. If the first error value is smaller, the positive adjustment direction is set as the optimization direction; if the second error value is smaller, the negative adjustment direction is set as the optimization direction. The preset iteration step size value in the system configuration is read, and the torque adjustment amount is calculated according to the determined optimization direction. If the optimization direction is a positive adjustment, the torque adjustment amount is equal to the preset iteration step size; if the optimization direction is a negative adjustment, the torque adjustment amount is equal to the negative value of the preset iteration step size. The calculated torque adjustment amount is added to the first target torque value and the second target torque value respectively to obtain the updated first torque value and the updated second torque value.

[0091] S704: Recalculate the load distribution health index using the updated torque value, determine whether the health baseline threshold has been reached, and if not, reduce the preset iteration step size by the preset step size decay coefficient until the load distribution health index reaches the health baseline threshold, and then determine the updated torque value as the optimized target torque value.

[0092] In the embodiments of this application, the step size decay coefficient refers to the decay factor parameter used to control the gradual reduction of the step size during the iterative optimization process, and is used to represent the reduction ratio coefficient for fine-tuning the iteration step size when the optimization effect is not ideal.

[0093] Specifically, the updated first torque value and the updated second torque value are read from the data cache. Based on these two updated torque values, statistical analysis is performed again according to the calculation formula of the load allocation health index to obtain a new load allocation health index value based on the updated torque values. The newly calculated load allocation health index is compared with the preset health benchmark threshold. If the new load allocation health index is greater than or equal to the health benchmark threshold, the optimization goal is determined to have been achieved, the current updated torque value is determined as the final optimized target torque value, and the optimization process ends. If the new load allocation health index is still less than the health benchmark threshold, the preset step size decay coefficient value is read from the system configuration, and the current preset iteration step size is multiplied by the step size decay coefficient to obtain a reduced new iteration step size. The reduced new iteration step size replaces the original preset iteration step size, and the trial and adjustment step is returned to re-execute the torque optimization process. Repeatedly execute the iterative process of trial adjustment, health calculation, optimization direction selection and step size decay until the load distribution health index value reaches or exceeds the health baseline threshold, complete the iterative optimization of the torque value and output the final optimized target torque value.

[0094] S604: Replace the first target torque value and the second target torque value with the optimized target torque value.

[0095] In the embodiments of this application, the optimized target torque value refers to the final torque control parameter that meets the load distribution health baseline threshold requirement after processing by the iterative optimization algorithm, and is used to represent the torque setting value that can achieve the optimal load distribution state of the dual-motor system.

[0096] Specifically, the optimized target torque value data is read from the output buffer of the iterative optimization module. The optimized target torque value is parsed, and the optimized first torque component and optimized second torque component are extracted. The torque control parameter storage area is accessed to locate the storage addresses of the current first and second target torque values. The optimized first torque component is used to overwrite the original storage location of the first target torque value, completing the data replacement of the first target torque value. The optimized second torque component is used to overwrite the original storage location of the second target torque value, completing the data replacement of the second target torque value.

[0097] S105: Adjust the output torque of the first motor and the second motor according to the first target torque value and the second target torque value respectively.

[0098] In the embodiments of this application, output torque refers to the magnitude of the mechanical torque actually output by the motor to the load end, which is used to represent the effective torque value that the motor can provide to the transmission system under the current working state.

[0099] Specifically, the currently valid first and second target torque values ​​are read from the torque control parameter storage area. The first target torque value is used as the torque control command for the first motor, and a torque setting command is sent to the drive controller of the first motor through the motor control interface. The drive controller adjusts the current input and voltage control parameters of the first motor according to the received first target torque value, changing the magnetic field strength and rotor speed of the first motor, so that the actual output torque of the first motor is gradually adjusted to the value corresponding to the first target torque value. The second target torque value is used as the torque control command for the second motor, and a torque setting command is sent to the drive controller of the second motor through the motor control interface. The drive controller adjusts the current input and voltage control parameters of the second motor according to the received second target torque value, changing the magnetic field strength and rotor speed of the second motor, so that the actual output torque of the second motor is gradually adjusted to the value corresponding to the second target torque value.

[0100] The following describes an exemplary multi-motor load distribution device provided in an embodiment of this application. Figure 4 This is an exemplary hardware structure diagram of a multi-motor load distribution device provided in an embodiment of this application.

[0101] In some embodiments, the multi-motor load sharing device is a computer device or includes a computer device. The computer device includes a processor, memory, and a network interface connected via a system bus. The processor of the computer device provides computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and internal memory. The non-volatile storage medium stores an operating system, computer programs, and a database. The internal memory provides an environment for the operation of the operating system and computer programs in the non-volatile storage medium. The database of the computer device stores data. The network interface of the computer device is used to communicate with other external terminals or servers via a network connection. In some embodiments, the network interface can be a wired network interface; in some embodiments, the network interface can also be a wireless network interface. When the computer program is executed by the processor, it implements the methods in the embodiments of this application.

[0102] Those skilled in the art will understand that Figure 4 The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.

[0103] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit it. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of this application.

[0104] As used in the above embodiments, depending on the context, the term "when..." can be interpreted as meaning "if...", "after...", "in response to determining...", or "in response to detecting...". Similarly, depending on the context, the phrase "when determining..." or "if (the stated condition or event) is interpreted as meaning "if determining...", "in response to determining...", "when (the stated condition or event) is detected", or "in response to detecting (the stated condition or event)".

[0105] In the above embodiments, implementation can be achieved entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid-state drive), etc.

[0106] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. This program can be stored in a computer-readable storage medium, and when executed, it can include the processes described in the above method embodiments. The aforementioned storage medium includes various media capable of storing program code, such as ROM or random access memory (RAM), magnetic disks, or optical disks.

Claims

1. A method for load sharing among multiple motors, characterized in that, A method applicable to a multi-motor drive system including a first motor and a second motor, the multi-motor drive system being used to drive industrial equipment to switch from a first load state to a second load state, the method comprising: The load state switching signal of the industrial equipment is monitored in real time. The load state switching signal is used to indicate that the industrial equipment switches from the first load state to the second load state. The first load state is the load state when the first motor or the second motor is driven independently. The second load state is the common load state when the first motor and the second motor are driven together. During the period when the load state switching signal is not received, the first torque data of the first motor and the second torque data of the second motor are collected at a preset sampling period; Calculate the first reference torque value of the first motor, the second reference torque value of the second motor, and the reference difference between the first motor and the second motor under the first load condition based on the first torque data and the second torque data. When the load state switching signal is received, the first target torque value of the first motor and the second target torque value of the second motor are calculated based on the first reference torque value, the second reference torque value and the reference difference; The output torques of the first motor and the second motor are adjusted according to the first target torque value and the second target torque value, respectively.

2. The multi-motor load distribution method according to claim 1, characterized in that, The step of calculating the first reference torque value of the first motor, the second reference torque value of the second motor, and the reference difference between the first motor and the second motor under the first load condition based on the first torque data and the second torque data includes: The first torque data is stored in the first torque data queue in chronological order, and the second torque data is stored in the second torque data queue in chronological order. When the queue length of the first torque data queue or the second torque data queue reaches the preset maximum length, and when new torque data is stored, the earliest stored torque data is removed. The arithmetic mean of the first torque data queue is calculated to obtain the first reference torque value, and the arithmetic mean of the second torque data queue is calculated to obtain the second reference torque value. Calculate the torque difference between the first torque data and the second torque data at the corresponding time, and store the torque difference values ​​in the torque difference queue in chronological order. When the queue length of the torque difference queue reaches the preset maximum length, and when a new torque difference value is stored, the earliest stored torque difference value is removed. The arithmetic mean of the torque difference queue is calculated to obtain the reference difference between the first motor and the second motor.

3. The multi-motor load distribution method according to claim 1, characterized in that, When the load state switching signal is received, calculating the first target torque value of the first motor and the second target torque value of the second motor based on the first reference torque value, the second reference torque value, and the reference difference includes: Obtain the additional load feedforward value added by the multi-motor drive system when switching from the first load state to the second load state; The distribution ratio of the additional load feedforward value between the first motor and the second motor is calculated based on the preset load distribution coefficient, so as to obtain the first initial torque compensation amount of the first motor and the second initial torque compensation amount of the second motor. The first initial torque compensation amount and the second initial torque compensation amount are adjusted according to the reference difference to obtain the first torque compensation amount of the first motor and the second torque compensation amount of the second motor. The first target torque value of the first motor is obtained by adding the first reference torque value to the first torque compensation amount, and the second target torque value of the second motor is obtained by adding the second reference torque value to the second torque compensation amount.

4. The multi-motor load distribution method according to claim 3, characterized in that, The adjustment of the first initial torque compensation amount and the second initial torque compensation amount based on the reference difference includes: The balance adjustment amount is calculated based on the reference difference, and the balance adjustment amount is obtained by multiplying the absolute value of the reference difference by a preset balance adjustment coefficient; When the reference difference is positive, the first torque compensation is obtained by subtracting the balance adjustment from the first initial torque compensation and by adding the balance adjustment to the second initial torque compensation. When the reference difference is negative, the first torque compensation is obtained by adding the balance adjustment amount to the first initial torque compensation amount, and the second torque compensation is obtained by subtracting the balance adjustment amount from the second initial torque compensation amount.

5. The multi-motor load distribution method according to claim 1, characterized in that, Upon receiving the load state switching signal, the method further includes: Based on preset transition time parameters, a first torque adjustment trajectory is generated for the first motor to smoothly transition from the first reference torque value to the first target torque value, and a second torque adjustment trajectory is generated for the second motor to smoothly transition from the second reference torque value to the second target torque value. During the load state switching process, the output torque of the first motor is adjusted according to the first torque adjustment trajectory, and the output torque of the second motor is adjusted according to the second torque adjustment trajectory; Real-time monitoring of the first deviation between the current output torque of the first motor and the first target torque value, and the second deviation between the current output torque of the second motor and the second target torque value; When both the first deviation and the second deviation are less than the preset torque convergence threshold, the load state switching is determined to be complete.

6. The multi-motor load distribution method according to claim 5, characterized in that, After the determination of the load state switch is completed, the following is also included: A steady-state evaluation window of a preset duration is set under the second load state, and real-time torque feedback data of the first motor and the second motor are continuously collected within the steady-state evaluation window; The load distribution health index is calculated based on the real-time torque feedback data, and the load distribution health index is compared with a preset health benchmark threshold to obtain the comparison result. Based on the comparison results, the first target torque value and the second target torque value are adjusted to obtain an optimized target torque value; Replace the first target torque value and the second target torque value with the optimized target torque value.

7. The multi-motor load distribution method according to claim 6, characterized in that, The step of adjusting the first target torque value and the second target torque value according to the comparison result to obtain the optimized target torque value includes: When the comparison result indicates that the load distribution health index is lower than the health benchmark threshold, positive and negative trial adjustment amounts are applied to the first target torque value and the second target torque value, respectively, to obtain the first trial torque combination and the second trial torque combination. Based on the first trial torque combination and the second trial torque combination, the load distribution health index is recalculated to obtain the first trial health index and the second trial health index. The adjustment direction corresponding to either the first or second trial health index, which has the smallest error with the load distribution health index, is selected as the optimization direction. The torque adjustment amount is calculated based on the optimization direction and the preset iteration step size. The torque adjustment amount is then superimposed on the first target torque value and the second target torque value to obtain the updated torque value. The updated torque value is used to recalculate the load distribution health index and determine whether the health baseline threshold has been reached. If not, the preset iteration step size is reduced by a preset step size decay coefficient until the load distribution health index reaches the health baseline threshold. The updated torque value is then determined as the optimized target torque value.

8. A multi-motor load distribution device, characterized in that, The multi-motor load sharing device includes: one or more processors and a memory; the memory is coupled to the one or more processors, the memory is used to store computer program code, the computer program code including computer instructions, and the one or more processors call the computer instructions to cause the multi-motor load sharing device to perform the method as described in any one of claims 1-7.

9. A computer program product containing instructions, characterized in that, When the computer program product is run on a multi-motor load distribution device, the multi-motor load distribution device performs the method as described in any one of claims 1-7.

10. A computer-readable storage medium comprising instructions, characterized in that, When the instruction is executed on a multi-motor load distribution device, the multi-motor load distribution device performs the method as described in any one of claims 1-7.