Movement amount estimation device, movement amount estimation method, and movement amount estimation program

By prioritizing high-priority data combinations based on distance, time, and quality indicators, the method reduces calculation load and enhances accuracy in estimating the movement of mobile objects using time-difference RTK positioning.

JP7615871B2Active Publication Date: 2025-01-17DENSO CORP
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2021076513
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-04-28
Publication Date
2025-01-17
Estimated Expiration
2041-04-28

AI Technical Summary

Technical Problem

Time-difference RTK positioning in estimating the movement of a mobile object involves multiple combinations of past and current data, leading to a significant increase in calculation load.

Method used

A movement estimation device and method that determines priority levels for combinations of past and current satellite data using indicators such as distance difference, time difference, and satellite quality, selectively using high-priority ranges for calculation to reduce the amount of data processed.

Benefits of technology

This approach reduces the overall calculation load while maintaining accuracy by prioritizing data combinations that minimize satellite clock errors and ionospheric delays, improving the precision of movement estimation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007615871000002
    Figure 0007615871000002
  • Figure 0007615871000003
    Figure 0007615871000003
  • Figure 0007615871000004
    Figure 0007615871000004
Patent Text Reader

Abstract

To provide a movement amount estimation device and the like capable of suppressing an amount of calculation.SOLUTION: A locator ECU 100 as a movement amount estimation device estimates an amount of movement from a past spot of a vehicle A equipped with a GNSS receiver 10 that receives satellite data from positioning satellites to a current point. The locator ECU 100 includes a priority determination unit 130 that determines whether priority is high or low, used for the estimation of the amount of movement, regarding a combination of each piece of past satellite data acquired by the receiver at a plurality of past points and current satellite data acquired at the current point. The locator ECU 100 includes a movement amount calculation unit 140 that calculates a relative amount of movement from the past point to the current point based on a combination of high priority ranges which have a higher priority than low priority ranges among a plurality of combinations.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The disclosure in this specification relates to a technique for estimating the amount of movement of a moving object between times. [Background technology]

[0002] Non-Patent Document 1 discloses a technology for estimating the amount of movement of a mobile object equipped with a receiver by performing time-difference RTK (Real Time Kinematic) positioning based on past data and current data of the receiver. [Prior art documents] [Non-patent literature]

[0003] [Non-Patent Document 1] T.Suzuki(2020), “Time-Relative RTK-GNSS GNSS Loop Closure in Pose Graph Optimization”, IEEE ROBOTICS AND AUTOMATION LETTERS, VOL. 5, NO. 3, JULY 2020 Summary of the Invention [Problem to be solved by the invention]

[0004] In time-difference RTK positioning, there can be multiple past data sets to combine with current data. However, if time-difference RTK is performed for all selectable combinations, the amount of calculations may increase.

[0005] The disclosed object is to provide a movement amount estimation device, a movement amount estimation method, and a movement amount estimation program that can reduce the amount of calculation. [Means for solving the problem]

[0006] The various aspects disclosed in this specification employ different technical means to achieve their respective objectives. The reference symbols in parentheses in the claims and in this section are merely examples showing the correspondence between specific means described in the embodiments below as one aspect, and do not limit the technical scope.

[0007] One of the disclosed movement amount estimation devices is a device for estimating the movement amount from a past position to a current position of a mobile object (A) equipped with a receiver (10) that receives satellite data from a positioning satellite. , using time-difference RTK A movement amount estimation device for estimating a movement amount, a priority determination unit (130) that determines the priority of each combination of past satellite data acquired by the receiver at a plurality of past locations and current satellite data acquired at the current location to be used in estimating the amount of movement; a movement amount calculation unit (140) that calculates a relative movement amount from a past location to a current location based on a combination of a high priority range that has a higher priority than a low priority range among the plurality of combinations; Equipped with.

[0008] One of the disclosed movement amount estimation methods is to estimate the movement amount from a past position to a current position of a mobile object (A) equipped with a receiver (10) that receives satellite data from a positioning satellite. , using time-difference RTK A movement amount estimation method executed by a processor (102) to estimate, comprising: a priority determination step (S130, S140, S150, S160, S170, S180, S190, S200) for determining the priority of each combination of past satellite data acquired by the receiver at a plurality of past locations and current satellite data acquired at the current location to be used in estimating the amount of movement; a movement amount calculation step (S210) of calculating a relative movement amount from a past location to a current location based on a combination of a high priority range having a higher priority than a low priority range among the plurality of combinations; Includes:

[0009] One of the disclosed movement amount estimation programs is a program for estimating the movement amount from a past position to a current position of a mobile object (A) equipped with a receiver (10) that receives satellite data from a positioning satellite. , using time-difference RTK a movement amount estimation program including a plurality of instructions to be executed by a processor (102) to estimate a movement amount, The command is, a priority determination step (S130, S140, S150, S160, S170, S180, S190, S200) for determining the priority of each combination of past satellite data acquired by the receiver at a plurality of past locations and current satellite data acquired at the current location to be used in estimating the amount of movement; a movement amount calculation step (S210) of calculating a relative movement amount from a past location to a current location based on a combination of a high priority range having a higher priority than a low priority range among the plurality of combinations; Includes:

[0010] According to these disclosures, a priority for use in estimating a movement amount is determined for each combination of past satellite data acquired by a receiver at multiple past locations and current satellite data acquired at the current location. Then, a relative movement amount from the past location to the current location is calculated based on a combination of a high-priority range, which has a higher priority than a low-priority range, among the combinations. Therefore, data to be combined with current satellite data from the multiple past satellite data can be appropriately determined based on priority. This can reduce the use of a large amount of past satellite data. Therefore, a movement amount estimation device, a movement amount estimation method, and a movement amount estimation program that can reduce the amount of calculation can be provided. [Brief explanation of the drawings]

[0011] [Figure 1] FIG. 2 is a block diagram showing the overall configuration of a system including a locator ECU. [Figure 2] 10 is a flowchart illustrating an example of a movement amount estimation method executed by a locator ECU. [Figure 3]3 is a flowchart showing detailed processing of the processing of FIG. 2; [Figure 4] 3 is a flowchart showing detailed processing of the processing of FIG. 2; [Figure 5] 3 is a flowchart showing detailed processing of the processing of FIG. 2; [Figure 6] FIG. 10 is a block diagram showing the overall configuration of a system including a locator ECU according to a second embodiment. [Figure 7] 10 is a flowchart showing an example of a movement amount estimation method executed by a locator ECU in the second embodiment. [Figure 8] 8 is a flowchart showing detailed processing of the processing of FIG. 7. [Figure 9] 8 is a flowchart showing detailed processing of the processing of FIG. 7 in the third embodiment. [Figure 10] FIG. 10 is a block diagram showing the overall configuration of a system including a locator ECU in a fourth embodiment. [Figure 11] 10 is a flowchart showing an example of a movement amount estimation method executed by a locator ECU in the fourth embodiment. DETAILED DESCRIPTION OF THE INVENTION

[0012] (First embodiment) 1, a movement amount estimation device according to an embodiment of the present disclosure is provided by a locator ECU 100. The locator ECU 100 is an electronic control unit mounted on a vehicle A, which is a moving body.

[0013] Locator ECU 100 can acquire various types of information via an in-vehicle network including at least one of a local area network (LAN), a wire harness, an internal bus, etc. The information acquired from the in-vehicle network includes, for example, a positioning signal from GNSS receiver 10.

[0014] The GNSS receiver 10 receives navigation signals transmitted from positioning satellites that make up the GNSS (Global Navigation Satellite System). The GNSS receiver 10 generates observation data based on the navigation signals and the carrier waves of the navigation signals. As an example, the observation data includes pseudorange, carrier phase, Doppler frequency, carrier-to-noise ratio, and whether or not a cycle slip has occurred. The GNSS receiver 10 sequentially provides the observation data to the locator ECU 100.

[0015] The locator ECU 100 is a computer including at least one memory 101 and one processor 102. The memory 101 is at least one type of non-transient tangible storage medium, such as a semiconductor memory, a magnetic medium, or an optical medium, that non-temporarily stores or stores computer-readable programs and data. The memory 101 stores various programs executed by the processor 102, such as a movement amount estimation program described below.

[0016] Processor 102 includes at least one type of core, such as a central processing unit (CPU), a graphics processing unit (GPU), or a reduced instruction set computer (RISC)-CPU. Processor 102 executes a plurality of instructions included in a movement amount estimation program stored in memory 101. This causes locator ECU 100 to implement a plurality of functional units for estimating the current position of vehicle A. In this manner, the movement amount estimation program stored in memory 101 causes processor 102 to execute a plurality of instructions, thereby implementing a plurality of functional units in locator ECU 100. Specifically, as shown in FIG. 2 , functional units implemented in locator ECU 100 include a data acquisition unit 110, a simple positioning unit 120, a priority determination unit 130, a movement amount calculation unit 140, and a position estimation unit 150.

[0017] The data acquisition unit 110 acquires new observation data received by the GNSS receiver 10. The data acquisition unit 110 stores the new observation data in a buffer. The data acquisition unit 110 also sequentially provides the new observation data to the simple positioning unit 120 and the priority determination unit 130.

[0018] The simple positioning unit 120 estimates the vehicle A's own position using a method that does not use time-difference RTK (time-difference real-time kinematic kinetik), which will be described later. For example, the simple positioning unit 120 may estimate the vehicle A's own position based on point-based positioning or satellite positioning such as DGPS. Hereinafter, the vehicle A's own position estimated by the simple positioning unit 120 may be referred to as a tentative vehicle A's own position. Furthermore, the simple positioning unit 120 calculates the travel distance since the GNSS receiver 10 was powered on based on the estimated position. The simple positioning unit 120 may also calculate the travel distance since the locator ECU 100 itself was powered on. Alternatively, the simple positioning unit 120 may calculate the travel distance since the vehicle A was started. The simple positioning unit 120 may calculate the travel distance using dead reckoning based on vehicle speed information detected by a vehicle speed sensor. The simple positioning unit 120 may also calculate the Doppler velocity of the GNSS receiver 10, calculated based on the Doppler frequency, as the estimated travel speed of the vehicle A.

