This project is from my master degree work. FMCW signal process was implemented by python script, which can be sum up as:
- FMCW IF signal pre-process
- Range-Time-Map construction (RTM)
- Doppler-Time-Map construction (DTM)
- Angle-Time-Map construction (ATM)
In pyradar.py
, we built a class radar_data_reader
.
- Read radar data from
.bin
file - Define and init varible to save RTM, DTM and ATM
More details about IF-signal pre-process, please refer to tools.py
-
Get a new one frame
-
Do 1d-fft
-
Compute RTM-bin with the new one frame
-
Accumelate 32 frame to construct a RTM
-
Get a new one frame
-
Compute RDM
-
Compute pink value from the result of 1d-fft
-
Pick the doppler bin from RDM, which has pink value in range bin
-
Accumelate 32 frame to construct a dtm
- Get a new one frame
- reshape data to 8 channel (2Tx 4Rx)
- Apply MUSIC algorithm to compute angle bin
- Accumelate 32 frame to construct a atm