Control device for marine robot, marine robot, control method for marine robot, and control program for marine robot

By combining sliding mode control and neural network control control, the problem of difficult to maintain the position and angle of automatic water aircraft in environments with large wind and waves is solved, and the accuracy of accurate position maintenance and sediment collection in large disturbance environments is achieved.

JP2025068999APending Publication Date: 2025-04-30NATIONAL UNIVERSITY CORPORATION TOKYO UNIVERSITY OF MARINE SCIENCE AND TECHNOLOGY +2
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2023179160
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-10-17
Publication Date
2025-04-30

AI Technical Summary

Technical Problem

The prior art is difficult to maintain the position and angle of the automatic water aircraft in a large wind and wave environment, resulting in unstable sediment collection, and it is difficult to maintain a fixed point in the sliding mode control in a large disturbance environment.

Method used

The control device combining sliding mode control and neural network control is adopted to generate switching functions through sliding mode control and generate sliding mode control values. The neural network control values ​​are generated by combining neural network control, and the control input is synthesized to stabilize the position and angle of the automatic water aircraft.

Benefits of technology

In a large disturbance environment, the position of the automatic water aircraft can be accurately maintained, which improves the stability and accuracy of sediment collection.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025068999000001_ABST
    Figure 2025068999000001_ABST
Patent Text Reader

Abstract

To retain position of a marine robot with high accuracy even under great disturbance.SOLUTION: A controller for controlling a marine robot including a propulsion mechanism having a first propeller and a second propeller includes: an information acquirement unit for acquiring position information including a target position and a present position of the marine robot; a sliding mode controller for generating a sliding mode control value by generating a switching function based on the position information for carrying out switching mode control so that present position of the marine robot matches with the target position; a neural network control unit for generating a neural network control value for carrying out neural network control so that present position of the marine robot is matched with the target position based on the position information and the switching function; and a control input generation unit for generating control input to be inputted to the propulsion mechanism based on the sliding mode control value and the neural network control value.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a control device for a marine robot, a marine robot, a control method for a marine robot, and a control program for a marine robot. [Background technology]

[0002] Various marine robots are used to survey the seabed in a labor-saving and efficient manner. Known marine robots include autonomous surface vehicles (ASVs), remotely operated vehicles (ROVs), and autonomous underwater vehicles (AUVs). ASVs are used to collect mud from the seabed and measure the amount of radiation contained in the mud. In this case, for example, the ASV is moved to a target position on the sea and a mud sampler connected to a cable (a communication cable such as an optical fiber cable) is dropped to the seabed to collect the mud.

[0003] Patent Document 1 describes a control device that aims to control and maintain the position of a floating rig at an optimal position for a drilling riser. In this control device, a neural network is trained in advance on the position information of the floating rig associated with the behavior characteristics of the drilling riser, the inclination angles at the top and bottom ends of the drilling riser are detected and input to the neural network to output information correcting the current position of the floating rig, and the floating rig is driven and controlled to a position where the inclination angles at the top and bottom ends of the riser are reduced based on the position information. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] JP 2000-289688 A Summary of the Invention [Problem to be solved by the invention]

[0005] In order to stably collect mud from the seabed, the position and angle of the autonomous vehicle must be precisely maintained. If the autonomous vehicle is positioned too far above the mud sampler or other object dropped on the seabed, the object may tip over in the sea. Also, if the autonomous vehicle rotates too much, the cable may twist and break.

[0006] Conventionally, sliding mode control has been used to maintain the position and angle of an autonomous surface vehicle. Sliding mode control has the advantage of being less susceptible to model errors and disturbances. However, in environments with strong winds and fast waves, the autonomous surface vehicle is subject to large disturbances, causing its motion characteristics to change significantly. Therefore, it has been difficult for sliding mode control, which uses fixed control parameters, to maintain the autonomous surface vehicle at a fixed position.

[0007] The present invention has been made based on the above recognition, and aims to provide a control device for a marine robot, a marine robot, a control method for a marine robot, and a control program for a marine robot that can accurately maintain the position of the marine robot even when external disturbances are large. [Means for solving the problem]

[0008] The control device for a marine robot according to the present invention comprises: 1. A control device for controlling a marine robot having a propulsion mechanism including a first propulsion unit that generates a thrust in a first propulsion direction and a second propulsion unit that generates a thrust in a second propulsion direction different from the first propulsion direction, comprising: an information acquisition unit that acquires position information including a target position and a current position of the marine robot; a sliding mode control unit that generates a switching function based on the position information and generates a sliding mode control value for performing sliding mode control so that the current position of the marine robot coincides with the target position; a neural network control unit that generates a neural network control value for performing neural network control so that a current position of the marine robot coincides with the target position, based on the position information and the switching function; a control input generating unit that generates a control input to be input to the propulsion mechanism based on the sliding mode control value and the neural network control value; The present invention is characterized by comprising:

[0009] Further, in the control device, the sliding mode control value is a switching input in sliding mode control, the neural network control value is a correction input for the switching input, The control input may be the sum of the sliding mode control value and the neural network control value.

[0010] Further, in the control device, The upper limit of the absolute value of the neural network control value may be equal to or smaller than the upper limit of the absolute value of the sliding mode control value.

[0011] Further, in the control device, The upper limit of the absolute value of the neural network control value may be time-varying.

[0012] Further, in the control device, The upper limit of the absolute value of the neural network control value may be set to approach an upper limit of the absolute value of the sliding mode control value when the marine robot is within a predetermined range centered on the target position.

[0013] Further, in the control device, The neural network controller may comprise a neural network whose weights are updated based on the switching function.

[0014] Further, in the control device, The neural network may be made up of three layers: an input layer, one hidden layer, and an output layer.

[0015] Further, in the control device, a second neural network control unit that generates a second neural network control value for performing neural network control so that a current position of the marine robot coincides with the target position, based on the position information and a time derivative of the switching function; The control input generating unit may generate the control input based on the sliding mode control value, the neural network control value, and the second neural network control value.

[0016] Further, in the control device, the sliding mode control value is a switching input in sliding mode control, the neural network control value is a correction input for the switching input, the second neural network control value is a second correction input for the switching input; The control input may be a sum of the sliding mode control value, the neural network control value, and the second neural network control value.

[0017] Further, in the control device, An upper limit value of the absolute value of the neural network control value and an upper limit value of the absolute value of the second neural network control value may both be equal to or less than an upper limit value of the absolute value of the sliding mode control value.

[0018] Further, in the control device, The second neural network control may comprise a second neural network whose weighting is updated based on the time derivative of the switching function.

[0019] Further, in the control device, The second neural network may be a neural network consisting of three layers: an input layer, one hidden layer, and an output layer.

[0020] Further, in the control device, the information acquisition unit further acquires angle information including a target angle and a current angle of the marine robot; the sliding mode control unit generates a switching function based on the angle information and generates a sliding mode control value for performing sliding mode control so that a current angle of the marine robot coincides with the target angle; The control input generating unit may generate a control input to be input to the propulsion mechanism based on the sliding mode control value.

[0021] Further, in the control device, The control device includes: An operation selection unit that selects an operation of the control input generation unit, if a difference between the target angle and the current angle of the marine robot is greater than a predetermined value, the control input generator selects to generate a control input relating to an angle of the marine robot as the control input; an operation selection unit that selects to generate a control input related to a position of the marine robot as the control input when the difference is equal to or smaller than the predetermined value. The control unit 100 may further include:

[0022] Further, in the control device, The first propulsion direction and the second propulsion direction may be perpendicular to each other.

[0023] Further, in the control device, the marine robot is an autonomous surface vehicle; The first propulsion device of the propulsion mechanism may generate thrust in the forward / rearward direction of the autonomous water vehicle, and the second propulsion device may generate thrust in the left / right direction of the autonomous water vehicle.

[0024] The marine robot according to the present invention comprises: The control device; A detection unit for detecting the current position; a drive unit that drives the propulsion mechanism based on the control input generated by the control device; The present invention is characterized by comprising:

[0025] The method for controlling a marine robot according to the present invention comprises the steps of: 1. A method for controlling a marine robot having a propulsion mechanism including a first propulsion unit that generates a thrust in a first propulsion direction and a second propulsion unit that generates a thrust in a second propulsion direction different from the first propulsion direction, comprising: obtaining position information including a target position and a current position of the marine robot; generating a switching function based on the position information and generating a sliding mode control value for performing sliding mode control so that the current position of the marine robot coincides with the target position; generating a neural network control value for performing neural network control so that a current position of the marine robot coincides with the target position based on the position information and the switching function; generating a control input to the propulsion mechanism based on the sliding mode control value and the neural network control value; The present invention is characterized by comprising:

