Force feedback control of ship input device
The force feedback system in marine vessels progressively increases resistance to provide nuanced control, addressing operator fatigue and navigational errors, ensuring safer and more efficient vessel operations.
Patent Information
- Application Number
- JP2025069656
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-05-03
- Filing Date
- 2025-04-21
- Publication Date
- 2025-11-14
AI Technical Summary
Traditional force feedback mechanisms in marine vessel control systems lack nuanced responses, leading to operator fatigue and increased navigational errors, highlighting the need for improved force feedback control that enhances safety and efficiency.
A force feedback system that progressively increases resistance as the input device approaches a virtual stop position, providing subtle control and allowing manual override when necessary, with customizable feedback based on environmental, vessel, and operator conditions.
Enhances operator safety and accuracy by reducing fatigue, improving situational awareness, and allowing intuitive control adjustments, thereby reducing the risk of navigation errors.
Smart Images

Figure 2025169896000001_ABST
Abstract
Description
[Technical Field]
[0001] The present disclosure relates generally to navigation control in marine vessels. In particular aspects, the present disclosure relates to force feedback control of marine vessel input devices. The present disclosure may be applied to marine vessels such as pleasure boats, ships, cruise ships, fishing boats, yachts, and ferries, among other vehicle types. Although the present disclosure may be described with respect to particular marine vessels, the present disclosure is not limited to any particular marine vessel. [Background technology]
[0002] Ship operations often require precise control, but traditional force feedback mechanisms in control systems can be limited in providing the nuanced responses necessary for complex operations. The lack of intuitive and adaptive feedback can lead to operator fatigue and an increased risk of navigational errors, highlighting a clear need for improved approaches to force feedback control that enhance safety and efficiency in marine navigation.
[0003] It is with these realizations and others in mind that the inventors herein propose one or more improvements over the prior art of force feedback control of vessel input devices. Summary of the Invention
[0004] The inventors recognized that providing more sophisticated feedback to the operator could improve operability and safety. This led to the design of a force feedback system that provides a gradual response to operator input, enhancing control and reducing the likelihood of input error. With this system, the operator better recognizes when they are approaching the limits of the control system without relying on hard physical stops, which can be uncomfortable and less useful. Furthermore, the system can not only guide the operator through feedback that progressively reflects the position of the control, but can also recognize when the operator intentionally intends to exceed the normal operating range, enabling an override mechanism that respects the operator's judgment in critical situations.
[0005] Thus, in a first aspect of the present disclosure, there is provided a computer system for force feedback control of an input device of a marine vessel, the computer system comprising a processing circuit configured to control a force feedback unit to progressively increase force feedback applied to the input device in response to manual operation of the input device towards a virtual stop position, the virtual stop position being defined between an equilibrium position and a mechanical end position of a range of motion of the input device, the virtual stop position being a set point defined by software that functions as an intermediate trigger for the input device, the force feedback being controlled to progressively increase until the input device is located at the virtual stop position and reaches a maximum force feedback value, and the processing circuit is further configured to control the force feedback unit to decrease the force feedback applied to the input device at the virtual stop position in response to the force of manual operation of the input device exceeding the maximum force feedback value.
[0006] A first aspect of the present disclosure may seek to improve force feedback provided to an operator operating a marine vessel. Technical advantages may include reduced operator fatigue, increased accuracy of control inputs, and more cooperative interaction between the operator and the control system, resulting in smoother and safer marine vessel operation.
[0007] In some examples, including at least one preferred example, optionally, the range of motion of the input device includes a plurality of virtual stop positions, and the force feedback is controlled to progressively increase until a maximum force feedback value is reached when the input device is located at any one of the plurality of virtual stop positions, and the force feedback is controlled to decrease at any one of the plurality of virtual stop positions in response to the manual manipulation force exceeding the maximum force feedback value. Technical advantages may include providing an operator with graduated tactile feedback for more precise control as the operator navigates through different stages of movement of the input device.
[0008] In some examples, including at least one preferred example, the processing circuitry is optionally configured to set the maximum force feedback value differently for each of a plurality of virtual stop positions, with the maximum force feedback value being set higher for virtual stop positions closer to the machine end positions than for virtual stop positions closer to the equilibrium position. Technical advantages may include enabling a customized force feedback experience that becomes progressively more pronounced as the operator approaches the limits of the control system, enhancing the operator's situational awareness.
[0009] In some examples, including at least one preferred example, the processing circuitry is optionally configured to set the maximum force feedback value at approximately the same value for each of the plurality of virtual stop positions. Technical advantages may include consistent force feedback response at different positions within the range of motion of the input device.
[0010] In some examples, including at least one preferred example, optionally, the gradual increase in force feedback comprises a linear function of the displacement of the input device relative to the virtual stop position. Technical advantages may include a predictable and proportional increase in feedback, which may help an operator intuitively assess the amount of force they are applying.
[0011] In some examples, including at least one preferred example, the gradual increase in force feedback optionally comprises an exponential function configured to increase exponentially the closer the input device is to the virtual stop position. Technical advantages may include an increased sense of feedback as the operator approaches a control limit, potentially preventing overshoot and assisting in fine manipulation.
[0012] In some examples, including at least one preferred example, the processing circuitry is optionally configured to set the virtual stop position as an angle or distance offset relative to the angle or position of the machine end position or equilibrium position. Technical advantages may include the ability to define precise control boundaries within the system, which can be adjusted for different operating scenarios or according to the particular operating characteristics of the vessel.
[0013] In some examples, including at least one preferred example, the processing circuitry is optionally configured to set the maximum force feedback value based on one or more of environmental operating conditions, input device characteristics, vessel characteristics, operating mode, vessel operating conditions, operator preferences, ambient data, IMU data, and safety and regulatory data. Technical advantages may include adaptive calibration of force feedback to real-time conditions to ensure improved control and safety under a variety of circumstances.
[0014] In some examples, including at least one preferred example, the processing circuitry is optionally configured to trigger the emission of an audible alert and / or display a visual indicator on a display unit of the vessel in response to the manual manipulation force exceeding a maximum force feedback value. Technical advantages may include providing an additional sensory cue to alert the operator when a programmed force feedback threshold is exceeded, enhancing reaction time and situational awareness.
[0015] In some examples, including at least one preferred example, the processing circuitry is optionally configured to control the force damping unit to apply a damping force to the input device in response to the force of manual manipulation of the input device exceeding the maximum force feedback value. Technical advantages may include smoothing of the control input immediately after an override, reducing the risk of sudden movements that may impair the stability or navigational precision of the vessel.
[0016] In some examples, including at least one preferred example, optionally the input device includes a range of motion in each of three degrees of freedom, and one or more virtual stop positions are defined in each of the range of motion in each of the three degrees of freedom. A technical advantage may be having a comprehensive control system that provides nuanced feedback across multiple axes of motion, providing a more realistic and responsive piloting experience.
[0017] According to a second aspect of the present disclosure, there is provided a vessel including the computer system of the first aspect.
[0018] A second aspect of the present disclosure seeks to integrate advanced force feedback control in vessel operation, enhancing an operator's ability to precisely operate the vessel by providing tactile indication of input device position and allowing manual override of system-imposed limits for finer control adjustments. Technical advantages may include providing a vessel with a navigation interface that increases the granularity of control feedback, thereby improving operator engagement and vessel responsiveness, and potentially reducing the operator's cognitive load and physical demands during critical navigation tasks.
[0019] In a third aspect of the present disclosure, there is provided a computer-implemented method for force feedback control of an input device of a marine vessel, the method comprising: controlling, by a processing circuit of a computer system, a force feedback unit to progressively increase force feedback applied to the input device in response to manual operation of the input device toward a virtual stop position, the virtual stop position being defined between an equilibrium position and a mechanical end position of a range of motion of the input device, the virtual stop position being a set point defined by software that functions as an intermediate trigger for the input device, the force feedback being controlled to progressively increase until said input device is located at the virtual stop position and a maximum force feedback value is reached, the method further comprising controlling, by the processing circuit, the force feedback unit to decrease the force feedback applied to the input device at the virtual stop position in response to a force of manual operation of the input device exceeding the maximum force feedback value.
[0020] A third aspect of the present disclosure seeks to streamline vessel operation by utilizing a computer-implemented method to provide an operator with a progressive force feedback system that may enhance steering and maneuvering precision by clearly indicating the position of input devices relative to set control parameters and enabling necessary manual overrides by the operator. Technical advantages may include the methodological application of force feedback that can be systematically tuned for various operating scenarios, providing a tailored control experience that improves the operator's situational awareness and decision-making capabilities, while also accommodating emergency operations via an intuitive override mechanism.
[0021] According to a fourth aspect of the present disclosure, there is provided a computer program product including program code for performing the method of the third aspect when executed by a processing circuit. The fourth aspect of the present disclosure may seek to facilitate implementation of the advanced force feedback control method from the third aspect by providing a computer program product that, when executed, enables precise and dynamic control of a vessel's input devices via software. Technical advantages may include facilitating deployment of the force feedback control method across a variety of vessels, such as modern or legacy vessels, by installing the computer program product, thus standardizing the enhanced control system and ensuring that operators benefit from improved operability and safety regardless of the particular hardware configuration of the vessel's control system.
[0022] According to a fifth aspect of the present disclosure, there is provided a non-transitory computer-readable storage medium comprising instructions that, when executed by a processing circuit, cause the processing circuit to perform the method of the third aspect.
[0023] A fifth aspect of the present disclosure may seek to provide a durable, reliable medium that stores instructions necessary to execute a computer-implemented method for enhanced force feedback control in vessel navigation, as outlined in the third aspect. Technical advantages include the ability to replicate advanced force feedback control functions consistently across different vessels, such as modern or legacy vessels, through the use of a non-transitory computer-readable storage medium, thereby making improved performance and safety features readily available and ensuring their integrity is maintained over time, for example, without relying on continuous power or internet connectivity.
[0024] The aspects, examples (including any preferred examples) of the present disclosure, and / or the appended claims may be combined with one another as appropriate, as would be apparent to one skilled in the art. Additional features and advantages are set forth in the following description, claims, and drawings, and in part will be readily apparent to those skilled in the art from therein or may be learned by practice of the present disclosure as set forth herein.
[0025] Also disclosed herein are computer systems, control units, code modules, computer-implemented methods, computer-readable media, and computer program products associated with the foregoing technical advantages.
[0026] Examples are described in more detail below with reference to the accompanying drawings. [Brief explanation of the drawings]
[0027] [Figure 1] FIG. 1 is an exemplary systems diagram of a vessel. [Figure 2] 1 is a schematic diagram of an exemplary input device within a range of motion including an equilibrium position, a virtual stop position, and a mechanical end position. [Figure 3] FIG. 1 is a schematic diagram of an exemplary input device within its range of motion, including an equilibrium position, three virtual stop positions, and a mechanical end position. [Figure 4A] FIG. 1 is a schematic diagram of an exemplary force feedback control with accompanying subplots showing force feedback as a function of angular offset for an input device in an equilibrium position. [Figure 4B] FIG. 10 is a schematic diagram of an exemplary force feedback control with accompanying subplots showing force feedback as a function of angular offset for an input device positioned between an equilibrium position and a virtual rest position. [Figure 4C] FIG. 10 is a schematic diagram of an exemplary force feedback control with accompanying subplots showing force feedback as a function of angular offset for an input device at a virtual rest position. [Figure 4D]FIG. 10 is a schematic diagram of an exemplary force feedback control with accompanying subplots showing force feedback as a function of angular offset for an input device with a virtual rest position override. [Figure 5] 1 is a flowchart of an exemplary method for force feedback control of an input device. [Figure 6] FIG. 1 is a schematic diagram of an exemplary computer system for implementing the examples disclosed herein. DETAILED DESCRIPTION OF THE INVENTION
[0028] The detailed description set forth below provides information and examples of the disclosed technology in sufficient detail to enable those skilled in the art to practice the present disclosure.
[0029] This disclosure proposes a force feedback control approach that offers a delicate balance between providing useful tactile feedback and allowing the operator to intentionally override when necessary. By gradually increasing force feedback as the input device moves toward a virtual stop position, the system provides subtle control, with increasing resistance as the system approaches a software-defined limit. This incremental feedback allows the operator to feel a gradual increase in resistance, which can help the operator understand how close they are to reaching a limit within the input device's range without the need for visual confirmation. The tactile nature of the feedback provides the operator with a more intuitive interaction with the control system, allowing them to focus on the broader task of vessel navigation. The virtual stop position simulates a physical boundary within the virtual context. By defining a virtual stop position, an accurate representation of the sensations one would feel if physically stopped can be assumed, without the need for any actual mechanical components to limit the movement of the input device. Reaching a maximum force feedback value at the virtual stop position clearly indicates to the operator that a specific limit has been reached within the system's operating range. This maximum force feedback value represents a limit that preferably should not be exceeded under typical operating conditions. The maximum force feedback value acts as a safeguard against excessive input that could lead to oversteering or other forms of navigation error. However, the system's ability to allow for override when manually applied force exceeds the maximum feedback value can be equally important. In certain circumstances, such as emergency maneuvers or unexpected navigation challenges, the operator may need to exert additional force beyond the normal operating range. The ability to recognize and respond to this intentional input by reducing feedback allows the operator to retain control over the vessel. This feature respects the operator's judgment and recognizes that no automated system can fully replace human expertise and decision-making.
[0030] Overall, this approach to force feedback control provides a safer, more responsive, and more intuitive control system for vessels; increases operator reliability and accuracy, reduces the likelihood of control errors, and addresses the need for human override in specific, possibly exceptional, circumstances. Ultimately, it provides an improvement over conventional force feedback mechanisms.
[0031] 1 is a schematic diagram of a watercraft 10 to which some of the inventive concepts of the present disclosure may be applied. In non-limiting examples, the watercraft 10 may be a leisure boat, ship, cruise ship, fishing boat, yacht, or ferry. The watercraft 10 may be adapted to operate in a body of water, such as a sea, ocean, lake, river, harbor, bay, strait, canal, reservoir, fjord, swamp, or marsh. The watercraft 10 is propelled by a propulsion system 110, which may be configured for an electric, gasoline, diesel, or hybrid watercraft, provided that the propulsion system 110 can be computer-controlled via input signals from an input device having a joystick or other type of operating member, such as a steering wheel.
[0032] The vessel 10 includes a computer system 100, which is a marine control system adapted to control operation of the vessel 10. The computer system 100 includes a processing circuit 102 configured to manage force feedback-related features as described herein. That is, the processing circuit 102 is configured to control a force feedback unit 22 that operates in conjunction with a movable member, such as a handle or other movable member, of an input device 20. Hereinafter, this handle or other movable member will be referred to as a joystick 24, although it will be understood that the joystick 24 is merely an exemplary movable member that forms part of the input device 20 and that can be manipulated by an operator between positions. Force feedback is controlled based on the position of the joystick 24. Control signals from the computer system 100 are routed through the helm station 40; thus, the processing circuit 102 may form part of and / or be located within any one of the input device 20, the computer system 100, or the helm station 40.
[0033] The vessel 10 comprises an input device 20. The input device 20 comprises a force feedback unit 22 and a joystick 24. The input device 20 is to be understood as a device that can be adapted to provide navigation commands, such as commands regarding speed or direction, to the computer system 100. Thus, the processing circuit 102 is configured to receive signals from the input device 20 for control of, for example, the propulsion system 110, and to send signals for control of the force feedback unit 22.
[0034] The force feedback unit 22 is adapted to apply force feedback to the joystick 24. The force feedback may be applied in the form of haptic feedback, which corresponds to a physical sensation or force to the user in response to interacting with the joystick 24. Thus, the force feedback unit 22 is adapted to provide force feedback in response to the operator of the vessel 10 manipulating the joystick 24 between various positions, such as a virtual stop position, a machine end position, and an equilibrium position, which are described in further detail later in this disclosure.
[0035] Force feedback may be applied by adjusting the resistance to movement of the joystick 24. The force feedback unit 22 may be a mechanical and / or electrical device. In non-limiting examples, the force feedback unit 22 may include an electric motor, an actuator, a piezoelectric device, a hydraulic device, a pneumatic device, a shape memory alloy, an electromagnetic device, or a mechanical linkage. In examples where the joystick 24 is movable with three degrees of freedom, the force feedback unit 22 may include a respective force feedback unit for each degree of freedom. Thus, it is possible to target force feedback application to selected portions of the joystick 24 (e.g., via one or more of the force feedback units). The force feedback unit 22 may be integrated into the joystick 24 or may be external to the joystick 24, but may be configured to transmit force feedback via a connection with the joystick 24. For external use, the force feedback unit 22 may include an external controller configured to send signals to the controller of the joystick 24, thereby generating force feedback within the joystick 24.
[0036] The resistance to movement of the joystick 24 may be adjusted by a fixed force value or a variable force value. For example, consider a scenario in which a navigation request is made that includes a velocity value of 10,000. By applying a fixed force value, it is meant that the value 10,000 is immediately reduced to a lower specified value, such as 8,000. With a variable force value, the velocity value of 10,000 can instead be gradually reduced from 10,000 to 8,000 via intermediate values, such as 9,500, 9,000, and 8,500, or generally in any subinterval of granularity appropriate to the current operating situation. The variable force value may be, for example, an integral value over time that functions as a proportional-integral-derivative (PID) controller. Thus, depending on the type of force value applied, the magnitude and direction of the force value may or may not change. Because a force feedback system uses resistance to modulate the operator's input, thereby inversely controlling the rate of change, gradually decreasing the velocity value is equivalent to gradually increasing the force feedback. So the greater the resistance, the slower and more controlled the change in input.
[0037] To provide force feedback, the direction of the force value is typically opposite to the direction of joystick 24 movement or the upcoming direction of movement associated with a navigation request. For example, movement of the joystick 24 from an equilibrium position toward a mechanical end position may include a force value applied in a direction from the mechanical end position toward the equilibrium position. Because the force value may vary, different force values may cause different speeds of movement of the joystick 24 from the equilibrium position to the mechanical end position. The force value may fully oppose the movement of the joystick 24, thereby locking the joystick 24 in place. Alternatively, the force value may be small enough to allow movement of the joystick 24. This may be done by varying the magnitude so that the speed of movement of the joystick 24 varies.
[0038] The joystick 24 may be a handle, a lever, or some type of operable axle. The joystick 24 may be positioned to be operated by an operator of the vessel 10, for example, by the operator's hand. The joystick 24 may be movable with three degrees of freedom: pitch, roll, and yaw. Pitch movement refers to up-and-down movement or rotation of the joystick 24 about a horizontal axis, i.e., about a transverse axis, which is an imaginary line extending across the width of the vessel 10 from port (left) to starboard (right). Roll movement refers to side-to-side movement or rotation of the joystick 24 about a longitudinal axis, which is an imaginary line extending from the bow (front) to the stern (rear) of the vessel 10. Yaw movement refers to side-to-side movement or rotation of the joystick 24 about a vertical axis, corresponding to a turning or turning movement of the vessel 10 with a change in direction or heading. These three degrees of freedom allow the joystick 24 to control the movement and orientation of the vessel 10 in three-dimensional space.
[0039] The joystick 24 is movable between positions referred to herein as an equilibrium position and a mechanical end position (as described above). The equilibrium position should be understood as the neutral or default position of the joystick 24 that is assumed when no external force is applied to the joystick 24. In some examples, the external force is a user-applied force. Thus, in these examples, it will be understood that the joystick 24 is maintained at the equilibrium position in the absence of any user-applied force on the joystick 24. The joystick 24 is maintained at the equilibrium position unless some other resistance to movement is applied to the input device 20, for example, by the force feedback unit 22. The equilibrium position is typically the center position of the joystick 24 relative to a mechanical end position defined by the physical limitations of the joystick 24. However, other joystick designs may include other positional specifications for the equilibrium position.
[0040] Different configurations of the joystick may include a varying number of mechanical end positions. In a simple example, the joystick 24 includes an equilibrium position and one mechanical end position, representing a fully relaxed state and a fully forward actuated state, respectively. However, other joystick configurations may be constructed differently, and no limitations are intended in this regard. The mechanical end position(s) are dictated by the physical limitations of the joystick 24.
[0041] Between the equilibrium position and the mechanical end position, one or more virtual stop positions are defined. The virtual stop position(s) may be defined in one or more of the three-degree-of-freedom range of motion of the joystick 24. In the context of the present disclosure, a virtual stop position refers to a non-physical, software-implemented point within the range of motion of the input device 20, more specifically, the joystick 24 (i.e., between the equilibrium position and the mechanical end position), that serves as an intermediate trigger for the input device. The intermediate trigger is a programmatically defined mechanism that automatically initiates a specific action or process based on a predetermined condition or criterion. In this case, the trigger corresponds to the position within the range of motion at which the maximum force feedback value is applied to the joystick 24. Thus, the "specific action or process" is the maximum exerted force feedback value, and the "condition or criterion" is the position of the joystick 24. The virtual stop positions are designed to interact with the force feedback unit 22. Unlike physical stop positions, which are tangible parts of hardware, virtual stop positions are created and managed by the processing circuit 102. The virtual stop position is a programmable point that can be adjusted automatically by the processing circuit 102 or manually, for example, by the operator or helmsman of the vessel 10, as needed.
[0042] The virtual stop position(s) may be defined anywhere between the equilibrium position and the machine end position, for example exactly halfway (e.g., at 50% of the range of motion), along a first portion (e.g., at the first 50% of the range of motion), or along a second portion (e.g., at the next and therefore last 50% of the range of motion).
[0043] As the joystick 24 is manipulated toward the virtual stop position, the processing circuit 102 is configured to progressively increase the force feedback through control via the force feedback unit 22. This means that as the joystick 24 approaches the virtual stop position, the resistance felt by the operator gradually increases, providing a form of tactile communication about the position of the joystick 24 relative to the virtual stop position. Once the virtual stop position is reached, the force feedback reaches a maximum force feedback value. This maximum force feedback value represents the point at which the processing circuit 102 has fully communicated to the operator, through the force feedback provided by the force feedback unit 22, the location of the virtual stop position, and thus the arrival of the virtual stop position. The maximum force feedback value may be set by the processing circuit 102.
[0044] The maximum force feedback value may depend on a variety of different factors related to the vessel 10 or the environment in which the vessel 10 is operating. By taking these factors into account, the maximum force feedback value may be adapted to improve performance, safety, and operator comfort under various conditions.
[0045] The maximum force feedback value may be based on environmental operating conditions, which may include wave height, wind speed / direction, current speed / direction, etc. In rough sea conditions, higher force feedback may be required to ensure the operator maintains control, and the strength and direction of water currents may affect the force feedback required to maintain a steady course.
[0046] The maximum force feedback value may be based on input device characteristics. Input device characteristics may include input device size, since larger input devices may have greater physical impact forces and require higher maximum force feedback. Input device characteristics may also include input device type, since different types of joysticks may have different force feedback settings due to ergonomic and operational differences. Input device characteristics may also include a sensitivity factor, since more sensitive devices may require finer adjustments in force feedback to prevent overcompensation.
[0047] The maximum force feedback value may be based on vessel characteristics. Vessel characteristics may include displacement and mass, as larger vessels may require higher force feedback due to greater inertia. Vessel characteristics may include hull design, as the shape and hydrodynamics of the vessel's hull affect ease of maneuvering (such as if the vessel is a hydrofoil vessel) and therefore may affect the force feedback setting. Vessel characteristics may also depend on the propulsion system, as the type and responsiveness of the propulsion system (e.g., conventional screw, jet drive, pod drive) may affect the required force feedback.
[0048] The maximum force feedback value may be based on the operational mode. The operational mode may be a docking mode or a docking mode, as precision operations such as docking may require fine-tuned force feedback for better control. The operational mode may be a high-speed navigation mode, as a high-speed vessel may require a different maximum force feedback to maintain stability and responsiveness. The operational mode may be a search and rescue operational mode, as precision operations may require adjustment of the force feedback to ensure gentle operation.
[0049] The maximum force feedback value may be based on vessel operating conditions, such as related to speed or mechanical conditions.
[0050] The maximum force feedback value may be based on operator preference. For example, a novice operator may benefit from higher force feedback to guide inputs, while an experienced operator may prefer lower feedback for more subtle control. Force feedback can be adjusted based on the duration of the operator's shift to compensate for fatigue. Operator preference may include individual force feedback settings.
[0051] The maximum force feedback value may be based on ambient data obtained from sensing devices such as lidar, radar, etc. For example, the maximum force feedback may be based on the distance to nearby objects as determined by the ambient data.
[0052] The maximum force feedback value may be based on IMU (Inertial Measurement Unit) data, including gyro data, accelerometer data, GPS data, navigation data, etc. Feedback from these sensors may inform adjustments to the force feedback in real time to maintain stability and may affect the force feedback settings to adapt to expected conditions.
[0053] The maximum force feedback value may be based on safety and regulatory data, which may relate to a man overboard situation and may reduce the maximum force feedback value to allow for quick and sudden maneuvers. Safety and regulatory data may also relate to the specifics of equipment malfunctions, so that if a sensor detects a malfunction, for example, the maximum force feedback value may be limited to prevent further damage or loss of control. Safety and regulatory data may also relate to compliance with maritime laws, and various regulations may specify force feedback limits to ensure safe operation within particular bodies of water or conditions.
[0054] If the operator continues to apply a manual force to the joystick 24 beyond the maximum force feedback value, i.e., exerts a manual force greater than the maximum force feedback value can achieve, processing circuit 102 is configured to recognize this intentional action. Processing circuit 102 is configured to recognize this action as a manual override and, accordingly, control force feedback unit 22 to reduce the force feedback being applied to joystick 24. This feature allows the operator to move joystick 24 beyond the virtual stop position if deemed necessary, such as in an emergency situation or when more aggressive operation is required.
[0055] The manual override may be complemented by one or more additional alerts provided to the user.
[0056] In some examples, when a manual override of the maximum force feedback value is detected, an audible alert can be issued. This can be a click, an error sound, or any other sound adapted to attract further operator attention. This can be done by a control such as a speaker device.
[0057] In some examples, the display of a visual indicator may be triggered, which may be triggered on a display unit such as a screen or LED on the vessel 10.
[0058] The manual override may, in some examples, be supplemented by a damping force applied to the joystick 24. This may be done through control of a separate damping unit or via the force feedback unit 22. The damping force is applied in the same direction as the force feedback, effectively reducing the net force experienced by the operator. The purpose of this damping force is to ensure that joystick movement does not become overly abrupt or uncontrollable after an override. This can smooth out joystick 24 movement immediately after an override, thereby preventing sudden, potentially dangerous operation that could occur if the joystick 24 were allowed to move freely after exceeding the maximum force feedback value.
[0059] The damping force may be controlled to be relatively larger the closer the joystick 24 is positioned to the mechanical end position MEP. This may be advantageous because the closer the joystick 24 is to the mechanical end position MEP, the greater the impact may be, for example, due to a faster movement speed. Therefore, a higher damping force is typically desired. This can prevent the joystick 24 from being physically pressed against the mechanical end position MEP, which may prevent wear on the mechanical components of the input device 20.
[0060] Generally, the virtual stopping positions serve to enhance control and safety by providing tactile cues to the operator or helmsman of the vessel 10, informing the operator or helmsman how far he or she can operate the joystick 24 before reaching a limit, without the need for constant visual monitoring. Overall, the virtual stopping positions are a sophisticated feature of the marine control system of the vessel 10, providing a subtle, controllable, and programmable approach to providing force feedback to the operator. This enhances human-machine interaction and improves the safety and effectiveness of vessel operation.
[0061] The gradual increase in force feedback may include multiple step increments applied to a predefined position of the joystick 24 relative to a virtual stop position, which may be viewed as an easy-to-use, structured and intuitive approach for an operator to understand and measure the amount of force applied.
[0062] The gradual increase in force feedback may comprise a linear function related to the displacement of the joystick 24 relative to the virtual stop position, which may provide a predictable and proportional tactile response.
[0063] The gradual increase in force feedback may comprise an integral function over time as the joystick 24 is moved towards the virtual stop position, so that the force accumulates over time, thereby informing the operator of the time taken for the movement.
[0064] The gradual increase in force feedback may include an exponential function configured to increase exponentially the closer the joystick 24 is moved toward the virtual stop position, which may create a sense of urgency as the virtual stop position is approached.
[0065] The gradual increase in force feedback may include a sigmoid function. In this example, a first portion, such as 25% of the range of motion of the joystick 24 toward the virtual stop position (not the entire range, but the range between an origin position, such as an equilibrium position or virtual stop position, and the next virtual stop position), is accompanied by relatively high force feedback. A second portion, such as the next 50% of the range of motion following the first portion, is accompanied by relatively low force feedback compared to the force feedback of the first portion. A third portion, such as the next and thus final 25% of the range of motion following the second portion, is accompanied by relatively high force feedback compared to the force feedback of the second portion. The force feedback of the first and third portions may be approximately the same. This exemplary gradual increase provides a slow start and end with a more rapid increase in the middle portion of the range of motion, which can emphasize leaving the virtual stop position and approaching either the second virtual stop position or one of the machine end positions.
[0066] Although not explicitly shown in FIG. 1 , those skilled in the art will appreciate that the vessel 10 may include additional (sub)systems typically found on a vessel, such as electrical systems, navigation systems, ballast systems, steering systems, HVAC systems, infotainment systems, hydraulic systems, safety systems, communication systems, and auxiliary sensor systems.
[0067] Although not explicitly shown, it is assumed that the various lines in FIG. 1 represent various interfaces or peripherals through which components communicate with each other. Any wired or wireless communication standard known in the art may be employed for this purpose. Wireless communication standards may include IEEE 802.11, IEEE 802.15, ZigBee, WirelessHART, WiFi, Bluetooth, BLE, RFID, WLAN, MQTT IoT, CoAP, DDS, NFC, AMQP, LoRaWAN, Z-Wave, Sigfox, Thread, EnOcean, mesh communication, or any other form of proximity-based device-to-device wireless communication signaling, such as LTE Direct. Wired communication standards may include Controller Area Network (CAN), Ethernet, Hybrid Communication Unit (HCU), Gigabit Multimedia Serial Link (GMSL), Local Interconnect Network (LIN), FlexRay, Media Oriented Systems Transport (MOST), and Universal Serial Bus (USB). The choice of communication standard may depend on data transfer requirements, real-time capabilities, and the specific needs of the various components. It should be understood that the scope of the present disclosure is in no way limited to any particular communication standard.
[0068] 2 shows an exemplary input device 20 including a joystick 24 in a range of motion that includes an equilibrium position EP, a virtual stop position VSP, and a machine end position MEP. Processing circuitry 102 is configured to control force feedback unit 22 to apply force feedback to joystick 24.
[0069] The joystick 24 is currently at its equilibrium position EP, as indicated by the solid line. The vessel 10, in which the joystick 24 is positioned, is therefore not currently receiving any commands to change its course or speed. The dashed directional arrow on the joystick 24 indicates the potential movement of the joystick from the equilibrium position EP to the machine end position MEP. This potential movement between the equilibrium position EP and the machine end position MEP passes through a virtual stop position VSP. As the joystick 24 moves from the equilibrium position EP toward the machine end position MEP, the processing circuit 102 is configured to progressively increase force feedback via the force feedback unit 22 as the joystick 24 approaches the virtual stop position VSP. As described herein, this increasing resistance notifies the operator that the virtual stop position VSP is being approached. The virtual stop position VSP serves as a predefined threshold before reaching the machine end position MEP. If the operator needs to exceed the limit defined by the virtual stop position VSP, the operator can apply additional force to the joystick 24 to push it past the virtual stop position VSP. Processing circuitry 102 is configured to recognize this excessive force and reduce or modify the force feedback accordingly, thereby allowing joystick 24 to move beyond virtual stop position VSP toward machine end position MEP as required by navigation demands.
[0070] FIG. 3 illustrates an exemplary input device 20 including a joystick 24 with a range of motion that includes an equilibrium position EP, three virtual stop positions VSP-1, VSP-2, and VSP-3, and a machine end position MEP. The equilibrium position EP may be a machine end position. The processing circuit 102 is configured to control the force feedback unit 22 to apply force feedback to the joystick 24. In other examples, any number of virtual stop positions may be realized, depending on the joystick configuration, vessel type, or operational characteristics, etc. Thus, more advanced configurations of the input device 20 incorporating multiple virtual stop positions that build on the concepts illustrated in FIG. 2 are provided, but at the expense of additional complexity and functionality for improved control possibilities.
[0071] In this configuration, the equilibrium position EP of the joystick 24 is no longer in a plane generally perpendicular to the cross-section of the vessel 10, but is instead located at one end of the range of motion of the joystick 24 and effectively functions as the machine end position MEP. This means that the joystick 24 has a range of motion that extends from this equilibrium position EP, which is also the machine end position, to the other machine end position MEP at the opposite end of its travel.
[0072] As the joystick 24 moves away from the equilibrium position EP toward the opposite machine end position MEP, the force feedback unit 22, controlled by the processing circuit 102, is configured to incrementally increase the force feedback as the joystick approaches each of the virtual stop positions VSP-1, VSP-2, and VSP-3. When the operator exerts enough force to override the feedback at the first virtual stop position VSP-1, the force feedback “resumes” at a lower level, allowing a new incremental increase in force feedback as the joystick continues to move toward the second virtual stop position VSP-2. This resume mechanism also applies when moving past the second virtual stop position VSP-2 toward the third virtual stop position VSP-3. Each override and resume allows the operator to experience a new level of force feedback, potentially providing subtle control and tactile information regarding the position of the joystick 24 within its range of motion. This can be useful for precise or complex manipulations or fine adjustments with small ranges of motion. Additionally, different feedback profiles may be created for different operating situations or operator preferences, allowing for a graded response that can guide the operator through different control stages.
[0073] In some examples, the maximum force feedback value may be set differently for each of the virtual stop positions VSP-1, VSP-2, and VSP-3, with the maximum force feedback value for virtual stop positions closer to the machine end position MEP being set higher than for virtual stop positions closer to the equilibrium position EP. Thus, in these examples, virtual stop position VSP-3 may be set higher relative to virtual stop position VSP-2, which in turn may be set higher relative to virtual stop position VSP-3. This may result in a haptic gradient that may inform the operator about progress along the path of movement of the joystick 24.
[0074] In other examples, the maximum force feedback value may be set to approximately the same value for each of the virtual stop positions VSP-1, VSP-2, and VSP-3. In these other examples, a uniform maximum force feedback value across all virtual stop positions may simplify the control feedback system and provide consistent resistance at each programmed stop. This approach may be beneficial in situations where the operator benefits from a predictable and steady increase in resistance without having to adjust to different levels of force feedback as the operator manipulates the joystick.
[0075] In yet other examples, the maximum force feedback value may be the same for some virtual stop positions VSP-1, VSP-2, VSP-3 and different for others. For example, the maximum force feedback value may be a first value for the first virtual stop position VSP-1 and a second value for both the second virtual stop position VSP-2 and the third virtual stop position VSP-3.
[0076] 4A-4D are schematic diagrams of an exemplary force feedback control of a joystick 24 of an input device 20 equipped with a force feedback unit 22. Each of the illustrations in FIGS. 4A-4D is accompanied by a respective subplot 410, 420, 430, 440 representing force feedback [N] as a function of angular offset [α]. For example, the joystick 24 in FIGS. 4A-4D may be similar to the joystick 24 shown and described with reference to FIG. 2 and thus may illustrate how force feedback varies with angular offset relative to an equilibrium position EP of the joystick 24. While angular offset is illustrated herein, it will be understood that the virtual stop position may be defined using other practices, such as a distance offset from the equilibrium position EP or a machine end position MEP.
[0077] The joystick 24 may include a position sensor (not shown) configured to read out position data measurements of the joystick 24. Based on this data, an angle or distance offset can be determined. This information is then used to determine whether the joystick 24 is at an equilibrium position EP, a virtual stop position VSP, or a mechanical end position MEP. The position sensor may be a potentiometer, a Hall effect sensor, an optical encoder, a capacitive sensor, a resistive film sensor, a magnetic sensor, or the like. Force feedback control may be based on the position data.
[0078] 4A shows the joystick 24 at equilibrium position EP. This is the neutral state with no force being applied by the operator, and the joystick 24 exerts zero, or at least no realizable, force feedback by the operator. The angular offset is zero, indicating no deviation from equilibrium position EP. Subplot 410 confirms this by showing the force feedback of N0 at angular offset α0.
[0079] 4B shows the joystick 24 as it is moved by the operator toward the virtual stop position VSP. Subplot 420 reflects the increasing angular offset to α1 and the corresponding increase in force feedback to N1. This indicates that as the joystick 24 leaves the equilibrium position EP and moves toward the virtual stop position VSP, the operator begins to feel an increase in resistance, which is the control system's way of providing tactile feedback regarding the movement of the joystick 24.
[0080] In FIG. 4C, the joystick 24 is further moved and reaches the virtual stop position VSP. Subplot 430 shows this increase when the angular offset is at offset value α2. Here, the force feedback reaches the maximum force feedback value N2. Here, the operator feels the strongest resistance, signaling that the virtual stop position VSP has been reached. Subplot 430 shows 、 This point is clearly marked as the peak of the force feedback curve corresponding to the maximum force feedback value N2.
[0081] 4D depicts a scenario in which the operator decides to exert additional force and pushes the joystick 24 beyond the virtual stop position VSP, thereby overriding the virtual stop position VSP. As a result, the joystick 24 continues to move away from the virtual stop position VSP (and equilibrium position EP) and potentially towards the machine end position MEP, which is not explicitly shown in this figure. Subplot 440 shows some possible scenarios of how the force feedback may decrease after overriding the virtual stop position VSP. This 、It is shown that the force feedback can be reduced to any value above N0 at various reduction rates. However, the manner in which this is done is not necessarily important, provided that the force feedback is significantly reduced from the maximum N2 to the operator. The haptic effect should be sufficient for the operator to feel that they have successfully overridden the virtual stop position VSP. As the joystick 24 is moved further, the angular offset continues to increase and may reach α3, which may correspond to the maximum angular offset from the equilibrium position EP. This may be the machine end position MEP.
[0082] Referring further to FIG. 5 , a computer-implemented method 200 for force feedback control of an input device of a marine vessel is shown. The input device may be the input device 20 as discussed herein, and the marine vessel may be the marine vessel 10 as discussed herein. The method 200 includes controlling (210) a force feedback unit to progressively increase force feedback applied to the input device in response to manual manipulation of the input device toward a virtual stop position defined between an equilibrium position and a mechanical end position of the input device's range of motion. The virtual stop position is a software-defined set point that serves as an intermediate trigger for the input device. The force feedback is controlled to progressively increase until the input device is located at the virtual stop position and reaches a maximum force feedback value. The method 200 further includes controlling (220) a force feedback unit to decrease force feedback applied to the input device at the virtual stop position in response to the force of manual manipulation of the input device exceeding the maximum force feedback value. The steps of the method 200 are performed by a processing circuit of a computer system.
[0083] 6 is a schematic diagram of a computer system 600 for implementing examples disclosed herein. The computer system 600 is adapted to execute instructions from a computer-readable medium to perform these functions or processes and / or any of the functions or processes described herein. The computer system 600 may be connected (e.g., networked) to other machines in a LAN (Local Area Network), a LIN (Local Interconnect Network), an automotive network communication protocol (e.g., FlexRay), an intranet, an extranet, or the Internet. Although only a single device is shown, the computer system 600 may include any collection of devices that individually or together execute a set (or sets) of instructions to perform any one or more of the methodologies discussed herein. Thus, any reference in this disclosure and / or claims to a computer system, computing system, computer device, computing device, control system, control unit, electronic control unit (ECU), processor device, processing circuit, or the like includes reference to one or more such devices that individually or together execute a set of instructions (or sets of instructions) to perform any one or more of the methodologies discussed herein. For example, a control system may include a single control unit or multiple control units interconnected or otherwise communicatively coupled to each other such that any performed functions may be distributed among the control units as desired. Furthermore, such devices may communicate with each other or with other devices according to various system architectures, e.g., directly or via a controller area network (CAN) bus or the like.
[0084] Computer system 600 may include at least one computing or electronic device capable of executing firmware, hardware, and / or software instructions to perform the functions described herein. Computer system 600 may include a processing circuit 602 (e.g., a processing circuit including one or more processor devices or control units), a memory 604, and a system bus 606. Computer system 600 may include at least one computing device having a processing circuit 602. The system bus 606 provides an interface to system components including, but not limited to, the memory 604 and the processing circuit 602. The processing circuit 602 may include any number of hardware components for performing data or signal processing or for executing computer code stored in the memory 604. The processing circuitry 602 may include, for example, a general-purpose processor, an application-specific processor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), a circuit including processing components, distributed processing components, distributed computers configured for processing, or other programmable logic devices, discrete gate or transistor logic, discrete hardware components, or any combination thereof, designed to perform the functions described herein. The processing circuitry 602 may also include computer-executable code that controls the operation of a programmable device.
[0085] The system bus 606 may be any of several types of bus structures, which may further interconnect to a memory bus (with or without a memory controller), a peripheral bus, and / or a local bus using any of a variety of bus architectures. The memory 604 may be one or more devices for storing data and / or computer code that accomplish or facilitate the methods described herein. The memory 604 may include database components, object code components, script components, or other types of information structures for supporting various activities herein. Any distributed or local memory device may be utilized with the systems and methods herein. The memory 604 may be communicatively coupled to the processing circuitry 602 (e.g., via circuitry or any other wired, wireless, or network connection) and may include computer code for executing one or more processes described herein. Memory 604 may include non-volatile memory 608 (e.g., read only memory (ROM), erasable programmable read only memory (EPROM), electrically erasable programmable read only memory (EEPROM), etc.), and volatile memory 610 (e.g., random access memory (RAM)), or any other medium that can be used to carry or store desired program code in the form of machine-executable instructions or data structures and that is accessible by a computer or other machine having processing circuitry 602. A basic input / output system (BIOS) 612 may be stored in non-volatile memory 608 and may include basic routines that help to transfer information between elements within computer system 600.
[0086] Computer system 600 may further include or be coupled to a non-transitory computer-readable storage medium, such as storage device 614, which may include, for example, an internal or external hard disk drive (HDD) (e.g., Enhanced Integrated Drive Electronics (EIDE) or Serial Advanced Technology Attachment (SATA)), a storage HDD (e.g., EIDE or SATA), or flash memory. Storage device 614 and other drives associated with computer-readable and computer-usable media may provide non-volatile storage of data, data structures, computer-executable instructions, and the like.
[0087] Hard-coded or soft-coded computer code may be provided in the form of one or more modules. The module(s) may be implemented as software and / or hard-coded into circuitry to perform, in whole or in part, the functions described herein. The modules may be stored in storage device 614 and / or volatile memory 610, which may include operating system 616 and / or one or more program modules 618. All or part of the examples disclosed herein may be implemented as a computer program 620 stored on a temporary or non-transitory computer-usable or computer-readable storage medium (e.g., a medium or multiple media), such as storage device 614, the computer program 620 including complex programming instructions (e.g., complex computer-readable program code) that cause processing circuitry 602 to perform the actions described herein. Thus, the computer-readable program code of the computer program 620 may include software instructions that, when executed by processing circuitry 602, perform the functions of the examples described herein. In some examples, storage device 614 may be a computer program product (e.g., a readable storage medium) storing a computer program 620, at least a portion of which may be loadable (e.g., into a processor) to perform example functions described herein when executed by processing circuitry 602. Processing circuitry 602 may function as a controller or control system for computer system 600 to perform the functions described herein.
[0088] Computer system 600 may include an input device interface 622 configured to receive inputs and selections communicated to computer system 600 when executing instructions from a keyboard, mouse, touch-sensitive surface, etc. Such input devices may be connected to processing circuit 602 via input device interface 622 coupled to system bus 606, but may also be connected via other interfaces, such as a parallel port, an Institute of Electrical and Electronics Engineers (IEEE) 1394 serial port, a Universal Serial Bus (USB) port, and an IR interface. Computer system 600 may include an output device interface 624 configured to transfer output to a display, a video display unit (e.g., a liquid crystal display (LCD) or a cathode ray tube (CRT)), etc. Computer system 600 may include a communications interface 626 suitable for communicating with a network, as appropriate or desired.
[0089] The operational actions described in any of the exemplary aspects herein are set forth to provide example and discussion. The actions may be performed by hardware components, embodied in machine-executable instructions that cause a processor to perform the actions, or performed by a combination of hardware and software. Although a particular order of method actions may be shown or described, the order of the actions may be different. Furthermore, two or more actions may be performed concurrently or with partial concurrence.
[0090] Example 1: A computer system (100; 600) for force feedback control of an input device (20) of a vessel (10), the computer system (100; 600) comprising a processing circuit (102; 602), the processing circuit (102; 602) configured to control a force feedback unit (22) to progressively increase a force feedback applied to the input device (20) in response to manual manipulation of the input device (20) towards a virtual stop position (VSP), the virtual stop position (VSP) being defined between an equilibrium position (EP) and a machine end position (MEP) of a range of motion of the input device (20), the virtual stop position (VS the computer system (100; 600), wherein P) is a software-defined set point that serves as an intermediate trigger for the input device (20), and the force feedback is controlled to increase progressively until a maximum force feedback value is reached when the input device (20) is located at the virtual stop position (VSP), and the processing circuit (102; 602) is further configured to control the force feedback unit (22) to decrease the force feedback applied to the input device (20) at the virtual stop position (VSP) in response to manual manipulation of the input device (20) exceeding the maximum force feedback value.
[0091] Example 2: The computer system (100; 600) described in Example 1, wherein the movable range (20) of the input device includes a plurality of virtual stop positions (VSP-n), and the force feedback is controlled to increase gradually until a maximum force feedback value is reached when the input device (20) is located at any one of the plurality of virtual stop positions (VSP-n), and the force feedback is controlled to decrease at any one of the plurality of virtual stop positions (VSP-n) in response to the manual operation force exceeding the maximum force feedback value.
[0092] Example 3: The computer system (100; 600) described in Example 2, wherein the processing circuit (102; 602) is configured to set the maximum force feedback value differently for each of the plurality of virtual stop positions (VSP-n), and the maximum force feedback value of a virtual stop position (VSP-n) close to the machine end position (MEP) is set higher than that of a virtual stop position (VSP-n) close to the equilibrium position (EP).
[0093] Example 4: The computer system (100; 600) of Example 2, wherein the processing circuit (102; 602) is configured to set the maximum force feedback value at approximately the same value for each of the plurality of virtual stop positions (VSP-n).
[0094] Example 5: A computer system (100; 600) described in any one of Examples 1 to 4, wherein the gradual increase in force feedback includes a plurality of gradual increments applied at predetermined positions relative to a virtual stop position (VSP).
[0095] Example 6: A computer system (100; 600) according to any one of Examples 1 to 4, wherein the gradual increase in the force feedback comprises a linear function of the displacement of the input device (20) relative to a virtual stop position (VSP).
[0096] Example 7: A computer system (100; 600) according to any one of Examples 1 to 4, wherein the gradual increase in the force feedback comprises an integral function of the time the input device (20) moves towards a virtual stop position (VSP).
[0097] Example 8: A computer system (100; 600) according to any one of Examples 1 to 4, wherein the gradual increase in the force feedback comprises an exponential function configured to increase exponentially the further the input device (20) moves towards a virtual stop position (VSP).
[0098] Example 9: A computer system (100; 600) according to any one of Examples 1 to 4, wherein the gradual increase in force feedback comprises a sigmoid function, wherein a first portion of a range of movement of the input device (20) towards a virtual stop position (VSP) is accompanied by relatively high force feedback, a second portion following the first portion is accompanied by relatively low force feedback, and a third portion following the second portion is accompanied by relatively high force feedback.
[0099] Example 10: A computer system (100; 600) according to any one of Examples 1 to 9, wherein the processing circuit (102; 602) is configured to set a virtual stop position (VSP) as an angle or distance offset relative to the angle or position of the machine end position (MEP) or the equilibrium position (EP).
[0100] Example 11: A computer system (100; 600) described in any one of Examples 1 to 10, wherein the processing circuit (102; 602) is configured to set a maximum force feedback value based on one or more of environmental operating conditions, input device characteristics, vessel characteristics, operating mode, vessel operating conditions, operator preferences, ambient data, IMU data, and safety and regulatory data.
[0101] Example 12: A computer system (100; 600) described in any one of Examples 1 to 11, wherein the processing circuit (102; 602) is configured to trigger the emission of an audible alert in response to the manual manipulation force exceeding a maximum force feedback value.
[0102] Example 13: A computer system (100; 600) described in any one of Examples 1 to 12, wherein the processing circuit (102; 602) is configured to display a visual indicator on a display unit of the vessel (10) in response to the manual operation force exceeding a maximum force feedback value.
[0103] Example 14: A computer system (100; 600) described in any one of Examples 1 to 13, wherein the processing circuit (102; 602) is configured to control a force damping unit that applies a damping force to the input device (20) in response to the force of manual operation of the input device (20) exceeding a maximum force feedback value.
[0104] Example 15: A computer system (100; 600) according to Example 14, wherein the damping force is controlled to be relatively larger the closer the input device (20) is positioned to the machine end position (MEP).
[0105] Example 16: A computer system (100; 600) according to any one of Examples 1 to 15, wherein the input device (20) includes a range of motion for each of three degrees of freedom, and one or more virtual stop positions (VSP) are defined for each of the ranges of motion for each of the three degrees of freedom.
[0106] Example 17: A computer system (100; 600) described in any one of Examples 1 to 16, wherein the processing circuit (102; 602) is configured to acquire position data of the input device (20) from a position sensor, and the force feedback control is based on the position data.
[0107] Example 19: A computer system (100; 600) described in any one of Examples 1 to 18, wherein the processing circuit (102; 602) is configured to control the force feedback unit (22) including one or more of a spring and rocking mechanism, a DC motor, and a magnetic field generator.
[0108] Example 20: A ship (100) equipped with the computer system (100; 600) according to any one of Examples 1 to 19.
[0109] Example 21: A computer-implemented method (200) for force feedback control of an input device (20) of a vessel (10), comprising controlling (210) by a processing circuit (102; 602) of a computer system (100; 600) a force feedback unit (22) to progressively increase force feedback applied to the input device (20) in response to manual manipulation of the input device (20) toward a virtual stop position (VSP), the virtual stop position (VSP) being defined between an equilibrium position (EP) and a mechanical end position (MEP) of a range of motion of the input device (20), the virtual stop position (VSP) being determined by the input device (20). a software-defined set point that serves as an intermediate trigger for a virtual stop position (VSP) of the input device (20), and the force feedback is controlled to increase progressively until a maximum force feedback value is reached when the input device (20) is located at the virtual stop position (VSP), the method further comprising controlling (220) by the processing circuit (102; 602) the force feedback unit (22) to decrease the force feedback applied to the input device (20) at the virtual stop position (VSP) in response to a force of manual manipulation of the input device (20) exceeding the maximum force feedback value.
[0110] Example 22: A computer program product comprising a program code for performing the method of example 21 when executed by a processing circuit (602).
[0111] Example 23: A non-transitory computer-readable storage medium containing instructions, which, when executed by a processing circuit (602), cause the processing circuit (602) to perform the method described in Example 21.
[0112] The terminology used herein is for the purpose of describing particular aspects only and is not intended to be limiting of the disclosure. As used herein, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. As used herein, the term "and / or" includes any and all combinations of one or more of the associated listed items. It will be further understood that the terms "comprises," "comprising," "includes," and / or "including," when used herein, specify the presence of stated features, components, actions, steps, operations, elements, and / or components, but do not exclude the presence or addition of one or more other features, components, actions, steps, operations, elements, components, and / or groups thereof.
[0113] Terms such as "first," "second," and the like may be used herein to describe various elements, but it is understood that these elements should not be limited by these terms. These terms are used only to distinguish one element from another. For example, a first element may be referred to as a second element, and similarly, a second element may be referred to as a first element, without departing from the scope of the present disclosure.
[0114] Relative terms such as "lower" or "upper" or "top" or "lower" or "horizontal" or "vertical" may be used herein to describe the relationship of an element shown in the figures to another element. It will be understood that these terms, and those described above, are intended to encompass different orientations of the device in addition to the orientation shown in the figures. When an element is referred to as being "connected" or "coupled" to another element, it will be understood that the element may be directly connected or coupled to the other element, or that intervening elements may be present. In contrast, when an element is referred to as being "directly connected" or "directly coupled" to another element, there are no intervening elements present.
[0115] Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this disclosure belongs. It will be further understood that terms used herein should be construed to have a meaning consistent with their meaning in the context of the specification and related art, and are not to be construed in an idealized or overly formal sense unless so expressly defined herein.
[0116] It will be understood that the present disclosure is not limited to the embodiments described above and shown in the drawings, but rather, those skilled in the art will recognize that many changes and modifications may be made within the scope of this disclosure and the appended claims. The drawings and specification disclose embodiments for purposes of illustration only, and not for purposes of limitation, the scope of the present disclosure being set forth in the following claims.
Claims
1. 1. A computer system for force feedback control of an input device of a marine vessel, the computer system comprising: a processing circuit; The present invention is configured to control a force feedback unit to gradually increase a force feedback applied to the input device in response to manual operation of the input device toward a virtual stop position, the virtual stop position being defined between an equilibrium position and a mechanical end position of a movable range of the input device, the virtual stop position being a set point defined by software that functions as an intermediate trigger for the input device, and the force feedback being controlled to gradually increase until the input device is located at the virtual stop position and a maximum force feedback value is reached, and the processing circuitry further configured to control the force feedback unit to reduce the force feedback applied to the input device at the virtual stop position in response to a force of manual manipulation of the input device exceeding the maximum force feedback value. Computer system.
2. the movable range of the input device includes a plurality of virtual stop positions; the force feedback is controlled to increase gradually until the input device is located at any one of the plurality of virtual stop positions and reaches a maximum force feedback value; the force feedback is controlled to decrease at any one of the plurality of virtual stop positions in response to a manual operation force exceeding a maximum force feedback value; 10. The computer system of claim 1.
3. 3. The computer system of claim 2, wherein the processing circuit is configured to set the maximum force feedback value differently for each of the plurality of virtual stop positions, and the maximum force feedback value for a virtual stop position closer to the machine end position is set higher than that for a virtual stop position closer to the equilibrium position.
4. 3. The computer system of claim 2, wherein the processing circuitry is configured to set the maximum force feedback value at approximately the same value for each of the plurality of virtual stop positions.
5. The computer system of claim 1 , wherein the force feedback gradual increase comprises a linear function related to the displacement of the input device relative to a virtual rest position.
6. 10. The computer system of claim 1, wherein the gradual increase in force feedback comprises an exponential function configured to increase exponentially the further the input device is moved toward a virtual stop position.
7. The computer system of claim 1 , wherein the gradual increase in force feedback comprises a plurality of step increments applied to predetermined positions relative to a virtual stop position.
8. The computer system of claim 1 , wherein the processing circuitry is configured to set a virtual stop position as an angle or distance offset relative to the angle or position of the machine end position or the equilibrium position.
9. 10. The computer system of claim 1, wherein the processing circuitry is configured to set the maximum force feedback value based on one or more of environmental operating conditions, input device characteristics, vessel characteristics, operating mode, vessel operating conditions, operator preferences, ambient data, IMU data, and safety and regulatory data.
10. 10. The computer system of claim 1, wherein the processing circuitry is configured to cause emission of an audible alert in response to a manual manipulation force exceeding a maximum force feedback value.
11. 10. The computer system of claim 1, wherein the processing circuitry is configured to cause a visual indicator to be displayed on a display unit of the marine vessel in response to a manual manipulation force exceeding a maximum force feedback value.
12. 2. The computer system of claim 1, wherein the processing circuitry is configured to control a force damping unit to apply a damping force to the input device in response to a force of manual manipulation of the input device exceeding a maximum force feedback value.
13. The computer system according to claim 12 , wherein the damping force is controlled to be relatively higher the closer the input device is positioned to the machine end position.
14. The computer system of claim 1 , wherein the processing circuitry is configured to obtain position data of the input device from a position sensor, and the force feedback control is based on the position data.
15. 10. The computer system of claim 1, wherein the processing circuitry is configured to control the force feedback unit, the force feedback unit including one or more of a spring and locking mechanism, a DC motor, and a magnetic field generator.
16. 2. The computer system of claim 1, wherein the input device includes a range of motion in each of three degrees of freedom, and one or more virtual rest positions are defined in each of the ranges of motion in each of the three degrees of freedom.
17. A vessel comprising the computer system of claim 1.
18. 1. A computer-implemented method for force feedback control of an input device of a marine vessel, comprising: controlling, by a processing circuit of a computer system, a force feedback unit to gradually increase a force feedback applied to the input device in response to manual operation of the input device toward a virtual stop position, the virtual stop position being defined between an equilibrium position and a mechanical end position of a range of motion of the input device, the virtual stop position being a set point defined by software that functions as an intermediate trigger for the input device, the force feedback being controlled to gradually increase until the input device is located at the virtual stop position and reaches a maximum force feedback value, the method further comprising: responsive to a force of manual manipulation of the input device exceeding the maximum force feedback value, controlling the force feedback unit to reduce the force feedback applied to the input device at the virtual stop position.
19. 20. A computer program product comprising program code which, when executed by a processing circuit, performs the method of claim 18.
20. 20. A non-transitory computer-readable storage medium containing instructions that, when executed by a processing circuit, cause the processing circuit to perform the method of claim 18.