Skip to content

Commit 500fa88

Browse files
committed
update README
1 parent 0c03987 commit 500fa88

File tree

1 file changed

+29
-12
lines changed

1 file changed

+29
-12
lines changed

README.md

Lines changed: 29 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,47 @@
11
# Antenna-array-GPS-receiver-USRP-GNSS-SDR
2-
This is a GPS receiver with antenna array, built based on USRP X310 and GNSS-SDR.
3-
Follow this instruction, you can build a testbed quickly. 😎
2+
This is a GPS receiver testbed with antenna array, built based on USRP X310 and GNSS-SDR.
3+
Follow this instruction, you can build a testbed quickly 😎.
44
## Introduction
55
This project is a GPS receiver testbed with antenna array, built based on USRP X310 and GNSS-SDR. The receiver is designed to receive GPS signals from multiple antennas(1x4 ants) and process them to improve the accuracy of the position estimation. The gps signal is received by an USRP X310, and then the signal is processed by GNSS-SDR to get the position information. This project can be used for GPS positioning, navigation, and some other research purposes, which need to receive gps signal via an antenna array.
66

77
## Hardware
88
The hardware used in this project includes:
9-
- USRP X310: a software-defined radio platform (RF_front_end) for receiving and transmitting radio signals. My USRP X310 has two TwinRX-80MHz daughterboards with 4 RX channels in total, which can be connected to 4 antennas.
10-
- GPS active antenna: 4 active GNSS antennas, which have internal LNA and need to be powered with 3~5 V DC.
9+
- **USRP X310:** a software-defined radio platform (RF_front_end) for receiving and transmitting radio signals. My USRP X310 has two TwinRX-80MHz daughterboards with 4 RX channels in total, which can be connected to 4 antennas.
10+
- **GPS active antenna**: 4 active GNSS antennas, which have internal LNA and need to be powered with 3~5 V DC.
1111
- Antenna array: using above described 4 active GNSS antennas fixed on a line with $\frac{\lambda }{2} \approx 9.5cm$ spacing among them.
12-
- Bias-Tee: a RF Bias Tee is used to feed DC power to active antenna.
13-
- GPSDO: a GPS disciplined oscillator is used to provide a stable reference clock for the USRP X310. And this GPSDO need to connect a passive GPS antenna. Once it runs correctly and shows GPS locked, 10MHz signal and 1PPS signal will be generated and provided to USRP X310.
14-
- PC: a computer with GNSS-SDR installed, which is used to configure and control the USRP X310 and GNSS-SDR. I use a compact industrial computer: IPC-240 with Ubuntu 20.04. To have enough communication bandwidth to aviod overflow error, I have a 10Gbps Ethernet controller in my PC and use a 10Gbps Ethernet cable to connect the PC and the USRP X310.
12+
- **Bias-Tee**: a RF Bias Tee is used to feed DC power to active antenna.
13+
- **GPSDO:** a GPS disciplined oscillator is used to provide a stable reference clock for the USRP X310. And this GPSDO need to connect a passive GPS antenna. Once it runs correctly and shows GPS locked, 10MHz signal and 1PPS signal will be generated and provided to USRP X310.
14+
- **PC:** a computer with GNSS-SDR installed, which is used to configure and control the USRP X310 and GNSS-SDR. I use a compact industrial computer: IPC-240 with Ubuntu 20.04. To have enough communication bandwidth to aviod overflow error, I have a 10Gbps Ethernet controller in my PC and use a 10Gbps Ethernet cable to connect the PC and the USRP X310.
1515

1616
## Software
1717
The software used in this project includes:
18-
- GNSS-SDR: an open-source software defined radio receiver for GNSS signals.
19-
https://gnss-sdr.org/
20-
- UHD: a driver for USRP X310 to communicate with the USRP hardware.
21-
- GNURadio: a software development toolkit that enables the creation of radio communications applications using GNU Radio blocks.
18+
- **GNSS-SDR:** an open-source software defined radio receiver for GNSS signals.You can install the gnss-sdr following the instruction in https://gnss-sdr.org/.
19+
- **UHD:** a driver for USRP X310 to communicate with the USRP hardware.
20+
- **GNURadio:** a software development toolkit that enables the creation of radio communications applications using GNU Radio blocks.
2221

2322
## Testbed Overview
2423
![testbed](/figs/testbed.png)
2524

2625
## Usage
27-
To use this project, you need to install GNSS-SDR on your computer at first. Then, you can build this testbed and configure the GNSS-SDR to receive GPS signals from multiple antennas and process them to get the output decoded files. The configuration file for GNSS-SDR can be modified to adjust the parameters of the receiver, such as the sampling rate, the number of antennas, and the signal source if you use other SDR.
26+
To use this project, you need to install GNSS-SDR on your computer at first. Then, you can build this testbed and configure the GNSS-SDR to receive GPS signals from multiple antennas and process them to get the output decoded files. The configuration file for GNSS-SDR can be modified to adjust the parameters of the receiver, such as the sampling rate, the number of antennas, and the signal source if you use other type of SDR.
27+
28+
### 1. Install gnss-sdr
29+
You can install gnss-sdr following the instruction in https://gnss-sdr.org/. After installing it in Ubuntu 22.04, 20.04 and MacOS, I really recommand to Install on an Ubuntu. Don't waste your time to install gnss-sdr on MacOS, it's really difficult and bad to use. My software versions are:
30+
- Ubuntu 20.04 (on IPC-240)
31+
- gnss-sdr 0.19
32+
- UHD 4.0
33+
- GNU Radio 3.9
34+
35+
If using Ubuntu 20.04 or 22.04, I provide the optimal install steps as follow:
36+
(1)
37+
38+
### 2. Build this testbed
39+
40+
### 3. Matters need attention
41+
42+
### 4. Run and process the result
43+
44+
2845

2946
## Reference
3047
- GNSS-SDR: https://gnss-sdr.org/

0 commit comments

Comments
 (0)