Method and device for controlling rotation speed of underwater propeller, storage medium and electronic equipment
By acquiring the voltage and current signals of the underwater thruster, and using a nonlinear flux observer and an extended state observer to estimate the actual rotational speed and load torque, combined with load feedback loop and current loop control, the problem of thrust instability of the underwater thruster under cavitation effect was solved, and a stable motion control effect was achieved.
Patent Information
- Application Number
- CN202510150354.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-11
- Publication Date
- 2025-11-04
- Estimated Expiration
- 2045-02-11
AI Technical Summary
Existing underwater thrusters cannot stably generate the required thrust under cavitation-like effects, resulting in poor stability and accuracy of motion control.
By acquiring the voltage and current signals of the underwater thruster, the actual rotational speed and load torque are estimated using a nonlinear flux observer and an extended state observer. Combined with load feedback loop and current loop control, the target current and voltage drive signals are determined to achieve rotational speed control of the thruster.
Under the cavitation effect, it can stably generate thrust that matches the required thrust, thereby improving the accuracy and stability of motion control of underwater robots.
Smart Images

Figure CN119937657B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of control technology, and in particular to a method and apparatus for controlling the rotational speed of an underwater thruster, as well as a storage medium and electronic equipment. Background Technology
[0002] Remotely operated vehicles (ROVs) are common equipment in the field of marine research. ROVs are usually equipped with underwater thrusters as their power module, and the motion control of the ROV is achieved through the thrust generated by the operation of the underwater thrusters.
[0003] Currently, underwater thrusters configured in underwater robots typically use Electronic Speed Control (ESC) for speed control. ESC mainly uses Pulse Width Modulation (PWM) signals for drive control, that is, it uses square wave signals for drive, and controls the corresponding speed according to the preset speed under different thrust requirements.
[0004] During the actual operation of underwater robots, the underwater thruster may need to operate near the water surface. In this situation, the thruster draws in a mixture of air and water, resulting in a significantly smaller thrust at the same rotational speed compared to the actual underwater thrust. This phenomenon is called cavitation-like effect. Based on existing speed control methods, when cavitation-like effect occurs, it's impossible to recognize that the underwater thruster is not actually in a normal operating state. The system can only control the thruster according to a preset normal rotational speed. The actual thrust generated often does not match the actual requirements, easily causing fluctuations in the underwater robot's attitude and position, resulting in poor accuracy and stability of motion control. Summary of the Invention
[0005] In view of this, embodiments of the present invention provide a method for controlling the rotational speed of an underwater thruster, in order to solve the problem that existing methods for controlling the rotational speed of underwater thrusters can only control according to a preset rotational speed, and when the underwater thruster produces a cavitation-like effect, it cannot stably generate the required thrust, resulting in poor stability and accuracy of motion control.
[0006] This invention also provides a speed control device for an underwater thruster to ensure the practical implementation and application of the above method.
[0007] To achieve the above objectives, the embodiments of the present invention provide the following technical solutions:
[0008] A method for controlling the rotational speed of an underwater thruster, comprising:
[0009] Acquire the voltage and current signals corresponding to the underwater thruster;
[0010] Based on the voltage signal and the current signal, the actual rotational speed of the underwater thruster is determined;
[0011] Based on the actual rotational speed, the load torque of the underwater thruster is estimated to obtain the actual load torque corresponding to the underwater thruster.
[0012] Determine the current target thrust value, and determine the target load torque corresponding to the target thrust value;
[0013] The target speed is determined based on the target load torque and the actual load torque;
[0014] The target current is determined based on the actual rotational speed and the target rotational speed.
[0015] Based on the target current and the current signal, determine the voltage drive signal;
[0016] The underwater thruster's rotational speed is controlled based on the voltage drive signal.
[0017] Optionally, in the above method, determining the actual rotational speed of the underwater thruster based on the voltage signal and the current signal includes:
[0018] Based on the voltage signal, the current signal, and the pre-built nonlinear flux linkage observer, the motor rotor angle signal is determined; the nonlinear flux linkage observer is an observer built based on the electrical parameters of the underwater propulsion motor.
[0019] Determine the rotor speed signal corresponding to the motor rotor angle signal;
[0020] The rotor speed signal is converted to obtain the propeller speed corresponding to the underwater thruster, and the propeller speed is used as the actual speed corresponding to the underwater thruster.
[0021] Optionally, in the above method, the step of estimating the load torque of the underwater thruster based on the actual rotational speed to obtain the actual load torque corresponding to the underwater thruster includes:
[0022] Based on the actual rotational speed and the pre-built extended state observer, the real-time observed values of the load torque extended state variables are determined; the extended state observer is an observer built based on the motor mechanical constants and motor differential equations of the underwater thruster.
[0023] Based on the real-time observations of the load torque expansion state variables, the load torque observations are determined.
[0024] The observed load torque value is taken as the actual load torque corresponding to the underwater thruster.
[0025] Optionally, in the above method, determining the target current based on the actual rotational speed and the target rotational speed includes:
[0026] The difference between the target rotation speed and the actual rotation speed is calculated to obtain a first calculation result;
[0027] The preset scaling factor is multiplied by the first calculation result to obtain the second calculation result;
[0028] Obtain the flux linkage parameters, number of pole pairs, and moment of inertia corresponding to the underwater thruster;
[0029] The moment of inertia is multiplied by the real-time observed value of the load torque expansion state variable to obtain the third calculation result;
[0030] The preset constant, the flux linkage parameter, and the number of magnetic pole pairs are multiplied to obtain the fourth calculation result;
[0031] Divide the third operation result by the fourth operation result to obtain the fifth operation result;
[0032] The second calculation result and the fifth calculation result are summed, and the result is taken as the target current.
[0033] Optionally, in the above method, determining the target load torque corresponding to the target thrust value includes:
[0034] Determine the propeller parameter set corresponding to the underwater thruster; the propeller parameter set includes propeller torque coefficient, propeller thrust coefficient, and propeller blade diameter.
[0035] Based on the propeller parameter set, the target thrust value, and the preset thrust-load torque function relationship, the load torque value corresponding to the target thrust value is calculated, and the load torque value corresponding to the target thrust value is used as the target load torque.
[0036] Optionally, in the above method, determining the target speed based on the target load torque and the actual load torque includes:
[0037] The target load torque is subtracted from the actual load torque, and the result is used as the load torque difference value.
[0038] The load torque difference is integrated to obtain a first integral result;
[0039] The preset load loop integral term is multiplied by the first integral result to obtain the sixth calculation result;
[0040] The preset load loop ratio term is multiplied by the load torque difference to obtain the seventh calculation result;
[0041] The sixth and seventh calculation results are summed, and the result is used as the target rotational speed.
[0042] Optionally, in the above method, determining the voltage drive signal based on the target current and the current signal includes:
[0043] Determine the actual q-axis current corresponding to the current signal;
[0044] Perform a difference operation between the target current and the actual q-axis current, and use the result as the current difference value.
[0045] The current difference is integrated to obtain a second integral result;
[0046] The preset current loop ratio term is multiplied by the current difference to obtain the eighth calculation result;
[0047] The preset current loop integral term is multiplied by the second integral result to obtain the ninth calculation result;
[0048] The eighth and ninth calculation results are summed, and the result is used as the q-axis target voltage.
[0049] The voltage drive signal is determined based on the q-axis target voltage.
[0050] A speed control device for an underwater thruster, comprising:
[0051] The signal acquisition unit is used to acquire the voltage and current signals corresponding to the underwater thruster.
[0052] The first determining unit is used to determine the actual rotational speed of the underwater thruster based on the voltage signal and the current signal.
[0053] The torque estimation unit is used to estimate the load torque of the underwater thruster based on the actual rotational speed, so as to obtain the actual load torque corresponding to the underwater thruster.
[0054] The second determining unit is used to determine the current target thrust value and the target load torque corresponding to the target thrust value;
[0055] The third determining unit is used to determine the target speed based on the target load torque and the actual load torque;
[0056] The fourth determining unit is used to determine the target current based on the actual rotational speed and the target rotational speed;
[0057] The fifth determining unit is used to determine the voltage driving signal based on the target current and the current signal;
[0058] A speed control unit is used to control the speed of the underwater thruster based on the voltage drive signal.
[0059] A storage medium comprising stored instructions, wherein, when the instructions are executed, the device containing the storage medium is controlled to perform a rotational speed control method for an underwater thruster as described above.
[0060] An electronic device includes a memory and one or more instructions, wherein one or more instructions are stored in the memory and configured to be executed by one or more processors as described above for controlling the rotational speed of an underwater thruster.
[0061] A method for controlling the rotational speed of an underwater thruster, based on the above embodiments of the present invention, includes: acquiring voltage and current signals corresponding to the underwater thruster; determining the actual rotational speed of the underwater thruster based on the voltage and current signals; estimating the load torque of the underwater thruster based on the actual rotational speed to obtain the actual load torque of the underwater thruster; determining the current target thrust value and the target load torque corresponding to the target thrust value; determining the target rotational speed based on the target load torque and the actual load torque; determining the target current based on the actual rotational speed and the target rotational speed; determining the voltage drive signal based on the target current and the current signal; and controlling the rotational speed of the underwater thruster based on the voltage drive signal. By applying the method provided in the embodiments of the present invention, the actual rotational speed and actual load torque of the thruster can be observed based on the real-time voltage and current signals of the underwater thruster motor. By combining the feedback of the actual rotational speed and actual load torque of the thruster, the corresponding target current is determined, and then the voltage drive signal is determined, thereby controlling the rotational speed of the thruster. During speed control, the actual load state of the thruster can be combined to perform feedback control of the speed. When abnormal phenomena such as cavitation effect occur in the thruster, it can stably generate thrust that matches the required thrust, so that the underwater robot can maintain the required attitude and position, which is conducive to improving the accuracy and stability of motion control. Attached Figure Description
[0062] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on the provided drawings without creative effort.
[0063] Figure 1A flowchart of a method for controlling the rotational speed of an underwater thruster provided in an embodiment of the present invention;
[0064] Figure 2 A schematic diagram of the hardware architecture of an underwater thruster control platform provided in an embodiment of the present invention;
[0065] Figure 3 A schematic diagram illustrating an underwater thruster speed control process provided in an embodiment of the present invention;
[0066] Figure 4 An example diagram illustrating the effect of current control provided in an embodiment of the present invention;
[0067] Figure 5 An example diagram illustrating a speed control effect provided in an embodiment of the present invention;
[0068] Figure 6 An example diagram illustrating the load control effect provided in an embodiment of the present invention;
[0069] Figure 7 A schematic diagram of the structure of a speed control device for an underwater thruster provided in an embodiment of the present invention;
[0070] Figure 8 This is a schematic diagram of the structure of an electronic device provided in an embodiment of the present invention. Detailed Implementation
[0071] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0072] In this application, the terms "comprising," "including," or any other variations thereof are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.
[0073] This invention provides a method for controlling the rotational speed of an underwater thruster. The method can be applied to the rotational speed control module of an underwater thruster, and its execution entity can be the processor of the rotational speed control module. The flowchart of the method is shown below. Figure 1 As shown, it includes:
[0074] S101: Acquire the voltage and current signals corresponding to the underwater thruster;
[0075] The method provided in this invention can be used to control the rotational speed of an underwater thruster configured in an underwater robot. The underwater thruster is referred to simply as a thruster in this document. The thruster's rotational speed control module can collect the voltage and current signals of the thruster motor in real time, and control the thruster's rotational speed based on these signals.
[0076] S102: Determine the actual rotational speed of the underwater thruster based on the voltage signal and the current signal;
[0077] The method provided in this invention is based on the principle of Field Oriented Control (FOC) technology for speed control. The idea behind FOC is to decompose the motor stator current into two mutually perpendicular components. One component generates magnetic flux, called the excitation current or d-axis current, and the other component generates torque, called the torque current or q-axis current. The d-axis current controls the magnitude of the motor's magnetic flux, while the q-axis current controls the motor's torque, which is related to the motor's speed and load. Correspondingly, voltage can also be decomposed into components. In the component conversion of current or voltage, the Clarke transformation can be used to convert the three-phase stationary coordinate system (a, b, c) into a two-phase stationary coordinate system (α, β), that is, to decompose the current into α-phase current and β-phase current, or the voltage into α-phase voltage and β-phase voltage. The Park transformation can convert the two-phase stationary coordinate system into a rotating coordinate system (d, q), that is, to convert the α-phase current and β-phase current into d-axis current and q-axis current, or the α-phase voltage and β-phase voltage into d-axis voltage and q-axis voltage.
[0078] In the method provided by the embodiments of the present invention, the actual speed of the motor can be determined based on the voltage and current signals of the propeller motor using FOC technology. Specifically, a nonlinear flux observer can be used to observe the position of the electronic rotor, thereby calculating the actual speed of the motor, which is the propeller speed of the propeller.
[0079] S103: Based on the actual rotational speed, the load torque of the underwater thruster is estimated to obtain the actual load torque corresponding to the underwater thruster;
[0080] In the method provided by this invention, the load torque of the thruster can be estimated based on the mathematical model of the thruster and the actual rotational speed of the thruster, and the estimated load torque can be used as the actual load torque of the thruster. Specifically, the load torque can be used as an extended quantity, and the load torque can be extracted based on an Extended State Observer (ESO).
[0081] S104: Determine the current target thrust value and determine the target load torque corresponding to the target thrust value;
[0082] In the method provided by this embodiment of the invention, the speed control module can determine the current target thrust value, that is, the magnitude of the thrust that the thruster needs to generate, based on the current thrust setting command. Then, based on the current target thrust value, it calculates the load torque of the thruster under the thrust state corresponding to the target thrust value, and uses the calculated load torque as the target load torque.
[0083] S105: Determine the target speed based on the target load torque and the actual load torque;
[0084] In the method provided by this invention, a load feedback loop can be pre-constructed according to actual needs. The actual load torque of the thruster is used as feedback information, the target load torque is used as the expected target, and the rotational speed is used as the output of the feedback control. The current target load torque and the actual load torque are used as input information to the load feedback loop. The load feedback loop is then used to calculate the output rotational speed, which is taken as the target rotational speed.
[0085] S106: Determine the target current based on the actual rotational speed and the target rotational speed;
[0086] In the method provided by this invention, a speed loop can be pre-constructed according to actual needs. The actual rotational speed of the thruster is used as feedback information, the desired rotational speed of the thruster is used as the expected target, and the motor current is used as the output of feedback control. During the speed control process, the actual rotational speed and target rotational speed of the current thruster are used as input information, the speed loop is applied to calculate the currently adapted current value, and the calculated current value is used as the target current.
[0087] S107: Determine the voltage drive signal based on the target current and the current signal;
[0088] In the method provided by this invention, a current loop can be pre-constructed according to actual needs. The actual current of the thruster is used as feedback information, the current to be set is used as the expected target, and the motor voltage is used as the output of feedback control. During speed control, the target current and current signal corresponding to the current thruster are used as input information, the current loop is applied to calculate the currently adapted voltage value, and a corresponding voltage drive signal is generated based on this voltage value.
[0089] S108: Based on the voltage drive signal, control the rotational speed of the underwater thruster.
[0090] In the method provided by this embodiment of the invention, the motor of the underwater thruster is driven by the currently generated voltage drive signal so that the motor runs at the speed corresponding to the voltage.
[0091] Based on the method provided in this embodiment of the invention, during the speed control process of an underwater thruster, the voltage and current signals corresponding to the underwater thruster can be acquired; the actual speed of the underwater thruster is determined based on the voltage and current signals; the load torque of the underwater thruster is estimated based on the actual speed to obtain the actual load torque of the underwater thruster; the current target thrust value is determined, and the target load torque corresponding to the target thrust value is determined; the target speed is determined based on the target load torque and the actual load torque; the target current is determined based on the actual speed and the target speed; the voltage drive signal is determined based on the target current and the current signal; and the speed of the underwater thruster is controlled based on the voltage drive signal. Applying the method provided in this embodiment of the invention, the actual speed and actual load torque of the thruster can be observed based on the real-time voltage and current signals of the underwater thruster motor. By combining the feedback of the actual speed and actual load torque of the thruster, the corresponding target current is determined, and then the voltage drive signal is determined, thereby controlling the speed of the thruster. During speed control, the actual load state of the thruster can be combined to perform feedback control of the speed. When abnormal phenomena such as cavitation effect occur in the thruster, it can stably generate thrust that matches the required thrust, so that the underwater robot can maintain the required attitude and position, which is conducive to improving the accuracy and stability of motion control.
[0092] exist Figure 1 Based on the method shown, the method provided in this embodiment of the invention, in step S102, the process of determining the actual rotational speed of the underwater thruster based on the voltage signal and the current signal, includes:
[0093] Based on the voltage signal, the current signal, and the pre-built nonlinear flux linkage observer, the motor rotor angle signal is determined; the nonlinear flux linkage observer is an observer built based on the electrical parameters of the underwater propulsion motor.
[0094] In the method provided by this invention, a nonlinear flux linkage observer can be pre-constructed based on electrical parameters such as the resistance, inductance, and flux linkage parameters of the propeller motor. This observer is used to observe the rotor position of the motor, which cannot be directly measured. The mathematical model of the specifically constructed nonlinear flux linkage observer is as follows:
[0095] (Equation 1)
[0096] (Equation 2)
[0097] Where R is the resistance parameter of the thruster motor, L is the inductance parameter of the thruster motor, φ represents the flux linkage parameter of the thruster motor, and λ represents the gain factor to be adjusted. α u β ] T This represents the voltage signal decoupled into α and β phases, u α For the voltage component of phase α, u β For the voltage component of phase β, [i α i β ] T This represents the current signal decoupled into α and β phases, i α Let i be the current component of phase α. β These represent the current components of phase β. [x1 x2] T This indicates a composite signal that cannot be directly measured; the signal contains information about the motor rotor's angle. The observed signal represents the composite signal. The observed signal is represented by its derivative, and θ represents the angle signal of the motor rotor. The nonlinear flux linkage model only requires adjusting the gain factor λ to bring the observer to converge, obtain the rotor angle, and subsequently, the rotor speed.
[0098] During speed control, the voltage and current signals of the current propeller can be decoupled using FOC technology to obtain decoupled voltage signals and current signals into α-phase and β-phase signals. Based on the decoupled voltage and current signals, a pre-built nonlinear flux linkage observer can be used to observe the angle information of the motor rotor, thereby obtaining the observed signals. The observed signal is compared with the actual measured signal. Subtraction yields the motor rotor angle signal θ.
[0099] Determine the rotor speed signal corresponding to the motor rotor angle signal;
[0100] In the method provided by this embodiment of the invention, the rotor angle signal of the motor can be differentiated, and the result is the corresponding rotor speed signal. The rotor speed signal w m The calculation method can be shown below:
[0101] (Equation 3)
[0102] The rotor speed signal is converted to obtain the propeller speed corresponding to the underwater thruster, and the propeller speed is used as the actual speed corresponding to the underwater thruster.
[0103] In the method provided by the embodiments of the present invention, the conversion relationship between the motor rotor speed and the rotational speed of the motor driven propeller can be preset based on the conversion relationship between the mechanical speed and electrical speed of the motor. According to the preset conversion relationship, the current rotor speed signal is converted and calculated to obtain the corresponding propeller rotational speed, and the calculated propeller rotational speed is used as the actual rotational speed corresponding to the thruster.
[0104] The principle for calculating propeller speed w can be summarized as follows:
[0105] (Equation 4)
[0106] Where, p n This indicates the number of pole pairs of the motor.
[0107] exist Figure 1 Based on the method shown, the method provided in this embodiment of the invention, in step S103, involves estimating the load torque of the underwater thruster based on the actual rotational speed to obtain the actual load torque corresponding to the underwater thruster, and includes:
[0108] Based on the actual rotational speed and the pre-built extended state observer, the real-time observed values of the load torque extended state variables are determined; the extended state observer is an observer built based on the motor mechanical constants and motor differential equations of the underwater thruster.
[0109] In the method provided by this invention, an extended state observer (ESO) can be pre-constructed based on mechanical constants such as the motor's moment of inertia and electromagnetic torque, as well as the motor's differential equations describing the motor's motion state. Specifically, a second-order state observer needs to be designed according to the motor's differential equation model. The first-order signal is the speed observation signal, and the second-order signal is the load torque observation signal. The mathematical model of the second-order observer (i.e., the constructed extended state observer) in this invention embodiment can be as follows:
[0110] (Equation 5)
[0111] Among them, e w The speed observation error is represented by J, the moment of inertia of the motor is T. e Z1 represents the electromagnetic torque of the motor, z2 represents the extended state variable related to the speed observation signal, and z3 represents the extended state variable related to the load torque observation signal (i.e., the load torque extended state variable). and Let β1 and β2 represent the derivative signals of the corresponding extended state variables, respectively. β1 and β2 are parameters to be adjusted. Adjusting β1 and β2 can adjust the bandwidth of the state observer. The relationship between the bandwidth and these two parameters is as follows:
[0112] (Equation 6)
[0113] (Equation 7)
[0114] Among them, w o This represents the bandwidth of the state observer.
[0115] During the speed control process, the actual speed w is used as the input information of the extended state observer. The extended state observer is used to observe the load torque signal of the motor to obtain the extended state variable related to the load torque observation signal, that is, the real-time observed value of the load torque extended state variable.
[0116] Based on the real-time observations of the load torque expansion state variables, the load torque observations are determined.
[0117] In the method provided by this invention, the correlation between the load torque extended state variable and the load torque signal can be pre-set according to the differential equation of the motor. During speed control, the corresponding load torque observation value can be calculated based on the real-time observed value of the current load torque extended state variable and the correlation between the load torque extended state variable and the load torque signal. Based on the extended state observer model shown in Equation 5, in this embodiment of the invention, the load torque observation value T... L_back The calculation method is as follows:
[0118] (Equation 8)
[0119] The observed load torque value is taken as the actual load torque corresponding to the underwater thruster.
[0120] In the method provided by this embodiment of the invention, the load torque observation value calculated based on the real-time observation value of the load torque expansion state variable is used as the actual load torque of the thruster.
[0121] Based on the method provided in the above embodiments, the method provided in this embodiment of the invention, wherein the process of determining the target current based on the actual rotational speed and the target rotational speed mentioned in step S106 includes:
[0122] The difference between the target rotation speed and the actual rotation speed is calculated to obtain a first calculation result;
[0123] The preset scaling factor is multiplied by the first calculation result to obtain the second calculation result;
[0124] Obtain the flux linkage parameters, number of pole pairs, and moment of inertia corresponding to the underwater thruster;
[0125] The moment of inertia is multiplied by the real-time observed value of the load torque expansion state variable to obtain the third calculation result;
[0126] The preset constant, the flux linkage parameter, and the number of magnetic pole pairs are multiplied to obtain the fourth calculation result;
[0127] Divide the third operation result by the fourth operation result to obtain the fifth operation result;
[0128] The second calculation result and the fifth calculation result are summed, and the result is taken as the target current.
[0129] In the method provided by this embodiment of the invention, an extended state observer (ESO) is used to construct a linear active disturbance rejection control (LADRC) speed loop to control the q-axis current of the motor, which is the current component related to the rotational speed. Based on the extended state observer shown in Equation 5, the mathematical model of the speed loop involved in this embodiment of the invention can be as follows:
[0130] (Equation 9)
[0131] Among them, i q_ref This represents the current output by the speed loop, which is also the target current, w ref The target speed is represented by 'w', the actual speed is represented by 'k', and 'k' represents the target speed. pw φ represents the scaling factor, φ represents the motor flux linkage parameter, and p n Z represents the number of pole pairs of the motor, and Z2 represents the real-time observed value of the load torque expansion state variable. The preset constant in this embodiment of the invention is 1.5. Under this design, the speed element is simplified to a first-order inertial element as shown in the following equation:
[0132] (Equation 10)
[0133] Where T represents the system time constant and s represents the complex frequency domain variable.
[0134] During speed control, the target current of the motor's q-axis can be calculated based on the current actual speed and the target speed using the calculation method shown in Equation 9. Specifically, the difference between the target speed and the actual speed is calculated, and the product of this difference and a preset proportional factor is taken as the first product. The product of the motor's moment of inertia and the real-time observed value of the load torque expansion state variable is taken as the second product, and the product of the preset constant (1.5), the number of motor pole pairs, and the flux linkage parameter is taken as the third product. The quotient of the second and third products is calculated, and the sum of the calculated quotient and the first product is taken as the current q-axis current output by the feedback control, which is the target current.
[0135] exist Figure 1 Based on the method shown, in the method provided by the embodiments of the present invention, the determination of the target load torque corresponding to the target thrust value mentioned in step S104 includes:
[0136] Determine the propeller parameter set corresponding to the underwater thruster; the propeller parameter set includes propeller torque coefficient, propeller thrust coefficient, and propeller blade diameter.
[0137] In the method provided by the embodiments of the present invention, propeller parameters such as propeller torque coefficient, propeller thrust coefficient and propeller blade diameter can be obtained from pre-stored propeller attribute data.
[0138] Based on the propeller parameter set, the target thrust value, and the preset thrust-load torque function relationship, the load torque value corresponding to the target thrust value is calculated, and the load torque value corresponding to the target thrust value is used as the target load torque.
[0139] In the method provided by this invention, the functional relationship between thrust and load torque can be pre-set based on empirical formulas for thrust and torque of the propeller. Specifically, the load torque T L The empirical formula for thrust F can be given as follows:
[0140] (Equation 11)
[0141] (Equation 12)
[0142] Among them, K Q K is the propeller torque coefficient. F ρ represents the propeller thrust coefficient, w represents the density of the medium entrained in the blades, and D represents the motor speed and the diameter of the propeller blades.
[0143] Based on equations 11 and 12, the functional relationship between thrust and load torque can be obtained:
[0144] (Equation 13)
[0145] Given the target thrust value, i.e., the known thrust, the load torque value corresponding to the target thrust value can be calculated according to the relationship shown in Equation 13. The calculated load torque value is then used as the current target load torque. Specifically, the product of the target thrust value, the propeller torque coefficient, and the propeller blade diameter can be calculated. The quotient of this product and the propeller thrust coefficient is the load torque value.
[0146] exist Figure 1 Based on the method shown, the method provided in this embodiment of the invention, in step S105, the process of determining the target speed based on the target load torque and the actual load torque, includes:
[0147] The target load torque is subtracted from the actual load torque, and the result is used as the load torque difference value.
[0148] The load torque difference is integrated to obtain a first integral result;
[0149] The preset load loop integral term is multiplied by the first integral result to obtain the sixth calculation result;
[0150] The preset load loop ratio term is multiplied by the load torque difference to obtain the seventh calculation result;
[0151] The sixth and seventh calculation results are summed, and the result is used as the target rotational speed.
[0152] In the method provided by this invention, the actual load is used as a feedback signal to construct a load feedback loop. Specifically, a PI (Proportional-Integral) controller mechanism is used to construct the load feedback loop, meaning that the load feedback loop can be considered as a PI controller for load torque. The inputs to the load feedback loop are the target load torque and the actual load torque, and the output is the target speed of the motor. The model of the load feedback loop in this invention embodiment can be as follows:
[0153] (Equation 14)
[0154] Among them, T L_ref For the target load torque, T L_back K represents the actual load torque (i.e., the observed signal of the load). pt K is the load ring ratio term set according to actual needs. it The load loop integral term is set according to actual needs.
[0155] During speed control, the target speed can be calculated using the load feedback loop shown in Equation 4, based on the current target load torque and actual load torque, through load feedback control. Specifically, the difference between the target load torque and the actual load torque is calculated to obtain the load torque difference. The product of the load torque difference and the proportional term of the load loop is calculated, and the load torque difference is integrated. The product of the integral term of the load loop and the integral result of the load torque difference is calculated. The sum of these two products is taken as the current target speed.
[0156] exist Figure 1 Based on the method shown, the method provided in this embodiment of the invention, in step S107, the process of determining the voltage drive signal based on the target current and the current signal, includes:
[0157] Determine the actual q-axis current corresponding to the current signal;
[0158] Perform a difference operation between the target current and the actual q-axis current, and use the result as the current difference value.
[0159] The current difference is integrated to obtain a second integral result;
[0160] The preset current loop ratio term is multiplied by the current difference to obtain the eighth calculation result;
[0161] The preset current loop integral term is multiplied by the second integral result to obtain the ninth calculation result;
[0162] The eighth and ninth calculation results are summed, and the result is used as the q-axis target voltage.
[0163] The voltage drive signal is determined based on the q-axis target voltage.
[0164] In the method provided by this invention, the motor speed is controlled based on the FOC control principle. Therefore, it is necessary to decouple the motor state variables and control the electromagnetic torque of the motor by controlling the q-axis current, thereby controlling the speed. In this invention, the actual q-axis current is used as a feedback signal to construct a current loop. Specifically, a PI controller is used to construct the current loop, which can be regarded as a current PI controller. The input of the current loop is the currently set target current (q-axis current) and the q-axis current component in the actual current signal. The output is the q-axis voltage component used to control the motor, i.e., the q-axis target voltage. In this invention, the motor is regarded as a first-order equivalent circuit, and the PI parameters of the current loop are designed according to the motor inductance, resistance, and other parameters. In this invention, the current loop PI parameters, the current loop proportional term K... pq and the current loop integral term K iq The design can be as follows:
[0165] (Equation 15)
[0166] (Equation 16)
[0167] Among them, w i The bandwidth of the current loop can be set according to the actual sampling period and hardware performance. L represents the motor inductance parameter, and R represents the motor resistance parameter.
[0168] The current loop design in this embodiment of the invention can be as follows:
[0169] (Equation 17)
[0170] Among them, iq_ref Indicates the target current, i q This represents the q-axis current in the actual current signal, u. q This is the q-axis target voltage output by the current loop.
[0171] During speed control, the q-axis current component can be obtained from the current actual current signal through FOC technology decoupling, and this q-axis current component is taken as the actual q-axis current corresponding to the current signal. It is understood that the target current in this embodiment is also a q-axis current component. Using the target current and the actual q-axis current as inputs to the current loop, the desired q-axis target voltage is calculated using the current feedback control method shown in Equation 17. Specifically, the difference between the target current and the actual q-axis current is calculated to obtain the current difference. The product of the current difference and the proportional term of the current loop is calculated, and the current difference is integrated. The product of the current loop integral term and the integral result of the current difference is calculated. The sum of these two products is taken as the current q-axis target voltage. Using the q-axis target voltage as the q-axis voltage, Space Vector Pulse Width Modulation (SVPWM) technology is applied to construct the voltage drive signal for the three-phase voltage.
[0172] To better illustrate the method provided in the embodiments of the present invention, based on the methods provided in the preceding embodiments and combined with practical application scenarios, the embodiments of the present invention provide yet another method for controlling the rotational speed of an underwater thruster. The method provided in the embodiments of the present invention can be applied to the control scenarios of underwater robots, which can be equipped with multiple underwater thrusters, for example, eight thrusters. A schematic diagram of the hardware architecture of the thruster control platform in the embodiments of the present invention is shown below. Figure 2 As shown, it specifically includes: a host computer 201, a main control board 202, a motor drive board 203, and a thruster 204. The host computer is responsible for communicating with the shore-based computer, the main control board is responsible for calculating control information, that is, for performing calculations related to speed control, and the motor drive board is used to drive the thruster motor.
[0173] The design concept of the method provided in this invention is to use FOC technology to decouple motor state variables. Based on FOC, a state observer is designed using the motor's state equation and decoupling signal to detect thruster state variables that are difficult to measure directly, such as underwater speed and underwater load. Furthermore, a load torque controller is designed using load torque information to achieve load torque-speed-current three-loop control. By controlling torque balance, the thrust output of the thruster is kept stable in various working environments such as near the water surface.
[0174] The specific design process of the method provided in this embodiment of the invention mainly includes:
[0175] Motor equation modeling;
[0176] A differential equation model of the motor is established, and a nonlinear flux observer is constructed. The specific nonlinear flux observer model can be shown in Equations 1 and 2 above.
[0177] Construct a load torque observer (ESO observer);
[0178] The load torque is estimated based on the mathematical model of the thruster. Specifically, an Extended State Observer (ESO) is used to extract the load torque information, and the specific observer model is shown in Equation 5 above. By designing the ESO to estimate the load torque as an extended quantity, the estimated load information can be used to detect the thruster's operating state and to implement load torque feedback control.
[0179] Construct load torque control;
[0180] A current PI controller (i.e., a current controller) is constructed using the methods shown in equations 15 to 17 above.
[0181] Using the method shown in Equation 9 above, an LADRC speed controller (i.e., speed controller) is constructed using ESO to monitor and compensate for disturbances in real time.
[0182] Using the method shown in Equation 14 above, a load torque PI controller (i.e., load controller) is constructed. The underwater load of the thruster can be obtained through the ESO observer. The load can be used to design the speed loop compensation. At the same time, the load controller of the thruster can be constructed using the load information. The load feedback loop is constructed using the load information as a feedback signal. The control output signal of the feedback loop is the speed command value, that is, the target speed. The speed command value is input to the LADRC speed controller to realize load regulation.
[0183] In this embodiment of the invention, the speed control process of the underwater thruster can be as follows: Figure 3 As shown, it mainly includes:
[0184] During thruster operation, the actual voltage and current signals of the thruster motor are acquired, and thrust commands are received from the upper control system (such as a shore-based PC). The current target thrust value is obtained from the thrust commands. Based on the relationship shown in Equation 13 above, the target load torque, i.e., the load torque setpoint, can be calculated based on the target thrust value. Using a pre-built nonlinear flux linkage model (i.e., a nonlinear flux linkage observer), the motor rotor angle signal is observed. The rotor speed signal can be obtained from the rotor angle signal, thereby obtaining the propeller speed of the thruster, i.e., the actual rotational speed of the thruster. The actual rotational speed is used as the speed feedback signal for load torque observation and speed control. The ESO observer can estimate the current actual load torque value of the thruster based on the model shown in Equation 5 above and the relationship shown in Equation 8 above. The actual load torque value is used as the load feedback signal for load control. The load controller can perform feedback control based on the control principle shown in Equation 14 above, based on the current load torque setpoint and the actual load torque value, and output the speed setpoint signal, i.e., the speed setpoint (i.e., the target rotational speed mentioned above). The speed controller can output a corresponding current setpoint (i.e., the target current mentioned above) based on the control method shown in Equation 9 above, given the speed setpoint and the actual speed. The current controller can output a corresponding q-axis target voltage based on the control method shown in Equation 17 above, combining the current setpoint with the actual q-axis current in the current signal. The q-axis target voltage is then used to generate a voltage drive signal for speed control of the thruster.
[0185] The embodiments of the present invention have been tested in accordance with actual parameters. The embodiments of the present invention use B-G431-ESC1 as the driving chip. The electrical parameters of the thruster are as follows: resistance: 0.413 Ohm, inductance: 7.50·10e-2mH, flux linkage constant: 0.003Wb, moment of inertia: 2.07e-6Kgm^2, number of pole pairs: 7.
[0186] The design of the current loop (current controller) depends on the resistance, inductance, and actual current loop control frequency of the thruster motor. The current loop bandwidth is set to 2000, the current loop control frequency is 10K, and the parameters are designed as follows: K pq =0.15, K iq =826. To ensure fast ESO response, both the speed loop (speed controller) and the ESO are designed with an execution frequency of 10kHz, and the ESO bandwidth is designed to be w. o =200, the scaling factor of the velocity loop is designed as: K pw =0.001.
[0187] The thruster needs to be calibrated to determine the relationship between underwater rotational speed, load torque and thrust. In this embodiment of the invention, when the thruster rotational speed is 3000 rpm / min, the thrust is approximately 18.0 N and the load torque is approximately 0.12 N·m.
[0188] The purpose of the load controller is to detect the operating condition of the thruster. When the thruster is stalled, the load torque increases and the speed is zero. At this point, the thruster needs to be shut down promptly. If cavitation-like effects occur, the load torque output of the thruster needs to be adjusted in a timely manner to reduce thrust loss and ensure a smooth thrust output from shallow water to deep water. The PI design parameter of the load controller in this embodiment of the invention is: K. pt =10000, K it =50000, and its control frequency is 1K.
[0189] Based on the above parameter configuration, the embodiments of the present invention have conducted corresponding control tests. Figure 4 A schematic diagram illustrating the control effect of current control is shown. Figure 5 A schematic diagram illustrating the control effect of speed control is shown. Figure 6 A schematic diagram illustrating the control effect of load control is shown. Figure 4 and Figure 5 The diagram shows that the thruster speed control scheme based on LADRC and a nonlinear flux linkage model can effectively achieve speed and current control. LADRC control prevents significant speed overshoot when the thruster is operating underwater, and the introduction of disturbance compensation accelerates the response speed of the speed loop. Figure 6 The control process is shown when the load control command changes from -0.05 N·m to 0.1 N·m. During this process, the load controller achieves good load control by adjusting the speed output.
[0190] The method provided in this invention can achieve speed control of underwater thrusters based on FOC technology. Compared with square wave control, it has lower motor power loss, reduces motor pulsation, and has better control performance at low speeds. This invention employs load feedback control, which can effectively improve the thrust loss problem when the thruster operates in shallow water. By adjusting the thruster's rotational speed to maintain a constant load, it can effectively improve thrust loss and maintain stable thrust output. The method provided in this invention allows for real-time monitoring of thruster rotational speed and load, enabling real-time detection of phenomena such as thruster stall and runaway, ensuring stable operation of the underwater robot.
[0191] and Figure 1 Corresponding to the underwater thruster speed control method shown, this embodiment of the invention also provides an underwater thruster speed control device for controlling the speed of an underwater thruster. Figure 1 The specific implementation of the method shown is illustrated in the following diagram. Figure 7 As shown, it includes:
[0192] The signal acquisition unit 301 is used to acquire the voltage and current signals corresponding to the underwater thruster;
[0193] The first determining unit 302 is used to determine the actual rotational speed of the underwater thruster based on the voltage signal and the current signal.
[0194] The torque estimation unit 303 is used to estimate the load torque of the underwater thruster based on the actual rotational speed, and obtain the actual load torque corresponding to the underwater thruster.
[0195] The second determining unit 304 is used to determine the current target thrust value and the target load torque corresponding to the target thrust value;
[0196] The third determining unit 305 is used to determine the target speed based on the target load torque and the actual load torque;
[0197] The fourth determining unit 306 is used to determine the target current based on the actual rotational speed and the target rotational speed;
[0198] The fifth determining unit 307 is used to determine the voltage driving signal based on the target current and the current signal;
[0199] The speed control unit 308 is used to control the speed of the underwater thruster based on the voltage drive signal.
[0200] Using the apparatus provided in this invention, the actual rotational speed and actual load torque of the underwater thruster can be observed based on the real-time voltage and current signals of the underwater thruster motor. By combining the feedback from the actual rotational speed and actual load torque of the thruster, a corresponding target current is determined, and then a voltage drive signal is determined, thereby controlling the thruster's rotational speed. During rotational speed control, feedback control of the rotational speed can be performed based on the actual load state of the thruster. When abnormal phenomena such as cavitation effects occur in the thruster, it can stably generate thrust that matches the required thrust, enabling the underwater robot to maintain the required attitude and position, which is beneficial to improving the accuracy and stability of motion control.
[0201] exist Figure 7 Based on the device shown, the device provided in this embodiment of the invention can be further extended to include multiple units. The functions of each unit can be found in the descriptions of the various embodiments of the underwater thruster speed control method provided above, and will not be further illustrated here.
[0202] This invention also provides a storage medium that includes stored instructions, wherein when the instructions are executed, the device containing the storage medium is controlled to perform the underwater thruster speed control method described above.
[0203] This invention also provides an electronic device, the structural schematic of which is shown below. Figure 8 As shown, it specifically includes a memory 401 and one or more instructions 402, wherein one or more instructions 402 are stored in the memory 401 and configured to be executed by one or more processors 403 to perform the following operations:
[0204] Acquire the voltage and current signals corresponding to the underwater thruster;
[0205] Based on the voltage signal and the current signal, the actual rotational speed of the underwater thruster is determined;
[0206] Based on the actual rotational speed, the load torque of the underwater thruster is estimated to obtain the actual load torque corresponding to the underwater thruster.
[0207] Determine the current target thrust value, and determine the target load torque corresponding to the target thrust value;
[0208] The target speed is determined based on the target load torque and the actual load torque;
[0209] The target current is determined based on the actual rotational speed and the target rotational speed.
[0210] Based on the target current and the current signal, determine the voltage drive signal;
[0211] The underwater thruster's rotational speed is controlled based on the voltage drive signal.
[0212] The various embodiments in this specification are described in a progressive manner. Similar or identical parts between embodiments can be referred to mutually. Each embodiment focuses on describing the differences from other embodiments. In particular, for system or system embodiments, since they are basically similar to method embodiments, the description is relatively simple, and relevant parts can be referred to the descriptions in the method embodiments. The systems and system embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without creative effort.
[0213] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementations should not be considered beyond the scope of this invention.
[0214] The above description of the disclosed embodiments enables those skilled in the art to make or use the invention. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be implemented in other embodiments without departing from the spirit or scope of the invention. Therefore, the invention is not to be limited to the embodiments shown herein, but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
Claims
1. A method for controlling the rotational speed of an underwater thruster, characterized in that, include: Acquire the voltage and current signals corresponding to the underwater thruster; Based on the voltage signal and the current signal, the actual rotational speed of the underwater thruster is determined; Based on the actual rotational speed, the load torque of the underwater thruster is estimated to obtain the actual load torque corresponding to the underwater thruster. The step of estimating the load torque of the underwater thruster based on the actual rotational speed to obtain the actual load torque corresponding to the underwater thruster includes: Based on the actual rotational speed and the pre-built extended state observer, the real-time observed values of the load torque extended state variables are determined; the extended state observer is an observer built based on the motor mechanical constants and motor differential equations of the underwater thruster. Based on the real-time observations of the load torque expansion state variables, the load torque observations are determined. The observed load torque value is taken as the actual load torque corresponding to the underwater thruster; Determine the current target thrust value, and determine the target load torque corresponding to the target thrust value; The target speed is determined based on the target load torque and the actual load torque; The target current is determined based on the actual rotational speed and the target rotational speed. The step of determining the target current based on the actual rotational speed and the target rotational speed includes: The difference between the target rotation speed and the actual rotation speed is calculated to obtain a first calculation result; The preset scaling factor is multiplied by the first calculation result to obtain the second calculation result; Obtain the flux linkage parameters, number of pole pairs, and moment of inertia corresponding to the underwater thruster; The moment of inertia is multiplied by the real-time observed value of the load torque expansion state variable to obtain the third calculation result; The preset constant, the flux linkage parameter, and the number of magnetic pole pairs are multiplied to obtain the fourth calculation result; Divide the third operation result by the fourth operation result to obtain the fifth operation result; The second calculation result and the fifth calculation result are summed, and the result is used as the target current. Based on the target current and the current signal, determine the voltage drive signal; The underwater thruster's rotational speed is controlled based on the voltage drive signal.
2. The underwater thruster speed control method according to claim 1, characterized in that, Determining the actual rotational speed of the underwater thruster based on the voltage signal and the current signal includes: Based on the voltage signal, the current signal, and the pre-built nonlinear flux linkage observer, the motor rotor angle signal is determined; the nonlinear flux linkage observer is an observer built based on the electrical parameters of the underwater thruster motor. Determine the rotor speed signal corresponding to the motor rotor angle signal; The rotor speed signal is converted to obtain the propeller speed corresponding to the underwater thruster, and the propeller speed is used as the actual speed corresponding to the underwater thruster.
3. The underwater thruster speed control method according to claim 1, characterized in that, Determining the target load torque corresponding to the target thrust value includes: Determine the propeller parameter set corresponding to the underwater thruster; the propeller parameter set includes propeller torque coefficient, propeller thrust coefficient, and propeller blade diameter. Based on the propeller parameter set, the target thrust value, and the preset thrust-load torque function relationship, the load torque value corresponding to the target thrust value is calculated, and the load torque value corresponding to the target thrust value is used as the target load torque.
4. The underwater thruster speed control method according to claim 1, characterized in that, Determining the target speed based on the target load torque and the actual load torque includes: The target load torque is subtracted from the actual load torque, and the result is used as the load torque difference value. The load torque difference is integrated to obtain a first integral result; The preset load loop integral term is multiplied by the first integral result to obtain the sixth calculation result; The preset load loop ratio term is multiplied by the load torque difference to obtain the seventh calculation result; The sixth and seventh calculation results are summed, and the result is used as the target rotational speed.
5. The underwater thruster speed control method according to claim 1, characterized in that, The step of determining the voltage drive signal based on the target current and the current signal includes: Determine the actual q-axis current corresponding to the current signal; Perform a difference operation between the target current and the actual q-axis current, and use the result as the current difference value. The current difference is integrated to obtain a second integral result; The preset current loop ratio term is multiplied by the current difference to obtain the eighth calculation result; The preset current loop integral term is multiplied by the second integral result to obtain the ninth calculation result; The eighth and ninth calculation results are summed, and the result is used as the q-axis target voltage. The voltage drive signal is determined based on the q-axis target voltage.
6. A speed control device for an underwater thruster, characterized in that, include: The signal acquisition unit is used to acquire the voltage and current signals corresponding to the underwater thruster. The first determining unit is used to determine the actual rotational speed of the underwater thruster based on the voltage signal and the current signal. The torque estimation unit is used to estimate the load torque of the underwater thruster based on the actual rotational speed, so as to obtain the actual load torque corresponding to the underwater thruster. Specifically, the torque estimation unit is used for: Based on the actual rotational speed and the pre-built extended state observer, the real-time observed values of the load torque extended state variables are determined; the extended state observer is an observer built based on the motor mechanical constants and motor differential equations of the underwater thruster. Based on the real-time observations of the load torque expansion state variables, the load torque observations are determined. The observed load torque value is taken as the actual load torque corresponding to the underwater thruster; The second determining unit is used to determine the current target thrust value and the target load torque corresponding to the target thrust value; The third determining unit is used to determine the target speed based on the target load torque and the actual load torque; The fourth determining unit is used to determine the target current based on the actual rotational speed and the target rotational speed; Specifically, the fourth determining unit is used for: The difference between the target rotation speed and the actual rotation speed is calculated to obtain a first calculation result; The preset scaling factor is multiplied by the first calculation result to obtain the second calculation result; Obtain the flux linkage parameters, number of pole pairs, and moment of inertia corresponding to the underwater thruster; The moment of inertia is multiplied by the real-time observed value of the load torque expansion state variable to obtain the third calculation result; The preset constant, the flux linkage parameter, and the number of magnetic pole pairs are multiplied to obtain the fourth calculation result; Divide the third operation result by the fourth operation result to obtain the fifth operation result; The second calculation result and the fifth calculation result are summed, and the result is used as the target current. The fifth determining unit is used to determine the voltage driving signal based on the target current and the current signal; A speed control unit is used to control the speed of the underwater thruster based on the voltage drive signal.
7. A storage medium, characterized in that, The storage medium includes stored instructions, wherein, when the instructions are executed, the device containing the storage medium is controlled to perform the underwater thruster rotation speed control method as described in any one of claims 1 to 5.
8. An electronic device, characterized in that, It includes a memory and one or more instructions, wherein one or more instructions are stored in the memory and configured to be executed by one or more processors as described in any one of claims 1 to 5.