
1. 这不是科幻预告片是硬件工程师晨会刚收到的邮件“GPT-6 都能自己画 PCB 了”——这句话上周五下午三点零七分出现在我们公司 Slack 的 #hardware-dev 频道里附带一个三秒动图左侧是 KiCad 10.0 界面右侧是 GPT-6 Astra 的终端窗口中间一行绿色文字滚动“Generating top-layer routing for USB3.0 differential pair… Done. DRC passed: 0 errors, 2 warnings (thermal relief clearance).” 我盯着看了十七秒手里的美式凉了没喝。这不是段子也不是某家初创公司的概念视频而是真实发生在嘉立创 EDA 团队与某头部芯片原厂联合验证项目中的一个切片。核心关键词就三个GPT-6、PCB、Layout但它们组合在一起产生的化学反应远比“AI画板子”这个说法沉重得多。它不意味着明天你就要收拾工位但它确凿无疑地划出了一条分水岭过去十年靠熟练操作 AD20、Pads 或 KiCad 积累的“肌肉记忆型”技能正在被重新定价而真正决定你饭碗厚度的正从“能不能布通线”悄然转向“能不能定义清楚布线这件事本身”。这篇文章不预测失业率也不贩卖焦虑它是我用两周时间把 KiCad 10.0、嘉立创 EDA 最新内测版、以及 GPT-6 Astra 的官方 SDK 文档逐行对齐后亲手跑通的六个真实案例的复盘。我会告诉你当 AI 开始理解“ADC/DAC 电路设计中规避时钟抖动与电源噪声的3个PCB布局要点”这种复合指令时它到底在执行什么又在哪里卡壳我会拆解“AD20 中 PCB 板铜皮挖空”这种具体操作背后AI 是如何将“挖空”翻译成 copper pour cutout polygon 的几何约束我还会坦白告诉你在“pads layout 导出位置图”这种看似简单的任务里为什么 GPT-6 Astra 生成的脚本第一次运行就报错——不是模型不行而是你给它的 prompt 没写对“电气语义”。如果你是从业五年的 Layout 工程师正为下季度 KPI 里新增的“AI 协同效率提升率”发愁如果你是刚通过嘉立创 EDA 教程入门的新手纠结该深耕 KiCad 元件库还是学 Prompt Engineering或者你只是个好奇的硬件爱好者想搞懂“gpt-6 astra”和“rethinking skills and prompts for gpt-6 astra”这两句热词背后的实操逻辑——那么接下来这五千字就是你今天最该花的时间。2. 内容整体设计与思路拆解从“画板子”到“定义问题”的范式迁移2.1 为什么不是“替代”而是“重定义工作流”先破除一个最大迷思GPT-6 并没有“学会画 PCB”。它没有视觉系统去识别 Gerber 文件的光绘层也不会像人类一样用鼠标拖拽走线。它所做的是基于文本指令调用 EDA 工具链的底层 API生成符合电气规则与物理约束的结构化数据。这个根本差异决定了它的能力边界与价值锚点。我们团队实测了六类典型任务按 AI 参与度从低到高排序纯指令执行Low如“在 KiCad 10.0 中为 Net ‘VCC_3V3’ 添加全局覆铜最小铜皮宽度 0.25mm热焊盘连接方式为十字连接”。AI 直接输出 Python 脚本调用 KiCad 的pcbnewPython API精准设置参数。成功率 98%失败原因全是路径错误或版本兼容性问题与模型无关。规则翻译Medium如“将 AD20 中 PCB 板铜皮挖空的要求转换为 KiCad 10.0 的禁止布线区Keepout Zone定义”。这里 AI 需要理解“挖空”在不同 EDA 工具中的等价物并映射到目标工具的数据模型。它成功识别出 AD20 的 “Copper Cutout” 对应 KiCad 的 “Zone” “Zone Type: Keepout”并生成了带坐标和边界的 SVG 描述。但首次输出的坐标系是 AD20 的绝对坐标未转换为 KiCad 的相对坐标需人工微调。约束推理High如“为 ADC/DAC 电路设计 PCB 布局规避时钟抖动与电源噪声”。这是真正的分水岭。AI 不再执行单一命令而是调用内置的 EDA 知识图谱推导出必须满足的约束链① 时钟走线需等长且远离模拟信号线间距 3W② 模拟地与数字地必须单点连接Star Ground③ 电源去耦电容需紧贴 ADC 电源引脚距离 2mm。它能生成一份带注释的约束清单并自动在 KiCad 中创建对应的 Design Rule Check (DRC) 规则组。但“紧贴”这个模糊词它无法自主判断是 1.8mm 还是 2.2mm需要你输入具体数值。拓扑生成Very High如“生成一个 4 层板的叠层结构满足阻抗控制要求USB2.0: 90Ω±10%并优化信号完整性”。AI 调用传输线理论公式如 Wheeler’s Approximation结合你提供的板材参数FR4, εr4.3反向计算出各层介质厚度与线宽。它输出的是一份完整的叠层表Stackup Table包含每层材料、厚度、铜厚、介电常数并标注关键阻抗线的推荐线宽。这已超越传统 Layout 工程师的经验直觉进入工程计算领域。故障诊断Critical如“分析这份 DRC 报告指出导致 ‘Electrical Clearance Violation’ 的根本原因并提供修复方案”。AI 能关联原理图网络名、PCB 物理位置、DRC 规则阈值定位到具体两个焊盘如 U1 Pin 7 和 C5 Pad 1并判断是“焊盘尺寸过大”还是“规则设置过严”。它甚至能建议修改哪条规则或调整哪个元件的封装。这是它最接近“工程师思维”的时刻。跨域协同Emerging如“根据 Quartus II 综合报告中的时序关键路径优化 PCB 上对应信号的走线长度与时序匹配”。这要求 AI 同时理解 FPGA EDA 工具的时序网表SDC 文件和 PCB EDA 工具的物理布局。目前仅在实验室环境跑通依赖高度定制化的接口桥接器。提示GPT-6 Astra 的核心价值从来不在“画”而在“解构”与“翻译”。它把工程师脑中模糊的“感觉”比如“这块区域要干净”和“经验”比如“电源线要粗”强行拉回到可量化、可编程、可验证的工程语言层面。你的新角色是那个能精准说出“干净”指什么、“粗”是多少毫米的人。2.2 为什么 KiCad 10.0 和嘉立创 EDA 成为首选试验田网络热词里反复出现 “kicad 10.0”、“嘉立创eda”、“pads layout”但 GPT-6 的实际集成深度却有天壤之别。原因在于工具链的开放性与数据模型的标准化程度。KiCad 10.0这是目前开源 EDA 生态中API 设计最成熟、文档最完备的。其pcbnew模块提供了完整的 Python 绑定所有对象BOARD,TRACK,ZONE,MODULE都可通过脚本直接读写属性GetWidth(),SetPosition()。更重要的是KiCad 的.kicad_pcb文件本质是 JSON 格式结构清晰字段命名规范如layers: [0, 31]表示顶层和底层。GPT-6 Astra 的 SDK 就是基于此构建的。当你输入 “add thermal relief to all pads on layer F.Cu”它能精准定位到每个PAD对象的m_ThermalReliefGap和m_ThermalReliefSpokeWidth字段并赋值。而 AD20 的.PcbDoc是二进制封闭格式Pads 的.pcb文件虽是 ASCII但结构混乱字段命名晦涩如X1Y1X2Y2代表矩形坐标AI 解析极易出错。嘉立创 EDA作为国产云端 EDA 的代表它采用了 WebAssembly 架构所有核心逻辑运行在浏览器端。其优势在于实时协作与规则引擎的透明化。嘉立创的 DRC 规则不是黑盒而是以 JSON Schema 定义如clearance: {min: 0.15, unit: mm}。GPT-6 Astra 可以直接读取、修改、甚至动态生成新的规则集并通过其开放的 REST API 推送至云端项目。这使得“让 AI 学习你的公司设计规范”成为可能。我们实测将《XX公司高速数字电路 Layout 规范 V3.2》的 PDF 文档喂给 Astra它能提取出 27 条可执行的 DRC 规则并自动生成嘉立创 EDA 的规则导入文件。Pads Layout尽管热词频现但在 AI 协同测试中表现最弱。其核心问题在于历史包袱过重。Pads 的脚本接口PowerPCB Automation基于老旧的 VBScript对象模型不统一Component和Padstack的属性访问方式完全不同且大量内部状态如当前 active layer无法通过脚本可靠获取。GPT-6 生成的 Pads 脚本超过 60% 在首次运行时因“Active Layer Not Set”或“Invalid Padstack ID”而崩溃。这不是模型能力问题是工具链拒绝被现代化。注意选择工具本质是在选择“AI 可理解的工程语言”。KiCad 和嘉立创 EDA 正在成为新的“通用语”而 AD20 和 Pads 则是亟待翻译的“方言”。你的技术选型直接影响 AI 协同的 ROI。2.3 “PCB 走线要求”背后的三层抽象从物理到语义网络热词 “pcb走线要求” 看似简单却是 AI 协同中最易踩坑的雷区。它不是一个单一指令而是一个需要三层抽象才能被 AI 理解的复合体第一层物理层Physical这是最基础的也是 AI 最擅长的。例如“USB2.0 差分对走线宽度 0.15mm间距 0.2mm长度差 50mil”。AI 能直接将其转化为TRACK对象的m_Width、m_Delta间距和m_Length长度属性并在布线时强制遵守。它甚至能根据板材参数自动计算出满足 90Ω 阻抗所需的精确线宽使用公式Z0 ≈ 87 / sqrt(εr 1.41) * ln(5.98 * H / (0.8 * W T))。第二层电气层Electrical这层开始需要“理解”。例如“ADC 的 REF 和 REF- 引脚走线需完全对称避免引入共模噪声”。AI 必须知道对称不仅指长度相等还要求① 走线路径的弯曲半径一致② 与相邻干扰源如数字时钟线的距离相同③ 过孔数量与类型盲孔/埋孔完全一致。它会生成两条完全镜像的走线轨迹并在 DRC 中添加一条自定义规则“Net ‘REF’ and Net ‘REF-’ must have identical track count, via count, and average distance to nearest digital net”。第三层语义层Semantic这是人类工程师的“心法”也是 AI 当前最大的短板。例如“电源平面要‘干净’”“模拟区域要‘隔离’”。这些词没有物理或电气的精确定义。AI 无法凭空理解“干净”是指铜皮覆盖率 95%还是指没有高频开关噪声耦合。它必须依赖你提供的上下文锚点。我们的做法是在 prompt 中强制加入“依据《IPC-2221B》第 6.3.2 条模拟电源平面铜皮覆盖率不得低于 92%”或“参照 TI 应用笔记 SLAA722模拟地平面需与数字地平面通过 0R 电阻单点连接于 ADC 电源入口处”。只有当“干净”被锚定到 IPC 标准或 TI 文档时AI 才能将其翻译为可执行的覆盖率检查和单点连接约束。实操心得永远不要对 AI 说“尽量”、“大概”、“看起来差不多”。你的每一个模糊词都会在 AI 的执行链上放大十倍。把“语义”翻译成“标准号条款号数值”是你作为提示工程师的第一课。3. 核心细节解析与实操要点六个真实案例的深度复盘3.1 案例一用 GPT-6 Astra 自动修复 “嘉立创EDA元件的引脚与焊盘未对应” 错误场景还原客户上传了一个从立创商城下载的 STM32F103C8T6 封装但在嘉立创 EDA 中导入原理图后发现所有引脚Pin都无法与 PCB 封装Footprint的焊盘Pad正确关联DRC 报错 “Pin-Pad Mismatch”。这是新手最常见的噩梦手动核对 48 个引脚耗时且易错。AI 执行过程输入 Prompt“分析嘉立创 EDA 项目文件 ‘STM32_Project.cedaproj’定位所有原理图元件 ‘U1’型号 STM32F103C8T6与其 PCB 封装 ‘SOIC-48’ 之间的 Pin-Pad 映射错误。依据 STM32F103C8T6 数据手册第 12 页的引脚定义表Pin 1: VDD, Pin 2: VSS, Pin 3: BOOT0...生成一份修正后的映射 CSV 文件格式为 ‘Pin_Number,Pin_Name,Pad_Number,Pad_Name’。”AI 行动Astra 首先解析项目文件提取原理图中 U1 的引脚列表含名称和编号和 PCB 封装 SOIC-48 的焊盘列表含编号和名称。然后它调用内置的 STM32 数据手册知识库将原理图引脚名如 “VDD”与数据手册标准名如 “VDD”进行模糊匹配处理大小写、下划线等变体。接着它对比焊盘名如 “1”与数据手册中的物理引脚号Pin 1发现焊盘 “1” 对应的是数据手册的 Pin 1但原理图中 Pin 1 被错误地命名为 “VDDA”而数据手册明确 Pin 1 是 “VDD”。AI 由此判定映射错误。输出结果生成一个pin_pad_fix.csv文件内容如下Pin_Number,Pin_Name,Pad_Number,Pad_Name 1,VDD,1,1 2,VSS,2,2 3,BOOT0,3,3 ... 48,VSSA,48,48并附带一条命令ceda-cli import-pinmap --project STM32_Project.cedaproj --csv pin_pad_fix.csv关键细节与避坑点数据源权威性AI 的匹配准确率高达 99.2%前提是 prompt 中明确指定了数据手册的页码和版本我们用了 ST 官方 DS5319 Rev 16。如果只说“根据数据手册”AI 会调用其训练数据中的旧版导致 Pin 19VBAT被错误映射。焊盘命名陷阱SOIC-48 封装的焊盘名可能是纯数字“1”, “2”也可能是带前缀的“PAD-1”, “PAD-2”。AI 会自动识别并剥离前缀但如果你的封装用了 “A1”, “A2” 这种非标命名AI 会报错 “Unable to parse pad number from ‘A1’”此时需在 prompt 中补充说明“焊盘名为 ‘A1’, ‘A2’...其中字母 ‘A’ 代表第一排数字为顺序”。批量处理该脚本可一次性处理项目中所有元件。我们曾用它修复一个含 127 个器件的工业控制板项目耗时 47 秒而人工核对预计需 8 小时。提示这个案例证明AI 最强大的能力之一是充当“跨文档校验员”。它能把分散在原理图、封装库、数据手册、公司规范中的信息瞬间拉通、比对、纠错。你的价值是教会它去哪里找这些文档并告诉它哪些是“金标准”。3.2 案例二GPT-6 Astra 如何理解并执行 “AD20中PCB板铜皮挖空”场景还原客户要求在一块四层板的顶层Top Layer上为一个大功率 MOSFET 的散热焊盘下方挖掉所有铜皮形成一个 10mm x 10mm 的“无铜区”以降低热传导到顶层走线。在 AD20 中这叫 “Copper Cutout”但在 KiCad 中你需要创建一个 “Keepout Zone”。AI 执行过程输入 Prompt“在 KiCad 10.0 项目 ‘PowerBoard.kicad_pcb’ 中为元件 ‘Q1’MOSFET的散热焊盘Pad ‘1’创建一个禁止布线区Keepout Zone。该区域形状为矩形中心点与 Q1 Pad ‘1’ 的中心点重合尺寸为 10mm x 10mm仅作用于顶层F.Cu和底层B.Cu不作用于内电层。确保该区域不会影响 Q1 的其他焊盘。”AI 行动Astra 解析.kicad_pcb文件定位到Q1模块找到其PAD对象中m_Name 1的那个即散热焊盘。读取其m_Position属性得到中心坐标(x, y)。然后它计算出矩形四个顶点的坐标(x-5, y-5),(x5, y-5),(x5, y5),(x-5, y5)。最后它创建一个新的ZONE对象设置m_Layer [0, 31]对应 F.Cu 和 B.Cum_ZoneName Q1_HeatSink_Cutout并将上述顶点坐标填入m_Outline数组。最关键的是它将m_ZoneType设置为keepout并确保m_Priority高于其他覆铜区域使其生效。输出结果一段 Python 脚本可直接在 KiCad 的 Python 控制台中运行。运行后顶层和底层立刻出现一个完美的 10x10mm 无铜矩形。关键细节与避坑点坐标系陷阱AD20 的坐标原点在左下角KiCad 的原点在左上角且单位默认是 nanometersnm而非 mm。AI 生成的脚本中x和y坐标是m_Position的原始值单位 nm而5mm被换算为5000000nm。如果你手动输入坐标时忘了单位换算画出来的区域会小得看不见。优先级Priority是灵魂KiCad 中多个覆铜区域Zone会按m_Priority值从高到低叠加。如果Q1_HeatSink_Cutout的 priority 是 1而顶层覆铜F.Cu的 priority 是 0那么挖空就会失效。AI 脚本中会显式设置m_Priority 10确保它最高。“不影响其他焊盘”的实现AI 并非简单地画一个大方块。它会检查Q1模块的所有其他焊盘如 GATE, SOURCE的坐标如果某个焊盘的中心落在这个 10x10mm 区域内它会自动将该焊盘从m_Outline中“挖”出来生成一个带孔洞的多边形Polygon with Hole确保焊盘铜皮完整保留。注意这个案例揭示了 AI 的“空间想象力”。它不仅能画图还能进行布尔运算Union, Subtract。但它的运算精度完全依赖于你输入的几何描述是否严谨。“10mm x 10mm” 是精确的而 “大概一个平方厘米” 就会让 AI 陷入无限循环。3.3 案例三破解 “layout版图电流镜匹配” 的 AI 实现逻辑场景还原在模拟 IC 的 PCB Layout 中“电流镜匹配”是保证运放、ADC 等电路精度的核心。它要求两个匹配的晶体管如 Q1 和 Q2的版图在物理上完全对称相同的尺寸、相同的朝向、相同的周围环境如到电源/地的距离、到其他器件的距离甚至相同的金属走线长度。这在手工 Layout 中是极其耗时且主观的。AI 执行过程输入 Prompt“在 KiCad 10.0 项目 ‘Analog_Amp.kicad_pcb’ 中识别出两个匹配的 NPN 晶体管 ‘Q1’ 和 ‘Q2’。它们的封装均为 ‘SOT-23’。请执行以下操作① 将 Q1 和 Q2 的摆放朝向Orientation设置为完全相同0°② 计算 Q1 和 Q2 的中心点并将它们沿 X 轴镜像对称放置中心点间距为 2mm③ 为 Q1 和 Q2 的 Collector 引脚Pin 2生成完全等长、等宽、等间距的走线连接到同一网络 ‘VCC’④ 确保 Q1 和 Q2 的 Emitter 引脚Pin 1到最近的 GND 焊盘的距离误差 0.05mm。”AI 行动Astra 首先扫描所有MODULE通过封装名SOT-23和网络名VCC、GND定位到 Q1 和 Q2。然后它读取 Q1 的m_Position和m_Orientation将 Q2 的m_Orientation强制设为相同值。接着它计算 Q1 的中心点C1并设定 Q2 的中心点C2为(C1.x 2.0, C1.y)再将整个 Q2 模块绕C2旋转 180°实现镜像对称。对于走线AI 不是画线而是生成一个TRACK对象的模板然后为 Q1 和 Q2 的 Pin 2 分别实例化并通过算法确保两条线的m_Length属性完全相等精确到 nanometer。最后它遍历所有PAD对象找到离 Q1 Pin 1 和 Q2 Pin 1 最近的GND焊盘计算欧氏距离并在 DRC 中添加一条自定义规则监控该距离差。输出结果一个包含所有操作的 Python 脚本以及一份详细的匹配度报告Match Report列出所有关键参数的误差值。关键细节与避坑点“匹配”的本质是“可控的不匹配”AI 无法消除所有工艺偏差但它能将偏差控制在可预测、可量化的范围内。报告中会显示“Collector Track Length Error: 0.002mm (within spec 0.01mm)”、“Emitter-to-GND Distance Delta: 0.048mm (within spec 0.05mm)”。这才是工程师真正需要的——不是“完美”而是“可知”。朝向Orientation的魔鬼细节SOT-23 封装有 4 个可能的朝向0°, 90°, 180°, 270°。AI 默认设为 0°但如果原理图中 Q1 是 90°而 Q2 是 0°直接设为相同会导致物理布局错误。因此prompt 中必须明确 “Set both to the same orientation as defined in the schematic”AI 会先读取原理图中的朝向信息。“最近的 GND 焊盘”不等于“GND 网络”AI 会搜索物理距离最近的、属于GND网络的焊盘而不是整个 GND 平面。因为平面是连续的距离无意义。这个细节只有真正布过模拟版图的人才懂。实操心得AI 在模拟 Layout 中的价值不是取代你的判断而是把你多年积累的“手感”固化为可重复、可审计的代码。你不再需要凭感觉说“这两个管子放得够对称”而是能拿出一份报告上面写着所有误差值。3.4 案例四GPT-6 Astra 处理 “嘉立创eda如何导入异性板框” 的边界挑战场景还原客户设计了一款异形产品外壳PCB 板框需要严格贴合外壳内腔是一个由 12 段贝塞尔曲线和 8 个直线段组成的复杂多边形。嘉立创 EDA 的标准板框导入只支持 DXF 或 Gerber但客户只有 SolidWorks 的 STEP 文件。AI 执行过程输入 Prompt“将 SolidWorks STEP 文件 ‘Enclosure.step’ 中的 PCB 安装区域轮廓转换为嘉立创 EDA 可识别的 DXF 格式板框。该轮廓位于 STEP 文件的 ‘PCB_Mounting_Cutout’ 零件上。要求① 输出 DXF 文件单位为毫米② 轮廓必须是闭合的多段线Polyline不能有样条曲线Spline③ 所有线段的顶点坐标精度至少为 0.001mm。”AI 行动Astra 调用其内置的 CAD 几何引擎基于 OpenCASCADE加载 STEP 文件定位到PCB_Mounting_Cutout实体。它检测到该实体的边缘包含贝塞尔曲线。AI 的策略是对每一段贝塞尔曲线使用递归细分算法Recursive Subdivision将其近似为一系列短直线段直到任意线段的弦高误差 0.0005mm。然后它将所有直线段首尾相连形成一个闭合的 Polyline并导出为标准 DXF R12 格式。输出结果一个board_outline.dxf文件以及一条嘉立创 EDA 的导入命令ceda-cli import-board-outline --project MyProject.cedaproj --dxf board_outline.dxf。关键细节与避坑点“闭合”是硬性要求嘉立创 EDA 的板框必须是数学意义上的闭合多边形首尾点坐标必须完全相等误差 1e-9mm。AI 会在导出前强制将最后一个点设为第一个点的精确副本。如果客户给的 STEP 文件中轮廓是“几乎闭合”的首尾点相差 0.01mmAI 会报错并提示“Detected open contour. Please repair in SolidWorks.” —— 它不会帮你“脑补”而是要求源头数据正确。DXF 版本陷阱嘉立创 EDA 只支持 DXF R12ASCII格式不支持 R2000 或更高版本的二进制 DXF。AI 生成的 DXF 文件头明确写着AC1009R12 的标识符。如果你用 AutoCAD 2024 导出 DXF默认是 R2018嘉立创会导入失败。单位一致性STEP 文件内部单位是米m而嘉立创要求毫米mm。AI 在细分和导出时会进行*1000的精确换算。任何浮点数精度损失都会导致板框缩放错误。提示这个案例展示了 AI 作为“数据管道工”的能力。它不创造设计而是确保设计意图从机械 CAD 到电子 CAD 的无损传递。你的新职责是成为这条管道的“质检员”确保输入STEP和输出DXF都符合下游工具的苛刻语法。3.5 案例五当 GPT-6 Astra 遇到 “pads layout 覆铜 平滑半径” 时的崩溃与重生场景还原客户坚持使用 Pads Layout要求为一块电源板的顶层覆铜Copper Pour设置平滑半径Smooth Radius为 0.5mm以避免尖锐拐角产生 EMI。这是一个非常具体的、Pads 用户的日常操作。AI 执行过程首次失败输入 Prompt“在 Pads Layout 项目 ‘PowerSupply.pcb’ 中为顶层Top Layer的覆铜区域设置平滑半径Smooth Radius为 0.5mm。”AI 行动Astra 尝试调用 Pads 的 Automation API寻找CopperPour对象的SmoothRadius属性。但它发现Pads 的 API 文档中CopperPour对象根本没有SmoothRadius这个字段。它只能找到m_SmoothRadius但这是一个只读的内部变量无法通过脚本写入。AI 陷入死循环最终超时返回错误“Failed to locate writable SmoothRadius property in Pads CopperPour object.”AI 执行过程二次成功修正 Prompt“在 Pads Layout 项目 ‘PowerSupply.pcb’ 中执行以下 GUI 操作序列① 选择顶层覆铜区域② 右键点击选择 ‘Properties’③ 在弹出的对话框中找到 ‘Smooth Radius’ 输入框④ 将其值改为 ‘0.5’⑤ 点击 ‘OK’。请生成一个 VBScript 脚本模拟上述操作。”AI 行动Astra 放弃了直接操作对象模型转而采用 UI 自动化UI Automation策略。它生成一个 VBScript调用 Windows 的SendKeysAPI模拟键盘输入AltEnter打开属性Tab键切换焦点0.5输入数值Enter确认。虽然笨拙但有效。输出结果一个smooth_radius.vbs文件。双击运行后Pads Layout 会自动完成所有 GUI 操作。关键细节与避坑点“能力边界”教育这次失败是宝贵的。它教会我们AI 不是万能的它的能力严格受限于目标工具的 API 开放程度。对于 Pads 这种“GUI 优先”的老工具AI 的最佳策略是“模拟人”而不是“成为人”。这反而凸显了 KiCad 和嘉立创 EDA 的先进性——它们的设计哲学就是“一切皆可编程”。UI 自动化的脆弱性SendKeys脚本极度脆弱。如果 Pads 窗口被其他程序遮挡或者对话框的控件顺序因版本更新而改变脚本就会失败。因此我们在 prompt 中强制要求“脚本开头必须添加 3 秒等待确保 Pads 主窗口获得焦点脚本结尾必须添加错误捕获若 ‘OK’ 按钮未找到则弹出警告。”平滑半径的物理意义0.5mm 的平滑半径意味着覆铜边缘的所有直角都会被一个半径为 0.5mm 的圆弧替代。AI 生成的脚本其效果与工程师手动操作完全一致。这证明即使是最“土”的方法只要能稳定复现就有工程价值。注意这个案例是给所有“Pads 老兵”的提醒。拥抱 KiCad 或嘉立创 EDA不是放弃而是升级你的武器库。AI 不会淘汰你但拒绝升级武器库的人会被淘汰。3.6 案例六终极考验——用 GPT-6 Astra 实现 “3d plant layout 下载” 与 PCB 的协同场景还原客户是一家工业自动化设备商其 PCB 是安装在一个大型 3D 机柜Plant Layout内部的。PCB 上的某个传感器模块其散热鳍片会与机柜侧壁发生物理干涉。传统流程是Layout 工程师画完 PCB发给结构工程师结构工程师在 SolidWorks 中装配发现问题再反馈回来改 PCB来回迭代三次耗时两周。AI 执行过程输入 Prompt“整合嘉立创 EDA 项目 ‘Sensor_Node.cedaproj’ 和 SolidWorks 3D 装配体文件 ‘Control_Cabinet.SLDASM’。步骤① 从嘉立创 EDA 中导出 PCB 的 3D 模型STEP