CN115876229A - Novel encoder angle zero-crossing jumping point suppression method and device based on particle swarm - Google Patents

Novel encoder angle zero-crossing jumping point suppression method and device based on particle swarm Download PDF

Info

Publication number
CN115876229A
CN115876229A CN202211259247.6A CN202211259247A CN115876229A CN 115876229 A CN115876229 A CN 115876229A CN 202211259247 A CN202211259247 A CN 202211259247A CN 115876229 A CN115876229 A CN 115876229A
Authority
CN
China
Prior art keywords
theta
pair
value
hall
tab
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.)
Granted
Application number
CN202211259247.6A
Other languages
Chinese (zh)
Other versions
CN115876229B (en
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.)
Harbin University of Science and Technology
Original Assignee
Harbin University of Science and Technology
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 Harbin University of Science and Technology filed Critical Harbin University of Science and Technology
Priority to CN202211259247.6A priority Critical patent/CN115876229B/en
Publication of CN115876229A publication Critical patent/CN115876229A/en
Application granted granted Critical
Publication of CN115876229B publication Critical patent/CN115876229B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Transmission And Conversion Of Sensor Element Output (AREA)

Abstract

The invention belongs to the field of encoder manufacturing, and relates to a novel encoder angle zero-crossing jumping point restraining method and device based on particle swarm. The invention uses a magnetoelectric encoder formed by combining single-pair magnetic steel and multi-pair magnetic steel, three groups of collected magnetic field signals are converted into angle values by a Hall element through Clarke transformation and an arc tangent algorithm, then the angle values are sequenced, the multi-pair magnetic angle values are added with a limit to determine a limit value x, areas are divided, a pole number judgment interval is formed, and the like, the angle subdivision calculation is carried out on the multi-pair magnetic angle values by using the limited pole number, the differential processing is carried out, the particle swarm algorithm is combined with the angle values, and the limit value x is continuously brought into the limit to determine the limit value x for iterative calculation. The method can accurately and quickly find the boundary value without jumping through the advantages of high particle swarm convergence speed, high precision and the like, and is a quick and convenient angle zero-crossing jumping point restraining method.

Description

