A method and system for controlling the heading of an unmanned sailboat based on the linkage between wing sail and rudder

By adopting the heading control method of wing sail and rudder linkage in unmanned sailboats, the problem of navigation accuracy reduction caused by decoupling of wing sail and rudder in the prior art is solved, and higher heading control accuracy and track controllability are achieved .

CN115454098BActive Publication Date: 2025-02-07WUHAN YIZHINIAO TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211239323.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-10-11
Publication Date
2025-02-07
Estimated Expiration
2042-10-11

Smart Images

  • Figure CN115454098B_ABST
    Figure CN115454098B_ABST
Patent Text Reader

Abstract

The present invention proposes a method and system for controlling the heading of an unmanned sailboat based on the linkage of a wing sail and a rudder, and relates to the field of navigation technology. The method comprises: obtaining the position information of all task points. Obtaining and calculating the desired heading and the desired sail angle of the wing sail according to the current position, current heading and relative wind direction of the target unmanned sailboat. Calculating the desired rudder angle according to the desired heading, the current heading and the desired sail angle of the wing sail. Adjusting the rudder angle of the target unmanned sailboat according to the desired rudder angle and the current heading, and judging whether the target unmanned sailboat can reach the desired heading. Within a preset time period, if the rudder angle of the target unmanned sailboat reaches the maximum rudder angle and still cannot be adjusted to the desired heading, the heading is adjusted by adjusting the bow thruster. Thus, by coupling the wing sail angle of the unmanned sailboat with the rudder and increasing the bow thruster to compensate for the insufficient bowing moment of the steering gear, the robustness and operation speed are improved, and the accuracy of heading control and heading keeping performance are increased.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of navigation technology, and in particular to a method and system for controlling the heading of an unmanned sailboat based on the linkage of a wing sail and a rudder. Background Art

[0002] With the development of science and technology, the application of navigation technology is becoming more and more extensive. It is not only used in military, transportation, passenger transportation and other fields, but also in unmanned operations such as water detection, detection, and monitoring.

[0003] Unmanned sailboat control technology has been applied to navigation technology, making unmanned sailboats more and more convenient in navigation-related operations, greatly improving work efficiency, and reducing driver fatigue and dependence on drivers. However, existing unmanned sailboat control technology mainly measures relevant data such as wind force and wind direction, and formulates navigation plans based on the data to achieve unmanned driving.

[0004] At present, although the existing unmanned sailboat control technology has improved work efficiency to a certain extent, the unmanned sailboat is affected by wind during navigation (except in non-navigable areas), which will reduce the navigation accuracy of the ship. It is necessary to gradually eliminate the deviation distance by changing sides, and the overall effect is a Z-shaped navigation. As the wind direction continues to change, its track cannot be accurately controlled.

[0005] The main reason for the above is that the control logic of the wing sail and rudder of the unmanned sailboat are decoupled and controlled independently. Summary of the invention

[0006] The purpose of the present invention is to provide a method and system for controlling the heading of an unmanned sailboat based on the linkage of a wing sail and a rudder, so as to improve the problem in the prior art that the track of the unmanned sailboat cannot be accurately controlled due to the decoupling of the control logic of the wing sail and the rudder of the unmanned sailboat.

[0007] The embodiment of the present invention is achieved as follows:

[0008] In a first aspect, an embodiment of the present application provides a method for controlling the heading of an unmanned sailboat based on the linkage between a wing sail and a rudder, which comprises the following steps:

[0009] S110: In response to the user setting a task point operation, obtain the location information of all task points, where the coordinates of the next task point from the current position are P next (lon next ,lat next ),lon next is the longitude of the mission point, lat next is the latitude of the mission point;

[0010] S120: Obtain the current position P0 (lon0, lat0) of the target unmanned sailboat, the current heading ψ0, and the current relative wind direction H relative to the target unmanned sailboat wind , where lon0 is the longitude of the current location and lat0 is the latitude of the current location;

[0011] S130: According to the task point coordinates P next (lon next ,lat next ), current position P0 (lon0, lat0) and relative wind direction H wind , calculate the expected heading ψ from the current position to the task point tar , and according to the relative wind direction H wind , get the desired sail angle of the wing sail tar , based on the desired sail angle of the wingsail tar , sending Sail to the wingsail drive motor tar Instructions to bring the wing sail to the desired sail angle tar The corresponding sail angle position;

[0012] S140: According to the desired heading ψ tar , current heading ψ0 and desired sail angle Sail tar , calculate the desired rudder angle δ tar ;

[0013] S150: According to the desired rudder angle δ tar Based on the position PID control algorithm, the rudder angle of the target unmanned sailboat is adjusted and the current heading ψ0 is determined to determine whether the target unmanned sailboat can reach the desired heading ψ tar , if yes, jump to S110, if no, jump to S160;

[0014] S160: Within the preset time period, if the rudder angle of the target unmanned sailboat reaches the maximum rudder angle and still cannot be adjusted to the desired heading ψ tar , the heading is adjusted by adjusting the bow thruster.

[0015] In some embodiments of the present invention, the above-mentioned task point coordinates P next (lon next ,lat next ), current position P0 (lon0, lat0) and relative wind direction H wind , calculate the expected heading ψ from the current position to the task point tar The steps include:

[0016] Using the formula Calculate the current position P0 (lon0, lat0) of the target unmanned sailboat to the mission point P next(lon next ,lat next )’s expected heading ψ tar , where the relative wind direction H wind When [0°, +30°], ψ tar = +30°, when relative wind direction H wind When [-30°, 0°], ψ tar =-30°.

