...
6. Дополнительные настройки
6.1. Проверка звука (проверять
...
после подключения всех камер)
Чтобы запустить утилиту для управления устройствами ввода/вывода звука, необходимо выполнить следующие команды в терминале:
...
Блок кода | ||||
---|---|---|---|---|
| ||||
Analog (например DP-Kiosk) aplay -D plughw:0,0 /usr/share/sounds/alsa/Front_Center.wav HDMI (например Гермес) aplay -D plughw:0,3 /usr/share/sounds/alsa/Front_Center.wav |
6.2. Настройка нескольких камер в драйвере uvcdriver (диагностика USB-оборудования)
- Подключить 2 камеры.
Просмотр подключенных к кассе USB-устройств:
Блок кода language bash theme RDark dmesg -T | grep Product:
Видим обе камеры. Одна подключена в порт 1-2, вторая подключена в порт 1.4.3.
Далее нужно привязать камеры к определенным USB-портам, запустив следующие скрипты:
Блок кода language py theme RDark ~/mint/bin/manual_ascending_attaching_cameras.sh
перезагрузить Перезагрузить кассу.
- Проверить, что в СуперМаг Vision и демонстрации покупателя есть картинка с камеры.
Если камеры не по тем портам, то запускаем скрипт смены камер и повторяем проверки:
Блок кода language py theme RDark ~/mint/bin/manual_descending_attaching_cameras.sh
перезагрузить Перезагрузить кассу и проверить еще раз.
Проверить, выполнена ли привязка, можно следующей командой:
Блок кода language py theme RDark cat /etc/udev/rules.d/60-gst-usb-camera-v4l.rules
Пример правильного вывода:
-
Здесь мы можем увидеть, что камера, подключенная в порт 1-1, работает как фронтальная камера, камера подключенная в порт 1-4.3
-, работает как
какмеракамера СуперМаг Vision.
.
В случае, если привязка камер не выполнена, в поле KERNELS будет пусто
, нужно. Нужно будет выполнить привязку еще раз.
пдключение
Внимание! В случае, если было выполненоподключение камер в другие порты, нужно еще раз выполнить привязку камер.
...
6.3. Настройка СуперМаг Vision на Sherman-J
Создаём конфигурационный файл камеры:
Блок кода language py theme RDark sudo cat >> /var/opt/camera_agent/config.yaml << 'EOF' %YAML 1.2 --- schema_version: 2 web_api: recognition: https://vision.servplus.ru/v2.3/recognize/partner/ upload: https://vision.servplus.ru/v2.3/upload/ devices: gst_device_usb: connection: v4l2src device=/dev/v4l/by-id/gst-usb-camera socket: /tmp/gst_dev_usb cap: image/jpeg,width=1920,height=1080,framerate=30/1 default_camera: <<cameraID>> sources: <<cameraID>>: camera: classname: GStreamerSRBCamera stream: shmsrc socket-path={devices.gst_device_usb.socket} num-buffers=1 ! {devices.gst_device_usb.cap} ! appsink device: gst_device_usb transform: - Crop: box: [670, 280, 1270, 800] EOF
Меняем отмеченные жёлтым выше параметры на те, что были в RPi.
Пример. В режиме редактирования файла F4 – в mc, проверяем, что в конце строк нет символов переноса; если есть, то удаляем.
Ниже пример правильного конфига:
А вот так быть не должно:Настраиваем DNS:
Блок кода language py theme RDark sudo mcedit /etc/netplan/01-netcfg.yaml
Прописываем адреса dns-серверов, как в примере ниже:
Настраиваем службы:
Блок кода language py theme RDark sudo sed -i -e 's/ukmclient/ukm5/g' /etc/systemd/system/camera_agent.service sudo sed -i -e 's/ukmclient/ukm5/g' /etc/systemd/system/gst_camera@.service sudo sed -i -e 's/ukmclient/ukm5/g' /etc/systemd/system/uni_worker@.service cd /opt/camera_agent; sudo venv/bin/python3 -u devices.py sudo systemctl enable --now uni_worker@camera_agent sudo systemctl enable camera_agent.service
Каждую команду нужно выполнить отдельно, не все сразу.
Запускаем службы:
Блок кода language py theme RDark sudo systemctl restart gst_camera@gst_device_usb.service sudo systemctl restart camera_agent.service sudo systemctl restart uni_worker@camera_agent.service
Каждую команду нужно выполнить отдельно, не все сразу.
- По пути http://IP_KASSA:6060/image должна быть доступна картинка с камеры:
- Если картинка с камеры не видна или на экране черный квадрат, то перезагружаем весь системный блок кассового аппарата по питанию.
- Если при открытии http://IP_KASSA:6060/sku/image видим ошибку 500, то вероятнее всего ошиблись в конфигурационном файле /var/opt/camera_agent/config.yaml.
Если всё было сделано верно, по инструкции, но вместо картинки с камеры в браузере видно белый пиксель по центру экрана, то перезапускаем udev-правила и службы ещё раз:
Блок кода language py theme RDark sudo udevadm control --reload-rules && udevadm trigger sudo systemctl restart gst_camera@gst_device_usb.service sudo systemctl restart camera_agent.service sudo systemctl restart uni_worker@camera_agent.service
Если и это не помогло, то перезапускаем ОС:
Блок кода language py theme RDark sudo reboot
- Проверяем работу СуперМаг Vision.