На этой странице описано, как собрать контроллер Android 13, который управляет движением стенда для тестирования слияния данных с датчиков и освещением для ITS-in-a-box. Тестирование слияния данных с датчиков является частью набора тестов Camera Image Test Suite (Camera ITS) в наборе тестов совместимости Compatibility Test Suite (CTS). Контроллер Android 13 обеспечивает автоматизацию, управляя освещением стенда и сервомотором для тестовых сцен, требующих вращения и управления освещением.
Обзор контроллера Android 13
ITS-in-a-box обеспечивает стабильную среду тестирования с фиксированным расстоянием между тестовым планшетом и тестовым телефоном, а также стабильное освещение без внешнего источника света. Контроллер на базе Android 13 автоматизирует как управление сервоприводами, так и управление освещением, устраняя необходимость вручную вращать тестируемое устройство для тестов с объединением данных с датчиков и вручную включать и выключать свет для тестов с управлением освещением.
Сервоприводы и управление освещением на испытательных стендах
Испытательный стенд для слияния данных с датчиков обеспечивает фиксированное движение телефона для воспроизводимого тестирования. Телефон вращается перед шахматной мишенью, что позволяет получать изображения с телефона в различных положениях. Для теста test_sensor_fusion сервопривод вращает телефон вокруг оси камеры на 90 градусов и обратно примерно за 2 секунды. Для теста test_video_stabilization сервопривод многократно вращает телефон вокруг оси камеры на 10 градусов и обратно, имитируя движение телефона при видеосъемке во время ходьбы. На рисунке 1 показаны два телефона, движущиеся на испытательном стенде для слияния данных с датчиков. На рисунке 2 показан один телефон, движущийся на испытательном стенде для слияния данных с датчиков.

Рисунок 1. Движение телефона в испытательном стенде для теста test_sensor_fusion.

Рисунок 2. Движение телефона в испытательном стенде для стабилизации тестового видео.
Управление сервомотором
Аналоговые сервомоторы в испытательном стенде представляют собой позиционные сервоприводы, управляемые с помощью широтно-импульсной модуляции (ШИМ). Типичный пример позиционного управления показан на рисунке 3. Период управляющего сигнала составляет 20 мс. Изменение ширины импульса до минимальной ширины перемещает двигатель в нейтральное положение, а изменение ширины импульса до максимальной ширины перемещает двигатель на 180 градусов по часовой стрелке.

Рисунок 3. Типичное описание сервоуправления.
Управление освещением
Для управления движением сервомоторов и освещением с помощью главного компьютера тестовый стенд для объединения данных с датчиков требует USB-подключения. Контроллер Android 13 использует плату Arduino UNO R3, подключенную через USB, с установленной сверху платой маршрутизации (или экраном расширения ). Контроллер Android 13 может управлять до тремя сервомоторами вращения стенда для объединения данных с датчиков и до тремя системами освещения ITS-in-a-box или одним стендом для объединения данных с датчиков с одного главного компьютера.
Контроллер Android 13 версии 3.0 позволяет пользователям отключать автоматическую перезагрузку при открытии последовательного порта Arduino через USB. Функция автоматической перезагрузки включается, когда контроллер подключен к другому хосту или используется для других тестовых сценариев. Пользователи могут включать или отключать автоматическую перезагрузку с помощью физического переключателя на контроллере.
Контроллер Android 13 может работать с любым устройством Camera ITS-in-a-box. Контроллер Android 13 можно подключить к любому устройству Camera ITS-in-a-box (RFoV, WFoV, Modular) или Sensor Fusion box для проведения тестов с управлением освещением. Начиная с Android 15, все тесты с управлением освещением включены в scene_flash и могут быть запущены с помощью Sensor Fusion box, за исключением scene_low_light , для которого требуется планшет для отображения диаграммы, и который должен быть запущен с помощью Camera ITS-in-a-box.
Для тестов в режимах scene_flash и scene_low_light требуется темное окружение с выключенным светом, чтобы активировать функцию автоматической вспышки на тестовых телефонах. На рисунке 4 показано, как контроллер Android 13 включает и выключает подсветку в ITS-in-a-box.