[0019] The buffer update unit 125 updates the buffer based on the observation data and the positioning result data from the simple positioning unit 120. More specifically, if there is buffer data that was acquired before the threshold time or earlier than the threshold time, the buffer update unit 125 deletes that data. The buffer update unit 125 then stores the acquired latest observation data and positioning result data in the memory 101 as new buffer data. The positioning result data includes the provisional own position and the distance traveled since the GNSS receiver 10 was powered on. Note that instead of the provisional own position, the current position estimated by the position estimation unit 150, which will be described later, may be stored.

[0020] The priority determination unit 130 determines the priority of each combination of past satellite data acquired at a plurality of past locations and current satellite data acquired at the current location to be used in estimating the amount of movement.

[0021] The priority determination unit 130 quantifies the priority based on multiple indices, which may be three parameters: a distance difference index, a time difference index, and a satellite quality index.

[0022] The distance difference index is an index that indicates the magnitude of the distance difference between the travel distance from the reference point to the point where past satellite data was acquired (past point) and the travel distance from the reference point to the point where current satellite data was acquired (current point). For example, the reference point is the point where the GNSS receiver 10 was powered on. The distance difference index is, for example, a normalized distance difference between the distances traveled since the GNSS receiver 10 was powered on. Specifically, the priority determination unit 130 calculates the distance difference index based on the following equation 1. In the following, id1 is the distance difference index. D is the distance difference between the distance traveled from powering on the GNSS receiver 10 at the point where the current satellite data was acquired and the distance traveled from powering on the GNSS receiver 10 at the time of acquiring past satellite data. Nmin is the normalized minimum value, and Nmax is the normalized maximum value. The normalized minimum value and the normalized maximum value are predetermined values.

[0023] (Number 1) id1=(D-Nmin) / (Nmax-Nmin) ···(1) If the distance difference is less than the normalized minimum value, the priority determination unit 130 sets D=Nmin, and if the distance difference is greater than the normalized maximum value, the priority determination unit 130 sets D=Nmax.

[0024] The time difference index is an index that indicates the amount of time that has passed from the time that previous satellite data was acquired to the time that current satellite data was acquired. The time difference index is normalized, like the distance difference index, based on the following equation 2. In the following, id2 is the time difference index. Furthermore, T is the difference between the time that has passed since the GNSS receiver 10 was powered on at the time that current satellite data was acquired and the time that has passed since the GNSS receiver 10 was powered on at the time that previous satellite data was acquired.

[0025] (Number 2) id2=(Nmin-T) / (Nmax-Nmin) ···(2) As in the case of the distance difference, the priority determination unit 130 sets T=Nmin when the time difference is less than the normalized minimum value, and sets T=Nmax when the time difference is greater than the normalized maximum value.

[0026] The satellite quality index is an index that indicates the quality of the acquired satellite data. For example, the satellite quality index is obtained by normalizing the number of signals that did not experience a cycle slip from the time the previous satellite data was acquired to the time the current satellite data was acquired. The satellite quality index is normalized in the same way as the distance difference index, based on the following equation (3). In the following, id3 is the satellite quality index, and N is the number of signals.

[0027] (Number 3) id3=(N-Nmin) / (Nmax-Nmin) ···(3) As in the case of the distance difference and the time difference, the priority determination unit 130 sets N=Nmin when the number of signals is less than the normalized minimum value, and sets N=Nmax when the time difference is greater than the normalized maximum value. Furthermore, the values ​​of Nmax and Nmin are different for each of the above three equations.

[0028] The priority determination unit 130 calculates the sum of the above indices as the priority. The priority determination unit 130 calculates the priority for each piece of buffered past satellite data, and provides the results to the movement amount calculation unit 140 one by one.

[0029] The priority determination unit 130 may set weights for the parameters. For example, the priority determination unit 130 sets a weight based on the vehicle speed for the travel distance difference. Specifically, the priority determination unit 130 adjusts the weight so that when the vehicle speed is within a predetermined range, the weight for the travel distance difference is smaller (for example, zero) than when the vehicle speed is outside the predetermined range. Here, the predetermined range is a numerical range in which the vehicle speed is equal to or less than a threshold value. Note that the priority determination unit 130 may set weights for other priority parameters according to predetermined conditions.

[0030] The movement amount calculation unit 140 calculates the relative movement amount from the past location to the current location based on combinations of high-priority ranges that have higher priority than low-priority ranges. For example, the movement amount calculation unit 140 selects a specified number (e.g., 10) of the highest-priority combinations as combinations to be used for movement amount calculation. In this case, the priority ranges that include the priorities in each selected combination ultimately become the high-priority range, and the priority ranges that include the priorities in combinations that were not selected become the low-priority range. Note that the movement amount calculation unit 140 may set a threshold that defines the boundary between the high-priority range and the low-priority range, and select combinations that are equal to or greater than this threshold.

