Station keeping methods

Abstract
A method for maintaining a marine vessel propelled by a marine propulsion device in a selected position includes determining a current global position of the marine vessel and receiving a signal command to maintain the current global position. The current global position is stored as a target global position in response to receiving the signal command. A subsequent global position of the marine vessel is determined and a position error difference between the subsequent global position and the target global position is determined. The method includes determining marine vessel movements required to minimize the position error difference, and causing the marine propulsion device to produce a thrust having a magnitude, a direction, and an angle calculated to result in achievement of the required marine vessel movements. At least one of timing and frequency of discontinuity of thrust production is controlled while the position error difference is minimized.
Description
FIELD

The present disclosure relates to automatic positioning systems and methods for marine vessels.


BACKGROUND

U.S. Pat. No. 6,273,771, which is hereby incorporated by reference herein, discloses a control system for a marine vessel that incorporates a marine propulsion system that can be attached to a marine vessel and connected in signal communication with a serial communication bus and a controller. A plurality of input devices and output devices are also connected in signal communication with the communication bus and a bus access manager, such as a CAN Kingdom network, is connected in signal communication with the controller to regulate the incorporation of additional devices to the plurality of devices in signal communication with the bus whereby the controller is connected in signal communication with each of the plurality of devices on the communication bus. The input and output devices can each transmit messages to the serial communication bus for receipt by other devices.


U.S. Pat. No. 7,305,928, which is hereby incorporated by reference herein, discloses a vessel positioning system that maneuvers a marine vessel in such a way that the vessel maintains its global position and heading in accordance with a desired position and heading selected by the operator of the marine vessel. When used in conjunction with a joystick, the operator of the marine vessel can place the system in a station keeping enabled mode and the system then maintains the desired position obtained upon the initial change in the joystick from an active mode to an inactive mode. In this way, the operator can selectively maneuver the marine vessel manually and, when the joystick is released, the vessel will maintain the position in which it was at the instant the operator stopped maneuvering it with the joystick.


U.S. Pat. No. 8,478,464, which is hereby incorporated by reference herein, discloses systems and methods for orienting a marine vessel to enhance available thrust in a station keeping mode. A control device having a memory and a programmable circuit is programmed to control operation of a plurality of marine propulsion devices to maintain orientation of a marine vessel in a selected global position. The control device is programmed to calculate a direction of a resultant thrust vector associated with the plurality of marine propulsion devices that is necessary to maintain the vessel in the selected global position. The control device is programmed to control operation of the plurality of marine propulsion devices to change the actual heading of the marine vessel to align the actual heading with the thrust vector.


Other patents describing various station keeping features and related system and method improvements include: U.S. Pat. Nos. 7,267,068; 8,050,630; 8,417,399; 8,694,248; 8,807,059; 8,924,054; 9,132,903; 9,377,780; and unpublished U.S. patent application Ser. No. 14/484,702, filed Sep. 12, 2014; and Ser. No. 14/807,217, filed Jul. 23, 2015. Each of these patents and applications is hereby incorporated by reference herein.


SUMMARY

This Summary is provided to introduce a selection of concepts that are further described below in the Detailed Description. This Summary is not intended to identify key or essential features of the claimed subject matter, nor is it intended to be used as an aid in limiting the scope of the claimed subject matter.


One example of the present disclosure is of a method for maintaining a marine vessel in a selected position, the marine vessel being propelled by a marine propulsion device. The method includes determining a current global position of the marine vessel and, with a control module, receiving a signal command to maintain the current global position of the marine vessel. The method also includes storing the current global position of the marine vessel as a target global position in response to receiving the signal command. The method next includes determining a subsequent global position of the marine vessel and calculating a position error difference between the subsequent global position and the target global position. The method includes determining marine vessel movements that are required to minimize the position error difference, and, with the control module, causing the marine propulsion device to produce a thrust having a magnitude, a direction, and an angle calculated to result in achievement of the required marine vessel movements. The method also includes, with the control module, controlling at least one of a timing and a frequency of discontinuity of thrust production by the marine propulsion device while attempting to minimize the position error difference.


Another example of the present disclosure is of a method for maintaining a marine vessel in a selected position, the marine vessel being propelled by a marine propulsion device. The method comprises determining a current global position of the marine vessel; determining a current heading of the marine vessel; with a control module, receiving a signal command to maintain the current global position and the current heading of the marine vessel; and storing the current global position and the current heading of the marine vessel as a target global position and a target heading in response to receiving the signal command. The method also includes determining a subsequent global position of the marine vessel; determining a subsequent heading of the marine vessel; calculating a position error difference between the subsequent global position and the target global position; and calculating a heading error difference between the subsequent heading and the target heading. The method next includes determining marine vessel movements that are required to minimize the position error difference and the heading error difference, and, with the control module, causing the marine propulsion device to produce a thrust having a magnitude, a direction, and an angle calculated to result in achievement of the required marine vessel movements. The method also includes controlling, with the control module, at least one of a timing and a frequency of discontinuity of thrust production by the marine propulsion device while attempting to minimize the position error difference and the heading error difference.





BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure is described with reference to the following Figures. The same numbers are used throughout the Figures to reference like features and like components.



FIG. 1 is a schematic for purposes of illustrating a method for maintaining a marine vessel at a target global position and a target heading.



FIG. 2 illustrates an input-output map for use with a station keeping method of the present disclosure.