[0017] In some embodiments of the present invention, the above-mentioned relative wind direction H wind , get the desired sail angle of the wing sail tar The steps include:

[0018] Obtain a corresponding table of the relationship between relative wind direction and wing sail angle;

[0019] According to the relationship table and relative wind direction H wind , get the desired sail angle of the wing sail tar .

[0020] In some embodiments of the present invention, the above-mentioned desired heading ψ tar , current heading ψ0 and desired sail angle Sail tar , calculate the desired rudder angle δ tar The steps include:

[0021] Decompose the force F2 on the wing sail into the force F that provides the target unmanned sailboat with forward momentum. 2y =F2×cos(Sail tar ) and the steering force F that causes the target unmanned sailboat to deviate from its current course 2x =F2×sin(Sail tar ), and based on the steering force, the steering torque M2=F that causes the target unmanned sailboat to deviate from the current course is obtained. 2x ×sin(Sail tar )×L2, where L2 is the distance from the wing sail force application point to the center of gravity of the target unmanned sailboat;

[0022] After decomposing the rudder force F3, we get the steering torque M3=F 3x ×cos(δ tar )×L3, where F 3x The rudder force F3 is decomposed to obtain the turning force of the target unmanned sailboat to deviate from the current course. L3 is the distance from the rudder force application point to the center of gravity of the target unmanned sailboat.

[0023] According to the moment balance of the target unmanned sailboat’s heading, M2+M3=0;

[0024] According to M2=F2x ×sin(Sail tar )×L2、M3=F 3x ×cos(δ tar )×L3 and M2+M3=0, and the desired steering angle δ is obtained tar .

[0025] In some embodiments of the present invention, the above-mentioned desired rudder angle δ tar Based on the position PID control algorithm, the rudder angle of the target unmanned sailboat is adjusted and the current heading ψ0 is determined to determine whether the target unmanned sailboat can reach the desired heading ψ tar The steps include:

[0026] Through the position PID control algorithm, according to the formula e = ψ tar -ψ0 adjusts the rudder angle e of the target unmanned sailboat, and according to the formula

[0027] The rudder angle control value δ(n) is calculated, where δ(n) is the output of the PID adjustment unit at the nth sampling moment, i.e., the rudder angle control value, e(n) is the actual deviation obtained by the input unit at the nth sampling moment, and K P is the proportionality coefficient, K I is the integration coefficient, K D is the differential coefficient, Δ is the sail force factor, V wind is the current wind speed, L2 is the distance from the wing sail force application point to the center of gravity of the target unmanned sailboat;

[0028] While adjusting the rudder angle of the target unmanned sailboat according to the rudder angle control value, it is determined whether the target unmanned sailboat can reach the desired heading ψ tar .

[0029] In some embodiments of the present invention, the above step S160 includes:

[0030] If the heading is adjusted by adjusting the bow thruster, then M1+M2+M3=0, and the rudder angle of the target unmanned sailboat is full rudder δ max , M2 value, wing sail angle and M3 value are all fixed, where M1 is the bow pitch moment provided by the bow thruster of the target unmanned sailboat, M2 is the steering moment of the wing sail to make the target unmanned sailboat deviate from the current heading, and M3 is the steering moment of the rudder to make the target unmanned sailboat deviate from the current heading;

[0031] Through the PID control algorithm, according to the formula e = ψ tar -ψ0 and formula Adjust the heading of the target unmanned sailboat, where U(n) is the output of the PID adjustment unit at the nth sampling moment, which is the motor speed of the bow thruster, e(n) is the actual deviation obtained by the input unit at the nth sampling moment, and K P is the proportionality coefficient, K I is the integration coefficient, K D is the differential coefficient.

[0032] In some embodiments of the present invention, before the above step S110, the method further includes:

[0033] All devices of the target unmanned sailboat are powered on and checked in turn to complete the initialization of each device.

[0034] In a second aspect, an embodiment of the present application provides an unmanned sailboat heading control system based on the linkage of a wing sail and a rudder, comprising:

[0035] The task point setting module is used to obtain the location information of all task points in response to the user setting task point operation, where the coordinates of the next task point from the current position are P next (lon next ,lat next ),lon next is the longitude of the mission point, lat next is the latitude of the mission point;

[0036] The position acquisition module is used to obtain the current position P0 (lon0, lat0) of the target unmanned sailboat, the current heading ψ0 and the current relative wind direction H relative to the target unmanned sailboat. wind , where lon0 is the longitude of the current location and lat0 is the latitude of the current location;

[0037] The expected heading calculation module is used to calculate the target heading according to the coordinates of the task point P. next (lon next ,lat next ), current position P0 (lon0, lat0) and relative wind direction H wind , calculate the expected heading ψ from the current position to the task point tar , and according to the relative wind direction H wind , get the desired sail angle of the wing sail tar , based on the desired sail angle of the wingsail tar , sending Sail to the wingsail drive motor tar Instructions to bring the wing sail to the desired sail angle tar The corresponding sail angle position;

[0038] The desired rudder angle calculation module is used to calculate the desired heading ψ tar, current heading ψ0 and desired sail angle Sail tar , calculate the desired rudder angle δ tar ;

