Method, device, medium and product for estimating a speed of a ship based on kalman filtering

CN118011448BActive Publication Date: 2026-09-22XIAMEN XINNUO TECH
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202410154098.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-02-02
Publication Date
2026-09-22
Estimated Expiration
2044-02-02

AI Technical Summary

Technical Problem

然而,目前,这些导航系统在低速或HDOP值较高的情况下可能存在准确度与波动噪声较大的问题,使得在低速时速度变化的平缓性不佳

Benefits of technology

[0037]本发明实施例的技术方案,基于卡尔曼滤波,将通过位置差分计算得到的船只位置差分速度与通过多普频移计算得到的船只多普勒频移速度进行了融合,在基于卡尔曼滤波的融合过程中,通过基于船只重量和船只当前的多普勒频移速度动态调整加速度的过程噪声,能更精确地模拟在低速状态下的速度变化特性,特别是在复杂的海洋环境中提高速度输出尤其是船只低速航行时速度输出的稳定性;通过根据HDOP值调整观测噪声,提高了对GNSS定位精度变化的适应性,特别是在HDOP值较高的情况下,能更好地维持速度估计的稳定性。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118011448B_ABST
    Figure CN118011448B_ABST
Patent Text Reader

Abstract

The application provides a method, device, medium and product for estimating the speed of a ship based on Kalman filtering, which comprises the following steps: S1, receiving GNSS data of the ship in real time, and extracting the current time, position, speed and HDOP information of the ship from the GNSS data; the extracted current speed of the ship is a Doppler shift speed v dopp of the ship calculated by using Doppler shift; S2, calculating a position difference speed v diff of the ship, and updating a Kalman filtering model established and initialized in advance according to v diff , the time, position, speed and HDOP information; S3, extracting the updated Doppler shift speed from the updated state vector, and outputting the updated Doppler shift speed as the current estimated speed of the ship. By using the technical scheme, the speed change characteristics in the low-speed state can be simulated more accurately, and the stability of the speed output, especially the speed output when the ship sails at low speed, can be improved in the complex marine environment.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of marine navigation, and in particular to methods, devices, media, and products for estimating ship speed based on Kalman filtering. Background Technology

[0002] Traditional maritime navigation systems rely heavily on Global Navigation Satellite Systems (GNSS), such as the Global Positioning System (GPS), for positioning to obtain vessel position and speed information. These systems typically use the NMEA 0183 standard to transmit data, including Global Positioning System Fix Data (GGA) and Recommended Minimum Specific GPS / Transit Data (RMC) formats, to provide positioning, speed, and horizontal dilution of precision (HDOP) values. However, currently, these navigation systems may suffer from accuracy and high fluctuation noise at low speeds or with high HDOP values, resulting in poor smoothness of speed changes at low speeds. Summary of the Invention

[0003] Embodiments of the present invention provide a method, apparatus, medium, and product for estimating ship speed based on Kalman filtering to ensure the smoothness of speed estimation when the ship is sailing at low speeds.

[0004] To achieve the above objectives, on the one hand, a method for estimating ship speed based on Kalman filtering is provided, including:

[0005] S1, receive GNSS data from the ship in real time, and extract the ship's current time, position, speed, and HDOP information from the GNSS data. The extracted current speed of the ship is the ship's Doppler frequency shift velocity v calculated using Doppler frequency shift. dopp ;

[0006] S2, calculate the ship's position difference velocity v using position difference calculation. diff And based on the calculated ship position difference velocity v diff The extracted time, position, speed, and HDOP information of the vessel are used to update the pre-established and initialized Kalman filter model.

[0007] The Kalman filter model is pre-established and initialized through the following steps:

[0008] Construct the state vector x = [v diff ,v dopp ,a] T And initialize it, where a is the ship's acceleration;

[0009] Construct the state transition matrix A;

[0010] The process noise covariance Q is constructed based on the ship's weight m and its current speed v, where:

[0011]

[0012] in, It is the noise variance of the ship's position differential velocity. It is the noise variance of the ship's Doppler shift velocity. μ and q are pre-defined process noise covariance coefficients. a Let Variance be the noise variance of the ship's acceleration, where:

