Control system and control method for zero returning of rudder blade of unmanned sailboat
By employing a combination of single-turn absolute encoders and multiple sensors on unmanned sailboats, automatic correction of the rudder zero point was achieved, solving the problem of rudder zero point drift during ocean operations. This approach offers high accuracy and reliability while reducing system complexity and cost.
Patent Information
- Application Number
- CN202511223581.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-08-29
- Publication Date
- 2025-10-31
AI Technical Summary
When unmanned sailboats are operating in the open ocean, the zero point drift of the rudder blades cannot be automatically corrected. Existing technical solutions have problems such as high energy consumption, low reliability, and high cost, and cannot meet the needs of unmanned sailboats to automatically correct the zero point of the rudder blades in the open ocean.
It adopts a single-turn absolute encoder combined with a controller, positioning and orientation sensor, current meter and wind speed and direction sensor, and connects the rudder motor and water propulsion motor through a high-speed communication bus to realize automatic zero point correction of the rudder blade. It uses shipborne sensors to judge the static environment and make corrections, avoiding dependence on hydraulic components and external sensors.
It enables unmanned sailboats to be launched without needing to dock for calibration, possessing high accuracy and reliability, solving the problem of rudder zero-point drift, reducing system complexity and cost, and improving system integration.
Smart Images