FIG. 3 is a chart showing fore/aft position error of a marine vessel with respect to its velocity.



FIG. 4 illustrates one example of a station keeping method according to the present disclosure.



FIG. 5 illustrates another example of a station keeping method according to the present disclosure.





DETAILED DESCRIPTION

In the present description, certain terms have been used for brevity, clarity and understanding. No unnecessary limitations are to be inferred therefrom beyond the requirement of the prior art because such terms are used for descriptive purposes only and are intended to be broadly construed.


Referring to FIG. 1, in a station keeping mode, a marine vessel 10 can be maintained in a single global position (defined by latitude and longitude) and at a predetermined heading by way of an algorithm that controls the vessel's propulsion device(s) 12, 14 to counteract the effects of wind, waves, current, etc. that would tend to move the vessel 10 off this location and/or to a new heading. In essence, the propulsion devices 12, 14 are controlled to maintain the vessel 10 at a virtual anchor point. A control module 16 that controls thrust and angular orientation of the propulsion devices 12, 14 acts as a joystick and calculates left/right, fore/aft, and yaw commands required to drive the vessel's position error and heading error to zero. The control module 16 can control one or more propulsion devices 12, 14 to do so, which may be located at the rear of the vessel 10 such as with outboards, jet drives, or stern drives, under the vessel 10 such as with pod drives, or at the front of the vessel 10 such as with thrusters, which may also or alternatively be located at the rear or sides of the vessel 10. Each marine propulsion device 12, 14 is associated with a respective power transmission mechanism 13, 15. The power transmission mechanisms 13, 15 may each comprise a single shaft, gear, or clutch, or may comprise a series of shafts, gears, clutches, etc. that transmit power from a prime mover, such as an engine or a motor located in the propulsion device or aboard the vessel 10, to a rotating thrust-producing device, such as a propeller, impeller, propulsor, or the like. The power transmission mechanisms 13, 15 may be transmissions that are shiftable to forward, neutral, and reverse positions, or may be designed such that they are capable only of rotating or not rotating, for example if they are engaged or not engaged with the prime mover or if the prime mover itself is turned on or off.


An example of the inputs to the control module's calculations while the vessel 10 in station keeping mode is shown in FIG. 1. In this example, the actual global position (AP) of a preselected point on the vessel 10, as determined by a GPS receiver, is not equal to a setpoint target global position (TP), and thus the control module 16 will calculate a course over ground (COG) that the vessel 10 must travel to reach the target global position TP. Additionally, a setpoint target heading (TH) is 27 degrees from north, while the actual heading (AH) read from a compass or an inertial measurement unit (IMU) is 35.8 degrees. The control module 16 will therefore determine that a counterclockwise yaw movement (arrow CCW) of 8.8 degrees is required to return the vessel 10 to the target heading TH.


The control module 16 determines when and how much corrective action to take according to a three-dimensional (left/right, fore/aft, and yaw) proportional, integral, and derivative (PID) control algorithm performed by a feedback controller 17 of the control module 16. The integral term allows the control system to reject constant and slowly varying disturbances (e.g., current) while maintaining near zero position error. The proportional and derivative terms handle the quickly varying disturbances. The integral term is also considered to have memory and can take time to increase or decrease, especially if the disturbance forces grow. The PID feedback controller 17 computes a desired force in the forward/back and left/right directions with reference to the marine vessel 10, along with a desired yaw moment relative to the marine vessel 10, in order to null the error elements. The computed force and moment elements are then transmitted to the vessel maneuvering system, which delivers the requested forces and moments by positioning the independently steerable propulsion devices 12, 14, controlling the power provided to the propellers, impellers, or propulsors of each device, and controlling the thrust vector directions of both devices. Such automatic correction of the position and heading of the marine vessel 10 can be achieved according to the principles described in U.S. Pat. No. 7,305,928, which was incorporated by reference herein above.


The present disclosure contemplates a number of ways in which the above-described station keeping functionality can be expanded upon. In one example, the station keeping algorithm is modified to prevent or at least reduce the likelihood of overshoot of the target global position TP and/or target heading TH when making a correction. A need for this type of modification arose with the advent of the application of station keeping methods to vessels equipped with stern drives or outboard motors. When station keeping is implemented on vessel propelled by a pod drive, a trolling valve can be used to allow slip between the engine and the propeller of the pod drive. Such slip allows for very small increments of thrust, thereby enabling the vessel 10 to be moved by very small distances upon engagement of the transmission. However, stern drives are not generally equipped with trolling valves, and thus the thrust increment from neutral to in-gear is larger. With an outboard, the thrust increment is even more pronounced, especially if the outboard has dual propellers or a high pitch propeller. For instance, if a vessel propelled by outboard motors is put into gear for even one second, the vessel may travel fifteen feet before naturally coming to rest. Thus, if the vessel was fewer than fifteen feet from the target global position, putting the propulsion devices in gear would result in overshooting the target.


Note that the control module 16 can cause a discontinuity in thrust production by the marine propulsion devices 12, 14 by turning the prime mover(s) on or off, shifting the propulsion devices' transmissions to different positions, or otherwise engaging or disengaging the shafts holding the propellers, impellers, or propulsors from the prime mover(s). In order to address the above-mentioned overshoot, the present inventors have developed an algorithm that utilizes an input-output map such as a look up table, chart, or similar, that dictates when to create a discontinuity in thrust production, such as when to engage or disengage the propulsion device's propeller, impeller, or propulsor. In one example, the control module 16 creates a discontinuity in thrust production by disengaging the propulsion devices' propellers, after which the vessel 10 will be allowed to coast to the target orientation. The determination regarding when to discontinue thrust production can be made based on position error (target global position minus actual global position), position error velocity, and/or vessel velocity. This allows the length of time that the propeller, impeller, or propulsor is rotating to be scaled down based on how far the vessel 10 is from the setpoint and/or velocity.