[0013]

[0014] f(m,v dopp () is based on the ship's weight m and the ship's Doppler shift velocity v dopp The function is α, β, γ, which are the pre-defined noise variance coefficients of the ship's acceleration.

[0015] Construct the observation noise covariance R, where:

[0016]

[0017] in, The observation noise variance of the differential velocity of the vessel's position is given. The observed noise variance of the Doppler shift velocity of the vessel;

[0018] in,

[0019] Where g(HDOP) is a function of HDOP, and δ and ∈ are pre-defined observation noise variance coefficients;

[0020] Initialize the error covariance P;

[0021] S3, extract the updated Doppler frequency shift velocity from the updated state vector, and output the updated Doppler frequency shift velocity as the currently estimated ship speed.

[0022] Preferably, the above time is UTC time.

[0023] Preferably, in the method, the GNSS data includes: NMEA data; extracting the ship's current time, position, speed, and HDOP information from the GNSS data includes:

[0024] Extract the ship's current time, position, speed, and HDOP information from the GGA and / or RMC syntax of the NMEA data.

[0025] Preferably, in the method, the state transition matrix A is constructed based on a uniform acceleration model, wherein:

[0026]

[0027] Δt1 is the time interval for state updates.

[0028] Preferably, in the method, initializing the error covariance P includes: initializing P as a diagonal matrix.

[0029] Preferably, in the method, the ship's position difference velocity v is calculated. diff include:

[0030] When the actual position update time interval Δt of the vessel is greater than the preset position difference time interval coefficient Δt max When using the ship's current position and the position Δt before the ship's current position, max The position of time and Δt max The ship's position difference velocity v is calculated as a time interval. diff .

[0031] On the other hand, an electronic device is provided, including a memory and a processor, the memory storing at least one program that is executed by the processor to implement any of the methods described above.

[0032] On the other hand, a water transport vehicle is provided, including electronic equipment as described above.

[0033] Preferably, the aforementioned water transport vehicle is a ship.

[0034] In another aspect, a computer-readable storage medium is provided, characterized in that the storage medium stores at least one program, which is executed by a processor to implement any of the methods described above.

[0035] In another aspect, a computer program product is provided, comprising a computer program, characterized in that, when the computer program is executed by a processor, it implements the steps of any of the methods described above.

[0036] The above technical solution has the following technical effects:

[0037] The technical solution of this invention, based on Kalman filtering, fuses the ship's position differential velocity calculated by position differential with the ship's Doppler frequency shift velocity calculated by Doppler frequency shift. In the fusion process based on Kalman filtering, the process noise of the acceleration is dynamically adjusted based on the ship's weight and the ship's current Doppler frequency shift velocity, which can more accurately simulate the velocity change characteristics at low speeds. In particular, it improves the stability of velocity output, especially when the ship is sailing at low speeds, in complex marine environments. By adjusting the observation noise according to the HDOP value, the adaptability to changes in GNSS positioning accuracy is improved, especially when the HDOP value is high, it can better maintain the stability of velocity estimation.

[0038] The technical solution of this invention, when outputting the ship's speed, considers both the speed directly measured by GNSS and the advantages of a Kalman filter adjusted by dynamic environment and ship characteristics, ensuring the stability of speed estimation during low-speed navigation and improving navigation performance in dynamic marine environments.

[0039] Furthermore, the technical solution of this embodiment of the invention combines the actual time interval between two points and the preset position difference time interval coefficient to calculate the position difference velocity. When the actual time interval is greater than the preset position difference time interval coefficient, the position difference time interval coefficient is used as the time interval to calculate the position difference velocity, which helps to further improve the stability of velocity estimation. Attached Figure Description

[0040] Figure 1 This is a flowchart illustrating a method for estimating ship speed based on Kalman filtering according to an embodiment of the present invention.

[0041] Figure 2 This is a schematic diagram of the structure of an electronic device according to an embodiment of the present invention. Detailed Implementation

[0042] To further illustrate the various embodiments, the present invention provides accompanying drawings. These drawings are part of the disclosure of the present invention, primarily used to illustrate the embodiments and to explain the operating principles of the embodiments in conjunction with the relevant descriptions in the specification. With reference to these drawings, those skilled in the art should be able to understand other possible implementations and the advantages of the present invention. Components in the drawings are not drawn to scale, and similar component symbols are generally used to represent similar components.

[0043] The present invention will now be further described in conjunction with the accompanying drawings and specific embodiments.

[0044] Example 1:

[0045] Figure 1This is a flowchart illustrating a method for estimating ship speed based on Kalman filtering according to an embodiment of the present invention. Figure 1 The method in this embodiment includes the following steps:

[0046] S1 receives GNSS data from the ship in real time and extracts the ship's current time, position, speed, and HDOP information from the GNSS data. The extracted current speed of the ship is the ship's Doppler frequency shift velocity v calculated using Doppler frequency shift. dopp Preferably, the above time is UTC time;

[0047] S2, calculate the ship's position difference velocity v using position difference calculation. diff And based on the calculated ship position difference velocity v diff The extracted ship's current time, position, speed, and HDOP information are used to update the pre-established and initialized Kalman filter model.

[0048] The Kalman filter model is pre-established and initialized through the following steps:

[0049] Construct the state vector x = [v diff ,v dopp ,a] T And initialize, where a is the ship's acceleration; preferably, v diff For the current v dopp The value;

[0050] Construct the state transition matrix A;

[0051] The process noise covariance Q is constructed based on the ship's weight m and its current speed v, where:

[0052]

[0053] in, It is the noise variance of the ship's position differential velocity. It is the noise variance of the ship's Doppler shift velocity. μ and q are pre-defined process noise covariance coefficients. a Let Variance be the noise variance of the ship's acceleration, where:

[0054]

[0055] f(m,v dopp () is based on the ship's weight m and the ship's Doppler shift velocity v dopp The function is α, β, γ, which are the pre-defined noise variance coefficients of the ship's acceleration.

[0056] Construct the observation noise covariance R, where:

[0057]

[0058] in, The observation noise variance of the ship's position-differential velocity. The variance of the observed noise for the ship's Doppler shift velocity;

[0059] in,

[0060] Where g(HDOP) is a function of HDOP, and δ and ∈ are pre-defined observation noise variance coefficients;

[0061] Initialize the error covariance P;

[0062] S3 extracts the updated Doppler shift velocity from the updated state vector and outputs the updated Doppler shift velocity as the currently estimated ship velocity.

[0063] Example 2:

[0064] The method for estimating ship speed based on Kalman filtering in this embodiment of the invention estimates ship speed by fusing position difference velocity and Doppler frequency shift velocity using Kalman filtering. The steps are described in detail below.

[0065] Step 1: Use a GNSS receiving module, such as a GPS receiver, to receive GNSS data in real time. Obtain NMEA data, such as NMEA 0183 standard data, from the received GNSS data, and parse the NMEA data to extract the ship's UTC time, position, speed, and HDOP information. In this embodiment, the ship's current speed extracted from the GNSS data is the Doppler frequency shift speed calculated using the Doppler frequency shift method.

[0066] NMEA 0183 data contains nautical and positioning information. NMEA 0183 data is typically transmitted as a serial data stream in text format, containing various sentence structures, each representing a different type of information. The NMEA data is then parsed, including parsing the GGA (Global Positioning System Fixed Information) sentence structure and the RMC (Recommended Minimal Positioning Information) sentence structure, to obtain the corresponding nautical and positioning information.

[0067] The GGA format includes: precise ship position data, positioning quality index, and horizontal accuracy factor HDOP; the RMC format includes: UTC, i.e., Coordinated Universal Time, latitude and longitude position, and ground speed.

[0068] The following key information was extracted from the parsed NMEA data:

[0069] UTC time: Obtained from the RMC format and used to determine the specific time point of the observation data; Location information: Latitude and longitude coordinates, extracted from the GGA or RMC format; Velocity information: Ground velocity, usually obtained from the RMC format; HDOP value: Obtained from the GGA format and used to assess the accuracy of the current location information.

[0070] In one specific implementation of this invention, after extracting the required data from NMEA, the extracted data is preprocessed to facilitate subsequent data processing and analysis. This data preprocessing includes: unit conversion, such as converting the unit of velocity from knots to meters per second; and coordinate format conversion, converting the original position coordinate format into the coordinate format required for subsequent processing.

[0071] Step 2: Establish the Kalman filter model and initialize it;

[0072] 1. Construct a state vector x, where state vector x = [v diff ,v dopp ,a] T , where v diff It is the speed of the ship calculated by position difference, v dopp The velocity is the ship's speed calculated using Doppler frequency shift, and 'a' is the ship's acceleration.

[0073] Then, initialize the state vector x. Since the position difference has not yet been calculated during the initialization phase, let v... diff =v dopp Soon to be v diff The value is initialized to the current v. dopp .

[0074] 2. Construct the state transition matrix A based on the uniform acceleration model, where A is represented as:

[0075]

[0076] Where Δt1 is the time interval for state updates.

[0077] 3. In the initialization phase of the Kalman filter model, based on the ship's weight m and its current speed v, i.e., v dopp Construction process noise covariance Q:

[0078] 1) Use the ship's weight m and its current speed v, i.e., v dopp To calculate the noise variance q of acceleration a ,in:

[0079]

[0080] Where, f(m,v) doppThe acceleration is a function of the ship's weight *m* and velocity *v*, where α, β, and γ are pre-defined coefficients reflecting the relationship between the ship's weight and velocity. These coefficients are used to dynamically adjust the process noise of acceleration to reflect the possibility of changes in ship acceleration under different weight and velocity conditions. In one specific implementation, the values ​​of α, β, and γ are determined based on the hardware used, analysis of historical data, physical models, or empirical estimations.

[0081] The ship's weight is its actual weight. Ship weight affects its ability to accelerate and decelerate, and this information is crucial for understanding the ship's dynamic characteristics. In one specific implementation, the ship's weight is obtained from its technical specifications or through user input.

[0082] 2) Determine the process noise covariance Q, where:

[0083]

[0084] in, and These are the noise variance of the position differential velocity and the noise variance of the Doppler frequency shift velocity, respectively. This is the process noise variance coefficient for velocity, and its value is preset. In actual implementation, this coefficient is set based on the hardware used, experience, experiments, and / or the resulting effects. This velocity process noise variance coefficient affects the Kalman filter's sensitivity to velocity changes. In dynamic marine environments, appropriately adjusting this coefficient can help the filter track the actual velocity more accurately, especially when facing rapidly changing ocean currents and wind speeds.

[0085] Furthermore, for the velocity calculated by Doppler frequency shift, a specific process noise variance coefficient μ is pre-set; this coefficient takes into account the inherent uncertainty and possible errors of the Doppler frequency shift method, making the Kalman filter more accurate when combined with the velocity information provided by GNSS.

[0086] 4. Construct the observation noise covariance R:

[0087]

[0088] in, The observation noise variance of the position differential velocity. Let R be the observation noise variance of the Doppler frequency shift velocity. For R, the influence of the 2D plane coordinate precision factor (HDOP) is mainly considered. This is a function for HDOP that dynamically adjusts the HDOP value. Specifically:

[0089]

[0090] Where g(HDOP) represents a function of HDOP, indicating that the larger the HDOP value, the lower the positioning accuracy, and therefore the observation noise variance should be increased; where δ,∈ are pre-set coefficients.

