Configuración de parámetros de cámara con PercipioViewer
El software PercipioViewer versión 2.6.1 o superior permite guardar parámetros ajustados en la zona de almacenamiento de la cámara. Para ello, abra la cámara objetivo, ajuste las propiedades según sea necesario y, tras cerrar todo el flujo de captura, acceda a Tools > Parameetrs en la barra de menú.
Nota: Esta función requiere PercipioViewer 2.6.1j o posterior y que no haya flujo activo. Solo se guardan los controles bajo cada componente, no los ajustes de posprocesamiento como corrección de distorsión o AutoISP.
Ajuste de parámetros SGBM para cámaras con soporte
Modelos como FM855-E1 o PS800 incluyen parámetros SGBM para controlar la calidad de la profundidad. Algunos ajustes clave incluyen:
- disparityNum: Rango de disparidad, ajustable según el rango de profundidad deseado.
- matchWinW/H: Tamaño del bloque de coincidencia, que debe ser impar y mayor o igual a 3.
- P1/P2: Parámetros de suavidad de disparidad, donde P2 debe ser mayor que P1.
- uniqueFator/uniqueAbsDiff: Umbrales para reducir artefactos como puntos erróneos o huecos.
Estructura del SDK de ROS2 para cámaras Percipio (versión 3.X.X)
El repositorio del SDK incluye directorios clave:
camport3/: Bibliotecas y archivos de encabezado del SDK nativo.include/: Archivos de encabezado adicionales.launch/: Archivos de inicio para ROS2.src/: Código fuente principal del nodo de cámara.
El flujo de trabajo básico implica inicializar un nodo ROS2, crear publicadores para temas de imágenes y ejecutar el nodo mediante comandos como ros2 run o ros2 launch.
Compilación del SDK en entornos Ubuntu
Para Ubuntu 20.04 con ROS2 Foxy
-
Instalar dependencias y configurar el entorno: ```
sudo apt update sudo apt install locales curl gnupg lsb-release ros-foxy-desktop
python3-colcon-common-extensions ros-foxy-camera-info-manager
ros-foxy-image-publisher ros-foxy-diagnostic-updater -
Añadir la clave de repositorio de ROS2: ```
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key
-o /usr/share/keyrings/ros-archive-keyring.gpg echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg]
https://mirrors.tuna.tsinghua.edu.cn/ros2/ubuntu $(lsb_release -cs) main" |
sudo tee /etc/apt/sources.list.d/ros2.list -
Configurar variables de entorno: ```
echo "source /opt/ros/foxy/setup.bash" >> ~/.bashrc source ~/.bashrc
-
Compilar el SDK desde el directorio del workspace: ```
cd ~/ros2_ws/src/camport_ros2 colcon build --event-handlers console_direct+ --cmake-args -DCMAKE_BUILD_TYPE=Release echo "source ./install/setup.bash" >> ~/.bashrc source ~/.bashrc
Para Ubuntu 22.04 con ROS2 Humble
-
Repetir los pasos anteriores, pero instalar paquetes de ROS2 Humble: ```
sudo apt install ros-humble-desktop ros-humble-camera-info-manager
ros-humble-image-publisher ros-humble-diagnostic-updater -
Compilar de manera similar, ajustando rutas si es necesario.
La compilación genera directorios build/, install/ y log/.
Configuración de parámetros en archivos launch
Los parámetros de la cámara se pueden establecer en archivos launch como percipio_camera.launch.py. Ejemplos de configuración:
- Modo de trabajo del dispositivo:
device_workmodepuede sertrigger_off,trigger_softotrigger_hard. - Reenvío de paquetes:
gvsp_resenddebe habilitarse (true) para redes inestables. - Reconexión automática:
device_auto_reconnectrecomendado comotrue. - Parámetros ToF: Propiedades como
tof_depth_quality(opciones:basic,medium,high) pueden guardarse en la cámara.
Para múltiples cámaras, usar multi_cam.launch.py y duplicar configuraciones para cada dispositivo.
Pruebas y validación del SDK
Parámetros soportados
El SDK permite configurar propiedades como:
camera_name: Nombre del tema para identificación en entornos multi-cámara.serial_numberodevice_ip: Formas de conexión a la cámara.- Habilitación y resolución de componentes (color, profundidad, IR).
- Parámetros de calidad de servicio (QoS) para temas de imágenes.
Los valores para formatos de flujo se definen en archivos como percipio_device.cpp.
Pruebas con modelos específicos
Modelos como FS820-E1 o FM815-E1 deben probarse para verificar configuraciones de resolución y formato en componentes de color y profundidad.
Carga de parámetros desde almacenamiento
El SDK versión 3.6.66 o superior carga automáticamente parámetros guardados en la cámara al iniciar. Use PercipioViewer 2.6.1+ para guardar ajustes previamente.
Estrategias de QoS en ROS2
ROS2 ofrece configuraciones de QoS para gestionar el flujo de datos:
- SENSOR_DATA: Para datos de sensores, con
BEST_EFFORTy baja latencia. - DEFAULT: Comunicación confiable con
RELIABLE, adecuada para mensajes importantes. - SERVICES_DEFAULT: Para servicios cliente-servidor.
Elija SENSOR_DATA para transmisión en tiempo real y DEFAULT para configuraciones críticas.
Solución de problemas comunes
- Error
process has died -11: Posible conflicto con OpenCV en funciones de corrección de distorsión; contactar al soporte para obtener una versión del SDK sin OpenCV. - Falta de paquetes como
camera_info_manager: Instalar consudo apt install ros-distro-camera-info-manager. - Problemas de compilación en Ubuntu 24.04 con ROS2 Jazzy: Modificar archivos fuente relevantes, como
percipio_camera_node.cpp.
Herramientas y recursos adicionales
Uso de colcon
Colcon es la herramienta de compilación para ROS2. Ejemplo de uso:
colcon build --packages-select nombre_paquete
Comandos de ros2 topic
Para diagnosticar temas ROS2:
ros2 topic hz tema: Muestra la frecuencia de publicación.ros2 topic echo tema: Visualiza los mensajes publicados.ros2 topic bw tema: Indica el ancho de banda utilizado.