Skip to main content
Glama
ProJewks

THE_Studio5000_AI_Assistant_V35

by ProJewks

AVISO:

Esta es una bifurcación de la edición v35 del Asistente de IA de Studio 5000, mantenida de forma independiente. Por defecto usa Logix Designer de Studio 5000 v35, pero admite cualquier versión instalada mediante la opción --version del script de configuración (consulta Elegir tu versión de Studio 5000 más abajo). Crédito al proyecto original en el que se basa: rivie13/studio5000-AI-Assistant (v36 por defecto). Este repositorio es un prototipo: eres libre de bifurcarlo y hacerlo tuyo.

🤖 Asistente de Programación de PLC con IA para Studio 5000

Este revolucionario servidor MCP (Model Context Protocol) transforma la programación de PLC al ofrecer generación de código con IA, creación de rutinas L5X, generación de archivos .ACD reales e integración perfecta con Studio 5000. ¡Convierte especificaciones en lenguaje natural directamente en lógica de escalera funcional y proyectos completos de Studio 5000!

TL;DR - Configuración con un solo comando

# 1. Get Python 3.12 (NOT 3.11!) from python.org
python --version  # Must show 3.12.x

# 2. Clone the repo
git clone https://github.com/ProJewks/THE_Studio5000_AI_Assistant_V35.git
cd THE_Studio5000_AI_Assistant_V35

# 3. Run the setup script — installs everything and writes your config for you
python setup.py

setup.py detecta tu versión instalada de Studio 5000 (v35 por defecto), instala requirements.txt, instala el wheel del SDK de Logix Designer si encuentra uno, genera archivos de configuración MCP listos para usar con las rutas correctas para tu máquina y ejecuta la autoprueba integrada. Consulta Elegir tu versión de Studio 5000 si no usas v35, y Qué genera setup.py para saber qué hacer con los archivos que crea.

¡Eso es todo! ✅ Salta a Configuración para Claude Desktop si prefieres conectarlo manualmente, o simplemente apunta Claude Desktop/Claude Code a los archivos que setup.py ya generó.

Related MCP server: tiacommander-mcp

🔀 Elegir tu versión de Studio 5000

Esta bifurcación usa v35 por defecto, pero no estás limitado a ella. setup.py escanea tu máquina en busca de cada versión instalada de Logix Designer y te permite elegir:

# Auto-detect and prompt interactively (default: v35 if present)
python setup.py

# Force a specific version, e.g. the upstream project's v36
python setup.py --version 36

# Non-interactive, accept every default (CI / scripted installs)
python setup.py --yes

# Skip prompts but still write straight into Claude Desktop's config
python setup.py --version 37 --write-claude-desktop --yes

Si no se detecta una versión automáticamente, el script recurre a la ruta de instalación estándar de Rockwell (...\Logix Designer\ENU\v<N>\Bin\Help\ENU\rs5000) para el número que le indiques — anúlala con --doc-root en el propio servidor (consulta Paso 5) si tu instalación se encuentra en una ubicación no estándar.

📦 Qué genera setup.py

Cada archivo siguiente es específico de la máquina (rutas absolutas, tu intérprete de Python) y está en git-ignore — regenéralos en cualquier momento volviendo a ejecutar python setup.py:

Archivo

Usado por

mcp_config.local.json

Configuración MCP genérica/estilo Cursor

claude_desktop_config.snippet.json

Pégalo bajo "mcpServers" en la configuración de Claude Desktop (o deja que --write-claude-desktop lo haga por ti)

.mcp.json

Configuración MCP de ámbito de proyecto de Claude Code — se detecta automáticamente al abrir este repositorio en Claude Code

mcp_config.json (sin .local) permanece en el repositorio como una plantilla simple de referencia — no lo edites a mano, ejecuta setup.py en su lugar.

📚 Recursos para nuevos miembros del equipo

🎯 Guías completas para el equipo disponibles:

🚀 Inicio rápido para compañeros de equipo

¿Listo para usar esta herramienta? Sigue estos pasos:

Requisitos previos ⚠️ CRÍTICO

  • Python 3.12 (NO 3.11 ni versiones anteriores: ¡el SDK no funcionará!)

  • Studio 5000 Logix Designer v35 o posterior instalado en tu máquina

  • Sistema operativo Windows (el SDK de Studio 5000 solo funciona en Windows)

Pasos de instalación

  1. Verifica Python 3.12:

    python --version
    # Must show Python 3.12.x - if not, install Python 3.12 from python.org
  2. Clona y ejecuta la configuración:

    git clone https://github.com/ProJewks/THE_Studio5000_AI_Assistant_V35.git
    cd THE_Studio5000_AI_Assistant_V35
    python setup.py

    Esto instala las dependencias, el wheel del SDK y genera tu configuración en un solo paso: consulta el TL;DR anterior. Los pasos 2-3 siguientes son el equivalente manual, paso a paso, si prefieres hacerlo tú mismo.

  3. Instala el SDK de Studio 5000 (para archivos .ACD) — solo es necesario si omites setup.py:

    pip install "C:\Users\Public\Documents\Studio 5000\Logix Designer SDK\python\logix_designer_sdk-*-py3-none-any.whl"
  4. Prueba la instalación:

    python src/mcp_server/studio5000_mcp_server.py --test

    ✅ Debería mostrar: Documentación indexada, SDK disponible, pruebas superadas

  5. ¡Listo para usar! - El servidor detectará automáticamente las rutas de instalación de Studio 5000

¿Tienes problemas? Consulta la sección Solución de problemas más abajo.

🚀 Funciones impulsadas por IA

🧠 De lenguaje natural a código PLC

  • Generación de código con IA: Convierte inglés sencillo en lógica de escalera funcional

    • "Arranca el motor cuando se pulse el botón de arranque y detenlo cuando se pulse el botón de parada" → Lógica de escalera completa con enclavamiento de arranque/parada correcto

  • Reconocimiento inteligente de patrones: Detecta automáticamente patrones de arranque/parada, temporizadores, contadores y E/S básicas

  • Creación inteligente de etiquetas: Genera automáticamente etiquetas de E/S apropiadas con nombres descriptivos

  • Validación de instrucciones: Valida el código generado contra la base de datos oficial de documentación de Studio 5000

📁 Generación de proyectos L5X

  • Creación de estructura de proyectos: Genera archivos de proyecto L5X con programas, rutinas y etiquetas (puede crear rutinas para importar en proyectos existentes y puede crear archivos L5X vacíos para desarrollarlos manualmente)

  • Soporte de múltiples controladores: Compatibilidad con varios controladores Allen-Bradley (1756-L83E, 1756-L85E, etc.)

  • ⚠️ Limitación actual: Los archivos L5X generados pueden tener problemas de formato RLL que requieran correcciones manuales

  • Salida estructurada: La estructura XML sigue el esquema de Studio 5000 pero puede necesitar validación

  • 💡 Mejor práctica: Úsalo para plantillas de proyectos y luego añade la lógica manualmente en Studio 5000

