跳转至

项目实践

项目的价值不在器件数量,而在于它是否迫使你做出可解释的工程判断。一个优秀的入门项目可以很小,但必须包含预测、实现、测量和差异分析。

项目循环

问题与验收

写清用户、输入、输出、约束、测试和非目标。把“做一个滤波器”改写为可以测量的通带、截止、负载和误差要求。

模型与预算

建立最简单可用模型,列出参数来源、量纲、容差、噪声、功耗、成本与安全预算,并预测关键曲线。

仿真与设计评审

覆盖典型与边界条件,检查失效模式。让同伴或导师在购买/制板/上电前审查规格、原理图和测试计划。

实现与分段验证

从最小能量、最小模块开始,每次只增加一个变量。自动化软件/HDL 测试,硬件先做无源和断电检查。

测量与复盘

保留原始数据,将预测、仿真和实测对齐。解释差异、限制和下一版选择,不删除失败路径。

一页项目规格

在创建仓库或购买器件前,用一页回答:

字段 必须写清的内容
问题 谁在什么场景下需要什么结果?
输入/输出 信号、能量、数据格式、范围、单位与参考点
验收测试 可重复的测试步骤、通过阈值与测量不确定度
约束 成本、时间、功耗、尺寸、工具、许可、可获得性
安全边界 最大能量、禁止状态、监督和停止条件
假设 环境、负载、模型、器件、采样和使用者行为
非目标 本版本明确不解决什么,防止范围失控
里程碑 每个里程碑都能单独验证和演示

如果验收测试写不出来,说明问题仍然过大或术语没有被定义。

从软件到硬件的项目阶梯

所有项目先做安全评估。以下例子按概念复杂度递增,不代表对任何具体电压、功率或实验环境的授权。

级别 项目例 核心能力 最小验收
0 测量数据清洗与误差图 单位、统计、脚本、可复现图表 从原始数据一键重建结果
0 RC/RLC 暂态与频响仿真 微分方程、相量、模型边界 手算、数值与 SPICE 在误差预算内一致
0 HDL 状态机与自检测试平台 时序、状态、断言、故障用例 正常与非法输入均有自动结果
1 受限低能量的传感器读取 数据手册、ADC、校准、噪声 对已知参考量给出误差和重复性
1 低能量有源滤波/放大 运放、带宽、负载、稳定性 幅频曲线与预测对齐并说明偏差
1 微控制器数据记录器 驱动、时间戳、缓冲、文件格式 长时间测试无丢样或能量化丢样
1 FPGA 串行接口或小型处理单元 协议、跨域意识、综合与时序 自检测试 + 资源/时序报告
0–1 数字滤波与实时实现 采样、量化、计算预算 离线基线与实时输出可比较
0–1 动态系统辨识与闭环控制 模型、稳定性、饱和、延迟 仿真先通过,低能量装置在边界内验证
0 接收型通信链路分析 链路预算、噪声、调制、统计 预测与公开/自采数据的误码指标一致
0 电磁或热场参数扫描 边界条件、网格、收敛 网格独立性与解析/基准问题对照
2+ 高能量、射频发射、激光或工艺项目 正式风险评估与专业设施 仅在获准实验室按监督计划定义

项目证据包

一个陌生评审者应能在不联系作者的情况下回答“做了什么、为什么可信、怎样复现”。

project/
├── README.md              # 摘要、演示、复现入口
├── SPEC.md                # 规格、非目标、验收矩阵
├── SAFETY.md              # 危害、控制、停止条件
├── design/                # 推导、原理图、约束、评审记录
├── src/                   # 软件、固件或 HDL
├── simulation/            # 模型、网表、参数扫描
├── tests/                 # 自动测试和硬件测试协议
├── data/raw/              # 只追加的原始数据
├── data/processed/        # 可由脚本重建
├── bom/                   # 料号、替代、成本与许可
└── report/                # 结论、误差、失败与下一版

README 首屏应包含

  • 一句话问题与结果,而不是品牌口号;
  • 一张带单位和直接标签的关键结果图;
  • 当前状态:概念、仿真、原型、已验证或已停止;
  • 三到五步复现路径;
  • 安全边界与禁止用途;
  • 最重要的限制和失败。

设计评审门

Gate 0:问题成立

  • 验收指标可测;
  • 范围可在时间与预算内完成;
  • 项目不会依赖无法获得的设备或受限材料;
  • 有一条纯软件或低能量的第一里程碑。

Gate 1:可以实现

  • 模型、接口、元件额定值和误差预算一致;
  • 关键器件有数据手册和可获得替代;
  • 测试点、调试接口与可观测性已设计;
  • 风险控制优先采用消除、限制能量和工程保护。

Gate 2:可以上电或运行

  • 仿真/自动测试通过;
  • 原理图、接线、极性、短路和机械边界已复核;
  • 仪器与电源设置已记录;
  • 停止条件明确,所需监督人员在场。

Gate 3:可以宣称完成

  • 所有验收结果都可追溯到原始数据;
  • 失败测试与偏差没有被隐藏;
  • 报告区分测得、推断和假设的内容;
  • 复现者能从锁定环境与版本得到同类结果。

评价量规

| 维度 | 0:缺失 | 1:初步 | 2:可靠 | 3:工程级 | | --- | --- | --- | --- | --- | | 问题定义 | 只有题目 | 有目标,无阈值 | 可测指标和非目标 | 指标连接真实场景与权衡 | | 模型 | 无预测 | 公式/仿真未校验 | 假设、单位、基准完整 | 灵敏度、边界和失效模型完整 | | 实现 | 无法运行 | 仅作者机器可用 | 版本、构建、接口清楚 | 模块化、可测试、可维护 | | 验证 | 只有演示 | 少量成功样例 | 测试矩阵和原始数据 | 不确定度、故障注入、重复性 | | 安全 | 未提及 | 通用提醒 | 项目级危害与控制 | 控制已验证并记录遗留风险 | | 沟通 | 只有截图 | 能说明做了什么 | 可复现报告与图表 | 评审记录、权衡与下一版清楚 |

总分不是为了排名,而是暴露证据薄弱的接口。安全为 0 时,项目不能进入硬件执行阶段。

失败日志

每次关键失败记录:

现象:
预期:
最小复现:
已排除:
根因证据:
修复:
防止复发的测试:
仍未知:

避免只写“接触不良”“库有 bug”或“参数不对”。把观察和解释分开;无法确认根因时明确标记未知,并保留最小失败样例。

团队项目

  • 每个接口都有一名负责人和一名评审者;
  • 规格、数据格式、引脚、时序和安全责任写成契约;
  • 合并前运行自动测试,并记录硬件版本;
  • 会议以决策、证据、反对意见和待验证项结束;
  • 署名反映实际贡献,外部代码、模型和数据按许可引用。

工具与环境选最小工具链,并在任何硬件步骤前完成实验安全评审。