PLFM_RADAR:完整的开源 10.5 GHz 相控阵雷达,3 步跑通演示
【免费下载链接】PLFM_RADAROpen-source, low-cost 10.5 GHz PLFM phased array RADAR system项目地址: https://gitcode.com/GitHub_Trending/pl/PLFM_RADAR
PLFM_RADAR(代号 AERIS-10)是一个免费、完全开源的 10.5 GHz 相控阵雷达,靠各单元间的相位差电子地偏转波束,不用机械转动天线。硬件电路、固件和界面代码全部公开,适合想弄懂相控阵雷达怎么工作、又不想花大价钱买设备的同学和工程师。
🧭 项目定位与核心价值
- 硬件软件全公开:原理图、Gerber、BOM 在 4_Schematics and Boards Layout/,STM32 固件与 Verilog RTL 在 9_Firmware/,没有隐藏部分。
- 两档版本,预算不同都能做:3 km 版(AERIS-10N)用 8×16 贴片阵,20 km 版(AERIS-10E)加挂 10 W 的 QPA2962 GaN 功放。
- 信号处理在板子上完成:脉压、多普勒 FFT、MTI、CFAR 检测都由 FPGA 实时算出,回传的已是结果而非原始数据。
- 没硬件也能先跑界面:GUI 自带 mock 和 demo 模式,笔记本装好 Python 就能看到演示目标。
🚶 从零到跑通的 3 步
最快的路径是先不碰硬件,把可视化界面跑起来。
1. 环境准备:装好 Python(仓库pyproject.toml按 3.12 目标编写,README 标注 GUI 最低 3.8+),然后克隆仓库。
git clone https://gitcode.com/GitHub_Trending/pl/PLFM_RADAR cd PLFM_RADAR2. 编译/配置:GUI 是纯 Python,装两个数值库即可。
pip install numpy matplotlib3. 首次运行验证:以演示模式启动 Tkinter 版仪表盘。
cd 9_Firmware/9_3_GUI python GUI_V65_Tk.py --demo窗口出现 Range-Doppler Map(距离-多普勒图,横轴速度、纵轴距离的热力图),右侧"Detected Targets"表列出 6 个仿真目标的距离、速度和方位角,说明链路通了。之后可以加--live接 FT2232H USB 硬件,或--replay回放录好的数据。
⚙️ 它是怎么工作的
一句话:发射一段线性调频 chirp,收回回波,在 FPGA 里压缩、检测,最后把目标表送进界面。