🏭 Creación de proyectos .ACD reales

  • Integración con el SDK oficial de Studio 5000: Crea archivos .ACD auténticos usando el SDK oficial de Rockwell

  • Compatibilidad directa con Studio 5000: Los archivos .ACD se abren directamente en Studio 5000 sin conversión

  • ✅ Creación de proyectos vacíos: Plantillas ACD limpias listas para desarrollo manual (FIABLE)

  • ⚠️ Creación de proyectos completos: Experimental: importación parcial del SDK para MainProgram/MainTask (NO FIABLE)

  • Control de versiones: Compatible con diferentes revisiones principales de Studio 5000 (v35 por defecto)

  • 💡 Recomendado: Usa el flujo de trabajo de creación de ACD vacío + importación manual de L5X

🔍 Búsqueda semántica con vectores

  • Análisis L5X inteligente: Búsqueda semántica en archivos L5X masivos (probado con más de 49 000 líneas)

  • Procesamiento a escala de producción: Maneja proyectos complejos de automatización industrial

  • Inserción inteligente de código: La IA encuentra posiciones óptimas para nueva lógica en rutinas existentes

  • Análisis de dependencias: Detección automática de relaciones y dependencias entre componentes

  • Reconocimiento de patrones: Comprende control de transportadores, lógica de codificadores, manejo de fallos y patrones de temporizadores

  • Base de datos vectorial FAISS: Búsqueda semántica ultrarrápida con similitud basada en incrustaciones

📐 Análisis de dibujos técnicos

  • Dibujos de ingeniería en PDF: Extrae y busca en dibujos técnicos (P&ID, esquemas eléctricos, diagramas de lógica de control)

  • Integración con AutoCAD: Analiza PDF generados por CAD con texto enriquecido y gráficos vectoriales

  • Contexto de equipos: Encuentra automáticamente dibujos referenciados por etiquetas de equipos y componentes del sistema

  • Mejora con IA de visión: Análisis avanzado de diagramas técnicos complejos y conexiones de equipos

  • Capacidad de referencias cruzadas: Vincula dibujos con código L5X existente y bases de datos de etiquetas para una comprensión completa del sistema

📊 Sistema avanzado de análisis L5X

  • Pruebas en producción real: Verificado con archivos L5X reales de 2,9 MB de sistemas industriales

  • Puntuación de complejidad: Evaluación automática de la complejidad de rutinas y necesidades de refactorización

  • Mapeo de componentes: Realiza seguimiento de temporizadores, contadores, etiquetas y sus interconexiones

  • Modificaciones quirúrgicas: Inserción precisa de escalones sin alterar la lógica existente

  • Flujo de trabajo profesional: Análisis de solo lectura con capacidades de modificación impulsadas por SDK

📚 Acceso a documentación

  • Base de datos completa de instrucciones: Busca en la documentación oficial de Studio 5000

  • Búsqueda inteligente: Encuentra instrucciones de PLC por nombre, descripción, categoría o funcionalidad

  • Información detallada: Obtén detalles completos sobre sintaxis, parámetros y uso de instrucciones

  • Navegación por categorías: Explora instrucciones por categorías funcionales (Alarma, Matemáticas, Movimiento, Temporizador, etc.)

  • Soporte de idiomas: Información sobre qué lenguajes de programación admiten cada instrucción (Ladder, ST, FBD)

  • Validación en tiempo real: Validación instantánea usando la documentación oficial de Rockwell

📋 Guía de instalación detallada

Requisitos previos: ¡LEE ESTO PRIMERO! ⚠️

🚨 REQUISITO CRÍTICO: SOLO PYTHON 3.12

  • Este proyecto REQUIERE Python 3.12: las versiones anteriores fallarán

  • El SDK de Studio 5000 es incompatible con Python 3.11 y versiones anteriores

  • Verifica tu versión de Python PRIMERO antes de continuar

Requisitos del sistema:

  • Python 3.12.x (Descárgalo de python.org)

  • Studio 5000 Logix Designer v35 o posterior instalado

  • Sistema operativo Windows (el SDK de Studio 5000 solo funciona en Windows)

  • Privilegios de administrador pueden ser necesarios para la configuración inicial

Configuración paso a paso

Paso 1: Instalar Python 3.12

  1. Descarga: Ve a python.org y descarga Python 3.12

  2. Instala: Durante la instalación, MARCA "Add Python to PATH"

  3. Verifica: Abre el Símbolo del sistema y ejecuta:

    python --version
    # Must show: Python 3.12.x (if not, restart command prompt)

Paso 2: Obtener el proyecto

  1. Clona el repositorio:

    git clone https://github.com/ProJewks/THE_Studio5000_AI_Assistant_V35.git
    cd THE_Studio5000_AI_Assistant_V35
  2. ¿Prefieres la ruta de un solo comando? Ejecuta python setup.py ahora y salta al Paso 4 — hace los Pasos 3 y 3.5 por ti, incluida la selección de tu versión de Studio 5000. Los pasos manuales siguientes son para cualquiera que quiera control total sobre cada parte.

Paso 3: Instalar dependencias (¡CRÍTICO!)

  1. Instala todos los paquetes necesarios:

    pip install -r requirements.txt

    Esto instala:

    • Componentes principales: BeautifulSoup, procesamiento XML, soporte asíncrono

    • IA y búsqueda vectorial: PyTorch, sentence-transformers, base de datos vectorial FAISS

    • Análisis semántico: Incrustaciones vectoriales para búsqueda de instrucciones y L5X

    • Rendimiento: Versiones optimizadas para uso en producción

    Si obtienes errores, prueba:

    python -m pip install --upgrade pip
    pip install -r requirements.txt

    Nota: Los componentes de base de datos vectorial (torch, sentence-transformers, faiss-cpu) están incluidos para las capacidades de búsqueda semántica. Estos permiten el análisis avanzado de L5X y las funciones de búsqueda de instrucciones.

Paso 3.5: Instalar el SDK de Studio 5000 (¡CRÍTICO para archivos .ACD!) 🚨

⚠️ LOS COMPAÑEROS DE EQUIPO DEBEN HACER ESTE PASO - Omítelo solo si no necesitas la creación de archivos .ACD

  1. Encuentra el archivo wheel del SDK en tu instalación de Studio 5000:

    # Look for this file (version may vary):
    dir "C:\Users\Public\Documents\Studio 5000\Logix Designer SDK\python\logix_designer_sdk-*-py3-none-any.whl"
  2. Instala el archivo wheel del SDK:

    # Replace with your actual file path and version:
    pip install "C:\Users\Public\Documents\Studio 5000\Logix Designer SDK\python\logix_designer_sdk-2.0.1-py3-none-any.whl"
  3. Alternativa: si no puedes encontrar el archivo wheel:

    # Navigate to the SDK directory and install from there:
    cd "C:\Users\Public\Documents\Studio 5000\Logix Designer SDK\python"
    pip install logix_designer_sdk-*-py3-none-any.whl

Sin este paso: La documentación y la generación de L5X funcionarán, ¡pero la creación de archivos .ACD fallará!

Paso 4: Prueba tu instalación ✅

  1. Ejecuta el comando de prueba:

    python src/mcp_server/studio5000_mcp_server.py --test
  2. Deberías ver:

    • ✅ "Documentation indexed successfully" (más de 500 instrucciones encontradas)

    • ✅ "SDK Available: True" (si instalaste el archivo wheel del SDK correctamente)

    • ✅ "SDK Available: False" (correcto si omitiste la instalación del SDK: la generación de L5X sigue funcionando)

    • ✅ Resultados de búsqueda de muestra y pruebas de generación de código

  3. Si SDK Available muestra False pero instalaste el archivo wheel:

    • Comprueba que la ruta del archivo wheel fuera correcta

    • Prueba: python -c "import logix_designer_sdk; print('SDK OK')"

  4. Si las pruebas fallan por completo, consulta la sección Solución de problemas

🎉 ¡Estás listo para usar la herramienta! 🎉

El servidor detectará automáticamente las rutas de instalación de Studio 5000. ¡Salta a la sección Configuración para Claude Desktop para empezar a usarlo!


Paso 5: Configurar Variables de Entorno (Solo Usuarios Avanzados)

⚠️ OMITE ESTE PASO - Solo es necesario si Studio 5000 está instalado en ubicaciones no estándar

Opción A: Configurar mediante Variables de Entorno de Windows

  • Abrir Propiedades del Sistema → Variables de Entorno

  • Añadir estas variables de Usuario o Sistema:

    STUDIO5000_DOC_PATH=C:\Program Files (x86)\Rockwell Software\Studio 5000\Logix Designer\ENU\v35\Bin\Help\ENU\rs5000
    STUDIO5000_SDK_PATH=C:\Users\Public\Documents\Studio 5000\Logix Designer SDK\python
    PYTHON312_PATH=C:\Users\YourUsername\AppData\Local\Programs\Python\Python312\python.exe

Opción B: Crear archivo .env (en la raíz del proyecto):

STUDIO5000_DOC_PATH=C:\Program Files (x86)\Rockwell Software\Studio 5000\Logix Designer\ENU\v35\Bin\Help\ENU\rs5000
STUDIO5000_SDK_PATH=C:\Users\Public\Documents\Studio 5000\Logix Designer SDK\python
PYTHON312_PATH=C:\Users\YourUsername\AppData\Local\Programs\Python\Python312\python.exe
  1. Encuentra tus Rutas de Studio 5000:

    Ruta de Documentación: Busca este archivo en tu instalación de Studio 5000:

    <Studio5000_Install>\Logix Designer\ENU\v35\Bin\Help\ENU\rs5000\17691.htm

    Ubicaciones habituales:

    • C:\Program Files (x86)\Rockwell Software\Studio 5000\Logix Designer\ENU\v35\Bin\Help\ENU\rs5000

    • C:\Program Files\Rockwell Software\Studio 5000\Logix Designer\ENU\v35\Bin\Help\ENU\rs5000

    Ruta del SDK: Busca la carpeta de Python del SDK:

    C:\Users\Public\Documents\Studio 5000\Logix Designer SDK\python
  2. Probar el Servidor:

    # Test with environment variables (recommended)
    python src/mcp_server/studio5000_mcp_server.py --test
    
    # Or test with explicit path
    python src/mcp_server/studio5000_mcp_server.py --doc-root "C:\Program Files (x86)\Rockwell Software\Studio 5000\Logix Designer\ENU\v35\Bin\Help\ENU\rs5000" --test

    La salida correcta debería mostrar:

    • Indexación de documentación (cientos de instrucciones encontradas)

    • Resultados de búsqueda de ejemplo

    • Prueba de generación de código IA

    • Estado de disponibilidad del SDK

Configuración para Claude Desktop

Si ejecutaste python setup.py, esto ya está hecho: escribió tus rutas reales y correctas (independientemente de la carpeta donde clonaste o del nombre de usuario de Windows que tengas) en claude_desktop_config.snippet.json, o las fusionó directamente en la configuración de Claude Desktop si pasaste --write-claude-desktop. No hay nada que rellenar manualmente a continuación.

¿Lo haces manualmente? Añade lo siguiente a tu archivo de configuración de Claude Desktop (normalmente en %APPDATA%\Claude\config.json). Sustituye YourUsername y el nombre de la carpeta por donde hayas clonado realmente este repositorio: la carpeta solo se llama THE_Studio5000_AI_Assistant_V35 si lo clonaste con el nombre predeterminado:

Configuración para Windows

Opción A: Usar Variables de Entorno (Recomendado)

{
  "mcpServers": {
    "studio5000-ai-assistant": {
      "command": "python",
      "args": [
        "C:\\Users\\YourUsername\\THE_Studio5000_AI_Assistant_V35\\src\\mcp_server\\studio5000_mcp_server.py"
      ],
      "cwd": "C:\\Users\\YourUsername\\THE_Studio5000_AI_Assistant_V35",
      "env": {
        "STUDIO5000_DOC_PATH": "C:\\Program Files (x86)\\Rockwell Software\\Studio 5000\\Logix Designer\\ENU\\v35\\Bin\\Help\\ENU\\rs5000",
        "STUDIO5000_SDK_PATH": "C:\\Users\\Public\\Documents\\Studio 5000\\Logix Designer SDK\\python"
      }
    }
  }
}

Opción B: Usar Argumentos de Línea de Comandos

{
  "mcpServers": {
    "studio5000-ai-assistant": {
      "command": "python",
      "args": [
        "C:\\Users\\YourUsername\\THE_Studio5000_AI_Assistant_V35\\src\\mcp_server\\studio5000_mcp_server.py",
        "--doc-root",
        "C:\\Program Files (x86)\\Rockwell Software\\Studio 5000\\Logix Designer\\ENU\\v35\\Bin\\Help\\ENU\\rs5000"
      ],
      "cwd": "C:\\Users\\YourUsername\\THE_Studio5000_AI_Assistant_V35"
    }
  }
}

Notas importantes:

  • Sustituye YourUsername por tu nombre de usuario real de Windows

  • Ajusta las rutas de Studio 5000 para que coincidan con tu instalación

  • Usa Python 3.12 - especifica la ruta completa si es necesario: "command": "C:\\Users\\YourUsername\\AppData\\Local\\Programs\\Python\\Python312\\python.exe"

Alternativa: Usar Cursor IDE

Si usas Cursor IDE, el servidor MCP está disponible por defecto al trabajar en el espacio de trabajo de este proyecto. El servidor usará automáticamente las variables de entorno si están definidas, o puedes configurarlo manualmente en los ajustes MCP de Cursor. Recomendamos encarecidamente usar Cursor IDE para este proyecto y configurarlo con los ajustes mcp de cursor (mcp.json)

🛠️ Herramientas de IA Disponibles

Una vez configurado, estas potentes herramientas estarán disponibles en tus conversaciones de IA:

🧠 Herramientas de Generación de Código IA

1. Generar Lógica de Escalera

Herramienta: generate_ladder_logic Parámetros:

  • specification (cadena): Descripción en lenguaje natural del comportamiento deseado del PLC

Capacidades:

  • Reconocimiento de Patrones: Detecta automáticamente patrones de arranque/parada, temporizadores, contadores y E/S básicas

  • Generación Inteligente de Etiquetas: Crea nombres de etiquetas y tipos de datos apropiados

  • Validación de Instrucciones: Usa la base de datos de documentación de Studio 5000 para la validación

Ejemplo: "Crear lógica para arrancar un motor con un botón de arranque y pararlo con un botón de parada"

2. Crear Proyecto L5X

Herramienta: create_l5x_project Parámetros:

  • project_spec (objeto): Especificación del proyecto, incluyendo:

    • name (cadena): Nombre del proyecto

    • controller_type (cadena): Modelo de controlador (p. ej., "1756-L83E")

    • specification (cadena): Descripción en lenguaje natural de la lógica

    • save_path (cadena opcional): Ruta de archivo para guardar el archivo L5X

