CN111416564A - Data processing device and method for magnetic encoder - Google Patents

Data processing device and method for magnetic encoder Download PDF

Info

Publication number
CN111416564A
CN111416564A CN202010197029.9A CN202010197029A CN111416564A CN 111416564 A CN111416564 A CN 111416564A CN 202010197029 A CN202010197029 A CN 202010197029A CN 111416564 A CN111416564 A CN 111416564A
Authority
CN
China
Prior art keywords
encoder
load
magnetic encoder
data
servo motor
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.)
Pending
Application number
CN202010197029.9A
Other languages
Chinese (zh)
Inventor
陈阳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Vmmore Control Technology Co ltd
Original Assignee
Shenzhen Vmmore Control Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Vmmore Control Technology Co ltd filed Critical Shenzhen Vmmore Control Technology Co ltd
Priority to CN202010197029.9A priority Critical patent/CN111416564A/en
Publication of CN111416564A publication Critical patent/CN111416564A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P23/00Arrangements or methods for the control of AC motors characterised by a control method other than vector control
    • H02P23/14Estimation or adaptation of motor parameters, e.g. rotor time constant, flux, speed, current or voltage
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P23/00Arrangements or methods for the control of AC motors characterised by a control method other than vector control
    • H02P23/12Observer control, e.g. using Luenberger observers or Kalman filters
    • HELECTRICITY
    • H02GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
    • H02PCONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
    • H02P23/00Arrangements or methods for the control of AC motors characterised by a control method other than vector control
    • H02P23/16Controlling the angular speed of one shaft

Landscapes

  • Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Control Of Electric Motors In General (AREA)

Abstract

The invention discloses a data processing device and a data processing method for a magnetic encoder, wherein the data processing device comprises the following steps: an encoder communication interface that establishes communication with the magnetic encoder; the load observer is used for identifying and periodically updating the load of the servo system in the running process of the servo motor; the system inertia identification module is used for outputting a load inertia value of the servo system; the control vector calculation module is used for calculating to obtain the predicted angular acceleration of the servo motor in the period by combining a motor motion equation; the prediction updating calculation module is used for predicting the running state of the servo motor in the period by using a Kalman filter and updating a covariance matrix of the running state; and the measurement updating calculation module is used for calculating the Kalman gain of the period, measuring and updating the position data and the rotating speed data of the encoder by using a Kalman filter and updating the covariance matrix of the running state. The invention can reduce the jitter of the position data and the rotating speed data, has smaller data delay and can improve the overall performance of the servo system.

Description