[0039] The rudder angle adjustment module is used to adjust the rudder angle according to the desired rudder angle δ tar Based on the position PID control algorithm, the rudder angle of the target unmanned sailboat is adjusted and the current heading ψ0 is determined to determine whether the target unmanned sailboat can reach the desired heading ψ tar If yes, jump to the task point setting module; if no, jump to the bow thruster adjustment module;

[0040] The bow thruster adjustment module is used to adjust the target unmanned sailboat to the desired heading ψ if the rudder angle reaches the maximum rudder angle within the preset time period. tar , the heading is adjusted by adjusting the bow thruster.

[0041] In a third aspect, an embodiment of the present application provides an electronic device, comprising a memory for storing one or more programs and a processor. When the one or more programs are executed by the processor, any method in the first aspect is implemented.

[0042] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements a method as described in any one of the first aspects above.

[0043] Compared with the prior art, the embodiments of the present invention have at least the following advantages or beneficial effects:

[0044] The present invention provides a method and system for controlling the heading of an unmanned sailboat based on the linkage of a wing sail and a rudder, which comprises the following steps: S110: when responding to the user's operation of setting a task point, obtaining the position information of all task points, wherein the coordinates of the next task point from the current position are P next (lon next ,lat next ),lon next is the longitude of the mission point, lat next is the latitude of the mission point. S120: Obtain the current position P0 (lon0, lat0) of the target unmanned sailboat, the current heading ψ0 and the current relative wind direction H relative to the target unmanned sailboat wind , where lon0 is the longitude of the current position and lat0 is the latitude of the current position. S130: According to the coordinates of the task point P next (lon next ,lat next ), current position P0 (lon0, lat0) and relative wind direction H wind , calculate the expected heading ψ from the current position to the task pointtar , and according to the relative wind direction H wind , get the desired sail angle of the wing sail tar , based on the desired sail angle of the wingsail tar , sending Sail to the wingsail drive motor tar Instructions to bring the wing sail to the desired sail angle tar S140: According to the desired heading ψ tar , current heading ψ0 and desired sail angle Sail tar , calculate the desired rudder angle δ tar S150: According to the desired rudder angle δ tar Based on the position PID control algorithm, the rudder angle of the target unmanned sailboat is adjusted and the current heading ψ0 is determined to determine whether the target unmanned sailboat can reach the desired heading ψ tar , if it can, jump to S110, if not, jump to S160. The method and system first ignore the effect of the bow roll moment M1 provided by the bow thruster, and only adjust the heading through the servo. Because the bow thruster has a large power, it has a greater impact on the endurance of the unmanned sailboat. Prioritizing the use of the servo can improve the endurance of the unmanned sailboat. However, when the servo reaches the maximum rudder angle and still cannot maintain the heading of the sailboat, jump to S160. Otherwise, wait for the target unmanned sailboat to reach the task point, jump to S110, and calculate the next task point. S160: Within the preset time period, if the rudder angle of the target unmanned sailboat reaches the maximum rudder angle and still cannot be adjusted to the desired heading ψ tar , the heading is adjusted by adjusting the bow thruster. The method and system improve the robustness of control and the operation speed by coupling the wing sail angle of the unmanned sailboat with the rudder and increasing the bow thruster to compensate for the insufficient bowing moment of the servo, greatly increase the accuracy of the unmanned sailboat's heading control and the heading keeping performance, and improve the track controllability. In addition, the method and system are simple to program, have low requirements on hardware equipment, and can reduce manufacturing costs. BRIEF DESCRIPTION OF THE DRAWINGS

[0045] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the drawings required for use in the embodiments are briefly introduced below. It should be understood that the following drawings only show certain embodiments of the present invention and therefore should not be regarded as limiting the scope. For ordinary technicians in this field, other related drawings can be obtained based on these drawings without creative work.

[0046] Figure 1 A flow chart of a method for controlling the heading of an unmanned sailboat based on the linkage of a wing sail and a rudder provided by an embodiment of the present invention;

[0047] Figure 2A flow chart of another method for controlling the heading of an unmanned sailboat based on the linkage of a wing sail and a rudder provided in an embodiment of the present invention;

[0048] Figure 3 A force analysis diagram of an unmanned sailboat provided by an embodiment of the present invention;

[0049] Figure 4 A structural block diagram of an unmanned sailboat heading control system based on wing sail and rudder linkage provided by an embodiment of the present invention;

[0050] Figure 5 A schematic structural block diagram of an electronic device provided by an embodiment of the present invention.

[0051] Icons: 110 - task point setting module; 120 - position acquisition module; 130 - desired heading calculation module; 140 - desired rudder angle calculation module; 150 - rudder angle adjustment module; 160 - bow thrust adjustment module; 101 - memory; 102 - processor; 103 - communication interface. DETAILED DESCRIPTION

[0052] In order to make the purpose, technical solution and advantages of the embodiments of the present application clearer, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application. Obviously, the described embodiments are part of the embodiments of the present application, rather than all the embodiments. The components of the embodiments of the present application described and shown in the drawings here can be arranged and designed in various different configurations.

[0053] Therefore, the following detailed description of the embodiments of the present application provided in the accompanying drawings is not intended to limit the scope of the present application for which protection is sought, but merely represents selected embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in the field without creative work are within the scope of protection of the present application.

[0054] It should be noted that similar reference numerals and letters represent similar items in the following drawings, so once an item is defined in one drawing, it does not need to be further defined and explained in the subsequent drawings. At the same time, in the description of this application, if the terms "first", "second", etc. appear, they are only used to distinguish the description and cannot be understood as indicating or implying relative importance.

