Multi-axis servo synchronous control method for industrial automation electrical cabinet

By constructing a coupling capacitor matrix and a cooperative objective function, the servo synchronous control method was optimized, which solved the problem of co-suppression of common-mode electromagnetic interference and bus voltage ripple in the electrical cabinet, and improved the control accuracy and stability of the system.

CN123034702APending Publication Date: 2026-11-03CHANGZHOU NORGREN AUTOMATION TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202611254011.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-08-18
Publication Date
2026-11-03

AI Technical Summary

Technical Problem

Existing multi-axis servo synchronous control schemes for electrical cabinets cannot simultaneously mitigate common-mode electromagnetic interference and bus voltage ripple, and hard threshold logic judgments are prone to causing system control jitter.

Method used

By acquiring the position and current data of the servo axis, a coupling capacitance matrix is ​​constructed, the common-mode voltage and bus ripple are calculated and predicted, a collaborative objective function is constructed, the zero-vector phase shift time is solved, and the switching time is optimized by combining the dead-zone correction factor, thereby achieving collaborative optimization of common-mode discharge current and bus ripple.

Benefits of technology

The system achieves coordinated optimization of common-mode discharge current and bus voltage ripple, solves the problems of common-mode electromagnetic interference and bus voltage pulsation in traditional solutions, and improves the control accuracy and stability of the system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN123034702A_ABST
    Figure CN123034702A_ABST
Patent Text Reader

Abstract

The present application relates to servo drive control technical field, especially to a kind of industrial automation electrical cabinet multi-axis servo synchronization control method, comprising: obtaining each servo axis position data and solving coupling capacitance matrix;Combining bus voltage, switch state and dead zone parameter calculates predicted common-mode voltage;Based on the rate of change of predicted common-mode voltage and coupling capacitance matrix, common-mode discharge current is calculated, bus ripple is calculated in combination with bus voltage, and collaborative objective function is constructed;Solving collaborative objective function determines zero vector phase shift time;Combining dead zone parameter and sampling noise variance, zero-crossing uncertainty window is solved, dead zone correction factor is calculated and target switching time is derived by superposition;Target switching time is converted into register control value and is issued at the start time of synchronous clock, and pulse width modulation control signal is updated.The present application realizes the collaborative suppression of common-mode interference and bus ripple and dead zone smooth compensation, improves multi-axis synchronization control precision and electromagnetic compatibility.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of servo drive control technology, and in particular to a multi-axis servo synchronous control method for industrial automation electrical cabinets. Background Technology

[0002] In the field of multi-axis servo synchronous control of industrial automation electrical cabinets, sinusoidal pulse width modulation (SPWM) technology is widely used in electrical cabinet systems that integrate multi-axis servo drives and controllers. In a centralized power supply architecture with a common DC bus for multiple axes within the electrical cabinet, the power switching devices of each servo drive switch on and off at high frequencies at carrier frequencies in the kilohertz range. The extremely high voltage change rate of the power devices generates a high-frequency common-mode voltage at the inverter output. This common-mode voltage induces a high-frequency common-mode discharge current through parasitic coupling capacitances on the electrical cabinet grounding terminal, motor windings, and cables, causing severe electromagnetic interference and affecting the operational reliability of the electronic components within the cabinet. Simultaneously, the high-frequency switching of the multi-axis inverter power devices also causes high-frequency AC bus ripple on the shared DC bus within the cabinet, which not only affects the accuracy of multi-axis synchronous control but also exacerbates the heating and wear of the bus capacitors.

[0003] Existing multi-axis drive control schemes for electrical cabinets typically optimize only a single objective, such as common-mode interference suppression or bus ripple smoothing, neglecting the intrinsic coupling characteristics between the common-mode voltage change rate and the bus pulsating current. They cannot simultaneously address the coordinated smoothing of common-mode discharge current and DC bus voltage ripple, and the switching control based on hard threshold logic is prone to causing system control jitter. Summary of the Invention

[0004] To overcome the above shortcomings, this invention provides a multi-axis servo synchronous control method for industrial automation electrical cabinets, aiming to improve the problem that switching control based on hard threshold logic is prone to causing system control jitter.

[0005] This invention provides the following technical solution: a multi-axis servo synchronous control method for industrial automation electrical cabinets, comprising: S1. Obtain the position data of each servo axis and calculate the coupling capacitance matrix of each servo axis; S2. Obtain the phase current data and bus voltage data of each servo driver, calculate the theoretical common-mode voltage based on the bus voltage data and the current switching state, calculate the distortion compensation amount based on the phase current data and dead zone parameters, and add the theoretical common-mode voltage and the distortion compensation amount to obtain the predicted common-mode voltage of each servo axis. S3. Calculate the common-mode discharge current by combining the coupling capacitor matrix and the time-varying rate of change of the predicted common-mode voltage, calculate the bus ripple by combining the bus voltage data, and construct a cooperative objective function constrained by minimizing the common-mode discharge current and the bus ripple. S4. Solve the cooperative objective function based on the predicted common-mode voltage, and calculate the zero-vector phase shift time of each servo driver under sinusoidal pulse width modulation; S5. Calculate the zero-crossing uncertainty window based on the dead zone parameter and the sampling noise variance of the phase current data, calculate the dead zone correction factor based on the mapping relationship of the phase current data within the zero-crossing uncertainty window, and superimpose the dead zone correction factor onto the zero vector phase shift time to calculate the target switching time of each servo axis. S6. Convert the target switching time of each servo axis into a register control value and send it to each servo driver at the start of the synchronization clock cycle to update the pulse width modulation control signal.

[0006] The present invention has the following beneficial effects: 1. In this invention, the common-mode discharge current is calculated by combining the coupling capacitor matrix with the predicted common-mode voltage change rate, and the bus ripple is calculated by combining the high-frequency pulsation of the bus voltage. A cooperative objective function based on minimizing the L2 norm of the dimensionless two-dimensional state vector is constructed. This achieves the cooperative optimization and dynamic smoothing of the common-mode discharge current and the bus voltage ripple, and solves the problems that traditional single-objective control schemes cannot take into account both common-mode electromagnetic interference and bus voltage pulsation, as well as the problem that hard threshold judgment can easily cause system control jitter.

