Всем привет!
В индустрии коптеров сейчас все активно заняты разработкой железа и софта под это железо, мне же хотелось начать проработку вопроса коммерческого применения коптеров с системы, позволяющей автоматизировать и масштабировать в дальнейшем их использование.
Поэтому появилась следующая цель — учитывая современные ТТХ квадрокоптеров, показать возможность или невозможность быстрой доставки грузов с их помощью, моделируя такую доставку на примере крупного города.
![Общий вид симулятора](https://habrastorage.org/r/w1560/getpro/habr/post_images/1ab/91d/fa6/1ab91dfa6fd935f3b8a3626983dc7ea0.png)
За пример взяли Москву и покрыли ее сеткой из станций подзарядки\пересадки с шагом в 5 км.
Условия в мире симулятора следующие:
Квадрокоптер используется со следующими ТТХ:
В симуляторе течет реальное время, относительно которого все и происходит. Раз в 10 минут появляются заказы в произвольном месте Москвы. Заказ представляет собой место, где стоит голодный покупатель и ресторан, где для него уже приготовили обед случайной массы в заданном интервале. Получив информацию о заказе, система рассчитывает необходимые параметры маршрутной квитанции — количество требуемых коптеров, с каких станций их брать, каким маршрутом они должны лететь. После этого требуемые коптеры или коптер, получив в свой бортовой компьютер информацию, начинают маршрут, забирает обед и несут его к пользователю.
В случае если коптер понимает, что текущего заряда не хватает для долета до пользователя плюс возврат на базу, то он летит на ближайшую базу в сторону пользователя. На станции коптер перегружает заказ на свободный коптер, а сам остается заряжаться.
Прописав всю эту логику, запустили симулятор и стали наблюдать. По началу все шло отлично и среднее время доставки заказа было в районе 25 минут, однако потом начало расти. Потом внезапно один из коптеров пропал в Бутово. Это насторожило, оказалось он разбился, так как все станции были заполнены и ему не хватило заряда долететь до свободной.
Посмотрев такое поведение, добавили в логику работы еще и резервирование мест на станциях, теперь коптеры, строя свой маршрут, резервировали места на станциях заранее, для того чтобы не остаться без посадочного места, когда заряд уже близок к нулю.
Если же масса заказа больше чем может поднять один коптер, то его выполняют несколько коптеров, летя совместно, правда иногда получается, что прилетают к пользователю они с разными интервалами, но пока это оставим как фичу.
![Доставка двух тяжелых заказов двумя коптерами](https://habrastorage.org/r/w1560/getpro/habr/post_images/2b8/846/245/2b8846245bf1f9acc1eb839647ec97e8.png)
Доставка двух тяжелых заказов двумя коптерами
После этого следующей задачей стояло уменьшение среднего времени доставки, по-прежнему росшего со временем. Для этого в логику работы добавили перегруппировку коптеров с излишне наполненных станций на пустые — со временем коптеры сгруппировались на некоторых рандомных станциях, оставляя другие пустыми — в итоге среднее время доставки росло. Как только логику исправили, то даже по прошествии двух симуляторных суток, время доставки все равно было в пределах 30-40 минут.
![Перегруппировка коптеров с занятых станций на свободные](https://habrastorage.org/r/w1560/getpro/habr/post_images/c81/51f/e37/c8151fe37de19b971204bdff56071825.png)
Перегруппировка коптеров с занятых станций на свободные
Посмотреть симулятор вживую можно здесь — http://karlssonproject.com/#map
В блоке статистике видно количество доставленных заказов, среднее время доставки и общую массу перевезенных грузов. Ниже расположены две таблички с подробной информацией по всем заказам и коптерам с указанием всех меняющихся параметров.
Что не учтено сейчас в симуляторе:
Итоговые предположения:
Даже на существующих сейчас коптерах можно сделать систему автоматической доставки легких грузов, а в дальнейшем при увеличении емкости батарей, характеристик винто-моторной группы количество требуемых станций будет только уменьшаться, а пропускная способность всей системы расти.
P.S.
На самом деле этот симулятор является первой частью проекта по доставке еды коптерами. Сейчас мы, написав софтверную часть проекта, приступаем к созданию автопилота коптера и ищем заинтересованных гиков, вместе с которыми напишемискусственный интеллект автопилот.
За подробностями добро пожаловать на karlssonproject.com
В индустрии коптеров сейчас все активно заняты разработкой железа и софта под это железо, мне же хотелось начать проработку вопроса коммерческого применения коптеров с системы, позволяющей автоматизировать и масштабировать в дальнейшем их использование.
Поэтому появилась следующая цель — учитывая современные ТТХ квадрокоптеров, показать возможность или невозможность быстрой доставки грузов с их помощью, моделируя такую доставку на примере крупного города.
![Общий вид симулятора](https://habrastorage.org/getpro/habr/post_images/1ab/91d/fa6/1ab91dfa6fd935f3b8a3626983dc7ea0.png)
За пример взяли Москву и покрыли ее сеткой из станций подзарядки\пересадки с шагом в 5 км.
Условия в мире симулятора следующие:
- Расстояние между станциями — 5 км
- Начальное распределение коптеров — по 2 на станцию (кроме самых крайних станций)
- Вместимость станции — 4 коптера
- Частота появления заказа — раз в 10 минут
- Интервал допустимых весов заказа — от 1 до 8 кг
Квадрокоптер используется со следующими ТТХ:
- Скорость полета — 16 м\c
- Высота эшелона полета — 200 м
- Время полета без груза — 30 мин
- Время полета с полной загрузкой в 4кг — 10 мин
- Скорость разряда батареи линейна относительно массы груза
- Время полного заряда батареи — 20 минут
- Скороподъемность при снижении\наборе — 6 м\c
В симуляторе течет реальное время, относительно которого все и происходит. Раз в 10 минут появляются заказы в произвольном месте Москвы. Заказ представляет собой место, где стоит голодный покупатель и ресторан, где для него уже приготовили обед случайной массы в заданном интервале. Получив информацию о заказе, система рассчитывает необходимые параметры маршрутной квитанции — количество требуемых коптеров, с каких станций их брать, каким маршрутом они должны лететь. После этого требуемые коптеры или коптер, получив в свой бортовой компьютер информацию, начинают маршрут, забирает обед и несут его к пользователю.
В случае если коптер понимает, что текущего заряда не хватает для долета до пользователя плюс возврат на базу, то он летит на ближайшую базу в сторону пользователя. На станции коптер перегружает заказ на свободный коптер, а сам остается заряжаться.
Прописав всю эту логику, запустили симулятор и стали наблюдать. По началу все шло отлично и среднее время доставки заказа было в районе 25 минут, однако потом начало расти. Потом внезапно один из коптеров пропал в Бутово. Это насторожило, оказалось он разбился, так как все станции были заполнены и ему не хватило заряда долететь до свободной.
Посмотрев такое поведение, добавили в логику работы еще и резервирование мест на станциях, теперь коптеры, строя свой маршрут, резервировали места на станциях заранее, для того чтобы не остаться без посадочного места, когда заряд уже близок к нулю.
Если же масса заказа больше чем может поднять один коптер, то его выполняют несколько коптеров, летя совместно, правда иногда получается, что прилетают к пользователю они с разными интервалами, но пока это оставим как фичу.
![Доставка двух тяжелых заказов двумя коптерами](https://habrastorage.org/getpro/habr/post_images/2b8/846/245/2b8846245bf1f9acc1eb839647ec97e8.png)
Доставка двух тяжелых заказов двумя коптерами
После этого следующей задачей стояло уменьшение среднего времени доставки, по-прежнему росшего со временем. Для этого в логику работы добавили перегруппировку коптеров с излишне наполненных станций на пустые — со временем коптеры сгруппировались на некоторых рандомных станциях, оставляя другие пустыми — в итоге среднее время доставки росло. Как только логику исправили, то даже по прошествии двух симуляторных суток, время доставки все равно было в пределах 30-40 минут.
![Перегруппировка коптеров с занятых станций на свободные](https://habrastorage.org/getpro/habr/post_images/c81/51f/e37/c8151fe37de19b971204bdff56071825.png)
Перегруппировка коптеров с занятых станций на свободные
Посмотреть симулятор вживую можно здесь — http://karlssonproject.com/#map
В блоке статистике видно количество доставленных заказов, среднее время доставки и общую массу перевезенных грузов. Ниже расположены две таблички с подробной информацией по всем заказам и коптерам с указанием всех меняющихся параметров.
Что не учтено сейчас в симуляторе:
- Погодные условия — ветер всегда штиль. Никаких ураганов и ливней. Через некоторое время добавим, исходя из Ю-З розы ветров в Москве.
- Опасные зоны — в реале в памяти коптера будут опасные точки с заданным радиусом, куда не стоит залетать, а сейчас в симуляторе они все летят напрямую
- Высокие здания — сейчас задана постоянная высота эшелона в 200 м, однако в реальности коптер будет использовать карту зданий с Гугла и лететь просто выше крыш всех зданий на маршруте. Это позволит сэкономить заряд на набор высоты в 200 метров там, где хватит и 50, или же наоборот подняться выше в районе Сити, Метрополии или Останкинской башни.
Итоговые предположения:
Даже на существующих сейчас коптерах можно сделать систему автоматической доставки легких грузов, а в дальнейшем при увеличении емкости батарей, характеристик винто-моторной группы количество требуемых станций будет только уменьшаться, а пропускная способность всей системы расти.
P.S.
На самом деле этот симулятор является первой частью проекта по доставке еды коптерами. Сейчас мы, написав софтверную часть проекта, приступаем к созданию автопилота коптера и ищем заинтересованных гиков, вместе с которыми напишем
За подробностями добро пожаловать на karlssonproject.com