[0055] It should be noted that, in this article, relational terms such as first and second, etc. are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, if the terms "include", "comprise" or any other variant thereof appear, it is intended to cover non-exclusive inclusion, so that the process, method, article or equipment including a series of elements includes not only those elements, but also includes other elements not explicitly listed, or also includes elements inherent to such process, method, article or equipment. In the absence of further restrictions, if an element defined by the sentence "comprises a..." appears, it does not exclude the presence of other identical elements in the process, method, article or equipment including the element.

[0056] In the description of the present application, it should be noted that if the terms "upper", "lower", "inside", "outside", etc. appear to indicate an orientation or position relationship, they are based on the orientation or position relationship shown in the drawings, or are the orientation or position relationship in which the product of the application is usually placed when used. This is only for the convenience of describing the present application and simplifying the description, and does not indicate or imply that the device or element referred to must have a specific orientation, be constructed and operated in a specific orientation, and therefore cannot be understood as a limitation on the present application.

[0057] In the description of this application, it is also necessary to explain that, unless otherwise clearly specified and limited, the terms "set" and "connection" should be understood in a broad sense, for example, it can be a fixed connection, a detachable connection, or an integral connection; it can be a mechanical connection or an electrical connection; it can be a direct connection, or it can be an indirect connection through an intermediate medium, or it can be the internal connection of two components. For ordinary technicians in this field, the specific meanings of the above terms in this application can be understood according to specific circumstances.

[0058] In conjunction with the accompanying drawings, some embodiments of the present application are described in detail below. In the absence of conflict, the following embodiments and features in the embodiments can be combined with each other.

[0059] Example

[0060] Please refer to Figure 1 and Figure 2 , Figure 1 FIG. 1 is a flow chart of a method for controlling the heading of an unmanned sailboat based on the linkage between a wing sail and a rudder provided by an embodiment of the present invention. Figure 2 The flowchart of another unmanned sailboat heading control method based on the linkage of a wing sail and a rudder provided by an embodiment of the present invention is shown. The embodiment of the present application provides an unmanned sailboat heading control method based on the linkage of a wing sail and a rudder, which comprises the following steps:

[0061] S110: In response to the user setting a task point operation, obtain the location information of all task points, where the coordinates of the next task point from the current position are P next (lon next ,lat next ),lon next is the longitude of the mission point, lat next is the latitude of the mission point;

[0062] Specifically, when the target unmanned sailboat performs a task, the task point location information can be input to the controller by directly inputting the latitude and longitude coordinates, clicking and selecting an electronic map or an electronic chart, etc., at least one task point. The controller used in this method can be an X86 architecture or ARM architecture embedded device.

[0063] S120: Obtain the current position P0 (lon0, lat0) of the target unmanned sailboat, the current heading ψ0, and the current relative wind direction H relative to the target unmanned sailboat wind , where lon0 is the longitude of the current location and lat0 is the latitude of the current location;

[0064] Specifically, the latitude and longitude data of the target unmanned sailboat position, i.e., the current position P0 (lon0, lat0), can be obtained through GPS, the current heading ψ0 can be obtained through the gyrocompass, and the current relative wind direction H relative to the target unmanned sailboat can be obtained through the wind speed and direction meter. wind .

[0065] S130: According to the task point coordinates P next (lon next ,lat next ), current position P0 (lon0, lat0) and relative wind direction H wind , calculate the expected heading ψ from the current position to the task point tar , and according to the relative wind direction H wind , get the desired sail angle of the wing sail tar , based on the desired sail angle of the wingsail tar , sending Sail to the wingsail drive motor tar Instructions to bring the wing sail to the desired sail angle tar The corresponding sail angle position;

[0066] Specifically, according to the task point coordinates P next (lon next ,lat next ), current position P0 (lon0, lat0) and relative wind direction H wind , calculate the expected heading ψ from the current position to the task point tar The steps include: using the formula Calculate the current position P0 (lon0, lat0) of the target unmanned sailboat to the mission point P next (lon next ,lat next )’s expected heading ψ tar , where the relative wind direction H wind When [0°, +30°], ψ tar = +30°, when relative wind direction H wind When [-30°, 0°], ψ tar =-30°. It should be noted that when the relative wind direction H wind When it is neither [0°, +30°] nor [-30°, 0°], ψ tar For the formula Calculated.

[0067] In some implementations of this embodiment, the above-mentioned relative wind direction H wind , get the desired sail angle of the wing sail tar The step includes: obtaining a corresponding table of the relationship between the relative wind direction and the wing sail angle. wind , get the desired sail angle of the wing sail tar .

[0068] Among them, the relationship between the relative wind direction and the wing sail angle is shown in Table 1:

[0069] Table 1: Correspondence between relative wind direction and wing sail angle

[0070] Serial number Relative wind direction angle Wing sail angle 1 [-30°,+30°] 0 2 [+30°,+60°] -15° 3 [+60°,+90°] -30° 4 [+90°,+135°] -60° 5 [+135°,+180°] -90° 6 [-30°,-60°] +15° 7 [-60°,-90°] +30° 8 [-90°,-135°] +60° 9 [-135°,-180°] +90°

[0071] Specifically, the wingsail angle range is [-90°, +90°], and the relative wind direction H obtained by the above relationship table and the wind speed and direction instrument is wind , we can get the desired sail angle of the wing sail tar Based on the desired sail angle of the wing sail tar The controller of the target unmanned sailboat sends Sail to the wing sail drive motor. tar The command makes the wing sail reach the specified sail angle position, at which time the wing sail can provide the target unmanned sailboat with the maximum sailing power.

