Speed measuring apparatus, speed measuring method, and speed measuring program

The speed measuring apparatus corrects DR vectors using geometric calculations based on angular and GNSS vectors during turns, addressing accuracy issues in conventional GNSS-DR positioning systems, ensuring precise speed measurement.

WO2025169822A1PCT designated stage Publication Date: 2025-08-14FURUNO ELECTRIC CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
PCT/JP2025/002914
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-02-08
Filing Date
2025-01-30
Publication Date
2025-08-14

AI Technical Summary

Technical Problem

Conventional speed measurement techniques using GNSS and DR positioning face accuracy degradation when a moving body turns due to differences between the positions determined by these two methods, leading to norm and azimuth discrepancies in velocity vectors.

Method used

A speed measuring apparatus and method that calculates a correction value for the DR vector based on the angular velocity, GNSS vector, and DR vector during turning, using geometric relationships to align the vectors and reduce positioning errors.

Benefits of technology

The apparatus and method enhance the accuracy of speed measurement by correcting DR vectors, ensuring precise positioning even during turns, thereby maintaining high measurement accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure JP2025002914_14082025_PF_FP_ABST
    Figure JP2025002914_14082025_PF_FP_ABST
Patent Text Reader

Abstract

A speed measuring apparatus (10) includes a first acquisition unit (20), a second acquisition unit (30), and a calculation unit (40). The first acquisition unit (20) acquires a GNSS vector (Vant), which is a velocity vector of a moving body (100), by a GNSS positioning (Pgnss). The second acquisition unit (30) acquires a DR vector (Vodo), which is a velocity vector of the moving body, by a dead reckoning positioning. The calculation unit (40) calculates a correction value for correcting the DR vector (Vodo), based on the angular velocity (ω) of the moving body (100), the GNSS vector (Vant), and the DR vector (Vodo), when the moving body (100) is turning.
Need to check novelty before this filing date? Find Prior Art

Description

SPEED MEASURING APPARATUS, SPEED MEASURING METHOD, AND SPEED MEASURING PROGRAM

[0001] This disclosure relates to a speed measuring apparatus, a speed measuring method, and a speed measuring program.Background

[0002] Conventionally, a technique has been known for measuring a speed of a moving body using a GNSS (Global Navigation Satellite System) positioning and a DR (Dead Reckoning) positioning, which performs positioning without depending on the GNSS signals by using a sensor such as a gyro sensor or an acceleration sensor (for example, see Patent Document 1). In this kind of technique, the speed of the moving body is measured based on two velocity vectors generated from the GNSS positioning and the dead reckoning positioning (hereinafter, DR positioning), respectively.

[0003] However, in the prior art, when a moving body turns, if there is a difference between the position determined by the GNSS positioning and the position determined by the DR positioning, there is a risk that a norm difference or an azimuth difference occurs between the two velocity vectors, and the accuracy of speed measurement is degraded.

[0004] Therefore, the present disclosure proposes a speed measuring apparatus, a speed measuring method, and a speed measuring program which can suppress the degradation of the accuracy of speed measurement.

[0005] In order to solve the above problem, a speed measuring apparatus according to the present disclosure includes a first acquisition unit, a second acquisition unit, and a calculation unit. The first acquisition unit acquires a GNSS vector, which is a velocity vector of the moving body, by a GNSS positioning. The second acquisition unit acquires a DR vector, which is a velocity vector of the moving body, by a dead reckoning positioning. The calculation unit calculates a correction value for correcting the DR vector based on an angular velocity of the moving body, the GNSS vector, and the DR vector, when the moving body is turning. Thus, the speed measuring apparatus can suppress deterioration in the accuracy of measuring the speed.

[0006] The calculation unit calculates the correction value when a difference between a first turning radius, calculated based on the angular velocity and the GNSS vector, and a second turning radius, calculated based on the angular velocity and the DR vector, is less than a threshold value. Thus, the speed measuring apparatus can suppress deterioration in the accuracy of speed measurement.

[0007] Further, the calculation unit according to the present disclosure calculates a correction value based on an angle formed by an origin of the GNSS vector and an origin of the DR vector, and the turning center. Thus, the speed measuring apparatus can calculate the correction value with high accuracy.

[0008] Further, the calculation unit according to the present disclosure calculates a base and a base angle of an isosceles triangle formed by the origin of the GNSS vector and the origin of the DR vector and the turning center and calculates a positional difference, which is a correction value, in an overall length direction of the moving body of the GNSS vector and the DR vector, based on the base and the base angle. Thus, the speed measuring apparatus can calculate the correction value with high accuracy.

[0009] Further, the calculation unit according to the present disclosure determines a positional relationship of the GNSS vector and the DR vector, in the overall length direction, based on a magnitude relationship of the azimuth of the GNSS vector and the DR vector, and the turning direction based on the angular velocity. Thus, the speed measurement apparatus can suppress the deterioration of the speed measurement accuracy.

[0010] Further, the calculation unit according to the present disclosure calculates a GNSS turning radius of the GNSS vector, which is a hypotenuse of a right triangle, based on the positional difference between the GNSS vector and the DR vector, in the overall length direction of the moving body, which is a base of the right triangle, and the second turning radius, which is a height of the right triangle. The calculation unit calculates a positional difference, which is a correction value, in the width direction of the GNSS vector and the DR vector of the moving body, based on the GNSS turning radius and the first turning radius. Thus, the speed measuring apparatus can calculate the correction value with high accuracy.