For example, FIG. 2 shows a chart of vessel velocity on the horizontal axis versus a value called “CoastΔX” on the vertical axis. As vessel velocity increases, the distance away from the target (“CoastΔX”) at which the control module 16 will command the propulsion devices 12, 14 to discontinue thrust production increases, as shown by the curve 18. This is because the greater the velocity, the longer it will take for the vessel 10 to coast to a stop due to momentum. The look-up table or map can be made adaptable, and may learn the specific characteristics of a particular vessel as it glides through the water. The CoastΔX curve 18 could be modified or adapted such that after each iteration of the algorithm described herein, it more accurately predicts how far the vessel 10 will move after the propulsion devices 12, 14 are no longer producing thrust, such as for example after they are shifted out of forward gear. For example, if the vessel 10 continually overshoots the target global position while coasting, the input-output map may re-define the relationship between velocity and CoastΔX as that shown by the adapted curve 20. Note that if position error or position error velocity is instead used as the input variable, those values would be on the horizontal axis of the table. A similar input-output table can be used for yaw control as for position control, but with the vertical axis being measured in angular units and the horizontal axis being measured in angular velocity, angular position error, or angular position error velocity.


Referring to FIG. 3, consider the following example: the vessel 10 is moving at a velocity of four mph toward the target global position TP. The measured velocity is used to determine the CoastΔX from the curve 18 (see FIG. 2). Once the actual measured distance from the target global position TP is equal to the CoastΔX, the control module 16 will reduce the throttles and shift the transmissions to neutral. This happens well before reaching the target global position (here, as shown at location 22, just under five meters from the target global position) such that the vessel's velocity will naturally decrease as shown by curve 24, and the vessel 10 will arrive exactly at the target global position (zero meters of fore/aft error) without overshoot. The CoastΔX acts therefore as a feed forward term that is applied prior to control by the PID control algorithm, such that the PID algorithm does not instruct further correction after the position error difference reaches the CoastΔX value, which would cause overshoot. This is in comparison to current methods, in which the vessel overshoots the target position and then attempts to correct itself by reversing due to PID-only control, which may result in constant overshoot of the target global position in both the forward and reverse directions, as shown by the curve 26 and the arrows 28 and 30.


This method can be very useful when the vessel 10 is operating in calm, no wind conditions. In contrast, because wind and waves apply a stopping force, in high wind or strong wave conditions, the elemental forces may be enough to balance the in-gear thrust supplied by the propulsion devices 12, 14.


In another example, the life of the power transmission mechanisms 13, 15 of the propulsion device(s) 12, 14 can be increased and NVH can be optimized by implementing an adaptive gain in the PID control. Currently, station keeping systems have a user input device that allows a user to control the “response” of the station keeping controller, i.e., how aggressively it will maintain a given heading and global position. The adaptive gain strategy of the second embodiment of the present disclosure is instead based on limiting the number of discontinuities of thrust production, such as transmission shifts or thrust on/off cycles, per given unit of time. For instance, the response (control gain) of the system can be adjusted to keep the number of discontinuities per minute around a specified number. This would allow the system to maintain good position control under heavy sea conditions (where shifting is less likely) and would be able to provide low NVH under calm sea conditions. Additionally, the system would be prevented from overshooting the target and reversing repeatedly while attempting to achieve the target.


Returning to FIG. 1, the control module 16 is programmable and includes a processing system and a storage system. The control module 16 can be located anywhere on the vessel 10 and/or located remote from the vessel 10 and can communicate with various components of the vessel 10 via a peripheral interface and wired and/or wireless links, as will be explained further herein below. Although FIG. 1 shows one control module 16, the vessel 10 can include more than one control module. Portions of the method disclosed herein below can be carried out by a single control module or by several separate control modules. For example, the system can have a control module located at or near a helm of the vessel 10 and can also have control module(s) located at or near the propulsion devices 12, 14. If more than one control module is provided, each can control operation of a specific device or sub-system on the vessel 10.


In some examples, the control module 16 may include a computing system that includes a processing system, storage system, software, and input/output (I/O) interface for communicating with peripheral devices. The systems may be implemented in hardware and/or software that carries out a programmed set of instructions. For example, the processing system loads and executes software from the storage system, such as software programmed with a station keeping method, which directs the processing system to operate as described herein below in further detail. The computing system may include one or more processors, which may be communicatively connected. The processing system can comprise a microprocessor, including a control unit and a processing unit, and other circuitry, such as semiconductor hardware logic, that retrieves and executes software from the storage system. The processing system can be implemented within a single processing device but can also be distributed across multiple processing devices or sub-systems that cooperate according to existing program instructions. The processing system can include one or many software modules comprising sets of computer executable instructions for carrying out various functions as described herein.