Salida: Archivo de proyecto L5X completo de Studio 5000 listo para importar

3. Crear Plantilla .ACD Vacía ✅

Herramienta: create_acd_project
Parámetros:

  • project_spec (objeto): Especificación del proyecto ACD, incluyendo:

    • name (cadena): Nombre del proyecto

    • controller_type (cadena): Modelo de controlador

    • major_revision (entero): Versión de Studio 5000 (por defecto 36)

    • save_path (cadena): Ruta de archivo para el archivo .ACD

Salida: Archivo .ACD vacío usando el SDK oficial de Studio 5000 - listo para desarrollo manual

⚠️ Importante: Solo crea proyectos VACÍOS. Las afirmaciones sobre "proyectos completos con MainProgram/MainTask" no son fiables.

💡 Flujo de trabajo recomendado: Crear ACD vacío → Desarrollar la lógica manualmente en Studio 5000

4. Validar Lógica de Escalera ⚡ Validación Rápida y Fiable

Herramienta: validate_ladder_logic Parámetros:

  • logic_spec (objeto): Contiene:

    • ladder_logic (cadena): Código de lógica de escalera a validar

    • instructions_used (matriz): Lista de instrucciones PLC utilizadas

🎯 Sistema de Validación Rápida:

Validación Rápida Lista para Producción

  • Velocidad: 0.001-0.020 segundos

  • Fiabilidad: 100% fiable, sin dependencias externas

  • Detecta: Errores de sintaxis, instrucciones no válidas, paréntesis desequilibrados, problemas de estructura, patrones de lógica

  • Requisitos: Ninguno - siempre funciona

  • Cobertura: Valida contra más de 500 instrucciones de Studio 5000

Salida: Informe de validación completo con errores, advertencias y sugerencias

💡 Por qué la Validación Rápida es Mejor: Resultados instantáneos, 100% de fiabilidad, detecta todos los errores críticos de programación PLC y se integra perfectamente con tu flujo de trabajo de desarrollo. ¡No requiere configuración compleja!

📚 Herramientas de Documentación

5. Buscar Instrucciones

Herramienta: search_instructions Parámetros:

  • query (cadena): Término de búsqueda (nombre de instrucción, descripción, funcionalidad)

  • category (cadena opcional): Filtrar por categoría de instrucción

Características: Busca en la base de datos de documentación oficial de Studio 5000

6. Obtener Detalles de Instrucción

Herramienta: get_instruction Parámetros:

  • name (cadena): Nombre exacto de la instrucción (p. ej., "TON", "MOV", "ADD", "PID")

Salida: Información completa de la instrucción, incluyendo sintaxis, parámetros, ejemplos y lenguajes compatibles

7. Listar Categorías

Herramienta: list_categories Parámetros: Ninguno (se requiere un parámetro ficticio)

Salida: Todas las categorías de instrucciones disponibles (Alarma, Matemáticas, Movimiento, Temporizador, etc.)

8. Listar Instrucciones por Categoría

Herramienta: list_instructions_by_category Parámetros:

  • category (cadena): Nombre de la categoría

Salida: Todas las instrucciones dentro de la categoría especificada

9. Obtener Sintaxis de Instrucción

Herramienta: get_instruction_syntax Parámetros:

  • name (cadena): Nombre de la instrucción

Salida: Información detallada de sintaxis y parámetros de la instrucción

🔍 Herramientas de Análisis L5X y Búsqueda Vectorial

10. Buscar Contenido L5X

Herramienta: search_l5x_content Parámetros:

  • query (cadena): Consulta de búsqueda en lenguaje natural (p. ej., "contador de pulsos de encoder", "lógica de detección de atasco")

  • project_file (cadena): Ruta al archivo L5X a buscar

  • max_results (entero): Número máximo de resultados a devolver (por defecto: 5)

Características: Búsqueda semántica en archivos L5X existentes para encontrar patrones de lógica relevantes

11. Analizar Estructura de Proyecto L5X

Herramienta: analyze_routine_structure Parámetros:

  • project_file (cadena): Ruta al archivo L5X a analizar

  • routine_name (cadena opcional): Rutina específica a analizar

Salida: Análisis de complejidad, mapeo de dependencias y recomendaciones de refactorización

12. Encontrar Punto de Inserción Óptimo

Herramienta: find_insertion_point Parámetros:

  • project_file (cadena): Archivo L5X de destino

  • new_logic_description (cadena): Descripción de la lógica a insertar

  • routine_name (cadena): Rutina de destino para la inserción

Salida: Posición de escalón recomendada con puntuación de confianza para la colocación óptima del código

13. Inserción Inteligente de Lógica

Herramienta: smart_insert_logic Parámetros:

  • project_file (cadena): Archivo L5X de destino

  • routine_name (cadena): Rutina de destino

  • logic_specification (cadena): Descripción en lenguaje natural de la nueva lógica

  • insertion_point (entero): Posición del escalón para la inserción

Características: Inserción de lógica generada por IA en posiciones óptimas con análisis del código existente

📚 Herramientas de Búsqueda en Documentación del SDK

14. Buscar en Documentación del SDK

Herramienta: search_sdk_documentation Parámetros:

  • query (cadena): Consulta en lenguaje natural sobre operaciones del SDK

  • limit (entero): Número máximo de resultados a devolver (por defecto: 10)

Características: Búsqueda en la documentación del SDK de Studio 5000 con comprensión semántica

15. Obtener Detalles de Operación del SDK

Herramienta: get_sdk_operation_info Parámetros:

  • name (cadena): Nombre de la operación del SDK

  • operation_type (cadena opcional): Filtrar por tipo (método, clase, enumeración, ejemplo)

Salida: Información detallada de la operación del SDK con ejemplos y parámetros

📐 Herramientas de Planos Técnicos PDF

16. Indexar Planos PDF

Herramienta: index_pdf_drawings Parámetros:

  • pdf_file_path (cadena): Ruta al archivo PDF de planos técnicos

  • force_rebuild (booleano): Forzar la reindexación de la caché existente

  • use_vision_ai (booleano): Habilitar análisis avanzado de IA de visión

Características: Procesar e indexar planos técnicos PDF para búsqueda semántica

17. Buscar Planos Técnicos

Herramienta: search_drawings Parámetros:

  • query (cadena): Consulta de búsqueda en lenguaje natural (p. ej., "conexiones eléctricas del motor M001")

  • drawing_type_filter (cadena opcional): Filtrar por tipo (eléctrico, pid, lógica, lista_de_io)

  • equipment_filter (cadena opcional): Filtrar por etiqueta de equipo

Salida: Resultados de búsqueda clasificados con contexto del plano y referencias de página

18. Encontrar Contexto de Equipo

Herramienta: find_equipment_context Parámetros:

  • equipment_tag (cadena): Identificador del equipo (p. ej., "M001", "CV-001")

  • context_type (cadena opcional): Tipo de contexto necesario (eléctrico, proceso, seguridad)

Características: Encontrar todos los planos y documentación relacionados con un equipo específico

🎯 Tres Enfoques Potentes para la Creación de Proyectos PLC

Tu servidor MCP admite TRES enfoques diferentes para la creación de proyectos PLC, cada uno optimizado para diferentes casos de uso:

🥇 Enfoque 1: Generación L5X + Importación Manual (CON LIMITACIONES)

