
BOM映射工具/Solder Assistant
BOM映射工具/Solder Assistant
Rees0简体中文 | English | 繁體中文 | 日本語 | Русский
solder-assistant
BOM映射工具 - 基于MQTT的BOM焊接映射系统,帮助用户更好地完成PCB焊接工作
灵感来源&特别鸣谢
MQTT附属设备-智能焊接投影仪-结构借鉴: https://oshwhub.com/myzhazha/xp-g3-qu-dong
MQTT附属设备-智能料盒-寻位/硬件-插件协同: https://oshwhub.com/course-examples/project_kjqfbdaj
插件功能-BOM整理: https://jlc-ext.com/item/oshwhub/interactive-html-bom
特别注意
需要先搭建MQTT服务器,才能使用本插件的映射功能。
因附属设备的配置比较复杂且种类较多,所以本说明描述只针对插件的功能,不涉及任何附属硬件设备的配置。 详细的硬件说明请移步立创开源广场。
焊接插件附属硬件-串口转MQTT:链接待更新 焊接插件附属硬件-智能焊接投影仪:链接待更新 焊接插件附属硬件-智能料盒:链接待更新
项目简介
在产品研发打样阶段,当开发者和焊接人员不是同一人时,经常遇到某一个位号实在难找,导致焊接人员花大量的时间在寻找位号上,本项目通过BOM映射工具来帮助焊接人员节省大量的时间更好更迅速地完成PCB焊接工作,同时也可以帮助焊接人员更好地管理BOM清单,提高焊接效率和质量。
本项目是一个运行于 嘉立创EDA专业版 的扩展包,提供BOM清单智能管理和功能,支持将元件信息通过串口发送到MQTT网关,实现焊接投影控制。 另外,本项目中包含的串口转MQTT的工具开源在立创开源仓库中,因时间仓促,MQTT订阅类设备如投影仪、物料盒等还在开发阶段,目前投影仪进度靠前,欢迎各位大神一起参与开发。 如果不使用MQTT订阅类设备,也可以直接在BOM清单页面操作,无需配置MQTT网关,也会是个很好的BOM整理工具。
功能特性
功能贴图概览

BOM清单管理
- 📋 智能分类排序:自动识别电阻、电容、电感、二极管、三极管、MOS管、单片机等元件类型
- 🔍 搜索过滤:支持按位号、型号、封装搜索元件
- 📊 进度跟踪:实时显示备料进度和焊接进度
- ✅ 复选标记:支持勾选备料完成和焊接完成状态
- 📥 CSV导出:一键导出BOM清单为CSV文件
串口通信
- 🔌 Web Serial API:支持Chrome、Edge、Opera浏览器的串口通信
- 📡 帧结构:
0xAA 0x55 + LEN + TYPE + Payload + XOR + 0x0D 0x0A - 🛡️ XOR校验:确保数据传输可靠性
- ❤️ 心跳机制:每5秒自动发送心跳包,维持连接状态
MQTT附属设备配置

- ⚙️ WiFi配置:SSID和密码设置
- 📡 MQTT Broker配置:IP地址和端口设置
- 🏷️ 客户端配置:ClientID、用户名、密码设置
- 📨 订阅Topic配置:支持设备身份区分(串口网关/投影仪/物料盒)
- 📤 发布Topic配置:配置MQTT网关发布数据的目标Topic
- 💾 保存配置:将配置保存到Flash,重启后生效
- 🔄 重启设备:延迟重启MQTT附属设备
- 🔍 查询配置:查看当前MQTT附属设备配置参数
使用方法
1. 安装扩展包
npm install
npm run build
在嘉立创EDA专业版中安装生成在 ./build/dist/ 下的扩展包。
2. 打开BOM页面
点击 BOM映射工具 -> 打开BOM映射工具 扩展包加载后,BOM清单页面将自动显示,包含:
- 总元件数和元件种类统计
- 搜索框
- 备料进度和焊接进度条
- BOM表格(位号、型号、封装、参数、数量、坐标)

