Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Manufacturing Technology >> Tecnología Industrial

Interacción local de gRPC con control PLCnext a través de grpcurl en contenedor OCI

Esta es la última entrega de una serie sobre el uso de gRPC para interactuar con PLCnext Runtime en un dispositivo de control PLCnext.

Las publicaciones anteriores de la serie incluyeron:

Los artículos enumerados anteriormente muestran cómo acceder al servidor gRPC en un dispositivo PLCnext Control desde un remoto dispositivo cliente. Esta publicación da un ejemplo de un local Cliente gRPC:es decir, un cliente gRPC que se ejecuta en un dispositivo PLCnext Control, que accede al servidor gRPC en el mismo dispositivo.

Otros ejemplos de local Los clientes gRPC en dispositivos PLCnext Control se pueden encontrar aquí:

Dado que no hay ningún software de cliente gRPC instalado en los dispositivos PLCnext Control como estándar, este artículo muestra cómo ejecutar un cliente gRPC (en este caso, grpcurl) en un contenedor OCI usando Podman y una imagen adecuada de dockerhub.

Requisitos previos

  1. Un dispositivo de control PLCnext adecuado, con acceso a Internet.Ejemplos:AXC F 3152 con versión de firmware 2025.0 o posterior; AXC F 1252 con versión de firmware 2026.0 o posterior. Actualmente, la imagen OCI utilizada en este artículo no está disponible para objetivos armv7 como el AXC F 2152.

  2. En un navegador, abra el sitio de administración basada en web (WBM) en el dispositivo y, en la página Servicios del sistema, asegúrese de que la función SERVIDOR LOCAL GRPC esté activada.

Procedimiento:

  1. Abra una sesión de shell segura en el dispositivo PLCnext Control utilizando la cuenta de usuario administrador.

  2. En la sesión de shell, ejecute el siguiente comando:

     podman pull docker.io/fullstorydev/grpcurl:latest-alpine
    

    Esto descarga una imagen OCI que contiene la herramienta de línea de comandos grpcurl al dispositivo de control PLCnext.

  3. Enumere los servicios gRPC disponibles en el dispositivo de control PLCnext local:

     podman run -it --rm -v /run/plcnext/:/run/plcnext/ --userns=keep-id docker.io/fullstorydev/grpcurl:latest-alpine --plaintext unix:///run/plcnext/grpc.sock list
    

    Respuesta:

    Arp.Device.Interface.Services.Grpc.IDeviceControlService
    Arp.Device.Interface.Services.Grpc.IDeviceInfoService
    Arp.Device.Interface.Services.Grpc.IDeviceSettingsService
    Arp.Device.Interface.Services.Grpc.IDeviceStatusService
    Arp.Io.Axioline.Services.Grpc.IAcyclicCommunicationService
    Arp.Io.Axioline.Services.Grpc.IAxioMasterService
    Arp.Plc.Gds.Services.Grpc.IDataAccessService
    Arp.Plc.Gds.Services.Grpc.IForceService
    Arp.Plc.Gds.Services.Grpc.ISubscriptionService
    Arp.Services.DataLogger.Services.Grpc.IDataLoggerService2
    Arp.Services.NotificationLogger.Services.Grpc.INotificationLoggerService
    Arp.System.Commons.Services.Io.Grpc.IDirectoryService
    Arp.System.Commons.Services.Io.Grpc.IFileService
    Arp.System.Commons.Services.Io.Grpc.IFileSystemInfoService
    Arp.System.Lm.Services.Grpc.ILicenseStatusService
    Arp.System.Nm.Services.Grpc.INotificationManagerService
    Arp.System.Security.Services.Grpc.IAuthenticationService
    Arp.System.Um.Services.Grpc.IAuthorizationInfoService
    Arp.System.Um.Services.Grpc.IPasswordAuthenticationService
    grpc.reflection.v1.ServerReflection
    grpc.reflection.v1alpha.ServerReflection
    
  4. (Opcional) Cree un alias para simplificar los comandos grpcurl posteriores:

     alias grpcurl="podman run -it --rm -v /run/plcnext/:/run/plcnext/ --userns=keep-id docker.io/fullstorydev/grpcurl:latest-alpine" 
    
  5. Recuperar la temperatura de la placa desde el dispositivo de Control PLCnext:

    grpcurl -format json -d '{"identifier":"Status.Board.Temperature.Centigrade"}' --plaintext unix:///run/plcnext/grpc.sock Arp.Device.Interface.Services.Grpc.IDeviceStatusService.GetItem
    

    Respuesta:

    {
     "_ReturnValue": {
     "TypeCode": "CT_Int8",
     "Int8Value": 46
     }
    }
    

Nota:

El Makers Blog muestra aplicaciones e historias de usuarios de miembros de la comunidad que Phoenix Contact no prueba ni revisa. Úselos bajo su propio riesgo.


Tecnología Industrial

  1. Qué esperar al contratar una agencia de marketing industrial
  2. Los inventos estadounidenses que revolucionaron la fabricación
  3. LM1875:una guía completa sobre amplificación de audio
  4. Cómo determinar si un taller de fabricación de metal puede manejar su proyecto
  5. Cómo utilizar el corte por láser para dar vida a su idea de producto
  6. Una visión estratégica de la gestión de la cadena de suministro
  7. Una receta para la infiltración perfecta de electrodos
  8. E.G.O. América del Norte:nuevas formas de hacer crecer una empresa de 90 años
  9. 4 desafíos de almacén resueltos con etiquetas de almacén
  10. Comprensión del puente de unión principal (MBJ):definición, ubicación y pautas de tamaño
  11. Fuente de alimentación sin transformador:los conceptos básicos generales, el funcionamiento y los requisitos explicados