[0031] The movement amount calculation unit 140 performs time-difference RTK based on the selected multiple pieces of past satellite data. As a result, the movement amount calculation unit 140 estimates the movement amount of vehicle A from the acquisition time of each piece of past satellite data to the acquisition time of the current satellite data. The movement amount calculation unit 140 only needs to calculate the movement vector from the past position to the current position as the movement amount. The movement amount calculation unit 140 provides the calculated movement vector to the position estimation unit 150.

[0032] The following describes the time-difference RTK performed by the movement amount calculation unit 140. In this embodiment, "performing time-difference RTK" includes at least the calculation of the relative movement amount (movement vector) of a moving body (vehicle A in this embodiment), but does not necessarily include the estimation of the absolute position of the moving body based on the movement amount. In the following description, RTK positioning that calculates a baseline vector from a known reference station to a moving body may be referred to as normal RTK to distinguish it from time-difference RTK.

[0033] Time-difference RTK is a positioning method that calculates the relative movement vector of a moving object from a past time to the present time by replacing the reference station in normal RTK with a moving object at a past time.

[0034] More specifically, in time-difference RTK, a single difference in carrier phase is the difference between the carrier phase of a positioning signal received by the GNSS receiver 10 at the current time and the carrier phase of a positioning signal received at a past time by the same GNSS receiver 10. Therefore, the difference between the above-mentioned single difference of a specific reference satellite and the single difference of another satellite is a double difference in time-difference RTK.

[0035] The movement amount calculation unit 140 calculates this double difference based on the buffered past satellite data and current satellite data. The movement amount calculation unit 140 calculates the double difference between the reference satellite and multiple other satellites (for example, four or more). Based on the multiple calculated double differences, the movement amount calculation unit 140 performs parameter estimation using the least squares method, a Kalman filter, or the like. As a result, the movement amount calculation unit 140 calculates the relative movement vector of the moving object from the past time to the current time.

[0036] The position estimation unit 150 calculates the current position of vehicle A as an estimated position based on the movement vector. For example, the position estimation unit 150 estimates the current position by combining a position estimated based on the past position and the movement vector with a position estimated by the simple positioning unit 120 without using time-difference RTK. The position estimation unit 150 may determine the current position as the average of the two pieces of position information described above, or may estimate the current position using a Kalman filter that uses the two pieces of position information as observables. The position estimation unit 150 outputs the estimated current position to the in-vehicle device 90 as the vehicle A's own position. Here, the in-vehicle device 90 is a device that executes an application that uses the current position estimated by the locator ECU 100. Note that the position estimation unit 150 may transmit the current position to an external device of vehicle A, such as a server device or another vehicle, instead of the in-vehicle device 90.

[0037] Next, a flow of the movement amount estimation method executed by locator ECU 100 in cooperation with the functional blocks will be described below with reference to Fig. 2. In the flow described below, "S" means multiple steps of the flow that are executed by multiple instructions included in the program.

[0038] First, in S100, the data acquisition unit 110 acquires the latest satellite data received by the GNSS receiver 10. Next, in S110, the data acquisition unit 110 updates the buffer with the acquired satellite data. Specifically, the data acquisition unit 110 deletes from the buffer any satellite data that has been acquired for a threshold time or more. Then, the data acquisition unit 110 adds the latest satellite data to the buffer.

[0039] After the process of S110, the priority determination unit 130 determines whether or not past satellite data exists in S120. If it is determined that past satellite data exists, the flow proceeds to S130.

[0040] In S130, the priority determination unit 130 calculates the travel distance difference as one of the parameters for determining the priority.

[0041] The details of the processing of S130 will be described with reference to the flowchart in Fig. 3. First, in S131, the current travel distance is acquired. Next, in S132, the travel distance when the past satellite data to be combined was acquired is acquired. Then, in S133, the difference between the two travel distances is calculated. Next, in S134, the difference is normalized. This normalized difference is used as the travel distance difference.

[0042] Returning to FIG. 2, in S140, the priority determination unit 130 calculates a time difference as one of the parameters for determining the priority. Details of the processing of S140 will be explained with reference to the flowchart in FIG. 4. First, in S141, the current time is acquired. Next, in S142, the time when the past satellite data to be combined was acquired is acquired. Note that this time may be the elapsed time from the time when the GNSS receiver 10 was powered on as the reference time. Then, in S143, the difference between the two times is calculated. Next, in S144, the difference is normalized. This normalized difference is used as the time difference.

[0043] Returning to FIG. 2, in S150, the priority determination unit 130 calculates satellite quality as one of the parameters for determining priority. Details of the processing in S150 will be described with reference to the flowchart in FIG. 5. First, in S151, signals that did not experience a cycle slip from the current time to the target time are extracted. Then, in S152, the number of signals that did not experience a cycle slip is calculated and normalized. This normalized number of signals is used as the satellite quality index.

