Method for calibrating an ABG filter for improving a position signal of an electric motor
The ABG filter method corrects and optimizes position signals in electric motors by iteratively adjusting factors alpha, beta, and gamma, addressing sensor inaccuracies and environmental noise, enhancing accuracy and reliability.
Patent Information
- Application Number
- DE102024201055
- Authority / Receiving Office
- DE · DE
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2024-02-06
- Publication Date
- 2025-08-07
- Estimated Expiration
- 2044-02-06
AI Technical Summary
Existing methods for determining rotor position in electric motors suffer from inaccuracies due to sensor faults, wear, temperature sensitivity, and external noise, leading to unreliable position signals.
A method using an alpha beta gamma (ABG) filter for post-processing position signals, involving a digital model to correct position, speed, and acceleration values, and iteratively adjusting factors alpha, beta, and gamma to minimize a loss function, optimizing the filter's performance.
Enhances the accuracy and robustness of position, speed, and acceleration estimates by adapting the ABG filter to the actual motor behavior, improving sensor reliability under harsh conditions.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
[0001] The invention relates to the optimization of position signals from an electric motor, in particular the position signals of a resolver in an electric motor. State of the art
[0002] The rotor position of an electric motor can be determined in several ways, depending on the type of motor and the requirements of the application.
[0003] Resolvers are sensors that can detect the rotor position in electrical machines, including electric motors. Resolvers are particularly robust and are used in applications exposed to harsh environments, such as aerospace.
[0004] An encoder is a sensor that can directly measure the rotational position of a motor. Incremental encoders provide pulses proportional to the motor's rotational movement. Absolute encoders provide information about the motor's absolute position within a range of revolutions. Encoder systems are commonly used in servo motors and other applications requiring precise position control.
[0005] Hall-effect sensors can be used to determine the rotor position in brushless DC (BLDC) motors. These sensors detect changes in the motor's magnetic field to determine the position.
[0006] Most BLDC motors use three Hall sensors to determine position relative to the electrical phase.
[0007] Inertial sensors such as gyroscopes and accelerometers can be used to indirectly infer the change in motor position. Velocity can be estimated by integrating the acceleration data, and position can be estimated by reintegrating. However, this method can become inaccurate over time and requires normalization procedures.
[0008] Various problems can occur in the rotor position determination of electric motors that interfere with the measured signal and cause noise. This makes the sensor's position reading inaccurate. For example, sensor errors can occur. Sensors can be faulty or wear out over time or due to weather conditions, leading to inaccuracies in the position determination. Furthermore, some sensors can be sensitive to temperature changes, which can also lead to inaccuracies in the position determination.
[0009] In addition, external interference can negatively impact a sensor's signal. For example, underfrequencies due to pulse width modulation, nearby electric fields, or other noise sources can reduce the quality of the position signal.
[0010] The published patent application DE 10 2022 120 560 A1 describes a method for calibrating a torque sensor system for a transmission by acquiring measurement signals, determining the torque using a mathematical model, determining the total shaft rotation and the total load torque, and subsequently calibrating the model based on these data.
[0011] The published patent application US 2004 / 0 111 200 A1 describes a vehicle-based preventive safety system that uses sensors to record the dynamics of vehicles and obstacles in order to predict future positions and to activate safety devices such as airbags or seat belts in the event of an impending collision.
[0012] The further prior art publication CN 1 07 357 758 A describes a method for determining speed based on position data, which uses a polynomial least squares regression model with a storage mechanism for the regression coefficients in order to calculate the speed precisely, even when measurement data are missing or unevenly distributed.
[0013] The invention is therefore based on the object of proposing a method with which a position signal can be optimized by post-processing.
[0014] The problem is solved by the subject matter of the independent claims. Disclosure of the invention
[0015] According to a first aspect of the invention, this object is achieved by a method for calibrating an ABG filter for improving a position signal of an electric motor. The electric motor is a component of a machine that performs a more complex process.
[0016] The machine can be, for example, an excavator, a vehicle, a production facility or something similar.
[0017] The procedure includes the following steps: - Creating a digital model of the electric motor, the machine and / or a part of the machine, where the model outputs a value for the position x, the speed x' and the acceleration x" of the electric motor, the machine and / or the part of the machine, where the value for position x is corrected by an amount determined from a factor alpha and a first correction term, wherein the value for the velocity x' is corrected by an amount determined from a factor beta and a second correction term, wherein the value for the acceleration x" is corrected by an amount determined from a factor gamma and a third correction term; - Setting initial values for the factors alpha, beta and gamma; - Determining a first state of the electric motor, the machine and / or the part of the machine; - activating the electric motor for a defined time t and determining a second state of the electric motor, the machine and / or a part of the machine; - determining a modeled state at time t using the digital model of the electric motor, the machine and / or the part of the machine; - Comparing the second state with the modeled state and determining a loss function, where the loss function is a measure of the quality of the digital model; - Adjusting the factors alpha, beta and gamma according to the result of the comparison of the second state with the modeled state and the loss function; and - Repeat the steps of comparing the second state with the modeled state and adjusting the factors alpha, beta and gamma until the loss function has reached an optimum.
[0018] Algorithms for signal post-processing are well known in communications engineering. The difficulty lies in real-time processing and the inherent complexity of the machines.
[0019] The Alpha-Beta-Gamma (ABG) filter is a filtering technique used to estimate the position, velocity, and acceleration of a moving object. It is often used in navigation systems such as GPS to improve the accuracy of position tracking.
[0020] The ABG filter combines three separate filters—the alpha filter, the beta filter, and the gamma filter—to estimate the object's position, velocity, and acceleration. Each filter plays a specific role in the estimation process.
[0021] The alpha filter is responsible for estimating the object's position based on the available sensor measurements. It takes into account the previous position estimate, the current sensor measurement, and a weighting factor (alpha). The alpha factor determines the influence of the current measurement on the position estimate.
[0022] The beta filter estimates the object's velocity by considering the difference between the current and previous position estimates. It uses a similar weighting factor, beta, to determine the influence of the velocity estimate.
[0023] The gamma filter estimates the object's acceleration by considering the difference between the current and previous velocity estimates. It uses the gamma factor to determine the influence of the acceleration estimate.
[0024] The acceleration target in the ABG filter refers to the desired acceleration of the object. By incorporating the acceleration target into the estimation process, the filter can adapt its estimates to the expected motion of the object. This helps reduce errors and improve the accuracy of position, velocity, and acceleration estimates.
[0025] The correction terms for the ABG filter can take various influences into account. For example, the correction terms can describe disturbing effects or include values for noise. Furthermore, the correction terms for position x, velocity x', and acceleration x" can include different correction terms.
[0026] To calibrate the filter, the machine must be operated at least for testing purposes. This can be done under laboratory conditions or in a field test. Furthermore, the calibration requires a model of the movement of the electric motor, the machine, or a part of the machine that is as accurate as possible. The digital model is used to predict the movement, speed, and acceleration, which are then compared with the actual position.
[0027] The first state of the electric motor, the machine, and / or a part of the machine can, for example, be standstill or a rest position. If a drive component, in particular the monitored electric motor, is then activated, the electric motor, the machine, and / or a part of the machine moves. For example, the electric motor can serve as a drive for a vehicle. The electric motor can also be used, for example, as a drive for an excavator arm, as a drive for a pump in a hydraulic system, or another component of the machine.
[0028] However, since the electric motor is not an isolated component, it is subject to the inertia of the entire musculoskeletal system. If the electric motor sets part of the machine, or even the entire machine, in motion, it will continue to move due to inertia. This, in turn, affects the electric motor, which must be taken into account in the subsequent control system.
[0029] In a second state, the position of the electric motor, machine, and / or machine part is therefore recorded again. Furthermore, the digital model is used to simulate the movement of the electric motor, machine, or machine part. The ABG filter with the factors alpha, beta, and gamma is used in the simulation. The simulation result is then compared with the actually determined state of the electric motor, machine, and / or machine part.
[0030] To quantify the comparison, a loss function is determined. The loss function can be chosen depending on the model.
[0031] The result can always be used to adjust the alpha, beta, and gamma factors. Since a one-time adjustment of the factors does not necessarily result in an optimal adjustment, the adjustment process can be repeated.
[0032] To do this, the electric motor is activated again, causing the machine or a part of it to move. A modeled state is then determined, which is then compared with the new actual state. The new comparison results in a new adjustment for the alpha, beta, and gamma factors.
[0033] The process can be performed, for example, during a machine calibration. While the machine is in operation, the calibration of the ABG filter factors can take place in the background.
[0034] Once the loss function has reached an optimum and the alpha, beta, and gamma factors have been sufficiently well determined, the calibration process can be considered complete. The machine is ready for use, with the sensor signals used to determine the position of the electric motor determined as accurately as possible.
[0035] In one embodiment, the state of the electric motor, the machine and / or a part of the machine is determined using a resolver.
[0036] A resolver is a special type of sensor used to detect the rotor position of a motor. Essentially, a resolver works through the interaction of electromagnetic fields. It consists of a fixed stator and a moving rotor. The stator is connected to an AC power source that generates a rotating magnetic field. The rotor, which is connected to the rotor of the electric motor, is located within this magnetic field. The relative position between the stator's magnetic field and the rotor influences the resolver's output voltage.
[0037] By measuring this output voltage, the precise angular position of the rotor can be determined. Resolvers are often used in applications that require precise position control and corresponding feedback, such as electric motor servo systems, particularly in industrial applications and automation technology. The resolver provides a robust and reliable way to monitor the rotor position in real time, even under demanding environmental conditions.
[0038] In one embodiment, the speed x' is determined as the change over time of the position x of the electric motor determined by the resolver.
[0039] This advantageously exploits the direct physical relationship between the position x and the speed x'.
[0040] In one embodiment, the acceleration x'' is determined as the change in velocity x' over time.
[0041] This advantageously exploits the direct physical relationship between the speed x' or the position x and the acceleration x''.
[0042] In one embodiment, the digital model comprises at least three equations of motion, each equation of motion describing the position x, the velocity x' and the acceleration x''.
[0043] Equations of motion are mathematical equations that are linked by physical relationships. They can be solved analytically, making it particularly easy to create a digital model.
[0044] In one embodiment, the digital model comprises a stochastic algorithm.
[0045] A stochastic algorithm is an algorithm based on stochastic processes or probabilities. Unlike deterministic algorithms, where the output is uniquely determined by the input data, stochastic algorithms take uncertainties or random influences into account. These algorithms are often used in situations where there are uncertainties or unpredictable variables. This can include, for example, externally generated signal noise or environmental disturbances.
[0046] The first step in using a stochastic algorithm is to model the electric motor, machine, and / or part of the machine. Random variables or stochastic processes are used to represent uncertainty or variability. This can include the use of random numbers, probability distributions, or other stochastic concepts.
[0047] Stochastic algorithms make decisions based on probabilities. Instead of providing a definitive answer, they often output probabilities for certain events to occur. This allows for more flexible handling of uncertainties. An example of a tool used in stochastic algorithms is Monte Carlo simulation. This involves taking random samples from a probability distribution to simulate possible scenarios and analyze statistical properties.
[0048] Some stochastic algorithms can use adaptive learning to continuously adapt their models or decisions as new data becomes available. This allows for adaptation to changing conditions or environments.
[0049] Stochastic algorithms offer an effective way to deal with uncertainties in complex systems, but they are more computationally demanding than deterministic algorithms. Their advantage is that they can model systems that are not easily described by equations of motion.
[0050] In one embodiment, the digital model comprises a machine learning algorithm.
[0051] A machine learning algorithm is an algorithm designed to automatically detect patterns and relationships in data and make predictions or decisions. It is created by training on existing data and can then be applied to new, unknown data to generate predictions or classifications.
[0052] A machine learning algorithm can take various forms, such as linear models, decision trees, support vector machines, neural networks, and many others. It is optimized by learning from the training data, identifying patterns and rules to make the best possible predictions or classifications for new data.
[0053] The effectiveness of a machine learning algorithm depends on various factors, including the quality and quantity of training data, the choice of algorithm, the model configuration, and the evaluation of the model using evaluation metrics. The model is continuously improved and optimized to maximize accuracy and performance. The model parameters used for this purpose are primarily the factors alpha, beta, and gamma.
[0054] In one embodiment, the machine learning algorithm comprises a neural network.
[0055] Neural networks refer to models that are particularly flexible and therefore suitable for a wide range of applications. The architecture of a neural network comprises several nodes, neurons, or nodes, arranged in layers.
[0056] A neural network can be used preferentially for a machine whose movement cannot be described sufficiently accurately by a stochastic algorithm, or where a stochastic model produces too large a variance in the results.
[0057] Depending on the structure of the model used—that is, the number of nodes and layers—the computational effort required to run it with a neural network can be relatively complex. Therefore, a fundamental consideration must be given to how much computing power the machine has available and how precisely the movement of the electric motor, the machine, or the part of the machine should be determined.
[0058] In a further aspect, the invention relates to a computer program with program code for carrying out a method as described above when the computer program is executed on a computer.
[0059] In a further aspect, the invention relates to a computer-readable data carrier with program code of a computer program for carrying out a method as described above when the computer program is executed on a computer.
[0060] In a further aspect, the invention relates to a system for controlling an electronic drive, wherein the system is designed to carry out a method as described above.
[0061] In a further aspect, the invention relates to a machine for carrying out an industrial process, the machine comprising a system for carrying out a method as described above.
[0062] An industrial process can be any commercially applicable process that uses at least one machine. Machines can therefore perform all kinds of industrial processes. Industrial processes can include, but are not limited to: conveying, cutting, drilling, milling, grinding, punching, casting and injection molding, assembly, welding, painting, packaging, positioning, etc.
[0063] In a further aspect, the invention relates to the use of an ABG filter for optimizing a resolver signal for controlling an electric motor, a machine or a part of a machine, wherein the ABG filter has been calibrated according to a method as described above.
[0064] In summary, the present invention provides a method for calibrating an ABG filter for improving a position signal of an electric motor, a computer program with program code, a computer-readable data carrier with program code, a system for controlling an electronic drive, a machine with a corresponding system, and the use of an ABG filter for optimizing a resolver signal for controlling an electric motor.
[0065] The described designs and further training courses can be combined as desired.
[0066] Further possible embodiments, developments and implementations of the invention also include combinations of features of the invention described previously or below with regard to the embodiments that are not explicitly mentioned. Short description of the drawings
[0067] The accompanying drawings are intended to provide a further understanding of embodiments of the invention. They illustrate embodiments and, in conjunction with the description, serve to explain principles and concepts of the invention.
[0068] Other embodiments and many of the aforementioned advantages will become apparent upon review of the drawings. The elements illustrated in the drawings are not necessarily drawn to scale.
[0069] They show: Fig. 1 schematically shows the sequence of the method according to an embodiment; and Fig. 2 schematically shows the step of comparing the modeled state and the measured state.
[0070] In the figures of the drawings, the same reference symbols designate the same or functionally equivalent elements, parts or components, unless otherwise stated.
[0071] Fig. 1 shows schematically the process flow for calibrating an ABG filter for improving a position signal of an electric motor.
[0072] In a first step S10, the electric motor, the machine that uses the electric motor, or a part of this machine is represented by a digital model. The digital model can, for example, consist of equations of motion, be a stochastic model, or be a machine learning model.
[0073] In each case, the position x, the speed x' and the acceleration x'' of the electric motor are modeled with the digital model. To determine the position x, a measured value is used as an input variable, which is modified with a first correction term. The first correction term for the position x includes the factor alpha. To determine the speed x'', a measured value or the change in position x over time is used, which is modified with a second correction term. The second correction term for the speed x' includes the factor beta. To determine the acceleration x'', a measured value or the change in speed x'' over time is used, which is modified with a third correction term. The third correction term for the acceleration x'' includes the factor gamma.
[0074] Initial values for alpha, beta, and gamma must first be set in step S12. These initial values will be adjusted during the calibration process.
[0075] In step S14, a first state of the electric motor, the machine, or the part of the machine is determined. The first state can be determined via a sensor, in particular a resolver of the electric motor. More complex machines can have multiple electric motors, each of which can be configured with its own ABG filter. Calibration of multiple ABG filters can, in particular, be performed sequentially.
[0076] The first state serves as the starting point for calibration. Changes are determined from it. Within the context of the present invention, a state refers in particular to a specific position of the machine, part of the machine, or a position of the electric motor.
[0077] Furthermore, the position x can also be interpreted as representing an angle phi of the electric motor, the speed x' as angular velocity phi', and the acceleration x'' as angular acceleration phi''. This is particularly useful when the determined state concerns a rotational movement rather than a linear one.
[0078] Once the state has been determined, the electric motor is activated for a fixed time t in the next step S16. Activation puts the electric motor, the machine, and / or the part of the machine into a different state. This state is also determined.
[0079] In step S18, a modeled state is determined. Using the digital model of the electric motor and the first state, the state the electric motor, the machine, and / or the part of the machine should be in according to the model is determined. The ABG filter is used for this purpose.
[0080] In step S20, the modeled state is compared with the second state. This compares the model and the measurement. The difference allows us to determine how accurately the simulation, including the ABG filter correction, matches the model.
[0081] From the difference, a loss function is determined that reflects the quality of the ABG filter. In step S22, the factors alpha, beta, and gamma are adjusted to the comparison result and the loss function.
[0082] Finally, steps S16 to S22 are repeated until, in step S20, the loss function has reached an optimum or at least a defined threshold. Optionally, step S16 can also be repeated to induce another state of the electric motor, machine, or machine part. In this case, a new modeled state must also be determined with which the new state can be compared. The advantage of this implementation is that the selection of the factors alpha, beta, and gamma becomes more resilient to different states.
[0083] Fig. 2 outlines the interaction between the modeled prediction of a state and the measurement.
[0084] An ABG filter is a recursive Bayesian filter used to obtain estimated values from uncertain or noisy measurements.
[0085] The digital model created for the electric motor, machine, and / or machine part contains state variables, input variables, process noise, and possibly measurement noise. Depending on its complexity, the model is often represented by equations that describe the system state over time.
[0086] The ABG filter is used to determine a prediction 10 of the current state of the system based on the previously estimated state 12 and the known input variables. This step involves applying the system model to calculate the expected state and the uncertainty in this prediction step.
[0087] The prediction is then compared with real measurements of position x, velocity x', and acceleration x''. The ABG filter can consider both the prediction of the state and the uncertainty of the measurement to calculate an optimal estimate of the current state.
[0088] The final step of the ABG filter is to update the state based on the measured information and the estimated state. This step improves the state estimate by incorporating the uncertainty from the measurement. The cycle of prediction and measurement update continues as long as new measurements are available. The ABG filter thus continuously optimizes the state estimate.
Claims
[1] Method for calibrating an ABG filter for improving a position signal of an electric motor, where the electric motor is a component of a machine, the method comprising the steps of: - Creating a digital model (S10) of the electric motor, the machine and / or a part of the machine, where the model outputs a value for the position x, the speed x' and the acceleration x'' of the electric motor, the machine and / or a part of the machine, where the value for the position x is corrected by an amount determined from a factor alpha and a first correction term, where the value for the speed x' is corrected by an amount determined from a factor beta and a second correction term, where the value for the acceleration x'' is corrected by an amount determined from a factor gamma and a third correction term; - Setting initial values (S12) for the factors alpha, beta and gamma; - determining a first state (S14) of the electric motor, the machine and / or a part of the machine; - activating the electric motor (S16) for a defined time t and determining a second state of the electric motor, the machine and / or a part of the machine; - determining a modeled state (S18) at time t using the digital model of the electric motor, the machine and / or the part of the machine; - comparing the second state with the modeled state (S20) and determining a loss function, wherein the loss function is a measure of the quality of the digital model; - Adjusting the factors alpha, beta and gamma (S22) according to the result of the comparison of the second state with the modeled state and the loss function; and - Repeat the steps of comparing the second state with the modeled state and adjusting the factors alpha, beta and gamma until the loss function has reached an optimum. [2] The computer-implemented method of claim 1, wherein the state of the electric motor is determined using a resolver. [3] Computer-implemented method according to claim 2, wherein the speed x' is determined as the change over time of the position x of the electric motor determined by the resolver. [4] A computer-implemented method according to claim 3, wherein the acceleration x'' is determined as the change in velocity x' over time. [5] Computer-implemented method according to one of the preceding claims, wherein the digital model comprises at least three equations of motion, wherein each equation of motion describes the position x, the velocity x' and the acceleration x''. [6] A computer-implemented method according to any one of the preceding claims, wherein the digital model comprises a stochastic algorithm. [7] A computer-implemented method according to any one of the preceding claims, wherein the digital model comprises a machine learning algorithm. [8] The computer-implemented method of claim 7, wherein the machine learning algorithm comprises a neural network. [9] A computer program comprising program code for carrying out a method according to any one of the preceding claims when the computer program is executed on a computer. [10] A computer-readable data carrier comprising program code of a computer program for carrying out a method according to any one of claims 1 to 8 when the computer program is executed on a computer. [11] System for controlling an electronic drive, wherein the system is designed to carry out a method according to one of claims 1 to 8. [12] A machine for carrying out an industrial process, the machine comprising a system according to claim 11. [13] Using an ABG filter to optimize a resolver signal for controlling an electric motor, a machine or a part of a machine, wherein the ABG filter has been calibrated according to a method of claims 1 to 8.
Citation Information
Patent Citations
CN000107357758A
METHOD FOR CALIBRINGING A TORQUE SENSOR SYSTEM FOR A GEARBOX
DE102022120560A1
Vehicle sensing based pre-crash threat assessment system
US20040111200A1