SuperAPI AI 工具集

altium-circuit-investigator

编程与开发

查看项目

更新于 10-22 17:17

技能介绍

用途

本技能用于在不对电路功能进行猜测的前提下,理解 Altium 原理图和 PCB 设计。它作为 altium-schematic-reader 的补充:先收集结构化的网络/元件数据,再通过拓扑、局部标签、PCB 证据和覆盖率检查来证明电路含义。

主要能力

  • 证据分级:所有结论必须基于证据,分为 Confirmed(已确认)、Likely(可能)、Hypothesis(假设)、Unknown / needs review(未知/待审查)四级。
  • 覆盖率检查:在输出最终报告前,要求运行端口清单、包含所有 MCU/处理器符号引脚(含未连接引脚标记为 NC/未连接)、包含所有原理图连接器引脚(含空/无连接引脚)、比对原理图连接器与 PCB 焊盘并标出不一致、渲染或检查局部原理图上下文、对固件相关控制/反馈信号至少深追一个有源器件、明确列出未决问题。
  • 调查工作流:识别输入文件(优先 .PrjPcb,其次 .SchDoc,.PcbDoc 用于物理确认,截图/SVG 作为必要证据);构建初始映射(运行 port_inventory.py 和 coverage_report.py,检查摘要计数);创建完整 MCU/处理器覆盖(以符号引脚为完整性来源,合并网表端点,记录每个引脚的编号、名称/复用功能、网络、功能、证据和固件含义,标记未连接引脚,注意同一网络意外连接多个引脚的情况);盘点外部和板级端口(并列原理图连接器引脚与 PCB 焊盘网络,区分外部端口与仅 PCB 跳线、0 欧姆链路、铜带、测试点、基准点,保留引脚顺序不一致或封装额外焊盘);追踪目标网络(从用户指定网络、MCU 引脚、连接器引脚或未知信号出发,使用 trace_net_deep.py 进行多跳追踪,穿过无源器件、晶体管基极/栅极、光耦、继电器、传感器、开关、保护器件和连接器/负载端点,除非检查数据手册或引脚功能,否则不进入处理器/大型 IC 内部);检查局部原理图上下文(运行 render_region.py 渲染目标网络或坐标周围区域,在 SVG 文本中搜索附近中英文标签、块标题、注释、连接器标签和元件值,将图像/SVG 标签作为证据而非网表事实的替代);推断功能(综合网表端点、拓扑、局部标签和 PCB 确认,确认最终端点是负载、传感器、通信接口、电源轨、反馈路径、调试接口还是仅板级跳线,仅当拓扑证明时才声明有效极性,若传感器物理方向或阈值重要则要求数据手册或测量);输出前反思(反问什么证据能推翻结论,从外部连接器/负载反向检查每个声称的功能,确保覆盖率报告中所有 MCU 引脚、连接器和可疑网络都在输出中有所体现)。
  • 输出契约:针对目标电路解释,按结论、证据(网表/拓扑/图像或局部标签/PCB)、推理、固件/软件含义、风险/待确认的结构输出;针对 Markdown 设计文档,包含源文件和解析器置信度、系统/块摘要、完整 MCU/处理器引脚表、带原理图和 PCB 证据的外部连接器表、仅 PCB 跳线/测试点/端子、电源轨和域、功能块(执行器、传感器、通信、计量、保护)、带证据的关键网络追踪、固件/软件映射(GPIO/ADC/PWM/UART/I2C/定时器、安全状态、滤波器、故障、生产测试)、已确认事实/可能结论/未决问题。
  • 面向固件的规则:为每个输出包含启动安全状态;当已证明时包含上拉/下拉和预期空闲电平;为开关、传感器、转速/FG、水位、倾斜和故障输入包含去抖/滤波;仅当电阻拓扑和参考已知时才包含 ADC 缩放/校准;为每个执行器/传感器包含生产测试钩子;当物理传感器、继电器触点、光耦方向或外部线束可能反转行为时,将有效极性标记为 measurement_needed。

使用方式

本技能提供以下脚本和参考资源:

  • scripts/port_inventory.py:收集原理图连接器、完整符号引脚、MCU 引脚、可疑命名网络、局部标签和 PCB 端口/焊盘。用法示例:scripts/port_inventory.py --schdoc ... --pcbdoc ... --out inventory.json,需使用能导入 altium_monkey 的 Python 解释器(例如 py -3.12 script.py ...)。
  • scripts/coverage_report.py:汇总完整性并突出 MCU 引脚、仅 PCB 端口和可疑网络。用法:scripts/coverage_report.py inventory.json --format md --out coverage.md。
  • scripts/trace_net_deep.py:追踪网络穿过无源器件、驱动器、光耦、继电器、开关和连接器。
  • scripts/render_region.py:在目标网络端点或坐标周围渲染完整或裁剪的原理图 SVG。
  • scripts/schdoc_probe.py:当项目级工具不可用时,用于单页 .SchDoc 网络追踪和 SVG 渲染。
  • scripts/generate_firmware_design_report.py:生成中文 Markdown 固件设计脚手架。
  • references/topology-patterns.md:从连接元件推断功能时参考。
  • references/evidence-checklist.md:在最终确定设计文档或有争议答案前阅读。
  • references/firmware-from-hardware.md:生成嵌入式固件/软件设计细节时参考。

适用场景

  • 需要基于证据理解 Altium 原理图和 PCB 设计,避免对电路功能进行猜测。
  • 需要完整覆盖 MCU/处理器引脚、连接器引脚和 PCB 焊盘的审查报告。
  • 需要追踪特定网络或未知信号,确认其功能和连接端点。
  • 需要将硬件设计转化为固件需求,包括安全状态、滤波、ADC 校准和生产测试点。
  • 需要生成包含证据等级和未决问题的中文 Markdown 设计文档。

限制

  • 不提供 Altium 软件本身的安装或使用说明。
  • 脚本依赖 altium_monkey 包,需在能够导入该包的环境中运行。
  • 证据等级取决于可用输入文件(.PrjPcb、.SchDoc、.PcbDoc、截图/SVG、数据手册等),若缺少 PCB 文件则 PCB 确认不可用。
  • 有效极性、传感器物理方向或阈值等可能需要数据手册或实际测量才能确认。
  • 不编造功能、收费、价格、平台、效果或使用步骤;缺失事实明确写暂未提供。