A **Radar** **Sim**ulator for **Py**thon

There are 5 modules in this package:

**Radar**: Classes to define a radar system`radarsimpy.Transmitter`

: Radar transmitter`radarsimpy.Receiver`

: Radar receiver`radarsimpy.Radar`

: Radar system

**Simulator**: Radar baseband signal simulator`radarsimpy.simulator`

: Simulates and generates raw time domain baseband data (Python engine)`radarsimpy.simulatorcpp`

: Simulates and generates raw time domain baseband data (C++ engine)

**Raytracing**: Raytracing module for radar scene simulation`radarsimpy.rt.lidar_scene`

: Simulates LiDAR’s point cloud based on a 3D environment model with ray tracing`radarsimpy.rt.rcs`

: Simulates target’s radar cross section (RCS) based on the 3D model with ray tracing`radarsimpy.rt.scene`

: Simulates radar’s response signal in a 3D environment model with ray tracing

**Processing**: Basic radar signal processing module**Tools**: Receiver operating characteristic analysis

## Dependence

- numpy
- scipy
- numpy-stl
- Visual C++ Runtime (
*Windows only*)

## Installation

Contact me if you are interested in this module.

To use the module, please put the radarsimpy folder within your project folder as shown below.

Windows

- your_project.py
- your_project.ipynb
- radarsimpy

- __init__.py
- radarsimc.dll
- scene.xxx.pyd
- …

Linux

- your_project.py
- your_project.ipynb
- radarsimpy

- __init__.py
- libradarsimc.so
- scene.xxx.so
- …

## Coordinate Systems

### Scene Coordinate

- axis (m):
`[x, y, z]`

- phi (deg): angle on x-y plane. Positive x-axis is 0 deg, positive y-axis is 90 deg
- theta (deg): angle on z-x plane. Positive z-axis is 0 deg, x-y plane is 90 deg
- azimuth (deg): azimuth -90 ~ 90 deg equal to phi -90 ~ 90 deg
- elevation (deg): elevation -90 ~ 90 deg equal to theta 180 ~ 0 deg

### Object’s Local Coordinate

- axis (m):
`[x, y, z]`

- yaw (deg): rotation along z-axis. Positive yaw rotates object from positive x-axis to positive y-axis
- pitch (deg): rotation along y-axis. Positive pitch rotates object from positive x-axis to positive z-axis
- roll (deg): rotation along x-axis. Positive roll rotates object from positive z-axis to negative y-axis
- origin (m):
`[x, y, z]`

- rotation (deg):
`[yaw, pitch, roll]`

- rotation (deg/s): rate
`[yaw rate, pitch rate, roll rate]`

## Usage

- Radar system simulation
- Target simulation
- Radar system and scene simulation with ray tracing
- LIDAR (Experimental)
- Characterization

## 2 Comments

## Nicola Papini · December 10, 2020 at 12:04 pm

Hi, have you got an example for FDM MIMO radar?

## Zhengyu Peng · December 11, 2020 at 10:29 am

You mean frequency division multiplexing? You can change the center frequency