工业自动化项目分析服务器

一款用于分析西门子TIA Portal工业自动化项目的MCP服务器,支持提取、搜索和分析PLC代码、控制逻辑、报警和安全系统。

  • by puran-water
  • Python
  • 本地部署
  • 3 星标
  • 更新于
在 GitHub 查看 hvkshetry/tia-portal-mcp

使用说明

TIA门户MCP服务器

MCP(模型上下文协议)服务器,使AI助手能够分析西门子TIA Portal工业自动化项目。提取、搜索和分析PLC代码、控制逻辑、报警和安全系统。

特性

  • 结构化导出 -将TIA门户项目导出为有组织、可搜索的文件结构
  • 控制回路分析 -分析PID控制器,跟踪回路,识别级联/前馈配置
  • 信号流图 -构建依赖关系图,跟踪信号路径,检测反馈回路
  • 定时器和序列分析 -分析计时器,跟踪步骤序列,识别看门狗
  • 报警分析 -触发条件、因果矩阵、洪水风险检测
  • 安全性分析 -跳闸逻辑、联锁条件、SIF识别

需求

  • Windows(TIA门户要求)
  • Python 3.8+
  • TIA门户V13+已启用开放功能
  • NetworkX(用于逻辑图功能)

安装

# Clone repository
git clone https://github.com/your-org/tia-portal-mcp.git
cd tia-portal-mcp

# Set up virtual environment
python -m venv .venv
.venv\Scripts\activate  # Windows
# source .venv/bin/activate  # Linux/Mac

# Install dependencies
pip install -r requirements.txt

# Register TIA Portal DLLs (Windows only)
register_tia_dlls.bat

# Start server
python server_structured.py

用法

1.连接到TIA门户

connect_to_tia()
open_project("C:/path/to/project.ap17")

2.创建导出

create_structured_export("my_analysis")

3.分析

# Build signal flow graph
build_logic_graph()

# Trace signal dependencies
analyze_signal_dependencies("PUMP_1.RUN")

# Analyze PID controller
analyze_pid_controller("FIC_101")

# Check safety interlocks
trace_interlock_conditions("V-101")

可用工具(36)

类别 工具
出口 create_structured_export, load_structured_export, list_structured_exports
搜索 search_export_equipment, get_export_structure, get_search_guide
数据流 trace_signal_dataflow, get_project_dataflow_statistics
控制 analyze_pid_controller, trace_control_loop, generate_pid_tuning_report, find_control_loop_interactions
计时器 analyze_timer_logic, trace_sequence_logic, find_watchdog_timers, analyze_pulse_generators
警报 analyze_alarm_triggers, generate_alarm_matrix, find_alarm_flooding_risks
安全 analyze_trip_logic, trace_interlock_conditions, find_safety_functions, generate_interlock_matrix
逻辑图 build_logic_graph, analyze_signal_dependencies, trace_logic_path, detect_logic_cycles, analyze_timing_paths

出口结构

export_name/
├── raw/                    # Raw XML by PLC
│   └── PANEL_1/
│       ├── INTERLOCKS.xml
│       └── ALARMS.xml
├── parsed/                 # Processed indices
│   ├── operands/
│   ├── equipment/
│   └── cross_references/
├── search/                 # Search-optimized text files
└── metadata.json

兼容客户端

  • 克劳德代码CLI
  • Codex CLI
  • Claude代理SDK
  • 任何兼容MCP的AI客户端

安全

TIA门户网站的所有操作 只读。服务器无法修改项目。

文档

许可证

MIT许可证-请参阅 许可证