[0007] 2. In this invention, the target zero vector action combination is determined by solving the minimum value of the second norm of the cooperative objective function, the initial translation phase and phase shift time of the zero vector are calculated, and the data is sent down by combining the shadow buffer register and the distributed synchronous interrupt mechanism. This achieves accurate dynamic phase shift of the zero vector action of multiple servo axes and hardware-level zero-time-difference synchronous update of the comparison load value, which solves the problem of electromagnetic interference caused by the superposition of common mode voltage spikes due to asynchronous switching actions of multiple servo axis drivers.

[0008] 3. In this invention, a zero-crossing uncertainty window is constructed by combining the inherent dead time of the hardware with the variance of the phase current sampling noise. The dead zone correction factor is solved by using the geometric fitting residual of the phase current shape mapping curve within the window and the nonlinear mapping function. This achieves accurate dead zone compensation at the target switching moment and smoothing of the dead zone voltage compensation in the blind zone. It solves the problems of polarity misjudgment, abrupt change in compensation direction, and secondary crossover distortion caused by sampling noise interference near the current zero crossing point in traditional dead zone compensation. Attached Figure Description

[0009] Figure 1 This is a flowchart of a multi-axis servo synchronous control method for an industrial automation electrical cabinet proposed in this invention; Figure 2 This is a flowchart illustrating the collaborative objective function construction and zero-vector phase shift calculation of a multi-axis servo synchronous control method for industrial automation electrical cabinets proposed in this invention. Figure 3 This is a flowchart of the zero-crossing uncertainty window solution and dead zone smoothing process for a multi-axis servo synchronous control method for industrial automation electrical cabinets proposed in this invention. Detailed Implementation

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

[0011] Example 1: In a first embodiment of the present invention, the present invention provides a multi-axis servo synchronous control method for industrial automation electrical cabinets, such as... Figures 1-3 As shown, it includes the following steps: S1. Obtain the position data of each servo axis and calculate the coupling capacitance matrix of each servo axis; Furthermore, in S1, solving the coupling capacitance matrix of each servo axis includes: Based on the position data of each servo axis and the preset mechanical topology parameters, the dynamic gap thickness between the load and the grounding conductor corresponding to each servo axis is calculated. Based on the dynamic gap thickness, the preset ground overlap area, and the dielectric constant, the self-capacitance components of each servo axis relative to ground are calculated using the parallel plate capacitance model. The relative distance between axes is calculated based on the position data difference between each servo axis, and the mutual capacitance component between adjacent servo axes is calculated. The coupling capacitance matrix of each servo axis is constructed by assembling the self-capacitance component and the mutual capacitance component.

[0012] Specifically, when calculating the coupling capacitance matrix of each servo axis, the position data of each servo axis is first obtained. This position data comes from the pulse count value or position angle feedback value sampled by the high-resolution absolute encoder installed on each servo axis during the current control cycle. Combined with the mechanical topology parameters pre-stored in memory, the dynamic gap thickness between the load and the grounding conductor corresponding to each servo axis is calculated. The mechanical topology parameters include the physical dimensions of the robotic arm or transmission mechanism, and the geometric relative position parameters between the joint rotation axis and the grounded metal shell or grounding base of the electrical cabinet. Substituting the position data into the forward kinematics equations of the joint, the real-time spatial coordinates of the end load of each servo axis and each linkage structure in three-dimensional space are calculated. Then, the vertical geometric distance between the exposed metal structure of the load and the nearest grounding conductor plane is calculated, thus obtaining the dynamic gap thickness.

[0013] After obtaining the dynamic gap thickness, the self-capacitance component of each servo axis to ground is calculated based on the preset ground overlap area and dielectric constant, using a parallel plate capacitance model. The preset ground overlap area is the projected area between the effective conductive surface of the load and the grounding conductor, determined during the mechanical structure design phase. The dielectric constant is the insulating dielectric constant of the medium filling the electrical cabinet and servo mechanism. In an air-medium environment, the dielectric constant is taken as the product of the vacuum dielectric constant and the relative dielectric constant of air. The formula for calculating the self-capacitance component is as follows: ; in, This represents the combined dielectric constant of air and the insulating medium. This represents the effective ground overlap area between the load of the i-th servo axis and the ground conductor. This represents the calculated real-time dynamic gap thickness between the load of the i-th servo axis and the ground conductor. This represents the calculated self-capacitance component of the i-th servo axis relative to ground.

[0014] Subsequently, the relative distance between servo axes is calculated based on the position data differences between each servo axis, and the mutual capacitance component between adjacent servo axes is also calculated. Position data of two adjacent servo axes are extracted, and the Euclidean distance between the centerlines of the two axes or two mechanical transmission components is calculated by subtracting their corresponding three-dimensional spatial coordinates, which is taken as the relative distance between the axes. This relative distance, the parallel overlap length between two adjacent axes, and the dielectric constant of the medium are substituted into the capacitance calculation model between parallel wires or parallel cylinders to solve for the parasitic mutual capacitance between adjacent servo axes. The calculation formula for the mutual capacitance component between the i-th axis and the j-th axis is as follows: ; in, This represents the effective parallel overlap length between the conductive structural components of the i-th axis and the j-th axis; This represents the real-time relative distance between the i-th and j-th axes obtained from the solution; r represents the equivalent cylindrical radius of the transmission conductive structure. This represents the calculated mutual capacitance component between the i-th and j-th axes. For servo axes that are not adjacent or have no parasitic electric field coupling, their corresponding mutual capacitance component is directly assigned a value of zero.

[0015] After calculating the self-capacitance and mutual capacitance components of all servo axes, a coupling capacitance matrix for each servo axis is constructed based on these components. For a control system with N servo axes, an N x N symmetric matrix is ​​constructed. The self-capacitance component of the i-th servo axis to ground, along with the sum of all mutual capacitance components connected to that axis, is filled into the main diagonal position of the i-th row and i-th column of this matrix, serving as the total equivalent self-capacitance to ground for that axis. The mutual capacitance component between the i-th and j-th axes is negatively evaluated and then filled into the off-diagonal positions of the i-th row and j-th column and the j-th row and i-th column of the matrix. The constructed coupling capacitance matrix reflects the spatial distribution of distributed parasitic capacitances of the multi-axis servo system under the current mechanical posture. This matrix is ​​directly passed to the subsequent common-mode discharge current calculation stage and multiplied by the time-varying rate matrix of the predicted common-mode voltage, thereby accurately deriving the common-mode displacement current distribution caused by the mutual coupling between the multiple axes.

[0016] S2. Obtain the phase current data and bus voltage data of each servo driver, calculate the theoretical common-mode voltage based on the bus voltage data and the current switching state, calculate the distortion compensation amount based on the phase current data and dead zone parameters, and add the theoretical common-mode voltage and the distortion compensation amount to obtain the predicted common-mode voltage of each servo axis. Furthermore, in S2, the distortion compensation amount is calculated based on the phase current data and dead-time parameters, including: The direction of the three-phase current output by each servo driver is extracted based on the phase current data, and the polarity vector of the three-phase current is calculated using the sign function. The single-phase dead-time voltage duty cycle loss is calculated based on the ratio of dead time to pulse width modulation period in the dead-time parameter. Multiply the single-phase dead zone voltage duty cycle loss by the bus voltage data to obtain the dead zone voltage deviation amplitude. By combining the polarity vector and the dead zone voltage deviation amplitude, the distortion compensation amount of each servo driver inverter three-phase bridge arm is calculated.

[0017] Specifically, during the data acquisition phase of each servo driver, the phase current data comes from Hall current sensors installed at the output terminals of the inverter bridge arms of each servo driver. After analog-to-digital conversion, the instantaneous digital values ​​of the three-phase phase currents are sampled at the center of the pulse width modulation cycle. The bus voltage data comes from a voltage divider sampling circuit and analog-to-digital converter connected to the shared DC bus, acquiring the digital value of the DC bus voltage in real time. The current switching state data comes from the pulse width modulation generation state, representing the on or off state of the upper bridge arm switches of the inverter at the current moment, with a value of one indicating on and a value of zero indicating off. When calculating the theoretical common-mode voltage, the switching states of phase A, phase B, and phase C are accumulated to obtain the switching state sum. This sum is then multiplied by the bus voltage data and divided by three. The calculation formula is as follows: ; in, This represents the DC bus voltage data. This represents the sum of the state values ​​of the three-phase upper bridge arm switches. This represents the calculated theoretical common-mode voltage.

[0018] When calculating distortion compensation based on phase current data and dead-zone parameters, the direction of the three-phase current output by each servo driver is first extracted from the phase current data. Real-time values ​​of the three-phase currents are extracted, and the directional characteristics of each phase current are solved using a sign function to generate a polarity vector for the three-phase currents. Each component of the polarity vector corresponds to the flow direction of a phase current. A value of positive one is taken when the phase current flows out of the inverter bridge arm, a value of negative one is taken when the phase current flows into the inverter bridge arm, and a value of zero is taken when the phase current is zero. The calculation formula for the polarity vector components is as follows: ; in, This represents the phase current data for phase x, where x represents phase A, phase B, or phase C, respectively. Represents a symbolic function. This represents the calculated polarity vector component of the x-phase current.

[0019] Simultaneously, the dead-time parameters, which include the dead time and pulse width modulation period, are read from the pre-stored configuration register. The dead time is divided by the pulse width modulation period to calculate the single-phase dead-time voltage duty cycle loss. Then, the single-phase dead-time voltage duty cycle loss is multiplied by the bus voltage data to obtain the dead-time voltage deviation amplitude. This amplitude reflects the voltage distortion caused by the freewheeling diode's conduction during the dead time. The calculation formula is as follows: ; in, Indicates dead time. Indicates the pulse width modulation period. This represents the DC bus voltage data. This represents the calculated dead zone voltage deviation magnitude.

[0020] After obtaining the polarity vector and dead-zone voltage deviation amplitude, the distortion compensation amount of each servo driver inverter's three-phase bridge arm is calculated by combining the two. The polarity vector components of phase A, phase B, and phase C currents are summed to obtain the polarity vector sum. This polarity vector sum is then multiplied by the dead-zone voltage deviation amplitude and divided by three to obtain the common-mode distortion compensation amount of the three-phase bridge arm in the current current direction. The calculation formula is as follows: ; in, This represents the sum of the polarity vector components of the currents in phases A, B, and C. Indicates the dead zone voltage deviation magnitude. This indicates the amount of distortion compensation for the three-phase bridge arm.

[0021] After calculating the theoretical common-mode voltage and distortion compensation, the theoretical common-mode voltage and distortion compensation are added together to obtain the predicted common-mode voltage for each servo axis. The predicted common-mode voltage includes the common-mode component generated by the ideal switching state of the inverter and the common-mode distortion component caused by dead-zone nonlinearity. The calculated predicted common-mode voltage is directly passed to the subsequent construction and solution of the cooperative objective function, serving as the benchmark data for calculating the time-varying rate of change of the predicted common-mode voltage, and is used to derive the common-mode discharge current in the multi-axis system.

[0022] S3. Calculate the common-mode discharge current by combining the coupling capacitor matrix and the time-varying rate of change of the predicted common-mode voltage, calculate the bus ripple by combining the bus voltage data, and construct a cooperative objective function constrained by minimizing the common-mode discharge current and the bus ripple. Furthermore, in S3, the calculation of the common-mode discharge current, combining the coupling capacitor matrix and the time-varying rate of change of the predicted common-mode voltage, includes: The first-order time-domain derivative of the predicted common-mode voltage within the sampling period is obtained to obtain the time-varying rate vector of the predicted common-mode voltage; Multiply the time-varying rate of change vector with the coupling capacitance matrix to derive the distributed parasitic displacement current on each conduction path; Based on Kirchhoff's current law, the distributed parasitic displacement current is vector-superimposed at the common-mode node to obtain the common-mode discharge current.

[0023] Furthermore, in S3, the calculation of bus ripple based on bus voltage data includes: Acquire DC bus voltage timing sampling data within the control cycle, and extract the DC fundamental frequency component of the DC bus voltage timing sampling data through filtering; Subtract the DC fundamental frequency component from the DC bus voltage timing sampling data to separate the AC high-frequency pulsation component; The root mean square value of the AC high-frequency pulsation component within the sliding window is calculated to obtain the bus ripple.

