CoDRIVE – Delivering high accuracy, ubiquitous positioning through combined radio navigation and inertial sensing technologies

The CoDRIVE solution builds on R&D in the development of connected and autonomous vehicles (CAVs). The mainstay of the system is a low-cost GNSS receiver integrated with a MEMS grade IMU powered with CoDRIVE algorithms and high precision data processing software. The solution integrates RFID (radio-frequency identification) localisation information derived from tags installed in the roads around the University of Nottingham. This aids the positioning solution by correcting the long-term drift of inertial navigation technology in the absence of GNSS. The solution is informed of obscuration of GNSS through city models of skyview and elevation masks derived from 360-degree photography. The results show that predictive intelligence of the denial of GNSS and RFID aiding realises significant benefits compared to the inertial only solution. According to the validation, inertial only solutions drift over time, with an overall RMS accuracy over a 300 metres section of GNSS outage of 10 to 20 metres. After deploying the RFID tags on the road, experiments show that the RFID aided algorithm is able to constrain the maximum error to within 3.76 metres, and with 93.9% of points constrained to 2 metres accuracy overall.


Introduction
Making transport and mobility more intelligent has been a long-term goal since the 60s (e.g., Electronic Route Guidance System developed by the US Federal Highway Association) and 70s (e.g., the Japanese Comprehensive Automobile Traffic Control System) [1] and through the implementation of cooperative intelligent transport systems (C-ITS) [2], [3]. According to ERTICO 1 , intelligent mobility offers the opportunity for "fully informed people, zero accidents, zero delays, with reduced impact on the environment, where services are affordable and seamless, with privacy respected and security provided".
Certainly, the motivation for more intelligent mobility should be there. Estimations of the cost of road congestion in 2013 were €93.8 billion for the US economy (0.74% of the GDP), €25.2 billion for the Germany economy (0.92% of the GDP), €17 billion for France (0.82% of the GDP) and €15.5 billion for the UK (0.81% of the GDP) [4]. In terms of the cost to human lives, there are over 1.35 million road traffic deaths globally, with millions more sustaining serious injuries and living with long-term adverse health consequences [5]. Concerning the environment, almost 23% of CO2 gases produced in By contrast, GNSS is a mature technology, and despite its vulnerabilities, various strategies exist for the mitigation of inaccuracies in positioning resulting from clock and ephemeris errors, ionospheric and atmospheric effects, code phase synchronisation and ambiguity resolution of the carrier phase signals etc. These include the real-time kinematic (RTK) and precise point positioning (PPP) algorithms, satellite and ground based augmentation systems (SBAS and GBAS), receiver autonomous integrity monitoring (RAIM) and its variants (e.g. Advanced-RAIM [A-RAIM], Carrier-Phase RAIM [C-RAIM]). In addition, receiver design, configuration and signal processing techniques all have a direct impact on positioning accuracy.
Furthermore, GNSS is a single component in the radio navigation spectrum, which in Europe is changing at a very fast pace, and will continue to do so in the short and medium term. Therefore, the technical contribution GNSS is able to make to intelligent mobility is likely to be significantly more important as new signals and infrastructure come on line and the advanced capabilities of the future satellite/radio navigation will make possible new applications and allow traditional operations in more demanding situations than before [24]. This paper will present methods to provide a radio navigation positioning and localisation solution to road vehicles that is more resilient through advanced algorithms that incorporate signals of opportunity from the existing Wi-Fi, Bluetooth, 4G and DSRC, to future time of arrival messages from 5G with the concept of cooperative positioning between vehicles. In addition, radio navigation positioning is shown to be robust in challenging environments through predictive intelligence of where and when GNSS outages will occur, alongside supplementary radio navigation devices in the form of radio frequency identification technology and novel cooperative positioning methods.
The work undertaken is part of CoDRIVE (Cooperative Development of a Roadmap for Initial V2X Implementation in Europe) an ESA funded Demonstration Project that aims to build an intelligent mobility service platform for connected vehicles with any level of autonomy to start the initiatives of transitioning towards the future Mobility-as-a-Service (MaaS). CoDRIVE is a collaborative project between UbiPos UK Ltd, University of Nottingham Geospatial Institute (NGI), Low Level Earth Observation Ltd (LLEO) and Chang'an Motors UK Ltd.