🎯 Genera: Estructura de proyecto L5X con MainProgram y MainTask
⚠️ Salida: Archivo L5X que puede necesitar correcciones manuales de formato RLL
🎯 Ideal para: Plantillas de proyecto y creación de estructura básica
🎯 Pasos Manuales:

  1. Generar plantilla L5X (30 segundos)

  2. Corregir problemas de formato RLL en el editor de texto

  3. Importar el L5X corregido en Studio 5000

Uso: "Crear una plantilla de proyecto L5X para control de transportadores"
Herramienta: create_l5x_project

⚡ Comprobación de la Realidad:

  • ⚠️ El L5X generado puede tener problemas de formato XML

  • ✅ Bueno para plantillas de estructura de proyecto

  • ✅ Importa solo la lógica corregida que necesites

  • ✅ Flujo de trabajo profesional una vez que los archivos están validados

🥈 Enfoque 2: Plantillas .ACD Vacías (FIABLE)

Genera: Archivo de proyecto .ACD vacío (plantilla limpia)
Salida: Proyecto en blanco que se abre directamente en Studio 5000
Ideal para: Punto de partida para desarrollo completamente manual
🛠️ Pasos Manuales: Crear MainProgram y MainTask tú mismo, desarrollar la lógica manualmente

Uso: "Crear una plantilla .ACD vacía para desarrollo manual"
Herramienta: create_acd_project

Por qué Funciona:

  • ✅ Creación de proyectos vacíos 100% fiable

  • ✅ Sin operaciones complejas del SDK que puedan fallar

  • ✅ Base limpia para el desarrollo manual

🥉 Enfoque 3: Solo Generación de Lógica IA (Para Proyectos Existentes)

🧠 Genera: Lógica de escalera profesional con validación
🧠 Salida: Código de lógica de escalera listo para copiar y pegar
🧠 Ideal para: Añadir lógica a proyectos de empresa existentes
🧠 Pasos Manuales: Copiar la lógica generada en tus rutinas existentes

Uso: "Generar lógica de control de transportador para mi proyecto existente"
Herramienta: generate_ladder_logic

🎯 Estado Actual y Flujo de Trabajo Recomendado

Lo que Realmente Funciona: ✅ Generación de Lógica IA + Plantillas .ACD Vacías + Desarrollo Manual

Flujo de Trabajo Industrial Realista:

  1. Generar lógica de IA: "Crear control de transportador con detección de atascos" → Código de lógica de escalera profesional

  2. Crear ACD vacío: Plantilla de proyecto limpia lista para desarrollo

  3. Desarrollo manual: Copiar la lógica en Studio 5000, crear MainProgram/MainTask manualmente

  4. Listo para producción: Lógica totalmente funcional desarrollada con ayuda de IA

Por qué esto es honesto y práctico:

  • Creación de ACD vacío 100% fiable - Sin fallos complejos

  • La lógica generada por IA funciona - Buena base para el desarrollo manual

  • Flujo de trabajo profesional - La IA asiste, el ingeniero humano valida e implementa

  • Cero problemas de importación - Sin XML roto ni complicaciones con el SDK

Comprobación de la realidad sobre funciones avanzadas:

  • ⚠️ Generación de L5X: Crea la estructura pero puede necesitar correcciones de XML antes de la importación

  • ⚠️ Proyectos ACD completos: Funciones experimentales del SDK que a menudo fallan

  • Validación rápida: 100% fiable para detectar errores de lógica

  • Búsqueda vectorial: Funciona muy bien para analizar proyectos existentes

💡 Ejemplos de uso

Una vez configurado el servidor MCP, puedes hacer preguntas y generar código como:

🧠 Ejemplos de generación de código con IA

  • "Crear lógica de escalera para arrancar un motor cuando se pulsa un botón de arranque y detenerlo cuando se pulsa un botón de parada"

  • "Generar un sistema de control de transportador con arranque, parada y parada de emergencia"

  • "Crear un temporizador de retardo de 5 segundos para una válvula solenoide"

  • "Construir lógica de escalera para un control de bomba con modos automático/manual y contador de horas de funcionamiento"

  • "Diseñar una línea de ensamblaje de tres estaciones con enclavamientos y circuitos de seguridad"

📁 Ejemplos de creación de proyectos

  • "Crear un proyecto .ACD completo con lógica de control de transportador y enclavamientos de seguridad".ACD completo con MainProgram + lógica

  • "Generar un proyecto .ACD de control de motor para un controlador 1756-L83E"Archivo .ACD listo para usar

  • "Crear un proyecto L5X completo de Studio 5000 para control de motor con funcionalidad de arranque/parada"L5X para importación

  • "Construir un proyecto L5X completo para una línea de ensamblaje de 3 estaciones con enclavamientos de seguridad"Proyectos L5X complejos

  • "Crear una plantilla .ACD vacía para desarrollo manual"Archivos de plantilla limpios

📚 Ejemplos de documentación

  • "¿Qué instrucciones de temporizador están disponibles en Studio 5000?"

  • "Muéstrame la sintaxis completa y los parámetros de la instrucción PID"

  • "¿Cuáles son todas las instrucciones de control de movimiento disponibles?"

  • "¿Cómo uso la instrucción GSV (Get System Value) en lógica de escalera?"

  • "¿Cuál es la diferencia entre las instrucciones de temporizador TON, TOF y RTO?"

🔍 Ejemplos de validación

  • "Validar esta lógica de escalera: XIC(START)XIO(STOP)OTE(MOTOR)"

  • "Comprobar si mi uso de la instrucción de temporizador TON es correcto con estos parámetros"

  • "Verificar que mi lógica de contador sigue las mejores prácticas de Studio 5000"

🔍 Ejemplos de análisis L5X y búsqueda vectorial

  • "Buscar en mi proyecto de transportador existente la lógica de conteo de pulsos del codificador"

  • "Encontrar todos los patrones de detección de fallos basados en temporizadores en mi archivo L5X"

  • "Analizar la complejidad de mi rutina de seguimiento del clasificador"

  • "¿Dónde debería insertar la lógica de detección de atascos en mi rutina de transportador existente?"

  • "Encontrar toda la lógica de control de velocidad VFD en mis archivos L5X de producción"

  • "Mostrarme el mapa de dependencias de mi sistema de retroalimentación del codificador"

📚 Ejemplos de búsqueda en documentación del SDK

  • "¿Cómo uso el método LogixProject.partial_import_rungs_from_xml_file?"

  • "¿Cuáles son todos los métodos disponibles del SDK para la manipulación de etiquetas?"

  • "Mostrarme ejemplos de uso del SDK de Studio 5000 para la creación de proyectos"

  • "Encontrar operaciones del SDK relacionadas con el análisis y modificación de rutinas"

📐 Ejemplos de análisis de dibujos técnicos

  • "Indexar el PDF de dibujos técnicos de mi proyecto de sistema de transportador de Amazon"

  • "Encontrar todas las conexiones eléctricas del motor M001 en los dibujos"

  • "Mostrarme los diagramas P&ID relacionados con el transportador CV-001"

  • "¿Qué enclavamientos de seguridad se muestran para las compuertas de desvío en los dibujos?"

  • "Encontrar los diagramas de lógica de control para el sistema de seguimiento del clasificador"

  • "Buscar en los dibujos el cableado y las conexiones del sensor de detección de atascos"

