1. 摘要
用 TRAE SOLO 从零开发了一个 EtherCAT 从站 ESI XML 配置与烧录工具,实现了网络扫描从站、ESI XML 解析与生成、XML 转 BIN、EEPROM 烧录/读取、BIN 文件可视化查看等完整功能链路,直接对接真实硬件验证通过。整个过程从需求分析到硬件烧录成功,SOLO 全程参与代码编写、协议解析、问题排查,大幅降低了工业通信领域的开发门槛。
2. 背景
工控行业EtherCAT总线设备用的较多,日常工作经常涉及 EtherCAT 从站设备的配置与调试。传统流程中,修改从站 EEPROM 需要使用 Beckhoff 的 TwinCAT 软件,安装麻烦,操作繁琐,且无法灵活批量处理。我希望有一个轻量级的 Web 工具,能够:
-
直接扫描 EtherCAT 网络识别从站
-
上传 ESI XML 文件并解析查看
-
将 XML 转换为 BIN 格式
-
将 BIN 烧录到从站 EEPROM
-
读取从站 EEPROM 内容并可视化
这些功能涉及 EtherCAT 协议栈、EEPROM 二进制格式规范、Web 前后端开发等多个领域,单靠手动开发周期很长
3. 实践过程
任务拆解
我将整个项目拆分为以下几个阶段:
-
基础架构搭建:Flask 后端 + 前端 SPA 页面
-
网络扫描功能:集成 SOEM/pysoem 实现 EtherCAT 主站扫描
-
ESI XML 解析与生成:解析标准 ESI XML,也能从扫描数据生成 XML
-
XML 转 BIN:研究 ETG2010 规范,实现 BIN 格式转换
-
EEPROM 烧录/读取:通过 pysoem 逐字读写 EEPROM
-
BIN 可视化查看:解析 BIN 结构,在页面上展示
关键 Prompt 与操作过程
第一步:搭建项目骨架
直接告诉 SOLO 需求:“创建一个网页版工具,用于下载和读取 EtherCAT 从站 XML 文件,使用 SOEM 开源库”。SOLO 一次性生成了 Flask 后端、前端 HTML/CSS/JS、ESI 解析器、ESI 生成器等完整项目结构。
第二步:硬件对接
连接真实硬件,通过网线连接2个EtherCAT从站
第三步:XML 转 BIN
提供了 ETG2010 规范 PDF 和参考 BIN 文件,SOLO 根据规范实现了完整的 BIN 格式转换器,包括 Header 构建、字符串表收集、SyncManager/PDO 类别构建、ConfigData 写入等。对比参考 BIN 文件,Vendor ID 和 Product Code 完全匹配。
第四步:EEPROM 读写
提供2个正确的XML源文件和对应的bin文件告诉solo自动烧录、回读,对比验证、重新修改完善操作
4. 成果展示
工具功能概览
工具包含三个核心页面:
网络扫描页面 — 选择网卡适配器,一键扫描 EtherCAT 网络,显示从站列表和详细信息(厂商ID、产品代码、同步管理器、PDO等),支持生成 ESI XML。
上传 XML 页面 — 拖拽上传 ESI XML 文件,自动解析并显示 XML 内容和解析结果(支持折叠),可一键转换为 BIN 文件并查看 BIN 结构。
烧录下载页面 — 支持上传 BIN 或 XML 文件,选择 EEPROM/FoE 烧录方式,烧录到指定从站;也可读取从站 EEPROM 内容,弹出 BIN 查看器显示厂商ID、产品代码、字符串表、同步管理器、PDO、HEX 转储等完整信息,并支持下载到本地。

硬件验证结果
-
扫描到 2 个 EtherCAT 从站(HCFA + HCQX-HC02-D4 编码器)
-
XML 转 BIN 后 Vendor ID、Product Code 与参考 BIN 一致
-
EEPROM 烧录 1281 words 成功,从站名称正确变更
-
EEPROM 读取 184 words,与参考 BIN 100% 匹配
5. 效果与总结
提效效果
-
传统方式:安装 TwinCAT(数 GB)→ 创建项目 → 配置从站 → 导出 XML → 手动转换 BIN → 烧录,整个流程至少 1-2 小时
-
使用本工具:双击 start.bat → 浏览器打开 → 拖入 XML → 一键转 BIN → 一键烧录,5 分钟内完成
SOLO 在流程中做了什么
-
全栈代码生成:从 Flask 后端到前端 HTML/CSS/JS,SOLO 一次性生成完整可运行的项目
-
协议规范实现:根据 ETG2010 PDF 规范,SOLO 实现了完整的 BIN 二进制格式编解码
-
问题排查:遇到 pysoem API 差异、Npcap 路径、EEPROM 读写格式等问题时,SOLO 快速定位并修复
-
迭代优化:根据实际使用反馈,SOLO 逐步优化 UI 体验(拖拽上传、BIN 查看器、折叠面板等)
可复用的方法
-
规范驱动开发:提供 PDF 规范文档给 AI,让其根据规范实现协议编解码,这种方式适用于任何有明确规范的技术领域
-
硬件在环验证:先让 AI 生成代码,再用真实硬件验证结果,形成"AI 生成 → 硬件验证 → AI 修复"的快速迭代闭环
-
渐进式需求:从核心功能开始,逐步添加功能(扫描 → XML → BIN → 烧录 → 读取 → 可视化),每一步都有可验证的产出