Figure CN120871878A_ABST
Abstract
Description
Technical Field
[0001] This invention belongs to the field of unmanned sailboat rudder blade zeroing technology, specifically relating to a control system and control method for unmanned sailboat rudder blade zeroing. Background Technology
[0002] The statements herein provide only background information in relation to this invention and do not necessarily constitute prior art.
[0003] Unmanned sailboats are sailboats that rely on controllers to automatically control the angles of sails and rudders, and move automatically under the propulsion of wind and electricity. They have broad application prospects in ocean exploration, hydrological information collection, and route exploration.
[0004] As a crucial steering adjustment mechanism, the accuracy of the rudder blade angle measurement directly impacts the automatic steering capability of an unmanned sailboat. The accuracy of the zero point of the angle measurement is the most critical factor affecting the accuracy of the rudder blade angle measurement. During the installation and commissioning phase before launching the unmanned sailboat, the rudder blade zero point position can be easily calibrated. Existing technology discloses a method to eliminate mechanical zero-position deviation between the rudder gear and the rudder stick; however, this method is a manual operation used before the vessel leaves the factory or during shore maintenance, and is not suitable for the automatic zero-point calibration of unmanned sailboats operating in the open ocean.
[0005] After an unmanned sailboat is launched, its rudder inevitably drifts to zero point with increasing usage time, severely affecting the accuracy of rudder angle measurement. Furthermore, unmanned sailboats face difficulties in docking for maintenance during long-range operations, making rudder zero-point correction impossible. Therefore, a method for automatically correcting rudder zero point is needed. Existing technology discloses an online rudder angle zero-point correction steering device and method for ships. However, this online rudder angle zero-point correction steering device uses hydraulic components, which are unsuitable for unmanned sailboats with limited energy resources due to continuous energy consumption. Additionally, this method uses infrared sensors to provide zero-point positioning signals to the rudder, but the rudder transmission mechanism of an unmanned sailboat is located in a small compartment with a risk of water ingress. Such an additional external switching sensor reduces the reliability of the unmanned sailboat's control system.
[0006] Currently, one feasible solution for the automatic zero-point correction of the rudder blade on unmanned sailboats is to use the encoder within the motor system itself for rudder blade zero-point correction. Incremental encoders cannot remember data from before a power outage, making them unsuitable for rudder blade angle measurement on unmanned sailboats. Multi-turn absolute encoders can meet the accurate measurement requirements of rudder blade angles on unmanned sailboats, but require an additional backup power supply or extra mechanical gearing devices to accurately record the number of turns. Reliance on backup power is detrimental to the reliability of the unmanned sailboat system, and adding extra mechanical gearing devices leads to a sharp increase in cost and occupies the already limited installation space on the unmanned sailboat. Single-turn absolute encoders do not have these drawbacks, but because the rudder is subjected to a large load during operation, the rudder motor needs to amplify torque through a reducer. The presence of the reducer prevents single-turn absolute encoders from providing accurate rudder blade angles after a power outage and subsequent power restoration. Furthermore, unmanned sailboats inevitably experience power supply shortages during operation, and power outages in the power drive system are unavoidable. All of these factors make accurate measurement and tracking of the rudder blade angle difficult, making the need for automatic zero-point correction of the rudder blade even more urgent for unmanned sailboat systems. Summary of the Invention
[0007] The purpose of this invention is to overcome the shortcomings of the prior art and provide a control system and method for zeroing the rudder of an unmanned sailboat. This system features no need for shore-based correction after launch, no hydraulic components, high accuracy, and strong reliability, thus solving the problem of automatic correction of rudder zero-point drift during ocean operations of unmanned sailboats.
[0008] To achieve the above objectives, the present invention is implemented through the following technical solution: In a first aspect, the technical solution of the present invention provides a control system for rudder blade return to zero of an unmanned sailboat, comprising: a controller, a rudder motor driver, a rudder motor, a single-turn absolute encoder, two water propulsion motor drivers, two water propulsion motors, a positioning and orientation sensor, a current meter, and a wind speed and direction sensor. The rudder motor is connected to the rudder blade via a reduction gear mechanism, and a single-turn absolute encoder is used to detect the rotation parameters of the rudder motor. The rudder motor driver is connected to the controller via a high-speed communication bus and drives the rudder motor. The water propulsion motor driver is connected to the controller via a high-speed communication bus and drives the water propulsion motor, which is connected to the propeller. The positioning and orientation sensor, current meter, and wind speed and direction sensor are connected to the controller to collect data on ship attitude, water flow speed, and wind direction and speed. The controller is configured to: calculate and store the absolute position angle of the rudder blade based on the reading of the single-turn absolute encoder; initiate the homing process according to the received homing command or preset conditions; and determine whether the current environment is stationary based on the data from the positioning and orientation sensor, current meter, and wind speed and direction sensor before initiating the third homing process.
[0009] In at least one embodiment, a first intermediate relay and a second intermediate relay are also included; The controller's first digital output port controls the power supply to the rudder motor driver via the first intermediate relay; The controller's second digital output port controls the power supply to the water propulsion motor driver via the second intermediate relay.
[0010] In at least one embodiment, the servo motor is a DC servo motor with a brake; the control line of the servo motor brake is connected to the servo motor driver, and the controller controls the servo motor driver through a high-speed communication bus to realize the brake action and motor action; Alternatively, the rudder is mounted in the center of the stern of the unmanned sailboat; two water-powered motors and the two propellers they drive are mounted at the stern of the unmanned sailboat and arranged symmetrically about the central axis of the unmanned sailboat.
[0011] Secondly, the technical solution of the present invention also provides a control method for rudder blade zero-point correction of an unmanned sailboat, comprising: When installing the rudder blades, calibrate the rudder blades to zero position and record the first coded value corresponding to the rudder blades to zero position; Before launching the unmanned sailboat, adjust the rudder position to near the zero position, so that the rudder is in the... Within the range, among which, It refers to the reduction ratio of the speed reducer; After the unmanned sailboat is launched, it will perform the first zeroing process to bring the rudder blade to the true zero point position. The first zeroing process includes: The controller powers on the rudder motor driver, reads the current encoder position value, and if it is equal to the first encoded value, the rudder blade is at the true zero point position, and the first return-to-zero process ends. If it is not equal to the first encoded value, the controller configures the control mode of the rudder motor driver to position mode and enables it, then releases the rudder motor brake, and then moves the rudder motor to the first encoded value. When the driver status indication is in place, the rudder blade is at the true zero point position, writes the current position of the rudder blade to the non-volatile memory unit, and ends the first return-to-zero process.
[0012] Thirdly, the technical solution of the present invention also provides a control method for zeroing the rudder blade of an unmanned sailboat, for routine maintenance of the rudder blade at zero point on an unmanned sailboat, including: The controller is powered on and performs the second zeroing process, reading the latest stored value of the encoder position from the non-volatile memory unit; When the rudder motor driver is powered on, the controller reads the initial encoder position value from the driver. Configure the servo motor driver to position mode and enable it, then release the servo motor brake; Set the encoder target position and start the rudder motor movement; Once the movement is complete, the rudder blade will be at zero point. The controller will write the position angle value to the controller's non-volatile storage unit and end the second zeroing process. in,
[0013] in, Indicates the latest stored value; Indicates the initial value; Indicates the reduction ratio of the speed reducer; This indicates the number of pulses per revolution of the encoder.
[0014] In at least one embodiment, the method for updating the stored values is as follows: When the controller is powered on, it reads the stored value of the encoder position from the non-volatile memory unit; When the rudder motor driver is powered on, the controller reads the initial value of the encoder position from the driver; During the movement of the rudder blade, the controller reads the real-time value of the encoder position from the driver, and calculates the true real-time position angle value of the rudder blade based on the read stored value, initial value and real-time value. After the rudder motor driver loses power or before the controller is turned off, the controller writes the real-time position angle value of the rudder blade into the non-volatile storage unit and records it as the latest stored value of the encoder position. The calculation method for the actual real-time position angle value of the rudder blade is as follows:
[0015] In the formula, This represents the actual real-time position and angle value of the rudder blade; Indicates the stored value; Indicates the initial value; Represents real-time values; Indicates the reduction ratio of the speed reducer; This indicates the number of pulses per revolution of the encoder.
[0016] Fourthly, the technical solution of the present invention also provides a control method for the rudder blade of an unmanned sailboat to return to zero, for automatic zero-point correction after the rudder blade has drifted to zero, including: The controller determines whether to initiate the third zeroing process; If the third zeroing process is initiated, a setting status determination is performed. If no setting status exists, the second zeroing process is executed, the third zeroing process is determined to be over, and the zeroing process is determined to have failed. If a setting status exists, the two water propulsion motors are controlled to run in segments at at least two different speed levels, and during the operation of the last speed level, the pulse value of the single-turn absolute encoder is recorded at a preset frequency. During the operation of the water propulsion motor, the average value of all pulse values recorded in the last segment of the preset frequency is calculated; the target position of the rudder motor is set to the average value, and after the rudder motor moves to that position, the first return-to-zero process is executed to complete the zero-point calibration; After the first zeroing process is completed, with 0 as the stored value and the current encoder position value as the initial value, the real-time position angle value of the rudder blade is recalculated and written into the non-volatile storage unit, which is recorded as the latest stored value of the encoder position. The third zeroing process is then completed and the zeroing is determined to be successful.
[0017] In at least one embodiment, the initiation criterion for the third return-to-zero process is: when the controller determines whether the current unmanned sailboat is in a static environment and static state, it receives the rudder return-to-zero task issued by the shore station, and the unmanned sailboat officially enters the third return-to-zero process. Alternatively, if the controller determines that the unmanned sailboat is currently in a static environment and in a static state without an autonomous cruise mission and has not successfully completed the third zeroing process within the past set number of days, the unmanned sailboat will officially begin to enter the third zeroing process. In at least one embodiment, the determination of whether the unmanned sailboat is in a static environment and a static state is based on the following criteria: when the sailboat's orientation measured by the controller through the positioning and orientation sensor does not change effectively for more than a first set time, and the water flow speed measured by the current meter remains at 0 for more than the first set time, and the wind speed measured by the wind speed and direction sensor remains at 0 for more than the first set time.
[0018] In at least one embodiment, the determination of the set state is as follows: control two water propulsion motors to operate in segments at at least two different speed levels, and after the operation of the last speed level is completed, check the ship's attitude, true wind speed and true water speed within a second set time period. If there is a situation where the course does not change and the true wind speed and true water speed are 0 for 1 minute, or the ship is stationary and the true wind speed and true water speed are 0 for 1 minute, then it is determined that the set state exists.
[0019] The beneficial effects of the above-described technical solution of the present invention are as follows: 1) The control system and method for rudder blade zeroing of unmanned sailboats of the present invention enable unmanned sailboats to automatically complete rudder blade zeroing in the open ocean without having to dock for rudder blade zeroing after launching. This solves the problem of inaccurate steering caused by rudder blade zeroing drift when unmanned sailboats perform long-term ocean missions. It has the characteristics of no need for docking for correction after launching, no hydraulic components, high accuracy and high reliability.
[0020] 2) The controller of the control system for rudder return to zero of unmanned sailboats of the present invention achieves tracking of the absolute position of the rudder and automatic zero-point correction by comprehensively processing encoder data and data from multiple environmental sensors without relying on multi-turn encoders or external sensors.
[0021] 3) The control system for rudder return to zero of unmanned sailboats of the present invention uses a single-turn absolute encoder in the control system and is combined with the control method provided in the solution. This not only eliminates the dependence of the rudder return system on external position switches and improves the reliability of the control system, but also avoids the problems of high cost and need for additional backup power supply caused by using multi-turn absolute encoders.
[0022] 4) This invention utilizes multiple onboard sensors (positioning, ocean current, wind speed) to comprehensively determine the optimal static environment required for returning to zero, and uses its own propulsion system to simulate water flow for auxiliary correction. The method is ingenious and practical, with strong environmental adaptability. Moreover, the entire solution is based on the existing power and sensing systems of unmanned sailboats and expands their functions without the need to add additional complex mechanical structures or hydraulic components. It is easy to implement and has a high degree of system integration. Attached Figure Description
[0023] The accompanying drawings, which form part of this invention, are used to provide a further understanding of the invention. The illustrative embodiments of the invention and their descriptions are used to explain the invention and do not constitute an improper limitation of the invention.
[0024] Figure 1 This is a schematic diagram of the control system for rudder blade homing of an unmanned sailboat disclosed in Embodiment 1 of the present invention; Figure 2 This is a schematic flowchart of the first zero-return process disclosed in Embodiment 2 of the present invention; Figure 3 This is a schematic flowchart of the second zeroing process disclosed in Embodiment 3 of the present invention; Figure 4 This is a flowchart illustrating the steps of the third zero-process start criterion disclosed in Embodiment 4 of the present invention; Figure 5 This is a schematic diagram of the steps of the third zeroing process disclosed in Embodiment 4 of the present invention. Detailed Implementation
[0025] It should be noted that the following detailed description is illustrative and intended to provide further explanation of the invention. Unless otherwise specified, all technical and scientific terms used in this invention have the same meaning as commonly understood by one of ordinary skill in the art to which this invention pertains.
[0026] As described in the background section, the purpose of this invention is to overcome the shortcomings of the prior art and provide a control system and method for zeroing the rudder blade of an unmanned sailboat. This system features no need for shore-based correction after launch, no hydraulic components, high accuracy, and strong reliability, thus solving the problem of automatic correction of rudder blade zero-point drift during ocean operations of unmanned sailboats.
[0027] Example 1 In a typical embodiment of the present invention, such as Figure 1 As shown, this embodiment discloses a control system for rudder blade homing of an unmanned sailboat, including: a controller, a rudder motor driver, a rudder motor, a single-turn absolute encoder, two water propulsion motor drivers, two water propulsion motors, a positioning and orientation sensor, a current meter, and a wind speed and direction sensor.
[0028] In this embodiment, the rudder motor is connected to the rudder blade via a reduction gear and drives the rudder blade to rotate. A single-turn absolute encoder is used to detect the rotation parameters of the rudder motor, and its signal line is connected to the encoder signal interface of the rudder motor driver. As a further embodiment, the rudder motor is a DC servo motor with a brake. The brake control line is connected to the rudder motor driver, and the controller sends control commands via a high-speed communication bus to control the rudder motor driver to achieve brake action and motor action. This is another further embodiment.
[0029] In this embodiment, the communication interface of the water propulsion motor driver is connected to the controller via a high-speed communication bus interface. The controller sends commands via the high-speed communication bus to control the water propulsion motor to achieve motor operation. As a further embodiment, the water propulsion motor is a brakeless DC brushless motor.
[0030] In this embodiment, there are two water propulsion motors and two water propulsion motor drivers. The two water propulsion motors are driven by two water propulsion motor drivers, and each water propulsion motor drives one propeller.
[0031] As a further implementation, the rudder is installed in the center of the stern of the unmanned sailboat, and two water propulsion motors and two propeller blades are installed at the stern and arranged symmetrically about the centerline of the unmanned sailboat. Through the coordinated operation of the rudder, propulsion motors, and propeller blades, the rudder can generate basically equal left and right rudder forces during the third return-to-zero process, thereby allowing the rudder to gradually return to a position close to true zero when the motor brake is released.
[0032] In this embodiment, the high-speed communication bus can be an EtherCAT bus or a CAN bus using the CANopen protocol; no specific restrictions are imposed here.
[0033] In this embodiment, the positioning and orientation sensor, current meter, and wind speed and direction sensor are connected to the controller's sensor communication interface via a sensor communication bus to collect data such as ship attitude, water flow speed, and wind direction and speed.
[0034] In this embodiment, the controller is configured to: calculate and store the absolute position angle of the rudder blade based on the readings of the single-turn absolute encoder; initiate the rudder return process according to the received rudder return command or preset conditions; and determine whether the current environment is stationary based on data from the positioning and orientation sensor, current meter, and wind speed and direction sensor before initiating the third rudder return process. As a further implementation, the controller is connected to a remote communication device to receive rudder return commands from the shore station and can also report status information related to rudder return to the shore station. The controller can be a computer, industrial computer, microcontroller, or other computing device, on which control system software and strategies run. For computers without a high-speed communication bus interface, the computer's USB or TCP interface can be used to expand the CAN bus interface by using a USB-to-CAN or TCP-to-CAN device, or an external Ethercat communication master module can be used to expand the Ethercat master communication interface.
[0035] Since the current drawn by the controller's digital output port (i.e., port D0) is generally not very large, while the operating current required by the rudder motor driver and the water propulsion motor driver is usually very large, they cannot be directly driven using the digital output port. Therefore, in order to ensure effective control of the rudder motor driver and the water propulsion motor driver by the controller, in this embodiment, the control system also includes a first intermediate relay and a second intermediate relay. Specifically, the controller's first digital output port (i.e., port 1 D0) controls the power supply to the rudder motor driver through the first intermediate relay, thereby achieving effective control of the rudder motor; the controller's second digital output port (i.e., port 2 D0) controls the power supply to the water propulsion motor driver through the second intermediate relay, thereby achieving effective control of the water propulsion motor.
[0036] Example 2 In a typical embodiment of the present invention, such as Figure 2 As shown in the figure, this embodiment discloses a control method for zeroing the rudder blade of an unmanned sailboat, used for rudder blade zero-point calibration. It includes a preparation method for rudder blade installation, a preparation method for launching the unmanned sailboat, and a first zeroing process, the specific process of which is as follows: S100. Preparation method for rudder blade installation: When installing the rudder blade, calibrate the rudder blade zero position and record the first code value corresponding to the rudder blade zero position.
[0037] During rudder motor installation, the rudder blade zero position needs to be manually calibrated so that it is close to the encoder's midpoint. Correspondingly, among which, , This refers to the number of pulses per encoder revolution. However, in reality, even after manual calibration, deviations still exist, and the rudder blade zero position cannot perfectly correspond to... At this point, the actual encoder position value corresponding to the zero position of the rudder blade is recorded and recorded as the first encoded value. .
[0038] S200. Preparations before launching an unmanned sailboat: Before launching the unmanned sailboat, adjust the rudder position to near the zero position, so that the rudder is in the... Within the range, among which, It refers to the reduction ratio of the speed reducer. S300. First Zeroing Procedure: After the unmanned sailboat is launched, the first zeroing procedure is performed to bring the rudder blade to the true zero point position.
[0039] The first zeroing process in this step is used for the first automatic zeroing operation after the unmanned sailboat is launched. The steps are as follows: The controller powers on the rudder motor driver and reads the current encoder position value. ,like Equal to the first encoded value If the rudder blade is determined to be at true zero, the first return-to-zero process ends; Not equal to the first encoded value The controller configures the rudder motor driver's control mode to position mode and enables it, then releases the rudder motor brake and moves the rudder motor to the first coded value. (Unit: pulse count) When the driver status indicator is in position, the rudder blade is determined to be at true zero point. The current position of the rudder blade is written to the non-volatile memory unit, and the first homing process ends. It should be noted that the driver status indicator being in position refers to the driver, which constantly monitors the position value fed back by the encoder, generating a status reminder automatically when it receives the encoder feedback value reaching the target position (or within the allowable error range). It does not mean that the driver automatically determines that it has reached the zero point position. The determination of whether the zero point position has been reached must be made by the controller during the homing process.
[0040] After completing the operations in sequence, including the preparation methods for rudder blade installation, the preparation methods before launching, and the first return-to-zero procedure, the rudder blade can be brought to the true zero point position.
[0041] Example 3 In a typical embodiment of the present invention, such as Figure 3As shown, this embodiment provides a control method for zeroing the rudder blade of an unmanned sailboat, to meet the daily maintenance requirements of zeroing the rudder blade of an unmanned sailboat, including: Upon power-up, the controller performs a second zero-return process, reading the latest stored value of the encoder position from the non-volatile memory unit. When the rudder motor driver is powered on, the controller reads the initial encoder position value from the driver. Configure and enable the servo motor driver to position mode, then release the servo motor brake; set the encoder target position in pulse count units and start the servo motor; once the servo motor reaches its target position, the servo blade will be at zero point, and the controller will write the current position angle value to the controller's non-volatile memory unit to update it to the latest stored value. And end the second zero process; in,
[0042] in, Indicates the latest stored value; Indicates the initial value; Indicates the reduction ratio of the speed reducer; This indicates the number of pulses per revolution of the encoder.
[0043] In this embodiment, the method for updating the stored values is as follows: each time the controller is powered on, the previously stored value of the encoder position of the rudder blade is first read from the non-volatile memory unit, denoted as... After that, each time the rudder motor driver is powered on, the controller reads the initial value of the encoder position from the driver and records it as... Subsequently, during the rudder blade's movement, the controller reads real-time data of the encoder position from the driver, which is recorded as... And update in real time; based on the stored values read. Initial values and real-time values Calculate the true real-time position and angle value of the rudder blade. Each time the rudder motor driver loses power or before the controller is shut down, the controller will record the actual real-time position and angle value of the rudder blade. The latest stored value, representing the encoder position, is written into the non-volatile memory unit. ; The calculation method for the actual real-time position angle value of the rudder blade is as follows:
[0044] In the formula, This represents the actual real-time position and angle value of the rudder blade; Indicates the stored value; Indicates the initial value; Represents real-time values; Indicates the reduction ratio of the speed reducer; This indicates the number of pulses per revolution of the encoder.
[0045] In this embodiment, the process after each rudder motor driver is powered on is as follows: the controller first enables the rudder motor driver, and then releases the rudder motor brake; the process after each rudder motor driver is powered off is as follows: the controller first detects the rudder motor speed, ensures that the speed is 0, then enables the rudder motor brake to engage, and then enables the rudder driver to exit the enabled state, and the driver is powered off.
[0046] Example 4 In a typical embodiment of the present invention, such as Figure 5 As shown, this embodiment provides a control method for rudder blade zeroing of an unmanned sailboat, which is used to automatically correct the zero point of the rudder blade after zero-point drift when the unmanned sailboat performs long-term operations in the ocean. The method includes: S100. The controller determines whether to start the third zeroing process.
[0047] In this step, such as Figure 4 As shown, the criteria for initiating the third zeroing process are as follows: when the controller determines whether the current unmanned sailboat is in a static environment and static state and receives the rudder zeroing task issued by the shore station, the unmanned sailboat officially enters the third zeroing process; or, when the controller determines whether the current unmanned sailboat is in a static environment and static state and has no autonomous cruise task and has not successfully carried out the third zeroing process within the past set number of days, the unmanned sailboat officially enters the third zeroing process; in other cases, the third zeroing process cannot be initiated.
[0048] As a further implementation, the determination criteria for whether the unmanned sailboat is in a static environment and a static state are as follows: when the sailboat's position measured by the positioning and orientation sensor does not change effectively for more than a first set time (e.g., 30 minutes), and the water flow speed measured by the current meter remains at 0 for more than the first set time, and the wind speed measured by the wind speed and direction sensor remains at 0 for more than the first set time, the controller determines that the sailboat is currently in a static environment and a static state.
[0049] S200. If it is determined that the third zeroing process is to be started, the setting status is determined. If there is no setting status, the second zeroing process is executed and the third zeroing process is determined to be over and the zeroing process is determined to have failed.
[0050] In this step, the determination of the set state is as follows: control the two water propulsion motors to run in segments at at least two different speed levels, and after the operation of the last speed level is completed, check the ship's attitude, true wind speed and true water speed within the second set time period. If there is a situation where the course does not change and the true wind speed and true water speed are 0 for 1 consecutive minute, or the ship is stationary and the true wind speed and true water speed are 0 for 1 consecutive minute, then the set state is determined to exist.
[0051] Specifically, if the application is a rudder return to zero on an unmanned sailboat with a sail structure, the controller first ensures that the sail has been lowered, then powers on the rudder motor driver and the water propulsion motor driver; executes the second return-to-zero process; disables the rudder motor driver; configures the water propulsion motor driver to speed mode and enables it; from this moment on, it detects the boat's attitude, wind speed and direction, and water flow speed and direction until the third return-to-zero process is completely finished, calculating the true wind speed and true water speed every set interval (e.g., 10 seconds) and storing them in the array arr along with the timestamp; divides the water propulsion motor speed into 5 levels from low to high, first making two water propulsion motors rotate at the first level speed for 1 minute, then making two water propulsion motors rotate at the third level speed for 1 minute, then making two water propulsion motors rotate at the fifth level speed for 1 minute; then engages the rudder motor brake, stopping the two water propulsion motors; and records the current timestamp. From this moment on, wait for the second set time period, up to 15 minutes, during which time the arr array will be updated. The system begins by checking the ship's position, attitude, wind speed, and water speed to determine if there is a situation where the course remains unchanged for one minute and the wind speed and water speed are both 0, or if the ship remains stationary for one minute and the wind speed and water speed are both 0. If this situation does not exist, the second zeroing procedure is executed, the third zeroing procedure ends, and the zeroing operation is deemed a failure. If this situation exists, S300 is executed again.
[0052] S300. If a setting exists, control the two water propulsion motors to operate in segments at at least two different speed levels, and during the operation of the last speed level, record the pulse value of the single-turn absolute encoder at a preset frequency; during the operation of the water propulsion motors, calculate the average value of all pulse values recorded at the last preset frequency segment; set the target position of the rudder motor to the average value, control the rudder motor to move to that position, and then execute the first zero-return process to complete the zero-point calibration.
[0053] In this step, if S200 determines that a setting condition exists, the controller configures the rudder motor driver to position mode and enables it, releases the rudder motor brake, causing the rudder motor to drive the rudder blade to rotate 90° in the positive direction, and then disables the rudder motor driver; the two water propulsion motors are then rotated at the first speed for 3 minutes, then at the third speed for 4 minutes, and then at the fifth speed for 5 minutes, with real-time values continuously recorded at a preset frequency during the last 3 minutes. (e.g., record once per second) ), store in a new array arr2; tighten the brake on the rudder motor, causing the two water propulsion motors to stop rotating; let Equals the average value in arr2; enables the servo motor driver and releases the brake; sets the servo motor target position to... The rudder motor is moved; once it reaches its position, the rudder motor brake engages; the water propulsion motor driver and the rudder motor driver are de-energized; after waiting 10 seconds, the first return-to-zero process is executed.
[0054] S400. After the first zeroing process is completed, with 0 as the stored value and the current encoder position value as the initial value, the real-time position angle value of the rudder blade is recalculated and written into the non-volatile storage unit as the latest stored value of the encoder position. The third zeroing process is then completed and the zeroing is determined to be successful.
[0055] In this step, after the first zeroing process is completed, the stored value is... , And recalculate the actual real-time position and angle value of the rudder blade. Write it into the non-volatile storage unit and record it as the latest stored value of the encoder position. This completes the third zeroing process and determines that the zeroing was successful.
[0056] The above description is merely a preferred embodiment of the present invention and is not intended to limit the invention. Various modifications and variations can be made to the present invention by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.
Claims
1. A control system for rudder blade zeroing on an unmanned sailboat, characterized in that, include: Controller, rudder motor driver, rudder motor, single-turn absolute encoder, two water propulsion motor drivers, two water propulsion motors, positioning and orientation sensor, ocean current meter, and wind speed and direction sensor; The rudder motor is connected to the rudder blade via a reduction gear mechanism, and a single-turn absolute encoder is used to detect the rotation parameters of the rudder motor. The rudder motor driver is connected to the controller via a high-speed communication bus and drives the rudder motor. The water propulsion motor driver is connected to the controller via a high-speed communication bus and drives the water propulsion motor, which is connected to the propeller. The positioning and orientation sensor, current meter, and wind speed and direction sensor are connected to the controller to collect data on ship attitude, water flow speed, and wind direction and speed. The controller is configured to: calculate and store the absolute position angle of the rudder blade based on the reading of the single-turn absolute encoder; initiate the homing process according to the received homing command or preset conditions; and determine whether the current environment is stationary based on the data from the positioning and orientation sensor, current meter, and wind speed and direction sensor before initiating the third homing process.
2. The control system for rudder blade zeroing of an unmanned sailboat as described in claim 1, characterized in that, It also includes a first intermediate relay and a second intermediate relay; The controller's first digital output port controls the power supply to the rudder motor driver via the first intermediate relay; The controller's second digital output port controls the power supply to the water propulsion motor driver via the second intermediate relay.
3. The control system for rudder blade zeroing of an unmanned sailboat as described in claim 1, characterized in that, The servo motor is a DC servo motor with a brake; the control line of the servo motor brake is connected to the servo motor driver, and the controller controls the servo motor driver through a high-speed communication bus to realize the brake action and motor action; Alternatively, the rudder is mounted in the center of the stern of the unmanned sailboat; two water-powered motors and the two propellers they drive are mounted at the stern of the unmanned sailboat and arranged symmetrically about the central axis of the unmanned sailboat.
4. A control method for rudder blade zeroing of an unmanned sailboat, characterized in that, Used for rudder blade zero-point correction, including: When installing the rudder blades, calibrate the rudder blades to zero position and record the first coded value corresponding to the rudder blades to zero position; Before launching the unmanned sailboat, adjust the rudder position to near the zero position, so that the rudder is in the... Within the range, among which, It refers to the reduction ratio of the speed reducer; After the unmanned sailboat is launched, it will perform the first zeroing process to bring the rudder blade to the true zero point position. The first zeroing process includes: The controller powers on the rudder motor driver, reads the current encoder position value, and if it is equal to the first encoded value, the rudder blade is at the true zero point position, and the first return-to-zero process ends. If it is not equal to the first encoded value, the controller configures the control mode of the rudder motor driver to position mode and enables it, then releases the rudder motor brake, and then moves the rudder motor to the first encoded value. When the driver status indication is in place, the rudder blade is at the true zero point position, writes the current position of the rudder blade to the non-volatile memory unit, and ends the first return-to-zero process.
5. A control method for rudder blade zeroing of an unmanned sailboat, characterized in that, For routine zero-point maintenance of the rudder blades of unmanned sailboats, including: The controller is powered on and performs the second zeroing process, reading the latest stored value of the encoder position from the non-volatile memory unit; When the rudder motor driver is powered on, the controller reads the initial encoder position value from the driver. Configure the servo motor driver to position mode and enable it, then release the servo motor brake; Set the encoder target position and start the rudder motor movement; Once the movement is complete, the rudder blade will be at zero point. The controller will write the position angle value to the controller's non-volatile storage unit and end the second zeroing process. in, in, Indicates the latest stored value; Indicates the initial value; Indicates the reduction ratio of the speed reducer; This indicates the number of pulses per revolution of the encoder.
6. The control method for rudder blade return to zero for an unmanned sailboat as described in claim 5, characterized in that, The method for updating stored values is as follows: When the controller is powered on, it reads the stored value of the encoder position from the non-volatile memory unit; When the rudder motor driver is powered on, the controller reads the initial value of the encoder position from the driver; During the movement of the rudder blade, the controller reads the real-time value of the encoder position from the driver, and calculates the true real-time position angle value of the rudder blade based on the read stored value, initial value and real-time value. After the rudder motor driver loses power or before the controller is turned off, the controller writes the real-time position angle value of the rudder blade into the non-volatile storage unit and records it as the latest stored value of the encoder position. The calculation method for the actual real-time position angle value of the rudder blade is as follows: In the formula, This represents the actual real-time position and angle value of the rudder blade; Indicates the stored value; Indicates the initial value; Represents real-time values; Indicates the reduction ratio of the speed reducer; This indicates the number of pulses per revolution of the encoder.
7. A control method for rudder blade zeroing of an unmanned sailboat, characterized in that, Automatic zero-point correction after rudder blade zero-point drift includes: The controller determines whether to initiate the third zeroing process; If the third zeroing process is initiated, a setting status determination is performed. If no setting status exists, the second zeroing process is executed, the third zeroing process is determined to be over, and the zeroing process is determined to have failed. If a setting status exists, the two water propulsion motors are controlled to run in segments at at least two different speed levels, and during the operation of the last speed level, the pulse value of the single-turn absolute encoder is recorded at a preset frequency. During the operation of the water propulsion motor, the average value of all pulse values recorded in the last segment of the preset frequency is calculated; the target position of the rudder motor is set to the average value, and after the rudder motor moves to that position, the first return-to-zero process is executed to complete the zero-point calibration; After the first zeroing process is completed, with 0 as the stored value and the current encoder position value as the initial value, the real-time position angle value of the rudder blade is recalculated and written into the non-volatile storage unit, which is recorded as the latest stored value of the encoder position. The third zeroing process is then completed and the zeroing is determined to be successful.
8. The control method for rudder blade return to zero for an unmanned sailboat as described in claim 7, characterized in that, The trigger criterion for the third zeroing process is: when the controller determines whether the unmanned sailboat is in a static environment and static state, it receives the rudder return to zero task issued by the shore station, and the unmanned sailboat officially enters the third zeroing process. Alternatively, if the controller determines that the unmanned sailboat is currently in a stationary environment and in a stationary state without an autonomous cruise mission and has not successfully completed the third zeroing process within the past set number of days, the unmanned sailboat will officially begin the third zeroing process.
9. The control method for rudder blade return to zero for an unmanned sailboat as described in claim 8, characterized in that, The criteria for determining whether an unmanned sailboat is in a static environment or a static state are as follows: when the sailboat's position, as measured by the positioning and orientation sensor, does not change effectively for more than a first set time, and the water flow speed measured by the current meter remains at 0 for more than the first set time, and the wind speed measured by the wind speed and direction sensor remains at 0 for more than the first set time.
10. The control method for rudder blade return to zero for an unmanned sailboat as described in claim 7, characterized in that, The method for determining the set state is as follows: control the two water propulsion motors to operate in segments at at least two different speed levels, and after the operation of the last speed level is completed, check the ship's attitude, true wind speed, and true water speed during the second set time period. If there is a situation where the course does not change and the true wind speed and true water speed are 0 for 1 consecutive minute, or the ship is stationary and the true wind speed and true water speed are 0 for 1 consecutive minute, then the set state is determined to exist.