[0026] A control program for a marine robot according to the present invention is characterized in that it causes a computer to execute the above-mentioned control method. Effect of the Invention

[0027] The control device according to the present invention can accurately maintain the position of the marine robot even when there is a large disturbance. [Brief description of the drawings]

[0028] [Figure 1] 1 is a schematic configuration diagram of a marine system according to an embodiment, as viewed from above and from a side; [Figure 2A] FIG. 4 is a diagram showing the forward and rearward propulsion of a hull according to an embodiment of the present invention. [Figure 2B] FIG. 4 is a diagram showing the lateral propulsion of a hull according to an embodiment. [Figure 2C] FIG. 13 is a diagram illustrating angular propulsion of a hull according to an embodiment. [Diagram 3] FIG. 2 is a functional block diagram of a control device according to the embodiment. [Figure 4] FIG. 2 is a functional block diagram of a processing unit according to the first embodiment. [Diagram 5] 5 is a flowchart illustrating an operation of a processing unit according to the first embodiment. [Figure 6] FIG. 13 is a diagram illustrating an example of σx-NN. [Figure 7A] FIG. 4 is a diagram illustrating a simulation result of the position control according to the first embodiment. [Figure 7B] FIG. 11 is a diagram illustrating a simulation result of a position control according to a comparative example. [Figure 8] FIG. 11 is a functional block diagram of a processing unit according to a second embodiment. [Figure 9] 10 is a flowchart illustrating an operation of a processing unit according to the second embodiment. [Figure 10] FIG. 13 is a diagram showing an example of σ′x-NN. [Figure 11] FIG. 11 is a diagram illustrating a simulation result of the position control according to the second embodiment. [Figure 12] 5A to 5C are diagrams illustrating analysis results of hull position control according to the first embodiment, the second embodiment, and a comparative example. [Figure 13] FIG. 11 is a diagram showing the results of a sea trial of the position control according to the second embodiment. [Figure 14] FIG. 11 is a diagram showing an analysis result of a sea trial of the position control according to the second embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0029] Hereinafter, embodiments of the present invention will be described with reference to the drawings. A control device according to a first embodiment includes a neural network based on a switching function σ, and a control device according to a second embodiment includes, in addition to the neural network, a neural network based on a time derivative σ' of the switching function.

[0030] In each drawing, components having equivalent functions are denoted by the same reference numerals. Furthermore, terms such as "orthogonal" that specify geometric conditions and their degrees as used in this specification are not limited to their strict meanings, but are interpreted to include the extent to which similar functions can be expected.

[0031] (First embodiment) 1 is a schematic configuration diagram of a marine system 100 according to a first embodiment, seen from above and a side. The marine system 100 is configured as a mud sampling system for sampling mud and the like from the seabed.

[0032] 1, a marine system 100 according to this embodiment includes a vessel (ASV) 2 and a mud sampling mechanism 3 connected to the vessel 2. Note that the following explanation mainly relates to fixed-point maintenance of an ASV, but this embodiment can also be applied to fixed-point maintenance of other marine robots, such as an ROV or an AUV.

[0033] The control device 1 is a device that controls the position and angle of the hull 2. As will be described in detail later, the control device 1 according to this embodiment controls the propulsion mechanism 4 based on sliding mode control and neural network control, thereby maintaining the position and angle of the hull 2 ​​at fixed points.

[0034] The hull 2 ​​is an autonomous surface vehicle including a control device 1 and a propulsion mechanism 4. In the center of the hull 2, a moonpool 2a, which is a through hole for dropping and pulling up a mud sampler 3a, is provided.

[0035] The mud sampling mechanism 3 is a set of mud sampling devices provided on the hull 2. As shown in Fig. 1, the mud sampling mechanism 3 includes a mud sampler 3a, an optical fiber cable 3b, and a winch 3c.

[0036] The mud sampler 3a is dropped into the water to sample mud and other materials from the seabed. The mud sampler 3a is also equipped with a radiation measuring device and a camera, and measures the amount of radiation contained in the sampled mud.

[0037] The optical fiber cable 3b is a cable for physically connecting the mud sampler 3a to the hull 2 ​​and communicating with the mud sampler 3a in real time. The optical fiber cable 3b has sufficient strength to suspend the mud sampler 3a. The mud sampler 3a is controlled via the optical fiber cable 3b. For this control, for example, the control device 1 or a control device not shown in the figure other than the control device 1 is used, and the control device transmits signals for controlling the operation of the mud sampler 3a via the optical fiber cable 3b, and acquires information such as the amount of radiation contained in the mud sampled by the mud sampler 3a and images captured by a camera. Note that a communication cable such as a metal wire may be used instead of the optical fiber cable 3b.

[0038] The winch 3c drops and pulls up the mud sampler 3a via the optical fiber cable 3b. The drop and pull of the mud sampler 3a is performed via the moon pool 2a.

[0039] In addition, the marine system 100 may be equipped with an excavator or the like for obtaining seabed resources, instead of the mud sampling mechanism 3.

[0040] The propulsion mechanism 4 is a mechanism for propelling the hull 2 ​​on water. The propulsion mechanism 4 is composed of thrusters, water jets, etc. As shown in Fig. 1, the propulsion mechanism 4 according to this embodiment includes a main thruster 4a, a bow thruster 4b, and a stern thruster 4c.

[0041] The main thruster 4a is provided in the center of the hull 2 ​​and generates a thrust for moving the hull 2 ​​in the longitudinal direction. The bow thruster 4b is provided in the bow of the hull 2 ​​and generates a thrust for moving the hull 2 ​​in the transverse direction. The stern thruster 4c is provided in the stern of the hull 2 ​​and generates a thrust for moving the hull 2 ​​in the transverse direction. The main thruster 4a is an example of a first thruster that generates a thrust in a first thrust direction, and the bow thruster 4b and the stern thruster 4c are examples of a second thruster that generates a thrust in a second thrust direction. In this embodiment, the first thrust direction and the second thrust direction are orthogonal. The first thrust direction and the second thrust direction may be different directions other than orthogonal. In the following description, the main thruster 4a, the bow thruster 4b, and the stern thruster 4c may be simply referred to as the thruster 4a, the thruster 4b, and the thruster 4c, unless otherwise specified.

[0042] The propulsion mechanism 4 according to this embodiment is capable of propelling the hull 2 ​​in the longitudinal direction, the lateral direction, and the angular direction by driving the thrusters 4a, 4b, and 4c in combination. Propulsion in the longitudinal direction (straight ahead mode) will be described with reference to Fig. 2A. Propulsion in the lateral direction (crab mode) will be described with reference to Fig. 2B. Propulsion in the angular direction (angle control mode) will be described with reference to Fig. 2C.

[0043] Here, propulsion in the angular direction refers to the turning of the hull 2. Hereinafter, as shown in FIG. 1, the fore-and-aft direction of the hull 2 ​​is defined as the x direction, with the bow side of the hull 2 ​​being the positive direction, the left-right direction of the hull 2 ​​is defined as the y direction, with the right side of the hull 2 ​​being the positive direction, and the direction perpendicular to the x and y directions, i.e., the up-and-down direction of the hull 2, is defined as the z direction, with downward being the positive direction. Also, the direction of rotation in the xy plane, i.e., the angular direction of the hull 2, is defined as the ψ direction, with the rotation direction from the +x direction to the +y direction being the positive direction. The ψ direction is the so-called yaw direction.

[0044] Fig. 2A is a diagram showing propulsion (straight-line mode) in the fore-and-aft direction (here, the +x direction) of the hull 2 ​​according to this embodiment. As shown in Fig. 2A, when the hull 2 ​​is propelled in the +x direction by the propulsion mechanism 4, thrust in the a1 direction is generated by the thruster 4a, and thrusters 4b and 4c are stopped. This provides thrust in the +x direction to the hull 2. Although not shown, when the hull 2 ​​is propelled in the -x direction, thrust in the direction opposite to the a1 direction is generated by the thruster 4a, and thrusters 4b and 4c are stopped.