系统框图:左侧为 XC7A50T FPGA 与 AD9484 ADC,中部是 LTC5552 混频器与 AD9523 时钟,右侧依次为 ADAR1000 移相器、ADTR1107 前端与 32×16 介质填充波导阵列。
- DAC(AD9708)生成 LFM 调频信号,经滤波器送入混频器。
- LTC5552 混频器把它搬移到 10.5 GHz,由 ADAR1000 移相器阵列做波束成形后送天线。
- ADTR1107 前端同时承担接收低噪放大和发射功放,回波再下变频,由 AD9484 ADC 数字化。
- FPGA 完成 I/Q 基带下变频、CIC/FIR 抽取滤波、脉压、多普勒 FFT、MTI 与 CFAR 检测。
- STM32 负责上电时序、AD9523/ADF4382 配置,并读取 GPS(UM982)和 IMU(GY-85)做位置与俯仰角修正。
- 处理结果经 FT2232H USB 接口传到 Python GUI,实时绘图并叠加地图。
🗺️ 能用来做什么
除演示外,仓库里真正能动手的方向有三类:
| 场景 | 能做什么 | 仓库内参考路径 |
|---|---|---|
| 雷达数据可视化与回放 | 启动 demo 或回放 IQ 数据,看距离-多普勒热力图和检测目标表 | 9_Firmware/9_3_GUI/GUI_V65_Tk.py |
| 阵列方向图仿真 | 运行阵列方向图脚本,输出加窗方向图热力图 | 5_Simulations/array_pattern_Kaiser25dB_like.py |
| FPGA 算法验证 | 本地跑完整回归(Lint、集成、信号处理、对抗性测试五阶段) | 9_Firmware/9_2_FPGA/run_regression.sh |
GUI 演示模式截图:Range-Doppler Map 主图带俯仰角修正(Pitch +4.3°),右侧目标表含 Track ID、Range、Velocity、Azimuth 四列,顶部可切 Map View / Diagnostics / Settings。
📐 关键指标一览
以下参数全部来自 README 的官方规格表:
| 参数 | AERIS-10N (Nexus) | AERIS-10E (Extended) |
|---|---|---|
| 工作频率 | 10.5 GHz | 10.5 GHz |
| 最大探测距离 | 3 km | 20 km |
| 天线阵列 | 8×16 贴片阵 | 32×16 介质填充槽波导阵 |
| 波束控制 | 电子 ±45° + 机械 360°(步进电机) | 电子 ±45° + 机械 360° |
| 输出功率 | 约 1 W × 16 路 | 10 W × 16 路(GaN 功放) |
| 处理平台 | XC7A50T FPGA + STM32F746 | 同左 |
阵列加窗后的方向图可以在这张仿真图里看到,Kaiser 窗把副瓣压到约 −25 dB 量级:
阵列方向图热力图(|AF·EF|,dB):横轴 Theta、纵轴 Phi,Kaiser 窗约 25 dB 副瓣抑制,黑点为栅瓣位置。
🤝 参与项目
项目明确欢迎贡献,门槛可以分三档选:
- 零经验:补写 docs/ 里的文档,或用 9_Firmware/9_3_GUI/test_radar_data.csv 验证 GUI 的数据解析是否一致。
- 有经验:扩展 9_Firmware/9_3_GUI/ 的界面功能,或给 9_Firmware/tests/cross_layer/ 增加跨层契约测试。
- 资深:优化 9_Firmware/9_2_FPGA/ 的信号处理流水线(注意
radar_system_top.v是指令码与位宽的单一事实来源),或审查 4_Schematics and Boards Layout/4_6_Schematics/ 下的射频设计。流程细节见 CONTRIBUTING.md。
💬 常见问题
不买硬件能先上手吗
能。GUI 的 mock 和 demo 模式用合成数据跑完整链路,python GUI_V65_Tk.py --demo即可。只有要接真实雷达时才需要 FT2232H USB 接口。
打板文件到底在哪找
Gerber、BOM、CPL 全在 4_Schematics and Boxes Layout 的 4_7_Production Files 下,主板、功放板、电源板、合成器板各一个文件夹;机械图纸在 8_Utils/Mechanical_Drawings/。
不会 FPGA 有没有可做的部分
有。Python 侧(GUI、脚本、测试)完全不碰 Verilog;8_Utils/Python/ 里还有 FFT、chirp 生成等独立脚本可以练手。
需要会几种语言
C/C++(STM32 固件)、Verilog(FPGA)、Python(GUI 和工具)各占一块。你只需要精通其中一种就能切入对应模块,其余的有现成测试兜底。
版权怎么算,能商用吗
硬件文件走 CERN-OHL-P,软件和固件走 MIT,两者都是宽松许可。基于设计可以使用和售卖,但需保留版权声明并按同许可分发修改后的源文件。
PLFM_RADAR 把 10.5 GHz 相控阵雷达的设计、代码和测试数据放在同一个仓库里,你现在就可以动手。
- 克隆仓库,运行
python GUI_V65_Tk.py --demo跑通演示 - 在固件、FPGA、GUI 三条线里挑一条精读一个模块
- 照 CONTRIBUTING.md 的清单跑通测试套件,提交第一个 PR
【免费下载链接】PLFM_RADAROpen-source, low-cost 10.5 GHz PLFM phased array RADAR system项目地址: https://gitcode.com/GitHub_Trending/pl/PLFM_RADAR
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考