CN107241041B - Dead zone compensation method of motor driver, motor driver and storage medium - Google Patents
Dead zone compensation method of motor driver, motor driver and storage medium Download PDFInfo
- Publication number
- CN107241041B CN107241041B CN201710646205.0A CN201710646205A CN107241041B CN 107241041 B CN107241041 B CN 107241041B CN 201710646205 A CN201710646205 A CN 201710646205A CN 107241041 B CN107241041 B CN 107241041B
- Authority
- CN
- China
- Prior art keywords
- current
- delay time
- time difference
- value
- temperature value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 40
- 238000013507 mapping Methods 0.000 claims description 105
- 238000005192 partition Methods 0.000 claims description 10
- 230000011218 segmentation Effects 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02P—CONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
- H02P21/00—Arrangements or methods for the control of electric machines by vector control, e.g. by control of field orientation
- H02P21/14—Estimation or adaptation of machine parameters, e.g. flux, current or voltage
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02M—APPARATUS FOR CONVERSION BETWEEN AC AND AC, BETWEEN AC AND DC, OR BETWEEN DC AND DC, AND FOR USE WITH MAINS OR SIMILAR POWER SUPPLY SYSTEMS; CONVERSION OF DC OR AC INPUT POWER INTO SURGE OUTPUT POWER; CONTROL OR REGULATION THEREOF
- H02M1/00—Details of apparatus for conversion
- H02M1/38—Means for preventing simultaneous conduction of switches
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02M—APPARATUS FOR CONVERSION BETWEEN AC AND AC, BETWEEN AC AND DC, OR BETWEEN DC AND DC, AND FOR USE WITH MAINS OR SIMILAR POWER SUPPLY SYSTEMS; CONVERSION OF DC OR AC INPUT POWER INTO SURGE OUTPUT POWER; CONTROL OR REGULATION THEREOF
- H02M7/00—Conversion of AC power input into DC power output; Conversion of DC power input into AC power output
- H02M7/42—Conversion of DC power input into AC power output without possibility of reversal
- H02M7/44—Conversion of DC power input into AC power output without possibility of reversal by static converters
- H02M7/48—Conversion of DC power input into AC power output without possibility of reversal by static converters using discharge tubes with control electrode or semiconductor devices with control electrode
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02M—APPARATUS FOR CONVERSION BETWEEN AC AND AC, BETWEEN AC AND DC, OR BETWEEN DC AND DC, AND FOR USE WITH MAINS OR SIMILAR POWER SUPPLY SYSTEMS; CONVERSION OF DC OR AC INPUT POWER INTO SURGE OUTPUT POWER; CONTROL OR REGULATION THEREOF
- H02M1/00—Details of apparatus for conversion
- H02M1/38—Means for preventing simultaneous conduction of switches
- H02M1/385—Means for preventing simultaneous conduction of switches with means for correcting output voltage deviations introduced by the dead time
Landscapes
- Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Inverter Devices (AREA)
Abstract
The invention discloses a dead zone compensation method of a motor driver, the motor driver and a storage medium. According to the invention, the current value and the current temperature value of the motor are obtained, the corresponding current delay time difference is determined according to the current value and the current temperature value, the ideal dead zone compensation voltage is corrected according to the current delay time difference, the delay time difference is not taken as a fixed value, but the ideal dead zone compensation voltage is corrected according to the switch delay time difference determined by the current value and the current temperature value, so that the output voltage is closer to the theoretical value, and the control precision of the motor is improved.
Description
Technical Field
The invention relates to the technical field of motor control, in particular to a dead zone compensation method of a motor driver, the motor driver and a storage medium.
Background
In the field of motor control, in order to avoid the direct connection of upper and lower switching tubes of the same bridge arm of an inverter, a period of time for which the upper and lower switching tubes are not switched on needs to be set manually in each commutation process of the upper and lower switching tubes, and the period of time is dead time for preventing the direct connection of the upper and lower switching tubes.
The setting of the dead time can cause the duty ratio of the output voltage of the inverter to be lost, so that the actual output voltage is lower than a theoretical value, the waveform of the output voltage is distorted, and the accuracy of motor control is further influenced. Essentially, the existing methods for dead zone compensation can be divided into two main categories: the first type is to compensate for ideal dead time, and the second type is to correct ideal dead time compensation voltage after considering nonlinear factors of the switching device. At present, the ideal dead zone problem has been perfectly solved, however, in practical application, due to the diversity and complexity of the nonlinear factors of the switching devices, the problem of compensating the nonlinear factors of the switching devices does not have a perfect solution.
Among the nonlinear factors of the switching device, the voltage drop of the switching tube, the turn-on delay and turn-off delay of the switching tube, and the delay of the gate drive circuit are the main factors causing the loss of the duty ratio of the output voltage and the distortion of the output voltage. The amplitude of the output voltage pulse is directly caused to be smaller than a theoretical value by the factor of the voltage drop of the switching tube, and the width of the output voltage pulse is directly caused to be larger than the theoretical value by the delay factor in the switching process. Only if the pulse amplitude error and the pulse width error of the output voltage are compensated accurately, accurate motor control can be realized.
However, in the prior art, when performing dead zone compensation, a delay time difference (i.e. a difference between an on delay and an off delay of a switching tube) is usually taken as a fixed value, and the delay time difference may vary with a change of a current, so that the dead zone compensation is inaccurate, and the control accuracy of a motor is affected.
The above is only for the purpose of assisting understanding of the technical aspects of the present invention, and does not represent an admission that the above is prior art.
Disclosure of Invention
The invention mainly aims to provide a dead zone compensation method of a motor driver, the motor driver and a storage medium, and aims to solve the technical problems that dead zone compensation is not accurate and motor control accuracy is influenced in the prior art.
To achieve the above object, the present invention provides a dead zone compensation method of a motor driver, the method comprising the steps of:
acquiring a current value and a current temperature value of the motor;
determining a corresponding current delay time difference according to the current value and the current temperature value;
and correcting the ideal dead zone compensation voltage according to the current delay time difference.
Preferably, the determining a corresponding current delay time difference according to the current value and the current temperature value specifically includes:
and determining the corresponding current delay time difference by adopting a mapping curve set according to the current value and the current temperature value, wherein the mapping curve set comprises mapping curves at different temperature values, and the mapping curve is a curve reflecting the corresponding relation between the delay time difference and the current value.
Preferably, the determining a corresponding current delay time difference by using a mapping curve according to the current value and the current temperature value specifically includes:
and searching a linear area of each mapping curve in the mapping curve set, and determining the corresponding current delay time difference by using the linear area according to the current value and the current temperature value.
Preferably, the determining the corresponding current delay time difference by using the linear region according to the current value and the current temperature value specifically includes:
selecting two mapping curves from the mapping curve set, respectively selecting two reference points from a linear area of the selected mapping curve, obtaining a reference current value, a reference temperature value and a reference delay time difference of each reference point, and determining the current delay time difference according to the current value, the current temperature value, the reference current value, the reference temperature value and the reference delay time difference of each reference point.
Preferably, the current delay time difference is determined according to the current value, the current temperature value, the reference current value of each reference point, the reference temperature value and the reference delay time difference by the following formula,
wherein, t1(T)=t(i1,T2)-k1(T-T2)2,t2(T)=t(i2,T2)-k2(T-T2)2,k1=-[t(i1,T1)-t(i1,T2)]/(T1-T2)2,k2=-[t(i2,T1)-t(i2,T2)]/(T1-T2)2I is the current value, T is the current temperature value, Δ Tdelay(i, T) is the current delay time difference, T (i)1,T1) Is a reference current value i1Reference temperature value T1Corresponding reference delay time difference, t (i)1,T2) Is a reference current value i1Reference temperature value T2Corresponding reference delay time difference, t (i)2,T1) Is a reference current value i2Reference temperature value T1Corresponding reference delay time difference, t (i)2,T2) Is a reference current value i2Reference temperature value T2Corresponding reference delay time difference.
Preferably, the searching for the linear region of each mapping curve in the mapping curve set specifically includes:
and respectively obtaining the tangent slope of each point on each mapping curve in the mapping curve set, and determining the linear region of each mapping curve according to the tangent slope.
Preferably, the determining the linear region of each mapping curve according to the slope of the tangent specifically includes:
traversing the mapping curves in the mapping curve set, and taking the points of the traversed current mapping curve where the tangent slope is equal to the preset slope as segmentation points;
dividing the current mapping curve according to the dividing points to obtain at least two dividing areas;
and judging whether each partition area has a point with a tangent slope larger than a preset slope, and taking the partition area without the point with the tangent slope larger than the preset slope as a linear area of the current mapping curve.
Preferably, the motor is a three-phase variable frequency motor;
accordingly, the ideal dead zone compensation voltage is corrected according to the current delay time difference through the following formula,
wherein, iais the current value of the a phase, ibCurrent value of b phase, icIs the current value of the c phase, T is the current temperature value, Δ Tdelay(iaT) is iaCurrent delay time difference, Δ T, corresponding to Tdelay(ibT) is ibCurrent delay time difference, Δ T, corresponding to Tdelay(icT) is icCurrent delay time difference, T, corresponding to TsIs the switching period, V, of the three-phase variable frequency motordcIs a DC bus voltage vdCompensating the voltage for the ideal dead zone, vAN_compCompensating voltage for corrected a-phase dead zone, vBN_compCompensating voltage for corrected b-phase dead zone, vCN_compThe voltage is compensated for the corrected c-phase dead zone.
Further, to achieve the above object, the present invention also provides a motor driver including: a memory, a processor, and a dead-time compensation program stored on the memory and executable on the processor, the dead-time compensation program configured to implement the steps of the dead-time compensation method.
Further, to achieve the above object, the present invention also provides a computer readable storage medium having stored thereon a dead zone compensation program, which when executed by a processor, implements the steps of the dead zone compensation method.
According to the invention, the current value and the current temperature value of the motor are obtained, the corresponding current delay time difference is determined according to the current value and the current temperature value, the ideal dead zone compensation voltage is corrected according to the current delay time difference, the delay time difference is not taken as a fixed value, but the ideal dead zone compensation voltage is corrected according to the switch delay time difference determined by the current value and the current temperature value, so that the output voltage is closer to the theoretical value, and the control precision of the motor is improved.
Drawings
FIG. 1 is a schematic diagram of a motor drive architecture for a hardware operating environment according to an embodiment of the present invention;
FIG. 2 is a schematic flow chart illustrating a dead-time compensation method of a motor driver according to a first embodiment of the present invention;
FIG. 3 is a flow chart illustrating a dead-time compensation method of a motor driver according to a second embodiment of the present invention;
FIG. 4 is a flow chart illustrating a dead-time compensation method of a motor driver according to a third embodiment of the present invention;
FIG. 5 is a schematic diagram illustrating the variation of the delay time difference with current and temperature according to an embodiment of the present invention;
fig. 6 is a schematic diagram of the corrected a-phase dead-time compensation voltage according to the embodiment of the present invention.
The implementation, functional features and advantages of the objects of the present invention will be further explained with reference to the accompanying drawings.
Detailed Description
It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.
Referring to fig. 1, fig. 1 is a schematic structural diagram of a motor driver in a hardware operating environment according to an embodiment of the present invention.
As shown in fig. 1, the motor driver may include: a processor 1001, such as a CPU, a communication bus 1002, a user interface 1003, and a memory 1004. Wherein a communication bus 1002 is used to enable connective communication between these components. The user interface 1003 may include a Display screen (Display), an input unit such as a Keyboard (Keyboard), and the optional user interface 1003 may also include a standard wired interface, a wireless interface. The memory 1004 may be a high-speed RAM memory or a non-volatile memory (e.g., a disk memory). The memory 1004 may alternatively be a storage device separate from the processor 1001.
Those skilled in the art will appreciate that the motor drive configuration shown in fig. 1 does not constitute a limitation of a motor drive and may include more or fewer components than shown, or some components may be combined, or a different arrangement of components.
As shown in fig. 1, the memory 1004, which is a type of computer storage medium, may include an operating system, a user interface module, and a dead band compensation program therein.
In the motor driver shown in fig. 1, the motor driver calls the dead zone compensation program stored in the memory 1004 by the processor 1001 and performs the following operations:
acquiring a current value and a current temperature value of the motor;
determining a corresponding current delay time difference according to the current value and the current temperature value;
and correcting the ideal dead zone compensation voltage according to the current delay time difference.
Further, the processor 1001 may call the dead zone compensation program stored in the memory 1004, and also perform the following operations:
and determining the corresponding current delay time difference by adopting a mapping curve set according to the current value and the current temperature value, wherein the mapping curve set comprises mapping curves at different temperature values, and the mapping curve is a curve reflecting the corresponding relation between the delay time difference and the current value.
Further, the processor 1001 may call the dead zone compensation program stored in the memory 1004, and also perform the following operations:
and searching a linear area of each mapping curve in the mapping curve set, and determining the corresponding current delay time difference by using the linear area according to the current value and the current temperature value.
Further, the processor 1001 may call the dead zone compensation program stored in the memory 1004, and also perform the following operations:
selecting two mapping curves from the mapping curve set, respectively selecting two reference points from a linear area of the selected mapping curve, obtaining a reference current value, a reference temperature value and a reference delay time difference of each reference point, and determining the current delay time difference according to the current value, the current temperature value, the reference current value, the reference temperature value and the reference delay time difference of each reference point.
Further, the processor 1001 may call the dead zone compensation program stored in the memory 1004, and also perform the following operations:
determining the current delay time difference according to the current value, the current temperature value, the reference current value of each reference point, the reference temperature value and the reference delay time difference through the following formula,
wherein, t1(T)=t(i1,T2)-k1(T-T2)2,t2(T)=t(i2,T2)-k2(T-T2)2,k1=-[t(i1,T1)-t(i1,T2)]/(T1-T2)2,k2=-[t(i2,T1)-t(i2,T2)]/(T1-T2)2I is the current value, T is the current temperature value, Δ Tdelay(i, T) is the current delay time difference, T (i)1,T1) Is a reference current value i1Reference temperature value T1Corresponding reference delay time difference, t (i)1,T2) Is a reference current value i1Reference temperature value T2Corresponding reference delay time difference, t (i)2,T1) Is a reference current value i2Reference temperature value T1Corresponding reference delay time difference, t (i)2,T2) Is a reference current value i2Reference temperature value T2Corresponding reference delay time difference.
Further, the processor 1001 may call the dead zone compensation program stored in the memory 1004, and also perform the following operations:
and respectively obtaining the tangent slope of each point on each mapping curve in the mapping curve set, and determining the linear region of each mapping curve according to the tangent slope.
Further, the processor 1001 may call the dead zone compensation program stored in the memory 1004, and also perform the following operations:
traversing the mapping curves in the mapping curve set, and taking the points of the traversed current mapping curve where the tangent slope is equal to the preset slope as segmentation points;
dividing the current mapping curve according to the dividing points to obtain at least two dividing areas;
and judging whether each partition area has a point with a tangent slope larger than a preset slope, and taking the partition area without the point with the tangent slope larger than the preset slope as a linear area of the current mapping curve.
Further, the motor is a three-phase variable frequency motor, and the processor 1001 may call the dead-time compensation program stored in the memory 1004, and further perform the following operations:
correcting the ideal dead zone compensation voltage according to the current delay time difference through the following formula,
wherein, iais the current value of the a phase, ibCurrent value of b phase, icIs the current value of the c phase, T is the current temperature value, Δ Tdelay(iaT) is iaCurrent delay time difference, Δ T, corresponding to Tdelay(ibT) is ibCurrent delay time difference, Δ T, corresponding to Tdelay(icT) is icCurrent delay time difference, T, corresponding to TsIs the switching period, V, of the three-phase variable frequency motordcIs a DC bus voltage vdCompensating the voltage for the ideal dead zone, vAN_compCompensating voltage for corrected a-phase dead zone, vBN_compCompensating voltage for corrected b-phase dead zone, vCN_compThe voltage is compensated for the corrected c-phase dead zone.
According to the scheme, the current value and the current temperature value of the motor are obtained, the corresponding current delay time difference is determined according to the current value and the current temperature value, the ideal dead zone compensation voltage is corrected according to the current delay time difference, the delay time difference is not taken as a fixed value, the ideal dead zone compensation voltage is corrected according to the switch delay time difference determined by the current value and the current temperature value, the output voltage is closer to a theoretical value, and the motor control precision is improved.
Based on the hardware structure, the embodiment of the dead zone compensation method of the motor driver is provided.
Referring to fig. 2, fig. 2 is a flowchart illustrating a dead-time compensation method of a motor driver according to a first embodiment of the present invention.
In a first embodiment, the dead zone compensation method of the motor driver includes the steps of:
s10: acquiring a current value and a current temperature value of the motor;
it should be noted that the current value is a current value flowing through a switching tube on a bridge arm of the motor frequency converter at the current moment, and the current temperature value is a temperature value of the switching tube on the bridge arm of the motor frequency converter at the current moment.
It will be appreciated that the present current value may be obtained in a number of ways, for example: the current value may be obtained by using a current sensor, or may be obtained by using a current detection chip, which is not limited in this embodiment.
Likewise, the current temperature value may be obtained in various ways, such as: the current value may be obtained by using a temperature sensor, or the current temperature value may be obtained by using an infrared thermometer, which is not limited in this embodiment.
S20: determining a corresponding current delay time difference according to the current value and the current temperature value;
in a specific implementation, since the delay time difference changes with changes in current and temperature, the corresponding current delay time difference may be determined according to the current value and the current temperature value.
In order to determine the current delay time difference, multiple test tests may be performed to obtain a mapping curve set, where the mapping curve set includes mapping curves at different temperature values, and the mapping curve is a curve reflecting a corresponding relationship between the delay time difference and a current value, and therefore, in this embodiment, in step S20, the corresponding current delay time difference may be determined by using the mapping curve set according to the current value and the current temperature value.
It should be noted that the delay time difference is a difference between the turn-off delay time and the turn-on delay time, and the calculation formula may adopt Δ tdelay=tturn_off_delay-tturn_on_delayWherein, Δ tdelayFor a delay time difference, tturn_off_delayFor turn-off delay time, tturn_on_delayThe delay time is turned on.
S30: and correcting the ideal dead zone compensation voltage according to the current delay time difference.
It should be noted that the ideal dead-zone compensation voltage is a voltage compensated by adopting an ideal dead-zone time in the prior art, but because the nonlinear factor of the switching device is not considered, the dead-zone compensation is not accurate, and the control accuracy of the motor is affected.
In the embodiment, the current value and the current temperature value of the motor are obtained, the corresponding current delay time difference is determined according to the current value and the current temperature value, the ideal dead zone compensation voltage is corrected according to the current delay time difference, the delay time difference is not taken as a fixed value, but the ideal dead zone compensation voltage is corrected according to the switch delay time difference determined by the current value and the current temperature value, so that the output voltage is closer to the theoretical value, and the control precision of the motor is improved.
Further, as shown in fig. 3, a second embodiment of the dead zone compensation method of the motor driver of the present invention is proposed based on the first embodiment.
In this embodiment, step S20 specifically includes:
s20': and searching a linear area of each mapping curve in the mapping curve set, and determining the corresponding current delay time difference by using the linear area according to the current value and the current temperature value.
It can be understood that, because each mapping curve in the mapping curve set may have a non-linear region with a fast change range, if the non-linear region is used to determine the current delay time difference, the accuracy of the obtained current delay time difference cannot be guaranteed, and therefore, in this embodiment, the corresponding current delay time difference is determined by using the linear region according to the current value and the current temperature value, so that the accuracy of obtaining the current delay time difference is improved.
It should be noted that, because the linear region usually has a slow variation range, the slope of the tangent line thereof is usually small, and in order to facilitate finding the linear region of each mapping curve in the mapping curve set, in this embodiment, the slope of the tangent line at each point on each mapping curve in the mapping curve set may be respectively obtained, and the linear region of each mapping curve is determined according to the slope of the tangent line.
In order to realize fast search of the linear region, in this embodiment, the mapping curve in the mapping curve set may be traversed, and a point where a slope of a tangent in the traversed current mapping curve is equal to a preset slope is taken as a dividing point; dividing the current mapping curve according to the dividing points to obtain at least two dividing areas; and judging whether each partition area has a point with a tangent slope larger than a preset slope, and taking the partition area without the point with the tangent slope larger than the preset slope as a linear area of the current mapping curve.
Further, as shown in fig. 4, a third embodiment of the dead zone compensation method of the motor driver of the present invention is proposed based on the second embodiment.
In this embodiment, step S20' specifically includes:
s20': and searching a linear area of each mapping curve in the mapping curve set, selecting two mapping curves from the mapping curve set, respectively selecting two reference points from the linear areas of the selected mapping curves, acquiring a reference current value, a reference temperature value and a reference delay time difference of each reference point, and determining the current delay time difference according to the current value, the current temperature value, the reference current value of each reference point, the reference temperature value and the reference delay time difference.
Of course, in a specific implementation, the current delay time difference corresponding to the current value and the current temperature value may be directly searched in the linear region, but the efficiency problem of obtaining the current delay time difference is considered, in this embodiment, two mapping curves may be selected from the set of mapping curves, two reference points are respectively selected from the linear region of the selected mapping curve, and the current delay time difference is determined according to the current value, the current temperature value, the reference current value of each reference point, the reference temperature value, and the reference delay time difference.
Referring to fig. 5, the delay time difference can be calculated according to the experimental test result, and the rule of the delay time difference along with the change of the current and the temperature is shown as a solid line in fig. 5 according to the calculation result, wherein the abscissa in the figure is the current value and the ordinate is the delay time difference.
The block portion in fig. 5 is the linear region of the mapping curve, and accordingly, in this embodiment, the current delay time difference may be determined according to the current value, the current temperature value, the reference current value of each reference point, the reference temperature value, and the reference delay time difference by the following formula,
wherein, t1(T)=t(i1,T2)-k1(T-T2)2,t2(T)=t(i2,T2)-k2(T-T2)2,k1=-[t(i1,T1)-t(i1,T2)]/(T1-T2)2,k2=-[t(i2,T1)-t(i2,T2)]/(T1-T2)2I is the current value, T is the current temperature value, Δ Tdelay(i, T) is the current delay time difference, T (i)1,T1) Is a reference current value i1Reference temperature value T1Corresponding reference delay time difference, t (i)1,T2) Is a reference current value i1Reference temperature value T2Corresponding reference delay time difference, t (i)2,T1) Is a reference current value i2Reference temperature value T1Corresponding reference delay time difference, t (i)2,T2) Is a reference current value i2Reference temperature value T2Corresponding reference delay time difference.
It should be noted that the dotted line in fig. 5 is a delay time difference obtained by respectively calculating each current value and each temperature value in the block according to the above formula, and it can be understood that the current value and the current temperature value need to be in the linear region to accurately calculate the current delay time difference by using the above formula, and if the current value and the current temperature value are not in the linear region, the current delay time difference needs to be determined by using other methods, for example: the determination is performed by directly performing corresponding lookup from the mapping curve, and other manners may also be adopted, which is not limited in this embodiment.
It can be understood that the motor may be a two-phase inverter motor, a three-phase inverter motor, or a four-phase inverter motor, and the motor is taken as a three-phase inverter motor in this embodiment, but the scope of the invention is not limited.
In this embodiment, since the motor is a three-phase inverter motor, and each phase of the inverter of the three-phase inverter motor has a bridge arm, and each bridge arm has an upper switching tube and a lower switching tube, respectively, the bridge arms on each phase have a current value and a current temperature value (the current temperature values are usually the same because the areas of the bridge arms on each phase are relatively close), and the current values of each phase are independent from each other and do not interfere with each other, so that the current value of each phase can calculate the corresponding current delay time difference according to the current value and the current temperature value of each phase by using the above formula, and thus, the ideal dead zone compensation voltage can be corrected according to the current delay time difference by using the following formula,
wherein, iais the current value of the a phase, ibCurrent value of b phase, icIs the current value of the c phase, T is the current temperature value, Δ Tdelay(iaT) is iaCurrent delay time difference, Δ T, corresponding to Tdelay(ibT) is ibCurrent delay time difference, Δ T, corresponding to Tdelay(icT) is icCurrent delay time difference, T, corresponding to TsIs the switching period, V, of the three-phase variable frequency motordcIs a DC bus voltage vdCompensating the voltage for the ideal dead zone, vAN_compCompensating voltage for corrected a-phase dead zone, vBN_compCompensating voltage for corrected b-phase dead zone, vCN_compThe voltage is compensated for the corrected c-phase dead zone.
In addition, Δ v is defined asAN_delay(ia,T)、ΔvBN_delay(ibT) and Δ vCN_delay(icThe above formula for T) can be based on a switching cycleAnd converting the delay time error into a component voltage error according to the principle that the volt-second products in the period are equal.
In this embodiment, the ideal dead-zone compensation voltage is corrected by the above formula, so that the control accuracy under the working conditions of high temperature, high input voltage, low frequency and low speed is improved, and in this embodiment, the corrected a-phase dead-zone compensation voltage may refer to fig. 6.
Furthermore, an embodiment of the present invention further provides a computer-readable storage medium, where a dead-time compensation program is stored on the computer-readable storage medium, and when executed by a processor, the dead-time compensation program implements the following operations:
acquiring a current value and a current temperature value of the motor;
determining a corresponding current delay time difference according to the current value and the current temperature value;
and correcting the ideal dead zone compensation voltage according to the current delay time difference.
Further, the dead zone compensation program when executed by the processor further performs the following operations:
and determining the corresponding current delay time difference by adopting a mapping curve set according to the current value and the current temperature value, wherein the mapping curve set comprises mapping curves at different temperature values, and the mapping curve is a curve reflecting the corresponding relation between the delay time difference and the current value.
Further, the dead zone compensation program when executed by the processor further performs the following operations:
and searching a linear area of each mapping curve in the mapping curve set, and determining the corresponding current delay time difference by using the linear area according to the current value and the current temperature value.
Further, the dead zone compensation program when executed by the processor further performs the following operations:
selecting two mapping curves from the mapping curve set, respectively selecting two reference points from a linear area of the selected mapping curve, obtaining a reference current value, a reference temperature value and a reference delay time difference of each reference point, and determining the current delay time difference according to the current value, the current temperature value, the reference current value, the reference temperature value and the reference delay time difference of each reference point.
Further, the dead zone compensation program when executed by the processor further performs the following operations:
determining the current delay time difference according to the current value, the current temperature value, the reference current value of each reference point, the reference temperature value and the reference delay time difference through the following formula,
wherein, t1(T)=t(i1,T2)-k1(T-T2)2,t2(T)=t(i2,T2)-k2(T-T2)2,k1=-[t(i1,T1)-t(i1,T2)]/(T1-T2)2,k2=-[t(i2,T1)-t(i2,T2)]/(T1-T2)2I is the current value, T is the current temperature value, Δ Tdelay(i, T) is the current delay time difference, T (i)1,T1) Is a reference current value i1Reference temperature value T1Corresponding reference delay time difference, t (i)1,T2) Is a reference current value i1Reference temperature value T2Corresponding reference delay time difference, t (i)2,T1) Is a reference current value i2Reference temperature value T1Corresponding reference delay time difference, t (i)2,T2) Is a reference current value i2Reference temperature value T2Corresponding reference delay time difference.
Further, the dead zone compensation program when executed by the processor further performs the following operations:
and respectively obtaining the tangent slope of each point on each mapping curve in the mapping curve set, and determining the linear region of each mapping curve according to the tangent slope.
Further, the dead zone compensation program when executed by the processor further performs the following operations:
traversing the mapping curves in the mapping curve set, and taking the points of the traversed current mapping curve where the tangent slope is equal to the preset slope as segmentation points;
dividing the current mapping curve according to the dividing points to obtain at least two dividing areas;
and judging whether each partition area has a point with a tangent slope larger than a preset slope, and taking the partition area without the point with the tangent slope larger than the preset slope as a linear area of the current mapping curve.
Further, the motor is a three-phase variable frequency motor, and the dead zone compensation program when executed by the processor further implements the following operations:
correcting the ideal dead zone compensation voltage according to the current delay time difference through the following formula,
wherein, iais the current value of the a phase, ibCurrent value of b phase, icIs the current value of the c phase, T is the current temperature value, Δ Tdelay(iaT) is iaCurrent delay time difference, Δ T, corresponding to Tdelay(ibT) is ibCurrent delay time difference, Δ T, corresponding to Tdelay(icT) is icCurrent delay time difference, T, corresponding to TsIs the switching period, V, of the three-phase variable frequency motordcIs a DC bus voltage vdCompensating the voltage for the ideal dead zone, vAN_compCompensating voltage for corrected a-phase dead zone, vBN_compCompensating voltage for corrected b-phase dead zone, vCN_compThe voltage is compensated for the corrected c-phase dead zone.
According to the scheme, the current value and the current temperature value of the motor are obtained, the corresponding current delay time difference is determined according to the current value and the current temperature value, the ideal dead zone compensation voltage is corrected according to the current delay time difference, the delay time difference is not taken as a fixed value, the ideal dead zone compensation voltage is corrected according to the switch delay time difference determined by the current value and the current temperature value, the output voltage is closer to a theoretical value, and the motor control precision is improved.
It should be noted that, in this document, the terms "comprises," "comprising," or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or system that comprises a list of elements does not include only those elements but may include other elements not expressly listed or inherent to such process, method, article, or system. Without further limitation, an element defined by the phrase "comprising an … …" does not exclude the presence of other like elements in a process, method, article, or system that comprises the element.
The above-mentioned serial numbers of the embodiments of the present invention are merely for description and do not represent the merits of the embodiments.
Through the above description of the embodiments, those skilled in the art will clearly understand that the method of the above embodiments can be implemented by software plus a necessary general hardware platform, and certainly can also be implemented by hardware, but in many cases, the former is a better implementation manner. Based on such understanding, the technical solution of the present invention may be embodied in the form of a software product, which is stored in a storage medium (e.g., ROM/RAM, magnetic disk, optical disk) as described above and includes instructions for enabling a terminal device (e.g., a mobile phone, a computer, a server, an air conditioner, or a network device) to execute the method according to the embodiments of the present invention.
The above description is only a preferred embodiment of the present invention, and not intended to limit the scope of the present invention, and all modifications of equivalent structures and equivalent processes, which are made by using the contents of the present specification and the accompanying drawings, or directly or indirectly applied to other related technical fields, are included in the scope of the present invention.
Claims (9)
1. A dead-time compensation method of a motor driver, the method comprising the steps of:
acquiring a current value and a current temperature value of the motor;
determining a corresponding current delay time difference according to the current value and the current temperature value;
correcting the ideal dead zone compensation voltage according to the current delay time difference;
the delay time difference is the difference value between the turn-off delay time and the turn-on delay time of a switch device on a frequency converter bridge arm of the motor;
wherein, the determining the corresponding current delay time difference according to the current value and the current temperature value specifically includes:
and searching a linear area of each mapping curve in the mapping curve set, and determining a corresponding current delay time difference by using the linear area according to the current value and the current temperature value, wherein the mapping curve is a curve reflecting the corresponding relation between the delay time difference and the current value.
2. The method of claim 1, wherein the determining a corresponding current delay time difference according to the current value and the current temperature value specifically comprises:
and determining the corresponding current delay time difference by adopting a mapping curve set according to the current value and the current temperature value, wherein the mapping curve set comprises mapping curves at different temperature values, and the mapping curve is a curve reflecting the corresponding relation between the delay time difference and the current value.
3. The method of claim 1, wherein the determining the corresponding current delay time difference using the linear region according to the current value and the current temperature value specifically comprises:
selecting two mapping curves from the mapping curve set, respectively selecting two reference points from a linear area of the selected mapping curve, obtaining a reference current value, a reference temperature value and a reference delay time difference of each reference point, and determining the current delay time difference according to the current value, the current temperature value, the reference current value, the reference temperature value and the reference delay time difference of each reference point.
4. The method of claim 3, wherein the current delay time difference is determined according to the current value, the current temperature value, the reference current value for each reference point, the reference temperature value, and the reference delay time difference by the following equation,
wherein, t1(T)=t(i1,T2)-k1(T-T2)2,t2(T)=t(i2,T2)-k2(T-T2)2,k1=-[t(i1,T1)-t(i1,T2)]/(T1-T2)2,k2=-[t(i2,T1)-t(i2,T2)]/(T1-T2)2I is the current value, T is the current temperature value, Δ Tdelay(i, T) is the current delay time difference, T (i)1,T1) Is a reference current value i1Reference temperature value T1Corresponding reference delay time difference, t (i)1,T2) Is a reference current value i1Reference temperature value T2Corresponding reference delay time difference, t (i)2,T1) Is a reference current value i2Reference temperature value T1Corresponding reference delay time difference, t (i)2,T2) Is a reference current value i2Reference temperature value T2Corresponding reference delay time difference.
5. The method of claim 1, wherein the finding a linear region for each mapping curve in the set of mapping curves specifically comprises:
and respectively obtaining the tangent slope of each point on each mapping curve in the mapping curve set, and determining the linear region of each mapping curve according to the tangent slope.
6. The method according to claim 5, wherein determining the linear region of each mapping curve according to the slope of the tangent line comprises:
traversing the mapping curves in the mapping curve set, and taking the points of the traversed current mapping curve where the tangent slope is equal to the preset slope as segmentation points;
dividing the current mapping curve according to the dividing points to obtain at least two dividing areas;
and judging whether each partition area has a point with a tangent slope larger than a preset slope, and taking the partition area without the point with the tangent slope larger than the preset slope as a linear area of the current mapping curve.
7. The method according to any one of claims 1 to 6, wherein the motor is a three-phase variable frequency motor;
accordingly, the ideal dead zone compensation voltage is corrected according to the current delay time difference through the following formula,
wherein, iais the current value of the a phase, ibCurrent value of b phase, icIs the current value of the c phase, T is whenFront temperature value, Δ tdelay(iaT) is iaCurrent delay time difference, Δ T, corresponding to Tdelay(ibT) is ibCurrent delay time difference, Δ T, corresponding to Tdelay(icT) is icCurrent delay time difference, T, corresponding to TsIs the switching period, V, of the three-phase variable frequency motordcIs a DC bus voltage vdCompensating the voltage for the ideal dead zone, vAN_compCompensating voltage for corrected a-phase dead zone, vBN_compCompensating voltage for corrected b-phase dead zone, vCN_compThe voltage is compensated for the corrected c-phase dead zone.
8. A motor driver, characterized in that the motor driver comprises: a memory, a processor, and a dead-time compensation program stored on the memory and executable on the processor, the dead-time compensation program configured to implement the steps of the dead-time compensation method of any one of claims 1 to 7.
9. A computer-readable storage medium, having a dead-zone compensation program stored thereon, which when executed by a processor implements the steps of the dead-zone compensation method of any one of claims 1 to 7.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710646205.0A CN107241041B (en) | 2017-07-31 | 2017-07-31 | Dead zone compensation method of motor driver, motor driver and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710646205.0A CN107241041B (en) | 2017-07-31 | 2017-07-31 | Dead zone compensation method of motor driver, motor driver and storage medium |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107241041A CN107241041A (en) | 2017-10-10 |
CN107241041B true CN107241041B (en) | 2020-06-05 |
Family
ID=59989210
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710646205.0A Active CN107241041B (en) | 2017-07-31 | 2017-07-31 | Dead zone compensation method of motor driver, motor driver and storage medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107241041B (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110247598B (en) * | 2018-03-09 | 2021-05-14 | 宝沃汽车(中国)有限公司 | Compensation method and compensation system of alternating current motor, motor controller and electric automobile |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH099645A (en) * | 1995-06-14 | 1997-01-10 | Toshiba Corp | Inverter apparatus |
CN101304172A (en) * | 2008-03-26 | 2008-11-12 | 湖南大学 | A real-time precompensation method for dead zone in harmonic domain |
CN101409507A (en) * | 2008-08-05 | 2009-04-15 | 中南大学 | Method and apparatus for compensating dead zone of two-stage matrix converter based on carrier modulation |
-
2017
- 2017-07-31 CN CN201710646205.0A patent/CN107241041B/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH099645A (en) * | 1995-06-14 | 1997-01-10 | Toshiba Corp | Inverter apparatus |
CN101304172A (en) * | 2008-03-26 | 2008-11-12 | 湖南大学 | A real-time precompensation method for dead zone in harmonic domain |
CN101409507A (en) * | 2008-08-05 | 2009-04-15 | 中南大学 | Method and apparatus for compensating dead zone of two-stage matrix converter based on carrier modulation |
Non-Patent Citations (2)
Title |
---|
IGBT开关机理对逆变器死区时间的影响;罗毅飞 等;《电机与控制学报》;20140531;第18卷(第5期);第62-68、75页 * |
一种低成本逆变器死区时间补偿方法;杜春洋 等;《电力电子技术》;20090228;第43卷(第2期);第44-45、78页 * |
Also Published As
Publication number | Publication date |
---|---|
CN107241041A (en) | 2017-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5177195B2 (en) | Rotating machine control device | |
CN108092532B (en) | Inverter dead zone compensation method based on PWM trigger terminal voltage sampling | |
CN109347387B (en) | Motor control method and control device based on model prediction | |
CN104579082B (en) | Single-resistor sampling time compensation method and system | |
CN109391199B (en) | Dead zone compensation method, motor driver and computer readable storage medium | |
CN107257221B (en) | Dead zone compensation method of motor driver, motor driver and storage medium | |
JP2000354380A (en) | Motor controller | |
US20180034449A1 (en) | Signal generating circuit, voltage conversion device, and signal generating method | |
US11742784B2 (en) | Method for determining the error voltage of a current converter and three-phase machine having error voltage compensation | |
CN107241041B (en) | Dead zone compensation method of motor driver, motor driver and storage medium | |
CN107453666B (en) | Dead zone compensation method of motor driver, motor driver and storage medium | |
CN108895632B (en) | Switching method of PFC circuit, air conditioner and computer readable storage medium | |
CN107994827B (en) | Synchronous calculation method and device for phase current and phase voltage of motor driving system and sampling phase | |
CN112782633A (en) | Inductive current sampling calibration method, system and computer readable storage medium | |
CN106452252B (en) | Motor d axle inductance high-precision offline identification method | |
CN107248831A (en) | Permanent-magnetic synchronous motor stator Flux Observation Method, flux observer and storage medium | |
CN107534397A (en) | A kind of IGBT parameter identification methods, dead-zone compensation method and inverter | |
CN107241045B (en) | Permanent-magnetic synchronous motor stator Flux Observation Method, flux observer and storage medium | |
CN107294456B (en) | Permanent magnet synchronous motor stator flux linkage observation method, flux linkage observer and storage medium | |
CN107404269B (en) | Permanent magnet synchronous motor stator flux linkage observation method, flux linkage observer and storage medium | |
CN107294454B (en) | Permanent magnet synchronous motor stator flux linkage observation method, flux linkage observer and storage medium | |
Biason et al. | Advances on analysis, modeling and accurate self-commissioning compensation of inverter dead-time distortion based on a physical model | |
CN107294458B (en) | Permanent magnet synchronous motor stator flux linkage observation method, flux linkage observer and storage medium | |
CN108023529B (en) | Alternating current motor control method for improving torque loading precision | |
CN107404268B (en) | Permanent magnet synchronous motor stator resistance identification method, motor driver and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |