Control device, underwater vehicle, calculation method and program

By dividing the thruster load distribution calculation into stages and correcting for constraints, the method addresses computational challenges in AUV navigation, enabling efficient and constrained optimization of thruster control.

JP7738391B2Active Publication Date: 2025-09-12MITSUBISHI HEAVY IND LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2021004005
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-01-14
Publication Date
2025-09-12
Estimated Expiration
2041-01-14

AI Technical Summary

Technical Problem

Existing methods for optimizing thruster load distribution in autonomous underwater vehicles (AUVs) with multiple thrusters face computational challenges, making it difficult to simultaneously calculate the optimal target course, total thruster control amount, and thrust load distribution efficiently.

Method used

A method is introduced that divides the calculation process into four stages: calculating the route and total control amount without constraints, then correcting for constraints; and calculating and correcting thruster load distribution considering operational constraints, reducing computational load.

Benefits of technology

This approach allows AUVs to calculate thruster load distribution efficiently, ensuring optimal navigation within the computational limits of onboard computers, avoiding delays and ensuring compliance with operational constraints.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007738391000001
    Figure 0007738391000001
  • Figure 0007738391000002
    Figure 0007738391000002
  • Figure 0007738391000003
    Figure 0007738391000003
Patent Text Reader

Abstract

To provide a method of calculating a control quantity of an underwater traveling body with a small calculation volume.SOLUTION: A controller includes a total control quantity calculation unit that calculates a total control quantity representing a control quantity needed to move an underwater traveling body to a target position by using all of plural thrusters included in the underwater traveling body, and an allocation calculation unit that calculates allocations of the control quantity to be incurred by the respective thrusters on the basis of the total control quantity.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure relates to a control device, an underwater vehicle, a calculation method, and a program. [Background technology]

[0002] The route of an autonomous underwater vehicle (AUV) is determined by specifying a target route as a way point (WP) and controlling the AUV to move along this WP. AUVs navigate using thrusters to provide thrust and rudders to provide turning torque for turning and ascending. However, in recent years, AUVs equipped with multiple thrusters have emerged that can move freely and maintain their attitude by moving up, down, left, and right in translation without turning. When multiple thrusters are used, the thrust load distribution for each thruster is calculated, and each thruster is rotated at a rotation speed corresponding to the distributed thrust load. Patent Document 1 describes a calculation method for distributing thrust loads to multiple thrusters. Patent Document 2 describes a method for calculating the control amount required to navigate a target route using model predictive control. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Patent No. 2749833 [Patent Document 2] Japanese Patent Application Publication No. 2018-181166 Summary of the Invention [Problem to be solved by the invention]

[0004] To optimally control multiple thrusters, it is necessary to simultaneously optimize the target course, the total thruster control amount required to navigate the target course, and the thrust load distribution to each thruster. For example, one possible method is to use a constrained optimization calculation in which the objective function is to minimize the cost (energy, etc.) required for navigation, and the constraints are obstacles on the target course and the thruster rotation speed characteristics, thereby simultaneously calculating the optimal target course, total control amount, and thrust load distribution. However, from the perspective of computational load, this method may be difficult to process with the capabilities of the computer installed on the AUV. There is a need for a method to calculate load distribution and other parameters for AUV navigation with a small amount of computation.

[0005] The present disclosure provides a control device, an underwater vehicle, a calculation method, and a program that can solve the above problems. [Means for solving the problem]

[0006] According to one aspect of the present disclosure, the control device includes a total control amount calculation unit that calculates a route required for moving the underwater vehicle to a target position and a total control amount indicating a control amount for all of the multiple thrusters equipped in the underwater vehicle, and an allocation calculation unit that calculates an allocation of the control amount to be borne by each of the multiple thrusters based on the total control amount, the control amount calculation unit calculates, as a first step, the route and the total control amount without considering any constraints on the route to the target position, and then, as a second step, calculates, taking into consideration any constraints on the route to the target position, the route and the total control amount that satisfy the constraints and have the smallest difference from the route and the total control amount calculated in the first step, and sets these values ​​as the final route and the total control amount; In a third step, the allocation calculation unit calculates a rotation speed command value for each of the plurality of thrusters based on the total control amount and the mounting positions and mounting angles of the plurality of thrusters without taking into account constraints on the operation of the thrusters, and then in a fourth step, calculates a rotation speed command value for each of the plurality of thrusters that satisfies the constraints and has a minimum difference from the rotation speed command value calculated in the third step, taking into account constraints on the operation of the thrusters, and sets these values ​​as the final rotation speed command values.

[0008] According to another aspect of the present disclosure, an underwater vehicle includes a plurality of thrusters and any one of the control devices described above.

[0009] According to one aspect of the present disclosure, a calculation method includes the steps of calculating a route required to move an underwater vehicle to a target position and a total control amount indicating a control amount for all of a plurality of thrusters equipped on the underwater vehicle, and calculating a distribution of the control amount to be borne by each of the plurality of thrusters based on the total control amount, wherein the step of calculating the route and the total control amount includes: As a first step, The route and the total control amount are calculated without considering constraints on the route to the target position, and then, in a second step, the constraints on the route to the target position are taken into consideration to calculate the route and the total control amount that satisfy the constraints and have the smallest difference from the route and the total control amount calculated in the first step, and these values ​​are set as the final route and total control amount. In the step of calculating the allocation, in a third step, a rotation speed command value for each of the plurality of thrusters is calculated based on the total control amount and the mounting positions and mounting angles of the plurality of thrusters without considering constraints on the operation of the thrusters, and then, in a fourth step, a rotation speed command value for each of the plurality of thrusters is calculated that satisfies the constraints and has the smallest difference from the rotation speed command value calculated in the third step, taking into consideration constraints on the operation of the thrusters, and these values ​​are set as the final rotation speed command values.

[0010] According to one aspect of the present disclosure, the program includes the steps of: calculating, in a computer, a route required for moving an underwater vehicle to a target position; and a total control amount indicating a control amount for all of a plurality of thrusters equipped in the underwater vehicle; and calculating, based on the total control amount, a distribution of the control amount to be borne by each of the plurality of thrusters, wherein the step of calculating the route and the total control amount includes: As a first step,The route and the total control amount are calculated without considering constraints on the route to the target position, and then in a second step, the route and the total control amount are calculated taking into account the constraints on the route to the target position, so that the constraints are satisfied and the difference from the route and the total control amount calculated in the first step is minimized, and these values ​​are set as the final route and total control amount. In the step of calculating the allocation, in a third step, a rotation speed command value for each of the plurality of thrusters is calculated based on the total control amount and the mounting positions and mounting angles of the plurality of thrusters without considering constraints on the operation of the thrusters, and then in a fourth step, a rotation speed command value for each of the plurality of thrusters is calculated taking into account constraints on the operation of the thrusters, so that the constraints are satisfied and the difference from the rotation speed command value calculated in the third step is minimized, and these values ​​are set as the final rotation speed command values. [Effects of the Invention]

[0011] According to the above-described control device, underwater vehicle, calculation method, and program, it is possible to calculate load distribution to a plurality of thrusters with a small calculation load. [Brief explanation of the drawings]

[0012] [Figure 1] FIG. 1 is a diagram illustrating an example of an AUV according to an embodiment. [Figure 2] FIG. 2 is a diagram illustrating a route of an AUV according to an embodiment. [Figure 3] FIG. 10 is a diagram illustrating division of control amount calculation according to the embodiment. [Figure 4] 10 is a flowchart illustrating an example of a calculation process according to an embodiment. [Figure 5] FIG. 2 is a diagram illustrating an example of a hardware configuration of a control device according to an embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0013] <Embodiment> Hereinafter, the method of calculating the route, control amount, and load distribution according to the present disclosure will be described with reference to FIGS. (composition) Fig. 1 is a diagram showing an example of an AUV according to an embodiment. Fig. 2 is a diagram illustrating the route of an AUV according to an embodiment. As shown in Fig. 1, an AUV 1 is equipped with thrusters 2a and 2b for propelling the AUV in the forward and backward directions, thrusters 2c, 2d, 2e, and 2f for propelling the AUV in the up and down directions (forward and backward directions on the paper), thrusters 2g and 2h for propelling the AUV in the left and right directions, and a control device 10. The number and positions of the thrusters shown in Fig. 1 are merely examples and are not limiting.

[0014] The control device 10 includes a WP acquisition unit 11, a sensor information acquisition unit 12, a calculation unit 13, a storage unit 14, and a thruster control unit 15. The WP acquisition unit 11 acquires waypoints that form the route of the AUV1. The waypoints are shown in FIG. 2. WP1 to WP18 in FIG. 2 are waypoints for the AUV1. When WP1 to WP18 are given, the AUV1 is controlled to move in the order of WP1 to WP18. The WP acquisition unit 11 acquires position information for WP1 to WP18 and records the position information for each of WP1 to WP18 in the memory unit 14.

[0015] The sensor information acquisition unit 12 acquires the measurement values ​​and analysis results of various sensors equipped on the AUV 1. For example, the sensor information acquisition unit 12 acquires the seabed topography and position information of underwater structures measured by a sonar (not shown) equipped on the AUV 1. For example, the sensor information acquisition unit 12 acquires the rotation speed of each thruster measured by a tachometer provided on each of the thrusters 2a to 2h.

[0016] The calculation unit 13 calculates command values ​​(rotation speed command values) to be given to the thrusters 2a to 2h required for the AUV 1 to move to the next WP. For example, in the example of FIG. 2, when the AUV 1 is navigated from WP1 to WP18, the calculation unit 13 calculates the rotation speed command value for each of the thrusters 2a to 2h required for movement from WP1 to WP2, the rotation speed command value for each of the thrusters 2a to 2h required for movement from WP2 to WP3, ..., the rotation speed command value for each of the thrusters 2a to 2h required for movement from WP16 to WP17, and the rotation speed command value for each of the thrusters 2a to 2h required for movement from WP17 to WP18. The calculation unit 13 includes a total control amount calculation unit 131, a total control amount correction unit 132, a load distribution calculation unit 133, and a load distribution correction unit 134.

[0017] The total control amount calculation unit 131 calculates the route and total control amount for moving to the next WP without any constraints. The route is the path the AUV1 will travel, for example, the shortest path connecting the current position and the position of the next WP. The total control amount is, for example, the translational propulsion force and torque of the entire AUV1. For example, if the left-right direction in FIG. 2 is the X axis, the depth direction is the Y axis, and the up-down direction is the Z axis, the translational propulsion force is the propulsion force in each of the X, Y, and Z axes. The torque is the moment required to change the attitude of the AUV1, and is the torque in each of the yaw, pitch, and roll directions. The total control amount calculation unit 131 calculates the optimal route and total control amount for moving to the next WP. The optimal route and total control amount are, for example, the route and total control amount that minimize the energy required for movement. The total control amount calculation unit 131 may calculate the route and total control amount using model predictive control.

[0018] The total control amount correction unit 132 corrects the route and total control amount of the AUV 1 based on the route and total control amount calculated by the total control amount calculation unit 131, taking into account constraints on the route. Constraints on the route are, for example, obstacles that exist on the route calculated by the total control amount calculation unit 131.

[0019] The load distribution calculation unit 133 calculates the load distribution to the thrusters 2a to 2h for the total control amount calculated by the total control amount calculation unit 131 or the total control amount correction unit 132. The load distribution calculation unit 133 calculates a rotation speed command value for each of the thrusters 2a to 2h according to the thrust and torque borne by each thruster.

[0020] The load distribution correction unit 134 corrects the rotation speed command value to a value that takes into consideration the operational constraints (for example, rotation speed characteristics) of each thruster, based on the rotation speed command value for the thrusters 2a to 2h calculated by the load distribution calculation unit 133. The operational constraints of the thrusters are, for example, the time (delay) from when the rotation speed command is output until the rotation speed is actually reached.

[0021] The storage unit 14 stores information required for calculating the route, total control amount, and load distribution of the AUV 1, as well as various information required for controlling the thrusters 2a to 2h.

[0022] The thruster control unit 15 controls the rotation speed of the thrusters 2a to 2h based on the rotation speed command value calculated by the calculation unit 13. For example, the thruster control unit 15 controls the forward and backward movement of the AUV1 by adjusting the rotation speed of the thrusters 2a and 2b. The thruster control unit 15 controls the up and down movement of the AUV1 and the rotation in the pitch and roll directions of the AUV1 by adjusting the rotation speed of the thrusters 2c to 2f. The thruster control unit 15 controls the left and right movement of the AUV1 and the rotation in the yaw direction of the AUV1 by adjusting the output of the thrusters 2g and 2h. This allows the AUV1 to move sequentially through WP1 to WP18.

[0023] (Overall configuration of calculation processing) For example, when calculating the rotational speed command values ​​for each thruster 2a-2h required to move from WP1 to WP2, generally, information on the position of WP2, information on obstacles between WP1 and WP2, and the rotational speed characteristics of the thrusters 2a-2h are given, and a route from WP1 to WP2 that uses the least amount of energy while avoiding the obstacles, as well as the rotational speeds of each thruster 2a-2h when moving along that route, are calculated collectively. For example, calculating the route collectively means solving a constrained optimization problem in which the objective function is to minimize the cost required to navigate to WP2 and the constraints are obstacles on the target route and the rotational speed characteristics of the thrusters. A solution to such an optimization problem is calculated by, for example, calculating a route from WP1 to WP2, calculating whether that route is possible taking into account the rotational speed characteristics of the thrusters 2a-2h, and if the route is not possible, recalculating the route from WP1 to WP2. This calculation process is repeated until a solution is obtained that satisfies the constraints, such as obstacles between WP1 and WP2 and the rotational speed characteristics of the thrusters 2a-2h. In such optimization calculations, the amount of calculation increases as a power of the variables. A computer that can be mounted on the AUV1 cannot necessarily solve this optimization problem within the control period. In addition, it is generally possible that a solution cannot be obtained by calculating the optimization problem. A method like this that calculates the optimal values ​​for the route and thruster rotation speed command values ​​all at once can result in enormous processing costs. In contrast, in this embodiment, the problem of determining the route to the target position and the rotation speed command values ​​for each thruster required for that is roughly divided into two parts (maximum four) and a solution is obtained. The processing configuration after division in this embodiment is shown in Figure 3.

[0024] FIG. 3 is a diagram illustrating division of control amount calculation according to the embodiment. In this embodiment, the above problem is divided into two steps: (1) a step of calculating the route to the next destination and the total control amount of the thrusters 2a-2h, and (2) a step of calculating the load distribution to be assigned to the thrusters 2a-2h based on the total control amount calculated in (1). Step (1) is further divided into (1-1) a step of performing an optimization calculation without considering constraints on the route, and (1-2) a step of correcting the results of the optimization calculation while considering constraints on the route. Step (2) is further divided into (2-1) a step of performing an optimization calculation for the load distribution without considering constraints on the operation of the thrusters 2a-2h, and (2-2) a step of correcting the load distribution while considering constraints on the operation of the thrusters 2a-2h.

[0025] The function F1 in Figure 3 is a function possessed by the total control amount calculation unit 131. When the next target position and the mass and moment of inertia of the AUV1 are input, the function F1 outputs the route from the current position to the next target position and the total control amount of the thrusters 2a to 2h. The total control amount is the translational force of the entire AUV1 and the torque for changing the attitude of the AUV1. The function F1 calculates the route to the next target position WP and the total control amount through optimization calculation. For example, the function F1 calculates the route and total control amount so that the total control amount is minimized. The function F1 itself is constructed using a known algorithm. The function F1 performs optimization calculations to optimize the route and total control amount without considering route constraints. Because there are fewer variables and constraints are not considered, a solution can be derived more quickly than the above-mentioned method of performing calculations all at once.

[0026] Function F2 is a function possessed by the total control amount correction unit 132. Function F2 receives the route and total control amount output by function F1, the mass and moment of inertia of the AUV1, and information on the constraints on the route calculated by function F1, and outputs the route to the next target position that satisfies the route constraints and the total control amount of the thrusters 2a-2h. The information on the route constraints is the position information of obstacles on the route. The AUV1 detects the position information of the obstacles using sonar or the like. Here, function F2 calculates the route and total control amount to reach the next target position while satisfying the route constraints, i.e., while avoiding obstacles on the route, and calculates the route and total control amount that minimizes the difference from the route and total control amount output by function F1. For example, if the solution of the optimization calculation by function F1 is α, function F2 calculates the solution β that minimizes |α-β|. For example, function F2 selects and outputs the route and total control amount that are the smallest among the routes and total control amounts calculated (searched) by itself within a predetermined time, when the sum of the difference between the route calculated by itself and the route calculated by function F1 and the difference between the total control amount calculated by itself and the total control amount calculated by function F1 (or the difference between the routes or the difference between the total control amounts) is smallest. Because of this calculation method, there is no chance of no solution in the calculation of function F2. The algorithm for calculating the route and total control amount to reach the next target position WP while avoiding obstacles on the route, among the processing steps of function F2, is well known.

[0027] Function F3 is a function possessed by the load distribution calculation unit 133. When function F3 receives input of the total control amount that satisfies the constraints on the route, the mounting positions and mounting angles of the thrusters 2a-2h, etc., it calculates the load distribution of the thrusters 2a-2h and outputs rotation speed command values ​​for each of the thrusters 2a-2h. When the thrusters 2a-2h are driven, a torque acts on the AUV1 according to the distance of the driven thruster from the center of gravity of the AUV1. The mounting positions of the thrusters 2a-2h, which are one of the input parameters, are used to calculate the torque required to change the attitude of the AUV1. The mounting angles of the thrusters 2a-2h, which are one of the input parameters, are used to calculate the thrust in the direction of movement based on the angle between the direction in which the thrust acts when the thrusters 2a-2h are operated and the direction of movement of the AUV1. The function F3 calculates load distribution by optimization calculation so as to minimize fuel consumption while satisfying the total control amount calculated by the function F2, and calculates rotation speed command values ​​for each thruster 2a to 2h according to the load distribution. The calculation process of the function F3 is performed using a known algorithm.

[0028] The function F4 is a function possessed by the load distribution correction unit 134. Function F4 is a function that, when it receives the thruster rotation speed command values ​​output by function F3, the thruster mounting positions and mounting angles, and the thruster rotation speed characteristics, outputs thruster rotation speed command values ​​for the thrusters 2a-2h that satisfy the operational constraints of each thruster. The operational constraints of each thruster refer to, for example, the response delay of each thruster. For example, if the thruster control unit 15 outputs a certain rotation speed command to thruster 2a and the thruster rotation speed reaches the commanded rotation speed X seconds later, this X seconds constitutes the operational constraint (rotation speed characteristics) of thruster 2a. Function F4 calculates a rotation speed command value that minimizes the difference from the thruster rotation speed command value output by function F3 while satisfying the thruster operational constraints. In other words, if the solution of the optimization calculation by function F3 is γ, function F4 calculates a solution Δ that minimizes |γ-Δ|. For example, if the function F3 calculates a rotation speed command value γ1 for the thruster 2a, and if the rotation speed of the thruster 2a cannot be increased to γ1 by the next control step, the function F4 calculates the rotation speed closest to γ1 within the range where the rotation speed can be increased as the rotation speed command value for the thruster 2a. The calculation process of the function F4 is implemented using a known algorithm.

[0029] The processing configuration shown in Figure 3 does not simultaneously optimize the route, total control volume, and load distribution to each thruster. Instead, the process is divided into a process of performing an optimization calculation for the route and total control volume, and a process of optimizing the load distribution to each thruster. Each process is then divided into a process of performing an optimization calculation and a process of correcting the results of the optimization calculation. The optimization calculation process quickly solves the problem without considering the constraints, and then the correction process corrects the calculation results to satisfy the constraints. This reduces the amount of calculation and shortens the calculation time. Furthermore, when optimal solutions for the route, total control volume, and load distribution are simultaneously solved, it may be impossible to find a solution that satisfies the route constraints and the thruster operation constraints within the time limit. However, with the processing configuration of Figure 3, when a solution with constraints is sought using functions F2 and F4, instead of solving the optimization problem, a solution that minimizes the difference from the solutions calculated by functions F1 and F3, respectively, is calculated. This prevents a lack of a solution and prevents the calculation from stopping. This ensures that the computer equipped on AUV1 can calculate the control amount required to move to the next target position within the specified time.

[0030] If the thruster rotational speed characteristics are taken into account in function F4, it may be impossible to follow the route calculated by function F2, but in that case, the steps after the calculation using function F2 can be repeated. Even in this case, a solution can be found faster and with less calculation effort than if the route, total control amount, and load distribution were simultaneously optimized.

