Signal processing device, signal processing method, and program
The described signal processing device addresses the challenge of unpredictable delays in cloud GNSS positioning by measuring and accounting for signal delays, enabling high real-time performance in positioning solutions.
Patent Information
- Application Number
- JP2023568831
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-12-21
- Publication Date
- 2025-05-27
- Estimated Expiration
- 2041-12-21
AI Technical Summary
Conventional cloud GNSS positioning architectures face challenges due to unpredictable signal propagation delays and fluctuations in communication networks, which affect the real-time performance of positioning solutions.
A signal processing device is connected to a positioning server via a communication network, equipped with a GNSS signal receiving unit, communication units, a relative positioning unit, a delay measurement unit, and an estimation unit. This device measures relative displacement and delay times to estimate the position of the device before the delay time, ensuring high real-time performance.
The solution enables the output of positioning solutions with high real-time performance, effectively addressing the issues of unpredictable delays and fluctuations in the cloud GNSS positioning architecture.
Smart Images

Figure 0007683741000001 
Figure 0007683741000002 
Figure 0007683741000003
Abstract
Description
Technical Field
[0001] The present invention relates to a signal processing apparatus, a signal processing method, and a program.
Background Art
[0002] Positioning using a Global Navigation Satellite Systems (GNSS) is utilized in a wide range of fields. An antenna that receives a navigation satellite signal (hereinafter referred to as a GNSS signal) (hereinafter referred to as a GNSS antenna) and a device that processes the GNSS signal and outputs a positioning solution by positioning arithmetic processing (hereinafter referred to as a GNSS receiver) generally receive the GNSS signal and are installed at the point where positioning is performed (that is, the reception position). On the other hand, a "cloud GNSS positioning architecture" that performs at least part of the positioning arithmetic processing on a server (hereinafter referred to as a positioning server) installed on a cloud / edge infrastructure via a communication network has also been studied.
Prior Art Documents
Non-Patent Documents
[0003]
Non-Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] However, in the conventional cloud GNSS positioning architecture, due to the signal propagation delay and its fluctuations that occur when communicating with the positioning server via the communication network, there are delay times and their fluctuations that cannot be quantitatively predicted in the output of the positioning solution on the terminal side. Regarding the fluctuations in the delay time, it is possible to reduce its magnitude by applying a jitter buffer or the like, but there is a trade-off in that an additional delay time depending on the set value of the buffer depth occurs.
[0005] One embodiment of the present invention has been made in view of the above points, and an object thereof is to output a positioning solution with high real-time performance.
Means for Solving the Problems
[0006] To achieve the above object, a signal processing device according to an embodiment is a signal processing device connected via a communication network to a positioning server that calculates a positioning solution from observation data of GNSS signals, the signal processing device including: a GNSS signal receiving unit configured to receive the GNSS signals and create the observation data; a first communication unit configured to transmit the observation data to the positioning server; a second communication unit configured to receive the positioning solution from the positioning server; a relative positioning unit configured to measure a relative displacement amount of the signal processing device at each predetermined measurement period; a delay measurement unit configured to measure a first delay time representing the time required for an output interface included in the signal processing device to output the positioning solution; and an estimation unit configured to estimate the position of the signal processing device at a time earlier than the first delay time from the current time based on the positioning solution, the relative displacement amount at each measurement period, the first delay time, and a second delay time representing the time from when the observation data is transmitted to the positioning server until the positioning solution is received.
Effects of the Invention
[0007] It is possible to output a positioning solution with high real-time performance.
Brief Description of the Drawings
[0008]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Mode for Carrying Out the Invention
[0009] Hereinafter, an embodiment of the present invention will be described.
[0010] <Cloud GNSS Positioning Architecture and Related Technologies> First, before describing this embodiment, the cloud GNSS positioning architecture and related technologies, which are the prior art, will be described.
[0011] In the cloud GNSS positioning architecture, a terminal device composed of a GNSS antenna, a GNSS receiver, etc. exists at the receiving position and is connected via a communication network to a positioning server installed on a cloud / edge infrastructure (hereinafter, both the cloud and the edge infrastructure will be collectively referred to as "cloud"). The terminal device receives GNSS signals with the GNSS antenna, and transmits the observation data (raw data) obtained after performing RF signal processing, baseband signal processing, etc. in the GNSS receiver to the positioning server. The positioning server performs positioning calculation processing using the observation data transmitted from the terminal device, and transmits the obtained positioning solution to the terminal device.
[0012] When transmitting observation data to a positioning server on the cloud, data formats such as the RTCM (Radio Technical Commission for Maritime Services) format are used, for example. Also, when transmitting a positioning solution from the positioning server, data formats such as the NMEA (National Marine Electronics Association) 0183 format are used, for example. As a protocol for transferring these data over an IP (Internet Protocol) network, for example, Ntrip (Networked Transport of RTCM via Internet Protocol) based on TCP / IP is used. In this case, an Ntrip Caster, which is a gateway device for the Ntrip protocol, is installed on the cloud, and session management including authentication and traffic control are performed.
[0013] The positioning solutions output by positioning calculation processing in the positioning server on the cloud include positioning solutions by code positioning methods using the codes of navigation satellite signals (i.e., code positioning solutions), and positioning solutions by carrier phase positioning methods including the RTK (Real Time Kinematic) method (i.e., carrier phase positioning solutions).
[0014] The cloud GNSS positioning architecture is characterized in that the positioning solution can be received without limitation not only at the receiving location but also at terminal devices at any point connected to the communication network. Therefore, the cloud GNSS positioning architecture is suitable for applications such as remote control of robotic tractors and applications such as GIS (Geographic Information System).
[0015] Furthermore, in the cloud GNSS positioning architecture, advanced positioning operation processing can be performed using abundant processing resources on the cloud. In addition, there is a possibility of realizing new positioning operation processing that could not be achieved with conventional single-terminal device positioning, such as a crowdsourcing approach that collects data from multiple terminal devices for collaborative processing, and processing that utilizes map spatial information such as 3D map data.
[0016] Also, in the cloud GNSS positioning architecture, since part of the functions of the GNSS receiver on the terminal device side can be simplified, there is an advantage that miniaturization, cost reduction, power saving, etc. of the terminal device can be realized.
[0017] On the other hand, as described above, in the cloud GNSS positioning architecture, due to the signal propagation delay and its fluctuation that occur when communicating with the positioning server via the communication network, a delay time and its fluctuation that cannot be quantitatively predicted occur in the output of the positioning solution on the terminal device side. Regarding the fluctuation of the delay time, although it is possible to reduce its magnitude by applying a jitter buffer or the like, there is a trade-off that an additional delay time depending on the set value of the buffer depth occurs.
[0018] The above output delay (time lag) of the positioning solution can be a factor causing performance degradation in applications that require real-time performance (for example, autonomous control in an autonomous vehicle, vehicle body control in ADAS (Advanced Driver-Assistance Systems)). For example, a vehicle traveling at 80 km / h moves approximately 2.2 m in 100 ms. Therefore, assuming that the delay time including the time required for positioning operation processing in the positioning server on the cloud is 300 ms, when the control system performing autonomous control or vehicle body control receives the positioning solution, it has moved approximately 6.6 m in the traveling direction, which will affect various feedback controls.
[0019] Therefore, in the following, the cloud GNSS positioning system 1 implemented with the cloud GNSS positioning architecture will be taken as an example to explain the case of eliminating the propagation delay of signals occurring in the communication network and the output delay of the positioning solution caused by the fluctuation thereof, and outputting a highly real-time positioning solution.
[0020] <Overall configuration example of the cloud GNSS positioning system 1> An overall configuration example of the cloud GNSS positioning system 1 according to this embodiment is shown in FIG. 1. As shown in FIG. 1, the cloud GNSS positioning system 1 according to this embodiment includes a terminal device 10 and a positioning server 20. Further, the terminal device 10 and the positioning server 20 are communicably connected via a communication network 30 including the Internet or the like.
[0021] The terminal device 10 is various devices, equipment, software, etc. that function as a terminal device of the cloud GNSS positioning architecture. Note that the terminal device 10 may be fixedly installed at a certain reception position, but in this embodiment, it is mainly assumed that the terminal device 10 is mounted on a moving body such as a vehicle, and the terminal device 10 moves simultaneously with the movement of the moving body.
[0022] The positioning server 20 is various devices, equipment, software, etc. that function as a positioning server of the cloud GNSS positioning architecture. The positioning server 20 includes at least a positioning engine that executes positioning calculation processing using the observation data transmitted from the terminal device 10.
[0023] In the example shown in FIG. 1, only one terminal device 10 is illustrated, but there may be a plurality of terminal devices 10. Further, the positioning server 20 may be, for example, a distributed system composed of a plurality of devices.
[0024] <Configuration example of the terminal device 10> A configuration example of the terminal device 10 according to this embodiment is shown in FIG. 2. As shown in FIG. 2, the terminal device 10 according to this embodiment includes a GNSS signal receiving unit 101, a relative positioning unit 102, a time synchronization unit 103, a processing delay measurement unit 104, a position estimation unit 105, a communication unit 106, and an output interface unit 107. Further, the terminal device 10 according to this embodiment includes a GNSS antenna 108 that receives GNSS signals.
[0025] The GNSS signal receiving unit 101 receives GNSS signals from the GNSS antenna 108, performs RF signal processing, baseband signal processing, etc., and outputs observation data. The GNSS signal receiving unit 101 is realized by, for example, a GNSS receiver.
[0026] The relative positioning unit 102 measures the relative displacement amount of the terminal device 10. The relative positioning unit 102 is realized by, for example, a 6-axis (3-axis acceleration and 3-axis angular velocity) or 9-axis (3-axis acceleration, 3-axis angular velocity, and 3-axis orientation) inertial navigation device (Inertial Measurement Unit: IMU) realized by a gyro sensor (angular velocity sensor), an acceleration sensor, a magnetic compass, etc., an encoder (Odometry) that measures the travel distance from the rotation speed of the axle, a VO (Visual Odometry) that measures the relative displacement amount from the image data of the camera, an LO (LiDAR Odometry) that measures the relative displacement from the point cloud data of the LiDAR, etc. Note that the relative positioning unit 102 may be realized by any one of these alone, or may be realized by a combination of a plurality of them.
[0027] The time synchronization unit 103 distributes time information synchronized with the absolute time to at least the other units (that is, the relative positioning unit 102, the processing delay measurement unit 104, the position estimation unit 105, and the output interface unit 107). Here, a detailed configuration example of the time synchronization unit 103 according to the present embodiment is shown in FIG. 3. As shown in FIG. 3, the time synchronization unit 103 according to the present embodiment includes a GNSS receiver unit 111 for synchronizing with the absolute time, a clock unit 112 for generating time information synchronized with the absolute time, a clock signal generation unit 113 for generating a clock signal using a crystal, an atomic clock, etc. as an oscillator, and a time information distribution unit 114 for distributing the time information to at least the other units.
[0028] Here, as the absolute time, for example, UTC (Coordinated Universal Time) is used. Also, in the time information distribution unit 114, for example, synchronization signals such as PPS (Pulse Per Second), NTP (Network Time Protocol), and PTP (Precision Time Protocol) are used for the distribution of time information. At this time, the time information distribution unit 114 may simultaneously distribute a clock signal by a propagation means of a physical layer such as Synchronous Ethernet (;SyncE) together with the time information.
[0029] Also, the GNSS receiver unit 111 is realized by, for example, a GNSS receiver, and this GNSS receiver may be shared with the GNSS signal receiving unit 101. Further, even when the synchronization with the GNSS signal is interrupted, the clock unit 112 can perform a self-running (holdover) operation for a certain period of time by the clock signal supplied from the clock signal generation unit 113 in the time synchronization unit 103.
[0030] Thereby, the time synchronization unit 103 can provide high-precision time synchronization and frequency synchronization of the clock signal to the other units. Note that the accuracy of the time synchronization provided by the time synchronization unit 103 is assumed to be about several microseconds or more.
[0031] The processing delay measurement unit 104 measures the processing time (time lag) required from the time when the information necessary for self-position estimation is input in the position estimation unit 105 until the time when the self-position estimated in the output interface unit 107 is output. As a method for measuring such processing time, for example, a method of counting the pulse signal of the clock signal distributed from the time synchronization unit 103, a method of stamping a time stamp based on the time information distributed from the time synchronization unit 103, etc. are used. Note that the accuracy of the clock signal and the time stamp used here is maintained by the time synchronization unit 103.
[0032] The position estimation unit 105 estimates the self-position (that is, the position of the terminal device 10) at an arbitrary time based on the positioning solution (GNSS positioning solution) received by the communication unit 106 from the positioning server 20, the relative displacement amount measured by the relative positioning unit 102, and the processing time measured by the processing delay measurement unit 104. As the position estimation unit 105, for example, an Extended Kalman Filter (EKF), a particle filter (particle filter, Monte Carlo filter), etc. are used, and the self-position is estimated by the processing executed by the CPU (Central Processing Unit).
[0033] The communication unit 106 transmits the observation data to the positioning server 20 or receives the positioning solution from the positioning server 20. The communication unit 106 is realized by a communication interface of a standard such as mobile communication such as LTE (Long Term Evolution), WiFi, LAN (Local Area Network), etc., using a communication protocol such as Ntrip.
[0034] The output interface unit 107 outputs the positioning solution representing the self-position estimated by the position estimation unit 105 to a predetermined output destination. The output interface unit 107 is realized by, for example, a communication interface of a machine such as serial communication, LAN, USB (Universal Serial Bus), etc. Note that, as the data format of the positioning solution (self-position) output by the output interface unit 107, for example, NMEA0183 or the like is used.
[0035] <Operation example of the terminal device 10> Hereinafter, an operation example of the terminal device 10 according to the present embodiment will be described with reference to FIG. 4. Note that steps S101 to S107 in FIG. 4 are repeatedly executed, for example, at predetermined time intervals.
[0036] Step S101: The GNSS signal receiving unit 101 receives a GNSS signal from the GNSS antenna 108, performs RF signal processing, baseband signal processing, etc., and outputs observation data. At this time, when the reception time of the GNSS signal is t 1 , the GNSS signal receiving unit 101 measures the reception time t 1 in a state where the time bias of the GNSS receiver is corrected (that is, in a state where the GNSS receiver is synchronized with the absolute time). This reception time t 1 is included in the observation data generated by the GNSS signal receiving unit 101 and is not affected by the propagation delay that occurs in the communication network during the subsequent communication process between the terminal device 10 and the positioning server 20.
[0037] Step S102: The communication unit 106 transmits the observation data output from the GNSS signal receiving unit 101 to the positioning server 20. Thereby, a positioning solution is calculated from the observation data by the positioning engine of the positioning server 20, and the positioning solution is transmitted to the terminal device 10. Note that the positioning solution includes the reception time t 1 of the GNSS signal.
[0038] Step S103: On the other hand, the relative positioning unit 102 uses the reception time t 1The relative displacement amount of the terminal device 10 from 2 (>t 1 ) is sequentially measured and sequentially output to the position estimation unit 105. Here, the relative positioning unit 102 is highly accurately synchronized with the absolute time by the time information distributed from the time synchronization unit 103, and the relative displacement amount is measured at each measurement time t
[0039] For example, when the measurement period of the relative displacement amount is Δt 2 , for a certain integer N, t 2 =t 1 +Δt 2 , t 1 +2Δt 2 , t 1 +3Δt 2 , ···, t 1 +NΔt 2 . However, when the time at which the terminal device 10 receives the positioning solution from the positioning server 20 is t 3 , t 1 +NΔt 2 ≦t 3 . That is, the relative displacement amount is measured every measurement period Δt 1 from time t 3 to time t 2 by the relative positioning unit 102.
[0040] The relative displacement amount measured at each of the above measurement times t 2 is sequentially output to the position estimation unit 105. Note that the maximum value of the time difference between t 2 and t 1 (that is, t 3 -t 1 ) corresponds to the delay time from when the terminal device 10 transmits the observation data to the positioning server 20 until the terminal device 10 receives the positioning solution for the observation data. This delay time is assumed to be on the order of, for example, several hundred milliseconds.
[0041] Step S104: The communication unit 106 receives the positioning solution from the positioning server 20. Hereinafter, the time t 3 at which the positioning solution is received is also referred to as the current time.
[0042] Step S105: The processing delay measurement unit 104 outputs the processing time required from the time when the information necessary for self-position estimation is input in the position estimation unit 105 until the self-position (positioning solution) estimated in the output interface unit 107 is output (hereinafter referred to as the processing delay time). Here, the processing delay measurement unit 104 is highly synchronized with the absolute time by the time information distributed from the time synchronization unit 103, measures the processing delay time with high precision (for example, a precision of about 10 microseconds), and outputs the measured value Δt to the position estimation unit 105. The processing delay time Δt may output, for example, the value measured at the current time, or the average value of the values measured in the past. Or, for example, if the variation range of each processing delay time in the repetition of steps S101 to S107 is small (specifically, if the variation range is smaller than a certain minute threshold value), the value measured once may be output as a constant. Note that the processing delay time Δt is assumed to be, for example, on the order of several hundred microseconds to several tens of milliseconds.
[0043] Step S106: The position estimation unit 105 uses the positioning solution at the reception time t of the GNSS signal received by the communication unit 106 from the positioning server 20, 1 the relative displacement amounts measured at each measurement time t by the relative positioning unit 102, 2 and the processing delay time Δt measured by the processing delay measurement unit 104, and estimates the self-position at the time t 3 that is Δt ahead of the current time t (that is, the assumed time when the positioning solution is output by the output interface unit 107) t 4 = t 3 + Δt. Here, an example of estimating the self-position is shown in FIG. 5. As shown in FIG. 5, the position estimation unit 105 uses the displacement amounts at each time t from time t 1 to time t 3 and the positioning solution at time t 2 to estimate the self-position at time t 1 that is Δt ahead, which is t 4 .
[0044] Step S107: The output interface unit 107 outputs the positioning solution representing the self-position estimated by the position estimation unit 105 to a predetermined output destination. In this way, by outputting the self-position (positioning solution) after Δt time estimated by the position estimation unit 105, a highly real-time and highly accurate positioning solution (that is, a positioning solution close to the actual position of the moving body at the current time) can be obtained in the moving body.
[0045] Note that, for example, since it is assumed that the GNSS positioning solution is received at a certain frequency (for example, 10 Hz), it is assumed that the above steps S101 to S107 are repeatedly executed every 100 milliseconds. Thereby, a highly real-time and highly accurate positioning solution is continuously output.
[0046] <Supplementary Note> In the relative positioning unit 102, the relative displacement amount is measured at a frequency higher than the positioning solution (for example, 100 Hz) (that is, for example, Δt 2 is 10 milliseconds). The gyro sensors, which are the core components of the IMU that realizes the relative positioning unit 102, include different types such as MEMS gyroscopes, interferometric fiber optic gyroscopes, and ring laser gyroscopes with different accuracies. However, as described above, the maximum value of the time difference between time t 2 and time t 1 is equivalent to the turnaround time (TAT) of the communication network 30, which is at most several hundred milliseconds. Therefore, it is assumed that the cumulative error of the gyro sensor within this period (TAT) is sufficiently small compared to the accuracy (several centimeters) expected by the GNSS positioning solution using carrier phase positioning, and a low-cost MEMS gyro can be used.
[0047] Also, by measuring and outputting the relative displacement amount with high accuracy in the relative positioning unit 102 and using these relative displacement amounts in the position estimation unit 105, the positioning solution can be estimated and output at a high frequency. Since the terminal device 10 according to the present embodiment can output a highly real-time positioning solution at a high frequency, more refined control can be realized in devices that utilize the positioning result, such as an autonomous driving control device or a driving support system.
[0048] Note that the positioning server 20 may be set at any location other than the cloud / edge infrastructure. For example, when positioning the vehicle, it may be installed on an in-vehicle ECU (Electronic Control Unit).
[0049] In addition, although the delay time of the communication network 30 is considered in this embodiment, this embodiment can also be applied to any case where a delay occurs in the output of the positioning solution due to factors other than the delay of the communication network 30.
[0050] As described in detail above, according to this embodiment, in the cloud GNSS positioning system 1 realized by the cloud GNSS positioning architecture, regardless of the magnitude of the propagation delay time occurring in the communication network 30, high real-time performance can be achieved at the receiving position (that is, the position of the terminal device 10), and highly accurate self-position estimation can be realized.
[0051] The present invention is not limited to the specifically disclosed above embodiments, and various modifications, changes, combinations with known technologies, etc. are possible without departing from the description of the claims.
Description of Reference Numerals
[0052] 1 Cloud GNSS positioning system 10 Terminal device 20 Positioning server 30 Communication network 101 GNSS signal receiving unit 102 Relative positioning unit 103 Time synchronization unit 104 Processing delay measurement unit 105 Position estimation unit 106 Communication unit 107 Output interface unit 108 GNSS antenna 111 GNSS receiver unit 112 Clock unit 113 Clock signal generation unit 114 Time information distribution unit
Claims
1. A signal processing device connected via a communication network to a positioning server that calculates a positioning solution from observation data of GNSS signals, a GNSS signal receiving unit configured to receive the GNSS signals and create the observation data; a first communication unit configured to transmit the observation data to the positioning server; a second communication unit configured to receive the positioning solution at the reception time of the GNSS signals from the positioning server; a relative positioning unit configured to measure a relative displacement amount of the signal processing device for each predetermined measurement period from the reception time of the GNSS signals to the current time; a delay measurement unit configured to measure, with reference to the current time, a first delay time representing the time required for an output interface included in the signal processing device to output the positioning solution; an estimation unit configured to estimate the position of the signal processing device at a time earlier than the first delay time from the current time based on the positioning solution, the relative displacement amount for each measurement period, the first delay time, and a second delay time representing the time from transmitting the observation data to the positioning server until receiving the positioning solution; A signal processing device having the above.
2. The relative positioning unit, is configured to measure the relative displacement amount during the period from the reception time of the GNSS signals to receiving the positioning solution for each measurement period, according to the signal processing device of Claim 1.
3. The signal processing device according to Claim 1 or 2, further comprising a time synchronization unit configured to distribute at least time information synchronized with the absolute time to the relative positioning unit, the delay measurement unit, and the estimation unit.
4. The signal processing device according to any one of Claims 1 to 3, further comprising an output unit configured to output the estimated position to a predetermined output destination by the output interface.
5. The estimation unit, is configured to estimate the position of the signal processing device at a time earlier than the first delay time from the current time by an extended Kalman filter or a particle filter, according to the signal processing device of any one of Claims 1 to 4.
6. The signal processing device according to any one of Claims 1 to 5, wherein the signal processing device is mounted on a moving body including a vehicle.
7. A signal processing device connected via a communication network to a positioning server that calculates a positioning solution from observation data of GNSS signals performs a GNSS signal reception procedure for receiving the GNSS signals and creating the observation data, a first communication procedure for transmitting the observation data to the positioning server, a second communication procedure for receiving the positioning solution at the reception time of the GNSS signals from the positioning server, a relative positioning procedure for measuring a relative displacement amount of the signal processing device at each of predetermined measurement periods from the reception time of the GNSS signals to the current time, a delay measurement procedure for measuring, with reference to the current time, a first delay time representing the time required for an output interface included in the signal processing device to output the positioning solution, an estimation procedure for estimating the position of the signal processing device at a time earlier than the current time by the first delay time based on the positioning solution, the relative displacement amount for each measurement period, the first delay time, and a second delay time representing the time from transmitting the observation data to the positioning server until receiving the positioning solution, and executes a signal processing method. **Claim 8** A program that causes a computer to function as the signal processing device according to any one of claims 1 to 6.
Citation Information
Patent Citations
Method of verifying satellite terminal receiver, and verifying system
JP2005017016A
Positioning device, positioning method and positioning program
JP2006258461A
Optimized Location-Aided Beamforming
JP2021515205A
Mobile-body position detecting apparatus, mobile-body position detecting method
WO2016185659A1
Position measuring device, position measuring method, and program
WO2021220416A1