Рисунок 4. Включение и выключение света для функции test_auto_flash
История изменений
В таблице ниже приведена история изменений контроллера Android 13, а также ссылки для скачивания каждой версии производственных файлов.
| Дата | Пересмотр | Загрузка производственного файла | Журнал изменений |
|---|---|---|---|
| Август 2024 г. | 3.0 |
| |
| Декабрь 2022 г. | 2.2 |
| |
| Март 2022 г. | 1 |
|
Настройка контроллера Android 13
В этом разделе описывается, как настроить контроллер Android 13.
Необходимые компоненты
Вы можете приобрести контроллер Android 13 у одного из наших квалифицированных поставщиков или собрать контроллер самостоятельно. Файл для производства включает в себя файл Gerber для печатной платы, спецификацию материалов (BOM) для печатной платы, информацию о размещении компонентов на печатной плате и файл STEP для корпуса. Чтобы загрузить файл для производства, см. таблицу в разделе «История изменений» .
Если вы собираете контроллер самостоятельно, вам потребуется плата Arduino UNO R3 . При покупке контроллера у сертифицированного поставщика плата Arduino входит в комплект.
Корпус для контроллера Android 13 — это необязательный, но рекомендуемый компонент, который защищает контроллер и блокирует неиспользуемые USB-порты, предотвращая ошибки при настройке. Для получения подробной информации о ценах и вариантах контроллера обратитесь к квалифицированному поставщику.
Процедура настройки
Для настройки контроллера Android 13 выполните следующие действия:
Подключите адаптеры 12 В (для освещения) и 5 В (для сервопривода) к соответствующим разъемам питания (Рисунок 5).

Рисунок 5. Расположение адаптера питания.
Подключите светильники ITS-in-a-box или Sensor Fusion box к одному из выходных разъемов каналов освещения (Рисунок 6). В зависимости от типа используемого источника питания светильника, используйте адаптер (Рисунок 7).

Рисунок 6. Расположение выходных каналов освещения.

Рисунок 7. Адаптер, соединяющий питание освещения с контроллером.
Для настройки сцен sensor_fusion подключите сервопривод к одному из разъемов подключения каналов сервопривода.

Рисунок 8. Расположение соединения сервопривода.
Для контроллеров версии 3.0 при подключении контроллера к новому хосту переключатель автоматического сброса необходимо установить в
Enable.В версии 3.0 контроллер включает переключатель автоматического сброса, который можно включить или выключить. При тестировании мы рекомендуем установить переключатель автоматического сброса в положение
Disable, чтобы предотвратить кратковременное выключение всех ламп в начале каждого теста, покаits_base_testустанавливает связь с контроллером Arduino. Это критически важно при параллельном тестировании (ITS работает одновременно с системой освещения испытательного стенда, подключенной к тому же контроллеру).
Рисунок 9. Переключатель автоматического сброса
Подключите контроллер к хосту с помощью кабеля USB-A.

Рисунок 10. Разъем USB-A для подключения к хосту.
На рисунке 11 показан пример завершенной настройки контроллера Android 13 для одной системы освещения и сервопривода.

Рисунок 11. Завершенная настройка контроллера Android 13.
Программное управление с хоста
Микрокод можно загрузить в UNO для назначения ШИМ-выходов сигналам двигателей и определения диапазонов ширины импульса для разных углов. Микрокод для управления вращением сервоприводов шести двигателей HS-755MB включен в раздел «Другие ресурсы» . В этом разделе также есть ссылка на простую программу rotator.py , которая вращает сервоприводы.
Использование контроллера Android 13
Использование Camera ITS:
python tools/run_all_tests.py device=device_id camera=0 rot_rig=arduino:1 scenes=sensor_fusion
В комплекте с тестовым скриптом:
python rotator.py --ch 1 --dir ON --debug