[0031] In the explanation of Figure 3, the route and total control amount are calculated using function F1, the route and total control amount taking constraints into account using function F2, the load distribution is calculated using function F3, and the load distribution is calculated taking constraints into account using function F4. However, if there is no need to consider constraints, the calculations using functions F2 and F4 can be omitted. For example, when navigating waters without obstacles, the calculation using function F2 can be omitted. For example, if the AUV 1 is equipped with high-performance thrusters 2a to 2h for which response delays do not need to be considered, the calculation using function F4 can be omitted.

[0032] (operation) Next, the flow of thrust distribution calculation of the thrusters by the control device 10 will be described. FIG. 4 is a flowchart illustrating an example of the calculation process according to the embodiment. The control device 10 repeatedly executes the following process at a predetermined control period. First, the WP acquisition unit 11 acquires the WP of the next target position (step S1). The WP is given, for example, as three-dimensional coordinate information. The WP may be given one or more at a time as the AUV 1 moves, or may be given all at once in advance. Next, the sensor information acquisition unit 12 acquires obstacle information (step S2). The obstacle information is position information of structures and seabed topography that exist underwater around the route. The obstacle information is detected every moment by sensors such as sonar and output to the control device 10. The obstacle information is given as three-dimensional coordinate information.

[0033] Next, the calculation unit 13 calculates the movement route to the next WP given in step S1 and the total control amount required to move to the next WP. Specifically, the total control amount calculation unit 131 performs optimization calculation using function F1 to calculate the route to the next WP and the total control amount (step S3). Next, the calculation unit 13 determines whether there is a constraint on the route (step S4). For example, if the position of an obstacle indicated by the obstacle information acquired in step S2 overlaps with the route calculated in step S3, the calculation unit 13 determines that there is a constraint on the route. If the position of the obstacle is away from the route calculated in step S3, the calculation unit 13 determines that there is no constraint on the route.

[0034] If it is determined that there are no constraints on the route (step S4; No), the calculation unit 13 proceeds to the processing of step S6, which will be described later. If it is determined that there are constraints on the route (step S4; Yes), the calculation unit 13 corrects the route and the total control amount (step S5). Specifically, the total control amount correction unit 132 uses the function F2 to calculate the route and the total control amount that minimize the difference from the route and the total control amount calculated in step S3.

[0035] Next, the calculation unit 13 calculates the load distribution to each thruster. Specifically, the load distribution calculation unit 133 performs optimization calculation using the function F3 to calculate the rotation speed command value of each thruster (step S6).

[0036] Next, the sensor information acquisition unit 12 acquires the actual measured value of the rotation speed of each of the thrusters 2a to 2h (step S7). The calculation unit 13 calculates the difference between the rotation speed command value issued to the thruster 2a a predetermined time ago and the actual measured value of the rotation speed of the thruster 2a. The calculation unit 13 similarly calculates the difference between the rotation speed command value and the actual measured value for the thrusters 2b to 2h.

[0037] Next, the calculation unit 13 compares the difference between the rotation speed command value and the actual measurement value for each thruster 2a to 2h with a predetermined threshold value to determine whether or not there is a constraint on the operation of the thruster (step S8). For example, if the difference between the rotation speed command value and the actual measurement value is equal to or greater than the threshold value, the calculation unit 13 determines that there is a constraint on the operation of the thruster. If the difference between the rotation speed command value and the actual measurement value is less than the threshold value, the calculation unit 13 determines that there is no constraint on the operation of the thruster.

[0038] If it is determined that there is no constraint on thrust operation (step S8; No), the calculation unit 13 proceeds to the processing of step S10, which will be described later. If it is determined that there is a constraint on thrust operation (step S8; No), the calculation unit 13 corrects the rotation speed command value (step S9). Specifically, the load distribution correction unit 134 uses function F4 to calculate a rotation speed command value for each thruster that satisfies the constraint on thrust operation and minimizes the difference from the rotation speed command value for each thruster calculated in step S6.

[0039] As another example of determining whether there are restrictions on thruster operation, it may be determined based on the performance (design value) of the thrusters provided in the AUV1. For example, if the design value of the response delay of the thruster is less than the threshold value, it may be determined that there are no restrictions on the thruster operation (step S8; No), and if it is greater than or equal to the threshold value, it may be determined that there are restrictions on the thruster operation (step S8; Yes). Also, the determination may be made according to the speed of the AUV1. For example, if the speed of the AUV1 is less than the threshold value, it may be determined that there are no restrictions on the thruster operation (step S8; No), and if it is greater than or equal to the threshold value, it may be determined that there are restrictions on the thruster operation (step S8; Yes). Also, the difference between the measured rotation speed value and the rotation speed command value of the thruster may be reflected in the correction amount in step S9. For example, in the design value, even if the rotation speed that can be increased within one control cycle is Y1, and the rotation speed that can be increased within one control cycle estimated from the difference between the measured rotation speed value and the rotation speed command value is Y2 (Y2 < Y1), and when the rotation speed of the thruster 2a after one control cycle calculated by the load distribution calculation unit 133 is Y2 or more higher than the current rotation speed, the load distribution correction unit 134 sets the corrected rotation speed to Y2 (instead of Y1 of the design value). Thereby, control in accordance with reality can be performed.

