An energy control system and method for an underwater robot

By using data compression and adaptive control optimization algorithms, the problem of mission interruption caused by unexpected situations in underwater robot swarms has been solved, achieving efficient energy management and mission continuity, and improving the endurance and mission completion rate of underwater robot swarms.

CN120972600BActive Publication Date: 2026-02-24ZHONGBEI UNIV
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202511508860.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-10-22
Publication Date
2026-02-24
Estimated Expiration
2045-10-22

AI Technical Summary

Technical Problem

When performing tracking tasks, some robots in existing underwater robot swarms are unable to continue performing tasks efficiently due to unexpected situations. The lack of a fast and effective real-time dynamic energy control strategy affects the progress of task completion.

Method used

By collecting attitude data, internal data, and external environment data of the underwater robot in real time, and using stroke length encoding and discrete cosine transform for data compression, a digital model is established. The target conditions are set as the longest total endurance, the maximum stability, and the minimum time consumption coefficient. An adaptive control optimization algorithm is used to generate an energy control scheme, and a task takeover mechanism is implemented in the cluster to optimize the thruster power change to achieve energy distribution.

Benefits of technology

It improves the energy efficiency of underwater robot swarms, ensures the efficient completion of tracking tasks, enhances the accuracy of endurance prediction, and reduces communication bandwidth requirements.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120972600B_ABST
    Figure CN120972600B_ABST
Patent Text Reader

Abstract

The application belongs to the technical field of underwater robot control, and discloses an energy control system and method of an underwater robot; the method comprises the following steps: presetting a serial number of the underwater robot, and collecting posture data, internal data and external environment data of the underwater robot in real time; adopting run-length encoding to compress the posture data and the internal data, and obtaining first processing data and second processing data; adopting discrete cosine transform to compress and process the external environment data, and obtaining third processing data; establishing a digital model based on the serial number, the first processing data, the second processing data and the third processing data; setting a target condition based on the digital model, wherein the target condition comprises a longest total endurance, a maximum stability and a least time consumption coefficient; and the tracking task can be efficiently completed.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of underwater robot control technology, and more specifically, to an energy control system and method for an underwater robot. Background Technology

[0002] Patent application CN109240091B discloses a reinforcement learning-based control method for underwater robots and its tracking control method, belonging to the field of underwater robot control. In this invention, the control center provides the desired trajectory information of the underwater robot and sends it to the robot. Based on the probability density function of the uncertain parameters in the underwater robot model, sampling points are selected for each parameter, and the original dynamic model is reduced in order using these sampling points. The underwater robot interacts with its surrounding environment to learn environmental information, calculates a cost function for value updates in different states, solves for the weights of the value function corresponding to the control strategy using the least squares method, and improves the control strategy using gradient descent. The two processes of value update and strategy improvement are iterated until convergence, thus obtaining the optimal control strategy for tracking the desired trajectory at the current position. The above steps are repeated to obtain the optimal control strategy for tracking other desired trajectories, ultimately completing the tracking task.

[0003] The existing technology still has the following problems:

[0004] When existing underwater robot swarms work together to perform tracking tasks, some robots may be unable to continue performing tasks efficiently due to unexpected situations. There is a lack of a fast and effective real-time dynamic control strategy for the energy control of different underwater robots in the swarm, which significantly affects the progress of task completion.

[0005] In view of this, the present invention proposes an energy control system and method for an underwater robot to solve the above problems. Summary of the Invention

[0006] To overcome the aforementioned deficiencies of the prior art and to achieve the above objectives, the present invention provides the following technical solution: an energy control method for an underwater robot, comprising:

[0007] The underwater robot's serial number is preset, and its attitude data, internal data, and external environment data are collected in real time.

[0008] The attitude data and internal data are compressed using stroke length encoding to obtain the first and second processed data; the external environment data are compressed using discrete cosine transform to obtain the third processed data.

[0009] A digital model is established based on the sequence number, the first processed data, the second processed data, and the third processed data.

[0010] Target conditions are set based on a digital model, including the longest total range, maximum stability, and minimum time consumption coefficient.

[0011] Randomly generate x energy control schemes;

[0012] Based on the target conditions, the energy control scheme is optimized using an adaptive control optimization algorithm, and the optimized energy control scheme is output.

[0013] Based on the robot's battery level and tracking progress, execute cluster energy compensation commands for the underwater robot swarm operating in accordance with the energy control scheme.

[0014] Furthermore, the internal data includes battery data, thruster data, and task completion status; the battery data includes battery charge, current, and temperature; the specific content of the cluster energy compensation command includes:

[0015] When a robot in the underwater robot swarm has a battery level lower than a preset battery threshold and a task completion rate higher than a preset completion rate threshold, the corresponding underwater robot will take over the task in the next unit of time; otherwise, it will continue to operate according to the energy control scheme in the next unit of time.

[0016] Further, the thruster data refers to the thruster power; the thruster includes a head thruster, a stern thruster, lateral thrusters, and a vertical thruster; the lateral thrusters include a left thruster and a right thruster; the vertical thrusters include an upper thruster and a lower thruster; the specific steps of the mission takeover strategy include:

[0017] Step M1: The underwater robot broadcasts a task takeover request to the cluster, along with the current target location and historical tracking path data.

[0018] Step M2: After receiving a request, the robot whose battery level exceeds a preset threshold elects a takeover operator through an optimization algorithm. The target conditions of the optimization algorithm are set as being closest to the target and having the highest battery level.

[0019] Step M3: The receiver synchronizes the thruster power parameters of the low-battery robot to maintain the continuity of the tracking action;

[0020] Step M4: Update the energy control scheme, broadcast the underwater robot and data requesting task takeover to the cluster, remove the particle swarm optimization process from the next unit of time, and set the underwater robot to return mode.

[0021] Furthermore, the method for optimizing the energy control scheme using the adaptive control optimization algorithm includes:

[0022] Step N1: Initialize the particle swarm. Each particle swarm represents an energy control scheme. The energy control scheme includes the change in thruster power of m underwater robots in the next unit time. The change is a percentage value within a preset range.

[0023] Step N2: Obtain the total range, stability, and time consumption coefficient for each energy control scheme;

[0024] Step N3: Calculate the overall adaptability of x energy control schemes based on total range, stability, and time consumption coefficient;

[0025] Step N4: Update the changes in thruster power of all underwater robots in the energy control system within the next unit of time, and generate a new energy control scheme;

[0026] Step N5: Based on the updated position, the first... Different update strategies are selected for the total endurance of individual particles, the total endurance corresponding to the historical best position, and the total endurance corresponding to the global best position;

[0027] Step N6: Repeat steps N2-N5 until the preset number of repetitions is reached. Then, select the energy control scheme with the highest overall adaptability. The energy control scheme with the highest overall adaptability is the output optimized energy control scheme.

[0028] Furthermore, the task completion rate refers to the progress of the underwater robot in performing the target tracking task; the method for obtaining the task completion rate includes:

[0029] When the underwater robot's vision system fails to detect the target object, the task completion rate is recorded as 0.

[0030] Once the underwater robot's vision system detects the target object, the task completion rate... Recorded as:

[0031] ;

[0032] In the formula, Assignment completion rate; The time during which the underwater robot maintains a preset distance range from the target; To preset the target tracking time; The number of frames in which the target object was identified; The number of frames corresponding to the preset target tracking time; the distance is obtained through a sonar device.

[0033] Furthermore, the attitude data includes the underwater robot's pitch angle, roll angle, and yaw angle; the method for compressing the attitude data and internal data using the travel length encoding includes:

[0034] Step A1: Arrange the attitude data and internal data within a unit of time according to the time series to form a one-dimensional data sequence;

[0035] Step A2: Traverse the data sequence and group consecutive identical values ​​into one run.

[0036] Step A3: Encode the trip, obtain the corresponding value and repetition count of the trip, and output the trip sequence composed of the value and repetition count; the format of the encoded trip sequence includes c [value, count]; c is the number of different values ​​in the trip;

[0037] Step A4: Store the encoded travel sequence as compressed data; the compressed data of the attitude data is denoted as the first processed data; the compressed data of the internal data is denoted as the second processed data;

[0038] Step A5: When it is necessary to read compressed data, decode the compressed data into the original attitude data and internal data.

[0039] Furthermore, the external environmental data includes water pressure, flow velocity, and turbidity; the method for compressing the external environmental data using discrete cosine transform includes:

[0040] Step B1: Arrange the external environment data within a unit of time in chronological order to form a two-dimensional data matrix;

[0041] Step B2: Divide the two-dimensional data matrix into 8x8 sub-blocks, apply DCT transformation to each sub-block, thereby transforming the two-dimensional data matrix from the spatial domain to the frequency domain and obtaining frequency domain data;

[0042] Step B3: Quantize the frequency domain data, remove high-frequency noise, and obtain the frequency domain processed data;

[0043] Step B4: Perform Huffman coding on the frequency domain processed data, further compress the data, and store it as a compressed file, denoted as the third processed data.

[0044] Furthermore, the method for obtaining the longest total battery life includes:

[0045] ;

[0046] in, For the longest total range; This refers to the serial number corresponding to the underwater robot; For the serial number The corresponding dynamic remaining battery capacity of the underwater robot; For the serial number The total power of the corresponding underwater robot's thrusters; The preset error coefficient for the load consumption of the underwater robot other than the thrusters; This represents the total number of underwater robot swarms. This represents the battery's current. The temperature of the battery; This refers to the water pressure at the location of the underwater robot.

[0047] Furthermore, the method for obtaining the dynamic remaining battery capacity includes:

[0048] Step C1: Pre-collect capacity change data of the same type of battery at different depths, currents, charges and temperatures, simulate the effect of water pressure on the battery electrochemical process using MATLAB to obtain the fitting formula of the remaining battery capacity with respect to current, temperature and water pressure.

[0049] Step C2: Based on the current battery data and water pressure of the underwater robot, calculate the remaining battery capacity according to the fitting formula.

[0050] An energy control system for an underwater robot, comprising the following steps:

[0051] The data acquisition module is pre-numbered for the underwater robot and collects the underwater robot's attitude data, internal data, and external environmental data in real time.

[0052] The data processing module is used to compress attitude data and internal data using stroke length encoding to obtain first processed data and second processed data; and to compress external environment data using discrete cosine transform to obtain third processed data.

[0053] The digital modeling module establishes a digital model based on the sequence number, the first processed data, the second processed data, and the third processed data;

[0054] The target setting module sets target conditions based on a digital model. These target conditions include the longest total range, the maximum stability, and the minimum time consumption coefficient.

[0055] The scheme storage module randomly generates x energy control schemes;

[0056] The technical analysis module optimizes the energy control scheme using an adaptive control optimization algorithm based on the target conditions, and outputs the optimized energy control scheme.

[0057] The collaborative compensation module executes cluster energy compensation commands for the underwater robot cluster operating in accordance with the energy control scheme, based on the robot's battery level and tracking progress.

[0058] The technical effects and advantages of the energy control system and method for an underwater robot of the present invention are as follows:

[0059] When existing underwater robot swarms work together to perform tracking tasks, some robots may be unable to continue performing the task efficiently due to unexpected situations. This invention proposes a particle swarm optimization algorithm with the objectives of longest total endurance, maximum stability, and minimum time consumption coefficient. When an unexpected situation occurs in the swarm and some robots are unable to continue performing the task efficiently, a takeover mechanism is proposed based on the optimization algorithm, thereby enabling the tracking task to continue to be completed efficiently.

[0060] This invention combines current, temperature, and water pressure data, obtains a fitting formula through MATLAB simulation, calculates the dynamic remaining battery capacity, corrects the impact of high water pressure on the power display, significantly improves the accuracy of the remaining battery capacity, and thus enhances the precision of energy control scheme optimization.

[0061] This invention processes data by combining stroke length encoding and discrete cosine transform, resulting in significant data compression and effectively reducing the bandwidth requirements for underwater communication.

[0062] This invention establishes a mathematical model that maximizes total endurance (considering battery capacity, thruster power, and load loss), maximum stability (based on attitude angle and flow velocity), and minimum time consumption coefficient (considering water pressure, turbidity, and operation progress). Then, it uses a particle swarm optimization algorithm to dynamically adjust the thruster power variation. By balancing the endurance, stability, and time consumption of the cluster through a comprehensive fitness function, it achieves multi-dimensional optimization of energy allocation and effectively improves the energy utilization efficiency of underwater robot clusters.

[0063] This invention establishes a task takeover mechanism in a robot swarm and uses an optimized algorithm to select other robots in the swarm to take over the task, thereby maintaining tracking continuity and effectively improving the integrity of tracking task completion. Attached Figure Description

[0064] Figure 1 This is a schematic diagram of an energy control system for an underwater robot according to Embodiment 1 of the present invention;

[0065] Figure 2 This is a flowchart of an energy control method for an underwater robot according to Embodiment 2 of the present invention;

[0066] Figure 3 This is a schematic diagram of an underwater robot swarm tracking the same target according to Embodiment 1 of the present invention;

[0067] Figure 4 This is a flowchart of the adaptive control optimization algorithm of Embodiment 1 of the present invention. Detailed Implementation

[0068] 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.

[0069] Example 1

[0070] Please see Figure 1 As shown in the figure, the energy control system of an underwater robot described in this embodiment includes: a data acquisition module, a data processing module, a digital modeling module, a target setting module, a scheme storage module, a technical analysis module, and a collaborative compensation module. The modules are connected to each other via wired and / or wireless means.

[0071] The data acquisition module pre-determines the sequence number of the underwater robot and collects its attitude data, internal data, and external environment data in real time. The sequence number represents the unique sequence of the underwater robot. The attitude data includes the underwater robot's pitch angle, roll angle, and yaw angle. The internal data includes battery data, thruster data, and task completion rate. The battery data includes the battery's charge, current, and temperature. The thruster data is the power of each thruster. The task completion rate is the progress of the underwater robot in performing target tracking tasks. The external environment data includes water pressure, flow velocity, and turbidity.

[0072] Please see Figure 3 As shown in the figure, this is a schematic diagram of a scenario in which an underwater robot cluster (4 underwater robots in different locations) tracks the same target in Embodiment 1.

[0073] It should be noted that the underwater robot's thrusters include a head thruster, a stern thruster, lateral thrusters, and a vertical thruster; the lateral thrusters include a left thruster and a right thruster; the vertical thrusters include an upper thruster and a lower thruster; the head thruster helps the underwater robot move forward in the water; the stern thruster helps the underwater robot move backward or decelerate in the water; the left thruster is located on the left side of the underwater robot and helps the underwater robot move to the left; the right thruster is located on the right side of the underwater robot and helps the underwater robot move to the right; the upper thruster is located at the top of the underwater robot and helps the underwater robot surface; the lower thruster is located at the bottom of the underwater robot and helps the underwater robot submerge.

[0074] Pitch, roll, and yaw angles reflect the spatial attitude of an underwater robot in the water, directly affecting the power distribution of the thrusters and the stability of motion. Specifically, when the underwater robot tilts forward (i.e., the pitch angle is positive), the system needs to increase the power of the tail thruster to balance the attitude; when the underwater robot tilts backward (i.e., the pitch angle is negative), the system needs to increase the power of the head thruster to balance the attitude; in addition, an excessively large pitch angle increases the cross-sectional area of ​​the water flow, leading to increased drag, and the system needs to dynamically adjust the power of the tail and head thrusters; when the roll angle is greater than or equal to a preset angle, the load on the tilting side thrusters of the underwater robot increases, and the system needs to increase the power of the symmetrical side thrusters to maintain a horizontal attitude to perform the task.

[0075] When an underwater robot is diving or ascending without power, the yaw angle is positively correlated with the radius of the spiral trajectory. The system needs to adjust the power of the lateral thruster to control the turning radius.

[0076] Battery current and temperature are important indicators of battery health. Excessive current or abnormal temperature may indicate overcharging, over-discharging, or short circuit problems, requiring timely reduction of thruster power. Battery charge is a key parameter for calculating the underwater robot's endurance. By acquiring battery data, the system can dynamically adjust thruster power, extend battery life, and optimize the underwater robot's endurance.

[0077] The load intensity and rotational speed of the thrusters are used to optimize energy distribution; when the load intensity exceeds a preset threshold, the system adaptively reduces the power of the corresponding thruster to prevent the thruster from overheating or being damaged.

[0078] External environmental data includes water pressure, flow rate, and turbidity. Higher water pressure increases the robot's movement resistance (e.g., shell deformation leads to reduced propulsion efficiency and increased motor load), requiring more energy and time to complete the same tracking action. Additionally, placing the underwater robot's battery in a pressure chamber prevents mechanical pressure damage. Although the pressure chamber isolates the robot from direct water pressure, the external ambient temperature corresponding to the water pressure (e.g., deep-sea low temperatures) may indirectly affect the internal temperature through the chamber, thereby altering the battery's main reaction rate and causing a deviation between the actual usable capacity and the theoretical value, resulting in inaccurate display of remaining capacity.

[0079] Turbidity reflects the clarity of water (such as the concentration of suspended particulate matter); the higher the turbidity, the lower the sensing accuracy of the robot's sensors. To compensate for the loss of sensing, the robot needs to increase the energy supply to the sensors (such as increasing the sonar transmission power) or extend the task path (repeatedly confirming the target), which leads to increased energy consumption and time consumption.

[0080] The system can dynamically adjust the power distribution of the thrusters based on the underwater robot's task completion rate.

[0081] The methods for obtaining the task completion rate include:

[0082] When the underwater robot's vision system fails to detect the target object, the task completion rate is recorded as 0.

[0083] Once the underwater robot's vision system detects the target object, the task completion rate... Recorded as:

[0084] ;

[0085] In the formula, Assignment completion rate; The time during which the underwater robot maintains a preset distance range from the target; To preset the target tracking time; The number of frames in which the target object was identified; The number of frames corresponding to the preset target tracking time; the distance is obtained through a sonar device.

[0086] The battery charge is estimated by running time; the current is obtained by a closed-loop Hall effect current sensor; and the battery temperature is obtained by a temperature sensor.

[0087] The pitch and roll angles are obtained through an attitude reference system; the thruster power is calculated using rotational speed and load torque; the load torque is a preset value, and the rotational speed is obtained through a Hall sensor.

[0088] The water pressure is obtained using a piezoresistive pressure sensor; the flow velocity is obtained using a Doppler flow meter; and the turbidity is obtained using an optical sensor.

[0089] In order to adapt to the input requirements of the lightweight model, the data processing module compresses the attitude data and internal data using stroke length encoding to obtain the first and second processed data; and compresses the external environment data using discrete cosine transform to obtain the third processed data.

[0090] The method for compressing attitude data and internal data using the stroke length encoding includes:

[0091] Step A1: Arrange the attitude data and internal data within a unit of time according to the time series to form a one-dimensional data sequence.

[0092] Step A2: Traverse the data sequence and divide consecutive identical values ​​into a single run.

[0093] For example, the continuous pitch angle is After being divided according to the itinerary, it becomes , , .

[0094] Step A3: Encode the trip, obtain the corresponding value and repetition count of the trip, and output the trip sequence composed of the value and repetition count; the format of the encoded trip sequence includes c [value, count]; c is the number of different values ​​in the trip.

[0095] For example, the itinerary is , , The corresponding travel sequence is: .

[0096] Step A4: Store the encoded travel sequence as compressed data; the compressed data of the attitude data is denoted as the first processed data; the compressed data of the internal data is denoted as the second processed data; by storing the travel sequence as compressed data, the storage space can be significantly reduced.

[0097] Step A5: When it is necessary to read compressed data, decode the compressed data into the original attitude data and internal data.

[0098] The method for compressing external environment data using discrete cosine transform includes:

[0099] Step B1: Arrange the external environment data within a unit of time in chronological order to form a two-dimensional data matrix.

[0100] Step B2: Divide the two-dimensional data matrix into 8x8 sub-blocks, apply DCT transformation to each sub-block, thereby transforming the two-dimensional data matrix from the spatial domain to the frequency domain and obtaining frequency domain data.

[0101] Step B3 involves quantizing the frequency domain data to remove high-frequency noise, reduce data redundancy, and obtain the frequency domain processed data.

[0102] Step B4: Perform Huffman coding on the frequency domain processed data, further compress the data, and store it as a compressed file, denoted as the third processed data.

[0103] By compressing the data using stroke length encoding and discrete cosine transform before transmission, the amount of data is significantly reduced, the consumption of computing resources is lowered, and the efficiency of the underwater robot in executing subsequent plans is effectively improved.

[0104] The digital modeling module establishes a digital model based on the sequence number, the first processed data, the second processed data, and the third processed data.

[0105] The target setting module sets target conditions based on a digital model. These target conditions include the longest total range, the maximum stability, and the minimum time consumption coefficient.

[0106] The maximum total endurance refers to the maximum total endurance of the underwater robot swarm. It is calculated based on the remaining power of a single underwater robot, combined with the thruster power and load loss, to determine the overall sustainable operating time of the swarm.

[0107] From the perspective of energy flow, battery capacity is the energy supply, thruster power determines the energy consumption rate, and load error coefficient covers the energy loss of non-thrusters. The total range of the cluster is obtained by calculating "supply / (unit energy consumption + loss correction)" for each unit and summing the results for the cluster.

[0108] The method for obtaining the longest total battery life includes:

[0109] ;

[0110] in, For the longest total range; This refers to the serial number corresponding to the underwater robot; For the serial number The corresponding dynamic remaining battery capacity of the underwater robot; For the serial number The total power of the corresponding underwater robot's thrusters; The preset error coefficient for the load consumption of the underwater robot other than the thrusters; This represents the total number of underwater robot swarms. This represents the battery's current. The temperature of the battery; This refers to the water pressure at the location of the underwater robot.

[0111] The method for obtaining the dynamic remaining battery capacity includes:

[0112] Step C1: Collect capacity change data of the same model of battery at different depths, currents, charges and temperatures. Simulate the effect of water pressure on the battery electrochemical process using MATLAB to obtain the fitting formula of the remaining battery capacity with respect to current, temperature and water pressure.

[0113] Step C2: Based on the current battery data and water pressure of the underwater robot, the remaining battery capacity is calculated according to the fitting formula. Compared with directly estimating the battery capacity based on the running time, this greatly improves the accuracy of the remaining battery capacity.

[0114] The maximum stability is the maximum value of the stability of the underwater robot swarm; the attitude deviation of a single robot is measured by pitch angle, roll angle and yaw angle; since the faster the water flow, the greater the stability fluctuation caused by attitude deviation; by obtaining the water flow velocity, the amplification or suppression effect of water flow on attitude disturbance is reflected.

[0115] The method for obtaining the maximum stability includes:

[0116] ;

[0117] in, For maximum stability; , and All are corresponding preset coefficients; For the serial number The corresponding pitch angle of the underwater robot; For the serial number The corresponding roll angle of the underwater robot; For the serial number The corresponding yaw angle of the underwater robot; For the serial number The corresponding water flow velocity in the area where the underwater robot is located.

[0118] The minimum time consumption coefficient is the minimum time required for multiple underwater robots to track a target. Since multiple underwater robots perform tracking tasks simultaneously, when the underwater robot with the longest time consumption completes its task, the remaining underwater robots have already completed their tasks. Therefore, the minimum time consumption coefficient for multiple underwater robots is the time consumption coefficient corresponding to the underwater robot with the longest time consumption, which is the "barrel effect" of the total time consumption of the cluster.

[0119] It should be noted that the time consumption coefficient is a quantitative indicator of the time consumption risk of underwater robot swarm tasks, and is a comprehensive mapping of "environmental resistance × perception difficulty / task progress"; at the same time, the time consumption coefficient can be understood as the negative contribution of the environment to the task time consumption per unit progress.

[0120] The formula for the minimum time consumption coefficient is:

[0121] ;

[0122] in, The minimum total tracking time coefficient; For the serial number The water pressure at the location of the corresponding underwater robot; For the serial number The corresponding turbidity level at the location of the underwater robot; For the serial number The corresponding underwater robot's task completion rate.

[0123] The scheme storage module randomly generates x energy control schemes.

[0124] The technical analysis module optimizes the energy control scheme using an adaptive control optimization algorithm based on the target conditions, and outputs the optimized energy control scheme to meet the set target conditions.

[0125] Please see Figure 4 As shown, the method for optimizing energy control schemes using the adaptive control optimization algorithm includes:

[0126] Step N1: Initialize the particle swarm. Each particle swarm represents an energy control scheme. The energy control scheme includes the change in thruster power of m underwater robots in the next unit time. The change is a percentage value within a preset range.

[0127] For example, the power changes of the head thruster, tail thruster, left thruster, right thruster, upper thruster and lower thruster of an underwater robot, which are increased by 10%, decreased by 5%, 0, 0, increased by 20% and decreased by 10%, are represented as [0.1, -0.05, 0, 0, 0.2, -0.1].

[0128] Step N2: Obtain the total range, stability, and time consumption coefficient for each energy control scheme.

[0129] Step N3: Calculate the overall adaptability of x energy control schemes based on total range, stability, and time consumption coefficient. The method for calculating the overall fitness includes:

[0130] ;

[0131] In the formula, , and These are the corresponding preset weighting coefficients.

[0132] Step N4: Update the particle velocity and position, that is, update the changes in thruster power of all underwater robots in the energy control system in the next unit of time, and generate a new energy control scheme; the method for updating particle velocity includes:

[0133] .

[0134] In the formula, For the first The particle in the first Speed ​​during the next iteration; For the first The particle in the first Speed ​​during the next iteration; For the first The particle in the first The position at the next iteration; For the first The best historical position found by each particle in the corresponding energy control scheme is the position with the maximum total range in the corresponding energy control scheme. The optimal position found among all particles globally (i.e., among all energy control schemes); Inertial weights control the continuity of particle velocity; For individual learning factors, The larger the value, the more the particle will rely on its own historical experience; As a group learning factor, The larger the value, the more likely the particle will rely on the collective experience of the group; and All numbers are random numbers in the range [0,1], increasing the randomness of the search.

[0135] For example, the first The parameters of each particle are as follows:

[0136] ; ; ; ; ; ; ; ; .

[0137] The result of the inertia term calculation is as follows:

[0138] .

[0139] Individual cognitive item calculation:

[0140] .

[0141] Group cognition item calculation:

[0142] .

[0143] Update speed calculation:

[0144] .

[0145] Particle position update methods include:

[0146] .

[0147] For example, the first The updated positions of the particles are:

[0148] .

[0149] Step N5, if the position is updated after the first... If the total endurance of each particle is greater than the total endurance corresponding to the historical best position, then let If the position is updated after the first... If the total lifespan of a particle is greater than the total lifespan corresponding to the global optimal position, then let .

[0150] Step N6: Repeat steps N2-N5 until the preset number of repetitions is reached. Then, select the energy control scheme with the highest overall adaptability. The energy control scheme with the highest overall adaptability is the output optimized energy control scheme, which meets the set target conditions.

[0151] The collaborative compensation module, based on the robot's battery level and tracking progress, executes a cluster energy compensation command for the underwater robot swarm operating according to the energy control scheme; the specific content of the cluster energy compensation command includes:

[0152] When a robot in the underwater robot swarm has a battery level lower than a preset battery threshold and a task completion rate higher than a preset completion rate threshold, the corresponding underwater robot will take over the task in the next unit of time; otherwise, it will continue to operate according to the energy control scheme in the next unit of time.

[0153] The specific steps of the task takeover strategy include:

[0154] Step M1: The underwater robot broadcasts a task takeover request to the cluster, along with the current target location and historical tracking path data.

[0155] Step M2: After receiving a request, the robot whose battery level exceeds a preset threshold selects a manager through an optimization algorithm. The target conditions of the optimization algorithm are set as being closest to the target and having the highest battery level. The optimization algorithm can be a particle swarm optimization algorithm or other genetic algorithms.

[0156] Step M3: The receiver synchronizes the thruster power parameters of the low-battery robot to maintain the continuity of the tracking action.

[0157] Step M4: Update the energy control scheme, broadcast the underwater robot and data requesting task takeover to the cluster, remove the particle swarm optimization process from the next unit of time, and set the underwater robot to return mode.

[0158] Example 2

[0159] Please see Figure 2 As shown, this embodiment provides an energy control system and method for an underwater robot, including:

[0160] The underwater robot's serial number is preset, and its attitude data, internal data, and external environment data are collected in real time.

[0161] The attitude data and internal data are compressed using stroke length encoding to obtain the first and second processed data; the external environment data are compressed using discrete cosine transform to obtain the third processed data.

[0162] A digital model is established based on the sequence number, the first processed data, the second processed data, and the third processed data.

[0163] Target conditions are set based on a digital model, including the longest total range, maximum stability, and minimum time consumption coefficient.

[0164] Randomly generate x energy control schemes;

[0165] Based on the target conditions, the energy control scheme is optimized using an adaptive control optimization algorithm, and the optimized energy control scheme is output.

[0166] Based on the robot's battery level and tracking progress, execute cluster energy compensation commands for the underwater robot swarm operating in accordance with the energy control scheme.

[0167] Example 3

[0168] The electronic device of this embodiment includes: a processor, a memory, and a computer program stored in the memory and executable on the processor. When the processor executes the computer program, it implements the steps in Embodiment 2 of an energy control system and method for an underwater robot, for example... Figure 2 The steps shown. Alternatively, when the processor executes the computer program, it implements the functions of each module / unit in the above-described device embodiments, for example... Figure 1 The functions of the module shown.

[0169] For example, the computer program may be divided into one or more modules / units, which are stored in the memory and executed by the processor to complete this application. The one or more modules / units may be a series of computer program instruction segments capable of performing a specific function, which describe the execution process of the computer program in the terminal device.

[0170] Those skilled in the art will understand that this is merely an example of an electronic device and does not constitute a limitation on the electronic device. It may include more or fewer components than illustrated, or combine certain components, or different components. For example, the electronic device may also include input / output devices, network access devices, buses, etc.

[0171] The processor can be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor can be a microprocessor or any conventional processor.

[0172] The memory can be an internal storage unit of the terminal device, such as a hard drive or RAM. Alternatively, it can be an external storage device, such as a plug-in hard drive, Smart Media Card (SMC), Secure Digital (SD) card, or FlashCard. Furthermore, the memory can include both internal and external storage units. The memory is used to store the computer program and other programs and data required by the terminal device. It can also be used to temporarily store data that has been output or will be output.

[0173] Those skilled in the art will 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, or a combination of computer software and electronic hardware. 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 implementation should not be considered beyond the scope of this application.

[0174] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.

[0175] 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 units can be selected to achieve the purpose of this embodiment according to actual needs.

[0176] If an integrated module / unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, all or part of the processes in the methods of the above embodiments can also be implemented by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the above method embodiments. The computer program includes computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. The computer-readable medium can include: any entity or device capable of carrying the computer program code, a recording medium, a USB flash drive, a portable hard drive, a magnetic disk, an optical disk, a computer memory, a read-only memory (ROM), a random access memory (RAM), an electrical carrier signal, a telecommunication signal, and a software distribution medium, etc.

[0177] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application, and should all be included within the protection scope of this application.

Claims

1. An energy control method for an underwater robot, characterized in that, include: The underwater robot is assigned a serial number, and its attitude data, internal data, and external environment data are collected in real time. The attitude data includes the underwater robot's pitch angle, roll angle, and yaw angle. The internal data includes battery data, thruster data, and task completion rate. The external environment data includes water pressure, flow velocity, and turbidity. The attitude data and internal data are compressed using stroke length encoding to obtain the first and second processed data; the external environment data are compressed using discrete cosine transform to obtain the third processed data. A digital model is established based on the sequence number, the first processed data, the second processed data, and the third processed data. Target conditions are set based on a digital model, including the longest total range, maximum stability, and minimum time consumption coefficient. Randomly generate x energy control schemes; Based on the target conditions, the energy control scheme is optimized using an adaptive control optimization algorithm, and the optimized energy control scheme is output. The adaptive control optimization algorithm optimizes energy control schemes by including the following methods: Step N1: Initialize the particle swarm. Each particle swarm represents an energy control scheme. The energy control scheme includes the change in thruster power of m underwater robots in the next unit time. The change is a percentage value within a preset range. Step N2: Obtain the total range, stability, and time consumption coefficient for each energy control scheme; Step N3: Calculate the overall adaptability of x energy control schemes based on total range, stability, and time consumption coefficient; Step N4: Update the changes in thruster power of all underwater robots in the energy control system within the next unit of time, and generate a new energy control scheme; Step N5: Based on the updated position, the first... Different update strategies are selected for the total endurance of individual particles, the total endurance corresponding to the historical best position, and the total endurance corresponding to the global best position; Step N6: Repeat steps N2-N5 until the preset number of repetitions is reached. Then, select the energy control scheme with the highest overall adaptability. The energy control scheme with the highest overall adaptability is the output optimized energy control scheme. Based on the robot's battery level and tracking progress, execute cluster energy compensation commands for the underwater robot swarm operating in accordance with the energy control scheme.

2. The energy control method for an underwater robot according to claim 1, characterized in that, The battery data includes the battery's charge, current, and temperature; the specific content of the cluster energy compensation instruction includes: When a robot in the underwater robot swarm has a battery level lower than a preset battery threshold and a task completion rate higher than a preset completion rate threshold, the corresponding underwater robot will take over the task in the next unit of time; otherwise, it will continue to operate according to the energy control scheme in the next unit of time.