[0011] The calculation unit according to the present disclosure determines the GNSS vector and the positional relationship of the GNSS vector in the width direction based on the magnitude relationship between the GNSS turning radius and the first turning radius and the turning direction determined based on the angular velocity. Thus, the speed measuring apparatus can suppress a decrease in the accuracy of measuring the speed.

[0012] The speed measuring apparatus according to the present disclosure further comprises a determination unit for determining a positioning position of the moving body based on the DR vector corrected by the correction value and the GNSS vector. Thus, the speed measuring apparatus can determine the positioning position with high accuracy.

[0013] The speed measuring method according to the present disclosure is a speed measuring method executed by a computer and includes a first acquisition step, a second acquisition step, and a calculation step. The first acquisition step acquires a GNSS vector, which is a velocity vector of the moving body, by a GNSS positioning. The second acquisition step acquires a DR vector, which is a velocity vector of the moving body, by a dead reckoning positioning. The calculation step calculates a correction value for correcting the DR vector based on an angular velocity of the moving body, the GNSS vector, and the DR vector when the moving body is turning. Thus, the speed measurement method can suppress deterioration in the speed measurement accuracy.

[0014] The speed measurement program according to the present disclosure also causes a computer to execute a first acquisition procedure, a second acquisition procedure, and a calculation procedure. The first acquisition procedure acquires a GNSS vector, which is a velocity vector of the moving body, by the GNSS positioning. The second acquisition procedure acquires a DR vector, which is a velocity vector of the moving body, by dead reckoning positioning. The calculation procedure calculates a correction value for correcting the DR vector based on an angular velocity of the moving body, the GNSS vector, and the DR vector when the moving body is turning. Thus, the speed measurement program can suppress deterioration in the accuracy of measuring the speed.

[0015] Fig. 1 is a functional block diagram showing a configuration of a speed measuring apparatus according to an embodiment. Fig. 2 is an explanatory diagram for explaining a method of calculating a correction value by a calculation unit. Fig. 3 is a table for determining a sign of a positional difference Δx. Fig. 4 is a table for determining a sign of a positional difference Δy; Fig. 5 is a table for determining the sign of the correction amount of an azimuth. Fig. 6 is a flowchart showing a procedure of the correction value calculation processing executed by the speed measuring apparatus according to the embodiment. Fig. 7 is a flowchart showing a procedure of a DR vector correction processing executed by the speed measuring apparatus according to the embodiment.

[0016] Hereinafter, illustrative embodiments of the present invention will be described with reference to the drawings. In the present specification and the figures, elements similar to those described in previous figures may be denoted by the same reference numerals, and detailed descriptions may be omitted accordingly.

[0017] Fig. 1 is a functional block diagram showing a configuration of a speed measuring apparatus according to an embodiment.

[0018] As shown in Fig. 1, the speed measuring apparatus 10 includes a first acquisition unit 20, a second acquisition unit 30, a calculation unit 40, and a determination unit 50.

[0019] The speed measuring apparatus 10 includes, for example, a computer having a CPU (Central Processing Unit), a ROM (Read Only Memory), a RAM (Random Access Memory), a hard disk drive, an input / output port, and various circuits.

[0020] The CPU of the computer, for example, reads and executes a received program stored in the ROM to function as the first acquisition unit 20, the second acquisition unit 30, the calculation unit 40, and the determination unit 50.

[0021] At least some or all of the first acquisition unit 20, the second acquisition unit 30, the calculation unit 40, and the determination unit 50 may be composed of a hardware such as an ASIC (Application Specific Integrated Circuit) or an FPGA (Field Programmable Gate Array).

[0022] The speed measuring apparatus 10 includes a storage unit (not shown). The storage unit composed of a storage device such as a semiconductor device memory or a hard disk drive. The storage unit stores various programs and various information necessary for the processing of the speed measuring apparatus 10.

[0023] The first acquisition unit 20 is connected to an antenna 200. The antenna 200 is installed on a moving body (e.g., vehicles). The antenna 200 receives the GNSS signals from various GNSS positioning satellites such as GPS, GLONASS, Galileo, IRNSS, QZSS, and Beidou, and outputs these signals to the first acquisition unit 20.

[0024] The first acquisition unit 20 is a processing unit which performs a positioning (hereinafter, a GNSS positioning) based on the GNSS signals received by the antenna 200. The first acquisition unit 20 positions the antenna position of the moving body (GNSS position Pgnss shown in Fig. 2) by the GNSS positioning, and acquires a GNSS vector which is a velocity vector at the antenna position of the moving body. More specifically, the first acquisition unit 20 measures the velocity and the angular velocity of the moving body by using the amount of change in the integrated carrier phase value obtained from the supplemental and tracking processing of the GNSS signal, the change in the code pseudorange of the GNSS signal, and the change in the positioning position. The velocity and the angular velocity are measured (calculated) by known methods.

[0025] Then, the first acquisition unit 20 acquires (generates) the GNSS vector which is a velocity vector having a measured velocity as a norm and a direction of the angular velocity as an azimuth, and outputs the GNSS vector to the calculation unit 40 and the determination unit 50.

