Method for position keeping of a waterborne carrier based on a single propeller and related equipment
By calculating the target thrust and thrust direction, the automatic position holding of the water vehicle is achieved using a single thruster, solving the problem that a single thruster cannot achieve automatic position holding and improving the user experience.
Patent Information
- Application Number
- CN202480002142.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-02-26
- Publication Date
- 2025-12-09
- Estimated Expiration
- 2044-02-26
AI Technical Summary
In existing technologies, water-based carriers require two thrusters to achieve automatic position holding; automatic position holding cannot be achieved with a single thruster.
By using a single-thruster-based method, the target thrust and thrust direction are calculated, so that the bow or stern of the watercraft faces the target position, and the thruster is kept in the target position by moving forward or backward. The processor controls the thruster to generate the target thrust.
It enables automatic position holding of the water vehicle in the case of a single thruster, reducing the need for manual operation by the user and improving ease of use.
Smart Images

Figure CN119137557B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of intelligent driving, in particular to a method for realizing position keeping of a water area carrier based on a single propeller and related equipment. BACKGROUND
[0002] The position keeping function aims to lock the position of the water area carrier at a specific position. In the related art, the water area carrier has an automatic position keeping function without manual control by a user. However, the above automatic position keeping function needs to be realized by means of two propellers, and cannot be realized in the case of a single propeller. SUMMARY
[0003] In a first aspect, the present application provides a method for realizing position keeping of a water area carrier based on a single propeller, the method comprising: in response to a position keeping instruction, taking the current position of the water area carrier as a target position; calculating a target thrust required by the propeller, the target thrust being used to make the bow or stern of the water area carrier face the target position and make the water area carrier advance or retreat to keep at the target position; and controlling the propeller to generate the target thrust.
[0004] In a second aspect, the present application provides a method for realizing position keeping of a water area carrier based on a single propeller, the method comprising: in response to a position keeping instruction, taking the current position of the water area carrier as a target position; obtaining a subsequent position of the water area carrier; calculating an angle error between the subsequent position and the target position; determining a thrust direction of a target thrust required by the propeller based on the angle error; and controlling the propeller to generate the target thrust with the thrust direction being the thrust direction, so as to keep the water area carrier at the target position.
[0005] In a third aspect, the present application provides a computer readable storage medium having computer instructions stored thereon, the computer instructions being executed by a processor to realize the method of the first aspect or the second aspect of the present application.
[0006] In a fourth aspect, the present application provides a propeller, comprising a propelling device and a processor, the processor being electrically connected with the propelling device, and the processor being used to execute the method of the first aspect or the second aspect of the present application.
[0007] In a fifth aspect, the present application provides a water area movable device, comprising a water area carrier and the propeller of the fourth aspect of the present application, the propeller being arranged on the water area carrier.
[0008] In the embodiments of the present application, after the position keeping function is enabled, the target thrust capable of making the bow or stern of the water area carrier face the target position and making the water area carrier advance or retreat is calculated, the target thrust is generated by controlling the propeller, and thus the water area carrier is kept at the target position. The present application can automatically realize the position keeping of the water area carrier based on a single propeller, so that the water area movable device can realize automatic position keeping when only one propeller is assembled, without manual operation of the user, greatly facilitating the use of the user. BRIEF DESCRIPTION OF DRAWINGS
[0009] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed in the embodiment description will be briefly introduced. Obviously, the drawings in the following description are only some embodiments of the present application, and other drawings can be obtained by those skilled in the art without creative labor.
[0010] Figure 1 The structural schematic diagram of the water area movable device of one embodiment of the present application.
[0011] Figure 2 The structural schematic diagram of the connection between the lifting device and the clamp in the propeller of one embodiment of the present application.
[0012] Figure 3 The module connection schematic diagram of the water area movable device of one embodiment of the present application.
[0013] Figure 4 The module connection schematic diagram of the water area movable device of another embodiment of the present application.
[0014] Figure 5 The coordinate system schematic diagram of the water area carrier of one embodiment of the present application.
[0015] Figure 6 The flowchart schematic diagram of the method for realizing the position keeping of the water area carrier based on a single propeller of one embodiment of the present application.
[0016] Figure 7 The principle schematic diagram of the calculation method of the position of the water area carrier of one embodiment of the present application.
[0017] Figure 8 The schematic diagram of the first axis of one embodiment of the present application.
[0018] Figure 9A And Figure 9B The schematic diagram of the thrust direction of the target thrust of one embodiment of the present application.
[0019] Figure 10A schematic diagram of the principle of the calculation of the angular error for an embodiment of the application.
[0020] Figure 11A A schematic diagram of the steering position of the propeller for an embodiment of the application.
[0021] Figure 11B A schematic diagram of the relationship between the angular error and the steering stroke for an embodiment of the application.
[0022] Figure 12A and Figure 12B A schematic diagram of the movement of the water-borne carrier for an embodiment of the application.
[0023] Figure 13 A schematic diagram of the variation of the propeller output thrust for an embodiment of the application.
[0024] Figure 14 A schematic diagram of the method for maintaining the position of the water-borne carrier based on a single propeller for another embodiment of the application. DETAILED DESCRIPTION
[0025] The technical solutions in the embodiments of the present application will be described clearly and completely below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only some of the embodiments of the present application, but not all the embodiments of the present application. Based on the embodiments in the present application, all the other embodiments obtained by those of ordinary skill in the art without creative work fall within the scope of protection of the present application.
[0026] The exemplary embodiments will be described in detail herein below with reference to the drawings. The following description refers to the accompanying drawings which show by way of example the exemplary embodiments of the present application. In the following description, well-known functions or constructions are not described in detail because they can obscure the understanding of the present application. The same reference numerals in different drawings represent the same or similar elements unless otherwise denoted in the figures.
[0027] The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting thereof. As used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms "and / or", as used herein, refers to and encompasses any and all possible combinations of one or more of the associated listed items. The terms "front", "rear", "bottom" and / or "top" and / or like terms are used for ease of description to describe the orientations of components, and are not intended to be limiting. The terms "connected" and / or "coupled" and / or like terms are used generically and encompass both direct and indirect connections, and are to be interpreted in a non-limiting manner. "Plurality" means at least two.
[0028] Referring to Figure 1 The present application provides a water area movable device 100. The water area movable device 100 can be a commercial ship, a passenger ship, a yacht, a fishing boat, a sailboat, a civilian ship, and the like, and can also be a water area inspection device, a water area management device, a water area environment monitoring device, and the like, which can operate in a water area. The present application does not limit this.
[0029] The water area movable device 100 includes a water area carrier 20 and a propeller 10 arranged on the water area carrier 20. The propeller 10 is a device capable of providing power in a water area environment. The propeller 10 includes a steerable part, which can rotate around a steering axis S Figure 2 In one example, the steerable part can include a propelling device 11 in the propeller 10, at this time, the propeller 10 can be an outboard motor, a retractable pod propeller, a trailing motor, etc. In another example, the steerable part can include a rudder blade, at this time, the propeller 10 includes a rudder blade and a propelling device 11 which are independent of each other, for example, the propeller 10 can be an inboard motor used in combination with the rudder blade, etc., wherein the rudder blade and the inboard motor are independent of each other. In an example, when the propeller 10 is an outboard motor or a trailing motor, the propeller 10 can be installed on the bow, the stern, the side, etc. of the water area carrier 20. In an example, when the propeller 10 is a device including a rudder blade and an inboard motor or a retractable pod propeller 10, the propeller 10 can be installed on the bottom, etc. of the water area carrier 20.
[0030] Referring to Figure 1 and Figure 2 Taking the outboard motor as an example, the propeller 10 includes a clamp 15 and a main body. The clamp 15 is used to fix the main body on the water area carrier 20, for example, to fix the main body on the stern of the water area carrier 20. The main body includes a propelling device 11, a steering device 12, a lifting device 13 and a machine shell 14. The propelling device 11, the steering device 12 and the lifting device 13 are connected with the machine shell 14.
[0031] The propulsion device 11 comprises a propulsion motor 111 and a propeller 112, the propeller 112 is mounted on the output shaft of the propulsion motor 111, the propulsion motor 111 rotates to drive the propeller 112 to rotate to output thrust. The propulsion motor 111 can output first torque and second torque with different directions, by switching the first torque and the second torque, the rotation direction of the propeller can be changed, so that the propeller has two thrust output directions, thereby driving the water area carrier 20 to move forward or backward.
[0032] The steering device 12 comprises a steering shaft 121, a reduction assembly 122 and a steering motor 123 connected in sequence. The steering motor 123 drives the steering shaft 121 to rotate relative to the casing 14 through the reduction assembly 122. Since the casing 14 is rotatably connected to the steering shaft 121, and the propulsion device 11 is relatively fixed with the casing 14, when the steering motor 123 drives the steering shaft 121 to rotate relative to the casing 14 through the reduction assembly 122, the rotation of the propulsion device 11 relative to the steering axis S can be realized, thereby changing the orientation of the propulsion device 11, changing the direction of the thrust provided by the propulsion device 11, and further driving the water area carrier 20 to turn. Further, the steering device 12 can further comprise a steering angle sensor (not shown in the figure), which can be used to detect the steering angle of the propulsion device 11.
[0033] The lifting device 13 comprises a lifting shaft 131, a lifting bracket 132 and a lifting driving assembly 133. The lifting bracket 132 is rotatably connected to the clamp 15 through the lifting shaft 131, and the lifting driving assembly 133 is used to drive the lifting bracket 132 to rotate relative to the clamp 15. Since the lifting bracket 132 is relatively fixed with the propulsion device 11 in the lifting direction, the lifting bracket 132 can drive the propulsion device 11 to rotate relative to the lifting axis Q to realize the lifting of the propulsion device 11. Further, the lifting device 13 can further comprise a lifting angle sensor (not shown in the figure), which can be used to detect the lifting angle of the propulsion device 11.
[0034] Please refer to Figure 3 and Figure 4 , the propeller 10 further comprises a processor 16. The processor 16 is accommodated in the casing 14. The processor 16 is electrically connected with the propulsion device 11, the steering device 12 and the lifting device 13. For example, the processor 16 can be electrically connected with the propulsion motor 111, the steering motor 123, the steering angle sensor, the lifting driving assembly 133 and the lifting angle sensor. The processor 16 can receive signals fed back by the propulsion motor 111, the steering motor 123, the steering angle sensor, the lifting driving assembly 133 and the lifting angle sensor, and can output instructions to the propulsion device 11, the steering device 12 and the lifting device 13, so that the propulsion device 11, the steering device 12 and the lifting device 13 perform actions corresponding to the instructions.
[0035] Please continue to refer to Figure 3 and Figure 4 The water area movable device 100 can further include a control device 30, an inertial measurement sensor 40, and a global navigation satellite system 50.
[0036] The control device 30 is configured to receive an operation of a user to send a control instruction corresponding to the operation of the user to the propeller 10. The control instruction can include a forward gear instruction, a reverse gear instruction, a steering instruction, etc. For example, the control device 30 can be electrically connected to the processor 16 to send the control instruction to the processor 16. The control device 30 can include a steering wheel, a rudder, a remote controller, a wireless joystick, a display screen, etc.
[0037] The inertial measurement sensor 40 can include a three-axis accelerometer that can detect and output acceleration data. The inertial measurement sensor 40 can be electrically connected to the processor 16 to provide the acceleration data to the processor 16. The acceleration data can include acceleration data of a roll axis, acceleration data of a pitch axis, and acceleration data of a yaw axis. The unit of acceleration is usually m / s 2 By integrating the acceleration of each axis, the linear velocity and the moving distance of each axis can be obtained. The three-axis coordinate system of the water area carrier 20 is shown in Figure 5 In the three-axis coordinate system of the water area carrier 20, the X-axis represents the roll axis, the Y-axis represents the pitch axis, and the Z-axis represents the yaw axis. The center line plane of the water area carrier 20 is a plane perpendicular to the Y-axis and passing through the axis of the X-axis. The direction of the water area carrier 20 can be understood as the positive direction of the X-axis as shown in Figure 5 , which can also be referred to as the bow direction.
[0038] The global navigation satellite system 50 can detect and output position data. The global navigation satellite system 50 can be electrically connected to the processor 16 to provide the position data to the processor 16. The global navigation satellite system 50 can be any one of the BeiDou Navigation Satellite System (BDS), the Global Positioning System (GPS), the Global Navigation Satellite System (GLONASS), and the Galileo Navigation Satellite System (Galileo), which are not limited in the present application.
[0039] As shown in Figure 3As shown, the inertial measurement sensor 40 and the global navigation satellite system 50 can be directly arranged on the water area carrier 20, at this time, the inertial measurement sensor 40 and the global navigation satellite system 50 are relatively fixed with the water area carrier 20, and the data output by the inertial measurement sensor 40 and the global navigation satellite system 50 is the detection data of the water area carrier 20. In this arrangement, the detection data of the water area carrier 20 can be directly obtained without conversion, and the amount of calculation required by the processor 16 can be reduced. As shown in the figure, Figure 4 As shown, the inertial measurement sensor 40 and the global navigation satellite system 50 can be arranged in the propeller. This arrangement can make the propeller 10 more functional and help improve the integration of the propeller 10. Further, for the case where the steerable member includes the propelling device 11, in order to facilitate the circuit connection between the inertial measurement sensor 40 and the global navigation satellite system 50 and the processor 16, the inertial measurement sensor 40 and the global navigation satellite system 50 can be arranged inside the casing 14. Since the casing 14 and the propelling device 11 are fixedly connected, the inertial measurement sensor 40 and the global navigation satellite system 50 will move relative to the water area carrier 20 with the rotation (steering or lifting) of the propelling device 11, and the data output by the inertial measurement sensor 40 and the global navigation satellite system 50 is the detection data of the propelling device 11. In this embodiment, the data output by the inertial measurement sensor 40 can be converted to obtain the detection data of the water area carrier 20. For the case where the global navigation satellite system 50 is arranged in the propeller 10, it can be understood that the position data output by the global navigation satellite system 50 is data in the world coordinate system, and whether it moves relative to the water area carrier 20 with the rotation of the propelling device 11 will not have a great influence on the output position data. Therefore, only the distance difference between the position of the propeller 10 and the position of a certain target point (i.e. a point used to represent the position of the water area carrier 20) of the water area carrier 20 needs to be considered, and the processor 16 converts the position data of the propeller 10 into the position data of the water area carrier 20 based on the distance difference. An exemplary conversion method can be seen from the description below.
[0040] Based on the foregoing water area movable device 100, the application further provides a method for realizing position keeping of the water area carrier 20 based on a single propeller 10. The method can be executed by the foregoing processor 16. Please refer to Figure 6 The method for realizing position keeping of the water area carrier 20 based on a single propeller 10 according to the embodiments of the application comprises:
[0041] Step S11: in response to a position keeping instruction, taking the current position of the water area carrier 20 as a target position;
[0042] Step S12: Calculate the target thrust required by the thruster 10. The target thrust is used to make the bow or stern of the water vehicle 20 face the target position and to make the water vehicle 20 move forward or backward to maintain the target position.
[0043] Step S13: Control the thruster 10 to generate the target thrust.
[0044] In step S11, a position hold command is used to trigger the position hold function. The position hold function can be triggered in several ways. As an example, the user can trigger the position hold function by operating the control device 30. For instance, a position hold button is provided on the remote control; when the user presses the position hold button, the control device 30 generates a position hold command and sends it to the processor 16 in the thruster 10. The processor 16, in response to the position hold command, begins to execute position hold control. As another example, a position hold button can be provided on the thruster 10, and this position hold button is electrically connected to the processor 16. After the user presses the position hold button, the processor 16 detects the user's operation and generates a corresponding position hold command; the processor 16, in response to the position hold command, begins to execute position hold control.
[0045] The target location can be the current position of the waterborne vehicle 20 when the processor 16 receives the position-keeping command. The processor 16 can obtain the current position data (i.e., when the position-keeping command is received) from the Global Navigation Satellite System 50 to determine the current position of the waterborne vehicle 20 based on the position data. In an embodiment where the Global Navigation Satellite System 50 is located on the waterborne vehicle 20, the processor 16 can directly obtain the current position of the waterborne vehicle 20 based on the position data obtained by the Global Navigation Satellite System 50. In an embodiment where the Global Navigation Satellite System 50 is located on the thruster 10, the processor 16 can obtain the position of the thruster 10 based on the position data obtained by the Global Navigation Satellite System 50, and determine the position of the waterborne vehicle 20 based on the position of the thruster 10 and the size of the waterborne vehicle 20.
[0046] Specifically, the processor 16 can determine the position of a target point on the water carrier 20 as the position of the water carrier 20. For example... Figure 7 As shown, X'O'Y' represents the world coordinate system. Assume the length of the waterborne carrier 20 is L, the width is W, the target point is the center point A of the waterborne carrier 20, the position obtained by the global navigation satellite system 50 is (x, y), and the heading angle of the waterborne carrier 20 is denoted as θ. If the thruster 10 is installed at the midpoint of the stern of the waterborne carrier 20 (as shown by point B in the figure), then the coordinates of the center point A of the waterborne carrier 20 are (x, y). A ,y A ), where x A and y A satisfy:
[0047]
[0048] It can be understood that the above-mentioned manner of calculating the position of the water area carrier 20 is only illustrative and is not intended to limit the present application. In other embodiments, the target point can be another point on the water area carrier 20, and the thruster 10 can also be installed at another position of the water area carrier 20. In other embodiments, the position of the water area carrier 20 can also be calculated based on the position of the thruster 10, the size of the water area carrier 20, and the heading θ of the water area carrier 20, and the specific calculation manner is determined according to the position of the target point and the position of the thruster 10, which will not be listed one by one here.
[0049] Since the detection frequency of the global navigation satellite system 50 is low, in a unit time, the global navigation satellite system 50 cannot output enough position data to assist the processor 16 to perform the adjustment of the position keeping, which will affect the implementation of the position keeping. Therefore, the processor 16 can perform interpolation processing, that is, one or more estimated position data are inserted between the position data output by the global navigation satellite system 50 at adjacent times, so that a sufficient amount of position data can be obtained to perform the adjustment of the position keeping. As an example, the processor 16 can obtain the position of the water area carrier 20 based on the position data output by the global navigation satellite system 50 and the moving distance of the water area carrier 20. The manner of obtaining the position of the water area carrier 20 is exemplified as follows.
[0050] In some embodiments, obtaining the position of the water area carrier 20 includes obtaining the latest position data output by the global navigation satellite system 50, and calculating the position of the water area carrier 20 based on the moving distance of the water area carrier 20 and the position data obtained by the global navigation satellite system 50. The above-mentioned moving distance is the distance moved by the water area carrier 20 within the time period from the time when the global navigation satellite system 50 outputs the latest position data to the current time. For example, assuming that the time when the global navigation satellite system 50 outputs the latest position data is T1, the current time is T2, and the time interval between T1 and T2 is △T, the processor 16 can obtain the moving distance of the water area carrier 20 within the time period of △T, and determine the position of the water area carrier 20 at the time T2 according to the moving distance and the position data output by the global navigation satellite system 50 at the time T1.
[0051] The moving distance d of the water area carrier 20 can be calculated based on the moving speed v of the propeller 10 and the heading angle θ of the water area carrier 20. As an example, the processor 16 can obtain the power of the propeller 10 in the time interval AT, and obtain the moving speed of the water area carrier 20 in the time interval AT according to the mapping relationship between the power and the speed of the propeller 10, and then determine the moving distance of the water area carrier 20 in the time interval AT based on the moving speed of the water area carrier 20 in the time interval AT. Then, according to the heading angle θ of the water area carrier 20, the moving distance is decomposed to the X' axis and the Y' axis of the world coordinate system to obtain the moving distance component of the X' axis and the moving distance component of the Y' axis, and the moving distance component of the X' axis is added to the position data of the X' axis at T1 output by the global navigation satellite system 50 to obtain the position data of the water area carrier 20 in the X' axis at the current time; the moving distance component of the Y' axis is added to the position data of the Y' axis at T1 output by the global navigation satellite system 50 to obtain the position data of the water area carrier 20 in the Y' axis at the current time. The position data of the water area carrier 20 in the X' axis at the current time and the position data of the water area carrier 20 in the Y' axis at the current time can indicate the current position of the water area carrier 20. It should be noted that the heading angle θ of the water area carrier 20 can be output by the global navigation satellite system 50, but in the embodiment, since the detection frequency of the global navigation satellite system 50 is low, the processor 16 fails to obtain the heading angle θ output by the global navigation satellite system 50. Therefore, in the embodiment, the processor 16 can calculate the heading angle θ based on the turning angle of the turnable member.
[0052] Alternatively, the distance traveled by the waterborne carrier 20 can be calculated based on the acceleration data output by the inertial measurement sensor 40. The processor 16 can use a triaxial accelerometer to acquire the acceleration information of the roll axis X and pitch axis Y, and then perform double integration on the acceleration information of the roll axis X and pitch axis Y respectively to obtain the travel distance of the roll axis X and pitch axis Y. Subsequently, the travel distance of the roll axis X and pitch axis Y is transformed into the world coordinate system to obtain the travel distance components of the X' axis and Y' axis in the world coordinate system. The processor 16 then adds the travel distance component of the X' axis to the position data of the X' axis at time T1 output by the global navigation satellite system 50 to obtain the position data of the waterborne carrier 20 on the X' axis at the current time, and adds the travel distance component of the Y' axis to the position data of the Y' axis at time T1 output by the global navigation satellite system 50 to obtain the position data of the waterborne carrier 20 on the Y' axis at the current time. The current position data of the water carrier 20 on the X' axis and the current position data of the water carrier 20 on the Y' axis can indicate the current position of the water carrier 20. It can be understood that the detection frequency of the inertial measurement sensor 40 is higher than that of the global navigation satellite system 50; therefore, the position data of the water carrier 20 can be estimated using the data from the inertial measurement sensor 40. In this way, the processor 16 can obtain sufficient position data to better perform position-keeping adjustments.
[0053] In step S12, calculating the target thrust required by the thruster 10 may include calculating the thrust direction of the target thrust required by the thruster 10. The thrust direction of the target thrust is used to ensure that the target position falls on the first axis of the water carrier 20, wherein the first axis is parallel to the roll axis X of the water carrier 20. Figure 8 As shown, the first axis can be the axis represented by the long dashed line N1 in the figure, or the axis represented by the short dashed line N2 in the figure, or other axes parallel to the roll axis X. Alternatively, the first axis can also coincide with the roll axis X of the water carrier 20. It can be understood that the processor 16 sets the thrust direction of the target thrust to make the target position fall on the first axis parallel to the roll axis X of the water carrier 20, thereby causing the bow or stern of the water carrier 20 to face the target position. At this time, the processor 16 further adjusts the rotation direction of the propeller 112 to make the water carrier 20 move forward or backward, thereby making the water carrier 20 move towards the target position, and finally achieving the position maintenance of the water carrier 20.
[0054] like Figure 9AAs shown, when the bow of the water carrier 20 is closer to the target position (assuming the target position is the origin O' of the world coordinate system X'O'Y') than the stern of the water carrier 20, the target thrust is used to make the bow of the water carrier 20 face the target position and propel the water carrier 20 forward to maintain the target position. In this embodiment, the direction of the target thrust is as indicated by the gray arrow. The target thrust may include a first component in the positive direction toward the roll axis X (i.e., the direction in which the stern of the water carrier 20 points toward the bow), and may also include a second component perpendicular to the first component. The first component enables the water carrier 20 to propel itself forward, thereby bringing the bow of the water carrier 20 closer to the target position. The second component can change the orientation of the bow of the water carrier 20, thereby making the bow of the water carrier 20 face the target position. When the bow of the water carrier 20 is closer to the target position, by applying a positive target thrust toward the roll axis X, the water carrier 20 can be moved forward, and the water carrier 20 can be kept at the target position with lower control complexity and shorter time.
[0055] like Figure 9B As shown, when the stern of the water carrier 20 is closer to the target position (assuming the target position is the origin O' of the world coordinate system X'O'Y') than the bow of the water carrier 20, the target thrust is used to make the stern of the water carrier 20 face the target position and to make the water carrier 20 move backward to maintain the target position. In this embodiment, the direction of the target thrust is as indicated by the gray arrow. The target thrust may include a third component in the negative direction of the roll axis X (i.e., the direction in which the bow of the water carrier 20 points to the stern), and may also include a fourth component perpendicular to the third component. The third component enables the water carrier 20 to move backward, thereby bringing the stern of the water carrier 20 closer to the target position. The fourth component can change the orientation of the stern of the water carrier 20, thereby making the stern of the water carrier 20 face the target position. When the stern of the water carrier 20 is closer to the target position, by applying a negative target thrust toward the roll axis X, the water carrier 20 is made to move backward, which can keep the water carrier 20 in the target position with lower control complexity and shorter time.
[0056] In some embodiments, calculating the target thrust required by the thruster 10 includes: acquiring the subsequent position of the water carrier 20, calculating the angular error between the subsequent position and the target position, and determining the thrust direction of the target thrust based on the angular error. The subsequent position of the water carrier 20 can be understood as the real-time position of the water carrier 20 after the processor 16 receives the position-holding command. The method for acquiring the subsequent position of the water carrier 20 is the same as the method for acquiring the current position of the water carrier 20 in the foregoing embodiments, and will not be repeated here. The angular error is used to represent the deviation between the orientation of the water carrier 20 and the orientation of the target position. For example, in Figure 10In the illustrated embodiment, the angle a between the line connecting the center point of the aquatic carrier 20 and the target position (assumed to be the origin O' of the world coordinate system X'O'Y') and the roll axis X of the aquatic carrier 20 can be determined as the angle error.
[0057] In some embodiments, calculating the angle error between the subsequent position and the target position comprises obtaining a distance between the subsequent position and the target position, obtaining a first projected distance of the distance on a first axis of the aquatic carrier 20 and a second projected distance of the distance on a second axis of the aquatic carrier 20, the first axis being parallel to the roll axis X of the aquatic carrier 20 and being perpendicular to the second axis, and calculating the angle error based on the first projected distance and the second projected distance. The first axis can be the roll axis X of the aquatic carrier 20, as illustrated in FIG. 2, and will not be described here again. The second axis is perpendicular to the first axis, and can be the pitch axis Y of the aquatic carrier 20, or other axis parallel to the pitch axis Y. See FIG. 2. Figure 8 Figure 10 Assuming the first axis is the roll axis X and the second axis is the pitch axis Y, and assuming the distance between the subsequent position and the target position is denoted as D, the above distance D can be decomposed into the first projected distance D x and the second projected distance D y based on the attitude data of the aquatic carrier 20 (which can be measured by the inertial measurement sensor 40 on the aquatic carrier 20). The angle error a can be obtained according to the ratio of the first projected distance D x and the second projected distance D y .
[0058]
[0059] In the case that the propeller 10 comprises a steerable member, the direction of the target thrust is related to the steering position of the steerable member. Wherein, when the steerable member comprises the propulsion device 11 in the propeller 10, the direction of the target thrust is related to the steering position of the propulsion device 11; when the steerable member comprises a rudder, the direction of the target thrust is related to the steering position of the rudder. Determining the direction of the target thrust based on the angle error can comprise determining the target steering position of the steerable member based on the angle error. It is to be noted that for the case that the target position falls on the axis of the roll axis of the water area carrier 20, it is indicated that the angle error between the subsequent position and the target position is 0°, and it is required that the target thrust generated by the propulsion device 11 when the steerable member is in the target steering position is only used to promote the water area carrier 20 to advance or retreat, and not to promote the water area carrier 20 to steer. For the case that the target position does not fall on the roll axis of the water area carrier 20, it is indicated that the angle error between the subsequent position and the target position is not 0°, and it is required that the target thrust generated by the propulsion device 11 when the steerable member is in the target steering position needs to be able to promote the water area carrier 20 to steer, that is, the target thrust needs to be able to provide a steering torque for the water area carrier 20; at the same time, the target thrust generated by the propulsion device 11 can promote the water area carrier 20 to advance or retreat.
[0060] For the target steering position of the steerable member, the case that the steerable member comprises the propulsion device 11 is taken as an example for illustration. Please refer to Figure 11A As an example, the target steering position can be located between the reference position P0 and the limit position P2. It is to be noted that in the embodiments of the present application, unless otherwise specified, “between” should be understood as including the end point value. Wherein, the reference position P0 is a position where the axis of the direction of the thrust of the propulsion device 11 passes through the center point of the water area carrier 20, wherein the center point is the intersection point of the rotation axis of the water area carrier 20 and the roll axis of the water area carrier 20 when the water area carrier 20 rotates in place. The limit position P2 is the maximum position to which the propulsion device 11 can rotate compared with the reference position P0. In an embodiment of the present application, it can be understood that the steering angle of the propulsion device 11 is 0° when the propulsion device 11 rotates to the reference position P0, and the steering angle of the propulsion device 11 is the maximum steering angle when the propulsion device 11 rotates to the limit position P2. In particular, in the case that the propulsion device 11 is a rudder, the reference position P0 can be understood as the position where the rudder is perpendicular to the water area carrier 20, and the limit position P2 can be understood as the position where the rudder is parallel to the water area carrier 20. Figure 11AIn the example shown, when the propulsion device 11 rotates to the reference position P0, the direction of the thrust generated by the propulsion device 11 is parallel to the centerline plane of the water carrier 20, and the axis of this direction passes through the center point of the water carrier 20. At this time, the thrust cannot provide steering torque for the water carrier 20. Therefore, the target steering position needs to be set to deviate from the reference position P0 so that the water carrier 20 can turn. Similarly, for the case where the axis of the thrust direction of the propulsion device 11 passes through the center point of the water carrier 20 when the propulsion device 11 rotates to the reference position P0, but the thrust direction is not parallel to the centerline plane of the water carrier 20, the target steering position is also set to deviate from the reference position P0 so that the water carrier 20 can turn.
[0061] The number of extreme positions P2 can be one or two. For example... Figure 11A As shown, when there are two extreme positions P2, they are located on opposite sides of the reference position P0. One extreme position P2 is closer to the port side of the waterway carrier 20 than the reference position P0, and the other extreme position P2 is closer to the starboard side. The turning angles corresponding to the two extreme positions P2 can be distinguished by positive and negative signs. For example, the turning angle corresponding to the reference position P0 is 0°, the turning angle corresponding to one extreme position P2 is -100°, and the turning angle corresponding to the other extreme position P2 is 100°. Specifically, the turning angle corresponding to the extreme position P2 of the port side (hereinafter referred to as the port side) which is closer to the water carrier 20 than the reference position P0 can be set to a negative value, and the turning angle corresponding to the extreme position P2 of the starboard side (hereinafter referred to as the starboard side) which is closer to the water carrier 20 than the reference position P0 can be set to a positive value; or, the turning angle corresponding to the extreme position P2 of the starboard side can be set to a negative value, and the turning angle corresponding to the extreme position P2 of the port side can be set to a positive value. This application does not limit this.
[0062] Determining the target steering position of a steerable component based on angle error can specifically involve determining the target steering angle of the steerable component based on the angle error. This target steering angle is the steering angle of the steerable component when it is in the target steering position. For an example, please refer to... Figure 11A, the target steering position can be any one of the positions between the reference position P0 and the limit position P2 (except the reference position P0), and the position between the reference position P0 and the limit position P2 can be determined according to the angle error between the subsequent position and the target position. In some embodiments, the steering stroke of the steerable part from the reference position P0 to the target steering position is positively correlated with the angle error. Specifically, the smaller the angle error, the smaller the steering stroke of the target steering position to the reference position P0, that is, the smaller the angle difference between the target steering position and the reference position, the closer the target steering position to the reference position; the larger the angle error, the larger the steering stroke of the target steering position to the reference position P0, that is, the larger the angle difference between the target position and the reference position, the closer the target steering position to the limit position P2. As shown in Figure 11B P3 and P4 represent two different target positions, and the steering stroke of the target position P4 to the reference position P0 is greater than that of the target position P3 to the reference position P0. When the angle error is α1, the target steering position is as shown by P3; when the angle error is α2 which is greater than α1, the target steering position is as shown by P4. It can be seen that the steering stroke corresponding to the target steering position P3 is smaller than that corresponding to the target steering position P4.
[0063] It can be understood that the smaller the angle error, the smaller the deviation of the target position relative to the first axis of the water area carrier 20, at this time, only a small steering torque is needed to push the water area carrier 20, so that the target position falls on the first axis; the larger the angle error, the larger the deviation of the target position relative to the first axis of the water area carrier 20, at this time, a large steering torque is needed to push the water area carrier 20, so that the target position falls on the first axis. The size of the steering torque is related to the steering angle of the steerable part. The larger the steering angle of the steerable part at the target steering position, the greater the steering torque that the propeller 10 can provide for the water area carrier 20. Therefore, by adjusting the steering angle of the steerable part according to the angle error, the attitude of the water area carrier 20 can be better adjusted, and the realization of the position keeping function can be ensured.
[0064] In the case that the bow of the water area carrier 20 is closer to the target position than the stern, when the steerable part is at the target steering position, the target thrust generated by the propelling device 11 can cause the water area carrier 20 to steer, so that the bow of the water area carrier 20 faces the target position and the water area carrier 20 advances. Referring to Figure 12A, assuming that at a certain moment, the position and orientation of the water-borne carrier 20 is shown as the solid line pattern in the figure, the direction of the target thrust at the moment is shown as the gray arrow. Under the action of the target thrust, after a period of time, the position and orientation of the water-borne carrier is shown as the dotted line pattern in the figure, it can be seen that under the action of the target thrust, the direction of the water-borne carrier 20 has rotated clockwise, so that the bow of the water-borne carrier 20 faces the target position, and the water-borne carrier 20 advances, thereby being closer to the target position.
[0065] In the case where the stern of the water-borne carrier 20 is closer to the target position than the bow, when the steerable part is in the target steering position, the target thrust generated by the propulsion device 11 can cause the water-borne carrier 20 to steer so that the stern of the water-borne carrier 20 faces the target position, and the water-borne carrier 20 retreats. Referring to Figure 12B , assuming that at a certain moment, the position and orientation of the water-borne carrier 20 is shown as the solid line pattern in the figure, the direction of the target thrust at the moment is shown as the gray arrow. Under the action of the target thrust, after a period of time, the position and orientation of the water-borne carrier is shown as the dotted line pattern in the figure, it can be seen that under the action of the target thrust, the direction of the water-borne carrier 20 has rotated clockwise, so that the bow of the water-borne carrier 20 faces the target position, and the water-borne carrier 20 advances, thereby being closer to the target position.
[0066] When the target position falls on the axis of the pitch axis of the water-borne carrier 20, the propulsion device 11 can generate a target thrust for making the bow of the water-borne carrier 20 face the target position, or can generate a target thrust for making the stern of the water-borne carrier 20 face the target position, which is not limited here. In particular, if the propulsion device 11 can output a thrust whose direction is parallel to the pitch axis and passes through the center point of the water-borne carrier 20, then for the case where the target position falls on the axis of the pitch axis of the water-borne carrier 20, the propulsion device 11 can output the thrust in the direction to cause the water-borne carrier 20 to translate in the direction of the pitch axis to gradually approach the target position until reaching the target position.
[0067] The above embodiments are only exemplary and are not intended to limit the present application. In other embodiments, other directions of thrust can also be applied to cause the water-borne carrier 20 to steer and move in other manners to achieve position keeping, which will not be enumerated one by one here.
[0068] In some embodiments, the target steering position is determined based on the angle error and a predetermined steering parameter. For example, the steering angle of the target steering position can be equal to the product of the angle error and the predetermined steering parameter. The predetermined steering parameter is a fixed value pre-calibrated, for example, a value pre-calibrated and stored before the thruster 10 is shipped. The predetermined steering parameter can be one or more. When the predetermined steering parameter is more than one, in actual use, the appropriate predetermined steering parameter can be selected based on the current application scenario of the thruster 10. It should be noted that the "predetermined steering parameter" herein can be understood as a parameter pre-set before the thruster 10 is shipped, which will not be described below. Assuming that the angle error is denoted as a, and the predetermined steering parameter is denoted as k, the steering angle P of the target steering position can be denoted as:
[0069] P = k * a.
[0070] In this way, the conversion of the angle error to the corresponding target steering angle is realized by the pre-calibrated parameter, which can determine a more suitable steering angle. The thruster 10 operates at the steering angle, which can better push the water carrier 20 to steer, so as to make the target position fall on the first axis of the water carrier 20 faster and more accurately.
[0071] In some embodiments, calculating the target thrust required by the thruster 10 further includes calculating the thrust size of the target thrust required by the thruster 10. Specifically, calculating the target thrust required by the thruster 10 further includes calculating the distance error between the subsequent position and the target position, and calculating the thrust size of the target thrust based on the distance error. The distance error is the distance between the subsequent position of the water carrier 20 and the target position, and the thrust size can be positively correlated with the distance error. When the water carrier 20 is far away from the target position, a larger thrust is usually required to move the water carrier 20 to approach the target position, because the water carrier 20 is subjected to a larger resistance in the water, and a larger friction force needs to be overcome to move. A larger target thrust can generate a larger acceleration, so as to overcome the resistance to achieve a higher speed and improve the position keeping efficiency. Assuming that the coordinates of the target point on the water carrier 20 are (x A ,y A ), and the coordinates of the target position are (x, y), the distance error △d can be represented by the Euclidean distance between the target point and the target position, denoted as:
[0072]
[0073] Alternatively, the thrust size can be determined based on the distance error △d and a predetermined distance parameter m, wherein the predetermined distance parameter m is a fixed value pre-calibrated. For example, the thrust size can be equal to the product of the distance error △d and the predetermined distance parameter m, and the thrust size F can be denoted as:
[0074] F = Δd*m.
[0075] In this way, by using pre-calibrated parameters to convert distance error into corresponding thrust magnitude, a more suitable target thrust can be determined. The thruster 10 operates with this target thrust, which can better propel the water carrier 20 forward or backward, thereby enabling the water carrier 20 to reach the target position faster and more accurately.
[0076] Furthermore, there can be multiple predetermined distance parameters. It is understood that different types of waterborne carriers 20 have different characteristic parameters (such as mass and size), and correspondingly, the conversion relationship between distance error and thrust magnitude may also be different. Therefore, multiple predetermined distance parameters can be pre-calibrated. For different types of waterborne carriers 20, different predetermined distance parameters can be selected to convert distance error to thrust magnitude, making the final thrust magnitude more consistent with the characteristics of the waterborne carrier 20, thereby facilitating the movement control of the waterborne carrier 20.
[0077] In some embodiments, calculating the thrust magnitude of the target thrust based on the distance error includes: obtaining the moving speed of the water carrier 20 at a subsequent position, calculating the speed error between the moving speed and the expected speed of the water carrier 20 when it reaches the target position, and calculating the thrust magnitude of the target thrust based on the distance error and the speed error. The expected speed of the water carrier 20 when it reaches the target position can be less than a predetermined speed threshold, that is, when the water carrier 20 reaches the target position, the speed of the water carrier 20 approaches 0 m / s (including cases where it is equal to 0 m / s). For example, assuming the moving speed of the water carrier 20 at a subsequent position is 3 m / s and the expected speed is 0, the speed error is -3 m / s. By setting the expected speed, the possibility of the water carrier 20 continuing to move after reaching the target position, causing it to deviate from the target position again and requiring further adjustments to correct this deviation, can be effectively reduced. This minimizes the adjustment actions required for the water carrier 20 to maintain the target position, reduces the swaying sensation caused by position adjustments, and improves the user experience.
[0078] The movement speed and the expected speed include a speed of the water area carrier 20 on a first axis, the first axis being parallel to a roll axis X of the water area carrier 20. In some embodiments, the movement speed of the water area carrier 20 at the subsequent position can be measured by the inertial measurement sensor 40. In this way, the complexity is low, and the measurement frequency of the inertial measurement sensor 40 is high, so that the real-time of the speed is high. In other embodiments, the movement speed of the water area carrier 20 at the subsequent position can be obtained based on the inertial measurement sensor 40 and the global navigation satellite system 50. By obtaining the movement speed of the water area carrier 20 based on the inertial measurement sensor 40 and the global navigation satellite system 50, the accuracy of the obtained movement speed can be effectively improved.
[0079] Specifically, obtaining the movement speed of the water area carrier 20 at the subsequent position includes: calculating a first speed of the water area carrier 20 on the first axis based on acceleration data output by the inertial measurement sensor 40, determining a second speed of the water area carrier on the first axis based on speed data output by the global navigation satellite system 50, and fusing the first speed and the second speed to obtain the movement speed of the water area carrier at the subsequent position. The first speed can be obtained by integrating the acceleration data output by the inertial measurement sensor 40. The global navigation satellite system 50 can obtain a plurality of (two as an example) position data of the water area carrier 20, and determine a movement distance of the water area carrier 20 based on the two position data, and determine the movement speed of the water area carrier 20 based on the movement distance and a time interval for obtaining the two position data. The movement speed obtained by the global navigation satellite system 50 is decomposed to the first axis, and the second speed is obtained. The fusion of the first speed and the second speed can be a weighted processing of the first speed and the second speed.
[0080] In some embodiments, the thrust size is positively correlated with the distance error and the thrust size is positively correlated with the speed error. Alternatively, the thrust size is determined based on the speed error, the distance error, and a predetermined parameter, which can include at least one of a predetermined distance parameter m or a predetermined speed parameter n. In an example in which the predetermined distance parameter m and the predetermined speed parameter n are used simultaneously, the distance error Δd can be weighted based on the predetermined distance parameter m, and the speed error Δv can be weighted based on the predetermined speed parameter n, and the thrust size is obtained based on the weighted distance error and the weighted speed error. The thrust size F can be recorded as:
[0081] F = m * Δd + n * Δv.
[0082] Thus, by converting the distance error and the speed error into the target thrust size through the pre-calibrated parameters, the target thrust size can be determined, and the thruster 10 can operate at the target thrust size, so as to better push the aquatic carrier 20 to move forward or backward, and thus the aquatic carrier 20 can reach the target position more quickly and accurately.
[0083] Further, the predetermined parameters can be multiple. It can be understood that the characteristic parameters (such as mass, size, etc.) of different types of aquatic carriers 20 are different, and correspondingly, the conversion relationship of the distance error and the speed error to the thrust size can also be different. Therefore, multiple predetermined parameters can be pre-calibrated, and different predetermined parameters can be selected for different types of aquatic carriers 20 to convert the distance error and the speed error to the thrust size, so that the final thrust size can be more in line with the characteristics of the aquatic carrier 20, thereby facilitating the movement control of the aquatic carrier 20.
[0084] In step S13, after the target thrust required by the propulsion device 11 is calculated, it is considered that different types of thrusters 10 can adopt different propulsion motors 111 and propellers 112, which can result in different operation parameters adopted by different types of thrusters 10 to output the target thrust. Therefore, the control of the thruster 10 to generate the target thrust can include: determining a target operation parameter matched with the thrust size of the target thrust based on the mapping relationship between the thrust size and the operation parameter of the thruster 10, and controlling the thruster 10 to operate at the target operation parameter to generate the target thrust. The mapping relationship between the thrust size and the operation parameter can be pre-calibrated information, which can be pre-stored in the thruster 10 for the processor 16 to call conveniently. The operation parameter can be, for example, power, current, voltage, etc., which is not limited in the present application.
[0085] It should be noted that the actions of calculating the target thrust and controlling the propulsion device 11 to generate the target thrust can be understood as one adjustment cycle. In order to realize the position keeping of the aquatic carrier 20, the processor 16 can only need to perform the action of one adjustment cycle to move the subsequent position of the aquatic carrier 20 to the target position, or can need to perform the action of multiple adjustment cycles to move the subsequent position of the aquatic carrier 20 to the target position. For details, refer to Figure 13, assuming that the target position is the origin of the world coordinate system X'O'Y'. At T1, the water area carrier 20 is oriented towards the Y' axis of the world coordinate system X'O'Y', and the angle error of the water area carrier 20 is a1, and the direction of the target thrust is indicated by the gray arrow in the figure. Under the action of the target thrust, the water area carrier 20 starts to move and turn clockwise (as indicated by the dashed arrow in the figure). At T2, which is after T1, the angle error of the water area carrier 20 is a2, and a2 is less than a1. As the angle error of the water area carrier 20 changes, the direction of the target thrust also changes. Under the action of the changed target thrust, the attitude of the water area carrier 20 continues to change, and at T3, which is after T2, the angle error further decreases from a2 to a3, and the direction of the target thrust also continues to change as the angle error changes. At T4, the water area carrier 20 reaches the target position, and the position holding is completed. It should be noted that in the above description, the position of the water area carrier 20 is made to coincide with the target position by performing the position holding control, but in actual applications, as long as the distance between the position of the water area carrier 20 and the target position is within a set range, it is considered that the water area carrier 20 has been kept at the target position, and it is not required that the position of the water area carrier 20 strictly coincides with the target position. Figure 13
[0086] In the present application, in addition to being able to calculate the thrust size of the target thrust and generate the target thrust based on the calculated thrust size, the target thrust of a predetermined thrust value can also be generated, or the target thrust corresponding to a predetermined operating parameter can be generated.
[0087] In the case where the thrust size of the target thrust is a predetermined thrust value, the predetermined thrust value can be a manually set thrust value or a default thrust value. Similarly, there is a mapping relationship between the thrust size of the thruster 10 and the operating parameter, and therefore, controlling the thruster 10 to generate the target thrust includes: determining a target operating parameter that matches the predetermined thrust value based on the mapping relationship between the thrust size of the thruster 10 and the operating parameter, and controlling the thruster 10 to operate with the target operating parameter to generate the target thrust.
[0088] In the case where the target thrust corresponding to the predetermined operating parameter is generated, controlling the thruster 10 to generate the target thrust includes: controlling the thruster 10 to operate with the predetermined operating parameter to generate the target thrust. In the present embodiment, the target thrust does not need to calculate the thrust size, but directly sets the thruster 10 to operate with the predetermined operating parameter, thereby generating the target thrust corresponding to the predetermined operating parameter.
[0089] It should be noted that, for the case that the thrust size of the target thrust is the predetermined thrust value, the processor 16 determines the target operating parameter matching the predetermined thrust value in the first adjustment period, and operates with the target operating parameter in the first adjustment period and the subsequent adjustment periods. Therefore, in the subsequent adjustment periods, the processor 16 only needs to adjust the steering angle of the steerable member. For the case that the thruster 10 operates with the predetermined operating parameter, in each adjustment period, the processor only needs to adjust the steering angle of the steerable member, without the calculation of the target operating parameter.
[0090] In the above embodiments of the present application, in the process of enabling the position keeping function, the thruster 10 simultaneously adjusts the thrust direction and outputs the thrust size to gradually make the bow or stern of the water area carrier 20 face the target position, and gradually make the water area carrier approach the target position. This synchronous adjustment mode can make the water area carrier 20 reach the target position faster, and improve the efficiency of position keeping.
[0091] The method of the present application further comprises: when the distance error between the subsequent position of the water area carrier 20 and the target position is within the predetermined error range, controlling the thruster 10 to stop generating thrust. When the subsequent position of the water area carrier 20 is relatively close to the target position, the water area carrier 20 can continue to move under the action of inertia to reach the target position, and therefore, when the distance error is within the predetermined error range, the thruster 10 can be controlled to stop generating thrust. On the one hand, this can make the water area carrier 20 reach the target position at a smaller speed, preventing the water area carrier 20 from deviating from the target position after reaching the target position. On the other hand, the thruster 10 is controlled to stop generating thrust in advance before reaching the target position, which can reduce the energy consumption of the water area carrier 20. It should be noted that the control of the processor 16 to stop the thrust output of the propulsion device 11 does not mean that the thruster 10 exits the position keeping function. It should be understood that the stop operation at this time is only because the position of the water area carrier 20 has approached the target position and no adjustment is needed, and the position keeping function is still enabled. Once the position of the water area carrier 20 deviates from the target position, the processor 16 will continue to control the propulsion device 11 to generate thrust.
[0092] In the method of the embodiments of the present application, since the steering angle of the propulsion device 11 during the position keeping function is enabled to be autonomously determined and executed by the processor 16 according to the information such as the angle error, the speed error, etc., the steering instruction generated by the control device 30 based on the user operation of the control device 30 cannot be used to determine the steering angle. Therefore, the method of the present application needs to be executed when the active part of the control device 30 is not activated, wherein the control device 30 includes but is not limited to the throttle lever, the control button, the steering wheel, the tiller, etc. The inactivation can be understood as that the control device 30 does not receive the user operation. For example, the active part of the control device 30 is the component for receiving the user steering operation, such as the disc surface of the steering wheel, the handle of the tiller, etc., the inactivation of the control device 30 can include that the control device 30 does not receive the user steering control operation. Correspondingly, the method of the present application can be executed when the propulsion device 10 does not receive the steering instruction sent by the control device 30. Alternatively, the active part of the control device 30 is the component for receiving the user throttle operation, such as the throttle lever of the remote controller, the rocker of the wireless rocker, etc., the inactivation of the control device 30 can include that the control device 30 does not receive the user throttle control operation. Correspondingly, the method of the present application can be executed when the propulsion device 10 does not receive the throttle instruction sent by the control device 30. When the active part of the control device 30 is activated, it usually indicates that the user needs to control the propulsion device 10, therefore, in this case, the position keeping control can not be executed, but the propulsion device 10 is controlled in response to the control instruction output by the user through the control device 30, so that the control process of the propulsion device 10 meets the operation requirement of the user. While when the active part of the control device 30 is not activated, it usually indicates that the user does not have the demand to operate the propulsion device 10, at this time, the position keeping control can be executed, so that the aquatic carrier 20 is kept at the target position.
[0093] During the period when the position keeping function is enabled, the user can operate the steering device 30. For this scenario, the method of the present application further comprises: during the period when the thruster 10 performs the position keeping control, if the thruster 10 receives a movement instruction of the water area carrier 20 sent by the steering device 30, after the thruster 10 executes the movement instruction, and when the water area carrier 20 meets the state maintenance condition, the position keeping control is continued to be performed, and the steering device 30 is used to steer the thruster 10. As an example, the state maintenance condition comprises that a deviation value of the position of the water area carrier 20 after movement from the target position is less than a first deviation threshold. That is, when the deviation value is less than the first deviation threshold, the position keeping function continues to be enabled, and the processor 16 continues to perform the position keeping control. When the deviation value reaches (is equal to or greater than) the first deviation threshold, the thruster 10 exits the position keeping function, and the processor 16 controls the operation of the components such as the propulsion device 11 based on the instruction sent by the steering device 30. In this way, the thruster 10 can automatically exit the position keeping function without the need for the user to manually operate, reduces the intervention of manpower, is more convenient, and provides a better user experience. In the embodiments of the present application, the first deviation threshold can be 0.5 m, 0.7 m, 0.8 m, etc., and the present application does not make any limitation in this regard.
[0094] For the case that the deviation value is less than the first deviation threshold, the processor 16 continues to execute the position keeping control can include: when the deviation value is between the second deviation threshold and the first deviation threshold, updating the position of the water area carrier 20 after moving as the target position, and continuing to execute the position keeping control; when the deviation value is less than the second deviation threshold, keeping the target position unchanged, and continuing to execute the position keeping control. The second deviation threshold is less than the first deviation threshold. The second deviation threshold can be 0.2m, 0.3m, 0.4m, etc., which is not limited in the present application. It can be understood that when the deviation value is less than the second deviation value, it means that the user may have misoperated the control device 30 at this time, causing the thruster 10 to work in response to the instruction of the control device 30, and then causing the movement of the water area carrier 20. Therefore, for this situation, the processor 16 can consider it as a user misoperation, and the user subjectively does not want to change the target position, and the processor 16 still executes the position keeping control based on the original target position. In this way, the position keeping function exit problem caused by user misoperation can be avoided. When the deviation value is between the second deviation threshold and the first deviation threshold, the water area carrier 20 rotates a relatively large angle, and does not exceed the rotation amplitude corresponding to the first deviation threshold, which means that the user may want to fine-tune the target position of the water area carrier 20 at this time. Therefore, for this situation, the processor 16 can take the position of the water area carrier 20 after moving as the new target position. In the subsequent control, the processor 16 executes the position keeping control based on the new target position. In this way, the user does not need to perform the operation of enabling the position keeping function again when fine-tuning the target position, and the thruster 10 can automatically execute the position keeping function, and the user operation is more convenient.
[0095] It should be pointed out that the method of the present application is not only suitable for the case that the water area carrier 20 is only installed with one thruster 10, but also suitable for the case that the water area carrier 20 is installed with multiple thrusters 10 (such as two, three, four, etc.). For the case that the water area carrier 20 is installed with multiple thrusters 10, during the position keeping function is enabled, the processor 16 can only enable one thruster 10 of the multiple thrusters 10 to execute the position keeping control. The thruster 10 can be any one of the multiple thrusters 10. The method of the present application further includes: detecting whether there is another thruster in a working state on the water area carrier 20, if not, executing the step of calculating the target thrust required by the thruster 10. If there is, the step of calculating the target thrust required by the thruster 10 can not be executed, and a prompt information can be output to prompt the user that the thruster 10 does not execute the position keeping control.
[0096] In the case where a plurality of propellers 10 are installed on the water area carrier 20, one of the plurality of propellers 10 can be set as a master, and the other propellers 10 can be set as slaves. The position keeping control can be performed by the master. The master among the plurality of propellers 10 can be determined by the processor 16, and the master can be controlled to perform the position keeping control.
[0097] Alternatively, the position keeping control mode can also be determined according to the number of propellers 10 in the working state. The position keeping control mode includes a single-machine mode and a multi-machine mode. When the number of propellers 10 in the working state is 1, the single-machine mode can be entered, and the step of calculating the target thrust required by the propeller 10 can be performed to keep the position of the water area carrier 20 based on the single propeller 10. When the number of propellers 10 in the working state is greater than 1, the multi-machine mode can be entered, and the position of the water area carrier 20 can be kept based on the plurality of propellers 10.
[0098] Each propeller 10 includes a processor 16, and the processors 16 of the plurality of propellers 10 are connected to the same bus. The number of propellers 10 in the working state can be determined according to the number of processors 16 connected to the bus. When the propeller 10 is connected to the bus, the processor 16 of the propeller 10 can send a signal to the bus.
[0099] Referring to Figure 14 The application also provides a method for keeping the position of a water area carrier based on a single propeller, which includes the following steps:
[0100] Step S21: In response to a position keeping instruction, the position of the current water area carrier 20 is taken as a target position.
[0101] Step S22: The subsequent position of the water area carrier 20 is obtained.
[0102] Step S23: The angle error between the subsequent position and the target position is calculated.
[0103] Step S24: The thrust direction of the target thrust required by the propeller 10 is determined based on the angle error.
[0104] Step S25: The propeller 10 is controlled to generate the target thrust in the thrust direction, so that the water area carrier 20 is kept at the target position.
[0105] The specific details of the embodiment are described in the foregoing method embodiment, which will not be repeated here.
[0106] In some embodiments, the position of the water area carrier 20 is obtained based on a global navigation satellite system 50.
[0107] In some embodiments, the global navigation satellite system 50 is arranged on the water area carrier 20.
[0108] In some embodiments, the global navigation satellite system 50 is provided on the thruster 10.
[0109] In some embodiments, the position of the water area carrier 20 is obtained by: obtaining the position of the thruster 10 and the size of the water area carrier 20; and determining the position of the water area carrier 20 based on the position of the thruster 10 and the size of the water area carrier 20.
[0110] In some embodiments, the position of the water area carrier 20 is obtained based on the global navigation satellite system 50 and the inertial measurement sensor 40.
[0111] In some embodiments, the position of the water area carrier 20 is obtained by: obtaining the latest position data output by the global navigation satellite system 50; calculating a movement distance of the water area carrier 20 based on the acceleration data output by the inertial measurement sensor 40, the movement distance being the distance moved by the water area carrier 20 within a time period between the time when the latest position data is output by the global navigation satellite system 50 and the current time; and calculating the position of the water area carrier 20 based on the position data and the movement distance.
[0112] In some embodiments, the position of the water area carrier 20 is obtained by: obtaining the latest position data output by the global navigation satellite system 50; calculating a movement distance of the water area carrier 20 based on the movement speed of the thruster 10 and the heading of the water area carrier 20, the movement distance being the distance moved by the water area carrier 20 within a time period between the time when the latest position data is output by the global navigation satellite system 50 and the current time; and calculating the position of the water area carrier 20 based on the position data and the movement distance.
[0113] In some embodiments, the angle error between the subsequent position and the target position is calculated by: obtaining a distance between the subsequent position and the target position; obtaining a first projection distance of the distance on a first axis of the water area carrier 20 and a second projection distance of the distance on a second axis of the water area carrier 20, the first axis being parallel to a roll axis of the water area carrier 20 and perpendicular to the second axis; and calculating the angle error based on the first projection distance and the second projection distance.
[0114] In some embodiments, the thruster 10 comprises a steerable member, and the direction of the target thrust required by the thruster 10 based on the angle error is determined by: determining a target steering position of the steerable member based on the angle error.
[0115] In some embodiments, the steerable member comprises a propulsion device 11 in the thruster 10.
[0116] In some embodiments, the thruster 10 comprises a rudder and a propulsion device 11, and the steerable member comprises the rudder.
[0117] In some embodiments, the steering stroke of the steerable member from the reference position to the target steering position is positively correlated with the angle error, the reference position being a position where the axis of the thrust direction of the thruster passes through the center point of the waterborne carrier 20.
[0118] In some embodiments, the target steering position is determined based on the angle error and a predetermined steering parameter.
[0119] In some embodiments, the method further comprises: calculating a distance error between the subsequent position and the target position; calculating a thrust magnitude of the target thrust based on the distance error; and controlling the thruster 10 to generate the target thrust in the thrust direction, including: controlling the thruster 10 to generate the target thrust in the thrust direction and with the thrust magnitude.
[0120] In some embodiments, the thrust magnitude is positively correlated with the distance error.
[0121] In some embodiments, the thrust magnitude is determined based on the distance error and a predetermined distance parameter.
[0122] In some embodiments, the calculating of the thrust magnitude of the target thrust based on the distance error comprises: obtaining a moving speed of the waterborne carrier 20 at the subsequent position; calculating a speed error between the moving speed and an expected speed of the waterborne carrier when reaching the target position, the expected speed being less than a speed threshold; and calculating the thrust magnitude of the target thrust based on the distance error and the speed error.
[0123] In some embodiments, the moving speed and the expected speed comprise a speed of the waterborne carrier 20 on a first axis, the first axis being parallel to a roll axis X of the waterborne carrier 20.
[0124] In some embodiments, the moving speed is obtained based on the inertial measurement sensor 40.
[0125] In some embodiments, the moving speed is obtained based on the inertial measurement sensor 40 and the global navigation satellite system 50.
[0126] In some embodiments, the obtaining of the moving speed of the waterborne carrier 20 at the subsequent position comprises: calculating a first speed of the waterborne carrier 20 on the first axis based on acceleration data output by the inertial measurement sensor 40; determining a second speed of the waterborne carrier 20 on the first axis based on speed data output by the global navigation satellite system 50; and fusing the first speed and the second speed to obtain the moving speed of the waterborne carrier 20 at the subsequent position.
[0127] In some embodiments, the thrust magnitude is positively correlated with the distance error; and / or the thrust magnitude is positively correlated with the speed error.
[0128] In some embodiments, the thrust magnitude is determined based on the speed error, the distance error, and a predetermined parameter, the predetermined parameter comprising at least one of a predetermined distance parameter or a predetermined speed parameter.
[0129] In some embodiments, the control of the thruster 10 to generate the target thrust in the thrust direction comprises: determining a target operating parameter matching the thrust magnitude of the target thrust based on a mapping relationship between the thrust magnitude of the thruster 10 and the operating parameter; and controlling the thruster 10 to operate at the target operating parameter to generate the target thrust in the thrust direction and matching the target operating parameter in the thrust magnitude.
[0130] In some embodiments, the thrust magnitude of the target thrust is a predetermined thrust value.
[0131] In some embodiments, the control of the thruster 10 to generate the target thrust in the thrust direction comprises: determining a target operating parameter matching the thrust magnitude of the target thrust based on a mapping relationship between the thrust magnitude of the thruster 10 and the operating parameter; and controlling the thruster 10 to operate at the target operating parameter to generate the target thrust in the thrust direction and matching the target operating parameter in the thrust magnitude.
[0132] In some embodiments, the control of the thruster 10 to generate the target thrust in the thrust direction comprises: controlling the thruster 10 to operate at a predetermined operating parameter to generate the target thrust in the thrust direction.
[0133] In some embodiments, the method further comprises: controlling the thruster 10 to stop generating the thrust when the distance error between the subsequent position and the target position of the water area carrier 20 is within a predetermined error range.
[0134] In some embodiments, the method is performed when an active member of the control device 30 is not activated, the control device 30 being configured to control the thruster 10.
[0135] In some embodiments, the method is performed when the thruster 10 does not receive a steering instruction sent by the control device 30.
[0136] In some embodiments, the method is performed when the thruster 10 does not receive a throttle instruction sent by the control device 30.
[0137] In some embodiments, the method further comprises: during the execution of the position maintaining control by the thruster 10, if the thruster 10 receives a moving instruction sent by the control device 30 to move the water area carrier 20, the control device 30 being configured to control the thruster 10, after the thruster 10 executes the moving instruction, and when the water area carrier 20 satisfies a state maintaining condition, continuing to execute the position maintaining control.
[0138] In some embodiments, the state maintaining condition comprises that a deviation value of the position of the water area carrier 20 after movement from the target position is less than a first deviation threshold.
[0139] In some embodiments, the continuing to perform the position maintaining control comprises: when the deviation value is between a second deviation threshold and the first deviation threshold, updating the position of the water area carrier 20 after movement to the target position, and continuing to perform the position maintaining control, the second deviation threshold being less than the first deviation threshold; when the deviation value is less than the second deviation threshold, keeping the target position unchanged, and continuing to perform the position maintaining control.
[0140] In some embodiments, the position maintaining control is stopped when the deviation value reaches the first deviation threshold.
[0141] In some embodiments, the method further comprises: detecting whether there is another thruster in an active state on the water area carrier 20; and if not, performing the step of calculating the target thrust required by the thruster 10.
[0142] The specific details of the above embodiments can also be found in the foregoing method embodiments, which will not be described here again.
[0143] The application also provides a computer readable storage medium having computer instructions stored thereon, the computer instructions being executed by a processor to implement the method for maintaining the position of a water area carrier based on a single thruster according to any of the embodiments of the application. The computer readable storage medium can be a phase change memory (PRAM), a static random access memory (SRAM), a dynamic random access memory (DRAM), other types of random access memory (RAM), a read-only memory (ROM), an electrically erasable programmable read-only memory (EEPROM), a flash memory or other memory technology, a compact disc read-only memory (CD-ROM), a digital versatile disc (DVD) or other optical storage, a magnetic cassette tape, a magnetic tape magnetic disk storage or other magnetic storage device, or any other non-transmission medium that can be used to store information accessible to a computing device.
[0144] It should be noted that, in the present document, relational terms such as "first" and "second", and the like can be used solely to distinguish one entity or action from another entity or action, without necessarily requiring or implying any actual such relationship or order between such entities or actions. The terms "comprises", "comprising", or any other variation thereof, are intended to cover a non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements does not include only those elements but can include other elements not expressly listed or inherent to such process, method, article, or apparatus. An element proceeded by "comprises... a" does not, without more constraints, exclude the existence of additional identical elements in the process, method, article, or apparatus that comprises the element.
[0145] The above detailed description of the method and device provided by the embodiments of the present application has been introduced in detail, the principle and implementation mode of the present application are described by applying specific examples in the present document, the above embodiment explanation is only for helping to understand the method of the present application and its core idea; meanwhile, for the general technical personnel in the art, according to the idea of the present application, the specific implementation mode and application range will have changes, and the above-mentioned description should not be understood as the limitation of the present application.
Claims
1. A method for position keeping of a waterborne carrier based on a single propeller, characterized in that, The method comprises: in response to a position holding instruction, taking a current position of the water area carrier as a target position; calculating a target thrust required by the thruster, the target thrust being used to make a bow or a stern of the water area carrier face the target position and make the water area carrier advance or retreat to keep at the target position; the calculating the target thrust required by the thruster comprises determining a thrust direction of the target thrust based on an angle error between a subsequent position of the water area carrier and the target position; the angle error is determined based on a first projection distance on a first axis of the water area carrier and a second projection distance on a second axis of the water area carrier between the subsequent position and the target position; the first axis is parallel to a roll axis of the water area carrier and perpendicular to the second axis; controlling the thruster to generate the target thrust.
2. The method of claim 1, wherein, The thrust direction of the target thrust is used to make the target position fall on the first axis of the water area carrier, the first axis being parallel to the roll axis of the water area carrier.
3. The method of claim 2, wherein, The first axis coincides with the roll axis.
4. The method of claim 1, wherein, When the bow is closer to the target position than the stern, the target thrust is used to make the bow face the target position and make the water area carrier advance to keep at the target position.
5. The method of claim 1, wherein, When the stern is closer to the target position than the bow, the target thrust is used to make the stern face the target position and make the water area carrier retreat to keep at the target position.
6. The method of claim 1, wherein, The position of the water area carrier is acquired based on a global navigation satellite system.
7. The method of claim 6, wherein, The global navigation satellite system is arranged on the water area carrier.
8. The method of claim 6, wherein, The global navigation satellite system is arranged on the thruster.
9. The method of claim 8, wherein, The position of the water area carrier is acquired, comprising: acquiring a position of the thruster and a size of the water area carrier; determining the position of the water area carrier based on the position of the thruster and the size of the water area carrier.
10. The method of claim 1, wherein, The position of the water area carrier is acquired based on a global navigation satellite system and an inertial measurement sensor.
11. The method of claim 10, wherein, The position of the water area carrier is acquired, comprising: acquiring position data output by the global navigation satellite system at the latest; calculating a moving distance of the water area carrier based on acceleration data output by the inertial measurement sensor, the moving distance being a distance moved by the water area carrier in a period between a time of the position data output by the global navigation satellite system at the latest and a current time; calculating the position of the water area carrier based on the position data and the moving distance.
12. The method of claim 6, wherein, The position of the water area carrier is acquired, comprising: acquiring position data output by the global navigation satellite system at the latest; calculating a moving distance of the water area carrier based on a moving speed of the thruster and a heading of the water area carrier, the moving distance being a distance moved by the water area carrier in a period between a time of the position data output by the global navigation satellite system at the latest and a current time; calculating the position of the water area carrier based on the position data and the moving distance.
13. The method of claim 1, wherein, The thruster comprises a steerable part, and the determining the thrust direction of the target thrust based on the angle error comprises: determine a target steering position of the steerable member based on the angle error.
14. The method of claim 13, wherein, The steerable member comprises a propulsion device in the thruster.
15. The method of claim 13, wherein, The thruster comprises a vane and a propulsion device, and the steerable member comprises the vane.
16. The method of claim 13, wherein, A steering stroke of the steerable member from a reference position to the target steering position is positively correlated with the angle error, the reference position being a position where an axis of a thrust direction of the thruster passes through a center point of the aquatic carrier.
17. The method of claim 13, wherein, The target steering position is determined based on the angle error and a predetermined steering parameter.
18. The method of claim 1, wherein, The calculating the target thrust required by the thruster further comprises: calculating a distance error between the subsequent position and the target position; calculating a thrust magnitude of the target thrust based on the distance error.
19. The method of claim 18, wherein, The thrust magnitude is positively correlated with the distance error.
20. The method of claim 18, wherein, The thrust magnitude is determined based on the distance error and a predetermined distance parameter.
21. The method of claim 18, wherein, The calculating the thrust magnitude of the target thrust based on the distance error comprises: obtaining a moving speed of the aquatic carrier at the subsequent position; calculating a speed error between the moving speed and an expected speed of the aquatic carrier when reaching the target position, the expected speed being less than a speed threshold; calculating a thrust magnitude of the target thrust based on the distance error and the speed error.
22. The method of claim 21, wherein, The moving speed and the expected speed comprise speeds of the aquatic carrier on a first axis, the first axis being parallel to a roll axis of the aquatic carrier.
23. The method of claim 22, wherein, The moving speed is obtained based on an inertial measurement sensor.
24. The method of claim 22, wherein, The moving speed is obtained based on an inertial measurement sensor and a global navigation satellite system.
25. The method of claim 24, wherein, The obtaining the moving speed of the aquatic carrier at the subsequent position comprises: calculating a first speed of the aquatic carrier on the first axis based on acceleration data output by the inertial measurement sensor; determining a second speed of the aquatic carrier on the first axis based on speed data output by the global navigation satellite system; fusing the first speed and the second speed to obtain the moving speed of the aquatic carrier at the subsequent position.
26. The method of claim 21, wherein, The thrust magnitude is positively correlated with the distance error; and / or The thrust magnitude is positively correlated with the speed error.
27. The method of claim 21, wherein, The thrust magnitude is determined based on the speed error, the distance error and a predetermined parameter, the predetermined parameter comprising at least one of a predetermined distance parameter or a predetermined speed parameter.
28. The method of claim 18, wherein, The controlling the thruster to generate the target thrust comprises: determining a target operating parameter matching the thrust magnitude of the target thrust based on a mapping relationship between thrust magnitudes of the thruster and operating parameters; controlling the thruster to operate at the target operating parameter to generate the target thrust.
29. The method of claim 1, wherein, The thrust magnitude of the target thrust is a predetermined thrust value.
30. The method of claim 29, wherein, The controlling the thruster to generate the target thrust comprises: determining a target operating parameter matching the predetermined thrust value based on a mapping relationship between thrust magnitudes of the thruster and operating parameters; controlling the thruster to operate at the target operating parameter to generate the target thrust.
31. The method of claim 1, wherein, The controlling the thruster to generate the target thrust comprises: controlling the thruster to operate at a predetermined operating parameter to generate the target thrust.
32. The method of claim 1, wherein, The method further comprises: controlling the thruster to stop generating thrust when a distance error between a subsequent position of the water-borne carrier and the target position is within a predetermined error range.
33. The method of claim 1, wherein, The method is performed when an active element of a control device is not activated, the control device being configured to control the thruster.
34. The method of claim 33, wherein, The method is performed when the thruster does not receive a steering instruction sent by the control device.
35. The method of claim 33, wherein, The method is performed when the thruster does not receive a throttle instruction sent by the control device.
36. The method of claim 1, wherein, The method further comprises: when the thruster is executing position-keeping control, if the thruster receives a movement instruction sent by a control device configured to control the thruster to move the water-borne carrier, continuing to execute the position-keeping control after the thruster executes the movement instruction, and the water-borne carrier satisfies a state-maintaining condition.
37. The method of claim 36, wherein, The state-maintaining condition comprises that an offset value of a position of the water-borne carrier after movement from the target position is less than a first offset threshold.
38. The method of claim 37, wherein, The continuing to execute the position-keeping control comprises: when the offset value is between a second offset threshold and the first offset threshold, updating the position of the water-borne carrier after movement to the target position, and continuing to execute the position-keeping control, the second offset threshold being less than the first offset threshold; when the offset value is less than the second offset threshold, keeping the target position unchanged, and continuing to execute the position-keeping control.
39. The method of claim 37, wherein, The method further comprises:
40. The method of claim 1, wherein, detecting whether there is another thruster on the water-borne carrier in an active state; if not, executing the step of calculating the target thrust required by the thruster. The method comprises:
41. A method for maintaining the position of a water-borne carrier based on a single propeller, characterized by, in response to a position-keeping instruction, taking a current position of the water-borne carrier as a target position; obtaining a subsequent position of the water-borne carrier; calculating an angle error between the subsequent position and the target position; the angle error being determined based on a first projection distance on a first axis of the water-borne carrier and a second projection distance on a second axis of the water-borne carrier, the first projection distance and the second projection distance being based on a distance between the subsequent position and the target position; the first axis being parallel to a roll axis of the water-borne carrier, and the second axis being perpendicular to the first axis; determining a thrust direction of a target thrust required by the thruster based on the angle error; controlling the thruster to generate the target thrust in the thrust direction to keep the water-borne carrier at the target position. The position of the water-borne carrier is obtained based on a global navigation satellite system.
42. The method of claim 41, wherein, The global navigation satellite system is provided on the water-borne carrier.
43. The method of claim 42, wherein, The global navigation satellite system is provided on the thruster.
44. The method of claim 42, wherein, The position of the water-borne carrier is obtained based on a global navigation satellite system and an inertial measurement sensor.
45. The method of claim 44, wherein, The position of the water-borne carrier is obtained based on a global navigation satellite system and an inertial measurement sensor. The position of the water-borne carrier is obtained based on a global navigation satellite system and an inertial measurement sensor. 46. The method of claim 41, wherein, 47. The method of claim 46, wherein, acquiring latest output position data of the global navigation satellite system; calculating a moving distance of the water area carrier based on acceleration data output by the inertial measurement sensor, the moving distance being a distance moved by the water area carrier in a period between a time of the latest output position data of the global navigation satellite system and a current time; calculating a position of the water area carrier based on the position data and the moving distance.
48. The method of claim 42, wherein, acquiring a position of the water area carrier, comprising: acquiring latest output position data of the global navigation satellite system; calculating a moving distance of the water area carrier based on a moving speed of the propeller and a heading of the water area carrier, the moving distance being a distance moved by the water area carrier in a period between a time of the latest output position data of the global navigation satellite system and a current time; calculating a position of the water area carrier based on the position data and the moving distance.
49. The method of claim 41, wherein, the propeller comprises a steerable part, and the determining a target thrust direction of the target thrust required by the propeller based on the angle error comprises: determining a target steering position of the steerable part based on the angle error.
50. The method of claim 49, wherein, the steerable part comprises a propelling device in the propeller.
51. The method of claim 49, wherein, the propeller comprises a rudder and a propelling device, and the steerable part comprises the rudder.
52. The method of claim 49, wherein, a steering stroke of the steerable part from a reference position to the target steering position is positively correlated with the angle error, and the reference position is a position where an axis of the thrust direction of the propeller passes through a center point of the water area carrier.
53. The method of claim 49, wherein, the target steering position is determined based on the angle error and a predetermined steering parameter.
54. The method of claim 41, wherein, the method further comprises: calculating a distance error between the subsequent position and the target position; calculating a thrust size of the target thrust based on the distance error; the controlling the propeller to generate the target thrust in the thrust direction comprises: controlling the propeller to generate the target thrust in the thrust direction and with the thrust size.
55. The method of claim 54, wherein, the thrust size is positively correlated with the distance error.
56. The method of claim 54, wherein, the thrust size is determined based on the distance error and a predetermined distance parameter.
57. The method of claim 54, wherein, the calculating the thrust size of the target thrust based on the distance error comprises: acquiring a moving speed of the water area carrier at the subsequent position; calculating a speed error between the moving speed and an expected speed of the water area carrier when reaching the target position, the expected speed being less than a speed threshold; calculating the thrust size of the target thrust based on the distance error and the speed error.
58. The method of claim 57, wherein, the moving speed and the expected speed comprise speeds of the water area carrier on a first axis, and the first axis is parallel to a roll axis of the water area carrier.
59. The method of claim 58, wherein, the moving speed is acquired based on an inertial measurement sensor.
60. The method of claim 58, wherein, the moving speed is acquired based on an inertial measurement sensor and a global navigation satellite system.
61. The method of claim 60, wherein, the acquiring the moving speed of the water area carrier at the subsequent position comprises: calculating a first speed of the water area carrier on the first axis based on acceleration data output by the inertial measurement sensor; determining a second speed of the water area carrier on the first axis based on speed data output by the global navigation satellite system; fusing the first speed and the second speed to obtain a moving speed of the water area carrier at the subsequent position.
62. The method of claim 57, wherein, the thrust magnitude is positively correlated with the distance error; and / or the thrust magnitude is positively correlated with the speed error.
63. The method of claim 57, wherein, the thrust magnitude is determined based on the speed error, the distance error, and a predetermined parameter, the predetermined parameter comprising at least one of a predetermined distance parameter or a predetermined speed parameter.
64. The method of claim 54, wherein, the control of the thruster to generate the target thrust in the thrust direction comprises: determining a target operating parameter matching the thrust magnitude of the target thrust based on a mapping relationship between thrust magnitude and operating parameter of the thruster; controlling the thruster to operate in the target operating parameter to generate the target thrust in the thrust direction and matching the target operating parameter in thrust magnitude.
65. The method of claim 41, wherein, the thrust magnitude of the target thrust is a predetermined thrust value.
66. The method of claim 65, wherein, the control of the thruster to generate the target thrust in the thrust direction comprises: determining a target operating parameter matching the predetermined thrust value based on a mapping relationship between thrust magnitude and operating parameter of the thruster; controlling the thruster to operate in the target operating parameter to generate the target thrust in the thrust direction and matching the predetermined thrust value in thrust magnitude.
67. The method of claim 41, wherein, the control of the thruster to generate the target thrust in the thrust direction comprises: controlling the thruster to operate in a predetermined operating parameter to generate the target thrust in the thrust direction.
68. The method of claim 41, wherein, the method further comprises: controlling the thruster to stop generating thrust when a distance error between a subsequent position of the water area carrier and the target position is within a predetermined error range.
69. The method of claim 41, wherein, the method is executed when an active element of a control device is not activated, the control device being configured to control the thruster.
70. The method of claim 69, wherein, the method is executed when the thruster does not receive a steering instruction sent by the control device.
71. The method of claim 69, wherein, the method is executed when the thruster does not receive an accelerator instruction sent by the control device.
72. The method of claim 41, wherein, the method further comprises: when the thruster executes position keeping control, if the thruster receives a moving instruction sent by a control device configured to control the thruster to move the water area carrier, after the thruster executes the moving instruction, and when the water area carrier satisfies a state maintaining condition, the position keeping control is continued.
73. The method of claim 72, wherein, the state maintaining condition comprises that a deviation value of a position of the water area carrier after movement from the target position is less than a first deviation threshold.
74. The method of claim 73, wherein, the continued execution of the position keeping control comprises: when the deviation value is between a second deviation threshold and the first deviation threshold, the second deviation threshold being less than the first deviation threshold, the position of the water area carrier after movement is updated to the target position, and the position keeping control is continued; when the deviation value is less than the second deviation threshold, the target position is kept unchanged, and the position keeping control is continued.
75. The method of claim 73, wherein, The position keeping control is stopped when the deviation value reaches the first deviation threshold.
76. The method of claim 41, wherein, The method further comprises: detecting whether there is another thruster in working state on the water area carrier; if not, performing the step of calculating the target thrust required by the thruster.
77. A computer readable storage medium, characterized in that, A computer readable storage medium having stored thereon computer instructions, which when executed by a processor, implement the method of claim 1 to 76 for keeping the position of a water area carrier based on a single thruster.
78. A propeller characterized by The thruster comprises: a propulsion device; and a processor electrically connected with the propulsion device, the processor being configured to execute the method of claim 1 to 76 for keeping the position of a water area carrier based on a single thruster.
79. An aquatic movable apparatus, comprising: The water area movable device comprises: a water area carrier; and the thruster of claim 78, which is arranged on the water area carrier.
Citation Information
Patent Citations
Ship maneuvering control method and ship maneuvering control system
JP2017088111A
Apparatus for maintaining a boat in a fixed position
US5386368A