[0045] FIG. 2B is a diagram showing propulsion (crab-walking mode) in the left-right direction (here, +y direction) of the hull 2 ​​according to this embodiment. As shown in FIG. 2B, when the hull 2 ​​is propelled in the +y direction by the propulsion mechanism 4, the thruster 4a is stopped, a thrust in the b1 direction is generated by the thruster 4b, and a thrust in the c1 direction, which is the same direction as the b1 direction, is generated by the thruster 4c. This gives the hull 2 ​​a thrust in the +y direction. Although not shown, when the hull 2 ​​is propelled in the -y direction, the thruster 4a is stopped, a thrust in the opposite direction to the b1 direction is generated by the thruster 4b, and a thrust in the opposite direction to the c1 direction is generated by the thruster 4c. This allows the hull 2 ​​to be propelled in the +y direction (or -y direction) like a crab walk.

[0046] Fig. 2C is a diagram showing propulsion (angle control mode) in an angular direction (here, +ψ direction) of the hull 2 ​​according to this embodiment. As shown in Fig. 2C, when the hull 2 ​​is propelled in the +ψ direction by the propulsion mechanism 4, the thruster 4a is stopped, thruster 4b generates a thrust in the b1 direction, and thruster 4c generates a thrust in the c2 direction opposite to b1. This generates a thrust in the +ψ direction for the hull 2. Note that, although not shown, when the hull 2 ​​is propelled in the -ψ direction, the thruster 4a is stopped, thruster 4b generates a thrust in the direction opposite to the b1 direction, and thruster 4c generates a thrust in the direction opposite to the c2 direction.

[0047] In this way, the propulsion mechanism 4 according to this embodiment can propel the hull 2 ​​in the longitudinal direction, the lateral direction, and the angular direction. Therefore, the propulsion mechanism 4 can propel the hull 2 ​​in any direction on the water. These controls may be combined. For example, by using the straight-line mode and the angle control mode, it is possible to perform the same control (WP control) as that of a normal ship. In addition, by using the straight-line mode and the walking mode, it is possible to perform control (DP control) to move in the x direction or y direction while maintaining the bow angle. Note that if the angle is significantly deviated from the target angle during DP control, the angle control mode may be performed. According to the present application, block diagonalization (described at the end of this specification) can be used to avoid complication of control even when control modes are combined.

[0048] In addition, when the marine system 100 includes an ROV that moves underwater instead of the vessel (ASV) 2, the propulsion mechanism 4 is configured to propel the ROV, for example, in the forward / backward, left / right, and up / down directions.

[0049] <Control device> Next, the control device 1 will be described.

[0050] The control device 1 according to this embodiment controls the position and angle of the hull 2. More specifically, the control device 1 controls the propulsion mechanism 4 based on sliding mode control and neural network control to control the current position of the hull 2 ​​so that it coincides with the target position. The target position is, for example, directly above the position where the mud sampler 3a is dropped. The control device 1 also controls the propulsion mechanism 4 based on sliding mode control to control the current angle of the hull 2 ​​so that it coincides with the target angle. The target angle is, for example, the same angle as the wind direction.

[0051] Fig. 3 is a functional block diagram of the control device 1 according to this embodiment. As shown in Fig. 3, the control device 1 includes a processing unit 10, a detection unit 20, a thruster driving unit 30, a storage unit 40, an input interface 50, and a communication unit 60.

[0052] The processing unit 10 is a processor that performs a series of calculation processes for performing sliding mode control and neural network control, as will be described in detail later.

[0053] The detection unit 20 is configured to detect the current position and angle of the hull 2, and includes, for example, a Global Positioning System (GPS) and an Inertial Measurement Unit (IMU). The detection unit 20 may further include a speedometer to detect the current speed and angular velocity of the hull 2. The detection unit 20 may further include a wind direction sensor to detect the current wind direction, i.e., the direction from which the wind is blowing.

[0054] The thruster driving unit 30 drives the thrusters 4a, 4b, and 4c of the propulsion mechanism 4. For example, the thruster driving unit 30 includes a plurality of inverters connected to the thrusters 4a, 4b, and 4c, respectively, and drives the thrusters 4a, 4b, and 4c by PWM controlling these inverters. The thruster driving unit 30 according to this embodiment inputs a control input generated by the processing unit 10 to the propulsion mechanism 4. The driving forces of the thrusters 4a, 4b, and 4c are adjusted according to the value of this control input.

[0055] The storage unit 40 is composed of a semiconductor memory, a hard disk drive, an optical disk, etc. The storage unit 40 stores, for example, the program executed by the processing unit 10, the target position and target angle of the hull 2, the history of the position and angle of the hull 2 ​​detected by the detection unit 20, and the history of a switching function, which will be described later.

[0056] The input interface 50 is an interface that accepts input from an operator, converts the accepted input operation into an electric signal, and outputs it to the processing unit 10. For example, the input interface 50 accepts from the operator an instruction regarding an operation selection in the operation selection unit 15 described later, or an instruction to operate the winch 3c. The input interface 50 is, for example, a joystick. The joystick may be provided with a switch and a button. Note that the input interface 50 is not limited to this, and may be realized by a mouse, a keyboard, a touch panel, a switch, a button, or the like.

[0057] The communication unit 60 exchanges information between the control device 1 and an external device (a control device installed on land or on a ship). For example, the communication unit 60 receives information indicating a target position and a target angle of the hull 2. Alternatively, the communication unit 60 may receive a signal related to the operation selection in the operation selection unit 15 from the external device.

[0058] <Processing section> Next, the processing unit 10 will be described in detail.

[0059] Fig. 4 is a functional block diagram of the processing unit 10 according to this embodiment. As shown in Fig. 4, the processing unit 10 includes an information acquisition unit 11, a state variable generation unit 12, an SM control unit 13, a σ-NN control unit 14, an operation selection unit 15, and a control input generation unit 16.

[0060] Each part of the processing unit 10 is stored in the storage unit 40 in the form of a program executable by a computer. In other words, the processing unit 10 realizes the functions of the information acquisition unit 11, the state variable generation unit 12, the SM control unit 13, the σ-NN control unit 14, the operation selection unit 15, and the control input generation unit 16 by reading and executing the program from the storage unit 40.

[0061] Furthermore, the processing unit 10 according to the present embodiment realizes the functions of the information acquisition unit 11, the state variable generation unit 12, the SM control unit 13, the σ-NN control unit 14, the operation selection unit 15, and the control input generation unit 16 with one processor, but is not limited to this, and the processing unit 10 may realize these functions with a combination of multiple independent processors. For example, the SM control unit 13 and the σ-NN control unit 14 may each be configured with one or multiple processors and operate in parallel.

[0062] The information acquisition unit 11 acquires position information and angle information of the hull 2. Here, the position information of the hull 2 ​​includes a target position, a current position, and a position history, and the angle information of the hull 2 ​​includes a target angle, a current angle, and an angle history. More specifically, the information acquisition unit 11 acquires the target position and target angle of the hull 2 ​​stored in the memory unit 40. Furthermore, the information acquisition unit 11 acquires the current position and current angle of the hull 2 ​​detected by the detection unit 20 at a sampling period T s In this embodiment, the signal is acquired every sampling period T s The value of T s = 100 ms. Furthermore, the information acquisition unit 11 acquires the history of the position and angle of the hull 2 ​​stored in the memory unit 40.

[0063] The information acquisition unit 11 may acquire at least one of the target position and the target angle of the hull 2 ​​from the communication unit 60. s The value of may be other than 100 ms.

[0064] The state variable generation unit 12 generates a state variable x based on the position information and angle information of the ship 2 acquired by the information acquisition unit 11. st Generate the state variable x st are variables used in sliding mode control, and have position, velocity, angle, and angular velocity as their respective components.

[0065] The SM control unit 13 performs calculations for sliding mode (SM) control. As shown in Fig. 4, the SM control unit 13 includes a switching function generation unit 131 and an SM control value generation unit 132. The switching function generation unit 131 generates a state variable x st The SM control value generation unit 132 generates a switching function σ for sliding mode control from the switching function σ. SM In this way, the SM control unit 13 generates the switching function σ based on the position information and angle information of the hull 2, and generates the SM control value v SM The SM control value v SM is the switching input in sliding mode control. The switching input is the state variable x st is an input for bringing the SM control value v closer to the switching hyperplane, and is one of the nonlinear control inputs. Note that the SM control unit 13 is an example of a sliding mode control unit, and the SM control value v SM is an example of a sliding mode control value.