[0024] Furthermore, in S3, the cooperative objective function constrained by minimizing common-mode discharge current and bus ripple includes: Based on the preset common-mode current limit and bus ripple tolerance, the common-mode discharge current and bus ripple are subjected to dimensionless standardization to generate dimensionless common-mode discharge state quantities and dimensionless ripple state quantities. A two-dimensional common-mode-ripple state vector is constructed based on the dimensionless common-mode discharge state quantity and the dimensionless ripple state quantity; Calculate the L2 norm of the common-mode-ripple state vector and use the L2 norm as the output value of the cooperative objective function.

[0025] Specifically, when calculating the common-mode discharge current, the predicted common-mode voltage for each servo axis within the same sampling period is obtained. A first-order discrete difference operation is performed between the predicted common-mode voltage in the current sampling period and the predicted common-mode voltage in the previous sampling period. This difference is then divided by the sampling period duration to calculate the time-domain first derivative of the predicted common-mode voltage, generating a time-varying rate of change vector for the predicted common-mode voltage for each servo axis. Each element in the rate of change vector represents the transient rate of change of the predicted common-mode voltage for the corresponding servo axis along the time axis. The formula for calculating the time-varying rate of change vector is as follows: ; in, This represents the predicted common-mode voltage of the i-th servo axis during the current sampling period. This represents the predicted common-mode voltage of the i-th servo axis in the previous sampling period. This indicates the preset sampling period duration. This represents the time-varying rate of change of the predicted common-mode voltage corresponding to the i-th servo axis.

[0026] The calculated time-varying rate of change vector is multiplied by the previously constructed coupling capacitance matrix. Matrix multiplication involves summing the rate of change vectors of each axis with the corresponding self-capacitance and mutual capacitance components in the coupling capacitance matrix, deriving the distributed parasitic displacement current generated by capacitor charging and discharging on each conduction path. Based on Kirchhoff's current law, the distributed parasitic displacement currents on each conduction path are vector-superimposed at the shared ground terminal and the power supply common-mode node, and the sum is obtained to obtain the total common-mode discharge current for each servo axis. The common-mode discharge current calculation formula is as follows: ; in, This represents the capacitance component in the i-th row and j-th column of the coupling capacitance matrix. This represents the time-varying rate of change of the predicted common-mode voltage of the j-th servo axis. Indicates the total number of servo axes. This represents the calculated total mode discharge current.

[0027] When calculating the bus ripple, the DC bus voltage timing sampling data is acquired within the control cycle. This sampling data is a sequence of instantaneous DC bus voltage values ​​obtained from multiple consecutive samplings within a control cycle. A moving average filtering algorithm is used to perform low-pass filtering on the DC bus voltage timing sampling data to extract the DC fundamental frequency component reflecting the low-frequency trend of the DC bus voltage. Each instantaneous DC bus voltage sampling value within the control cycle is subtracted point-by-point from the extracted DC fundamental frequency component to eliminate the DC steady-state component and separate the AC high-frequency pulsating component. Then, within a preset sliding window, the sum of the squares of each value in the extracted AC high-frequency pulsating component sequence is divided by the total number of sampling points within the sliding window, and then the square root is taken to calculate the root mean square (RMS) value of the AC high-frequency pulsating component. This RMS value is the bus ripple. The formula for calculating the bus ripple is as follows: ; ; in, Indicates the first [number]th ... Instantaneous value of DC bus voltage at each sampling point This represents the calculated DC fundamental frequency component. Indicates the first AC high-frequency pulsation components at each sampling point This indicates the total number of sampling points within the sliding window. This represents the calculated busbar ripple.

[0028] When constructing the collaborative objective function, the pre-stored common-mode current limit and bus ripple tolerance values ​​are read. The common-mode current limit is determined based on the maximum allowable grounding leakage current of the electrical cabinet system, and the bus ripple tolerance value is determined based on the rated withstand voltage and allowable voltage fluctuation range of the DC bus capacitor. The calculated common-mode discharge current is then used... Divide by the common-mode current limit Dimensionless normalization scaling is performed to generate dimensionless common-mode discharge state variables. The calculated bus ripple Divide by bus ripple tolerance Generate dimensionless ripple state quantities The formula for dimensionless standardization is as follows: ; ; in, This represents the calculated common-mode discharge current. This indicates the preset common-mode current limit value. This represents the dimensionless common-mode discharge state quantity generated. This represents the calculated bus ripple. This indicates the preset bus ripple tolerance value. This represents the generated dimensionless ripple state quantity.

[0029] dimensionless common-mode discharge state quantity As the first-dimensional component, the dimensionless ripple state quantity As the second component, a two-dimensional common-mode and ripple state vector is constructed. The L2 norm of this two-dimensional common-mode and ripple state vector is calculated, which is equivalent to solving for the dimensionless common-mode discharge state quantity. The square of the dimensionless ripple state quantity The arithmetic square root of the sum of squares. The calculated L2 norm is used as the output value of the collaborative objective function. The formula for calculating the collaborative objective function is as follows: ; in, This represents a dimensionless common-mode discharge state quantity. This represents a dimensionless ripple state quantity. This represents the output value of the collaborative objective function. The calculated output value of the collaborative objective function. It is directly passed to the subsequent solution process to compare and optimize among candidate action combinations to determine the optimal output value. Minimal action strategy.

[0030] S4. Solve the cooperative objective function based on the predicted common-mode voltage, and calculate the zero-vector phase shift time of each servo driver under sinusoidal pulse width modulation; Furthermore, in S4, calculating the zero-vector phase shift time of each servo driver under sinusoidal pulse width modulation includes: Iterate through the candidate zero-vector action combinations of each servo driver in the current carrier cycle, and update the predicted common-mode voltage according to the switching state corresponding to each candidate zero-vector action combination. The updated predicted common-mode voltage is substituted into the cooperative objective function for solution, and the target zero-vector action combination that minimizes the L2 output value of the cooperative objective function is obtained. Based on the duty cycle timing of the effective vector and the zero vector in the target zero vector action combination, calculate the initial translation phase of the zero vector in the sinusoidal pulse width modulation symmetrical carrier. The initial translation phase is converted into a time offset to determine the zero vector phase shift time of each servo driver within the current carrier cycle.

