Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

Оглавление

1. Подготовка образа

1.1. Подготовить USB-накопитель – загрузить образ кассы УКМ 5

Необходимо обратиться к команде техподдержки киоска за ссылкой на актуальный x64 образ кассы УКМ 5.

При использовании селфи-камеры, сервиса СуперМаг DS и СуперМаг Vision, необходимо не менее 4Гб памяти на кассе и 64-битный образ! 

В данном документе представлена инструкция к версии кассы ukm5-pos-x64-1.46.19.iso и соответственно, сервер также должен быть обновлён до версии 1.46.7.

  • Вставляем в свой компьютер USB-накопитель объёмом от 4GB.
  • Необходимо скачать rufus по ссылке ниже:

Rufushttps://disk.yandex.ru/d/ciEYjdOw_0NpWA.

  • Если у вас есть версия от 2.5 (при старте программа сама предложит обновиться до актуальной версии):

  • Выбираем файл образа кассы УКМ 5, нажав кнопку ВЫБРАТЬ и выделяем нужный файл образа:

  • Выставляем остальные настройки как на картинках ниже, подтверждаем и нажимаем СТАРТ:




  • Дожидаемся окончания загрузки образа на носитель (надпись Готов) и нажимаем ЗАКРЫТЬ:

1.2. Установка адреса сервера

Производится заранее пред заливкой на Sherman и непосредственно перед заливкой для каждого магазина.

  • Открываем флешку и находим файл f:\ukm5\ukm5\connection.conf:

  • Меняем его содержимое на адрес нужного сервера УКМ 5:

Подключение к кассовому серверу на флешке:

srvIp=IP кассового сервера (или FQDN имя)
srvPort=9000
tmIp=IP кассового сервера (или FQDN имя)
tmPort=9091

Если не поменять данные на флешке, то на кассе будет окно с возможностью ввести параметры при регистрации кассы.

2. Заливка киоска с флешки (на объекте)

2.1. Простая загрузка

  1. Выключить кассу.
  2. Подключить на кассу USB-клавиатуру.
  3. Подключить накопитель в свободный USB-порт.
  4. Включить кассу.
  5. При включении перейти в BIOS и нажать одну из клавиш F2/Delete/F1 (в зависимости от типа BIOS).
  6. Далее идем в Advanced – ACPI settings и ставим все пункты гибернации в положение disable.
  7. Затем надо изменить порядок загрузки, установить первое загрузочное устройство – USB-накопитель.
  8. Потом нужно перейти в раздел Save & Exit, подраздел Boot Override, выбрать Flash-накопитель и нажать клавишу Enter:
  9. Должна начаться загрузка. Нужно выбрать пункт Install UKM5:

           

Примечание. Если загрузка не началась или в BIOS Flash-накопитель не видится, попробуйте пункт 2.1.2.

2.2. Если не получилась простая загрузка

  1. Выключить кассу.
  2. Подключить на кассу USB-клавиатуру.
  3. Подключить накопитель в свободный USB-порт.
  4. Включаем кассу.
  5. При включении перейти в BIOS нажать одну из клавиш Delete/F1/F2 (в зависимости от типа BIOS).
  6. Изменить порядок загрузки, установить первое загрузочное устройство – USB-накопитель:
    • Перейти в раздел Boot – Hard Drive BBS Prioriries:

    • в Boot Option #1 назначить (+/-) Flash-накопитель:

    • сохранить изменённые параметры в BIOS:

  7. После сохранения параметров касса перезагрузится и на экране появится окно инсталляции. Нужно выбрать пункт Install UKM5:

  8. По окончании установки на экране появится следующее сообщение:
  9. Необходимо извлечь загрузочный носитель и перезагрузить системный блок.
  10. При последующей загрузке необходимо указать на кассе её уникальный идентификатор, который создаётся на сервере заранее:

После регистрации кассы и прогрузки данных обязательно обращаем внимание на текущее время на киоске

Если время некорректно, проверяем регион и часовой пояс в магазине, указывает корректный:

3. Настройка дисплеев киоска (на объекте)

Если монитор настроен нормально, можно перейти к следующему пункту, закрыв приложение крестиком.

Примечание. Не нажимать кнопку Apply!

  1. При загрузке появится следующее окно Screen Layout Editor:
  2. При необходимости повернуть дисплей  нужно выбрать в меню пункт Outputs/VGA-1/Orientation/Left:
  3. Нажать Save As:
  4. Появится окно Save Layout:
  5. Выбрать каталог .config:

  6. Cохранить файл с названием display_config.sh, нажать Save (строго в каталог /ukm5/.config/):
  7. Закрыть Screen Layout Editor нажатием на крестик, указано красной стрелкой:
  8. Дождаться загрузки УКМ 5, а затем убедиться, что настройки сохранились и экран киоска отображается правильно.

4. Настройки серверной части УКМ 5

  1. Выбираем магазин, из которого будем копировать «Тип кассы»:
  2. В магазине переходим во вкладку Типы касс и в данной вкладке выбираем уже заранее настроенный тип касс Киоск 2.0 (111), после чего нажимаем кнопку Клонировать:
  3. Потом в верхней части меню, возле иконки УКМ 5, нажимаем на текущее название магазина:
  4. В выпавшем списке в меню Выбор магазина выбираем магазин, в который приехал инженер для работ по переоборудованию решения Киоск 1.0 в решение Киоск 2.0:

  5. В магазине переходим во вкладку Типы касс. В данном разделе появляется новая касса, в названии которой присутствует слово Копия. Данная касса называется Киоск 2.0 (Копия):
  6. Выбираем кассу Киоск 2.0 (Копия), нажимаем Настройки и в появившемся меню Настройки типов касс выполняем настройки, специфичные для данного магазина (это такие настройки, как адрес сервера ЕГАИС, идентификатор магазина в системе лояльности (если используется), и т.д.).
    Самое главное: для использования Киоска 2.0 нужно установить Тип кассы "КСО", а для Киоска 1.0 – тип "DP-киоск".
  7. Вводим проверенные данные ЕГАИС-сервера (данные можно взять из другого Типа касс в текущем магазине):
  8. Аналогично настраиваем все специфичные для данного магазина сервисы.

5. Настройка СуперМаг Vision

5.1. Настройка "Тип кассы"

  1. В меню Настройки типов касс необходимо настроить СуперМаг Vision, как представлено на картинке ниже:

Блок кода
languagepy
themeRDark
titleНастройка сервиса распознавания
{"app_sale.goods_recognition" : {
  params : {
    runOrder = 2
    baseUrl = "http://127.0.0.1:6060" //адрес камера агента на кассе (в случае использования Jetson - тут адрес Jetson)
    partnerId = 777 //ваш партнер айди (узнать у менеджера)
    pictureUrl = "https://vision.servplus.ru/catalog/picture/"
    include file("conf/misc/vision.conf")
    isReweighingDialog = false // для весов типа NCR (невозможно повторное взвешивание, без снятия товара с весов)
    blackoutDelay = 2 seconds // при неудачном соединении отправка все запросов будет заблокирована на время blackoutTimeout
  }
}}

5.2. Настройка «Кассы»

  1. В разделе Магазин необходимо войти в подраздел Кассы и нажать кнопку +Добавить:
  2. В меню Редактирование кассы прописать Тип и Шаблон оборудования, как представлено на рисунке ниже:
  3. В созданной кассе в полях Номер, Название и GUID вносим новые названия киосков? которые должны называться как 111 (так называется первый киоск), 112 (так называется второй киоск):
  4. В созданной кассе, в разделе Настройки типов касс, в разделе vision.conf необходимо прописать серийный номер камеры (уточнить у менеджера) СуперМаг Vision, непосредственно физически находящейся на данной кассе:

5.3. Настройка селфи-камеры (камера с отображением окна безопасности)

  1. В разделе Оборудование необходимо перейти во вкладку Шаблоны и создать новый шаблон оборудования (если он ещё не создан), к примеру, Киоск 2.0:
  2. Используем нижеуказанные параметры:

  3. Нажимаем Сохранить.
    Примечание. При возникновении проблем с распределением камер (камеры выполняют не свои функции), ознакомится с пунктом 6.2. 

5.4. Настройка работы звука на Киоске 2.0

При использовании шаблона оборудования кассы, созданной на сервере версии 1.46 или выше, данные действия выполнять не требуется.

  1. В разделе Оборудование необходимо перейти во вкладку Шаблоны и создать новый шаблон оборудования (если он ещё не создан), к примеру, Киоск 2.0:
  2. В данном шаблоне необходимо в папке sound настроить конфигурационный файл input.conf, указав следующие параметры:

    Блок кода
    languagepy
    themeRDark
    # Файл конфигурации принимающего звук устройства
    
    defaultSoundCard = alsa_card.pci-0000_00_1b.0 # Основная звуковая карта. Параметр не изменять!
    defaultProfile = analog-stereo # Основной профиль ввода, поддерживаемые варианты analog-stereo, hdmi-stereo
    defaultDevice = analog-input-mic # Основное устройство ввода, поддерживаемые варианты analog-input-mic, analog-input-internal-mic, hdmi-output-0, hdmi-output-1
    defaultDeviceVolume = 100 # Громкость звука основного устройства ввода, от 0 до 150 (в процентах)

  3. Нажимаем Сохранить.
  4. Дополнительно, необходимо в файле sound настроить конфигурационный файл output.conf, указав следующие параметры:

    Блок кода
    languagepy
    themeRDark
    # Файл конфигурации выводящего звук устройства
    
    defaultSoundCard = alsa_card.pci-0000_00_1b.0 # Основная звуковая карта. Параметр не изменять!
    defaultProfile = analog-stereo # Основной профиль вывода, поддерживаемые варианты analog-stereo, hdmi-stereo
    defaultDevice = analog-output-headphones # Основное устройство вывода, поддерживаемые варианты analog-output-headphones, analog-output-speaker, hdmi-output-0, hdmi-output-1
    defaultDeviceVolume = 100 # Громкость звука основного устройства вывода, от 0 до 150 (в процентах)
    

  5. Нажимаем Сохранить.
    Примечание. При возникновении проблем с выводом звука (звука на киоске нет), ознакомиться с пунктом 6.1. 

5.5. Проверка

После выполнения всех настроек, перезапустить киоск и проверить, что все работает корректно.

6. Дополнительные настройки

6.1. Проверка звука (проверять после подключения всех камер)

Чтобы запустить утилиту для управления устройствами ввода/вывода звука, необходимо выполнить следующие команды в терминале:

1
2

export DISPLAY=:0
pavucontrol

На экране кассы (или по VNC) появится интерфейс программы настройки звука.

  1. В случае необходимости, нужно настроить профиль, устройство ввода и вывода. Пример приведен на рисунках ниже:

    1. DP-киоск:

      Профиль                                                                         Устройство ввода                                                         Устройство вывода
            


    2. Гермес:

      Профиль                                                                         Устройство ввода                                                         Устройство вывода
            

2. Вывод используемых в системе звуковых карт:

1

pacmd list-cards

3. Проигрывание звука на кассе через консоль:

Блок кода
languagepy
themeRDark
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-оборудования)

  1. Подключить 2 камеры.
  2. Просмотр подключенных к кассе USB-устройств:

    Блок кода
    languagebash
    themeRDark
    dmesg -T | grep Product:

    Видим обе камеры. Одна подключена в порт 1-2, вторая подключена в порт 1.4.3.

  3. Далее нужно привязать камеры к определенным USB-портам, запустив следующие скрипты:

    Блок кода
    languagepy
    themeRDark
    ~/mint/bin/manual_ascending_attaching_cameras.sh

    Перезагрузить кассу.

  4. Проверить, что в СуперМаг Vision и демонстрации покупателя есть картинка с камеры.
  5. Если камеры не по тем портам, то запускаем скрипт смены камер и повторяем проверки:

    Блок кода
    languagepy
    themeRDark
    ~/mint/bin/manual_descending_attaching_cameras.sh

    Перезагрузить кассу и проверить еще раз.

  6. Проверить, выполнена ли привязка, можно следующей командой:

    Блок кода
    languagepy
    themeRDark
    cat /etc/udev/rules.d/60-gst-usb-camera-v4l.rules  

    Пример правильного вывода:

    Здесь мы можем увидеть, что камера, подключенная в порт 1-1, работает как фронтальная камера, камера подключенная в порт 1-4.3, работает как камера СуперМаг Vision.
    В случае, если привязка камер не выполнена, в поле KERNELS будет пусто. Нужно будет выполнить привязку еще раз.
    Внимание! В случае, если было выполнено подключение камер в другие порты, нужно еще раз выполнить привязку камер.

6.3. Настройка СуперМаг Vision на Sherman-J 

  1. Создаём конфигурационный файл камеры:

    Блок кода
    languagepy
    themeRDark
    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
  2. Меняем отмеченные жёлтым выше параметры на те, что были в RPi.

    ПримерВ режиме редактирования файла F4 – в mc, проверяем, что в конце строк нет символов переноса; если есть, то удаляем.

    Ниже пример правильного конфига:

    А вот так быть не должно:

  3. Настраиваем DNS:

    Блок кода
    languagepy
    themeRDark
    sudo mcedit /etc/netplan/01-netcfg.yaml

    Прописываем адреса dns-серверов, как в примере ниже:

  4. Настраиваем службы:

    Блок кода
    languagepy
    themeRDark
    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

    Каждую команду нужно выполнить отдельно, не все сразу.

  5. Запускаем службы:

    Блок кода
    languagepy
    themeRDark
    sudo systemctl restart gst_camera@gst_device_usb.service
    sudo systemctl restart camera_agent.service
    sudo systemctl restart uni_worker@camera_agent.service

    Каждую команду нужно выполнить отдельно, не все сразу.

  6. По пути http://IP_KASSA:6060/image должна быть доступна картинка с камеры:
  7. Если картинка с камеры не видна или на экране черный квадрат, то перезагружаем весь системный блок кассового аппарата по питанию.
  8. Если при открытии http://IP_KASSA:6060/sku/image видим ошибку 500, то вероятнее всего ошиблись в конфигурационном файле /var/opt/camera_agent/config.yaml.
  9. Если всё было сделано верно, по инструкции, но вместо картинки с камеры в браузере видно белый пиксель по центру экрана, то перезапускаем udev-правила и службы ещё раз:

    Блок кода
    languagepy
    themeRDark
    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
  10. Если и это не помогло, то перезапускаем ОС:

    Блок кода
    languagepy
    themeRDark
    sudo reboot
  11. Проверяем работу СуперМаг Vision.



7. Настройка DS (воспроизведение контента)

  • Переходим в конфиг оборудования киоска

  • Далее открываем конфиг /misc/ds.conf 

указываем для "standBy" partnerId и PlayerID, id запрашивать у клиента/маркетолога клиента, нажимаем Сохранить.

Информация
titleВажная информация

Для киоска 2.0 на оборудование Hermes можно использовать воспроизведение контента в режиме "receipt" (внутри чека), т.е. необходимо раскомментировать вторую строчку и прописать актуальные id


  • Переходим в настройки тип касс киоска 1.0 или 2.0 не важно, методология одна. 

- в sale.conf проверяем,  что строчка с ds раскомментирована:

-в mintukm.conf проверяем, что строчка с ds раскомментирована:

Если было закоменчено, раскомментируем.

После сохранения всех настроек, перезагружаем киоск. Ждём когда закачается расписание с контентом.
Локально на кассе можно проверить по пути:

После закачки, проверяем что контент в режиме StandBy (ожидание покупателя) воспроизводится. Если оборудование Hermes, так же проверяем контент внутри чека.