[0040] Finally, the calculation unit 13 outputs the rotation speed command values calculated (or corrected) for each of the thrusters 2a to 2h to the thruster control unit 15. The thruster control unit 15 outputs the rotation speed command values to each thruster (step S10).

[0041] As described above, according to this embodiment, calculations to optimize the route, total control amount, and load distribution are divided and performed in stages. Furthermore, at each stage of calculation, the optimization calculation is performed without constraints, and the calculation results are modified taking the constraints into account. This reduces the calculation load and enables the route and control amount (total control amount and load distribution) required for the navigation of the AUV1 to be calculated quickly. Furthermore, as described in the flowchart of FIG. 4, if constraints can be ignored, the process of modifying the calculation results can be omitted. In other words, according to this embodiment, the rotation speed command value for each thruster can be calculated with the minimum amount of calculation required depending on the situation. As a result, the AUV1 can be controlled without delay using a computer installed on the AUV1, which has limited computing power.

[0042] FIG. 5 is a diagram illustrating an example of a hardware configuration of the control device according to the embodiment. The computer 900 includes a CPU 901 , a main memory device 902 , an auxiliary memory device 903 , an input / output interface 904 , and a communication interface 905 . The above-described control device 10 is implemented in a computer 900. Each of the above-described functions is stored in the form of a program in an auxiliary storage device 903. A CPU 901 reads the program from the auxiliary storage device 903, loads it into a main storage device 902, and executes the above-described processing in accordance with the program. The CPU 901 also allocates a storage area in the main storage device 902 in accordance with the program. The CPU 901 also allocates a storage area in the auxiliary storage device 903 for storing data being processed in accordance with the program.

[0043] Alternatively, a program for implementing all or part of the functions of the control device 10 may be recorded on a computer-readable recording medium, and the program may be loaded into a computer system and executed to perform processing by each functional unit. The term "computer system" as used herein includes hardware such as an OS and peripheral devices. Furthermore, if a WWW system is used, the term "computer system" also includes a homepage provision environment (or display environment). Furthermore, the term "computer-readable recording medium" refers to portable media such as CDs, DVDs, and USBs, as well as storage devices such as hard disks built into the computer system. Furthermore, if the program is distributed to the computer 900 via a communication line, the computer 900 that receives the program may load the program into the main storage device 902 and execute the above-described processing. Furthermore, the program may be for implementing part of the above-described functions, or may be capable of implementing the above-described functions in combination with a program already stored in the computer system.

[0044] As described above, several embodiments according to the present disclosure have been described. However, all of these embodiments are presented as examples and are not intended to limit the scope of the invention. These embodiments can be implemented in various other forms, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. These embodiments and their modifications are included within the scope and spirit of the invention, as well as the inventions described in the claims and their equivalents. For example, the calculation method of the present disclosure can also be used to control UUVs (Unmanned Undersea Vehicles).

[0045] <Additional Notes> The control device 10, the calculation method, and the program described in each embodiment can be understood, for example, as follows.

[0046] (1) The control device 10 according to the first aspect includes a control quantity calculation unit (a collective term for a total control quantity calculation unit 131 and a total control quantity correction unit 132) that calculates a total control quantity indicating the route required to move an underwater vehicle (AUV1, UUV) to a target position (next WP) and the control quantity for all of the multiple thrusters 2a to 2h equipped on the underwater vehicle, and an allocation calculation unit (a collective term for a load allocation calculation unit 133 and a load allocation correction unit 134) that calculates the allocation of the control quantity to be borne by each of the multiple thrusters based on the total control quantity. By dividing the calculation of the route, total control amount, and load distribution for moving to the next target position into a process of calculating the route and total control amount and a process of load distribution of the total control amount based on the calculation results, the calculation load can be reduced and the route, total control amount, and load distribution can be calculated quickly.

[0047] (2) The control device 10 according to the second aspect is the control device 10 of (1), in which the control amount calculation unit (a collective term for the total control amount calculation unit 131 and the total control amount correction unit 132) calculates, in a first step, the route and the total control amount without considering any constraints on the movement to the target position (total control amount calculation unit 131), and then, in a second step, calculates, in consideration of any constraints on the movement to the target position, the route and the total control amount that satisfy the constraints and have the smallest difference from the route and the total control amount calculated in the first step (total control amount correction unit 132), and these values ​​are used as the final route and the total control amount. By calculating the route and total control amount without considering the constraints and then correcting the route and total control amount by considering the constraints, the calculation load can be reduced and the route and total control amount can be calculated quickly. In addition, there is no chance of a solution being lost.

[0048] (3) The control device 10 according to the third aspect is the control device 10 of (2), further comprising a first judgment unit (judgment function of step S4 possessed by the calculation unit 13) that judges that the execution of the second step is necessary if an obstacle exists on the route to the target position, and judges that the execution of the second step is unnecessary if no obstacle exists on the route, and when the first judgment unit judges that the execution of the second step is unnecessary, the control quantity calculation unit sets the route and the total control quantity calculated in the first step as the final route and the total control quantity. If there are no obstacles on the route, the second step (step S5 in Fig. 4) can be omitted, which further reduces the calculation load.