[0031] Specifically, when solving for the zero-vector phase shift time, the process first iterates through the candidate zero-vector action combinations of each servo driver under sinusoidal pulse width modulation for the current carrier period. The candidate zero-vector action combinations include the time-domain allocation and combination strategy between different servo axis drivers for the states where all upper bridge arms are on (zero vector V7) and all lower bridge arms are on (zero vector V0). For each candidate zero-vector action combination, based on the switching state transition timing corresponding to that action combination, the current switching state of each servo driver's inverter bridge arm and the resulting common-mode voltage change are recalculated, thereby updating the previously calculated predicted common-mode voltage.

[0032] The updated predicted common-mode voltages of each candidate zero-vector action combination are substituted into the cooperative objective function for solution. Specifically, for each candidate zero-vector action combination, the time-varying rate of change vector of the updated predicted common-mode voltage is calculated, the corresponding common-mode discharge current is calculated using the coupling capacitance matrix, and the bus ripple is calculated using real-time DC bus voltage data. After dimensionless standardization and generation of a two-dimensional common-mode and ripple state vector, the L2 output value of this state vector is calculated. The L2 output values ​​calculated for all candidate action combinations are compared, and the action combination that minimizes the L2 output value of the cooperative objective function is selected as the target zero-vector action combination. The formula for selecting the target zero-vector action combination is as follows: ; in, This represents the set containing all candidate zero-vector action combinations. Indicates the first A candidate zero-vector action combination, Indicates substitution into the first The L2 norm value of the cooperative objective function output after combining candidate zero vector actions. This represents the selected target zero-vector action combination.

[0033] After obtaining the target zero-vector action combination, the duty cycle timing of the effective vector and zero vector of each servo driver inverter in the combination is analyzed within the symmetrical carrier cycle. Within the triangular symmetrical carrier cycle of sinusoidal pulse width modulation, the effective voltage vector's duration is determined by the modulation amplitude, and the remaining time is filled by the zero vectors V0 and V7. Based on the zero-vector allocation ratio specified by the target zero-vector action combination, the distribution position of the zero vector in the first and second half-cycles of the symmetrical carrier is calculated, and the phase shift of the zero vector center point relative to the carrier's initial moment is solved, thus calculating the initial translation phase of the zero vector within the sinusoidal pulse width modulation symmetrical carrier. The formula for calculating the initial translation phase is as follows: ; in, In the target zero vector action combination, the first... The initial activation time of the zero vector of each servo driver within the carrier cycle. This indicates the preset duration of the sinusoidal pulse width modulation carrier period. Represents the calculated first... The initial translation phase of the zero vector of each servo drive.

[0034] After obtaining the initial translation phase, it is converted into a corresponding time offset to determine the zero-vector phase shift time of each servo driver within the current carrier cycle. The phase shift time in the time domain is calculated by dividing the initial translation phase by the angular frequency, or by normalizing the initial translation phase and multiplying it by the carrier cycle duration. The formula for calculating the phase shift time is as follows: ; in, Indicates the solved first... The initial translation phase of each servo drive, This indicates the duration of the sinusoidal pulse width modulation carrier period. This represents the calculated zero-vector phase shift time offset of the i-th servo driver within the current carrier cycle. The calculated phase shift time is directly loaded into the pulse width modulation generation timer of the next carrier cycle, used to control the injection timing of the zero vector of each axis at the hardware level, thereby achieving phase alignment and cancellation of multi-axis common-mode voltage ripples.

[0035] S5. Calculate the zero-crossing uncertainty window based on the sampling noise variance of the dead zone parameters and phase current data. Calculate the dead zone correction factor based on the mapping relationship of the phase current data within the zero-crossing uncertainty window. Then, superimpose the dead zone correction factor onto the zero vector phase shift time to calculate the target switching time of each servo axis. Furthermore, in S5, the zero-crossing uncertainty window is calculated based on the dead-time parameter and the sampling noise variance of the phase current data, including: Based on the preset inverter dead time and switching device switching delay, calculate the voltage error compensation time caused by the inherent dead time of the hardware. The standard deviation of the variance of the sampling noise variance of the phase current data is calculated, and the boundary of the phase current noise amplitude is determined by combining it with the preset confidence interval. The duration of the current zero-crossing dead zone caused by sampling noise is calculated based on the ratio of the phase current noise amplitude boundary to the current zero-crossing change rate. By superimposing the voltage error compensation time and the current zero-crossing blind zone duration, a zero-crossing uncertainty window centered on the theoretical current zero-crossing point is determined.

[0036] Furthermore, in S5, the dead zone correction factor is calculated based on the mapping relationship of phase current data within the zero-crossing uncertainty window, including: Extract the current sampling points and corresponding rate of change characteristics of phase current data within the zero-crossing uncertainty window, and construct the phase current morphology mapping curve within the window; The distortion of the current waveform is calculated based on the geometric fitting residuals of the phase current shape mapping curve within the window and the ideal dead-zone-free sinusoidal current curve within the zero-crossing uncertainty window. The dimensionless attenuation coefficient is obtained by solving the ratio of the current waveform distortion to the phase current noise amplitude boundary. The dimensionless attenuation coefficient is substituted into the preset dead-zone voltage compensation nonlinear mapping function to calculate the dead-zone correction factor.

[0037] Specifically, when calculating the zero-crossing uncertainty window, the pre-stored dead-time parameters are first read. These parameters include the inverter dead-time and the switching device delay. The switching device delay includes the turn-on and turn-off delays of the insulated-gate bipolar transistor or metal-oxide-semiconductor field-effect transistor. The inverter dead-time is added to the switch-off delay, and the turn-on delay is subtracted to calculate the voltage error compensation time caused by the inherent hardware dead-time. The formula for calculating the inherent hardware compensation time is as follows: ; in, This indicates the preset inverter dead time. Indicates the turn-off delay of the switching device. Indicates the turn-on delay of the switching device. This represents the voltage error compensation time caused by the inherent dead time of the hardware, as calculated.