Materials and Methods
The data acquisition and testing of the procedures and equipment took place around the city of Nottingham in the United Kingdom and at the University of Nottingham's Jubilee Campus, where UbiPos and the NGI are based. NGI has unique testbed facilities for acquiring high precision kinematic data for the driving environment using its dedicated integrated positioning vehicle, which allows repeatable kinematic experiments in real-life conditions.
The customised Mercedes Vito van has a fixed steel frame on the top with six surveyed positions for the installation of GNSS receivers, internal chambers for navigation-grade IMUs (Inertial Measurement Units) including a SPAN system and Applanix POS-RS, an odometer, 2 industrial computers and operator desk space inside. With such equipment and using the in-house integration algorithms and software, the vehicle is capable of providing real-time or post-processed trajectories with centimetre level accuracies in a variety of environments, including GNSS denied areas and deep urban canyons.
Alongside these capabilities, the vehicle is equipped to test the signal reception of the cell phone network and different communication satellites. The cell network provides Network-RTK corrections to the on-board GNSS receivers and therefore knowledge of the cell coverage and strength impacts on the accuracy of the positioning recorded in real-time and in post-processing. The vehicle is also equipped with a Samsung Gear camera capable of 4K 360-degree video capture life in high definition of the driving environment, through which the vehicle is travelling, for the construction of the geospatial database of sky-view elevation masks. The procedure for deriving the sky-view elevation masks is as follows: a. Removal of imagery below the horizon and adjustment for the camera lever arm offsets; b. Edge detection using the Canny edge detector, a multi-stage algorithm as follows: 1. Noise reduction: since edge detection is susceptible to noise in the image, the first step is to remove the noise with a 5 × 5 Gaussian filter. 2. Find the intensity gradient of the image: the smoothed image is then filtered with a Sobel kernel in both the horizontal and vertical directions to produce the first derivative in the horizontal (Gx) and vertical (Gy) directions. From these two images, it is possible to find the edge gradient and direction for each pixel as follows: Where G is the edge gradient Where is the gradient direction, and is always perpendicular to the edges. It is rounded to one of four angles representing vertical, horizontal and two diagonal directions. For the proposed system, the gradient direction is in the vertical direction.
3. Non-maximum suppression: after deriving the gradient magnitude and direction, a full scan of the image is performed to remove any unwanted pixels, which may not constitute an edge. For this, each pixel is compared to the local maximum in its neighbourhood in the gradient direction. c. Convert to binary and fill holes in image by changing connected background pixels (0s) to foreground pixels (1s), stopping when it reaches object boundaries.
e. Rotation and orientation so that north is at 0-degree in the polar coordinate image and calculation of the skyview percentage in each image; f. Segmentation of the image into 5-degree of azimuth and derivation of elevation masks for each segment at 5-degree intervals.
g. The segmented images then undergo a reverse polar coordinate transformation to Cartesian (x, y) image space and saved as an 18 × 72 cell ASCII file, with values of 1 representing open sky and 0 areas where the sky is obscured.
In the next stage of processing, the skyview percentage for the location of each image and the number of visible GPS satellites are incorporated into the spatial database where the 18 × 72 cell ASCII files are stored as worksheets, with each worksheet identified by a unique identifier attached to the image coordinates.
The final component of the SQL database are 18 × 72 cell worksheets containing the GPS satellites' PRN identifier and associated azimuth/elevation look angles (segmented at 5-degree intervals as per the elevation mask files). Satellite azimuths and elevations are calculated from information extracted from the Two-Line Element Set (TLES) describing the satellites' orbits, available at www.celestrak.com. The TLES data contain the following information required for deriving each satellite's angle of azimuth and elevation at a given point in time. The procedures for deriving a satellite's azimuth and elevation angles are those outlined in [25] and [26], which provide the Local Sidereal Time (LST) at the time of the GNSS survey and the look angles respectively.
The SQL database is hosted on web server via the QGIS open source geographical information system software that interfaces with the OpenGeo Suite 2 , which includes GeoServer, PostGIS, and GeoWebCache and GeoExplorer functionalities. These provide a spatially enabled object-relational database, a software server for loading and sharing geospatial data, a tile cache server that accelerates the serving of maps and a web application for composing, styling, and publishing maps. This makes the functionality accessible to smartphone users. This forms part of the NGI's R&D into the availability of raw GPS measurements on Android devices, and the performance of such devices against predicted satellite visibility forms part of the CoDRIVE testing.
For the purpose of this experiment, satellite look angles were calculated for 30-minute intervals and for one location centred in central Nottingham. With regard to the look angles, comparisons were made between azimuths and elevations for two locations ~112km (70 miles apart) -approximately the maximum distance a vehicle would travel in one hour on the UK's motorway network and for the same location at a one-hour interval to investigate the effects of location and time on satellite look angles. The accurate and reliable identification of areas of persistent satellite obscuration is a key component of the CoDRIVE augmentation strategy designed to aid radio navigation, as described below.
The testing procedures in this study builds on those outlined in [27] and [28]. These investigations confirmed firstly, that communication links via cellular networks alone did not offer the required integrity, continuity and validity for V2X (vehicle to everything) communication, particularly for N-RTK corrections in rural environments. Secondly, even for high-end geodetic survey GNSS receivers, multipath and signal obscuration are impediments for CAV operations using GNSS and therefore a requirement exists for aiding/augmenting GNSS positioning either through integration of hardware, algorithmic or software development. To that end, the CoDRIVE system here incorporates these requirements in the following ways.
Hardware: As part of the CoDRIVE project and arising from previous collaborative CAV R&D, UbiPos and NGI have undertaken development of a 2 nd generation low cost positioning and communication on-board unit (Figure 1.), configured as follows:  Computing & processing -LAN9514 USB and Ethernet controller chip to add wired Ethernet functionality; -Common interfaces with personal computers (USB, HDMI, Ethernet, coaxial and USB Type-C power connector).

 Communications & Connectivity
