TIA Context 让AI真正理解PLC程序
从 PLC 程序文件,到 AI 可以理解的工程上下文
博途PLC工程智能体 | AI智能体博途网关 | 梯形图转SCL | 自然语言生成梯形图 | 自然语言生成SCL | 逆向生成程序块文档 | 梯形图在线查看 | 博途编程文档MCP | AI模型价格对比 | AI工具导航 | ONNX模型库 | Vibe Coding教程 | PLC在线仿真器 | Tripo 3D | Meshy AI
AI 正在进入工业自动化领域。
现在,让 AI 生成一段 SCL、LAD 或 FBD 程序已经越来越容易。
但在真实的 TIA Portal 项目中,工程师面对的问题通常不是:
“AI 会不会写代码?”
而是:
“AI 是否真正理解我的 PLC 项目?”
一个实际运行多年的 PLC 项目,往往包含:
- 数百个 OB、FB、FC、DB;
- 大量 PLC Data Type;
- 复杂的 Block 调用关系;
- 数千个 Tag;
- 多年的现场修改历史;
- 隐藏在程序网络中的控制逻辑。
这些信息并不只是代码。
真正决定程序含义的是:
- 谁调用谁;
- 哪个变量在哪里被写入;
- 一个信号从哪里产生,又流向哪里;
- 修改一个 Block 会影响哪些地方。
这就是 PLC 程序的上下文(Context)。
如果 AI 没有这些上下文,它只能看到代码片段。
而不是一个完整的自动化工程。
1、TIA-CONTEXT 是什么?
TIA-CONTEXT 是面向 TIA Portal 的程序上下文服务。
它将导出的 TIA Portal 项目转换为一个:
可查询的 PLC 程序知识图谱(PLC Knowledge Graph)
知识图谱不仅保存程序元素,还保存它们之间的关系:
Block
│
├── calls
├── reads
├── writes
├── instantiates
├── uses type
└── data flow例如:
OB1
│
└── calls
│
▼
FB_Motor
│
├── reads → StartCommand
│
├── writes → MotorRunning
│
└── uses → MotorDataType最终,一个 PLC 项目不再只是:
.apxx 项目文件
+
XML
+
代码文本而成为:
PLC Program Graph一个可以被工程师和 AI 查询的程序模型。
2、为什么 AI 需要 PLC 上下文?
对于普通软件项目,AI 可以通过读取源码理解项目。
但是 PLC 项目更加复杂。
例如:
工程师问:
“MotorRunning 这个信号为什么没有输出?”
传统方法:
- 搜索变量;
- 打开多个 Block;
- 查看 Network;
- 追踪调用;
- 手工分析数据流。
可能需要几十分钟甚至几个小时。
而 TIA-CONTEXT 可以直接回答:
MotorRunning
写入位置:
FB_Motor
Network 3
读取位置:
FC_Display
Network 5
调用链:
OB1
↓
FB_LineControl
↓
FB_Motor因为它理解的是程序关系,而不是简单文本。
3、TIA-CONTEXT 可以做什么?
3.1 自动理解和生成程序文档
很多工业项目都有一个问题:
程序还在运行,但没人真正了解它。
TIA-CONTEXT 可以重新构建项目结构:
- Block 清单;
- DB 和 UDT 关系;
- Block Interface;
- Network 结构;
- LAD / SCL / FBD 内容;
- 调用关系。
例如:
Production_Line
OB1
├── FB_Conveyor
│ ├── DB_Conveyor
│ └── UDT_Conveyor
│
└── FB_Alarm
└── DB_Alarm帮助工程团队生成:
- 项目说明;
- 交接文档;
- 维护手册;
- 自动化资产文档。
3.2 信号追踪和交叉引用
PLC 调试中最常见的问题:
“这个变量到底在哪里被影响?”
TIA-CONTEXT 可以回答:
谁写入?
MotorSpeed
Written by:
FB_Control
Network 12
FC_Adjust
Network 5谁读取?
Read by:
FB_Display
FC_Alarm
OB1数据流在哪里?
例如:
Sensor Input
↓
Scale Function
↓
Control FB
↓
Output Coil工程师不再需要手动翻阅大量程序块。
3.3 程序审计和质量检查
大型 PLC 项目中,很多问题不是语法错误。
而是结构问题。
例如:
未使用的代码
发现:
Unused Block
FC_OldMotor或者:
Tag written but never read多处写入
例如:
FB_A
│
▼
Motor_Enable
▲
│
FB_B多个程序同时修改一个信号,可能导致隐藏逻辑问题。
3.4 程序结构分析
TIA-CONTEXT 可以分析:
- Block 调用深度;
- Fan-in / Fan-out;
- Block 规模;
- 模块耦合关系。
帮助工程师定位复杂区域。
3.5 修改影响分析
工业项目最害怕什么?
不是修改。
而是不知道修改会影响什么。
例如:
准备修改:
FB_Motor工程师需要知道:
修改 FB_Motor 会影响:
OB1
FB_Line
FC_Service
相关 DB:
DB_Motor
相关类型:
UDT_MotorTIA-CONTEXT 可以分析:
Blast Radius(影响范围)
帮助工程师在修改前了解风险。
3.6 程序版本比较
传统文本 Diff:
old.xml
new.xml通常会产生大量无意义变化。
TIA-CONTEXT 可以进行语义级比较:
例如:
Version A
FB_Control
calls FC_Start
Version B
FB_Control
calls FC_StartNew直接告诉工程师:
- 哪些 Block 增加;
- 哪些删除;
- 哪些调用关系改变;
- 哪些 Tag 发生变化。
关注的是:
程序逻辑发生了什么变化。
3.7 为测试和仿真提供基础
PLC 测试最大的困难:
测试场景从哪里来?
TIA-CONTEXT 可以从程序逻辑中提取:
- 输入条件;
- 控制路径;
- 输出结果。
例如:
Start = TRUE
SafetyOK = TRUE
Pressure > Limit
Expected:
Motor_Run = TRUE同时可以根据 Block Interface 自动生成:
- Simulation 输入;
- 测试场景;
- Stub / Mock Block。
4、如何安装 TIA-CONTEXT?
TIA-CONTEXT 通过 TIA Portal Add-In 工作。
第一步:下载插件
访问 TIA Context官网 下载对应版本插件。
第二步:安装 Add-In
解压安装包。将 *.addin 复制到对应 TIA Portal AddIns 目录(例如: C:\Program Files\Siemens\Automation\Portal V19\AddIns)。
第三步:激活Add-In
打开 TIA Portal V19 项目,在Add-ins侧栏面板,找到 博途项目迁移工具(MigratorAddIn),在右键菜单中选择“激活”,即可启用插件