[0038] Simultaneously, the sampling noise variance of the phase current data is acquired. This variance is obtained through statistical analysis of static sampling data from the analog-to-digital converter chip when there is no signal input. The square root of the sampling noise variance of the phase current data is taken to calculate the standard deviation of the phase current sampling noise. Combined with a pre-defined probability confidence interval coefficient, such as the normal distribution coefficient corresponding to 95% or 99% confidence, the standard deviation is multiplied by the confidence interval coefficient to determine the phase current noise amplitude boundary. The formula for calculating the noise amplitude boundary is as follows: ; in, This represents the sampling noise variance of the phase current data. This represents the pre-set confidence interval coefficient. This represents the boundary of the calculated phase current noise amplitude.

[0039] Obtain the instantaneous zero-crossing rate of change of the current near the zero-crossing point. Calculate the first-order discrete derivative of the sampled phase current data in the neighborhood before and after the zero-crossing point, and then calculate the current zero-crossing rate of change. Divide the phase current noise amplitude boundary by the current zero-crossing rate of change to solve for the duration of the current zero-crossing dead zone caused by the inability to accurately determine the current direction due to noise interference. The formula for calculating the zero-crossing dead zone duration is as follows: ; in, Indicates the boundary of phase current noise amplitude. This represents the absolute rate of change of the phase current at the zero-crossing point. This indicates the calculated zero-crossing dead zone duration of the current.

[0040] The voltage error compensation time caused by the inherent dead time of the hardware is added together with the duration of the current zero-crossing dead zone to determine the zero-crossing uncertainty window, centered at the theoretical current zero-crossing point and with the total duration as the superimposed value. The formula for calculating the duration of the zero-crossing uncertainty window is as follows: ; in, This indicates the voltage error compensation time caused by the inherent dead time of the hardware. Indicates the duration of the current zero-crossing dead zone. This represents the total time width of a definite zero-crossing uncertain window.

[0041] When calculating the dead zone correction factor, the phase current data is extracted at each current sampling point within the zero-crossing uncertainty window, and the difference characteristics between adjacent sampling points are calculated to obtain the rate of change characteristics. Based on the current sampling points and their rate of change characteristics within the zero-crossing uncertainty window, a polynomial fitting method is used to construct the phase current shape mapping curve within the window.

[0042] The geometric fitting residuals are calculated by point-to-point subtraction between the constructed phase current shape mapping curve within the window and the ideal dead-zone-free sinusoidal current curve within the corresponding time domain intervals of the zero-crossing uncertainty window. The root mean square value of the summation of the squares of all geometric fitting residuals within the zero-crossing uncertainty window is then used to calculate the current waveform distortion degree, which reflects the degree of current waveform distortion. The formula for calculating the current waveform distortion degree is as follows: ; in, The phase current shape mapping curve represents the first... The value of each sampling point, The ideal dead-zone-free sinusoidal current curve represents the curve at the th... The value of each sampling point, This represents the total number of sampling points within the zero-crossing uncertainty window. This indicates the degree of distortion of the calculated current waveform.

[0043] The calculated current waveform distortion Divide by the phase current noise amplitude boundary The ratio of the two is calculated to obtain the dimensionless attenuation coefficient. The formula for calculating the dimensionless attenuation coefficient is as follows: ; in, Indicates the degree of distortion of the current waveform. Indicates the boundary of phase current noise amplitude. This represents the dimensionless attenuation coefficient calculated.

[0044] The dimensionless attenuation coefficient is substituted into the preset dead-zone voltage compensation nonlinear mapping function for mapping operations to calculate the dead-zone correction factor. The nonlinear mapping function is used to smooth the dead-zone compensation amount within the dead zone, preventing secondary current crossover distortion caused by abrupt changes in compensation direction near the current zero-crossing point. The calculation formula for the nonlinear mapping function is as follows: ; in, This represents the dimensionless attenuation coefficient. This represents the preset nonlinear mapping shape gain coefficient. This represents the calculated dead zone correction factor.

[0045] After obtaining the dead-zone correction factor, the dead-zone correction factor is multiplied by the time compensation offset converted from the dead-zone time, and this time compensation offset is directly superimposed onto the previously calculated zero-vector phase shift time to calculate the target switching time for each servo axis. The formula for calculating the target switching time is as follows: ; in, Indicates the first The zero vector phase shift time of each servo axis Indicates the dead zone correction factor. Indicates the inverter dead time. Represents the calculated first... The target switching time for each servo axis is calculated and then passed to the pulse width modulation register update stage for real-time adjustment of the specific timing of inverter bridge arm turn-on and turn-off.

[0046] S6. Convert the target switching time of each servo axis into register control values ​​and send them to each servo driver at the start of the synchronization clock cycle to update the pulse width modulation control signal.

[0047] Furthermore, in S6, the target switching time of each servo axis is converted into register control values ​​and sent to each servo driver at the start of the synchronization clock cycle, including: Based on the timer counting frequency of each servo driver, the target switching time of each servo axis is converted into the comparison load value of the pulse width modulation counter to obtain the register control value. The register control values ​​are preloaded by writing them into the shadow buffer registers corresponding to each servo driver. At the start of the synchronous clock cycle, respond to the distributed synchronous interrupt signal, synchronously latch the register control value in the shadow buffer register to the hardware compare register, and send it to each servo driver to update the pulse width modulation control signal.

[0048] Specifically, when converting the target switching time into a register control value and issuing an update, the counting frequency of the internal hardware timer of each servo driver is first obtained. The hardware timer typically operates in increment / decrement counting mode or continuous upward counting mode. The target switching time of each servo axis, calculated in the preceding steps, is multiplied by the timer counting frequency, and the time dimension is converted to a timer count value to obtain the comparison load value of the pulse width modulation counter, i.e., the register control value. The formula for calculating the register control value is as follows: ; in, Indicates the first Target switching time for each servo axis This represents the hardware counting frequency of the i-th servo driver timer. This indicates the floor function. Represents the calculated first... The comparison load value (register control value) corresponding to each servo axis.

[0049] The calculated register control values ​​for each servo axis are pre-loaded into the shadow buffer registers corresponding to the pulse width modulation modules in each servo driver microcontroller unit via fieldbus or internal high-speed data bus. The existence of the shadow buffer registers ensures that when new control parameters are written during the current carrier cycle, the currently active comparison register values ​​will not be immediately overwritten, thus preventing pulse width modulation signal waveform distortion or glitches.