Novel encoder angle zero-crossing jumping point suppression method and device based on particle swarm
The technical field is as follows:
the invention belongs to the field of encoder manufacturing, and particularly relates to a novel encoder angle zero-crossing jumping point restraining method and device based on particle swarm.
Background art:
the magnetoelectric encoder is a sensor which is arranged on a servo motor and used for measuring the position of a magnetic pole, the rotating angle and the rotating speed of the servo motor, and generally comprises a stator, a rotor, a Hall element, magnetic steel, a signal acquisition board and the like. Compared with other encoders, the magnetoelectric encoder has the characteristics of vibration resistance, corrosion resistance, pollution resistance, interference resistance and the like, and can be applied to the field to which the traditional encoder cannot adapt.
The magnetoelectric encoder is provided with a single-pair magnetoelectric encoder and a multi-pair magnetoelectric encoder according to the difference of the number of pole pairs of the magnetic steel. The working process of the magnetoelectric encoder comprises the steps that a cycle signal is generated by one cycle of rotation of the single-pair magnetic steel, a cycle signal is generated by one cycle of rotation of the multiple-pair magnetic steel, an encoder signal resolving plate carries out analog-to-digital conversion on an angle value signal acquired by a Hall element to obtain an angle value digital signal, and the angle value digital signal is resolved by a single chip microcomputer to obtain an angle value. However, this calculation can generate noise during the analog-to-digital conversion, as can the hardware circuit power supply. Therefore, when the angle values of a plurality of pairs of pole magnetoelectric encoders are calculated, the position of a zero crossing point is difficult to accurately determine, the angle value at the zero crossing point can make a reciprocating jump between the current period and the previous period, the repeated jump of the angle value at the zero crossing point causes the deviation of the calculation of the current angle value, the jump point appears in the subdivided angle value, and the improvement of the resolution of the magnetoelectric encoder is seriously influenced.
Disclosure of Invention
Aiming at the problems, the invention provides a scheme aiming at solving the problem of generating jumping points in the angle subdivision process of a magnetoelectric encoder. By combining with a particle swarm algorithm, a limit determining limit value x is added at the position of zero-crossing jumping of the multi-pair polar angle value, the number of poles of the current multi-pair polar angle value can be accurately judged, so that the problem of pole number misjudgment caused by reciprocating jumping at the zero-crossing point position is solved, the jumping point is restrained, and the resolution of the magnetoelectric encoder is improved.
The invention discloses a novel encoder angle zero-crossing jumping point restraining method based on particle swarm, which comprises the following steps.
The method comprises the following steps: the single antipodal angle value signals A +, A and A-collected by the single antipodal Hall a1, the single antipodal Hall a2 and the single antipodal Hall a3 are subjected to Clarke transformation, and the formula is as follows:
Figure BDA0003890890140000021
converting the three groups of single-antipodal angle value signals into two groups of single-antipodal angle value signals alpha < + >, alpha < - >, with the phase difference of 90 degrees, and performing analog-to-digital conversion on the alpha < + > and the alpha < - > by using an encoder signal resolving board to obtain a single-antipodal angle value digital signal H α+ 、H α- Then, againResolving through an arc tangent algorithm built in the single chip microcomputer to obtain a single-pole angle value theta 1 ,θ 1 Has a value range of [0, d ]]The calculation formula is:
Figure BDA0003890890140000022
and (3) carrying out Clarke transformation on multi-pair polar angle value signals B +, B and B-acquired by the multi-pair polar Hall B1, the multi-pair polar Hall B2 and the multi-pair polar Hall B3:
Figure BDA0003890890140000031
converting the three sets of multi-pair polar angle value signals into two sets of multi-pair polar angle value signals beta + and beta-with the phase difference of 90 degrees, and performing analog-to-digital conversion on the beta + and the beta-by an encoder signal resolving board to obtain a multi-pair polar angle value digital signal H β+ 、H β- Then, the multi-pair polar angle value theta is obtained by resolving through an arc tangent algorithm built in the single chip microcomputer 2 ,θ 2 The value range is [0, d ]]The calculation formula is:
Figure BDA0003890890140000032
step two: by a single-antipodal angle value theta 1 From small to large for many pairs of polar angle values theta 2 Sequencing is carried out to obtain a plurality of pairs of polar angle values theta 2 Angle value theta with single pole pair 1 The corresponding relation of the angle value theta is that the number of pole pairs of the multi-pair pole magnetic steel used by the invention is k, so that the angle value theta of a single pair of poles in one rotation period 1 Change from 0 to d once for corresponding multiple pairs of polar angle values theta 2 From 0 to d k times. After the multiple pairs of polar angle values are sequenced, the multiple pairs of polar angle values theta are given 2 A limit determination threshold x is given by the formula:
Figure BDA0003890890140000033
wherein theta is up For upper bound multiple pairs of polar angle values, θ down A plurality of pairs of polar angle values are defined for the lower bound.
Step three: the single-pair polar angle value theta after the sorting in the step two is processed 1 All divided by d, theta 1 Range from [0, d ]]Is changed into [0,1]The decimal between the two is multiplied by the length of the interval, namely, the length of the interval is 1, and the integer is taken by using the integer taking function command, so that the unipolar polar angle value is mapped into the interval of the length1. The concrete formula is as follows:
θ 1_length1_int (i)=FR(θ 1 (i)/d×length1) (6)
wherein theta is 1_length_int The value range of the single-pair polar angle value after the integral is compressed is [0,LENGTH1 ]]FR is a rounding command, and the specific rounding mode is: take the integer less than and nearest to the current value, θ 1 Is a single-antipodal angle value, i is the number of data sampling points, and takes the value of [1,g]Length1 is the interval length value. The single-antipodal angle value theta after the compression is rounded 1_length1_int The difference calculation is carried out in such a way that,
θ 1_length1_int_err (i)=θ 1_length1_int (i+1)-θ 1_length1_int (i) (7)
θ 1_length1_int_err for the series of differences calculated, theta 1_length_int (i + 1) is the single-pair polar angle value, θ, rounded for the current compression 1_length_int (i) The single-antipodal angle value rounded for the last compression, i is the number of data sampling points, and the value is [1,g ]]. Will be numbered in sequence theta 1_length1_int_err All the serial numbers of the numerical values larger than 0 are extracted and individually made into a sequence dis _ length1.
Step four: taking the data values in the sequence dis _ length1 as the multiple pair of polar angle values theta 2 Upper limit multi-pair polar angle value theta up Lower bound multiple antipodal angle value theta down The sequence number in (1) is found out by the formula:
Figure BDA0003890890140000041
wherein theta is 2_tab Is an original boundless multi-pair polar angle value theta up_tab Is a standard upper bound multiple pair of polar angle values, θ down_tab Are pairs of polar angle values of the standard lower bound. Delta is the number of data points in the sequence dis _ length1 and takes the value of [1, length1 h1]. To theta 2_tab Original boundless multi-pair polar angle value theta up_tab Standard upper bound multiple pair of polar angle values, theta down_tab Dividing the polar angle values of multiple pairs of standard lower limits into regions according to theta 2_tab For example, the method specifically comprises the following steps:
when theta is measured 2_tab If the value is greater than 0 and less than 16384, defining the area as 0 area; when theta is 2_tab If the numerical value of (1) is 16384 or more and less than 32768, defining the region as a1 region; when theta is 2_tab When the numerical value of (1) is 32768 or more and is less than 49152, defining the region as a2 region; when theta is 2_tab When the numerical value of (1) is greater than or equal to 49152 and less than 65536, defining the region as a3 region; to theta up_tab 、θ down_tab The same process is performed.
To theta 2_tab 、θ up_tab 、θ down_tab Difference calculation is carried out respectively, still in theta 2_tab For example, the specific steps are as follows: by theta in sequence 2_tab The next data point in the sequence is subtracted from the previous data point to obtain a difference array theta 2_tab_cha And if the data point value in the difference number sequence is less than-50000, adding 1 to the original boundless multi-pair pole number until the pole number is equal to the pole pair number k of the multi-pair pole magnetic steel. To theta up_tab 、θ down_tab The same process is performed.
Step five: subdividing and amplifying the multiple pairs of polar angle values, wherein the specific formula is as follows:
θ fin =(p-1)×65535+θ 2 (9)
θ fin for subdividing the amplified multiple pairs of polar angle values, p is the number sequence of the poles obtained in the fourth step, and the value is [1,k ]]. To theta fin Performing difference calculation to determine the data points with absolute values of 30000-70000Define as a skip point.
Step six: defining a function:
Y=TD(x) (10)
y is used as a record value of the number of jumping points, TD is a program function of the execution process of the steps from the second step to the fifth step, and x is a limit value. Setting a function formula (10) as a target function in the particle swarm optimization, wherein the core formula of the particle swarm optimization based on the dynamic inertia coefficient is as follows:
Figure BDA0003890890140000051
wherein c is 1 Is a self-learning factor, c 2 For group learning factor, w is an inertia factor, w max Is the maximum inertia factor, w min Is a minimum inertia factor, r 1 、r 2 Is [0,1 ]]D is the number of the particle operation steps, t is the operation time of each step, pbest (d) is the individual found limit value of the particle, gbest (d) is the found limit value of the particle group, v (d) is the current velocity of the particle, v (d-1) is the previous velocity of the particle, x (d) is the currently found limit value of the particle, x (d-1) is the last found limit value of the particle, iter is the current iteration number, ger is the total iteration number, an objective function Y = TD (x) is set, and iterative calculation is carried out.
The beneficial effects of the invention are as follows:
1. the magnetic field of the single-pair-pole magnetic steel in the magnetoelectric encoder is a radial magnetic field, and the direction of the magnetic field is changed through the magnetic conductive ring, so that the influence of external noise on signals can be shielded, and the error influence of axial movement of a motor spindle can be avoided.
2. The number of pole pairs of the multi-pair-pole magnetic steel used in the invention is 24 pairs of poles, and the angle resolution of the magnetoelectric encoder is improved through the calculation of the algorithm of the invention.
3. The invention combines the dynamic particle swarm and the magnetoelectric encoder high-resolution resolving method, can accurately and quickly find the limit value x without the jump point generation by relying on the advantages of high convergence speed, high precision and the like of the particle swarm, and is an algorithm capable of quickly and conveniently inhibiting the influence of the jump point after the multiple pairs of polar angle values are subdivided.
Description of the drawings:
for ease of illustration, the invention is described in detail by the following detailed description and the accompanying drawings
FIG. 1 is a schematic diagram of the general structure of the novel encoder of the present invention;
FIG. 2 is a schematic diagram of the internal structure of the novel encoder of the present invention;
FIG. 3 is a magnetic steel structure diagram of the novel encoder of the present invention;
FIG. 4 is a diagram of a Hall device according to the present invention;
FIG. 5 is a structural view of the magnetic conductive ring of the present invention;
FIG. 6 is a signal acquisition sequencing diagram according to the present invention;
FIG. 7 is a partial enlarged view of a plurality of pairs of polar angle values of the three threshold values according to the present invention;
FIG. 8 is a zone division diagram according to the present invention;
FIG. 9 is a diagram illustrating the boundary interval decision of the present invention;
FIG. 10 is a graph of the particle swarm optimization limit determination limits of the present invention;
FIG. 11 (a) is a diagram illustrating a difference generated after a plurality of pairs of polar angle values are subdivided using non-optimal limit determination values according to the present invention;
FIG. 11 (b) is a differential no-jump diagram after multi-pair polar angle values are subdivided using the optimal limit determination threshold value according to the present invention;
in the figure 1, single-pole magnetic steel; 1-1, a single-counter-pole Hall a1;1-2, a single-counter-pole Hall a2;1-3, single-counter-pole Hall a3; 2. a magnetic shield panel; 3. a plurality of pairs of pole magnetic steels; 3-1, multi-pair hall b1;3-2, multi-pair hall b2;3-3, multi-pair hall b3; 4. a support plate; 5. a magnetic conductive ring; 5-1, a single-counter-pole Hall groove c1;5-2, a single-counter-pole Hall cell c2;5-3, a single-counter-pole Hall cell c3; 6. an encoder signal resolving board; 7. an encoder end cap; 8. a motor shaft; 9. a bearing; 10. a motor flange plate; 11. and a single chip microcomputer.
Detailed description of the preferred embodiments
The following detailed description of embodiments of the invention refers to the accompanying drawings.
The embodiments/examples described herein are specific embodiments of the present invention, are intended to be illustrative of the concepts of the present invention, are intended to be illustrative and exemplary, and should not be construed as limiting the embodiments and scope of the invention. In addition to the embodiments described herein, those skilled in the art will be able to employ other technical solutions which are obvious based on the disclosure of the claims and the specification of the present application, and these technical solutions include those which make any obvious replacement or modification of the embodiments described herein, and all of which are within the scope of the present invention.
In order that the objects, aspects and advantages of the invention will become more apparent, the invention will be described by way of example only, and in connection with the accompanying drawings. It is to be understood that such description is merely illustrative and not intended to limit the scope of the present invention. Moreover, descriptions of well-known structures and techniques are omitted in the following description to avoid unnecessarily obscuring the concepts of the present invention.
As shown in fig. 1,2, 3, 4, 5, 6, 7, 8, 9, 10, 11 (a) and 11 (b), the present embodiment adopts the following technical means.
The novel encoder structure is shown in fig. 2, and is characterized in that: the encoder structure, it includes single antipodal magnet steel (1), single antipodal hall a1 (1-1), single antipodal hall a2 (1-2), single antipodal hall a3 (1-3), magnetic shield board (2), many antipodal magnet steel (3), many antipodal hall b1 (3-1), many antipodal hall b2 (3-2), many antipodal hall b3 (3-3), backup pad (4), magnetic conductive ring (5), single antipodal hall groove c1 (5-1), single antipodal hall groove c2 (5-2), single antipodal hall groove c3 (5-3), board (6) is solved to the encoder signal, encoder end cover (7), motor shaft (8), bearing (9), motor flange dish (10), singlechip (11). The single-antipode magnetic steel (1) is glued with a motor rotating shaft (8), a single-antipode Hall a1 (1-1) is inserted into a single-antipode Hall groove c1 (5-1) on a magnetic conduction ring (5), a single-antipode Hall a2 (1-2) is inserted into a single-antipode Hall groove c2 (5-2), a single-antipode Hall a3 (1-3) is inserted into a single-antipode Hall groove c3 (5-3), the magnetic conduction ring (5) is glued with an encoder signal resolving plate (6), a magnetic shielding plate (2) and a plurality of antipode magnetic steel (3) are glued together on a supporting plate (4), the supporting plate (4) is glued with the motor rotating shaft (8), the single-antipode Hall a1 (1-1), the single-antipode Hall a2 (1-2), the single-antipode Hall a3 (1-3), the plurality of antipode Hall b1 (3-1), the plurality of antipode Hall b2 (3-2), the plurality of antipode single-chip microcomputer b3 (3-3), the single-electrode Hall b 11) is glued with a signal resolving plate (6), a welding end cover (7) and a welding encoder (7), and an end cover (7) are welded with a motor. When the motor rotating shaft (8) starts to rotate, the single-pair-pole magnetic steel (1), the magnetic shielding plate (2), the multi-pair-pole magnetic steel (3) and the supporting plate (4) are driven to rotate together. The radial magnetic field of the single-pair magnetic steel (1) changes the magnetic field direction through the magnetic conductive ring (5) which is glued on the encoder signal resolving plate (6), and then the single-pair hall on the encoder signal resolving plate (6) receives the single-pair magnetic field signal, and the multi-pair hall is positioned right above the multi-pair magnetic steel (3) and used for receiving the multi-pair magnetic field signal.
A novel encoder angle zero-crossing jumping point restraining method based on particle swarm is applied to a novel magnetoelectric encoder.
A novel encoder angle zero-crossing jumping point suppression method based on particle swarm is specifically realized by the following steps:
the method comprises the following steps: the single-antipode angle value signals A +, A and A-collected by the single-antipode Hall a1, the single-antipode Hall a2 and the single-antipode Hall a3 are subjected to Clarke transformation, and the formula is as follows:
Figure BDA0003890890140000091
converting the three groups of single-antipodal angle value signals into two groups of single-antipodal angle value signals alpha < + >, alpha < - >, with the phase difference of 90 degrees, and performing analog-to-digital conversion on the alpha < + > and the alpha < - > by using an encoder signal resolving board to obtain a single-antipodal angle value digital signal H α+ 、H α- Then, the single-pair polar angle value theta is obtained by resolving through an arc tangent algorithm built in the single chip microcomputer 1 ,θ 1 The value range is [0, 65535]The calculation formula is:
Figure BDA0003890890140000092
and (3) carrying out Clarke transformation on multi-pair polar angle value signals B +, B and B-acquired by the multi-pair polar Hall B1, the multi-pair polar Hall B2 and the multi-pair polar Hall B3:
Figure BDA0003890890140000101
converting the three sets of multi-pair polar angle value signals into two sets of multi-pair polar angle value signals beta + and beta-with the phase difference of 90 degrees, and performing analog-to-digital conversion on the beta + and the beta-by an encoder signal resolving board to obtain a multi-pair polar angle value digital signal H β+ 、H β- Then, the multi-pair polar angle value theta is obtained by resolving through an arc tangent algorithm built in the single chip microcomputer 2 ,θ 2 The value range is [0, 65535 ]]The calculation formula is as follows:
Figure BDA0003890890140000102
step two: by a single-dipole angle value theta 1 From small to large for many pairs of polar angle values theta 2 Sequencing is carried out to obtain a plurality of pairs of polar angle values theta 2 Angle value theta with single pole pair 1 The corresponding relation of the invention, the number of the pole pairs of the multi-pair magnetic steel is 24, so that the single-pair angle value theta is within one rotation period 1 A corresponding multi-pair polar angle value theta varying once from 0 to 65535 2 From 0 to 65535 24 times. After the multiple pairs of polar angle values are sequenced, the multiple pairs of polar angle values theta are given 2 A limit determination threshold x is given by the formula:
Figure BDA0003890890140000103
wherein theta is up For upper bound multiple pairs of polar angle values, θ down A plurality of pairs of polar angle values are defined for the lower bound.
Step three: the single-pair polar angle value theta after the sorting in the step two is processed 1 All divided by 65535, theta 1 Is selected from the range of [0, 65535]Is changed into [0,1]The decimal fraction is multiplied by the interval length 2048, and the integer is taken by the rounding function command, so that the unipolar and unipolar angle values are mapped into 2048 intervals. The concrete formula is as follows:
θ 1_length1_int (i)=FR(θ 1 (i)/d×length1) (6)
wherein theta is 1_length_int The value range of the single-antipodal angle value after the compression and the rounding is [0, 2048 ]]FR is a rounding command, and the specific rounding mode is: taking an integer which is less than the current value and is closest to the current value, theta 1 Is a single-antipode angle value, i is the number of data sampling points, and takes the value of [1, 96349 ]]And 2048 is the interval length value. The single-antipodal angle value theta after the compression is rounded 1_length1_int The difference calculation is carried out in such a way that,
θ 1_length1_int_err (i)=θ 1_length1_int (i+1)-θ 1_length1_int (i) (7)
θ 1_length1_int_err for the series of differences calculated, theta 1_length_int (i + 1) is the single-pair polar angle value, θ, rounded for the current compression 1_length_int (i) The single-antipodal angle value rounded for the previous compression, i is the number of data sampling points, and is [1, 96349 ]]. Will be numbered in sequence theta 1_length1_int_err All serial numbers of the numerical values larger than 0 in the sequence are extracted and are independently made into a sequence dis _ length1.
Step four: taking the data values in the array dis _ length1 as the multiple pairs of polar angle values theta 2 Upper limit multi-pair polar angle value theta up Lower bound multiple antipodal angle value theta down The sequence number in (1) is found out by the formula:
Figure BDA0003890890140000111
wherein theta is 2_tab Is an original boundless multi-pair polar angle value theta up_tab As a standard upper bound multiple pair of polar anglesValue of (theta) down_tab Are pairs of polar angle values of the standard lower bound. Delta is the number of data points in the number sequence dis _ length1 and takes the value of [1, 2048 ]]. To theta 2_tab Original boundless multi-pair polar angle value theta up_tab Standard upper bound multiple pair of polar angle values, theta down_tab Dividing the polar angle values of multiple pairs of standard lower limits into regions according to theta 2_tab For example, the method specifically comprises the following steps:
when theta is 2_tab If the value is greater than 0 and less than 16384, defining the area as 0 area; when theta is 2_tab If the numerical value of (1) is 16384 or more and less than 32768, defining the region as a1 region; when theta is 2_tab When the numerical value of (1) is 32768 or more and is less than 49152, defining the region as a2 region; when theta is 2_tab When the numerical value of (1) is greater than or equal to 49152 and less than 65536, defining the region as a3 region; to theta up_tab 、θ down_tab The same process is performed.
To theta 2_tab 、θ up_tab 、θ down_tab The difference calculation is carried out respectively, still at theta 2_tab For example, the specific steps are as follows: by theta in sequence 2_tab The next data point in the sequence is subtracted from the previous data point to obtain a difference array theta 2_tab_cha And if the data point value in the difference number sequence is less than-50000, adding 1 to the original boundless multi-pair pole number until the pole number is equal to the multi-pair pole magnetic steel pole pair number 24. To theta up_tab 、θ down_tab The same process is performed.
Step five: subdividing and amplifying the multiple pairs of polar angle values, wherein the specific formula is as follows:
θ fin =(p-1)×65535+θ 2 (9)
θ fin for subdividing the amplified multiple pairs of polar angle values, p is the number sequence of the poles obtained in the fourth step, and the value is [1,24 ]]. To theta fin And performing difference calculation, and defining data points with absolute values between 30000 and 70000 in the obtained difference values as jumping points.
Step six: defining a function:
Y=TD(x) (10)
y is used as a record value of the number of jumping points, TD is a program function of the execution process of the steps from the second step to the fifth step, and x is a limit value. Setting a function formula (10) as a target function in the particle swarm optimization, wherein the core formula of the particle swarm optimization based on the dynamic inertia coefficient is as follows:
Figure BDA0003890890140000131
wherein c is 1 Is a self-learning factor, c 2 For group learning factor, w is an inertia factor, w max Is the maximum inertia factor, w min Is a minimum inertia factor, r 1 、r 2 Is [0,1 ]]D is the number of the particle operation steps, t is the operation time of each step, pbest (d) is the individual found threshold value of the particle, gbest (d) is the population found threshold value of the particle, v (d) is the current velocity of the particle, v (d-1) is the previous velocity of the particle, x (d) is the current found threshold value of the particle, x (d-1) is the last found threshold value of the particle, iter is the current iteration number, and ger is the total iteration number. The result graph shown in fig. 10 was obtained by performing iterative calculation with the objective function Y = TD (x), the number of particles being 20, and the number of iterations being 50. Finally, the 10 th iteration results in the limit value x of 3359 satisfying the 0 number of jumping points. When the value range is [0, 65535 ]]When the limit determination limit value x is [3195, 47681 ], it can be obtained]In this case, the number of the jumping points is 0, and the occurrence of the jumping points can be suppressed. After the limit value x obtained by the particle swarm optimization algorithm is subjected to multi-pair polar angle value subdivision processing and then differential calculation, a non-jump point diagram shown in fig. 11 (b) can be obtained, and the reliability of the method is proved.
The foregoing shows and describes the general principles and broad features of the present invention and advantages thereof. It will be understood by those skilled in the art that the present invention is not limited to the embodiments described above, which are described in the specification and illustrated only to illustrate the principle of the present invention, but that various changes and modifications may be made therein without departing from the spirit and scope of the present invention, which fall within the scope of the invention as claimed. The scope of the invention is defined by the appended claims and equivalents thereof.

