10.5GHz FMCW 相控阵雷达开源项目:一份完整贡献清单,从文档改写到 FPGA 回归的快速上手路线)
PLFM_RADARAERIS-1010.5GHz FMCW 相控阵雷达开源项目一份完整贡献清单从文档改写到 FPGA 回归的快速上手路线【免费下载链接】PLFM_RADAROpen-source, low-cost 10.5 GHz PLFM phased array RADAR system项目地址: https://gitcode.com/GitHub_Trending/pl/PLFM_RADARPLFM_RADARAERIS-10是一个 10.5 GHz 脉冲线性调频FMCW相控阵雷达原理图、PCB、STM32 固件、FPGA RTL 到 Python GUI 全部开源。本文带你克隆仓库、按角色找到入口、搭好四条工具链、跑通全套测试并给出一个 30 天内提交首个 PR 的计划。项目快照两个版本一套代码参数AERIS-10NNexusAERIS-10EExtended工作频率10.5 GHz10.5 GHz最大作用距离3 km20 km天线阵列8×16 贴片阵列32×16 介质填充波导槽阵列波束控制电子 ±45°俯仰/方位电子 ±45°俯仰/方位机械扫描360°步进电机360°步进电机输出功率约 1 W×1610 W×16QPA2962 GaN 功放板处理链路FPGA STM32FPGA STM32两版共用同一套主板与固件差异集中在天线形态和功放板。各子系统一句话分工电源管理板产生并滤波各电压轨上电时序由微控制器控制频率合成板AD9523-1 低抖动时钟源为 DAC、ADC、FPGA 及收发频率合成器提供相位对齐时钟主板XC7A50T FPGA信号处理 STM32F746xx系统管理 DAC、混频器、ADAR1000 相移器功放板Extended 版专用每通道一颗 QPA2962 GaN 功放天线阵列波束成形终端360° 机械旋转由步进电机驱动仓库任务地图从目录定位贡献点顶层目录内容对应的贡献工作4_Schematics and Boards Layout/KiCad 原理图/PCB、Gerber、BOM/CPL硬件勘误、BOM 校对、封装补全5_Simulations/OpenEMS 天线/波导脚本、滤波器与阵列仿真射频仿真、结果复现与报告6_Application Notes/7_Components Datasheets.../应用笔记、器件手册文档整理、手册归档9_Firmware/9_1_Microcontroller/STM32 驱动库、主程序与单元测试固件驱动、AGC 逻辑、单测9_Firmware/9_2_FPGA/Verilog RTL、约束、tb 测试台、构建脚本RTL 优化、回归测试、综合脚本9_Firmware/9_3_GUI/Tkinter / PyQt6 仪表盘、雷达协议可视化、协议解析、回放9_Firmware/tests/cross_layer/跨层契约测试Python/Verilog/C契约用例、回归守护8_Utils/数据处理 Python 脚本、机械图工具脚本、图纸整理docs/架构、启动、实施日志等 HTML 文档文档站维护相控阵雷达开源项目如何参与先看这张表找到你最熟的那个目录再往下走。环境准备清单四条工具链硬件仿真Python 3.12脚本在 5_Simulations/如Antenna/openems_quartz_slotted_wg_10p5GHz.py跑 OpenEMS 需本机安装该仿真器改板子则装 KiCad 7.0FPGAiverilog回归测试用或 Xilinx Vivado综合与实现入口脚本 9_Firmware/9_2_FPGA/ 的run_regression.sh约束在constraints/STM32 固件任一支持 C11/C17 的编译器即可跑主机侧单测make目标板开发用 STM32CubeIDE arm-none-eabi-gccPython GUIuv管理依赖ruff做静态检查pytest跑测试项目根pyproject.toml已配好 lint 规则 按角色选入口五类贡献者速查角色适合人群入口目录第一个 PR 建议文档会写技术文章docs/、README.md修正一处目录引用或补充启动说明GUI熟悉 Python/PyQt9_Firmware/9_3_GUI/v7/给 dashboard 加一个数据回放视图或修复一处显示问题固件嵌入式 C/C9_Firmware/9_1_Microcontroller/为一个驱动补单元测试并修复发现的问题FPGA数字电路/Verilog9_Firmware/9_2_FPGA/为某个模块补一个对抗性测试激励边界、复位中途打断射频仿真微波/电磁仿真5_Simulations/复现一次阵列方向图仿真产出对照报告提交第一份 PR五步流程Fork 并克隆Fork 仓库后拉到自己本地。git clone https://gitcode.com/GitHub_Trending/pl/PLFM_RADAR从develop开分支main只用于生产发布所有开发分支都从develop切出目标也是develop。命名与规范分支用feature/xxx或fix/xxxPython 走pyproject.toml的 ruff 配置行宽 100Verilog 以radar_system_top.v为 opcode、位宽、复位默认值的唯一事实来源C/C 跟随现有风格生成产物Vivado 工程、bitstream、仿真 dump不进版本库。跑测试只跑受你改动影响的层级见下节CI 四件套全部要求通过。推回并建 PR描述写清动机、改了什么、跑过哪些测试、如何验证截图贴行为对比如有关联 issue 就编号引用。 测试与验收四层测试怎么跑Python lint 与单元测试GUI 与脚本uv run ruff check . cd 9_Firmware/9_3_GUI uv run pytest test_GUI_V65_Tk.py test_v7.py -vFPGA 回归iverilog 驱动含 lint 与对抗性阶段cd 9_Firmware/9_2_FPGA bash run_regression.shMCU 主机侧单测cd 9_Firmware/9_1_Microcontroller/tests后执行make clean make跨层契约测试校验 Python 协议层、Verilog RTL 与 C 设置包三层的 opcode、位宽和布局是否漂移含 iverilog 协同仿真与 C stub 执行两档uv run pytest 9_Firmware/tests/cross_layer/test_cross_layer_contract.py -vFMCW 雷达 FPGA 开发入门时run_regression.sh是最值得反复跑的脚本它同时覆盖变更模块、集成与信号处理链路。️ 沿信号链的四条深挖路线信号流向DAC 生成 chirp → 射频前端混频上变频 → 天线阵 → 回波下变频 → FPGA 处理 → STM32 管理 → GUI 展示。按链路选一条深挖射频前端关键文件 ADAR1000_Manager.cpp波束赋形调度、ADAR1000_AGC.cpp混合式 AGC。可改进点为相移调度补边界用例测试用tests/里的 mock 模式把 AGC 外环收敛行为做成可回归验证的断言。频率合成9_1_1_C_Cpp_Libraries/下的adf4382.c、adf4382a_manager.c、ad9523.c。可改进点给 ADF4382 频偏切换补时序敏感测试tests/test_bug3_timed_sync_noop.c是很好的范式完善时钟树配置文档。FPGA 处理radar_system_top.v、frequency_matched_filter.v、doppler_processor.v、cfar_ca.v、fft_engine.v。可改进点把 FFT 旋转向量与中间结果搬进 BRAM 降布线压力给 CFAR 补边界门控用例全零、全饱和、单脉冲场景。GUI 展示9_Firmware/9_3_GUI/v7/的dashboard.py、replay.py、software_fpga.py协议解析在 radar_protocol.py。可改进点用tb/cosim/real_data里的采集数据做回放压测优化大量目标同屏时的绘制性能。Issue 与 PR 怎么写求助前自查Issue标题用「模块 现象 环境」句式如「FPGA 回归cfar_ca 在全饱和输入下输出溢出iverilog 12.x」正文给复现命令、期望/实际输出、最小日志。PR一个 PR 只解决一个问题描述含改动动机、涉及层级、本地跑过的测试与结果跨层改动必须附契约测试输出。求助前自查① 是否已在 issue 区搜过同类问题② 本地是否跑过对应层测试并记录输出③ 是否读过 CONTRIBUTING.md 的 CI 清单④ 报错是否已缩到最小复现路径。30 天上手计划第 1 天克隆仓库通读README.md与CONTRIBUTING.md对照「仓库任务地图」圈定 1 个目录作为你的主战场。第 7 天装好对应那条线的工具链并跑绿基线测试——GUI 线跑 ruff pytestFPGA 线跑run_regression.sh --quick固件线跑make在本地留一份基线输出。第 14 天开第一个feature/或fix/分支完成一个小而完整的改动文档勘误、一处 lint 修复、一个测试用例均合格提交第一个 PR 并跟进评审意见。第 30 天重跑全部测试对比基线把发现的新回归补成用例按角色表选定下一个模块开第二个分支。下一步动作打开仓库 issue 区把上面 30 天计划里第 14 天的那个改动写成 issue 或直接动手——选哪个层级由你第 1 天圈定的目录决定。【免费下载链接】PLFM_RADAROpen-source, low-cost 10.5 GHz PLFM phased array RADAR system项目地址: https://gitcode.com/GitHub_Trending/pl/PLFM_RADAR创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考