[0026] The second acquisition unit 30 is a processing unit which performs a dead reckoning positioning (hereinafter, a DR positioning) based on a sensor provided on the moving body. The sensor includes, for example, a velocity sensor, an acceleration sensor, a gyro sensor, and the like. The second acquisition unit 30 acquires a DR vector which is a velocity vector at a reference position (DR position Pdr shown in Fig. 2) of the moving body by the DR positioning. Specifically, the second acquisition unit 30 measures the velocity of the moving body based on the sensor information detected by the velocity sensor or the acceleration sensor, and measures the angular velocity of the moving body based on the sensor information detected by the gyro sensor.

[0027] The second acquisition unit 30 acquires (generates) the DR vector which is the velocity vector having the measured velocity as the norm and the direction of the angular velocity as the azimuth, and outputs the acquired vector to the calculation unit 40 and the determination unit 50.

[0028] The calculation unit 40 calculates a correction value for correcting the DR vector based on the angular velocity of the moving body, the GNSS vector, and the DR vector when the moving body is turning. The method of calculating the correction value by the calculation unit 40 will now be described with the reference to Fig. 2.

[0029] Fig. 2 is an explanatory diagram for explaining the method of calculating the correction value by the calculation unit 40. In Fig. 2, the vehicle 100 during turning is shown in a plan view from above. As shown in Fig. 2, in the present disclosure, the antenna position (GNSS position Pgnss) measured by the GNSS positioning and the reference position (DR position Pdr) measured by the DR positioning are different positions in the vehicle 100. Further, hereinafter, the GNSS position Pgnss may be referred to as an origin of the GNSS vector, and the DR position Pdr may be referred to as an origin of the DR vector.

[0030] In the present disclosure, the calculation unit 40 estimates the positional difference between the GNSS position Pgnss and the DR position Pdr from the difference between the GNSS vector Vantand the DR vector Vodo, and corrects the DR vector Vodoto the velocity vector corresponding to the GNSS position Pgnss, thereby reducing the positioning error during turning. That is, the calculation unit 40 calculates a positional difference Δx in the overall length direction and a positional difference Δy in the width direction between the GNSS position Pgnss and the DR position Pdr as the correction values.

[0031] Specifically, the calculation unit 40 first determines whether or not the moving body is turning based on the angular velocity of the moving body detected by the gyro sensor. If the moving body is turning, the calculation unit 40 calculates the turning radius rodoof the DR position Pdr. Specifically, the calculation unit 40 calculates the turning radius rodoaccording to the following equation (1) using the velocity Vodoindicated by the DR vector Vodoand the angular velocity ω of the moving body detected by the gyro sensor. The turning radius rodocorresponds to the second turning radius.Math 1

[0032]

[0033] Next, the calculation unit 40 calculates the turning radius rantof the GNSS position Pgnss. Specifically, the calculation unit 40 calculates the turning radius rantby the following equation (2) using the velocity indicated by the GNSS vector Vantand the angular velocity ω of the moving body detected by the gyro sensor. The turning radius rantcorresponds to the first turning radius.Math 2

[0034]

[0035] Next, the calculation unit 40 determines whether or not the difference between the two calculated turning radii, rodoand rant, is less than a threshold value (ideally, the difference is zero.). When the difference between the two turning radii, rodoand rant, is less than the threshold value, the calculation unit performs the calculation processing of the correction value, and when the difference is equal to or greater than the threshold value, the calculation unit 40 does not perform the calculation processing of the correction value. This indicates that the error of either the GNSS positioning or the DR positioning is large when the difference between the turning radii is equal to or greater than the threshold value, and if the correction value is calculated in a state where the error is large, the accuracy of the correction value is reduced. Therefore, by calculating the correction value only when the difference between the turning radii is less than the threshold value, the accuracy of the calculated correction value can be increased.

[0036] When the difference between the two turning radii rodoand rantis less than the threshold value, the calculation unit 40 calculates the azimuth difference χ between the GNSS vector Vantand the DR vector Vodo. Specifically, when the GNSS position Pgnss is located in the overall length direction of the vehicle 100 relative to the DR position Pdr, the calculation unit 40 generates an azimuth difference χ between the GNSS vector Vantand the DR vector Vodo. Geometrically, the azimuth difference χ is equal to an angle φ formed by two turning radii rodo, rantat the turning center C. Accordingly, the calculation unit 40 performs the correction value calculation process described later, on the basis that the azimuth difference χ and the angle φ formed are equal. That is, the calculation unit 40 calculates a correction value on the basis of the angle φ formed between the origin of each of the GNSS vector and the DR vector, and the turning center C.

[0037] Next, the calculation unit 40 calculates a positional difference Δx in the overall length direction between the GNSS position Pgnss and the DR position Pdr. Specifically, the calculation unit 40 assumes an angle ψ formed by a line Δd connecting the GNSS position Pgnss and the DR position Pdr and the turning radius rodo. The two turning radii rodo, rantand the line Δd form an isosceles triangle, and calculates the angle ψ=π-φ / 2 [rad].

[0038] As a result, the line Δd as the base can be calculated by the following equation (3) due to the property of the isosceles triangle. That is, the calculation unit 40 calculates the base (line Δd) and the base angle (forming angle ψ) of the isosceles triangle formed by the starting points (GNSS position Pgnss and DR position Pdr) of the GNSS vector and the DR vector, respectively, and the turning center C.Math 3

[0039]

