
Comunicación IDS NXT OPC UA
Integración de cámaras IDS NXT en sistemas de automatización de fábricas mediante OPC UA
Gracias a una actualización del software, las cámaras IDS NXT se han dotado de otro elemento vanguardista que les permite integrarse perfectamente en la automatización de la fábrica. Un plugin integra un servidor OPC UA en las cámaras. Esto les permite desplegar en la red sus prestaciones basadas en inteligencia artificial mediante un "recetario" y comunicar los resultados directamente del nivel de campo al nivel de máquina y de control. También hace que las configuraciones de la cámara y las tareas de inferencia basadas en apps de visión artificial sean accesibles en el entorno industrial en un formato compatible y legible para todos los clientes OPC UA. Por consiguiente, OPC UA es el complemento ideal de la industria 4.0 para sus cámaras IDS NXT.
Este documento es la continuación del consejo técnico "Comunicación IDS NXT" y aborda las nuevas posibilidades de comunicación de las cámaras IDS NXT mediante un servidor OPC UA integrado. Le mostramos cómo puede utilizar los ajustes guardados de la cámara, iniciar una tarea de inferencia y consultar los resultados a través de un cliente OPC UA. Puede seguir sin problemas el flujo de trabajo de ejemplo con una mínima preparación. Solo necesita una cámara IDS NXT operativa y un PC conectados a la misma red.
OPC UA
OPC UA es una tecnología clave. Unifica la comunicación entre clientes y servidores. También define cómo se describen los dispositivos (servidores) ante los clientes y qué información y servicios ofrecen. Este intercambio uniforme a través de todas las capas físicas y los buses de campo basados en Ethernet supone una enorme simplificación del trabajo de ingeniería, dado que los datos ya no tienen que ser leídos, convertidos y sincronizados mediante distintos protocolos y pasarelas. Esto permite ahorrar tiempo y costes en la automatización y garantizar una rápida integración en las plantas industriales. Con la especificación OPC Machine Vision Companion, esta tecnología de comunicación transversal entre fabricantes y sectores es la interfaz mejorada idónea para que las cámaras IDS NXT puedan aplicar fácilmente "recetas" basadas en inteligencia artificial en la automatización de la fábrica.

Plugin de servidor IDS NXT OPC UA
Por medio del plugin de servidor OPC UA se pueden conectar todas las cámaras IDS NXT a servidores OPC UA, que pueden ser activados por todos los clientes OPC UA. El plugin encapsula las tareas de procesamiento de imágenes en módulos de funciones denominados "recetas". También se resumen y se almacenan en conjuntos de datos de configuración los ajustes necesarios de la cámara, en ocasiones muy profundos, de aplicaciones especiales. Para estas medidas, el plugin ofrece las funciones correspondientes por medio de la interfaz REST. Puede utilizarlas muy fácilmente a través de la interfaz gráfica de usuario del IDS NXT cockpit. Los resultados del procesamiento de imágenes pueden ser consultados por los clientes OPC UA mediante el Result Management o estar suscritos como evento. El modelo de información del dispositivo proporciona la información general sobre el aparato, como su nombre o su número de serie. La comunicación OPC UA funciona como una interfaz de cámara añadida que está disponible tras iniciar el servidor OPC UA en la red basada en Ethernet.

Descargas
El plugin IDS NXT OPC UA está disponible en el área de descargas de la página web de IDS. Seleccione el modelo de la cámara y abra la categoría "IDS NXT ocean > Apps de visión artificial". Por medio de IDS NXT cockpit se instala el plugin igual que cualquier app de visión artificial.
Para poder utilizar el plugin, la cámara debe tener instalado el IDS NXT OS 1.1 o una versión superior. Más adelante, en este consejo técnico le mostramos una tarea de inferencia para la que necesita la app de visión artificial "Classifier". Descargar "IDS NXT OS"
Descargar "OPC UA Plugin"
Descargar "Classifier Vision App"
Instrucciones
En las instrucciones de inicio rápido "setup-ids-nxt-rio.pdf", en el apartado "Actualizar firmware", encontrará unas instrucciones para actualizar el sistema operativo de su cámara".
La documentación del plugin incluye una explicación de las funciones del plugin y del uso mediante el IDS NXT cockpit, además de una lista de toda la API REST. Instrucciones de inicio rápido de IDS NXT
Documentación del plugin de servidor OPC UA
Cliente OPC UA
Por medio del plugin OPC UA se pueden conectar todas las cámaras IDS NXT con todos los clientes OPC UA. Puede tratarse por ejemplo de un software propietario de un autómata programable o de un sistema de gestión. También puede implementar su propio cliente OPC UA con ayuda de las bibliotecas de desarrollo OPC UA para distintos lenguajes de programación como C++, C# o Python. Para probar la facilidad y rapidez con la que se puede integrar la cámara en redes OPC UA existentes utilizaremos el cliente OPC UA conocido "UaExpert®" para la demostración del plugin OPC UA. El cliente completo ofrece una amplia gama de funciones y una interfaz gráfica de usuario que facilita la demostración de las capacidades del servidor IDS NXT OPC UA. Es compatible con funciones OPC UA como DataAccess, Events, y la llamada de métodos OPC UA.