[0044] Returning to FIG. 2, in S170, the priority determination unit 130 selects the satellite data with the highest priority from the buffered satellite data. Here, the priority determination unit 130 determines the priority as the sum of the above-mentioned three parameters. Next, in S180, the priority determination unit 130 determines whether the number of selected satellite data has reached an upper limit (for example, about 10). If it is determined that the upper limit has not been reached, the flow proceeds to S190. On the other hand, if it is determined that the upper limit has been reached, the flow proceeds to S210.

[0045] In S190, the priority determination unit 130 excludes from the satellite data stored in the buffer any satellite data whose travel distance difference with the selected satellite data is equal to or less than a threshold value from the selection candidates. Next, in S200, the priority determination unit 130 determines whether any selectable satellite data remains. If it is determined that satellite data remains, the flow returns to S170. On the other hand, if it is determined that no satellite data remains, the flow proceeds to S210. Through the series of processes from S170 to S200, multiple pieces of satellite data that have a relatively high priority and whose positions at the time of acquisition were relatively far apart are selected.

[0046] In S210, the movement amount calculation unit 140 performs time-difference RTK based on a combination of the selected multiple past satellite data and the current satellite data, and calculates the movement amount from each past position to the current position. Next, in S220, the position estimation unit 150 estimates the current position of vehicle A based on the movement amount. Specifically, the position estimation unit 150, and then in S230, the position estimation unit 150 transmits the estimated current position to the in-vehicle device 90. Note that the position estimation unit 150 may transmit the current position to an external device of vehicle A. In the above, S130, S140, S150, S170, S180, S190, and S200 are an example of a "priority determination step," and S210 is an example of a "movement amount calculation step."

[0047] According to the first embodiment described above, the priority of each combination of past satellite data acquired by the GNSS receiver 10 at multiple past locations and current satellite data acquired at the current location is determined for use in estimating the amount of movement. Then, the relative amount of movement from the past location to the current location is calculated based on a combination of a high-priority range that has a higher priority than a low-priority range. Therefore, the data to be combined with the current satellite data from the multiple past satellite data can be appropriately determined based on the priority. This can reduce the use of a large amount of past satellite data. Therefore, it can reduce the amount of calculation required for estimating the amount of movement.

[0048] Furthermore, according to the first embodiment, the greater the difference between the travel distance of vehicle A from the reference point to the previous point and the travel distance from the reference point to the current point, the higher the priority is set. This allows for more appropriate use of calculation of the travel amount using time-difference RTK, which is less likely to lose accuracy even when the travel distance is large.

[0049] Furthermore, according to the first embodiment, the shorter the elapsed time from the time of acquisition of past satellite data to the time of acquisition of current satellite data, i.e., the shorter the time difference, the higher the priority is set. In RTK positioning, the larger the time difference, the greater the influence of satellite clock error, ionospheric delay, tropospheric delay, and other factors, which can lead to a decrease in accuracy. Therefore, by giving a higher priority to combinations with smaller time differences, combinations with large time differences that are likely to result in a large decrease in accuracy are less likely to be used in calculating the amount of movement. This can further improve the accuracy of movement amount calculation.

[0050] Additionally, according to the first embodiment, the higher the quality of past satellite data, the higher the priority is set for a combination. Therefore, a combination that is more likely to improve the accuracy of movement amount calculation is more likely to be used for movement amount calculation. Therefore, the accuracy of movement amount calculation can be further improved.

[0051] Furthermore, according to the first embodiment, the priority is determined based on a plurality of indices, and a weight is set for each indices depending on the conditions. Therefore, the priority can be easily determined according to the traveling state of the vehicle A, and a combination more suitable for the situation can be used for calculating the movement amount.

[0052] Furthermore, according to the first embodiment, the weight of the distance difference index is set smaller as the traveling speed of vehicle A decreases. When the traveling speed is low, there is a higher possibility that the vehicle speed sensor will not be able to accurately detect the traveling speed due to slippage. This may occur, for example, in the case of a vehicle speed sensor that detects wheel speed. In such a case, by reducing the weight of the distance difference index, it may be possible to reduce the influence on the travel distance calculation based on an inaccurate traveling speed.

[0053] (Second embodiment) In the second embodiment, a modified example of the locator ECU 100 in the first embodiment will be described. In Figures 6 to 8, components denoted by the same reference numerals as those in the first embodiment are similar components and have similar functions and effects.

[0054] In the second embodiment, the locator ECU 100 acquires information from the map DB 20, the external sensor 30, and the internal sensor 40 in addition to the GNSS receiver 10 via an in-vehicle network.

[0055] The map DB 20 is a non-volatile memory that stores map data such as link data, node data, road shapes, and structures. The map data may be a three-dimensional map consisting of point clouds of road shapes and characteristic points of structures. The three-dimensional map may be generated based on captured images using REM (registered trademark). The map data may also include traffic regulation information, road construction information, weather information, traffic signal information, and the like. The map data stored in the map DB 20 may be updated periodically or as needed based on the latest information distributed from a server installed outside the vehicle A.

[0056] The external sensor 30 is an autonomous sensor that monitors the external environment of the vehicle A. The external sensor 30 may be, for example, a LIDAR (Light Detection and Ranging / Laser Imaging Detection and Ranging) that detects a point cloud of feature points of features, or may be a perimeter monitoring camera that captures an image of a predetermined range including the front of the vehicle A.