[0040] The line Δd and the adjacent arc (turning radius rodo, center angle φ) may be regarded as the same, and the line Δd may be calculated by the following equation (4).Math 4

[0041]

[0042] Then, the calculation unit 40 uses the following equation (5) to calculate the positional difference Δx, which is a correction value, by using the right triangle formed by the positional difference Δx in the overall length direction of the vehicle 100, the positional difference Δy in the width direction, and the three sides of the line Δd. That is, the calculation unit 40 calculates the positional difference Δx, which is the correction value, based on the base (line Δd) and the base angle (angle ψ) of the isosceles triangle formed by the origin of the GNSS vector and the DR vector, respectively, and the turning center C.Math 5

[0043]

[0044] Referring to the table shown in Fig. 3, a sign (if the GNSS position Pgnss is forward of the DR position Pdr, it is positive, and if it is backward, it is negative.) of the positional difference Δx is determined based on the azimuth of the GNSS vector Vantand the DR vector Vodoand the turning direction based on the angular velocity. Fig. 3 describes a table for determining the sign of the positional difference Δx. That is, the calculation unit 40 calculates a positional relationship of the GNSS vector (GNSS position Pgnss) and the GNSS vector (DR position Pdr) in the overall length direction based on the magnitude relationship between the azimuth of the GNSS vector and the DR vector, and the turning direction based on the angular velocity. In Fig. 3, when determining the magnitude relationship between the azimuth of the GNSS vector Vantand the DR vector Vodo, if the double absolute value (|| direction of Vant- direction of Vodo||) of the difference between Vantand the DR vector Vodois 180 degrees or more, 360 degrees is added to the azimuth with the smaller value, and then the magnitude relationship is determined. As a result, it is possible to prevent erroneous judgment in the case of crossing (rolling over) the azimuth 360 degrees (0 degrees) during turning.

[0045] Then, the calculation unit 40 recalculates the turning radius r'antbased on the positional difference Δx and the turning radius rodo. Specifically, taking advantage of the fact that the central angle φ is sufficiently small (less than the threshold value), the calculation unit 40 calculates the turning radius r'antby the following equation (6) when considering a right triangle having the positional difference Δx as a base, the turning radius rodoas a height, and the turning radius r'antas a hypotenuse. The turning radius r'antcorresponds to a GNSS turning radius.Math 6

[0046]

[0047] Next, the calculation unit 40 calculates a positional difference Δy, which is a correction value in the width direction of the GNSS position Pgnss and the DR position Pdr, based on the difference between the turning radius rantcalculated by the above equation (2) and the turning radius r'antcalculated by the above equation (6). Specifically, since the difference between the turning radius rantand the turning radius r'antis caused by an approximation error in the calculation process, the positional difference Δy, which is the correction value, is calculated by the following equation (7), assuming that a value eliminating this error is the positional difference Δy, and that the ratio between the turning radius rantand the turning radius r'antis rcoef= rant / r'ant.Math 7

[0048]

[0049] Referring to the table shown in Fig. 4, the sign (if the GNSS position Pgnss is on the right side of the DR position Pdr in the direction of travel, it is positive, and if it is on the left side, it is negative.) of the positional difference Δy is determined based on the turning radius rant, the turning radius r'ant, and the turning direction. Fig. 4 describes a table for determining a sign of the positional difference Δy. That is, the calculation unit 40 determines the GNSS vector and the positional relationship of the GNSS vector in the width direction based on the magnitude relationship between the GNSS turning radius r'antand the first turning radius rantand the turning direction based on the angular velocity.

[0050] The calculation unit 40 outputs the positional differences Δx and Δy, which are the calculated correction values, to the determination unit 50.

[0051] The determination unit 50 corrects the DR vector based on the correction value calculated by the calculation unit 40, and performs various determination processes using the corrected DR vector. First, a method of correcting the DR vector will be described.

[0052] The correction of the DR vector here is to convert the DR vector into a velocity vector corresponding to the antenna position by offsetting the reference position of the DR vector from the DR position Pdr to the antenna position (GNSS position Pgnss). That is, the determination unit 50 corrects the DR vector in order to align the origin of the DR vector (DR position Pdr) with the origin of the GNSS vector (GNSS position Pgnss).

[0053] The determination unit 50 first determines whether or not the vehicle 100 is turning based on the angular velocity detected by the gyro sensor. If the vehicle is turning, the determination unit 50 calculates the turning radius rodousing the above equation (1).

[0054] Next, the determination unit 50 calculates the turning radius r'antusing the turning radius rodoand the positional difference Δx and positional difference Δy as the correction values. Specifically, by using the fact that the central angle φ is sufficiently small (less than the threshold value), the determination unit 50 assumes a right-angled triangle with the positional difference Δx as a base, (rodo+Δy) as a height, and the turning radius r'antas a hypotenuse, and calculates the turning radius r'antby the following equation (8):Math 8

[0055]

[0056] Subsequently, the determination unit 50 corrects the velocity (norm) of the DR vector from the ratio between the turning radius rodoand the turning radius r'ant. When the angular velocities are the same, since the ratio of the velocities of the GNSS vector and the DR vector is equal to the ratio between the turning radius rodoand the turning radius r'ant, the corrected velocity Vant (odo)of the DR vector is calculated by the following equation (9):Math 9

[0057]