Data processing device and method for magnetic encoder
Technical Field
The invention relates to an encoder data processing method in a motor driving and motion control system, in particular to a magnetic encoder data processing device and method.
Background
In the prior art, to realize high-performance control of a servo motor, motor encoder data needs to be collected, and the data is processed to obtain the rotating speed information of the motor as the feedback of a control loop. At present, optical encoders, magnetic encoders, rotary transformers and the like are commonly used in servo motors, wherein the magnetic encoders are more and more widely used due to the advantages of low cost, vibration resistance, oil resistance, pollution resistance and the like.
Magnetic encoders are generally made up of two parts. A permanent magnet which is subjected to special magnetizing treatment is arranged on a rotating shaft of the motor and synchronously rotates with a motor rotor; the sensor for sensing the magnetic field and the sensor signal processing and communication circuit form the body of the encoder, the encoder is installed on the end cover of the motor, and the reasonable distance is ensured between the sensor and the permanent magnet through good structural design. The sensor senses the change of the magnetic field of the permanent magnet by utilizing a Hall or magnetic resistance principle, the change is converted into a voltage signal to be output, a signal conditioning circuit and a processor at the later stage subdivide and analyze an original signal to obtain the position information of the permanent magnet, and the position information is sent to the servo driver through a communication circuit.
The servo driver can directly obtain position data from received encoder data, in addition, the servo driver usually adopts a three-loop control structure of a torque loop, a speed loop and a position loop, and also needs to analyze speed information from the position data, and generally adopts a differential mode to calculate the rotating speed, namely, the position data received in the previous period is subtracted from the position data received in the current period, and the time difference is the rotating speed.
The prior art mainly has the following problems in practical application:
first, the magnetic encoder calculates position information by sensing the strength of a magnetic field. The magnetic field is from a permanent magnet, and the magnetizing precision of the permanent magnet is limited; the magnetic field intensity can be influenced by temperature and surrounding electromagnetic environment; in addition, various interferences also exist in the process of signal conditioning and conversion into digital signals in the encoder.
Secondly, in order to improve the output resolution of the encoder, the encoder manufacturer subdivides the signal finally converted from the magnetic field strength as much as possible. The influence of the above factors causes frequent jumps in the last few bits of the output data of the encoder, and even under the condition that the motor rotor is completely static, the lowest two bits of the currently common 14-bit magnetic encoder with single-turn resolution are very unstable. When the rotational speed is calculated by difference using such position data, the fluctuation of the rotational speed is also large. The feedback position and the feedback speed of fluctuation are subjected to closed-loop control by the feedback of the position loop and the speed loop, so that the vibration and the noise of the servo motor are large, the control gain cannot be improved, and the rigidity is poor.
Thirdly, in the process of filtering the feedback data of the encoder, if the traditional methods such as delay filtering, flat-push filtering and the like are adopted, the jitter of the data can be reduced, but great data delay is brought at the same time, and the control bandwidth of the servo motor is reduced.
In addition, the number of pole pairs of the permanent magnet is increased, the precision of the magnetic field of the permanent magnet is optimized, and a signal acquisition and analysis circuit with higher precision and lower noise is adopted, so that the cost of the magnetic encoder is increased, and the problems cannot be completely solved.
Disclosure of Invention
The technical problem to be solved by the present invention is to provide a magnetic encoder data processing apparatus and method that can reduce jitter of position data and rotational speed data, have small data delay, and contribute to setting higher speed and position loop gain for a servo system, thereby improving overall performance of the servo system, in view of the deficiencies of the prior art.
In order to solve the technical problems, the invention adopts the following technical scheme.
The utility model provides a magnetic encoder data processing apparatus, magnetic encoder locates on a servo motor, servo motor locates in a servo, processing apparatus including: the encoder communication interface is communicated with the magnetic encoder and used for acquiring original data output by the magnetic encoder in each fixed communication period, acquiring position data of the magnetic encoder according to the original data and calculating rotating speed data of the encoder; the load observer is used for identifying and periodically updating the load of the servo system in the running process of the servo motor; the system inertia identification module is used for outputting a load inertia value of the servo system; the control vector calculation module is used for acquiring the torque current and the torque coefficient of the servo motor, and calculating to obtain the predicted angular acceleration of the servo motor in the period by combining a motor motion equation according to the load identified by the load observer, the load inertia value output by the system inertia identification module and the torque current and the torque coefficient of the servo motor; the prediction updating calculation module is used for predicting the running state of the servo motor in the period by using a Kalman filter according to the predicted angular acceleration output by the control vector calculation module and updating a covariance matrix of the running state; and the measurement updating calculation module is used for calculating the Kalman gain of the period and measuring the updated encoder position data and rotation speed data by using a Kalman filter according to the magnetic encoder position data and rotation speed data acquired from the encoder communication interface in the period, and updating the covariance matrix of the running state.
Preferably, in each communication cycle, the encoder communication interface performs difference processing on the position data of the magnetic encoder in the current cycle and the position data of the previous cycle to obtain the rotation speed data of the magnetic encoder.
Preferably, the load recognized by the load observer includes a load moment of the servo motor and a friction torque.
Preferably, the system inertia identification module is configured to perform online load inertia identification and offline load inertia identification on the servo system.
A magnetic encoder data processing method is provided, the magnetic encoder is arranged on a servo motor, the servo motor is arranged in a servo system, the processing method is realized based on a processing device, the processing device comprises an encoder communication interface, a load observer, a system inertia identification module, a control vector calculation module, a prediction updating calculation module and a measurement updating calculation module, the encoder communication interface is used for establishing communication with the magnetic encoder and acquiring original data output by the magnetic encoder in each fixed communication period, and the processing method comprises the following steps: step S1, a communication cycle is started; step S2, judging whether the fixed period is reached, if yes, executing step S3, if no, ending the processing; step S3, identifying and periodically updating the load of the servo system in the running process of the servo motor by using the load observer; step S4, outputting a load inertia value of the servo system by using the system inertia identification module; step S5, the control vector calculation module obtains the torque current and the torque coefficient of the servo motor, and calculates the predicted angular acceleration of the servo motor in the period according to the load identified by the load observer, the load inertia value output by the system inertia identification module and the torque current and the torque coefficient of the servo motor by combining a motor motion equation; step S6, the prediction updating calculation module predicts the running state of the servo motor in the period by using a Kalman filter according to the predicted angular acceleration output by the control vector calculation module, and updates the covariance matrix of the running state; step S7, the encoder communication interface acquires the original data output by the magnetic encoder in the period, and acquires the position data of the magnetic encoder and calculates the rotating speed data of the encoder according to the original data; and step S8, the measurement updating calculation module calculates the Kalman gain of the period and the measurement updated encoder position data and rotation speed data by using a Kalman filter according to the magnetic encoder position data and rotation speed data acquired by the encoder communication interface in the period, and updates the covariance matrix of the running state.
Preferably, in step S3, the load identified by the load observer includes a load torque T of the servo motorLAnd friction torque Bω
Preferably, in step S4, the system inertia identification module performs online load inertia identification and offline load inertia identification on the servo system; in step S7, in each communication cycle, the encoder communication interface performs difference processing on the position data of the magnetic encoder in the current cycle and the position data of the previous cycle to obtain the rotational speed data of the magnetic encoder.
In the data processing device of the magnetic encoder disclosed by the invention, the original data of the magnetic encoder is processed, so that the fluctuation of position and rotating speed data is reduced, and meanwhile, smaller delay is brought. Meanwhile, a Kalman filter is designed, observed quantities are feedback positions and rotating speeds of an encoder, control vectors are calculated according to a motor motion equation by using system inertia, motor torque, presumed load torque and friction torque, feedback data of the encoder at multiple rotating speeds are collected, encoder covariance matrixes R at different speed intervals are calculated, and different Rs are selected to participate in calculation according to the current rotating speeds during Kalman filter calculation. Based on the principle, compared with the prior art, the jitter of the position and speed data solved by the magnetic encoder can be reduced, the data delay after filtering is smaller, the servo system has better rigidity, and the servo system can set higher speed and position loop gain in the actual application process, so that better performance is brought.
Drawings
FIG. 1 is a block diagram of the components of a data processing device of a magnetic encoder of the present invention;
FIG. 2 is a flow chart of a data processing method of the magnetic encoder of the present invention.
Detailed Description
The invention is described in more detail below with reference to the figures and examples.
The invention discloses a data processing device of a magnetic encoder, please refer to fig. 1, wherein the magnetic encoder 1 is arranged on a servo motor, the servo motor is arranged in a servo system, and the processing device comprises:
the encoder communication interface 2 is communicated with the magnetic encoder 1 and used for acquiring original data output by the magnetic encoder 1 in each fixed communication period, acquiring position data of the magnetic encoder 1 according to the original data and calculating rotating speed data of the encoder 1;
the load observer 3 is used for identifying and periodically updating the load of the servo system in the running process of the servo motor;
the system inertia identification module 4 is used for outputting a load inertia value of the servo system;
the control vector calculation module 5 is used for acquiring the torque current and the torque coefficient of the servo motor, and calculating the predicted angular acceleration of the servo motor in the period according to the load identified by the load observer 3, the load inertia value output by the system inertia identification module 4 and the torque current and the torque coefficient of the servo motor in combination with a motor motion equation;
the prediction updating calculation module 6 is used for predicting the running state of the servo motor in the period by using a Kalman filter according to the predicted angular acceleration output by the control vector calculation module 5 and updating a covariance matrix of the running state;
and the measurement updating calculation module 7 is used for calculating the Kalman gain of the period and measuring the updated encoder position data and rotation speed data according to the position data and rotation speed data of the magnetic encoder 1 acquired from the encoder communication interface 2 in the period by using a Kalman filter, and updating the covariance matrix of the running state.
In the device, the original data of the magnetic encoder is processed, so that the fluctuation of position and rotating speed data is reduced, and meanwhile, smaller delay is brought. Meanwhile, a Kalman filter is designed, observed quantities are feedback positions and rotating speeds of an encoder, control vectors are calculated according to a motor motion equation by using system inertia, motor torque, presumed load torque and friction torque, feedback data of the encoder at multiple rotating speeds are collected, encoder covariance matrixes R at different speed intervals are calculated, and different Rs are selected to participate in calculation according to the current rotating speeds during Kalman filter calculation. Based on the principle, compared with the prior art, the jitter of the position and speed data solved by the magnetic encoder can be reduced, the data delay after filtering is smaller, the servo system has better rigidity, and the servo system can set higher speed and position loop gain in the actual application process, so that better performance is brought.
In this embodiment, in each communication cycle, the encoder communication interface 2 performs difference processing on the position data of the magnetic encoder 1 in the current cycle and the position data of the previous cycle to obtain the rotational speed data of the magnetic encoder 1.
Preferably, the load observer identifies the load of the system during the operation of the servo motor and updates the load periodically, and specifically, the load identified by the load observer 3 includes the load moment and the friction torque of the servo motor.
Further, the system inertia identification module 4 is configured to perform online load inertia identification and offline load inertia identification on the servo system.
In order to better describe the technical solution of the present invention, the present invention further relates to a magnetic encoder data processing method, as shown in fig. 1 and fig. 2, where the magnetic encoder 1 is disposed on a servo motor, the servo motor is disposed in a servo system, the processing method is implemented based on a processing device, the processing device includes an encoder communication interface 2, a load observer 3, a system inertia identification module 4, a control vector calculation module 5, a prediction update calculation module 6, and a measurement update calculation module 7, the encoder communication interface 2 is configured to establish communication with the magnetic encoder 1 and obtain original data output by the magnetic encoder 1 in each fixed communication period, and the processing method includes the following steps:
step S1, a communication cycle is started;
step S2, judging whether the fixed period is reached, if yes, executing step S3, if no, ending the processing;
step S3, utilizing the load observer 3 to identify and periodically update the load of the servo system in the running process of the servo motor;
step S4, outputting a load inertia value of the servo system by using the system inertia identification module 4;
step S5, the control vector calculation module 5 obtains the torque current and the torque coefficient of the servo motor, and calculates the predicted angular acceleration of the servo motor in the present period according to the load identified by the load observer 3, the load inertia value output by the system inertia identification module 4, and the torque current and the torque coefficient of the servo motor, in combination with a motor motion equation;
step S6, the prediction update calculation module 6 predicts the operation state of the servo motor in the present cycle by using a kalman filter according to the predicted angular acceleration output by the control vector calculation module 5, and updates the covariance matrix of the operation state;
step S7, the encoder communication interface 2 acquires the original data output by the magnetic encoder 1 in the period, and acquires the position data of the magnetic encoder 1 and calculates the rotating speed data of the encoder 1 according to the original data;
step S8, the measurement update calculation module 7 calculates the kalman gain of the period and the measurement updated encoder position data and rotation speed data by using a kalman filter according to the magnetic encoder 1 position data and rotation speed data acquired by the encoder communication interface 2 at the period, and updates the covariance matrix of the operating state.
In step S3 of the method, the load identified by the load observer 3 includes a load torque T of the servo motorLAnd friction torque Bω
Further, in the step S4, the system inertia identification module 4 performs online load inertia identification and offline load inertia identification on the servo system;
in step S7, in each communication cycle, the encoder communication interface 2 performs difference processing on the position data of the magnetic encoder 1 in the current cycle and the position data of the previous cycle to obtain the rotational speed data of the magnetic encoder 1.
Regarding the motion equation of the servo motor, in step S5, the motor motion equation is:
Figure BDA0002417996260000091
wherein, TeFor the torque current of the servo motor andthe motor torque obtained by multiplying the torque coefficient of the servo motor is J, which is the system load inertia value output by the system inertia identification module 4,
Figure BDA0002417996260000092
for angular acceleration, TLFor the load torque, B ω is the friction torque obtained by multiplying the friction coefficient by the rotation speed, and then:
Figure BDA0002417996260000093
wherein,
Figure BDA0002417996260000094
has a unit of rad/s2Converting its units to RPM/s, then there are:
Figure BDA0002417996260000095
regarding the prediction updating process, in step S6, the state space of the kalman filter includes two variables: position θ and speed ω, and has:
Figure BDA0002417996260000096
the prediction update formula is:
Figure BDA0002417996260000097
Figure BDA0002417996260000098
wherein,
Figure BDA0002417996260000099
is the predicted state at time t,
Figure BDA00024179962600000910
is the last cycle of KalmanResult of filtering, FtAs a state transition matrix of the rotation speed, BtIs a control matrix;
according to the integral relation of position, speed and acceleration:
Figure BDA0002417996260000101
ωt=ωt-1+aΔt;
then there are:
Figure BDA0002417996260000102
Figure BDA0002417996260000103
wherein, PtFor the updated state covariance matrix, P, of this predictiont-1The state covariance matrix, Q, obtained for the last Kalman iterationtCovariance matrix, u, for predicting process state transitionstAre control vectors.
Regarding the measurement updating process, in step S8, the measurement updating formula is:
Figure BDA0002417996260000104
Figure BDA0002417996260000105
Pt=Pt-KHtPt
where K' is the Kalman gain, HtFor the measured state space transition matrix, H is the same unit for the measured value and the observed valuetAnd
Figure BDA0002417996260000106
are all identity matrices, PtTo predict covariance, RtIn order to measure the noise covariance matrix,
Figure BDA0002417996260000107
to predict value, ztIs a measured value and has
Figure BDA0002417996260000108
When the measurement update is executed, the final rotating speed result of the measurement update is obtained
Figure BDA0002417996260000109
And updates the state covariance matrix P't
Based on the above technical principles, the following embodiments may be referred to in the practical application process of the data processing apparatus and method for a magnetic encoder disclosed in the present invention.
Example one
Referring to fig. 1 and fig. 2, in the present embodiment, the kalman filter state space includes two variables, namely, a position θ and a rotation speed ω;
and has the following components:
Figure BDA0002417996260000111
the prediction update formula is:
Figure BDA0002417996260000112
Figure BDA0002417996260000113
wherein:
Figure BDA0002417996260000114
is the predicted state at time t.
Figure BDA0002417996260000115
Is the result of the last cycle kalman filtering. FtIs a state transition matrix of the rotation speed. B istIs a control matrix.
According to the integral relation of position, speed and acceleration:
Figure BDA0002417996260000116
ωt=ωt-1+aΔt;
then there are:
Figure BDA0002417996260000117
Figure BDA0002417996260000118
wherein, PtCovariance matrix, P, of updated state for this predictiont-1And the covariance matrix of the state obtained by the last Kalman iterative computation. QtIs a covariance matrix that predicts process state transitions. u. oftIn this embodiment, the angular acceleration of the motor is specifically used as the control vector.
The measurement update formula is:
Figure BDA0002417996260000121
Figure BDA0002417996260000122
P′t=Pt-K′HtPt
wherein: k' is the Kalman gain. HtFor the state space transition matrix measured by the sensor, in the embodiment, the unit of the measured value and the observed value is the same, then HtAnd
Figure BDA0002417996260000123
are all identity matrices. PtTo predict covariance, it is calculated from previous prediction updates. RtTo measure the noise covariance matrix, in the present embodiment, the method is based onAnd selecting pre-calculated covariance matrixes corresponding to different intervals in different intervals where the previous rotating speed is located.
Figure BDA0002417996260000124
The prediction value is obtained by updating and calculating the previous prediction. z is a radical oftFor the measured value, namely the value calculated by the communication interface of the encoder in the invention,
Figure BDA0002417996260000125
when the measurement update is executed, the final rotating speed result of the measurement update is obtained
Figure BDA0002417996260000126
And updates the state covariance matrix P't
Referring to fig. 1, the processing apparatus includes respective modules in an encoder and a servo driver, wherein:
the encoder is a magnetic encoder;
the servo driver comprises an encoder communication interface, a load observer, a system inertia identification module, a control vector calculation module, a prediction updating calculation module and a measurement updating calculation module;
the encoder communication interface is communicated with the magnetic encoder to periodically acquire data of the encoder, and the interface type of the encoder can be incremental pulse or can be communicated by a certain protocol, such as half-duplex asynchronous serial communication, BISS, SSI and the like. The original data of the encoder generally only comprises position data, the position data of the period is differentiated with the position data of the previous period in each communication period to obtain rotating speed data, and the encoder data acquired in each communication period of the interface is the measured value of Kalman filtering
Figure BDA0002417996260000131
The load observer identifies the load of the system during the operation of the servo motor and updates the load periodically, wherein the load comprises the load torque T of the motorLAnd massageA friction torque B ω;
the system inertia identification module can be divided into online load inertia identification and offline load inertia identification and outputs a load inertia value of the whole system including the servo motor;
a control vector calculation module for calculating a control vector according to the output T of the load observerL+ Bomega, output J of the system inertia identification module, and product of motor torque current and motor torque coefficient, namely motor torque TeAnd combining the motor motion equation to calculate the predicted angular acceleration u of the motor in the periodt
According to the motor motion equation:
Figure BDA0002417996260000132
wherein, TeIs the electromagnetic torque generated by the motor torque current, J is the system inertia,
Figure BDA0002417996260000133
for angular acceleration, TLFor the load torque, B ω is the product of the friction coefficient and the rotation speed, i.e. the friction torque, then:
Figure BDA0002417996260000141
wherein,
Figure BDA0002417996260000142
unit is rad/s2If the unit needs to be converted to RPM/s, then there are:
Figure BDA0002417996260000143
for the prediction update calculation module, in each calculation cycle, u of the control vector calculation module is readtAnd measuring the result of the periodic calculation on the updated calculation module
Figure BDA0002417996260000144
And Pt-1And calculating and updating according to the formula of Kalman filtering prediction updating.
For the measurement update calculation module, at each calculation cycle, the prediction update calculation module is read
Figure BDA0002417996260000145
And PtAnd measurement of the period of the encoder communication interface
Figure BDA0002417996260000146
Sensor measurement value covariance matrix R selected according to current rotating speedtAnd calculating and updating according to the formula for updating the Kalman filtering measurement.
For a certain type of magnetic encoder, before use, the covariance matrix R of the position and the rotating speed of the encoder in a plurality of rotating speed intervals in a rated rotating speed range needs to be confirmedt. The measurement method is as follows:
firstly, enabling the encoder to stably rotate at a rotating speed point, increasing the stability of the rotating speed in a mode of increasing the integral rotational inertia, recording a group of two-dimensional data of the position and the rotating speed, wherein in the group of data, an ideal position is an arithmetic progression, and the speed is a constant, and the two-dimensional data can be obtained by averaging all rotating speed values, and according to the ideal position and the rotating speed sequence, the measurement error of the group of data can be obtained, so that the covariance matrix of the sensor measurement noise at the rotating speed can be obtained according to the definition of the covariance matrix.
The data processing device and the method of the magnetic encoder reduce the jitter of the position data and the rotating speed data by processing the original data of the magnetic encoder, bring smaller delay, and a servo system can set higher speed and position loop gain, thereby having better performance.
The above description is only for the purpose of illustrating the preferred embodiments of the present invention and is not to be construed as limiting the invention, and any modifications, equivalents or improvements made within the technical scope of the present invention should be included in the scope of the present invention.

