Patent Publication Number: US-11383814-B2

Title: Boat and control method for same

Description:
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates to a boat and a control method for the boat. 
     2. Description of the Related Art 
     The smooth shore arrival of a boat requires high skill and is not easy for anyone except an experienced person. Accordingly, a device for assisting the arrival of boat at the shore is conventionally known. For example, Japanese Patent Laid-open No. 2011-128943 discloses a shore arrival assistance device for a boat entering a specific harbor. 
     The shore arrival assistance device is provided with a recording device that records the locus from the entrance into the harbor until a shore arrival target position, and boat operating instructions are issued to the boat operator so as to follow the locus when arriving at the shore. Specifically, during shore arrival, an approach range is determined from the locus, and when the position of the boat deviates from the approach range, an instruction is outputted by the shore arrival assistance device to the boat operator so as to return to the final approach starting point. 
     However, the shore arrival assistance device can only be used in a specific harbor for which a locus is recorded in the recording device. In addition, even if the boat is moved without deviating from the approach range, the boat operation in the vicinity of the shore is not easy and the boat operator requires high skill to be able to bring the boat to the shore smoothly. 
     SUMMARY OF THE INVENTION 
     Preferred embodiments of the present invention provide boats and control methods of the same to facilitate shore arrival at any harbor. 
     A boat according to a first preferred embodiment of the present invention includes a boat body, a propulsion device, a sensor, a display, an input, and a controller. The propulsion device is disposed in the boat body and generates a propulsion force to move the boat body. The sensor detects the shape of a surrounding environment of the boat body and a positional relationship between the surrounding environment and the boat body, and outputs environment information which indicates the shape of the surrounding environment and the positional relationship. The display displays an environment map which indicates the surrounding environment. The input accepts an input of a shore arrival target position of the boat body on the environment map and outputs target position information which indicates the shore arrival target position. The controller receives the environment information and the target position information. The controller is configured or programmed to determine a possible shore arrival space of the boat body in the surrounding environment based on the environment information. The controller corrects the shore arrival target position based on the possible shore arrival space. The controller is configured or programmed to generate an instruction signal to control the propulsion device so as to cause the boat body to arrive at the shore at the corrected shore arrival target position. 
     In a control method of the boat according to a second preferred embodiment of the present invention, environment information indicating the shape of the surrounding environment of the boat body and the positional relationship of the surrounding environment and the boat body is detected. An environment map which indicates the surrounding environment is displayed on a display. An input of a shore arrival target position of the boat body on the environment map is accepted. A possible shore arrival space of the boat body in the surrounding environment is determined based on the environment information. The shore arrival target position is corrected based on the possible shore arrival space. An instruction signal is generated to control the propulsion device so as to cause the boat body to arrive at the shore at the corrected shore arrival target position. 
     In a preferred embodiment of the present invention, the shape of the surrounding environment of the boat body and the positional relationship between the surrounding environment and the boat body are detected, and the environment map which indicates the surrounding environment is displayed on the display. When a user inputs the shore arrival target position of the boat body on the environment map using the input, the propulsion device is automatically controlled so as to cause the boat body to arrive at the shore at the shore arrival target position. As a result, the boat is able to arrive at the shore easily even in an unspecified harbor. 
     In addition, a possible shore arrival space of the boat body is determined in the surrounding environment based on the environment information, and the shore arrival target position is corrected based on the possible shore arrival space. As a result, even if an inexperienced user makes an error while inputting a shore arrival target position, the shore arrival target position is corrected to a suitable position. As a result, the boat is able to arrive at the shore easily even in an unspecified harbor. 
     The above and other elements, features, steps, characteristics and advantages of the present invention will become more apparent from the following detailed description of the preferred embodiments with reference to the attached drawings. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a plan view of a boat according to a preferred embodiment of the present invention. 
         FIG. 2  is a side view of the boat. 
         FIG. 3  is a side cross-sectional view illustrating a configuration of a first propulsion device of the boat. 
         FIG. 4  is a schematic view illustrating a boat operating mechanism and a control system of the boat. 
         FIG. 5  is a flow chart illustrating automatic shore arrival control processing. 
         FIG. 6  is a flow chart illustrating automatic shore arrival control processing. 
         FIG. 7  is a flow chart illustrating automatic shore arrival control processing. 
         FIG. 8  is a flow chart illustrating automatic shore arrival control processing. 
         FIG. 9  is a view illustrating an operation screen. 
         FIG. 10  is a view illustrating an input and correction method of a target position for shore arrival. 
         FIG. 11  is a view illustrating an input and correction method of a target position for shore arrival. 
         FIG. 12  is a view illustrating an automatic setting method of the target position for shore arrival. 
         FIG. 13  is a view illustrating an example of an environment map. 
         FIG. 14  is a view illustrating a determination method for an offset amount. 
         FIG. 15  is a view illustrating a determination method for a target navigation route. 
         FIG. 16  is a view illustrating a control block for determining a target velocity and angular speed. 
         FIG. 17  is a view illustrating a control block for determining a target propulsion force and steering angle. 
     
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     The following is an explanation of boats according to preferred embodiments of the present invention with reference to the drawings.  FIG. 1  is a plan view of a boat  1 . In  FIG. 1 , a portion of the configuration inside the boat  1  is depicted.  FIG. 2  is a side view of the boat  1 . In the present preferred embodiment, the boat  1  is a jet propulsion boat, for example, and is a type of boat called a jet boat or a sports boat. 
     The boat  1  includes a boat body  2 , engines  3 L and  3 R, and propulsion devices  4 L and  4 R. The boat body  2  includes a deck  11  and a hull  12 . The hull  12  is disposed below the deck  11 . An operator&#39;s seat  13  and a passenger seat  17  are disposed on the deck  11 . 
     The boat  1  includes two engines  3 L and  3 R and two propulsion devices  4 L and  4 R, for example. Specifically, the boat  1  includes a first engine  3 L and a second engine  3 R. The boat  1  includes a first propulsion device  4 L and a second propulsion device  4 R. However, the number of engines is not limited to two and there may be one engine or three or more engines. The number of propulsion devices is not limited to two and there may be one propulsion device or three or more propulsion devices. 
     The first engine  3 L and the second engine  3 R are contained in the boat body  2 . The output shaft of the first engine  3 L is connected to the first propulsion device  4 L. The output shaft of the second engine  3 R is connected to the second propulsion device  4 R. The first propulsion device  4 L is driven by the first engine  3 L to generate a propulsion force to move the boat body  2 . The second propulsion device  4 R is driven by the second engine  3 R to generate a propulsion force to move the boat body  2 . The first propulsion device  4 L and the second propulsion device  4 R are disposed side by side to the right and left of each other. 
     The first propulsion device  4 L is a propulsion device that sucks in and jets water around the boat body  2 .  FIG. 3  is a side view illustrating a configuration of the first propulsion device  4 L. A portion of the first propulsion device  4 L is illustrated as a cross-section in  FIG. 3 . 
     As illustrated in  FIG. 3 , the first propulsion device  4 L includes a first impeller shaft  21 L, a first impeller  22 L, a first impeller housing  23 L, a first nozzle  24 L, a first deflector  25 L, and a first reverse bucket  26 L. The first impeller shaft  21 L extends in the front-back direction. The front portion of the first impeller shaft  21 L is connected to the output shaft of the engine  3 L via a coupling  28 L. The rear portion of the first impeller shaft  21 L is disposed inside the first impeller housing  23 L. The first impeller housing  23 L is disposed behind a water suction portion  27 L. The first nozzle  24 L is disposed behind the first impeller housing  23 L. 
     The first impeller  22 L is attached to the rear portion of the first impeller shaft  21 L. The first impeller  22 L is disposed inside the first impeller housing  23 L. The first impeller  22 L rotates with the first impeller shaft  21 L and sucks in water from the water suction portion  27 L. The first impeller  22 L jets the sucked in water from the first nozzle  24 L to the rear. 
     The first deflector  25 L is disposed behind the first nozzle  24 L. The first reverse bucket  26 L is disposed behind the first deflector  25 L. The first deflector  25 L switches the jetting direction of the water from the first nozzle  24 L to the left and right directions. That is, by changing the bearing of the first deflector  25 L in the left and right directions, the traveling direction of the boat  1  is changed to the left or right. 
     The first reverse bucket  26 L is able to be switched between a forward travel position and a reverse travel position. While the first reverse bucket  26 L is in the forward travel position, water from the first nozzle  24 L and the first deflector  25 L is jetted toward the rear. As a result, the boat  1  travels forward. While the first reverse bucket  26 L is in the reverse travel position, the jetting direction of the water from the first nozzle  24 L and the first deflector  25 L is changed to the front. As a result, the boat  1  travels in reverse. 
     Although omitted in the drawings, the second propulsion device  4 R includes a second impeller shaft, a second impeller, a second impeller housing, a second nozzle, a second deflector, and a second reverse bucket. The second impeller shaft, the second impeller, the second impeller housing, the second nozzle, the second deflector, and the second reverse bucket are respectively configured in the same way as the first impeller shaft  21 L, the first impeller  22 L, the first impeller housing  23 L, the first nozzle  24 L, the first deflector  25 L, and the first reverse bucket  26 L, and explanations thereof are omitted. 
     Next, the boat operating mechanism and the control system of the boat  1  will be explained.  FIG. 4  is a schematic view illustrating the boat operating mechanism and the control system of the boat  1 . As illustrated in  FIG. 4 , the boat  1  includes a controller  41 . The controller  41  includes a computation device such as a CPU and a storage device such as a RAM or a ROM, and is configured or programmed so as to control the boat  1 . 
     The boat  1  includes a first engine control unit (ECU)  31 L, a first steering actuator  32 L, a first steering control unit (CU)  33 , a first shift actuator  34 L, and a first shift control unit (CU)  35 L. The above elements control the first propulsion device  4 L. Each of the first ECU  31 L, the first steering CU  33 L, and the first shift CU  35 L includes a computation device such as a CPU and a storage device such as a RAM or a ROM, and is configured or programmed so as to control the device to which they are connected. 
     The first ECU  31 L is communicatively connected to the first engine  3 L. The first ECU  31 L outputs an instruction signal to the first engine  3 L. 
     The first steering actuator  32 L is connected to the first deflector  25 L of the first propulsion device  4 L. The first steering actuator  32 L changes the steering angle of the first deflector  25 L. The first steering actuator  32 L is, for example, an electric motor. The first steering CU  33 L is communicatively connected to the first steering actuator  32 L. The first steering CU  33 L outputs an instruction signal to the first steering actuator  32 L. 
     The first shift actuator  34 L is connected to the first reverse bucket  26 L of the first propulsion device  4 L. The first shift actuator  34 L switches the position of the first reverse bucket  26 L between the forward travel position and the reverse travel position. The first shift actuator  34 L is, for example, an electric motor. The first shift CU  35 L is communicatively connected to the first shift actuator  34 L. The first shift CU  35 L outputs an instruction signal to the first shift actuator  34 L. 
     The boat  1  includes a second ECU  31 R, a second steering actuator  32 R, a second steering CU  33 R, a second shift actuator  34 R, and a second shift CU  35 R. The above elements control the second propulsion device  4 R and are configured in the same way as the above-described first ECU  31 L, the first steering actuator  32 L, the first steering CU  33 L, the first shift actuator  34 L, and the first shift CU  35 L, respectively. 
     The boat  1  includes a steering device  14 , a joystick  42 , a remote control unit  15 , a display  43 , an input  44 , a positional sensor  45 , and a sensing device  46 . The steering device  14 , the display  43 , the input  44 , the positional sensor  45 , and the sensing device  46  are communicatively connected to the controller  41 , the first and second ECUs  31 L and  31 R, the first and second steering CUs  33 L and  33 R, and the first and second shift CUs  35 L and  35 R. For example, the above devices are connected to each other over a control area network (CAN) or a CAN-FD. 
     Due to the above devices being connected to each other, the transmission of information between each of the devices is possible at the same time. Consequently, adjustment control of the steering, shifting, and throttling are performed easily. In addition, the connections of the above devices define a duplex system. As a result, stable communication is maintained. 
     The remote control unit  15  has an analog connection with the controller  41 . However, the remote control unit  15  may be connected over the CAN network or the like in the same way as the other devices. 
     The steering device  14  is disposed at the operator&#39;s seat  13 . The steering device  14  includes, for example, a steering wheel. The steering device  14  is operated to steer the boat body  2 . The steering device  14  outputs operation signals. The first steering CU  33 L and the second steering CU  33 R control the first and second steering actuators  32 L and  32 R in accordance with the operation of the steering device  14 . Consequently, the traveling direction of the boat  1  is changed to the left or right. 
     The remote control unit  15  is disposed at the operator&#39;s seat  13 . The remote control unit  15  is operated to adjust the output of the engines  3 L and  3 R, and to switch between forward and reverse travel. The remote control unit  15  includes a first throttle operating member  15 L and a second throttle operating member  15 R. The first throttle operating member  15 L and the second throttle operating member  15 R are, for example, lever-shaped members. 
     The remote control unit  15  outputs signals to indicate the operation amount and operating direction of the first and second throttle operating members  15 L and  15 R. The first ECU  31 L controls the rotation speed of the first engine  3 L in response to the operation amount of the first throttle operating member  15 L. The second ECU  31 R controls the rotation speed of the second engine  3 R in response to the operation amount of the second throttle operating member  15 R. 
     The first shift CU  35 L controls the first shift actuator  34 L in response to the operating direction of the first throttle operating member  15 L. The second shift CU  35 R controls the second shift actuator  34 R in response to the operating direction of the second throttle operating member  15 R. As a result, the travel direction of the boat  1  is switched between forward and reverse travel. 
     The joystick  42  is disposed at the operator&#39;s seat  13 . The joystick  42  is operated to cause the boat body  2  to move forward and reverse and left and right. In addition, the joystick  42  is operated to change the bearing of the boat body  2 . The operation signals from the joystick  42  are inputted to the controller  41 . The controller  41  controls the first and second engines  3 L and  3 R, the first and second steering actuators  32 L and  32 R, and the first and second shift actuators  34 L and  34 R. As a result, the boat  1  moves forward and reverse and to the left and right. Alternatively, the boat  1  is turned to change the bearing. 
     The display  43  and the input  44  are disposed at the operator&#39;s seat  13 . The display  43  displays information pertaining to the boat  1 . The display  43  receives display information from the controller  41 . The display  43  displays information in response to the display signals from the controller  41 . 
     The input  44  accepts inputs pertaining to the boat  1 . The input  44  outputs input signals indicating the inputted information. The input  44  may be integral with the display  43  and include a touch panel. Alternatively, the input  44  may be separate from the display  43 . 
     The positional sensor  45  detects the current position and the current bearing of the boat body  2  and outputs position information indicating the current position and the current bearing. The positional sensor  45  is, for example, an inertial navigation device and includes a global navigation satellite system (GNSS) device  47  and an inertial measurement unit (IMU)  48 . The GNSS device  47  detects the current position and the boat speed of the boat body  2 . The IMU  48  detects the angular speed and the acceleration of the boat body  2 . In addition, the current bearing of the boat body  2  is detected by the GNSS device  47  and the IMU  48 . The current bearing may be detected by a plurality of GNSS devices, a magnetic bearing sensor, or an electronic compass. 
     The sensing device  46  detects the shapes of objects surrounding the boat body  2  and the positional relationship between the objects and the boat body  2 . The positional relationship between the objects and the boat body  2  includes the distance between the objects and the boat body  2  and the direction in which the object is positioned with respect to the boat body  2 . Objects surrounding the boat body  2  include, for example, piers, wharves, other boats, obstructions, or the like. 
     The sensing device  46  includes one type of sensor among a radar, a laser, a camera or an ultrasonic sensor, or includes a plurality of types of sensors. The sensing device  46  may include a plurality of radars, a plurality of lasers, a plurality of cameras, or a plurality of ultrasonic sensors. The radar includes a millimeter wave radar, a microwave radar, or another radar of a different wavelength. The sensing device  46  detects and outputs environment information during a below-described automatic shore arrival control. 
     The environment information indicates the shape of the shore arrival location and the positional relationship between the shore arrival location and the boat body  2 . The environment information may indicate the shore arrival location or other boats surrounding the boat body  2 . The environment information may indicate the shore arrival location or structures or obstructions surrounding the boat body  2 . The environment information is indicated, for example, by coordinates of point groups indicating the position of an object detected by the sensing device  46 . Alternatively, the environment information may be the shape and position of an object captured by image recognition. 
     As illustrated in  FIG. 4 , the sensing device  46  may be connected to the CAN or the CAN-FD through a programmable logic device (PLD) such as a field-programmable gate array (FPGA)  49  or the like. Alternatively, the sensing device  46  may be connected to the CAN or the CAN-FD through a digital signal processor (DSP). 
     The boat  1  includes an automatic shore arrival function. The automatic shore arrival function automatically enables the boat body  2  to arrive at a shore arrival position such as a pier without operations by the operator. Hereinbelow, the automatic shore arrival control executed by the automatic shore arrival function will be explained in detail.  FIGS. 5 to 8  are flow charts of a process of the automatic shore arrival control executed by the controller  41 . 
     As illustrated in  FIG. 5 , the controller  41  obtains current position information from the positional sensor  45  in step S 101 . The controller  41  obtains the current position and the current bearing of the boat body  2  in real time from the position information. In step S 102 , the controller  41  evaluates whether the sensing device  46  has captured a sensing object. When an object is captured by the sensing device  46 , the processing advances to step S 103 . In step S 103 , the controller  41  obtains the environment information from the sensing device  46 . 
     In step S 104 , the controller  41  or the FPGA  49  recognizes a shore arrival location, another boat, an obstruction, or a surrounding structure based on the environment information. The shore arrival location is, for example, a pier. The controller  41  or the FPGA  49  recognizes another boat or an obstruction based on the shape of the object detected by the sensing device  46 . For example, the controller  41  or the FPGA  49  recognizes the shore arrival location and the surrounding structure based on the height and length of the object detected by the sensing device  46 . 
     In step S 105 , the controller  41  displays an environment map indicating the surrounding environment on the display  43 .  FIG. 9  is a view illustrating an operation screen  61  of the automatic shore arrival function. As illustrated in  FIG. 9 , the operation screen  61  is displayed by a GUI on the display  43 . The operation screen  61  includes an environment map  62  and a plurality of operating keys. By pressing the plurality of operating keys, the inputs of the various operations of the automatic shore arrival function are accepted by the input  44 . 
     The shapes of the shore arrival location, the obstructions, and the surrounding structures recognized by the controller  41  are displayed on the environment map  62 . While not illustrated in  FIG. 9 , other boats recognized by the controller  41  are also displayed on the environment map  62 . The controller  41  displays the current position and the current bearing of the boat body  2  obtained from the position information on the environment map  62  with an icon  71  of the boat body  2 . 
     The environment map  62  is updated in real time due to the repeated detection of the position information by the positional sensor  45  and the repeated detection of the environment information by the sensing device  46 . The plurality of operating keys include a scale changing key  63 . By operating the scale changing key  63 , the displayed scale of the environment map  62  is enlarged or reduced. 
       FIG. 6  is a flow chart illustrating processing to set a target position of the shore arrival. As illustrated in step S 201  in  FIG. 6 , the controller  41  determines a possible shore arrival space. The controller  41  determines the possible shore arrival space based on the environment information. As illustrated in  FIG. 10 , the controller  41  determines a position along the object recognized as the shore arrival location, as a possible shore arrival space SP 1 . For example, the controller  41  detects the disposition of the pier from the environment information and determines a predetermined range along the pier as the possible shore arrival space SP 1 . 
     Moreover, the controller  41  detects the dispositions of the shore arrival location and of another boat docked at the shore arrival location from the environment information, and determines the possible shore arrival space SP 1  from the dispositions of the shore arrival location and the other boat. As illustrated in  FIG. 10 , when two other boats  210  and  202  are docked with an interval therebetween, the controller  41  calculates a distance dl between the two other boats  201  and  202 . The controller  41  then determines that the space between the two other boats  201  and  202  is able to serve as the possible shore arrival space SP 1  when the distance dl between the two other boats  201  and  202  is greater than a threshold which indicates a space in which docking by the host boat is possible. 
     In step S 202 , the controller  41  displays the possible shore arrival position on the environment map  62 . The possible shore arrival position may be the above-described possible shore arrival space SP 1 . Alternatively, the possible shore arrival position may be a specified position inside the possible shore arrival space SP 1 . The environment map  62  on which the possible shore arrival position is displayed may be a bird&#39;s-eye view as illustrated in  FIG. 9 . Alternatively, an image captured by a camera may be displayed as the environment map  62 . In this case, the possible shore arrival position may be displayed on the image captured by the camera. 
     In step S 203 , the controller  41  evaluates whether there is an input of the target position for the shore arrival. Here, the input of the target position on the environment map  62  is accepted by the input  44 . The operator touches the possible shore arrival position on the environment map  62 , such that the touched position is inputted as the target position. The input  44  outputs target position information which indicates the target position to the controller  41 . 
     In step S 204 , the controller  41  evaluates whether the inputted target position is within a suitable range SP 2 . When the inputted target position is within the suitable range SP 2 , the processing advances to step S 205 . 
     In step S 205 , the controller  41  corrects the target position. The controller  41  corrects the target position based on the possible shore arrival space SP 1 . For example, as illustrated in  FIG. 10 , when an inputted target position IP 1  is outside of the possible shore arrival space SP 1 , the controller  41  corrects a target position Tp so that the target position is within the possible shore arrival space SP 1 . When an inputted target position IP 2  is inside the possible shore arrival space SP 1 , the controller  41  corrects the target position Tp so that the target position becomes the center position of the possible shore arrival space SP 1 . 
     As illustrated in  FIG. 9 , the operation screen  61  includes a target position setting key  64 . When the target position setting key  64  is pressed, the operator is able to manually input any position without being limited to the space SP 1 . Therefore, the touched position is received as the target position by the input  44 . In this case, when the position spaced away from the shore arrival location in a direction perpendicular or substantially perpendicular to the direction along the shore arrival location is inputted as the target position, the controller  41  may correct the target position to a position along the shore arrival location. At this time, as illustrated in  FIG. 11 , the target position Tp is preferably corrected to a position closest to the inputted target position IP 3  within the position along the shore arrival location. 
     When there is no input of the target position in step S 203 , the processing advances to step S 206 . For example, when a touch of the environment map  62  has not been detected for a predetermined time period, the processing advances to step S 206 . 
     In step S 206 , the controller  41  automatically sets the target position. Here, as illustrated in  FIG. 12 , the controller  41  sets the closest position in the current bow direction among the positions along the shore arrival location, as the target position. 
     In step S 207 , the controller  41  displays the target position and the target bearing with an icon  71 ′ on the environment map  62 . Here, as illustrated in  FIG. 9 , the controller  41  sets the target position corrected in step S 205  or the target position automatically set in step S 206  as the target position, and displays the icon  71 ′ which indicates the host boat in the position on the environment map  62 . The icon  71 ′ is displayed in the target bearing determined by the controller  41  in the initial state. The controller  41  determines the target bearing of the boat body  2  based on the shape of the shore arrival location, the current bearing, the distance to the target position, or the like. For example, when the shore arrival location is a pier, the controller  41  determines a direction along the edge of the shore arrival location as the target bearing. Alternatively, the controller  41  may determine a direction that defines a predetermined angle with the direction along the edge of the shore arrival location, as the target bearing. Moreover, the controller  41  may change the target bearing in response to the current bearing or the distance to the target position. 
     As illustrated in  FIG. 9 , the operation screen  61  includes a first bearing changing key  65  and a second bearing changing key  66 . The target bearing is changed by a predetermined angle (for example, about 90° at a time) each time the first bearing changing key  65  is pressed. However, the unit angle for the changing is not limited to 90° and may be smaller than 90° or greater than 90°. The second bearing changing key  66  is rotatably provided on the operation screen  61 . The target bearing is changed in response to the rotation of the second bearing changing key  66 . The bearing of the icon  71 ′ of the host boat on the environment screen is changed in response to the change of the target bearing. 
     When the inputted target position is not within a suitable range SP 2  in step S 204 , the target position is not corrected and the inputted target position is set as the target position. For example, as illustrated in  FIG. 10 , the suitable range SP 2  is a range that includes the possible shore arrival space SP 1 . When the inputted target position IP 4  is outside of the suitable range SP 2 , the target position is not corrected. Therefore, when the inputted target position IP 4  is spaced away from the possible shore arrival space SP 1  by a predetermined distance or more, the inputted target position is not corrected and is set as the target position. The size of the suitable range SP 2  is set to a value that is able to be determined when a position spaced away from the possible shore arrival space SP 1  is intentionally touched without the target position input being shifted. 
     As illustrated in  FIG. 9 , the operation screen  61  includes an automatic shore arrival mode start button  67  and an automatic shore arrival mode stop button  68 . As indicated above, after the target position has been set, the automatic shore arrival control is started when the operator presses the automatic shore arrival mode start button  67 . When the automatic shore arrival control is started, the controller  41  generates instruction signals to control the propulsion devices  4 L and  4 R so that the boat body  2  arrives at the target position. Hereinbelow, the processing to start and end the automatic shore arrival control will be explained. 
     As illustrated in  FIG. 7 , in step S 301 , the controller  41  evaluates whether the automatic shore arrival control has started. When the automatic shore arrival mode start button  67  is pressed, the processing advances to step S 302 . In step S 302 , the controller  41  evaluates whether the boat  1  has reached a second target position. 
     As illustrated in  FIG. 13 , with the target position and the target bearing determined in above-described steps S 201 -S 207  being established as the first target position TP 1 , the second target position TP 2  is a position spaced away from the first target position TP 1  by a predetermined offset amount on the current position side of the boat  1 . In the automatic shore arrival control, the controller  41  firstly controls the propulsion devices  4 L and  4 R so that the boat  1  reaches the second target position TP 2 , and then controls the propulsion devices  4 L and  4 R so that the boat  1  reaches the first target position TP 1 . The second target position TP 2  is explained below. 
     When the boat  1  has not reached the second target position TP 2  in step S 302 , the processing advances to step S 303 . In step S 303 , the controller  41  evaluates whether a position error and a bearing error are equal to or less than first thresholds. The position error is the distance between the current position of the boat body  2  and the second target position TP 2 . The bearing error is the difference between the current bearing of the boat body  2  and the target bearing. When the distance between the current position of the boat body  2  and the second target position TP 2  is equal to or less than a first position threshold, and the difference between the current bearing of the boat body  2  and the target bearing is less than a first bearing threshold, the controller  41  determines that the position error and the bearing error are equal to or less than the first thresholds. When the position error and the bearing error are not equal to or less than the first thresholds, the processing advances to step S 304 . 
     In step S 304 , the controller  41  determines the second target position TP 2 . As illustrated in  FIG. 14 , the controller  41  calculates the bearing difference between the current bearing and the target bearing, and determines an offset amount L of the first target position TP 1  in response to the bearing difference. The controller  41  determines a position spaced away by the offset amount from the first target position TP 1  on the current position side as the second target position TP 2 . That is, the controller  41  determines a position spaced away by the offset amount L from the first target position TP 1  in the direction perpendicular or substantially perpendicular to the edge of the shore arrival location, as the second target position TP 2 . Specifically, when the shore arrival location is a pier, the controller  41  uses the following equation 1 to determine the offset amount.
 
 L=a ×|Heading_err/90|+ b+W   Equation 1
 
     L is the offset amount. a is a predetermined coefficient and is determined based on the distance between the center of gravity and the bow of the boat body  2 . Heading_err is the bearing difference between the current bearing and the first target bearing as illustrated in  FIG. 14 . However when the Heading_err is equal to or greater than 90°, the Heading_err is set to 90°. b is a margin corresponding to the boat body  2  with respect to the target bearing and the direction along the edge of the shore arrival location. W is the width of another boat. 
     That is, the controller  41  calculates the bearing difference between the current bearing and the target bearing and calculates the margin that corresponds to the boat body  2 . The controller  41  determines the offset amount L of the first target position TP 1  in response to the bearing difference and the margin that corresponds to the boat body  2 . 
     Therefore, the controller  41  increases the offset amount in response to the size of the bearing difference Heading_err. The controller  41  determines the offset amount based on the distance between the center of gravity and the bow of the boat body  2 . The controller  41  determines the offset amount so as to be greater than the width W of another boat docked at the shore arrival location. The offset amount is calculated and updated in real time. 
     As illustrated in  FIG. 13 , when an obstruction X 1  is present between the first target position TP 1  and the current position, the controller  41  determines the second target position TP 2  so as to avoid the obstruction. Specifically, as illustrated in  FIG. 15 , a grid is provided on the environment map  62 . The controller  41  determines the second target position TP 2  by excluding the grid within a predetermined range from the obstruction X 1 . 
     In addition, the controller  41  determines a target navigation route Ph 1  to the second target position TP 2 . The controller  41  establishes the shortest route to the second target position TP 2  within the route that passes through the set grid, as the target navigation route Ph 1 . At this time, when an obstruction is present, the controller  41  determines the target navigation route Ph 1  by excluding the grid within the predetermined range from the object recognized as the obstruction. The determined target navigation route Ph 1  is displayed on the environment map  62 . The controller  41  calculates and updates the target navigation route Ph 1  in real time. 
     The disposition of the grid is set so that a predetermined number of grids are disposed between the current position of the boat body  2  and the target position. Therefore, when the distance between the boat body  2  and the target position is changed, the disposition of the grid is changed. 
     As shown in step S 305  in  FIG. 7 , the controller  41  changes the target position from the first target position TP 1  to the second target position TP 2 . 
     When the position error and the bearing error are equal to or less than the first thresholds in step S 303 , the processing advances to step S 306 . That is, the processing advances to step S 306  when the current position is near the second target position TP 2  and the current bearing is near the target bearing without the boat  1  having completely reached the second target position TP 2 . 
     In step S 306 , the controller  41  determines a target speed and a target angular speed from the target position and the target bearing. 
     When the boat  1  has not yet entered a predetermined range from the second target position TP 2  (“No” in S 303 ), the controller  41  sets the second target position TP 2  as the target position and determines the target speed and the target angular speed. When the boat  1  has entered the predetermined range from the second target position TP 2  (“Yes” in S 302  or S 303 ), the controller  41  sets the first target position TP 1  as the target position and determines the target speed and angular speed. 
     As illustrated in  FIG. 16 , the controller  41  calculates a relative error Pb_err from the target position and the current position and from the target bearing and the current bearing, and determines a target speed and angular speed Vc based on the relative error Pb_err. The controller  41  reduces the target speed and angular speed Vc in response to a reduction in the relative error Pb_err. That is, the controller  41  reduces the target speed as the current position of the boat body  2  approaches the target position. The controller  41  reduces the target angular speed as the current bearing of the boat body  2  approaches the target bearing. When the distance between the current position of the boat body  2  and the target position enters a predetermined range that includes zero, the controller  41  sets the target speed to zero. Moreover, when the difference between the current position of the boat body  2  and the target position enters the predetermined range that includes zero, the controller  41  sets the target angular speed to zero. 
     The relative error Pb_err includes a first position error Pb_err_x, a second position error Pb_err_y, and a bearing error Pb_err_θ. The first position error Pb_err_x is the distance between the target position and the current position in the front-back direction of the boat body  2 . The second position error Pb_err_y is the distance between the target position and the current position in the left-right direction of the boat body  2 . The bearing error Pb_err_θ is the difference between the target bearing and the current bearing. 
     The target speed and angular speed Vc includes a first target speed Vc_x, a second target speed Vc_y, and a target angular speed ωc. The first target speed Vc_x is the target speed in the front-back direction of the boat body  2 . The second target speed Vc_y is the target speed in the left-right direction of the boat body  2 . The target angular speed ωc is the target angular speed of the boat body  2 . 
     The controller  41  stores first target speed information Ivcx, second target speed information Ivcy, and target angular speed information Iωc. The first target speed information Ivcx defines the relationship between the first position error Pb_err_x and the first target speed Vc_x. The second target speed information Ivcy defines the relationship between the second position error Pb_err_y and the second target speed Vc_y. The target angular speed information Iωc defines the relationship between the bearing error Pb_err_θ and the target angular speed ωc. The above sets of information Ivcx to Iωc may be represented, for example, by maps, tables, numerical calculations, or equations, etc. 
     The controller  41  determines the first target speed Vc_x from the first position error Pb_err_x based on the first target speed information Ivcx. The controller  41  determines the second target speed Vc_y from the second position error Pb_err_y based on the second target speed information Ivcy. The controller  41  determines the target angular speed ωc based on the target angular speed information Iωc. 
     Alternatively, the target speed and angular speed Vc may be determined with the following equation 2. Any of the first position error Pb_err_x, the second position error Pb_err_y, the bearing error Pb_err_θ, the actual speed Vx in the front-back direction of the boat body  2 , the actual speed Vy in the left-right direction, and the actual angular speed ω may be used as inputs. 
     
       
         
           
             
               
                 
                   Vc 
                   = 
                   
                     
                       ( 
                       
                         
                           
                             Vc_x 
                           
                         
                         
                           
                             Vc_y 
                           
                         
                         
                           
                             
                               ω 
                               ⁢ 
                               
                                   
                               
                               ⁢ 
                               c 
                             
                           
                         
                       
                       ) 
                     
                     = 
                     
                       f 
                       ⁡ 
                       
                         ( 
                         
                           
                             Pb_err 
                             ⁢ 
                             _x 
                           
                           , 
                           
                             Pb_err 
                             ⁢ 
                             _y 
                           
                           , 
                           
                             Pb_err 
                             ⁢ 
                             _θ 
                           
                           , 
                           Vx 
                           , 
                           Vy 
                           , 
                           ω 
                         
                         ) 
                       
                     
                   
                 
               
               
                 
                   Equation 
                   ⁢ 
                   
                       
                   
                   ⁢ 
                   2 
                 
               
             
           
         
       
     
     As illustrated in step S 401  in  FIG. 8 , the controller  41  evaluates whether the distance from the current position to the target position is equal to or less than a predetermined threshold Dt 1 . When the distance to the target position is not equal to or less than the predetermined threshold Dt 1 , the processing advances to step S 402 . In step S 402 , the boat body  2  is controlled using an approach control. In the approach control, the controller  41  determines a target propulsion force and a target steering angle of the propulsion devices  4 L and  4 R based on the first target speed Vc_x and the target angular speed ωc. 
     When the distance from the current position to the target position is equal to or less than the predetermined threshold Dt 1  in step S 401 , the processing advances to step S 403 . In step S 403 , the boat body  2  is controlled using an adjust control. In the adjust control, the target propulsion force and the target steering angle of the propulsion devices  4 L and  4 R is determined based on the first target speed Vc_x, the second target speed Vc_y, and the target angular speed ωc. 
     In this way, when the distance to the target position is greater than the predetermined threshold Dt 1 , the target position and the target bearing are reached promptly under the approach control. When the distance to the target position is equal to or less than the predetermined threshold Dt 1 , the boat body  2  is able to be brought to the target position with high accuracy under the adjust control. 
     In step S 402  and step S 403 , the controller  41  calculates a force caused by an outside disturbance and determines the target propulsion force and the target steering angle of the propulsion devices  4 L and  4 R in consideration of the force of the outside disturbance. The force of the outside disturbance includes, for example, the tidal current or the wind. Fluctuations in the resistance to the boat body caused by weight fluctuations and the like are included in the calculated results. Specifically, the controller  41  determines the target propulsion force and the target steering angle based on the force of the outside disturbance, the target speed, and the target angular speed.  FIG. 17  is a control block diagram for determining the target propulsion force and the target steering angle. 
     As illustrated in  FIG. 17 , the controller  41  includes an outside disturbance observer  411  and a target propulsion force and steering angle computing unit  412 . The outside disturbance observer  411  calculates an outside disturbance force w based on the actual speed and angular speed V of the boat body  2 , the actual engine rotation speed n 1  of the first engine  3 L, the actual engine rotation speed n 2  of the second engine  3 R, the actual steering angle δ 1  of the first propulsion device  4 L, and the actual steering angle δ 2  of the second propulsion device  4 R. The actual speed and angular speed V of the boat body  2  includes the actual speed Vx in the front-back direction of the boat body  2 , the actual speed Vy in the left-right direction, and the actual angular speed ω. 
     The target propulsion force and steering angle computing unit  412  calculates a target propulsion force based on the target speed and angular speed Vc, the actual speed and angular speed V of the boat body  2 , and the outside disturbance force w. The controller  41  estimates the outside disturbance force w using the following equation 3.
 
 {dot over (V)}=f   model ( Vx,Vy,ω,n 1, n 2,δ1,δ2)
 
 W={dot over (V)}−{dot over ({circumflex over (V)})}   Equation 3
 
     f model  is a motion equation of the boat body  2 . V is the time derivative of V. V is an estimation using the motion equation of the boat body  2 . 
     The controller  41  uses the motion equation represented in the following equation 4 to calculate a target propulsion force based on, for example, the Lyapunov theory of stability.
 
 {dot over (V)}=f   model ( Vx,Vy,ω,n 1, n 2,δ1,δ2)+ w   Equation 4
 
     The target propulsion force and steering angle computing unit  412  determines a target rotation speed nc 1  of the first engine  3 L and the target rotation speed nc 2  of the second engine  3 R from the target propulsion force. The controller  41  generates an instruction signal corresponding to the target rotation speed nc 1  of the first engine  3 L and outputs the instruction signal to the first ECU  31 L. The controller  41  generates an instruction signal corresponding to the target rotation speed nc 2  of the second engine  3 R and outputs the instruction signal to the second ECU  31 R. 
     Moreover, the target propulsion force and steering angle computing unit  412  determines a target steering angle δc 1  of the first propulsion device  4 L and a target steering angle δc 2  of the second propulsion device  4 R based on the target speed and angular speed Vc, the actual speed and angular speed V of the boat body  2 , and the outside disturbance force w. The controller  41  generates an instruction signal corresponding to the target steering angle δc 1  of the first propulsion device  4 L and outputs the instruction signal to the first steering CU  33 L. The controller  41  generates an instruction signal corresponding to the target steering angle δc 2  of the second propulsion device  4 R and outputs the instruction signal to the second steering CU  33 R. 
     As illustrated in step S 404  in  FIG. 8 , the controller  41  evaluates whether the position error and the bearing error are equal to or less than second thresholds. Specifically, when the distance between the current position of the boat body  2  and the target position is equal to or less than a second position threshold, and the difference between the current bearing of the boat body  2  and the target bearing is equal to or less than a second bearing threshold, the controller  41  determines that the position error and the bearing error are equal to or less than the second thresholds. The second position threshold is set to a value less than the above-described offset amount. 
     When the position error and the bearing error are equal to or less than the second thresholds, the controller  41  ends the automatic shore arrival control. Also when the automatic shore arrival mode stop key  68  in  FIG. 9  is pressed, the controller  41  ends the automatic shore arrival control. 
     In the boat  1  according to the preferred embodiments explained above, the target speed of the boat body  2  to reach the target position is determined in accordance with the distance between the current position of the boat body  2  and the target position. A target propulsion force F is determined based on the target speed of the boat body  2 , and the propulsion devices  4 L and  4 R are controlled so as to generate the target propulsion force F. As a result, the propulsion devices  4 L and  4 R are automatically controlled so as to move the boat body  2  toward the target position. As a result, the boat  1  is able to arrive at the shore easily even in an unspecified harbor. 
     In addition, the force caused by an outside disturbance is calculated and the target propulsion force is determined by using the force caused by the outside disturbance. As a result, even if a force caused by an outside disturbance acts against the direction toward the target position, a steady-state deviation in the control of the propulsion force is significantly reduced or prevented. Alternatively, overshooting of the control of the propulsion force is significantly reduced prevented even when a force caused by an outside disturbance acts in the direction toward the target position. As a result, the boat body  2  is able to arrive at the target position with high accuracy. 
     Although preferred embodiments of the present invention have been described so far, the present invention is not limited to the above preferred embodiments and various modifications may be made within the scope of the invention. 
     The boat  1  is not limited to a jet propulsion boat and may be another type of boat. For example, the boat  1  may be a boat provided with outboard engines that include propellers driven by the engines  3 L and  3 R. That is, the propulsion devices  4 L and  4 R are not limited to jet propulsion devices and may be another type of propulsion device such as an outboard motor. 
     The automatic shore arrival control may be executed in a predetermined low-speed region. For example, the automatic shore arrival control may be executed when the boat speed is a predetermined set speed or less. 
     The correction method for the target position of the shore arrival may be changed. The method for determining the second target position may be changed. That is, the method for determining the offset amount may be changed. Alternatively, the setting of the second target position may be omitted. The method for estimating the outside disturbance may be changed. Alternatively, the estimation of the outside disturbance may be omitted. 
     The variables in the motion equation of the boat body  2  may be changed or other variables may be added. For example, while the state variables of the motion equation of the boat body  2  in the above preferred embodiments are the actual speed Vx in the front-back direction, the actual speed Vy in the left-right direction, and the actual angular speed ω of the boat body  2 , the variables may be changed or other variables may be added. For example, the state variables may be variables indicating the position and attitude of the boat body  2  such as the position in the front-back direction, the position in the left-right direction, the bearing, the pitch angle, or the roll angle of the boat body  2 . While the variables of the motion equation in the above preferred embodiments are the actual engine rotation speeds n 1  and n 2 , and the actual steering angles δ 1  and δ 2 , the variables may be increased or reduced in response to the number of propulsion devices. 
     According to preferred embodiments of the present invention, the boat is able to arrive at the shore easily even in an unspecified harbor. 
     While preferred embodiments of the present invention have been described above, it is to be understood that variations and modifications will be apparent to those skilled in the art without departing from the scope and spirit of the present invention. The scope of the present invention, therefore, is to be determined solely by the following claims.