As used herein, the term “control module” may refer to, be part of, or include an application specific integrated circuit (ASIC); an electronic circuit; a combinational logic circuit; a field programmable gate array (FPGA); a processor (shared, dedicated, or group) that executes code; other suitable components that provide the described functionality; or a combination of some or all of the above, such as in a system-on-chip (SoC). A control module may include memory (shared, dedicated, or group) that stores code executed by the processing system. The term “code” may include software, firmware, and/or microcode, and may refer to programs, routines, functions, classes, and/or objects. The term “shared” means that some or all code from multiple modules may be executed using a single (shared) processor. In addition, some or all code from multiple control modules may be stored by a single (shared) memory. The term “group” means that some or all code from a single control module may be executed using a group of processors. In addition, some or all code from a single control module may be stored using a group of memories.


The storage system can comprise any storage media readable by the processing system and capable of storing software. The storage system can include volatile and non-volatile, removable and non-removable media implemented in any method or technology for storage of information, such as computer-readable instructions, data structures, software modules, or other data. The storage system can be implemented as a single storage device or across multiple storage devices or sub-systems. The storage system can include additional elements, such as a memory controller capable of communicating with the processing system. Non-limiting examples of storage media include random access memory, read-only memory, magnetic discs, optical discs, flash memory, virtual and non-virtual memory, various types of magnetic storage devices, or any other medium which can be used to store the desired information and that may be accessed by an instruction execution system. The storage media can be a transitory storage media or a non-transitory storage media such as a non-transitory tangible computer readable medium.


The control module 16 communicates with one or more components on the vessel 10 via the I/O interface and a communication link, which can be a wired or wireless link. In one example, the communication link is a controller area network (CAN) bus, but other types of links could be used.


The provided description of the control module 16 is conceptual and should be interpreted generally, as those skilled in the art will recognize many ways to implement such a control module. These include implementation using a digital microprocessor that receives input signals and performs a calculation using the input signals to produce the corresponding output signals or actuator control signals. Also, analog computers may be used, which comprise circuit elements arranged to produce the desired outputs. Furthermore, look-up tables containing predetermined or calibrated data points may be stored in any fashion to provide the desired output corresponding to a given input signal.


Turning to FIG. 4, a method for maintaining a marine vessel 10 in a selected position, the marine vessel 10 being propelled by a marine propulsion device 12 and/or 14, will be described. As shown at 400, the method includes determining a current global position of the marine vessel 10. This may be done using a GPS receiver in communication with the control module 16. As shown at 402, the method includes receiving, with the control module 16, a signal command to maintain the current global position of the marine vessel 10. This can be done, for example, by selecting a station keeping mode of the system by way of a button, touch screen, or similar input device 19 (FIG. 1), or by manipulating other user input devices in a particular programmed sequence. As shown at 404, the method includes storing the current global position of the marine vessel 10 as a target global position TP in response to receiving the signal command. The current global position can be stored as the target global position TP in a memory of the control module 16 or located elsewhere. As shown at 406, the method next includes determining a subsequent global position of the marine vessel 10. This may be the actual position AP of the vessel 10 as determined by the GPS receiver after the vessel 10 has drifted from the previously current target global position TP due to wind, waves, current, etc. As shown at 408, the method also includes calculating a position error difference between the subsequent global position AP and the target global position TP. For instance, an error calculator section of the control module 16 may resolve these values into forward-reverse, left-right, and heading changes in reference to clockwise and counterclockwise movement of the marine vessel 10.


As shown at 410, the method includes determining marine vessel movements that are required to minimize the position error difference. These movements can be expressed both by a distance and a direction (i.e., a COG) the vessel 10 must travel to reach the target global position TP. In one example, the control module 16 determines the required marine vessel movements with the feedback controller 17. The method then includes, as shown at 412, with the control module 16, causing the marine propulsion device 12 and/or 14 to produce a thrust having a magnitude, a direction, and an angle calculated to result in achievement of the required marine vessel movements. This can be done using a maneuvering algorithm such as that described in U.S. Pat. No. 7,305,928, which was incorporated by reference herein above. In one example, the method may include causing the marine propulsion device 12, 14 to produce the calculated thrust only if the position error difference exceeds a predetermined position error threshold difference. This will ensure that correction is not made if the position error is so low that any quantum of thrust at all will cause the vessel 10 to overshoot the target global position TP. For example, the predetermined position error threshold could be equal to the distance the vessel 10 would coast if the transmissions of the marine propulsion devices 12, 14 were placed in gear with a minimum quantum of thrust and then immediately placed out of gear, or if the propeller, impeller, or propulsor were otherwise rotated by a minimum quantum of power and then stopped. Such a threshold may be helpful given that GPS devices have accuracy that can respond to even one-third of a meter of position error difference. Additionally, according to the present disclosure, as shown at 414, the method includes controlling, with the control module 16, at least one of a timing and a frequency of discontinuity of thrust production by the marine propulsion device 12 and/or 14 while attempting to minimize the position error difference.


As described herein above with respect to FIGS. 2 and 3, in response to the marine vessel 10 reaching a specified threshold distance (CoastΔX) from the target global position TP while the marine propulsion device 12, 14 is producing the calculated thrust, the method further comprises discontinuing producing thrust such that the marine vessel 10 thereafter coasts toward the target global position TP. In one example, the method comprises shifting the transmissions of the propulsion devices 12, 14 into neutral. The method may also include prohibiting the propulsion devices 12, 14 from producing thrust once the marine vessel 10 is within the specified distance CoastΔX of the target global position TP. For example, the method may comprise preventing the transmissions from shifting out of neutral. The method may include determining the specified distance CoastΔX based on one or more of the following: the position error difference, a rate of change of the position error difference, or a velocity of the marine vessel (see FIG. 2). If more than one of these variables is used, cascaded input-output maps or look-up tables with more than one input or more than one curve from which to select may be used. Also as noted herein above, in response to the marine vessel 10 overshooting the target global position TP while coasting, the method further comprises adapting the specified distance CoastΔX for retrieval during a future iteration of the method. See adapted curve 20 in FIG. 2. By the same principle, if the vessel continually undershoots the target, the curve can be adapted such that each velocity corresponds to a lesser value of CoastΔX.