[0091] 5. Initialize the error covariance P;

[0092] In one specific implementation, P is initialized as a diagonal matrix to reflect the uncertainty of the initial state estimation.

[0093] Step 3: Calculate the position differential velocity;

[0094] The position difference velocity is calculated based on the distance between two points on the Earth's surface. For given latitude and longitude coordinates (lat1, lon1) and (lat2, lon2), the position difference velocity v can be calculated using the following formula. diff :

[0095]

[0096] Where d(lat1,lon1,lat2,lon2) is the great circle distance between the two points, simplified to d, and calculated using the Haversian formula:

[0097]

[0098] Where d is the distance between the two points, r is the radius of the Earth, Δlat = lat2 - lat1 is the difference in latitude between the two points, Δlon = lon2 - lon1 is the difference in longitude between the two points, and Δt is the time interval between obtaining the positions of the two points.

[0099] In one specific implementation, the position difference velocity is calculated by combining the actual time interval between the two points and a preset position difference time interval coefficient, specifically including:

[0100] 1) Obtain the actual time interval between two points, i.e., the update time interval Δt between the current point and the previous point. This time interval determines how long the position offset is used to calculate the position difference velocity, and compares the time interval Δt with the preset position difference time interval coefficient Δt. max The size is used to determine;

[0101] Before each Kalman filter update, it is first determined whether the time elapsed since the last position calculation exceeds the position difference time interval coefficient Δt. max ;