[0066] The σ-NN control unit 14 calculates the state variable x stand performs calculations for neural network (NN) control based on the switching function σ. As shown in Fig. 4, the σ-NN control unit 14 includes a σ-NN 141 and a σ-NN control value generation unit 142. The σ-NN control unit 14 is an example of a neural network control unit.

[0067] As shown in Figure 4, σ-NN141 is x -NN141a and σ y - Equipped with NN141b. σ x -NN141a is a neural network for controlling the position of the hull 2 ​​in the x direction, i.e., the longitudinal direction, and is the x component of the switching function σ x The weights are updated so that the value of σ y -NN141b is a neural network for controlling the position of the hull 2 ​​in the y direction, i.e., the left-right direction, and is the y component of the switching function σ y The weights are updated so that the value of σ x -NN141a and σ y -NN141b are examples of neural networks.

[0068] Also, after the weights are updated, σ x -NN141a is a state variable x st Enter the x and x′ components of x out Similarly, after the weights are updated, σ y -NN141b is the state variable x st Enter the y and y′ components of y out Output.

[0069] The σ-NN control value generator 142 calculates σ x -NN141a output x out and σ y -Output y of NN141b out From the σ-NN control value v σ Generate the σ-NN control value v σ is the SM control value v SM The correction input for the σ-NN control value v σis an example of a neural network control value.

[0070] In this way, the σ-NN control unit 14 determines the σ-NN control value v for performing neural network control so that the current position of the hull 2 ​​coincides with the target position, based on the position information of the hull 2 ​​and the switching function σ. σ Generate.

[0071] The operation selection unit 15 selects the operation of the control input generation unit 16. When the difference between the direction of the bow of the hull 2 ​​and the wind direction, i.e., the difference between the target angle and the current angle of the hull 2, is greater than a predetermined value (for example, 10°), the operation selection unit 15 according to this embodiment selects that the control input generation unit 16 generates a control input related to the angle of the hull 2 ​​as the control input, and when the difference between the target angle and the current angle of the hull 2 ​​is equal to or less than the predetermined value, the control input generation unit 16 selects that the control input generation unit 16 generates a control input related to the position of the hull 2 ​​as the control input. The operation selection unit 15 may automatically switch from WP control to DP control (moving while maintaining the bow angle) (or vice versa). For example, the operation selection unit 15 switches between WP control and DP control depending on whether the hull 2 ​​is within a predetermined range (set circle) centered on the target position. More specifically, when the hull 2 ​​moves from outside the set circle to inside the set circle, the operation selection unit 15 switches from WP control to DP control, and conversely, when the hull 2 ​​moves from inside the set circle to outside the set circle, the operation selection unit 15 switches from DP control to WP control.

[0072] The control input generating unit 16 generates the SM control value v SM and the σ-NN control value v σ Based on the control input u in More specifically, when controlling the angle of the hull 2, the control input generating unit 16 generates the SM control value v SM Based on the control input u regarding the angle of the hull 2 in When controlling the position of the hull 2, the control input generating unit 16 generates the SM control value v SM and the σ-NN control value v σ Based on the control input u in Generate.

[0073] <Sliding mode control> Here, an overview of the sliding mode control will be given.