-Quectel EC20 cellular module capable of high-speed mobile data connection.
-Multiple frequency for worldwide operation, LTE data transfer speed up to 100Mbps.
-Module operates on the 5.9GHz frequency band with IEEE 802.11p protocol -Supports various V2X standards -DSRC in United States and ETSI ITS-G5 in Europe.  Positioning & Navigation -Utilises GNSS in combination with dead reckoning from a low cost IMU -Chipset capable of concurrent reception of all major GNSS constellations.
-Produces raw measurement data for additional processing for enhanced positioning accuracy via N-RTK algorithms. Algorithms: The advanced CoDRIVE algorithm serves two purposes: 1) to identify an mitigate multipath effects; 2) to enable 'smart switch' procedures whereby either anticipates or detects failures in GNSS positioning or in the provision of N-RTK corrections and switches to other positioning/correction data sources. The architecture design is a strap-down inertial navigation system (INS) for implementation in GNSS denied areas.
Multipath mitigation is based on the pseudo-range and Doppler multipath error characteristics through either: 1) Consistency checking methods for satellite deletion i.e. RAIM (receiver autonomous integrity monitoring), the predicted residuals from motion and/or clock models and external aiding (.e.g. RFID, obscuration / elevation masks). 2) Stochastic (weighted) models based on the observed satellite elevations, SNR (signal to noise ratio) and Kalman filter fusion of pseudo-range and Doppler observables. Software: Tasked with performing three major functions: 1) System management including software initialisation according to configuration files containing user preferences and protocols; 2) Communication initialising by selecting the appropriate system (e.g. Cellular, DSRC, CAN bus, Wi-Fi, Bluetooth); 3) Positioning and localisation, where the on-board processors communicate with the sensors and process the data according to the CoDRIVE algorithmic procedures.
A pre-processing function in the algorithm filters out the coarse measurements before moving into higher-level processing. The CoDRIVE localisation solution utilises single frequency GNSS measurements including L1C, L1L, L1D and L1S, with L1 pseudo-range, carrier phase, Doppler and signal strength being the input. The high precision GNSS localisation is based on carrier phase measurements, with ambiguities resolved by applying the LAMBDA (Least-squares Ambiguity Decorrelation Adjustment) algorithm. The GNSS/INS integration procedure is via a loose coupling Kalman filter.
RFID aiding: For GNSS denied areas (e.g. tunnels, indoors or under dense vegetation), CoDRIVE investigates the use of RFID tags. For this test, a section of the Jubilee Campus car park was designated as a simulated underground car park impenetrable to GNSS signals, where for the purpose of the tests the receiver equipment would be switched off. In the tests, two types of RFID tags are deployed, the Omni ID and UHF tag.
The Omni IDs were installed into eight parking bays, and the UHF tags were installed on the road. The choice of the different types of tag for the road and parking bay was made based on the fact that the UHF tag is cheaper, making it a more cost effective solution to be widely used on the road. The eight parking bay tags were installed in the centre of the parking bay. Twenty-three road tags were installed along the test route at 15-metre intervals, with the road and bay tag coordinates precisely determined by a Leica GS10 GNSS RTK system and stored in a geospatial database alongside ancillary information as shown in Table 1. For this test, the configuration of NGI test vehicle is as shown in Figure 2. The objectives were twofold: 1) to assess the performance of the CoDRIVE OBU performance against a Javad Triumph LS geodetic GNSS receiver; 2) to investigate the effectiveness of the RFID aided navigation. In Figure 6, the GNSS antenna is marked in the green box, with the signal being split and fed to the CoDRIVE OBU and Javad GNSS receivers to produce the same trajectory. The Figure 2. Configuration of the NGI vehicle for CoDRIVE / RFID testing. system contains two IMUs (Applanix POS-RS and the CoDRIVE OBU) co-located within the vehicle as marked in the brown box and share the same lever arm parameters. For the RFID sensor system, its antenna, as marked in the yellow box, is installed on the van and facing towards the ground at an angle of 45 degrees, with the RFID tags marked in blue circles.
Once the vehicle passes over the each RFID, the antenna detects the signal and provides the aiding information to the CoDRIVE algorithm according to the following parameters:  Ground centre point (GCP), indicates the centre of RFID scan area with the highest signal strength;  Lever arms: in the GNSS/INS/RFID localisation system, the sensor lever arms need to be measured are the GNSS-to-IMU lever arm, RFID-to-IMU lever arm and GCP-to-IMU lever arm;  Detection range: i.e. the maximum range to detect RFID tags and related to the RFID signal transmission power. For this experiment, it was set at 15dBm scan power to achieve a 2m detection range.  Pitch angle : the pitch of the antenna represents the angle between the perpendicular line and the vertical line;  Antenna-height ℎ: denotes the height between the centre of the antenna to the ground;  Antenna-detection angle : i.e. the angles within which the antenna is able to detect the tags; in this case, the vertical detection angle ( ) is 60-degrees and horizontal detection angle ( ℎ) is 90-degrees;  Scan range : i.e. the length of the scan area that is in RFID coverage.  Scan width : i.e. the width of scan area. The scan range, width, antenna-height and pitch-angle have to comply as follows: Where the pitch angle is set as 45-degrees and the antenna height ℎ is 45cm to the ground, the scan range is 155cm, and the scan width is 90cm, giving a 1m scan range to satisfy the lane-level accuracy requirements.
The data acquisition and testing strategies undertaken were in two formats: 1) Open road driving in various environments ranging from urban roads with unobstructed views of the sky to deep urban canyons with total obscuration of the sky, rural roads, and motorways. This allowed the testing of the CoDRIVE OBU positioning accuracy against the reference trajectory derived from the NGI Javad/POS-RS system, while also providing an initial set of parameters before entering the simulated GNSS denied area in terms of the initial position and velocity, optimal alignment of the INS is well aligned, and calibration of the IMU biases.
2) Entering the simulated underground parking lot, which covered a distance of 300m from the parking lot entrance to the destination-parking bay. Leaving a parking bay and re-tracing the drive to the parking bay exit.

