Arducam KingKong

Введение
Arducam KingKong — комплект умной ИИ-камеры на базе Raspberry Pi CM4, модуля OAK SOM BW1099 и камеры AR0234. Это первая модель Arducam в семействе Pivistation: ИИ-камера объединяет Raspberry Pi CM4 (CM4104000: 4 ГБ ОЗУ, версия Lite, Wi-Fi 2,4/5,0 ГГц и Bluetooth 5.0) и OAK SOM BW1099 и открывает широкие возможности для задач ИИ.
Получается гибкая платформа для современных приложений машинного зрения — и для энтузиастов ИИ, и для профессионалов.
Точную съёмку обеспечивает камера с глобальным затвором. Цветная камера AR0234 с глобальным затвором и объективом M12 даёт точное изображение без искажений и поддерживает внешний запуск (trigger).
Характеристики
| Артикул | Разрешение | Сенсор | Интерфейс | Назначение | Тип затвора | Фокусировка | Угол обзора (Д × Г × В) | Чувствительность к ИК |
|---|---|---|---|---|---|---|---|---|
| B0507 | 2,3 Мп | AR0234 | HDMI/USB/Ethernet | Комплект машинного зрения с ИИ | Глобальный затвор | Ручная | 120° × 90° × 75° | Встроенный ИК-фильтр |
Подготовка
Перед началом работы:
На встроенной SD-карте уже установлено всё необходимое ПО. Что может понадобиться: хост — ноутбук или настольный ПК с портом Ethernet; по желанию — монитор, кабель HDMI, мышь, клавиатура, USB-хаб. Не выполняйте в терминале командыsudo apt-get updateиsudo apt-get upgrade: после них Raspberry Pi перестанет определять камеру. Если вы уже выполнили эти команды, восстановите систему, как описано ниже.
«Я уже выполнил sudo apt-get update/upgrade. Как вернуться к рабочей версии ПО для камеры?»
— Скачайте полный образ системы: Arducam KingKong CM4 All-in-one kit.image.
Быстрый старт
Вариант 1. Подключение к хосту кабелем Ethernet
Подключение оборудования
Шаг 1. Подключите к KingKong питание и сетевой кабель.

Шаг 2. Подключите сетевой кабель к хосту.

Работа с ПО
По умолчанию у порта Ethernet в KingKong фиксированный IP-адрес — 10.254.10.1.
Шаг 1. Узнайте IP-адрес устройства.
Соединив хост и KingKong сетевым кабелем, откройте сетевые настройки хоста:

Шаг 2. Задайте на хосте такие параметры IPv4:

Шаг 3. Откройте на хосте браузер и введите адрес http://10.254.10.1:8081 — откроется главная страница веб-сервиса.
Главная страница
Страница веб-сервиса:

Состояние камеры — формат, разрешение, частота кадров и т. д.:

Состояние конечных точек (endpoints). Они есть только при работе сервиса camera-streamer, открыть их можно прямо по показанной ссылке.
rstp нужна программа для приёма потока, например vlc. Остальные режимы открываются в браузере.
Настройки

Сетевые настройки:
Здесь перечислены все сетевые порты. Для каждого порта можно выбрать статический или динамический IP-адрес.
Проводная сеть
Переключение текущего IP-адреса на статический или динамический:

Беспроводная сеть

В окне появится список всех доступных сетей Wi-Fi.

Дважды щёлкните нужную сеть, введите пароль и нажмите Connect.

Сеть Wi-Fi, к которой вы сейчас подключены, отмечена звёздочкой (*) в первом столбце.
Включение и выключение сервисов-плагинов:

1. libcamera-net
Сервис потоковой передачи по http на базе libcamera. Можно выбрать способ постобработки и выводить обработанное изображение на веб-страницу для просмотра.
2. discovery_server
Находит другие устройства и позволяет дать всем им команду сделать снимок.

Вариант 2. Подключение к роутеру кабелем Ethernet
Подключение оборудования
Подключите Arducam KingKong к роутеру сетевым кабелем, а монитор — к KingKong кабелем HDMI.
Можно подключить и клавиатуру.
Шаг 1. Подключите к KingKong питание и сетевой кабель.

Шаг 2. Подключите сетевой кабель к роутеру.

