Consejos técnicos

Ancho de banda bajo control con las cámaras GigE Vision de IDS

Las cámaras GigE Vision transmiten datos de imagen en paquetes pequeños a través de la red incluso antes de que se termine de leer una imagen captada por el sensor. Esto minimiza la latencia de transmisión de las imágenes. Sin embargo, si se transfieren demasiados datos al mismo tiempo se puede superar rápidamente el ancho de banda máximo de transmisión de una red GigE.

Esto afecta con frecuencia a las aplicaciones multicámara. A consecuencia de ello se generan pérdidas de datos durante la transferencia y transmisiones más lentas cuando se solicitan datos reiteradamente. Para evitar este tipo de situaciones el estándar GigE Vision permite configurar de forma específica los parámetros de transmisión. Las opciones de ajuste avanzadas de las cámaras GigE Vision de IDS le permiten administrar el ancho de banda disponible con facilidad.

Contexto

Los datos de las cámaras GigE Vision se transfieren como una secuencia de paquetes. Además de la carga útil propiamente dicha, los paquetes contienen datos de suma de comprobación y de cabecera. Dependiendo del ajuste de la MTU (Maximum Transmission Unit) puede variar el volumen de carga útil y por consiguiente también el tamaño del paquete (concepto clave: jumbo frame). Entre dos paquetes existe un retardo que se puede ajustar: es el denominado "Inter-Packet Delay". Cuando los paquetes de datos no se transfieren correctamente, un Transport Layer (GenTL) puede volver a solicitar la retransmisión de paquetes perdidos mediante un mecanismo de reenvío o Resend. La posibilidad de solicitar datos depende del Transport Layer utilizado. Estos tres componentes juntos determinan el tiempo total de transmisión de la imagen captada por la cámara.

El tiempo de transmisión del paquete varía cuando cambian el tamaño del paquete, el IPG y el número de reenvíos.
El tiempo de transmisión del paquete varía cuando cambian el tamaño del paquete, el IPG y el número de reenvíos.

 

Para descongestionar la red en aplicaciones multicámara o para descargar un sistema de procesamiento es necesario reducir el ancho de banda de la red de los aparatos que transmiten datos. Con el retardo entre paquetes (Inter-Packet Delay) del estándar GigE Vision se evitan cuellos de botella en el ancho de banda mediante pausas de transmisión. Cuidado: el retardo entre paquetes aumenta el tiempo de transmisión total (Transmission Time), dado que los datos de imagen se envían más lentamente, haciendo que baje la velocidad de transferencia. Por otro lado, el incremento del tiempo de transmisión implica también una disminución de la frecuencia de imagen máxima (Acquisition Framerate Limit).

El retardo entre paquetes de GigE Vision permite ajustar la velocidad de transferencia en cada cámara por separado. Con el retraso adecuado en la transferencia de datos se evita que la cámara "desborde" el límite de la interfaz de transmisión.

 

Los paquetes de datos con retardo reducen el ancho de banda de transmisión, pero aumentan el tiempo de transmisión y reducen la frecuencia de imagen máxima.
Los paquetes de datos con retardo reducen el ancho de banda de transmisión, pero aumentan el tiempo de transmisión y reducen la frecuencia de imagen máxima.

Este consejo técnico se centra exclusivamente en las posibilidades de gestión del ancho de banda del firmware GigE Vision de IDS. Los ajustes y el seguimiento del flujo de datos dependen del Transport Layer (GenTL) utilizado.

Standard settings

La GenICam SFNC (Standard Feature Naming Convention) ha definido dos funciones estándar para controlar la velocidad de transferencia de datos.

  • GevSCPD
  • DeviceLinkThroughputLimit


El retardo entre paquetes (Inter-Packet Delay) (véase GevSCPD - Stream Channel Packet Delay) se puede utilizar para ajustar un retardo entre dos paquetes en el canal de streaming (en tics del contador con marca temporal de GigE Vision). Esto incrementa el tiempo de transmisión y reduce el ancho de banda. Definir una pausa adecuada entre los paquetes no es una tarea sencilla, y este método puede ser difícil de usar para controlar el volumen de datos.