Also as described herein above, the method may further comprise limiting the frequency of discontinuity of thrust production to a target number of discontinuities per unit time while the marine propulsion device 12, 14 is producing the calculated thrust. For example, the control module 16 may limit the number of discontinuities to somewhere in the range of twenty to thirty discontinuities per minute. In one example, in which the power transmission mechanisms 13, 15 include F-N-R transmissions, the method comprises limiting the frequency of shifting of the transmissions to a target number of shifts per unit time, and in response to the transmissions shifting by greater than the target number of shifts per unit time, the method further comprises prohibiting the transmissions from shifting for a remainder of the time unit (e.g. for the remainder of the minute). In another example, the method further comprises adapting a gain of the feedback controller 17 based on a difference between the target number of discontinuities (e.g., shifts) per unit time and a measured number of discontinuities (e.g., shifts) per unit time. In the example in which the number of discontinuities is a number of shifts of a transmission, the measured number of shifts can be detected by a gear position sensor in communication with the control module 16. Other measured discontinuities can be on/off cycles of the prime mover or changes between rotating and non-rotating states of the propellers, impellers, or propulsors.


With reference to FIG. 5, another example of a method for maintaining a marine vessel 10 in a selected position, the marine vessel 10 being propelled by a marine propulsion device 12 and/or 14, will be described. As shown at 500, the method includes determining a current global position of the marine vessel 10, such as by using a GPS receiver. As shown at 502, the method includes determining a current heading of the marine vessel 10, such as by using a compass or an IMU. As shown at 504, the method includes receiving, with a control module 16, a signal command to maintain the current global position and the current heading of the marine vessel 10, such as from an input device 19. As shown at 506, the method includes storing the current global position and the current heading of the marine vessel 10 as a target global position TP and a target heading TH in response to receiving the signal command. As shown at 508, the method includes determining a subsequent global position AP of the marine vessel 10. The method also includes determining a subsequent heading AH of the marine vessel 10, as shown at 510. As shown at 512, the method includes calculating a position error difference between the subsequent global position AP and the target global position TP. As shown at 514, the method includes calculating a heading error difference between the subsequent heading AH and the target heading TH.


The method also includes, as shown at 516, determining marine vessel movements that are required to minimize the position error difference and the heading error difference. As shown at 518, the method includes, with the control module 16, causing the marine propulsion device 12 and/or 14 to produce a thrust having a magnitude, a direction, and an angle calculated to result in achievement of the required marine vessel movements. Not only may the method include causing the marine propulsion device 12, 14 to produce the calculated thrust only if the position error difference exceeds a predetermined position error threshold difference, the method may also include causing the marine propulsion device 12, 14 to produce the calculated thrust only if the heading error difference exceeds a predetermined heading error threshold difference.


As shown at 520, the method includes controlling, with the control module 16, at least one of a timing and a frequency of discontinuity of thrust production by one or both of the marine propulsion devices 12, 14 while attempting to minimize the position error difference and the heading error difference. For example, in response to the marine vessel 10 reaching a specified threshold angle from the target heading TH while the marine propulsion devices 12, 14 are producing the calculated thrust, the method further comprises discontinuing thrust production, such as by shifting one or both of the transmissions into neutral, such that momentum thereafter rotates the marine vessel 10 toward the target heading TH. The method may also include determining the specified threshold angle based on one or more of the following: the heading error difference, a rate of change of the heading error difference, and an angular velocity of the marine vessel 10. The method may also include, in response to the marine vessel 10 reaching a specified threshold distance from the target global position TP while the marine propulsion devices 12, 14 are producing the calculated thrust, discontinuing thrust production by one or both of the marine propulsion devices 12, 14 such that the marine vessel 10 thereafter coasts toward the target global position TP. If two marine propulsion devices are provided, the method may include using one of the marine propulsion devices 12 or 14 to continue to provide forward, reverse, or side-to-side movement even after the propulsion device that has been causing the vessel 10 to yaw is shifted into neutral. Similarly, the control module 16 may choose to continue to provide thrust to rotate the vessel 10 using one of the propulsion devices 12 or 14 even after the other propulsion device, which had been causing the vessel 10 to move fore/aft or left/right, is placed in neutral. In still other examples, the control module 16 may cause both propulsion devices 12, 14 to change their magnitude, direction, and/or angle of thrust so as to cease providing translation or rotation, while still providing the other of rotation or translation, depending on which threshold was met and which was not.


Note that in each of the above examples, one or both of the propulsion devices 12, 14 and their respective power transmission mechanisms 13, 15 can be controlled. The propulsion devices 12, 14 and their respective power transmission mechanisms 13, 15 can also be controlled independently of one another, such that their magnitudes, directions, and/or angles of thrust are different from one another. Note also that only one propulsion device 12 or 14 need be provided on the vessel 10. Although the present disclosure describes the benefits of using the present methods with outboard motors or stern drives, the methods could be used with other types of propulsion devices as well.