[0057] The internal sensor 40 is a sensor that detects physical quantities related to the internal environment of vehicle A. For example, the internal sensor 40 includes a vehicle speed sensor that detects the traveling speed of vehicle A and an IMU that detects the inertial force acting on vehicle A. The IMU is configured to be able to detect angular velocity and acceleration. The IMU may be, for example, a six-axis motion sensor that has a three-axis gyro sensor and a three-axis acceleration sensor.

[0058] In the second embodiment, the data acquisition unit 110 acquires, in addition to observation data, information necessary for executing a self-localization method other than time-difference RTK. For example, the data acquisition unit 110 acquires point cloud information from LiDAR and point cloud map data stored in the map DB 20 as information necessary for scan matching. Alternatively, the data acquisition unit 110 may acquire a captured image and map data from a camera.

[0059] The simple positioning unit 120 estimates the tentative self-location based on the data acquired by the data acquisition unit 110. The simple positioning unit 120 may estimate the tentative self-location based on scan matching between point cloud information and point cloud map data, matching between captured images and landmarks on a map, etc.

[0060] The buffer update unit 125 further stores the reliability of the estimated position (described later) as buffer data, or alternatively, the buffer update unit 125 may store the reliability of the tentative self-position.

[0061] The priority determination unit 130 further calculates a reliability index as an index for determining the priority. The reliability index is a parameter calculated based on the reliability of the estimated position of the past point. That is, in the second embodiment, the priority determination unit 130 calculates the priority based on four parameters.

[0062] The position estimation unit 150 calculates the position of the vehicle A based on the tentative own position estimated by the simple positioning unit 120 and the movement amount calculated by the movement amount calculation unit 140. At this time, the position estimation unit 150 further calculates the reliability of the estimated own position (position reliability). The position estimation unit 150 may calculate the normalized estimation error as the reliability index.

[0063] Next, a flow of a movement amount estimation method executed by the locator ECU 100 of the second embodiment through cooperation of functional blocks will be described below with reference to Fig. 7. For steps denoted by the same reference numerals as in the flow of Fig. 2, the description of the first embodiment is cited.

[0064] Once the satellite quality index is calculated in S150, the flow proceeds to S160, where the priority determination unit 130 calculates the position reliability.

[0065] The details of the process of S160 will be described with reference to the flowchart of FIG. 8. First, in S161, the estimation error at the past position is acquired. Next, in S162, the estimation error is floated. Specifically, a three-dimensional square root of the sum of squares is calculated based on the estimation errors in three directions. Then, in S163, the floated estimation error is normalized. This normalized estimation error is used as the position reliability. After the process of S163 is executed, the flow proceeds to S170 in FIG. 7. Note that in addition to the steps described in the first embodiment, S160 is included in an example of a "priority determination process."

[0066] According to the second embodiment, the higher the reliability of the estimated position at the past location, the higher the priority is set. Therefore, the combination that can increase the estimation accuracy of the current location based on the past location and the movement amount can be preferentially selected.

[0067] (Third embodiment) In the third embodiment, a modified example of the locator ECU 100 in the first embodiment will be described. In Fig. 9, components denoted by the same reference numerals as those in the first embodiment are similar components and have similar functions and effects.

[0068] In the locator ECU 100 of the third embodiment, the position estimation unit 150 estimates an estimated position by scan matching based on point cloud information, as in the second embodiment. In this case, the priority determination unit 130 can calculate position reliability as one of the priority parameters, as in the second embodiment. In this case, the priority determination unit 130 calculates a reliability index based on the entropy of the normal configuration in the point cloud used when calculating the estimated position.

[0069] More specifically, the priority determination unit 130 calculates the elevation angle component and azimuth angle component of the normal vector for each point in the point cloud. Then, the priority determination unit 130 discretizes each point into a two-dimensional grid of the elevation angle component and azimuth angle component. By discretizing all points, the priority determination unit 130 calculates the occurrence frequency for each grid, and calculates the occurrence probability for each grid by dividing the occurrence frequency by the number of points in the point cloud. If the number of grids is L and the occurrence probability for each grid is pi, the entropy H can be calculated using the following formula (4). The priority determination unit 130 determines the normalized value of the entropy as the reliability index.

[0070]

number

[0071] (Fourth embodiment) In the fourth embodiment, a modified example of the locator ECU 100 in the first embodiment will be described. In Figures 10 and 11, components denoted by the same reference numerals as those in the first embodiment are similar components and have similar functions and effects.

[0072] In the fourth embodiment, the locator ECU 100 acquires information from the GNSS receiver 10 as well as from the on-board communication device 50 via an on-board network. The on-board communication device 50 is a communication module mounted on the vehicle A. The on-board communication device 50 has at least a function of V2N (Vehicle to Cellular Network) communication in accordance with communication standards such as LTE (Long Term Evolution) and 5G. The on-board communication device 50 can receive correction information used in normal RTK from reference stations around the vehicle A. The on-board communication device 50 sequentially provides the acquired correction information to the locator ECU 100.