🏭 Aplicaciones del mundo real

  • "Generar lógica de escalera para un sistema de lavado de coches con 5 pasos secuenciales"

  • "Crear un proyecto completo para una línea de envasado con controles de transportador y conteo de productos"

  • "Construir un sistema de control de temperatura con bucle PID y manejo de alarmas"

La IA utilizará automáticamente las herramientas del servidor MCP para proporcionar información precisa y actualizada basada en tu documentación real de Studio 5000 y generar código PLC funcional.

🔄 Flujo de trabajo de importación manual (recomendado)

Paso a paso: del lenguaje natural al código PLC funcional

Escenario: Necesitas lógica de control de transportador con detección de atascos

Paso 1: Generar proyecto L5X

Pregunta a tu asistente de IA:

"Crear un proyecto L5X completo para control de transportador con detección de atascos usando fotocélulas de entrada y salida"

Resultado: Archivo L5X completo con:

  • ✅ MainProgram y MainTask

  • ✅ Lógica de escalera profesional

  • ✅ Todas las etiquetas necesarias con descripciones

  • ✅ Instrucciones validadas

Paso 2: Importar en Studio 5000

  1. Abrir Studio 5000 con tu proyecto existente (o crear uno nuevo)

  2. Ir a: Archivo → Importar

  3. Seleccionar: Tu archivo L5X generado

  4. Elegir: Importar MainProgram (o componentes específicos)

  5. Hacer clic en: Importar

  6. ¡Listo! - Lógica funcional lista para probar

Paso 3: Personalizar y probar

  • Asignar tus direcciones de E/S a las etiquetas generadas

  • Probar la lógica en tu aplicación específica

  • Modificar según sea necesario para tus requisitos

🏭 Para proyectos de empresa

  • Usar tus plantillas ACD de empresa existentes

  • Generar solo la lógica que necesitas

  • Importar en la estructura de proyecto establecida

  • Mantener tus estándares y prácticas de codificación

⚡ Consejos profesionales

  • Generar múltiples archivos L5X para diferentes secciones (seguridad, proceso, E/S)

  • Importar selectivamente - elegir solo Programas, solo Etiquetas, o solo Rutinas específicas

  • Compatibilidad con control de versiones - los archivos L5X funcionan muy bien con Git

  • Colaboración en equipo - compartir archivos L5X generados con los miembros del equipo

Solución de problemas

❗ Problemas críticos

1. Desajuste de versión de Python

Problema: El servidor MCP se inicia pero las funciones del SDK no funcionan o recibes errores de importación.

Solución:

# Check your Python version
python --version
# Must show 3.12.x

# If not 3.12, install Python 3.12 and use full path in Claude config:
"command": "C:\\Users\\YourUsername\\AppData\\Local\\Programs\\Python\\Python312\\python.exe"

Por qué: El SDK de Studio 5000 requiere específicamente Python 3.12. Las versiones anteriores causarán fallos de importación del SDK.

2. Ruta de documentación no encontrada

Problema: "Archivo de índice principal no encontrado" o "No se encontraron instrucciones"

Solución - Encontrar tu ruta de documentación:

  1. Abrir el Explorador de archivos y buscar: 17691.htm

  2. Buscar en estas ubicaciones comunes:

    C:\Program Files (x86)\Rockwell Software\Studio 5000\Logix Designer\ENU\v35\Bin\Help\ENU\rs5000\17691.htm
    C:\Program Files\Rockwell Software\Studio 5000\Logix Designer\ENU\v35\Bin\Help\ENU\rs5000\17691.htm
    C:\Program Files (x86)\Rockwell Software\Studio 5000\Logix Designer\ENU\v37\Bin\Help\ENU\rs5000\17691.htm
  3. Establecer la ruta correcta (todo excepto el nombre del archivo):

    # Via environment variable
    set STUDIO5000_DOC_PATH=C:\Program Files (x86)\Rockwell Software\Studio 5000\Logix Designer\ENU\v35\Bin\Help\ENU\rs5000
    
    # Or via command line
    python src/mcp_server/studio5000_mcp_server.py --doc-root "C:\Program Files (x86)\Rockwell Software\Studio 5000\Logix Designer\ENU\v35\Bin\Help\ENU\rs5000" --test

3. SDK no disponible

Problema: "SDK de Studio 5000 no disponible" o "falló la importación del SDK"

Causa más común: ¡No instalaste el archivo wheel del SDK! ⚠️

Solución:

  1. 🚨 CRÍTICO: Instalar primero el archivo wheel del SDK:

    # Find and install the wheel file (most teammates miss this step!)
    pip install "C:\Users\Public\Documents\Studio 5000\Logix Designer SDK\python\logix_designer_sdk-*-py3-none-any.whl"
  2. Comprobar la instalación del SDK:

    • Buscar: C:\Users\Public\Documents\Studio 5000\Logix Designer SDK\python\

    • Si falta, reinstalar Studio 5000 con los componentes del SDK

  3. Verificar que el SDK funciona:

    # Test if SDK is now available
    python -c "import logix_designer_sdk; print('SDK OK')"
  4. Si sigue fallando, establecer la ruta del SDK:

    set STUDIO5000_SDK_PATH=C:\Users\Public\Documents\Studio 5000\Logix Designer SDK\python

⚠️ Problemas comunes de configuración

4. El servidor no se inicia

Síntomas: El servidor se bloquea inmediatamente o muestra errores JSON-RPC.

Soluciones:

  • Comprobar la ruta de Python en la configuración de Claude - usar la ruta completa a Python 3.12

  • Verificar el directorio de trabajo - "cwd" debe apuntar a la raíz del proyecto

  • Comprobar los permisos de archivo - asegurar acceso de lectura a todos los archivos del proyecto

  • Probar de forma aislada:

    python src/mcp_server/studio5000_mcp_server.py --test

5. Las variables de entorno no funcionan

Problema: El servidor sigue usando rutas codificadas a pesar de establecer variables de entorno.

Soluciones:

  1. Reiniciar el Símbolo del sistema/IDE después de establecer las variables de entorno

  2. Comprobar los nombres de las variables (distinguen mayúsculas y minúsculas):

    • STUDIO5000_DOC_PATH

    • STUDIO5000_SDK_PATH

    • PYTHON312_PATH

  3. Probar las variables de entorno:

    echo %STUDIO5000_DOC_PATH%
    echo %STUDIO5000_SDK_PATH%

6. Problemas de configuración de Claude Desktop

Problema: El servidor MCP no aparece en Claude Desktop.

Soluciones:

  1. Comprobar la sintaxis de config.json - usar un validador JSON

  2. Reiniciar Claude Desktop completamente después de los cambios de configuración

  3. Usar rutas absolutas - sin rutas relativas en la configuración de Claude

  4. Comprobar los registros de Claude en %APPDATA%\Claude\logs\

🔧 Solución de problemas avanzada

Validación rápida: 100% fiable, cero configuración

✅ Estado actual: Sistema de validación rápida

El sistema ahora utiliza validación rápida lista para producción que proporciona resultados instantáneos y fiables:

Por qué la validación rápida es superior:

  • Resultados instantáneos: Tiempo de validación de 0.001-0.020 segundos

  • Fiabilidad del 100%: Sin dependencias externas ni requisitos de servicio

  • Cobertura completa: Valida contra más de 500 instrucciones de Studio 5000

  • Cero configuración: Funciona inmediatamente en cualquier sistema

  • Listo para producción: Detecta todos los errores críticos de programación PLC