El DeviceLinkThroughputLimit limita el ancho de banda máximo de los datos que envía un aparato. El valor máximo se puede indicar en bytes por segundo. Se calcula un retardo adecuado entre los paquetes del canal de streaming, y se usa como valor GevSCPD. La unidad de bytes por segundo permite realizar un control bastante preciso e intuitivo de la velocidad de transferencia de datos.

La ampliación de IDS mejora la claridad

IDS ha implementado en el firmware GigE Vision (a partir de la versión 1.3) dos funciones complementarias que aportan una mayor claridad a la gestión del ancho de banda.

  • DeviceLinkCalculatedThroughput
  • DeviceLinkAcquisitionFrameRateLimit

 

Introduciendo un límite de velocidad de transferencia (DeviceLinkThroughputLimit), el firmware de la cámara calcula por un lado el retardo entre paquetes necesario (GevSCPD) y por el otro la frecuencia de imagen máxima (DeviceLinkAcquisitionFrameRateLimit) que se puede lograr con la limitación actual.

Además, la velocidad de transferencia calculada (DeviceLinkCalculatedThroughput) indica el ancho de banda teórico del aparato que se utilizaría sin la limitación. Esto elimina la necesidad de realizar cálculos laboriosos para cada cámara.

Las nuevas funciones de IDS se calculan a partir del límite del ancho de banda y de los ajustes de la cámara.
Las nuevas funciones de IDS se calculan a partir del límite del ancho de banda y de los ajustes de la cámara.

Las nuevas funciones están disponibles en todas las aplicaciones de cámaras compatibles con GigE Vision. A continuación se muestra su uso con Vision Cockpit de IDS.

Limitación de la velocidad de transferencia

Si desea utilizar un ancho de banda alto en su aplicación GigE Vision con un puerto Gigabit-Ethernet conviene que eche un vistazo a las nuevas funciones de las cámaras IDS, dado que con los ajustes por defecto pueden generarse cuellos de botella al abrir dos cámaras.

Inicie las cámaras conectadas sin adquisición de imágenes "inmediata" y realice en primer lugar los ajustes en la cámara.

Antes de iniciar la adquisición de imágenes compruebe la velocidad de transferencia calculada y la frecuencia de imagen máxima y defina un límite de ancho de banda si es necesario. Para obtener una vista eficaz filtre los "Device Nodes" utilizando la palabra "devicelink" y al menos el nivel de usuario "Expert". La selección de Device Nodes le muestra los parámetros con valores de ejemplo del ancho de banda de la cámara:

La selección muestra los parámetros de la cámara para el ajuste del ancho de banda
La selección muestra los parámetros de la cámara para el ajuste del ancho de banda

Por defecto las cámaras operan con una velocidad de transferencia ilimitada y utilizan el límite de velocidad máximo ajustable (DeviceLinkThroughputLimit) de 120 MBps. Tal y como está ajustada, la cámara del ejemplo generaría una velocidad de transferencia de aproximadamente 61 MBps y una frecuencia de imagen de 25 fps (DeviceLinkCalculatedThroughput). Con el límite máximo la cámara podría adquirir y transmitir hasta 46 imágenes por segundo (DeviceLinkAcquisitionFrameRateLimit). Si cambia los parámetros de la cámara, entonces se modificarán la "velocidad de transferencia calculada" (DeviceLinkCalculatedThroughput) y la "frecuencia de imagen máxima" (DeviceLinkAcquisitionFrameRateLimit).

En cambio, si limita la velocidad de transferencia utilizando el "DeviceLinkThroughputLimit", independientemente de los ajustes de la cámara y de la tasa de transferencia derivada de éstos, la cámara no superará nunca ese valor.

Si en este ejemplo bajamos el límite de la velocidad de transferencia a 50 MBps, con los mismos ajustes solo será posible una frecuencia de imagen máxima de unos 20 fps.

Si el límite de ancho de banda queda por debajo de la velocidad de transferencia calculada, la frecuencia de imagen máxima se reduce
Si el límite de ancho de banda queda por debajo de la velocidad de transferencia calculada, la frecuencia de imagen máxima se reduce

Dado que la velocidad de transferencia calculada de unos 60 MBps sigue excediendo el límite, la cámara ya no puede transferir la frecuencia de imagen ajustada de 25 fps. Se produce una congestión en el búfer de transferencia de la cámara. Si las imágenes captadas no se pueden guardar en el búfer, la cámara "suelta" las imágenes. La tasa de transferencia efectiva se va ajustando a la frecuencia de imagen máxima calculada (21 fps).