Claims (10)

1. The utility model provides a magnetic encoder data processing apparatus, magnetic encoder (1) is located on a servo motor, servo motor locates in a servo, its characterized in that, processing apparatus including:
the encoder communication interface (2) is communicated with the magnetic encoder (1) and is used for acquiring original data output by the magnetic encoder (1) in each fixed communication period, acquiring position data of the magnetic encoder (1) according to the original data and calculating rotating speed data of the encoder (1);
a load observer (3) for identifying and periodically updating the load of the servo system in the operation process of the servo motor;
the system inertia identification module (4) is used for outputting a load inertia value of the servo system;
the control vector calculation module (5) is used for acquiring the torque current and the torque coefficient of the servo motor, and calculating the predicted angular acceleration of the servo motor in the period according to the load identified by the load observer (3), the load inertia value output by the system inertia identification module (4) and the torque current and the torque coefficient of the servo motor in combination with a motor motion equation;
the prediction updating calculation module (6) is used for predicting the running state of the servo motor in the period by using a Kalman filter according to the predicted angular acceleration output by the control vector calculation module (5) and updating a covariance matrix of the running state;
and the measurement updating calculation module (7) is used for calculating the Kalman gain of the period and measuring the updated encoder position data and rotation speed data according to the position data and rotation speed data of the magnetic encoder (1) acquired from the encoder communication interface (2) in the period by using a Kalman filter, and updating the covariance matrix of the running state.
2. A data processing apparatus of a magnetic encoder according to claim 1, characterized in that the encoder communication interface (2) performs a difference processing on the position data of the magnetic encoder (1) in the current period and the position data of the previous period in each communication period to obtain the rotation speed data of the magnetic encoder (1).
3. A magnetic encoder data processing device according to claim 1, characterized in that the load identified by the load observer (3) comprises the load moment of the servo motor and the friction torque.
4. A magnetic encoder data processing device according to claim 1, wherein the system inertia identification module (4) is configured to perform online load inertia identification and offline load inertia identification on the servo system.
5. A magnetic encoder data processing method, the magnetic encoder (1) is arranged on a servo motor, the servo motor is arranged in a servo system, the processing method is realized based on a processing device, the processing device comprises an encoder communication interface (2), a load observer (3), a system inertia identification module (4), a control vector calculation module (5), a prediction update calculation module (6) and a measurement update calculation module (7), the encoder communication interface (2) is used for establishing communication with the magnetic encoder (1) and acquiring original data output by the magnetic encoder (1) in each fixed communication period, and the processing method comprises the following steps:
step S1, a communication cycle is started;
step S2, judging whether the fixed period is reached, if yes, executing step S3, if no, ending the processing;
step S3, the load observer (3) is used for identifying and periodically updating the load of the servo system in the running process of the servo motor;
step S4, outputting a load inertia value of the servo system by using the system inertia identification module (4);
step S5, the control vector calculation module (5) obtains the torque current and the torque coefficient of the servo motor, and calculates the predicted angular acceleration of the servo motor in the period according to the load identified by the load observer (3), the load inertia value output by the system inertia identification module (4) and the torque current and the torque coefficient of the servo motor in combination with a motor motion equation;
step S6, the prediction updating calculation module (6) predicts the running state of the servo motor in the period by using a Kalman filter according to the predicted angular acceleration output by the control vector calculation module (5), and updates the covariance matrix of the running state;
step S7, the encoder communication interface (2) acquires the original data output by the magnetic encoder (1) in the period, acquires the position data of the magnetic encoder (1) according to the original data and calculates the rotating speed data of the encoder (1);
and step S8, the measurement updating calculation module (7) calculates the Kalman gain of the period and the measurement updated encoder position data and rotation speed data by using a Kalman filter according to the position data and rotation speed data of the magnetic encoder (1) acquired by the encoder communication interface (2) in the period, and updates the covariance matrix of the operation state.
6. A magnetic encoder data processing method according to claim 5, characterized in that in step S3, the load identified by the load observer (3) comprises a load torque T of a servo motorLAnd a friction torque B ω.
7. The data processing method of claim 5, wherein in step S4, the system inertia identification module (4) performs online load inertia identification and offline load inertia identification on the servo system;
in step S7, in each communication cycle, the encoder communication interface (2) performs a difference process on the position data of the magnetic encoder (1) in the current cycle and the position data of the previous cycle to obtain the rotational speed data of the magnetic encoder (1).
8. The data processing method of a magnetic encoder according to claim 5, wherein in step S5, the motor motion equation is:
Figure FDA0002417996250000031
wherein, TeIs the motor torque obtained by the product of the torque current of the servo motor and the torque coefficient of the servo motor, J is the system load inertia value output by the system inertia identification module (4),
Figure FDA0002417996250000041
for angular acceleration, TLFor the load torque, B ω is the friction torque obtained by multiplying the friction coefficient by the rotation speed, and then:
Figure FDA0002417996250000042
wherein,
Figure FDA0002417996250000043
has a unit of rad/s2Converting its units to RPM/s, then there are:
Figure FDA0002417996250000044
9. the data processing method of a magnetic encoder according to claim 8, wherein in step S6, the state space of the kalman filter contains two variables: position θ and speed ω, and has:
Figure FDA0002417996250000045
the prediction update formula is:
Figure FDA0002417996250000046
Figure FDA0002417996250000047
wherein,
Figure FDA0002417996250000048
is the predicted state at time t,
Figure FDA0002417996250000049
is the Kalman filtering result of the previous cycle, FtAs a state transition matrix of the rotation speed, BtIs a control matrix;
according to the integral relation of position, speed and acceleration:
Figure FDA00024179962500000410
ωt=ωt-1+aΔt;
then there are:
Figure FDA0002417996250000051
Figure FDA0002417996250000052
wherein, PtFor the updated state covariance matrix, P, of this predictiont-1The state covariance matrix, Q, obtained for the last Kalman iterationtCovariance matrix, u, for predicting process state transitionstAre control vectors.
10. The data processing method of a magnetic encoder according to claim 9, wherein in step S8, the measurement update formula is:
Figure FDA0002417996250000053
Figure FDA0002417996250000054
P′t=Pt-K′HtPt
where K' is the Kalman gain, HtFor the measured state space transition matrix, H is the same unit for the measured value and the observed valuetAnd
Figure FDA0002417996250000055
are all identity matrices, PtTo predict covariance, RtIn order to measure the noise covariance matrix,
Figure FDA0002417996250000056
to predict value, ZtIs a measured value and has
Figure FDA0002417996250000057
When the measurement update is executed, the final rotating speed result of the measurement update is obtained
Figure FDA0002417996250000058
And updates the state covariance matrix P't
CN202010197029.9A 2020-03-19 2020-03-19 Data processing device and method for magnetic encoder Pending CN111416564A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010197029.9A CN111416564A (en) 2020-03-19 2020-03-19 Data processing device and method for magnetic encoder

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010197029.9A CN111416564A (en) 2020-03-19 2020-03-19 Data processing device and method for magnetic encoder