[0058] Then, from the geometric relationship, the azimuth difference χ between the GNSS vector and the DR vector is equal to the angle ψ formed by the turning radius rodoand the turning radius r'ant. Thus, the determination unit 50 calculates the azimuth correction amount φ from the right triangle formed by the positional difference Δx, the turning radius rodo, and the turning radius r'antusing the following equation (10).Math 10

[0059]

[0060] The sign of the correction amount φ is determined based on the positional difference Δx and the turning direction with reference to the table shown in Fig. 5. Fig. 5 describes a table for determining the sign of the correction amount of the azimuth.

[0061] The determination unit 50 corrects the determined correction quantity φ by adding the correction quantity φ to the azimuth of the DR vector if the sign is positive, and corrects the correction quantity φ by subtracting the correction quantity φ from the azimuth of the DR vector if the sign is negative.

[0062] Then, the determination unit 50 determines the final positioning position of the vehicle 100 by using the DR vector whose norm and the azimuth are corrected. Specifically, the determination unit 50 generates one representative vector based on the GNSS vector and the corrected DR vector, and determines the origin of the representative vector as the final positioning position. The method of generating the representative vector from the GNSS vector and the corrected DR vector can be generated by using a known method such as using an average value.

[0063] Next, a procedure of the process executed by the speed measuring apparatus 10 according to an embodiment will be described with reference to Fig. 6 and Fig. 7. Fig. 6 is a flowchart showing the procedure of the correction value calculation process executed by the speed measuring apparatus 10 according to the embodiment. Fig. 7 is a flowchart showing the procedure of the correction process of the DR vector executed by the speed measuring apparatus 10 according to the embodiment.

[0064] As shown in Fig. 6, first, the speed measuring device 10 determines whether or not the vehicle 100 is turning based on the angular velocity detected by the gyro sensor (step 101).

[0065] If the vehicle 100 is turning (step 101: Yes), the speed measuring device 10 calculates the turning radius rodoof the DR velocity generating position (DR position Pdr) (step 102). If the vehicle 100 is not turning (step 101: No), the speed measuring apparatus 10 ends the process.

[0066] Next, the speed measuring device 10 calculates the turning radius rantof the GNSS antenna position (GNSS position Pgnss) (step 103).

[0067] Next, the speed measuring apparatus 10 determines whether the difference between the turning radius rodoand the turning radius rantis less than a threshold value (step 104).

[0068] If the difference between the turning radius rodoand the turning radius rantis less than a threshold value (step S104: Yes), the speed measuring apparatus 10 calculates the azimuth difference χ between the GNSS vector and the DR vector (step S105). If the difference between the turning radius rodoand the turning radius rantis equal to or greater than a threshold value (step S104: No), the velocity measuring device 10 ends the process.

[0069] Next, the speed measuring apparatus 10 calculates the offset (positional difference Δx) in the overall length direction between the GNSS position and the DR position (step S106).

[0070] Next, the speed measuring apparatus 10 calculates the turning radius r'antof the GNSS position based on the positional difference Δx and the turning radius rodo(step S107).

[0071] Next, the speed measuring apparatus 10 calculates the positional difference Δy in the width direction between the GNSS position and the DR position from the difference between the turning radius rantand the turning radius r'ant(step S108), and then ends the process.

[0072] As shown in Fig. 7, the speed measuring apparatus 10 first determines whether or not the positional differences Δx and Δy, which are the correction values, have been calculated by the calculation process shown in Fig. 6 (step S201).

[0073] If the correction value has already been calculated (step 201: Yes), the speed measuring apparatus 10 determines whether or not the vehicle 100 is turning (step 202). If the correction value has not already been calculated (step 201: No), the speed measuring apparatus 10 ends the correction process and performs the calculation process shown in Fig. 6.

[0074] If the vehicle 100 is turning (step 202: Yes), the speed measuring apparatus 10 calculates the turning radius rodoat the DR position (step 203). If the vehicle 100 is not turning (step 202: No), the speed measuring apparatus 10 ends the process.

[0075] Next, the speed measuring apparatus 10 calculates the turning radius rantat the GNSS position based on the turning radius rodoand the positional differences Δx and Δy (step 204).

[0076] Next, the speed measuring apparatus 10 calculates the speed (norm) at the GNSS position from the ratio between the turning radius rodoand the turning radius rant(step 205).

[0077] Subsequently, the speed measuring apparatus 10 calculates the azimuth of the GNSS position based on the turning radius rodoand the positional difference Δx (step 206), and then ends the process.

[0078] As described above, according to the embodiment of the present disclosure, the speed measuring apparatus 10 includes a first acquisition unit 20, a second acquisition unit 30, and a calculation unit 40. The first acquisition unit 20 acquires the GNSS vector which is the velocity vector of the moving body (vehicle 100) by GNSS positioning. The second acquisition unit 30 acquires the DR vector which is the velocity vector of the moving body by the dead reckoning positioning. The calculation unit 40 calculates the correction value for correcting the DR vector based on the angular velocity of the moving body, the GNSS vector, and the DR vector when the moving body is turning. As a result, the speed measuring apparatus 10 can suppress deterioration in the accuracy of speed measurement.