[0050] Upon receiving a distributed synchronization interrupt signal (e.g., a SYNC synchronization pulse signal based on industrial real-time Ethernet) from the main control system, each servo drive triggers an interrupt response at the start of the synchronization clock cycle. In the interrupt service routine, the drive hardware automatically latches and updates the register control value pre-loaded in the shadow buffer register to the hardware compare register according to the synchronization signal control logic. The control value in the hardware compare register takes effect immediately and is compared with the real-time timer count value within the current carrier cycle, outputting the updated pulse width modulation control signal. The synchronization trigger representation corresponding to the hardware compare register value update is as follows: ; in, This represents the control value of the i-th servo axis register that was preloaded in the shadow buffer register in the previous cycle. This indicates the effective control value latched into the hardware compare register at the start of the current synchronization clock cycle. This mechanism enables precise hardware-level synchronization updates and seamless switching of pulse width modulation control signals for multi-axis drivers.

[0051] Example 2: In the industrial automation electrical cabinet control scenario of a high-precision five-axis CNC machine tool, multiple servo axes are centrally connected to a shared DC bus within the electrical cabinet for high-frequency coordinated interpolation motion. During actual machining operation, due to the frequent switching of the power switching devices of the multi-axis drivers at kilohertz-level high frequencies, the extremely high voltage change rate induces strong high-frequency common-mode discharge currents at the electrical cabinet grounding terminal and conduction path, severely interfering with the signals of the high-precision position encoder and sensors within the cabinet, causing slight jitter in the multi-axis interpolation trajectory. Simultaneously, frequent high-frequency starts and stops of the multi-axis and sudden load changes cause significant AC high-frequency ripples on the shared DC bus, reducing power supply stability and exacerbating the aging of the bus capacitors. Furthermore, during the low-speed micro-feeding or zero-crossing reverse phase of the multi-axis, the phase current near zero is susceptible to sampling noise interference, leading to dead-zone compensation polarity misjudgment and crossover distortion, causing pulsation in the motor output torque, ultimately forming periodic texture defects on the workpiece surface. In addition, the asynchronous PWM zero-vector action between the multi-axis drivers causes the multi-axis common-mode voltage spikes to superimpose, severely deteriorating the electromagnetic compatibility environment of the electrical cabinet. To solve the above problems, this invention provides a multi-axis servo synchronous control method for industrial automation electrical cabinets, the structure of which is as follows: Figure 1 As shown. The specific implementation process of this method is as follows: When performing high-precision surface interpolation machining on a five-axis CNC machine tool, the controller acquires the phase current, shared DC bus voltage, and switching status of each servo driver in real time at a fixed cycle, calculates the theoretical common-mode voltage and dead-zone distortion compensation of each axis, and superimposes them to obtain the predicted common-mode voltage of each axis in the current cycle.

[0052] To eliminate the interference of common-mode discharge on the position encoder and smooth bus ripple, the controller derives the total common-mode discharge current based on the predicted time-varying rate of change of the common-mode voltage and the parasitic coupling capacitance matrix; simultaneously, it extracts the high-frequency ripple component from the bus voltage to solve for the bus ripple. After dimensionless standardization of both, a two-dimensional state vector is constructed, and its L2 norm is used as the cooperative objective function.

[0053] The algorithm iterates through the candidate zero-vector action combinations for each servo axis, selects the target combination that minimizes the L2 norm of the cooperative objective function, calculates the initial translation phase of the zero vector and converts it into a time offset, thereby determining the zero-vector phase shift time of each servo axis within the current carrier cycle, and realizing phase cancellation of multi-axis common-mode voltage ripples.

[0054] During the low-speed micro-feeding or zero-crossing reversal phase of the tool, the controller constructs a zero-crossing uncertainty window by combining the hardware dead time and the phase current sampling noise boundary. The dead-crossing correction factor is derived by fitting the current waveform residual and nonlinear mapping within the window. This factor is then superimposed on the zero vector phase shift time to obtain the accurate target switching time, thus achieving smoothing of dead-crossing compensation within the zero-crossing blind zone.

[0055] Finally, the target switching time is converted into a comparison load value based on the driver hardware counting frequency, and preloaded in parallel into the shadow buffer registers of each servo driver. Responding to the distributed synchronization interrupt signal at the start of the synchronization clock, the load value is synchronously latched into the hardware comparison register and takes effect immediately, achieving zero-time-difference synchronous updates and seamless switching of control signals for multi-axis drivers at the hardware level.

[0056] Finally, it should be noted that the above description is only a preferred embodiment of the present invention and is not intended to limit the present invention. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art can still modify the technical solutions described in the foregoing embodiments or make equivalent substitutions for some of the technical features. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the protection scope of the present invention.

Claims

1. A multi-axis servo synchronous control method for an industrial automation electrical cabinet, characterized in that, include: S1. Obtain the position data of each servo axis and calculate the coupling capacitance matrix of each servo axis; S2. Obtain the phase current data and bus voltage data of each servo driver, calculate the theoretical common-mode voltage based on the bus voltage data and the current switching state, calculate the distortion compensation amount based on the phase current data and dead zone parameters, and add the theoretical common-mode voltage and the distortion compensation amount to obtain the predicted common-mode voltage of each servo axis. S3. Calculate the common-mode discharge current by combining the coupling capacitor matrix and the time-varying rate of change of the predicted common-mode voltage, calculate the bus ripple by combining the bus voltage data, and construct a cooperative objective function constrained by minimizing the common-mode discharge current and the bus ripple. S4. Solve the cooperative objective function based on the predicted common-mode voltage, and calculate the zero-vector phase shift time of each servo driver under sinusoidal pulse width modulation; S5. Calculate the zero-crossing uncertainty window based on the dead zone parameter and the sampling noise variance of the phase current data, calculate the dead zone correction factor based on the mapping relationship of the phase current data within the zero-crossing uncertainty window, and superimpose the dead zone correction factor onto the zero vector phase shift time to calculate the target switching time of each servo axis. S6. Convert the target switching time of each servo axis into a register control value and send it to each servo driver at the start of the synchronization clock cycle to update the pulse width modulation control signal.

