Files
clever-show/docs/ru/start-tutorial.md
2020-06-08 21:46:36 +03:00

8.2 KiB
Raw Blame History

Быстрый старт на квадракоптере Клевер

Список оборудования

Данное ПО предназначено для управления несколькими квадрокоптерами с компьютера-сервера. Для полноценной работы необходимо следующее оборудование:

  • Один или несколько квадрокоптеров, работающих на базе ПО Клевер.
  • Компьютер с операционной системой Ubuntu 18.04.
  • Wifi роутер, работающий на частоте 2.4 ГГц, либо 5.8 ГГц, если эту частоту поддерживают wifi модули коптеров и компьютера.

Подготовка ПО

ПО для организации шоу коптеров состоит из 2х основных частей - серверного приложения и клиентской части, которая предоставляется в виде образа для Raspberry Pi.

Серверное приложение и образ для коптера должны быть одинаковой версии для их совместной работы.

Актуальная версия образа на текущий момент: v0.3.

Обратите внимание: релиз v0.3 работает только для системы позиционирования по потолочным aruco маркерам.

Скачайте на компьютер образ для Raspberry Pi и исходный код. Разархивируйте исходный код в удобную директорию.

Настройка роутера

Для управления одним или несколькими коптерами требуется подключение коптеров и сервера к одной сети. Для этого требуется отдельный wifi роутер с известным SSID и паролем.

Установка и запуск клиента

  • Запишите образ на microSD карту, используя Etcher.
  • Вставьте флешку в Raspberry Pi, включите коптер. Дождитесь появления сети CLEVERSHOW-XXXX.
  • Подключитесь к сети коптера, используя пароль cloverwifi.
  • Подключитесь к Raspberry Pi на коптере с помощью ssh, используя статический ip 192.168.11.1, имя пользователя pi и пароль raspberry.
ssh pi@192.168.11.1
  • После подключения выполните скрипт настройки клиента client-setup с указанными параметрами - название точки доступа (SSID), пароль точки доступа (password), имя коптера (copter name). Коптер переключится в режим клиента указанной точки доступа и настроит автозапуск клиента clever-show на Raspberry Pi.
sudo client-setup <SSID> <password> <copter name>
  • Теперь при запуске серверного приложения настроенные коптеры будут отображаться в виде таблицы. Также можно подключаться к Raspberry Pi на коптере по его имени с добавкой .local через ssh в указанной при настройке wifi сети, например ssh pi@clever-1.local, пароль raspberry.

Подробная документация по настройке клиентской части находится здесь.

Установка и запуск сервера

  • Установите chrony на ваш компьютер для синхронизации времени с коптерами:
sudo apt install chrony
  • Установите необходимые python-пакеты с помощью команды (запущенной из директории с исходным кодом)
pip3 install -r requirements.txt
  • Подключитесь к wifi сети роутера, к которому подключены коптеры.
  • Скопируйте файл настроек chrony в /etc/chrony/chrony.conf. Если ip адрес сети начинается не с 192.168., то исправьте адрес после слова allow в скопированном файле настроек.
  • Перезапустите сервис chrony
sudo systemctl restart chrony
  • Перейдите в директорию сервера из директории с исходным кодом и запустите сервер
cd clever-show/server
python3 server.py

Подробная документация по настройке серверной части находится здесь.

Подготовка дрона

Для запуска анимации все коптеры должны иметь настроенную систему позиционирования. По-умолчанию в образе настроен полёт по optical flow - на коптере должен быть установлер лазерный дальномер, а камера должна быть наклонена вниз шлейфом назад.

После тестирования образа версии 0.3 выяснилась неработоспособность конфигурации системы позиционирования по умолчанию (optical flow). Для нормального функционирования требуется система позиционирования с постоянным потоком данных через топик визуальной позиции. Рекомендуемая конфигурация для образа 0.3 - потолочные aruco маркеры.

Вы можете настроить один коптер на любую систему позиционирования, которую поддерживает пакет clever, а затем размножить настройки на остальные коптеры с сервера с помощью команды Send launch files.

Подготовка анимации

  • Создайте анимацию объектов в Blender или воспользуйтесь примерами. Условная единица расстояния в Blender конвертируется в метры. Задержка между кадрами по-умолчанию в настройках коптера равна 0.1 секунды (параметр frame_delay в разделе ANIMATION), будьте внимательны при настройке частоты кадров в анимации Blender. Следите за скоростями коптеров, чтобы они были не слишком большими: аддон выдаст предупреждение, но всё равно сконвертирует анимацию.
  • Сконвертируйте анимацию с помощью аддона для Blender.
  • Загрузите анимацию с помощью команды Send animations на сервере.