[0079] Further, among the processes described in the above embodiment, all or part of the processes described as automatically performed can be performed manually, or all or part of the processes described as manually performed can be performed automatically by a known method. In addition, information including processing procedures, specific names, and various data and parameters shown in the documents and drawings may be arbitrarily changed except as otherwise noted. For example, the various information shown in the figures is not limited to the illustrated information.

[0080] Further, the respective components of the illustrated apparatuses are functional concepts and need not necessarily be physically configured as shown. That is, the specific form of distribution and integration of the apparatuses is not limited to that shown in the figures, and all or a part of the apparatuses can be functionally or physically distributed and integrated in arbitrary units in accordance with various loads, usage conditions, and the like.

[0081] The present invention is not limited to the above embodiments, and various modifications can be made within the scope of the claims. For example, the technical scope of the present invention includes configurations obtained by appropriately combining the above-described embodiments, provided that the processing content does not conflict with each other. Additionally, the order of the steps shown in the flowcharts and sequence diagrams of the above embodiments can be modified as necessary.Terminology

[0082] It is to be understood that not necessarily all objects or advantages may be achieved in accordance with any particular embodiment described herein. Thus, for example, those skilled in the art will recognize that certain embodiments may be configured to operate in a manner that achieves or optimizes one advantage or group of advantages as taught herein without necessarily achieving other objects or advantages as may be taught or suggested herein.

[0083] All of the processes described herein may be embodied in, and fully automated via, software code modules executed by a computing system that includes one or more computers or processors. The code modules may be stored in any type of non-transitory computer-readable medium or other computer storage device. Some or all the methods may be embodied in specialized computer hardware.

[0084] Many other variations than those described herein will be apparent from this disclosure. For example, depending on the embodiment, certain acts, events, or functions of any of the algorithms described herein can be performed in a different sequence, can be added, merged, or left out altogether (e.g., not all described acts or events are necessary for the practice of the algorithms). Moreover, in certain embodiments, acts or events can be performed concurrently, e.g., through multi-threaded processing, interrupt processing, or multiple processors or processor cores or on other parallel architectures, rather than sequentially. In addition, different tasks or processes can be performed by different machines and / or computing systems that can function together.

[0085] The various illustrative logical blocks and modules described in connection with the embodiments disclosed herein can be implemented or performed by a machine, such as a processor. A processor can be a microprocessor, but in the alternative, the processor can be a controller, microcontroller, or state machine, combinations of the same, or the like. A processor can include electrical circuitry configured to process computer-executable instructions. In another embodiment, a processor includes an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA), or other programmable device that performs logic operations without processing computer-executable instructions. A processor can also be implemented as a combination of computing devices, e.g., a combination of a digital signal processor (DSP) and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration. Although described herein primarily with respect to digital technology, a processor may also include primarily analog components. For example, some or all of the signal processing algorithms described herein may be implemented in analog circuitry or mixed analog and digital circuitry. A computing environment can include any type of computer system, including, but not limited to, a computer system based on a microprocessor, a mainframe computer, a digital signal processor, a portable computing device, a device controller, or a computational engine within an appliance, to name a few.

[0086] Conditional language such as, among others, "can", "could", "might" or "may" unless specifically stated otherwise, are otherwise understood within the context as used in general to convey that certain embodiments include, while other embodiments do not include, certain features, elements and / or steps. Thus, such conditional language is not generally intended to imply that features, elements and / or steps are in any way required for one or more embodiments or that one or more embodiments necessarily include logic for deciding, with or without user input or prompting, whether these features, elements and / or steps are included or are to be performed in any particular embodiment.

[0087] Disjunctive language such as the phrase "at least one of X, Y, or Z" unless specifically stated otherwise, is otherwise understood with the context as used in general to present that an item, term, etc., may be either X, Y, or Z, or any combination thereof (e.g., X, Y, and / or Z). Thus, such disjunctive language is not generally intended to, and should not, imply that certain embodiments require at least one of X, at least one of Y, or at least one of Z to each be present.

[0088] Any process descriptions, elements, or blocks in the flow diagrams described herein and / or depicted in the attached figures should be understood as potentially representing modules, segments, or portions of code that include one or more executable instructions for implementing specific logical functions or elements in the process. Alternate implementations are included within the scope of the embodiments described herein in which elements or functions may be deleted, executed out of order from that shown, or discussed, including substantially concurrently or in reverse order, depending on the functionality involved as would be understood by those skilled in the art.

[0089] Unless otherwise explicitly stated, articles such as "a" or "an" should generally be interpreted to include one or more described items. Accordingly, phrases such as "a device configured to" are intended to include one or more recited devices. Such one or more recited devices can also be collectively configured to carry out the stated recitations. For example, "a processor configured to carry out recitations A, B, and C" can include a first processor configured to carry out recitation A working in conjunction with a second processor configured to carry out recitations B and C. The same holds true for the use of definite articles used to introduce embodiment recitations. In addition, even if a specific number of an introduced embodiment recitation is explicitly recited, those skilled in the art will recognize that such recitation should typically be interpreted to mean at least the recited number (e.g., the bare recitation of "two recitations" without other modifiers, typically means at least two recitations or two or more recitations).

[0090] It will be understood by those within the art that, in general, terms used herein, are generally intended as "open" terms (e.g., the term "including" should be interpreted as "including but not limited to" the term "having" should be interpreted as "having at least" the term "includes" should be interpreted as "includes but is not limited to" etc.).