[0049] (4) The control device 10 according to a fourth aspect is the control device 10 of (1) to (3), in which the distribution calculation unit (a collective term for the load distribution calculation unit 133 and the load distribution correction unit 134) calculates, in a third step, a rotation speed command value for each of the plurality of thrusters based on the total control amount and the mounting positions and mounting angles of the plurality of thrusters without taking into account constraints on the operation of the thrusters (load distribution calculation unit 133), and then, in a fourth step, calculates, in consideration of constraints on the operation of the thrusters, a rotation speed command value for each of the plurality of thrusters that satisfies the constraints and has a minimum difference from the rotation speed command value calculated in the third step (load distribution correction unit 134), and these values ​​are set as the final rotation speed command values. By calculating the load distribution and the rotation speed command value according to the load distribution without considering the constraints, and then correcting the rotation speed command value by considering the constraints, the calculation load can be reduced and the rotation speed command value can be calculated quickly. In addition, there is no chance of finding no solution.

[0050] (5) The control device 10 according to the fifth aspect is the control device 10 of (4), further comprising a second judgment unit (the judgment function of step S8 possessed by the calculation unit 13) that judges that the execution of the fourth step is necessary when there is a constraint on the operation of the thruster, and judges that the execution of the fourth step is unnecessary when there is no constraint on the operation of the thruster, and when the second judgment unit judges that the execution of the fourth step is unnecessary, the allocation calculation unit sets the rotation speed command value calculated in the third step as the final rotation speed command value for each of the plurality of thrusters. If there are no constraints on the operation of the thrusters, the fourth step (step S9 in FIG. 4) can be omitted, which further reduces the calculation load.

[0051] (6) The control device 10 according to the sixth aspect is the control device 10 of (5), wherein the second judgment unit judges that the fourth step needs to be executed when the difference between the actual measured value of the thruster rotation speed relative to the rotation speed command value and the rotation speed command value is equal to or greater than a predetermined threshold value. The difference between the rotation speed command value and the actual measured rotation speed value is considered to be the thruster's response delay (operation constraint), and the thruster rotation speed command value is corrected based on this, so that corrections can be made in line with the actual situation.

[0052] (7) The control device 10 according to the seventh aspect includes a calculation unit (a collective term for a total control amount calculation unit 131 and a load distribution calculation unit 133) that calculates the route required to move the underwater vehicle to a target position and the control amounts of the multiple thrusters equipped on the underwater vehicle without taking into account the constraints of the route and the constraints on the operation of the thrusters, and a correction unit (a collective term for a total control amount correction unit 132 and a load distribution correction unit 134) that corrects the route and the control amounts taking into account the constraints of the route and the constraints on the operation of the thrusters. By calculating the route and control amount without considering constraints and then correcting the route and control amount by considering constraints, the calculation process can be simplified and the calculation can be performed quickly.In addition, by correcting the results of the optimization calculation rather than performing an optimization calculation that takes constraints into consideration, it is possible to prevent the situation where no solution is found.

[0053] (8) An underwater vehicle according to an eighth aspect includes a plurality of thrusters and the above-described control device. This allows AUVs to be controlled with a low computational load.

[0054] (9) A calculation method according to a ninth aspect includes the steps of calculating a route required to move an underwater vehicle to a target position and a total control amount indicating the control amount for all of the multiple thrusters equipped on the underwater vehicle, and calculating, based on the total control amount, the distribution of the control amount to be borne by each of the multiple thrusters.

[0055] (10) A program according to the tenth aspect causes a computer to execute the steps of calculating a route required to move an underwater vehicle to a target position and a total control amount indicating the control amount for all of the multiple thrusters equipped on the underwater vehicle, and calculating the distribution of the control amount to be borne by each of the multiple thrusters based on the total control amount. [Explanation of symbols]

[0056] 1. AUV 2a, 2b, 2c, 2d, 2e, 2f, 2g, 2h... Thruster 11...WP acquisition department 12. Sensor information acquisition unit 13...Calculation section 131 Total control amount calculation unit 132 Total control amount correction section 133 Load distribution calculation section 134 Load distribution correction section 14...Storage section 15 Thruster control section 900···Computer 901 CPU 902...Main memory 903...Auxiliary storage device 904 Input / Output Interface 905···Communication Interface

Claims

1. a control amount calculation unit that calculates a route required for moving the underwater vehicle to a target position and a total control amount that indicates a control amount for all of the multiple thrusters provided in the underwater vehicle; an allocation calculation unit that calculates an allocation of a control amount to be borne by each of the plurality of thrusters based on the total control amount; Equipped with the control amount calculation unit calculates, as a first step, the route and the total control amount without considering any constraints on the route to the target position, and then, as a second step, calculates, taking into consideration the constraints on the route to the target position, the route and the total control amount that satisfy the constraints and have the smallest difference from the route and the total control amount calculated in the first step, and sets these values ​​as the final route and the total control amount; In a third step, the allocation calculation unit calculates a rotation speed command value for each of the plurality of thrusters based on the total control amount and the attachment positions and attachment angles of the plurality of thrusters without considering constraints on the operation of the thrusters, and then in a fourth step, calculates a rotation speed command value for each of the plurality of thrusters that satisfies the constraints and has a minimum difference from the rotation speed command value calculated in the third step, taking into consideration constraints on the operation of the thrusters, and sets these values ​​as the final rotation speed command values. Control device.