[0102] 2) Check if the time interval Δt exceeds the current position.max To calculate the position differential velocity;

[0103] in:

[0104] If Δt is less than or equal to Δt max Then Δt is used to calculate the position difference velocity;

[0105] If Δt is greater than Δt max Then use Δt max The position difference velocity is calculated as a time interval.

[0106] The magnitude of the position difference time interval coefficient affects the stability and real-time performance of velocity calculation. A larger coefficient improves the stability of velocity estimation but sacrifices some real-time performance; a smaller coefficient improves real-time performance but reduces the stability of velocity estimation. In practical implementation, this time interval coefficient is pre-set based on the ship's operating environment and actual performance requirements, which helps to balance the stability and real-time performance of velocity estimation in a dynamic marine environment.

[0107] For example:

[0108] Assuming the current position differential time interval coefficient Δt is set max The interval is 10 seconds. Before the first update after initializing the Kalman filter, such as the first position data received when the device is powered on, taking the example of receiving one position data every 1 second, the position time difference (i.e., the time interval) between the current position and the initial position is 1 second, which is less than 10 seconds. Therefore, the differential velocity is calculated using the position at this moment and the position at the initial position.

[0109] In the fourth update, taking the reception of one position data per second as an example, that is, the fourth second after the GNSS is powered on, the time interval between the position at this time and the initial position is 4 seconds, which is less than 10 seconds. The differential velocity calculation is still performed using the position at this moment and the initial position.

[0110] When performing the fourteenth update, taking the reception of one location data per second as an example, the time interval between receiving the location and the initial location is 14 seconds, which exceeds the set 10-second interval coefficient. Therefore, the location at this moment, the location 10 seconds ago, and the 10-second interval coefficient should be used as the time interval to calculate the position difference velocity.

[0111] By employing this method, the Kalman filter can flexibly adapt to different update frequencies when calculating position differential velocity, ensuring that the velocity estimation is both stable and real-time. Implementing this step helps ensure the accuracy and reliability of the entire navigation system in dynamic maritime environments.

[0112] Step 4: Kalman Filter Update; The Kalman filter update step follows the standard Kalman filter process and is described by the following mathematical formula:

[0113] 1) Observation Model H: The observation model maps the state vector to the observation space. Since the observation vector contains only two velocities, H can be expressed as:

[0114]

[0115] Here, H is used to extract the position difference velocity and Doppler shift velocity from the state vector.

[0116] 2) Dynamically adjust the process noise covariance Q: Consistent with the steps in step two, the process noise covariance Q is adjusted based on the velocity calculated from the Doppler frequency shift in the state equation and the weight of the vessel. Adjusting Q reflects the range of acceleration variations, particularly at low speeds, which is especially helpful for stability estimation at low speeds.

[0117] 3) Dynamically adjust the observation noise covariance R: Consistent with the steps in step two, the adjustment of the observation noise covariance R is based on the HDOP value. A higher HDOP indicates lower positioning accuracy, therefore the noise variance related to the position differential velocity should be increased.

[0118] 4) Prediction steps: First, predict the state vector and error covariance based on the state transition matrix A and the process noise covariance Q:

[0119]

[0120] Where, x prev and P prev These are the state vector and error covariance of the previous time step, respectively.

[0121] 5) Update steps, including:

[0122] Calculate the Kalman gain K:

[0123] K = P prev H T HP prev H T +R) -1 ,

