从 Excel 到 PLC 项目,一键生成硬件组态、IP 和 PROFINET 网络

封面图:AI 辅助工业自动化软件开发
最近我完成了一个很有意思的小工具。
准确地说,这个工具不是我一点点手敲出来的,而是我把需求告诉 AI,由 AI 直接帮我分析、开发、调试、封装,最后生成了一个可以运行的 C# 桌面软件。
这个软件的作用很直接:
把 Excel 表格中的硬件信息,自动导入到 TIA Portal V16 中,生成 PLC、HMI、扩展模块、IP 地址和 PROFINET 网络连接。
这不是一个普通演示页面,而是一个能连接博途、能创建项目、能生成 .ap16 工程文件的自动化组态工具。
01 我一开始提出的需求
我想做一个“博途 V16 自动硬件组态工具”。
这个工具需要完成一整套工程初始化流程:
·打开或连接 TIA Portal V16
·创建新的博途项目
·读取 Excel 表格中的硬件信息
·自动创建 S7-1200、S7-1500 和 HMI
·自动插入扩展模块
·自动分配 IP 地址
·自动创建并连接 PROFINET 子网
·最后封装成一个可以直接运行的 EXE 软件
换句话说,我不想只要一段代码。
我想要的是一个真正能跑、能用、能交付的小软件。
02 AI 具体帮我做了什么
这次 AI 做的事情不是简单回答问题,而是完整参与了整个开发过程。
第一步:分析 Excel 表格
AI 先读取并分析了我的 Excel 表格结构,识别出里面的关键信息:
·项目名称
·PLC 型号
·HMI 型号
·设备名称
·设备项名称
·扩展模块订货号
·网络接口信息
·IP 地址和子网信息
也就是说,AI 先理解了我的工程数据结构,而不是直接开始写代码。

配图:Excel 数据驱动博途自动组态流程
第二步:连接 TIA Portal V16
AI 使用 Siemens TIA Openness 连接了博途 V16。
这里有一个关键点:它不是模拟鼠标点击,也不是录制 UI 操作,而是通过博途官方开放接口直接操作工程。
通过 Openness,AI 帮我完成了:
·启动或附加到 TIA Portal V16
·创建新项目
·添加设备
·插入模块
·配置网络节点
·保存项目
这种方式比普通 UI 自动化更稳定,也更适合后续做成工程工具。
第三步:生成硬件组态
根据 Excel 表格,AI 成功生成了硬件组态。
包括:
·S7-1500 控制器
·S7-1200 控制器
·HMI 设备
·RS485 通信板
·PROFIBUS 通信模块
·IO-Link 模块
·DI/DQ 扩展模块
Excel 中的订货号会被软件识别,例如 OrderNumber:6ES7 214-1AG40-0XB0/V4.4、OrderNumber:6ES7 511-1AK02-0AB0/V2.8、OrderNumber:6AV2 123-2GB03-0AX0/16.0.0.0。
软件会根据这些订货号,在博途中创建对应硬件。
第四步:自动分配 IP 并连接网络
硬件创建完成后,AI 又继续帮我完成网络组态。
它自动创建了 PN/IE_1 子网,并给 PLC 和 HMI 分配 IP 地址,然后把所有以太网接口连接到同一个 PROFINET 网络中。
默认规则如下:
·S7-1500 从 192.168.0.1 开始
·S7-1200 从后续地址继续分配
·HMI 从 192.168.0.101 开始
·子网掩码为 255.255.255.0
·子网名称为 PN/IE_1
如果 Excel 中已经填写了 IP 地址,软件会优先使用 Excel 里的 IP。

配图:PLC、HMI 与 PROFINET 网络连接结果
第五步:封装成 C# 桌面软件
在前面的脚本验证成功后,AI 又把流程整理成了一个 C# WinForms 桌面软件。
软件界面支持:
·选择 Excel 文件
·选择项目保存目录
·设置项目名称
·设置基础网段
·设置子网掩码
·设置 PLC 和 HMI 的 IP 起始地址
·查看导入预览
·查看运行日志
·一键创建项目
最终生成的是一个可以直接运行的 EXE 文件。
不仅如此,AI 还继续帮我完成了中文界面、中文说明书、示例 Excel 模板、完整 C# 源码项目和 Release 版本编译。
这已经不是“写一段代码”,而是一个完整的软件雏形。
03 最终软件能实现什么效果
现在我的操作流程变得很简单。
只需要维护一张 Excel 表格:
1.写好 PLC、HMI、扩展模块型号
2.写好设备名称和设备项名称
3.写好 IP 地址,或者让软件自动分配
4.打开软件
5.选择 Excel
6.点击“创建项目”
然后软件会自动完成:
·连接博途 V16
·创建 .ap16 项目
·添加 PLC 和 HMI
·插入扩展模块
·配置 IP 地址
·创建 PROFINET 子网
·连接所有以太网接口
·保存项目文件
以前需要在博途中一步一步点选的重复操作,现在可以通过 Excel 批量驱动完成。
04 为什么这个工具有价值
在自动化项目里,硬件组态经常是重复性很高的工作。
尤其是这些场景:
·教学设备批量组态
·标准化产线项目初始化
·多 PLC、多 HMI 项目快速搭建
·工业网络实验平台配置
·相似设备结构的项目复制
这些工作如果全部手动完成,不仅效率低,而且容易出现问题:
·设备型号选错
·扩展模块漏插
·IP 地址重复
·子网没有连接
·设备名称不统一
而现在,规则可以沉淀到 Excel 和软件里。
工程师只需要维护表格,软件负责执行重复操作。
这其实是一个很实用的工程思路:
把人工经验整理成结构化数据,再让软件自动执行。
05 这次让我印象最深的地方
这次最让我印象深刻的,不是 AI 写了几段代码。
而是它真的参与了一个工程软件从 0 到 1 的完整过程。
整个过程大概是这样的:
1.提出需求
2.分析 Excel 表格
3.连接 TIA Portal V16
4.验证 Openness 接口
5.创建硬件组态
6.配置 IP 和网络
7.开发 C# 桌面软件
8.中文化界面
9.生成说明书和示例 Excel
10.封装 EXE
我只需要不断提出需求,例如:
·“帮我根据 Excel 生成硬件组态。”
·“帮我自动分配 IP 并连接网络。”
·“帮我封装成 EXE。”
·“帮我改成中文界面。”
·“帮我生成示例 Excel。”
AI 就能继续往下开发和完善。
这种体验更像是身边多了一个工程开发助手。
06 后续还可以继续扩展
目前这个工具已经可以完成基础硬件组态。
后续还可以继续加入更多功能:
·PLC 程序块导入
·PLC 变量表导入
·IP 地址冲突检查
·设备名称规则校验
·GSD 设备导入
·自动编译项目
·自动生成网络拓扑报告
·多项目模板管理
如果继续完善,它完全可以发展成一个面向实际工程的“自动化项目生成器”。
结语
这次实践让我看到,AI 在工业自动化领域并不只是写普通代码。
只要需求描述清楚,它也可以参与真实工程软件开发,从需求分析、接口调用、代码实现、调试验证,到最终封装交付。
这次我做出来的不是一个 PPT 概念,也不是一个普通 Demo。
而是一个真正可以连接 TIA Portal V16、读取 Excel、创建 PLC 硬件组态、配置 IP 和网络连接的软件。
对我来说,这就是一次很有价值的尝试:
把重复性的博途组态工作,变成可以由 Excel 和软件自动完成的标准流程。
如果后续继续完善,它也许会成为我日常自动化工程开发中非常实用的一个工具。
夜雨聆风