2. The multi-axis servo synchronous control method for an industrial automation electrical cabinet according to claim 1, characterized in that, In S1, solving the coupling capacitance matrix for each servo axis includes: Based on the position data of each servo axis and the preset mechanical topology parameters, the dynamic gap thickness between the load and the grounding conductor corresponding to each servo axis is calculated. Based on the dynamic gap thickness, the preset ground overlap area, and the dielectric constant, the self-capacitance component of each servo axis relative to ground is calculated using a parallel plate capacitance model. The relative distance between axes is calculated based on the position data difference between each servo axis, and the mutual capacitance component between adjacent servo axes is calculated. The coupling capacitance matrix of each servo axis is constructed by assembling the self-capacitance component and the mutual capacitance component.

3. The multi-axis servo synchronous control method for an industrial automation electrical cabinet according to claim 1, characterized in that, In S2, the distortion compensation amount is calculated based on the phase current data and dead-time parameters, including: The direction of the three-phase current output by each servo driver is extracted based on the phase current data, and the polarity vector of the three-phase current is calculated using a sign function. The single-phase dead-time voltage duty cycle loss is calculated based on the ratio of the dead time to the pulse width modulation period in the dead-time parameters. Multiply the single-phase dead zone voltage duty cycle loss by the bus voltage data to obtain the dead zone voltage deviation amplitude. By combining the polarity vector and the dead zone voltage deviation amplitude, the distortion compensation amount of each servo driver inverter three-phase bridge arm is calculated.

4. The multi-axis servo synchronous control method for an industrial automation electrical cabinet according to claim 1, characterized in that, In S3, calculating the common-mode discharge current by combining the coupling capacitor matrix with the time-varying rate of change of the predicted common-mode voltage includes: The first-order time-domain derivative of the predicted common-mode voltage within the sampling period is obtained to obtain the time-varying rate vector of the predicted common-mode voltage; Multiply the time-varying rate of change vector with the coupling capacitance matrix to derive the distributed parasitic displacement current on each conduction path; Based on Kirchhoff's current law, the distributed parasitic displacement current is vector-superimposed at the common-mode node to obtain the common-mode discharge current.

5. The multi-axis servo synchronous control method for an industrial automation electrical cabinet according to claim 1, characterized in that, In S3, the calculation of bus ripple based on the bus voltage data includes: Acquire DC bus voltage timing sampling data within the control cycle, and extract the DC fundamental frequency component of the DC bus voltage timing sampling data through filtering; Subtract the DC bus voltage timing sampling data from the DC fundamental frequency component to separate the AC high-frequency pulsation component; The root mean square value of the AC high-frequency pulsation component within the sliding window is calculated to obtain the bus ripple.

6. The multi-axis servo synchronous control method for an industrial automation electrical cabinet according to claim 1, characterized in that, In S3, the cooperative objective function constrained by minimizing the common-mode discharge current and the bus ripple includes: Based on the preset common-mode current limit and bus ripple tolerance, the common-mode discharge current and the bus ripple are respectively subjected to dimensionless standardization to generate dimensionless common-mode discharge state quantity and dimensionless ripple state quantity. A two-dimensional common-mode-ripple state vector is constructed based on the dimensionless common-mode discharge state quantity and the dimensionless ripple state quantity. Calculate the L2 norm of the common-mode-ripple state vector and use the L2 norm as the output value of the cooperative objective function.

7. The multi-axis servo synchronous control method for an industrial automation electrical cabinet according to claim 1, characterized in that, In S4, the calculation of the zero-vector phase shift time of each servo driver under sinusoidal pulse width modulation includes: The candidate zero-vector action combinations of each servo driver in the current carrier cycle are traversed, and the predicted common-mode voltage is updated according to the switching state corresponding to each candidate zero-vector action combination. Substitute the updated predicted common-mode voltage into the cooperative objective function to solve for the target zero-vector action combination that minimizes the L2 output value of the cooperative objective function. Based on the duty cycle timing of the effective vector and the zero vector in the target zero vector action combination, calculate the initial translation phase of the zero vector within the sinusoidal pulse width modulation symmetrical carrier. The initial translation phase is converted into a time offset to determine the zero vector phase shift time of each servo driver within the current carrier cycle.

8. The multi-axis servo synchronous control method for an industrial automation electrical cabinet according to claim 1, characterized in that, In S5, calculating the zero-crossing uncertainty window based on the dead-zone parameter and the sampling noise variance of the phase current data includes: Based on the preset inverter dead time and switching device switching delay, calculate the voltage error compensation time caused by the inherent dead time of the hardware. The standard deviation of the variance of the sampling noise variance of the phase current data is calculated, and the phase current noise amplitude boundary is determined by combining it with the preset confidence interval; The duration of the current zero-crossing dead zone caused by sampling noise is calculated based on the ratio of the phase current noise amplitude boundary to the current zero-crossing change rate. By superimposing the voltage error compensation time and the current zero-crossing blind zone duration, a zero-crossing uncertainty window centered on the theoretical current zero-crossing point is determined.

9. The multi-axis servo synchronous control method for an industrial automation electrical cabinet according to claim 1, characterized in that, In S5, calculating the dead-zone correction factor based on the mapping relationship of the phase current data within the zero-crossing uncertainty window includes: Extract the current sampling points and corresponding rate of change characteristics of the phase current data within the zero-crossing uncertainty window, and construct the phase current morphology mapping curve within the window; Based on the geometric fitting residuals of the phase current shape mapping curve within the window and the ideal dead zone-free sinusoidal current curve within the zero-crossing uncertainty window, the current waveform distortion is calculated. The dimensionless attenuation coefficient is obtained by solving the ratio of the distortion of the current waveform to the boundary of the phase current noise amplitude. The dimensionless attenuation coefficient is substituted into the preset dead-zone voltage compensation nonlinear mapping function to calculate the dead-zone correction factor.

10. The multi-axis servo synchronous control method for an industrial automation electrical cabinet according to claim 1, characterized in that, In S6, converting the target switching time of each servo axis into register control values ​​and sending them to each servo driver at the start of the synchronization clock cycle includes: Based on the timer counting frequency of each servo driver, the target switching time of each servo axis is converted into the comparison load value of the pulse width modulation counter to obtain the register control value; The register control values ​​are preloaded by writing them into the shadow buffer registers corresponding to each servo driver. At the start of the synchronous clock cycle, in response to the distributed synchronous interrupt signal, the register control value in the shadow buffer register is synchronously latched into the hardware compare register and sent to each servo driver to update the pulse width modulation control signal.