Cobertura de validación:

  • Validación de sintaxis: Paréntesis equilibrados, formato de instrucción adecuado

  • Validación de instrucciones: Contra el conjunto oficial de instrucciones de Studio 5000

  • Validación de estructura: Patrones de lógica y mejores prácticas

  • Informes de errores: Mensajes de error detallados con números de línea

  • Sistema de advertencias: Identifica problemas potenciales y mejoras

¡No se necesita más configuración compleja!

El sistema ha evolucionado más allá de las dependencias de validación del SDK. La validación rápida proporciona toda la detección de errores necesaria para el desarrollo PLC profesional sin ninguna de las complejidades de configuración, dependencias de servicio o problemas de fiabilidad.

🔧 Solución de problemas avanzada

7. Múltiples versiones de Python

Si tienes varias versiones de Python instaladas:

# Use specific Python 3.12 executable
C:\Users\YourUsername\AppData\Local\Programs\Python\Python312\python.exe src/mcp_server/studio5000_mcp_server.py --test

# Or create virtual environment with Python 3.12
py -3.12 -m venv studio5000_env
studio5000_env\Scripts\activate
pip install -r requirements.txt

8. Restricciones corporativas/de red

Problema: No se puede acceder a los archivos de documentación debido a permisos.

Soluciones:

  • Ejecutar como administrador al probar

  • Comprobar exclusiones de antivirus para los directorios de Python y Studio 5000

  • Verificar el acceso a unidades de red si Studio 5000 está en un recurso compartido de red

9. Compatibilidad de versión de Studio 5000

Problema: Versión de Studio 5000 diferente a la v35.

Soluciones:

  • Actualizar la ruta de documentación para que coincida con tu versión (v37, v38, etc.)

  • Actualizar el parámetro major_revision en la creación de proyectos .ACD

  • Comprobar la compatibilidad de la versión del SDK

🧪 Comandos de prueba

Verifica tu configuración con estos comandos:

# Test 1: Python version
python --version

# Test 2: Basic server test
python src/mcp_server/studio5000_mcp_server.py --test

# Test 3: Documentation path
dir "C:\Program Files (x86)\Rockwell Software\Studio 5000\Logix Designer\ENU\v35\Bin\Help\ENU\rs5000\17691.htm"

# Test 4: SDK availability (after installing wheel file)
python -c "import logix_designer_sdk; print('SDK Available')"

# Test 5: Environment variables
echo %STUDIO5000_DOC_PATH%
echo %STUDIO5000_SDK_PATH%

📞 Obtener ayuda

Si sigues teniendo problemas:

  1. Ejecutar el comando de prueba y capturar la salida completa

  2. Comprobar tu versión de Python y las rutas de instalación de Studio 5000

  3. Verificar que todas las rutas de archivo existen antes de informar problemas

  4. Incluir tu configuración exacta al pedir ayuda

Prueba del servidor

Para instrucciones de prueba, consulta el Paso 4 en la guía de instalación anterior.

Detalles técnicos

Arquitectura

El servidor MCP consta de cuatro componentes principales:

  1. Analizador de documentación (studio5000_mcp_server.py):

    • Analiza archivos de documentación HTML usando BeautifulSoup

    • Construye un índice en memoria de todas las instrucciones

    • Extrae nombres de instrucciones, categorías, descripciones, sintaxis y parámetros

    • Proporciona capacidades rápidas de búsqueda y recuperación

  2. Asistente de código con IA (ai_assistant/code_assistant.py):

    • Análisis de lenguaje natural con reconocimiento de patrones

    • Generación de lógica de escalera para patrones de arranque/parada, temporizadores, contadores

    • Creación inteligente de etiquetas con tipos de datos apropiados

    • Validación de código usando la base de datos de documentación

  3. Generador L5X (code_generator/l5x_generator.py):

    • Generación de archivos de proyecto L5X basados en XML

    • Estructura completa de proyecto con programas, rutinas y etiquetas

    • Cumplimiento del esquema de Studio 5000

    • Salida XML con formato legible

  4. Interfaz SDK de Studio 5000 (sdk_interface/studio5000_sdk.py):

    • Creación real de proyectos .ACD usando el SDK oficial de Rockwell

    • Requisito de Python 3.12 para compatibilidad con el SDK

    • Generación de plantillas de proyecto vacías

    • Integración directa con Studio 5000

Protocolo MCP

  • Sigue la especificación del Model Context Protocol para la integración con IA

  • Comunicación JSON-RPC 2.0 a través de stdin/stdout

  • Arquitectura basada en herramientas con más de 15 herramientas disponibles

  • Capacidades de búsqueda semántica basadas en vectores

  • Análisis de archivos L5X a escala de producción

  • Soporte asíncrono para todas las operaciones

📁 Estructura del Proyecto

THE_Studio5000_AI_Assistant_V35/        # (folder name is whatever you clone it as)
├── setup.py                             # One-command installer — run this first
├── src/                                # Main source code
│   ├── mcp_server/
│   │   └── studio5000_mcp_server.py    # Main MCP server with AI features
│   ├── code_generator/
│   │   ├── l5x_generator.py            # L5X project file generation
│   │   └── templates/                  # L5X XML templates
│   ├── ai_assistant/                   # Enhanced AI assistance
│   │   ├── code_assistant.py           # AI-powered natural language processing
│   │   ├── enhanced_main_assistant.py  # Production-ready AI assistant
│   │   ├── mcp_integration.py          # MCP protocol integration
│   │   └── warehouse_automation_patterns.py # Industrial automation patterns
│   ├── sdk_interface/
│   │   └── studio5000_sdk.py           # Real Studio 5000 SDK integration
│   ├── documentation/                  # Vector-powered documentation search
│   │   ├── instruction_vector_db.py    # Instruction search vector database
│   │   └── instruction_mcp_integration.py # MCP tools for instruction search
│   ├── l5x_analyzer/                   # Advanced L5X file analysis
│   │   ├── l5x_vector_db.py           # L5X semantic search system
│   │   ├── l5x_mcp_integration.py     # L5X analysis MCP tools
│   │   └── sdk_powered_analyzer.py    # SDK-enhanced L5X analysis
│   ├── sdk_documentation/              # SDK documentation search
│   │   ├── sdk_vector_db.py           # SDK documentation vector search
│   │   ├── sdk_doc_parser.py          # SDK documentation parser
│   │   └── mcp_sdk_integration.py     # SDK documentation MCP tools
│   ├── tag_analyzer/                   # Tag analysis and management
│   │   ├── tag_vector_db.py           # Tag-based vector search
│   │   ├── csv_tag_parser.py          # CSV tag file parsing
│   │   └── tag_mcp_integration.py     # Tag analysis MCP tools
│   └── verification/                   # Code validation system
│       ├── sdk_verifier_clean.py      # Fast validation (production)
│       └── sdk_verifier.py           # Legacy SDK validation (deprecated)
├── *_vector_cache/                     # Vector database cache directories
│   ├── instruction_vector_cache/       # Instruction search cache
│   ├── l5x_vector_cache/              # L5X analysis cache
│   ├── sdk_vector_cache/              # SDK documentation cache
│   └── tag_vector_cache/              # Tag analysis cache
├── examples/                           # Example generated projects
├── docs/                              # Additional documentation
├── requirements.txt                    # Python dependencies (includes vector DB)
├── mcp_config.json                    # Sample MCP configuration for Claude
└── README.md                          # This comprehensive documentation