In the above description, certain terms have been used for brevity, clarity, and understanding. No unnecessary limitations are to be inferred therefrom beyond the requirement of the prior art because such terms are used for descriptive purposes and are intended to be broadly construed. The different methods described herein may be used alone or in combination with other systems or methods. It is to be expected that various equivalents, alternatives and modifications are possible within the scope of the present claims.

Claims
  • 1. A method for maintaining a marine vessel in a selected position, the marine vessel being propelled by a marine propulsion device, the method comprising: determining a current global position of the marine vessel;with a control module, receiving a signal command to maintain the current global position of the marine vessel;storing the current global position of the marine vessel as a target global position in response to receiving the signal command;determining a subsequent global position of the marine vessel;calculating a position error difference between the subsequent global position and the target global position;determining marine vessel movements that are required to minimize the position error difference;with the control module, causing the marine propulsion device to produce a thrust having a magnitude, a direction, and an angle calculated to result in achievement of the required marine vessel movements; andwith the control module, controlling at least one of a timing and a frequency of discontinuity of thrust production by the marine propulsion device while attempting to minimize the position error difference;wherein controlling the frequency of discontinuity of thrust production comprises limiting the frequency of discontinuity of thrust production to a specified target number of discontinuities per unit time while the marine propulsion device is producing the calculated thrust; andwherein controlling the timing of discontinuity of thrust production comprises, in response to the marine vessel reaching a specified threshold distance from the target global position while the marine propulsion device is producing the calculated thrust, discontinuing thrust production such that the marine vessel thereafter coasts toward the target global position.
  • 2. The method of claim 1, wherein in response to a transmission of the marine propulsion device shifting by greater than the specified target number of discontinuities per unit time, the method further comprises prohibiting the transmission from shifting for a remainder of the time unit.
  • 3. The method of claim 1, further comprising determining the required marine vessel movements with a feedback controller and adapting a gain of the feedback controller based on a difference between the specified target number of discontinuities per unit time and a measured number of discontinuities per unit time.
  • 4. The method of claim 1, further comprising prohibiting the marine propulsion device from producing thrust once the marine vessel is within the specified threshold distance of the target global position.
  • 5. The method of claim 1, further comprising determining the specified threshold distance based on one or more of the following: the position error difference, a rate of change of the position error difference, and a velocity of the marine vessel.
  • 6. The method of claim 1, wherein in response to the marine vessel overshooting the target global position while coasting, the method further comprises adapting the specified threshold distance for retrieval during a future iteration of the method.
  • 7. The method of claim 1, further comprising causing the marine propulsion device to produce the calculated thrust only if the position error difference exceeds a predetermined position error threshold difference.
  • 8. The method of claim 1, further comprising: determining a current heading of the marine vessel;storing the current heading of the marine vessel as a target heading in response to receiving the signal command;determining a subsequent heading of the marine vessel;with the control module, calculating a heading error difference between the subsequent heading and the target heading;with the control module, determining marine vessel movements that are required to minimize the position error difference and the heading error difference;with the control module, causing the marine propulsion device to produce a thrust having a magnitude, a direction, and an angle calculated to result in achievement of the marine vessel movements that are required to minimize the position error difference and the heading error difference; andwith the control module, controlling at least one of the timing and the frequency of discontinuity of thrust production by the marine propulsion device while attempting to minimize the position error difference and the heading error difference.
  • 9. A method for maintaining a marine vessel in a selected position, the marine vessel being propelled by a marine propulsion device, the method comprising: determining a current global position of the marine vessel;determining a current heading of the marine vessel;with a control module, receiving a signal command to maintain the current global position and the current heading of the marine vessel;storing the current global position and the current heading of the marine vessel as a target global position and a target heading, respectively, in response to receiving the signal command;determining a subsequent global position of the marine vessel;determining a subsequent heading of the marine vessel;calculating a position error difference between the subsequent global position and the target global position;calculating a heading error difference between the subsequent heading and the target heading;determining marine vessel movements that are required to minimize the position error difference and the heading error difference;with the control module, causing the marine propulsion device to produce a thrust having a magnitude, a direction, and an angle calculated to result in achievement of the required marine vessel movements; andwith the control module, controlling at least one of a timing and a frequency of discontinuity of thrust production by the marine propulsion device while attempting to minimize the position error difference and the heading error difference;wherein controlling the frequency of discontinuity of thrust production comprises limiting the frequency of discontinuity of thrust production to a specified target number of discontinuities per unit time while the marine propulsion device is producing the calculated thrust; andwherein controlling the timing of discontinuity of thrust production comprises, in response to the marine vessel reaching a specified threshold distance from the target global position while the marine propulsion device is producing the calculated thrust, discontinuing thrust production such that the marine vessel thereafter coasts toward the target global position.
  • 10. The method of claim 9, wherein in response to a transmission of the marine propulsion device shifting by greater than the specified target number of discontinuities per unit time, the method further comprises prohibiting the transmission from shifting for a remainder of the time unit.
  • 11. The method of claim 9, further comprising determining the required marine vessel movements with a feedback controller and adapting a gain of the feedback controller based on a difference between the specified target number of discontinuities per unit time and a measured number of discontinuities per unit time.
  • 12. The method of claim 9, further comprising determining the specified threshold distance based on one or more of the following: the position error difference, a rate of change of the position error difference, and a velocity of the marine vessel.
  • 13. The method of claim 12, wherein in response to the marine vessel overshooting the target global position while coasting, the method further comprises adapting the specified threshold distance for retrieval during a future iteration of the method.
  • 14. The method of claim 9, wherein in response to the marine vessel reaching a specified threshold angle from the target heading while the marine propulsion device is producing the calculated thrust, the method further comprises discontinuing thrust production such that momentum thereafter rotates the marine vessel toward the target heading; and wherein the method further comprises determining the specified threshold angle based on one or more of the following: the heading error difference, a rate of change of the heading error difference, and an angular velocity of the marine vessel.
  • 15. The method of claim 9, further comprising causing the marine propulsion device to produce the calculated thrust only if the position error difference exceeds a predetermined position error threshold difference.
  • 16. The method of claim 15, further comprising causing the marine propulsion device to produce the calculated thrust only if the heading error difference exceeds a predetermined heading error threshold difference.