[0072] S140: According to the desired heading ψ tar , current heading ψ0 and desired sail angle Sail tar , calculate the desired rudder angle δ tar ;

[0073] Please refer to Figure 3 , Figure 3The figure shows a force analysis diagram of an unmanned sailboat provided by an embodiment of the present invention. Adding a bow thruster to the unmanned sailboat can provide a bow pitch moment M1 = F1 × L1 for the sailboat.

[0074] In some implementations of this embodiment, the above-mentioned desired heading ψ tar , current heading ψ0 and desired sail angle Sail tar , calculate the desired rudder angle δ tar The steps include: decomposing the wing sail force F2 into a force F that provides forward momentum for the target unmanned sailboat 2y =F2×cos(Sail tar ) and the steering force F that causes the target unmanned sailboat to deviate from its current course 2x =F2×sin(Sail tar ), and based on the steering force, the steering torque M2=F that causes the target unmanned sailboat to deviate from the current course is obtained. 2x ×sin(Sail tar )×L2, where L2 is the distance from the wing sail force application point to the center of gravity of the target unmanned sailboat. After decomposing the rudder force F3, the steering torque M3 of the rudder to make the target unmanned sailboat deviate from the current course is obtained. 3x ×cos(δ tar )×L3, where F 3x The rudder force F3 is decomposed to obtain the turning force of the target unmanned sailboat to deviate from the current heading. L3 is the distance from the rudder force point to the center of gravity of the target unmanned sailboat. According to the moment balance of the heading of the target unmanned sailboat, M2+M3=0. According to M2=F 2x ×sin(Sail tar )×L2、M3=F 3x ×cos(δ tar )×L3 and M2+M3=0, and the desired steering angle δ is obtained tar .

[0075] In the above implementation process, the heading of the target unmanned sailboat must be kept in a torque balance, that is: M2+M3=0.

[0076] S150: According to the desired rudder angle δ tar Based on the position PID control algorithm, the rudder angle of the target unmanned sailboat is adjusted and the current heading ψ0 is determined to determine whether the target unmanned sailboat can reach the desired heading ψ tar , if yes, jump to S110, if no, jump to S160;

[0077] Specifically, the rudder angle of the sailboat is automatically adjusted through the position PID control algorithm: e = ψ tar -ψ0, Among them, δ(n) is the output of the PID adjustment unit at the nth sampling moment, that is, the rudder angle control amount, e(n) is the actual deviation obtained by the input unit at the nth sampling moment, K P is the proportionality coefficient, K I is the integration coefficient, K D is the differential coefficient, Δ is the sail force factor, V wind is the current wind speed, and L2 is the distance from the wing sail force point to the center of gravity of the target unmanned sailboat. The wing sail force factor Δ can be obtained according to the streamlined design of the wing sail. This method first ignores the effect of the bow moment M1 provided by the bow thruster, and only adjusts the heading through the steering gear. Because the bow thruster has a large power, it has a great impact on the endurance of the unmanned sailboat. The steering gear is used first to improve the endurance of the unmanned sailboat. However, when the steering gear reaches the maximum rudder angle and still cannot maintain the heading of the sailboat, it jumps to S160. Otherwise, wait for the target unmanned sailboat to reach the task point, jump to S110, and calculate the next task point.

[0078] S160: Within the preset time period, if the rudder angle of the target unmanned sailboat reaches the maximum rudder angle and still cannot be adjusted to the desired heading ψ tar , the heading is adjusted by adjusting the bow thruster.

[0079] Specifically, if the rudder angle is at its maximum value and still cannot be adjusted to maintain the heading of the sailboat within a period of time t, the heading is adjusted by adjusting the bow thruster.

[0080] In the above implementation process, the method improves the robustness and operation speed of control by coupling the wing sail angle of the unmanned sailboat with the rudder and increasing the bow thrust to compensate for the insufficient bowing moment of the steering gear, greatly increases the accuracy of the unmanned sailboat's heading control and the heading keeping performance, and improves the track controllability. In addition, the method is simple to program, has low requirements on hardware equipment, and can reduce manufacturing costs.

[0081] It should be noted that the target unmanned sailboat is equipped with a bow thruster, a wing sail and a rudder. The bow thruster provides a bow pitch moment to supplement the bow pitch moment of the steering gear; the wing sail provides power for the sailboat; and the rudder is the main equipment for the heading control of the unmanned sailboat and provides a bow pitch moment.

[0082] In some implementations of this embodiment, the above-mentioned desired rudder angle δ tar Based on the position PID control algorithm, the rudder angle of the target unmanned sailboat is adjusted and the current heading ψ0 is determined to determine whether the target unmanned sailboat can reach the desired heading ψ tar The steps include:

[0083] Through the position PID control algorithm, according to the formula e = ψ tar -ψ0 adjusts the rudder angle e of the target unmanned sailboat, and according to the formula The rudder angle control value δ(n) is calculated, where δ(n) is the output of the PID adjustment unit at the nth sampling moment, i.e., the rudder angle control value, e(n) is the actual deviation obtained by the input unit at the nth sampling moment, and K P is the proportionality coefficient, K I is the integration coefficient, K D is the differential coefficient, Δ is the sail force factor, V wind is the current wind speed, L2 is the distance from the wing sail force application point to the center of gravity of the target unmanned sailboat;