Archivos Clave

  • Servidor Principal: src/mcp_server/studio5000_mcp_server.py (servidor MCP principal con más de 15 herramientas)

  • Asistente de IA: src/ai_assistant/enhanced_main_assistant.py (asistente de IA listo para producción)

  • Generador L5X: src/code_generator/l5x_generator.py (crea archivos L5X importables)

  • Analizador L5X: src/l5x_analyzer/l5x_vector_db.py (búsqueda semántica a través de archivos L5X)

  • Validación Rápida: src/verification/sdk_verifier_clean.py (sistema de validación de producción)

  • Interfaz SDK: src/sdk_interface/studio5000_sdk.py (crea archivos .ACD reales)

  • Bases de Datos Vectoriales: directorios *_vector_cache/ (búsqueda semántica impulsada por FAISS)

  • Configuración: Variables de entorno o argumentos de línea de comandos

Contribuciones

Capacidades Actuales - EVALUACIÓN HONESTA

✅ Lo que Realmente Funciona (Listo para Producción):

  • Análisis de documentación oficial de Studio 5000 (HTML con búsqueda vectorial)

  • Generación de texto de lógica de escalera impulsada por IA (buena base para desarrollo manual)

  • Creación de archivos .ACD vacíos (generación de plantillas confiable basada en SDK)

  • Sistema de validación rápida (respuesta en 0.001s, 100% confiable)

  • Búsqueda semántica basada en vectores (basada en FAISS, a escala de producción)

  • Análisis de archivos L5X (probado con archivos de más de 49k líneas)

  • Búsqueda en documentación del SDK (base de datos completa de métodos)

  • Reconocimiento de patrones (patrones de arranque/parada, temporizadores, contadores)

⚠️ Lo que Funciona Parcialmente (Requiere Correcciones Manuales):

  • ⚠️ Generación de archivos de proyecto L5X (crea la estructura pero hay problemas de formato RLL)

  • ⚠️ Creación completa de ACD (funciones experimentales de importación parcial del SDK)

  • ⚠️ Inserción inteligente de código (el análisis funciona, la inserción depende del SDK)

🔧 Lo que Necesita Desarrollo:

  • 🔧 Generación adecuada de XML RLL (actualmente genera texto sin formato en CDATA)

  • 🔧 Importación parcial confiable del SDK (compleja y propensa a errores)

  • 🔧 Automatización de proyectos de principio a fin (actualmente requiere pasos manuales)

Oportunidades Futuras de Mejora

Alta Prioridad (¡Completado! ✅):

  • Integración completa del SDK: ¡COMPLETADO! La creación completa de programas/tareas ya está implementada

  • Importación/Exportación de Rutinas: ¡COMPLETADO! Usando la funcionalidad de importación parcial del SDK

  • Creación de Estructura de Programas: ¡COMPLETADO! Crea automáticamente MainProgram y MainTask

  • Gestión de Etiquetas: Implementar operaciones de creación y gestión de etiquetas del SDK (PENDIENTE)

  • Operaciones Avanzadas de Proyecto: Automatización de compilación, actualización e implementación (PENDIENTE)

Prioridad Media (Expansión de Funcionalidades):

  • Soporte de Lenguajes Adicionales: Generación de Texto Estructurado (ST) y Diagrama de Bloques de Funciones (FBD)

  • Reconocimiento Mejorado de Patrones: Patrones de automatización industrial más complejos

  • Mejora de la Documentación del SDK: ¡COMPLETADO! El analizador ahora encuentra 63 métodos de LogixProject + 39 ejemplos = más de 102 operaciones (antes eran 22)

  • Validación Avanzada: Análisis estático y verificación de mejores prácticas

Prioridad Baja (Integración Extendida):

  • Múltiples Versiones de Studio 5000: Detección dinámica de versiones y compatibilidad

  • Extensiones de Integración: Soporte para FactoryTalk View, RSLinx y otras herramientas de Rockwell

  • Implementación en la Nube: Interfaz web para colaboración en equipo

  • Sistema de Caché: Rendimiento mejorado para conjuntos de documentación grandes

🎯 El Valor Honesto: Flujo de Trabajo de Desarrollo Asistido por IA

El sistema proporciona una valiosa asistencia de IA para el desarrollo de PLC:

  • Generación de Lógica de IA: Convierte lenguaje natural en texto de lógica de escalera (FUNCIONA BIEN)

  • Plantillas ACD Vacías: Archivos de proyecto limpios listos para desarrollo manual (CONFIABLE)

  • ⚠️ Creación de Estructura L5X: Crea plantillas de proyecto que pueden necesitar correcciones de formato (PARCIAL)

  • Validación Rápida: Verificación instantánea de sintaxis e instrucciones (LISTO PARA PRODUCCIÓN)

  • Búsqueda Vectorial: Analiza proyectos existentes semánticamente (LISTO PARA PRODUCCIÓN)

Puedes preguntar: "Genera lógica de control de transportador con detección de atascos" y obtener código de lógica de escalera de alta calidad para usar como base para el desarrollo manual. La IA asiste, pero los ingenieros humanos aún necesitan implementar y validar la solución final.

Configuración de Desarrollo

  1. Haz un fork del repositorio

  2. Instala Python 3.12 y las dependencias

  3. Configura las variables de entorno para tu instalación de Studio 5000

  4. Ejecuta las pruebas para verificar la funcionalidad

  5. Envía pull requests con documentación clara

Información Legal Importante:

  • Este proyecto se proporciona tal cual con fines educativos y de desarrollo

  • Studio 5000, Logix Designer, ControlLogix y Allen-Bradley son marcas comerciales de Rockwell Automation, Inc.

  • Este software no está afiliado, respaldado ni soportado por Rockwell Automation

  • Los usuarios deben tener licencias válidas de Studio 5000 para usar las funciones del SDK

  • El código y los proyectos generados deben ser validados por personal calificado antes de su uso en entornos de producción

Descargo de responsabilidad: Esta herramienta ayuda con la programación de PLC pero no reemplaza las prácticas de ingeniería adecuadas, el análisis de seguridad ni la verificación de cumplimiento requeridos para los sistemas de automatización industrial.

F
license - not found
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • -
    license
    Not graded
    quality
    Not graded
    maintenance
    Enables automated project analysis and structured development specification generation. Supports multiple export formats and integrates with AI models for comprehensive project documentation and validation.
  • F
    license
    Not graded
    quality
    A
    maintenance
    MCP server that connects AI assistants to Siemens TIA Portal via the Openness API. AI-assisted PLC programming, project management, hardware configuration, cross-reference analysis, and deployment. 16 tools, 166 actions.
    27
  • F
    license
    A
    quality
    B
    maintenance
    Automates the Sigmatek LASAL software suite for PLC and HMI engineering, enabling AI assistants to inspect projects, apply structural changes, compile, download to hardware, and control PLC runtime.
    21
    1

View all related MCP servers

Related MCP Connectors

  • AI Agent with Architectural Memory. Impact analysis (free), tests and code from the graph (pro).

  • Build, version, review, and export websites, web apps, and games from a conversation.

  • Give your AI agent a persistent map of your project's structure, dependencies, and bugs.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/ProJewks/THE_Studio5000_AI_Assistant_V35'

If you have feedback or need assistance with the MCP directory API, please join our Discord server