[0073] In the fourth embodiment, the position estimation unit 150 estimates its own position using normal RTK when normal RTK is executable. On the other hand, when normal RTK is not executable, the position estimation unit 150 estimates its own position based on time-difference RTK. For example, the position estimation unit 150 may determine that normal RTK is not executable when communication with the reference station is interrupted, when there is a large communication delay, when a malfunction occurs in the reference station, or when no reference station is nearby.

[0074] Next, a flow of a movement amount estimation method executed by the locator ECU 100 of the third embodiment through cooperation of functional blocks will be described below with reference to Fig. 11. For steps denoted by the same reference numerals as in the flows of Figs. 2 and 7, the description of the first embodiment is cited.

[0075] After the processing of S110, the flow proceeds to S115. In S115, the position estimation unit 150 determines whether normal RTK is executable. If it is determined that normal RTK is executable, the flow proceeds to S120. On the other hand, if it is determined that normal RTK is not executable, the flow proceeds to S116.

[0076] In S116, the position estimation unit 150 estimates the distance from the reference station to vehicle A based on normal RTK. After the processing of S116 is executed, the flow proceeds to S220. When the flow moves from S116 to S220, the position estimation unit 150 may execute an estimation of the current position based on the distance from the reference station to vehicle A in S220.

[0077] (Other embodiments) The disclosure in this specification is not limited to the exemplified embodiments. The disclosure encompasses the exemplified embodiments and modifications thereto by those skilled in the art. For example, the disclosure is not limited to the combinations of parts and / or elements shown in the embodiments. The disclosure can be implemented in various combinations. The disclosure can have additional parts that can be added to the embodiments. The disclosure encompasses the omission of parts and / or elements from the embodiments. The disclosure encompasses the substitution or combination of parts and / or elements between one embodiment and another embodiment. The disclosed technical scope is not limited to the description of the embodiments. Some disclosed technical scopes are defined by the claims, and should be interpreted as including all modifications within the meaning and scope equivalent to the claims.

[0078] In the above-described embodiment, the dedicated computer constituting the travel distance estimation device is the locator ECU 100. Alternatively, the dedicated computer constituting the travel distance estimation device may be a driving control ECU mounted on vehicle A, or an actuator ECU that individually controls the travel actuators of vehicle A. Alternatively, the dedicated computer constituting the travel distance estimation device may be a navigation ECU. Alternatively, the dedicated computer constituting the travel distance estimation device may be an HCU (Human Machine Interface (HMI) Control Unit) that controls the information display of an information display system. Alternatively, the dedicated computer constituting the travel distance estimation device may be a server device provided outside vehicle A. Alternatively, the dedicated computer constituting the travel distance estimation device may be configured to estimate the travel distance of a moving body other than vehicle A, such as a mobile robot.

[0079] In the above-described embodiment, locator ECU 100 outputs the current position of vehicle A estimated based on the calculated movement amount. Alternatively, locator ECU 100 may be configured to output the movement amount without estimating the current position. In this case, an output destination device such as in-vehicle device 90 may estimate the current position based on the movement amount. Furthermore, locator ECU 100 may output the satellite positioning result in addition to the movement amount.

[0080] In the above-described embodiment, the priority determination unit 130 calculates the priority as the sum of multiple indices. Alternatively, the priority determination unit 130 may calculate the priority as the product of multiple indices. Alternatively, the priority determination unit 130 may exclude from the combinations used in calculating the movement amount any combination in which any one of the multiple indices is low enough to fall within a specified unacceptable range.

[0081] In the above-described embodiment, the priority determination unit 130 calculates the satellite quality index based on the number of signals that did not experience a cycle slip. Alternatively, the priority determination unit 130 may set a higher satellite quality index for a satellite with a higher average carrier-to-noise ratio. Alternatively, the priority determination unit 130 may set the satellite quality index based on multiple parameters including the number of signals that did not experience a cycle slip and the average carrier-to-noise ratio.

[0082] In the above-described embodiment, the priority determination unit 130 calculates the reliability based on the estimation error of the past position or the entropy of the point cloud. Alternatively, in a configuration in which normal RTK is used for self-position estimation, the priority determination unit 130 may set a higher reliability the more satellites used in normal RTK. Alternatively, the priority determination unit 130 may set a higher reliability the higher the ratio obtained by the ratio test. Alternatively, the priority determination unit 130 may set the reliability based on the above-described multiple parameters.

[0083] In the first embodiment described above, the simple positioning unit 120 calculates the travel distance by dead reckoning. Alternatively, the simple positioning unit 120 may calculate the travel distance based on the results of satellite positioning such as time-difference RTK, which will be described later.

[0084] Locator ECU 100 may be a dedicated computer including at least one of a digital circuit and an analog circuit as a processor. Here, the digital circuit may be at least one of an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a system on a chip (SOC), a programmable gate array (PGA), and a complex programmable logic device (CPLD). Such a digital circuit may also include a memory that stores a program.