Descargas
Recibirá el cliente OPC UA "UaExpert®" después de haberse registrado una única vez gratuitamente en la página web de Unified Automation GmbH. Download "UaExpert®"
Uso de IDS NXT como OPC UA Vision System
Consejo: Vídeo tutorial IDS NXT OPC UA
Nuestro vídeo tutorial "IDS NXT - Configuración de la comunicación OPC UA" muestra los pasos a seguir en una demostración rápida y le presenta brevemente las posibilidades que ofrece el plugin mediante la comunicación con el cliente OPC UA "UA Expert".
Para hacer una demostración de cómo se controla la cámara IDS NXT mediante OPC UA, en el presente consejo técnico se describe un flujo de trabajo de procesamiento de imágenes basado en inteligencia artificial que podrá seguir fácilmente con su cámara IDS NXT y unos pocos objetos (bolígrafo, regla, goma de borrar, llave, etc.). Siga estas instrucciones paso a paso.
1) Configurar tarea de inferencia
- Para este ejemplo utilizamos la app de visión artificial "Classifier" con la red neuronal preinstalada (CNN) "ImageNet1000". Instale e inicie la app utilizando el "VApp Manager" del IDS NXT cockpit.
- Gracias a la red entrenada previamente ImageNet1000, la app Classifier reconoce muchos objetos como bolígrafos, llaves o tarjetas de visita. Ponga los objetos que desee bajo su cámara IDS NXT y configure la captura de imágenes en modo libre de forma que pueda reproducir los objetos completamente y con los ajustes adecuados (color, enfoque, exposición, etc.).
- Utilice ROI para objetos que desee identificar.
Los resultados de inferencia de la clasificación de cada captura se muestran en los ROI y en el área de resultados con la probabilidad correspondiente.
En nuestro caso se reconocen bolígrafos (68%), sacapuntas (100%) y gomas (98%).
Instrucciones
En el área de descargas de su cámara también encontrará la documentación sobre el uso de la app Classifier.Documentación de la app de visión artificial Classifier
2) Iniciar servidor OPC UA
- No es necesario programar nada para proporcionar la comunicación OPC por parte de la cámara. Solo tiene que instalar (1) e iniciar (2) el plugin de servidor OPC UA a través del "VApp Manager" del IDS NXT cockpit de su cámara IDS NXT.
- Puede iniciar (1) y detener (2) el servidor OPC UA a través de las acciones del plugin. Por defecto el servidor se inicia automáticamente (3) cuando se inicia el plugin.
3) Crear configuración de OPC UA y receta
- Gracias al IDS NXT cockpit es fácil crear y guardar configuraciones en la cámara IDS NXT mediante el plugin OPC UA.
- Simplemente tiene que dar un nombre a los ajustes actuales de la cámara (Configuration name) y a la tarea de inferencia con la app Classifier (Recipe name) y guardar la configuración y la receta mediante las acciones correspondientes. Con esto habrá finalizado la configuración OPC UA de la cámara por medio del cockpit.
InstruccionesLea el apartado "Acciones" de la documentación del plugin de servidor OPC UA.
4) Establecimiento de la conexión OPC UA cliente-servidor
- Instale e inicie el cliente OPC UA "UaExpert®".
- Para conectar el servidor OPC UA de la cámara haga clic en la opción
(Add Server) de la barra de menús. Vaya a la pestaña "Advanced".
- Asigne un "Configuration Name" a la conexión
- Indique la "Endpoint URL" del servidor (ej.: "opc.tcp://169.254.173.231:4840")
- Protocolo: opc.tcp
- Dirección IP de la cámara
- Puerto de servidor OPC UA: 4840
- Seleccione la "Security Policy" (opciones compatibles: None, Basic128Rsa15, Basic256, Basic256Sha256)
- Seleccione el "Message Security Mode" (None, Sign, Sign&Encrypt)
- Introduzca los datos de acceso de su cámara IDS NXT en los "Authentication Settings". (p. ej.: usuario admin o service)
- Ahora se puede conectar con el servidor OPC UA.
"Connect"
5) Consultar o modificar información del dispositivo
- Para probar la conexión del servidor puede navegar por el modelo de información de la cámara en la ventana "Adress Space". Si por ejemplo cambia el nombre del dispositivo en UaExpert®, este también se actualiza en el IDS NXT cockpit.
- Además, puede suscribir parámetros de estado y estadísticas a través de la "Data Access View" para hacer un seguimiento de los cambios. Por ejemplo, si arrastra el contador de imágenes "ImageTotal" a la ventana, su valor aumentará dinámicamente con cada nueva captura de imagen de la cámara.
- Para restablecer el contador de imágenes, ejecute la "Call" en el menú contextual de los métodos "ResetAll". El contador de imágenes volverá a contar a partir de "0".
IDS NXT Vision System -- Companion Specification según OPC UA Machine VisionEl nodo "Vision System" en el "Adress Space" del UaExpert® muestra los atributos estandarizados del sistema IDS NXT Vision que se implementan en el servidor OPC UA de la cámara según la Companion Specification "OPC Machine Vision".
De esta forma en lo sucesivo podrá controlar totalmente a través de OPC UA la tarea de inferencia preparada de la cámara.
A partir de la versión v1.6 del cliente OPC UA "UaExpert®", se debe introducir un número en los campos correspondientes para todas las llamadas de métodos con argumentos de entrada numéricos. Las llamadas con campos vacíos no son válidas y generarán el correspondiente mensaje de error. Tenga en cuenta que nuestras capturas de pantalla y vídeos se han creado con una versión anterior.
6) Activar la configuración de la cámara
- En primer lugar, recupere una lista de configuraciones almacenadas en la cámara con una llamada a la función
GetConfigurationList.
ResultCount nos muestra "1" configuración disponible con la InternalId "conf_classifier.json". - Utilice la función
ActivateConfiguration para definir la configuración actualmente válida cuyos parámetros guardados se ajustan en la cámara. Establezca la InternalId correspondiente como valor de entrada (Id) para la llamada.
- Puede comprobar la configuración activa utilizando el nodo
Active Configuration. Allí debería aparecer la Id "conf_classifier.json" en los atributos.
7) Preparar tarea (receta)
A continuación, procedemos de la misma manera con la tarea de procesamiento de imágenes guardadas previamente de la cámara.
- Una llamada a la función
GetRecipeListFiltered con el valor de entrada IsPrepared = 2 (DONTCARE_2) arroja "1" receta guardada como ResultCount. En nuestro caso, la receta guardada con la Id "recipe_classifier_imagenet.json"
- Ahora con la función
PrepareRecipe prepare esta receta como tarea de procesamiento de imágenes activa estableciendo la Id consultada anteriormente como valor de entrada "InternalIdIn".
Por lo general pueden estar activas varias recetas al mismo tiempo. Sin embargo, solo se puede activar una receta cuando no se ha preparado ninguna otra con la misma app de visión artificial.
Puede comprobar si una receta ya está activa ejecutando la función GetRecipeListFiltered con el valor de entrada IsPrepared = 1 (TRUE_1). Si ResultCount != 0, ya se ha preparado una receta. Entonces utilice primero la función
UnprepareRecipe.
8) Suscripción a un evento de resultado
La cámara está ahora totalmente preparada a través del cliente OPC UA. Antes de ejecutar la tarea de la cámara debe suscribirse primero el evento de resultado.
- Para ello agregue un EventView ...
- y arrastre el
VisionSystem de la cámara a esta vista.
- Active los campos de los SimpleEvents y los ConditionTypes para obtener todos los detalles.
- Confirme la selección pulsando el botón Apply.
9) Ejecutar tarea (receta) - evaluar resultado de evento
Ahora dejamos que la cámara ejecute su tarea exactamente una vez.
- Para ello llame el método
StartSingleJob una vez.
- En EventView se recibe un ResultReadyEvent de la cámara.
- En los Event-Details vemos los resultados de la inferencia de los tres ROI establecidos (ballpoint, pencil_sharpener, rubber_eraser) con las respectivas probabilidades de la clasificación.
Resumen
Con entradas y salidas digitales, RS-232 y un servicio web REST, las cámaras IDS NXT y sus prestaciones basadas en inteligencia artificial son soluciones muy versátiles que pueden utilizarse en muchas aplicaciones. (Ver la primera parte del consejo técnico "Comunicación IDS NXT").
Ahora con el servidor OPC UA puede transformar sus cámaras inferenciales IDS NXT en sensores de visión industrial que pueden integrarse en cualquier sistema moderno de automatización de fábricas en unos pocos pasos.
Este consejo técnico ilustra la rapidez y la facilidad con las que los atributos estandarizados de un sistema de visión artificial conforme con la especificación "OPC Machine Vision" están disponibles a través del IDS NXT cockpit. No es necesario tener conocimientos previos ni programar. Solo tiene que guardar las configuraciones de la cámara preparadas y las tareas de IA como recetas en la cámara. Preparado de este modo, puede controlar y utilizar las prestaciones de los sistemas IDS NXT Vision con cualquier cliente OPC UA. Las cámaras proporcionan un evento por cada trabajo con resultados de inferencia que pueden ser utilizados directamente por los sistemas de control para tareas posteriores.
Equipadas con la comunicación OPC UA, las cámaras inferenciales IDS NXT amplían la automatización de su fábrica con la capacidad de detectar y clasificar objetos. Integrar la inteligencia artificial en la industria nunca ha sido tan fácil. Si quiere saber más sobre OPC UA y la integración en las cámaras IDS NXT, le invitamos a leer nuestro artículo técnico "Inferencia por receta". En la Knowledge Base encontrará más información. Si tiene preguntas concretas, póngase en contacto con nuestros consultores de sistemas.
Consejo: Vídeo webinario IDS NXT
En nuestro webinario "Integración de IDS NXT en la automatización de la producción" le mostraremos de forma práctica cómo funciona la comunicación a través de las interfaces de las cámaras IDS NXT con ayuda de códigos Python de ejemplo y notebooks Jupyter.