[0124] Update the state vector and error covariance using the new observation data z, where z includes the position difference velocity and the Doppler shift velocity:

[0125]

[0126] x updated The updated state vector; x prev P is the state vector from the previous time step;updated The updated error covariance; P prev This represents the error covariance at the previous time step.

[0127] Through the steps described above, the Kalman filter can effectively combine new observation data with previous state estimates to provide a more accurate estimate of ship speed. This process accounts for the uncertainty of the observation data through the observation noise covariance R and the uncertainty of the model through the process noise covariance Q, thereby optimizing ship speed tracking in dynamic ocean environments.

[0128] Step 5: Extract the velocity calculated by the Doppler frequency shift from the state vector after each update of the Kalman filter as the final output velocity of the ship.

[0129] This step ensures that the provided speed information is as accurate and reliable as possible, especially for ship navigation in dynamic marine environments.

[0130] 1) The state extraction after the Kalman filter update includes:

[0131] After each Kalman filter update step, the Doppler frequency shift is extracted from the updated state vector to calculate the velocity. The state vector is represented as x = [v idff ,v dopp [,a], where v dpp It is the data updated after Kalman filtering, which is calculated using Doppler frequency shift.

[0132] 2) Extracting the final output velocity: Extracting the velocity v from the Doppler frequency shift calculated from the state vector x. dopp This is the final velocity output. This velocity value is considered the most accurate velocity estimate because it combines GNSS data with velocity information optimized through a Kalman filter.

[0133] In the method of this invention embodiment, the coefficients used in the above Kalman filtering are preset or configured according to actual conditions, such as the hardware used by the system.

[0134] The method of this invention provides a comprehensive and optimized speed estimate as output based on Kalman filtering. This output speed takes into account both direct GNSS measurements and the dynamic environment and ship characteristics, thereby improving the stability of the entire navigation system and avoiding abrupt changes in satellite navigation speed, especially when the ship is at low speed.

[0135] Example 3:

[0136] The present invention also provides an electronic device, such as... Figure 2As shown, the device includes a processor 201, a memory 202, a bus 203, and a computer program stored in the memory 202 and executable on the processor 201. The processor 201 includes one or more processing cores. The memory 202 is connected to the processor 201 via the bus 203. The memory 202 is used to store program instructions. When the processor executes the computer program, it implements the steps in the above-described method embodiment of Embodiment 1 of the present invention.

[0137] Furthermore, as an executable solution, the electronic device can be a computer unit, which can be a desktop computer, laptop, handheld computer, cloud server, or other computing device. The computer unit may include, but is not limited to, a processor and memory. Those skilled in the art will understand that the above-described structure of the computer unit is merely an example and does not constitute a limitation on the computer unit. It may include more or fewer components, or combine certain components, or use different components. For example, the computer unit may also include input / output devices, network access devices, buses, etc., and this embodiment of the invention does not limit this.

[0138] Furthermore, as an executable solution, the processor can be a Central Processing Unit (CPU), or other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor can be a microprocessor or any conventional processor, etc. The processor is the control center of the computer unit, connecting various parts of the entire computer unit via various interfaces and lines.

[0139] The memory can be used to store the computer programs and / or modules. The processor implements various functions of the computer unit by running or executing the computer programs and / or modules stored in the memory and by calling data stored in the memory. The memory may mainly include a program storage area and a data storage area. The program storage area may store the operating system and at least one application program required for a function; the data storage area may store data created based on the use of the mobile phone, etc. In addition, the memory may include high-speed random access memory and may also include non-volatile memory, such as hard disk, RAM, plug-in hard disk, smart media card (SMC), secure digital card (SD), flash card, at least one disk storage device, flash memory device, or other volatile solid-state storage device.

[0140] Example 4:

[0141] The present invention also provides a water transport vehicle, including the electronic equipment described above. Preferably, the water transport vehicle is a boat.

[0142] Example 5:

[0143] The present invention also provides a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps of the method described in the embodiments of the present invention.