[0091] For expository purposes, the term "horizontal" as used herein is defined as a plane parallel to the plane or surface of the floor of the area in which the system being described is used or the method being described is performed, regardless of its orientation. The term "floor" can be interchanged with the term "ground" or "water surface". The term "vertical" refers to a direction perpendicular to the horizontal as just defined. Terms such as "above", "below", "bottom", "top", "side", "higher", "lower", "upper", "over" and "under" are defined with respect to the horizontal plane.

[0092] As used herein, the terms "attached", "connected", "mated" and other such relational terms should be construed, unless otherwise noted, to include removable, moveable, fixed, adjustable, and / or releasable connections or attachments. The connections / attachments can include direct connections and / or connections having intermediate structure between the two components discussed.

[0093] Numbers preceded by a term such as "approximately", "about" and "substantially" as used herein include the recited numbers and also represent an amount close to the stated amount that still performs a desired function or achieves a desired result. For example, the terms "approximately", "about" and "substantially" may refer to an amount that is within less than 10% of the stated amount. Features of embodiments disclosed herein preceded by a term such as "approximately", "about" and "substantially" as used herein represent the feature with some variability that still performs a desired function or achieves a desired result for that feature.

[0094] It should be emphasized that many variations and modifications may be made to the above-described embodiments, the elements of which are to be understood as being among other acceptable examples. All such modifications and variations are intended to be included herein within the scope of this disclosure and protected by the following claims.

[0095] (1) A speed measuring apparatus (10) comprising: a first acquisition unit (20) configured to acquire a GNSS vector (Vant), which is a velocity vector of a moving body (100) by a GNSS positioning; a second acquisition unit (30) configured to acquire a DR vector (Vodo), which is a velocity vector of the moving body (100) by a dead reckoning positioning; and a calculation unit (40) configured to calculate a correction value for correcting the DR vector (Vodo) based on an angular velocity (ω) of the moving body (100), the GNSS vector (Vant), and the DR vector (Vodo) when the moving body (100) is turning.

[0096] (2) The speed measuring apparatus (10), according to the claim 1, wherein the calculation unit (40) is further configured to calculate the correction value, when a difference between a first turning radius (rant), calculated based on the angular velocity (ω) and the GNSS vector (Vant), and a second turning radius (rodo), calculated based on the angular velocity (ω) and the DR vector (Vodo), is less than a threshold value.

[0097] (3) The speed measuring apparatus (10), according to the claim 2, wherein the calculation unit (40) is further configured to calculate a correction value based on an angle (φ) formed by an origin of the GNSS vector (Vant) and an origin of the DR vector (Vodo), and a turning center (C).

[0098] (4) The speed measuring apparatus (10), according to the claim 3, wherein the calculation unit (40) is further configured: to calculate a base (Δd) and a base angle (ψ) of an isosceles triangle formed by the origin of the GNSS vector (Vant), and the DR vector (Vodo), and the turning center (C), and to calculate a positional difference (Δx), which is a correction value, in an overall length direction between the GNSS vector (Vant) and the DR vector (Vodo) of the moving body (100), based on the base (Δd) and the base angle (ψ).

[0099] (5) The speed measuring apparatus (10) according to the claim 4, wherein the calculation unit (40) is further configured to specify a positional relationship of the GNSS vector (Vant) and the DR vector (Vodo), in the overall length direction, based on a magnitude relationship of azimuth of the GNSS vector and the DR vector, and a turning direction based on the angular velocity.

[0100] (6) The speed measuring apparatus (10) according to the claim 4, wherein the calculation unit (40) is further configured: to calculate a GNSS turning radius (r'ant) based on the GNSS vector (Vant), which is a hypotenuse of a right triangle, based on the positional difference (Δx), between the GNSS vector (Vant) and the DR vector (Vodo), in the overall length direction in the moving body (100), which is a base of the right triangle, and the second turning radius (rodo), which is a height of the right triangle, and to calculate a positional difference (Δy), which is a correction value, in the width direction of the GNSS vector (Vant) and the DR vector (Vodo) of the moving body (100), based on the GNSS turning radius (r'ant) and the first turning radius (rant).