Publications (1)

Publication Number Publication Date
CN111416564A true CN111416564A (en) 2020-07-14

Family

ID=71493166

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010197029.9A Pending CN111416564A (en) 2020-03-19 2020-03-19 Data processing device and method for magnetic encoder

Country Status (1)

Country Link
CN (1) CN111416564A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114123894A (en) * 2021-11-19 2022-03-01 九江精密测试技术研究所 Indexing mechanism three-loop control method based on Kalman
CN114706306A (en) * 2022-03-31 2022-07-05 清华大学 Servo driving system control method and device and electronic equipment
CN116289659A (en) * 2023-04-17 2023-06-23 西南交通大学 Wireless intelligent pushing device and control system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101074634A (en) * 2006-05-15 2007-11-21 陈柏全 Method for estimating engine crank corner and rotation speed
CN103338003A (en) * 2013-06-28 2013-10-02 西安交通大学 Online simultaneous identifying method for load torque and inertia of motor
CN106849803A (en) * 2017-04-07 2017-06-13 西安理工大学 Permanent Magnet Synchronous Motor method of estimation is filtered based on edge particles are uniformly distributed
CN109560735A (en) * 2018-12-03 2019-04-02 中冶南方(武汉)自动化有限公司 Rotation failure limping control method for main driving permanent magnet synchronous motor for vehicle

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101074634A (en) * 2006-05-15 2007-11-21 陈柏全 Method for estimating engine crank corner and rotation speed
CN103338003A (en) * 2013-06-28 2013-10-02 西安交通大学 Online simultaneous identifying method for load torque and inertia of motor
CN106849803A (en) * 2017-04-07 2017-06-13 西安理工大学 Permanent Magnet Synchronous Motor method of estimation is filtered based on edge particles are uniformly distributed
CN109560735A (en) * 2018-12-03 2019-04-02 中冶南方(武汉)自动化有限公司 Rotation failure limping control method for main driving permanent magnet synchronous motor for vehicle

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
曲跃鹏: "基于负载状态估计和补偿的永磁同步电机调速性能研究", 《中国优秀硕士学位论文全文数据库 工程科技II辑》 *
杨兴林: "《船舶敏捷制造系统》", 31 January 2018, 上海科学技术出版社 *
火枪手.: "http://muchong.com/t-5295017-1-pid-24 《大家在卡尔曼滤波算法中怎么处理系统误差矩阵和噪声矩阵?》", 《小木虫论坛》 *
缪仲翠 等: "带负载观测的感应电机动态分数阶滑模控制", 《太阳能学报》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114123894A (en) * 2021-11-19 2022-03-01 九江精密测试技术研究所 Indexing mechanism three-loop control method based on Kalman
CN114706306A (en) * 2022-03-31 2022-07-05 清华大学 Servo driving system control method and device and electronic equipment
CN116289659A (en) * 2023-04-17 2023-06-23 西南交通大学 Wireless intelligent pushing device and control system
CN116289659B (en) * 2023-04-17 2024-03-15 西南交通大学 Wireless intelligent pushing device and control system