[0074] Sliding mode control is a method to control the behavior of a system by switching hyperplane (σ(x st )=0 st The sliding mode control is a control method that constrains the input power to a certain value (the value of ) and then converges to an equilibrium point, which is the origin. The sliding mode control is characterized by its robustness, i.e., its resistance to the effects of model errors and disturbances.

[0075] Specifically, in sliding mode control, the state equation shown in the following formula (1) is assumed. Then, the system is stabilized by appropriately generating the control input.

[0076]

number

[0077] In this embodiment, the state variable x st is a 6×1 matrix defined by the following equation (2). Therefore, A is a 6×6 matrix.

[0078]

number

[0079] In addition, the control input u inis a 3×1 matrix defined by the following equation (3). Therefore, B is a 6×3 matrix.

[0080]

number

[0081] The switching function σ according to this embodiment is st is a function of , and is a 3 × 1 matrix defined by the following equation (4).

[0082]

number

[0083] The control input u that makes this switching function σ equal to 0 in and generate the control input u in By inputting this to the thruster driver 30, sliding mode control is performed.

[0084] <Control of an Autonomous Water Vehicle According to the First Embodiment> Next, the control of the ship 2 by the control device 1 according to this embodiment will be described. FIG. 5 is a flow chart showing the operation of the processing unit 10 according to this embodiment. Note that the series of steps shown in FIG. 5 is carried out at a sampling period T s This is repeated every 100 ms.

[0085] First, the processing unit 10 acquires position information and angle information of the hull 2 ​​(step S1). Specifically, the information acquisition unit 11 of the processing unit 10 acquires the current position and current angle of the hull 2 ​​from the detection unit 20. The information acquisition unit 11 also acquires the target position and target angle of the hull 2, as well as the history of the position and angle of the hull 2, from the memory unit 40. Note that the history of the position and angle of the hull 2 ​​is used to calculate the velocity and angular velocity by time-differentiating the position and angle, so it is sufficient for the information acquisition unit 11 to acquire the position and angle at least one sampling period before the present.

[0086] Next, the processing unit 10 calculates the state variable x from the position information and angle information of the ship 2 acquired by the information acquisition unit 11. st In more detail, the state variable generating unit 12 of the processing unit 10 generates a state variable x from the target position and the current position of the hull 2 ​​(step S2). st The x and y components of the state variable x are generated from the target angle and current angle of the hull 2. st The state variable generator 12 also generates a state variable x st The x' and y' components of the state variable x are generated from the current angle of the ship 2 and the angle one sampling period ago. st Generate the ψ' component of

[0087] Specifically, the state variable generation unit 12 calculates the state variable x st Generate the x, y, and ψ components of

[0088]

number

[0089] In this way, the state variable x st The x and y components of are the difference between the target position and the current position of the vessel 2, and the state variable x st The ψ component is the difference between the target angle of the hull 2 ​​and the current angle.

[0090] Moreover, the state variable generating unit 12 of the processing unit 10 calculates the state variable x st In this embodiment, the x', y', and ψ' components of the state variable x st Since is discrete, the state variable x is calculated using x, y, and ψ from one sampling period ago. st Generate the x', y', and ψ' components of

[0091]

number

[0092] By substituting each component of equations (5) and (6) into the above equation (2), the state variable x st is generated.

[0093] Note that the state variable x st The method of generating the x', y', and ψ' components of the state variable x is not limited to the above. For example, if the detection unit 20 is equipped with a speedometer, the state variable generation unit 12 generates the state variable x from the speed and angular velocity of the ship 2 acquired by the information acquisition unit 11. st The x', y', and ψ' components of the

[0094] Next, the processing unit 10 generates a switching function σ (step S3). More specifically, the switching function generating unit 131 in the SM control unit 13 of the processing unit 10 generates a switching function σ based on the state variable x stSpecifically, the switching function generating unit 131 generates a switching function σ from the state variable x st Then, a switching function σ is generated by the following equation (7).

[0095]

number

[0096] Next, the processing unit 10 calculates the SM control value v SM Specifically, the SM control value generation unit 132 in the SM control unit 13 of the processing unit 10 generates the SM control value v from the values ​​of the components of the switching function σ by the following equation (8). SM Generate.

[0097]

number

[0098] The SM control value v SM is the switching input in sliding mode control, as shown in equation (8).

[0099] Next, the processing unit 10 updates the weighting of the σ-NN 141 (step S5). Specifically, the σ-NN control unit 14 of the processing unit 10 receives the switching function σ generated by the switching function generating unit 131 of the SM control unit 13, and updates the σ of the σ-NN 141. x -NN141a and σ y - For each NN141b, update the neural network weights.

[0100] σ x The update of the weights of the -NN 141a will be described with reference to FIG. x FIG. 11 is a diagram showing an example of -NN141a.

[0101] As shown in Figure 6, σ x The -NN141a is a neural network consisting of three layers: an input layer, one hidden layer, and an output layer. In the example shown in FIG. x -NN141a has two inputs x in1 ,x in2 and 3 intermediate units x mid1 ,x mid2 ,x mid3 and one output x out In this embodiment, x in1 =x,x in2 = x'. Also, w in11 ,win12 ,w in13 ,w in21 ,w in22 ,w in23 is the weight from the input layer to the hidden layer, and w out1 ,w out2 ,w out3 is the weighting from the intermediate layer to the output layer.

[0102] The σ-NN control unit 14 calculates σ, which is the x-component of the switching function σ. x Specifically, the weights are updated based on the following equations (9) and (10) at time kT s From the weighting, at time (k+1)T s (k is an integer)

[0103]

number

[0104]

number

[0105] In addition, e upd ,e outi is the error vector, and in this embodiment, e upd =-σ x , e outi =w outi ×e upd (i = 1 to 3). α is a learning rate that affects the accuracy and efficiency of neural network control, so it is determined appropriately. For example, α = 0.01.

[0106] In addition, the weights at k=0, i.e., time t=0, are generated using random numbers. In this case, for example, all weights are generated so that they are greater than -1, less than 1, and not 0, and each weight has a uniform distribution. However, weights with the same subscript are generated so that they have different values. For example, win11 ,w in21 ,w in31 are different values, and w in11 ,w in12 The values ​​are generated so that they are different from each other. out1 ,w out2 ,w out3 are generated so that they are different values. By generating the weights in this way, the weights can be appropriately updated.

[0107] 6, the number of hidden units is 3, but in this embodiment, the number of hidden units is 5. The number of hidden units is determined appropriately since it affects the accuracy and efficiency of neural network control.

[0108] The above explained σ x -The contents of NN141a are y The same is true for the configuration of NN141b, the generation and update of weights, the value of the learning rate, and the number of hidden units.

[0109] Next, the processing unit 10 calculates the σ-NN control value v σ (Step S6). More specifically, the σ-NN 141 generates σ x -By inputting x and x' to NN141a, the output x is greater than 0 and less than 1. out and σ y By inputting y and y′ to the NN141b, the output y is greater than 0 and less than 1. out Generate.

[0110] Specifically, σ x -NN141a is calculated by the following formula (11) from x and x′ to x midi and then, by equation (12), x midi x out Generate (i=1~3).

[0111]

number

[0112]

number

[0113] Then, the σ-NN control value generator 152 uses the generated x out and y out Then, the σ-NN control value v is calculated by the following equation (13). σ Generate.

[0114]

number

[0115] Next, the processing unit 10 selects an operation of the control input generating unit 16 (step S7). More specifically, when the absolute value |ψ| of the ψ component of the state variable is greater than a predetermined value (e.g., 10°) as the difference between the target angle and the current angle of the hull 2, the operation selecting unit 15 of the processing unit 10 selects that the control input generating unit 16 generates a control input related to the angle of the hull 2, and when the absolute value |ψ| of the ψ component of the state variable is equal to or less than the predetermined value, the control input generating unit 16 selects that the control input generating unit 16 generates a control input related to the position of the hull 2. Specifically, for example, the operator visually observes the direction of the hull 2 ​​and inputs whether the difference with the wind direction is greater than a predetermined value via the input interface 50 or the communication unit 60, and the operation selecting unit 15 selects an operation of the control input generating unit 16 based on this input. The operation selecting unit 15 may hold the selected operation until another input is made. Note that, in a case where the detection unit 20 is equipped with a wind direction sensor, the wind direction ψ obtained by the wind direction sensor may be set to 0°. w and the current angle ψ of hull 2 pThen, ψ may be calculated by equation (5) and the operation selection unit 15 may select the operation of the control input generation unit 16 based on the value of ψ.

[0116] Next, the processing unit 10 receives the control input u in Specifically, when controlling the angle of the hull 2, the control input generating unit 16 of the processing unit 10 generates the SM control value v SM Based on this, the control input u for the angle of the hull 2 ​​is calculated by the following equation (14): in Generate.

[0117]

number

[0118] On the other hand, when controlling the position of the hull 2, the control input generating unit 16 of the processing unit 10 controls the SM control value v SM and the σ-NN control value v generated by σ-NN141 σ Based on this, the control input u for the position of the vessel 2 is calculated by the following equation (15): in Generate.

[0119]

number

[0120] As shown in equation (15), the control input u in is the SM control value v SM and the σ-NN control value v σ In other words, when controlling the position of the hull 2, the SM control value v SM For the correction input, the σ-NN control value v σMore specifically, the σ-NN control value v σ can be used in place of the equivalent control input in sliding mode control, and the SM control value v SM The behavior of the sine wave can be stabilized.

[0121] The control device 1 according to the first embodiment described above performs neural network control in addition to sliding mode control in controlling the position of the marine robot. This makes it possible to respond to changes in the motion characteristics of the marine robot even when external disturbances such as wind and waves are large. In other words, compared to when only sliding mode control is performed, the ability to respond to environmental changes can be improved by adding correction input by neural network control. As a result, the position of the hull 2 ​​can be maintained with high accuracy even when external disturbances are large.

[0122] More specifically, in step S5 in FIG. 5, the weighting of the σ-NN 141 is updated, and in step S6, the σ-NN control value v σ In step S8, the SM control value v SM σ-NN control value v σ By adding σ x ,σ y The control input u is adjusted so that in This allows the control input u to be generated even in the presence of a large disturbance that makes it impossible to set the switching function σ to 0 in the sliding mode control. in can be generated appropriately.

[0123] Here, the specific effect of the position control of the hull 2 ​​using the neural network control will be described with reference to Figs. 7A and 7B. Fig. 7A is a diagram showing the simulation result of the position control according to the first embodiment. Fig. 7B is a diagram showing the simulation result of the position control according to the comparative example. In the comparative example shown in Fig. 7B, only the sliding mode control is performed. Also, Figs. 7A and 7B each show the trajectory of the hull 2 ​​moving from position P1 at time 0 s to position P2 at time 300 s when a wind blows in the approximate direction WD1 with an average wind speed of 10 m / s as a disturbance. Note that the wind direction and wind speed are given by random numbers and vary to some extent. Also, the symbol G represents the point where the target position is (east-west position, north-south position) = (0, 0), and d represents the distance from the target position. In the example shown in Figs. 7A and 7B, the criterion is whether the position of the hull 2 ​​can be maintained within the range of d ≦ 6 m based on the water depth of the sea area at the site.

[0124] As shown in FIG. 7A, when position control is performed by the control device 1 according to this embodiment, i.e., when sliding mode control and neural network control are performed, the position of the hull 2 ​​immediately moves from position P1 at time 0 s to within the range of d≦6 m and is maintained within the range of d≦6 m until it reaches position P2 at time 300 s.

[0125] On the other hand, as shown in FIG. 7B, when position control is performed by a control device 1 according to the comparative example, that is, when sliding mode control is performed but neural network control is not performed, the position of the hull 2 ​​moves from position P1 at time 0 s to within the range d≦6 m, but at position P2 at time 300 s, it has moved outside the range d≦6 m.

[0126] In this way, according to the control device 1 of this embodiment, by performing neural network control using σ-NN141 in addition to sliding mode control, it is possible to accurately maintain the position of the hull 2 ​​even when there is a large external disturbance, such as a wind blowing with an average wind speed of 10 m / s.

[0127] In this embodiment, the SM control value v SM is the switching input in sliding mode control, and the σ-NN control value v σ is a correction input for the switching input, and the control input u in is the SM control value v SM and the σ-NN control value v σ That is, in this embodiment, the switching input is generated by the sliding mode control, and is not generated by the neural network control. This allows the switching input to function reliably. Also, it is possible to avoid problems that may occur when the switching input is generated by the neural network control, such as being unable to approach the switching hyperplane.

[0128] In this embodiment, the correction input σ-NN control value v σ is the switching input SM control value v SM The parameters are set so that they are not excessively large compared to the σ-NN control value v σ Absolute value of |v σx |,|v σy The upper limit (minimum upper bound) of | is the SM control value v SM Absolute value of |v SMx |,|v SMy More specifically, Equation (8) and Equation (13) and 0 <x out < 1 and 0 <y out < 1, σ-NN control value v σ Absolute value of the x component of |v σx The upper limit (minimum upper bound) of | is k x / 2, and the SM control value v SM Absolute value of the x component of |v SMx k is the upper limit of | x The σ-NN control value v σ Absolute value of the y component of |v σy The upper limit of | is k y / 2, and the SM control value v SM Absolute value of the y component of |v SMy k is the upper limit of | yThis means that, for example, when the position control starts, the σ-NN control value v σ Even if the output of is unstable, the control input u in It is possible to stabilize |v σx |,|v σy The upper limit of | is |v SMx |,|v SMy Alternatively, the value may be any value less than or equal to the upper limit of |.

[0129] Furthermore, |v σx |,|v σy The upper limit of | may be changed over time. For example, |v σx |,|v σy The upper limit of | increases over time, and |v SMx |,|v SMy In this case, it is also possible to approach the upper limit of |v σx |,|v σy The upper limit of | is, when the vessel 2 is within a predetermined range (for example, within a circle with a radius of 6 m) centered on the target position, |v SMx |,|v SMy The upper limit of | may be approached gradually or all at once. This allows the effect of neural network control that has progressed in learning to be properly reflected. σx |,|v σy The upper limit of |v SMx |,|v SMy It may be larger than the upper limit of |. σx |,|v σy The upper limit of | may be decreased over time to approach 0.

[0130] In this embodiment, when the difference between the target angle and the current angle of the hull 2 ​​is greater than a predetermined value, the operation selection unit 15 controls the control input generation unit 16 to generate a control input u in If the difference is equal to or smaller than the predetermined value, the control input generating unit 16 selects to generate a control input u inNormally, the thrust of the main thruster 4a is greater than those of the bow thruster 4b and the stern thruster 4c. This allows the thrust direction of the main thruster 4a, which has a greater thrust, to be aligned with the wind direction, improving the efficiency and accuracy of the position control of the hull 2.

[0131] In addition, in this embodiment, since the thrusts in the longitudinal and lateral directions applied to the hull 2 ​​by the thrusters 4a, 4b, and 4c are perpendicular to each other, the controls relating to the propulsion in these directions (propulsion controls) do not affect each other. Furthermore, in this embodiment, in addition to the propulsion controls in the longitudinal and lateral directions, the propulsion controls in the angular directions also do not affect each other. That is, the propulsion controls in the longitudinal, lateral, and angular directions in the propulsion mechanism 4 according to this embodiment do not affect each other. This allows the propulsion controls in the longitudinal, lateral, and angular directions to be performed separately (independently). That is, the generation of control inputs relating to the propulsion in each direction and the updating of the weighting of the neural network can be performed separately. This allows the amount of calculation to be reduced, and the efficiency and accuracy of the position control and angle control to be improved. In addition, the sampling period T s This allows the position and angle of the hull 2 ​​to be maintained with greater precision.

[0132] The fact that the propulsion controls in the forward / rearward, left / right, and angular directions do not affect each other means that, mathematically, both matrices A and B in the state equation shown in equation (1) can be substantially block diagonalized. Block diagonalization will be explained further at the end of this specification.

[0133] In this embodiment, σ of σ-NN 141 x -NN141a and σ y -NN141b is a simple neural network consisting of three layers: an input layer, one hidden layer, and an output layer. x -NN141a and σ y-The time it takes to update the weights of NN141b and generate the output is reduced, so the sampling period T s This allows the position and angle of the hull 2 ​​to be maintained with greater precision.

[0134] In addition, the neural network according to the present embodiment, σ x -NN141a and σ y -NN141b learns in real time, which allows it to update the weights appropriately even in the presence of unpredictable disturbances.

[0135] For these reasons, the marine system 100 configured as a mud sampling system can perform mud sampling operations stably.

[0136] In the above description, the position control in the x direction and the y direction is performed simultaneously, but the embodiment is not limited to this. For example, the position control in the direction farther from the target position may be performed preferentially.

[0137] In addition, the weighting of the σ-NN 141 in step S5 is updated by the σ-NN control value v σ This may be done after the generation of

[0138] 5 may be performed immediately after step S2. In this case, when the operation selection unit 15 selects to perform angle control, σ x -NN141a and σ y - The weighting update of NN141b may be stopped.

[0139] In addition, in this embodiment, neural network control is not used for the angle direction, but neural network control may be used for the angle direction as well. For example, a σ-NN control value is also calculated for ψ, and the control input u in SM control value v SMand the σ-NN control value. This makes it possible to maintain the angle of the hull 2 ​​with greater precision.

[0140] Second embodiment Next, a second embodiment will be described. In this embodiment, the above-mentioned processing unit 10 further includes a σ'-NN control unit 17 that performs neural network control based on the time differential σ' of the switching function. The σ'-NN control unit 17 performs neural network control based on the time differential σ' of the switching function, thereby suppressing abrupt changes in the switching function σ and further improving the accuracy of fixed point holding. The control device 1 according to this embodiment will be described below, focusing on the differences from the first embodiment.

[0141] Fig. 8 is a functional block diagram of the processing unit 10 according to this embodiment, and corresponds to Fig. 4 in the above-mentioned first embodiment. As shown in Fig. 8, the processing unit 10 according to this embodiment further includes a σ'-NN control unit 17 in addition to the respective units of the processing unit 10 according to the first embodiment.

[0142] The σ'-NN control unit 17 performs calculations for neural network control like the σ-NN control unit 14, but unlike the σ-NN control unit 14, it performs calculations based on the time derivative σ' of a switching function. As shown in Fig. 8, the σ'-NN control unit 17 includes a switching function differentiation unit 171, a σ'-NN 172, and a σ'-NN control value generation unit 173. The σ'-NN control unit 17 is an example of a second neural network control unit.

[0143] The switching function differentiation unit 171 acquires the switching function σ generated by the SM control unit 13 and the history of the switching function σ stored in the storage unit 40, and generates the time derivative σ' of the switching function using these. Note that it is sufficient to acquire the history of the switching function σ from at least one sampling period before the present.

[0144] As shown in Figure 8, σ′-NN172 is x -NN172a and σ′ y - Equipped with NN172b. σ′x -NN172a is a neural network for controlling the position of the hull 2 ​​in the x direction, i.e., the longitudinal direction, and is the x component of the switching function σ′ x The weights are updated so that the value of σ′ becomes 0. y -NN172b is a neural network for controlling the position of the hull 2 ​​in the y direction, i.e., the left-right direction, and is the y component of the switching function σ′ y The weights are updated so that the value of σ′ becomes 0. x -NN172a and σ′ y -NN172b are examples of the second neural network.

[0145] Also, after the weights are updated, σ′ x -NN172a is σ′ x ,x,x′ and enter x out (x with overline). Similarly, after the weights are updated, σ y -NN141b is σ′ y ,y,y′ and y out (y with an overline).

[0146] In addition, σ′ x -NN172a and σ′ y -NN172b has x, x′ and y, y′, as well as σ′ x ,σ′ y This means that if you want the time derivative of the switching function σ′ to be 0, the state variable x st The control input u also depends on the time derivative σ′ of the switching function. in This is because it is necessary to change the size of

[0147] The σ′-NN control value generator 173 calculates σ′ x -NN172a output x out (overlined x) and σ′ y -Output y of NN172b out From (y with overline), the σ′-NN control value v σ′ As will be described later, the σ′-NN control value v σ′is the SM control value v SM The second correction input for σ′-NN control value v σ′ is an example of a second neural network control value.

[0148] In this way, the σ-NN control unit 17 calculates the σ′-NN control value v σ′ Generate.

[0149] In this embodiment, the control input generating unit 16 calculates the SM control value v SM , σ-NN control value v σ , and the σ′-NN control value v σ′ Based on the control input u in More specifically, when controlling the angle of the hull 2, the control input generating unit 16 generates the SM control value v SM Based on the control input u in When controlling the position of the hull 2, the control input generating unit 16 generates the SM control value v SM , σ-NN control value v σ , and the σ′-NN control value v σ′ Based on the control input u in Generate.

[0150] <Control of an Autonomous Water Vehicle According to a Second Embodiment> Next, the control of the hull 2 ​​by the control device 1 according to this embodiment will be described. FIG. 9 is a flow chart showing the operation of the processing unit 10 according to this embodiment. Steps S1 to S6 and step S7 are the same as those in the first embodiment described above, and therefore their explanation will be omitted. Note that the series of steps shown in FIG. 9 is carried out in a sampling period T s This is repeated every 100 ms.

[0151] In step S6, the σ-NN control value v σAfter generating σ′, the processing unit 10 generates a time derivative σ′ of the switching function (step S9). Specifically, the switching function differentiation unit 171 of the σ′-NN control unit 17 generates the time derivative σ′ of the switching function from the switching function σ by the following equation (16).

[0152]

number

[0153] Next, the processing unit 10 updates the weighting of the σ′-NN 172 (step S10). Specifically, the σ-NN control unit 14 receives the time differential σ′ of the switching function generated by the switching function differentiation unit 171, and calculates the σ′ of the σ′-NN 172. x -NN172a and σ′ y -NN172b, update the weights of the neural network. x FIG. 10 is a diagram showing an example of the σ′ x -NN172a, σ x -NN141a is a neural network consisting of three layers: an input layer, one hidden layer, and an output layer. y The same is true for the -NN 172b. The update of the weights of the σ'-NN 172 in step S10 is similar to the update of the weights of the σ-NN 141 in step S5 described above, except that the learning rate α is set to α=0.1.

[0154] In addition, the number of intermediate units is four in the example of FIG. x -NN172a and σ′ y In -NN172b, the number of intermediate units was set to 5.

[0155] Next, the processing unit 10 calculates the σ′-NN control value v σ′Specifically, the σ′-NN 172 generates σ′ with the weights updated in step S10. x -σ′ for NN172a x ,x,x′ outputs x that is greater than 0 and less than 1. out (x with overline) is generated, and the weights are updated in step S10. y -σ′ for NN141b y ,y,y′, the output y is greater than 0 and less than 1. out Then, the σ′-NN control value generation unit 173 generates the σ′-NN control value v σ′ Generate.

[0156]

number

[0157] After step S7, the processing unit 10 receives the control input u in (Step S8). When controlling the angle of the hull 2, the same procedure as in the first embodiment is used. The control input generating unit 16 of the processing unit 10 generates the SM control value v SM Based on this, the control input u for the angle of the hull 2 ​​is expressed by equation (14). in On the other hand, when controlling the position of the hull 2, the control input generating unit 16 of the processing unit 10 generates the SM control value v SM , the σ-NN control value v generated by σ-NN141 σ , and the σ′-NN control value v generated by σ′-NN172 σ′ Based on this, the control input u for the position of the vessel 2 is calculated by the following equation (18): in Generate.

[0158]

number

[0159] In addition, as shown in equation (18), the control input u in is the SM control value v SM , σ-NN control value v σ , and the σ′-NN control value v σ′ In other words, when controlling the position of the hull 2, the SM control value v SM For the correction input, the σ-NN control value v σ and the second correction input, the σ′-NN control value v σ′ and is added.

[0160] According to the control device 1 of the second embodiment described above, by further adding neural network control based on the time derivative σ' of the switching function to the position control, it is possible to accurately maintain the position of the hull 2 ​​even when, for example, external disturbances change rapidly.

[0161] More specifically, in step S10 in FIG. 9, the weights are updated, and in step S11, the σ′-NN control value v σ′ In step S8, the SM control value v SM σ-NN control value v σ and the σ′-NN control value v σ′ By adding σ x ,σ x In addition, σ′ x ,σ′ x The control input u in This allows the value of the switching function σ to be stabilized. For example, the σ-NN control value v σ Even if the control input u in can be generated appropriately.

[0162] Here, the specific effects of the position control of the hull 2 ​​using neural network control based on the time derivative σ' of the switching function will be described with reference to Fig. 11. Fig. 11 shows the simulation results of the position control according to the second embodiment, and corresponds to Fig. 7A in the first embodiment described above. Fig. 11 also shows the trajectory of the hull 2 ​​moving from position P1 at time 0 s to position P2 at time 300 s when a wind blowing generally in direction WD1 with an average wind speed of 10 m / s is present as a disturbance.

[0163] As shown in Fig. 11, when position control is performed by the control device 1 according to this embodiment, the position of the hull 2 ​​immediately moves from position P1 at time 0 s to within the range of d ≦ 6 m, and is maintained within the range of d ≦ 6 m until it reaches position P2 at time 300 s. Moreover, it can be said that the hull 2 ​​is maintained at a position closer to the target position G than in Fig. 7A.

[0164] FIG. 12 is a diagram showing the analysis results of the position control of the hull 2 ​​according to the first embodiment, the second embodiment, and the comparative example. The position control according to the comparative example is the result of one simulation, while the position controls according to the first and second embodiments are the result of 30 simulations with different weightings at time t=0 in σ-NN 141 and σ′-NN 172. Also, in the first embodiment, the second embodiment, and the comparative example, a wind with an average wind speed of 10 m / s was blowing as a disturbance. A simulation was performed from time 0 s to time 300 s, and the maximum value of d after 100 s was compared.

[0165] As shown in Fig. 12, in the position control according to the comparative example, the maximum value of d is 10.5303 m. In the position control according to the first embodiment, the maximum value of d is 5.0182 m. In the position control according to the second embodiment, the maximum value of d is 3.4249 m. From this result, it can be seen that the maximum value of d decreases in the order of the comparative example, the first embodiment, and the second embodiment, and the accuracy of fixed point holding is improved.

[0166] As described above, when position control is performed by the control device 1 according to the second embodiment, it is possible to maintain the position of the hull 2 ​​with greater accuracy than in the first embodiment.

[0167] Next, the results of a sea trial conducted on an actual sea for the position control by the control device 1 according to the second embodiment are shown. Fig. 13 is a diagram showing the results of the sea trial for the position control according to the second embodiment. Fig. 14 is a diagram showing the analysis results of the sea trial. The sea trial was conducted in Matsukawaura fishing port in Soma city, Fukushima prefecture.

[0168] As shown in Figure 13, during this sea trial, the wind was blowing in the general direction WD2 at an average speed of 5 m / s. Figure 13 shows the trajectory of the vessel 2 from position P1 at time 0 s to position P7 at time 250 s. The specific times of positions P1 to P7 are as follows:

[0169] Position P1:0s Position P2:30s Position P3:60s Position P4:90s Position P5:120s Position P6:150s Position P7:250s

[0170] As shown in Figure 13, first, from position P1 to position P3, the hull 2 ​​is blown away by the wind, but then moves significantly in the fore-aft direction from position P3 to position P5, and then moves left-right to position P6. From position P6 to position P7, the hull 2 ​​is maintained within the range d ≦ 6 m. As shown in Figure 14, after time 150 s, the position of the hull 2 ​​is maintained within the range d ≦ 6 m.

[0171] In this way, when position control is performed by the control device 1 according to the second embodiment, the position of the hull 2 ​​can be maintained with high accuracy even when actually on the sea.

[0172] In this embodiment, similarly to the first embodiment, the correction input σ-NN control value vσ is the switching input SM control value v SM In this embodiment, the parameters are set so that the σ′-NN control value v σ′ Regarding the switching input, the SM control value v SM The parameters are set so that they are not excessively large compared to the σ′-NN control value v σ′ Absolute value of |v σ′x |,|v σ′y The upper limit (minimum upper bound) of | is the SM control value v SM Absolute value of |v SMx |,|v SMy More specifically, Equation (8) and Equation (17) and 0 <x out < 1 and 0 <y out <1 (x,y with overline) to σ′-NN control value v σ′ Absolute value of the x component of |v σ′x The upper limit (minimum upper bound) of | is k x / 2, and the SM control value v SM Absolute value of the x component of |v SMx k is the upper limit of | x The σ-NN control value v σ Absolute value of the y component of |v σ′y The upper limit of | is k y / 2, and the SM control value v SM Absolute value of the y component of |v SMy k is the upper limit of | y This means that, for example, at the start of operation, the σ′-NN control value v σ′ Even if the output of is unstable, the control input u in It is possible to stabilize |v σ′x |,|v σ′y The upper limit of | is |v SMx |,|v SMy Alternatively, the value may be any value less than or equal to the upper limit of |.

[0173] Furthermore, |v σ′x |,|v σ′y The upper limit of | may be changed over time. For example, |v σ′x |,|vσ′y The upper limit of | increases over time, and |v SMx |,|v SMy In this case, it is also possible to approach the upper limit of |v σ′x |,|v σ′y The upper limit of | is, when the vessel 2 is within a predetermined range (for example, within a circle with a radius of 6 m) centered on the target position, |v SMx |,|v SMy It is possible to gradually approach the upper limit of | or to approach it all at once. This allows the effect of neural network control that has progressed in learning to be properly reflected. Also, when mud sampling is started, |v σ′x |,|v σ′y The upper limit of |v SMx |,|v SMy It may be permitted to be greater than the upper limit of |.

[0174] In this embodiment, the σ′ of the σ′-NN 172 x -NN172a and σ′ y -NN172b is a simple neural network consisting of three layers: an input layer, one hidden layer, and an output layer. x -NN172a and σ′ y -The time it takes to update the weights of NN172b and generate the output is reduced, so the sampling period T s This allows the position and angle of the hull 2 ​​to be maintained with greater precision.

[0175] In addition, the neural network σ′ according to this embodiment x -NN172a and σ′ y -NN172b learns in real time, allowing it to update weights appropriately even in the presence of unpredictable changes in external disturbances.

[0176] In addition, the neural network σ′ according to this embodiment x -NN172a and σ′ y -NN172b is σ′ x ,σ′ yThis allows the control input u in can be more appropriately generated.

[0177] For these reasons, the marine system 100 according to this embodiment can perform mud sampling operations more stably than the first embodiment.

[0178] For convenience of explanation, in the process flow of FIG. 9, the σ-NN control value v σ After generating the σ′-NN control value v σ′ However, the embodiment is not limited to this. For example, the σ′-NN control value v σ′ Let v be the σ-NN control value. σ , or the σ′-NN control value v σ′ and the σ-NN control value v σ In addition, the weighting of the σ′-NN 172 in step S10 may be updated by simultaneously generating the σ-NN control value v σ′ This may be done after the generation of

[0179] In this embodiment, the neural network control by the σ′-NN control unit 17 may be used for the angle direction. For example, a σ-NN control value and a σ′-NN control value are also calculated for ψ, and the control input u in SM control value v SM and the σ-NN control value and the σ'-NN control value are set as the sum of these values. This makes it possible to maintain the angle of the hull 2 ​​with greater precision.

[0180] Based on the above description, a person skilled in the art may be able to conceive additional effects and various modifications of the present invention, but the aspects of the present invention are not limited to the individual embodiments described above. Components across different embodiments may be appropriately combined. Various additions, modifications, and partial deletions are possible within the scope of the conceptual idea and intent of the present invention derived from the contents defined in the claims and their equivalents. In particular, specific formulas that are modified by mathematically equivalent methods such as formula transformation are also included in the scope of the present application.

[0181] <Additional information about block diagonalization> In the propulsion mechanism 4 according to each embodiment described above, the propulsion controls in the forward / rearward direction, left / right direction, and angular direction do not affect each other. As described above, mathematically, this means that both matrices A and B of the state equation shown in formula (1) are substantially block diagonalizable. Specifically, the following conditions must be satisfied:

[0182] Using any regular matrix T,

[0183]

number

[0184]

number

[0185] In this case, if matrices C and D are substantially expressed as block diagonal matrices as shown below, matrices A and B are said to be substantially block diagonalizable.

[0186]

number

[0187]

number

[0188] 1 Control device 2. Hull 2a Moon Pool 3 Sludge collection mechanism 3a Sludge sampler 3b Fiber Optic Cable 3c Winch 4 Propulsion mechanism 4a, 4b, 4c Thruster 10 Processing section 11 Information acquisition department 12 State variable generator 13 SM Control Section 131 Switching function generator 132 SM control value generator 14 σ-NN control section 141 σ-NN 141a σ x -NN 141b σ y -NN 142 σ-NN control value generation unit 15 Operation selection section 16 Control input generation unit 17 σ′-NN control section 171 Switching function differentiation part 172 σ′-NN 172a σ′ x -NN 172b σ′ y -NN 173 σ′-NN control value generator 20 Detection unit 30 Thruster drive unit 40 Storage section 50 Input Interface 60 Communications Department 100 Marine Systems d Distance σ switching function σ Time derivative of the switching function u in Control Input v SM SM Control Value v σ σ-NN control value v σ′ σ′-NN control value x st Status Variables

Claims

1. 1. A control device for controlling a marine robot having a propulsion mechanism including a first propulsion unit that generates a thrust in a first propulsion direction and a second propulsion unit that generates a thrust in a second propulsion direction different from the first propulsion direction, comprising: an information acquisition unit that acquires position information including a target position and a current position of the marine robot; a sliding mode control unit that generates a switching function based on the position information and generates a sliding mode control value for performing sliding mode control so that the current position of the marine robot coincides with the target position; a neural network control unit that generates a neural network control value for performing neural network control so that a current position of the marine robot coincides with the target position, based on the position information and the switching function; a control input generating unit that generates a control input to be input to the propulsion mechanism based on the sliding mode control value and the neural network control value; A control device for a marine robot comprising:

2. the sliding mode control value is a switching input in sliding mode control, the neural network control value is a correction input for the switching input, The controller of claim 1 , wherein the control input is the sum of the sliding mode control value and the neural network control value.

3. The control device according to claim 2 , wherein the upper limit value of the absolute value of the neural network control value is equal to or smaller than the upper limit value of the absolute value of the sliding mode control value.

4. 4. The control device according to claim 3, wherein the upper limit of the absolute value of the neural network control value varies over time.

5. 5. The control device according to claim 4, wherein the upper limit of the absolute value of the neural network control value is made to approach the upper limit of the absolute value of the sliding mode control value when the marine robot is within a predetermined range centered on the target position.

6. The neural network control unit includes a neural network whose weights are updated based on the switching function. The control device according to claim 1 .

7. The control device according to claim 6 , wherein the neural network comprises three layers: an input layer, one hidden layer, and an output layer.

8. a second neural network control unit that generates a second neural network control value for performing neural network control so that a current position of the marine robot coincides with the target position, based on the position information and a time derivative of the switching function; The control device according to claim 1 , wherein the control input generating unit generates the control input based on the sliding mode control value, the neural network control value, and the second neural network control value.

9. the sliding mode control value is a switching input in sliding mode control, the neural network control value is a correction input for the switching input, the second neural network control value is a second corrective input for the switching input; The controller of claim 8 , wherein the control input is a sum of the sliding mode control value, the neural network control value, and the second neural network control value.

10. The control device according to claim 9 , wherein an upper limit value of the absolute value of the neural network control value and an upper limit value of the absolute value of the second neural network control value are both equal to or less than an upper limit value of the absolute value of the sliding mode control value.

11. The control system of claim 8 , wherein the second neural network control comprises a second neural network whose weighting is updated based on the time derivative of the switching function.

12. The control device according to claim 11 , wherein the second neural network is a neural network consisting of three layers: an input layer, one hidden layer, and an output layer.

13. the information acquisition unit further acquires angle information including a target angle and a current angle of the marine robot; the sliding mode control unit generates a switching function based on the angle information and generates a sliding mode control value for performing sliding mode control so that a current angle of the marine robot coincides with the target angle; The control input generation unit generates a control input to be input to the propulsion mechanism based on the sliding mode control value. The control device according to claim 1 .

14. The control device includes: An operation selection unit that selects an operation of the control input generation unit, if a difference between the target angle and the current angle of the marine robot is greater than a predetermined value, the control input generator selects to generate a control input relating to an angle of the marine robot as the control input; an operation selection unit that selects to generate a control input related to a position of the marine robot as the control input when the difference is equal to or smaller than the predetermined value. The control device of claim 13 further comprising:

15. The control device of claim 1 , wherein the first thrust direction and the second thrust direction are perpendicular to each other.

16. the marine robot is an autonomous surface vehicle; 16. The control device according to claim 15, wherein the first propulsion device of the propulsion mechanism generates thrust in a forward / rearward direction of the autonomous surface vehicle, and the second propulsion device generates thrust in a left / right direction of the autonomous surface vehicle.

17. A control device according to any one of claims 1 to 16, A detection unit for detecting the current position; a drive unit that drives the propulsion mechanism based on the control input generated by the control device; A marine robot equipped with

18. 1. A method for controlling a marine robot having a propulsion mechanism including a first propulsion unit that generates a thrust in a first propulsion direction and a second propulsion unit that generates a thrust in a second propulsion direction different from the first propulsion direction, comprising: obtaining position information including a target position and a current position of the marine robot; generating a switching function based on the position information and generating a sliding mode control value for performing sliding mode control so that the current position of the marine robot coincides with the target position; generating a neural network control value for performing neural network control so that a current position of the marine robot coincides with the target position based on the position information and the switching function; generating a control input to the propulsion mechanism based on the sliding mode control value and the neural network control value; A method for controlling a marine robot comprising:

19. A control program for a marine robot, the control program causing a computer to execute the method according to claim 18.

Citation Information

Patent Citations

  • Position-holding control method of floating body type rig and its control device

    JP2000289688A