2. a first determination unit that determines that execution of the second step is necessary when an obstacle exists on the route to the target position, and that execution of the second step is unnecessary when no obstacle exists on the route, when the first determination unit determines that the second step is not required, the control amount calculation unit sets the route and the total control amount calculated in the first step as the final route and the final total control amount. The control device according to claim 1 .

3. a second determination unit that determines that execution of the fourth step is necessary when there is a constraint on the operation of the thruster, and that execution of the fourth step is unnecessary when there is no constraint on the operation of the thruster, When the second determination unit determines that the execution of the fourth step is unnecessary, the allocation calculation unit sets the rotation speed command value calculated in the third step as the final rotation speed command value for each of the plurality of thrusters. The control device according to any one of claims 1 and 2.

4. the second determination unit determines that the fourth step needs to be executed when a difference between an actual measurement value of the thruster rotation speed relative to the rotation speed command value and the rotation speed command value is equal to or greater than a predetermined threshold value; The control device according to claim 3 .

5. the constraint on the operation of the thruster is a response delay of the thruster, and the second determination unit determines that execution of the fourth step is not necessary if a design value of the response delay of the thruster is less than a threshold, and determines that execution of the fourth step is necessary if the design value of the response delay of the thruster is equal to or greater than a threshold. The control device according to any one of claims 3 and 4.

6. the control variable calculation unit executes the first step using a first function that, when the target position and the mass and moment of inertia of the underwater vehicle are input, outputs the route and the total control variable that minimizes the total control variable from the current position of the underwater vehicle to the target position; executing the second step using a second function that, when the route and the total control amount output by the first function, the mass and moment of inertia of the underwater vehicle, and position information of an obstacle present on the route are input, outputs a route to the target position and the total control amount that minimizes the difference between the route and the total control amount output by the first function while avoiding the obstacle; the allocation calculation unit executes the third step using a third function that receives the total control amount and the attachment positions and attachment angles of each of the plurality of thrusters and outputs rotation speed command values ​​for each of the plurality of thrusters; executing the fourth step using a fourth function that, when inputting rotation speed command values ​​for each of the plurality of thrusters output by the third function, and the attachment positions and attachment angles of each of the plurality of thrusters and a response delay that is an operational constraint of the thrusters, outputs rotation speed command values ​​for each of the plurality of thrusters that minimize the difference from the rotation speed command values ​​for each of the plurality of thrusters output by the third function while satisfying the operational constraints; The control device according to claim 1 .

7. A plurality of thrusters; The control device according to any one of claims 1 to 6; An underwater vehicle comprising:

8. a step of calculating a route required for moving the underwater vehicle to a target position and a total control amount indicating a control amount for all of a plurality of thrusters provided in the underwater vehicle; calculating a distribution of a control amount to be borne by each of the plurality of thrusters based on the total control amount; and In the step of calculating the route and the total control amount, in a first step, the route and the total control amount are calculated without taking into consideration any constraints on the route to the target position, and then in a second step, the route and the total control amount are calculated taking into consideration any constraints on the route to the target position, so as to satisfy the constraints and minimize the difference between the route and the total control amount calculated in the first step, and these values ​​are set as the final route and the total control amount; In the step of calculating the distribution, a third step calculates a rotation speed command value for each of the plurality of thrusters based on the total control amount and the attachment positions and attachment angles of the plurality of thrusters without considering constraints on the operation of the thrusters, and then a fourth step calculates a rotation speed command value for each of the plurality of thrusters that satisfies the constraints and has a minimum difference from the rotation speed command value calculated in the third step, taking into consideration constraints on the operation of the thrusters, and sets these values ​​as the final rotation speed command values. Calculation method.

9. On the computer, a step of calculating a route required for moving the underwater vehicle to a target position and a total control amount indicating a control amount for all of a plurality of thrusters provided in the underwater vehicle; calculating a distribution of a control amount to be borne by each of the plurality of thrusters based on the total control amount; and In the step of calculating the route and the total control amount, in a first step, the route and the total control amount are calculated without taking into consideration any constraints on the route to the target position, and then in a second step, the route and the total control amount are calculated taking into consideration any constraints on the route to the target position, so as to satisfy the constraints and minimize the difference between the route and the total control amount calculated in the first step, and these values ​​are set as the final route and the total control amount; In the step of calculating the distribution, a third step is to calculate a rotation speed command value for each of the plurality of thrusters based on the total control amount and the attachment positions and attachment angles of the plurality of thrusters without taking into account constraints on the operation of the thrusters, and then a fourth step is to calculate a rotation speed command value for each of the plurality of thrusters that satisfies the constraints and has a minimum difference from the rotation speed command value calculated in the third step, taking into account constraints on the operation of the thrusters, and set these values ​​as the final rotation speed command values; A program that executes the following.

Citation Information

Patent Citations

  • System and method for changing course plan of mobile object

    JP2003187399A

  • Thrust control method and device for twin screw vessel with bow thruster and turning type thruster

    JP2008184127A

  • Motion control device and motion control method for vessel

    JP2018176922A

  • Mobile body control method and mobile body control system

    JP2018181166A

  • Control thrust distribution device

    JP2749833B2