Шаг 3. Подключите монитор кабелем HDMI.

Шаг 4. Подключите периферию — клавиатуру или мышь. Больше устройств можно подключить через USB-хаб.

Работа с ПО
Шаг 1. Узнайте IP-адрес устройства.
Когда всё подключено, войдите в систему и посмотрите IP-адрес командой ifconfig.
Откройте терминал и выполните:
ifconfig
Пример:

Шаг 2. Введите в браузере на хосте адрес http://<ip address>:8081 — откроется веб-интерфейс.
Главная страница
Страница веб-сервиса:

Состояние камеры — формат, разрешение, частота кадров и т. д.:

Состояние конечных точек (endpoints). Они есть только при работе сервиса camera-streamer, открыть их можно прямо по показанной ссылке.
rstp нужна программа для приёма потока, например vlc. Остальные режимы открываются в браузере.
Настройки

Сетевые настройки:
Здесь перечислены все сетевые порты. Для каждого порта можно выбрать статический или динамический IP-адрес.
Пример — переключение текущего IP-адреса на статический или динамический:

Включение и выключение сервисов-плагинов:

1. libcamera-net
Сервис потоковой передачи по http на базе libcamera. Можно выбрать способ постобработки и выводить обработанное изображение на веб-страницу для просмотра.
2. discovery_server
Находит другие устройства и позволяет дать всем им команду сделать снимок.

Запуск ИИ-демо
1. Отключите потоковую трансляцию (по умолчанию она включена).
В разделе Settings выключите все переключатели, выделенные красной рамкой на скриншоте ниже. Если позже понадобится трансляция по сети, вернитесь сюда и включите их снова.

2. Запустите демо

cd picamera2_oak_demo
python demo.py

Внешний запуск
Подключение внешнего запуска
Подключите устройство к источнику сигнала запуска кабелем M8-8A, показанным на фото. Разъём для подключения отмечен на фото. Кабель можно подключать любым концом.

Назначение контактов
Распиновка круглого разъёма:

Назначение сигналов:
| Контакт | Сигнал | Вход/выход | Описание | Мин. | Тип. | Макс. | Цвет провода |
|---|---|---|---|---|---|---|---|
| 1 | VCC | Питание | Резерв | / | / | / | Белый |
| 2 | STROBE_OUT | Выход | Выход строба камеры (открытый коллектор) | / | / | 24 В | Коричневый |
| 3 | TRIGGER_IN | Вход | Вход синхронизации экспозиции камеры | 3,3 В | / | 24 В | Зелёный |
| 4 | Isolated GND | GND | Изолированная земля для STROBE/TRIGGER | / | / | / | Жёлтый |
| 5 | GND | GND | Земля | / | / | / | Серый |
| 6 | GPIO19 | Вход/выход | CM4_BCM GPIO19 | 2,0 В | 3,3 В | 3,3 В | Розовый |
| 7 | GPIO13 | Вход/выход | CM4_BCM GPIO13 | 2,0 В | 3,3 В | 3,3 В | Синий |
| 8 | GPIO6 | Вход/выход | CM4_BCM GPIO6 | 2,0 В | 3,3 В | 3,3 В | Красный |
Включение режима внешнего запуска
Шаг 1. Узнайте IP-адрес
Выберите инструкцию по определению IP-адреса в зависимости от того, как подключён сетевой кабель:
Определение IP-адреса — вариант 1. Подключение к хосту кабелем Ethernet Определение IP-адреса — вариант 2. Подключение к роутеру кабелем Ethernet
Шаг 2. Подключитесь к устройству
Зная IP-адрес устройства, подключитесь к нему удалённо, чтобы работать с функциями ИИ.
#Default username and password
user:pi
passwd: raspberrypi
Откройте терминал и введите команду (работает и в Windows, и в Linux):
ssh pi@<ip_address>
Пример:
ssh pi@192.168.0.101

Шаг 3. Включите режим внешнего запуска
Подключившись к устройству, выполните в терминале команду, чтобы включить режим внешнего запуска:
v4l2-ctl -c trigger_mode=1 -d /dev/v4l-subdev0
Проверьте командой v4l2-ctl -l -d /dev/v4l-subdev0: если в разделе User Controls значение trigger_mode равно 1, режим внешнего запуска включён.
