pylon: Sistemi di visione USB3 per tempo reale e prestazioni elevate
Ottimizzare i sistemi per Windows e Linux
In questa esercitazione si apprende come impostare le configurazioni a telecamera singola in pylon per ottenere le massime prestazioni nella propria applicazione. L'attenzione si concentra sulle ottimizzazioni per le configurazioni USB3 Vision che tengono conto di telecamere, controller host e cavi.
Avvio rapido - 5 passi per ottenere flussi stabili
Aprire la telecamera nel Viewer del pilone:
Configurare correttamente i driver e il sistema: driver del controller host attuali, impostazioni del sistema operativo adeguate (ad es. priorità in tempo reale)
Controllo mirato della larghezza di banda: limiti sensibili e distribuzione pulita della larghezza di banda USB disponibile → evita la perdita di dati
Ottimizzare i parametri di streaming: Dimensione massima del trasferimento, numero di blocchi di richieste USB (URB) e dimensioni del buffer → trasferimento efficiente, carico minimo della CPU
Utilizzare il monitoraggio e l'analisi degli errori: Avviare il grabbing continuo; contatore di statistiche per frame persi, risincronizzazioni o problemi di memoria → rilevare tempestivamente i colli di bottiglia nella configurazione
Requisiti per le prestazioni complete del sistema
Cavo USB 3.0: in qualità industriale; i componenti di alta qualità riducono gli errori di trasmissione e aumentano la stabilità del sistema.
Controller host di alta qualità (controller USB): con driver aggiornati; controller obsoleti o di qualità inferiore spesso causano colli di bottiglia nella larghezza di banda, errori di risincronizzazione e perdita di frame.
Memoria del PC (RAM) sufficiente: particolarmente importante per trasferimenti di grandi dimensioni.
Di seguito sono riportati i parametri che è possibile impostare per ottenere le massime prestazioni della configurazione di visione in pylon. Le impostazioni della telecamera sono valide per Windows e Linux. I parametri di sistema aggiuntivi per Linux sono elencati separatamente.
Impostazioni ottimali per le telecamere USB 3.0
Le impostazioni della telecamera influenzano in modo significativo la stabilità e le prestazioni della trasmissione dei dati. L'obiettivo è regolare in modo ottimale la larghezza di banda ed evitare errori.
Questi due parametri nel pylon Viewer hanno un effetto particolare sulla larghezza di banda e sulla stabilità:
Modalità limite di velocità del collegamento del dispositivo: Attiva o disattiva l'intero controllo della larghezza di banda Consigliato:
Attivato, quando la larghezza di banda dell'host controller è limitata
Limite di velocità del collegamento del dispositivo: Determina la larghezza di banda massima disponibile della telecamera per la trasmissione dei dati. I colli di bottiglia possono essere evitati riducendo questo valore.
In pylon, accedere all'albero Features All e selezionare Controlling the frame rate come attività comune. I parametri della telecamera si trovano nella voce Controllo dispositivo.
Impostare i parametri USB3 per Windows
I seguenti cinque parametri USB3 sono configurati in pylon alla voce Parametri dello stream. Le impostazioni corrette aumentano le prestazioni e la stabilità del sistema di visione, riducendo il carico della CPU.
Dimensione massima di trasferimento (MaxTransferSize)
Dimensione dei pacchetti di flusso per il trasferimento delle immagini (paragonabile a jumbo frame con GigE). Valori maggiori = prestazioni più elevate, minor carico della CPU; max. = 4 MB a seconda del controller host USB.Numero massimo di URB in coda (NumMaxQueuedUrbs)
URB = blocchi di richieste USB, cioè richieste USB elaborabili simultaneamente.
Utilizzato per impostare in modo ottimale la telecamera e il controller host.
Provare un valore più alto = meno jitter, trasferimento dati più stabile (limite: RAM disponibile del PC); impostazione predefinita = 64Numero massimo di buffer (MaxNumBuffer)
Numero di buffer dell'immagine - aumentare se l'elaborazione dell'immagine richiede temporaneamente più tempo; valore predefinito = 10Numero di buffer in coda (NumQueuedBuffers)
Mostra quanto sono stabili il numero di buffer e l'acquisizione dell'immagine; un valore in calo potrebbe essere un'indicazione di perdita di immagine.Priorità del thread del ciclo di trasferimento (TransferLoopThreadPriority)
Priorità del thread che elabora i trasferimenti USB. Per ottenere le massime prestazioni: avviare pylon Viewer con diritti di amministratore e aumentare la priorità da 15 a 25 (max. = 31).
Passare alla struttura Tutte le caratteristiche e selezionare Verifica della perdita di dati immagine della telecamera come attività comune. I parametri USB3 si trovano nella voce Parametri flusso.
Ottimizzare le configurazioni USB3 Vision in Linux
Le impostazioni della telecamera sono le stesse di Windows. Tuttavia, in Linux sono rilevanti alcuni parametri di sistema aggiuntivi:
Ricezione della priorità del thread
Per la trasmissione delle immagini, il thread deve ricevere una priorità in tempo reale.Aumentare lo spazio del kernel USB-FS
Previene i colli di bottiglia nella memoria del kernel per i trasferimenti USB
Particolarmente importante per: trasferimenti di grandi dimensioni
Aumentare il limite dell'handle del file / descrittore del file
Importante per le confezioni di grandi dimensioni
Personalizzazione a seconda del sistema e del carico di lavoro
Impostazione di vari parametri di sistema in Linux
Demo: opzioni di messa a punto
Nella demo si apprende come impostare i vari parametri nel pylon Viewer in modo che il sistema funzioni in modo ottimale e stabile. Per effettuare le impostazioni, è necessario utilizzare il pylon Viewer con i diritti di amministratore.
La configurazione comprende un PC Windows, una telecamera USB3 e il software pylon.
Risoluzione dei problemi & monitoraggio del successo
pylon offre diversi parametri statistici che indicano i problemi in una fase iniziale:
Conteggio buffer non riuscito: Immagini corrotte o scartate; indica che si stanno già verificando errori (ad esempio, colli di bottiglia della larghezza di banda).
Conteggio dei fotogrammi mancanti: La telecamera ha catturato un'immagine ma non l'ha trasmessa, ad esempio perché il buffer interno della telecamera si è riempito troppo velocemente → indicazione di: frame rate troppo alto, larghezza di banda del controller host troppo bassa
Conteggio della risincronizzazione: Errore fatale → il controller host ripristina la connessione → conseguenze: tutte le immagini memorizzate nel buffer della telecamera vengono perse
Cause: controller host massicciamente sovraccarico, cavo difettoso, alimentazione insufficiente
Per un'analisi precisa: Aprire il visualizzatore di piloni → Caratteristiche Tutte → Parametri del flusso → osservare i valori statistici
Accedere alla struttura Features All di pylon e selezionare Checking whether the camera is losing image data come attività comune. I parametri statistici si trovano nella voce Parametri del flusso.
Facendo clic con il tasto destro del mouse su un parametro (sul lato destro dello schermo, alla voce Caratteristiche), è possibile accedere alla documentazione del prodotto con spiegazioni dettagliate e frammenti di codice sorgente. È possibile accedervi in qualsiasi momento dal pylon Viewer, anche senza una connessione a Internet.
Documentazione dei Prodotti BaslerScoprite qui come ottimizzare il tuo sistema di visione GigE per ottenere prestazioni elevate e in tempo reale.
Al tutorial per i sistemi GigE VisionSistemi di visione USB3 ottimizzati
Le prestazioni e l'affidabilità di un sistema USB3 Vision dipendono sempre da diversi livelli che devono interagire in modo ottimale.
Hardware di alta qualità: Cavo USB3 industriale e controllore host corrente
Impostazioni ottimizzate della telecamera: controllo della larghezza di banda, dimensioni dei pacchetti e ritardi
Correggere i parametri USB3 in pylon: Dimensioni di trasferimento, URB, Gestione del buffer, Priorità dei thread
Monitoraggio del sistema tramite i parametri statistici: conteggio dei buffer non riusciti, conteggio dei frame mancati, conteggio della risincronizzazione
Ottimizzazioni aggiuntive sotto Linux: Thread in tempo reale, spazio del kernel e limiti dei file handle
Se configurate correttamente, le configurazioni a telecamera singola consentono di ottenere una trasmissione di immagini in tempo reale stabile, senza perdite e ad alte prestazioni.
Prodotti per sistemi USB 3.0
Vuoi implementare una soluzione analoga? Questi prodotti possono aiutarti.