Claims (1)

1. A method for restraining zero-crossing jumping points of an encoder angle is applied to a novel magnetoelectric encoder which comprises single-pair-pole magnetic steel (1), single-pair-pole Hall a1 (1-1), single-pair-pole Hall a2 (1-2), single-pair-pole Hall a3 (1-3), a magnetic shielding plate (2), multi-pair-pole magnetic steel (3), multi-pair-pole Hall b1 (3-1), multi-pair-pole Hall b2 (3-2), multi-pair-pole Hall b3 (3-3), a supporting plate (4), a magnetic conduction ring (5), a single-pair-pole Hall groove c1 (5-1), a single-pair-pole Hall groove c2 (5-2), a single-pair-pole Hall groove c3 (5-3), an encoder signal resolving plate (6), an end cover encoder (7), a motor rotating shaft (8), a bearing (9), a motor flange (10) and a single chip microcomputer (11); wherein, the single-pair magnetic steel (1) is connected with the motor rotating shaft (8) in an adhesive way, the magnetic shield plate (2) is connected with the multiple pairs of magnetic steel (3) in an adhesive way and then connected with the support plate (4), and the support plate (4) is connected with the motor rotating shaft (8) in an adhesive way; the single-pair Hall a1 (1-1), the single-pair Hall a2 (1-2), the single-pair Hall a3 (1-3), the multi-pair Hall b1 (3-1), the multi-pair Hall b2 (3-2), the multi-pair Hall b3 (3-3) and the single chip microcomputer (11) are soldered with the encoder signal resolving board (6); after a single antipode Hall a1 (1-1) is inserted into a single antipode Hall groove c1 (5-1) on a magnetic conduction ring (5), a single antipode Hall a2 (1-2) is inserted into a single antipode Hall groove c2 (5-2), and a single antipode Hall a3 (1-3) is inserted into a single antipode Hall groove c3 (5-3), the magnetic conduction ring (5) is glued with an encoder signal resolving plate (6); the encoder signal resolving plate (6) is glued with an encoder end cover (7); the encoder end cover (7) is in threaded connection with the motor flange plate (10);
the method is characterized in that: the method comprises the following specific implementation processes:
the method comprises the following steps: the single antipodal angle value signals A +, A and A-collected by the single antipodal Hall a1, the single antipodal Hall a2 and the single antipodal Hall a3 are subjected to Clarke transformation, and the formula is as follows:
Figure FDA0003890890130000021
three groups of single-antipodal anglesThe value signals are converted into two groups of single-antipodal angle value signals alpha < + >, alpha < - >, with the phase difference of 90 degrees, and the encoder signal resolving plate performs analog-to-digital conversion on the alpha < + >, alpha < - > to obtain a single-antipodal angle value digital signal H α+ 、H α- Then, the single-pair polar angle value theta is obtained by resolving through an arc tangent algorithm built in the single chip microcomputer 1 ,θ 1 The value range is [0, d ]]The calculation formula is:
Figure FDA0003890890130000022
and (3) carrying out Clarke transformation on multi-pair polar angle value signals B +, B and B-acquired by the multi-pair polar Hall B1, the multi-pair polar Hall B2 and the multi-pair polar Hall B3:
Figure FDA0003890890130000023
converting the three sets of multi-pair polar angle value signals into two sets of multi-pair polar angle value signals beta + and beta-with the phase difference of 90 degrees, and performing analog-to-digital conversion on the beta + and the beta-by an encoder signal resolving board to obtain a multi-pair polar angle value digital signal H β+ 、H β- Then, the multi-pair polar angle value theta is obtained by resolving through an arc tangent algorithm built in the single chip microcomputer 2 ,θ 2 The value range is [0, d ]]The calculation formula is:
Figure FDA0003890890130000024
step two: by a single-dipole angle value theta 1 From small to large for many pairs of polar angle values theta 2 Sequencing is carried out to obtain a plurality of pairs of polar angle values theta 2 Angle value theta with single pole pair 1 The corresponding relation of the invention, the number of the pole pairs of the multi-pair magnetic steel is k, so that the single-pair angle value theta is within one rotation period 1 Change from 0 to d once for corresponding multiple pairs of polar angle values theta 2 Change k times from 0 to d;
multiple pairs of polar anglesAfter the values are sorted, a plurality of pairs of polar angle values theta are given 2 A limit determination threshold x is given by the formula:
Figure FDA0003890890130000031
wherein theta is up For upper bound multiple pairs of polar angle values, θ down A plurality of pairs of polar angle values of a lower bound;
step three: the single-pair polar angle value theta after the sorting in the step two is processed 1 All divided by d, theta 1 Is selected from the range of [0, d ]]Is changed into [0,1]Multiplying the decimal fraction by the length of the interval length1, and using a rounding function command to carry out integer rounding on the decimal fraction, so that the unipolar polar angle value is mapped into the length1 interval; the concrete formula is as follows:
θ 1_length1_int (i)=FR(θ 1 (i)/d×length1) (6)
wherein theta is 1_length_int The value range of the single-antipodal angle value after the compression and the rounding is [0,length1 ]]FR is a rounding command, and the specific rounding mode is: take the integer less than and nearest to the current value, θ 1 Is a single-pair polar angle value, i is the number of data sampling points, and the value is [1,g']Length1 is the interval length value; the single-antipodal angle value theta after the compression is rounded 1_length1_int The difference calculation is carried out in such a way that,
θ 1_length1_int_err (i)=θ 1_length1_int (i+1)-θ 1_length1_int (i) (7)
θ 1_length1_int_err for the series of differences calculated, theta 1_length_int (i + 1) is the single-pole angle value, θ, rounded for the current compression 1_length_int (i) The single-antipodal angle value rounded for the last compression, i is the number of data sampling points, and the value is [1,g ]](ii) a Will be numbered in sequence theta 1_length1_int_err All the serial numbers of the numerical values larger than 0 are extracted and are independently made into a number sequence dis _ length1;
step four: taking the data values in the array dis _ length1 as the multiple pairs of polar angle values theta 2 Upper limit multiple pairs of polar anglesValue of theta up Lower bound multiple antipodal angle value theta down The sequence number in (1) is found out by the formula:
Figure FDA0003890890130000041
wherein theta is 2_tab Is an original boundless multi-pair polar angle value theta up_tab Is a standard upper bound multiple pair of polar angle values, θ down_tab A plurality of pairs of polar angle values are set as standard lower limits; delta is the number of data points in the sequence dis _ length1 and takes the value of [1, length1 h1](ii) a To theta 2_tab Original boundless multi-pair polar angle value theta up_tab Standard upper bound multiple pair of polar angle values, theta down_tab Dividing the polar angle values of multiple pairs of standard lower limits into regions according to theta 2_tab For example, the method specifically comprises the following steps:
when theta is measured 2_tab If the value is greater than 0 and less than 16384, defining the area as 0 area; when theta is 2_tab If the numerical value of (1) is 16384 or more and less than 32768, defining the region as a1 region; when theta is 2_tab When the numerical value of (1) is 32768 or more and is less than 49152, defining the region as a2 region; when theta is 2_tab When the numerical value of (1) is greater than or equal to 49152 and less than 65536, defining the region as a3 region; to theta up_tab 、θ down_tab Carrying out the same treatment;
to theta 2_tab 、θ up_tab 、θ down_tab Difference calculation is carried out respectively, still in theta 2_tab For example, the specific steps are as follows: using theta in sequence 2_tab The next data point in the sequence is subtracted from the previous data point to obtain a difference array theta 2_tab_cha If the data point value in the difference number sequence is less than-50000, adding 1 to the final original boundless multi-pair pole number until the pole number value is equal to the pole number k of the multi-pair magnetic steel; to theta up_tab 、θ down_tab Carrying out the same treatment;
step five: subdividing and amplifying the multiple pairs of polar angle values, wherein the specific formula is as follows:
θ fin =(p-1)×65535+θ 2 (9)
θ fin for subdividing the amplified multiple pairs of polar angle values, p is the number sequence of the poles obtained in the fourth step, and the value is [1, k ]](ii) a To theta fin Performing difference calculation, and defining data points with absolute values between 30000 and 70000 in the obtained difference values as jumping points;
step six: defining a function:
Y=TD(x) (10)
y is used as a record value of the number of jumping points, TD is a function of the execution process of the second step to the fifth step, and x is a limit value determined by a limit; setting a function formula (10) as a target function in the particle swarm optimization, wherein the core formula of the particle swarm optimization based on the dynamic inertia coefficient is as follows:
Figure FDA0003890890130000051
wherein c is 1 Is a self-learning factor, c 2 For group learning factor, w is an inertia factor, w max Is the maximum inertia factor, w min Is a minimum inertia factor, r 1 ,r 2 Is [0,1 ]]The random number is a particle operation step number, t is the operation time of each step, pbest (d) is a limit value found by an individual particle, gbest (d) is a limit value found by a group of particles, v (d) is the current velocity of the particles, v (d-1) is the previous velocity of the particles, x (d) is a limit value found by the particles at present, x (d-1) is a limit value found by the particles at the last time, iter is the current iteration number, and ger is the total iteration number; after iterative calculation, the limit value x of the limit determination which meets the condition that the number of the jumping points is 0 can be accurately found.
CN202211259247.6A 2022-10-14 2022-10-14 Novel encoder angle zero-crossing jump point suppression method and device based on particle swarm Active CN115876229B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211259247.6A CN115876229B (en) 2022-10-14 2022-10-14 Novel encoder angle zero-crossing jump point suppression method and device based on particle swarm

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211259247.6A CN115876229B (en) 2022-10-14 2022-10-14 Novel encoder angle zero-crossing jump point suppression method and device based on particle swarm