3. 连接串口
- 点击工具栏中的「🔌 连接串口」按钮
- 在弹出的串口选择对话框中选择目标串口
- 串口将以 115200 bps, 8N1 参数连接
4. 发送元件信息
点击BOM表格中的任意一行(非复选框列),系统将自动:
- 提取元件位号、型号、封装、参数、数量
- 将坐标值乘以100取整(避免浮点数精度问题)
- 打包成串口帧发送到串口转MQTT网关设备上
5. 配置MQTT附属设备参数

- 点击工具栏中的「⚙️ 配置MQTT附属设备」按钮打开配置面板
- 选择设备角色(串口网关/投影仪/物料盒),自动填充对应Topic
- 填写WiFi、Broker、客户端等配置参数
- 点击「📤 下发配置」发送配置到网关
- 点击「💾 保存配置」保存到Flash
- 点击「🔄 重启设备」使配置生效
协议文档
项目包含完整的串口通信协议文档:
配置消息类型
| TYPE值 | 宏定义 | 含义 |
|---|---|---|
0x10 | CFG_WIFI | WiFi配置 |
0x11 | CFG_BROKER | Broker地址配置 |
0x12 | CFG_CLIENT | ClientID配置 |
0x13 | CFG_AUTH | 认证信息配置 |
0x14 | CFG_SUBTOPIC | 订阅Topic配置 |
0x15 | CFG_PUBTOPIC | 发布Topic配置 |
0x16 | CFG_SAVE | 保存配置到Flash |
0x17 | CFG_REBOOT | 重启设备 |
0x18 | CFG_QUERY | 查询当前配置 |
0x19 | CFG_RESPONSE | 配置查询结果响应 |
设备身份区分
网关通过订阅不同的Topic实现设备身份区分:
| 设备角色 | 订阅Topic | 发布Topic |
|---|---|---|
| 串口网关 | smart_bom/dev/serial2mqtt/cmd | smart_bom/dev/serial2mqtt/data |
| 投影仪 | smart_bom/dev/projector/cmd | smart_bom/dev/projector/data |
| 物料盒 | smart_bom/dev/material_box/cmd | smart_bom/dev/material_box/data |
系统架构
┌──────────────┐ 串口 ┌──────────────┐ MQTT ┌──────────────┐
│ 嘉立创EDA │ ──────────→ │ 串口转MQTT │ ─────────→ │ MQTT Broker │
│ BOM扩展页面 │ 115200bps │ 网关(GD32) │ │ (EMQX等) │
└──────────────┘ └──────────────┘ └───────┬──────┘
│
┌───────────────────┼───────────────────┐
▼ ▼ ▼
┌──────────┐ ┌──────────┐ ┌──────────┐
│ 投影仪 │ │ 物料盒 │ │ 其他设备 │
│ STM32/ │ │ MCU │ │ │
│ ESP32 │ │ │ │ │
└──────────┘ └──────────┘ └──────────┘
开发指南
依赖安装
npm install
编译构建
npm run compile # 编译
npm run build # 构建扩展包
npm run lint # 代码检查
扩展配置
参考 开发指南 修改 extension.json 中的配置字段。
浏览器兼容性
- Google Chrome 89+
- Microsoft Edge 89+
- Opera 75+
开源许可
<a href="https://choosealicense.com/licenses/apache-2.0/" style="vertical-align: inherit;" target="_blank"></a>
本项目使用 Apache License 2.0 开源许可协议。
1.0.0
初始版本

类型
关键词
扩展信息
| 版本 | v1.0.0 |
| 发布者 | Rees |
| 发布时间 | 2026-07-28 11:55:31 |
| 名称 | solder-assistant |
| UUID | 48e7058c053148d9a98ad704c0d118fb |
| 适用EDA版本: | ^3.0.0 |
| 报告 | 报告滥用 |
评论