[0085] Locator ECU 100 may be provided by a single computer or a set of computer resources linked by a data communication device. For example, some of the functions provided by locator ECU 100 in the above-described embodiment may be realized by another ECU or a server device. [Explanation of symbols]

[0086] 10 GNSS receiver (receiver) 100 Locator ECU (movement amount estimation device), 102 Processor, 130 Priority determination unit, 140 Movement amount calculation unit, A Vehicle (moving body).

Claims

1. A movement amount estimation device that estimates a movement amount from a past position to a current position of a moving object (A) equipped with a receiver (10) that receives satellite data from a positioning satellite, using a time difference RTK, a priority determination unit (130) that determines a priority level for use in estimating the amount of movement for each combination of the past satellite data acquired by the receiver at a plurality of the past locations and the current satellite data acquired at the current location; a movement amount calculation unit (140) that calculates the relative movement amount from the past location to the current location based on the combination of a high priority range having a higher priority than a low priority range among the plurality of combinations; A movement amount estimation device comprising:

2. The movement amount estimation device according to claim 1 , wherein the priority determination unit assigns a higher priority to the combination having a larger difference between a movement distance of the moving body from a reference point to the past point and the movement distance from the reference point to the current point.

3. 3 . The movement amount estimation device according to claim 1 , wherein the priority determination unit assigns a higher priority to the combination of the satellite data for which the elapsed time from the time point at which the past satellite data was acquired to the time point at which the current satellite data was acquired is shorter.

4. The movement amount estimation device according to claim 1 , wherein the priority determination unit assigns a higher priority to a combination of satellite data having higher quality in the past.

5. The movement amount estimation device according to claim 1 , wherein the priority determination unit assigns a higher priority to the combination having a higher reliability of the estimated position at the past point.

6. The movement amount estimation device according to claim 1 , wherein the priority determination unit determines the priority based on a plurality of indices and sets a weight for each of the indices depending on a condition.

7. 7. The movement amount estimation device according to claim 6, wherein the priority determination unit includes in the index a difference between a movement distance of the moving body from a reference point to the past point and the movement distance from the reference point to the current point as a distance difference index, and sets the weight of the distance difference index to be smaller as the movement speed of the moving body is smaller.

8. A movement amount estimation method executed by a processor (102) for estimating a movement amount from a past position to a current position of a moving object (A) equipped with a receiver (10) that receives satellite data from a positioning satellite, using a time difference RTK, comprising: a priority determination step (S130, S140, S150, S160, S170, S180, S190, S200) for determining a priority level for use in estimating the amount of movement for each combination of the past satellite data acquired by the receiver at the multiple past locations and the current satellite data acquired at the current location; a movement amount calculation step (S210) of calculating the relative movement amount from the past location to the current location based on the combination in a high priority range having a higher priority than a low priority range among the plurality of combinations; A movement amount estimation method comprising:

9. The movement amount estimation method according to claim 8 , wherein in the priority determination step, the combination having a larger difference between the movement distance of the moving body from a reference point to the past point and the movement distance from the reference point to the current point is assigned a higher priority.

10. 10. The method according to claim 8, wherein in the priority determination step, the priority of the combination is increased for a shorter elapsed time from a time point when the satellite data was acquired in the past to a time point when the satellite data is acquired currently.

11. 11. The method of estimating a movement amount according to claim 8, wherein in the priority determination step, the combination having higher quality of the past satellite data is assigned a higher priority.

12. The method for estimating a movement amount according to claim 8 , wherein in the priority determination step, the combination having a higher reliability of the estimated position at the past point is assigned a higher priority.

13. 13. The method of claim 8, wherein in the priority determination step, the priority is determined based on a plurality of indexes, and a weight is set for each of the indexes depending on a condition.

14. 14. The method for estimating a movement amount according to claim 13, wherein in the priority determination step, the index includes a difference between a movement distance of the moving body from a reference point to the past point and the movement distance from the reference point to the current point as a distance difference index, and the weight of the distance difference index is set smaller as the movement speed of the moving body is smaller.

15. A movement amount estimation program including a plurality of instructions to be executed by a processor (102) to estimate a movement amount from a past position to a current position of a moving body (A) equipped with a receiver (10) that receives satellite data from a positioning satellite, using a time difference RTK, The instruction: a priority determination step (S130, S140, S150, S160, S170, S180, S190, S200) for determining a priority level for use in estimating the amount of movement for each combination of the past satellite data acquired by the receiver at a plurality of the past locations and the current satellite data acquired at the current location; a movement amount calculation step (S210) of calculating the relative movement amount from the past location to the current location based on the combination in a high priority range having a higher priority than a low priority range among the plurality of combinations; A movement estimation program including:

Citation Information

Patent Citations

  • navigator

    JP1997311045A

  • In-vehicle information terminal

    JP2004219228A

  • Positioning device, positioning method and program

    JP2011133381A

  • Vehicle control information creation device and vehicle control information creation method

    JP2017165358A

  • Sensor-assisted Improvement of Timing-Based Positioning Accuracy

    US20130166246A1