Similar Documents

Publication Publication Date Title
CN111416564A (en) Data processing device and method for magnetic encoder
CN109873586B (en) Motor mechanical parameter identification method and system based on high-order sliding-mode observer
CN111504360B (en) Time coordinate-based magnetoelectric encoder angle precision division method and device
CN108988723B (en) Sectional type rotor position estimation method of Hall position sensor
CN102624303A (en) Method for estimating angular acceleration of permanent magnet brushless direct-current motor
CN108448979B (en) Permanent magnet synchronous motor system based on magnetic encoder error neural network compensation
CN112511059B (en) High-precision position estimation method for permanent magnet synchronous motor
CN106602952B (en) A kind of PMSM permanent magnet flux linkage full rank discrimination method
CN108988724A (en) A kind of compound rotor position estimation method of hall position sensor variable weight value
Kennel Encoders for simultaneous sensing of position and speed in electrical drives with digital control
CN110569767B (en) Motion parameter identification method, system, equipment and computer readable storage medium
CN114944801A (en) PMSM (permanent magnet synchronous motor) position sensorless control method based on innovation self-adaptive extended Kalman
CN112350626B (en) Method and device for determining the rotational speed and the rotational angle of a motor shaft of a DC motor
CN112511060B (en) Hidden pole type permanent magnet brushless hub motor position estimation calibration method
CN111555689A (en) Phase current flow sampling system and method based on Kalman filtering
CN106849803B (en) Permanent Magnet Synchronous Motor estimation method is filtered based on edge particles are uniformly distributed
CN108880385A (en) A kind of intelligent control method of permanent magnet synchronous motor
CN114826071A (en) Permanent magnet synchronous motor rotor position and speed estimation method based on Hall sensor
CN207234700U (en) A kind of driving control system and stable holder
CN111121827A (en) TMR magnetic encoder system based on Kalman filtering
Mayer et al. Position and Speed Estimation of PMSMs Using Gaussian Processes
KR100422204B1 (en) Magnetic flux angle acquisition method by rotor or induction motor
CN115208259B (en) Permanent magnet synchronous motor speed measuring method
CN116885993B (en) Servo motor parameter identification method and system integrating cloud end and edge end
CN113824379B (en) Method and device for testing maximum torque angle of unit current of permanent magnet synchronous motor

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200714

RJ01 Rejection of invention patent application after publication