[0084] While adjusting the rudder angle of the target unmanned sailboat according to the rudder angle control value, it is determined whether the target unmanned sailboat can reach the desired heading ψ tar Thus, it is possible to determine whether the target unmanned sailboat can reach the desired course ψ while adjusting the course only by the steering gear. tar purpose.

[0085] In some implementations of this embodiment, the above step S160 includes:

[0086] If the heading is adjusted by adjusting the bow thruster, then M1+M2+M3=0, and the rudder angle of the target unmanned sailboat is full rudder δ max , M2 value, wing sail angle and M3 value are all fixed, where M1 is the bow pitch moment provided by the bow thruster of the target unmanned sailboat, M2 is the steering moment of the wing sail to make the target unmanned sailboat deviate from the current heading, and M3 is the steering moment of the rudder to make the target unmanned sailboat deviate from the current heading;

[0087] Through the PID control algorithm, according to the formula e = ψ tar -ψ0 and formula Adjust the heading of the target unmanned sailboat, where U(n) is the output of the PID adjustment unit at the nth sampling moment, which is the motor speed of the bow thruster, e(n) is the actual deviation obtained by the input unit at the nth sampling moment, and K P is the proportionality coefficient, K I is the integration coefficient, K D is the differential coefficient.

[0088] Specifically, when adjusting the heading by adjusting the bow thruster, the following conditions need to be met: M1+M2+M3=0, at which time the rudder angle of the target unmanned sailboat is full rudder δ max , M2 value, wing sail angle and M3 value are fixed, only M1 and the desired heading ψ need to be adjusted tar When the rudder angle and sail angle are fixed, the PID control algorithm is used to adjust the heading of the target unmanned sailboat, which makes up for the insufficient bow torque of the rudder and greatly increases the accuracy of heading control and heading keeping performance.

[0089] In some implementations of this embodiment, before the above step S110, the method further includes:

[0090] All devices of the target unmanned sailboat are powered on and checked in turn to complete the initialization of each device.

[0091] Specifically, the initialization of each device includes powering on the device, each device being able to accept and execute instructions, the sensor being able to obtain current perception data, and the main controller and internal programs running.

[0092] Please refer to Figure 4 , Figure 4 The figure shows a block diagram of a heading control system of an unmanned sailboat based on the linkage of a wing sail and a rudder provided by an embodiment of the present invention. The embodiment of the present application provides a heading control system of an unmanned sailboat based on the linkage of a wing sail and a rudder, which comprises:

[0093] The task point setting module 110 is used to obtain the position information of all task points in response to the user setting task point operation, wherein the coordinates of the next task point from the current position are P next (lon next ,lat next ),lon next is the longitude of the mission point, lat next is the latitude of the mission point;

[0094] The position acquisition module 120 is used to acquire the current position P0 (lon0, lat0) of the target unmanned sailboat, the current heading ψ0 and the current relative wind direction H relative to the target unmanned sailboat. wind , where lon0 is the longitude of the current location and lat0 is the latitude of the current location;

[0095] The expected heading calculation module 130 is used to calculate the expected heading according to the coordinates P of the task point. next (lon next ,lat next ), current position P0 (lon0, lat0) and relative wind direction H wind , calculate the expected heading ψ from the current position to the task point tar , and according to the relative wind direction H wind , get the desired sail angle of the wing sail tar , based on the desired sail angle of the wingsail tar , sending Sail to the wingsail drive motor tar Instructions to bring the wing sail to the desired sail angle tar The corresponding sail angle position;

[0096] The desired rudder angle calculation module 140 is used to calculate the desired heading ψtar , current heading ψ0 and desired sail angle Sail tar , calculate the desired rudder angle δ tar ;

[0097] The rudder angle adjustment module 150 is used to adjust the rudder angle according to the desired rudder angle δ tar Based on the position PID control algorithm, the rudder angle of the target unmanned sailboat is adjusted and the current heading ψ0 is determined to determine whether the target unmanned sailboat can reach the desired heading ψ tar If yes, then jump to the task point setting module 110, if no, then jump to the bow thruster adjustment module 160;

[0098] The bow thrust adjustment module 160 is used to adjust the target unmanned sailboat to the desired heading ψ if the rudder angle reaches the maximum rudder angle within a preset time period. tar , the heading is adjusted by adjusting the bow thruster.

[0099] In the above implementation process, the system improves the robustness of control and operation speed by coupling the wing sail angle of the unmanned sailboat with the rudder and increasing the bow thrust to compensate for the insufficient bow torque of the servo, greatly increasing the accuracy of the unmanned sailboat's heading control and heading keeping performance, while improving the track controllability. In addition, the system is easy to program and has low requirements for hardware equipment, which can reduce manufacturing costs.

[0100] Please refer to Figure 5 , Figure 5 A schematic structural block diagram of an electronic device provided in an embodiment of the present application. The electronic device includes a memory 101, a processor 102 and a communication interface 103, and the memory 101, the processor 102 and the communication interface 103 are electrically connected to each other directly or indirectly to realize data transmission or interaction. For example, these elements can be electrically connected to each other through one or more communication buses or signal lines. The memory 101 can be used to store software programs and modules, such as program instructions / modules corresponding to an unmanned sailboat heading control system based on wing sail and rudder linkage provided in an embodiment of the present application, and the processor 102 executes various functional applications and data processing by executing software programs and modules stored in the memory 101. The communication interface 103 can be used to communicate signaling or data with other node devices.

