Skip to main content

Ejemplo: OpenCV

Producto: CODESYS Development System

Este ejemplo muestra una implementación de Python de opencv, una biblioteca gratuita de funciones de programación. Con esta biblioteca, se evalúa una imagen y la información se transfiere a CODESYS a través de la memoria compartida.

Descripción

En este ejemplo, una imagen se evalúa usando Python y opencv, la biblioteca gratuita de funciones de programación. Hay círculos de diferentes colores en la imagen. Los círculos azules se filtran y las coordenadas de los contornos se escriben en una cadena. La cadena se combina con una cadena de la marca de tiempo actual. Esta cadena se transfiere a una matriz de bytes y se almacena en la memoria compartida.

La memoria compartida está abierta durante un tiempo específico (en este caso, 60 segundos) para permitir CODESYS para leer los datos. En CODESYS, se lee el búfer de memoria compartida y la matriz de bytes se vuelve a transferir a una cadena.

Después de pasar a la cadena, las coordenadas de cuatro contornos y la marca de tiempo están en la cadena. Otra opción preparada es la evaluación de un flujo de video. En este caso, los contornos se limitan a cinco para evitar un desbordamiento.

Información adicional

Preparativos:

  • En CODESYS, abre el OpenCV_Example2.project proyecto.

  • Instale Python 3.8 o superior.

  • Instalar opencv: línea de comando: pip install opencv-python

Ubicación de la carpeta:

  • El proyecto de Python y la imagen de muestra deben estar en la misma carpeta.

  • Nombra la memoria compartida en CODESYS lo mismo que en Python (predeterminado: MySharedMemory).

  • Establezca el mismo tamaño para la memoria compartida en CODESYS así como en Python (valor por defecto: 100).

  • En el proyecto de Python, establezca el tiempo para abrir la memoria compartida (predeterminado: 60 segundos).

Procedimiento:

  • Comenzar CODESYS y conéctate al local CODESYS Control Win controlador. Inicie sesión e inicie el controlador.

  • En el monitoreo, la variable de cadena PLC_PRG.strRead muestra el valor "".

  • Ejecute el script de Python -> En el monitoreo, la cadena muestra cuatro coordenadas y una marca de tiempo.

Otras funcionalidades:

  • Puede leer acerca de las características principales de opencv en su sitio web (https://opencv.org/ ).

  • Para más funciones, es posible que deba aumentarse el búfer de la memoria compartida.

Requisitos y restricciones del sistema

Sistema de programación

CODESYS Development System (versión 3.5.16.0 o superior)

Sistema de tiempo de ejecución

CODESYS Control Win (versión 3.5.16.0)

Componentes adicionales

-

Aviso

_example_icon.png DESCARGAR Proyecto