Conexión Perfecta de Scripts Python a Proyectos PLCnext Engineer mediante Reflexión gRPC
Esta publicación sirve como complemento a otra publicación de 2025.
Los archivos y bibliotecas se pueden encontrar en el mismo repositorio de GitHub de la publicación anterior.
El enfoque funciona tanto para el AXC F 2152 como para el AXC F 3152. La diferencia, una vez más, radica en cómo instalar las bibliotecas requeridas.
IMPORTANTE: El enfoque ha sido probado y visto funcionando para FW 2025.X
Para el AXC F 2152:
Las bibliotecas grpcio y grpcio-reflection necesitan ser compiladas cruzadamente (cross-compiled) fuera del dispositivo e instaladas manualmente. Estas bibliotecas (ya compiladas cruzadamente para Python 3.12) están disponibles en el repositorio de GitHub.
Aviso: A diferencia de la publicación anterior, el uso de reflexión permite omitir por completo el uso y compilación de archivos protobuf. Las siguientes instrucciones le permiten crear un contenedor con Python 3.12 donde puede ejecutar los scripts que hacen uso de gRPC.
- Cree una carpeta en /opt/plcnext para usarla para la comunicación gRPC, este ejemplo asignará el nombre "grpc2152" a esa carpeta. Dentro de grpc2152, cree la siguiente estructura de carpetas:
grpc2152/
├──── whl_files312/
│ └─── (contenido de la carpeta whl_files312 del repositorio de GitHub dado)
│ └── gRPC_with_Reflection_26_0.py
- Conéctese a su PLC a través de una sesión SSH, inicie sesión como usuario root (su) y obtenga la versión slim de python 3.12: (en este punto, la conexión a internet es necesaria para obtener la imagen de python)
$ podman pull docker.io/library/python:3.12.13-slim
- Ejecute el contenedor y adjúntese a él (vinculando la carpeta grpc2152 como volumen y un segundo volumen (run) necesario para la conexión al socket grpc):
$ podman run -it -v /opt/plcnext/grpc2152/:/grpc2152 -v /run/:/run --restart=always --name grpctester python:3.12.13-slim /bin/bash
- Una vez adjunto a la consola del contenedor, navegue a la carpeta whl_files312 e instale las bibliotecas grpcio necesarias.
$ cd /grpc2152/whl_files312/
$ pip install *.whl
-
Descargue e inicie el proyecto PLCnext Engineer "TestingGRPC.pcwex" desde el repositorio de GitHub.
-
Pruebe la funcionalidad grpc desde la consola del contenedor ejecutando el script "gRPC_with_Reflection_26_0.py". En modo depuración, el contenido de las variables debería poblarse con los valores de texto del script y también mostrarse en la consola después de ser leídos desde el proyecto PLCnext Engineer.
Para el AXC F 3152.
Siga el mismo procedimiento dado para el 2152, pero en lugar de usar las bibliotecas del repositorio, instale las bibliotecas directamente desde pypi.org
$ pip install grpcio==1.76.0
$ pip install grpcio-reflection==1.76.0
Nota:
El Makers Blog muestra aplicaciones e historias de usuarios de miembros de la comunidad que no son probadas ni revisadas por Phoenix Contact. Úselas bajo su propio riesgo.
Tecnología Industrial
- Diseño y Aplicación de Óhmetros de Alto Voltaje
- IoT "Hazlo Tú Mismo" en Fabricación: Riesgos Ocultos y Por Qué la Experiencia Profesional Importa
- Optimice el Control de Inventario 2014 con Etiquetas de Activos
- Máquinas Esenciales en la Fabricación Metálica Moderna
- Entendiendo Controladores PID: Tipos, Funcionamiento y Aplicaciones Industriales
- Sistemas Ciberfísicos: La fuerza impulsora detrás de la Industria 4.0
- Elegir la estrategia ERP correcta: Best-of-Breed vs. Suites todo en uno
- Felices fiestas de NIST MEP — Deseándole una alegre Navidad y próspero Año Nuevo
- Maximice la Eficiencia: Características Clave del Módulo de Órdenes de Fabricación
- Soldadura vs. Fabricación Metálica: Entendiendo las Diferencias Clave
- Cableado de Interruptores de 4 Vías (NEC) o Intermedios (IEC) como 3 Vías: Guía Paso a Paso