Mapping of elevation masks and skyview availability
The results of the comparison between satellite look angles are shown in Table 2.; with the difference between one location in central Nottingham at 30-minute intervals in light grey and the look angles for two locations ~112km (70 miles) apart over the same time intervals in dark grey. The data indicates that the effects of time at a given location have a greater bearing on the visibility and changes in azimuth (Az) / elevation (El) of satellites than does a change in location over a given period. Figure 3 shows the outputs from the predicted skyview percentage, the actual skyview and satellite visibility from the procedure for a location in the centre of Nottingham. Figure 3a. is the Google Street View scene for the location with the predicted skyview percentage for that specific location being between 10-20 percent. Figure 3b. shows the SQL representation of the elevation mask (upper), the satellite azimuth/elevations (middle), and the mask overlaid on the satellite position (lower). Figure 3c. shows the actual skyview mask with the visible satellites (upper) and obscured satellites (lower).
Within the GeoServer GIS database, the output points from an SQL query are classified as points with ≤4 GPS satellites predicted to be visible at a particular point and at a particular time and those with >4 satellites predicted to be visible. This allow a comparison of the predicted number of satellites with the actual number of satellites visible in the GPS data collected on surveys undertaken along the testbed route, with the results shown in Table 3. as the count and percentages of the discrepancy between predicted visible satellites and actual visible satellites.
The data indicate that in over 80 percent of the observations the actual number of visible satellites matches the predicted number of visible satellites. The largest discrepancies occur when the actual number of satellites acquired by the receiver is fewer than the predicted number. Investigation for the reason for this behavior show that this situation occurs in areas where the test vehicle emerges from areas with poor sky visibility and fails to reacquire satellite lock instantaneously.
These results were obtained through post-processing of the data acquired using the Javad Triumph GNSS receiver. To test the effectiveness and robustness of the methods in real-time employed Android devices with the results shown in Figure 4. The devices used were a Samsung Galaxy S8 phone and Samsung Galaxy Tab S4. In both cases, the receiver chips locked on to all constellations (GPS, GLONASS, Galileo, and BeiDou), where the system predicted visibility of only GPS satellites. The second problem encountered was that the devices incorporate any received signal into the positioning solution, including those with a low (<39dBHz) SNR. However, examination of the results indicate that the GPS satellites predicted to be visible, corresponds well with the number of GPS satellites with SNR >39dBHz.  Figure 5 shows the results of the comparison between the CoDRIVE OBU integrated GNSS/INS solution with a Leica GS10 and a Huawei P9 Android phone for GNSS only positioning. The Leica GS10 is capable of achieving a 2-dimensional (2D) root mean square (RMS) accuracy of <0.3m; however, being a GNSS only solution, for the tests conducted, was only available to provide a solution for ~90-percent of the test route. The CoDRIVE solution, by comparison, is capable of an overall RMS accuracy of ~1.0m, which coupled with the INS integration, makes the solution available for the entirety of the test procedures. The Android device (used primarily to assess cell phone signal strength and coverage) achieves an overall RMS accuracy of >9.0m, but as highlighted in the previous section, incorporates any received signal, regardless of satellite visibility or SNR values.    (a-c) shows the results for the inbound journey into the simulated parking lot, when the test vehicle has driven a short journey, therefore the initial states (position, velocity, orientation, as well as the IMU biases) are present and calibrated. Figure 7a illustrates the localisation differences once the vehicle passed the entrance of the simulated parking lot. In the first 33 seconds just after the vehicle entered the parking lot, the vehicle drove 93 metres. The INS only solution eventually drifted 10 metres, and the INS+RFID solution achieves the average horizontal error of 1 metre and the maximum horizontal error of 4 metres. Figure 7b shows the final parked position. The green ellipses highlight the locations of the parking bay. Compared to the INS only solution in red, which drifted for over 30 metres when the vehicle stopped in the bay, the INS+RFID solution shows the vehicle stopped precisely in the correct parking bay.