Publications (2)

Publication Number Publication Date
CN115876229A true CN115876229A (en) 2023-03-31
CN115876229B CN115876229B (en) 2023-06-20

Family

ID=85770404

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211259247.6A Active CN115876229B (en) 2022-10-14 2022-10-14 Novel encoder angle zero-crossing jump point suppression method and device based on particle swarm

Country Status (1)

Country Link
CN (1) CN115876229B (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008056756A1 (en) * 2006-11-10 2008-05-15 Uchiyama Manufacturing Corp. Diode magnetic encoder, and its manufacturing method
CN103954316A (en) * 2014-04-30 2014-07-30 湖南大学 Calibration method and device for angle encoder
JP2015078889A (en) * 2013-10-16 2015-04-23 Ntn株式会社 Magnetic encoder device and rotation detection device
CN105408725A (en) * 2013-07-16 2016-03-16 Ntn株式会社 Magnetic encoder device and rotation detection device
WO2018072351A1 (en) * 2016-10-20 2018-04-26 北京工业大学 Method for optimizing support vector machine on basis of particle swarm optimization algorithm
CN110298444A (en) * 2019-05-22 2019-10-01 东南大学 A method of it improves based on Hall effect magnetic coder output angle precision
CN111551194A (en) * 2020-05-20 2020-08-18 哈尔滨理工大学 Angle precision division method and device of multi-pair-electrode magnetoelectric encoder based on integer division judgment
CN111623807A (en) * 2020-06-08 2020-09-04 哈尔滨理工大学 Multi-pair-pole magnetoelectric encoder angle value redundancy output method and device

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008056756A1 (en) * 2006-11-10 2008-05-15 Uchiyama Manufacturing Corp. Diode magnetic encoder, and its manufacturing method
CN105408725A (en) * 2013-07-16 2016-03-16 Ntn株式会社 Magnetic encoder device and rotation detection device
JP2015078889A (en) * 2013-10-16 2015-04-23 Ntn株式会社 Magnetic encoder device and rotation detection device
CN103954316A (en) * 2014-04-30 2014-07-30 湖南大学 Calibration method and device for angle encoder
WO2018072351A1 (en) * 2016-10-20 2018-04-26 北京工业大学 Method for optimizing support vector machine on basis of particle swarm optimization algorithm
CN110298444A (en) * 2019-05-22 2019-10-01 东南大学 A method of it improves based on Hall effect magnetic coder output angle precision
CN111551194A (en) * 2020-05-20 2020-08-18 哈尔滨理工大学 Angle precision division method and device of multi-pair-electrode magnetoelectric encoder based on integer division judgment
CN111623807A (en) * 2020-06-08 2020-09-04 哈尔滨理工大学 Multi-pair-pole magnetoelectric encoder angle value redundancy output method and device

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
MING-SHYAN WANG ET.AL: "A simple approach to sensorless control for permanent magnet synchronous motors", 2012 4TH INTERNATIONAL CONFERENCE ON INTELLIGENT AND ADVANCED SYSTEMS *
王磊;吴殿昊;李玉强;张永德;潘巍;: "基于状态方程磁电编码器角度误差主动监督补偿方法研究", 仪器仪表学报, no. 06 *
王磊等: "有限角磁电编码器极值扇区间差值判断细分方法", 仪器仪表学报, vol. 41, no. 7 *
王磊等: "有限角磁电编码器角度虚拟补偿细分方法研究", 仪器仪表学报, vol. 39, no. 10 *

Also Published As

Publication number Publication date
CN115876229B (en) 2023-06-20

Similar Documents

Publication Publication Date Title
CN112362089B (en) Multi-pair-pole magnetoelectric encoder and high-resolution and high-reliability angle resolving method thereof
Caruso et al. A DSP-based resolver-to-digital converter for high-performance electrical drive applications
CN107560724B (en) Vibration signal analysis method
CN114858192B (en) double-Hall magnetoelectric encoder based on double-wheel structure and angle resolving method thereof
CN111551194B (en) Angle precision division method and device of multi-pair-electrode magnetoelectric encoder based on integer division judgment
CN111649766B (en) Method and device for actively suppressing noise of angle value of magnetoelectric encoder
CN108871181B (en) Dynamic multi-window interval prediction angle subdivision method for multi-pair-electrode magnetoelectric encoder
CN109150030B (en) Method for estimating position of rotor of switched reluctance motor
CN111721329B (en) three-Hall magnetoelectric encoder and arc-tangent-free calculation angle calculation method
CN108279381B (en) Fault diagnosis method for double three-phase permanent magnet synchronous motor driving system
CN115979312B (en) Electromagnetic encoder angle value jump point suppression method and device based on ant colony algorithm
CN111623807A (en) Multi-pair-pole magnetoelectric encoder angle value redundancy output method and device
CN111413646B (en) Real-time detection method for open-circuit fault of bridge arm of three-phase voltage source inverter
CN115876229A (en) Novel encoder angle zero-crossing jumping point suppression method and device based on particle swarm
CN111090001A (en) Residual current testing system and method
CN114329809A (en) Optimized modeling method and system for electro-magnetic doubly salient reluctance motor
CN211402532U (en) Residual current testing device
CN115473459A (en) Permanent magnet synchronous linear motor position detection method based on linear Hall
US20110140689A1 (en) Signal amplitude adjustment to improve resolver-to-digital converter performance
Mi et al. A Novel All-Digital Resolver-to-Digital Conversion System Based on Numerical Synchronous Integration
CN110567363A (en) angle detection device and detection method thereof
CN111578970B (en) Angle precision division method and device for multi-pair-electrode magnetoelectric encoder based on nucleic acid sequence comparison idea
CN118089796A (en) Angle value jump point suppression method based on spider wasp algorithm
CN115931014B (en) Double-multi-pair magneto-electric encoder and absolute angle value resolving method
Wang et al. Design of magnetic encoder based on reconstructing and mapping looking-up table

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