A method, system and device for automatically calibrating the zero position of motor commutation in a servo system
By automatically adjusting the zero position of the motor phase change in the servo system, the problem of the inability to online calibration and calibration process in the prior art is solved, and the online calibration without additional testing environment is achieved and the efficient operation of the servo system is achieved.
Patent Information
- Application Number
- CN202411588321.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-08
- Publication Date
- 2025-02-28
- Estimated Expiration
- 2044-11-08
AI Technical Summary
The prior art cannot calibrate the phase-change zero position of the brushless motor online in the servo system, and requires a complex testing environment to be built, resulting in cumbersome calibration process and low efficiency.
It provides a servo system motor phase-commutation zero automatic calibration method. By gradually modifying the value of phase-commutation zero in the open-loop and closed-loop working modes, the motor is driven to rotate, and the rotor rotation speed and driving torque are used as optimization criteria to complete the initial value, rough zero search and precision zero search algorithm to obtain the optimal motor phase-commutation zero.
The calibration of the motor phase-change zero position can be completed online without the need for an additional test environment, reducing the difficulty of calibration and ensuring the optimal output efficiency of the servo system.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of servo system motor calibration, and in particular to a servo system motor commutation zero position automatic calibration method, system and device. Background Art
[0002] The servo motor is the core component in the servo control system. The servo motor in the high-precision servo system must be equipped with a high-performance, high-precision motor. The brushless motor has the advantages of light weight, high output, fast response, high speed, small inertia, smooth rotation, stable torque, easy to realize intelligence, flexible electronic commutation, square wave commutation and sine wave commutation, maintenance-free, high efficiency, low operating temperature, small electromagnetic radiation, long life, and is widely used in servo systems. For brushless motors with sine wave commutation, it is necessary to complete the sine wave commutation according to the commutation zero position parameters. Whether the commutation zero position is accurate will affect the efficiency of the motor, and then affect the response speed and control accuracy of the servo system. Therefore, the commutation zero position needs to be determined after the servo system is assembled. The commonly used methods for determining the commutation zero position are:
[0003] 1) Start the motor at a low speed to make the rotor start to rotate;
[0004] 2) Monitor the back EMF of each phase winding. Use a dedicated data acquisition device to collect the back EMF and simultaneously record the rotor angular position detected by the detection device;
[0005] 3) Detect and record data. When the back electromotive force of a phase winding is detected to be zero, it means that the position of the phase winding is aligned with the rotor. At this time, the corresponding rotor angular position is the commutation point of the phase winding.
[0006] However, this approach has some disadvantages, including:
[0007] 1) It is necessary to equip a dedicated data acquisition device and build a complex test environment to complete zero position calibration;
[0008] 2) It is impossible to calibrate the commutation zero position online. If the servo system replaces the servo system components, it will take up a lot of work to calibrate the zero position again, which may even be impossible. Summary of the invention
[0009] The present invention aims to solve at least one of the technical problems existing in the related art. To this end, the present invention provides a method, system and device for automatic calibration of the phase change zero position of a servo system motor, which does not require the construction of an additional test environment and is not limited by time. After the servo system is built, the motor zero position calibration can be executed at any time through control instructions.
[0010] The present invention provides a method for automatically calibrating the commutation zero position of a servo system motor, comprising the following steps:
[0011] S1: Set the value range of the commutation zero position of the servo system motor and obtain the rough value of the commutation zero position of the motor;
[0012] S2: Taking the rough value of the motor commutation zero position as the search starting point, obtaining the approximate range of the motor commutation zero position;
[0013] S3: Within the approximate range of the motor commutation zero position, stepping with a precise fixed step size to obtain a precise average motor control voltage, and obtaining the optimal motor commutation zero position through a data fitting algorithm.
[0014] According to the present invention, a method for automatically calibrating the commutation zero position of a servo system motor is provided, wherein step S1 further comprises:
[0015] S11: Set the value range of the servo system motor commutation zero position to , As the end point of the value interval, set the normal voltage value, saturation voltage value and the coarse value for searching the commutation zero position with a fixed step size;
[0016] S12: setting the servo system motor to an open-loop working state, and setting the open-loop control voltage to a normal voltage value;
[0017] S13: measuring the angular position data of the rotor of the servo system motor and calculating the rotor angular velocity;
[0018] S14: if the absolute value of the rotor angular velocity at any time is less than or equal to the rated value of the servo system motor during a period greater than or equal to 5 seconds, then execute step S15; if the absolute value of the rotor angular velocity at any time is greater than the rated value of the servo system motor, then execute step S17;
[0019] S15: Motor commutation zero position increases the search for commutation zero position coarse value with a fixed step size. If the motor commutation zero position after the increase does not exceed the end of the value range , then return to step S13; if the motor commutation zero position has exceeded the end of the value interval after the increase , then continue to execute step S16;
[0020] S16: the open-loop control voltage is increased by a fixed amount. If the increased open-loop control voltage does not exceed the saturation voltage value, the process returns to step S13; if the increased open-loop control voltage exceeds the saturation voltage value, the search fails and the algorithm ends.
[0021] S17: Determine the direction of the rotor angular velocity. If the direction of the rotor angular velocity is positive, the motor commutation zero position rough value Equal to the current commutation zero position ; If the direction of the rotor angular velocity is negative, the motor commutation zero position coarse value Equal to the current commutation zero position Add half the length of the value interval, and the formula is:
[0022] .
[0023] According to the present invention, a method for automatically calibrating the commutation zero position of a servo system motor is provided, wherein step S2 further comprises:
[0024] S21: Select a fixed rotation interval and set the commutation zero position to the rough value of the motor commutation zero position , rotate the rotor to the starting angle of the fixed rotation range;
[0025] S22: With the end point of the fixed rotation interval as the target value, the closed-loop drive motor rotates. After the rotation is completed, the commutation zero position is calculated as The average control voltage at ;
[0026] S23: Add the commutation zero position , rotate the rotor to the starting angle of the fixed rotation interval, take the end point of the fixed rotation interval as the target value, drive the motor to rotate in a closed loop, and after the rotation is completed, calculate the commutation zero position as The average control voltage at ;
[0027] S24: Inspection Is it greater than the judgment threshold? ,like , then execute step S25, if , then execute step S27;
[0028] S25: Add the commutation zero position , assuming that the value of the commutation zero position is ,judge Whether it exceeds the value range of the commutation zero position of the servo system motor. If so, the rough search fails;
[0029] If it does not exceed, rotate the rotor to the starting angle of the fixed rotation interval, take the end point of the fixed rotation interval as the target value, drive the motor to rotate in a closed loop, and after the rotation is completed, calculate the commutation zero position as The average control voltage at ;
[0030] S26: Compare the commutation zero position The average control voltage at The commutation zero position is The average control voltage at , determine whether If the conditions are met, the rough search ends and the approximate range of the motor commutation zero position is , if the condition is not met, execute S25;
[0031] S27: The commutation zero position is set to the rough value of the motor commutation zero position ;
[0032] S28: Reduce the commutation zero position , assuming that the value of the commutation zero position is ,judge Whether it exceeds the value range of the commutation zero position of the servo system motor. If so, the rough search fails;
[0033] If the rotor is rotated to the starting angle of the fixed rotation interval before exceeding it, the end point of the fixed rotation interval is taken as the target value, and the closed-loop drive motor rotates. After the rotation is completed, the commutation zero position is calculated as The average control voltage at ;
[0034] S29: Compare the commutation zero position The average control voltage at The commutation zero position is The average control voltage at , determine whether If the conditions are met, the rough search ends and the approximate range of the motor commutation zero position is If the condition is not met, execute S28.
[0035] According to the present invention, a method for automatically calibrating the commutation zero position of a servo system motor is provided, wherein step S3 further comprises:
[0036] S31: Selecting a fixed rotation interval that is the same as the motor commutation zero position rough search, setting the commutation zero position as the approximate starting point of the motor commutation zero position, and rotating the rotor to the starting angle of the fixed rotation interval;
[0037] S32: Taking the end point of the fixed rotation interval as the target value, the motor is driven to rotate in a closed loop, and after the rotation is completed, the average motor control voltage is calculated accurately and the corresponding commutation zero position is recorded;
[0038] S33: increasing the commutation zero position by a fixed step size to determine whether the increased commutation zero position exceeds the approximate range of the motor commutation zero position. If it does not exceed the approximate range of the commutation zero position, executing step S32; if it exceeds the approximate range of the commutation zero position, executing S34;
[0039] S34: performing a second-order fitting operation according to the obtained commutation zero position and the corresponding precise average motor control voltage to obtain a one-variable quadratic function with the commutation zero position as the independent variable and the precise average motor control voltage as the dependent variable;
[0040] S35: Calculate the commutation zero position corresponding to the minimum value of the dependent variable of the function, which is the optimal value of the motor commutation zero position.
[0041] According to the present invention, a method for automatically calibrating the commutation zero position of a servo system motor is provided, wherein step S1 further comprises: step S1 further comprises: according to the number of motor pole pairs Sure : .
[0042] According to the present invention, a method for automatically calibrating the commutation zero position of a servo system motor is provided, wherein step S3 further comprises: the fixed step length is required to be less than or equal to .
[0043] The present invention also provides a servo system motor commutation zero position automatic calibration system, which is used to execute a servo system motor commutation zero position automatic calibration method as described in any one of the above items, and is characterized by comprising:
[0044] Motor commutation zero position rough value search module: set the value range of the servo system motor commutation zero position and obtain the motor commutation zero position rough value;
[0045] A motor commutation zero position rough search module: using the motor commutation zero position rough value as a search starting point, and obtaining an approximate range of the motor commutation zero position;
[0046] Motor commutation zero position precise search module: within the approximate range of the motor commutation zero position, the module precisely searches for a fixed step size to obtain the corresponding average motor control voltage, and obtains the optimal motor commutation zero position through a data fitting algorithm.
[0047] The present invention also provides an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the computer program, a method for automatically calibrating the commutation zero position of a servo system motor as described in any one of the above items is implemented.
[0048] The present invention also provides a non-transitory computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, a method for automatically calibrating the commutation zero position of a servo system motor as described in any one of the above items is implemented.
[0049] The present invention also provides a computer program product, which includes a computer program stored on a non-transitory computer-readable storage medium, and the computer program includes program instructions. When the program instructions are executed by a computer, the computer can execute a method for automatic calibration of the commutation zero position of a servo system motor as described in any one of the above items.
[0050] The above one or more technical solutions in the embodiments of the present invention have at least one of the following technical effects:
[0051] The present invention provides a method, system and device for automatically calibrating the phase-change zero position of a servo system motor. In an open-loop working mode and a closed-loop working mode, the value of the phase-change zero position is gradually modified to drive the motor to rotate, and the rotor rotation speed and the driving torque are used as optimization criteria to complete the search for initial values, rough zeroing and fine zeroing algorithms, and finally obtain the optimal motor phase-change zero position. This makes it unnecessary to build an additional test environment, and the calibration of the motor phase-change zero position can be completed online using the servo system itself, which greatly reduces the difficulty of implementing the motor phase-change zero position calibration. After the servo system is put into use, the motor phase-change zero position can also be calibrated at any time to ensure the optimal output efficiency of the servo system.
[0052] Additional aspects and advantages of the present invention will be given in part in the following description and in part will be obvious from the following description, or will be learned through practice of the present invention. BRIEF DESCRIPTION OF THE DRAWINGS
[0053] In order to more clearly illustrate the technical solutions in the present invention or the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0054] Figure 1 The present invention provides a flow chart of a method for automatically calibrating the phase-commutation zero position of a servo system motor.
[0055] Figure 2 The present invention provides a flow chart of a servo system motor commutation zero position automatic calibration system.
[0056] Figure 3 The present invention is a schematic structural diagram of a servo system motor commutation zero position automatic calibration device.
[0057] Reference numerals:
[0058] 101, motor commutation zero position coarse value search module; 102, motor commutation zero position coarse value search module; 103, motor commutation zero position fine value search module; 810, processor; 820, communication interface; 830, memory; 840, communication bus. DETAILED DESCRIPTION
[0059] In order to make the purpose, technical scheme and advantages of the present invention clearer, the technical scheme in the present invention will be clearly and completely described below. Obviously, the described embodiments are part of the embodiments of the present invention, rather than all the embodiments. Based on the embodiments in the present invention, all other embodiments obtained by ordinary technicians in the field without creative work are within the scope of protection of the present invention. The following embodiments are used to illustrate the present invention, but cannot be used to limit the scope of the present invention.
[0060] In the description of this specification, the description with reference to the terms "one embodiment", "some embodiments", "example", "specific example", or "some examples" etc. means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the embodiment of the present invention. In this specification, the schematic representations of the above terms do not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described may be combined in any one or more embodiments or examples in a suitable manner. In addition, those skilled in the art may combine and combine the different embodiments or examples described in this specification and the features of the different embodiments or examples, without contradiction.
[0061] Example
[0062] Combine the following Figures 1 to 3 Describing embodiments of the present invention:
[0063] like Figure 1 As shown, the present invention provides a method for automatically calibrating the commutation zero position of a servo system motor, comprising the following steps:
[0064] S1: Set the value range of the commutation zero position of the servo system motor and obtain the rough value of the commutation zero position of the motor;
[0065] S2: Coarse search for motor commutation zero position: taking the coarse value of the motor commutation zero position as the search starting point, obtaining the approximate range of the motor commutation zero position;
[0066] S3: Precise search for the motor commutation zero position: within the approximate range of the motor commutation zero position, the fixed step size is precisely searched to obtain the corresponding average motor control voltage, and the optimal motor commutation zero position is obtained through a data fitting algorithm.
[0067] Specifically, the method for obtaining the rough value of the motor commutation zero position is as follows:
[0068] S11: Set the value range of the servo system motor commutation zero position to , As the end point of the value interval, set the normal voltage value, saturation voltage value and the coarse value for searching the commutation zero position with a fixed step size;
[0069] S12: setting the servo system motor to an open-loop working state, and setting the open-loop control voltage to a normal voltage value;
[0070] S13: measuring the angular position data of the rotor of the servo system motor and calculating the rotor angular velocity;
[0071] S14: if the absolute value of the rotor angular velocity at any time is less than or equal to the rated value of the servo system motor during a period greater than or equal to 5 seconds, then execute step S15; if the absolute value of the rotor angular velocity at any time is greater than the rated value of the servo system motor, then execute step S17;
[0072] S15: Motor commutation zero position increases the search for commutation zero position coarse value with a fixed step size. If the motor commutation zero position after the increase does not exceed the end of the value range , then return to step S13; if the motor commutation zero position has exceeded the end of the value interval after the increase , then continue to execute step S16;
[0073] S16: the open-loop control voltage is increased by a fixed amount. If the increased open-loop control voltage does not exceed the saturation voltage value, the process returns to step S13; if the increased open-loop control voltage exceeds the saturation voltage value, the search fails and the algorithm ends.
[0074] S17: Determine the direction of the rotor angular velocity. If the direction of the rotor angular velocity is positive, the motor commutation zero position rough value Equal to the current commutation zero position ; If the direction of the rotor angular velocity is negative, the motor commutation zero position coarse value Equal to the current commutation zero position Add half the length of the value interval, and the formula is:
[0075] .
[0076] Specifically, step S2 also includes:
[0077] S21: Select a fixed rotation interval and set the commutation zero position to the rough value of the motor commutation zero position , rotate the rotor to the starting angle of the fixed rotation range;
[0078] S22: With the end point of the fixed rotation interval as the target value, the closed-loop drive motor rotates. After the rotation is completed, the commutation zero position is calculated as The average control voltage at ;
[0079] S23: Add the commutation zero position , rotate the rotor to the starting angle of the fixed rotation interval, take the end point of the fixed rotation interval as the target value, drive the motor to rotate in a closed loop, and after the rotation is completed, calculate the commutation zero position as The average control voltage at ;
[0080] S24: Inspection Is it greater than the judgment threshold? ,like , then execute step S25, if , then execute step S27;
[0081] S25: Add the commutation zero position , assuming that the value of the commutation zero position is ,judge Whether it exceeds the value range of the commutation zero position of the servo system motor. If so, the rough search fails;
[0082] If it does not exceed, rotate the rotor to the starting angle of the fixed rotation interval, take the end point of the fixed rotation interval as the target value, drive the motor to rotate in a closed loop, and after the rotation is completed, calculate the commutation zero position as The average control voltage at ;
[0083] S26: Compare the commutation zero position The average control voltage at The commutation zero position is The average control voltage at , determine whether If the conditions are met, the rough search ends and the approximate range of the motor commutation zero position is , if the condition is not met, execute S25;
[0084] S27: The commutation zero position is set to the rough value of the motor commutation zero position ;
[0085] S28: Reduce the commutation zero position , assuming that the value of the commutation zero position is ,judge Whether it exceeds the value range of the commutation zero position of the servo system motor. If so, the rough search fails;
[0086] If the rotor is rotated to the starting angle of the fixed rotation interval before exceeding it, the end point of the fixed rotation interval is taken as the target value, and the closed-loop drive motor rotates. After the rotation is completed, the commutation zero position is calculated as The average control voltage at ;
[0087] S29: Compare the commutation zero position The average control voltage at The commutation zero position is The average control voltage at , determine whether If the conditions are met, the rough search ends and the approximate range of the motor commutation zero position is If the condition is not met, execute S28.
[0088] Specifically, step S3 also includes:
[0089] S31: Selecting a fixed rotation interval that is the same as the motor commutation zero position rough search, setting the motor commutation zero position as the approximate range starting point of the motor commutation zero position, and rotating the rotor to the starting angle of the fixed rotation interval;
[0090] S32: Taking the end point of the fixed rotation interval as the target value, the motor is driven to rotate in a closed loop, and after the rotation is completed, the average control voltage is calculated and the corresponding motor commutation zero position is recorded;
[0091] S33: increasing the motor commutation zero position by a fixed step length, and determining whether the motor commutation zero position after the increase exceeds the approximate range of the motor commutation zero position. If it does not exceed the approximate range of the motor commutation zero position, executing step S32; if it exceeds the approximate range of the motor commutation zero position, executing step S34;
[0092] S34: performing a second-order fitting operation according to the obtained motor commutation zero position and the corresponding average control voltage to obtain an average control voltage function with the motor commutation zero position as an independent variable;
[0093] S35: Obtain the independent variable corresponding to the minimum value of the average control voltage function, wherein the independent variable is the optimal value of the motor commutation zero position.
[0094] Specifically, in the embodiment of the present invention, the servo system uses a DSP (Digital Signal Processor) as a controller, takes the rotor angular position as the control object, uses an induction synchronizer as a detection device to detect the rotor angular position, and uses a two-phase permanent magnet brushless torque motor as a servo motor to achieve a high-precision servo control function. Among them, the relevant parameters of the online calibration method of the motor commutation zero position are as follows: the number of pole pairs of the motor is 18 pairs of poles, so the value range of the motor commutation zero position is ; The initial time for searching the motor switching zero position is 7 seconds, the normal voltage value is set to 0.2V, and the saturation voltage value is set to 2.0V; When searching the initial value of the motor switching zero position, the coarse value of the phase switching zero position is searched with a fixed step size of 1°; The approximate range width of the motor phase switching zero position coarse search is ; The fixed step length for accurate search of motor commutation zero position is .
[0095] The specific steps of the online calibration method of the motor commutation zero position are as follows:
[0096] 1. Search for the initial value of the motor line change zero position, the steps are as follows:
[0097] Step 11: The open-loop control voltage is set to the normal voltage value of 0.2V; the motor commutation zero position is set to the starting point of the value range ; The saturation voltage value is 2V; the coarse value of the commutation zero position is searched with a fixed step size of , the servo system is set to open-loop working mode, driving the rotor to rotate in open loop at a frequency of 1000Hz;
[0098] Step 12: The induction synchronizer measures the angular position data of the rotor at a frequency of 1000 Hz, and calculates the rotational angular velocity according to the angular position data of the rotor;
[0099] Step 13: Detect the rotational angular velocity. If the detection cumulative time reaches 7 seconds, and if the absolute value of the rotational angular velocity is greater than the rated value of the servo system motor , the current motor commutation zero position is considered to be the initial value of the motor commutation zero position, and the process goes to step 16. Otherwise, the test continues. If the cumulative test time reaches 7 seconds, the absolute value of the rotation angular velocity value is still not greater than the rated value of the servo system motor. , then stop this step and go to step 14;
[0100] Step 14: Motor Commutation Zero Position Increase If the motor commutation zero position after the increase does not exceed the end of the value interval, return to step 12; if the motor commutation zero position after the increase has exceeded the value interval, continue to step 15;
[0101] Step 15: the open-loop control voltage is increased by 0.1V. If the increased control voltage is less than or equal to 2V, the search is returned to step 12 to continue; otherwise, the search fails and the algorithm ends.
[0102] Step 16: Determine the direction of the rotation angular velocity. If the rotation angular velocity sign is positive, the motor commutation zero position rough value is the motor commutation zero position currently used; if the rotation angular velocity sign is negative, the motor commutation zero position rough value is the current commutation zero position plus , and use the value interval length 20 to take the modulus, so that the motor commutation zero position rough value is within the value range. In this embodiment, the motor commutation zero position rough value is .
[0103] 2. Rough search for the motor commutation zero position, the steps are as follows:
[0104] Step 21: Select the fixed rotation range ; Set the commutation zero position to the motor commutation zero position rough value ;
[0105] Step 22: Rotate the rotor to the starting angle ; At the end of the interval As the target value, the closed loop drives the motor to rotate; after the rotation is completed, the motor commutation zero position is calculated as The average control voltage at ;
[0106] Step 23: Set the commutation zero position to the motor commutation zero position coarse value increase ; Rotate the rotor to the starting angle again ; At the end of the interval As the target value, the closed loop drives the motor to rotate; after the rotation is completed, the commutation zero position is calculated as The average control voltage at
[0107] Step 24: Check if it is satisfied If the condition is not met, go to step 25; otherwise, go to step 27;
[0108] Step 25: Forward search process: add the motor commutation zero position , assuming that the value of the commutation zero position is , judge the commutation zero position Whether it exceeds the value range of the servo system motor commutation zero position , if it exceeds, the rough search fails;
[0109] If it does not exceed, turn the rotor to the starting angle again. ; At the end of the interval is the target value, and the closed loop drives the motor to rotate. The commutation zero position is calculated as The corresponding average control voltage ;
[0110] Step 26: Compare the commutation zero position to The average control voltage at The commutation zero position is The average control voltage at , determine whether If the condition is met, the rough search ends and the approximate range of the motor commutation zero position is ; Otherwise, the motor commutation zero position coarse value increases , continue to loop and execute step 25;
[0111] Step 27: Set the commutation zero position to the motor commutation zero position rough value ;
[0112] Step 28: Reduce the motor commutation zero position , assuming that the value of the commutation zero position is , judge the commutation zero position Whether it exceeds the value range of the servo system motor commutation zero position , if it exceeds, the rough search fails;
[0113] If it does not exceed, turn the rotor to the starting angle again. ; At the end of the interval is the target value, and the closed loop drives the motor to rotate. After the rotation is completed, the commutation zero position is calculated as The average control voltage at ;
[0114] Step 29 compares the commutation zero position to The average control voltage at The commutation zero position is The average control voltage at , determine whether If this condition is met, the rough search ends and the approximate range of the motor commutation zero position is ; Otherwise, continue to step 28.
[0115] 3. To find the motor commutation zero position accurately, the steps are as follows:
[0116] Step 31: Select the fixed rotation range Same as the rough search for motor commutation zero position; set the commutation zero position as the starting point of the approximate range of the motor commutation zero position; rotate the rotor to ;by is the target value, and the closed loop drives the motor to rotate;
[0117] Step 32: After the rotation is completed, calculate and record the precise average motor control voltage, and record the corresponding commutation zero position;
[0118] Step 33: Increase the commutation zero position by a fixed step size ; Determine whether the commutation zero position is exceeded after the increase. If not, return to step 32; if it has exceeded the approximate range, execute step 35;
[0119] Step 34: performing a second-order fitting operation according to the obtained commutation zero position and the corresponding precise average motor control voltage to obtain a one-variable quadratic function with the commutation zero position as the independent variable and the precise average motor control voltage as the dependent variable;
[0120] Step 35: Obtain the motor commutation zero position independent variable corresponding to the minimum value of the dependent variable of the functional expression, which is the optimal value of the motor commutation zero position.
[0121] The advantages of the present invention are:
[0122] (1) The present invention does not require the construction of an additional test environment. The servo system itself can be used to complete the calibration of the motor commutation zero position online, which greatly reduces the difficulty of implementing the motor commutation zero position calibration. After the servo system is put into use, the motor commutation zero position can also be calibrated at any time to ensure the optimal output efficiency of the servo system;
[0123] (2) The present invention can automatically complete the motor commutation zero position calibration. After the user sends a start command, the optimal motor commutation zero position result can be obtained without human intervention. The user does not need to master the calibration principle and calibration process, which reduces the difficulty of operation and implementation;
[0124] (3) The present invention directly uses the actual control voltage as the criterion, searches step by step, gradually narrows the search range, and finally obtains the motor commutation zero position through data fitting, and obtains the motor commutation zero position that minimizes the control voltage. In theory, the optimal single-machine commutation zero position can be obtained.
[0125] like Figure 2 As shown, the present invention provides a servo system motor commutation zero position automatic calibration system, which is used to execute a servo system motor commutation zero position automatic calibration method, and includes the following modules:
[0126] The motor commutation zero position rough value search module 101 is used to set the value interval of the motor commutation zero position of the servo system and obtain the motor commutation zero position rough value;
[0127] A motor commutation zero position rough search module 102 is used to obtain a rough range of the motor commutation zero position by taking the motor commutation zero position rough value as a search starting point;
[0128] The motor commutation zero position precise search module 103 is used to precisely search for the motor commutation zero position within the approximate range of the motor commutation zero position, and to obtain the precise search average motor control voltage, and to obtain the motor optimal commutation zero position through a data fitting algorithm.
[0129] on the other hand, Figure 3 An example of a physical structure diagram of an electronic device is shown in FIG. Figure 3 As shown, the electronic device may include: a processor 810, a communication interface 820, a memory 830 and a communication bus 840, wherein the processor 810, the communication interface 820 and the memory 830 communicate with each other through the communication bus 840. The processor 810 may call the logic instructions in the memory 830 to execute a servo system motor commutation zero position automatic calibration method, the method comprising:
[0130] S1: Set the value range of the commutation zero position of the servo system motor and obtain the rough value of the commutation zero position of the motor;
[0131] S2: Coarse search for motor commutation zero position: taking the coarse value of the motor commutation zero position as the search starting point, obtaining the approximate range of the motor commutation zero position;
[0132] S3: Precise search for the motor commutation zero position: within the approximate range of the motor commutation zero position, the fixed step size is precisely searched to obtain the corresponding average motor control voltage, and the optimal motor commutation zero position is obtained through a data fitting algorithm.
[0133] In addition, the logic instructions in the above-mentioned memory 830 can be implemented in the form of a software functional unit and can be stored in a computer-readable storage medium when it is sold or used as an independent product. Based on this understanding, the technical solution of the present invention is essentially or the part that contributes to the prior art or the part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk and other media that can store program codes.
[0134] On the other hand, the present invention further provides a computer program product, the computer program product comprising a computer program stored on a non-transitory computer-readable storage medium, the computer program comprising program instructions, when the program instructions are executed by a computer, the computer can execute a servo system motor commutation zero position automatic calibration method provided by the above methods, the method comprising:
[0135] S1: Set the value range of the commutation zero position of the servo system motor and obtain the rough value of the commutation zero position of the motor;
[0136] S2: Coarse search for motor commutation zero position: taking the coarse value of the motor commutation zero position as the search starting point, obtaining the approximate range of the motor commutation zero position;
[0137] S3: Precise search for motor commutation zero position: within the approximate range of the motor commutation zero position, the motor is precisely searched with a fixed step size to obtain the average motor control voltage, and the optimal motor commutation zero position is obtained through a data fitting algorithm.
[0138] In another aspect, the present invention further provides a non-transitory computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, a method for automatically calibrating the commutation zero position of a servo system motor provided by the above methods is implemented, and the method comprises:
[0139] S1: Set the value range of the commutation zero position of the servo system motor and obtain the rough value of the commutation zero position of the motor;
[0140] S2: Coarse search for motor commutation zero position: taking the coarse value of the motor commutation zero position as the search starting point, obtaining the approximate range of the motor commutation zero position;
[0141] S3: Precise search for the motor commutation zero position: within the approximate range of the motor commutation zero position, the fixed step size is precisely searched to obtain the corresponding average motor control voltage, and the optimal motor commutation zero position is obtained through a data fitting algorithm.
[0142] The above described system, device, product and medium embodiments are merely illustrative, wherein the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the present embodiment. Ordinary technicians in this field can understand and implement them without creative work.
[0143] Through the description of the above implementation methods, those skilled in the art can clearly understand that each implementation method can be implemented by means of software plus a necessary general hardware platform, and of course, can also be implemented by hardware. Based on this understanding, the above technical solution is essentially or the part that contributes to the prior art can be embodied in the form of a software product, and the computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, a disk, an optical disk, etc., including a number of instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in each embodiment or some parts of the embodiments.
[0144] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.
Claims
1. A method for automatically calibrating the commutation zero position of a servo system motor, characterized in that: The following steps are involved: S1: Set the value range of the commutation zero position of the servo system motor and obtain the rough value of the commutation zero position of the motor; S2: Taking the rough value of the motor commutation zero position as the search starting point, obtain the approximate range of the motor commutation zero position: S21: Select a fixed rotation interval and set the commutation zero position to the rough value of the motor commutation zero position , rotate the rotor to the starting angle of the fixed rotation range; S22: With the end point of the fixed rotation interval as the target value, the closed-loop drive motor rotates. After the rotation is completed, the commutation zero position is calculated as The average control voltage at ; S3: Within the approximate range of the motor commutation zero position, the motor is stepped with a fixed step size to obtain the average motor control voltage, and the optimal motor commutation zero position is obtained through a data fitting algorithm: S31: Selecting a fixed rotation interval that is the same as the motor commutation zero position rough search, setting the commutation zero position as the approximate starting point of the motor commutation zero position, and rotating the rotor to the starting angle of the fixed rotation interval; S32: Taking the end point of the fixed rotation interval as the target value, the motor is driven to rotate in a closed loop, and after the rotation is completed, the average motor control voltage is calculated accurately and the corresponding commutation zero position is recorded; S33: increasing the commutation zero position by a fixed step size to determine whether the increased commutation zero position exceeds the approximate range of the motor commutation zero position. If it does not exceed the approximate range of the commutation zero position, executing step S32; if it exceeds the approximate range of the commutation zero position, executing S34; S34: performing a second-order fitting operation according to the obtained commutation zero position and the corresponding precise average motor control voltage to obtain a one-variable quadratic function with the commutation zero position as the independent variable and the precise average motor control voltage as the dependent variable; S35: Calculate the commutation zero position corresponding to the minimum value of the dependent variable of the function, which is the optimal value of the motor commutation zero position.
2. A servo system motor commutation zero position automatic calibration method according to claim 1, characterized in that: Step S1 also includes: S11: Set the value range of the servo system motor commutation zero position to , As the end point of the value interval, set the normal voltage value, saturation voltage value and the coarse value for searching the commutation zero position with a fixed step size; S12: Set the servo system motor to an open-loop working state, and set the open-loop control voltage to a normal voltage value; S13: measuring the angular position data of the rotor of the servo system motor and calculating the rotor angular velocity; S14: if the absolute value of the rotor angular velocity at any time is less than or equal to the rated value of the servo system motor during a period greater than or equal to 5 seconds, then execute step S15; if the absolute value of the rotor angular velocity at any time is greater than the rated value of the servo system motor, then execute step S17; S15: Motor commutation zero position increases the search for commutation zero position coarse value with a fixed step size. If the motor commutation zero position after the increase does not exceed the end of the value range , then return to step S13; if the motor commutation zero position has exceeded the end of the value interval after the increase , then continue to execute step S16; S16: the open-loop control voltage is increased by a fixed amount. If the increased open-loop control voltage does not exceed the saturation voltage value, the process returns to step S13; if the increased open-loop control voltage exceeds the saturation voltage value, the search fails and the algorithm ends. S17: Determine the direction of the rotor angular velocity. If the direction of the rotor angular velocity is positive, the motor commutation zero position rough value Equal to the current commutation zero position ; If the direction of the rotor angular velocity is negative, the motor commutation zero position coarse value Equal to the current commutation zero position Add half the length of the value interval, and the formula is: 。 3. The method for automatically calibrating the commutation zero position of a servo system motor according to claim 1, characterized in that: Step S2 also includes: S23: Add the commutation zero position , rotate the rotor to the starting angle of the fixed rotation interval, take the end point of the fixed rotation interval as the target value, drive the motor to rotate in a closed loop, and after the rotation is completed, calculate the commutation zero position as The average control voltage at ; S24: Inspection Is it greater than the judgment threshold? ,like , then execute step S25, if , then execute step S27; S25: Add the commutation zero position , assuming that the value of the commutation zero position is ,judge Whether it exceeds the value range of the commutation zero position of the servo system motor. If so, the rough search fails; If it does not exceed, rotate the rotor to the starting angle of the fixed rotation interval, take the end point of the fixed rotation interval as the target value, drive the motor to rotate in a closed loop, and after the rotation is completed, calculate the commutation zero position as The average control voltage at ; S26: Compare the commutation zero position The average control voltage at The commutation zero position is The average control voltage at , determine whether If the conditions are met, the rough search ends and the approximate range of the motor commutation zero position is , if the condition is not met, execute S25; S27: The commutation zero position is set to the rough value of the motor commutation zero position ; S28: Reduce the commutation zero position , assuming that the value of the commutation zero position is ,judge Whether it exceeds the value range of the commutation zero position of the servo system motor. If so, the rough search fails; If the rotor is rotated to the starting angle of the fixed rotation interval before exceeding it, the end point of the fixed rotation interval is taken as the target value, and the closed-loop drive motor rotates. After the rotation is completed, the commutation zero position is calculated as The average control voltage at ; S29: Compare the commutation zero position The average control voltage at The commutation zero position is The average control voltage at , determine whether If the conditions are met, the rough search ends and the approximate range of the motor commutation zero position is If the condition is not met, execute S28.
4. A servo system motor commutation zero position automatic calibration method according to claim 2, characterized in that: Step S1 also includes: according to the number of motor pole pairs Sure : .
5. The method for automatically calibrating the commutation zero position of a servo system motor according to claim 1, characterized in that: Step S3 also includes: the fixed step length of the precise search is required to be less than or equal to .
6. A servo system motor commutation zero position automatic calibration system, used to execute a servo system motor commutation zero position automatic calibration method as claimed in any one of claims 1 to 5, characterized in that: include: Motor commutation zero position rough value search module: set the value range of the servo system motor commutation zero position and obtain the motor commutation zero position rough value; Motor commutation zero position rough search module: take the motor commutation zero position rough value as the search starting point, obtain the approximate range of the motor commutation zero position: select a fixed rotation interval, set the commutation zero position as the motor commutation zero position rough value , rotate the rotor to the starting angle of the fixed rotation interval; take the end point of the fixed rotation interval as the target value, drive the motor to rotate in a closed loop, and after the rotation is completed, the commutation zero position is calculated as The average control voltage at ; Motor commutation zero position precise search module: within the approximate range of the motor commutation zero position, the module precisely searches for a fixed step size to obtain the corresponding average motor control voltage, and obtains the optimal motor commutation zero position through a data fitting algorithm: S31: Selecting a fixed rotation interval that is the same as the motor commutation zero position rough search, setting the commutation zero position as the approximate starting point of the motor commutation zero position, and rotating the rotor to the starting angle of the fixed rotation interval; S32: Taking the end point of the fixed rotation interval as the target value, the motor is driven to rotate in a closed loop, and after the rotation is completed, the average motor control voltage is calculated accurately and the corresponding commutation zero position is recorded; S33: increasing the commutation zero position by a fixed step size to determine whether the increased commutation zero position exceeds the approximate range of the motor commutation zero position. If it does not exceed the approximate range of the commutation zero position, execute S32; if it exceeds the approximate range of the commutation zero position, execute S34; S34: performing a second-order fitting operation according to the obtained commutation zero position and the corresponding precise average motor control voltage to obtain a one-variable quadratic function with the commutation zero position as the independent variable and the precise average motor control voltage as the dependent variable; S35: Calculate the commutation zero position corresponding to the minimum value of the dependent variable of the function, which is the optimal value of the motor commutation zero position.
7. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the computer program, the steps of the method for automatically calibrating the commutation zero position of a servo system motor as described in any one of claims 1 to 5 are implemented.
8. A non-transitory computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by the processor, the steps of the method for automatically calibrating the commutation zero position of a servo system motor as described in any one of claims 1 to 5 are implemented.
9. A computer program product, the computer program product comprising a computer program stored on a non-transitory computer-readable storage medium, the computer program comprising program instructions, characterized in that: When the program instructions are executed by a computer, the computer can execute the steps of a method for automatic calibration of the commutation zero position of a servo system motor as described in any one of claims 1 to 5.
Citation Information
Patent Citations
Method for real-time estimation of commutation overlap angle of high-voltage direct current transmission
CN109494781A
Projection calibration method and device, storage medium and electronic equipment
CN114612409A