项目总体方案 v1.0
日期:2026-10-25
文档性质:产品定义、系统设计与阶段验收方案。尚未制作样机、编译固件、完成PCB设计或硬件验证。
适用对象:高校电子实验室、小型硬件研发团队、经常进行多项目手工装配的工程师。
同日复查补充:见复查与下一步_2026-10-25。本次将低成本价值实验前置,补充包装适配、错装恢复和维护工时验收;尚未产生实测结论。
1. 产品目标与已确认约束
用户上传BOM或原理图资料,系统整理物料需求、匹配库存、引导取料,并将物料分配到可带走的项目分格盒。离开柜子后,安卓手机能显示该盒各格的物料与位号;共享底座可进一步点亮需要的格子。项目结束后处理余料。
已确认:
- 大柜顶部有交互屏,库存格有取料指示。
- 便携料盒只装本次项目的物料,不承担整个库存的分类。
- 盒号、格号固定,内容按项目动态绑定。
- 不给每格、每个小料杯或每个便携盒安装屏幕。
- 不打印每次项目的清单;允许一次性制作永久盒号、格号和二维码。
- 手机端优先安卓。
- 不要求逐颗拍照、逐颗登记焊接完成,也不监控人的焊接姿势。
- 不能仅凭外观可靠辨别的不同物料必须分隔,不能让AI猜裸件身份。
- 取料数量、装入型号和余料数量由用户确认,第一版不宣称自动计数或自动实物鉴定。
- 本轮只形成设计,不据此直接采购、投板或发布产品。
产品承诺应表述为:减少查找、交接和复核负担,保存可靠的项目物料映射;不承诺消除所有人工错装。
2. 规模与版本边界
下面的数量是设计基线,不代表已经购买的配置。
| 层级 | 推荐配置 | 目的 |
|---|---|---|
| 原理验证 | 8个库存格、1个16格无源盒、1个双用灯座、现有电脑和显示器 | 先验证完整数据链和取放流程 |
| 比赛样机 | 32个库存格,4个8格模块;3个16格盒;2个同型号灯座 | 一台作柜内备料底座,一台作焊接工位底座;多个盒共用 |
| 后续扩展 | 复制8格节点、增加盒或工位底座 | 每次扩展后重新验证电源、总线和布局,不直接承诺任意规模 |
柜子设计为4行×8列库存格,上方为成品触摸显示器,下方留项目盒停放和备料区,背面为电路与线束检修区。显示器初选约15.6英寸HDMI+USB触摸类产品,实际型号、功耗和安装尺寸以采购资料和实物确认。
第一版料盒采用一种固定4×4布局,标记A1到D4。当前项目有8种物料时用8格,超过16种时增加第二个盒。大件或跨批次物料根据包装体积使用适配的大格盒并登记对应布局,不能将不同无标识裸件混入同格。第二种布局在完成第一种后设计;灯座只接受其已支持的布局。
第一版不做:机械臂自动抓料、散装小贴片件精确自动计数、称重代替型号识别、自动批准替代料、自动判断已经焊了多少、每杯电子标签、通用ERP、受控干燥柜和无人工参与的实物验真。
3. 四个产品单元
| 单元 | 功能 | 电子硬件边界 |
|---|---|---|
| 库存柜 | 存料、按任务点灯、显示取料数量、处理确认和库存记录 | 柜内主机、触屏、ESP32网关、8格节点 |
| 无源项目盒 | 分隔并携带当前项目材料 | 仅有盒体、固定格号和永久ID;无电池、屏幕、MCU和无线模块 |
| 安卓App | 扫盒、同步清单、查位号、离线看快照、选择工位引导目标 | 使用现有手机 |
| 共享底座 | 识别所放盒号、确认到位与方向、按清单点亮盒格 | 一套扫码、灯光和控制电子部件服务多盒 |
盒与底座之间无需Pogo供电:所有灯安装在底座,靠格口旁的灯位或导光窗口指示。盒只机械对位,不接电。
图示源码 · 可展开或复制阅读
flowchart LR
F[CSV/XLSX/EDA资料] --> A[解析与AI候选草稿]
A --> V[规则校验和用户确认]
V --> S[项目与库存服务]
S --> G[ESP32-S3柜控网关]
G --> N[RS485八格节点]
N --> C[库存格灯与按键]
S --> D[共享灯座]
D --> B[无源项目分格盒]
S --> M[安卓App]
M --> L[本地清单快照]
4. 一次完整使用流程
4.1 首次建库
为每种物料建立内部SKU,录入可核实的型号/MPN、封装和关键参数;导入已有库存表,或从原包装条码、标签OCR生成候选后核对。
一次性把库存格与物料、批次绑定。第一版一个格放一种SKU、一个批次;同SKU多个批次分开存放。空格可以换物料,但须先清空并更新位置记录。
无标签、身份不明的散料进入待识别区,不直接成为可分配库存。初始数量标记为实点、包装标称或估计;估计量不能被展示为已精确测量的数量。
建库是实际落地成本,需要计入试点工时,不能只演示已经整理好的柜子而忽略它。
4.2 上传项目
用户选择项目名、版本、数量的含义(单板/整批)、生产套数及明确的备损数量。优先输入CSV、XLSX或EDA导出的BOM。
原理图截图、PDF可辅助整理,但只生成待确认草稿;图片不能提供的封装、耐压等字段留空。KiCad等原生工程优先通过官方BOM导出能力取得结构化资料,不从任意图片硬猜完整清单。
4.3 整理与确认BOM
系统处理字段别名、单位、位号、数量和DNP,匹配库存。界面突出缺字段、数量冲突、封装体系不明和候选料冲突,保留原始行或页面证据。用户确认一次完整预览,并处理有争议项后锁定BOM版本。
锁定后变更必须生成新版本;不能覆盖已经装入盒中的旧清单。
4.4 生成备料计划
计划展示:需要多少、库存在哪、缺什么、将放哪个盒的哪格。
计算由规则完成:需求量=已确认单板用量×生产套数+用户明确选择的备损。预留只占用可分配量,不代表已经取走,也不代表已经消耗。
盒位分配优先不混料、尺寸适配,再考虑按种类或常用焊接顺序排列。第一版可用确定性分组,不需要为排盒位另训练模型。
4.5 绑定空盒
空盒放入备料底座,读取盒号,核对布局、方向、旧项目状态和当前权限。需要用户确认盒内已清空;扫码不能证明空盒。
生成新的KitID和BindRev,把BoxID+格号绑定到本次BOM版本。使用中的盒禁止静默重新分配。
4.6 逐种取料与装盒
每次只激活一组取放位置:
柜格B03 → BOX-003 / A1
22µF,指定封装及额定参数;本次取3颗;计划对应C1、C5、C8。
柜格取料灯与底座目标格灯亮。用户一次取齐这种物料,放入目标格,按一次确认;不是每颗都按。缺料或多拿时先修改实际数量,再确认。
确认的含义是“操作者声明已装入”。门磁只知道抽屉是否开,按钮只记录确认,系统都不能据此证明类型和数量。
实拿量超过预留时,必须重新校验可用库存并明确增加预留,不能占用其他项目已预留的物料;少拿则按实拿声明调拨,未满足数量继续标为缺料。未进入搬运的剩余预留可以释放或由用户保留待补;进入搬运但状态不明的部分按未决操作冻结,不能释放。所有行都按过确认不等于备齐。
抽屉开错可提醒;若错误元件已经装进正确格,第一版可能发现不了,必须提供纠正和隔离入口。
4.7 完成备料并领走
全部所需行处理后,按已确认装入量是否逐项满足锁定需求判定“全部备齐”或“部分备齐”。缺料不能被绿色完成状态掩盖。
安卓App扫描盒号,从本地服务同步当前项目、BOM版本、BindRev、ManifestRev和全部格子清单,显示同步结果。多盒任务可以一次同步该批次下的全部盒。
20µF与22µF是不同SKU,占不同格。App显示的是“已确认领入数量”,不是焊接期间的实时剩余量。
4.8 焊接期间
App常亮显示料盒图,点格子可看详细料号、关键参数和计划位号;搜索C5可以查到供料位置。用户不需要让系统观察其焊接姿势。
盒放到工位底座后,底座读出盒ID;服务核对KitID、BindRev、ManifestRev及布局后允许点灯。手机选位号或物料,底座点亮相应格。没有底座时仍能按固定格号和手机清单使用。
语音查询作为增强,输出必须来自清单;首版先保证文字/点选查询。不同耐压、封装或参数存在多个候选时,需要展示差异,不猜用户指的是哪一个。
4.9 余料与结项
用户选择:继续保留项目、清点退回、或确认领用核销。
退料时按盒格显示历史来源、批次和声明数量,用户核对实际退回数;历史来源只用于追溯,不能直接当作合法退料目的地。原柜格可能已经换料,必须核对目标格当前SKU、批次及位置绑定版本,不兼容则分配其他兼容格或空格。余料不明、混料或无法确认批次时转待复核区,不倒回可分配库存。
“累计领入-确认退回”的差额是领用核销差额,可能包含已焊、损耗和遗失,不能称为自动统计的实际焊接数量。
物料处理完、盒已清空并确认后,结清旧绑定,下次重新分配。MVP不做跨项目直接继承余料,避免新旧项目关系混乱。
5. AI具体做什么
5.1 必做能力
- 理解非标准BOM列名、值的写法和用户备料意图。
- 给出字段映射及标准化草稿,并指向原始证据。
- 基于真实库存查询提出候选,解释缺失、冲突和缺料。
- 查询“C5在哪个盒哪格”“这批还缺什么”“为什么没有匹配到这个型号”。
- 把自然语言修改变成可预览的计划差异,确认后才进入业务流程。
5.2 规则与人工边界
- 数量运算、库存账、身份绑定、权限、点灯和版本控制由确定性程序负责。
- 模型只能提交草稿,不能直接改库存、点灯、取消预留或批准替代。
- 未知耐压、功率、精度、温度特性或MPN后缀不能补猜。
- 同阻值、同容量不足以证明可替代。20µF不能自动变成22µF。
- 0603等封装码需明确英制/公制或已核实物理尺寸;缺上下文时标记歧义。
- NC不自动等于DNP,0Ω不自动等于不装;位号重复与数量冲突须提示。
- 原图看不清时请求核对,不用“高置信度”掩盖缺失信息。
5.3 流水线
确定性读取 → 原始字段和证据保存 → AI提出映射/规范化 → 类型与单位校验 → 库存约束查询 → 冲突列表 → 用户确认 → 不可变BOM快照 → 备料计划。
结构化CSV能够直接读取时,不必把每一行都交给模型。AI的增益应体现在减少非标准资料的清理时间,而不是对已经确定的算术重复调用。
5.4 模型部署选择
第一版提供可替换的AI适配层,使用现成模型,不训练基础大模型。已有PC先验证解析效果,随后根据同一测试集比较本地模型与远程服务的准确率、时延和资源占用。未完成实际模型与主机基准测试前,不承诺全部AI都能离线运行。
规则解析、已确认项目、库存与点灯均在本地工作。AI服务不可用时,允许手工导入和核对,已有任务继续使用。远程解析属于可选配置,不应让基础功能依赖外网。
6. 数据模型与库存语义
| 对象 | 核心字段 | 约束 |
|---|---|---|
| Part/SKU | 内部ID、MPN、制造商、参数、封装体系、数据来源 | 身份独立于储存位置 |
| StockLot | LotID、SKU、来源、计数依据 | 批次不凭外观补猜 |
| CabinetSlot | 柜ID、节点地址、槽号、当前物料、SlotBindRev | 固定实物编号,换料时递增位置绑定版本 |
| BOMVersion | 项目、版本、位号、数量、DNP、证据、审核记录 | 锁定后不可原地改写 |
| Kit | 本次备料ID、BOM版本、套数、负责人、状态 | 同一项目可有多次备料 |
| Box | BoxID、LayoutID、BindRev、当前Kit | 一次只有一个有效绑定 |
| BoxCell | BoxID、格号、SKU、批次、已确认领入量、计划位号 | MVP一格一种SKU、一个批次 |
| Transfer | OperationID、来源、去向、批次、声明数量、状态 | 唯一操作ID、可重试且只提交一次 |
| ManifestSnapshot | Kit、BindRev、ManifestRev、缓存时间、清单摘要 | 每次补料/纠错递增内容版本;离线只读 |
BindRev表示盒子换了一次项目绑定;ManifestRev表示同一绑定内的清单内容变化。两者不能互相代替。底座每次放盒另生成PlacementSeq,并与DockBootID组合,区分本次放盒和上一次。
6.1 事务与记账
预留:减少可分配量,不扣柜内账面在库量。
取料确认:原子记录“柜格减少、项目持有量增加”的调拨;不是宣布物料已焊接消耗。
焊接期间:项目实际剩余未逐颗测量,显示“未重新清点”,不能作为实时可分配库存。
退回:反向调拨,保持SKU与批次。
核销:用户结项确认差额并备注损耗;更正追加冲正记录,不直接抹掉历史。
已登记调拨应数量守恒、来源可用量不能为负;这不等于系统掌握所有时刻的物理总量。
6.2 状态机
图示源码 · 可展开或复制阅读
stateDiagram-v2
[*] --> 草稿
草稿 --> 已预留: BOM确认与库存校验
已预留 --> 装盒中: 空盒绑定
装盒中 --> 部分备齐: 存在缺料
部分备齐 --> 装盒中: 未领走前继续补料
装盒中 --> 可领走: 各项已确认装入量满足需求
部分备齐 --> 使用中: 用户接受缺料状态
可领走 --> 使用中: 同步清单并领盒
使用中 --> 余料核对: 结项
余料核对 --> 已结清: 退回或核销并确认空盒
已结清 --> [*]
单次调拨:意图已保存 → 等待转移 → 已提交;中断或无法判断是否搬完时进入待核对。
先保存操作意图,再亮灯。用户可能已经搬料但还没提交,因此掉电后不能自动再执行一次,也不能默认完成。重启界面展示来源、去向和状态,让用户核对后处理。
已进入人工搬运的未决调拨持续冻结相应数量和目标盒格;不能因会话结束或超时释放,也不能关闭或重绑盒子。人工核对后明确提交或取消,并保留处理记录。
6.3 并发与版本
首版一台柜同一时刻只有一个实际取料会话,其他人可查询或排队。后端仍须用事务处理预留竞争。
所有写操作带OperationID、KitID、BindRev、ManifestRev和相关位置的期望版本。重复提交返回原结果。旧项目缓存不能写入新绑定;同一绑定内的旧清单也不能覆盖新内容。
BOM变更生成增补、退回或替换差异;旧盒内容和旧清单不会跟着新文件静默改变。原版本仍可追溯。
7. 安卓App与网络
7.1 技术与页面
建议采用Kotlin、Jetpack Compose及Room本地数据库,首版面向安卓8及以上作为设计目标,实际最低版本按选定依赖核验。扫码优先评估ML Kit随APK打包的模型,避免依赖首次联网下载;国产安卓手机上必须实际验证。
页面只做:
- 连接柜子/配对;
- 扫码领盒与同步;
- 项目盒总览;
- 位号/物料查找及详情;
- 选择共享底座;
- 离线快照与同步状态。
管理物料、导入BOM等复杂编辑主要放在柜屏,减少手机端重复开发。
7.2 二维码
盒体永久编码示例:KITBOX:BOX-003:L16-V1。只含身份与布局入口,不存动态BOM。
扫码识别到盒号以后,通过已配对服务获取当前绑定。首次安装时扫描柜屏的配对信息或手工填写本地服务地址;后续盒号不因服务器IP变化而重印。二维码本身不是库存写入权限。
7.3 三种网络状态
| 状态 | 能做什么 | 限制 |
|---|---|---|
| 局域网正常、无互联网 | 查库存、备料、同步、点灯、原始BOM处理 | 云端AI可能不可用;可手工核对或使用已验证本地模型 |
| 手机与服务断联 | 查看已缓存盒清单、按位号搜索 | 明示项目/BindRev/缓存时间;不能写库存、退料、改绑定 |
| 新手机首次完全离线 | 可以解码固定盒ID | 没有对应缓存就不知道动态内容,须同步一次 |
重新联网同时核对BindRev和ManifestRev;同一项目内补料或纠正格位也必须刷新。引导请求携带两个版本,服务核验不一致时要求刷新,不按旧料号点灯。固定二维码无法让离线手机发现他人已换过项目或内容,App必须展示“离线快照,当前绑定和内容未核验”。
第一版工位灯座须与本地服务确认当前绑定后才工作;失联后灭灯。离线手机可以继续读清单,但不驱动未核实绑定的灯座。后续若要离线点灯,需另做具有绑定版本核验的设计与测试。
7.4 原生App而非假定网页可离线
柜屏可采用Web界面,但不能把普通局域网HTTP网页当作完整离线App。Service Worker要求安全上下文。采用安卓本地缓存可明确处理版本与断网状态,不强迫用户为首版安装本地HTTPS证书。
8. 硬件架构
8.1 推荐分工
- 服务主机:开发时用现有PC;成品化再装入Linux小主机。运行数据库、AI适配器、网页和设备服务。
- 柜控网关:ESP32-S3;与主机用USB串口,与柜内节点用RS485。模型调用不能阻塞柜控。
- 8格节点:候选ESP32-C3,关闭节点无线;管理8格灯、8确认键和8抽屉状态信号。
- 底座:ESP32-S3、16路灯驱动、盒到位信号及固定二维扫码模组,接入同一局域网。
- 触屏:成品HDMI显示+USB触摸,主机负责图形,避免同时自研大屏高速驱动。
上述芯片是方案候选;2027参赛平台和允许的扩展器件须按当届指南冻结,不能将当前方案视为已获得赛道认可。
8.2 8格节点参考器件
| 功能 | 候选 | 设计依据 |
|---|---|---|
| 灯驱动 | TLC59282 | 16路恒流输出,可控制8格各2灯,BLANK可全灭 |
| 输入扩展 | TCA9555 | 16路输入用于8按键+8抽屉状态,本地I²C |
| RS485 | THVD1410 | 最高500kbps类低速收发器,含总线开短路/空闲失效保护 |
| 抽屉状态 | 干簧或适当微动开关 | 型号与触发几何必须在实体抽屉上验证 |
逻辑工作电平按3.3V域设计,LED支路可用5V;不把5V逻辑直接送入ESP32。GPIO按最终开发板、Flash/PSRAM、USB和启动脚占用重新分配,本方案不是可直接布板的引脚表。
8.3 总线与控制协议
柜内只采用一条主干RS485,不并行开发CAN和无线节点。主机轮询,初始设计波特率115200,8N1。节点地址在调试时写入并在模块上标记。
帧包含协议版本、目的地址、会话ID、序号、类型、长度、负载和CRC。命令至少有状态查询、全灭、取料引导、任务取消和输入事件确认。CRC用于检错,不等于防伪认证。
总线按TI布线指南设计,A/B双绞并有参考地,保持短支线;只在实际主干两端按线缆阻抗端接。节点拆下不应切断背板主干。
8.4 错误灯光防护
- 上电默认BLANK全灭,写入清零数据后仍保持禁用。
- 只有新会话、有效任务、地址映射与当前租约均有效时才放行。
- 灯光命令有短时有效期,设计目标失联不超过2秒灭取料灯;实际值须测试。
- 网关只有服务任务租约仍有效时才续发节点指示,不能因RS485还通就无限保留旧任务。
- 看门狗复位和外部看门狗门控均应使消隐生效;最终电路在驱动验证阶段定型。
- 恢复供电后由服务重新确认任务,不能自动续亮上次状态。
- 错开抽屉只能提醒并暂停确认,不把门磁解释为已取料。
9. 无源料盒与底座机械
- 盒号贴在盒身,不仅贴在可互换盒盖上;外侧印格号与方向。
- 使用固定布局模板,禁止拆改隔板后仍沿用旧LayoutID。
- 隔板接近盖内表面,扣锁可靠,验证搬运不串格;小贴片件尽量保留剪段包装。
- IC保留合适的ESD包装。普通PLA壳体不自动具有防静电或屏蔽能力;本产品不替代防静电工作区。
- 底座采用非对称定位、机械止挡和盒到位检测,灯光避免串照邻格。
- 识别采用固定二维码读码模块,先验证光学距离和位置。DFRobot SEN0486可作参考模块,其接口和逻辑电平按当前资料及实物核对。
- 无法读码、方向错误、布局未知、服务器绑定未核验时不启动引导。
- 同一个灯座服务不同盒,不能把每个盒的身份简化为“当前放上来的就是上次那个”。
- 盒到位信号解除时立即本地灭灯,清除当前身份和引导租约;读到不同BoxID时同样失效。重新到位生成新的PlacementSeq并重新读码。服务响应须同时匹配DockBootID、PlacementSeq、BoxID、KitID、BindRev、ManifestRev和有效租约;迟到的旧响应直接丢弃,不能等待通信超时才处理换盒。
- 成品抽屉、盒和扫码模组实物测量后再定外形尺寸、孔位和打印间隙;不凭图片填写最终尺寸。
10. 供电、布线与数量清单
外置合规低压适配器,原型主机/显示器独立供电。柜内可用12V干线,各模块本地转换至所需5V/3.3V。LED不直接从12V经恒流芯片大量耗散;每支路有适配的保护和有锁接口,USB与外部电源避免反灌。
功率预算:
P输入 = 各支路输出功率分别除以对应效率后的总和。
再根据实际峰值、同时工作情形、温升及电源额定值确定余量。
示例仅用于预算方法:32格×2灯+一个16灯底座=80路。若按每路5mA、LED电源5V估算,LED支路约2W;配置两个16灯底座时是96路、约2.4W。这不包含主机、触屏、扫码模块、MCU和损耗。5mA是待亮度验证的设计工作点,不能据此选定整机适配器。
| 比赛样机项目 | 初始数量 | 备注 |
|---|---|---|
| 服务主机 | 1 | 先复用PC再封装 |
| 成品触控屏 | 1 | 接口/功耗与安装确认后采购 |
| ESP32-S3柜网关 | 1 | 不承担大模型推理 |
| 8格节点 | 4 | 同一PCB复制,地址独立 |
| 库存格灯 | 64 | 每格2个普通指示灯 |
| 确认键/抽屉状态开关 | 各32 | 先验证8格 |
| 柜内RS485收发器 | 5 | 网关1+节点4 |
| 共享底座 | 2 | 同一设计,分别备料与焊接 |
| 无源16格料盒 | 3 | 每盒ID唯一,无电子部件 |
| 本地网络设备 | 1套 | 保证无外网时仍有局域网 |
本轮不提供未核实的实时价格。采购顺序是验证模块、实物尺寸样件、整柜;不一次买齐整柜器件后才验证。
线径、保险、端子额定值、去耦与PCB线宽在实际电流、压降、器件手册和热测试后确定,不能用LED估算代替整机测量。
11. 软件与接口
建议服务端使用Python/FastAPI,单实例SQLite事务数据库;柜屏使用Vue 3/TypeScript;安卓使用Kotlin/Compose/Room;固件使用ESP-IDF。具体依赖版本在各模块首次成功构建后冻结记录,不能凭目录存在声称工具链可用。
服务拆为少量模块:
- 文件导入和原始证据;
- AI草稿与参数规范化;
- 物料及库存位置;
- 项目与BOM版本;
- 预留、备料和调拨事务;
- 盒/底座布局与清单;
- USB/网络设备会话;
- 记录、备份和评测。
不在人工装料等待期间持有数据库事务;AI推理也不能阻塞库存写事务。SQLite阶段只保留单个权威写入口;后续多柜扩展时再评估数据库升级。
接口示意(设计契约,不是已实现API):
- POST /api/v1/imports:创建导入任务,返回草稿及冲突。
- POST /api/v1/projects/{id}/bom-versions/{rev}/approve:确认并冻结。
- POST /api/v1/kits:创建本次套数与备损计划。
- POST /api/v1/kits/{id}/reserve:原子预留。
- POST /api/v1/boxes/{id}/bind:核对空盒声明后创建新绑定。
- POST /api/v1/transfers:保存调拨意图。
- POST /api/v1/transfers/{op}/confirm:以相同OperationID幂等提交。
- GET /api/v1/boxes/{id}/manifest:取得当前清单及版本。
- POST /api/v1/docks/{id}/guide:核对实际盒号、布局、放盒序号及绑定/内容版本后点灯。
- POST /api/v1/kits/{id}/returns:退回、隔离或结项核销。
客户端需传期望版本。冲突返回明确差异,不覆盖别人的修改。底座动作响应还须携带本次DockBootID与PlacementSeq,避免换盒后执行迟到命令。
未来代码目录建议:server、web、mobile/android、firmware/gateway、firmware/bin_node、firmware/dock、schemas、hardware、mechanical、evaluation、docs。本轮不创建空代码骨架。
基础输入与权限:上传内容只作数据,不执行表格宏或文件中的指令;模型输出必须过结构校验;二维码不携带写权限;库存写入与点灯需已配对身份;服务不默认暴露到公网。备份与恢复必须覆盖数据库、导入证据、布局和绑定版本。
12. 界面
柜屏主流程:
- 主页:项目、BOM导入、库存、待处理异常。
- 导入预览:原值/规范值/候选/证据,突出待确认项。
- 计划页:需求、已预留、缺料、盒数与格分配。
- 取料页:一个主要取放指令,大字数量,来源与目标图并排;另有少拿、多拿、暂停、纠正入口。
- 完成页:备齐/部分备齐,盒ID列表和手机同步状态。
- 退料页:逐种核对余料,单次确认,不逐颗操作。
手机主要画面:
项目名、BOM版本、BoxID、BindRev、联网/离线状态始终可见;
4×4格图显示物料简写和已领入量;
详细规格、计划位号、原来源通过点击查看;
不得用“剩余3颗”描述未清点物料。
底座与柜灯只辅助定位。界面同时给出文字编号,不能只靠颜色区分含义。
13. 分阶段研发与验收
以下16周是建议工程排程,不是完成保证。以实际人员投入和每阶段验收结果调整,2027报名与提交日期以当届公告为准。
| 阶段 | 建议时间 | 交付物 | 进入下一阶段的条件 |
|---|---|---|---|
| P0 场景与价值预验证 | 第1周起,按证据决定时长 | 3份获授权真实BOM与库存标签核对、现有PC的规则/AI小对照、原包装装盒与全周期纸面流程记录 | 明确字段缺失与人工工时;确认支持包装;初步判断相对普通盒+手机的增益。无证据时不直接扩整柜 |
| P1 数字流程 | 第2—3周 | BOM预览、项目盒图、库存调拨模拟 | 20µF/22µF分开;版本与数量校验正确 |
| P2 8格柜控 | 第4—5周 | 网关+一个节点,固定脚本点灯 | 逐格寻址、按键/门信号、断线灭灯通过 |
| P3 端到端备料 | 第6—7周 | 1盒1底座+安卓同步 | 领料、扫码查盒、位号查询、退料可闭环 |
| P4 32格扩展 | 第8—9周 | 4节点、第二底座、多盒任务 | P0与P3已取得小规模流程收益证据,再验证映射、地址、末端电压、全亮温升及错盒拒绝 |
| P5 AI深化与正式评测 | 第10—12周 | 扩展非标准BOM、证据与冲突处理、自然语言查询 | 在P0小对照基础上,用独立测试集证明AI减少纠错工时且不增加错误放行 |
| P6 稳定性 | 第13—14周 | 故障注入、缓存、恢复、备份、包装 | 断电、重试、换版本、离线等关键测试通过 |
| P7 真实试点 | 第15—16周 | 真实板卡备料记录、用户工时与错误数据 | 四类对照、问题整改、可重复演示 |
不能在P2失败时直接扩成整柜,也不能在P3身份链不可靠时用AI演示掩盖问题。
P0样本用于发现问题,不能代替正式评测。若AI没有优于合理规则流程,先调整能力定位;若完整方案相对普通盒+手机没有可测收益,先缩减或调整产品。P7是扩大试点,不应成为首次检验产品价值的阶段。
14. 评测与验收指标
指标是拟定目标,不是已测成绩。
14.1 AI与资料处理
收集30个获授权项目、约1000行资料,由两人核对并处理分歧;按项目划分开发/测试,不把同一BOM换表头后随机混入两侧。覆盖DNP、封装歧义、MPN后缀、单位写法、数量冲突和缺字段。
比较:规则读取+精确匹配;加入AI的完整流程。
报告关键字段准确率、错误候选率、自动放行覆盖率、需要确认的比例、每百行纠错时间。先追求错误放行少,而不是用大量拒绝制造好看准确率。未知关键参数擅自补全并进入已批准计划,目标0次。
如样本不足,不宣传99.9%等高精度。准确率、覆盖率、样本数和工况必须一起报告。
14.2 设备与流程
- 1000次随机地址引导中目标映射错误0次。
- 本地有效命令到灯变化目标95%低于500ms。
- 断联后取料灯关闭目标不超过2秒。
- 断电与重复提交不重复调拨、不把未知状态当作已完成。
- 盒反向、布局不支持、绑定版本冲突时不放行引导。
- 完全离线时只读已缓存快照,并显式显示未核验。
- 闭盖搬运后不同格物料不串格;不据此声称通过ESD认证。
- 全亮热测试测量各电源轨与器件温度,满足所选器件规定并无复位。
14.3 用户效果与付费
对比:
A. 常规抽屉+人工查BOM;
B. 普通分格盒+手机电子BOM/格位清单;
C. 只有柜格亮灯;
D. 柜格+无屏盒清单+共享底座完整方案。
控制BOM种类数、总数量、布局和用户熟悉程度,交叉安排任务顺序。记录总备料时间、找格时间、错拿/错放、纠正时间、额外确认次数、返工和清单查找时间。除备料外,还须覆盖剪带分装、交接、焊接期间查料及余料清点;首次建库工时与日常到货补库维护工时分别报告,并说明预期使用频次,不能用找料局部加速替代全周期收益。普通分格盒+手机清单是必须保留的低成本基线,用来判断整套柜体与底座的额外收益是否值得购买。
找3个真实团队试用,确认建库成本、维护责任、柜体占地和采购条件。目标买家是库存种类较多、多项目/多人交接的团队;小规模个人库存未必需要整柜。价格和付费意愿须通过实际报价反馈验证。
15. 比赛演示设计
演示目标是一个可检查的完整任务:
- 导入包含20µF和22µF、数量写法变化及一个缺字段的BOM。
- 展示规范化结果和来源证据;用户只处理有歧义项。
- 生成两套板的计划,展示缺料与盒分配。
- 按双端灯引导装入若干种材料。
- 拿走无屏盒,安卓扫码查C5位置。
- 放到另一共享底座,正确格亮;换成错误盒时拒绝。
- 断开网络展示缓存边界、再恢复;展示重复确认只记一次。
- 结项退回余料,给出数量记录与变化。
演示使用真实库存记录,数字有日志依据。不能把取料引导说成元件已自动验真,也不能把计划位号说成已经验证板上安装正确。
16. 创新论证与现有替代
已有技术:
因此不把“AI+点灯+库存表”宣称为首次出现。拟验证的差异:
- 多来源BOM资料在参数约束和证据下整理,减少人工核对负担。
- 物料从源柜迁移到低成本无源项目盒后,身份、版本与供料位置继续可查询。
- 通用底座服务不同项目盒,结合可靠调拨与退料闭环。
- 正常焊接时不增加逐颗记录和持续视觉监控负担。
这些是竞争力假设。若完整方案相比单纯柜灯没有显著改善交接错误和查找时间,需重新定义产品,而不是增加无关AI功能。
17. 第一批工程验证清单
建议按四类职责组织:固件/电路负责柜控、节点、底座和电源;后端/安卓负责业务事务、界面和缓存;AI/数据负责解析、证据和评测;机械/产品负责抽屉、料盒、底座及试用。角色可兼任,任务是否完成以阶段验收为准,不能用人数代替验证。
在最终电路和外壳图之前完成:
- 采购候选开发板具体版本、可用GPIO及SDK成功构建记录;
- TLC59282逻辑、LED工作电流、BLANK启动状态及看门狗门控;
- RS485实际线缆、端接、供电压降和错误恢复;
- 扫码模组真实焦距、码尺寸、供电及输出电平;
- 抽屉/料盒实测尺寸、闭盖防串格、灯光串照;
- 安卓目标机离线扫码、清单缓存、重启App和版本刷新;
- 真实BOM中封装/额定参数的完整率与需要人工补录的工作量;
- 2027赛题平台规则与当前主从架构的适配。
这些是下一阶段明确的工作输入,不以猜测数值代替。当前尚无可直接投板的GPIO表、功率规格、线宽表或制造尺寸。
18. 核对资料
以下来源用于确认既有功能和候选器件能力,不代表已经完成系统适配:
- Banner装配引导
- Part-DB官方文档
- InvenTree Build Orders
- KiCad 9.0 BOM导出
- ESP32-S3官方资料
- TLC59282
- TCA9555
- THVD1410
- TI RS485指南
- DFRobot SEN0486
- Android条码扫描
- Android数据层
- Service Worker安全上下文
19. 当前交付状态
配套文件:验收测试矩阵_v1.0提供60项待执行用例的阅读快照;CSV原始表 本地资料 / 待补充用于维护执行记录;料盒清单示例 本地资料 / 待补充只说明数据结构,不是已批准的真实取料任务。
已完成:需求收敛、架构、工作流程、AI边界、数据状态、离线边界、器件候选、阶段与验收设计。
未执行:代码开发、真实模型调用、采购、固件编译、原理图/PCB制作、机械定尺、硬件联调和用户付费试点。
方案图解
概念与设计示意,实际实现进展以正文为准。




来源与关联索引
- 来源
- 嵌入式比赛
- 原笔记
- 项目/智能备料柜/方案设计/项目总体方案_v1.0.md
- 资料性质
- 工程笔记。原文的版本、来源与验证边界继续保留。