# Инструкция по настройке и запуску клиента и сервера ## Список оборудования Данное ПО предназначено для управления несколькими квадракоптерами с компьютера-сервера. Для полноценной работы необходимо следующее оборудование: * Один или несколько квадрокоптеров, работающих на базе ПО [Клевер](https://github.com/copterexpress/clever). * Компьютер с операционной системой Linux. * Wifi роутер, работающий на частоте 2.4 ГГц, либо 5.8 ГГц, если эту частоту поддерживают wifi модули коптеров и компьютера. ## Подготовка ПО Скачайте на компьютер последний образ (CleverSwarm-XXX.img.zip) и исходный код (Source code) из последнего [релиза](https://github.com/artem30801/CleverSwarm/releases/latest). Разархивируйте исходный код в удобную директорию. ## Настройка роутера Для управления одним или несколькими коптерами требуется подключение коптеров и сервера к одной сети. Для этого требуется отдельный wifi роутер с известным SSID и паролем. Подключите компьютер, который будет использоваться в качестве сервера, к сети роутера и узнайте его ip адрес - он понадобится для дальнейшей настройки. ## Настройка и запуск клиента * Запишите образ на microSD карту, используя [Etcher](https://www.balena.io/etcher/). * Вставьте флешку в Raspberry Pi, включите коптер. Дождитесь появления сети `CLEVERSHOW-XXXX`. * Подключитесь к сети коптера, используя пароль `cleverwifi`. * Настройте коптер, чтобы корректно работал режим позиции. По-умолчанию образ сконфигурирован для получения позиции с камеры с помощью aruco-маркеров и optical flow. Камера направлена вниз и вперёд, загружена тестовая карта меток. Если ваш способ позиционирования отличается - можно либо настроить данный образ, либо [собрать образ](image-building.md) со своими настройками. * Перейдите в директорию клиента и запустите скрипт настройки клиента ```bash cd ~/CleverSwarm/Drone sudo ./client_setup.sh ``` * Выполните скрипт настройки клиента с указанными параметрами - SSID, пароль точки доступа, имя коптера, ip сервера. * Коптер переключится в режим клиента указанной точки доступа и настроит автозапуск клиента copter_client.py с помощью сервиса clever-show Документация по клиентской части находится [здесь](client.md). ## Настройка и запуск сервера * Установите [chrony](https://chrony.tuxfamily.org/index.html) и Python 3 на ваш компьютер: ```bash sudo apt install chrony python3 python3-pip ``` * Установите необходимые python-пакеты с помощью команды (запущенной из директории с исходным кодом) ```bash pip3 install -r requirements.txt ``` * Подключитесь к wifi сети роутера, к которому подключены коптеры. * Скопируйте [файл настроек chrony](../Server/chrony.conf) в `/etc/chrony/chrony.conf`. Если ip адрес сети начинается не с `192.168.`, то исправьте адрес после слова allow в скопированном файле настроек. * Перезапустите сервис chrony ```bash cd source-code-dir sudo systemctl restart chrony ``` * Перейдите в директорию сервера из директории с исходным кодом и запустите сервер ```bash cd source-code-dir/Server python3 server_qt.py ``` Документация по серверной части находится [здесь](server.md).