3. The energy control method for an underwater robot according to claim 2, characterized in that, The thruster data refers to the thruster's power; the thruster includes a head thruster, a stern thruster, lateral thrusters, and a vertical thruster; the lateral thrusters include a left thruster and a right thruster; the vertical thrusters include an upper thruster and a lower thruster; The specific steps of the task takeover strategy include: Step M1: The underwater robot broadcasts a task takeover request to the cluster, along with the current target location and historical tracking path data. Step M2: After receiving a request, the robot whose battery level exceeds a preset threshold selects a takeover operator through an optimization algorithm. The target conditions of the optimization algorithm are set as being closest to the target and having the highest battery level. Step M3: The receiver synchronizes the thruster power parameters of the low-battery robot to maintain the continuity of the tracking action; Step M4: Update the energy control scheme, broadcast the underwater robot and data requesting task takeover to the cluster, remove the particle swarm optimization process from the next unit of time, and set the underwater robot to return mode.

4. The energy control method for an underwater robot according to claim 2, characterized in that, The task completion rate refers to the progress of the underwater robot in performing the target tracking task; the method for obtaining the task completion rate includes: When the underwater robot's vision system fails to detect the target object, the task completion rate is recorded as 0. Once the underwater robot's vision system detects the target object, the task completion rate... Recorded as: ; In the formula, Assignment completion rate; The time during which the underwater robot maintains a preset distance range from the target; To preset the target tracking time; The number of frames in which the target object was identified; The number of frames corresponding to the preset target tracking time; the distance is obtained through a sonar device.

5. The energy control method for an underwater robot according to claim 1, characterized in that... The method for compressing attitude data and internal data using the stroke length encoding includes: Step A1: Arrange the attitude data and internal data within a unit of time according to the time series to form a one-dimensional data sequence; Step A2: Traverse the data sequence and group consecutive identical values ​​into one run. Step A3: Encode the trip, obtain the corresponding value and repetition count of the trip, and output the trip sequence composed of the value and repetition count; the format of the trip sequence output after step A3 encoding includes c [value, count]; c is the number of different values ​​in the trip; Step A4: Store the encoded travel sequence as compressed data; the compressed data of the attitude data is denoted as the first processed data; the compressed data of the internal data is denoted as the second processed data; Step A5: When it is necessary to read compressed data, decode the compressed data into the original attitude data and internal data.

6. The energy control method for an underwater robot according to claim 1, characterized in that... The method for compressing external environment data using discrete cosine transform includes: Step B1: Arrange the external environment data within a unit of time in chronological order to form a two-dimensional data matrix; Step B2: Divide the two-dimensional data matrix into 8x8 sub-blocks, apply discrete cosine transform to each sub-block, thereby transforming the two-dimensional data matrix from the spatial domain to the frequency domain and obtaining frequency domain data; Step B3: Quantize the frequency domain data, remove high-frequency noise, and obtain the frequency domain processed data; Step B4: Perform Huffman coding on the frequency domain processed data, further compress the data, and store it as a compressed file, denoted as the third processed data.

7. The energy control method for an underwater robot according to claim 1, characterized in that... The method for obtaining the longest total battery life includes: ; in, For the longest total range; This refers to the serial number corresponding to the underwater robot; For the serial number The corresponding dynamic remaining battery capacity of the underwater robot; For the serial number The total power of the corresponding underwater robot's thrusters; The preset error coefficient for the load consumption of the underwater robot other than the thrusters; This represents the total number of underwater robot swarms. This represents the battery's current. The temperature of the battery; This refers to the water pressure at the location of the underwater robot.

8. The energy control method for an underwater robot according to claim 7, characterized in that... The method for obtaining the dynamic remaining battery capacity includes: Step C1: Pre-collect capacity change data of the same type of battery at different depths, currents, charges and temperatures, simulate the effect of water pressure on the battery electrochemical process using MATLAB to obtain the fitting formula of the remaining battery capacity with respect to current, temperature and water pressure. Step C2: Based on the current battery data and water pressure of the underwater robot, calculate the remaining battery capacity according to the fitting formula.

9. An energy control system for an underwater robot, implementing the energy control method for an underwater robot according to any one of claims 1-8, characterized in that, include: The data acquisition module is pre-numbered for the underwater robot and collects the underwater robot's attitude data, internal data, and external environmental data in real time. The data processing module is used to compress attitude data and internal data using stroke length encoding to obtain first processed data and second processed data; and to compress external environment data using discrete cosine transform to obtain third processed data. The digital modeling module establishes a digital model based on the sequence number, the first processed data, the second processed data, and the third processed data; The target setting module sets target conditions based on a digital model. These target conditions include the longest total range, the maximum stability, and the minimum time consumption coefficient. The scheme storage module randomly generates x energy control schemes; The technical analysis module optimizes the energy control scheme using an adaptive control optimization algorithm based on the target conditions, and outputs the optimized energy control scheme. The collaborative compensation module executes cluster energy compensation commands for the underwater robot cluster operating in accordance with the energy control scheme, based on the robot's battery level and tracking progress.

Citation Information

Patent Citations

  • A Reinforcement Learning-Based Control Method for Underwater Robots and Its Tracking Control Method

    CN109240091B

  • Underwater robots design and control mechanism using particle swarm optimization algorithm

    AU2020102302A4

  • DP ship motion control and thrust distribution cooperative control method fusing particle swarm optimization and neural network prediction control

    CN117311142A