En esta página, se describe cómo ensamblar el controlador de Android 13, que controla el movimiento de un equipo de prueba de fusión de sensores y la iluminación de ITS-in-a-box. La prueba de fusión de sensores forma parte del Conjunto de pruebas de imagen de la cámara (ITS de la cámara) en el Conjunto de pruebas de compatibilidad (CTS). El controlador de Android 13 permite la automatización controlando la iluminación de la estructura y el servomotor para las escenas de prueba que requieren rotación y control de iluminación.
Descripción general del controlador de Android 13
El ITS-in-a-box proporciona un entorno de prueba coherente con una distancia fija entre la tablet y el teléfono de prueba, además de una iluminación coherente sin una fuente de luz externa. El controlador de Android 13 automatiza el control del servo y el control de iluminación, y elimina la necesidad de rotar manualmente el DUT para las pruebas de escenas de fusión de sensores y de encender y apagar manualmente las luces para las pruebas controladas por iluminación.
Control de iluminación y servo en bancos de pruebas
El equipo de prueba de fusión de sensores proporciona un movimiento fijo del teléfono para realizar pruebas reproducibles. El teléfono se rota frente a un objetivo de tablero de ajedrez para permitir la captura de imágenes con el teléfono en varias posiciones. En el caso de test_sensor_fusion, el servomotor gira el teléfono alrededor del centro de la cámara en un ángulo de 90 grados y lo devuelve a su posición en aproximadamente 2 segundos. En el caso de test_video_stabilization, el servomotor gira el teléfono alrededor del centro de la cámara en un ángulo de 10 grados y lo regresa a su posición inicial de forma repetida para simular el movimiento del teléfono cuando se graba un video mientras se camina. En la figura 1, se muestran dos teléfonos que se mueven en un equipo de prueba de fusión de sensores. En la figura 2, se muestra un teléfono que se mueve en un equipo de prueba de fusión de sensores.
Figura 1: Movimiento del teléfono en el equipo de prueba para test_sensor_fusion
Figura 2: Movimiento del teléfono en el soporte de prueba para test_video_stabilization
Control del motor servo
Los servomotores analógicos del banco de pruebas son servomotores posicionales que se controlan con modulación de ancho de pulso (PWM). En la Figura 3, se muestra un ejemplo típico de control posicional. El período de la señal de control es de 20 ms. Si se cambia el ancho de pulso al ancho mínimo, el motor se mueve a la posición neutral, y si se cambia el ancho de pulso al ancho máximo, el motor se mueve 180 grados en el sentido de las agujas del reloj.
Figura 3: Descripción típica del control del servo
Control de iluminación
Para controlar el movimiento del servomotor y las luces con una computadora host, el banco de pruebas de fusión de sensores requiere una conexión USB. El controlador de Android 13 usa una placa Arduino UNO R3 conectada por USB con una placa de enrutamiento personalizada (o shield) montada en la parte superior. El controlador de Android 13 puede controlar hasta tres servos rotativos de la plataforma de fusión de sensores y hasta tres sistemas de iluminación ITS-in-a-box o una plataforma de fusión de sensores desde una sola computadora host.
El controlador de Android 13 de la revisión 3.0 permite que los usuarios inhabiliten el restablecimiento automático cuando se abre el puerto serie de Arduino a través de USB. La función de restablecimiento automático se habilita cuando el controlador se conecta a otro host o se usa para otros casos de prueba. Los usuarios pueden habilitar o inhabilitar el restablecimiento automático con un interruptor físico en el controlador.
El controlador de Android 13 puede funcionar con cualquier ITS integrado en la cámara. El controlador de Android 13 se puede conectar a cualquier caja de ITS integrado (RFoV, WFoV, modular) o de fusión de sensores de la cámara para realizar pruebas controladas por iluminación. A partir de Android 15, todas las pruebas controladas por iluminación se incluyen en scene_flash y se pueden ejecutar con la caja de fusión de sensores, excepto scene_low_light, que requiere una tablet para mostrar el gráfico y debe ejecutarse con el ITS integrado en la cámara.
Para las pruebas en scene_flash y scene_low_light, se requiere un entorno oscuro con las luces apagadas para activar la función de flash automático en los teléfonos de prueba. En la figura 4, se muestran las luces del ITS-in-a-box que se encienden y apagan con el controlador de Android 13.
Figura 4: Luces encendidas y apagadas para test_auto_flash
Historial de revisión
En la siguiente tabla, se describe el historial de revisiones del controlador de Android 13 y se incluyen vínculos de descarga a cada versión de los archivos de producción.
Fecha | Revisión | Descarga de archivos de producción | Registro de cambios |
---|---|---|---|
Agosto de 2024 | 3.0 |
|
|
Diciembre de 2022 | 2.2 |
|
|
Marzo de 2022 | 1 |
|
Configuración del control de Android 13
En esta sección, se describe cómo configurar un controlador de Android 13.
Componentes obligatorios
Puedes comprar el controlador de Android 13 a uno de nuestros proveedores calificados o bien construirlo por tu cuenta. El archivo de producción consta de un archivo Gerber de PCB, la lista de materiales (BOM) de la PCB, información de ubicación de la PCB y un archivo STEP de la carcasa. Para descargar el archivo de producción, consulta la tabla en Historial de revisión.
Si vas a crear tu propio controlador, debes tener una placa Arduino UNO R3. Si compras el controlador a través de un proveedor calificado, se incluye el Arduino.
La carcasa del controlador de Android 13 es un componente opcional, pero recomendado, que protege el controlador y bloquea los puertos USB que no se usan para evitar errores de configuración. Para obtener detalles sobre los precios y las opciones del controlador, comunícate con un proveedor calificado.
Procedimiento de configuración
Para configurar el controlador de Android 13, sigue estos pasos:
Conecta los adaptadores de 12 V (para la iluminación) y 5 V (para el servo) a los conectores de alimentación correspondientes (figura 5).
Figura 5: Ubicación del adaptador de alimentación
Conecta las luces de la caja de ITS o de Sensor Fusion a uno de los conectores de salida del canal de iluminación (figura 6). Según el tipo de conector de alimentación de la luz, usa un adaptador según sea necesario (figura 7).
Figura 6: Ubicación de salida de los canales de iluminación
Figura 7: Adaptador que conecta la alimentación de la iluminación al controlador
Para configurar las escenas de sensor_fusion, conecta el servo a uno de los encabezados de conexión del canal del servo.
Figura 8: Ubicación de la conexión del servo
En el caso de los controles de revisión 3.0, cuando se conecta el control a un host nuevo, el interruptor de restablecimiento automático debe establecerse en
Enable
.En la revisión 3.0, el controlador incluye un interruptor de restablecimiento automático que se puede habilitar o inhabilitar. Cuando realices pruebas, te recomendamos que configures el interruptor de restablecimiento automático en
Disable
para evitar que todas las luces se apaguen momentáneamente al comienzo de cada prueba, ya queits_base_test
establece comunicación con el controlador de Arduino. Esto es fundamental cuando se ejecutan pruebas paralelas (el ITS se ejecuta simultáneamente con el sistema de iluminación del equipo de prueba conectado al mismo controlador).Figura 9: Interruptor de restablecimiento automático
Conecta el control al host con un cable USB-A.
Figura 10: Puerto de conexión USB-A al host
En la Figura 11, se muestra un ejemplo de la configuración completa del controlador de Android 13 para un sistema de iluminación y un servo.
Figura 11: Se completó la configuración del control de Android 13
Control de software desde el host
El microcódigo se puede descargar en la placa UNO para asignar los pines PWM a los indicadores del motor y definir los rangos de ancho de pulso para diferentes ángulos. El microcódigo para el control de rotación del servo de los seis motores HS-755MB se incluye en Otros recursos. Esa sección también incluye un vínculo a un programa simple llamado rotator.py
, que rota los servos.
Cómo usar el controlador de Android 13
Uso del ITS de la cámara:
python tools/run_all_tests.py device=device_id camera=0 rot_rig=arduino:1 scenes=sensor_fusion
Con secuencia de comandos de prueba incluida:
python rotator.py --ch 1 --dir ON --debug