Быстрый старт: камеры с моторизованной фокусировкой
Аппаратная часть

ПО
Управление фокусом
Камера OV5647 с автофокусом
1. Выполните команду sudo nano /boot/config.txt и добавьте в раздел [all] файла конфигурации строку ниже — она настраивает камеру и драйвер мотора.
dtoverlay=ov5647,vcm
Затем перезагрузите Raspberry Pi, чтобы изменения вступили в силу.
2. Запустите предпросмотр камеры через rpicam:
rpicam-still -t 0 --tuning-file /usr/share/libcamera/ipa/rpi/vc4/ov5647_af.json
Камера IMX219 с автофокусом
1. Выполните команду sudo nano /boot/config.txt и добавьте в раздел [all] файла конфигурации строку ниже — она настраивает камеру и драйвер мотора.
dtoverlay=imx219,vcm
Затем перезагрузите Raspberry Pi, чтобы изменения вступили в силу.
2. Запустите предпросмотр камеры через rpicam:
rpicam-still -t 0 --tuning-file /usr/share/libcamera/ipa/rpi/vc4/imx219_af.json
Камера IMX477 с автофокусом
1. Скачайте архив
cd ~
mkdir imx477_dtb_test
cd imx477_dtb_test
wget https://github.com/ArduCAM/Arducam-Pivariety-V4L2-Driver/releases/download/Arducam_pivariety_v4l2_v1.0/imx477_rpi_dtoverlay.tar.gz
2. Распакуйте архив
tar xzvf imx477_rpi_dtoverlay.tar.gz

3. Скомпилируйте и установите
cd imx477_rpi_dtoverlay/
./build_and_install.sh
sudo reboot

4. Настройте камеру
sudo nano /boot/config.txt
# Turn off the camera auto-detection
camera_auto_detect=0
# Add following content below [all]
dtoverlay=imx477,vcm

5. Перезагрузите Raspberry Pi
sudo reboot
6. Запустите камеру
Шаг 1. Скачайте bash-скрипт
wget -O install_pivariety_pkgs.sh https://github.com/ArduCAM/Arducam-Pivariety-V4L2-Driver/releases/download/install_script/install_pivariety_pkgs.sh
chmod +x install_pivariety_pkgs.sh
Шаг 2. Установите libcamera
./install_pivariety_pkgs.sh -p libcamera
Шаг 3. Установите libcamera-apps
./install_pivariety_pkgs.sh -p libcamera_apps
Шаг 4. Откройте камеру
rpicam-still -t 0 --tuning-file /usr/share/libcamera/ipa/rpi/vc4/imx477_af.json
Демо на Python
Arducam выпустила два демо: Autofocus.py и FocuserExample.py.
1. Подготовка
Сначала выполните следующие шаги.
Шаг 1. Установите зависимости
sudo apt-get upgrade
sudo apt install -y python3-kms++ python3-libcamera python3-pip
sudo apt install -y python3-pyqt5 python3-prctl libatlas-base-dev ffmpeg
sudo pip3 install numpy --upgrade
sudo pip3 install picamera2 opencv-python
Шаг 2. Установите драйвер и libcamera
Найдите свою камеру по одной из двух ссылок ниже и выполните указанные там команды.
Шаг 3. Скачайте библиотеку
git clone https://github.com/ArduCAM/RaspberryPi.git
Шаг 4. Включите I2C
cd /home/pi/RaspberryPi/Motorized_Focus_Camera
sudo chmod +x enable_i2c_vc.sh
./enable_i2c_vc.sh
Нажмите Y, чтобы перезагрузить Raspberry Pi.
2. Использование
AutofocusTest.py
- Демо поддерживает автофокус в режиме предпросмотра — фокусировку видно на экране.
- Нажмите «F», чтобы выполнить автофокус, и «Q», чтобы выйти и сохранить снимок.
cd /home/pi/RaspberryPi/Motorized_Focus_Camera/python/
python3 AutofocusTest.py -i 10
FocuserExample.py
FocuserExample.py — пример ручной фокусировки.
cd /home/pi/RaspberryPi/Motorized_Focus_Camera/python/
python FocuserExample.py -i 10

Демо на C
cd cd /home/pi/RaspberryPi/Motorized_Focus_Camera/C/
make install
make
./manualFocus