Assessment of CoDRIVE RFID localisation
Statistically, the plot in Figure 7c identifies the performance differences with the help of RFID aiding versus the INS only solution (summarised in Table 4.). The plots exclude the places outside the parking area where GNSS is available, and only count the data in the simulated parking lot. The INS only solution is divergent and the accuracy decreases over time. The overall RMS error has reached 5 to 10 metres for east and north directions. By contrast, INS+RFID solution is greatly improved. The maximum ground error is constrained within 3.76 metres in this test. The overall RMS in the underground environment achieves sub-metre accuracy most of the time. For the outbound journey, the errors in the INS+RFID solution is again constrained for this test, with the proviso that the historical information stored from the inbound journey is utilised. This is a significantly more complex scenario than that of the inbound journey, which is reflected in the larger RMS errors for both solutions illustrated in Figure 8(a-b) and Table 5.

Discussion
The aim of this paper was to strengthen the case for the use of radio navigation for positioning and localisation of road vehicles. Accurate positioning will be a key component of the required navigation performance for CAV as the technology for autonomous driving matures. The case for the use of radio navigation in CAV operations is that it is a mature technology, and in the case of GNSS, globally investment in new constellations has resulted in more satellites and modernised signals. Despite this, as the results in this paper show, GNSS alone is not resilient for CAV operations without other forms of aiding or augmentation.
In the complex driving environment, especially in the urban areas, it is not possible to guarantee GNSS satellite visibility, even with the increased number of constellations and satellites. However, the results presented shows that city models of skyview availability and elevations masks are straightforward to produce using 360-degree imagery. Even at a relatively coarse resolution of 5degrees in elevation and azimuth, the procedure demonstrates that satellite visibility was correctly identified in >80% of collected epochs. In the majority of cases, with an incorrect number of satellites predicted, a satellite became visible with a few epochs delay. This is due to the failure of the system to reacquire satellite lock instantaneously on emerging from areas denied GNSS and requires further investigation.
The experiment with the use of the skyview model with the Android devices raises two points for discussion. Firstly, without robust procedures on the receiver to filter out NLOS signals and multipath, then positioning errors rapidly propagate. Secondly, if ride-hailing apps based on smartphones' GNSS must connect service providers with service users more reliably and efficiently in the future, again the removal of NLOS signals based on satellite visibility models and SNR must become more robust.
In terms of the CoDRIVE OBU for resilient navigation for CAV, the device has 100-percent availability during the test procedure and constrains the RMS error to ~1m through the combination of integrated GNSS/INS. In terms of RNP for CAV, this fulfils the demands of 99.9999% availability but is only sufficient to position inform a vehicle somewhere between the demands of which lane it is to where in the lane it is. However, currently it is not sufficient for active control of the vehicle. Therefore, methods for improving these levels of accuracy are required.
One method for achieving better accuracy from radio navigation, especially in GNSS denied areas, may be the use of RFID. The results show significant benefits are attainable using RFID aiding compared to the normal INS only solution. According to the validation, the INS only solution drifts over time and the overall RMS accuracy in the 300-metre simulated underground parking lot reached 10 to 20 metres.
By contrast, deployment of the RFID tags on the road at 15-metre intervals constrained the maximum error within 3.76-metres, with 93.9% of the points constrained to 2-metres accuracy. The results clearly show the RFID aided solution is able to determine the vehicle location at sub-metre level accuracy and finally indicates in which parking bay the vehicle is stationary.
The RFID solution is not without problems, and during this experiment issues related to the vehicle's velocity and the received signal strength indicator (RSSI) became apparent, especially in relation to the angle of attack at which the antenna approached the in road RFID tags. The optimum arrangement for RFID tags according to different scenarios therefore requires further investigation.

Conclusions
The tests conducted as part of the CoDRIVE research show that, if there is prior knowledge concerning where/when GNSS signals are likely to be lost or which satellites to exclude from the positioning solution, it is possible to constrain the errors that arise. Furthermore, a mixture of radio navigation technologies in combination with inertial sensors, offer the possibility of decreasing the reliance on expensive, non-cost effective perception sensor solutions. This requires a variety of mitigation strategies for multipath errors in particular.
Currently GNSS alone cannot provide the levels of accuracy required for active control of CAV, but it can provide information sufficient to position vehicles somewhere between the 'which lane?' to the 'where in lane?' level. However, the CoDRIVE solution demonstrates that through an inertial system in combination with other radio navigation techniques, in the case radio frequency identification, it is possible to utilise GNSS as the core to CAV positioning and navigation. Therefore, given the commitment of agencies to developing the overall infrastructure for radio navigation, as outlined in the ERNP, and as demonstrated in other projects in which the partners are involved in (e.g. MaRINav https://navisp.esa.int/project/details/50/show) the CoDRIVE analysis has yielded positive results. Further investigation into the possibilities of radio navigation are required as new signals and systems become available and this is the direction of CoDRIVE future research.