160 lines
5.2 KiB
C++
160 lines
5.2 KiB
C++
#ifndef PARAMETERS_H
|
||
#define PARAMETERS_H
|
||
#pragma once
|
||
/**********************************雷达参数*************************************************/
|
||
#define PI 3.1415926f
|
||
|
||
//频点(GHz)
|
||
#define FREQ0 9.2
|
||
|
||
/**********************************版本信息*************************************************/
|
||
#define MAJOR_VERSION 1
|
||
#define MINOR_VERSION 5
|
||
#define PATCH_VERSION 7
|
||
#ifdef PHASE_SCANNING
|
||
#define VERSION_INFO "PS"
|
||
#else
|
||
#define VERSION_INFO "MS"
|
||
#endif
|
||
|
||
#define STRINGIFY_IMPL(x) #x
|
||
#define STRINGIFY(x) STRINGIFY_IMPL(x)
|
||
|
||
#define VERSION_STRING \
|
||
"V" STRINGIFY(MAJOR_VERSION) "." \
|
||
STRINGIFY(MINOR_VERSION) "." \
|
||
STRINGIFY(PATCH_VERSION) "." \
|
||
VERSION_INFO
|
||
|
||
/**********************************日志输出开关**********************************************/
|
||
// 日志文件输出功能开关:
|
||
// 1) 定义(默认)RDP_LOG_ENABLE:启用日志文件输出 —— 调用 Data_Process_Factory::GetB()
|
||
// 时自动将 std::cout 重定向到日志文件,日志文件存放于 RDP_LOG_DIR 目录,
|
||
// 文件名按当前日期+时间自动命名(如 rdp_20240826_153000.log);
|
||
// 2) 注释掉 RDP_LOG_ENABLE:关闭 —— 不做重定向,日志仍输出到标准输出(控制台)。
|
||
// #define RDP_LOG_ENABLE
|
||
|
||
//日志文件输出目录(相对当前工作目录的路径,目录不存在时自动创建)
|
||
#define RDP_LOG_DIR ".\\rdp_logs\\"
|
||
|
||
/**********************************数据记录调试开关*******************************************/
|
||
// 数据记录调试功能(结构体 -> SQLite 数据表,ORM 由内置 ormpp 完成)由 CMake 选项
|
||
// RDP_DATA_RECORD(AUTO/ON/OFF)控制:AUTO 时 Debug 构建启用、Release 构建关闭(交付默认)。
|
||
// 启用时由构建系统定义 RDP_RECORD_ENABLE,记录模块(rdp_record.cpp + sqlite3)才参与编译;
|
||
// 关闭时 RDP_RECORD 宏展开为 ((void)0),实参不求值,不做任何记录、不留任何运行开销。
|
||
// 注意:此处不提供手工开关宏,请在构建配置中选择(详见 docs/data_record_debug.md)。
|
||
//记录数据库存放目录(相对宿主进程当前工作目录,不存在时自动创建)
|
||
#define RDP_RECORD_DB_DIR ".\\rdp_records\\"
|
||
|
||
//#define MECHANICAL_SCANNING
|
||
//#define PHASE_SCANNING
|
||
|
||
#ifdef MECHANICAL_SCANNING
|
||
/******************************数据处理参数**************************************/
|
||
// #define DATA_RATE_TAS 0.0625
|
||
|
||
#define SIGMA_R 10.0 //测量误差
|
||
#define SIGMA_A 0.02
|
||
#define SIGMA_E 0.2
|
||
#define SIGMA_V 2.0
|
||
|
||
#define DOT_COH_RANGE 80 //点迹凝聚
|
||
#define DOT_COH_V 2
|
||
#define DOT_COH_AZI 6
|
||
|
||
#define MAX_BEAM_NUM 100 //最大TWS波位数
|
||
|
||
#define MAX_TRACK_NUM 500
|
||
#define MAX_TRACK_INDEX 500 //最大航迹批号
|
||
|
||
#define ASSOCIATE_THRESHOLD_MIN 1
|
||
#define ASSOCIATE_THRESHOLD_MID 3 //关联波门
|
||
#define ASSOCIATE_THRESHOLD_MAX 10
|
||
|
||
#define R_MIN 100
|
||
#define R_MAX 100000
|
||
|
||
#define TRACK_START_THRESHOLD 8 //起航波门 3 越大越容易起批
|
||
#define ALPHA_START 60 //起航夹角 120 越大越容易起批
|
||
|
||
#define MAX_EXTRAPOLATE_NUM 3 //最大外推点数
|
||
#define MAX_EXTRAPOLATE_NUM_TAS 48 //TAS最大外推点数
|
||
|
||
#define TRACK_DIE_ROUND 6 // 航迹消亡圈数
|
||
#define TRACK_DIE_ROUND_PRIMARY 10 // 重点航迹消亡圈数
|
||
#define TRACK_DIE_ROUND_TAS 96 //TAS航迹消亡圈数
|
||
|
||
#define ASSO_THORD 4
|
||
|
||
#define H_F_WIN_LEN 3
|
||
|
||
#define TAS_QUEUE_LENGTH 1 //Tas调用的cpi数
|
||
#define MAX_TAS_NUM 1
|
||
|
||
#define UNCONF_TARGET 0
|
||
|
||
#define DIRECT_TRACKING_QUEUE_LENGTH 10
|
||
|
||
#pragma message("MECHANICAL_SCANNING")
|
||
|
||
#endif
|
||
|
||
#ifdef PHASE_SCANNING
|
||
|
||
/******************************数据处理参数**************************************/
|
||
// #define DATA_RATE_TAS 0.3
|
||
|
||
#define SIGMA_R 10.0 //测量误差
|
||
#define SIGMA_A 0.02
|
||
#define SIGMA_E 0.2
|
||
#define SIGMA_V 2.0
|
||
|
||
#define DOT_COH_RANGE 80 //点迹凝聚
|
||
#define DOT_COH_V 2
|
||
#define DOT_COH_AZI 6
|
||
|
||
#define MAX_BEAM_NUM 100 //最大TWS波位数
|
||
|
||
#define MAX_TRACK_NUM 500
|
||
#define MAX_TRACK_INDEX 500 //最大航迹批号
|
||
|
||
#define ASSOCIATE_THRESHOLD_MIN 1
|
||
#define ASSOCIATE_THRESHOLD_MID 3 //关联波门
|
||
#define ASSOCIATE_THRESHOLD_MAX 10
|
||
|
||
#define R_MIN 100
|
||
#define R_MAX 100000
|
||
|
||
//#define V_MAX 500 //最大速度
|
||
//#define V_MIN 1 //速度最小
|
||
#define TRACK_START_THRESHOLD 8 //起航波门 3 越大越容易起批
|
||
#define ALPHA_START 60 //起航夹角 120 越大越容易起批
|
||
|
||
#define MAX_EXTRAPOLATE_NUM 3 //最大外推点数
|
||
#define MAX_EXTRAPOLATE_NUM_TAS 5 //TAS最大外推点数
|
||
|
||
#define TRACK_DIE_ROUND 6 // 航迹消亡圈数
|
||
#define TRACK_DIE_ROUND_PRIMARY 10 // 重点航迹消亡圈数
|
||
#define TRACK_DIE_ROUND_TAS 20 //TAS航迹消亡圈数
|
||
|
||
#define ASSO_THORD 4
|
||
|
||
#define H_F_WIN_LEN 6
|
||
|
||
#define TAS_QUEUE_LENGTH 4 //Tas调用的cpi数
|
||
#define MAX_TAS_NUM 4
|
||
|
||
#define UNCONF_TARGET 0
|
||
|
||
#define DIRECT_TRACKING_QUEUE_LENGTH 10
|
||
|
||
#pragma message("PHASE_SCANNING")
|
||
|
||
#endif
|
||
|
||
#define Round(x) (((x) > 0) \
|
||
? (((int)((x) + 0.5) > (int)(x)) ? ((int)(x) + 1) : ((int)(x))) \
|
||
: (((int)((x) - 0.5) < (int)(x)) ? ((int)(x) - 1) : ((int)(x))))
|
||
|
||
#endif // PARAMETERS_H
|