Skip to main content

Esempio: OpenCV

Prodotto: CODESYS Development System

Questo esempio mostra un'implementazione Python di opencv, una libreria gratuita di funzioni di programmazione. Con questa libreria, un'immagine viene valutata e le informazioni vengono trasferite CODESYS attraverso la memoria condivisa.

Descrizione

In questo esempio, un'immagine viene valutata utilizzando Python e opencv, la libreria gratuita di funzioni di programmazione. Ci sono diversi cerchi colorati nell'immagine. I cerchi blu vengono filtrati e le coordinate dei contorni vengono scritte in una stringa. La stringa viene combinata con una stringa del timestamp corrente. Questa stringa viene trasferita in un array di byte e archiviata nella memoria condivisa.

La memoria condivisa è aperta per un tempo specifico (in questo caso, 60 secondi) per consentire CODESYS per leggere i dati. In CODESYS, il buffer di memoria condiviso viene letto e la matrice di byte viene ritrasferita in una stringa.

Dopo essere passato alla stringa, le coordinate di quattro contorni e il timestamp sono nella stringa. Un'altra opzione preparata è la valutazione di un flusso video. In questo caso, i contorni sono limitati a cinque per evitare un overflow.

Informazioni aggiuntive

Preparazioni:

  • In CODESYS, apri il OpenCV_Example2.project progetto.

  • Installa Python 3.8 o versioni successive.

  • Installare opencv: riga di comando: pip install opencv-python

Posizione cartella:

  • Il progetto Python e l'immagine di esempio dovrebbero trovarsi nella stessa cartella.

  • Assegna un nome alla memoria condivisa in CODESYS lo stesso di Python (predefinito: MySharedMemory).

  • Imposta la stessa dimensione per la memoria condivisa in CODESYS così come in Python (valore predefinito: 100).

  • Nel progetto Python, imposta l'ora per l'apertura della memoria condivisa (impostazione predefinita: 60 secondi).

Procedura:

  • Inizio CODESYS e connettersi al locale CODESYS Control Win controllore. Accedi e avvia il controller.

  • Nel monitoraggio, la variabile stringa PLC_PRG.strRead mostra il valore "".

  • Esegui lo script Python -> Nel monitoraggio, la stringa mostra quattro coordinate e un timestamp.

Altre funzionalità:

  • Puoi leggere le caratteristiche principali di opencv sul loro sito web (https://opencv.org/ ).

  • Per più funzioni, potrebbe essere necessario aumentare il buffer della memoria condivisa.

Requisiti di sistema e restrizioni

Sistema di programmazione

CODESYS Development System (versione 3.5.16.0 o superiore)

Sistema di esecuzione

CODESYS Control Win (versione 3.5.16.0)

Componenti aggiuntivi

-

Avviso

_example_icon.png SCARICAMENTO Progetto