Multi-motor control method, module, system, device, and storage medium
By setting the N-channel excitation signal phase in the drive control device, the peaks or valleys of the position signal in the multi-motor system are aligned, and soft decoding and multi-core driving control are adopted to solve the problems of high cost and slow response of the multi-motor control system, and the cost reduction and response speed improvement are achieved.
Patent Information
- Application Number
- PCT/CN2023/142658
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-12-28
- Publication Date
- 2025-07-03
AI Technical Summary
In multi-motor control systems, the prior art has problems of high cost and slow response speed, especially when using a rotor position detection using a rotor transformer, the hard decoding circuit is expensive and the system is slow to respond.
By connecting the driving control device to multiple rotation transformers, the phase of the N-channel excitation signal is set so that the peaks or peaks of the sinusoidal position signal in the N-channel position signal are aligned with the trough, the motor rotor position is decoded by soft decoding, and the driving control is performed using a multi-core driving controller.
The cost reduction of multi-motor control and the improvement of system response speed are achieved, ensuring sampling accuracy and reliability, while avoiding the increase in hardware costs.
Smart Images

Figure CN2023142658_03072025_PF_FP_ABST
Abstract
Description
Multi-motor control method, module, system, device and storage medium Technical Field
[0001] The present invention relates to the field of motor control technology, and in particular to a multi-motor control method, module, system, device and storage medium. Background Art
[0002] In automotive motor drive control systems, resolvers (rotating transformers) are commonly used to acquire the motor's rotor position. The motor is an essential actuator in the vehicle system, and accurate rotor position acquisition is a prerequisite for motor control. Therefore, resolvers are currently used to acquire rotor position for important motors, such as the front and rear drive motors, and the generators that operate in conjunction with the engine.
[0003] In the current automotive industry, each resolver signal is resolved by a corresponding controller chip. This results in high manufacturing costs in multi-motor applications. For example, some current solutions use a corresponding controller chip for each resolver signal, using either hard decoding or soft decoding to determine the rotor position. Other solutions employ both hard and soft decoding, for example, using soft decoding to determine the rotor angle while hard decoding serves as a verification function. However, hard decoding circuitry is generally costly.
[0004] Other solutions use a single controller chip to handle multiple motors. For example, in one current solution, a single controller chip achieves both single-motor angle redundancy and dual-motor angle decoding. Specifically, when decoding the dual-motor angles, one motor uses software decoding, while the other uses hard decoding. Solutions like these that require hard decoding for rotor position calculation typically have high circuit costs. Furthermore, in some current solutions, when a single controller chip is used to handle multiple motors, the system response is typically slow.
[0005] In summary, how to effectively realize the control of multiple motors, reduce costs, and improve the response speed of the system is a technical problem that those skilled in the art urgently need to solve.
[0006] Summary of the Invention
[0007] The purpose of the present invention is to provide a multi-motor control method, module, system, device and storage medium to effectively realize the control of multiple motors, reduce costs and improve the response speed of the system.
[0008] To solve the above technical problems, in a first aspect, the present invention provides a multi-motor control method, which is applied to a drive control device, wherein the drive control device is connected to N rotary transformers, where N is a positive integer not less than 2; the N rotary transformers are used to detect the rotor positions of the N motors based on N excitation signals, generate N position signals, and feed back the N position signals to the drive control device; the multi-motor control method includes:
[0009] The N excitation signals are respectively sent to the N rotary transformers, and by setting the phases of the N excitation signals, when the N position signals are received, the peaks of the sinusoidal position signals in the N position signals are aligned or the peaks and troughs are aligned;
[0010] Decoding the rotor positions of the N motors according to the received N position signals;
[0011] According to the respective rotor positions of the N motors, the N motors are driven and controlled respectively;
[0012] The position signal output by any one of the rotary transformers includes a sine position signal and a cosine position signal for reflecting the rotor position of the corresponding motor.
[0013] In one embodiment, setting the phases of the N excitation signals so that when the N position signals are received, the peaks of the sinusoidal position signals in the N position signals are aligned or the peaks and troughs are aligned includes:
[0014] Reading the calibration coefficients of the N excitation signals;
[0015] The phases of the N excitation signals are set according to the read N calibration coefficients, so that when the N position signals are received, the peaks of the sinusoidal position signals in the N position signals are aligned or the peaks and troughs are aligned.
[0016] In one embodiment, the multi-motor control method further includes:
[0017] When any of the M excitation signals is detected to be abnormal, an a-way excitation signal is selected from the remaining NM normal excitation signals;
[0018] For any one of the selected a excitation signals, sending the excitation signal to at least two of the rotary transformers, so that each of the N rotary transformers receives one of the excitation signals;
[0019] M is a positive integer and M<N, a is a positive integer and a≤NM, and a≤M.
[0020] In one embodiment, N=2, and the multi-motor control method further includes:
[0021] When an abnormality is detected in any one of the two excitation signals, the phase of the other excitation signal that is not abnormal is adjusted with the first condition as the target;
[0022] The first condition is that when the drive control device samples the two position signals, the absolute values of the sinusoidal position signals in the two position signals meet a preset condition.
[0023] In one embodiment, the drive control device includes: a multi-core drive controller, an excitation signal generating circuit, and a feedback circuit; the multi-core drive controller includes the 1st to the N+1th control cores;
[0024] The sending of the N excitation signals to the N rotary transformers respectively includes:
[0025] Sending N pulse signals to the excitation signal generating circuit through the multi-core drive controller;
[0026] generating N excitation signals based on the N pulse signals by the excitation signal generating circuit, and sending the N excitation signals to the N rotary transformers respectively;
[0027] Decoding the rotor positions of the N motors according to the received N position signals includes:
[0028] Receiving N channels of the position signals through the feedback circuit, and amplifying and performing analog-to-digital conversion processing on the N channels of the position signals to obtain N channels of feedback signals;
[0029] Decoding the N feedback signals by the first control core to obtain the rotor positions of the N motors;
[0030] The driving control of the N motors is performed according to the respective rotor positions of the N motors, including:
[0031] The N motors are driven and controlled respectively by the second to N+1th control cores according to the respective rotor positions of the N motors.
[0032] In one embodiment, the multi-core drive controller is configured with a global first write lock and a global first read lock; and the multi-motor control method further includes any one of the following processes:
[0033] When the first control core writes the rotor positions of the N motors into the first storage space, the first write lock is set to a first state to prohibit the second to N+1 control cores from reading data in the first storage space;
[0034] When the first control core is not in the process of writing the rotor positions of the N motors into the first storage space, the first write lock is set to a second state to allow the second to N+1 control cores to read data from the first storage space;
[0035] When any one of the second to N+1th control cores reads the rotor positions of the N motors from the first storage space, the first read lock is set to a first state to prohibit the first control core from writing data to the first storage space;
[0036] When any one of the 2nd to N+1th control cores does not read the rotor positions of the N motors from the first storage space, the first read lock is set to the second state to allow the first control core to write data to the first storage space.
[0037] In a second aspect, the present invention provides a multi-motor control module, which is provided in a drive control device and includes:
[0038] an excitation signal sending unit, configured to send the N excitation signals to the N rotary transformers respectively, and to set the phases of the N excitation signals so that when the N position signals are received, the peaks of the sinusoidal position signals in the N position signals are aligned or the peaks and troughs are aligned;
[0039] A rotor position decoding unit, configured to decode the rotor position of each of the N motors based on the received N position signals;
[0040] A drive control execution unit, configured to respectively control the drive of the N motors according to the respective rotor positions of the N motors;
[0041] The position signal output by any one of the rotary transformers includes a sine position signal and a cosine position signal for reflecting the rotor position of the corresponding motor.
[0042] In a third aspect, the present invention provides a multi-motor control system, comprising a drive control device and N rotary transformers connected to the drive control device, where N is a positive integer not less than 2;
[0043] The drive control device is used to send the N excitation signals to the N rotary transformers respectively;
[0044] N rotary transformers are used to detect the rotor positions of the N motors based on the N excitation signals to generate N position signals, and feed back the N position signals to the drive control device;
[0045] The drive control device is also used to set the phase of the N excitation signals so that when the N position signals are received, the peaks of the sinusoidal position signals in the N position signals are aligned or the peaks and troughs are aligned; based on the received N position signals, the rotor positions of the N motors are decoded; and based on the rotor positions of the N motors, the N motors are driven and controlled respectively.
[0046] In a fourth aspect, the present invention provides a multi-motor control device, comprising:
[0047] memory for storing computer programs;
[0048] A processor is used to execute the computer program to implement the steps of the multi-motor control method as described above.
[0049] In a fifth aspect, the present invention provides a computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the steps of the multi-motor control method as described above are implemented.
[0050] By applying the technical solution provided in the embodiment of the present invention, the rotor positions of multiple motors can be processed simultaneously by the drive control device, thereby realizing the drive control of multiple motors. Specifically, the drive control device of the present application is connected to N rotary transformers, and N excitation signals can be sent to the N rotary transformers respectively. The N rotary transformers can detect the rotor positions of the respective N motors based on the N excitation signals to generate N position signals, and then feed back the N position signals to the drive control device. The drive control device decodes the rotor positions of the respective N motors according to the received N position signals. It can be seen that the solution of the present application does not set up a special hardware decoding device, but decodes the rotor positions of the respective N motors by the drive control device in a soft decoding manner, thereby reducing hardware costs. Then, the drive control device can drive and control the N motors according to the respective rotor positions of the N motors, and the solution of the present application also takes into account that if the drive control device detects the N position signals separately by sampling N times in each sampling period, the system response will be slow. In this regard, the solution of the present application takes into account that the phases of the N excitation signals can be set so that when the N position signals are received, the peaks of the sinusoidal position signals in the N position signals are aligned or the peaks and troughs are aligned. Since the peaks of the sinusoidal position signals in the N position signals are aligned or the peaks and troughs are aligned, within a single sampling period, only one suitable sampling moment needs to be selected, that is, the moment when the sinusoidal position signals and cosine position signals in each position signal are either at a peak or a trough, and the N position signals can be sampled simultaneously at this sampling moment, so that the sampling period required by the solution of the present application is very short, which is also conducive to improving the response speed of the system. Moreover, the sampled signal has a sufficiently high signal-to-noise ratio, and there will be no situation where a certain sine position signal or cosine position signal affects the sampling accuracy due to its amplitude being too low. That is, the solution of the present application will not affect the accuracy of the rotor positions of the N motors obtained, thereby ensuring the reliability of the control of multiple motors.
[0051] In summary, the solution of the present application can effectively realize the control of multiple motors, reduce costs, and improve the response speed of the system. BRIEF DESCRIPTION OF THE DRAWINGS
[0052] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative work.
[0053] FIG1 is a flowchart of a multi-motor control method according to a specific embodiment of the present invention;
[0054] FIG2 is a schematic structural diagram of a multi-motor control system provided by a specific embodiment of the present invention;
[0055] FIG3 is a schematic structural diagram of a drive control device provided in a specific embodiment of the present invention;
[0056] FIG4 is a schematic diagram showing that the peaks of sinusoidal position signals in any two position signals are aligned or the peaks and troughs are aligned in accordance with a specific embodiment of the present invention;
[0057] FIG5 is a schematic diagram of the internal structure of a multi-core drive controller provided in a specific embodiment of the present invention;
[0058] FIG6 is a schematic structural diagram of a drive control device provided in another specific embodiment of the present invention;
[0059] FIG7 is a schematic structural diagram of a multi-motor control module provided in a specific embodiment of the present invention. DETAILED DESCRIPTION
[0060] The core of the present invention is to provide a multi-motor control method, which can effectively realize the control of multiple motors, reduce costs and improve the response speed of the system.
[0061] In order to enable those skilled in the art to better understand the present invention, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments. Obviously, the embodiments described are only some of the embodiments of the present invention, and not all of them. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present invention.
[0062] Please refer to Figure 1, which is a flowchart of a multi-motor control method provided by a specific embodiment of the present invention. The multi-motor control method can be applied to a drive control device, which is connected to N rotary transformers, where N is a positive integer not less than 2. The N rotary transformers are used to detect the rotor positions of the N motors based on N excitation signals, generate N position signals, and feed back the N position signals to the drive control device. The multi-motor control method may include the following steps:
[0063] Step S101: N excitation signals are sent to N rotary transformers respectively, and by setting the phases of the N excitation signals, when N position signals are received, the peaks of the sinusoidal position signals in the N position signals are aligned or the peaks and troughs are aligned.
[0064] Specifically, in the solution of the present application, the drive control device can send N excitation signals to N rotary transformers respectively, and can subsequently receive N position signals fed back by the N rotary transformers. N is a positive integer not less than 2. Figure 2 is a structural diagram of a multi-motor control system provided by a specific embodiment of the present invention. In the example of Figure 2, the drive control device is connected to two rotary transformers, that is, N=2 in this example, and it should be noted that N=2 is also a more commonly used implementation method in actual applications. When the value of N is larger, the performance requirements for the drive control device will be higher.
[0065] It should be noted that the drive control device sends N excitation signals to N rotary transformers respectively. Specifically, the drive control device sends N excitation signals to N rotary transformers in a one-to-one correspondence, that is, excitation signal 1 is sent to the first rotary transformer, excitation signal 2 is sent to the second rotary transformer, and so on. Excitation signal N is sent to the Nth rotary transformer, so that in the absence of errors, each rotary transformer can receive the corresponding excitation signal.
[0066] The drive control device can not only send N excitation signals to N resolvers separately, but also set the phase of the N excitation signals. The purpose is to set the phase of the N excitation signals so that when the N position signals fed back by the N resolvers are subsequently received, the sinusoidal position signals in the N position signals are peak-aligned or the peaks and troughs are aligned. In other words, for the N position signals fed back by the N resolvers, no matter which two position signals are selected, the sinusoidal position signals in the selected two position signals are peak-aligned or the peaks and troughs are aligned. Adjusting the phase of the excitation signal does not change the rotor position subsequently decoded.
[0067] It should be noted that the position signal output by any one rotary transformer includes a sine position signal and a cosine position signal for reflecting the rotor position of the corresponding motor, and the sine position signal and the cosine position signal have the same phase or a phase difference of 180°. Therefore, if the sine position signals in the N-way position signals are peak-aligned or peak-to-trough aligned, then the cosine position signals in the N-way position signals are also peak-aligned or peak-to-trough aligned. In other words, after executing the operation of step S101 of the present application, for a subsequent sampling moment, if the sine position signal in a certain position signal is at a peak position at the sampling moment, then for the sine position signals in the remaining position signals, and the cosine position signal in each position signal, at the sampling moment, they are either at a peak position or at a trough position, and the sampling at the peak or trough position has a sufficiently high signal-to-noise ratio, which can effectively ensure the accuracy of the sampling and reduce the sampling error.
[0068] Step S102: decoding the rotor positions of the N motors based on the received N position signals.
[0069] Since the N rotary transformers can detect the rotor positions of the N motors based on the N excitation signals and feed back N position signals, the drive control device can decode the rotor positions of the N motors based on the received N position signals.
[0070] It should be noted that the specific conditions for triggering sampling by the drive control device can be set and adjusted according to actual needs, but it is usually necessary to set it to periodic sampling, and from the previous description, it can be seen that in the scheme of the present application, there is only one sampling moment in each sampling cycle, and the sampling of N-channel position signals will be realized at this sampling moment.
[0071] Since the N position signals reflect the rotor position information of each of the N motors, the rotor positions of each of the N motors can be decoded based on the received N position signals.
[0072] Step S103: driving and controlling the N motors respectively according to their respective rotor positions;
[0073] Once the rotor positions of the N motors are obtained, the drive control of the N motors can be performed separately. The specific drive control rules of each motor can be set and adjusted according to actual needs. The closed-loop vector control drive control method is usually adopted.
[0074] In a specific embodiment of the present invention, the phases of the N excitation signals are set in step S101 so that when the N position signals are received, the peaks of the sinusoidal position signals in the N position signals are aligned or the peaks and troughs are aligned, which may specifically include:
[0075] Read the calibration coefficients of N excitation signals;
[0076] The phases of the N excitation signals are set according to the read N calibration coefficients, so that when the N position signals are received, the peaks of the sinusoidal position signals in the N position signals are aligned or the peaks and troughs are aligned.
[0077] As described above, the drive control device can not only send N excitation signals to N rotating transformers respectively, but also set the phase of the N excitation signals. This implementation method takes into account that for a specific device, when receiving N position signals, the sinusoidal position signal peaks in the N position signals should be aligned or the peaks and troughs should be aligned. The phase difference between the N excitation signals can be determined in advance by experimentally observing the waveforms, and can be stored in the form of calibration coefficients, so that in subsequent use, the calibration coefficients of the N excitation signals can be directly read, and the phase of the N excitation signals can be set according to the read N calibration coefficients, without the need to adjust the phase of the N excitation signals through relevant detection procedures each time the power is turned on. That is, this implementation method is conducive to improving the convenience of step S101 during execution.
[0078] The specific structure of the drive control device of the present application can be set and adjusted according to actual needs, as long as the functional requirements of the drive control device of the present application can be achieved. For example, in a specific embodiment of the present invention, please refer to FIG3, which is a schematic diagram of the structure of the drive control device in a specific embodiment of the present invention. In this embodiment, the drive control device specifically includes: a multi-core drive controller, an excitation signal generating circuit, and a feedback circuit; the multi-core drive controller includes the 1st to the N+1th control cores;
[0079] Accordingly, the sending of N excitation signals to N rotary transformers described in step S101 may specifically include:
[0080] Sending N pulse signals to the excitation signal generating circuit through the multi-core drive controller;
[0081] generating N excitation signals based on the N pulse signals through an excitation signal generating circuit, and sending the N excitation signals to the N rotary transformers respectively;
[0082] Accordingly, step S102 may specifically include:
[0083] The feedback circuit receives N position signals, amplifies and performs analog-to-digital conversion on the N position signals to obtain N feedback signals.
[0084] The first control core decodes the N feedback signals to obtain the rotor positions of the N motors.
[0085] Accordingly, step S103 may specifically include:
[0086] The N motors are driven and controlled respectively by the 2nd to N+1th control cores according to the respective rotor positions of the N motors.
[0087] In this embodiment, the drive control device specifically uses a multi-core drive controller. This allows rotor position decoding and the drive control of each of the N motors to be implemented by different control cores, ensuring the reliability of the drive control of each of the N motors and also facilitating improved algorithm speed. Furthermore, compared to designs using multiple controller chips, the multi-core drive controller employed in this application facilitates high device integration and improves space utilization. In practical applications, the multi-core drive controller can be, for example, a multi-core single-chip microcomputer.
[0088] Since the controller usually transmits and receives digital signals, and the excitation signal required by the rotary transformer is an analog signal, usually a sinusoidal excitation signal, in this specific implementation, N pulse signals are sent to the excitation signal generation circuit through the multi-core drive controller. In the example of Figure 3, the multi-core drive controller specifically sends two PWM pulse signals to the excitation signal generation circuit. For example, the duty cycle of these two PWM pulse signals is 50%. Of course, in other specific implementations, the PWM pulse signal can have other duty cycles to obtain the required excitation signal.
[0089] The multi-core drive controller sends N pulse signals to the excitation signal generation circuit, and the excitation signal generation circuit can perform digital-to-analog conversion based on the N pulse signals to generate N excitation signals, and then send the N excitation signals to N rotary transformers respectively. In the example of Figure 3, N=2, so the excitation signal generation circuit specifically includes a first excitation signal generation circuit and a second excitation signal generation circuit, which send sinusoidal excitation signal 1 and excitation signal 2 to the first rotary transformer and the second rotary transformer respectively. The first rotary transformer is used to detect the rotor position of motor 1, and the second rotary transformer is used to detect the rotor position of motor 2. In actual applications, the specific circuit structure of the excitation signal generation circuit can be set and adjusted according to actual needs. For example, a D / A conversion chip, a function generation chip, or an oscillation circuit that can convert a square wave into a sine wave and has a filtering function can be used, so long as the functional requirements of the present application are met, that is, the N excitation signals required by the N rotary transformers can be effectively output. Similarly, the specific models of the N rotary transformers can also be set and adjusted according to actual needs. The models of the N rotary transformers can be the same or different.
[0090] The PWM wave is a high-frequency square wave signal. After being converted into a sinusoidal signal by an excitation signal generating circuit, its mathematical expression is: Asin(wt+φ). In this formula, w represents the frequency of the excitation signal, φ represents the phase of the excitation signal, and A represents the amplitude of the excitation signal. In one example above, the phase of the excitation signal is adjusted by a calibration coefficient, that is, the φ value of the excitation signal is adjusted. In this embodiment, the phase of the PWM pulse signal is adjusted by a calibration coefficient, thereby achieving phase adjustment of the excitation signal. In the example of Figure 3, the calibration coefficient configured for the first PWM pulse signal is denoted as E1, which is the calibration coefficient of excitation signal 1 and can be used to adjust the phase of excitation signal 1. The calibration coefficient configured for the second PWM pulse signal is denoted as E2, which is the calibration coefficient of excitation signal 2 and can be used to adjust the phase of excitation signal 2.
[0091] Taking Figure 3 as an example, when the excitation signal 1 is sent to the first rotary transformer to detect the rotor position of the motor 1, the first position signal generated includes the cosine position signal P 11 and the sinusoidal position signal and P 12 , and P 11 =A1sin(w1t+φ1)cos(θ1), P 12 =A1sin(w1t+φ1)sin(θ1). Similarly, when the excitation signal 2 is sent to the second rotary transformer to detect the rotor position of the motor 2, the second position signal generated includes the cosine position signal P 21 and the sinusoidal position signal and P 22 , and P 21 =A2sin(w2t+φ2)cos(θ2), P 22 =A2sin(w2t+φ2)sin(θ2). Among them, φ1 and φ2 represent the phases of excitation signal 1 and excitation signal 2 respectively, and θ1 and θ2 represent the rotor positions of motor 1 and motor 2 respectively, that is, the angles of the rotors. It can be seen that cos(θ1), sin(θ1), cos(θ2) and sin(θ2) contain the information of the rotor positions of motor 1 and motor 2, and the values vary between [-1, 1]. The effect can be regarded as scaling the excitation signals A1sin(w1t+φ1) and A2sin(w2t+φ2). When the values of φ1 and φ2 change, it will not affect θ1 and θ2, but the position signal P 11 、P 12 、P 21 and P 22 Shifting left and right, which is the phase adjustment of the excitation signal described above, does not change the detected rotor position, but can align the peaks of the sine and cosine position signals or the peaks and troughs of the signals.
[0092] Because P 11 and P 12 It is the sine position signal and cosine position signal in the same position signal, so P 11 and P 12 are always in phase or 180° out of phase, so P 11 and P 12 The peaks are originally aligned or the peaks and troughs are aligned. 21 and P 22 The peaks are originally aligned or the peaks and troughs are aligned, so by setting appropriate φ1 and φ2 values, P 11 、P 12 , P 21 and P 22 The phases of any two signals in the signal generator are the same or 180° apart.
[0093] To facilitate understanding of peak alignment or peak-to-trough alignment, please refer to Figure 4, which is a schematic diagram of peak alignment or peak-to-trough alignment of sinusoidal position signals in any two position signals in a specific embodiment of the present invention. The upper part of Figure 4 shows peak alignment, and the lower part shows peak-to-trough alignment.
[0094] In this embodiment, N position signals are received by a feedback circuit, and the N position signals are amplified and analog-to-digital converted to obtain N feedback signals. The specific circuit structure of the feedback circuit can also be set and adjusted according to actual needs, as long as it can meet the functional requirements of the feedback circuit of this application. It can also be understood that since the position signal output by any one rotary transformer includes a sine position signal and a cosine position signal for reflecting the rotor position of the corresponding motor, therefore, after the feedback circuit amplifies and analog-to-digital converts a certain position signal, the feedback signal obtained will also specifically include two pulse feedback signals.
[0095] Please refer to Figure 5, which is a schematic diagram of the internal structure of a multi-core drive controller in a specific embodiment of the present invention. The multi-core drive controller in Figure 5 is specifically a multi-core single-chip microcomputer, which can decode the rotor position of each of the N motors based on the N feedback signals received through the first control core. In the solution of the present application, soft decoding is used to decode the rotor position of each of the N motors, without the need to set up a hard decoding circuit, effectively reducing hardware costs.
[0096] In the example of Figure 5, N=2. The second control core and the third control core can communicate with the first control core to read the rotor positions of the N motors decoded by the first control core. For example, in this example, the second control core specifically reads the rotor position of motor 1, and the third control core specifically reads the rotor position of motor 2, thereby performing drive control on motor 1 and motor 2 respectively. A multi-core drive controller is used to separate soft decoding from motor drive control. Different control cores implement different functions, effectively improving the running speed of the algorithm.
[0097] In a specific embodiment of the present invention, the multi-core drive controller is configured with a global first write lock and a global first read lock. The multi-motor control method may further include any one of the following processes:
[0098] When the first control core writes the rotor positions of the N motors into the first storage space, the first write lock is set to the first state to prohibit the second to N+1 control cores from reading data in the first storage space;
[0099] When the first control core is not in the process of writing the rotor positions of the N motors into the first storage space, the first write lock is set to the second state to allow the second to N+1 control cores to read data in the first storage space;
[0100] When any one of the second to N+1th control cores reads the rotor positions of the N motors from the first storage space, the first read lock is set to the first state to prohibit the first control core from writing data to the first storage space;
[0101] When any control core from the 2nd to the (N+1th) control cores does not read the rotor positions of the N motors from the first storage space, the first read lock is set to the second state to allow the first control core to write data to the first storage space.
[0102] In this implementation, the communication between the 2nd to N+1th control cores and the 1st control core is effectively achieved through the global first write lock and the global first read lock, which ensures the high efficiency of communication and is less prone to errors.
[0103] Specifically, for the first control core, it can be understood that as long as the first control core samples N feedback signals at a certain sampling moment, it can perform soft decoding to obtain the rotor positions of each of the N motors. Neither the sampling process nor the decoding process involves determining the status of the first write lock or the first read lock. After decoding is complete, the first control core needs to write the decoded rotor positions of each of the N motors into the first storage space. At this time, before writing, the first control core needs to determine whether the first read lock is set to the first state. If the first read lock is set to the first state, it indicates that another control core is currently reading data from the first storage space. Therefore, to avoid errors, the first control core is prohibited from writing data to the first storage space at this time, that is, the first control core needs to wait. Only when the first read lock is set to the second state, indicating that no other control core is currently reading data from the first storage space, is the first control core allowed to write data to the first storage space.
[0104] During the process of the first control core writing data to the first storage space, in order to prevent other controllers from initiating data reading from the first storage space, the first write lock needs to be set to the first state, so that when the first control core is writing data to the first storage space, the first write lock set to the first state can prohibit the second to N+1 control cores from reading data from the first storage space until the data writing process is completed. The first write lock can be set to the second state to indicate that the second to N+1 control cores are allowed to read data from the first storage space.
[0105] If the first write lock is set to the second state, and when any one of the 2nd to N+1th control cores needs to read the data in the first storage space, the control core can set the first read lock to the first state. In this case, for example, if another control core needs to read the data in the first storage space, it will not affect the data reading of the control core, that is, one or more control cores are allowed to read the data in the first storage space at the same time.
[0106] In this implementation, by configuring a global first write lock and a global first read lock, that is, each control core needs to determine its own behavior based on the status of the first write lock and the first read lock, thereby effectively ensuring the reliability of communication between the 2nd to N+1th control cores and the 1st control core, and only based on the status of the first write lock and the first read lock, the communication between the 2nd to N+1th control cores and the 1st control core can be determined, which is conducive to simplifying the code, reducing the load rate of code operation, and ensuring the speed of communication.
[0107] In a specific embodiment of the present invention, step S102 may specifically include:
[0108] Trigger sampling interrupt according to the preset sampling period;
[0109] Each time a sampling interrupt is triggered, after a preset first delay time, the N position signals are sampled, and the rotor positions of the N motors are decoded according to the sampling results.
[0110] As described above, the specific conditions for triggering sampling by the drive control device can be set and adjusted according to actual needs, but are generally set to periodic sampling. In this embodiment, a sampling interrupt is triggered according to a preset sampling period. Triggering sampling based on an interrupt is more reliable and less prone to errors.
[0111] Furthermore, in the solution of the present application, there is only one sampling moment in each sampling cycle, at which the N position signals are sampled. Therefore, only one interrupt service is required to complete each sampling cycle, eliminating interrupt contention and improving system reliability. Since there is only one sampling moment in each sampling cycle, the solution of the present application requires a very short sampling period, which helps improve the system's response speed.
[0112] Furthermore, this implementation takes into account that the signal to be sampled may not necessarily be at a peak or trough each time a sampling interrupt is triggered. Therefore, a delay of a first delay duration can be preset. After the first delay duration has elapsed, the sine and cosine position signals in the N position signals will have reached a peak or trough, allowing the N position signals to be sampled, and the rotor positions of the N motors can be decoded based on the sampling results. This first delay duration effectively ensures the flexibility of the implementation of this application solution.
[0113] The specific value of the first delay time can be set and adjusted according to actual needs. For example, experiments can be conducted in advance to obtain the required value of the first delay time by observing relevant waveforms, as long as the sine and cosine position signals in the N position signals reach a peak or a trough at the sampling moment.
[0114] In a specific embodiment of the present invention, the multi-motor control method of the present application may further include the following steps:
[0115] When any of the M excitation signals is detected to be abnormal, an a-way excitation signal is selected from the remaining NM normal excitation signals;
[0116] For any one of the selected a excitation signals, the excitation signal is sent to at least two rotary transformers, so that each of the N rotary transformers receives one excitation signal;
[0117] M is a positive integer and M<N, a is a positive integer and a≤NM, and a≤M.
[0118] This implementation method takes into account that the excitation signal may be abnormal in some situations. Therefore, this implementation method sets up a redundant strategy to deal with faults. Specifically, when any M excitation signals are detected to be abnormal, an a-way excitation signal is selected from the remaining NM normal excitation signals, and then the original function of the abnormal M-way excitation signal is replaced based on the selected a-way excitation signal.
[0119] For example, in a scenario where N=10, M=3, and specifically the 8th, 9th and 10th excitation signals among the 10 excitation signals are abnormal, then a excitation signal can be selected from the remaining 7 normal excitation signals, for example, a=2, and specifically the 1st and 2nd excitation signals are selected. Then, based on the selected 1st and 2nd excitation signals, the original functions of the abnormal 8th, 9th and 10th excitation signals can be replaced. For example, the 1st excitation signal is sent to the 1st rotating transformer and also to the 8th rotating transformer to replace the original function of the 8th excitation signal. The 2nd excitation signal is sent to the 2nd rotating transformer and also to the 9th and 10th rotating transformers to replace the original functions of the 9th and 10th excitation signals.
[0120] It is understandable that, for any one of the selected a-way excitation signals, since it not only needs to be provided to the corresponding resolver, but also needs to replace the function of one or more abnormal excitation signals, for any one of the selected a-way excitation signals, it is necessary to send the excitation signal to at least two resolvers. For each of the N resolvers, it is necessary to ensure that each resolver can receive one excitation signal.
[0121] FIG6 is used as an example for explanation. FIG6 is a schematic diagram of the structure of a drive control device provided by another specific embodiment of the present invention. Under normal circumstances, the first rotary transformer is connected to the first excitation signal generating circuit via a single-pole double-throw switch S1, and the second rotary transformer is connected to the second excitation signal generating circuit via a single-pole double-throw switch S2. For example, when the first excitation signal generating circuit fails and the excitation signal 1 becomes abnormal, a channel of excitation signal can be selected from the remaining normal excitation signals. Of course, in this example, since N=2, only excitation signal 2 can be selected, and then excitation signal 2 is sent to the first rotary transformer and the second rotary transformer at the same time. That is, in the example of FIG6, the first rotary transformer is connected to the second excitation signal generating circuit via a single-pole double-throw switch S1, and the second rotary transformer is connected to the second excitation signal generating circuit via a single-pole double-throw switch S2. Therefore, at this time, both the first rotary transformer and the second rotary transformer receive excitation signal 2.
[0122] Figure 6 illustrates this using N = 2 as an example. When N is larger, the specific implementation of the aforementioned redundancy strategy can be set and adjusted based on actual conditions. This allows each of the N resolvers to receive one excitation signal based on the selection of excitation signal a after an anomaly in M excitation signals occurs. Furthermore, there are multiple ways to detect excitation signal anomalies. For example, an excitation signal can be identified as abnormal if its amplitude exceeds a certain range or its waveform is distorted.
[0123] In a specific embodiment of the present invention, N=2, and the multi-motor control method of the present application may further include:
[0124] When an abnormality is detected in any one of the two excitation signals, the phase of the other excitation signal that is not abnormal is adjusted with the first condition as the target;
[0125] The first condition is that when the drive control device samples the two position signals, the absolute values of the sinusoidal position signals in the two position signals meet a preset condition.
[0126] In this embodiment, when an abnormality occurs in any one of the two excitation signals, the other excitation signal that does not have an abnormality can be used to provide excitation signals for the two rotating transformers at the same time. The redundancy function in this case is described in detail above using Figure 6 as an example.
[0127] Furthermore, in this embodiment, the present invention sets the phase of each of the N excitation signals so that, upon receiving the N position signals, the sinusoidal position signals in any two of the position signals are peak-aligned or peak-to-trough aligned. In other words, when N = 2, the phase difference between the two excitation signals needs to reach an appropriate value to achieve peak-to-peak alignment or peak-to-trough alignment of the sinusoidal position signals in the two received position signals.
[0128] When an abnormality occurs in any one of the two excitation signals, since the two rotating transformers receive the same excitation signal, the phase difference of the sinusoidal position signals in the two position signals output by the two rotating transformers is fixed, and the phase difference may not be exactly 0 or 180° to align the peaks of the two or the peaks and troughs of the two. Therefore, in this embodiment, when an abnormality occurs in any one of the two excitation signals, the first condition will be used as the target to adjust the phase of the normal excitation signal so that at the sampling moment, the absolute value of the sinusoidal position signal in the two position signals should be as high as possible, that is, the absolute value of the sinusoidal position signal in the two position signals needs to meet the preset conditions.
[0129] The specific content of the preset conditions can be set and adjusted as needed. For example, it can be set so that the sum of the absolute values of the sinusoidal position signal in the first position signal and the absolute values of the sinusoidal position signal in the second position signal reaches a maximum. In other words, after adopting such a setting, the sum of the absolute values of the amplitudes of the sinusoidal position signals in the two position signals can reach the theoretical maximum value at the sampling moment, thereby minimizing the signal-to-noise ratio and thus reducing the detection error. Of course, in some cases, the specific content of the preset conditions can be set, for example, so that the sum of the absolute values of the amplitudes of the sinusoidal position signal in the first position signal and the absolute values of the sinusoidal position signal in the second position signal exceeds a set first threshold. At this time, although the sum of the absolute values of the amplitudes of the sinusoidal position signals in the two position signals may not be the theoretical maximum value, it has exceeded the set first threshold, which can ensure the quality of the detected signal, that is, the signal-to-noise ratio is sufficient, and this method facilitates phase adjustment.
[0130] By applying the technical solution provided in the embodiment of the present invention, the rotor positions of multiple motors can be processed simultaneously by the drive control device, thereby realizing the drive control of multiple motors. Specifically, the drive control device of the present application is connected to N rotary transformers, and N excitation signals can be sent to the N rotary transformers respectively. The N rotary transformers can detect the rotor positions of the respective N motors based on the N excitation signals to generate N position signals, and then feed back the N position signals to the drive control device. The drive control device decodes the rotor positions of the respective N motors according to the received N position signals. It can be seen that the solution of the present application does not set up a special hardware decoding device, but decodes the rotor positions of the respective N motors by the drive control device in a soft decoding manner, thereby reducing hardware costs. Then, the drive control device can drive and control the N motors according to the respective rotor positions of the N motors, and the solution of the present application also takes into account that if the drive control device detects the N position signals separately by sampling N times in each sampling period, the system response will be slow. In this regard, the solution of the present application takes into account that the phases of the N excitation signals can be set so that when the N position signals are received, the peaks of the sinusoidal position signals in the N position signals are aligned or the peaks and troughs are aligned. Since the peaks of the sinusoidal position signals in the N position signals are aligned or the peaks and troughs are aligned, within a single sampling period, only one suitable sampling moment needs to be selected, that is, the moment when the sinusoidal position signals and cosine position signals in each position signal are either at a peak or a trough, and the N position signals can be sampled simultaneously at this sampling moment, so that the sampling period required by the solution of the present application is very short, which is also conducive to improving the response speed of the system. Moreover, the sampled signal has a sufficiently high signal-to-noise ratio, and there will be no situation where a certain sine position signal or cosine position signal affects the sampling accuracy due to its amplitude being too low. That is, the solution of the present application will not affect the accuracy of the rotor positions of the N motors obtained, thereby ensuring the reliability of the control of multiple motors.
[0131] In summary, the solution of the present application can effectively realize the control of multiple motors, reduce costs, and improve the response speed of the system.
[0132] Corresponding to the above method embodiments, an embodiment of the present invention further provides a multi-motor control module, which is provided in a drive control device. Referring to FIG. 7 , FIG. 7 is a schematic diagram of the structure of a multi-motor control module provided in a specific embodiment of the present invention. The multi-motor control module includes:
[0133] The excitation signal sending module 701 is used to send N excitation signals to N rotary transformers respectively, and to set the phases of the N excitation signals so that when the N position signals are received, the peaks of the sinusoidal position signals in the N position signals are aligned or the peaks and troughs are aligned;
[0134] The rotor position decoding module 702 is used to decode the rotor position of each of the N motors according to the received N position signals;
[0135] A drive control execution module 703 is used to drive and control the N motors according to their respective rotor positions;
[0136] The position signal output by any one of the rotary transformers includes a sine position signal and a cosine position signal for reflecting the rotor position of the corresponding motor.
[0137] In a specific embodiment of the present invention, the excitation signal sending module 701 is specifically configured to:
[0138] Read the calibration coefficients of N excitation signals;
[0139] The phases of the N excitation signals are set according to the read N calibration coefficients so that when the N position signals are received, the peaks of the sinusoidal position signals in the N position signals are aligned or the peaks and troughs are aligned; the N excitation signals are sent to the N rotary transformers respectively.
[0140] In a specific embodiment of the present invention, a redundancy strategy module is further included, which is used to:
[0141] When any of the M excitation signals is detected to be abnormal, an a-way excitation signal is selected from the remaining NM normal excitation signals;
[0142] For any one of the selected a excitation signals, the excitation signal is sent to at least two rotary transformers, so that each of the N rotary transformers receives one excitation signal;
[0143] M is a positive integer and M<N, a is a positive integer and a≤NM, and a≤M.
[0144] In a specific embodiment of the present invention, N=2, and the redundancy strategy module is further configured to:
[0145] When an abnormality is detected in any one of the two excitation signals, the phase of the other excitation signal that is not abnormal is adjusted with the first condition as the target;
[0146] The first condition is that when the drive control device samples the two position signals, the absolute values of the sinusoidal position signals in the two position signals meet a preset condition.
[0147] Corresponding to the above method and system embodiments, embodiments of the present invention further provide a multi-motor control system, a device, and a computer-readable storage medium thereof.
[0148] The multi-motor control system includes a drive control device and N rotary transformers connected to the drive control device, where N is a positive integer not less than 2;
[0149] A drive control device, used for sending N excitation signals to N rotary transformers respectively;
[0150] N rotary transformers, for detecting the rotor positions of the N motors based on the N excitation signals to generate N position signals, and feeding back the N position signals to the drive control device;
[0151] The drive control device is also used to set the phase of N excitation signals so that when N position signals are received, the peaks of the sinusoidal position signals in the N position signals are aligned or the peaks and troughs are aligned; based on the received N position signals, the rotor positions of the N motors are decoded; and based on the rotor positions of the N motors, the N motors are driven and controlled respectively.
[0152] The multi-motor control device includes:
[0153] Memory for storing computer programs;
[0154] A processor is used to execute a computer program to implement the steps of the multi-motor control method in any of the above embodiments.
[0155] The computer-readable storage medium stores a computer program that, when executed by a processor, implements the steps of the multi-motor control method described in any of the above embodiments. The computer-readable storage medium herein includes random access memory (RAM), internal memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, hard disks, removable disks, CD-ROMs, or any other form of storage medium known in the art.
[0156] It should also be noted that, in this document, relational terms such as first and second, etc., are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "comprises," "comprising," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article, or device. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of additional identical elements in the process, method, article, or device comprising the element.
[0157] Professionals may further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the above description has generally described the components and steps of each example according to their functions. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of the present invention.
[0158] This document uses specific examples to illustrate the principles and implementation methods of the present invention. The description of the above embodiments is only intended to help understand the technical solutions and core concepts of the present invention. It should be noted that those skilled in the art can make various improvements and modifications to the present invention without departing from the principles of the present invention, and such improvements and modifications also fall within the scope of protection of the present invention.
Claims
1. A control method for multiple motors, characterized in that, Applied to a drive control device, the drive control device is connected to N resolvers, where N is a positive integer not less than 2; the N resolvers are used to detect the rotor positions of N motors respectively based on N excitation signals to generate N position signals, and feedback the N position signals to the drive control device; The control method for multiple motors includes: Sending the N excitation signals to the N resolvers respectively, and by setting the phases of the N excitation signals, when receiving the N position signals, the peaks of the sine position signals in the N position signals are aligned or the peaks are aligned with the valleys; Decoding the rotor positions of the N motors respectively according to the received N position signals; Performing drive control on the N motors respectively according to the rotor positions of the N motors; Wherein, the position signal output by any one resolver includes a sine position signal and a cosine position signal for reflecting the rotor position of the corresponding motor.
2. The control method of the multi-motor according to claim 1, wherein The step of setting the phases of the N excitation signals so that when receiving the N position signals, the peaks of the sine position signals in the N position signals are aligned or the peaks are aligned with the valleys includes: Reading the calibration coefficients of the N excitation signals respectively; Setting the phases of the N excitation signals according to the read N calibration coefficients so that when receiving the N position signals, the peaks of the sine position signals in the N position signals are aligned or the peaks are aligned with the valleys.
3. The control method of the multi-motor according to claim 1, wherein The control method for multiple motors further includes: When it is detected that any M of the N excitation signals are abnormal, selecting a excitation signals from the remaining N - M normal excitation signals; For any one of the selected a excitation signals, sending this excitation signal to at least 2 of the N resolvers so that each of the N resolvers receives one excitation signal; M is a positive integer and M < N, a is a positive integer and a ≤ N - M, and a ≤ M.
4. The control method of the multi-motor according to claim 3, wherein When N = 2, the control method for multiple motors further includes: When it is detected that any one of the two excitation signals is abnormal, taking the first condition as the target and adjusting the phase of the other excitation signal that is not abnormal; Wherein, the first condition is: when the drive control device samples the two position signals, the absolute values of the sine position signals in the two position signals satisfy a preset condition.
5. The control method of the multi-motor according to any one of claims 1 to 4, characterized in that, The drive control device includes: a multi-core drive controller, an excitation signal generation circuit, and a feedback circuit; the multi-core drive controller includes the 1st to the N + 1st control cores; The step of sending the N excitation signals to the N resolvers respectively includes: Sending N pulse signals to the excitation signal generation circuit through the multi-core drive controller; Generating N excitation signals based on the N pulse signals by the excitation signal generation circuit and sending the N excitation signals to the N resolvers respectively; The step of decoding the rotor positions of the N motors respectively according to the received N position signals includes: Receive N paths of the position signals through the feedback circuit, and amplify and perform analog-to-digital conversion processing on the N paths of the position signals to obtain N paths of feedback signals; Decode the N paths of the feedback signals through the first control core to obtain the rotor positions of the respective N motors; Drivingly control the N motors respectively according to the rotor positions of the respective N motors, including: Drivingly control the N motors respectively through the second to the N+1 control cores according to the rotor positions of the respective N motors.
6. The control method of the multi-motor according to claim 5, wherein The multi-core drive controller is configured with a global first write lock and a global first read lock; the control method for the multi-motors further includes any one of the following processes: When the first control core writes the rotor positions of the respective N motors into the first storage space, the first write lock is set to the first state to prohibit the second to the N+1 control cores from reading the data in the first storage space; When the first control core is not in the process of writing the rotor positions of the respective N motors into the first storage space, the first write lock is set to the second state to allow the second to the N+1 control cores to read the data in the first storage space; When any one of the second to the N+1 control cores reads the rotor positions of the respective N motors from the first storage space, the first read lock is set to the first state to prohibit the first control core from writing data into the first storage space; When none of the second to the N+1 control cores reads the rotor positions of the respective N motors from the first storage space, the first read lock is set to the second state to allow the first control core to write data into the first storage space.
7. A control module for multiple motors, characterized in that, It is arranged in the drive control device and includes: An excitation signal sending unit, configured to respectively send N paths of the excitation signals to the N resolvers, and by setting the phases of the N paths of the excitation signals, when receiving the N paths of the position signals, the peaks of the sine position signals in the N paths of the position signals are aligned or the peak is aligned with the trough; A rotor position decoding unit, configured to decode the rotor positions of the respective N motors according to the received N paths of the position signals; A drive control execution unit, configured to respectively drive and control the N motors according to the rotor positions of the respective N motors; Wherein, the position signal output by any one resolver includes a sine position signal and a cosine position signal for reflecting the rotor position of the corresponding motor.
8. A control system for multiple motors, characterized in that, It includes a drive control device and N resolvers connected to the drive control device, where N is a positive integer not less than 2; The drive control device is configured to respectively send N paths of the excitation signals to the N resolvers; The N resolvers are configured to detect the rotor positions of the respective N motors based on the N paths of the excitation signals to generate N paths of position signals, and feedback the N paths of the position signals to the drive control device; The drive control device is further configured to, by setting the phases of the N paths of the excitation signals, when receiving the N paths of the position signals, align the peaks of the sine position signals in the N paths of the position signals or align the peak with the trough; Decode the rotor positions of the N motors respectively according to the received N position signals; drive and control the N motors respectively according to the rotor positions of the N motors.
9. A control device for multiple motors, characterized in that, Comprising: A memory for storing a computer program; A processor for executing the computer program to implement the steps of the control method for multiple motors according to any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that, A computer program is stored on the computer-readable storage medium, and when the computer program is executed by the processor, the steps of the control method for multiple motors according to any one of claims 1 to 7 are implemented.
Citation Information
Patent Citations
Double-rotary-transformer signal processing system
CN102937787A
Motor angle detection device, motor controller and electric vehicle
CN114079415A
Rotary transformer decoding processing device based on single FPGA (Field Programmable Gate Array)
CN202435329U
Motor drive device and method of controlling the same
JP2009254040A
Motor control systems for multiple motor drives
US20210285793A1