[0101] Among them, the memory 101 can be, but is not limited to, a random access memory (RAM), a read only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable read-only memory (EEPROM), etc.

[0102] The processor 102 may be an integrated circuit chip with signal processing capability. The processor 102 may be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it may also be a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), or other programmable logic devices, discrete gate or transistor logic devices, or discrete hardware components.

[0103] Understandably, Figure 5 The structure shown is for illustration only. The electronic device may also include Figure 5 More or fewer components as shown, or with Figure 5 Different configurations are shown. Figure 5 Each component shown in the figure can be implemented by hardware, software or a combination thereof.

[0104] In the embodiments provided in the present application, it should be understood that the disclosed devices and methods can also be implemented in other ways. The device embodiments described above are merely schematic. For example, the flowcharts and block diagrams in the accompanying drawings show the possible architecture, functions and operations of the devices, methods and computer program products according to the multiple embodiments of the present application. In this regard, each box in the flowchart or block diagram can represent a module, a program segment or a part of a code, and the module, a program segment or a part of a code contains one or more executable instructions for implementing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in a different order from the order marked in the accompanying drawings. For example, two consecutive boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or the flowchart, and the combination of boxes in the block diagram and / or the flowchart can be implemented with a dedicated hardware-based system that performs a specified function or action, or can be implemented with a combination of dedicated hardware and computer instructions.

[0105] In addition, the functional modules in the various embodiments of the present application may be integrated together to form an independent part, or each module may exist separately, or two or more modules may be integrated to form an independent part.

[0106] If the functions are implemented in the form of software function modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application can be essentially or partly embodied in the form of a software product that contributes to the prior art. The computer software product is stored in a storage medium, including several instructions to enable a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the methods described in each embodiment of the present application. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.

[0107] The above description is only the preferred embodiment of the present application and is not intended to limit the present application. For those skilled in the art, the present application may have various modifications and variations. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall be included in the protection scope of the present application.

[0108] It will be apparent to those skilled in the art that the present application is not limited to the details of the exemplary embodiments described above, and that the present application can be implemented in other specific forms without departing from the spirit or essential features of the present application. Therefore, the embodiments should be considered exemplary and non-limiting in all respects, and the scope of the present application is defined by the appended claims rather than the above description, and it is intended that all changes falling within the meaning and scope of the equivalent elements of the claims be included in the present application. Any reference numeral in a claim should not be considered as limiting the claim to which it relates.

Claims

1. A method for controlling the heading of an unmanned sailboat based on the linkage between a wing sail and a rudder, characterized in that: The steps include: S110: In response to the user setting a task point operation, obtain the location information of all task points, where the coordinates of the next task point from the current position are P next (lon next ,lat next ),lon next is the longitude of the mission point, lat next is the latitude of the mission point; S120: Obtain the current position P0 (lon0, lat0), current heading ψ0 and current relative wind direction H of the target unmanned sailboat wind , where lon0 is the longitude of the current location and lat0 is the latitude of the current location; S130: According to the task point coordinates P next (lon next ,lat next ), the current position P0 (lon0, lat0) and the relative wind direction H wind , calculate the expected heading ψ from the current position to the task point tar , and according to the relative wind direction H wind , get the desired sail angle of the wing sail tar , based on the desired sail angle of the wingsail tar , sending Sail to the wingsail drive motor tar Instructions to make the wing sail reach the desired sail angle with the wing sail tar The corresponding sail angle position; S140: According to the desired heading ψ tar , the current heading ψ0 and the desired sail angle Sail tar , calculate the desired rudder angle δ tar ; S150: According to the desired rudder angle δ tar and the current heading ψ0, based on the position PID control algorithm, adjust the rudder angle of the target unmanned sailboat, and determine whether the target unmanned sailboat can reach the expected heading ψ tar If yes, then jump to S110, if no, then jump to S160; S160: within the preset time period, if the rudder angle of the target unmanned sailboat reaches the maximum rudder angle and still cannot be adjusted to the desired heading ψ tar , the heading is adjusted by adjusting the bow thruster.

2. The method for controlling the heading of an unmanned sailboat based on the linkage of a wing sail and a rudder according to claim 1, characterized in that: According to the task point coordinates P next (lon next ,lat next ), the current position P0 (lon0, lat0) and the relative wind direction H wind , calculate the expected heading ψ from the current position to the task point tar The steps include: Using the formula Calculate the current position P0 (lon0, lat0) of the target unmanned sailboat to the mission point P next (lon next ,lat next )’s expected heading ψ tar , where the relative wind direction H wind When [0°, +30°], ψ tar = +30°, when relative wind direction H wind When [-30°, 0°], ψ tar =-30°.

3. The method for controlling the heading of an unmanned sailboat based on the linkage of a wing sail and a rudder according to claim 1, characterized in that: According to the relative wind direction H wind , get the desired sail angle of the wing sail tar The steps include: Obtain a corresponding table of the relationship between relative wind direction and wing sail angle; According to the relationship correspondence table and the relative wind direction H wind , get the desired sail angle of the wing sail tar .

