Imported from RyanZhangK/nuedc-skill (
SKILL.md). Install upstream withnpx skills add RyanZhangK/nuedc-skill. Copyright stays with the author.
电赛控制类解题方案生成器
概述
为全国大学生电子设计竞赛控制类赛道提供智能解题支持,涵盖三大功能: 赛前器件清单分析预测、赛中解题方案生成、赛后知识库沉淀。
不适用场景
若用户请求涉及以下场景,立即退出本 Skill:
- 电源类/信号类/仪器仪表类/通信类赛道
- 非竞赛的通用电路设计或硬件选型
- 无电赛上下文的 PID 调参或算法咨询
前置依赖
本 Skill 执行依赖以下工具能力:
- WebSearch — 网络搜索补充本地知识库
- WebFetch — 抓取搜索结果全文细节
- Bash — 执行 scripts/ 下的辅助脚本
- pdftotext (poppler-utils) — PDF 文本提取
Quick Start
首次使用?以下是三种典型用法:
| 你说 | Skill 做的事 |
|---|---|
| "这是2026年电赛器件清单:直流电机, 编码器, STM32F407, 摄像头..." | 🔮 解析清单指纹 → 匹配历年清单 → 输出预测报告 |
| "帮我分析这道电赛控制题" (附 PDF) | 📋 提取题目 → 检索相似题 → 输出 3 个方案 |
| "把这篇国一方案蒸馏到知识库" | 🔄 解析方案 → 去重检测 → 写入对应知识库 |
需要快速建议?说"快速方案"仅输出 Top1 推荐方案。默认输出 3 方案完整分析。
工作流选择
根据用户输入类型,自动进入对应工作流:
| 输入类型 | 进入工作流 |
|---|---|
| 器件清单(赛前公布) | 工作流A:赛题预测 |
| 题目PDF/题目描述 | 工作流B:方案生成 |
| 赛后复盘/批量资料 | 工作流C:知识库补充 |
工作流A:赛题预测
A.1 清单解析
- 提取用户提供的器件清单(PDF 用 pdftotext,文本直接解析;若为照片/截图,使用 OCR 或视觉模型识别)
- 将器件逐项归类至以下分类:
- 传感器类:摄像头、红外、超声波、IMU、激光雷达、颜色传感器、编码器等
- 执行器类:直流电机、舵机、步进电机、无刷电机、电磁阀等
- 主控芯片类:MCU 型号、FPGA、DSP、ARM、ADC/DAC 等
- 通信类:蓝牙、WiFi、433MHz、CAN、ZigBee 等
- 结构件类:小车底盘、机械臂套件、云台支架等
- 电源/其他:特定功率电源模块、特殊模块等
- 确定器件指纹,初步判断赛道方向:
- 若摄像头+电机+编码器为主 → 控制类(小车/运动控制)概率高
- 若无射频器件+有执行器 → 排除通信类
- 若有多路舵机+机械结构件 → 机械臂/板球/分拣类概率高
A.2 历年清单匹配
- 读取
references/problem-index.md,获取各年器件清单字段 - 用
scripts/match_materials.sh <器件清单文本>计算与各年的相似度 - 输出 Top-5 最相似年份及对应赛题,标注相似度百分比
- 若本地索引为空 → 按
references/web-search-strategy.md的模板触发 WebSearch
A.3 搜索补充
- 按
references/web-search-strategy.md的赛前预测关键词模板构造搜索词 - WebSearch:"{当前年份} 电赛 器件清单 赛题预测"
- WebSearch:"历年电赛 器件清单 对比 变化"
- 从搜索结果提取预测逻辑,通过质量门禁后沉淀到本地知识库
A.4 输出预测报告
按 references/prediction-template.md 格式输出预测报告,包含:
- 清单分析总览(传感器/执行器/通信指纹+赛道置信度+排除分析)
- 历年相似清单匹配表
- 清单变化趋势分析(与去年差集对比、新器件信号、MCU规格升级趋势)
- 3 个预测结果(按概率排序),每个预测含:依据、可能题型、关键准备、推荐器件补充
- 赛前冲刺建议(必练项目、必备器件、急救方案模板)
工作流B:方案生成
B.1 题目解析
- PDF 输入:
bash scripts/pdf_extract.sh <题目PDF>提取文本(若为空→可能扫描版→触发 OCR 或请用户提供文字版) - 文本输入:直接使用
- 提取关键信息:
- 被控对象:小车/无人机/机械臂/板球/摆锤/...
- 核心指标:精度要求、响应时间、负载、速度、行程...
- 约束条件:尺寸限制、功耗限制、成本限制、指定器件、平台约束(TI MCU/K230 等)...
- 评分点:从题目描述中识别评分权重分布
- 平台约束检测:若题目指定 TI MCU/MSPM0/K230 等,方案硬件选型必须匹配,违反约束的方案标记为"不符合竞赛规则"
B.2 相似题检索
bash scripts/index_search.sh "<关键词>"检索本地题目索引- 若本地命中不足 3 → 按
references/web-search-strategy.md的模板触发网络搜索补充:- WebSearch:"电赛{年份}{题号} 解题方案"
- WebSearch:"电子设计竞赛 {被控对象} 方案 CSDN"
- WebSearch:"github 电赛 {关键词} 代码"
- 输出 Top-5 最相似题,标注相似原因
B.3 方案生成
根据 references/control-patterns.md、references/hardware-db.md、references/algorithm-catalog.md 和 references/software-patterns.md 生成 3 个方案(若用户要求"快速方案",仅生成方案A):
- 从 software-patterns.md Part 1 选取视觉方案(颜色阈值 / YOLO / 灰度形态学)
- 从 software-patterns.md Part 2-3 选取 MCU 架构 + 通信协议 + 降级策略
方案A — 稳健路线(成熟方案,高成功率):
- 从已有成功方案中选取最成熟、实现难度最低的方案
- 优先选用控制模式库中标注为"成熟"的方案
- 硬件选型倾向于主流、有教学资源的型号
- 目标:稳妥完赛,确保基本分数
方案B — 创新路线(技术亮点,冲击高分):
- 在稳健方案基础上引入创新点(高级算法/新型传感器/优化结构)
- 参考历年高分方案的设计亮点
- 硬件可能采用性能更优的型号
- 目标:差异化竞争,争取奖项
方案C — 折中路线(平衡创新与风险):
- 核心系统采用成熟方案,关键加分点引入创新
- 模块化设计,创新部分可降级替换
- 目标:保证完赛基础上的高分策略
B.4 每个方案按模板输出
严格按 references/solution-template.md 的 11 项结构输出每个方案(标题格式:方案[A/B/C]—[稳健/创新/折中]:[方案名称]):
- 方案名称(一句话概括)
- 核心思路(200 字内)
- 系统框图(ASCII 框图 + 信号流向 + 电源分配图 + 通信拓扑)
- 硬件选型(含备选型号和采购渠道列)
- 算法策略(从 algorithm-catalog.md 选取合适算法,附关键代码骨架)
- 关键技术难点与对策 + 整体容灾降级策略
- 参考历年题/方案(引用 problem-index.md 条目)
- 实现难度评估(硬件/软件/调试 ⭐ ~ ⭐⭐⭐,附锚定描述)
- 预估物料成本与时间 + 四天三夜任务分解
- 团队分工建议(队员 A/B/C 角色分配与各阶段并行工作关系)
- 优缺点对比 + 评分点覆盖分析
B.5 方案评审
- 用
references/quality-checklist.md自检每个方案 - 按
references/web-search-strategy.md的关键词模板验证关键器件可采购性和技术可行性 - 输出三方案综合对比表(难度/成本/创新性/风险/预估得分/评分点覆盖)
- 输出「入场第一小时 CheckList」(确认题目匹配→检查器件齐全→分配任务→搭建最小系统)
- 给出最终推荐排序及理由
B.6 输出保存
- 将完整方案报告写入
/tmp/dian-sai-solution-{timestamp}.md - 告知用户文件路径
- 末尾追加反馈引导:
"方案是否有用?反馈:方案X的[部分]需要改进"
工作流C:知识库补充
C.1a 赛后复盘(预测闭环)
- 对比赛前预测与实际赛题
- 回填
references/prediction-accuracy-log.md(命中/遗漏信号/经验教训) - 沉淀命中和遗漏信号到预测逻辑
C.1b 批量资料处理
- 遍历用户提供的目录中的 PDF 文件
- 对每个 PDF 执行
bash scripts/pdf_extract.sh - 提取题目摘要 + 方案要点
- 按
references/web-search-strategy.md的模板搜索公开方案(补充多视角)
C.2 结构化沉淀
对每个新发现,用 bash scripts/append_knowledge.sh 写入对应库:
| 内容类型 | 目标文件 |
|---|---|
| 题目摘要 | references/problem-index.md |
| 解题模式 | references/control-patterns.md |
| 器件选型 | references/hardware-db.md |
| 算法细节 | references/algorithm-catalog.md |
| 软件模式 | references/software-patterns.md |
C.3 写入质量门禁
每条写入前通过 references/quality-checklist.md 的 7 条门禁条件。若脚本检测到与已存内容相似度 > 80%,则合并而非重复写入。
关键约束
- 默认生成 3 个方案,用户说"快速方案"时仅输出方案A
- 硬件选型始终附带可采购性提示和备选型号,不推荐停产/冷门器件
- 所有网络搜索需记录来源 URL,方便用户查证
- 优先中文源(CSDN、知乎、电子发烧友、GitHub README 中文、百度文库),辅以英文资料
- 方案中涉及的价格附带年份标注,提醒用户以实际购买价为准
常见错误与补救
| 错误 | 原因 | 补救 |
|---|---|---|
| 只有 1 个方案 | 知识库匹配不足 | 触发更多网络搜索,生成推测方案 |
| 器件型号已停产 | 知识库未更新 | 强制网络搜索验证可采购性,推荐替代型号 |
| 方案过于抽象 | 缺乏实现参考 | 触发 WebFetch 深挖开源实现和代码 |
| 预测偏差大 | 清单信号解读不足 | 多轮搜索验证,标注不确定性 |
| SKILL 未触发 | 用户描述不够明确 | 尝试补充竞赛关键词,或使用显式命令 /dian-sai 手动触发 |
| PDF 提取为空 | 扫描版/图片型 PDF | 触发 OCR 或请用户提供文字版/截图 |
| 网络搜索无结果 | 关键词过窄/网络不可用 | 按 web-search-strategy.md 的四轮渐进搜索策略扩展关键词 |
| 知识库文件缺失 | 误删/迁移 | 降级为纯网络搜索模式,提醒用户重新初始化知识库 |
References
知识库文件
references/problem-index.md— 历年题目索引references/control-patterns.md— 控制类方案模式库references/hardware-db.md— 常用器件选型速查表references/algorithm-catalog.md— 控制算法目录references/software-patterns.md— 软件模式库(视觉+MCU+集成)
模板文件
references/solution-template.md— 方案输出 11 项模板references/prediction-template.md— 赛题预测报告模板
策略与日志
references/web-search-strategy.md— 网络搜索策略与关键词模板references/prediction-accuracy-log.md— 预测准确性追踪references/knowledge-update-log.md— 知识库更新日志references/quality-checklist.md— 写入质量 7 条门禁
脚本
scripts/pdf_extract.sh— PDF 文本提取(依赖 pdftotext)scripts/index_search.sh— 关键词检索题目索引scripts/match_materials.sh— 器件清单相似度匹配(Jaccard)scripts/append_knowledge.sh— 知识库去重追加(含 flock 并发锁)