Method for determining angular position of motor rotor, electronic device and storage medium
Patent Information
- Application Number
- CN202111307184.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-11-05
- Publication Date
- 2026-11-03
- Estimated Expiration
- 2041-11-05
AI Technical Summary
Using the same number of Hall sensors as the reduction ratio to determine the angle of the motor rotor results in complex electronic equipment structure and wiring, high cost and low computational efficiency.
By acquiring the signals from Hall sensors and encoders during the rotation of the motor rotor, and matching the Hall signals and encoded signals using a pre-stored set of relationships, the angular position of the motor rotor is determined. The number of Hall sensors is less than the reduction ratio.
It reduces the structural and wiring complexity of electronic devices, saves on equipment manufacturing costs, and improves computing efficiency.
Smart Images

Figure CN116094375B_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of automatic control technology, specifically relating to a method for determining the angular position of a motor rotor, electronic equipment, and storage medium. Background Technology
[0002] Currently, electronic devices typically incorporate motors to achieve their driving functions. These motors output driving force through their output shafts, thus powering the components. For example, in self-moving robots, motors enable the device to move independently.
[0003] In order to control the operation of the motor, it is necessary to monitor the position of the motor. Summary of the Invention
[0004] The technical problems to be solved by this application include the complexity of the structure and wiring of electronic equipment when using Hall sensors of the same number as the reduction ratio to determine the angle of the motor rotor.
[0005] To solve the above-mentioned technical problems, this application provides a method for determining the angular position of a motor rotor, the method comprising:
[0006] Acquire the Hall signal collected by the Hall sensor and the encoded signal collected by the encoder during the rotation of the motor rotor;
[0007] The target sector where the motor rotor is located is determined based on the Hall signal; wherein, one revolution of the motor rotor includes multiple sectors, and different sectors correspond to different angular position ranges of the motor rotor.
[0008] The encoded signal and the Hall signal are matched with the relationship set corresponding to the target sector to obtain the angular position of the motor rotor; wherein, the relationship set includes a first relationship set of pre-stored correspondence between encoded signals and angular positions and a second relationship set of pre-stored correspondence between Hall signals and angular positions.
[0009] Optionally, each Hall sensor corresponds to a sector, and different Hall sensors correspond to different sectors. Determining the target sector where the motor rotor is located based on the Hall signal includes:
[0010] Identify the Hall signal with the largest signal value among the Hall signals;
[0011] The sector corresponding to the Hall sensor that acquires the Hall signal with the largest signal value is determined as the target sector.
[0012] Optionally, before determining the target sector where the motor rotor is located based on the Hall signal, the method further includes:
[0013] During the rotation of the motor rotor, the calibration Hall signals collected by each Hall sensor are acquired;
[0014] The sectors are divided based on the alternating positions of the calibrated Hall signals with the largest different signal values.
[0015] Optionally, the first relation set includes coded signals of at least one sub-sector within each sector, wherein the sub-sectors within each sector are divided based on the zero-crossing points of the coded signals within the sector;
[0016] The second relation set includes a combination of Hall signals collected by each Hall sensor at each motor position within each sector, the combination of which is monotonic within the sector.
[0017] Optionally, the step of matching the encoded signal and the Hall signal with the relation set corresponding to the target sector to obtain the angular position of the motor rotor includes:
[0018] Based on the first relation set, at least one target sub-sector within the target sector is determined, and within each target sub-sector, the coded signal that is closest to the coded signal acquired in this acquisition is determined;
[0019] When there are at least two target sub-sectors, calculate the current combination value of each Hall signal acquired in this transaction; determine the target combination value corresponding to the closest coded signal within the target sector based on the second relation set;
[0020] The position indicated by the target combination value that is closest to the current combination value is determined as the angular position of the motor rotor.
[0021] Optionally, when there are at least three target sub-sectors, determining the target combination value corresponding to the closest coded signal within the target sector based on the second relation set further includes:
[0022] Obtain the Hall signal with the largest signal value corresponding to each closest coded signal;
[0023] From the Hall signals with the largest signal values, identify the two target Hall signals that are closest to the Hall signal with the largest signal value acquired in this study.
[0024] The target combination value corresponding to each target Hall signal is determined based on the second relation set.
[0025] Optionally, when there is only one target sub-sector, the step of matching the encoded signal and the Hall signal with the relation set corresponding to the target sector to obtain the angular position of the motor rotor further includes:
[0026] The position indicated by the coded signal within the target sub-sector that is closest to the coded signal acquired in this study is determined as the angular position of the motor rotor.
[0027] Optionally, before matching the encoded signal and the Hall signal with the relation set corresponding to the target sector to obtain the angular position of the motor rotor, the method further includes:
[0028] During the rotation of the motor rotor, calibration Hall signals collected by each Hall sensor and calibration encoding signals collected by the encoder are acquired.
[0029] For each sector, the sub-sectors within the sector are determined based on the sector's start position, the zero-crossing point of the calibration coding signal within the sector, and the sector's end position, thus obtaining the first relation set corresponding to the sector;
[0030] For each sector, the combined value of each calibrated Hall signal at each position within the sector is calculated to obtain the second relation set corresponding to the sector.
[0031] On the other hand, this application also provides an electronic device, which includes a processor and a memory; the memory stores a program, which is loaded and executed by the processor to implement the above-described method for determining the angular position of the motor rotor.
[0032] On the other hand, this application also provides a computer-readable storage medium storing a program that, when executed by a processor, is used to implement the above-described method for determining the angular position of a motor rotor.
[0033] The technical solution provided in this application has the following advantages:
[0034] By acquiring Hall signals collected by Hall sensors and encoded signals collected by encoders during the rotation of the motor rotor, the target sector of the motor rotor is determined based on the Hall signals. The encoded signals and Hall signals are matched with the corresponding relationship sets of the target sector to obtain the angular position of the motor rotor. The relationship sets include a first relationship set of pre-stored correspondences between encoded signals and angular positions and a second relationship set of pre-stored correspondences between Hall signals and angular positions. This solves the problem of complex structure and wiring of electronic equipment when the number of Hall sensors required to determine the angle of the motor rotor is the same as the number of reduction ratios. By combining the Hall signals and encoded signals of each Hall sensor to determine the angle of the motor rotor, the number of Hall sensors does not need to be the same as the reduction ratio. This allows the motor angle and number of revolutions to be identified even if the number of Hall sensors is less than the preset reduction ratio, thus reducing the structural and wiring complexity of the electronic equipment.
[0035] Meanwhile, by setting a number of Hall sensors less than the reduction ratio, the angle and number of revolutions of the motor can be realized, which can solve the problem of high cost when using the same number of Hall sensors as the reduction ratio to determine the angle of the motor rotor. Since the number of Hall sensors used in this application is less than the reduction ratio, the equipment manufacturing cost can be saved.
[0036] Furthermore, since fewer Hall sensors result in fewer Hall signals being acquired, the amount of data that the electronic equipment needs to calculate is reduced. This solves the problem of low computational efficiency caused by the large amount of data required to determine the motor rotor angle when using the same number of Hall sensors as the reduction ratio. Because the number of Hall sensors used in this application is less than the reduction ratio, the amount of data that needs to be calculated is also reduced, thus improving computational efficiency. Attached Figure Description
[0037] To more clearly illustrate the technical solutions in the specific embodiments of this application or the prior art, the drawings used in the description of the specific embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.
[0038] Figure 1 This is a schematic diagram of the assembly method of a Hall sensor and encoder provided in one embodiment of this application;
[0039] Figure 2 This is a flowchart of a method for determining the angular position of a motor rotor according to an embodiment of this application;
[0040] Figure 3 This is a schematic diagram of a sector provided in one embodiment of this application;
[0041] Figure 4 This is a schematic diagram of sector division provided in one embodiment of this application;
[0042] Figure 5 This is a schematic diagram of sub-sector division provided in one embodiment of this application;
[0043] Figure 6 This is a schematic diagram illustrating the correspondence between Hall signals and rotor angles provided in one embodiment of this application;
[0044] Figure 7 This is a flowchart of a relation set calibration process provided in one embodiment of this application;
[0045] Figure 8 This is a flowchart of the process for determining the angular position of a motor rotor according to an embodiment of this application;
[0046] Figure 9 This is a block diagram of a motor rotor angular position determination device provided in one embodiment of this application;
[0047] Figure 10 This is a block diagram of an electronic device provided in one embodiment of this application. Detailed Implementation
[0048] The technical solutions of this application will now be clearly and completely described with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this application. The application will be described in detail below with reference to the accompanying drawings and embodiments. It should be noted that, unless otherwise specified, the embodiments and features in the embodiments of this application can be combined with each other.
[0049] It should be noted that the terms "first," "second," etc., in the specification, claims, and drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence.
[0050] In this application, unless otherwise stated, directional terms such as "upper," "lower," "top," and "bottom" are generally used in relation to the direction shown in the accompanying drawings, or in relation to the vertical, perpendicular, or gravitational direction of the component itself; similarly, for ease of understanding and description, "inner" and "outer" refer to the inner and outer contours of each component itself, but the above directional terms are not intended to limit this application.
[0051] Traditional electronic devices, such as legged robots and robotic vacuum cleaners, are equipped with motors to drive their movement. To ensure precise movement, the angle of the motor rotor needs to be identified. For example, in a quadruped robot with intelligent control, the motor, as a key actuator on the legs, requires precise knowledge of the angle of each joint motor during power-on and operation to control the motor's movement and achieve stable walking and posture adjustment for the quadruped robot.
[0052] In other embodiments, the motor can also be used to drive a component in an electronic device, such as driving the cleaning mechanism on a sweeper. This embodiment does not limit the application scenario of the motor.
[0053] To achieve motor turn counting and angle recognition, electronic devices typically incorporate encoders and Hall effect sensors. The assembly method for encoders and Hall effect sensors is described in the following reference. Figure 1 As shown. A reduction mechanism (not shown in the figure), a low-speed rotation mechanism 11, a high-speed rotation mechanism 12, and a sensing mechanism 13 are connected sequentially in the axial direction of the motor.
[0054] A speed reduction mechanism is used to reduce the rotational speed of a motor at a preset reduction ratio. For example, reducing the motor's rotational speed at a reduction ratio of 9:1. Illustratively, the speed reduction mechanism can be a gearbox.
[0055] The low-speed rotating mechanism 11 is connected to the output end of the reduction mechanism, so that the output end of the reduction mechanism drives the low-speed rotating mechanism 11 to rotate at a reduced speed. A low-speed end magnetic component 111 is installed on the low-speed rotating mechanism 11. At this time, the low-speed end magnetic component 111 can also rotate at a reduced speed under the drive of the low-speed rotating mechanism 11.
[0056] The low-speed end magnetic component 111 can be a magnet, which can be bar-shaped or circular. This embodiment does not limit the implementation method of the low-speed end magnetic component 111.
[0057] The high-speed rotating mechanism 12 is connected to the output end of the motor, so that the output end of the motor drives the high-speed rotating mechanism 12 to rotate at the speed output by the motor. A high-speed magnetic component 121 is installed on the high-speed rotating mechanism 12. At this time, the high-speed magnetic component 121 can also rotate at the speed output by the motor under the drive of the high-speed rotating mechanism 12.
[0058] The high-speed magnetic component 121 can be a magnet, which can be bar-shaped or circular. This embodiment does not limit the implementation of the high-speed magnetic component 121.
[0059] The position of the sensing mechanism 13 remains fixed. That is, the sensing mechanism 13 does not rotate with the rotation of the motor. An encoder 131 and a Hall sensor 132 are mounted on the sensing mechanism 13. The encoder 131 is used to sense the magnetic signal of the high-speed end magnetic component 121 to count the number of rotations of the motor.
[0060] There is one encoder 131. Each time the high-speed magnetic component 121 is opposite to the encoder 131, the encoder 131 outputs a counting signal, that is, the number of rotations of the motor is incremented by 1.
[0061] Since the encoder 131 can only identify the number of rotations of the motor, but not the angle of the motor, the angle of the motor is located by sensing the magnetic signal of the low-speed magnetic component 111 through the Hall sensor 132.
[0062] In traditional electronic devices, the number of Hall sensors 132 is the same as the preset reduction ratio. For example, if the preset reduction ratio is 9:1, then there are 9 Hall sensors 132. In this way, the current angle of the motor can be determined based on the Hall sensor 132 with the highest Hall value.
[0063] However, as the preset reduction ratio increases, the number of Hall sensors 132 also needs to increase accordingly. Simultaneously, the number of processor pins connected to the Hall sensors 132 in the electronic device also needs to increase, leading to a more complex structure and wiring for the electronic device. Furthermore, a larger number of Hall sensors 132 will increase the manufacturing cost of the device and the amount of data the electronic device needs to process.
[0064] To address the aforementioned technical issues, this application provides a method for determining the angular position of a motor rotor. This method can identify the motor's angle and number of revolutions even when the number of Hall sensors 132 is less than a preset reduction ratio. It reduces the structural and wiring complexity of electronic equipment, lowers manufacturing costs, and reduces the amount of data required for computation. The method for determining the angular position of the motor rotor is described below.
[0065] In this application, the execution subject of each embodiment is described as an electronic device equipped with a motor. In actual implementation, the execution subject can also be other devices that are communicatively connected to the electronic device. This embodiment does not limit the execution subject of each embodiment.
[0066] Figure 2 This is a flowchart of a method for determining the angular position of a motor rotor according to an embodiment of this application. The method includes at least the following steps:
[0067] Step 201: Acquire the Hall signal collected by the Hall sensor and the encoded signal collected by the encoder during the rotation of the motor rotor.
[0068] The number of Hall sensors is at least two. Optionally, the number of Hall sensors is less than the reduction ratio of the motor.
[0069] Step 202: Determine the target sector where the motor rotor is located based on the Hall signal; wherein, one revolution of the motor rotor includes multiple sectors, and different sectors correspond to different angular position ranges of the motor rotor.
[0070] A sector refers to the sensing range of a Hall sensor; different sectors may or may not intersect. Optionally, each Hall sensor corresponds to one sector, and different Hall sensors correspond to different sectors, for example: [reference]. Figure 3 As shown, there are 6 Hall sensors, and each Hall sensor corresponds to a sector 31.
[0071] Optionally, the sector division method is pre-stored in the electronic device. This division method can be manually entered or automatically determined by the electronic device.
[0072] In this embodiment, taking the automatic calibration of sectors of electronic devices as an example, before determining the target sector where the motor rotor is located based on the Hall signal, the method further includes: acquiring the calibration Hall signals collected by each Hall sensor during the rotation of the motor rotor; and dividing the sector based on the alternating positions of the calibration Hall signals with the largest different signal values.
[0073] The process of dividing sectors based on the alternating positions of the calibration Hall signals with the largest signal values includes: detecting whether the calibration Hall signal with the largest signal value has changed; if it has changed, determining the previous position as the end position of the sector of the Hall sensor corresponding to the calibration Hall signal before the change, and the current position as the start position of the sector of the Hall sensor corresponding to the calibration Hall signal after the change; if it has not changed, determining the current position as being within the sector of the Hall sensor corresponding to the calibration Hall signal.
[0074] For example: Reference Figure 4 The diagram shows the calibrated Hall signals collected by each Hall sensor during the motor's rotation. Figure 4 The example uses six Hall sensors; the calibration Hall signals collected by different Hall sensors are represented by different curve types. According to... Figure 4 It can be seen that the sectors are divided by the alternating points of the different calibrated Hall signals with the largest signal values, resulting in sectors 41 corresponding to the 6 Hall sensors.
[0075] Determining the target sector of the motor rotor based on the Hall signal includes: identifying the Hall signal with the largest signal value; and determining the sector corresponding to the Hall sensor that acquires the Hall signal with the largest signal value as the target sector.
[0076] according to Figure 4 It is known that at the same location, multiple Hall sensors may simultaneously collect Hall signals, but only the Hall sensor closer to the magnet will collect the largest Hall signal value. Based on this, by identifying the Hall signal with the largest signal value, the sector indicated by the Hall sensor corresponding to the Hall signal with the largest signal value can be determined.
[0077] In addition, according to Figure 4 As can be seen, the Hall signal has saturation characteristics, please refer to the following for details. Figure 4 In this model, the highest point of the Hall signal within each sector represents a continuous and smooth segment of Hall signal. At this point, relying solely on the Hall signal is insufficient to accurately determine the motor rotor's position. Therefore, in this embodiment, the motor rotor's position can be further determined using other Hall signals and coded signals.
[0078] Step 203: Match the encoded signal and the Hall signal with the corresponding relationship set of the target sector to obtain the angular position of the motor rotor; wherein, the relationship set includes a first relationship set of pre-stored correspondence between encoded signals and angular positions and a second relationship set of pre-stored correspondence between Hall signals and angular positions.
[0079] Schematic, the first relation set includes coded signals from at least one sub-sector within each sector, with the sub-sectors within each sector divided based on the zero-crossing points of the coded signals within the sector. The second relation set includes a combined value of Hall signals acquired by individual Hall sensors at each motor position within each sector, the combined value being monotonic within the sector.
[0080] Accordingly, before matching the encoded signal and Hall signal with the relation set corresponding to the target sector to obtain the angular position of the motor rotor, it is necessary to obtain the first relation set and the second relation set.
[0081] The electronic device acquires the first and second relation sets in the following ways: during the rotation of the motor rotor, it acquires the calibration Hall signals collected by each Hall sensor and the calibration encoding signals collected by the encoder; for each sector, it determines each sub-sector within the sector based on the sector's starting position, the zero-crossing point of the calibration encoding signals within the sector, and the sector's ending position, thereby obtaining the first relation set corresponding to the sector; for each sector, it calculates the combined value of each calibration Hall signal at each position within the sector, thereby obtaining the second relation set corresponding to the sector.
[0082] For example: Reference Figure 5 During the rotation of the motor shown, the calibration Hall signals collected by each Hall sensor and the calibration encoding signals collected by the encoder are analyzed. For sector 51, the zero-crossing point 52 of the calibration encoding signal within sector 51 is used as the dividing point to obtain two sub-sectors 53 and 54. Simultaneously, for each sector, the combined values of the calibration Hall signals at various positions within that sector are calculated to obtain the second relation set.
[0083] The combined value of each calibration Hall signal can be a linear combination value or a nonlinear combination value. It is only necessary to ensure that the combined value of each calibration Hall signal is monotonic within the corresponding sector. This embodiment does not limit the calculation method of the combined value.
[0084] After obtaining the first relation set and the second relation set, the coded signal and the Hall signal are matched with the relation set corresponding to the target sector to obtain the angular position of the motor rotor. This includes: determining at least one target sub-sector within the target sector based on the first relation set, and determining the coded signal closest to the coded signal acquired in this acquisition within each target sub-sector; calculating the current combination value of each Hall signal acquired in this acquisition when there are at least two target sub-sectors; determining the target combination value corresponding to the closest coded signal within the target sector based on the second relation set; and determining the position indicated by the target combination value closest to the current combination value as the angular position of the motor rotor.
[0085] The target sub-sectors within the target sector include the following two cases:
[0086] The first type: The target sub-sector is one. According to... Figure 5 It is known that the encoded signal is monotonic within each sub-sector. Therefore, the angular position of the motor rotor can be determined based on the target sub-sector. Specifically, the encoded signal and the Hall signal are matched with the relationship set corresponding to the target sector to obtain the angular position of the motor rotor. This includes determining the position indicated by the encoded signal within the target sub-sector that is closest to the encoded signal acquired in this study as the angular position of the motor rotor.
[0087] The second scenario: There are two target sub-sectors. In this case, according to... Figure 5 It is known that each target sub-sector may have a closest coded signal, meaning the number of closest coded signals may be two. Furthermore, the combination values of Hall signals within a sector are monotonic. Therefore, in this embodiment, when there are at least two target sub-sectors, the current combination value of each Hall signal acquired this time is calculated, and the target combination value closest to the current combination value is determined from the target combination values corresponding to the closest coded signals. The position indicated by this closest target combination value is the angular position of the motor rotor.
[0088] The third type: The target sub-sector has at least three sectors. In this case, according to... Figure 5 It is known that each target sub-sector may have a closest coded signal, meaning the number of closest coded signals may be at least three. In this case, the electronic device can determine the target combination value closest to the current combination value from the target combination values corresponding to the at least three closest coded signals. Alternatively, the electronic device can first determine two of the at least three closest coded signals, and then determine the target combination value closest to the current combination value from the target combination values corresponding to the two closest coded signals.
[0089] For the latter approach, determining the target combination value corresponding to the closest coded signal within the target sector based on the second relation set further includes: obtaining the Hall signal with the largest signal value corresponding to each closest coded signal; determining the two target Hall signals that are closest to the Hall signal with the largest signal value acquired in this study from among the Hall signals with the largest signal values; and determining the target combination value corresponding to each target Hall signal based on the second relation set.
[0090] It should be noted that the above example of determining the closest coded signal first and then the target combination value can be used as an example in actual implementation. Alternatively, when determining two coded signals from at least three closest coded signals, the two closest target combination values can be determined first, and then the target Hall signal that is closest to the Hall signal with the largest current signal value can be selected from the Hall signals with the largest signal value corresponding to the two target combination values. This embodiment does not limit the order of selection of each value.
[0091] refer to Figure 6 ,according to Figure 6 It can be seen that even with a reduction ratio of 9:1, and although the number of Hall sensors is less than 6 (less than the reduction ratio), different angle recognition results corresponding to different electronic rotor positions can still be guaranteed, ensuring the accuracy of the motor rotor's angle position. Furthermore, the motor rotor's angle recognition result changes smoothly with the motor's rotation, without sharp points or non-monotonic intervals, demonstrating the feasibility and stability of the method provided in this embodiment for determining the rotor's angle position.
[0092] In summary, the method for determining the angular position of a motor rotor provided in this embodiment acquires Hall signals collected by Hall sensors and encoded signals collected by encoders during the rotation of the motor rotor; determines the target sector where the motor rotor is located based on the Hall signals; and matches the encoded signals and Hall signals with the corresponding relationship sets of the target sector to obtain the angular position of the motor rotor. The relationship sets include a first relationship set of pre-stored correspondences between encoded signals and angular positions, and a second relationship set of pre-stored correspondences between Hall signals and angular positions. This method solves the problem of complex structure and wiring of electronic equipment when the number of Hall sensors required to determine the motor rotor angle is the same as the number of reduction ratios. By combining the Hall signals and encoded signals of each Hall sensor to determine the motor rotor angle, it does not require the number of Hall sensors to be the same as the reduction ratio. This allows for the identification of the motor angle and number of revolutions even if the number of Hall sensors is less than the preset reduction ratio, thus reducing the structural and wiring complexity of the electronic equipment.
[0093] Meanwhile, by setting a number of Hall sensors less than the reduction ratio, the angle and number of revolutions of the motor can be realized, which can solve the problem of high cost when using the same number of Hall sensors as the reduction ratio to determine the angle of the motor rotor. Since the number of Hall sensors used in this application is less than the reduction ratio, the equipment manufacturing cost can be saved.
[0094] Furthermore, since fewer Hall sensors result in fewer Hall signals being acquired, the amount of data that the electronic equipment needs to calculate is reduced. This solves the problem of low computational efficiency caused by the large amount of data required to determine the motor rotor angle when using the same number of Hall sensors as the reduction ratio. Because the number of Hall sensors used in this application is less than the reduction ratio, the amount of data that needs to be calculated is also reduced, thus improving computational efficiency.
[0095] To better understand the method for determining the angular position of the motor rotor provided in this application, an example is given below to illustrate the calibration process of the target sector, the first relation set, and the second relation set, as well as the identification process of the angular position.
[0096] refer to Figure 7 The flowchart shown is based on the calibration process. Figure 7 It can be seen that the calibration process includes at least the following steps:
[0097] Step 71, start the motor;
[0098] Step 72: Acquire the calibration Hall signals collected by each Hall sensor and the calibration encoding signals collected by the encoder;
[0099] Step 73: Determine whether the Hall sensor that acquires the current largest calibrated Hall signal has changed; if yes, proceed to step 74; if no, proceed to step 73 again.
[0100] Step 74: Divide the Hall sensor into sectors based on the changed position, and record the calibration Hall signal with the largest signal value in the sector, the combined value of the remaining calibration Hall signals, the value of the calibration code signal, and the zero-crossing point of the calibration code signal; wherein, the combined value of the remaining calibration Hall signals constitutes the second relation set of the sector, and the value of the calibration code signal and the zero-crossing point of the calibration code signal constitute the first relation set of the sector.
[0101] Step 75: Determine if the number of sectors is equal to the number of Hall sensors; if they are equal, the process ends; if they are not equal, execute step 73 again.
[0102] As can be seen from the above calibration process, the sector where the rotor is located can be determined based on the Hall signal with the largest signal value, and the exact position of the rotor within the sector can be determined based on the first relation set and / or the second relation set.
[0103] Optionally, the calibration process described above can be performed once every time the motor starts, or once after a preset usage period. Since the performance of the magnet, Hall sensor, and encoder may change as the motor's usage time increases, calculating the rotor's angular position based on the original first and second relation sets may not be accurate enough. In this embodiment, by performing the calibration process once every time the motor starts, or once after a preset usage period, it can be ensured that the first and second relation sets are updated in a timely manner, further guaranteeing the accuracy of identifying the rotor's angular position.
[0104] In other embodiments, the calibration process may also be performed only when the motor is first started. This embodiment does not limit the timing of the calibration process.
[0105] refer to Figure 8 The flowchart shown is based on the calibration process. Figure 8 It can be seen that the rotor angle position identification process includes at least the following steps:
[0106] Step 81: After starting the motor, read the Hall signals collected by each Hall sensor and the encoded signals collected by the encoder.
[0107] Optionally, the motor starting in this step may be the same motor starting process as the motor starting in step 71; or it may be a different starting process than the motor starting in step 71. This embodiment does not limit the implementation method of starting the motor.
[0108] Step 82: Use the Hall signal with the largest value acquired this time to determine the target sector where the rotor is located, and use the binary search method to find the coded signal that is closest to the coded signal acquired this time in each target sub-sector of the target sector, to obtain n closest coded signals; n is a positive integer greater than 1.
[0109] Step 83: Compare the calibration Hall signal with the largest signal value corresponding to the n closest coded signals with the Hall signal with the largest signal value acquired this time, and obtain the two calibration Hall signals with the smallest error;
[0110] Step 84: Compare the determined calibration combination values of the two calibration Hall signals with the combination values of the Hall signals acquired in this study to obtain the calibration combination value with the smallest error.
[0111] Step 85: Based on the calibration combination value with the smallest error, reverse lookup is performed to determine the angular position of the motor rotor.
[0112] The data search order in this example is only illustrative. In actual implementation, you can first search for the calibration combination value with the smallest error, and then search for the calibration Hall signal with the smallest error. This application does not limit the data search order.
[0113] In this embodiment, the angle of the motor rotor is determined by combining the Hall signals and coded signals of each Hall sensor. It is not required that the number of Hall sensors be the same as the reduction ratio. Even if the number of Hall sensors is less than the preset reduction ratio, the angle and number of revolutions of the motor can still be identified, which can reduce the structural and wiring complexity of the electronic equipment.
[0114] Figure 9 This is a block diagram of a motor rotor angular position determination device according to an embodiment of this application. The device includes at least the following modules: a signal acquisition module 910, a sector determination module 920, and a position determination module 930.
[0115] The signal acquisition module 910 is used to acquire the Hall signal collected by the Hall sensor and the coded signal collected by the encoder during the rotation of the motor rotor.
[0116] The sector determination module 920 is used to determine the target sector where the motor rotor is located based on the Hall signal; wherein, one circumference of the motor rotor includes multiple sectors, and different sectors correspond to different angular position ranges of the motor rotor.
[0117] The position determination module 930 is used to match the encoded signal and the Hall signal with the relationship set corresponding to the target sector to obtain the angular position of the motor rotor; wherein, the relationship set includes a first relationship set of pre-stored correspondence between encoded signals and angular positions and a second relationship set of pre-stored correspondence between Hall signals and angular positions.
[0118] For relevant details, please refer to the above method implementation examples.
[0119] It should be noted that the motor rotor angle position determination device provided in the above embodiments is only illustrated by the division of the above functional modules. In practical applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the motor rotor angle position determination device can be divided into different functional modules to complete all or part of the functions described above. Furthermore, the motor rotor angle position determination device and the motor rotor angle position determination method embodiments provided in the above embodiments belong to the same concept, and their specific implementation process is detailed in the method embodiments, which will not be repeated here.
[0120] Figure 10 This is a block diagram of an electronic device provided in one embodiment of this application. The device may be... Figure 1The electronic device includes at least a processor 1001 and a memory 1002.
[0121] Processor 1001 may include one or more processing cores, such as a quad-core processor, an octa-core processor, etc. Processor 1001 may be implemented using at least one hardware form selected from DSP (Digital Signal Processing), FPGA (Field-Programmable Gate Array), and PLA (Programmable Logic Array). Processor 1001 may also include a main processor and a coprocessor. The main processor, also known as a CPU (Central Processing Unit), is used to process data in the wake-up state; the coprocessor is a low-power processor used to process data in the standby state. In some embodiments, processor 1001 may integrate a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content to be displayed on the screen. In some embodiments, processor 1001 may also include an AI (Artificial Intelligence) processor, which is used to handle computational operations related to machine learning.
[0122] The memory 1002 may include one or more computer-readable storage media, which may be non-transitory. The memory 1002 may also include high-speed random access memory and non-volatile memory, such as one or more disk storage devices or flash memory devices. In some embodiments, the non-transitory computer-readable storage media in the memory 1002 is used to store at least one instruction, which is executed by the processor 1001 to implement the motor rotor angular position determination method provided in the method embodiments of this application.
[0123] In some embodiments, the external parameter calibration device may optionally include: a peripheral device interface and at least one peripheral device. The processor 1001, memory 1002, and peripheral device interface can be connected via a bus or signal line. Each peripheral device can be connected to the peripheral device interface via a bus, signal line, or circuit board. Indicatively, peripheral devices include, but are not limited to: radio frequency circuits, touch displays, audio circuits, and power supplies.
[0124] Of course, the external parameter calibration device may include fewer or more components, and this embodiment does not limit this.
[0125] Optionally, this application also provides a computer-readable storage medium storing a program that is loaded and executed by a processor to implement the motor rotor angular position determination method of the above method embodiments.
[0126] Optionally, this application also provides a computer product including a computer-readable storage medium storing a program that is loaded and executed by a processor to implement the motor rotor angular position determination method of the above method embodiments.
[0127] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.
[0128] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the invention patent. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this patent application should be determined by the appended claims.
[0129] Obviously, the embodiments described above are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, those skilled in the art can make other variations or modifications without creative effort, and all such variations or modifications should fall within the scope of protection of this application.
Claims
1. A method for determining the angular position of a motor rotor, characterized in that, The method includes: Acquire the Hall signal collected by the Hall sensor and the encoded signal collected by the encoder during the rotation of the motor rotor; The target sector where the motor rotor is located is determined based on the Hall signal; wherein, one revolution of the motor rotor includes multiple sectors, and different sectors correspond to different angular position ranges of the motor rotor. The encoded signal and the Hall signal are matched with the relationship set corresponding to the target sector to obtain the angular position of the motor rotor; wherein, the relationship set includes a first relationship set of pre-stored correspondence between encoded signals and angular positions and a second relationship set of pre-stored correspondence between Hall signals and angular positions; The first relation set includes coded signals of at least one sub-sector within each sector, wherein the sub-sectors within each sector are divided based on the zero-crossing points of the coded signals within the sector; The second relation set includes a combination of Hall signals collected by each Hall sensor at each motor position within each sector, the combination of which is monotonic within the sector.
2. The method according to claim 1, characterized in that, Each Hall sensor corresponds to a sector, and different Hall sensors correspond to different sectors. Determining the target sector where the motor rotor is located based on the Hall signal includes: Identify the Hall signal with the largest signal value among the Hall signals; The sector corresponding to the Hall sensor that acquires the Hall signal with the largest signal value is determined as the target sector.
3. The method according to claim 2, characterized in that, Before determining the target sector where the motor rotor is located based on the Hall signal, the method further includes: During the rotation of the motor rotor, the calibration Hall signals collected by each Hall sensor are acquired; The sectors are divided based on the alternating positions of the calibrated Hall signals with the largest different signal values.
4. The method according to claim 1, characterized in that, The step of matching the encoded signal and the Hall signal with the relation set corresponding to the target sector to obtain the angular position of the motor rotor includes: Based on the first relation set, at least one target sub-sector within the target sector is determined, and within each target sub-sector, the coded signal that is closest to the coded signal acquired in this acquisition is determined; When there are at least two target sub-sectors, calculate the current combination value of each Hall signal acquired in this transaction; determine the target combination value corresponding to the closest coded signal within the target sector based on the second relation set; The position indicated by the target combination value that is closest to the current combination value is determined as the angular position of the motor rotor.
5. The method according to claim 4, characterized in that, When there are at least three target sub-sectors, determining the target combination value corresponding to the closest coded signal within the target sector based on the second relation set further includes: Obtain the Hall signal with the largest signal value corresponding to each closest coded signal; From the Hall signals with the largest signal values, identify the two target Hall signals that are closest to the Hall signal with the largest signal value acquired in this study. The target combination value corresponding to each target Hall signal is determined based on the second relation set.
6. The method according to claim 4, characterized in that, When there is only one target sub-sector, the step of matching the encoded signal and the Hall signal with the relation set corresponding to the target sector to obtain the angular position of the motor rotor further includes: The position indicated by the coded signal within the target sub-sector that is closest to the coded signal acquired in this study is determined as the angular position of the motor rotor.
7. The method according to any one of claims 1 to 6, characterized in that, Before matching the encoded signal and the Hall signal with the relation set corresponding to the target sector to obtain the angular position of the motor rotor, the method further includes: During the rotation of the motor rotor, calibration Hall signals collected by each Hall sensor and calibration encoding signals collected by the encoder are acquired. For each sector, the sub-sectors within the sector are determined based on the sector's start position, the zero-crossing point of the calibration coding signal within the sector, and the sector's end position, thus obtaining the first relation set corresponding to the sector; For each sector, the combined value of each calibrated Hall signal at each position within the sector is calculated to obtain the second relation set corresponding to the sector.
8. An electronic device, characterized in that, The device includes a processor and a memory; the memory stores a program that is loaded and executed by the processor to implement the method for determining the angular position of the motor rotor as described in any one of claims 1 to 7.
9. A computer-readable storage medium, characterized in that, The storage medium stores a program that, when executed by a processor, is used to implement the method for determining the angular position of the motor rotor as described in any one of claims 1 to 7.
Citation Information
Patent Citations
System and method for rapid engine start
CN109591820A