Cuanto más exceda la velocidad de transferencia calculada el límite ajustado, más imágenes desechará la cámara internamente y por consiguiente no serán transmitidas.

Con la cámara en modo de imagen en directo puede controlar la frecuencia de imagen, que aparece en el margen inferior de la imagen.
Con la cámara en modo de imagen en directo puede controlar la frecuencia de imagen, que aparece en el margen inferior de la imagen.

Como consecuencia de la reducción del ancho de banda la transmisión de imágenes de la cámara se retrasa utilizando las pausas de los paquetes de datos (GevSCPD).

Ventajas de la limitación del ancho de banda

Distribuya el ancho de banda disponible de un puerto Gigabit Ethernet (120 MBps) entre las cámaras conectadas definiendo límites de ancho de banda adecuados. Con ello evitará cuellos de botella que podrían generar imágenes defectuosas e incompletas.

También puede priorizar cámaras dotándolas de límites de ancho de banda distintos.

Dos cámaras con límites de ancho de banda distintos.  La cámara 2 puede transferir los datos a mayor velocidad.
Dos cámaras con límites de ancho de banda distintos. La cámara 2 puede transferir los datos a mayor velocidad.

Optimización del sistema

Incluso tras haber previsto límites de ancho de banda GigE al ajustar la velocidad de transferencia de su cámara es posible que se sigan generando cuellos de botella en la línea Gigabit debido a un tráfico intenso o a otras fluctuaciones propias del sistema. Por consiguiente se seguirían produciendo imágenes incompletas u otros errores de transferencia.

Ajustes de GenTL

Dependiendo del GenTL utilizado existen distintas opciones de ajuste y de supervisión para optimizar la transferencia de datos. Estas son algunas de las funciones del GenTL de IDS a modo de ejemplo:

  • El "Stream Monitor" muestra mediante el "Buffer Fill Level" el porcentaje del búfer de transferencia que se está transmitiendo correctamente. Y el "Resend Request Count" muestra la utilización de las solicitudes del búfer.
  • Se puede utilizar "Loss Handling" para controlar el volumen de datos que se debe solicitar. Esta función está desactivada por defecto.
  • IDS GenTL realiza el contaje de las imágenes "incompletas" que sin embargo se envían. El usuario puede decidir si utilizar o no esos datos de imagen.

Preparar reservas

Conviene tener preparada una reserva para evitar que la falta de rendimiento momentánea de la red provoque errores de transmisión. A la hora de distribuir el ancho de banda disponible, deje aproximadamente un 10 % de reserva sin asignar a las cámaras.

Recomendaciones para el ajuste de la tarjeta de red

  • En los ajustes de la tarjeta de red recomendamos configurar el búfer de recepción (Receive Descriptors) con el valor máximo.
  • También es conveniente ajustar el valor máximo en los ajustes de la tarjeta de red "Jumbo Frames" (o bien: Jumbo Packet, Large Packet, Large Frame).
    Asegúrese de que la conexión entre la cámara y el PC es compatible con jumbo en todo momento para garantizar la transferencia de los paquetes jumbo. Para obtener más información sobre estos ajustes consulte la descripción del fabricante de la tarjeta de red.

Conclusión

Aparte de las funciones definidas en el estándar para la gestión del ancho de banda, en el firmware GigE Vision de IDS se han implementado otros dos parámetros que aportan una mayor claridad.

Las cámaras IDS GigE Vision no solo utilizan el límite de ancho de banda para restringir de forma independiente la salida de datos, sino que también muestran la frecuencia de imagen posible y el ancho de banda calculado utilizando los ajustes de la cámara de ese momento. Estos parámetros complementarios de las cámaras permiten a su vez optimizar los ajustes de la cámara para mantener el límite del ancho de banda.

Estas opciones le permiten optimizar los ajustes de varias cámaras (sistemas multicámara) para funcionar en el mismo puerto Gigabit Ethernet sin exceder el ancho de banda máximo. Esto evita eficazmente los cuellos de botella y a su vez los errores de transmisión derivados de éstos.

Puede obtener más información sobre el firmware GigE Vision de las cámaras IDS en el siguiente enlace de nuestra página web: https://es.ids-imaging.com/gige-vision-firmware.html