5、如何使用 TIA-CONTEXT?
5.1 生成知识图谱
首先打开需要分析的 PLC 项目。
在项目书上选择某个程序块,在弹出的右键菜单中选择【创建知识图谱】:

插件会提示并读取选中块所在设备的程序块、UDT和变量表,提交给云端生成项目知识图谱。
原始工程不会被修改。
5.2 使用MCP
TIA-CONTEXT 生成知识图谱后,会返回给用户MCP接口地址和API KEY:

你可以在任何支持MCP协议的AI助手或AI Agent中使用这个MCP Server。例如在Claude Code或Cursor中如下配置:
{
"mcpServers": {
"tia-context": {
"type": "http",
"url": "https://tia.hubwiz.com/tia-context/<your-context-id>/mcp",
"headers": { "Authorization": "Bearer <your-api-key>" }
}
}
}AI Agent 可以通过 MCP 查询:
What writes this signal?
What calls this block?
What breaks if I change this FB?
Where does this value come from?例如:
用户:
如果修改 FB_Motor,会影响哪些地方?
AI:
Affected:
OB1 Network 5
FB_Line Network 8
DB_Motor
UDT_Motor6、TIA-CONTEXT + AI Agent
未来的 AI PLC 工程,不应该只是:
需求
↓
AI
↓
生成代码更合理的流程应该是:
理解项目
↓
分析上下文
↓
定位修改位置
↓
生成方案
↓
验证影响
↓
执行修改TIA-CONTEXT 提供 AI 最缺少的一层:
PLC 工程上下文。
AI Agent 负责推理。
TIA-CONTEXT 负责让它知道:
这个项目是什么。
7、从 PLC 程序 到 PLC 知识图谱
过去:
TIA Portal Project
↓
Files
↓
Code现在:
TIA Portal Project
↓
TIA-CONTEXT
↓
PLC Knowledge Graph
↓
AI AgentPLC 项目第一次拥有了一个:
- 可以查询;
- 可以分析;
- 可以比较;
- 可以被 AI 使用;
的工程模型。
8、结束语
AI 进入 PLC 工程,真正的挑战不是生成代码。
而是理解已有工程。
因为工业自动化的大部分工作,并不是从零开发。
而是在已有项目基础上:
- 分析;
- 修改;
- 优化;
- 维护;
- 迁移。
TIA-CONTEXT 的目标,就是让 TIA Portal 项目从一个复杂的工程文件,变成 AI 和工程师都可以理解的程序知识图谱。
让 AI 不只是:
“看到 PLC 代码。”
而是真正:
理解 PLC 项目。