[0101] (7) The speed measuring apparatus (10) according to the claim 6, wherein the calculation unit (40) is further configured to determine the GNSS vector (Vant) and a positional relationship of the GNSS vector (Vant) in the width direction based on the magnitude relationship between the GNSS turning radius (r'ant) and the first turning radius (rant), and the turning direction based on the angular velocity (ω).

[0102] (8) The speed measuring apparatus (10) according to the claim 1, further comprising: a determination unit (50) configured to determine a positioning position of the moving body (100) based on the DR vector (Vodo) corrected by the correction value and the GNSS vector (Vant).

[0103] (9) A speed measuring method (10) comprising: acquiring (20) a GNSS vector (Vant), which is a velocity vector of the moving body (100) by a GNSS positioning; acquiring a DR vector (Vodo), which is a velocity vector of the moving body (100) by a dead reckoning positioning; and calculating a correction value for correcting the DR vector (Vodo) based on the angular velocity (ω) of the moving body (100), the GNSS vector (Vant), and the DR vector (Vodo), when the moving body is turning.

[0104] (10) A non-transient computer readable medium containing program instructions for causing a computer to execute the method of: acquiring (20) a GNSS vector (Vant), which is a velocity vector of the moving body (100) by a GNSS positioning; acquiring a DR vector (Vodo), which is a velocity vector of the moving body (100) by a dead reckoning positioning; and calculating a correction value for correcting the DR vector (Vodo) based on the angular velocity (ω) of the moving body (100), the GNSS vector (Vant), and the DR vector (Vodo) when the moving body is turning.

[0105] 10: Speed Measuring Apparatus, 100: Vehicle, 20: First Acquisition Unit, 200: Antenna, 30: Second Acquisition Unit, 40: Calculation Unit, 50: Determination Unit, C: Turning Center, Pdr: DR Position, Pgnss: GNSS Position, rant, r'ant: GNSS Turning Radius, rodo: DR Turning Radius, Vant: GNSS Vector, Vodo: DR Vector, Vant (odo): Corrected Velocity, Δd: Line, Δx, Δy: Positional Difference, ω: Angular Velocity, χ: Azimuth Difference, φ: Angle, ψ: Base Angle

[0106] Patent literature 1: Japanese Patent No. 6199535

Claims

1. A speed measuring apparatus (10) comprising: a first acquisition unit (20) configured to acquire a GNSS vector (Vant), which is a velocity vector of a moving body (100) by a GNSS positioning; a second acquisition unit (30) configured to acquire a DR vector (Vodo), which is a velocity vector of the moving body (100) by a dead reckoning positioning; and a calculation unit (40) configured to calculate a correction value for correcting the DR vector (Vodo) based on an angular velocity (ω) of the moving body (100), the GNSS vector (Vant), and the DR vector (Vodo) when the moving body (100) is turning.

2. The speed measuring apparatus (10), according to the claim 1, wherein the calculation unit (40) is further configured to calculate the correction value, when a difference between a first turning radius (rant), calculated based on the angular velocity (ω) and the GNSS vector (Vant), and a second turning radius (rodo), calculated based on the angular velocity (ω) and the DR vector (Vodo), is less than a threshold value.

3. The speed measuring apparatus (10), according to the claim 2, wherein the calculation unit (40) is further configured to calculate a correction value based on an angle (φ) formed by an origin of the GNSS vector (Vant) and an origin of the DR vector (Vodo), and a turning center (C).

4. The speed measuring apparatus (10), according to the claim 3, wherein the calculation unit (40) is further configured: to calculate a base (Δd) and a base angle (ψ) of an isosceles triangle formed by the origin of the GNSS vector (Vant), and the DR vector (Vodo), and the turning center (C), and to calculate a positional difference (Δx), which is a correction value, in an overall length direction between the GNSS vector (Vant) and the DR vector (Vodo) of the moving body (100), based on the base (Δd) and the base angle (ψ).

5. The speed measuring apparatus (10) according to the claim 4, wherein the calculation unit (40) is further configured to specify a positional relationship of the GNSS vector (Vant) and the DR vector (Vodo), in the overall length direction, based on a magnitude relationship of azimuth of the GNSS vector and the DR vector, and a turning direction based on the angular velocity.

6. The speed measuring apparatus (10) according to the claim 4, wherein the calculation unit (40) is further configured: to calculate a GNSS turning radius (r'ant) based on the GNSS vector (Vant), which is a hypotenuse of a right triangle, based on the positional difference (Δx), between the GNSS vector (Vant) and the DR vector (Vodo), in the overall length direction in the moving body (100), which is a base of the right triangle, and the second turning radius (rodo), which is a height of the right triangle, and to calculate a positional difference (Δy), which is a correction value, in the width direction of the GNSS vector (Vant) and the DR vector (Vodo) of the moving body (100), based on the GNSS turning radius (r'ant) and the first turning radius (rant).

7. The speed measuring apparatus (10) according to the claim 6, wherein the calculation unit (40) is further configured to determine the GNSS vector (Vant) and a positional relationship of the GNSS vector (Vant) in the width direction based on the magnitude relationship between the GNSS turning radius (r'ant) and the first turning radius (rant), and the turning direction based on the angular velocity (ω).

8. The speed measuring apparatus (10) according to the claim 1, further comprising: a determination unit (50) configured to determine a positioning position of the moving body (100) based on the DR vector (Vodo) corrected by the correction value and the GNSS vector (Vant).

9. A speed measuring method (10) comprising: acquiring (20) a GNSS vector (Vant), which is a velocity vector of the moving body (100) by a GNSS positioning; acquiring a DR vector (Vodo), which is a velocity vector of the moving body (100) by a dead reckoning positioning; and calculating a correction value for correcting the DR vector (Vodo) based on the angular velocity (ω) of the moving body (100), the GNSS vector (Vant), and the DR vector (Vodo), when the moving body is turning.

10. A non-transient computer readable medium containing program instructions for causing a computer to execute the method of: acquiring (20) a GNSS vector (Vant), which is a velocity vector of the moving body (100) by a GNSS positioning; acquiring a DR vector (Vodo), which is a velocity vector of the moving body (100) by a dead reckoning positioning; and calculating a correction value for correcting the DR vector (Vodo) based on the angular velocity (ω) of the moving body (100), the GNSS vector (Vant), and the DR vector (Vodo) when the moving body is turning.

Citation Information

Patent Citations

  • Systems and Methods with Dead-Reckoning

    US20190063925A1

  • Vehicle navigation by dead reckoning and GNSS-aided map-matching

    US20190265049A1