[0144] If the modules / units integrated in the computer unit are implemented as software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, all or part of the processes in the methods of the above embodiments can also be implemented by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program includes computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. The computer-readable medium can include: any entity or device capable of carrying the computer program code, recording media, USB flash drives, portable hard drives, magnetic disks, optical disks, computer memory, read-only memory (ROM), random access memory (RAM), and software distribution media, etc. It should be noted that the content contained in the computer-readable medium can be appropriately increased or decreased according to the requirements of legislation and patent practice in the jurisdiction.

[0145] Example 6:

[0146] The present invention also provides a computer program product, including a computer program that, when executed by a processor, implements the steps described above.

[0147] Although the invention has been specifically shown and described in conjunction with preferred embodiments, those skilled in the art will understand that various changes in form and detail may be made to the invention without departing from the spirit and scope of the invention as defined in the appended claims, all of which shall be within the scope of protection of the invention.

Claims

1. A method for estimating ship speed based on Kalman filtering, characterized in that, include: S1, receive GNSS data from the ship in real time, and extract the ship's current time, position, speed, and HDOP information from the GNSS data. The extracted current speed of the ship is the ship's Doppler frequency shift velocity v calculated using Doppler frequency shift. dopp ; S2, calculate the ship's position difference velocity v using position difference calculation. diff And based on the calculated ship position difference velocity v diff The extracted time, position, speed, and HDOP information of the vessel are used to update the pre-established and initialized Kalman filter model. The Kalman filter model is pre-established and initialized through the following steps: Construct the state vector x = [v diff ,v dopp ,a] T And initialize it, where a is the ship's acceleration; Construct the state transition matrix A; The process noise covariance Q is constructed based on the ship's weight m and the extracted current speed of the ship, where: in, It is the noise variance of the ship's position differential velocity. It is the noise variance of the ship's Doppler shift velocity. μ and q are pre-defined process noise covariance coefficients. a Let Variance be the noise variance of the ship's acceleration, where: f(m,v dopp () is based on the ship's weight m and the ship's Doppler shift velocity v dopp The function is α, β, γ, which are the pre-defined noise variance coefficients of the ship's acceleration. Construct the observation noise covariance R, where: in, The observation noise variance of the differential velocity of the vessel's position is given. The observed noise variance of the Doppler shift velocity of the vessel; in, Where g(HDOP) is a function of HDOP, and δ and ∈ are pre-defined observation noise variance coefficients; Initialize the error covariance P; S3, extract the updated Doppler frequency shift velocity from the updated state vector, and output the updated Doppler frequency shift velocity as the currently estimated ship speed.

2. The method according to claim 1, characterized in that, The GNSS data includes: NMEA data; extracting the ship's current time, position, speed, and HDOP information from the GNSS data includes: Extract the ship's current time, position, speed, and HDOP information from the GGA and / or RMC syntax of the NMEA data.

3. The method according to claim 1, characterized in that, The state transition matrix A is constructed based on the uniform acceleration model, where: Δt1 is the time interval for state updates.

4. The method according to claim 1, characterized in that, Initializing the error covariance P includes: initializing P as a diagonal matrix.

5. The method according to claim 1, characterized in that, Calculate the ship's position difference velocity v diff include: When the actual position update time interval Δt of the vessel is greater than the preset position difference time interval coefficient Δt max When using the ship's current position and the position Δt before the ship's current position, max The position of time and Δt max The ship's position difference velocity v is calculated as a time interval. diff .

6. An electronic device, characterized in that, It includes a memory and a processor, the memory storing at least one program, the at least one program being executed by the processor to implement the method as claimed in any one of claims 1 to 5.

7. A water transport vehicle, characterized in that, Including the electronic device as described in claim 6.

8. The water transport vehicle according to claim 7, characterized in that, The water transport vehicle is a ship.

9. A computer-readable storage medium, characterized in that, The storage medium stores at least one program, which is executed by a processor to implement the method as described in any one of claims 1 to 5.

10. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method as described in any one of claims 1 to 5.

Citation Information

Patent Citations

  • Moon probe angle measurement / time difference distance / speed integrated navigation method

    CN111551172A

  • Unmanned ship positioning method based on Kalman filtering

    CN117268400A