4. The method for controlling the heading of an unmanned sailboat based on the linkage of a wing sail and a rudder according to claim 1, characterized in that: According to the desired heading ψ tar , the current heading ψ0 and the desired sail angle Sail tar , calculate the desired rudder angle δ tar The steps include: Decompose the force F2 on the wing sail into the force F that provides the target unmanned sailboat with forward momentum. 2y =F2×cos(Sail tar ) and the steering force F that causes the target unmanned sailboat to deviate from its current course 2x =F2×sin(Sail tar ), and based on the steering force, obtain the steering torque M2=F that causes the target unmanned sailboat to deviate from the current course 2x ×sin(Sail tar )×L2, where L2 is the distance from the wing sail force application point to the center of gravity of the target unmanned sailboat; After decomposing the rudder force F3, we get the steering torque M3=F 3x ×cos(δ tar )×L3, where F 3x The rudder force F3 is decomposed to obtain the turning force of the target unmanned sailboat to deviate from the current course. L3 is the distance from the rudder force application point to the center of gravity of the target unmanned sailboat. According to the moment balance of the target unmanned sailboat’s heading, M2+M3=0; According to M2=F 2x ×sin(Sail tar )×L2、M3=F 3x ×cos(δ tar )×L3 and M2+M3=0, and the desired steering angle δ is obtained tar .

5. The method for controlling the heading of an unmanned sailboat based on the linkage of a wing sail and a rudder according to claim 1, characterized in that: According to the desired rudder angle δ tar and the current heading ψ0, based on the position PID control algorithm, adjust the rudder angle of the target unmanned sailboat, and determine whether the target unmanned sailboat can reach the expected heading ψ tar The steps include: Through the position PID control algorithm, according to the formula e = ψ tar -ψ0 adjusts the rudder angle e of the target unmanned sailboat, and according to the formula The rudder angle control value δ(n) is calculated, where δ(n) is the output of the PID adjustment unit at the nth sampling moment, i.e., the rudder angle control value, e(n) is the actual deviation obtained by the input unit at the nth sampling moment, and K P is the proportionality coefficient, K I is the integration coefficient, K D is the differential coefficient, Δ is the sail force factor, V wind is the current wind speed, L2 is the distance from the wing sail force application point to the center of gravity of the target unmanned sailboat; while adjusting the rudder angle of the target unmanned sailboat according to the rudder angle control amount, it is determined whether the target unmanned sailboat can reach the desired heading ψ tar .

6. The method for controlling the heading of an unmanned sailboat based on the linkage of a wing sail and a rudder according to claim 1, characterized in that: The steps of S160 include: If the heading is adjusted by adjusting the bow thruster, then M1+M2+M3=0, and the rudder angle of the target unmanned sailboat is full rudder δ max , M2 value, wing sail angle and M3 value are all fixed, where M1 is the bow pitch moment provided by the bow thruster of the target unmanned sailboat, M2 is the steering moment of the wing sail to make the target unmanned sailboat deviate from the current heading, and M3 is the steering moment of the rudder to make the target unmanned sailboat deviate from the current heading; Through the PID control algorithm, according to the formula e = ψ tar -ψ0 and formula Adjust the heading of the target unmanned sailboat, where U(n) is the output of the PID adjustment unit at the nth sampling moment, which is the motor speed of the bow thruster, e(n) is the actual deviation obtained by the input unit at the nth sampling moment, and K P is the proportionality coefficient, K I is the integration coefficient, K D is the differential coefficient.

7. The method for controlling the heading of an unmanned sailboat based on the linkage of a wing sail and a rudder according to claim 1, characterized in that: Before the step S110, the method further includes: All devices of the target unmanned sailboat are powered on and checked in turn to complete the initialization of each device.

8. An unmanned sailboat heading control system based on the linkage of wing sail and rudder, characterized in that: include: The task point setting module is used to obtain the location information of all task points in response to the user setting task point operation, where the coordinates of the next task point from the current position are P next (lon next ,lat next ),lon next is the longitude of the mission point, lat next is the latitude of the mission point; The position acquisition module is used to obtain the current position P0 (lon0, lat0) of the target unmanned sailboat, the current heading ψ0 and the current relative wind direction H relative to the target unmanned sailboat. wind , where lon0 is the longitude of the current location and lat0 is the latitude of the current location; The expected heading calculation module is used to calculate the heading according to the coordinates of the task point P next (lon next ,lat next ), the current position P0 (lon0, lat0) and the relative wind direction H wind , calculate the expected heading ψ from the current position to the task point tar , and according to the relative wind direction H wind , get the desired sail angle of the wing sail tar , based on the desired sail angle of the wingsail tar , sending Sail to the wingsail drive motor tar Instructions to make the wing sail reach the desired sail angle with the wing sail tar The corresponding sail angle position; The desired rudder angle calculation module is used to calculate the desired heading ψ tar , the current heading ψ0 and the desired sail angle Sail tar , calculate the desired rudder angle δ tar ; The rudder angle adjustment module is used to adjust the rudder angle according to the desired rudder angle δ tar and the current heading ψ0, based on the position PID control algorithm, adjust the rudder angle of the target unmanned sailboat, and determine whether the target unmanned sailboat can reach the expected heading ψ tar If yes, jump to the task point setting module; if no, jump to the bow thruster adjustment module; The bow thruster adjustment module is used to adjust the target unmanned sailboat to the desired heading ψ if the rudder angle reaches the maximum rudder angle within the preset time period. tar , the heading is adjusted by adjusting the bow thruster.

9. An electronic device, characterized in that: include: A memory for storing one or more programs; processor; When the one or more programs are executed by the processor, the method according to any one of claims 1 to 7 is implemented.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the method according to any one of claims 1 to 7 is implemented.

Citation Information

Patent Citations

  • Autonomous control method and device of sailing ship and sailing ship

    CN104267736A

  • Underwater vehicle capable of supporting sail propulsion

    CN108945366A