Motor zero angle calibration system, method, device and storage medium
By acquiring the motor's zero-position angle through the motor controller and position sensor, and combining the preset number of calibrations and the results of each calibration, the target zero-position angle is determined and written, which solves the problem of inaccurate motor zero-position angle calibration and improves the performance of the new energy vehicle drive system.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- CHERY NEW ENERGY AUTOMOBILE TECH CO LTD
- Filing Date
- 2023-02-21
- Publication Date
- 2026-06-02
AI Technical Summary
How to accurately calibrate the zero-position angle of the motor to improve the performance of the drive system of new energy vehicles, especially in terms of power, economy and comfort.
By combining the motor controller and the position sensor, the first zero position angle when the DC component of the current on the direct axis reaches the preset value is obtained, and the target zero position angle is determined based on the preset number of calibrations and the zero position angle obtained in each calibration, and finally written into the motor controller.
Precisely determining the motor's zero-position angle improves the performance of the drive system.
Smart Images

Figure CN115955164B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of vehicle technology, and in particular to a motor zero-position angle calibration system, method, device and storage medium. Background Technology
[0002] In recent years, sales of new energy vehicles have surged, and their market share has steadily increased. Regarding power sources, the power of new energy vehicles comes from their drive systems. Typically, the performance of a drive system depends on the calibration of the motor's zero-position angle. The motor's zero-position angle refers to the deviation between the zero-point position of the motor rotor and the zero-point position of the rotary transformer rotor. Practice has proven that the performance of the drive system directly impacts the power, economy, and comfort of new energy vehicles. Therefore, accurately calibrating the motor's zero-position angle to improve drive system performance is a pressing issue in this field. Summary of the Invention
[0003] This application provides a motor zero-position angle calibration system, method, device, and storage medium, which can accurately calibrate the motor zero-position angle, thereby improving the performance of the drive system. The technical solution is as follows:
[0004] On the one hand, a motor zero-position angle calibration system is provided, the system comprising: calibration equipment and motor controller;
[0005] The motor controller is electrically connected to the calibration device and the motor respectively, and the motor is equipped with a position sensor;
[0006] The calibration device is used to send a first control command to the motor controller, the first control command being used to instruct the motor controller to adjust its operating mode to calibration mode;
[0007] The motor controller is configured, in the calibration mode, to set the DC component of the current output by the motor on the direct axis to a first preset value.
[0008] The motor controller is further configured to adjust the DC component of the current on the direct axis based on a first preset step size until the DC component of the current on the direct axis reaches a second preset value; obtain a first zero-position angle through the position sensor and send the first zero-position angle to the calibration device; wherein, the first zero-position angle is obtained when the DC component of the current on the direct axis reaches the second preset value;
[0009] The calibration device is also used to determine the current number of calibrations of the motor. When the number of calibrations reaches a preset number of calibrations, a target zero azimuth angle is determined based on the preset number of calibrations and the first zero azimuth angle obtained in each calibration. The target zero azimuth angle is then written into the motor controller.
[0010] In one possible implementation, the calibration device is further configured to send a second control command to the motor controller when the number of calibrations has not reached the preset number of calibrations; wherein the second control command is configured to instruct the motor controller to control the motor to rotate a first angle;
[0011] The motor controller is further configured to send a first notification message to the calibration device after the motor rotates the first angle;
[0012] The calibration device is further configured to send a third control command to the motor controller based on the first notification message; wherein the third control command is configured to control the motor controller to adjust its operating mode to a detection mode;
[0013] The motor controller is further configured to, in the detection mode, execute the step of configuring the DC component of the current output by the motor on the direct axis to a first preset value until a stop command is received; wherein the stop command is sent by the calibration device when the number of calibrations reaches the preset number of calibrations.
[0014] In another possible implementation, the system further includes: a dynamometer system;
[0015] The dynamometer system is electrically connected to the calibration equipment and the motor, respectively;
[0016] The dynamometer system is used to test the first torque corresponding to the motor at multiple speeds and send multiple first torques to the calibration equipment.
[0017] The calibration device is also used to send a fourth control command to the motor controller, the fourth control command being used to instruct the motor controller to adjust the operating mode to the verification mode;
[0018] The motor controller is further configured to determine the second torque of the motor at the plurality of speeds in the verification mode, and send the plurality of second torques to the calibration device;
[0019] The calibration device is also used to determine the verification result based on the plurality of first torques and the plurality of second torques.
[0020] In another possible implementation, the dynamometer system includes: a dynamometer;
[0021] The dynamometer system is used to configure the dynamometer speed to a first speed in speed mode, drive the motor to operate at the first speed through the dynamometer; and obtain the first torque of the motor at the first speed.
[0022] The dynamometer system is also used to adjust the rotational speed of the dynamometer based on a second preset step size until the rotational speed of the dynamometer reaches a preset speed; and to obtain the first torque corresponding to each speed during the speed adjustment process.
[0023] In another possible implementation, the calibration device is further configured to determine the difference between the first torque and the second torque corresponding to each rotational speed, thereby obtaining multiple differences; and to determine the verification result of the target zero-position angle based on the multiple differences.
[0024] In another possible implementation, the calibration device is further configured to: determine that the target zero azimuth angle passes verification if each of the plurality of differences is not greater than a preset difference; and re-determine the target zero azimuth angle if any of the plurality of differences is greater than the preset difference; or...
[0025] The calibration device is further used to determine a target ratio, which is the proportion of the number of differences that are not greater than the preset difference; if the target ratio is not less than the preset ratio, the target zero azimuth angle is determined to have passed verification; if the target ratio is less than the preset ratio, the target zero azimuth angle is re-determined.
[0026] In another possible implementation, the calibration device is further configured to determine the sum of the first zero-position angles acquired during each calibration, determine the ratio of the sum to the preset number of calibrations, and determine the ratio as the target zero-position angle; or,
[0027] The calibration device is further configured to delete the maximum and minimum values in the first zero azimuth angle of the preset calibration number, and determine the target zero azimuth angle based on the remaining first zero azimuth angle and the preset calibration number.
[0028] On the other hand, a method for calibrating the zero-position angle of a motor is provided, the method comprising:
[0029] The calibration device sends a first control command to the motor controller, the first control command being used to instruct the motor controller to adjust the operating mode to calibration mode;
[0030] In the calibration mode, the motor controller configures the DC component of the current output by the motor on the direct axis to a first preset value.
[0031] The motor controller adjusts the DC component of the current on the direct axis based on a first preset step size until the DC component of the current on the direct axis reaches a second preset value; it obtains a first zero-position angle through a position sensor and sends the first zero-position angle to the calibration device; wherein, the first zero-position angle is obtained when the DC component of the current on the direct axis reaches the second preset value;
[0032] The calibration device determines the current number of calibrations for the motor. When the number of calibrations reaches a preset number, a target zero-position angle is determined based on the preset number of calibrations and the first zero-position angle obtained in each calibration. The target zero-position angle is then written into the motor controller.
[0033] In one possible implementation, the method further includes:
[0034] When the number of calibrations does not reach the preset number of calibrations, the calibration device sends a second control command to the motor controller; wherein, the second control command is used to instruct the motor controller to control the motor to rotate a first angle;
[0035] After the motor rotates the first angle, the motor controller sends a first notification message to the calibration device;
[0036] Based on the first notification message, the calibration device sends a third control command to the motor controller; wherein the third control command is used to control the motor controller to adjust the working mode to the detection mode;
[0037] In the detection mode, the motor controller executes the step of configuring the DC component of the current output by the motor on the direct axis to a first preset value until a stop command is received; wherein, the stop command is sent by the calibration device when the number of calibrations reaches the preset number of calibrations.
[0038] In another possible implementation, the method further includes:
[0039] The dynamometer system tests the first torque corresponding to the motor at multiple speeds and sends multiple first torques to the calibration device;
[0040] The calibration device sends a fourth control command to the motor controller, the fourth control command being used to instruct the motor controller to adjust the operating mode to the verification mode;
[0041] In the verification mode, the motor controller determines the second torque of the motor at the multiple speeds and sends the multiple second torques to the calibration device.
[0042] The calibration device determines the verification result based on the plurality of first torques and the plurality of second torques.
[0043] In another possible implementation, the dynamometer system tests the first torque of the motor at multiple speeds, including:
[0044] In speed mode, the dynamometer system configures the dynamometer's speed to a first speed, and drives the motor to operate at the first speed; and obtains the first torque corresponding to the motor at the first speed.
[0045] The dynamometer system adjusts the rotational speed of the dynamometer based on a second preset step size until the rotational speed of the dynamometer reaches the preset speed; and obtains the first torque corresponding to each speed during the speed adjustment process.
[0046] In another possible implementation, the calibration device determines the verification result based on the plurality of first torques and the plurality of second torques, including:
[0047] The calibration device determines the difference between the first torque and the second torque corresponding to each rotational speed, obtaining multiple differences; based on the multiple differences, the verification result of the target zero-position angle is determined.
[0048] In another possible implementation, the calibration device determines the verification result of the target zero azimuth angle based on the plurality of differences, including:
[0049] If each of the plurality of differences is not greater than a preset difference, the calibration device determines that the target zero azimuth angle has passed verification; if there is a difference among the plurality of differences that is greater than the preset difference, the calibration device re-determines the target zero azimuth angle; or...
[0050] The calibration device determines a target ratio, which is the proportion of the number of differences that are not greater than the preset difference among the plurality of differences; if the target ratio is not less than the preset ratio, the calibration device determines that the target zero azimuth angle has passed verification; if the target ratio is less than the preset ratio, the calibration device re-determines the target zero azimuth angle.
[0051] In another possible implementation, the calibration device determines the target zero azimuth angle based on the preset number of calibrations and the first zero azimuth angle obtained in each calibration, including:
[0052] The calibration device determines the sum of the first zero-position angles acquired during each calibration, determines the ratio of the sum to the preset number of calibrations, and determines the ratio as the target zero-position angle; or...
[0053] The calibration device deletes the maximum and minimum values from the first zero azimuth angle of the preset calibration number, and determines the target zero azimuth angle based on the remaining first zero azimuth angle and the preset calibration number.
[0054] On the other hand, a calibration device is provided, the calibration device including a processor and a memory, the memory storing at least one piece of program code, the at least one piece of program code being loaded and executed by the processor to implement the motor zero-position angle calibration method described above.
[0055] On the other hand, a computer-readable storage medium is provided, wherein at least one piece of program code is stored in the computer-readable storage medium, the at least one piece of program code being loaded and executed by a processor to implement the motor zero-position angle calibration method described in any of the above claims.
[0056] On the other hand, a computer program product is provided, wherein at least one piece of program code is stored in the computer program product, and the at least one piece of program code is loaded and executed by a processor to implement the motor zero-position angle calibration method described in any of the above claims.
[0057] This application provides a motor zero-position angle calibration system. In this system, each time the motor zero-position angle is calibrated, the calibration device obtains a first zero-position angle through the motor controller and a position sensor. This first zero-position angle is obtained when the DC component of the current on the direct axis reaches a preset current value. Then, based on a preset number of calibrations and the first zero-position angle obtained in each calibration, a target zero-position angle is determined. Finally, the target zero-position angle is written into the motor controller, enabling the motor controller to control the motor operation based on the target zero-position angle. This system can accurately determine the target zero-position angle through the interaction between the calibration device, the motor controller, and the position controller, thereby improving the performance of the drive system.
[0058] It should be understood that the above general description and the following detailed description are merely exemplary and do not limit this disclosure. Attached Figure Description
[0059] Figure 1 This is a schematic diagram of a motor zero-position angle calibration system provided in an embodiment of this application;
[0060] Figure 2 This is a flowchart of a motor zero-position angle calibration method provided in an embodiment of this application;
[0061] Figure 3 This is a schematic diagram of a motor zero-position angle provided in an embodiment of this application;
[0062] Figure 4 This is a flowchart illustrating the verification of a target zero azimuth angle provided in an embodiment of this application;
[0063] Figure 5 This is a schematic diagram illustrating the verification of a target zero azimuth angle provided in an embodiment of this application;
[0064] Figure 6This is a structural block diagram of a calibration device provided in an embodiment of this application;
[0065] Figure 7 This is a structural block diagram of a motor controller provided in an embodiment of this application. Detailed Implementation
[0066] To make the technical solution and advantages of this application clearer, the embodiments of this application will be described in further detail below.
[0067] The terms "first," "second," "third," and "fourth," etc., used in the specification, claims, and accompanying drawings of this application are used to distinguish different objects, not to describe a specific order. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or apparatus that includes a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units not listed, or may optionally include other steps or units inherent to these processes, methods, products, or apparatuses.
[0068] It should be noted that all information (including but not limited to user device information, user personal information, etc.), data (including but not limited to data used for analysis, stored data, displayed data, etc.), and signals involved in this application are authorized by the user or fully authorized by all parties, and the collection, use, and processing of related data must comply with the relevant laws, regulations, and standards of the relevant countries and regions. For example, the control commands and zero-position angles involved in this application were obtained with full authorization.
[0069] Figure 1 This is a schematic diagram of a motor zero-position angle calibration system provided in an embodiment of this application. See also... Figure 1 The system includes: a calibration device 101 and a motor controller 102;
[0070] The motor controller 102 is electrically connected to the calibration device 101 and the motor 103 respectively, and the motor 103 is equipped with a position sensor;
[0071] The calibration device 101 is used to send a first control command to the motor controller 102, the first control command being used to instruct the motor controller 102 to adjust the working mode to the calibration mode;
[0072] The motor controller 102 is used to configure the DC component of the current output by the motor 103 on the direct axis to a first preset value in calibration mode.
[0073] The motor controller 102 is also used to adjust the DC component of the current on the direct axis based on a first preset step size until the DC component of the current on the direct axis reaches a second preset value; and to obtain a first zero azimuth angle through a position sensor and send the first zero azimuth angle to the calibration device 101; wherein the first zero azimuth angle is obtained when the DC component of the current on the direct axis reaches the second preset value;
[0074] The calibration device 101 is also used to determine the current number of calibrations of the motor 103. When the number of calibrations reaches the preset number of calibrations, the target zero azimuth angle is determined based on the preset number of calibrations and the first zero azimuth angle obtained in each calibration. The target zero azimuth angle is written into the motor controller 102.
[0075] In this embodiment, the motor controller 102 and the motor 103 are located on the same vehicle, which can be a hybrid electric vehicle or a pure electric vehicle, without specific limitation.
[0076] The calibration device 101 can be at least one of the following: a host computer, a PC (Personal Computer), an intelligent voice interaction device, and an in-vehicle terminal. Furthermore, the electrical connection can be a circuit connection or a wireless connection; there is no specific limitation in this regard. If the electrical connection is a circuit connection, the connection method can be a cable connection; if the electrical connection is a wireless connection, the connection method can be an infrared connection, a wireless local area network (WLAN), or a WiFi (Wireless Fidelity) network connection. In this embodiment of the application, there is no specific limitation in this regard.
[0077] In one possible implementation, the calibration device 101 is further configured to send a second control command to the motor controller 102 when the number of calibrations has not reached the preset number of calibrations; wherein the second control command is used to instruct the motor controller 102 to control the motor 103 to rotate a first angle.
[0078] The motor controller 102 is also used to send a first notification message to the calibration device 101 after the motor 103 has rotated a first angle;
[0079] The calibration device 101 is also used to send a third control command to the motor controller 102 based on the first notification message; wherein the third control command is used to control the motor controller 102 to adjust the working mode to the detection mode;
[0080] The motor controller 102 is also used in detection mode to perform the step of configuring the DC component of the current output by the motor 103 on the direct axis to a first preset value until a stop command is received; wherein the stop command is sent by the calibration device 101 when the number of calibrations reaches a preset number of calibrations.
[0081] In another possible implementation, the accuracy of the target zero-position angle calibration can be verified by the dynamometer system 104. Accordingly, the system also includes: the dynamometer system 104;
[0082] The dynamometer system 104 is electrically connected to the calibration equipment 101 and the motor 103, respectively;
[0083] The dynamometer system 104 is used to test the first torque of the motor 103 at multiple speeds and send multiple first torques to the calibration device 101.
[0084] The calibration device 101 is also used to send a fourth control command to the motor controller 102, which instructs the motor controller 102 to adjust the operating mode to the verification mode.
[0085] The motor controller 102 is also used in verification mode to determine the second torque of the motor 103 at multiple speeds and send the multiple second torques to the calibration device 101;
[0086] The calibration device 101 is also used to determine the verification results based on multiple first torques and multiple second torques.
[0087] In another possible implementation, the dynamometer system 104 includes: a dynamometer;
[0088] The dynamometer system 104 is used to configure the speed of the dynamometer to a first speed in speed mode, and drive the motor 103 to run at the first speed through the dynamometer; and obtain the first torque corresponding to the motor 103 at the first speed.
[0089] The dynamometer system 104 is also used to adjust the rotational speed of the dynamometer based on a second preset step size until the rotational speed of the dynamometer reaches the preset speed; and to obtain the first torque corresponding to each speed during the speed adjustment process.
[0090] In another possible implementation, the calibration device 101 is also used to determine the difference between the first torque and the second torque corresponding to each rotational speed, thereby obtaining multiple differences; and to determine the verification result of the target zero position angle based on the multiple differences.
[0091] In another possible implementation, the calibration device 101 is further configured to: determine that the target zero azimuth angle passes verification if each of the multiple differences is not greater than a preset difference; and re-determine the target zero azimuth angle if any of the multiple differences is greater than the preset difference; or...
[0092] The calibration device 101 is also used to determine the target ratio, which is the proportion of multiple differences that are not greater than a preset difference. If the target ratio is not less than the preset ratio, the target zero azimuth angle is verified. If the target ratio is less than the preset ratio, the target zero azimuth angle is re-determined.
[0093] In another possible implementation, the calibration device 101 is further configured to determine the sum of the first zero-position angles acquired during each calibration, determine the ratio of the sum to a preset number of calibrations, and determine the ratio as the target zero-position angle; or,
[0094] The calibration device 101 is also used to delete the maximum and minimum values in the first zero azimuth angle of the preset calibration number, and determine the target zero azimuth angle based on the remaining first zero azimuth angle and the preset calibration number.
[0095] This application provides a motor zero-position angle calibration system. In this system, each time the motor zero-position angle is calibrated, the calibration device obtains a first zero-position angle through the motor controller and a position sensor. This first zero-position angle is obtained when the DC component of the current on the direct axis reaches a preset current value. Then, based on a preset number of calibrations and the first zero-position angle obtained in each calibration, a target zero-position angle is determined. Finally, the target zero-position angle is written into the motor controller, enabling the motor controller to control the motor operation based on the target zero-position angle. This system can accurately determine the target zero-position angle through the interaction between the calibration device, the motor controller, and the position controller, thereby improving the performance of the drive system.
[0096] Figure 2 This is a flowchart of a motor zero-position angle calibration method provided in an embodiment of this application. See also... Figure 2 The method includes:
[0097] Step 201: The calibration device sends the first control command to the motor controller.
[0098] The first control command is used to instruct the motor controller to adjust the operating mode to the calibration mode.
[0099] The calibration equipment has a target application installed. In response to the target application being logged in, the calibration equipment displays a calibration interface, which includes calibration options. In response to a trigger operation on a calibration option, the calibration equipment sends a first control command to the motor controller. (See [link to relevant documentation]). Figure 3 .
[0100] The target application can be the Pcan application or other applications; there are no specific limitations on this.
[0101] Step 202: In calibration mode, the motor controller configures the DC component of the motor output current on the direct axis to a first preset value.
[0102] Based on the first control command, the motor controller adjusts its operating mode to calibration mode. In calibration mode, the motor controller configures the DC component of the motor output current on the direct axis to a first preset value, and configures the AC component of the current on the direct axis, the DC component on the quadrature axis, and the AC component on the quadrature axis to third preset values, and configures its own frequency to a fourth preset value. Here, the quadrature axis is the q-axis, the direct axis is the d-axis, and the q-axis and d-axis are perpendicular to each other, both belonging to the rotor synchronous rotation coordinate system.
[0103] The first, third, and fourth preset values can all be set and changed as needed. For example, the first preset value can be 3A (Amperes), the third preset value can be 0A, and the fourth preset value can be 2Hz (Hertz). See also... Figure 3 .
[0104] In the embodiments of this application, the first preset value, the third preset value, and the fourth preset value may be carried in the first control command or may be pre-stored by the motor controller, and there is no specific limitation on this.
[0105] If the first, third, and fourth preset values are carried in the first control command, the motor controller obtains the first, third, and fourth preset values from the first control command and configures them accordingly. If the first, third, and fourth preset values are pre-stored by the motor controller, the motor controller configures them based on the first, third, and fourth preset values after receiving the first control command.
[0106] Step 203: The motor controller adjusts the DC component of the current on the direct axis based on the first preset step size until the DC component of the current on the direct axis reaches the second preset value.
[0107] In this step, the motor controller keeps the AC component of the current on the direct axis, the DC component on the quadrature axis, and the AC component on the quadrature axis constant, while maintaining its own frequency. Based on a first preset step size, it gradually increases the DC component of the current on the direct axis. Each time it increases, it determines whether the DC component of the current on the direct axis reaches a second preset value. If it does not reach the second preset value, it continues to increase the DC component of the current on the direct axis based on the first preset step size until the DC component of the current on the direct axis reaches the second preset value. The second preset value is a preset multiple of the motor's rated current.
[0108] The first preset step size and the preset multiplier can both be set and changed as needed. For example, the first preset step size can be 1A or 2A, and the preset multiplier can be 0.2. See also... Figure 3 If the preset multiplier is 0.2 and the motor's rated current is 40A, then the second preset value is 8A.
[0109] Step 204: The motor controller obtains the first zero azimuth angle through the position sensor and sends the first zero azimuth angle to the calibration device.
[0110] The first zero azimuth angle is obtained when the DC component of the current on the direct axis reaches the second preset value.
[0111] The position sensor is installed on the motor and can detect the zero position angle of the motor rotor and send it to the motor controller.
[0112] The position sensor can detect the zero-position angle of the motor rotor in real time or periodically and send the detected zero-position angle to the motor controller. The motor controller acquires the zero-position angle when the DC component of the current on the direct axis reaches a second preset value, determines this zero-position angle as the first zero-position angle, and then sends the first zero-position angle to the calibration device. Alternatively, the motor controller can send a zero-position angle acquisition command to the position sensor when the DC component of the current on the direct axis reaches the second preset value. Based on the zero-position angle acquisition command, the position sensor acquires the first zero-position angle, sends the first zero-position angle to the motor controller, and the motor controller then sends the first zero-position angle to the calibration device.
[0113] Step 205: The calibration equipment determines the current number of calibrations for the motor.
[0114] The calibration equipment can determine the number of times the motor needs to be calibrated based on the number of first zero azimuth angles acquired. Each time the calibration equipment acquires a first zero azimuth angle, the number of calibrations increases by one. When the number of first zero azimuth angles equals a preset number, the number of calibrations for the motor has reached the preset number.
[0115] The preset number of calibrations can be set and changed as needed; for example, the preset number of calibrations can be 3 or 5.
[0116] If the number of calibrations of the motor has not reached the preset number of calibrations, the calibration equipment executes step 206. If the number of calibrations of the motor has reached the preset number of calibrations, the calibration equipment executes step 210.
[0117] Step 206: When the number of calibrations has not reached the preset number of calibrations, the calibration device sends a second control command to the motor controller.
[0118] The second control command instructs the motor controller to control the motor to rotate by a first angle. Based on the second control command, the motor controller controls the motor to rotate by the first angle.
[0119] The first angle can be carried in the second control command, or it can be a pre-stored or randomly generated angle by the motor controller; there are no specific limitations on this.
[0120] Step 207: After the motor rotates to the first angle, the motor controller sends the first notification message to the calibration device.
[0121] Step 208: The calibration device sends a third control command to the motor controller based on the first notification message.
[0122] The third control command is used to control the motor controller to adjust the operating mode to detection mode.
[0123] In this embodiment, if the preset number of calibration cycles is not reached, the calibration device can also send a first stop command to the motor controller. Based on this first stop command, the motor controller controls the motor to stop operating. After the motor stops operating, the operator manually rotates the motor output shaft to rotate the motor by a first angle. After the motor rotates by the first angle, the calibration device sends a third control command to the motor controller.
[0124] Step 209: In detection mode, the motor controller executes the step of configuring the DC component of the motor output current on the direct axis to a first preset value until a stop command is received.
[0125] For ease of distinction, the stop instruction in this step will be referred to as the second stop instruction.
[0126] Based on the third control command, the motor controller adjusts its operating mode to detection mode. In detection mode, the motor controller reconfigures the DC component of the motor output current on the direct axis to a first preset value, and reconfigures the AC component of the current on the direct axis, the DC component on the quadrature axis, and the AC component on the quadrature axis to a third preset value. The motor controller frequency is then reconfigured to a fourth preset value. The motor controller frequency remains unchanged while maintaining the AC component on the direct axis, the DC component on the quadrature axis, and the AC component on the quadrature axis unchanged, and steps 203-209 are executed until a second stop command is received from the calibration device. This second stop command is sent by the calibration device when the preset number of calibrations has been reached.
[0127] It should be noted that before the preset number of calibrations is reached, the angle of rotation of the motor during each calibration can be the same or different. For example, if the preset number of calibrations is 5, the angle of rotation of the motor during the first calibration can be 30°, the angle of rotation during the second calibration can be 30° or 60°, and the angle of rotation during subsequent calibrations can be 30° or other angles, without specific limitations.
[0128] Step 210: When the number of calibrations reaches the preset number of calibrations, the calibration device determines the target zero azimuth angle based on the preset number of calibrations and the first zero azimuth angle obtained in each calibration.
[0129] In this step, the calibration equipment can determine the target zero azimuth angle through any of the following methods.
[0130] Method 1: The calibration equipment determines the sum of the first zero azimuth angles obtained during each calibration, determines the ratio of this sum to the preset number of calibrations, and determines this ratio as the target zero azimuth angle.
[0131] In this implementation, the calibration device determines the ratio of the sum of multiple first zero azimuth angles to a preset number of calibrations, obtains the average value of the multiple first zero azimuth angles, and determines the average value as the target zero azimuth angle.
[0132] Method 2: The calibration device deletes the maximum and minimum values of the first zero azimuth angle from the preset calibration count, and determines the target zero azimuth angle based on the remaining first zero azimuth angle and the preset calibration count.
[0133] In this implementation, the calibration device removes the maximum and minimum values from multiple first zero azimuth angles, then determines the sum of the remaining first zero azimuth angles to obtain the first sum. The calibration device subtracts 2 from the preset number of calibrations to obtain the first number of calibrations; the ratio of the first sum to the first number of calibrations is determined to obtain the target zero azimuth angle.
[0134] Of course, calibration equipment can also determine the target zero azimuth angle through other methods, without making specific limitations.
[0135] Step 211: The calibration device writes the target zero azimuth angle into the motor controller.
[0136] The calibration equipment sends a write command to the motor controller, which carries the target zero-position angle. Based on the write command, the motor controller writes the target zero-position angle, thus completing the calibration of the motor's zero-position angle. Subsequently, the motor controller can control the motor operation based on the target zero-position angle. (Continue to see...) Figure 3 .
[0137] This application provides a method for calibrating the zero-position angle of a motor. Each time the motor's zero-position angle is calibrated, the calibration device acquires a first zero-position angle using a motor controller and a position sensor. This first zero-position angle is obtained when the DC component of the current on the direct axis reaches a preset current value. Then, based on a preset number of calibrations and the first zero-position angle acquired in each calibration, a target zero-position angle is determined. Finally, the target zero-position angle is written into the motor controller, enabling the motor controller to control the motor operation based on the target zero-position angle. This method, through the interaction between the calibration device, the motor controller, and the position controller, can accurately determine the target zero-position angle, thereby improving the performance of the drive system.
[0138] In this embodiment, not only can the zero position angle of the motor be calibrated, but the calibration results can also be verified to determine the accuracy of the calibration. The process of verifying the calibration results is described below.
[0139] Figure 4This is a flowchart illustrating the verification of a target zero-azimuth angle provided in an embodiment of this application. See also... Figure 4 The method includes:
[0140] Step 401: The dynamometer system tests the first torque corresponding to the motor at multiple speeds and sends multiple first torques to the calibration equipment.
[0141] Before verifying the target zero azimuth angle, the connection between the motor and the motor controller can be disconnected, and then the motor can be connected to the dynamometer in the dynamometer system.
[0142] The dynamometer system includes a dynamometer and a host computer. The host computer can adjust the working mode of the dynamometer to speed mode. In speed mode, the speed of the dynamometer is configured as the first speed. Then, the dynamometer drives the motor to run at the first speed, and the torque sensor obtains the first torque corresponding to the first speed of the motor.
[0143] The torque sensor is mounted on the motor and detects its torque. It is also connected to a host computer and sends the detected torque to the computer. Specifically, the torque sensor can detect the motor torque upon receiving a torque acquisition command from the host computer and then send the detected torque, i.e., the first torque, to the host computer. Alternatively, the torque sensor can detect the motor torque while the motor is running at a first speed and then send the detected torque, i.e., the first torque, to the host computer.
[0144] The host computer adjusts the speed of the dynamometer based on the second preset step size until the speed of the dynamometer reaches the preset speed, and obtains the first torque corresponding to each speed during the speed adjustment process.
[0145] The host computer gradually increases the dynamometer's rotational speed based on a second preset step size. Each increase in speed generates a torque reading from the torque sensor, ultimately acquiring multiple first torques. These first torques are then sent to the calibration equipment, with one first torque corresponding to one rotational speed. (See [link to documentation]). Figure 5 .
[0146] Here, the first speed is the initial value, the preset speed is the maximum value, and the first speed, the preset speed, and the second preset step size can all be set and changed as needed, without specific limitations. For example, the first speed is 1000 rpm, the preset speed is 4000 rpm, and the second preset step size is 1000 rpm.
[0147] In this embodiment of the application, after the host computer obtains multiple first torques, it can control the dynamometer to stop running. Then, the operator reconnects the motor controller to the motor and connects the motor controller to the host computer. The host computer then sets the dynamometer to run in speed mode and reconfigures the speed of the dynamometer to the first speed.
[0148] Step 402: The calibration device sends the fourth control command to the motor controller.
[0149] The fourth control command is used to instruct the motor controller to adjust the operating mode to verification mode.
[0150] Step 403: In verification mode, the motor controller determines the second torque of the motor at multiple speeds and sends multiple second torques to the calibration equipment.
[0151] The fourth control command can carry a first current value and a second angle. The first current value is the current value of the stator, and the second angle is the angle between the first current value and the quadrature axis.
[0152] The motor controller adjusts its operating mode to verification mode based on the fourth control command. In verification mode, the motor controller configures the motor based on the first current value and the second angle. After configuration, it sends a configuration completion command to the dynamometer system. Based on the configuration completion command, the dynamometer system retests the torque corresponding to the motor at multiple speeds, obtains multiple second torques, and sends these multiple second torques to the calibration equipment.
[0153] The process of retesting the motor torque at multiple speeds using the dynamometer system is similar to step 401 above and will not be repeated here. Furthermore, the first current value and the second angle can be set and changed as needed; for example, the first current value could be 40A and the second angle 90°, without specific limitations.
[0154] Step 404: The calibration equipment determines the verification results based on multiple first torques and multiple second torques.
[0155] The calibration equipment determines the difference between the first torque and the second torque corresponding to each rotational speed, obtaining multiple differences. Based on these multiple differences, the verification result of the target zero-position angle is determined.
[0156] For example, the calibration equipment determines the difference between the first torque and the second torque at a speed of 1000 rpm, the difference between the first torque and the second torque at a speed of 2000 rpm, and so on, determining the difference between the first torque and the second torque for each speed.
[0157] In the embodiments of this application, the calibration device can determine the verification result based on multiple differences using any of the following implementation methods.
[0158] Method 1: If each of the multiple differences is not greater than the preset difference, the calibration device determines the target zero azimuth angle and passes the verification; if there is a difference among the multiple differences that is greater than the preset difference, the calibration device re-determines the target zero azimuth angle.
[0159] In this implementation, if each difference is not greater than a preset difference, the calibration device determines that the target zero azimuth angle has passed the verification. If there is a difference greater than the preset difference, the target zero azimuth angle is re-determined through steps 201 to 211.
[0160] The preset difference value can be set and changed as needed. For example, the preset difference value is 0.4 Nm. See also... Figure 5 .
[0161] Method 2: The calibration equipment determines the target ratio. If the target ratio is not less than the preset ratio, the calibration equipment determines the target zero azimuth angle and passes the verification. If the target ratio is less than the preset ratio, the calibration equipment re-determines the target zero azimuth angle.
[0162] In this implementation, the target ratio is the proportion of multiple differences that are not greater than a preset difference. The calibration device determines a first number of differences that are not greater than the preset difference, and then determines the ratio of this first number to the total number of differences to obtain the target ratio. If the target ratio is not less than the preset ratio, it means that most differences are not greater than the preset difference, i.e., the target zero azimuth angle is accurately calibrated, and the calibration device verifies the target zero azimuth angle. If the target ratio is less than the preset ratio, it means that most differences are greater than the preset difference, i.e., the target zero azimuth angle is not accurately calibrated, and the target zero azimuth angle is re-determined through steps 201 to 211.
[0163] In this embodiment of the application, when redetermining the target zero azimuth angle, the motor controller can configure the DC component of the current on the direct axis to a fifth preset value, and then adjust the DC component of the current on the direct axis according to a third preset step size until the DC component of the current on the direct axis reaches a second preset value.
[0164] The fifth preset value and the first preset value may be the same or different, and the third preset step size and the first preset step size may be the same or different; no specific limitation is made in this regard.
[0165] In this embodiment, the zero-position angle is calibrated by controlling the open-loop rotation of the motor and adjusting its operating mode. After calibration, the accuracy of the calibration is verified by running the motor at different speeds using a dynamometer. This method is simple and reliable, and it can not only accurately determine the zero-position angle of the motor, but also detect the accuracy of the zero-position angle calibration results, effectively improving motor performance and significantly improving key indicators such as overall vehicle efficiency and energy consumption.
[0166] refer to Figure 6 , Figure 6A structural block diagram of a calibration device 600 provided in an exemplary embodiment of this application is shown. The calibration device 600 may be a portable mobile terminal, such as a smartphone, tablet computer, MP3 player (Moving Picture Experts Group Audio Layer III), MP4 player (Moving Picture Experts Group Audio Layer IV), laptop computer, or desktop computer. The calibration device 600 may also be referred to as a user device, portable terminal, laptop terminal, desktop terminal, or other names.
[0167] Typically, calibration device 600 includes a processor 601 and a memory 602.
[0168] Processor 601 may include one or more processing cores, such as a quad-core processor, an octa-core processor, etc. Processor 601 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 601 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 601 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 601 may also include an AI (Artificial Intelligence) processor, which is used to handle computational operations related to machine learning.
[0169] The memory 602 may include one or more computer-readable storage media, which may be non-transitory. The memory 602 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 602 is used to store at least one piece of program code, which is executed by the processor 601 to implement the operations performed by the calibration device in the motor zero-position angle calibration method provided in the method embodiments of this application.
[0170] In some embodiments, the calibration device 600 may also optionally include a peripheral device interface 603 and at least one peripheral device. The processor 601, memory 602, and peripheral device interface 603 can be connected via a bus or signal line. Each peripheral device can be connected to the peripheral device interface 603 via a bus, signal line, or circuit board. Specifically, the peripheral device includes at least one of the following: a radio frequency circuit 604, a display screen 605, a camera assembly 606, an audio circuit 607, and a power supply 608.
[0171] Peripheral interface 603 can be used to connect at least one I / O (Input / Output) related peripheral device to processor 601 and memory 602. In some embodiments, processor 601, memory 602 and peripheral interface 603 are integrated on the same chip or circuit board; in some other embodiments, any one or two of processor 601, memory 602 and peripheral interface 603 can be implemented on separate chips or circuit boards, which is not limited in this embodiment.
[0172] The radio frequency (RF) circuit 604 is used to receive and transmit RF (Radio Frequency) signals, also known as electromagnetic signals. The RF circuit 604 communicates with communication networks and other communication devices via electromagnetic signals. The RF circuit 604 converts electrical signals into electromagnetic signals for transmission, or converts received electromagnetic signals back into electrical signals. Optionally, the RF circuit 604 includes: an antenna system, an RF transceiver, one or more amplifiers, a tuner, an oscillator, a digital signal processor, a codec chipset, a user identity module card, etc. The RF circuit 604 can communicate with other terminals through at least one wireless communication protocol. This wireless communication protocol includes, but is not limited to: the World Wide Web, metropolitan area networks, intranets, various generations of mobile communication networks (2G, 3G, 4G, and 5G), wireless local area networks, and / or WiFi (Wireless Fidelity) networks. In some embodiments, the RF circuit 604 may also include circuitry related to NFC (Near Field Communication), which is not limited in this application.
[0173] Display screen 605 is used to display a UI (User Interface). This UI may include graphics, text, icons, videos, and any combination thereof. When display screen 605 is a touch display screen, it also has the ability to collect touch signals on or above its surface. These touch signals can be input as control signals to processor 601 for processing. In this case, display screen 605 can also be used to provide virtual buttons and / or a virtual keyboard, also known as soft buttons and / or a soft keyboard. In some embodiments, there may be one display screen 605, disposed on the front panel of calibration device 600; in other embodiments, there may be at least two display screens, disposed on different surfaces of calibration device 600 or in a folded design; in still other embodiments, display screen 605 may be a flexible display screen, disposed on a curved or folded surface of calibration device 600. Furthermore, display screen 605 may be configured as a non-rectangular irregular shape, i.e., a non-rectangular screen. Display screen 605 may be made of materials such as LCD (Liquid Crystal Display) or OLED (Organic Light-Emitting Diode).
[0174] The camera assembly 606 is used to acquire images or videos. Optionally, the camera assembly 606 includes a front-facing camera and a rear-facing camera. Typically, the front-facing camera is located on the front panel of the terminal, and the rear-facing camera is located on the back of the terminal. In some embodiments, there are at least two rear-facing cameras, which are any one of a main camera, a depth-sensing camera, a wide-angle camera, and a telephoto camera, to achieve background blurring by fusion of the main camera and the depth-sensing camera, panoramic shooting by fusion of the main camera and the wide-angle camera, VR (Virtual Reality) shooting, or other fusion shooting functions. In some embodiments, the camera assembly 606 may also include a flash. The flash can be a single-color temperature flash or a dual-color temperature flash. A dual-color temperature flash refers to a combination of a warm light flash and a cool light flash, which can be used for light compensation at different color temperatures.
[0175] The audio circuit 607 may include a microphone and a speaker. The microphone is used to collect sound waves from the user and the environment, converting the sound waves into electrical signals that are input to the processor 601 for processing, or input to the radio frequency circuit 604 for voice communication. For stereo sound acquisition or noise reduction purposes, multiple microphones may be used, each positioned at a different location in the calibration device 600. The microphone may also be an array microphone or an omnidirectional microphone. The speaker is used to convert the electrical signals from the processor 601 or the radio frequency circuit 604 into sound waves. The speaker may be a conventional diaphragm speaker or a piezoelectric ceramic speaker. When the speaker is a piezoelectric ceramic speaker, it can convert electrical signals not only into audible sound waves but also into inaudible sound waves for purposes such as distance measurement. In some embodiments, the audio circuit 607 may also include a headphone jack.
[0176] Power supply 608 is used to power the various components in calibration device 600. Power supply 608 can be AC power, DC power, a disposable battery, or a rechargeable battery. When power supply 608 includes a rechargeable battery, the rechargeable battery can be a wired rechargeable battery or a wireless rechargeable battery. A wired rechargeable battery is a battery that is charged via a wired line, and a wireless rechargeable battery is a battery that is charged via a wireless coil. The rechargeable battery can also be used to support fast charging technology.
[0177] In some embodiments, the calibration device 600 further includes one or more sensors 609. The one or more sensors 609 include, but are not limited to, an accelerometer 610, a gyroscope 611, a pressure sensor 612, an optical sensor 613, and a proximity sensor 614.
[0178] Accelerometer 610 can detect the magnitude of acceleration along the three axes of a coordinate system established by calibration device 600. For example, accelerometer 610 can be used to detect the components of gravitational acceleration along the three axes. Processor 601 can control display screen 605 to display the user interface in either a landscape or portrait view based on the gravitational acceleration signal acquired by accelerometer 610. Accelerometer 610 can also be used for games or for acquiring user motion data.
[0179] The gyroscope sensor 611 can detect the orientation and rotation angle of the calibration device 600. The gyroscope sensor 611 can work in conjunction with the accelerometer sensor 610 to acquire 3D motion data from the user on the calibration device 600. Based on the data acquired by the gyroscope sensor 611, the processor 601 can perform the following functions: motion sensing (e.g., changing the UI based on the user's tilt), image stabilization during shooting, game control, and inertial navigation.
[0180] The pressure sensor 612 can be disposed on the side bezel of the calibration device 600 and / or on the lower layer of the display screen 605. When the pressure sensor 612 is disposed on the side bezel of the calibration device 600, it can detect the user's grip signal on the calibration device 600, and the processor 601 can perform left / right hand recognition or quick operation based on the grip signal collected by the pressure sensor 612. When the pressure sensor 612 is disposed on the lower layer of the display screen 605, the processor 601 can control the operable controls on the UI interface based on the user's pressure operation on the display screen 605. The operable controls include at least one of button controls, scroll bar controls, icon controls, and menu controls.
[0181] An optical sensor 613 is used to collect ambient light intensity. In one embodiment, the processor 601 can control the display brightness of the display screen 605 based on the ambient light intensity collected by the optical sensor 613. Specifically, when the ambient light intensity is high, the display brightness of the display screen 605 is increased; when the ambient light intensity is low, the display brightness of the display screen 605 is decreased. In another embodiment, the processor 601 can also dynamically adjust the shooting parameters of the camera assembly 606 based on the ambient light intensity collected by the optical sensor 613.
[0182] The proximity sensor 614, also known as a distance sensor, is typically mounted on the front panel of the calibration device 600. The proximity sensor 614 is used to detect the distance between the user and the front of the calibration device 600. In one embodiment, when the proximity sensor 614 detects that the distance between the user and the front of the calibration device 600 is gradually decreasing, the processor 601 controls the display screen 605 to switch from a screen-on state to a screen-off state; when the proximity sensor 614 detects that the distance between the user and the front of the calibration device 600 is gradually increasing, the processor 601 controls the display screen 605 to switch from a screen-off state to a screen-on state.
[0183] Those skilled in the art will understand that Figure 6 The structure shown does not constitute a limitation on the calibration device 600, and may include more or fewer components than shown, or combine certain components, or use different component arrangements.
[0184] The block diagram of the motor controller can be found in [reference needed]. Figure 7The motor controller 700 can vary considerably depending on its configuration or performance. It may include a central processing unit (CPU) 701 and a memory 702. The memory 702 stores at least one line of program code, which is loaded and executed by the processor 701 to perform the operations performed by the motor controller in the aforementioned motor zero-angle calibration method. Of course, the motor controller 700 may also have wired or wireless network interfaces, a keyboard, and input / output interfaces for input and output. The motor controller 700 may also include other components for implementing device functions, which will not be elaborated upon here.
[0185] In an exemplary embodiment, a computer-readable storage medium is also provided, which stores at least one piece of program code that is loaded and executed by a processor to implement the motor zero-position angle calibration method in the above embodiments.
[0186] In an exemplary embodiment, a computer program product is also provided, which stores at least one piece of program code, which is loaded and executed by a processor to implement the motor zero-position angle calibration method in the above embodiments.
[0187] Those skilled in the art will understand that all or part of the steps of the above embodiments can be implemented by hardware or by a program instructing related hardware. The program can be stored in a computer-readable storage medium, such as a read-only memory, a disk, or an optical disk.
[0188] The above description is only for the purpose of enabling those skilled in the art to understand the technical solution of this application, and is not intended to limit this application. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.
Claims
1. A motor zero-position angle calibration system, characterized in that, The system includes: calibration equipment, motor controller, and dynamometer system; The motor controller is electrically connected to the calibration equipment and the motor, and the motor is equipped with a position sensor; the dynamometer system is electrically connected to the calibration equipment and the motor. The calibration device is used to send a first control command to the motor controller, the first control command being used to instruct the motor controller to adjust its operating mode to calibration mode; The motor controller is configured, in the calibration mode, to set the DC component of the current output by the motor on the direct axis to a first preset value. The motor controller is further configured to adjust the DC component of the current on the direct axis based on a first preset step size until the DC component of the current on the direct axis reaches a second preset value; obtain a first zero-position angle through the position sensor and send the first zero-position angle to the calibration device; wherein, the first zero-position angle is obtained when the DC component of the current on the direct axis reaches the second preset value; The calibration device is also used to determine the current number of calibrations of the motor. When the number of calibrations reaches a preset number of calibrations, a target zero azimuth angle is determined based on the preset number of calibrations and the first zero azimuth angle obtained in each calibration. The target zero azimuth angle is then written into the motor controller. The dynamometer system is used to test the first torque corresponding to the motor at multiple speeds and send multiple first torques to the calibration equipment. The calibration device is also used to send a fourth control command to the motor controller, the fourth control command being used to instruct the motor controller to adjust the operating mode to the verification mode; The motor controller is further configured to determine the second torque of the motor at the plurality of speeds in the verification mode, and send the plurality of second torques to the calibration device; The calibration device is also used to determine the verification result based on the plurality of first torques and the plurality of second torques.
2. The system according to claim 1, characterized in that, The calibration device is further configured to send a second control command to the motor controller when the number of calibrations has not reached the preset number of calibrations; wherein the second control command is configured to instruct the motor controller to control the motor to rotate a first angle; The motor controller is further configured to send a first notification message to the calibration device after the motor rotates the first angle; The calibration device is further configured to send a third control command to the motor controller based on the first notification message; wherein the third control command is configured to control the motor controller to adjust its operating mode to a detection mode; The motor controller is further configured to, in the detection mode, execute the step of configuring the DC component of the current output by the motor on the direct axis to a first preset value until a stop command is received; wherein the stop command is sent by the calibration device when the number of calibrations reaches the preset number of calibrations.
3. The system according to claim 1, characterized in that, The dynamometer system includes: a dynamometer; The dynamometer system is used to configure the dynamometer speed to a first speed in speed mode, drive the motor to operate at the first speed through the dynamometer; and obtain the first torque of the motor at the first speed. The dynamometer system is also used to adjust the rotational speed of the dynamometer based on a second preset step size until the rotational speed of the dynamometer reaches a preset speed; and to obtain the first torque corresponding to each speed during the speed adjustment process.
4. The system according to claim 3, characterized in that, The calibration device is also used to determine the difference between the first torque and the second torque corresponding to each rotational speed, thereby obtaining multiple differences; and to determine the verification result of the target zero-position angle based on the multiple differences.
5. The system according to claim 4, characterized in that, The calibration device is further configured to: determine that the target zero azimuth angle passes verification if each of the plurality of differences is not greater than a preset difference; and re-determine the target zero azimuth angle if any of the plurality of differences is greater than the preset difference; or... The calibration device is further used to determine a target ratio, which is the proportion of the number of differences that are not greater than the preset difference among the plurality of differences; if the target ratio is not less than the preset ratio, the target zero azimuth angle is determined to have passed verification. If the target ratio is less than the preset ratio, the target zero angle is redefined.
6. The system according to claim 1, characterized in that, The calibration device is further configured to determine the sum of the first zero-position angles acquired during each calibration, determine the ratio of the sum to the preset number of calibrations, and determine the ratio as the target zero-position angle; or, The calibration device is further configured to delete the maximum and minimum values in the first zero azimuth angle of the preset calibration number, and determine the target zero azimuth angle based on the remaining first zero azimuth angle and the preset calibration number.
7. A method for calibrating the zero-position angle of a motor, characterized in that, The method includes: The calibration device sends a first control command to the motor controller, the first control command being used to instruct the motor controller to adjust the operating mode to calibration mode; In the calibration mode, the motor controller configures the DC component of the current output by the motor on the direct axis to a first preset value. The motor controller adjusts the DC component of the current on the direct axis based on a first preset step size until the DC component of the current on the direct axis reaches a second preset value; it obtains a first zero-position angle through a position sensor and sends the first zero-position angle to the calibration device; wherein, the first zero-position angle is obtained when the DC component of the current on the direct axis reaches the second preset value; The calibration device determines the current number of calibrations for the motor. When the number of calibrations reaches a preset number, a target zero-position angle is determined based on the preset number of calibrations and the first zero-position angle obtained in each calibration. The target zero-position angle is then written into the motor controller. The method further includes: The dynamometer system tests the first torque corresponding to the motor at multiple speeds and sends multiple first torques to the calibration device; The calibration device sends a fourth control command to the motor controller, the fourth control command being used to instruct the motor controller to adjust the operating mode to the verification mode; In the verification mode, the motor controller determines the second torque of the motor at the multiple speeds and sends the multiple second torques to the calibration device. The calibration device determines the verification result based on the plurality of first torques and the plurality of second torques.
8. A calibration device, characterized in that, The calibration device includes a processor and a memory, the memory storing at least one piece of program code, which is loaded and executed by the processor to implement the motor zero-position angle calibration method of claim 7.
9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores at least one piece of program code, which is loaded and executed by a processor to implement the motor zero-position angle calibration method of claim 7.