CROSS-REFERENCE TO RELATED APPLICATION

The present application claims the benefit of U.S. Provisional Application Ser. No. 62/301,887, filed on Mar. 1, 2016, which is hereby incorporated by reference.

US Referenced Citations (140)
Number Name Date Kind
2360361 Louis Oct 1944 A
3145683 Kolb et al. Aug 1964 A
3177348 Daniloff Apr 1965 A
3187704 Shatto, Jr. et al. Jun 1965 A
3688252 Thompson Aug 1972 A
3715571 Braddon Feb 1973 A
3771483 Spencer Nov 1973 A
4253149 Cunningham et al. Feb 1981 A
4257718 Rosa et al. Mar 1981 A
4428052 Robinson et al. Jan 1984 A
4513378 Antkowiak Apr 1985 A
4769773 Shatto, Jr. Sep 1988 A
4939661 Barker et al. Jul 1990 A
4975709 Koike Dec 1990 A
5172324 Knight Dec 1992 A
5202835 Knight Apr 1993 A
5331558 Hossfield et al. Jul 1994 A
5362263 Petty Nov 1994 A
5386368 Knight Jan 1995 A
5390125 Sennott et al. Feb 1995 A
5491636 Robertson et al. Feb 1996 A
5736962 Tendler Apr 1998 A
5884213 Carlson Mar 1999 A
6059226 Cotton et al. May 2000 A
6092007 Cotton et al. Jul 2000 A
6230642 McKenney et al. May 2001 B1
6234853 Lanyi et al. May 2001 B1
6273771 Buckley et al. Aug 2001 B1
6308651 McKenney et al. Oct 2001 B2
6377889 Soest Apr 2002 B1
6446003 Green et al. Sep 2002 B1
6485341 Lanyi et al. Nov 2002 B1
6604479 McKenney et al. Aug 2003 B2
6611737 El-Tahan et al. Aug 2003 B1
6678589 Robertson et al. Jan 2004 B2
6848382 Bekker Feb 2005 B1
6995527 DePasqua et al. Feb 2006 B2
7140315 Okuyama Nov 2006 B2
7267068 Bradley et al. Sep 2007 B2
7268703 Kabel et al. Sep 2007 B1
7305928 Bradley et al. Dec 2007 B2
7366593 Fujimoto et al. Apr 2008 B2
7398742 Gonring Jul 2008 B1
7416458 Suemori et al. Aug 2008 B2
7467595 Lanyi et al. Dec 2008 B1
7476134 Fell et al. Jan 2009 B1
7538511 Samek May 2009 B2
7561886 Gonring et al. Jul 2009 B1
7577526 Kim et al. Aug 2009 B2
7630798 Mossman et al. Dec 2009 B2
7727036 Poorman et al. Jun 2010 B1
8050630 Arbuckle Nov 2011 B1
8082100 Grace et al. Dec 2011 B2
8145370 Borrett Mar 2012 B2
8145371 Rae et al. Mar 2012 B2
8150621 Phillips et al. Apr 2012 B1
8155811 Noffsinger et al. Apr 2012 B2
8215252 Chun Jul 2012 B1
8265812 Pease Sep 2012 B2
8326472 Igarashi et al. Dec 2012 B2
8417399 Arbuckle et al. Apr 2013 B2
8478464 Arbuckle et al. Jul 2013 B2
8480445 Morvillo Jul 2013 B2
8510028 Grace et al. Aug 2013 B2
8515660 Grace et al. Aug 2013 B2
8515661 Grace et al. Aug 2013 B2
8527192 Grace et al. Sep 2013 B2
8543324 Grace et al. Sep 2013 B2
8645012 Salmon et al. Feb 2014 B2
8694248 Arbuckle et al. Apr 2014 B1
8761976 Salmon et al. Jun 2014 B2
8777681 McNalley et al. Jul 2014 B1
8807059 Samples et al. Aug 2014 B1
8808041 Hine et al. Aug 2014 B2
8831868 Grace et al. Sep 2014 B2
8924054 Arbuckle et al. Dec 2014 B1
9039468 Arbuckle et al. May 2015 B1
9110467 Yuet et al. Aug 2015 B2
9132900 Salmon et al. Sep 2015 B2
9132903 Gable et al. Sep 2015 B1
9162743 Grace et al. Oct 2015 B2
9248898 Kirchhoff et al. Feb 2016 B1
9359057 Andrasko et al. Jun 2016 B1
9377780 Arbuckle et al. Jun 2016 B1
9676464 Johnson et al. Jun 2017 B2
9927520 Ward et al. Mar 2018 B1
9952595 Arbuckle et al. Apr 2018 B2
20030191562 Robertson et al. Oct 2003 A1
20040221787 McKenney et al. Nov 2004 A1
20050164569 Kaji Jul 2005 A1
20050170713 Okuyama Aug 2005 A1
20060089794 Depasqua Apr 2006 A1
20060116796 Fossen et al. Jun 2006 A1
20070017426 Kaji et al. Jan 2007 A1
20070089660 Bradley et al. Apr 2007 A1
20070162207 Shimo et al. Jul 2007 A1
20070178779 Takada et al. Aug 2007 A1
20070203623 Saunders et al. Aug 2007 A1
20070233389 Stephens Oct 2007 A1
20080027597 Barrett Jan 2008 A1
20090037040 Salmon et al. Feb 2009 A1
20090171520 Kaji Jul 2009 A1
20090276148 Ardvisson Nov 2009 A1
20100023192 Rae et al. Jan 2010 A1
20100070124 Yeager et al. Mar 2010 A1
20100109944 Whitehead et al. May 2010 A1
20110153126 Arbuckle Jun 2011 A1
20110288714 Flohr et al. Nov 2011 A1
20120129410 Tyers May 2012 A1
20120130570 Pease May 2012 A1
20120248259 Page et al. Oct 2012 A1
20130080044 Tyers et al. Mar 2013 A1
20130297104 Tyers et al. Nov 2013 A1
20140114509 Venables et al. Apr 2014 A1
20140362661 Muijzert et al. Dec 2014 A1
20150089427 Akuzawa Mar 2015 A1
20150277442 Ballou Oct 2015 A1
20150321740 Bradley et al. Nov 2015 A1
20150346730 Stephens et al. Dec 2015 A1
20160016651 Anderson et al. Jan 2016 A1
20160039500 Heyring et al. Feb 2016 A1
20160061980 Tonchia et al. Mar 2016 A1
20160101838 Kojima Apr 2016 A1
20160125739 Stewart et al. May 2016 A1
20160246300 Langford-Wood Aug 2016 A1
20160252907 Parkinson Sep 2016 A1
20160299507 Shah et al. Oct 2016 A1
20160334792 Jopling Nov 2016 A1
20170205828 Estabrook Jul 2017 A1
20170205829 Tyers Jul 2017 A1
20170210449 Frisbie et al. Jul 2017 A1
20170255200 Arbuckle et al. Sep 2017 A1
20170277189 Johnson Sep 2017 A1
20170349257 Hara et al. Dec 2017 A1
20170365175 Harnett Dec 2017 A1
20180015994 Kishimoto et al. Jan 2018 A1
20180106619 Johnson et al. Apr 2018 A1
20180284815 Cui et al. Oct 2018 A1
20190286169 Cui et al. Sep 2019 A1
20190359300 Johnson et al. Nov 2019 A1
Foreign Referenced Citations (32)
Number Date Country
816962 Jul 1998 EP
2161542 Mar 2010 EP
2952994 Dec 2015 EP
1173442 Dec 1969 GB
58061097 Apr 1983 JP
05-203638 Aug 1993 JP
7223591 Aug 1995 JP
2926533 Jul 1997 JP
11-129978 May 1999 JP
2001-287697 Oct 2001 JP
2002-178990 Jun 2002 JP
2002173091 Jun 2002 JP
2003276677 Oct 2003 JP
200442884 Feb 2004 JP
2004355105 Dec 2004 JP
2005-200004 Jul 2005 JP
2006-137309 Jun 2006 JP
2006137309 Jun 2006 JP
2009-227035 Oct 2009 JP
2009-241738 Oct 2009 JP
2009-538782 Nov 2009 JP
2011128943 Jun 2011 JP
5042906 Jul 2012 JP
2012528417 Nov 2012 JP
5226355 Jul 2013 JP
2014065495 Apr 2014 JP
200546034 Feb 2015 JP
9205505 Apr 1992 WO
2006058400 Jun 2006 WO
2014033457 Mar 2014 WO
2016104031 Jun 2016 WO
WO 2017095235 Jun 2017 WO
Non-Patent Literature Citations (7)
Entry
Arbuckle et al., “Station Keeping Methods,” Unpublished U.S. Appl. No. 15/445,031, filed Feb. 28, 2017.
Arbuckle et al., “Station Keeping Methods,” Unpublished U.S. Appl. No. 15/887,372, filed Feb. 2, 2018.
Gonring, “System and Method for Controlling Course of a Marine Vessel,” Unpublished U.S. Appl. No. 15/415,095, filed Jan. 25, 2017.
Arbuckle et al., “Methods for Positioning Marine Vessels,” Unpublished U.S. Appl. No. 16/028,019, filed Jul. 5, 2018.
Ward et al., “Method and System for Close Proximity Collision Detection”, Unpublished U.S. Appl. No. 14/807,217, filed Jul. 23, 2015.
Poorman et al., “Multilayer Control System and Method for Controlling Movement of a Marine Vessel”, Unpublished U.S. Appl. No. 11/965,583, filed Dec. 27, 2007.
Andrasko et al., “System and Method for Controlling Handling of a Marine Vessel”, Unpublished U.S. Appl. No. 14/484,702, filed Sep. 12, 2014.
Provisional Applications (1)
Number Date Country
62301887 Mar 2016 US